:root{
  --bg:#0e0f0d; --surface:#171916; --surface2:#20231f; --text:#f2f0ea; --muted:#a7aaa4;
  --red:#c5362d; --red2:#ff4d3e; --steel:#777e7a; --warm:#d6c7a1; --line:rgba(242,240,234,.16);
  --max:1180px; --ease:cubic-bezier(.2,.75,.2,1);
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Manrope,system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.45;overflow-x:hidden}
a{color:inherit;text-decoration:none} img{max-width:100%;display:block} button,select{font:inherit}.skip-link{position:absolute;left:-999px;top:1rem;background:var(--text);color:#111;padding:.75rem;z-index:999}.skip-link:focus{left:1rem}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 70% 12%,rgba(197,54,45,.18),transparent 32%),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px);background-size:auto,72px 72px,72px 72px;opacity:.8;z-index:-2}.site-header{position:fixed;top:0;left:0;right:0;height:78px;display:flex;align-items:center;gap:24px;padding:0 clamp(18px,4vw,48px);z-index:50;background:linear-gradient(180deg,rgba(14,15,13,.86),rgba(14,15,13,.42));backdrop-filter:blur(18px);border-bottom:1px solid rgba(242,240,234,.09)}
.brand{display:flex;align-items:center;gap:12px;min-width:max-content}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(214,199,161,.42);background:linear-gradient(135deg,rgba(214,199,161,.14),rgba(197,54,45,.14));clip-path:polygon(12% 0,100% 0,88% 100%,0 100%)}.brand-mark svg{width:27px;fill:var(--text)}.brand-text{display:flex;gap:3px;letter-spacing:.08em;text-transform:uppercase}.brand-text b{font-weight:900}.brand-text em{font-style:normal;color:var(--warm)}
.desktop-nav{display:flex;gap:28px;margin-left:auto;color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.12em}.desktop-nav a:hover{color:var(--text)}.header-cta{border:1px solid rgba(214,199,161,.34);padding:12px 18px;text-transform:uppercase;font-size:12px;letter-spacing:.13em;background:rgba(242,240,234,.08);color:var(--text)}.menu-btn{display:none;background:none;border:0;width:44px;height:44px;position:relative}.menu-btn span{display:block;height:2px;background:var(--text);margin:7px 0}.mobile-panel{position:fixed;z-index:49;top:78px;left:0;right:0;padding:22px;background:rgba(14,15,13,.98);border-bottom:1px solid var(--line)}.mobile-panel a{display:block;padding:14px 0;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}.mobile-panel-cta{color:var(--text)!important;border-top:1px solid var(--line);margin-top:8px}
.hero{min-height:100svh;position:relative;display:grid;align-items:end;padding:130px clamp(20px,5vw,64px) 78px;overflow:hidden}.hero-media{position:absolute;inset:0;z-index:-3}.hero-video,.hero-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.94) contrast(1.06);transform:scale(1.025)}.hero-video{opacity:0;transition:opacity .7s var(--ease)}.hero-video.is-ready{opacity:1}.hero-video.is-ready+.hero-fallback{opacity:0}.hero-fallback{animation:kenburns 16s var(--ease) forwards}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,15,13,.92),rgba(14,15,13,.55) 42%,rgba(14,15,13,.2)),linear-gradient(0deg,rgba(14,15,13,1),transparent 44%,rgba(14,15,13,.62))}.measurement-grid{position:absolute;inset:0;background:linear-gradient(90deg,transparent 49%,rgba(197,54,45,.22) 50%,transparent 51%);opacity:.35}.hero-content{max-width:760px;position:relative}.hero .reveal{opacity:1;transform:none}.eyebrow,.section-kicker{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--warm);font-weight:800}.hero h1{font-size:clamp(72px,13vw,188px);letter-spacing:-.085em;line-height:.78;margin:20px 0 34px;text-transform:uppercase;font-weight:950;text-shadow:0 12px 54px rgba(0,0,0,.72)}.hero-copy{max-width:670px;font-size:clamp(18px,2vw,24px);color:rgba(242,240,234,.94);margin:0 0 34px;text-shadow:0 8px 30px rgba(0,0,0,.72)}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border:1px solid rgba(242,240,234,.34);text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:950;transition:.22s var(--ease)}.btn:focus-visible,.header-cta:focus-visible,.program-tab:focus-visible,.menu-btn:focus-visible{outline:2px solid var(--warm);outline-offset:3px}.btn.primary{background:var(--red);border-color:var(--red);color:#fff;box-shadow:0 12px 32px rgba(197,54,45,.24)}.btn.primary:hover{background:var(--red2);transform:translateY(-2px)}.btn.ghost{background:rgba(242,240,234,.12);border-color:rgba(242,240,234,.54);color:var(--text)}.btn.ghost:hover{border-color:var(--text);background:rgba(255,255,255,.18);transform:translateY(-2px)}.hero-card{position:absolute;right:clamp(20px,5vw,72px);bottom:118px;width:min(280px,36vw);padding:22px;background:rgba(14,15,13,.84);border:1px solid rgba(214,199,161,.3);backdrop-filter:blur(16px);box-shadow:0 20px 60px rgba(0,0,0,.32)}.hero-card span,.hero-card small{display:block;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:11px}.hero-card b{display:block;font-size:48px;letter-spacing:-.08em;margin:4px 0}.scroll-cue{position:absolute;left:clamp(20px,5vw,64px);bottom:28px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.16em}.scroll-cue span{display:inline-block;width:34px;height:1px;background:var(--red);vertical-align:middle;margin-right:10px}
.section{padding:clamp(64px,9vw,128px) clamp(20px,5vw,64px);max-width:calc(var(--max) + 128px);margin:auto}.split-heading{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.55fr);gap:clamp(30px,6vw,72px);align-items:end;margin:18px 0 52px}.split-heading h2,.band-copy h2,.coach-copy h2,.membership-card h2{font-size:clamp(38px,6vw,82px);line-height:.92;letter-spacing:-.065em;margin:0}.split-heading p,.band-copy p,.coach-copy p,.membership-card p{color:var(--muted);font-size:18px}.pillar-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.pillar{min-height:260px;padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));transition:.25s var(--ease)}.pillar:hover{background:rgba(197,54,45,.08);transform:translateY(-4px)}.pillar span{color:var(--red);font-weight:900}.pillar h3{font-size:28px;letter-spacing:-.04em;margin:64px 0 12px}.pillar p{color:var(--muted);margin:0}.facility-band{max-width:none;height:430vh;position:relative;background:#070806;border-block:1px solid var(--line);overflow:visible}.motion-stage{position:sticky;top:0;height:100svh;min-height:640px;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,440px);grid-template-rows:1fr auto;align-items:end;gap:clamp(22px,4vw,48px);padding:clamp(96px,9vh,132px) clamp(20px,5vw,64px) clamp(34px,6vh,72px);overflow:hidden;background:linear-gradient(90deg,rgba(14,15,13,.84),rgba(14,15,13,.34)),url('assets/motion/hero-seedance-poster.webp') center/cover}.motion-canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.9;transform:scale(var(--motion-zoom,1));transform-origin:50% 50%;transition:filter .22s linear}.motion-overlay{position:absolute;inset:0;background:radial-gradient(circle at 62% 38%,rgba(197,54,45,.12),transparent 28%),linear-gradient(90deg,rgba(14,15,13,.88),rgba(14,15,13,.28) 48%,rgba(14,15,13,.78)),linear-gradient(0deg,rgba(14,15,13,.98),transparent 42%,rgba(14,15,13,.55));pointer-events:none}.motion-progress{position:absolute;left:clamp(20px,5vw,64px);right:clamp(20px,5vw,64px);bottom:18px;height:2px;background:rgba(242,240,234,.14);z-index:3}.motion-progress span{display:block;height:100%;width:calc(var(--motion-progress,0)*100%);background:linear-gradient(90deg,var(--warm),var(--red2));box-shadow:0 0 22px rgba(255,77,62,.38)}.band-copy,.spec-rail,.motion-chapters{position:relative;z-index:2}.band-copy{max-width:820px;align-self:end}.band-copy h2{max-width:900px}.motion-chapters{grid-column:2;grid-row:1 / span 2;align-self:center;min-height:310px}.motion-chapter{position:absolute;inset:auto 0 auto auto;max-width:430px;padding:26px 28px;border:1px solid rgba(242,240,234,.16);background:linear-gradient(180deg,rgba(14,15,13,.78),rgba(14,15,13,.52));backdrop-filter:blur(16px);box-shadow:0 26px 80px rgba(0,0,0,.34);opacity:0;transform:translateY(28px) scale(.98);transition:opacity .34s var(--ease),transform .34s var(--ease)}.motion-chapter.is-active{opacity:1;transform:translateY(0) scale(1)}.motion-chapter span{display:block;margin-bottom:12px;color:var(--warm);font-size:12px;text-transform:uppercase;letter-spacing:.18em;font-weight:950}.motion-chapter h3{font-size:clamp(30px,4vw,52px);line-height:.95;letter-spacing:-.06em;margin:0 0 16px}.motion-chapter p{margin:0;color:rgba(242,240,234,.78);font-size:16px}.spec-rail{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,1fr);background:rgba(14,15,13,.62);border:1px solid var(--line);backdrop-filter:blur(14px)}.spec-rail div{padding:18px 22px;border-right:1px solid var(--line)}.spec-rail div:last-child{border-right:0}.spec-rail b{display:block;font-size:20px}.spec-rail span{color:var(--muted)}
.program-layout{display:grid;grid-template-columns:320px 1fr;gap:30px}.program-tabs{display:grid;gap:10px;align-content:start}.program-tab{text-align:left;padding:18px;background:transparent;color:var(--muted);border:1px solid var(--line);cursor:pointer;text-transform:uppercase;letter-spacing:.1em;font-weight:900}.program-tab.is-active,.program-tab:hover{color:var(--text);border-color:rgba(197,54,45,.9);background:rgba(197,54,45,.12)}.program-card{min-height:430px;padding:clamp(28px,5vw,58px);border:1px solid var(--line);background:linear-gradient(135deg,rgba(32,35,31,.92),rgba(14,15,13,.92));position:relative;overflow:hidden}.program-card:after{content:"";position:absolute;right:-90px;top:-90px;width:260px;height:260px;border-radius:50%;background:rgba(197,54,45,.18);filter:blur(4px)}.program-card h3{font-size:clamp(44px,7vw,96px);line-height:.86;letter-spacing:-.08em;margin:16px 0 22px}.program-card p{max-width:720px;color:var(--muted);font-size:19px}.program-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:44px}.program-card dl div{border-top:1px solid var(--line);padding-top:14px}.program-card dt{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.13em}.program-card dd{margin:4px 0 0;font-size:22px;font-weight:900}.coaching-section{display:grid;grid-template-columns:minmax(0,.95fr) minmax(320px,.75fr);gap:clamp(32px,7vw,88px);align-items:center}.coach-image{border:1px solid var(--line);padding:10px;background:var(--surface)}.coach-image img{aspect-ratio:4/3;width:100%;object-fit:cover}.check-list{list-style:none;padding:0;margin:30px 0 0;display:grid;gap:14px}.check-list li{padding-left:30px;position:relative;color:var(--text)}.check-list li:before{content:"";position:absolute;left:0;top:.55em;width:12px;height:12px;background:var(--red);clip-path:polygon(0 42%,35% 42%,35% 0,100% 50%,35% 100%,35% 58%,0 58%)}.timeline{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.timeline div{min-height:210px;padding:24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.timeline span{color:var(--red);font-weight:950}.timeline b{display:block;font-size:24px;margin:52px 0 8px}.timeline p{color:var(--muted);margin:0}.membership-section{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:30px}.membership-card,.location-panel{border:1px solid var(--line);background:linear-gradient(180deg,rgba(32,35,31,.9),rgba(14,15,13,.95));padding:clamp(28px,5vw,58px)}.booking-form{display:grid;grid-template-columns:1fr 1fr auto;gap:14px;margin-top:34px;align-items:end}.booking-form label{display:grid;gap:8px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.12em}.booking-form select{height:48px;background:#0b0c0a;color:var(--text);border:1px solid var(--line);padding:0 14px}.form-note{grid-column:1/-1;font-size:13px!important;color:var(--muted)!important;margin:0!important}.location-panel h3{font-size:28px;letter-spacing:-.04em;margin-top:0}.location-panel p{color:var(--muted)}.mobile-bottom-cta{display:none}.reveal{opacity:1;transform:none}body.js-enabled .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .7s var(--ease)}body.js-enabled .reveal.is-visible{opacity:1;transform:none}@keyframes kenburns{to{transform:scale(1)}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.hero-video,.motion-canvas{display:none!important}.hero-fallback{opacity:1!important}.reveal,body.js-enabled .reveal{opacity:1!important;transform:none!important}.facility-band{height:auto!important;min-height:auto;background:#0e0f0d!important}.motion-stage{position:relative!important;height:auto!important;min-height:0!important;background:linear-gradient(90deg,rgba(14,15,13,.86),rgba(14,15,13,.52)),url('assets/motion/hero-seedance-poster.webp') center/cover!important}.motion-chapter{position:relative!important;opacity:1!important;transform:none!important;margin-top:12px}.motion-progress{display:none!important}}
@media (max-width:900px){.desktop-nav,.header-cta{display:none}.menu-btn{display:block;margin-left:auto}.hero{padding-top:110px}.hero-card{display:none}.split-heading,.program-layout,.coaching-section,.membership-section{grid-template-columns:1fr}.pillar-grid{grid-template-columns:repeat(2,1fr)}.program-card dl,.timeline{grid-template-columns:1fr}.booking-form{grid-template-columns:1fr}.facility-band{height:360vh;background-attachment:scroll}.motion-stage{min-height:100svh;grid-template-columns:1fr;grid-template-rows:auto 1fr auto;padding:92px 18px 72px}.band-copy{max-width:92vw}.motion-chapters{grid-column:1;grid-row:auto;align-self:end;min-height:250px;width:min(440px,100%)}.motion-chapter{max-width:100%;padding:20px;background:linear-gradient(180deg,rgba(14,15,13,.84),rgba(14,15,13,.62))}.motion-chapter h3{font-size:clamp(28px,8vw,42px)}.spec-rail{grid-template-columns:1fr;margin-bottom:10px}.spec-rail div{padding:13px 16px;border-right:0;border-bottom:1px solid var(--line)}.spec-rail div:last-child{border-bottom:0}.mobile-bottom-cta{display:block;position:fixed;left:14px;right:14px;bottom:14px;z-index:40;opacity:0;transform:translateY(18px);pointer-events:none;transition:opacity .24s var(--ease),transform .24s var(--ease)}body.past-hero .mobile-bottom-cta{opacity:1;transform:translateY(0);pointer-events:auto}.mobile-bottom-cta a{display:flex;align-items:center;justify-content:center;min-height:50px;background:var(--red);color:#fff;text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:950;border:1px solid rgba(255,255,255,.14);box-shadow:0 14px 40px rgba(0,0,0,.35)}}
@media (max-width:560px){.site-header{height:68px;padding:0 16px}.mobile-panel{top:68px}.brand-text{font-size:13px}.measurement-grid{opacity:.16}.hero-shade{background:linear-gradient(90deg,rgba(14,15,13,.96),rgba(14,15,13,.76) 58%,rgba(14,15,13,.42)),linear-gradient(0deg,rgba(14,15,13,1),transparent 42%,rgba(14,15,13,.72))}.hero{padding:104px 18px 92px;align-items:center}.hero h1{font-size:clamp(58px,18vw,82px);line-height:.86;letter-spacing:-.075em;margin:18px 0 26px}.hero-copy{font-size:16.5px;line-height:1.5;max-width:340px}.hero-actions{display:grid;gap:12px}.hero-actions .btn{width:100%;background:rgba(242,240,234,.16)}.hero-actions .btn.primary{background:var(--red)}.section{padding:58px 18px}.split-heading{margin-bottom:34px}.pillar-grid{grid-template-columns:1fr}.pillar{min-height:210px}.pillar h3{margin-top:44px}.program-card{min-height:auto}.program-card dl{gap:18px}.facility-band{min-height:68vh}.membership-card,.location-panel{padding:24px}.scroll-cue{display:none}}
