@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: optional;
  src: url("/assets/fonts/dm-sans-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: optional;
  src: url("/assets/fonts/dm-sans-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400 800;
  font-display: optional;
  src: url("/assets/fonts/manrope-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400 800;
  font-display: optional;
  src: url("/assets/fonts/manrope-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root{--background:#ffffff;--foreground:#101214;--card:#fff;--card-foreground:#171918;--popover:#fff;--popover-foreground:#171918;--primary:#171918;--primary-foreground:#fff;--secondary:#fff3b2;--secondary-foreground:#171918;--muted:#f0f3f8;--muted-foreground:#48515b;--accent:#ffd21a;--accent-foreground:#171918;--destructive:#aa3024;--border:#dce1e9;--input:#bac2ce;--ring:#1538a6;--radius:.65rem;--yellow:#ffd21a;--ink:#101214;--soft:#ffffff;--font-sans:'DM Sans',Arial,sans-serif}

*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:100px}body{margin:0;background:var(--soft);color:var(--ink);font:16px/1.6 'DM Sans',Arial,sans-serif}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:'Manrope',Arial,sans-serif;font-weight:750;line-height:1.16;letter-spacing:-.035em}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}img{display:block;max-width:100%;height:auto}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #746716;outline-offset:4px}.shell{width:min(1280px,calc(100% - 80px));margin-inline:auto}.site-header{height:104px;display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid var(--border)}.brand img{width:140px}.site-header nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}.button{min-height:50px;padding:13px 22px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;gap:17px;font-weight:650;font-size:15px;border:1px solid transparent;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-yellow{background:var(--yellow);color:var(--ink)}.button-outline{border-color:var(--ink);background:transparent}.hero{display:grid;grid-template-columns:1.07fr 1fr;gap:54px;padding-block:68px 86px;align-items:center}.eyebrow{font-size:12px;letter-spacing:.12em;font-weight:700;line-height:1.5}.hero h1{font-size:clamp(45px,5.2vw,76px);line-height:1.07;letter-spacing:-.056em;margin-top:22px}.hero h1 span{background:linear-gradient(transparent 52%,var(--yellow) 52%,var(--yellow) 89%,transparent 89%);padding:0 5px 0 0}.hero-lead{max-width:440px;color:#5b6159;font-size:17px;margin:25px 0 28px;line-height:1.7}.hero-proof{display:flex;gap:15px;align-items:center;font-size:12px;margin-top:34px;color:#586054}.hero-proof strong{font-size:14px;color:var(--ink)}.hero-proof i{height:4px;width:4px;border-radius:50%;background:#93998f}.hero-visual{height:475px;position:relative;isolation:isolate;transform:rotate(1deg);border-radius:15px;background:#171918}.hero-visual>img{height:100%;width:100%;object-fit:cover;border-radius:15px;object-position:42% 50%;filter:brightness(.83)}.photo-label{position:absolute;left:24px;top:22px;background:white;color:#171918;font-size:11px;font-weight:700;letter-spacing:.09em;padding:7px 12px;border-radius:4px}.section{padding-block:84px}h2{font-size:clamp(30px,3.5vw,46px)}.section h2{margin-top:12px}
@media(max-width:1000px){.shell{width:calc(100% - 48px)}.site-header nav{gap:18px}.hero{gap:30px}.hero-proof{flex-wrap:wrap}.hero-visual{height:430px}}
@media(max-width:700px){.shell{width:calc(100% - 36px)}.site-header{height:82px}.brand img{width:115px}.site-header nav{display:none}.site-header>.button{font-size:12px;padding:10px 12px;min-height:42px}.hero{grid-template-columns:1fr;padding-block:42px;gap:35px}.hero h1{font-size:clamp(43px,10.7vw,68px)}.hero-lead{font-size:16px;max-width:100%}.hero-visual{height:330px;transform:none;margin-right:8px}.hero-proof{font-size:12px;gap:10px}.section{padding-block:52px}.hero-copy>.button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
/* Calendar art direction: clear paper surfaces, ink typography and GSC yellow. */.header-wrap{position:sticky;top:0;background:rgba(248,249,246,.97);z-index:30;border-bottom:1px solid var(--border);backdrop-filter:blur(14px)}.site-header{height:86px;border-bottom:0}.brand img{width:129px}.site-header nav a{position:relative}.site-header nav a:hover{color:#5e5809}.mobile-menu{display:none}.skip-link{position:fixed;top:-80px;left:20px;padding:12px 20px;background:var(--yellow);z-index:100}.skip-link:focus{top:10px}.hero{padding-block:61px 80px}.hero-actions{display:flex;align-items:center;gap:22px}.hero-watch{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600}.hero-visual{height:464px}.hero-copy{animation:enter .65s ease both}.hero-visual{animation:enter .9s ease both}@keyframes enter{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:36px}.section-heading h2{margin-top:13px}.section-heading>p,.section-heading>div>p:not(.eyebrow){font-size:16px;line-height:1.65;color:#65705f;max-width:335px}.finder{display:grid;grid-template-columns:1.45fr 1fr 1.05fr 1.1fr;border:1px solid #dce1d3;background:#fff;border-radius:10px;box-shadow:0 8px 25px #19221104;padding:19px 8px;align-items:center}.picker{padding:0 21px;min-width:0}.finder .picker{border-left:1px solid #e5e8e0}.picker-label{display:flex;align-items:center;gap:8px;color:#6c7365;font-size:12px;font-weight:550;line-height:1.4;margin-bottom:7px}.filter-select{width:100%!important;height:auto!important;min-height:31px!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;font-size:15px!important;font-weight:600;color:var(--ink);gap:9px;white-space:normal!important}.filter-select span{display:block!important;text-align:left}.calendar-select{z-index:70;max-height:340px;background:#fff;font-size:15px}.calendar-select [role=option]{padding:9px 30px 9px 12px;min-height:41px;font-size:14px}.event-type{margin-left:auto;align-self:flex-start;font-size:9px;letter-spacing:.05em;background:#f2f4ed;color:#616e51;white-space:nowrap;padding:4px 7px;border-radius:3px;position:absolute;right:0;top:-7px}.event-type.summit{background:#faf0b8;color:#504200}.event-meta{display:grid;gap:8px;margin-bottom:21px;min-height:60px}.event-meta svg{flex-shrink:0;margin-top:2px}.event-notice{font-size:12px!important;line-height:1.5!important;margin:-7px 0 15px;color:#785716!important;display:block!important}.event-book{padding:10px 12px;min-height:42px;font-size:12px;gap:8px;white-space:nowrap;border-radius:5px}.button-dark{background:var(--ink);color:#fff}.button-dark:hover{background:#353b30}.calendar-note{display:flex;justify-content:space-between;gap:25px;font-size:11px;color:#738067;border-top:1px solid #dbe2d1;padding-top:19px;margin-top:28px;line-height:1.6}.calendar-note a{display:flex;gap:4px;white-space:nowrap;align-items:center}.gallery-section{background:#171a16;color:#fff;overflow:hidden;padding-bottom:49px}.gallery-section .eyebrow{color:#d0c689}.gallery-section .section-heading>div>p:not(.eyebrow){color:#b2baaa}.film-copy{position:absolute;bottom:29px;left:29px;right:40px}.film-copy small{font-size:10px;letter-spacing:.11em;color:#ffea83}.film-copy strong{display:block;font:650 26px/1.3 'Manrope',Arial,sans-serif;letter-spacing:-.035em;margin:9px 0 5px}.film-copy em{font-size:12px;font-style:normal;color:#e0e6d9}.text-link{display:inline-flex;align-items:center;gap:9px;font-size:14px;font-weight:650}.text-link:hover{text-decoration:underline;text-underline-offset:4px}.member-card{flex:0 0 calc((100% - 96px)/5);min-width:180px;scroll-snap-align:start}.member-photo{height:230px;background:#fff;border-radius:9px;position:relative;overflow:hidden}.member-photo img{height:100%;width:100%;object-fit:cover;object-position:top center;transition:transform .6s}.member-card:hover .member-photo img{transform:scale(1.035)}.member-photo span{position:absolute;left:10px;bottom:11px;background:#fffef9eF;padding:3px 8px;border-radius:3px;color:#373f2f;font-size:10px;font-weight:600}.member-card h3{font-size:17px;font-weight:750;line-height:1.3;margin:13px 0 7px;letter-spacing:-.025em}.member-card p{font-size:10px;letter-spacing:.03em;color:#6b755f;line-height:1.6;overflow-wrap:anywhere}footer{background:var(--ink);color:#fff;padding:53px 0 0}.footer-main{display:grid;grid-template-columns:1.8fr 1fr 1fr;gap:70px;padding-bottom:48px}.footer-main>div:first-child>p{font-size:13px;color:#b1bcaa;margin:19px 0 15px}.footer-main h4{font-size:14px;letter-spacing:0;font-family:inherit;font-weight:550;color:#d3d9cc;margin-bottom:23px}.footer-main a{display:block;font-size:13px;color:#a6b19d;margin-top:11px;line-height:1.6}.footer-main a:hover{color:var(--yellow)}.footer-bottom{display:flex;justify-content:space-between;gap:25px;padding:23px 0;border-top:1px solid #4b544038;font-size:11px;color:#909e84}.footer-bottom>div{display:flex;gap:25px;flex-wrap:wrap}.booking-dialog{padding:29px!important;border-radius:13px!important;max-width:520px!important;width:calc(100% - 28px)!important;max-height:calc(100dvh - 28px);overflow-y:auto;gap:18px!important}.booking-dialog [data-slot=dialog-title]{font:750 30px/1.2 'Manrope',Arial,sans-serif;letter-spacing:-.04em;margin-top:7px}.booking-dialog [data-slot=dialog-description]{font-size:14px;line-height:1.6;margin-top:4px}.booking-dialog .eyebrow{font-size:10px;color:#7b7c42;margin-right:20px}.booking-summary{background:#f0f3e9;border:1px solid #dce3d1;border-radius:8px;padding:16px;display:flex;justify-content:space-between;gap:18px;align-items:center}.booking-summary>div{display:grid;gap:6px;font-size:12px;color:#647353}.booking-summary span{display:flex;align-items:flex-start;gap:6px;line-height:1.5}.booking-summary svg{flex-shrink:0}.booking-summary strong{font-size:22px;letter-spacing:-.03em;text-align:right;white-space:nowrap}.booking-summary small{display:block;font-size:10px;font-weight:400;letter-spacing:0;color:#6e7b5f}.booking-dialog form{display:grid;gap:16px}.booking-dialog form>label{font-size:13px;font-weight:600;display:block;line-height:1.5}.booking-dialog input{margin-top:6px;width:100%;min-width:0;padding:12px 13px;min-height:47px;font-size:16px;border:1px solid #dce2d3;border-radius:6px;background:#fff;line-height:1.3}.field-hint{float:right;color:#778369;font-size:11px;font-weight:400}.consent-row{display:flex;gap:10px;align-items:flex-start;padding-block:4px}.consent-row label{font-size:11px;line-height:1.65;color:#66715a;cursor:pointer}.consent-row a{text-decoration:underline;text-underline-offset:2px}.consent-row [data-slot=checkbox]{flex-shrink:0;margin-top:2px;width:18px;height:18px;border-color:#94a580}.consent-row [data-state=checked]{background:#171918;color:#fff}.form-error{color:#972e22;background:#fff0eb;border:1px solid #e9c2b3;border-radius:6px;font-size:13px;padding:12px;line-height:1.6;overflow-wrap:anywhere}.form-error small{display:block}.form-error a{text-decoration:underline}.checkout-submit{width:100%;min-height:50px}.secure-note{display:flex;gap:6px;align-items:center;justify-content:center;font-size:11px;color:#6d795e}.checkout-help{font-size:10px;color:#7c8670;text-align:center;line-height:1.6;margin-top:-8px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.payment-next{font-size:14px;color:#536443;display:grid;gap:18px}.payment-next>p:first-child{display:flex;align-items:center;gap:8px;font-weight:600}.payment-next small{font-size:12px;overflow-wrap:anywhere;color:#7b856d}.paypal-controls{display:grid;gap:15px;width:100%}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:1600px){.hero{gap:85px}.hero-visual{height:490px}}
@media(max-width:1150px){.hero-actions{align-items:flex-start;flex-direction:column;gap:15px}.hero{gap:37px}.event-type{font-size:8px;padding:3px 5px}.event-book{padding:9px 11px;font-size:11px;gap:5px}.finder{grid-template-columns:1.25fr 1fr 1fr 1.05fr}.picker{padding-inline:15px}.member-card{flex-basis:calc((100% - 72px)/4)}.site-header nav{gap:20px}.site-header{gap:20px}}
@media(max-width:900px){.hero h1{font-size:clamp(43px,5.8vw,60px)}.hero-visual{height:420px}.hero-proof{gap:11px}.hero-proof span{width:100%}.hero-proof i:nth-of-type(2){display:none}.event-book{font-size:13px;gap:10px;padding:10px 14px}.event-type{font-size:9px}.finder{grid-template-columns:1fr 1fr;row-gap:22px;padding-block:20px}.finder .picker:nth-child(3){border-left:0}.finder .picker{padding-inline:22px}.section-heading{gap:24px}.section-heading>p,.section-heading>div>p:not(.eyebrow){font-size:14px;max-width:260px}.film-copy strong{font-size:21px}.footer-main{gap:40px}}
@media(max-width:700px){body{padding-bottom:74px}.site-header{height:73px;gap:12px}.site-header .brand img{width:112px}.mobile-menu{display:inline-flex}.hero{padding-block:39px 43px;gap:31px}.hero h1{font-size:clamp(44px,11.2vw,71px);margin-top:19px;line-height:1.055}.hero-copy .eyebrow{font-size:10px;letter-spacing:.1em}.hero-lead{font-size:15px;margin:21px 0 24px;max-width:98%;line-height:1.65}.hero-actions{flex-direction:row;gap:0;display:flex}.hero-actions .button{width:100%;justify-content:space-between;font-size:14px;padding:13px 18px}.hero-watch{display:none}.hero-proof{margin-top:23px;gap:11px;font-size:11px}.hero-proof strong{font-size:13px}.hero-proof span{width:auto}.hero-proof i:nth-of-type(2){display:block}.hero-visual{height:325px;margin:0 8px 0 0;border-radius:10px;transform:none}.hero-visual>img{border-radius:10px;object-position:50% 50%}.photo-label{top:17px;left:17px;font-size:9px;padding:6px 9px}.section{padding-block:50px}.section-heading{display:block;margin-bottom:26px}.section-heading h2{font-size:31px;line-height:1.16;margin-top:11px}.section-heading>p,.section-heading>div>p:not(.eyebrow){font-size:14px;margin-top:16px;max-width:100%}.section-heading br{display:none}.section .eyebrow{font-size:10px;letter-spacing:.11em}.finder{border-radius:8px;padding:15px 0;gap:18px 0;grid-template-columns:1fr 1fr}.finder .picker{padding-inline:16px;border-left:0}.finder .picker:nth-child(3){border-left:1px solid #e4e9dc}.finder .picker:last-child{grid-column:1/-1;border-top:1px solid #e4e9dc;padding-top:14px;display:flex;justify-content:space-between;align-items:center;gap:25px}.finder .picker:last-child .picker-label{white-space:nowrap;margin-bottom:0}.finder .picker:last-child .filter-select{max-width:200px}.picker-label{font-size:11px;gap:6px;margin-bottom:7px}.filter-select{font-size:14px!important;min-height:29px!important}.event-type{font-size:9px;top:0}.event-meta{min-height:0;margin-bottom:22px;gap:8px}.event-book{font-size:13px;padding:11px 16px;min-height:43px;gap:12px}.event-notice{font-size:11px!important}.calendar-note{display:block;font-size:10px;margin-top:22px;line-height:1.6}.calendar-note a{margin-top:9px;font-size:11px}.gallery-section{padding-bottom:34px}.gallery-section .section-heading{margin-bottom:23px}.film-copy{left:22px;bottom:22px;right:42px}.film-copy strong{font-size:23px;margin:7px 0 5px}.film-copy small{font-size:9px}.film-copy em{font-size:11px}.member-card{flex-basis:195px;min-width:195px}.member-photo{height:240px}.member-card h3{font-size:16px;margin:12px 0 6px}.member-card p{font-size:10px}.footer-main{grid-template-columns:1fr 1fr;gap:35px 23px;padding-bottom:33px}.footer-main>div:first-child{grid-column:1/-1}.footer-main>div:first-child>p{margin:17px 0 12px}.footer-main img{width:135px}.footer-main h4{font-size:13px;margin-bottom:17px}.footer-main a{font-size:12px;margin-top:10px}footer{padding-top:35px}.footer-bottom{display:block;padding-block:19px;font-size:10px}.footer-bottom>div{gap:20px;margin-top:13px}.booking-dialog{padding:23px!important;gap:17px!important}.booking-dialog [data-slot=dialog-title]{font-size:27px}.booking-dialog [data-slot=dialog-description]{font-size:13px}.booking-summary{padding:14px;gap:12px}.booking-summary>div{font-size:11px}.booking-summary strong{font-size:20px}.booking-dialog form{gap:15px}.booking-dialog form>label{font-size:12px}.consent-row label{font-size:11px}.checkout-submit{font-size:14px;min-height:48px}}
@media(max-width:380px){.hero-proof{gap:8px;font-size:10px}.hero-proof strong{font-size:12px}.event-type{font-size:8px}.event-book{font-size:12px;padding:10px 12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.hero-visual{transform:none}}

/* Readability floors for real event and booking information. */
.hero-lead{font-size:16px}
.eyebrow,.photo-label,.picker-label,.event-type,.calendar-note,.film-copy small,.film-copy em,.member-photo span,.member-card p,.footer-bottom,.booking-dialog .eyebrow,.booking-summary small,.field-hint,.consent-row label,.secure-note,.checkout-help{font-size:12px!important}
.event-book,.text-link,.booking-dialog form>label,.booking-summary>div,.filter-select{font-size:14px!important}.event-type{position:static;grid-column:2;justify-self:start;margin-left:0;line-height:1.35;padding:3px 6px;white-space:normal;letter-spacing:.025em}.event-book{margin-left:auto}.filter-select{line-height:1.6}.member-card p{letter-spacing:0}.hero-proof{font-size:12px}.film-copy small{line-height:1.5}.booking-dialog form>label{line-height:1.7}.checkout-help{margin-top:0}.consent-row{gap:11px}.booking-dialog input{font-size:16px!important}.calendar-note{line-height:1.7}.footer-main a{font-size:14px}.member-card{min-width:210px}.hero-copy .eyebrow{font-size:12px}.hero-watch{font-size:14px}
@media(max-width:700px){.hero-lead{font-size:16px}.hero-proof{font-size:12px;flex-wrap:wrap}.hero-proof i:nth-of-type(2){display:none}.hero-proof span{width:100%}.member-card{flex-basis:210px}.film-copy em{font-size:12px}.film-copy strong{font-size:23px}.footer-main a{font-size:14px}.footer-bottom>div{gap:18px}.booking-summary>div{font-size:14px!important}.booking-summary{align-items:flex-start;flex-wrap:wrap}.booking-summary strong{text-align:left}.booking-dialog [data-slot=dialog-description]{font-size:14px}.field-hint{float:none;display:block}.filter-select{font-size:16px!important}.finder .picker:last-child .filter-select{max-width:200px}.hero-visual{height:300px}}

/* September visual refresh — GSC yellow, rich black, white and global blue. */
body{background:#fff;color:var(--ink)}
::selection{background:#1538a6;color:#fff}
button:focus-visible,a:focus-visible,input:focus-visible{outline-color:#1538a6}
.shell{width:min(1280px,calc(100% - 72px))}
.header-wrap{background:#101214;color:#fff;border-bottom:1px solid #ffffff26;backdrop-filter:none;animation:header-in .45s ease both}
.site-header{height:80px;gap:24px}.brand img{background:#fff;border-radius:3px;padding:3px;width:122px}
.site-header nav{gap:28px;font-weight:600;font-size:14px}
.site-header nav a{padding-block:8px}.site-header nav a:hover{color:var(--yellow)}
.site-header nav a:after{content:"";position:absolute;left:0;bottom:1px;height:2px;background:var(--yellow);width:100%;transform:scaleX(0);transform-origin:left;transition:transform .22s}
.site-header nav a:hover:after,.site-header nav a:focus-visible:after{transform:scaleX(1)}.mobile-menu{border-color:#ffffff50;color:#fff}
.button{border-radius:6px;position:relative;overflow:hidden;font-size:16px;font-weight:700;transition:transform .2s,background .2s,box-shadow .2s}
.button:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 25%,#fff5 48%,transparent 70%);transform:translateX(-150%);pointer-events:none}
.button:hover:after,.button:focus-visible:after{animation:cta-sheen .65s ease}
.button svg,.text-link svg{transition:translate .2s;flex-shrink:0}.button:hover svg,.button:focus-visible svg,.text-link:hover svg{translate:3px 0}
.button-dark{background:var(--ink);color:#fff}.button-dark:hover{background:#252b33}.button-yellow:hover{background:#ffe260;box-shadow:0 5px 0 #10121422}
.hero-stage{background:var(--yellow);overflow:hidden;border-bottom:1px solid #101214}
.hero{grid-template-columns:1.2fr .84fr;gap:52px;padding-block:55px 62px;align-items:center}
.hero-copy{animation:none}.hero-copy>.eyebrow{font-size:12px;letter-spacing:.1em}
.hero h1{font-size:clamp(42px,4.7vw,67px);line-height:1.12;letter-spacing:-.045em;margin-top:20px}
.hero-emphasis{position:relative;width:fit-content;z-index:0}
.hero-emphasis:after{content:"";position:absolute;bottom:2px;left:0;right:0;height:7px;background:#fff;z-index:-1;transform-origin:left;animation:underline-in .65s .6s both}
.hero-lead{font-size:18px;color:#292e34;line-height:1.65;max-width:570px;margin:24px 0}
.hero-actions{gap:20px;flex-wrap:wrap}.hero-watch{font-size:14px}
.hero-proof{display:flex;align-items:center;gap:28px;margin-top:34px;color:#101214}
.hero-proof>div{display:flex;align-items:center;gap:9px}.hero-proof strong{font-size:40px;letter-spacing:-.05em;font-family:Manrope,Arial,sans-serif;line-height:1.2;font-variant-numeric:tabular-nums;min-width:1.2em}
.hero-proof>div>span{font-size:12px;letter-spacing:.04em;font-weight:700}.hero-proof>p{font-size:13px;line-height:1.5;padding-left:20px;border-left:1px solid #1012144d}
.hero-visual{height:475px;border-radius:8px;transform:rotate(2deg);border:6px solid #fff;box-shadow:12px 12px 0 #101214;animation:photo-in .85s .1s both;margin:0 12px 0 0;isolation:isolate}
.hero-visual>img{border-radius:2px;filter:none;object-fit:cover;object-position:center 30%;height:100%;width:100%}
.photo-label{left:15px;top:15px;font-size:12px;background:#101214;color:var(--yellow);border-radius:2px;letter-spacing:.05em;animation:caption-in .5s .65s both}
.hero-photo-footer{position:absolute;left:0;right:0;bottom:0;padding:46px 20px 28px;background:linear-gradient(transparent,#101214f5);display:flex;align-items:flex-end;justify-content:space-between;color:#fff;gap:15px}
.hero-photo-footer>span{font-size:15px;line-height:1.5;letter-spacing:.015em}.hero-photo-footer b{color:var(--yellow);font-size:18px}
.hero-source{position:absolute;bottom:7px;left:20px;color:#fff;font-size:12px;opacity:.8}
.section{padding-block:72px}.section-heading{margin-bottom:32px}.section-heading h2{font-size:clamp(31px,3.3vw,46px);line-height:1.18}
.section-heading>p,.section-heading>div>p:not(.eyebrow){color:#48515b;max-width:350px;font-size:16px}
.finder{border:2px solid #101214;padding:18px 5px;border-radius:8px;box-shadow:6px 6px 0 #ffd21a;gap:0;background:#fff}
.finder .picker{border-color:#d8dee7}.picker-label{color:#59606a;font-size:12px}.filter-select{font-size:16px!important;color:#101214}
.picker{transition:background .2s,box-shadow .2s;border-radius:4px}.picker:focus-within{background:#fff6c5;box-shadow:0 0 0 5px #fff6c5}.event-type{font-size:12px!important;background:#eff3f9;color:#384653;letter-spacing:.02em;font-weight:600;padding:3px 7px}
.event-type.summit{background:#fff1a7;color:#101214}.event-meta{min-height:72px;gap:7px;margin-bottom:13px}.event-value svg{flex-shrink:0;margin-top:2px}
.event-notice{color:#87430c!important;background:#fff4e0;border-radius:4px;padding:8px!important;font-size:12px!important}
.event-offer{margin-top:auto;padding-top:15px;border-top:1px solid #dce1e9;width:100%}
.offer-prices{display:flex;gap:9px;align-items:baseline;flex-wrap:wrap}.offer-prices del{font-size:16px;color:#697482;text-decoration-thickness:1.5px}
.offer-prices strong{font-size:29px!important;line-height:1.2;font-family:Manrope,Arial,sans-serif;font-weight:800;color:#101214;letter-spacing:-.04em;animation:price-in .4s ease both}
.offer-prices .tax-label{font-size:12px;line-height:1.5;color:#59606a;font-weight:400;letter-spacing:0}
.offer-code{display:flex;gap:6px;align-items:center;flex-wrap:wrap;background:#fff4b9;border:1px solid #efd771;padding:8px 10px;border-radius:5px;color:#353014;font-size:12px;margin-top:10px;line-height:1.5}
.offer-code b{font-size:12px;letter-spacing:.025em}.offer-code svg{flex-shrink:0}.offer-code .offer-check{margin-left:auto;animation:check-in .4s .1s both}.offer-context{font-size:12px;color:#59606a}.event-book{font-size:14px!important;min-height:45px;gap:7px;padding:11px 13px;margin-left:auto}.calendar-note{color:#59606a;border-color:#dce1e9}
.city-marquee{overflow:hidden;margin-top:23px;border-block:1px solid #ffffff40;padding-block:22px}.city-marquee-track{display:flex;width:max-content;animation:city-drift 100s linear infinite}.city-marquee a{display:flex;align-items:center;gap:13px;white-space:nowrap;font-size:23px;font-family:Manrope,Arial,sans-serif;font-weight:650}.city-marquee a:hover{color:var(--yellow)}.city-marquee:hover .city-marquee-track,.city-marquee:focus-within .city-marquee-track{animation-play-state:paused}
.gallery-section{background:var(--yellow)}
.film-section{background:#fff}.member-card{scroll-snap-align:start}.member-photo{border-radius:7px;overflow:hidden;box-shadow:0 4px 0 #10121410;transition:transform .25s}.member-card:hover .member-photo{transform:translateY(-5px)}.member-photo img{transition:transform .45s}.member-card:hover img{transform:scale(1.025)}.member-card p{color:#48515b}
footer{background:#101214;color:#fff;border:0}footer .footer-main img{background:#fff;padding:4px;border-radius:3px}.footer-main a,.footer-main p{color:#c6cedb}.footer-main h4{color:#fff}.footer-bottom{border-color:#ffffff30;color:#bfc8d6}
/* Offer-first form, with a clear fixed total and optional company. */
.booking-dialog{width:min(900px,calc(100vw - 32px))!important;max-width:900px!important;max-height:calc(100dvh - 32px);overflow:auto;background:#fff;color:#101214;border:2px solid #101214;border-radius:10px!important;padding:28px!important;gap:20px!important;scrollbar-gutter:stable}
.booking-dialog [data-slot=dialog-title]{font-size:32px;letter-spacing:-.04em;line-height:1.2;margin-right:18px}.booking-dialog [data-slot=dialog-description]{font-size:16px;color:#48515b}.booking-dialog>.absolute{background:#fff;border-radius:50%;color:#101214;opacity:1;top:12px;right:12px}
.booking-dialog[data-state=open]{animation:dialog-in .23s ease both}.booking-summary{display:flex;align-items:flex-start;gap:10px 22px;flex-wrap:wrap;padding:0;background:transparent;border:0;line-height:1.6;color:#48515b}.booking-summary>span{display:flex;align-items:flex-start;gap:7px;font-size:14px}.booking-summary svg{flex-shrink:0;margin-top:3px}.booking-summary>span:last-child{width:100%}
.offer-full{background:#101214;border:1px solid #101214;border-radius:8px;padding:20px 22px;margin:0}.offer-full .offer-kicker{display:flex;align-items:center;gap:7px;color:var(--yellow);font-size:14px;font-weight:650;margin-bottom:14px}.offer-full .offer-prices{gap:12px}.offer-full .offer-prices strong{color:var(--yellow);font-size:44px!important}.offer-full .offer-prices del{color:#b3becd;font-size:20px}.offer-full .offer-prices .tax-label{color:#d6dde7}.offer-full .offer-code{background:#ffd21a1a;border-color:#ffd21a65;color:#fff2b3;font-size:14px}.offer-full .offer-code b{color:var(--yellow);font-size:14px}.offer-full .offer-context{color:#bdc7d6}
.booking-dialog form.booking-form-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:25px;align-items:start}.booking-fields{display:grid;grid-template-columns:1fr;gap:17px}.booking-fields>label{font-size:14px;font-weight:600;line-height:1.6;color:#101214;display:block}.booking-dialog input{background:#fff;border:1px solid #aeb8c6;border-radius:5px;width:100%;font-size:16px!important;padding:12px 13px;min-height:48px;margin-top:6px;transition:border-color .2s,box-shadow .2s,background .2s}.booking-dialog input:focus{outline:none;border-color:#1538a6;box-shadow:0 0 0 3px #1538a620;background:#fcfdff}.field-hint,.optional-label{font-size:12px;font-weight:400;color:#596574}.field-hint{float:right}.consent-row{display:flex;align-items:flex-start;gap:11px;margin-top:3px}.consent-row>button{min-width:18px;width:18px;height:18px;margin-top:3px;border:1px solid #101214;border-radius:4px;color:#fff;background:#fff}.consent-row>button[data-state=checked]{background:#101214;color:var(--yellow)}.consent-row label{font-size:12px!important;line-height:1.8;color:#48515b;font-weight:400}.consent-row a{text-decoration:underline;text-underline-offset:3px;color:#101214}.consent-hint{font-size:12px;color:#8b4309}
.booking-total{background:#f1f5ff;border:1px solid #c4d2f4;border-radius:8px;padding:20px;position:sticky;top:0}.booking-total>.eyebrow{color:#1538a6}.booking-total h3{font-size:25px;margin-top:10px}.booking-total>p:not(.eyebrow){font-size:14px;color:#48515b;margin-top:5px}.booking-total ul{list-style:none;padding:0;margin:22px 0;display:grid;gap:9px}.booking-total li{display:flex;align-items:center;gap:7px;font-size:12px;color:#33435a}.booking-total li svg{flex-shrink:0;color:#1538a6}.booking-total>div{display:flex;justify-content:space-between;gap:14px;font-size:14px;margin-top:12px}.booking-total .total-saving{color:#1538a6}.booking-total .final-total{padding-top:18px;margin-top:20px;border-top:1px solid #aebfdc;align-items:center}.final-total>span{font-weight:600}.final-total small{display:block;font-size:12px;font-weight:400;color:#596574}.final-total>strong{font-size:30px;letter-spacing:-.045em;font-family:Manrope,Arial,sans-serif}.checkout-submit{width:100%;min-height:50px;margin-top:22px;padding-inline:13px;font-size:15px;gap:9px}.booking-total .secure-note{display:flex;gap:7px;align-items:center;justify-content:center;font-size:12px;margin-top:12px}.booking-total .checkout-help{font-size:12px;line-height:1.7;margin-top:15px;color:#596574}.checkout-support{font-size:12px;text-decoration:underline;text-underline-offset:3px;display:block;margin-top:15px}.form-error{background:#fff1ed;border:1px solid #e5bfb2;color:#89230d;padding:11px 12px;border-radius:5px;font-size:14px;line-height:1.6}.form-error small{display:block;overflow-wrap:anywhere}.payment-next>p:first-child>svg{animation:check-in .5s both;color:#1538a6}.spin{animation:spin 1s linear infinite}
/* Interaction motion register: 1 header; 2 headline; 3 underline; 4 photo;
5 caption; 6 CTA sheen; 7 arrow; 8 navigation; 9 count (React);
10 city drift; 11 filter focus; 12 chip; 13 results; 14 card lift;
15 date badge; 16 price; 17 applied check; 18 dialog; 19 input;
20 saving spinner; 21 success; 22 agenda; 23 flagship; 24 gallery/member;
25 video play; 26 disclosure; 27 mobile action. */
@keyframes header-in{from{opacity:0;translate:0 -8px}to{opacity:1;translate:0 0}}
@keyframes headline-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes underline-in{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes photo-in{from{opacity:0;translate:18px 12px;rotate:-2deg}to{opacity:1;translate:0 0;rotate:0deg}}
@keyframes caption-in{from{opacity:0;translate:-8px 0}to{opacity:1;translate:0 0}}
@keyframes cta-sheen{to{transform:translateX(150%)}}
@keyframes city-drift{to{transform:translateX(-50%)}}
@keyframes results-in{from{opacity:.55;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@keyframes badge-in{from{transform:scale(.94)}to{transform:scale(1)}}
@keyframes price-in{from{opacity:0;translate:0 6px}to{opacity:1;translate:0 0}}
@keyframes check-in{from{opacity:0;transform:scale(.65)}to{opacity:1;transform:scale(1)}}
@keyframes dialog-in{from{opacity:0;scale:.97}to{opacity:1;scale:1}}
@keyframes faq-in{from{opacity:0;translate:0 -4px}to{opacity:1;translate:0 0}}
@keyframes mobile-in{from{translate:0 100%}to{translate:0 0}}
@keyframes section-in{from{opacity:.25;translate:0 16px}to{opacity:1;translate:0 0}}
@keyframes spin{to{transform:rotate(360deg)}}
[data-motion=paused] *,[data-motion=paused] *:before,[data-motion=paused] *:after,[data-hidden=true] *,[data-hidden=true] *:before,[data-hidden=true] *:after{animation-play-state:paused!important}
@media(max-width:1100px){.shell{width:calc(100% - 48px)}.hero{gap:35px;grid-template-columns:1.1fr .85fr}.hero h1{font-size:clamp(40px,4.9vw,58px)}.hero-visual{height:435px}.hero-proof{gap:18px;flex-wrap:wrap}.hero-proof>p{font-size:12px}.hero-proof strong{font-size:34px}.site-header nav{gap:19px}}
@media(max-width:800px){.site-header nav{display:none}.mobile-menu{display:inline-flex}.hero{gap:25px}.hero h1{font-size:40px}.hero-lead{font-size:16px}.hero-visual{height:410px}.hero-photo-footer>span{font-size:12px}.hero-photo-footer b{font-size:14px}.photo-label{font-size:10px!important}.hero-watch{display:none}.hero-proof>p{border:0;padding-left:0;flex-basis:100%}.booking-dialog form.booking-form-grid{grid-template-columns:1fr 1fr;gap:20px}}
@media(max-width:700px){.shell{width:calc(100% - 36px)}.site-header{height:69px}.site-header .brand img{width:106px}.site-header{gap:10px}.mobile-menu{width:38px;height:38px}
.hero{grid-template-columns:1fr;padding-block:34px 44px;gap:34px}.hero h1{font-size:clamp(36px,9.1vw,61px);line-height:1.12;margin-top:18px}.hero-copy>.eyebrow{font-size:12px;letter-spacing:.055em}.hero-lead{font-size:16px;margin:20px 0 23px;line-height:1.65}.hero-proof{gap:23px;margin-top:25px;flex-wrap:nowrap}.hero-proof>div{gap:7px}.hero-proof strong{font-size:35px}.hero-proof>div>span{font-size:12px;letter-spacing:0}.hero-proof>p{display:none}.hero-visual{width:calc(100% - 10px);height:370px;max-width:460px;margin:0 auto;border-width:5px;transform:rotate(1deg);box-shadow:8px 8px 0 #101214}.hero-visual>img{object-position:50% 26%}.hero-photo-footer{padding:40px 17px 30px}.hero-photo-footer>span{font-size:13px}.hero-photo-footer b{font-size:16px}.hero-source{left:17px}.photo-label{font-size:12px!important;max-width:calc(100% - 30px);line-height:1.5}
.section{padding-block:48px}.section-heading h2{font-size:31px;line-height:1.2}.section-heading>p{font-size:16px;max-width:100%;margin-top:17px}.finder{padding:16px 0;gap:17px 0;box-shadow:4px 4px 0 #ffd21a;grid-template-columns:1fr 1fr}.finder .picker:last-child{grid-column:1/-1}.finder .picker:last-child .filter-select{max-width:210px}.event-meta{min-height:0;margin-bottom:15px}.offer-prices strong{font-size:31px!important}.event-book{font-size:15px!important;min-height:45px}.event-type{font-size:12px!important}.city-marquee a{font-size:22px}.city-marquee{padding-block:18px}.member-card p{font-size:12px!important}
.booking-dialog{width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px);padding:23px 17px!important;border-width:1px;gap:18px!important}.booking-dialog [data-slot=dialog-title]{font-size:29px;line-height:1.2;margin-right:13px}.booking-dialog [data-slot=dialog-description]{font-size:15px}.booking-summary{gap:9px;padding:0}.booking-summary>span{font-size:13px;line-height:1.65}.offer-full{padding:18px 16px}.offer-full .offer-prices strong{font-size:40px!important}.offer-full .offer-kicker{font-size:13px;line-height:1.5;margin-bottom:13px}.offer-full .offer-code{font-size:12px}.offer-full .offer-code b{font-size:13px}.booking-dialog form.booking-form-grid{grid-template-columns:1fr;gap:23px}.booking-fields{gap:16px}.booking-fields>label{font-size:14px}.booking-total{position:static;padding:18px}.booking-total h3,.booking-total>p:not(.eyebrow):not(.secure-note):not(.checkout-help),.booking-total>ul{display:none}.booking-total>.eyebrow{margin-bottom:15px}.booking-total .final-total{padding-top:15px;margin-top:15px}.booking-total .checkout-submit{font-size:16px;min-height:52px}.field-hint{float:right;display:inline}.consent-row label{font-size:12px!important}.checkout-support{font-size:13px}}
@media(max-width:380px){.hero h1{font-size:34px}.hero-visual{height:325px}.hero-proof{gap:19px}.event-book{width:100%;margin:0;justify-content:space-between}.offer-code{gap:5px}.hero-photo-footer b{font-size:14px}.booking-dialog [data-slot=dialog-title]{font-size:26px}.field-hint{float:none;display:block}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important}.city-marquee{overflow:auto}.city-marquee-track{transform:none!important}.hero-visual{transform:none}.reveal{opacity:1!important;translate:none!important}}

/* Replayable motion and classified media system. Content remains complete by default. */
.reveal{opacity:1;translate:none}
[data-motion-active=true].reveal{animation:motion-section-in .6s var(--reveal-delay,0ms) cubic-bezier(.22,1,.36,1) both}
@keyframes motion-section-in{from{opacity:.22;translate:0 16px}to{opacity:1;translate:0 0}}

/* Hero typography: only the first line types; the other lines are always present. */
.hero-copy{animation:none}.hero h1>.typing-line{display:block;opacity:1;animation:none;padding-right:5px;background:linear-gradient(transparent 52%,var(--yellow) 52%,var(--yellow) 89%,transparent 89%)}
.typing-line{position:relative;width:max-content;max-width:100%}.typing-line .typing-reserve{visibility:hidden}.typing-line .typing-value{position:absolute;inset:0 auto auto 0;white-space:nowrap}.hero h1 .typing-line>span{padding:0;background:none}
.typing-line[data-cursor-active=true] .typing-value:after{content:"";display:inline-block;width:.075em;height:.86em;margin-left:.06em;background:currentColor;vertical-align:-.02em;animation:motion-cursor-blink .8s steps(1,end) infinite}
@keyframes motion-cursor-blink{0%,48%{opacity:1}49%,100%{opacity:0}}
@keyframes motion-text-sheen{0%{opacity:0;background-position:130% 0}18%{opacity:.9}100%{opacity:0;background-position:-40% 0}}
.hero-emphasis:after{animation:none;transform:scaleX(1)}.hero-stage[data-motion-active=true] .hero-emphasis:after{animation:motion-underline-in 1.5s cubic-bezier(.22,1,.36,1) both}
@keyframes motion-underline-in{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.hero-visual{animation:hero-frame-float 8s ease-in-out infinite;will-change:translate}.hero-stage[data-motion-visible=false] .hero-visual{animation-play-state:paused}
@keyframes hero-frame-float{0%,100%{translate:0 0}50%{translate:0 -6px}}

/* Timed media uses nested layers so float, pan and scene changes never overwrite each other. */@keyframes motion-slide-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.hero-visual .photo-label,.hero-visual .hero-photo-footer,.hero-visual .hero-source{z-index:4}

/* CTA attention effects are composited, mutually coordinated in JS and never capture input. */
[data-replay-sheen],[data-idle-sheen],[data-show-more]{position:relative;overflow:hidden;isolation:isolate}
[data-replay-sheen]:after,[data-idle-sheen]:after,[data-show-more]:after{content:"";position:absolute;z-index:2;pointer-events:none;inset:-35% auto -35% -55%;width:34%;opacity:0;background:linear-gradient(90deg,transparent,#ffffff8a,transparent);transform:skewX(-18deg) translateX(0)}
[data-motion-active=true] [data-replay-sheen]:after{animation:motion-cta-sheen .8s ease-out both}
[data-replay-sheen]:hover:after,[data-replay-sheen]:focus-visible:after,[data-replay-sheen]:active:after,[data-idle-sheen]:hover:after,[data-idle-sheen]:focus-visible:after,[data-idle-sheen]:active:after,[data-show-more]:hover:after,[data-show-more]:focus-visible:after,[data-show-more]:active:after,[disabled]:after{animation:none!important;opacity:0!important}
@keyframes motion-cta-sheen{0%{opacity:0;transform:skewX(-18deg) translateX(0)}18%{opacity:.72}100%{opacity:0;transform:skewX(-18deg) translateX(520%)}}
@keyframes motion-control-buzz{0%,100%{translate:0 0}25%{translate:-2px 0}50%{translate:2px 0}75%{translate:-1px 0}}
@keyframes motion-mobile-pulse{0%,100%{box-shadow:0 -8px 20px #19221105}45%{box-shadow:0 -8px 28px #ffd21a99}}

/* Filters, cards, date treatment and authoritative offer feedback. */
@keyframes motion-card-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes motion-calendar-flip{0%{transform:perspective(500px) rotateX(-72deg);opacity:.4}70%{transform:perspective(500px) rotateX(7deg);opacity:1}100%{transform:perspective(500px) rotateX(0)}}
.offer-prices del{position:relative;text-decoration:none}.offer-prices del:after{content:"";position:absolute;left:-2px;right:-2px;top:52%;height:1.5px;background:currentColor;transform:scaleX(1);transform-origin:left}.offer-confirmed .offer-prices strong{opacity:1;animation:none}.offer-confirmed .offer-check *{stroke-dasharray:28;stroke-dashoffset:0}
.booking-dialog[data-state=open] .offer-full.offer-confirmed .offer-prices del:after{animation:motion-price-strike .22s ease-out both}.booking-dialog[data-state=open] .offer-full.offer-confirmed .offer-prices strong{animation:motion-price-pop .35s .22s cubic-bezier(.22,1,.36,1) both}.booking-dialog[data-state=open] .offer-full.offer-confirmed .offer-check *{animation:motion-check-draw .36s .28s ease-out both}
@keyframes motion-price-strike{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes motion-price-pop{from{opacity:.72;transform:translateY(4px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes motion-check-draw{from{stroke-dashoffset:28}to{stroke-dashoffset:0}}
.offer-code{position:relative;overflow:visible}.offer-sparks{position:absolute;right:7px;top:50%;width:1px;height:1px;pointer-events:none}.offer-sparks span{position:absolute;width:4px;height:4px;border-radius:1px;background:var(--yellow);opacity:0;--spark-delay:.3s}.offer-sparks span:nth-child(1){--spark-x:18px;--spark-y:0}.offer-sparks span:nth-child(2){--spark-x:10px;--spark-y:-15px;--spark-delay:.34s}.offer-sparks span:nth-child(3){--spark-x:-9px;--spark-y:-15px;--spark-delay:.38s}.offer-sparks span:nth-child(4){--spark-x:-18px;--spark-y:0}.offer-sparks span:nth-child(5){--spark-x:-9px;--spark-y:15px;--spark-delay:.34s}.offer-sparks span:nth-child(6){--spark-x:10px;--spark-y:15px;--spark-delay:.38s}.booking-dialog[data-state=open] .offer-full .offer-sparks span{animation:motion-offer-spark .52s var(--spark-delay) ease-out both}@keyframes motion-offer-spark{0%{opacity:0;transform:translate(0,0) scale(.4)}28%{opacity:1}100%{opacity:0;transform:translate(var(--spark-x),var(--spark-y)) scale(1)}}

/* Checkout and agenda state motion. */
.booking-dialog[data-state=open]{animation:motion-dialog-desktop .22s cubic-bezier(.22,1,.36,1) both}.booking-dialog{scrollbar-width:thin}.form-progress{display:grid;gap:7px;margin-bottom:1px}.form-progress>div{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.form-progress span{position:relative;height:4px;border-radius:999px;background:#d9dee7;overflow:hidden}.form-progress span:after{content:"";position:absolute;inset:0;background:#1538a6;transform:scaleX(0);transform-origin:left;transition:transform .2s ease}.form-progress span.complete:after{transform:scaleX(1)}.form-progress small{font-size:12px;color:#596574}.checkout-submit.payment-ready{animation:motion-payment-ready .82s ease-out both}
@keyframes motion-dialog-desktop{from{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes motion-dialog-mobile{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes motion-payment-ready{0%,100%{box-shadow:0 0 0 0 #ffd21a00}38%{box-shadow:0 0 0 5px #ffd21a66}}
.locked-event-context{display:grid;gap:8px;padding:12px;border:1px solid #b9c8ec;background:#f1f5ff;border-radius:8px}.locked-event-context>div{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(130px,auto) auto;align-items:center;gap:9px}.locked-event-context>div>span,.locked-event-context>div>strong{display:grid;font-size:13px;line-height:1.35}.locked-event-context small{font-size:10px;color:#61708a;font-weight:400}.locked-event-context>div>strong{text-align:right}.locked-event-context>p{padding-top:8px;border-top:1px solid #cbd5ec;font-size:10px;color:#56627a;overflow-wrap:anywhere}.locked-event-context code{font-size:10px}
@keyframes motion-agenda-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes motion-agenda-stage{0%,100%{box-shadow:none}50%{border-color:var(--yellow);box-shadow:0 0 0 3px #ffd21a20}}

/* Flagships and truthful chapter-node motion. */
@keyframes motion-summit-spotlight{0%{opacity:0;offset-distance:0%}12%{opacity:1}88%{opacity:1}100%{opacity:0;offset-distance:55%}}@keyframes motion-summit-cta{0%,100%{box-shadow:none}55%{box-shadow:0 0 0 3px #ffd21a66}}@keyframes motion-retreat-zoom{from{transform:scale(1)}to{transform:scale(1.04)}}
@keyframes motion-network-line{from{stroke-dashoffset:1100}to{stroke-dashoffset:0}}@keyframes motion-network-node{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes motion-network-settle{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}

/* Membership gallery: 4.8s JS cadence with a 650ms crossfade/slide/scale scene change. */
@keyframes motion-gallery-in{from{opacity:.18;transform:translateX(var(--gallery-direction))}to{opacity:1;transform:translateX(0)}}@keyframes motion-gallery-out{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(var(--gallery-exit))}}@keyframes motion-gallery-scale{from{transform:scale(1.015)}to{transform:scale(1)}}@keyframes motion-gallery-hint{0%,100%{translate:0 0}52%{translate:-10px 0}}

/* Member portraits retain identity pairs, stable card geometry and an intentional 4:5 crop. */.member-photo{height:auto;aspect-ratio:4/5}.member-photo img{object-position:50% 18%}.member-card h3,.member-card p{min-height:1.4em}
@keyframes motion-member-in{from{opacity:0}to{opacity:1}}@keyframes motion-member-name{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

/* Correctly proportioned muted previews. */.film-copy{position:static;display:block;min-width:0}.film-copy small{font-size:10px;letter-spacing:.11em;color:#ffea83}.film-copy strong{display:block;font:650 21px/1.3 Manrope,Arial,sans-serif;letter-spacing:-.035em;margin:6px 0 3px}.film-copy em{display:block;font-size:12px;font-style:normal;color:#cbd5c7}@keyframes motion-play-ring{0%{opacity:.68;transform:scale(1)}100%{opacity:0;transform:scale(2.15)}}

/* Mobile booking bar re-enters after genuine suppression and stays above device chrome. */@keyframes motion-mobile-bar{from{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}

/* Global arbitration: background loops pause while checkout or an idle attention effect owns focus. */
[data-attention=active] .hero-visual,[data-attention=active] .city-marquee-track{animation-play-state:paused!important}
[data-motion=paused] .hero-visual,[data-motion=paused] .city-marquee-track,[data-hidden=true] *,[data-checkout-open=true] [data-motion-section] *{animation-play-state:paused!important}
[data-motion=paused] .reveal,[data-motion=paused] .offer-prices strong{animation:none!important;opacity:1!important;transform:none!important;translate:none!important}
[data-motion=paused] .hero-emphasis:after,[data-motion=paused] .offer-prices del:after{animation:none!important;transform:scaleX(1)!important}[data-motion=paused] .offer-sparks{display:none!important}
@media(max-width:700px){body{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.hero-visual{animation:none;will-change:auto}.event-book:active{transform:scale(.98)}.booking-dialog[data-state=open]{animation:motion-dialog-mobile .28s cubic-bezier(.22,1,.36,1) both}.film-copy strong{font-size:19px}.locked-event-context>div{grid-template-columns:auto minmax(0,1fr) auto}.locked-event-context>div>strong{grid-column:2;text-align:left}}
@keyframes motion-mobile-photo-pan{from{transform:scale(1.02) translateX(-1%)}to{transform:scale(1.02) translateX(1%)}}@keyframes motion-agenda-line-mobile{from{transform:scaleY(0)}to{transform:scaleY(1)}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.typing-line[data-cursor-active=true] .typing-value:after,.offer-sparks{display:none!important}.hero-emphasis:after,.offer-prices del:after{transform:scaleX(1)!important}.reveal{opacity:1!important;transform:none!important;translate:none!important}}

.paypal-verified-actions{flex-wrap:wrap}
.paypal-verified .button{max-width:100%;white-space:normal;overflow-wrap:anywhere;margin-top:12px}

.city-page{background:#fff;color:#101214;overflow:clip}.city-page em{font-family:Georgia,serif;font-weight:400}.city-location-bar{background:#101214;color:#fff;display:flex;justify-content:center;gap:24px;padding:8px 24px;font-size:12px;font-weight:650;letter-spacing:.08em}.city-location-bar span:last-child{display:flex;gap:7px;align-items:center;color:var(--yellow)}.city-page .header-wrap{position:relative;top:auto;animation:none}.city-page .site-header{border:0}.city-header-actions{display:flex;align-items:center;gap:12px}.city-switcher .picker-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.city-switcher .filter-select{min-width:125px;background:transparent;color:#fff;border:1px solid #ffffff60;border-radius:6px;height:44px}.city-switcher .filter-select svg{color:#fff}.city-mobile-menu{display:none}
.city-page .hero{padding-block:42px 46px;gap:50px;grid-template-columns:1.15fr .85fr}.city-page .hero h1{font-size:clamp(34px,3.8vw,55px);line-height:1.15;margin-top:16px}.city-page .hero h1 .city-hero-emphasis{background:none;padding:0;text-decoration:underline;text-decoration-color:#fff;text-decoration-thickness:5px;text-underline-offset:5px}.city-page .hero-lead{font-size:17px;max-width:550px;margin:22px 0;line-height:1.7}.city-page .hero-visual{height:330px;animation:none;transform:rotate(1.5deg)}.city-page .hero-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.city-hero-watch{display:flex;gap:8px;align-items:center;font-size:14px;font-weight:700}.city-hero-note{display:flex;gap:7px;align-items:center;margin-top:24px;font-size:14px;flex-wrap:wrap}.city-hero-note span{border-left:1px solid #10121450;padding-left:13px;margin-left:6px}.city-hero-play{background:var(--yellow);color:#101214;display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:50%}.city-page .hero-photo-footer{padding-bottom:30px}
.city-section-heading{display:flex;justify-content:space-between;gap:32px;align-items:flex-end;margin-bottom:30px}.city-section-heading h2{font-size:clamp(30px,3vw,42px);margin-top:12px}.city-section-heading>p,.city-section-heading>div>p:not(.eyebrow){max-width:360px;color:#48515b}.city-local-time{display:flex;align-items:center;gap:7px;font-size:14px;color:#48515b}.city-page .section{padding-block:62px}.city-month-list{border-top:2px solid #101214}.city-month{display:grid;grid-template-columns:164px minmax(0,1fr);gap:28px;padding:30px 0;border-bottom:1px solid #dce1e9}.city-month-label{padding-top:4px}.city-month-label>span:first-child{font-size:13px;font-weight:700;color:#747572;display:block;margin-bottom:12px}.city-month-label h3{font-size:24px;line-height:1.3}.city-month-label small{display:block;font:500 16px/1.8 'DM Sans',sans-serif;letter-spacing:0;color:#48515b}.city-month-count{font-size:13px;margin-top:12px;display:inline-block;background:#fff3b2;padding:3px 9px;border-radius:3px}.city-month-events{display:grid;gap:15px}.city-event-row{display:grid;grid-template-columns:74px minmax(0,1fr) 200px;gap:21px;border:1px solid #dce1e9;border-radius:8px;padding:24px;background:#fff;align-items:start;min-width:0}.city-event-date{background:#ffd21a;color:#101214;border-radius:5px;padding:12px 7px;text-align:center;display:flex;flex-direction:column;align-items:center}.city-event-date strong{font:750 33px/1.1 Manrope,Arial,sans-serif;letter-spacing:-.04em}.city-event-date>span{font-weight:750;font-size:13px;letter-spacing:.08em;text-transform:uppercase;margin:4px 0}.city-event-date small{font-size:12px;line-height:1.2}.city-event-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.city-event-type{font-size:12px;font-weight:700;letter-spacing:.045em}.city-event-status{font-size:12px;border:1px solid #10121422;padding:2px 7px;border-radius:4px;background:#fff9df}.city-pending{background:#fff;border-style:dashed;color:#615536}.city-event-info h3{font-size:23px;line-height:1.3;margin-bottom:12px}.city-event-info p{display:flex;align-items:flex-start;gap:8px;font-size:15px;line-height:1.65;margin-top:5px}.city-event-info p svg{flex-shrink:0;margin-top:4px;color:#726944}.city-event-info .city-event-full-date{font-weight:600;margin:0 0 7px;font-size:14px}.city-event-info .city-event-value{font-size:14px;color:#48515b;margin-top:10px}.city-event-info .city-event-notice{color:#72612e;font-size:14px;margin-top:10px}.city-event-action{align-self:center;display:flex;flex-direction:column;align-items:flex-start;gap:4px;border-left:1px solid #e5e5df;padding-left:22px}.city-event-action>strong{font:750 25px/1.35 Manrope,Arial,sans-serif;letter-spacing:-.03em}.city-event-action>small{font-size:12px;color:#48515b;line-height:1.5}.city-event-action>del{font-size:14px;color:#626768}.city-event-action>.button{font-size:14px;width:100%;margin-top:12px;padding-inline:13px;gap:10px;min-height:46px}.city-calendar-note{color:#626768;font-size:13px;margin-top:18px}.city-empty-month{padding:24px;border:1px dashed #b6b2a3;border-radius:7px;display:grid;gap:12px}.city-empty{padding:30px;border:1px solid #dce1e9;border-radius:8px;display:grid;gap:18px;justify-items:start}.city-past{margin-top:20px;border-top:1px solid #dce1e9;padding-top:20px}.city-past summary{cursor:pointer;font-weight:650}.city-past p{padding-top:10px;font-size:14px}
.city-film-section{background:#101214;color:#fff;padding:64px 0}.city-film-layout{display:grid;grid-template-columns:1fr 330px;gap:100px;align-items:center;max-width:1120px}.city-film-copy h2{font-size:clamp(36px,4.1vw,56px);line-height:1.2;margin:16px 0 24px;max-width:650px}.city-film-copy em{color:var(--yellow)}.city-film-copy>p:not(.eyebrow){color:#ddd;max-width:540px;font-size:17px;line-height:1.8}.city-film-copy .eyebrow{color:var(--yellow)}.city-film-points{display:grid;gap:14px;margin:28px 0}.city-film-points p{display:flex;align-items:center;gap:12px;font-size:15px}.city-film-points svg{color:var(--yellow)}.city-film-wrap{width:100%;max-width:310px;justify-self:end}.city-video{aspect-ratio:9/16;background:#1e2021;border:1px solid #fff5;border-radius:8px;overflow:hidden;position:relative}.city-video iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.city-video-poster{position:absolute;inset:0;width:100%;height:100%;background:#101214;border:0;padding:0;color:#fff}.city-video-poster img{height:100%;width:100%;object-fit:cover}.city-video-poster:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 50%,#000b)}.city-video-play{background:var(--yellow);color:#101214;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:74px;height:74px;border-radius:50%;z-index:1;box-shadow:0 0 0 10px #ffd21a30}.city-video-caption{position:absolute;bottom:24px;left:18px;right:18px;z-index:1;font-weight:700}.city-youtube-link{display:flex;justify-content:center;gap:8px;align-items:center;margin-top:14px;font-size:14px;color:#eee}
.city-gallery-section{padding:62px 0;background:#fff}.city-gallery-section .city-section-heading{margin-bottom:24px}.city-marquee{margin-top:12px;min-width:0}.city-marquee-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.city-marquee-controls>span{font-size:12px;font-weight:650;letter-spacing:.025em;color:#626768}.city-marquee-controls>div{display:flex;gap:5px}.city-motion-control{display:inline-flex;gap:6px;align-items:center;justify-content:center;border:1px solid #dce1e9;border-radius:4px;background:#fff;min-width:38px;min-height:36px;padding:6px 9px;font-size:12px;color:#101214}.city-marquee-window{overflow:hidden;touch-action:pan-x pan-y;overscroll-behavior-x:contain}.city-marquee-track{display:flex;width:max-content;animation:city-scroll-left var(--marquee-time) linear infinite;will-change:transform}.city-marquee[data-direction=right] .city-marquee-track{animation-name:city-scroll-right}.city-marquee-group{display:flex;flex:none;min-width:0}.city-gallery-photo{width:clamp(240px,25vw,350px);height:220px;margin:0;flex:none;overflow:hidden}.city-gallery-photo img{width:100%;height:100%;object-fit:cover}.city-marquee[data-manual=true] .city-marquee-window{overflow-x:auto}.city-marquee[data-manual=true] .city-marquee-track{animation:none;transform:none}.city-marquee[data-manual=true] .city-marquee-clone{display:none}
.city-membership-band{background:var(--yellow);padding:48px 0}.city-membership-band>.shell{display:flex;align-items:center;justify-content:space-between;gap:36px}.city-membership-band h2{font-size:clamp(29px,3vw,39px);margin:13px 0 16px}.city-membership-band p:not(.eyebrow){font-size:16px}.city-membership-band .button{flex-shrink:0}.city-page .city-finder{display:grid;grid-template-columns:1fr 1fr 1fr;padding:17px 20px;gap:20px;margin-bottom:24px}.city-finder .picker{border:0;padding:0;min-width:0}.city-finder .filter-select{width:100%}.city-results-heading{display:flex;justify-content:space-between;gap:15px;font-size:14px;margin:26px 0 18px}.city-results-heading span:last-child{color:#626768}.city-other-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.city-event-compact{grid-template-columns:64px minmax(0,1fr);gap:18px;padding:22px}.city-event-compact .city-event-info h3{font-size:21px}.city-event-compact .city-event-action{grid-column:1/-1;border-left:0;border-top:1px solid #e5e5df;padding:16px 0 0;display:grid;grid-template-columns:1fr auto;width:100%;align-items:center}.city-event-compact .city-event-action>strong{font-size:22px;grid-column:1}.city-event-compact .city-event-action>small{grid-column:1;grid-row:2}.city-event-compact .city-event-action>.button{grid-column:2;grid-row:1/3;margin-top:0;width:auto;align-self:center}.city-show-more{margin-top:24px}.city-directory-links{border-top:1px solid #dce1e9;margin-top:32px;padding-top:23px;display:flex;flex-wrap:wrap;gap:10px 20px}.city-directory-links a{font-size:14px;display:flex;gap:5px;align-items:center}.city-directory-links a:hover{text-decoration:underline}
.city-members-section{padding:50px 0 30px;background:#fff9e8;border-top:1px solid #dccfa9}.city-member-card{width:350px;flex:none;margin:0 14px 0 0;padding:10px;display:grid;grid-template-columns:112px minmax(0,1fr);gap:14px;border:1px solid #19161024;border-radius:5px;background:#ffffff99;align-items:center;min-height:144px}.city-member-photo{width:112px;height:112px;overflow:hidden;border:1px solid #c28f1b94;background:#101214}.city-member-photo img{width:100%;height:100%;object-fit:cover}.city-member-copy{display:grid;gap:5px;min-width:0}.city-member-copy>span{font-size:12px;color:#8a631f;font-weight:700}.city-member-copy strong{font-size:16px;line-height:1.35;font-weight:750;overflow-wrap:anywhere}.city-member-copy small{font-size:12px;line-height:1.4;color:#48515b;overflow-wrap:anywhere}.city-members-note{font-size:12px;color:#626768;margin-top:22px}.city-members-section .city-section-heading>div:last-child{max-width:360px}.city-members-section .text-link{margin-top:10px}.city-footer{background:#101214;color:#fff;padding:42px 0 20px}.city-footer-main{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:48px}.city-footer-main>div{display:flex;flex-direction:column;gap:9px;font-size:14px}.city-footer-main strong{color:var(--yellow);margin-bottom:7px}.city-footer-main img{margin-bottom:6px;width:132px}.city-footer-main p{font-size:15px}.city-footer-main a{color:#ddd;overflow-wrap:anywhere}.city-footer-bottom{margin-top:30px;border-top:1px solid #fff3;padding-top:20px;display:flex;gap:25px;font-size:12px;color:#ddd}.city-footer-bottom span{margin-right:auto}.city-menu-panel{background:#101214;color:#fff}.city-menu-panel>a{display:block;margin:16px 25px;padding:12px 0}.city-menu-panel [data-slot=sheet-title]{color:#fff}
@keyframes city-scroll-left{from{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes city-scroll-right{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@media(max-width:1100px){.city-page .site-header nav{gap:18px}.city-membership-nav{display:none}.city-month{grid-template-columns:130px minmax(0,1fr);gap:20px}.city-event-row{grid-template-columns:64px minmax(0,1fr);padding:20px;gap:18px}.city-event-action{grid-column:2;border-left:0;border-top:1px solid #e5e5df;padding:15px 0 0;display:grid;grid-template-columns:1fr auto;gap:4px 20px;align-items:center;width:100%}.city-event-action>strong{grid-column:1}.city-event-action>small{grid-column:1;grid-row:2}.city-event-action>.button{grid-column:2;grid-row:1/3;margin:0}.city-film-layout{gap:48px;grid-template-columns:1fr 285px}.city-film-wrap{max-width:270px}.city-page .hero{gap:35px}.city-page .hero-visual{height:310px}.city-event-compact .city-event-action{grid-column:1/-1}.city-event-compact .city-event-action>.button{grid-column:1/-1;grid-row:auto;margin-top:8px}.city-event-compact .city-event-action>small{grid-column:1/-1;grid-row:auto}.city-event-compact .city-event-action>strong{grid-column:1/-1}}
@media(max-width:760px){.city-page .shell{width:calc(100% - 36px)}.city-page .site-header{height:76px;gap:10px}.city-page .site-header nav{display:none}.city-page .brand img{width:104px}.city-location-bar{font-size:12px;gap:13px;padding-inline:12px;letter-spacing:0}.city-switcher .filter-select{min-width:110px;width:115px;font-size:14px;min-height:42px}.city-header-actions{gap:7px}.city-mobile-menu{display:grid;place-items:center;width:40px;height:42px;background:transparent;border:1px solid #fff6;color:#fff;border-radius:5px}.city-page .hero{grid-template-columns:1fr;gap:32px;padding:32px 0 34px}.city-page .hero h1{font-size:clamp(32px,8.5vw,44px);margin-top:14px;line-height:1.2}.city-page .hero-lead{font-size:16px;line-height:1.65;margin:20px 0}.city-page .hero-actions{gap:17px}.city-page .hero-actions .button{width:100%;font-size:15px;min-height:50px}.city-hero-watch{font-size:14px}.city-hero-note{margin-top:19px;font-size:12px}.city-hero-note span{padding-left:8px;margin-left:1px}.city-page .hero-visual{width:calc(100% - 10px);max-width:500px;height:245px;box-shadow:7px 7px 0 #101214;margin:0;justify-self:center;border-width:4px;transform:rotate(1deg)}.city-page .photo-label{font-size:12px;left:10px;top:10px}.city-page .hero-photo-footer{padding:25px 14px}.city-page .hero-photo-footer>span{font-size:12px}.city-page .hero-photo-footer b{font-size:15px}.city-page .hero-source{left:14px;font-size:12px}.city-page .section{padding-block:40px}.city-section-heading{display:block;margin-bottom:24px}.city-section-heading h2{font-size:30px;margin-top:10px}.city-section-heading>p,.city-section-heading>div:last-child:not(:first-child){margin-top:16px}.city-local-time{margin-top:15px;font-size:12px}.city-month{grid-template-columns:1fr;gap:15px;padding:22px 0}.city-month-label{display:flex;align-items:center;gap:11px}.city-month-label>span:first-child{margin:0;color:#8a7b51}.city-month-label h3{font-size:24px}.city-month-label small{display:inline;margin-left:9px;font-size:15px}.city-month-count{margin:0 0 0 auto;white-space:nowrap;font-size:12px}.city-event-row{padding:17px;gap:14px;grid-template-columns:54px minmax(0,1fr)}.city-event-date{padding:10px 4px}.city-event-date strong{font-size:29px}.city-event-date span{font-size:12px}.city-event-date small{font-size:12px}.city-event-top{gap:6px;margin-bottom:9px}.city-event-type{font-size:12px;letter-spacing:0}.city-event-status{font-size:12px}.city-event-info h3{font-size:21px;margin-bottom:10px}.city-event-info p{font-size:14px;gap:7px;line-height:1.55}.city-event-info .city-event-full-date{font-size:13px}.city-event-info .city-event-value,.city-event-info .city-event-notice{font-size:13px}.city-event-action{grid-column:1/-1;grid-template-columns:1fr auto;padding-top:15px;gap:4px 12px}.city-event-action>strong{font-size:23px}.city-event-action>small{font-size:12px;max-width:125px}.city-event-action>.button{font-size:13px;min-height:46px;gap:8px;padding-inline:12px;min-width:135px}.city-calendar-note{font-size:12px;line-height:1.6}.city-film-section{padding:42px 0}.city-film-layout{grid-template-columns:1fr;gap:28px}.city-film-copy h2{font-size:38px;margin:14px 0 20px}.city-film-copy>p:not(.eyebrow){font-size:16px}.city-film-points{margin:22px 0;gap:12px}.city-film-points p{font-size:14px}.city-film-copy>.button{font-size:14px;width:100%}.city-film-wrap{justify-self:center;width:min(100%,285px);max-width:285px}.city-gallery-section{padding:40px 0}.city-gallery-photo{width:260px;height:178px}.city-marquee-controls>span{font-size:12px;max-width:160px;line-height:1.4}.city-motion-control{min-width:36px;min-height:36px;padding:6px}.city-motion-control span{display:none}.city-marquee-controls>div{gap:5px}.city-membership-band{padding:35px 0}.city-membership-band>.shell{display:block}.city-membership-band h2{font-size:29px}.city-membership-band .button{margin-top:22px;font-size:15px}.city-membership-band p:not(.eyebrow){font-size:15px}.city-page .city-finder{grid-template-columns:1fr;padding:16px;gap:16px;box-shadow:4px 4px 0 #ffd21a}.city-finder .picker-label{font-size:12px}.city-finder .filter-select{font-size:16px;height:43px}.city-results-heading{font-size:12px}.city-other-grid{grid-template-columns:1fr;gap:16px}.city-event-compact{grid-template-columns:54px minmax(0,1fr)}.city-event-compact .city-event-action{grid-template-columns:1fr auto}.city-event-compact .city-event-action>strong{grid-column:1;font-size:22px}.city-event-compact .city-event-action>small{grid-column:1;grid-row:2}.city-event-compact .city-event-action>.button{grid-column:2;grid-row:1/3;margin:0}.city-directory-links{gap:9px 14px}.city-directory-links a{font-size:13px}.city-members-section{padding:38px 0 25px}.city-member-card{width:310px;grid-template-columns:94px minmax(0,1fr);gap:12px;min-height:132px;margin-right:12px}.city-member-photo{width:94px;height:104px}.city-member-copy strong{font-size:15px}.city-member-copy>span,.city-member-copy small{font-size:12px}.city-members-note{font-size:12px}.city-footer{padding:35px 0 20px}.city-footer-main{grid-template-columns:1fr 1fr;gap:30px}.city-footer-main>div:first-child{grid-column:1/-1}.city-footer-main a{font-size:13px}.city-footer-bottom{flex-wrap:wrap;gap:12px 20px;font-size:12px}.city-footer-bottom span{flex-basis:100%}.city-page .eyebrow{font-size:12px}.city-members-section .city-section-heading>div:last-child{margin-top:14px}.city-show-more{width:100%}}
@media(prefers-reduced-motion:reduce){.city-page *{scroll-behavior:auto!important;animation:none!important;transition:none!important}.city-marquee-window{overflow-x:auto}.city-marquee-clone{display:none}.city-marquee-track{transform:none!important}}

@media(max-width:380px){.city-month-label{flex-wrap:wrap}.city-month-count{margin-left:0}.city-event-action,.city-event-compact .city-event-action{display:flex;flex-direction:column;align-items:stretch}.city-event-action>small{max-width:none}.city-event-action>.button,.city-event-compact .city-event-action>.button{width:100%;margin-top:10px}.city-hero-note{flex-wrap:wrap}.city-hero-note span{border:0;margin:0;padding:0;flex-basis:100%}}

/* Sydney conversion update: retain Calendar's yellow, black and white system. */
body{padding-bottom:0}
.city-footprint{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin:30px 0 0;color:var(--ink)}
.city-footprint>div{display:flex;align-items:center;gap:18px}
.city-footprint strong{font-family:Manrope,Arial,sans-serif;font-size:clamp(40px,4vw,52px);font-weight:800;line-height:1;letter-spacing:-.05em;min-width:2ch;font-variant-numeric:tabular-nums}
.city-footprint span{font-size:14px;font-weight:700;letter-spacing:.025em}
.city-footprint strong span{font:inherit;letter-spacing:inherit}
.city-footprint p{border-left:1px solid #17191840;padding-left:20px;font-size:16px;line-height:1.6}
.city-event-action .city-event-details{font-size:13px;text-align:center;text-decoration:underline;text-underline-offset:4px;margin-top:7px}
.city-founder-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 24px;margin:32px 0}
.city-founder-benefits article{display:flex;align-items:flex-start;gap:12px}
.city-founder-benefits article>span{font-size:12px;line-height:1.7;color:var(--yellow);font-weight:700;border-top:2px solid var(--yellow);padding-top:5px}
.city-founder-benefits h3{font-size:17px;line-height:1.4;letter-spacing:-.02em}
.city-founder-benefits p{font-size:14px;line-height:1.7;color:#d2d4d6;margin-top:8px}
.city-film-wrap{align-self:start}
.city-detail{max-width:1100px;min-height:65vh;padding-block:40px 64px;display:grid;gap:23px}
.city-detail h1{font-size:clamp(32px,5vw,52px);max-width:850px}
.city-detail-intro{max-width:720px;font-size:19px;line-height:1.7}
.city-detail-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;border:1px solid #d9dee7;background:#fff;border-radius:8px;padding:30px}
.city-detail-card h2{font-size:24px;margin-bottom:16px}
.city-detail-card p{margin-top:8px}
.city-detail-ticket{min-width:230px;align-self:center}
.city-detail-ticket>strong,.city-book-price{font-size:32px;display:block}
.city-detail-ticket .button{margin-top:18px}
.city-detail-inclusions{max-width:740px}
.city-detail-inclusions h2{font-size:26px}
.city-detail-policies{display:flex;gap:16px 24px;flex-wrap:wrap;font-size:14px}
.city-detail a:not(.button){text-decoration:underline;text-underline-offset:4px}
.city-detail>.button{justify-self:start}
.booking-dialog{overscroll-behavior:contain;scroll-padding:24px;scrollbar-gutter:stable;max-height:calc(100dvh - 32px)}
.booking-dialog [data-slot=dialog-header]{text-align:left}
.booking-dialog [data-slot=dialog-close],.booking-status-dialog [data-slot=dialog-close]{min-width:44px;min-height:44px;display:grid;place-items:center;top:4px;right:4px;background:#fff;border-radius:6px;opacity:1}
.booking-dialog .booking-total{position:static}
.booking-dialog .booking-summary{flex-wrap:wrap;overflow-wrap:anywhere}
.booking-dialog .booking-summary>span{max-width:100%;align-items:center}
.booking-dialog .locked-event-context strong,.booking-dialog .payment-next small{overflow-wrap:anywhere}
.booking-dialog .payment-next .form-error{display:grid;gap:16px}
.booking-dialog .paypal-controls{min-height:70px;max-width:100%}
.paypal-verified{display:grid;gap:16px;min-width:0}.paypal-verified-buttons{min-height:48px;max-width:100%}.paypal-verified-buttons[hidden]{display:none}.paypal-verified-actions{display:flex;gap:12px;flex-wrap:wrap}.paypal-verified .button{min-height:48px;white-space:normal;overflow-wrap:anywhere}.paypal-download{width:100%}
.booking-dialog .payment-next{overflow-wrap:anywhere}
.booking-dialog .button{white-space:normal}
.booking-status-dialog{max-width:500px!important;width:calc(100% - 32px)!important;padding:32px 24px!important}
.booking-status-dialog [data-slot=dialog-header]{padding-right:20px}
.booking-status-actions{display:flex;flex-wrap:wrap;gap:12px}
html[data-checkout-open=true] .city-marquee-track{animation-play-state:paused!important}
.city-page a:focus-visible,.city-page button:focus-visible,.city-detail a:focus-visible{outline:3px solid #1538a6;outline-offset:4px}
@media(max-width:760px){
 .city-footprint{padding:0;gap:18px 24px;margin-top:24px}.city-footprint>div{gap:10px}.city-footprint strong{font-size:45px}.city-footprint span{font-size:13px}.city-footprint p{display:block;flex-basis:100%;border:0;padding:0;font-size:16px}
 .city-founder-benefits{grid-template-columns:1fr;gap:22px}.city-founder-benefits h3{font-size:18px}.city-founder-benefits p{font-size:16px}
 .city-motion-control,.city-mobile-menu{min-width:44px;min-height:44px}.city-switcher .filter-select{min-height:44px}
 .city-event-action .city-event-details{grid-column:1/-1;text-align:left;padding:7px 0;margin-top:0;min-height:44px;display:flex;align-items:center}
 .city-detail{width:calc(100% - 36px);padding-block:28px 40px;gap:20px}.city-detail-card{grid-template-columns:1fr;padding:20px;gap:20px}.city-detail-ticket{min-width:0;border-top:1px solid #d9dee7;padding-top:16px}.city-detail-ticket .button{width:100%}.city-detail-policies a{min-height:44px;display:flex;align-items:center}
 .booking-dialog{top:var(--booking-top,0px)!important;left:0!important;transform:none!important;translate:none!important;width:100%!important;max-width:100%!important;height:var(--booking-vh,100dvh);max-height:var(--booking-vh,100dvh)!important;border-radius:0!important;padding:54px 18px max(28px,env(safe-area-inset-bottom))!important;padding-top:max(54px,calc(env(safe-area-inset-top) + 40px))!important;animation:none!important;align-content:start}
 .booking-dialog [data-slot=dialog-close]{top:max(4px,env(safe-area-inset-top));right:max(4px,env(safe-area-inset-right))}
 .booking-dialog [data-slot=dialog-title]{font-size:28px}.booking-dialog .booking-summary{gap:12px;display:grid;grid-template-columns:1fr;font-size:14px}
 .booking-dialog .booking-form-grid{grid-template-columns:1fr;gap:24px}.booking-dialog .booking-total{position:static;padding:18px}.booking-dialog .booking-total h3,.booking-dialog .booking-total>ul{display:block}.booking-dialog .booking-total li{font-size:14px;display:flex;margin-top:8px}
 .booking-dialog input{font-size:16px!important;scroll-margin-block:30px}.booking-dialog .consent-row label{font-size:14px!important}.booking-dialog .consent-row>button{margin:0;min-width:24px;min-height:24px}.booking-dialog .checkout-submit{min-height:52px}
 .booking-dialog .locked-event-context>div{grid-template-columns:auto minmax(0,1fr) auto}.booking-dialog .locked-event-context>div>strong{grid-column:2;text-align:left}
}
@media(prefers-reduced-motion:reduce){.booking-dialog *, .city-detail *{animation:none!important;transition:none!important}}

/* Event-linked flyers retain the supplied artwork and the existing card system. */
.city-event-group{min-width:0}
.city-event-media{min-width:0;margin-top:14px;padding:24px;border:1px solid #dce1e9;border-radius:8px;background:#fff}
.city-event-media-heading{display:flex;justify-content:space-between;align-items:end;flex-wrap:wrap;gap:16px;margin-bottom:20px}
.city-event-media-heading h4{font-size:20px;line-height:1.4;margin:8px 0}
.city-event-media-heading p:not(.eyebrow){font-size:14px;line-height:1.6;color:#48515b}
.city-host-profile-slot{min-height:190px}
.city-event-host{padding:20px 0;margin-bottom:20px;border-top:1px solid #e5e5df;border-bottom:1px solid #e5e5df}
.city-event-host h4{font-size:24px;line-height:1.3;margin:8px 0}
.city-event-host p{font-size:16px;line-height:1.65;margin-top:4px}
.city-flyer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.city-flyer-card{display:flex;flex-direction:column;min-width:0;border:1px solid #dce1e9;border-radius:8px;overflow:hidden;color:#101214;text-decoration:none!important;background:#fff}
.city-flyer-card img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#000}
.city-flyer-caption{display:grid;gap:8px;padding:16px;font-size:16px;line-height:1.45}
.city-flyer-caption>span:not(.sr-only){display:flex;align-items:center;gap:8px;font-size:14px;font-weight:650}
.city-flyer-card[href] .city-flyer-caption>span:not(.sr-only){color:#101214;background:var(--yellow);padding:10px 12px;border-radius:4px;min-height:44px;justify-content:space-between}
.city-flyer-card[href]:hover{border-color:#8c7312}
.city-flyer-venue{display:flex;align-items:start;gap:9px;margin-top:20px;font-size:14px;line-height:1.7}
.city-flyer-venue svg{flex-shrink:0;margin-top:3px}
.city-flyer-venue a{text-decoration:underline;text-underline-offset:3px}
.city-flyer-venue small{display:block;font-size:13px;color:#615536;margin-top:4px}
@media(max-width:760px){.city-event-media{padding:16px}.city-flyer-grid{grid-template-columns:minmax(0,1fr);gap:20px}.city-event-media-heading h4{font-size:19px}.city-flyer-caption{padding:14px}.city-event-host h4{font-size:23px}.city-flyer-venue{font-size:14px}}

/* Viewport placement deliberately has no Tailwind translate utilities. The CSS
   compiler can rewrite translate:none into transform, leaving those utilities active. */
.booking-dialog,.booking-status-dialog{inset:16px;margin:auto;min-width:0;height:fit-content;max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain;transform:none!important;animation:none!important;align-content:start}
.booking-dialog{max-width:min(900px,calc(100vw - 32px))!important}
.booking-status-dialog{max-width:min(500px,calc(100vw - 32px))!important}
.booking-status-dialog [data-slot=dialog-title]{font-size:clamp(24px,4vw,32px);line-height:1.25;overflow-wrap:anywhere}
.booking-dialog form.booking-form-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
.booking-fields,.booking-total,.booking-dialog form,.payment-next,.paypal-verified-buttons{min-width:0;max-width:100%}
.booking-dialog .booking-fields input{max-width:100%}
.city-page .site-header .brand{display:flex;align-items:center;flex:0 0 auto}
.city-page .site-header .brand img{width:64px;height:64px;object-fit:contain;margin:0;border:0;box-shadow:none}
@media(max-width:760px){
 .booking-dialog{inset:var(--booking-top,0px) 0 auto;margin:0;height:var(--booking-vh,100dvh);max-width:100%!important}
 .booking-dialog form.booking-form-grid{grid-template-columns:minmax(0,1fr);gap:24px}
 .booking-dialog .locked-event-context>div{min-width:0}
 .booking-dialog .locked-event-context>div>strong{min-width:0}
 .booking-status-dialog{inset:12px;max-height:calc(100dvh - 24px);padding:48px 20px 24px!important}
 .booking-status-actions .button{width:100%;min-height:48px}
 .city-page .site-header .brand img{width:52px;height:52px}
}

/* Mobile event access, local price context and stable font loading. */
.city-next-event,.city-booking-bar{display:none}
.city-page .hero-copy{animation:none}
.city-page .hero h1{overflow-wrap:normal}
.city-month-label>span:first-child{color:#545650}
.local-price{display:block!important;max-width:100%;color:#48515b;font-size:13px;line-height:1.5}
.local-price-estimate{min-height:1.5em;margin:0!important;font-size:13px!important}
.local-price-note{font-size:12px;line-height:1.6;margin-top:3px}
.local-price-note summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px;min-height:32px;display:list-item;padding-block:6px}
.local-price-note p{margin-top:8px!important;font-size:12px!important}
.local-price-note a{text-decoration:underline}
.city-event-action>.local-price{grid-column:1/-1;grid-row:auto}
.city-detail-ticket .local-price{max-width:290px}
.booking-summary .booking-summary-price{font-weight:650;color:#101214}
.booking-total>.local-price{margin-top:8px!important}
.city-menu-panel>[data-slot=sheet-close]{min-width:44px;min-height:44px;display:grid;place-items:center}
.city-page :focus-visible,.city-detail :focus-visible,.local-price-note summary:focus-visible{outline:3px solid #1538a6;outline-offset:4px}
.city-page .city-switcher .filter-select{color:#fff}
@media(max-width:760px){
 body:has(.city-next-event){padding-bottom:calc(var(--gsc-booking-bar-height,104px) + env(safe-area-inset-bottom))}
 html{scroll-padding-bottom:calc(var(--gsc-booking-bar-height,104px) + 20px)}
 .city-next-event{display:flex;flex-direction:column;gap:10px;margin-block:16px 22px;padding:20px;border:1px solid #d8d8d0;border-top:4px solid var(--yellow);border-radius:8px;background:#fff;min-block-size:404px;box-shadow:0 4px 18px #10121408}
 .city-next-event>.eyebrow{color:#554511;font-size:11px!important;letter-spacing:.09em}
 .city-next-event h2{font-size:26px;line-height:1.2;letter-spacing:-.025em;margin:0;min-block-size:1.2em}
 .next-event-meta{display:grid;gap:7px;font-size:14px;line-height:1.5}
 .next-event-meta p{display:flex;align-items:flex-start;gap:9px}
 .next-event-meta svg{flex:none;margin-top:2px}
 .next-event-price{font-size:13px;line-height:1.5}
 .next-event-price strong{font-family:Manrope,Arial,sans-serif;font-size:25px;font-weight:750}
 .city-next-event>.local-price{margin-top:-8px}
 .city-next-event>.button{width:100%;min-height:50px;margin-top:auto}
 .next-event-note{font-size:12px;color:#48515b;line-height:1.5;min-block-size:3em}
 .city-page .hero{padding-top:28px}
 .city-page .hero h1{font-size:clamp(30px,8.2vw,42px);line-height:1.18}
 .city-page .hero-lead{font-size:16px;line-height:1.7}
 .city-booking-bar[data-visible=true]{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;position:fixed;z-index:40;inset:auto 0 0;background:#fff;border-top:1px solid #d8d8d0;box-shadow:0 -4px 20px #10121412;padding:12px 18px calc(12px + env(safe-area-inset-bottom))}
 .city-booking-bar p{display:grid;gap:2px;font-size:12px;line-height:1.5;color:#48515b}
 .city-booking-bar strong{font-size:14px;color:#101214}
 .city-booking-bar .button{min-height:48px;padding:10px 14px;font-size:14px;gap:7px;white-space:normal}
 body:has([role=dialog]) .city-booking-bar,body:has(input:focus) .city-booking-bar,body:has(textarea:focus) .city-booking-bar,body:has(select:focus) .city-booking-bar{display:none!important}
 .booking-dialog .locked-event-context{display:none}
 .booking-dialog .booking-summary{gap:6px;font-size:14px}
 .booking-dialog .booking-summary>span{font-size:14px;line-height:1.5}
 .booking-dialog .booking-total h3,.booking-dialog .booking-total>p:not(.eyebrow):not(.secure-note):not(.checkout-help){display:none}
 .booking-dialog .booking-total>ul{margin:12px 0;display:grid}
 .booking-dialog .booking-total .final-total{margin-top:12px;padding-top:12px}
 .booking-dialog .booking-total>.local-price{display:block}
 .city-next-event .button:focus-visible,.city-booking-bar .button:focus-visible{outline:3px solid #1538a6;outline-offset:3px}
 .city-page a,.city-page button{scroll-margin-block:20px calc(var(--gsc-booking-bar-height,104px) + 20px)}
}
@media(max-width:350px){.city-next-event{padding:16px;min-block-size:420px}.city-next-event h2{font-size:24px}.city-booking-bar{gap:8px!important;padding-inline:12px!important}.city-booking-bar .button{font-size:13px;padding-inline:10px;max-width:174px}.city-booking-bar .button svg{display:none}}

.sr-only{width:1px!important;height:1px!important}
.booking-loading-note{position:fixed;z-index:60;inset:20% 18px auto;background:#fff;border:1px solid #dce1e9;border-radius:8px;padding:24px;box-shadow:0 10px 80px #0004}

.booking-dialog .field-hint,.booking-dialog .checkout-help,.booking-dialog .secure-note{color:#48515b}
@media(max-width:760px){.booking-dialog>.event-offer:not(.offer-confirmed){display:none}.booking-dialog .field-hint{float:none;display:block}.booking-dialog .consent-row>button{min-width:24px;min-height:24px}}

/* Allow enlarged text to wrap without displacing the navigation control. */
.city-page .hero h1{overflow-wrap:anywhere}
@media(max-width:760px){.city-page .site-header{height:auto;min-height:76px;padding-block:8px}.city-header-actions{flex:1;min-width:0;justify-content:flex-end}.city-switcher{min-width:0;max-width:calc(100% - 52px)}.city-switcher .picker{padding-inline:0}.city-switcher .filter-select{min-width:0!important;max-width:100%}.city-switcher .filter-select span{min-width:0;overflow-wrap:anywhere}.city-mobile-menu{flex:none}}

.skip-link{top:0;transform:translateY(-200%)}.skip-link:focus{top:10px;transform:none}

.community-slideshow{position:relative;width:100%;height:100%;min-height:0;overflow:hidden;background:#171a16;isolation:isolate;aspect-ratio:5/4}.community-slideshow>img{display:block;width:100%;height:100%;aspect-ratio:inherit;object-fit:cover;animation:none!important;transform:none!important}.community-slideshow-controls{position:absolute;z-index:5;right:10px;bottom:10px;display:flex;align-items:center;gap:4px;background:#101214e8;color:white;border-radius:6px;padding:3px}.community-slideshow-controls button{color:white;background:transparent;border:0;min-width:36px;min-height:36px;padding:5px 9px;font:600 14px/1.2 Arial,sans-serif;cursor:pointer}.community-slideshow-controls span{font:12px Arial,sans-serif}.community-slideshow-controls button:hover,.community-slideshow-controls button:focus-visible{background:#f5d526;color:#101214;border-radius:4px;outline:2px solid white;outline-offset:1px}.hero-visual>.community-slideshow{position:absolute;inset:0;aspect-ratio:auto}.hero-visual>.community-slideshow .community-slideshow-controls{bottom:100px}.ic-hero-photo>.community-slideshow{height:auto;aspect-ratio:5/4}.ic-hero-photo>.community-slideshow>img{height:100%;aspect-ratio:5/4}.club-short{width:100%;max-width:400px;margin-inline:auto}.club-short-frame{position:relative;width:100%;aspect-ratio:9/16;background:#101214;overflow:hidden;border-radius:8px}.club-short-frame>iframe,.club-short-cover{display:block!important;position:absolute!important;inset:0;width:100%!important;height:100%!important;max-height:none!important;min-height:0!important;aspect-ratio:9/16!important;border:0;object-fit:contain}.club-short-cover{background:#101214;color:#f5d526;display:flex!important;flex-direction:column;justify-content:center;align-items:center;gap:26px;text-align:center;padding:24px;cursor:pointer}.club-short-cover strong{font:800 clamp(24px,5vw,38px)/1.05 Arial,sans-serif;letter-spacing:-.03em}.club-short-cover>span{width:64px;height:64px;display:grid;place-items:center;border:2px solid #f5d526;border-radius:50%;font-size:27px}.club-short-cover b{font:600 16px/1.4 Arial,sans-serif;color:white}.club-short-link{display:block;text-align:center;padding:12px 5px;font-size:14px;text-decoration:underline;text-underline-offset:3px}.film-club .film-media{aspect-ratio:auto;max-height:none;overflow:visible;background:transparent}.video-dialog:has(.club-short){max-height:94dvh;overflow:auto}.video-dialog .club-short{max-width:min(400px,calc((100dvh - 190px)*9/16))}.city-film-wrap:has(.club-short){min-width:0}.club-short-cover:focus-visible{outline:3px solid #f5d526;outline-offset:-5px}@media(max-width:240px),(max-height:546px){.video-dialog .club-short-frame{display:none}.video-dialog .club-short{max-width:none}}@media(prefers-reduced-motion:reduce){.community-slideshow *{animation:none!important;transition:none!important}}

.community-slideshow>img.community-previous{position:absolute;inset:0;z-index:-1}.community-slideshow>img.community-current{animation:community-fade .18s ease-out both!important}@keyframes community-fade{from{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.community-slideshow>img.community-current{animation:none!important}}
