@font-face{font-family:Inter;src:url('/assets/inter-regular.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Inter;src:url('/assets/inter-bold.woff2') format('woff2');font-weight:700;font-display:swap}@font-face{font-family:Barlow;src:url('/assets/barlow-condensed-bold.woff2') format('woff2');font-weight:700;font-display:swap}
:root{--bg:#000;--surface:#171717;--paper:#e8e9e1;--text:#f4f4ee;--muted:#b7bcb1;--gold:#b7a144;--gold-hover:#c4af52;--line:rgba(244,244,238,.18);--ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1);--radius:0;color-scheme:dark;font-family:Inter,Arial,sans-serif;font-synthesis:none;font-size:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font-size:1rem;line-height:1.65;-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button,a{touch-action:manipulation}button{color:inherit}a{color:inherit;text-decoration:none}img,video{display:block;max-width:100%}figure,p,h1,h2,h3,dl{margin:0}button{border:0;background:none}h1,h2,h3{font-family:Barlow,Impact,sans-serif;font-weight:700;line-height:.98;letter-spacing:-.025em}h1{font-size:clamp(4rem,8.3vw,8.5rem)}h2{font-size:clamp(2.8rem,5.3vw,5.5rem)}h3{font-size:2.3rem}p{max-width:62ch}p+p{margin-top:1.2rem}[hidden]{display:none!important}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--gold-hover);outline-offset:5px}a,button{transition:background-color .18s ease,color .18s ease,opacity .18s ease,transform .18s var(--ease-out)}button:active,.button:active{transform:scale(.97)}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.eyebrow{font-size:.75rem;letter-spacing:.12em;font-weight:700;line-height:1.5}.large-copy{font-size:clamp(1.25rem,1.8vw,1.55rem);line-height:1.5}.index{font-family:Inter,sans-serif;font-size:.8rem;letter-spacing:0;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 23px;border:1px solid transparent;border-radius:0;font-size:.875rem;font-weight:700;line-height:1.35;text-align:center;width:fit-content}.button.gold{background:var(--gold);color:#14170f}.button.light{background:var(--text);color:var(--bg)}.button.line{border-color:var(--line)}.button.small{min-height:44px;padding:11px 20px;font-size:.8rem}.glass{background:rgba(22,26,22,.79);border:1px solid rgba(255,255,255,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 12px 38px rgba(0,0,0,.14);backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:12px;left:12px;padding:14px 20px;z-index:100;background:var(--gold);color:#111;transform:translateY(-200%)}.skip-link:focus{transform:none}.circle{width:48px;height:48px;border:1px solid var(--line);border-radius:0;font-size:1.9rem;display:grid;place-items:center;line-height:1}.wordmark{display:flex;flex-direction:column;font-family:Barlow,sans-serif;font-size:2.2rem;line-height:.9;letter-spacing:.04em}.wordmark>span{font-family:Inter,sans-serif;font-weight:700;font-size:.47rem;letter-spacing:.08em;line-height:1.3;margin-top:7px}
.film{margin:0 16px;position:relative;background:#070907;aspect-ratio:16/9;border-radius:0;overflow:hidden;isolation:isolate}.film video{width:100%;height:100%;object-fit:contain}.film-tap{position:absolute;inset:0;z-index:1;width:100%;height:100%;cursor:pointer;border-radius:0}.film-tap:focus-visible{outline-offset:-5px}.film-intro{position:absolute;inset:0;display:flex;align-items:center;padding:5.5%;pointer-events:none;z-index:2;background:linear-gradient(90deg,rgba(0,0,0,.38),transparent 80%);opacity:1;transition:opacity .6s var(--ease-out)}.film h1{font-size:clamp(4rem,11.2vw,11rem);line-height:.87;letter-spacing:-.015em;text-shadow:0 2px 24px rgba(0,0,0,.2)}.film h1 span{color:var(--gold)}.film.intro-ended .film-intro{opacity:0}.film-controls{position:absolute;right:24px;bottom:24px;z-index:3;display:flex;align-items:center;min-height:52px;gap:8px;padding:3px 16px 3px 6px;border-radius:0;animation:control-enter .45s var(--ease-out) both}.film-controls button{height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;gap:9px;border-radius:0}.film-controls .control-label:not(.sr-only){font-size:.72rem;white-space:nowrap}.film-controls #hero-sound{padding:0 8px}.play-symbol{width:12px;height:16px;border-left:4px solid currentColor;border-right:4px solid currentColor}.film[data-state=paused] .play-symbol,.film:not([data-state]) .play-symbol{width:0;height:0;border:0;border-left:11px solid currentColor;border-top:7px solid transparent;border-bottom:7px solid transparent;margin-left:3px}.sound-symbol{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.sound-waves{opacity:1;transition:opacity .18s ease,transform .18s var(--ease-out);transform-origin:center}.film[data-audible=false] .sound-waves{opacity:.2;transform:scale(.8)}#hero-volume-wrap{display:flex;align-items:center;height:44px;max-width:120px}#hero-volume{--volume:100%;appearance:none;-webkit-appearance:none;width:92px;height:4px;border-radius:0;background:linear-gradient(to right,var(--text) 0 var(--volume),rgba(255,255,255,.25) var(--volume) 100%);cursor:pointer;margin:18px 2px}#hero-volume::-webkit-slider-thumb{-webkit-appearance:none;width:13px;height:13px;border-radius:0;background:#fff;box-shadow:0 0 0 5px transparent;transition:box-shadow .18s ease,transform .18s var(--ease-out)}#hero-volume:active::-webkit-slider-thumb{transform:scale(1.15);box-shadow:0 0 0 5px rgba(255,255,255,.12)}#hero-volume::-moz-range-thumb{border:0;width:13px;height:13px;background:#fff;border-radius:0}.device-volume-note{font-size:.62rem;max-width:84px;line-height:1.3;color:var(--muted)}.admin-link{opacity:.7}figcaption{font-size:.72rem;color:var(--muted);margin-top:13px}.vision-note{display:flex;align-items:center;gap:22px;margin-top:60px;padding-top:30px;border-top:1px solid var(--line)}.vision-note>div{display:flex;flex-direction:column;gap:10px}.vision-note a{font-size:.78rem;color:var(--muted);text-decoration:underline;text-underline-offset:4px}.spinning-mark{display:block;position:relative;width:82px;height:82px;flex:0 0 82px;overflow:hidden}.spinning-mark img{max-width:none;width:246px;height:auto;position:absolute;left:-82px;top:-28px}.group-banner{position:relative;height:520px;border-radius:0;overflow:hidden;margin-bottom:110px}.group-banner>img{width:100%;height:100%;object-fit:cover}.group-banner>.glass{position:absolute;right:30px;bottom:30px;padding:30px;max-width:390px;border-radius:0}.group-banner h2{font-size:3.35rem}.group-banner p{font-size:.9rem;margin:20px 0 25px}.enquiry{display:flex;align-items:center;justify-content:space-between;gap:50px;border-top:1px solid var(--line);padding-block:65px 80px}.enquiry .eyebrow{margin-bottom:20px}.enquiry h2{font-size:clamp(2.6rem,4vw,4rem);max-width:720px}.enquiry p:not(.eyebrow){margin-top:22px;color:var(--muted);max-width:570px}.enquiry>.button{flex-shrink:0}
.site-footer{background:#080808;padding:64px 56px 24px}.footer-top{display:flex;align-items:start;justify-content:space-between;gap:40px;max-width:1280px;margin:0 auto 60px}.footer-top>div{display:flex;flex-direction:column;gap:8px;font-size:.83rem}.domain{font-size:.83rem;color:var(--muted)}.footer-bottom{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-top:22px;max-width:1280px;margin:auto;color:var(--muted);font-size:.7rem}.footer-bottom nav{display:flex;gap:28px}dialog::backdrop{background:rgba(0,0,0,.6);backdrop-filter:blur(7px)}dialog[open]{animation:dialog-enter .25s var(--ease-out)}
.detail-breadcrumb{display:flex;gap:20px;padding-block:26px 34px;font-size:.72rem;color:var(--muted)}.detail-breadcrumb>span:before{content:'/';margin-right:20px;opacity:.5}.back-link{text-decoration:underline;text-underline-offset:5px}.sport-lead{display:grid;grid-template-columns:1.05fr 1fr;gap:5%;align-items:center}.sport-lead h1{font-size:clamp(4rem,7.1vw,7.2rem);margin:24px 0}.sport-lead .large-copy{max-width:31ch}.sport-lead .button{margin-top:32px}.sport-lead figure img{width:100%;height:610px;object-fit:cover;border-radius:0}.training-rows{display:grid;grid-template-columns:1fr 1.05fr;gap:7%;padding-block:110px}.training-rows h2{margin-top:25px}.training-rows article{display:flex;gap:28px;padding:30px 0;border-bottom:1px solid var(--line)}.training-rows article:first-child{padding-top:0}.training-rows article .index{padding-top:7px}.training-rows article p{color:var(--muted);margin-top:12px}.title-line{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:44px}.title-line>p{max-width:350px;color:var(--muted)}.title-line h1{font-size:clamp(4rem,7.8vw,7.5rem)}.title-line .eyebrow{margin-bottom:24px}.court-lead figure{height:560px;position:relative}.court-lead img{width:100%;height:100%;object-fit:cover;border-radius:0}.court-label{position:absolute;bottom:28px;right:28px;padding:22px;border-radius:0;display:flex;flex-direction:column;gap:16px}.court-notes{padding-block:90px 110px}.court-notes>div{display:grid;grid-template-columns:repeat(3,1fr);gap:54px;margin-top:45px}.court-number{font-family:Barlow,sans-serif;font-size:6rem;line-height:1;color:var(--gold)}.court-notes h2{font-size:2.8rem;margin:24px 0 18px}.court-notes p:not(.eyebrow){color:var(--muted)}.boxing-lead figure{height:460px;border-radius:0;overflow:hidden}.boxing-lead img{width:100%;height:100%;object-fit:cover;object-position:center 41%}.boxing-story{display:grid;grid-template-columns:1fr 2fr;gap:60px;padding-block:95px 110px}.boxing-story h2{font-size:clamp(3rem,4.4vw,4.8rem);margin-bottom:34px}.boxing-story .large-copy{max-width:43ch}.boxing-topics{display:flex;gap:16px;flex-wrap:wrap;margin-top:36px}.boxing-topics span{font-size:.8rem;border-bottom:1px solid var(--line);padding-bottom:8px}.birthday-lead{text-align:center;padding-block:20px 70px}.birthday-lead h1{margin:24px 0;font-size:clamp(4rem,7.3vw,7.2rem)}.birthday-lead p:not(.eyebrow){margin-inline:auto;max-width:48ch;color:var(--muted)}.birthday-lead .button{margin-top:30px}.birthday-plan{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;align-items:center;padding-bottom:100px}.birthday-plan figure img{width:100%;height:650px;object-fit:cover;border-radius:0}.birthday-plan h2{margin:24px 0}.birthday-plan p:not(.eyebrow){color:var(--muted)}.birthday-plan ol{padding:0;list-style:none;margin:30px 0 0;counter-reset:steps}.birthday-plan li{border-top:1px solid var(--line);padding:17px 0;display:flex;gap:12px;font-size:.85rem;color:var(--muted)}.birthday-plan li span{color:var(--text);min-width:62px;font-weight:700}.event-lead{padding-block:12px 55px}.event-lead>.eyebrow{margin-bottom:30px}.event-lead>div{display:flex;align-items:end;justify-content:space-between;gap:80px}.event-lead .large-copy{max-width:32ch}.event-brief{position:relative;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;padding-block:0 50px}.event-brief figure{grid-column:1/3;grid-row:1}.event-brief img{width:75%;height:650px;object-fit:cover;border-radius:0}.event-sheet{grid-column:2;grid-row:1;z-index:1;padding:38px;border-radius:0;margin:35px 0 35px 50px}.event-sheet h2{font-size:3.6rem;margin:24px 0}.event-sheet dl{margin-bottom:28px}.event-sheet dl>div{display:flex;gap:30px;border-bottom:1px solid var(--line);padding:12px 0;font-size:.8rem}.event-sheet dt{min-width:65px;font-weight:700}.event-sheet dd{margin:0;color:#d3d6cf}.event-copy{display:grid;grid-template-columns:1fr 2fr;gap:80px;padding-block:45px 100px}.community-lead figure{height:620px}.community-lead img{width:100%;height:100%;object-fit:cover;border-radius:0}.community-journal{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10%;padding-block:100px}.community-journal h2{margin:25px 0 30px}.community-journal p:not(.large-copy):not(.eyebrow){color:var(--muted);margin-top:22px}.community-journal .button{margin-top:30px}.community-journal>figure img{height:650px;width:100%;object-fit:cover;border-radius:0}.instagram-note{border-top:1px solid var(--line);padding-block:65px 80px}.instagram-note h2{font-size:3.5rem}.instagram-note p{margin:20px 0 26px;color:var(--muted)}.other-services{border-top:1px solid var(--line);display:flex;gap:25px;flex-wrap:wrap;padding-block:28px 50px;font-size:.8rem}.other-services>span{color:var(--muted);margin-right:auto}.other-services a{text-decoration:underline;text-underline-offset:5px}
.legal-page{padding-block:50px 110px;min-height:65vh}.legal-page h1{font-size:clamp(3.5rem,7vw,6rem);margin:24px 0 40px}.legal-status{padding:20px 25px;border-left:2px solid var(--gold);background:rgba(183,161,68,.08);font-size:.9rem;margin-bottom:48px;max-width:760px}.legal-copy{max-width:760px}.legal-copy section{margin-bottom:38px}.legal-copy h2{font-family:Inter,sans-serif;font-size:1.2rem;line-height:1.4;letter-spacing:0;margin-bottom:18px}.legal-copy p,.legal-copy li{font-size:.95rem;color:#ced2c8}.legal-copy a{text-decoration:underline;text-underline-offset:4px}.legal-copy ul{padding-left:20px}.legal-copy li+li{margin-top:12px}.not-found{padding-block:80px 140px}.not-found h1{margin:25px 0 40px}
@keyframes control-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes caption-enter{from{opacity:.5;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes dialog-enter{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}
@media(hover:hover) and (pointer:fine){.button.gold:hover{background:var(--gold-hover)}.button.light:hover{background:#dfe2d5}.button.line:hover,.film-controls button:hover{background:rgba(255,255,255,.1)}.footer-top a:hover,.footer-bottom a:hover,.other-services a:hover{color:var(--text)}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.community-journal{gap:7%}.sport-lead h1{font-size:6.5vw}.title-line{gap:40px}.title-line h1{font-size:7.5vw}.title-line>p{max-width:32ch;font-size:.9rem}.event-sheet{margin-left:0;padding:28px}.site-footer{padding-inline:32px}.court-notes>div{gap:30px}}
@media(max-width:760px){:root{--radius:0}.wrap{width:calc(100% - 40px)}.wordmark{font-size:1.9rem}.wordmark>span{font-size:.4rem}.film{margin-inline:10px;border-radius:0;aspect-ratio:auto;padding-bottom:8px}.film video{height:auto;aspect-ratio:16/9}.film-tap{height:calc(100% - 60px)}.film h1{font-size:12vw;line-height:.9}.film-intro{padding:6%;bottom:60px}.film-controls{position:relative;right:auto;bottom:auto;width:fit-content;margin:8px 8px 0 auto;min-height:44px;padding:0 9px 0 1px;gap:1px}.film-controls button{height:44px;min-width:44px}.film-controls #hero-sound{padding-inline:5px}.film-controls .control-label:not(.sr-only){font-size:.75rem}.sound-symbol{width:18px;height:18px}.play-symbol{height:13px;width:10px;border-width:3px}.film[data-state=paused] .play-symbol{border-left-width:9px;border-top-width:6px;border-bottom-width:6px}#hero-volume{width:55px;height:3px}#hero-volume-wrap{height:40px}.vision-note{margin-top:36px;padding-top:24px}.group-banner{height:540px;margin-bottom:65px}.group-banner>img{object-position:42% center}.group-banner>.glass{right:16px;left:16px;bottom:16px;padding:25px;max-width:none}.group-banner h2{font-size:3rem}.group-banner p{font-size:.83rem}.enquiry{display:block;padding-block:40px 60px}.enquiry p:not(.eyebrow){font-size:.9rem}.enquiry>.button{margin-top:28px}.site-footer{padding:45px 20px 24px}.footer-top{flex-wrap:wrap;gap:30px;margin-bottom:36px}.footer-top>div{font-size:.75rem}.domain{width:100%;font-size:.75rem}.footer-bottom{display:block;font-size:.75rem}.footer-bottom nav{margin-top:18px;gap:24px;flex-wrap:wrap}.detail-breadcrumb{padding-block:12px 30px;font-size:.65rem}.sport-lead{grid-template-columns:1fr;gap:35px}.sport-lead h1{font-size:clamp(3.4rem,11.6vw,6rem);margin:20px 0}.sport-lead .large-copy{font-size:1.25rem}.sport-lead figure img{height:430px}.training-rows{grid-template-columns:1fr;gap:38px;padding-block:65px}.training-rows h2{font-size:3rem;margin-top:20px}.training-rows article{padding-block:24px}.training-rows article h3{font-size:2.2rem}.training-rows article p{font-size:.9rem}.title-line{display:block;margin-bottom:30px}.title-line h1{font-size:clamp(3rem,11.3vw,5.5rem)}.title-line>p{margin-top:25px;max-width:48ch;font-size:.95rem}.court-lead figure{height:450px}.court-label{bottom:16px;right:16px;left:16px;padding:20px}.court-label .eyebrow{font-size:.68rem}.court-label .button{font-size:.8rem}.court-notes{padding-block:60px}.court-notes>div{grid-template-columns:1fr;gap:30px;margin-top:28px}.court-notes article{display:grid;grid-template-columns:55px 1fr;column-gap:20px;border-bottom:1px solid var(--line);padding-bottom:28px}.court-number{font-size:4.3rem;grid-row:1/3}.court-notes h2{font-size:2.5rem;margin:0 0 14px}.court-notes p:not(.eyebrow){font-size:.9rem}.boxing-lead figure{height:330px}.boxing-story{grid-template-columns:1fr;gap:25px;padding-block:60px}.boxing-story h2{font-size:3.1rem;margin-bottom:25px}.boxing-story .large-copy{font-size:1.25rem}.boxing-topics{gap:15px}.boxing-topics span{font-size:.75rem}.birthday-lead{padding-block:10px 45px}.birthday-lead h1{font-size:clamp(3.3rem,11.5vw,5.5rem)}.birthday-lead p:not(.eyebrow){font-size:.9rem}.birthday-plan{grid-template-columns:1fr;gap:45px;padding-bottom:60px}.birthday-plan figure img{height:470px}.birthday-plan h2{font-size:3.25rem}.birthday-plan p{font-size:.9rem}.birthday-plan li{font-size:.82rem}.event-lead{padding-block:0 35px}.event-lead>div{display:block}.event-lead h1{font-size:4.7rem}.event-lead .large-copy{font-size:1.25rem;margin-top:25px}.event-brief{display:block;padding-bottom:20px}.event-brief img{width:100%;height:370px}.event-sheet{position:relative;margin:-85px 12px 0;padding:24px}.event-sheet h2{font-size:3.1rem}.event-sheet dl>div{gap:15px;font-size:.75rem}.event-sheet dt{min-width:56px}.event-copy{grid-template-columns:1fr;gap:23px;padding-block:35px 65px}.event-copy .large-copy{font-size:1.25rem}.community-lead figure{height:360px}.community-journal{grid-template-columns:1fr;gap:45px;padding-block:60px}.community-journal>figure img{height:500px}.community-journal h2{font-size:3.4rem}.community-journal p:not(.large-copy):not(.eyebrow){font-size:.9rem}.instagram-note{padding-block:40px 55px}.instagram-note h2{font-size:3rem}.instagram-note p{font-size:.9rem}.other-services{gap:15px 24px;font-size:.75rem;padding-block:24px 40px}.other-services>span{width:100%}.legal-page{padding-block:25px 65px}.legal-page h1{font-size:3.5rem;overflow-wrap:anywhere}.legal-copy p,.legal-copy li{font-size:.9rem}.legal-status{font-size:.82rem;padding:18px}.not-found h1{font-size:3.5rem}}
@media(max-width:359px){.wrap{width:calc(100% - 32px)}.wordmark{font-size:1.65rem}.wordmark>span{font-size:.35rem}.film-controls .control-label:not(.sr-only){max-width:100px;white-space:normal;line-height:1.2}#hero-volume{width:45px}.sport-lead h1{font-size:11.4vw}.title-line h1{font-size:11vw}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){.glass{background:#1b201a;backdrop-filter:none;-webkit-backdrop-filter:none;border-color:#8b9386}dialog::backdrop{backdrop-filter:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.film-intro{transition:opacity .15s linear!important}}

/* Shared rail for the masthead, film, and editorial sections. */
:root {
  --gutter: clamp(16px, 4vw, 64px);
  --section-space: clamp(48px, 6vw, 88px);
  --header-height: 72px;
}
.wrap { width: min(1400px, calc(100% - var(--gutter) * 2)); }
html { scroll-padding-top: calc(var(--header-height) + 16px); }
.site-header, .menu-bar {
  position: sticky; top: 0; z-index: 11; border-bottom: 1px solid var(--line);
  background: rgb(8 8 8 / 88%); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
}
.masthead, .brand, .header-actions, .menu-toggle { display: flex; align-items: center; }
.masthead { height: var(--header-height); justify-content: space-between; gap: 12px; }
.brand { gap: 12px; flex: none; }
.brand .spinning-mark { width: 42px; height: 42px; flex-basis: 42px; }
.brand .spinning-mark img { width: 134px; left: -46px; top: -17px; }
.brand .wordmark { font-size: 1.55rem; }
.brand .wordmark > span { font-size: .35rem; margin-top: 5px; }
.header-actions { gap: 12px; }
.menu-toggle { justify-content: center; gap: 10px; min-height: 44px; padding: 0 16px; font-size: .85rem; font-weight: 700; border: 1px solid var(--line); background: #ffffff08; }
.menu-lines { width: 16px; height: 7px; border-block: 1px solid currentColor; }
.menu-toggle:hover, .menu-overview nav a:hover { background: #ffffff12; }

.site-menu {
  position: fixed; inset: 0; margin: 0; width: 100%; height: 100dvh; max-width: none; max-height: none;
  padding: 0; border: 0; color: var(--text); background: rgb(7 7 7 / 94%); overflow: auto;
  backdrop-filter: blur(24px); -webkit-backdrop-filter: blur(24px);
}
.site-menu[open] { animation: none; }
.menu-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 8%; padding-block: var(--section-space); }
.menu-overview h2 { font-size: clamp(4rem, 8vw, 8rem); color: var(--gold); }
.menu-overview nav { margin-top: 24px; display: grid; justify-items: start; }
.menu-overview nav a { display: flex; align-items: center; min-height: 44px; font-size: 1rem; }
.menu-offers .eyebrow { color: var(--muted); margin-bottom: 14px; letter-spacing: .14em; }
.menu-offers a { display: flex; align-items: center; gap: 18px; min-height: 46px; padding: 12px 0; border-block-start: 1px solid var(--line); font: 700 clamp(1.65rem, 3vw, 3rem)/1.05 Barlow, sans-serif; }
.menu-offers a:last-child { border-block-end: 1px solid var(--line); }
.menu-offers a:hover, .menu-offers a:focus-visible { color: var(--gold-hover); }

.home .film { width: min(1400px, calc(100% - var(--gutter) * 2)); margin: 0 auto; aspect-ratio: auto; padding: 0; background: #000; }
.film-screen { position: relative; aspect-ratio: 16/9; overflow: hidden; }
.home .film video, .home .film-tap { height: 100%; }
.home .film-intro { inset: 0; }
.home .film-controls { position: relative; inset: auto; width: fit-content; max-width: 100%; margin: 8px 0 0 auto; background: rgb(12 12 12 / 75%); }
.film-caption { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-block: 12px; font-size: .7rem; color: var(--muted); }
.film-caption span { letter-spacing: .12em; font-weight: 700; }
.film-caption b { margin-inline: 4px; color: var(--gold); }
.film-caption a { text-decoration: underline; text-underline-offset: 3px; }

.next-event { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: clamp(20px, 4vw, 64px); padding-block: clamp(22px, 3vw, 40px); border-block: 1px solid var(--line); }
.next-event h2 { font-size: clamp(1.8rem, 3vw, 3rem); }
.next-event-details { border-inline-start: 2px solid var(--gold); padding-inline-start: clamp(14px, 2vw, 28px); overflow-wrap: anywhere; }
.next-event-details .ewew-event-empty { margin: 0; }
.next-event-details .ewew-event-meta { grid-template-columns: max-content 1fr; }
.next-event .button { min-height: 44px; font-size: .82rem; }
.offers, .story { padding-block: var(--section-space); }
.section-heading { margin-bottom: clamp(20px, 3vw, 36px); }
.services-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(10px, 1.4vw, 20px); }
.service-card { position: relative; display: grid; align-items: end; aspect-ratio: 1.45; min-width: 0; overflow: hidden; isolation: isolate; background: #171717; }
.service-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .22s var(--ease-out); }
.service-caption { display: flex; align-items: baseline; gap: clamp(10px, 1vw, 16px); z-index: 1; padding: clamp(12px, 1.5vw, 22px); border: 0; border-top: 1px solid #ffffff35; background: rgb(12 12 12 / 78%); box-shadow: none; }
.service-index { font: 700 .67rem/1.4 Inter, sans-serif; color: #d4bf66; letter-spacing: .08em; }
.service-caption h3 { font-size: clamp(1.6rem, 2.8vw, 3rem); }
.story { border-top: 1px solid var(--line); }
.story-layout { display: grid; grid-template-columns: 1.05fr 1fr; align-items: center; gap: clamp(32px, 7vw, 104px); }
.story-photo img { width: 100%; height: auto; aspect-ratio: 1.15; object-fit: cover; object-position: center 42%; }
.story-copy .eyebrow { color: var(--gold-hover); }
.story-copy h2 { margin: 16px 0 24px; max-width: 10em; }
.story-copy .large-copy { max-width: 34ch; }
.story-copy .button { margin-top: 28px; }
.request-choices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.request-choices .button { width: 100%; padding-inline: 8px; overflow-wrap: anywhere; }

@media (hover:hover) and (pointer:fine) {
  .service-card:hover .service-caption { background: rgb(12 12 12 / 59%); }
}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .service-card:hover .service-image { transform: scale(1.025); }
}
@media (max-width:760px) {
  :root { --header-height: 60px; }
  .brand { gap: 6px; }
  .brand .wordmark { font-size: 1.28rem; }
  .header-actions { gap: 6px; }
  .header-actions .button, .menu-toggle { min-height: 44px; padding-inline: 10px; font-size: .74rem; }
  .menu-toggle { gap: 6px; }
  .menu-layout { grid-template-columns: 1fr; gap: 28px; padding-block: 24px; }
  .menu-overview nav { margin-top: 12px; }
  .menu-overview h2 { font-size: 3.4rem; }
  .menu-offers a { padding-block: 9px; }
  .next-event { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .next-event .button { width: fit-content; }
  .services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .service-card { aspect-ratio: 1.12; }
  .service-caption { gap: 6px; padding: 10px 8px; }
  .service-caption h3 { font-size: clamp(1.32rem, 5.4vw, 2.4rem); }
  .story-layout { grid-template-columns: 1fr; gap: 24px; }
  .story-copy h2 { margin-block: 12px 18px; }
  .story-copy .button { margin-top: 20px; }
}
@media (max-width:359px) {
  .brand .wordmark > span { display: none; }
  .brand { gap: 2px; }
}
@media (prefers-reduced-transparency:reduce), (prefers-contrast:more) {
  .site-header, .menu-bar, .site-menu, .service-caption, .service-card:hover .service-caption, .home .film-controls { background: #101010; backdrop-filter: none; }
}
