.event-page{padding-top:28px;padding-bottom:60px}.event-breadcrumb{font-size:13px;color:#6c667d;margin:0 0 24px}.event-page h1{font-size:clamp(30px,4vw,49px);letter-spacing:-1.7px;line-height:1.09;margin:12px 0 16px}.event-page h2{font-size:25px;letter-spacing:-.6px;margin:0 0 12px}.event-kicker{text-transform:uppercase;letter-spacing:1.8px;font-size:11px;font-weight:800;color:#6042ea}.event-summary{font-size:18px;line-height:1.6;color:#6b6579;max-width:740px}.event-brands{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.event-brands a{background:#f0ecfd;border-radius:30px;padding:7px 12px;color:#6042ea;font-size:12px;font-weight:800}.event-hero{width:100%;height:360px;object-fit:cover;border-radius:20px;object-position:center 38%;margin:10px 0 28px}.event-layout{display:grid;grid-template-columns:minmax(0,1fr) 335px;gap:40px;align-items:start}.event-copy section{padding:0 0 26px;margin:0 0 26px;border-bottom:1px solid #eeeaf3}.event-copy p{font-size:16px;line-height:1.8;color:#514a60;white-space:pre-line;margin:0}.event-booking{border:1px solid #e5dfef;border-radius:18px;padding:23px;box-shadow:0 14px 44px #28204709;position:sticky;top:112px}.event-booking h2{font-size:23px}.event-booking label{display:grid;gap:6px;font-size:13px;font-weight:700;margin:14px 0}.event-booking select,.event-booking input,.event-card select{border:1px solid #dfd8eb;border-radius:10px;padding:12px;font:inherit;background:white;color:#211832;width:100%;min-height:44px}.event-booking a.event-primary,.event-booking a.event-secondary{display:block;padding:13px;border-radius:10px;text-align:center;font-weight:800;font-size:14px;margin-top:10px}.event-primary{background:#6042ea;color:white}.event-secondary{background:#f1ecfb;color:#6042ea}.event-booking small,.event-booking p{font-size:13px;color:#777084;line-height:1.6}.event-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.event-gallery img{width:100%;height:230px;border-radius:13px;object-fit:cover}.event-video{max-width:100%;max-height:560px;border-radius:13px;margin:18px auto;display:block}.event-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.event-card{background:white;border:1px solid #e6e0ee;border-radius:17px;overflow:hidden;display:flex;flex-direction:column}.event-card>a:first-child{display:block}.event-card img{width:100%;height:205px;object-fit:cover;object-position:center 38%;display:block}.event-card-body{display:flex;flex:1;flex-direction:column;gap:10px;padding:18px}.event-card small{font-size:12px;color:#766c85}.event-card h3{font-size:21px;line-height:1.2;letter-spacing:-.4px;margin:0}.event-card p{font-size:14px;line-height:1.6;margin:0;color:#71687e}.event-card .event-primary{display:block;padding:11px 14px;border-radius:9px;text-align:center;font-size:13px;font-weight:800;margin-top:auto}.event-campaign-heading{grid-column:1/-1;margin:0}.event-campaign-heading h2{font-size:29px;margin:4px 0 8px}.event-campaign-heading p{font-size:14px;color:#777084;margin:0 0 10px}.event-card a{text-decoration:none}#event-highlights{margin-top:34px;margin-bottom:34px}#experience-results .event-card{min-width:0}#experience-results .event-card a.event-primary{background:#6042ea;color:white}#experience-results .event-card>a:first-child{padding:0;background:none}#experience-results .event-card-body{padding:18px}.event-page-photos-note{font-size:12px!important;margin-top:12px!important;color:#888!important}.campaign-admin-list{display:grid;gap:10px;margin-bottom:22px}.campaign-admin-item{display:flex;gap:14px;align-items:center;text-align:left;background:white;border:1px solid #e4ddec;border-radius:12px;padding:10px;cursor:pointer}.campaign-admin-item img{width:78px;height:63px;object-fit:cover;border-radius:8px}.campaign-admin-item strong,.campaign-admin-item small{display:block}.campaign-admin-item small{font-size:12px;color:#82778e;margin-top:5px}.campaign-editor{border:1px solid #e5ddef;padding:18px;border-radius:13px;margin-bottom:24px}.campaign-editor label{display:grid;gap:6px;margin:12px 0}.campaign-editor input:not([type=checkbox]),.campaign-editor textarea,.campaign-editor select{width:100%;padding:10px;border:1px solid #ddd5ea;border-radius:8px;font:inherit}.campaign-editor textarea{min-height:110px}.campaign-editor details{padding:10px 0;border-bottom:1px solid #eee8f3}.campaign-editor summary{font-weight:800;cursor:pointer}.campaign-editor .campaign-venues label{display:flex;gap:8px;align-items:center}.campaign-cover-preview{max-width:280px;height:170px;object-fit:cover;border-radius:9px;display:block;margin:14px 0}.campaign-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:16px 0}.campaign-editor [hidden]{display:none!important}@media(max-width:900px){.event-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.event-layout{grid-template-columns:minmax(0,1fr) 290px;gap:22px}}@media(max-width:680px){.event-layout{display:flex;flex-direction:column;gap:24px}.event-booking{position:static;order:-1;width:100%;box-sizing:border-box;padding:18px}.event-hero{height:260px;margin-bottom:20px}.event-card-grid{grid-template-columns:1fr}.event-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.event-gallery img{height:180px}.event-summary{font-size:16px}.event-page{padding-top:20px}.event-page .head-nav{display:none}.event-brands{margin:12px 0}.event-card img{height:215px}}

.event-card-grid[hidden],.event-booking [hidden],#event-page-content[hidden]{display:none!important}

/* The crop editor and published card use the same fixed photo window at every width. */
.event-card img{height:auto!important;aspect-ratio:16/9;object-fit:cover;object-position:center}.campaign-cover-preview{height:auto;aspect-ratio:16/9;object-position:center}

/* Venue promotions belong inside the restaurant content, beside its booking panel. */
#event-highlights.venue-event-promotions{margin:0 0 22px;padding-bottom:22px;border-bottom:1px solid #eeeaf3}.venue-promotion-heading h2{font-size:22px;line-height:1.25;letter-spacing:-.5px;margin:0 0 14px}.venue-promotion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.venue-promotion-card{display:flex;gap:11px;min-width:0;align-items:flex-start;padding:10px;border:1px solid #e6e0ee;border-radius:12px;background:white;color:#251d34;text-decoration:none}.venue-promotion-card:hover{border-color:#9b88ed;background:#fcfbff}.venue-promotion-card>img{width:88px;height:49.5px;aspect-ratio:16/9;object-fit:cover;border-radius:7px;flex-shrink:0}.venue-promotion-card>div{min-width:0}.venue-promotion-card h3{font-size:14px;line-height:1.35;margin:4px 0;font-weight:800;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.venue-promotion-card small,.venue-promotion-brands{font-size:10px;line-height:1.4;color:#7a7088;display:block}.venue-promotion-card strong{display:block;font-size:11px;color:#6042ea;margin-top:5px}.venue-promotion-toggle{border:0;background:transparent;color:#6042ea;font:inherit;font-size:12px;font-weight:800;padding:12px 0;min-height:44px;cursor:pointer}.public-left .garden-karaoke-banner{min-height:0;margin:0 0 20px;border-radius:13px}.public-left .garden-karaoke-copy{padding:18px;gap:7px}.public-left .garden-karaoke-copy h2{font-size:24px}.public-left .garden-karaoke-copy>strong{font-size:13px}.public-left .garden-karaoke-copy p{font-size:12px}.public-left .garden-karaoke-kicker{font-size:10px}.public-left .garden-karaoke-actions button{padding:10px;font-size:12px;min-height:44px}.public-left .garden-karaoke-banner:before{background:linear-gradient(90deg,#211326f5,#211326ae)}
@media(max-width:1100px){.venue-promotion-grid{grid-template-columns:1fr}}@media(max-width:650px){.venue-promotion-card{padding:10px}.venue-promotion-card>img{width:104px;height:58.5px}.venue-promotion-card h3{font-size:14px}.venue-promotion-heading h2{font-size:20px}}

/* Two short showcase banners: recurring karaoke and the nearest dated event. */
.venue-event-showcase{display:grid;gap:12px;margin-bottom:18px}.venue-event-banner{display:block;position:relative;isolation:isolate;min-height:166px;overflow:hidden;border-radius:14px;background:#24162e;color:white;text-decoration:none}.venue-event-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.venue-event-banner:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#211326f5 0%,#211326ca 50%,#21132630 100%);z-index:-1}.venue-event-banner-copy{padding:19px 22px;max-width:85%}.venue-event-banner small{display:block;color:#ffd0e5;font-size:10px;font-weight:800;letter-spacing:.5px;line-height:1.4}.venue-event-banner h3{font-size:24px;letter-spacing:-.6px;line-height:1.15;margin:7px 0;color:white}.venue-event-banner p{font-size:12px;line-height:1.5;margin:0 0 11px;color:#f4edf7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.venue-event-banner strong{display:inline-block;background:#fff;color:#462b64;border-radius:7px;padding:8px 11px;font-size:11px}.venue-event-banner:hover strong{background:#efe7ff}.venue-upcoming-title{font-size:14px;margin:0 0 12px;color:#6f627d;font-weight:800}@media(max-width:650px){.venue-event-banner{min-height:155px}.venue-event-banner-copy{padding:17px;max-width:94%}.venue-event-banner h3{font-size:21px}.venue-event-banner p{font-size:12px}.venue-event-banner:before{background:linear-gradient(90deg,#211326f0,#211326a0)}}

.campaign-business-badges{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}.campaign-business-badges span{font-size:11px;font-weight:800;color:#6042ea;background:#f1ecff;border-radius:20px;padding:5px 9px}.campaign-venues>small{display:block;color:#82778e;font-size:12px;margin-top:8px}

/* Brighter, distinct offers: solid copy panels and unobscured photography. */
.venue-event-banner{display:grid;grid-template-columns:58% 42%;background:#f8f2e9;border:1px solid #eee3d4;color:#35291f;min-height:173px}.venue-event-banner:before{display:none}.venue-event-banner>img{inset:0 0 0 auto;width:42%;z-index:0;filter:none}.venue-event-banner-copy{position:relative;z-index:1;grid-column:1;padding:19px 22px;max-width:none;background:#f8f2e9}.venue-event-banner small{color:#856044;font-size:10px}.venue-event-banner h3{color:#35291f;font-size:23px}.venue-event-banner p{color:#67584a}.venue-event-banner strong{background:#735332;color:white}.venue-event-banner:hover strong{background:#553b23}.venue-event-banner[data-theme=karaoke]{border-color:#ebdbea;background:#faf0f8}.venue-event-banner[data-theme=karaoke] .venue-event-banner-copy{background:#faf0f8}.venue-event-banner[data-theme=karaoke] h3{color:#50203e}.venue-event-banner[data-theme=karaoke] small{color:#9a3972}.venue-event-banner[data-theme=karaoke] p{color:#755b6d}.venue-event-banner[data-theme=karaoke] strong{background:#a52d71;color:white}.venue-event-banner[data-theme=karaoke]:hover strong{background:#84225a}.venue-event-banner[data-theme=halloween]{border-color:#f3d8bc;background:#fff1df}.venue-event-banner[data-theme=halloween] .venue-event-banner-copy{background:#fff1df}.venue-event-banner[data-theme=halloween] h3{color:#542b14}.venue-event-banner[data-theme=halloween] small{color:#a3521f}.venue-event-banner[data-theme=halloween] strong{background:#b54a1a}.venue-event-banner[data-theme=halloween]:hover strong{background:#923a13}@media(max-width:650px){.venue-event-banner{grid-template-columns:62% 38%;min-height:180px}.venue-event-banner>img{width:38%}.venue-event-banner-copy{padding:16px}.venue-event-banner h3{font-size:20px}.venue-event-banner p{font-size:12px;-webkit-line-clamp:3}.venue-event-banner small{font-size:9px}.venue-event-banner strong{font-size:10px;padding:8px}.venue-event-banner:before{display:none}}

.venue-event-showcase [hidden]{display:none!important}.showcase-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.showcase-tabs{display:flex;gap:5px;flex-wrap:wrap}.showcase-tabs button,.showcase-controls button{border:1px solid #e5dfef;border-radius:9px;background:white;color:#70627e;font:inherit;font-size:12px;padding:9px 11px;min-height:40px;cursor:pointer}.showcase-tabs button[aria-selected=true]{background:#6042ea;border-color:#6042ea;color:white;font-weight:800}.showcase-controls{display:flex;gap:5px;margin-left:auto}.showcase-controls button{font-size:12px}.showcase-controls button:first-child,.showcase-controls button:last-child{font-size:21px;padding:3px 11px}.showcase-unavailable{font-size:10px;color:#8d8397}.venue-showcase-carousel{margin-bottom:20px}.venue-event-banner[data-theme=hotel],.venue-event-banner[data-theme=hotel] .venue-event-banner-copy{background:#edf5ef}.venue-event-banner[data-theme=hotel] h3{color:#244734}.venue-event-banner[data-theme=hotel] small,.venue-event-banner[data-theme=hotel] p{color:#52705e}.venue-event-banner[data-theme=hotel] strong{background:#306344}.venue-event-banner[data-theme=music],.venue-event-banner[data-theme=music] .venue-event-banner-copy{background:#eef2ff}.reservation-hotel-offer{padding:18px;border:1px solid #d9e7db;border-radius:12px;background:#f0f7f1;margin-top:22px}.reservation-hotel-offer h3{font-size:20px;margin:7px 0}.reservation-hotel-offer p{font-size:14px;line-height:1.6;margin:0 0 12px}.reservation-hotel-offer small{display:block;font-size:11px;color:#5f7465;margin:7px 0}.reservation-hotel-offer a{display:inline-block;background:#306344;color:white;padding:11px 14px;border-radius:9px;text-decoration:none;font-size:13px;font-weight:800}@media(max-width:650px){.showcase-toolbar{gap:7px}.showcase-tabs{gap:4px}.showcase-tabs button{font-size:11px;padding:8px}.showcase-unavailable{order:3;width:100%}.showcase-controls{margin-left:0}.venue-showcase-carousel .venue-event-banner{min-height:215px}}

/* Calm programme: weekly list, live feature and major occasion remain visible together. */
.venue-calm-programme{display:grid;gap:22px;margin-bottom:24px}.calm-section-title{font-size:14px;line-height:1.4;font-weight:800;color:#776a83;margin:0 0 10px}.calm-weekly-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.calm-weekly-row{display:flex;gap:11px;align-items:center;min-width:0;padding:12px 0;border-bottom:1px solid #eeeaf2;color:#302637;text-decoration:none;min-height:66px}.calm-weekly-row>img{width:64px;height:44px;object-fit:cover;border-radius:7px;flex-shrink:0}.calm-weekly-row>div{min-width:0;flex:1}.calm-weekly-row small{display:block;color:#85768e;font-size:11px;line-height:1.4;margin-bottom:3px}.calm-weekly-row strong{display:block;font-size:13px;line-height:1.4;font-weight:750}.calm-weekly-row div>span{display:block;font-size:11px;line-height:1.4;color:#82788a;margin-top:3px}.calm-row-arrow{color:#7a638f;font-size:16px}.calm-regular-nights summary{font-size:12px;font-weight:700;color:#655375;cursor:pointer;padding:12px 0}.calm-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.calm-feature{min-width:0}.calm-feature .venue-event-banner{min-height:175px;grid-template-columns:62% 38%}.calm-feature .venue-event-banner>img{width:38%}.calm-feature .venue-event-banner-copy{padding:17px}.calm-feature .venue-event-banner h3{font-size:20px;line-height:1.25;margin:8px 0 13px}.calm-feature .venue-event-banner strong{font-size:10px;padding:8px}.calm-music-pending{font-size:13px;line-height:1.6;margin:0;padding:18px;border:1px solid #e9e4ef;border-radius:12px;color:#8b7f95;background:#fcfbfd}.calm-hotel-card{display:flex;gap:13px;align-items:center;padding:13px 15px;border:1px solid #e1e8e1;border-radius:11px;background:#f7faf7;text-decoration:none;color:#34533e}.calm-hotel-card img{width:72px;height:56px;object-fit:cover;border-radius:7px}.calm-hotel-card small{font-size:9px;font-weight:750;letter-spacing:.4px;display:block;color:#738373}.calm-hotel-card strong{font-size:14px;font-weight:750;display:block;margin:3px 0}.calm-hotel-card span{font-size:11px;color:#6e806e;display:block}.calm-weekly-row:hover strong{text-decoration:underline}.calm-hotel-card:hover{border-color:#b0c8b4}@media(max-width:650px){.calm-weekly-list{grid-template-columns:1fr}.calm-feature-grid{grid-template-columns:1fr;gap:18px}.calm-feature .venue-event-banner{min-height:155px}.calm-feature .venue-event-banner h3{font-size:21px}.calm-weekly-row strong{font-size:14px}.calm-weekly-row>img{width:72px;height:48px}.venue-calm-programme{gap:20px}}

/* Photo-led promotions: recognisable photography instead of thumbnail lists. */
.calm-weekly-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.calm-weekly-row{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;overflow:hidden;border:1px solid #e7e1ed;border-radius:13px;background:white;min-height:0}.calm-weekly-row>img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:0;flex:none}.calm-weekly-row>div{padding:13px 14px 5px;flex:1}.calm-weekly-row small{font-size:11px;font-weight:650;margin-bottom:6px}.calm-weekly-row strong{font-size:17px;line-height:1.25;letter-spacing:-.3px}.calm-weekly-row div>span{font-size:12px;line-height:1.45;margin-top:7px}.calm-weekly-row .calm-row-arrow{display:block;padding:7px 14px 12px;font-size:12px;font-weight:750;color:#6042ea}.calm-weekly-row:hover{border-color:#bfb0df;box-shadow:0 5px 18px #33204b08}.calm-section-title{font-size:15px;margin-bottom:12px;color:#62526e}.calm-feature-grid:has(.calm-music-pending){grid-template-columns:1fr}.calm-feature:has(.calm-music-pending){order:2;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.calm-feature:has(.calm-music-pending) .calm-section-title{margin:0}.calm-music-pending{border:0;background:none;padding:0;font-size:12px;margin:0}.calm-feature .venue-event-banner{grid-template-columns:53% 47%;min-height:205px}.calm-feature .venue-event-banner>img{width:47%;object-position:center 24%}.calm-feature .venue-event-banner-copy{padding:23px}.calm-feature .venue-event-banner h3{font-size:26px;line-height:1.2;margin:10px 0 18px}.calm-feature .venue-event-banner strong{font-size:12px;padding:10px 12px}.calm-hotel-card{padding:0;overflow:hidden;gap:18px;align-items:stretch}.calm-hotel-card img{width:32%;height:132px;object-fit:cover;border-radius:0;flex-shrink:0}.calm-hotel-card>div{padding:19px 16px 16px 0;align-self:center}.calm-hotel-card strong{font-size:20px;line-height:1.25;margin:6px 0}.calm-hotel-card span{font-size:12px;line-height:1.5}.venue-promotion-card{flex-direction:column;padding:0;gap:0;overflow:hidden}.venue-promotion-card>img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:0;flex-shrink:0}.venue-promotion-card>div{padding:13px 15px}.venue-promotion-card h3{font-size:18px;line-height:1.3;margin:6px 0}.venue-promotion-card small,.venue-promotion-brands{font-size:11px}.venue-promotion-card strong{font-size:12px;margin-top:9px}.venue-promotion-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}@media(max-width:900px){.calm-weekly-list{grid-template-columns:repeat(2,minmax(0,1fr))}.calm-feature .venue-event-banner h3{font-size:23px}}@media(max-width:650px){.calm-weekly-list{grid-template-columns:1fr}.calm-weekly-row>img{aspect-ratio:16/9;max-height:210px}.calm-weekly-row strong{font-size:20px}.calm-weekly-row>div{padding:14px 16px 5px}.calm-weekly-row .calm-row-arrow{padding:8px 16px 14px}.calm-feature .venue-event-banner{grid-template-columns:1fr;min-height:0;display:flex;flex-direction:column-reverse}.calm-feature .venue-event-banner>img{position:static;width:100%;height:auto;aspect-ratio:16/9;max-height:210px}.calm-feature .venue-event-banner-copy{padding:18px}.calm-feature .venue-event-banner h3{font-size:24px}.calm-hotel-card img{width:36%;height:145px}.calm-hotel-card strong{font-size:17px}.venue-promotion-grid{grid-template-columns:1fr}.venue-promotion-card>img{max-height:210px}.venue-promotion-card h3{font-size:20px}}

/* Sports: regular invitations first, then a browsable fixture programme. */
#experience-results.sports-discovery{display:block}
.sports-regular,.sports-fixture-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.sports-programme-header{margin:30px 0 20px}.sports-programme-header h2{font-size:27px;margin:0 0 8px}.sports-programme-header p{font-size:14px;color:#70697c;line-height:1.6;margin:0 0 18px}
.sports-filters{display:flex;gap:12px;flex-wrap:wrap}.sports-filters label{display:grid;gap:6px;font-size:12px;font-weight:750}.sports-filters select{min-height:44px;padding:9px 35px 9px 12px;border:1px solid #ddd7e8;background:white;border-radius:10px;min-width:200px;color:#252037}
.sports-match-card>a{position:relative}.sports-competition{position:absolute;bottom:12px;left:12px;right:12px;background:#fffef2ed;color:#24212c;border-radius:7px;padding:7px 10px;font-size:12px;font-weight:800}
.sports-match-card .event-card-body h3{font-size:20px}.sports-match-card .event-card-body p{font-size:13px}
@media(max-width:950px){.sports-regular,.sports-fixture-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.sports-regular,.sports-fixture-grid{grid-template-columns:1fr}.sports-filters label{flex:1;min-width:0}.sports-filters select{width:100%;min-width:0}.sports-programme-header h2{font-size:23px}}

/* Recognisable team crests and competition marks, with no cropped logos. */
.event-card>a:has(.sports-art){display:block;text-decoration:none}
.sports-art{height:205px;display:flex;align-items:center;justify-content:center;gap:25px;padding:22px;background:linear-gradient(135deg,#faf9f5,#f0f2f9);color:#24233a}
.sports-team{display:flex;flex-direction:column;align-items:center;gap:10px;min-width:0;flex:1;max-width:42%;text-align:center}
.event-card .sports-team img,.sports-team img{width:92px;height:92px;object-fit:contain;aspect-ratio:auto}
.sports-team strong{font-size:14px;line-height:1.3}.sports-versus{font-size:14px;font-weight:850;color:#8c879d}
.event-card .sports-art-nfl>img,.sports-art-nfl>img{width:98px;height:115px;object-fit:contain;aspect-ratio:auto}
.sports-art-nfl{flex-direction:column;gap:8px;background:#f3f6fc}.sports-art-nfl>strong{font-size:19px;letter-spacing:.08em}
.event-card .sports-art-super-bowl-lxi>img,.sports-art-super-bowl-lxi>img{width:100%;height:165px;object-fit:contain;aspect-ratio:auto}
.sports-art-super-bowl-lxi{background:#f6f8fa}
.sports-art-stage{flex-direction:column;text-align:center;gap:14px}.sports-art-stage>span{font-size:11px;letter-spacing:.1em;color:#6253a4;font-weight:850}.sports-art-stage>strong{font-size:20px;line-height:1.35}
.sports-competition{bottom:0;left:0;right:0;padding:6px 10px;text-align:center;background:#e9e8f2;border-radius:0;font-size:10px}
.sports-detail-art{border-radius:20px;min-height:260px;height:auto;margin:24px 0}
.sports-detail-art .sports-team img{height:130px;width:130px}
.calm-weekly-row img[src*="/assets/sports/"],.calm-hotel-card img[src*="/assets/sports/"]{object-fit:contain;padding:14px;background:#f3f6fc}
.venue-promotion-card img[src*="/assets/sports/"],.venue-event-banner img[src*="/assets/sports/"]{object-fit:contain;padding:20px;background:#f3f6fc}
@media(max-width:600px){.sports-art{height:190px;gap:15px;padding:20px}.sports-team strong{font-size:13px}.event-card .sports-team img{width:83px;height:83px}}
.sports-regular{grid-template-columns:repeat(2,minmax(0,1fr))}.sports-regular:has(> :nth-child(3)){grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:600px){.sports-regular,.sports-regular:has(> :nth-child(3)){grid-template-columns:1fr}}

.temporary-music-photo{position:relative;display:block}.temporary-music-credit{position:absolute;bottom:10px;right:10px;background:#fffef2e8;color:#36313c;padding:4px 8px;border-radius:6px;font-size:10px;font-weight:600}.event-image-note{font-size:12px;color:#77707e;margin:-14px 0 24px}

/* City discovery: date-led, equal treatment for every participating venue. */
.city-programme{display:block;margin-top:32px}.city-programme-intro{margin-bottom:26px}.city-programme-intro h2{font-size:30px;letter-spacing:-.7px;margin:8px 0}.city-programme-intro p,.city-event-heading p{font-size:14px;line-height:1.6;color:#787084;margin:6px 0 0}.city-event-section{margin:0 0 32px}.city-event-heading{margin-bottom:15px}.city-event-heading h3{font-size:23px;letter-spacing:-.4px;margin:0}.city-event-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}.city-event-grid .event-card{min-width:0}.city-event-grid .event-card>a:first-child{display:block;max-height:250px;overflow:hidden}.city-event-grid .event-card>a:first-child>img{width:100%;height:250px!important;object-fit:cover}.city-event-grid .event-card-body h3{font-size:20px}.city-event-grid .event-card-body>small{font-size:12px;line-height:1.5}.city-event-more{border:1px solid #ddd5ee;background:#fff;border-radius:9px;color:#6042ea;font:inherit;font-size:13px;font-weight:750;min-height:44px;padding:10px 18px;margin-top:15px;cursor:pointer}.city-event-empty{padding:19px;background:#faf9fc;border:1px solid #ece8f2;border-radius:12px;color:#81788c;font-size:13px}@media(max-width:600px){.city-programme{margin-top:25px}.city-programme-intro h2{font-size:26px}.city-event-heading h3{font-size:22px}.city-event-grid{grid-template-columns:1fr}.city-event-grid .event-card>a:first-child>img{height:auto!important;aspect-ratio:16/9}.city-event-grid .event-card-body h3{font-size:21px}}

.city-programme[hidden]{display:none!important}#experience-results.city-programme{display:block;grid-template-columns:none}

/* Keep the venue easy to find, separate from the date and event copy. */
.event-venue-location{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:5px;row-gap:4px;margin:9px 0 11px;font-size:15px;line-height:1.45;font-weight:800;color:#352749}.event-venue-location .event-location-label{flex:0 0 100%;font-size:10px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:#81748f;margin-bottom:1px}.event-venue-location a{color:#6042c8;text-decoration:none}.event-venue-location a:hover{text-decoration:underline}.event-location-separator{color:#9b8aaf;font-weight:600}@media(max-width:600px){.event-venue-location{font-size:16px}}

/* Municipal posters remain complete and distinct from venue promotions. */
.city-sponsored-card> a:first-child{background:#f1f3f2;display:flex;align-items:center;justify-content:center}.city-sponsored-card> a:first-child img{object-fit:contain;width:100%;height:240px}.city-sponsored-badge{display:inline-block;align-self:flex-start;padding:5px 9px;border-radius:6px;background:#edf3f4;color:#284b53;font-size:11px;font-weight:700;letter-spacing:.02em}.city-sponsored-card .event-venue-location{line-height:1.4}@media(max-width:600px){.city-sponsored-card> a:first-child img{height:220px}}

.city-event-illustration>a:first-child{position:relative}.city-event-illustration>a:first-child img{object-fit:cover}.city-image-credit{position:absolute;bottom:7px;right:8px;background:rgba(255,255,255,.9);color:#34414a;padding:3px 6px;border-radius:4px;font-size:10px;line-height:1.3}

/* Guided venue event programme */
.ew-progress{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 26px}
.ew-progress button{font:inherit;font-size:13px;border:1px solid #ded5fa;background:#fff;color:#665582;padding:10px 14px;border-radius:999px;cursor:pointer}
.ew-progress button[aria-current=step]{background:#6545ed;color:white;border-color:#6545ed}
.ew-step{background:#fff;border:1px solid #e6dff6;border-radius:18px;padding:24px;display:grid;gap:18px}
.ew-step[hidden]{display:none!important}.ew-step h3{margin:0;color:#302147}.ew-step p{line-height:1.7;color:#746c83}
.ew-step>label,.ew-step details>label{display:grid;gap:7px;font-weight:600}.ew-step input:not([type=checkbox]),.ew-step select,.ew-step textarea{box-sizing:border-box;width:100%;font:inherit;padding:12px;border:1px solid #dcd5eb;border-radius:10px;background:white}.ew-step textarea{min-height:100px}.ew-step details{border:1px solid #eee8f8;padding:15px;border-radius:12px}.ew-step details>label{margin-top:14px}.ew-weekdays{display:flex;flex-wrap:wrap;gap:10px}.ew-weekdays p{flex-basis:100%;margin:0}.ew-weekdays label{display:flex;align-items:center;gap:6px;padding:10px;border:1px solid #ded5fa;border-radius:10px}.ew-weekdays input{width:20px;height:20px;accent-color:#6545ed}
.ew-preview-card{border:1px solid #e4ddf2;border-radius:16px;overflow:hidden;max-width:380px;display:grid;gap:10px;padding-bottom:18px;box-shadow:0 10px 24px #44336610}.ew-preview-card img{width:100%;height:210px;object-fit:cover}.ew-preview-card>:not(img){margin:0 18px}.ew-review{display:grid;gap:16px}.campaign-editor .campaign-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.campaign-editor [hidden]{display:none!important}
@media(max-width:600px){.ew-step{padding:16px}.ew-progress button{font-size:12px;padding:8px}.ew-progress{gap:5px}}


/* Reservation campaign: desire, experience, confidence, action. */
#event-page-content.special-clean{padding:10px 0 40px;max-width:1200px}
.special-clean .special-hero{grid-template-columns:46% 54%;background:#272135;box-shadow:none;min-height:360px}
.special-clean .special-hero>img{height:100%;min-height:360px;max-height:480px;object-position:center}
.special-clean .special-invitation{padding:clamp(24px,3vw,42px)}
.special-clean .special-identity{font-size:14px;line-height:1.5;margin:0 0 16px;color:#f0ce9d}
.special-clean h1{font-size:clamp(32px,3.5vw,48px);max-width:650px;margin:0 0 18px;letter-spacing:-.045em}
.special-clean .special-promise{font-size:18px;line-height:1.6;margin:0 0 18px;color:#f2ebf5}
.special-clean .special-invitation .special-price{font-size:25px;line-height:1.4;color:white;margin:0 0 18px}
.special-clean .special-price span{color:#e4dce9;font-size:15px;margin-top:4px}
.special-clean .event-hero-cta{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:13px 23px;border-radius:10px;background:#d5ef9b;color:#242033;font-size:17px;font-weight:800;text-decoration:none}
.special-clean .special-body{grid-template-columns:minmax(0,1fr) minmax(310px,370px);gap:clamp(24px,4vw,64px);margin-top:34px}
.special-clean .special-meal{padding:0;min-width:0}
.special-clean .special-moment{margin:0 0 28px}
.special-clean .special-meal h2{font-size:clamp(24px,2.6vw,30px);line-height:1.2;margin:0 0 12px}
.special-clean .special-meal p{font-size:18px;line-height:1.65;margin:0;white-space:pre-line;color:#51495b}
.special-clean .special-reservation{position:sticky;top:100px;scroll-margin-top:110px;border:1px solid #ddd2e7;border-top:4px solid #6542e9;padding:24px;border-radius:16px;box-shadow:0 12px 36px #36223f0b}
.special-clean .special-reservation h2{font-size:26px;margin:0 0 9px}
.special-clean .special-form-intro{font-size:16px;line-height:1.5;color:#6b6076;margin:0 0 22px}
.special-clean .special-reservation label{font-size:16px;margin-bottom:14px}
.special-clean .special-reservation input,.special-clean .special-reservation select{min-height:48px}
.special-clean .special-booking-note{display:block;font-size:14px;line-height:1.5;margin-top:14px;color:#70657a}
.special-clean .special-answers{border-top:1px solid #ded5e3;margin:30px 0 24px;padding-top:24px}
.special-clean .special-answers>div{margin:20px 0}
.special-clean .special-answers h3{font-size:17px;line-height:1.4;margin:0 0 5px;letter-spacing:0}
.special-clean .special-answers p{font-size:16px;line-height:1.6}
.special-contact{display:inline-block;font-size:15px;font-weight:750;color:#6042c8;margin-top:4px}
.special-clean .special-meal .special-closing{font-size:23px;line-height:1.35;color:#33213f;font-weight:750;margin-top:28px;max-width:530px}
.special-clean .event-gallery{margin:22px 0;gap:10px}.special-clean .event-gallery img{height:160px}
.special-reserve-dock{display:none}
.event-normal .event-promo-intro{gap:16px}.event-normal .event-promo-intro .event-summary{font-size:18px}
.event-normal .event-copy>section{border:0;border-radius:0;padding:0 0 24px;margin-bottom:24px;border-bottom:1px solid #e5dfe9;background:transparent}
.event-normal .event-copy h2{font-size:27px}.event-normal .event-copy p{font-size:18px}
.event-normal .event-booking-assurance{background:#fff;padding:12px;border-radius:9px;font-size:15px}
.special-clean :is(a,button,input,select):focus-visible{outline:3px solid #9270e6;outline-offset:4px}
.special-clean [hidden]{display:none!important}
@media(max-width:760px){
 #event-page-content.special-clean{padding:0 0 90px}
 .special-clean .special-hero{display:flex;flex-direction:column;min-height:0;border-radius:16px}
 .special-clean .special-hero>img{height:210px;min-height:0;max-height:none;width:100%}
 .special-clean .special-invitation{padding:24px}
 .special-clean h1{font-size:34px;line-height:1.12}
 .special-clean .special-identity{font-size:13px;margin-bottom:12px}
 .special-clean .special-promise{font-size:17px;line-height:1.55}
 .special-clean .special-body{grid-template-columns:1fr;display:grid;gap:24px;margin-top:26px}
 .special-clean .special-reservation{position:static;padding:22px;scroll-margin-top:90px}
 .special-clean .special-meal p{font-size:17px;line-height:1.65}
 .special-clean .special-answers p{font-size:16px}
 .special-reserve-dock{display:block;position:fixed;bottom:0;left:0;right:0;z-index:25;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fffef9f5;border-top:1px solid #e3dbe7;backdrop-filter:blur(10px)}
 .special-reserve-dock .event-hero-cta{display:flex;background:#6042ea;color:white}
 .event-normal .event-promotion{padding:0}
 .event-normal .event-booking{order:initial}
}

/* Value precedes the amount: the guest buys the complete experience. */
.special-clean .special-value{border-left:3px solid #d5ef9b;padding:0 0 0 16px;margin:20px 0}
.special-clean .special-value h2{font-size:21px;line-height:1.3;letter-spacing:-.3px;color:#fff5e8;margin:0 0 9px}
.special-clean .special-value-description{font-size:17px;line-height:1.5;color:#f2ebf5;margin:0 0 12px}
.special-clean .special-invitation .special-value .special-price{font-size:20px;font-weight:650;line-height:1.4;margin:0;color:#f0ce9d}
.special-clean .special-value .special-price small{display:block;font-size:15px;line-height:1.5;font-weight:400;color:#e4dce9}
.special-clean .special-value .special-price span{font-size:15px;color:#e4dce9}
.special-clean .special-hero>img{max-height:none}
@media(max-width:760px){.special-clean .special-value{margin:18px 0}.special-clean .special-value h2{font-size:20px}.special-clean .special-value-description{font-size:16px}}
