
/* ============================================================
   MENTALITY JIU JITSU — brand tokens
   Palette and typography per MJJ Brand Guidelines 2025.

   BRAND COLOURS (the only three in the system)
     Black  #171717   23/23/23     Pantone Black
     White  #E9E5D9   233/229/217  PMS 400 - 50% tint
     Grey   #75726B   117/114/107  Pantone Black - 50% tint

   Surfaces and rules below are tints of those three colours only —
   no new hues are introduced.

   TYPEFACES
     Display / titles      PP Neue Montreal — all caps, medium weight
     Metadata / technical  PP Supply Mono   — all caps, regular weight
     Body / subheadings    Inter            — all weights

   PP Neue Montreal Medium and PP Supply Mono Regular are commercial
   licences (Pangram Pangram) and are now self-hosted from fonts/.
   The earlier Inter Tight / Azeret Mono stand-ins have been removed.
   ============================================================ */

/* ---------- LICENSED WEBFONTS — in use ----------
   Metrics read from the supplied files, matching the Display Type Spec:
     PPNeueMontreal-Medium  capHeight 715/1000, usWeightClass 500
     PPSupplyMono-Regular   capHeight 700/1000, usWeightClass 400
   Only Medium and Regular are licensed, so each family declares one weight;
   the stacks below never ask for another. Inter still comes from Google Fonts
   for body copy, which the guidelines specify for long-form text. */
@font-face{font-family:'PP Neue Montreal';src:url('../fonts/PPNeueMontreal-Medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'PP Supply Mono';  src:url('../fonts/PPSupplyMono-Regular.woff2')  format('woff2');font-weight:400;font-style:normal;font-display:swap}

:root{
  --brand-black:#171717;
  --brand-white:#E9E5D9;
  --brand-grey:#75726B;
  /* --muted is the brand grey nudged 30% toward the text colour so small body
     copy meets the WCAG AA 4.5:1 contrast minimum on every surface. Logos keep
     the exact brand grey (--brand-grey). */

  --bg:#171717; --fg:#E9E5D9; --muted:#98948C; --line:rgba(233,229,217,.20);
  --surface:#222121; --surface-2:#2C2C2A; --veil:233,229,217;
  --display:'PP Neue Montreal',system-ui,sans-serif;
  --body:'Inter',system-ui,sans-serif;
  --mono:'PP Supply Mono',ui-monospace,monospace;
  --gut:clamp(20px,5vw,64px);
}
html[data-theme="light"]{
  --bg:#E9E5D9; --fg:#171717; --muted:#595752; --line:rgba(23,23,23,.20);
  --surface:#DFDBCF; --surface-2:#D4D0C6; --veil:23,23,23;
}
.band{
  --bg:#E9E5D9; --fg:#171717; --muted:#595752; --line:rgba(23,23,23,.20);
  --surface:#DFDBCF; --surface-2:#D4D0C6; --veil:23,23,23;
}
html[data-theme="light"] .band{
  --bg:#171717; --fg:#E9E5D9; --muted:#98948C; --line:rgba(233,229,217,.20);
  --surface:#222121; --surface-2:#2C2C2A; --veil:233,229,217;
}

*{margin:0;padding:0;box-sizing:border-box}
/* width/height attributes on <img> reserve space while loading; CSS decides the real size */
img{max-width:100%;height:auto}
.mg-media img,.founder-card img{max-width:none}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--fg);font-family:var(--body);font-weight:400;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;transition:background .45s ease,color .45s ease}
html.js body.lock{overflow:hidden;height:100vh;height:100svh}
a{color:inherit}
:focus-visible{outline:2px solid currentColor;outline-offset:3px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* ============ TYPE ============ */
.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);font-weight:400}
.h-xl{font-family:var(--display);font-weight:500;font-size:clamp(42px,8.5vw,104px);line-height:.92;letter-spacing:-.035em;text-transform:uppercase}
.h-lg{font-family:var(--display);font-weight:500;font-size:clamp(30px,5vw,58px);line-height:.98;letter-spacing:-.03em;text-transform:uppercase}
.h-md{font-family:var(--display);font-weight:500;font-size:clamp(20px,2.4vw,27px);line-height:1.1;letter-spacing:-.02em;text-transform:uppercase}
.lede{font-size:clamp(16px,1.5vw,19px);line-height:1.65;color:var(--muted);max-width:62ch}
.wrap{max-width:1240px;margin:0 auto;padding:0 var(--gut)}
section{padding:clamp(64px,9vw,124px) 0;position:relative;background:var(--bg);color:var(--fg);transition:background .45s ease,color .45s ease}

/* ============ LOGO — fill must sit on the <svg>, not a descendant ============ */
.mark{display:block;fill:currentColor;color:inherit}

/* ============ INTRO ============ */
#intro{display:none}
html.js #intro{display:block;position:fixed;inset:0;z-index:300;pointer-events:none;overflow:hidden}
.iv-panel{position:absolute;left:0;right:0;height:50.2%;background:var(--brand-black);transition:transform 1s cubic-bezier(.76,0,.24,1)}
.iv-panel.t{top:0}
.iv-panel.b{bottom:0}
#intro.out .iv-panel.t{transform:translateY(-101%)}
#intro.out .iv-panel.b{transform:translateY(101%)}
.iv-mark{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:24px;transition:opacity .45s ease,transform .8s cubic-bezier(.76,0,.24,1)}
#intro.out .iv-mark{opacity:0;transform:scale(1.09)}

.iv-logo{position:relative;width:clamp(158px,23vw,248px);aspect-ratio:766.962/609.076;filter:drop-shadow(0 0 26px rgba(233,229,217,.16))}
.iv-logo svg{position:absolute;inset:0;width:100%;height:100%}
.iv-logo .base{fill:var(--brand-grey)}
.iv-logo .glint{fill:var(--brand-white);
  -webkit-mask-image:linear-gradient(112deg,transparent 36%,#000 45%,#000 55%,transparent 64%);
          mask-image:linear-gradient(112deg,transparent 36%,#000 45%,#000 55%,transparent 64%);
  -webkit-mask-size:280% 280%; mask-size:280% 280%;
  -webkit-mask-position:140% 50%; mask-position:140% 50%;
  -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat}
#intro.shine .iv-logo .glint{
  -webkit-mask-position:-40% 50%; mask-position:-40% 50%;
  transition:-webkit-mask-position 1.2s cubic-bezier(.42,0,.14,1), mask-position 1.2s cubic-bezier(.42,0,.14,1)}
.iv-logo .gm,.iv-logo .gw{opacity:0;transition:transform 1.05s cubic-bezier(.16,1,.3,1),opacity .7s ease}
.iv-logo .gm{transform:translateY(-137px)}
.iv-logo .gw{transform:translateY(137px)}
#intro.draw .iv-logo .gm,#intro.draw .iv-logo .gw{opacity:1;transform:translateY(0)}

.iv-streak{position:absolute;top:-10%;bottom:-10%;width:15vw;left:-26vw;opacity:0;
  background:linear-gradient(90deg,transparent,rgba(233,229,217,.10),rgba(233,229,217,.02),transparent);
  transform:skewX(-14deg)}
#intro.shine .iv-streak{animation:blade 1.2s cubic-bezier(.42,0,.14,1) forwards}
@keyframes blade{0%{transform:translateX(0) skewX(-14deg);opacity:0}18%{opacity:1}100%{transform:translateX(144vw) skewX(-14deg);opacity:0}}

.iv-word{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--brand-grey);opacity:0;transform:translateY(8px);
  transition:opacity .6s ease,transform .6s ease,letter-spacing .9s cubic-bezier(.16,1,.3,1)}
#intro.word .iv-word{opacity:1;transform:none;letter-spacing:.42em}
.iv-skip{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);font-family:var(--mono);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--brand-grey);opacity:0;transition:opacity .4s;pointer-events:auto;background:none;border:0;cursor:pointer;padding:8px 14px}
#intro.word .iv-skip{opacity:.75}
.iv-skip:hover{color:var(--brand-white)}

/* ============ NAV ============ */
header{position:fixed;inset:0 0 auto 0;z-index:90;border-bottom:1px solid transparent;transition:background .3s,border-color .3s}
header.stuck{background:var(--bg);background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom-color:var(--line)}
.nav{display:flex;align-items:center;gap:22px;height:72px;max-width:1240px;margin:0 auto;padding:0 var(--gut)}
/* ---- LOGO VARIATION 02 (wordmark) ----
   The supplied artwork is a single flat brand-white fill whose blur lives
   entirely in the alpha channel, so it is used here as an alpha MASK painted
   with currentColor. Two consequences, both deliberate:
     - the wordmark always resolves to a brand colour (White on Black,
       Black on White) and can never be recoloured off-palette;
     - the source PNG is untouched, only trimmed to its own bounding box.
   aspect-ratio is locked to the artwork's true 1478:136 so it can never be
   stretched or deformed. */
/* Display Type Spec §1: "The MMENTALITY logotype is never typeset, in any
   face, at any weight." So there is deliberately NO type fallback here — an
   earlier build set the word in the display face when masking was
   unavailable, which broke that rule. The element carries no text at all;
   its accessible name comes from aria-label on the span. CSS masking
   predates every other feature this stylesheet already depends on
   (color-mix, aspect-ratio), so there is no browser that would reach a
   fallback and still render the rest of the page. */
.wordmark{display:block;font-size:0;line-height:0}
@supports ((-webkit-mask-image:url(a)) or (mask-image:url(a))){
  .wordmark{aspect-ratio:1478/136;background-color:currentColor;
    -webkit-mask-image:url("data:image/png;base64,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");mask-image:url("data:image/png;base64,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");
    -webkit-mask-size:100% 100%;mask-size:100% 100%;
    -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
    -webkit-mask-position:left center;mask-position:left center}
}

/* Lockup: logomark, clear space, then the Variation 02 wordmark.
   Mark width is derived from aspect-ratio so it can never be deformed.
   Gap is the exclusion zone — kept at ~40%% of the mark's width.
   Both elements sit well above the guidelines' print minimums
   (logomark 5mm, logotype 7mm) at every breakpoint. */
.brand{display:flex;align-items:center;gap:13px;text-decoration:none;flex-shrink:0;line-height:0}
/* The logomark uses pixel-snapped copies (#logo-31 / #logo-27 / #logo-37) drawn at
   exactly these sizes, so every stroke sits on whole pixels and the left and right
   sides render equally sharp. Keep these sizes in sync with the symbols. */
.brand-mark{flex-shrink:0;display:block}
.brand-mark.bm-d{width:39px;height:31px}
.brand-mark.bm-m{display:none;width:34px;height:27px}
.brand-txt{display:block}
.brand .wordmark{width:clamp(136px,15vw,172px)}
.brand small{display:block;font-family:var(--mono);font-size:8px;letter-spacing:.26em;color:var(--muted);font-weight:400;margin-top:6px;line-height:1}
@media(max-width:600px){.brand{gap:10px}.brand-mark.bm-d{display:none}.brand-mark.bm-m{display:block}}
.nav-links{display:flex;gap:24px;margin-left:auto}
.nav-links a{font-size:13px;text-decoration:none;color:var(--muted);transition:color .2s}
.nav-links a:hover{color:var(--fg)}
.nav-links a{white-space:nowrap}
@media(max-width:1279px){.nav-links{gap:18px}}
/* Collapse to the menu button before the links run out of room */
@media(max-width:1180px){.nav-links{display:none}.tgl{margin-left:auto}}
@media(max-width:600px){.nav > .btn{display:none}.nav{gap:14px}}
.tgl{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);background:transparent;color:var(--fg);cursor:pointer;flex-shrink:0;transition:border-color .2s}
.tgl:hover{border-color:var(--fg)}
.tgl svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.tgl .moon{display:none}
html[data-theme="light"] .tgl .sun{display:none}
html[data-theme="light"] .tgl .moon{display:block}

/* ============ BUTTONS ============ */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--display);font-weight:500;font-size:13px;letter-spacing:.06em;text-transform:uppercase;padding:15px 26px;border:1.5px solid var(--fg);background:var(--fg);color:var(--bg);text-decoration:none;cursor:pointer;border-radius:0;white-space:nowrap;transition:background .18s,color .18s}
.btn:hover{background:transparent;color:var(--fg)}
.btn-ghost{background:transparent;color:var(--fg)}
.btn-ghost:hover{background:var(--fg);color:var(--bg)}
.btn-sm{padding:11px 18px;font-size:11.5px}
.btn-wide{width:100%}

/* ============ HERO ============ */
.hero{min-height:100vh;min-height:100svh;display:flex;align-items:center;padding-top:clamp(96px,11vh,120px);padding-bottom:clamp(40px,6vh,72px);overflow:hidden}
.hero-tex{position:absolute;inset:-10% 0;background:repeating-linear-gradient(135deg,transparent 0 38px,rgba(var(--veil),.024) 38px 39px);pointer-events:none;will-change:transform}
.hero-glow{position:absolute;inset:0;background:radial-gradient(115% 85% at 74% 16%,rgba(var(--veil),.075),transparent 62%);pointer-events:none}
.hero-inner{position:relative;z-index:2;width:100%;will-change:transform,opacity}
.hero-grid{display:grid;grid-template-columns:1.25fr .78fr;gap:clamp(30px,5vw,68px);align-items:center}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr;align-items:start}}
.hero .cut-stack{margin:20px 0 24px}
.hero .cut-stack em{font-style:normal;display:block;color:var(--muted)}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.hero-media .hero-cta{margin-top:12px;flex-direction:column;flex-wrap:nowrap}
.hero-media .hero-cta .btn{width:100%}
.hero-media .hero-cta .btn:not(.btn-ghost){background:var(--bg);background:color-mix(in srgb,var(--bg) 84%,transparent);color:var(--fg);border-color:var(--fg);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}
.hero-media .hero-cta .btn-ghost{background:var(--bg);background:color-mix(in srgb,var(--bg) 84%,transparent);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}
.hero-media .hero-cta .btn:not(.btn-ghost):hover,.hero-media .hero-cta .btn-ghost:hover{background:var(--fg);color:var(--bg)}
.stars{font-size:17px;letter-spacing:3px;margin-bottom:6px}
.rating-n{font-family:var(--display);font-weight:500;font-size:40px;line-height:1}
.hero-rate p{font-size:12px;color:var(--muted);margin-top:6px;font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase}
.scroll-hint{position:absolute;bottom:24px;left:var(--gut);font-family:var(--mono);font-size:10px;letter-spacing:.24em;color:var(--muted);z-index:3;display:flex;align-items:center;gap:10px}
@media(max-width:900px){.scroll-hint{display:none}}
.scroll-hint i{display:block;width:1px;height:26px;background:currentColor;opacity:.5;animation:drop 1.9s ease-in-out infinite;transform-origin:top}
@keyframes drop{0%,100%{transform:scaleY(.4);opacity:.25}50%{transform:scaleY(1);opacity:.7}}
.stage{opacity:1;transform:none}
html.js .stage{opacity:0;transform:translateY(26px)}
body.ready .stage{opacity:1;transform:none;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}
body.ready .s1{transition-delay:.05s}body.ready .s2{transition-delay:.15s}
body.ready .s3{transition-delay:.28s}body.ready .s4{transition-delay:.4s}
body.ready .s5{transition-delay:.52s}

/* ============ THE CUT ============
   Display Type Specification §2. A hard horizontal edge slices the
   letterforms: first line of a stack cut across the TOP, last line cut
   across the BOTTOM, middle lines left whole. Depth is 17% of CAP HEIGHT
   (not type size, not the line box).

   The spec requires the cut be measured against the rendered glyph mask.
   Cap height and baseline are therefore measured from the font actually
   in use — see cutStack() in the script — rather than assumed, so the
   depth stays true when the licensed PP Neue Montreal replaces the
   fallback (cap height 715/1000, per the spec).

   Hard colour stops, so the gradient is an edge and not a fade. With JS
   off no mask is set and the type simply renders whole. */
/* clip-path rather than mask-image: both render identically on screen, but
   Chromium drops CSS masks in its print/PDF path, which would silently lose
   the cut on a printed page. The three non-cut sides take negative insets so
   only the cut edge is ever trimmed — at this leading the glyphs overflow
   their line box, and a plain inset would shave the baseline. */
.cut-line{display:block}
.cut-line.cut-top{
  -webkit-clip-path:inset(var(--cut) -.6em -.6em -.6em);
          clip-path:inset(var(--cut) -.6em -.6em -.6em)}
.cut-line.cut-bot{
  -webkit-clip-path:inset(-.6em -.6em var(--cut) -.6em);
          clip-path:inset(-.6em -.6em var(--cut) -.6em)}

/* Hero title — a continuous vertical ticker. The track holds the title
   twice back to back and scrolls up by exactly one copy's height, forever;
   since both copies are identical the loop point is invisible. Height is
   set from JS (see sizeHeroTicker) to match one copy exactly, so the window
   never clips a line. The track carries the motion, not the h1, so it
   never fights the .stage entrance transform. Pauses on hover. */
.hero-ticker{overflow:hidden;margin:14px 0 22px;
  -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 14%,#000 86%,transparent 100%);
          mask-image:linear-gradient(180deg,transparent 0,#000 14%,#000 86%,transparent 100%)}
.hero-ticker-track{display:flex;flex-direction:column;animation:heroTickerUp 24s linear infinite}
.hero-ticker:hover .hero-ticker-track{animation-play-state:paused}
@keyframes heroTickerUp{to{transform:translateY(-50%)}}

/* ============ MARQUEE ============ */
.strip{background:var(--fg);color:var(--bg);padding:13px 0;overflow:hidden;white-space:nowrap;position:relative;z-index:4;transition:background .45s ease,color .45s ease}
.strip-shift{display:block;will-change:transform}
.strip-track{display:inline-flex;gap:44px;animation:slide 34s linear infinite;font-family:var(--display);font-weight:500;font-size:13px;letter-spacing:.13em;text-transform:uppercase}
@keyframes slide{to{transform:translateX(-50%)}}
.strip-track span{display:inline-flex;align-items:center;gap:44px}
.strip-track span::after{content:"";width:5px;height:5px;background:currentColor;border-radius:50%}

/* ============ LAYOUT ============ */
.sec-head{max-width:760px;margin-bottom:clamp(36px,4.5vw,56px)}
.sec-head .h-lg{margin:14px 0 16px}
.cols-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.cols-2{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
@media(max-width:940px){.cols-3,.cols-2{grid-template-columns:1fr}}

/* ============ PROGRAMS ============ */
.prog{border:1px solid var(--line);padding:30px 26px 26px;background:var(--surface);display:flex;flex-direction:column;transition:border-color .25s,transform .25s}
.prog:hover{border-color:var(--fg);transform:translateY(-3px)}
.prog p.prog-tag{font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--muted);text-transform:uppercase;flex:none}
.prog h3{margin:12px 0;font-family:var(--display);font-weight:500;font-size:25px;line-height:1.05;text-transform:uppercase;letter-spacing:-.02em}
.prog p{font-size:14.5px;color:var(--muted);flex:1}
.prog ul{list-style:none;margin:18px 0 22px;font-size:13.5px;color:var(--muted)}
.prog ul li{padding:7px 0;border-top:1px solid var(--line);display:flex;gap:9px}
.prog ul li::before{content:"—";opacity:.55}

/* ============ TIMELINE ============ */
.timeline{border-top:1px solid var(--line)}
.tl-row{display:grid;grid-template-columns:118px 1fr;gap:clamp(16px,3vw,44px);padding:26px 0;border-bottom:1px solid var(--line);align-items:start}
@media(max-width:700px){.tl-row{grid-template-columns:74px 1fr;gap:16px;padding:20px 0}}
.tl-time{font-family:var(--mono);font-weight:400;font-size:clamp(15px,2vw,21px)}
.tl-time small{display:block;font-family:var(--mono);font-weight:400;font-size:9.5px;letter-spacing:.18em;color:var(--muted);margin-top:5px;text-transform:uppercase}
.tl-row h4{font-family:var(--display);font-weight:500;font-size:clamp(16px,1.9vw,21px);text-transform:uppercase;margin-bottom:7px}
.tl-row p{font-size:14.5px;color:var(--muted);max-width:60ch}

/* ============ TIMETABLE ============ */
.tt-controls{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.chip{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:9px 15px;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer;transition:.18s}
.chip:hover{color:var(--fg);border-color:var(--fg)}
.chip[aria-pressed="true"]{background:var(--fg);color:var(--bg);border-color:var(--fg)}
.days{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:4px;overflow-x:auto;scrollbar-width:none}
.days::-webkit-scrollbar{display:none}
.day-btn{font-family:var(--display);font-weight:500;font-size:13px;letter-spacing:.08em;text-transform:uppercase;padding:14px 18px;background:transparent;border:0;border-bottom:2px solid transparent;color:var(--muted);cursor:pointer;white-space:nowrap;transition:.18s}
.day-btn:hover{color:var(--fg)}
.day-btn[aria-selected="true"]{color:var(--fg);border-bottom-color:var(--fg)}
.day-btn.today::after{content:none}
.day-btn small{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.1em;font-weight:400;margin-top:4px;opacity:.75}
.day-btn.holiday small{color:var(--fg);opacity:1}
.tt-holiday{border:1px solid var(--line);background:var(--surface);padding:28px 26px;margin:18px 0 6px}
.tt-holiday h3{font-family:var(--display);font-weight:500;text-transform:uppercase;font-size:clamp(22px,3vw,30px);letter-spacing:-.01em;margin:8px 0 10px}
.tt-holiday p:last-child{color:var(--muted);font-size:15px;line-height:1.6;max-width:60ch}
.tt-change{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--fg);border:1px solid var(--line);background:var(--surface);padding:10px 14px;margin:16px 0 4px;display:inline-block}
.slot{display:grid;grid-template-columns:150px 1fr auto;gap:18px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line)}
@media(max-width:760px){.slot{grid-template-columns:1fr auto;gap:8px 14px}.slot .slot-time{grid-column:1/-1}}
.slot-time{font-family:var(--mono);font-size:13.5px;color:var(--muted);font-weight:400}
.slot-name{font-family:var(--display);font-weight:500;font-size:17px;text-transform:uppercase}
.slot-name small{display:block;font-family:var(--body);font-weight:400;font-size:12.5px;letter-spacing:0;text-transform:none;color:var(--muted);margin-top:3px}
.slot-empty{padding:44px 0;color:var(--muted);font-size:14.5px}

.tt-note{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;
  margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
.tt-note p{font-family:var(--mono);font-size:11px;letter-spacing:.08em;line-height:1.6;color:var(--muted);max-width:56ch}

/* ============ BOOKING ============ */
.booker{border:1px solid var(--line);background:var(--surface);padding:clamp(24px,3.4vw,40px)}
.steps{display:flex;margin-bottom:28px;border:1px solid var(--line)}
.step{flex:1;padding:11px 8px;text-align:center;font-family:var(--mono);font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);border-right:1px solid var(--line);transition:.25s}
.step:last-child{border-right:0}
.step.on{background:var(--fg);color:var(--bg)}
.pane{display:none}
.pane.on{display:block;animation:fade .35s ease}
@keyframes fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.opt{width:100%;text-align:left;border:1px solid var(--line);background:transparent;color:var(--fg);padding:17px 19px;margin-bottom:10px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:14px;transition:.18s;font-family:inherit}
.opt:hover{border-color:var(--fg);background:var(--surface-2)}
.opt[aria-pressed="true"]{border-color:var(--fg);background:var(--fg);color:var(--bg)}
.opt strong{font-family:var(--display);font-weight:500;font-size:16px;text-transform:uppercase;display:block}
.opt em{font-style:normal;font-size:13px;opacity:.62;display:block;margin-top:3px}
.opt .tick{font-family:var(--mono);font-size:11px;letter-spacing:.1em;opacity:0}
.opt[aria-pressed="true"] .tick{opacity:1}
.field{margin-bottom:15px}
.field label{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}
.field input,.field select,.field textarea{width:100%;background:var(--bg);border:1px solid var(--line);color:var(--fg);padding:13px 14px;font-family:var(--body);font-size:15px;border-radius:0}
.field textarea{resize:vertical;min-height:110px;line-height:1.5}
.field input:focus,.field select:focus,.field textarea:focus{outline:0;border-color:var(--fg)}
.field .err{font-family:var(--mono);font-size:10.5px;color:#B03A2E;margin-top:6px;display:none;letter-spacing:.05em}
.field.bad input,.field.bad select{border-color:#B03A2E}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:600px){.row2{grid-template-columns:1fr}}
.recap{border:1px solid var(--line);padding:15px 17px;margin-bottom:20px;font-size:13.5px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
.recap span{color:var(--muted);font-family:var(--mono);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;display:block;margin-bottom:4px}
.back{background:none;border:0;color:var(--muted);font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;padding:12px 0;margin-top:6px}
.back:hover{color:var(--fg)}
.done-mark{width:56px;height:56px;border:1.5px solid var(--fg);display:grid;place-items:center;font-size:24px;margin-bottom:20px}
.done-list{list-style:none;margin:22px 0;border-top:1px solid var(--line)}
.done-list li{padding:13px 0;border-bottom:1px solid var(--line);font-size:14px;color:var(--muted);display:flex;gap:12px}
.done-list li b{font-family:var(--mono);font-size:11px;letter-spacing:.1em;min-width:22px;opacity:.7}
.hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none}
.form-err{display:none;font-family:var(--mono);font-size:11px;letter-spacing:.04em;line-height:1.5;color:#B03A2E;border:1px solid #B03A2E;padding:11px 13px;margin-bottom:14px}
.form-err.on{display:block}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;color:var(--muted);margin:4px 0 18px;line-height:1.5}
.consent input{width:16px;height:16px;margin-top:2px;flex-shrink:0;accent-color:var(--fg)}

/* ============ MEET & GREET (first-class page) ============ */
.meet-greet{display:flex;align-items:center;gap:22px;border:1px solid var(--line);background:var(--surface);padding:22px 26px;margin-bottom:40px}
.mg-media{display:flex;flex-shrink:0}
.mg-media img{width:72px;height:72px;border-radius:50%;object-fit:cover;object-position:50% 12%;box-shadow:0 0 0 3px var(--surface),0 0 0 4px var(--line)}
.mg-media img:not(:first-child){margin-left:-18px}
.meet-greet .eyebrow{margin-bottom:8px}
.meet-greet p:not(.eyebrow){font-size:14.5px;color:var(--muted);line-height:1.6;max-width:56ch}
.meet-greet strong{color:var(--fg);font-weight:600}
@media(max-width:600px){.meet-greet{flex-direction:column;align-items:flex-start;gap:14px}}

/* ============ FOUNDERS (compact homepage strip) ============ */
.founders-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.founder-card{display:flex;gap:18px;align-items:flex-start;border:1px solid var(--line);background:var(--surface);padding:22px;text-decoration:none;color:inherit;cursor:pointer;transition:border-color .2s,background .2s}
.founder-card:hover{border-color:var(--fg);background:color-mix(in srgb,var(--surface) 80%,var(--fg) 6%)}
.founder-card img{width:88px;height:88px;flex-shrink:0;border-radius:50%;object-fit:cover;object-position:50% 12%;box-shadow:0 0 0 1px var(--line);transition:box-shadow .2s}
.founder-card:hover img{box-shadow:0 0 0 1px var(--fg)}
.founder-body h3{font-family:var(--display);font-weight:500;font-size:17px;text-transform:uppercase}
.founder-body .role{font-family:var(--mono);font-size:10.5px;letter-spacing:.15em;color:var(--muted);text-transform:uppercase;margin-top:4px}
.founder-body p:not(.role){font-size:13.5px;color:var(--muted);margin-top:11px;line-height:1.58}
.founder-body .founder-more{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--fg);margin-top:12px;text-transform:uppercase;font-weight:600}
@media(max-width:940px){.founders-row{grid-template-columns:1fr}}
/* Single founder: one wider card instead of a half-empty two-column row */
.founders-row.solo{grid-template-columns:minmax(0,760px)}
.founders-row.solo .founder-card img{width:104px;height:104px}
@media(max-width:480px){.founder-card{flex-direction:column;align-items:flex-start}.founder-card img{width:72px;height:72px}}

/* ============ TRAINER (single-coach spotlight card, e.g. Muay Thai stub) ============ */
.trainer-row{display:flex;justify-content:center}
.trainer-card{width:100%;max-width:240px;text-align:center}
.trainer-card img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:50% 15%;border:1px solid var(--line)}
.trainer-card h3{margin-top:16px;font-family:var(--display);font-weight:500;font-size:17px;text-transform:uppercase}

/* ============ COACHES ============ */
.coach{border:1px solid var(--line);background:var(--surface);overflow:hidden;scroll-margin-top:96px}
.coach-media{aspect-ratio:3/4;position:relative}
/* These are the people, not decorative texture, so they stay in colour
   instead of the grayscale-reveals-on-hover treatment .ph uses elsewhere —
   graded for a filmic look (higher contrast, pulled-back saturation, a touch
   darker) rather than flat colour, plus a soft vignette. Selector doubles up
   on .ph so it reliably beats the shared .ph img rule regardless of source
   order. */
.ph.coach-media img{filter:contrast(1.26) saturate(.74) brightness(.9) grayscale(0)}
.ph.coach-media:hover img{filter:contrast(1.26) saturate(.74) brightness(.9) grayscale(0);transform:scale(1.035)}
.coach-media::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(115% 85% at 50% 35%,transparent 48%,rgba(0,0,0,.46) 100%)}
.coach-body{padding:22px}
.coach-body h3{font-family:var(--display);font-weight:500;font-size:19px;text-transform:uppercase}
.coach-body .role{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;color:var(--muted);text-transform:uppercase;margin-top:5px}
.coach-body p{font-size:14px;color:var(--muted);margin-top:13px}
/* Single coach on the About page: photo beside the bio rather than a lone
   half-width card */
.coach-solo{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);max-width:980px}
.coach-solo .coach-body{padding:clamp(22px,3.4vw,44px);align-self:center}
.coach-solo .coach-body p:not(.role){font-size:15px;max-width:52ch}
@media(max-width:700px){.coach-solo{grid-template-columns:1fr}}

/* ============ REVIEWS ============ */
.rev{border:1px solid var(--line);padding:26px 24px;display:flex;flex-direction:column}
.rev .stars{font-size:14px;letter-spacing:2px;margin-bottom:14px}
.rev p{font-size:15px;line-height:1.65;flex:1;color:var(--muted)}
.rev footer{margin-top:18px;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);opacity:.8}
.rev blockquote{margin:0;flex:1}
.rev footer b{color:var(--fg);font-weight:600}
/* Reviews page: two even columns of full reviews */
.rev-wall{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:28px}
@media(max-width:760px){.rev-wall{grid-template-columns:1fr}}

/* Rating displays double as review prompts. Anchors, not buttons, so they
   keep native middle-click / open-in-new-tab behaviour, and each carries a
   visible affordance rather than relying on hover alone. */
a.hp-rate{text-decoration:none;display:flex;transition:border-color .2s,background .2s}
a.hp-rate:hover{border-color:var(--fg)}
.hp-rate .rate-cta{display:block;font-family:var(--mono);font-size:9px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--muted);margin-top:9px;transition:color .2s}
a.hp-rate:hover .rate-cta{color:var(--fg)}
a.count{text-decoration:none;color:inherit;transition:background .2s}
a.count:hover{background:var(--surface-2)}
a.count:hover span{color:var(--fg)}
.count-cta{display:block;font-family:var(--mono);font-size:8.5px;letter-spacing:.13em;
  text-transform:uppercase;color:var(--muted);margin-top:6px;opacity:.75;transition:opacity .2s,color .2s}
a.count:hover .count-cta{opacity:1;color:var(--fg)}

/* ============ SOCIAL ============ */
.soc{display:flex;align-items:center;gap:10px}
.soc a{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);
  color:var(--muted);transition:color .2s,border-color .2s,background .2s}
.soc a:hover{color:var(--bg);border-color:var(--fg);background:var(--fg)}
.soc svg{width:16px;height:16px;fill:currentColor;display:block}

/* Label breathes between the muted grey and the full foreground. Colour only —
   no scale or movement — so it draws the eye without the text jittering or
   nudging the layout. 2.8s is slow enough to read as deliberate rather than
   an alert. Hovering the block settles it to full contrast and stops the
   loop, so it is calm at the moment of interaction. */
.soc-label{display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--muted);margin-bottom:10px;line-height:1;
  animation:socbreathe 2.8s ease-in-out infinite}
@keyframes socbreathe{0%,100%{color:var(--muted)}50%{color:var(--fg)}}
.soc-wrap:hover .soc-label{animation-name:none;color:var(--fg)}
/* The global reduced-motion rule only forces duration; kill the name outright
   so the label holds a stable colour instead of freezing mid-cycle. */
@media(prefers-reduced-motion:reduce){
  .soc-label{animation-name:none;color:var(--muted)}
}

/* Hero variant sits on the video, so it needs the same veiled panel treatment
   as the cards beside it rather than floating unbacked on the footage. */
.hero-soc{margin-top:14px}
.hero-soc .soc{gap:8px}
.hero-soc .soc-label{padding:5px 9px;display:inline-block;margin-bottom:9px;
  background:var(--bg);background:color-mix(in srgb,var(--bg) 84%,transparent);
  -webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}
.hero-soc a{background:var(--bg);background:color-mix(in srgb,var(--bg) 84%,transparent);
  -webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}
.hero-soc a:hover{background:var(--fg)}
.foot-soc{margin-top:22px}

/* Hero phone/email — same veiled-panel treatment as the panels beside it so
   it reads clearly over the video, but set in mono at real weight since this
   is the number/address people actually act on, not a supporting label. */
.hero-contact{margin-top:14px;display:flex;flex-direction:column;gap:8px}
.hc-label{font-family:var(--mono);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--muted);padding:5px 9px;display:inline-block;width:fit-content;
  background:var(--bg);background:color-mix(in srgb,var(--bg) 84%,transparent);
  -webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}
.hero-contact a{display:block;padding:11px 14px;border:1px solid var(--line);
  background:var(--bg);background:color-mix(in srgb,var(--bg) 84%,transparent);
  -webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);
  font-family:var(--mono);font-size:13px;font-weight:600;letter-spacing:.01em;
  color:var(--fg);text-decoration:none;word-break:break-word;
  transition:background .2s,color .2s,border-color .2s}
.hero-contact a:hover{background:var(--fg);color:var(--bg);border-color:var(--fg)}

/* ============ GOOGLE REVIEWS ============ */
.grev{border:1px solid var(--line);background:var(--surface);padding:clamp(20px,2.6vw,28px);
  display:flex;align-items:center;justify-content:space-between;gap:clamp(18px,3vw,32px);flex-wrap:wrap;margin-top:34px}
.grev-l{display:flex;align-items:center;gap:18px;min-width:0}
/* Google "G" drawn in currentColor so the block stays inside the brand
   palette. Swap .g-mark for .g-mark.full to restore Google's four colours. */
.g-mark{width:34px;height:34px;flex-shrink:0;fill:currentColor}
.g-mark.full .gb{fill:#4285F4}.g-mark.full .gg{fill:#34A853}
.g-mark.full .gy{fill:#FBBC05}.g-mark.full .gr{fill:#EA4335}
.grev-score{display:flex;align-items:baseline;gap:11px}
.grev-score b{font-family:var(--display);font-weight:500;font-size:32px;line-height:1;letter-spacing:-.02em}
.grev-score .stars{font-size:14px;letter-spacing:2px;margin:0}
.grev-sub{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:7px}
.grev-r{display:flex;gap:10px;flex-wrap:wrap;flex-shrink:0}
@media(max-width:620px){.grev{flex-direction:column;align-items:stretch}
  .grev-r{width:100%}.grev-r .btn{flex:1}}

/* ============ LEAD ============ */
.lead{border:1px solid var(--line);background:var(--surface);padding:clamp(26px,3.6vw,44px)}
.lead-in{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,54px);align-items:center}
@media(max-width:900px){.lead-in{grid-template-columns:1fr}}
.lead-ok{display:none;border:1px solid var(--fg);padding:24px}
.lead-ok.on{display:block;animation:fade .35s ease}
.lead-form.off,.contact-card form.off{display:none}

/* ============ VISIT ============ */
.areas{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}
.area{font-family:var(--mono);font-size:11px;letter-spacing:.08em;padding:7px 12px;border:1px solid var(--line);color:var(--muted)}
.info-list{list-style:none;margin-top:8px}
.info-list li{padding:15px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:96px 1fr;gap:14px;font-size:15px;align-items:baseline}
.info-list li b{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:400}
.info-list a{text-decoration:none;border-bottom:1px solid var(--line)}
.contact-card{border:1px solid var(--line);background:var(--surface);padding:clamp(26px,3.6vw,44px);max-width:640px;margin:0 auto}

/* ============ FINAL / FOOTER ============ */
.final{text-align:center}
.final .h-xl{margin:18px auto 22px;max-width:14ch}
.final .lede{margin-left:auto;margin-right:auto}
.price-note{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;color:var(--muted);text-transform:uppercase;margin-top:22px}
footer.site{border-top:1px solid var(--line);padding:44px 0 110px;background:var(--bg);color:var(--fg)}
.foot-brand{gap:16px}
.foot-col a.foot-brand{color:var(--brand-grey)}
.foot-brand .brand-mark{width:47px;height:37px}
.foot-brand .wordmark{width:clamp(196px,26vw,260px)}
.foot-col p{font-size:12.5px;color:var(--muted);margin-top:14px;line-height:1.6;max-width:34ch}
.foot-col p.foot-contact{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:8px;max-width:none}
.foot-contact a{font-family:var(--mono);font-size:13.5px;font-weight:600;color:var(--fg);
  text-decoration:none;border-bottom:1px solid var(--line);transition:border-color .2s,opacity .2s}
.foot-contact a:hover{border-color:var(--fg)}

/* ============ DOCK ============ */
.dock{position:fixed;left:0;right:0;bottom:0;z-index:80;background:var(--bg);background:color-mix(in srgb,var(--bg) 95%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:11px var(--gut);display:none;gap:12px;align-items:center}
.dock p{font-family:var(--display);font-weight:500;font-size:12px;text-transform:uppercase;line-height:1.25}
.dock p small{display:block;font-family:var(--body);font-weight:400;font-size:11px;text-transform:none;color:var(--muted)}
.dock .btn{margin-left:auto;flex-shrink:0}
@media(max-width:1000px){.dock{display:flex}}


/* ============ PHOTOS ============ */
.ph{overflow:hidden;background:var(--surface-2);position:relative}
.ph img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(1) contrast(1.05);transition:filter .55s ease,transform .7s cubic-bezier(.16,1,.3,1)}
.ph:hover img{filter:grayscale(0) contrast(1);transform:scale(1.035)}

.photo-slot{display:grid;place-items:center;gap:10px;background:repeating-linear-gradient(45deg,var(--surface) 0 14px,var(--surface-2) 14px 28px);text-align:center;padding:20px}
.photo-slot svg{width:44px;height:44px;color:var(--fg);opacity:.3}
.photo-slot span{font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}

/* hero media */
.hero-media{position:relative;will-change:transform}
.hero-photo{aspect-ratio:4/5;border:1px solid var(--line)}
.hero-rate{position:absolute;left:-20px;bottom:-20px;background:var(--bg);border:1px solid var(--line);padding:16px 22px;transition:background .45s ease}
@media(max-width:900px){.hero-media{margin-top:34px;max-width:420px}.hero-rate{left:auto;right:-12px;bottom:-16px;padding:13px 18px}}

/* program media */
.prog-media img{object-position:center 40%}
.prog-media{aspect-ratio:4/3;margin:-30px -26px 20px;border-bottom:1px solid var(--line)}

/* mosaic — fixed tile height keeps every row perfectly aligned */
.mosaic{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}
.fig{margin:0;min-width:0}
.fig .ph{border:1px solid var(--line);height:clamp(260px,32vw,460px)}
.fig figcaption{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:11px;line-height:1.5}
.m-tall{grid-column:span 4}
.m-wide{grid-column:span 8}
.m-half{grid-column:span 6}
/* Two equal photos side by side (e.g. Kids Jiu Jitsu page) — same 4:3 box so
   they line up exactly regardless of source size */
.photo-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.photo-pair .fig .ph{height:auto;aspect-ratio:4/3}
.photo-pair .fig .ph img{object-position:center 50%}
@media(max-width:700px){.photo-pair{grid-template-columns:1fr;gap:22px}}
/* Competition page gallery — equal 3:4 tiles (photos or video clips) */
.comp-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.comp-grid .fig .ph{height:auto;aspect-ratio:3/4}
.comp-grid .fig .ph video{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:940px){.comp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.comp-grid{gap:12px}}
.comp-story .h-lg{margin:12px 0 18px}
.comp-story p:not(.eyebrow){color:var(--muted);font-size:15.5px;line-height:1.65;max-width:52ch}
.comp-story p + p{margin-top:12px}
.comp-story strong{color:var(--fg);font-weight:600}
/* BJJ page: Gi / No-Gi blocks — copy left, 4:3 photo grid right */
.style-block{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(24px,3.5vw,48px);align-items:start;padding-top:clamp(28px,3.5vw,40px);border-top:1px solid var(--line)}
.style-block + .style-block{margin-top:clamp(40px,5vw,64px)}
.style-copy h3{font-family:var(--display);font-weight:500;font-size:clamp(22px,2.4vw,28px);text-transform:uppercase;letter-spacing:-.01em;line-height:1.1;margin:10px 0 12px}
.style-copy p:not(.eyebrow){color:var(--muted);font-size:15px;line-height:1.65;max-width:42ch}
.style-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.style-photos .fig .ph{height:auto;aspect-ratio:4/3}
@media(max-width:900px){.style-block{grid-template-columns:1fr}}
@media(max-width:560px){.style-photos{grid-template-columns:1fr;gap:20px}}
/* ============ SHOP ============ */
.shop-note{border:1px solid var(--line);background:var(--surface);padding:16px 20px;font-size:14px;color:var(--muted);margin-bottom:28px}
.shop-note strong{color:var(--fg);font-weight:600}
.shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
@media(max-width:940px){.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.shop-card{display:flex;flex-direction:column;border:1px solid var(--line);background:var(--surface);text-decoration:none;color:inherit;transition:border-color .2s,transform .25s}
.shop-card:hover{border-color:var(--fg);transform:translateY(-2px)}
.shop-media{position:relative;aspect-ratio:1/1;background:var(--surface-2);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:center;overflow:hidden}
.shop-media img{width:100%;height:100%;object-fit:cover;display:block}
.shop-media .mark{width:34%;height:auto;fill:currentColor;color:var(--fg);opacity:.14}
.shop-kind{position:absolute;left:14px;bottom:12px;font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.shop-badge{position:absolute;top:12px;right:12px;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;border:1px solid var(--line);background:var(--bg);color:var(--muted);padding:5px 8px}
.shop-body{padding:20px 20px 18px;display:flex;flex-direction:column;flex:1}
.shop-body h3{font-family:var(--display);font-weight:500;font-size:18px;text-transform:uppercase}
.shop-body p{font-size:14px;color:var(--muted);margin-top:8px;flex:1}
.shop-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}
.shop-price{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.shop-go{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;font-weight:600;color:var(--fg)}
.shop-cta{margin-top:clamp(36px,4.5vw,56px);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid var(--line);padding-top:28px}
.shop-cta p{color:var(--muted);font-size:14.5px;max-width:52ch}
@media(max-width:560px){.shop-grid{gap:12px}.shop-body{padding:14px 14px 12px}.shop-body h3{font-size:15px}.shop-body p{font-size:13px}
 .shop-foot{flex-direction:column;align-items:flex-start;gap:6px}.shop-badge{top:8px;right:8px;padding:4px 6px}.shop-kind{left:10px;bottom:8px}}
.m-half .ph img{object-position:center 22%}
.m-tall .ph img{object-position:center 26%}
.m-wide .ph img{object-position:center 32%}
@media(max-width:900px){
  .mosaic{grid-template-columns:1fr;gap:22px}
  .m-tall,.m-wide,.m-half{grid-column:1/-1}
  .fig .ph{height:auto;aspect-ratio:4/3}
}
/* ---- Liquid glass gallery (About "Inside the room") ----
   site.js draws each photo onto a WebGL canvas (.glass-cv) layered over the
   <img>; once it's ready the .ph gets .gl-on and the <img> is hidden (it
   stays in the page for search engines and screen readers). Without WebGL
   the normal image shows. */
.mosaic-glass{counter-reset:fig}
.mosaic-glass .ph .glass-cv{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none}
.mosaic-glass .ph.gl-on img{opacity:0}
.mosaic-glass .ph.gl-on{cursor:none}
.mosaic-glass .ph.gl-on:hover img{transform:none}
.mosaic-glass figcaption::before{counter-increment:fig;content:counter(fig,decimal-leading-zero) " / 08";display:inline-block;margin-right:12px;color:var(--fg);opacity:.55}


/* ============ FILM REVEAL (portrait program videos) ============
   Markup:
   <figure class="film-reveal">
     <div class="fr-frame"><video muted loop playsinline preload="metadata" poster="..."><source src="..." type="video/mp4"></video><span class="fr-grain" aria-hidden="true"></span></div>
     <figcaption class="fr-cap">Caption</figcaption>
   </figure>
   Sequence (site.js adds the classes when it scrolls into view):
   thin bright slit -> opens to full 9:16 with a horizontal wobble + colour
   fringe -> grain flares then fades -> video plays -> caption slides in. */
.film-reveal{margin:0;min-width:0}
.fr-frame{position:relative;aspect-ratio:9/16;overflow:hidden;background:#0c0c0c;border:1px solid var(--line);transform-origin:50% 50%}
.fr-frame video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.fr-grain{position:absolute;inset:-20%;pointer-events:none;opacity:0;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1.4 -.2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px 180px}
.fr-cap{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:12px;line-height:1.5}
html.js .film-reveal .fr-frame{transform:scaleY(.035) scaleX(1.14);filter:brightness(2.2) contrast(1.3)}
html.js .film-reveal .fr-cap{opacity:0;transform:translateY(14px);clip-path:inset(0 0 100% 0)}
html.js .film-reveal.is-revealing .fr-frame{animation:frOpen 1.35s cubic-bezier(.7,0,.2,1) var(--frd,0ms) both}
html.js .film-reveal.is-revealing .fr-grain{animation:frGrain 2s ease var(--frd,0ms) both,frGrainShift .24s steps(4) infinite}
html.js .film-reveal.is-revealed .fr-frame{transform:none;filter:none;animation:none}
html.js .film-reveal.is-revealed .fr-cap{opacity:1;transform:none;clip-path:inset(0 0 0 0);
  transition:opacity .6s ease .15s,transform .7s cubic-bezier(.16,1,.3,1) .15s,clip-path .7s cubic-bezier(.16,1,.3,1) .15s}
@keyframes frOpen{
  0%  {transform:scaleY(.035) scaleX(1.14);filter:brightness(2.2) contrast(1.3)}
  28% {transform:scaleY(.07) scaleX(1.1);filter:brightness(1.9) contrast(1.25)}
  68% {transform:scaleY(1.02) scaleX(.982) skewX(-1.4deg);filter:brightness(1.12) drop-shadow(4px 0 0 rgba(255,40,40,.45)) drop-shadow(-4px 0 0 rgba(40,170,255,.45))}
  80% {transform:scaleY(.994) scaleX(1.014) skewX(.9deg) translateX(-4px);filter:brightness(.92) drop-shadow(-3px 0 0 rgba(255,40,40,.35)) drop-shadow(3px 0 0 rgba(40,170,255,.35))}
  90% {transform:scaleY(1) scaleX(.996) skewX(-.35deg) translateX(2px);filter:brightness(1.04)}
  100%{transform:none;filter:none}
}
@keyframes frGrain{0%{opacity:0}30%{opacity:.6}65%{opacity:.4}100%{opacity:0}}
@keyframes frGrainShift{0%{transform:translate(0,0)}25%{transform:translate(-7%,4%)}50%{transform:translate(5%,-6%)}75%{transform:translate(-3%,-8%)}100%{transform:translate(0,0)}}
@media(prefers-reduced-motion:reduce){
  html.js .film-reveal .fr-frame,html.js .film-reveal .fr-cap{transform:none!important;filter:none!important;opacity:1!important;clip-path:none!important;animation:none!important}
}
/* Layout A: one tall video beside a short story */
.film-feature{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center}
.film-feature .ff-copy .h-lg{margin:12px 0 18px}
.film-feature .ff-copy p:not(.eyebrow){color:var(--muted);font-size:15.5px;line-height:1.65;max-width:50ch}
@media(max-width:800px){.film-feature{grid-template-columns:1fr}.film-feature .film-reveal{max-width:420px}}
/* Layout B: a row of 2-3 tall clips (swipeable on phones) */
.film-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.film-row.two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:820px}
.film-row.six{row-gap:30px}
.film-row.five{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.film-row.five .fr-cap{font-size:10px;letter-spacing:.12em}
@media(max-width:900px){.film-row.five{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin:0 calc(var(--gut)*-1);padding:0 var(--gut) 8px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .film-row.five::-webkit-scrollbar{display:none}
  .film-row.five .film-reveal{flex:0 0 min(42%,300px);scroll-snap-align:center}
  .film-row.five + .film-hint{display:block}}
@media(max-width:600px){.film-row.five .film-reveal{flex:0 0 min(74%,300px)}}
@media(max-width:600px){.film-row,.film-row.two{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin:0 calc(var(--gut)*-1);padding:0 var(--gut) 8px;max-width:none;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .film-row::-webkit-scrollbar{display:none}
  .film-row .film-reveal{flex:0 0 min(74%,300px);scroll-snap-align:center}
  .film-row + .film-hint{display:block}}
.film-hint{display:none;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:10px}

/* ============ SPOTLIGHT (always-dark feature band with one tall video) ============ */
.spot{--bg:#0d0d0d;--fg:#EDE9DE;--muted:#8a877f;--line:rgba(237,233,222,.18);--surface:#171717;--surface-2:#1f1f1f;--veil:237,233,222;
  background:var(--bg);color:var(--fg);border-top:1px solid var(--line);padding:clamp(72px,10vw,130px) 0;overflow:hidden}
.spot-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,400px);gap:clamp(36px,7vw,110px);align-items:center}
.spot-h{font-family:var(--display);font-weight:500;text-transform:uppercase;letter-spacing:-.035em;line-height:.9;
  font-size:clamp(46px,7.4vw,112px);margin:16px 0 26px}
.spot-copy p:not(.eyebrow){color:var(--muted);font-size:16px;line-height:1.65;max-width:44ch}
.spot-copy .spot-note{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin:18px 0 28px}
.spot .btn{background:var(--fg);color:var(--bg);border-color:var(--fg)}
.spot .btn:hover{background:transparent;color:var(--fg)}
.spot-film .fr-frame{box-shadow:0 40px 80px -30px rgba(0,0,0,.8)}
@media(max-width:800px){.spot-grid{grid-template-columns:1fr}.spot-film{max-width:400px}}

/* ============ GRAIN ============ */
.grain{position:fixed;inset:0;z-index:250;pointer-events:none;opacity:.05;mix-blend-mode:overlay;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
 background-size:220px 220px}
@media(prefers-reduced-motion:reduce){.grain{opacity:.035}}

/* ============ BELT RAIL (scroll progress) ============ */
.belt{position:fixed;top:0;left:0;right:0;height:3px;z-index:120;display:flex;pointer-events:none}
.belt b{flex:1;display:block;opacity:.22;transition:opacity .3s}
.belt .b1{background:#E9E5D9}.belt .b2{background:#B5B2A9}.belt .b3{background:#807E78}
.belt .b4{background:#4C4B48}.belt .b5{background:#171717}
html[data-theme="light"] .belt .b1{background:#171717}html[data-theme="light"] .belt .b2{background:#4C4B48}
html[data-theme="light"] .belt .b3{background:#807E78}html[data-theme="light"] .belt .b4{background:#B5B2A9}
html[data-theme="light"] .belt .b5{background:#E9E5D9}
.belt-on{position:absolute;inset:0;display:flex;clip-path:inset(0 100% 0 0)}
.belt-on b{opacity:1}

/* ============ EXIT-INTENT TRIAL POPUP ============
   Desktop: fires once when the cursor leaves toward the top of the window
   (tab bar / back button / close button). Touch devices have no cursor to
   read, so there we treat the first back-button press as the same signal —
   see the JS. Either way it only shows once per visit (sessionStorage) —
   it resets and can show again the next time the visitor comes back,
   whether they clicked through or dismissed it. */
.exit-promo{position:fixed;inset:0;z-index:400;display:flex;align-items:center;justify-content:center;
  padding:20px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s ease}
.exit-promo.show{opacity:1;visibility:visible;pointer-events:auto}
.exit-promo-scrim{position:absolute;inset:0;background:rgba(0,0,0,.62);
  -webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.exit-promo-card{position:relative;width:100%;max-width:430px;border:1px solid var(--line);
  background:var(--surface);padding:36px 32px 32px;
  transform:translateY(16px) scale(.98);transition:transform .4s cubic-bezier(.16,1,.3,1)}
.exit-promo.show .exit-promo-card{transform:translateY(0) scale(1)}
.exit-promo-card .h-md{margin:12px 0 14px}
.exit-promo-card p:not(.eyebrow){font-size:14.5px;line-height:1.5;color:var(--muted);margin-bottom:24px}
.exit-promo-close{position:absolute;top:14px;right:14px;width:36px;height:36px;display:grid;place-items:center;
  border:1px solid var(--line);background:transparent;color:var(--fg);cursor:pointer;flex-shrink:0;transition:border-color .2s}
.exit-promo-close:hover{border-color:var(--fg)}
.exit-promo-close svg{width:14px;height:14px}
@media(max-width:520px){.exit-promo-card{padding:30px 22px 24px}}
@media(prefers-reduced-motion:reduce){.exit-promo-card{transition:none}}

/* ============ HERO VIDEO ============ */
.hero-vid{position:absolute;inset:0;overflow:hidden}
/* Landscape 1920x1080 colour-graded loop (assets/video/hero.mp4), centred. */
.hero-vid video{width:100%;height:100%;object-fit:cover;object-position:50% 50%;filter:contrast(1.04) saturate(1.05) brightness(.97);will-change:transform}
.hero-scrim{position:absolute;inset:0;background:
  linear-gradient(90deg,var(--bg) 0%,var(--bg) 34%,rgba(0,0,0,0) 78%),
  linear-gradient(180deg,var(--bg) 0%,rgba(0,0,0,0) 26%,rgba(0,0,0,0) 62%,var(--bg) 100%)}
html[data-theme="light"] .hero-vid video{filter:contrast(1.01) saturate(1.02) brightness(1.06)}
@media(max-width:900px){
 .hero-vid video{position:absolute;left:0;bottom:0;height:62%;object-position:50% 50%}
 .hero-scrim{background:linear-gradient(180deg,var(--bg) 0%,var(--bg) 46%,rgba(0,0,0,.15) 72%,var(--bg) 100%)}
}
.hero-grid{align-items:center}
.hero-panel{border:1px solid var(--line);background:var(--bg);background:color-mix(in srgb,var(--bg) 84%,transparent);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);padding:22px 24px}
.hero-panel + .hero-panel{margin-top:12px}
.hp-rate{display:flex;align-items:flex-end;gap:16px}
.hp-rate .rating-n{font-size:44px}
.hp-rate p{font-size:11px;font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);line-height:1.5}

/* next class */
.nc-label{font-family:var(--mono);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:8px}
.nc-dot{width:6px;height:6px;border-radius:50%;background:currentColor;animation:pulse 2.2s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}
.nc-when{font-family:var(--display);font-weight:500;font-size:23px;text-transform:uppercase;letter-spacing:-.02em;margin:9px 0 3px}
.nc-what{font-size:13px;color:var(--muted)}
.nc-go{display:inline-block;margin-top:13px;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid var(--line);padding-bottom:3px;text-decoration:none}
.nc-go:hover{border-bottom-color:var(--fg)}

/* ============ COUNTERS ============ */
.counts{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
@media(max-width:760px){.counts{grid-template-columns:repeat(2,1fr)}}
.count{background:var(--bg);padding:30px 22px;text-align:center}
.count b{display:block;font-family:var(--display);font-weight:500;font-size:clamp(34px,5vw,54px);line-height:1;letter-spacing:-.03em}
.count span{display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-top:10px}

/* ============ FAQ ============ */
.faq{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;padding:22px 44px 22px 0;position:relative;font-family:var(--display);font-weight:500;font-size:clamp(15px,1.9vw,19px);text-transform:uppercase;letter-spacing:-.01em}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:10px;top:50%;width:13px;height:1.5px;background:currentColor;transition:transform .3s}
.faq summary::before{content:"";position:absolute;right:10px;top:50%;width:13px;height:1.5px;background:currentColor;transform:rotate(90deg);transition:transform .3s,opacity .3s}
.faq details[open] summary::before{transform:rotate(0);opacity:0}
.faq details p{padding:0 60px 24px 0;font-size:15px;color:var(--muted);max-width:66ch;margin:0}

/* ============ DRIVE TIMES ============ */
.drive{border:1px solid var(--line);background:var(--surface)}
.drive-hd{padding:16px 20px;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);display:flex;justify-content:space-between;gap:12px}
.drive ul{list-style:none}
.drive li{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:12px 20px;border-bottom:1px solid var(--line);font-size:14.5px}
.drive li:last-child{border-bottom:0}
.drive li i{font-style:normal;font-family:var(--mono);font-size:12px;color:var(--muted);white-space:nowrap}
.drive li em{font-style:normal;font-family:var(--mono);font-size:8.5px;letter-spacing:.16em;color:var(--muted);opacity:.7;margin-left:8px}

/* ============ REVEAL ============ */
.rv{opacity:1;transform:none;transition:opacity .65s ease,transform .65s ease}
html.js .rv{opacity:0;transform:translateY(20px)}
html.js .rv.in{opacity:1;transform:none}
.rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rv,.stage{opacity:1!important;transform:none!important}}

/* ============ MULTI-PAGE: SOLID HEADER (inner pages, no video hero behind it) ============ */
header.solid{background:var(--bg);background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom-color:var(--line)}

/* ============ MULTI-PAGE: PAGE HEADER BAND (replaces the video hero on inner pages) ============ */
.page-head{padding:calc(72px + clamp(56px,8vw,96px)) 0 clamp(48px,7vw,80px);border-bottom:1px solid var(--line)}
.page-head .eyebrow{margin-bottom:14px}
.page-head .h-lg{margin-bottom:18px}
.page-head .lede{max-width:62ch}
.page-head .crumb{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:22px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.page-head .crumb a{color:var(--muted);text-decoration:none}
.page-head .crumb a:hover{color:var(--fg)}
.page-head .crumb span{opacity:.5}
.page-head .head-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}

/* ============ MULTI-PAGE: PROGRAMS DROPDOWN ============ */
.has-drop{position:relative}
.has-drop > a{display:flex;align-items:center;gap:5px}
.has-drop > a::after{content:"";width:7px;height:7px;border-right:1.4px solid currentColor;border-bottom:1.4px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s}
.drop-panel{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(4px);min-width:230px;
  background:var(--bg);box-shadow:0 18px 40px rgba(0,0,0,.18);
  border:1px solid var(--line);padding:8px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,transform .18s ease}
.has-drop:hover .drop-panel,.has-drop:focus-within .drop-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.has-drop:hover > a::after,.has-drop:focus-within > a::after{transform:rotate(225deg) translateY(2px)}
.drop-panel a{display:block;padding:11px 14px;font-size:13px;color:var(--fg);text-decoration:none;transition:background .15s}
.drop-panel a:hover{background:var(--surface)}
.drop-panel a small{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:3px}

/* ============ MULTI-PAGE: MOBILE MENU ============ */
.menu-btn{display:none;width:38px;height:38px;border:1px solid var(--line);background:transparent;color:var(--fg);cursor:pointer;flex-shrink:0;place-items:center;transition:border-color .2s}
.menu-btn:hover{border-color:var(--fg)}
.menu-btn span{display:block;width:16px;height:1.4px;background:currentColor;position:relative;transition:background .2s}
.menu-btn span::before,.menu-btn span::after{content:"";position:absolute;left:0;width:16px;height:1.4px;background:currentColor;transition:transform .25s ease,top .25s ease}
.menu-btn span::before{top:-5px}
.menu-btn span::after{top:5px}
.menu-btn[aria-expanded="true"] span{background:transparent}
.menu-btn[aria-expanded="true"] span::before{top:0;transform:rotate(45deg)}
.menu-btn[aria-expanded="true"] span::after{top:0;transform:rotate(-45deg)}
@media(max-width:1180px){
  .menu-btn{display:grid}
}
html.js body.menu-open{overflow:hidden;height:100vh;height:100svh}
.mobile-menu{position:fixed;inset:72px 0 0 0;z-index:85;background:var(--bg);
  transform:translateY(-8px);opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .22s ease,transform .22s ease,visibility .22s;
  overflow-y:auto;-webkit-overflow-scrolling:touch}
body.menu-open .mobile-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.mobile-menu nav{display:flex;flex-direction:column;padding:8px var(--gut) 28px}
.mobile-menu nav a:not(.btn){padding:17px 2px;border-bottom:1px solid var(--line);font-family:var(--display);font-weight:500;font-size:19px;text-transform:uppercase;letter-spacing:-.01em;color:var(--fg);text-decoration:none}
.mobile-menu .mm-sub{display:flex;flex-direction:column;padding-left:14px}
.mobile-menu .mm-sub a{font-family:var(--body);font-weight:400;font-size:14px;text-transform:none;padding:13px 2px;color:var(--muted)}
.mobile-menu .mm-cta{margin:24px 0 0}
.mobile-menu .mm-cta .btn{width:100%;justify-content:center}
@media(min-width:1181px){.mobile-menu{display:none}}

/* ============ MULTI-PAGE: FOOTER GRID ============ */
.foot-grid{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:32px 24px;align-items:start}
.foot-col h4{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}
.foot-col ul{list-style:none;display:flex;flex-direction:column;gap:11px}
.foot-col a{font-size:13px;color:var(--muted);text-decoration:none}
.foot-col a:hover{color:var(--fg)}
.foot-legal{border-top:1px solid var(--line);margin-top:40px;padding-top:22px;display:flex;flex-wrap:wrap;gap:16px 24px;justify-content:space-between;align-items:center}
.foot-legal p{font-size:11.5px;color:var(--muted);margin:0}
.foot-legal nav{display:flex;gap:18px;flex-wrap:wrap}
.foot-legal nav a{font-size:11.5px;color:var(--muted);text-decoration:none}
.foot-legal nav a:hover{color:var(--fg)}
@media(max-width:900px){.foot-grid{grid-template-columns:1fr 1fr;gap:32px 20px}}
/* Below 600px there's no room to also give the brand column its own half
   width (the wordmark logo needs ~196px minimum) — so the brand block
   spans the full row on its own, and the four link columns pack into a
   2x2 grid underneath instead of stacking one full-width block per
   column. Cuts the footer's mobile scroll height roughly in half versus
   five stacked full-width blocks, with no change above 600px. */
@media(max-width:600px){
  .foot-grid{grid-template-columns:1fr 1fr;gap:28px 20px 30px}
  .foot-grid .foot-col:first-child{grid-column:1/-1}
}

/* ============ MULTI-PAGE: COMING SOON NOTICE ============ */
.soon{border:1px solid var(--line);background:var(--surface);padding:22px 24px;font-size:14px;color:var(--muted);margin:28px 0}
.soon b{color:var(--fg)}

/* ============ MULTI-PAGE: OBJECTION CARDS (Adults/Beginners) ============ */
.objs{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.obj{background:var(--bg);padding:26px 26px 28px}
.obj p.q{font-family:var(--display);font-weight:500;font-size:16.5px;text-transform:uppercase;letter-spacing:-.01em;margin-bottom:10px}
.obj p.a{font-size:14px;color:var(--muted)}
@media(max-width:760px){.objs{grid-template-columns:1fr}}


/* ============ PHOTO TRIPTYCH (portrait | landscape | portrait, equal heights) ============ */
.photo-tri{display:flex;gap:16px;align-items:flex-start}
.photo-tri .pt-port{flex:2 1 0}
.photo-tri .pt-land{flex:4.5 1 0}
.photo-tri .fig .ph{height:auto}
.photo-tri .pt-port .ph{aspect-ratio:2/3}
.photo-tri .pt-land .ph{aspect-ratio:3/2}
.photo-tri .fig .ph img{object-position:center 40%}
@media(max-width:700px){
  .photo-tri{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px}
  .photo-tri .pt-land{grid-column:1/-1;order:1}
}

/* ============ LOADING POLISH ============ */
/* <picture> wrappers are layout-transparent so every existing .ph img rule still applies */
picture{display:contents}
/* photos fade in once decoded, over the .ph placeholder tone */
html.js .ph img{opacity:0;transition:opacity .5s ease,filter .55s ease,transform .7s cubic-bezier(.16,1,.3,1)}
html.js .ph img.is-loaded{opacity:1}
html.js .mosaic-glass .ph.gl-on img{opacity:0}
@media(prefers-reduced-motion:reduce){html.js .ph img{transition:none}}
/* the splash only plays on the first visit to the homepage in a session */
html.intro-seen #intro{display:none!important}
/* phones: light version of the "Inside the room" gallery (no WebGL) */
.mosaic-glass.glass-lite .ph.is-mid img{filter:grayscale(0) contrast(1)}

/* ============ MOBILE POLISH ============
   Minimum readable size for the small mono labels, and comfortable tap
   areas for small text links, on phone widths. */
@media(max-width:600px){
  .tl-time small,.soc-label,.hc-label,.count span{font-size:10.5px}
  .count-cta,.hp-rate .rate-cta{font-size:10px}
  .drive li em{font-size:9.5px}
  .brand-txt small{font-size:9px}
  .foot-legal nav{gap:6px 20px}
  .foot-legal nav a{display:inline-block;padding:10px 0;font-size:12.5px}
  .nc-go{padding:8px 0 5px}
  /* bigger tap areas: footer links, breadcrumb, contact links */
  .foot-col ul{gap:0}
  .foot-col ul a{display:inline-block;padding:9px 0;font-size:14px}
  .foot-col p.foot-contact a{display:inline-block;padding:6px 0}
  .page-head .crumb a{display:inline-block;padding:12px 8px 12px 0;margin:-12px -8px -12px 0}
  .iv-skip{font-size:10.5px;padding:12px 20px}
  .nc-label{font-size:10px}
  .drive li em{font-size:10px}
  dd a[href^="tel:"],dd a[href^="mailto:"],.hc-row a[href^="tel:"]{display:inline-block;padding:8px 0;margin:-8px 0}
}
/* Plain-text weekly schedule for search engines and AI crawlers that don't run
   JavaScript. Visitors with JS see the interactive timetable instead. */
.sched-static h3{font-family:var(--display);font-weight:500;text-transform:uppercase;font-size:16px;margin:22px 0 8px}
.sched-static ul{list-style:none;font-size:14.5px;color:var(--muted)}
.sched-static li{padding:6px 0;border-bottom:1px solid var(--line)}
html.js .sched-static{display:none}
