@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#08070c;--surface:#111016;--text:#f3f0fa;--muted:#aba6b6;--purple:#bc94ff;--bright:#a16bff;--line:#ffffff20;--display:'Space Grotesk',Arial,sans-serif;--body:'Manrope',Arial,sans-serif;--max:1440px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.7 var(--body);overflow-x:clip}body,p,h1,h2,h3,ul{margin-top:0}::selection{background:#b58aff;color:#130921}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex="0"]:focus-visible{outline:2px solid var(--purple);outline-offset:6px}a:hover{text-decoration:none}button:disabled{cursor:default;opacity:.6}[hidden]{display:none!important}.skip-link{position:fixed;top:-100px;left:20px;z-index:200;background:var(--purple);color:#13091b;padding:12px 20px}.skip-link:focus{top:14px}.reading-line{position:fixed;top:0;left:0;height:2px;width:100%;background:var(--purple);transform-origin:left;transform:scaleX(0);z-index:110;pointer-events:none}
.site-header{position:fixed;left:0;right:0;top:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:25px max(5vw,24px);border-bottom:1px solid #ffffff17;background:linear-gradient(#08070c80,#08070c08);transition:padding .3s,background .3s;gap:24px}.site-header.scrolled{padding-top:16px;padding-bottom:16px;background:#08070ced;backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:12px;font:700 20px/1 var(--display);letter-spacing:1px}.brand-symbol{font:700 40px/.9 var(--display);letter-spacing:-7px;width:45px}.brand-symbol>span{color:var(--purple);font-weight:400}.brand small{display:block;font:500 10px/1 var(--body);letter-spacing:4px;margin-top:8px}.site-header nav{display:flex;gap:36px;font-size:14px}.site-header nav a{color:#e2ddea;transition:color .2s}.site-header nav a:hover{color:var(--purple)}.header-cta{display:flex;gap:25px;align-items:center;font-size:14px;font-weight:600;padding:11px 19px;border:1px solid #ffffff48;border-radius:4px;background:#ffffff05}.header-cta span{font-size:20px}.header-cta:hover{border-color:var(--purple);background:#b58aff16}
.hero{position:relative;min-height:960px;height:100svh;max-height:1250px;isolation:isolate;overflow:hidden}.hero-world{position:absolute;inset:0;z-index:-3;background:#08070c}.hero-world img{width:100%;height:100%;object-fit:cover;object-position:63% center;transform:scale(1.035);transition:opacity 1s;will-change:transform}.hero-world canvas{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity .5s}.hero-world canvas.ready{opacity:1}.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#08070cda 0%,#08070c80 33%,#08070c08 65%),linear-gradient(0deg,#08070c 0%,#08070c22 25%,transparent 70%,#08070c60);pointer-events:none}.hero-topline{position:absolute;top:140px;left:5vw;right:5vw;display:flex;justify-content:space-between;font:500 12px/1.4 var(--display);letter-spacing:1.8px;color:#d0c7df}.hero-topline>span:first-child{display:flex;align-items:center;gap:12px}.hero-topline>span:first-child:before{content:'';width:24px;height:1px;background:var(--purple)}.hero-location{text-align:right}.hero-content{position:relative;padding:220px 5vw 160px;width:100%;max-width:var(--max);margin:auto}.eyebrow{font:600 12px/1.5 var(--display);letter-spacing:1.8px;text-transform:uppercase;color:var(--purple);margin-bottom:20px}.hero-intro{margin-bottom:22px}.hero h1{font:600 clamp(68px,8.5vw,136px)/.9 var(--display);letter-spacing:-.065em;margin:0 0 30px;max-width:740px}.hero h1>span{display:block}.metal-text{color:#c8a5ff;background:linear-gradient(115deg,#f4eaff 0%,#e5d4ff 15%,#a472ed 39%,#efe4ff 55%,#a071d8 72%,#dac5ff 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero-description{max-width:400px;color:#d0c9dc;line-height:1.7;margin-bottom:26px}.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.button{position:relative;display:inline-flex;justify-content:space-between;align-items:center;gap:20px;border:1px solid #d5b6ff;background:var(--purple);color:#160c28;border-radius:4px;min-height:56px;padding:8px 8px 8px 22px;font:700 14px/1.4 var(--body);transition:background .2s,box-shadow .25s,transform .25s;overflow:hidden}.button:hover{background:#d1b2ff;box-shadow:0 0 35px #a768ff42;transform:translateY(-2px)}.button-icon{display:grid;place-items:center;width:40px;height:40px;background:#160c2812;border-radius:2px;font:400 26px var(--display);transition:transform .25s}.button:hover .button-icon{transform:rotate(45deg)}.explore-link{display:flex;align-items:center;gap:20px;font-size:14px}.explore-link span{display:grid;place-items:center;border:1px solid #ffffff50;border-radius:50%;width:36px;height:36px;transition:transform .25s}.explore-link:hover span{transform:translateY(3px);border-color:var(--purple)}.hero-note{font-size:12px;color:#b8accb;margin-top:17px}.hero-floor{position:absolute;bottom:32px;left:5vw;right:5vw;display:flex;align-items:center;justify-content:space-between;gap:24px;font:500 11px/1.5 var(--display);letter-spacing:1.5px}.hero-floor>span{color:#b6afc4}.experience-controls{display:flex;gap:8px}.experience-controls button{display:flex;align-items:center;gap:8px;color:#d9d2e6;background:#08070c40;border:1px solid #ffffff24;border-radius:4px;padding:8px 12px;font:400 12px/1.4 var(--body);min-height:36px;backdrop-filter:blur(10px)}.experience-controls button:hover{border-color:var(--purple)}.scroll-cue{display:flex;align-items:center;gap:24px}.scroll-cue>span:last-child{font-size:24px;line-height:1}
.word-ribbon{border-top:1px solid #ffffff24;border-bottom:1px solid #ffffff24;overflow:hidden;padding:22px 0;background:#101014}.word-ribbon>div{display:flex;width:max-content;align-items:center;gap:40px}.word-ribbon span{font:500 clamp(16px,1.6vw,24px)/1 var(--display);letter-spacing:2px;color:#d2cddb;white-space:nowrap}.word-ribbon i{color:var(--purple);font-style:normal;font-size:30px;line-height:1}@keyframes ribbon{to{transform:translateX(-50%)}}
.section{max-width:var(--max);margin:auto;padding:110px 5vw}.section-kicker{display:flex;justify-content:space-between;gap:20px;font:500 12px/1.5 var(--display);letter-spacing:1.4px;color:var(--muted);border-top:1px solid var(--line);padding-top:22px;margin-bottom:60px}.section-kicker>span:first-child{color:var(--purple)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:52px}h2{font:500 clamp(40px,5.2vw,76px)/1.04 var(--display);letter-spacing:-.055em;margin-bottom:0}.muted-word{color:#797383}.section-heading>p{max-width:345px;color:var(--muted);margin:0 0 5px}.coaching-console{border:1px solid var(--line);background:#101015;border-radius:8px;overflow:hidden}.coaching-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}.coaching-tabs button{border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);display:flex;align-items:center;gap:16px;padding:26px 28px;font:500 20px/1 var(--display);position:relative;transition:background .2s,color .2s}.coaching-tabs button:last-child{border-right:0}.coaching-tabs button>span:first-child{font:400 12px/1 var(--display);opacity:.6}.tab-plus{margin-left:auto}.coaching-tabs button[aria-selected="true"]{background:#bf91ff10;color:#d6baff}.coaching-tabs button:after{content:'';height:2px;position:absolute;bottom:0;left:0;right:0;background:var(--purple);transform:scaleX(0);transition:transform .35s;transform-origin:left}.coaching-tabs button[aria-selected="true"]:after{transform:scaleX(1)}.coaching-tabs button:focus-visible{outline-offset:-6px}.coaching-panel{display:grid;grid-template-columns:1fr 1fr;min-height:490px}.coaching-panel.is-entering{animation:panel-enter .45s both}@keyframes panel-enter{from{opacity:.3;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.panel-visual{position:relative;isolation:isolate;overflow:hidden;min-height:430px;padding:40px;display:flex;align-items:flex-end;background:#17111f}.panel-visual:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#08070cf0,#08070c22 70%)}.panel-visual img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;filter:grayscale(1) brightness(.65);transition:transform .8s}.coaching-panel:hover .panel-visual img{transform:scale(1.06)}.visual-caption{position:relative}.visual-caption .eyebrow{display:block}.visual-caption strong{font:500 clamp(42px,4vw,64px)/.98 var(--display);letter-spacing:-.05em;display:block}.panel-copy{padding:48px 44px;align-self:center}.panel-copy h3{font:500 clamp(28px,2.5vw,38px)/1.15 var(--display);letter-spacing:-1.2px;margin-bottom:20px}.panel-copy>p:not(.eyebrow){color:var(--muted)}.feature-list{padding:0;list-style:none;margin:28px 0}.feature-list li{position:relative;padding:11px 0 11px 19px;border-top:1px solid var(--line);font-size:14px;color:#cdc6d7}.feature-list li:before{content:'+';position:absolute;left:0;color:var(--purple)}.text-link{display:flex;align-items:center;justify-content:space-between;color:var(--purple);font-size:14px;font-weight:600;gap:15px}.text-link>span{font-size:23px}.text-link:hover{color:#e2cfff}.nutrition-visual{background:radial-gradient(ellipse at 68% 30%,#845aca66,transparent 60%),linear-gradient(125deg,#231436,#151020)}.visual-cross{position:absolute;right:25px;top:-60px;font:300 400px/1 var(--display);color:#d6bbff2b;transform:rotate(-15deg);user-select:none}.visual-footnote{position:absolute;bottom:20px;font:500 10px/1.5 var(--display);letter-spacing:1px;color:#b4a9c5}.nutrition-visual .visual-caption{padding-bottom:30px}.together-visual img{filter:brightness(.7);object-position:65%}
.approach{padding-top:45px;padding-bottom:125px}.approach-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px}.approach-title{position:sticky;top:145px;align-self:start}.approach-title h2{font-size:clamp(38px,4.5vw,65px)}.purple-text{color:var(--purple)}.approach-title p{color:var(--muted);margin:30px 0 0;max-width:340px}.steps{padding-top:4px}.step{display:grid;grid-template-columns:48px 1fr;gap:22px;border-bottom:1px solid var(--line);padding:0 0 32px;margin:0 0 32px}.step:last-child{margin-bottom:0}.step-number{font:400 18px/1.5 var(--display);color:#82768f}.step .eyebrow{margin-bottom:12px;font-size:10px}.step h3{font:500 26px/1.2 var(--display);letter-spacing:-.7px;margin-bottom:16px}.step p:last-child{color:var(--muted);font-size:15px;margin-bottom:0}
.start{position:relative;border-top:1px solid var(--line);background:radial-gradient(ellipse at 15% 65%,#5e25922a,transparent 60%);padding-top:60px}.start .section-kicker{border:0;padding-top:0}.start-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.start-copy{padding-top:35px}.start-copy h2{font-size:clamp(46px,5.5vw,80px)}.start-copy>p:not(.eyebrow){color:var(--muted);max-width:360px;margin-top:26px}.direct-contact{display:flex;flex-direction:column;margin-top:40px;max-width:380px}.direct-contact a{display:grid;grid-template-columns:1fr auto;gap:3px 18px;padding:16px 0;border-bottom:1px solid var(--line)}.direct-contact a>span:first-child{grid-column:1;font:500 10px/1.5 var(--display);letter-spacing:1.5px;color:#a598b7}.direct-contact strong{grid-column:1;font:500 19px/1.6 var(--display);overflow-wrap:anywhere}.direct-contact a>span:last-child{grid-column:2;grid-row:1/3;align-self:center;font-size:24px;color:var(--purple)}.direct-contact a:hover strong{color:var(--purple)}.consultation-form{background:linear-gradient(135deg,#1c162280,#101014);border:1px solid #be91ff3d;border-radius:8px;padding:35px;box-shadow:0 25px 70px #00000040}.form-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.form-heading .eyebrow{margin:0;font-size:10px}.form-mark{font-size:24px;color:var(--purple)}.consultation-form h3{font:500 28px/1.2 var(--display);letter-spacing:-1px;margin-bottom:30px}.field{margin-bottom:20px}label{display:block;font-size:13px;font-weight:500;margin-bottom:8px;color:#c7bdd2}input,select,textarea{display:block;width:100%;max-width:100%;font-size:15px;line-height:1.5;background:#ffffff03;border:1px solid #ffffff27;border-radius:4px;color:var(--text);padding:13px 14px;transition:border .2s,background .2s}select{background-color:#19151f;padding-right:30px}textarea{resize:vertical;min-height:105px}input:hover,select:hover,textarea:hover{border-color:#aa7edd70}input:focus,select:focus,textarea:focus{background:#bd88ff06;border-color:#bd88ff;outline-offset:2px}input::placeholder,textarea::placeholder{color:#857b94}form .button{width:100%;font-size:14px}.draft-note{font-size:12px;color:#a197af;line-height:1.5;margin:16px 0 0}#result{border-top:1px solid var(--line);padding-top:20px;margin-top:22px}#brief{margin-bottom:15px}.copy-button{font-size:14px;padding:10px 15px;border:1px solid #a784c9;background:transparent;color:var(--purple);border-radius:4px}#copy-status{color:var(--muted);font-size:13px;margin-top:15px}
.site-footer{max-width:var(--max);margin:auto;padding:40px 5vw 20px;border-top:1px solid var(--line);overflow:hidden}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-top .brand{font-size:16px;letter-spacing:0;gap:8px}.footer-slash{color:var(--purple)}.footer-top p{font:400 10px/1.5 var(--display);letter-spacing:1.4px;color:var(--muted);margin:0}.back-top{font-size:12px;display:flex;align-items:center;gap:15px}.back-top span{color:var(--purple);font-size:24px}.footer-word{font:600 clamp(70px,19.7vw,286px)/1 var(--display);letter-spacing:-.065em;color:transparent;-webkit-text-stroke:1px #ffffff25;text-align:center;margin:35px 0 20px;user-select:none}.footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#8f849e;border-top:1px solid var(--line);padding-top:20px}.footer-bottom a:hover{color:var(--purple)}
.motion-enabled .hero-intro,.motion-enabled .hero h1>span,.motion-enabled .hero-description,.motion-enabled .hero-actions,.motion-enabled .hero-note{animation:hero-enter 1.2s both;animation-delay:.25s}.motion-enabled .hero h1>span:nth-child(2){animation-delay:.38s}.motion-enabled .hero h1>span:nth-child(3){animation-delay:.51s}.motion-enabled .hero-description{animation-delay:.65s}.motion-enabled .hero-actions{animation-delay:.75s}.motion-enabled .hero-note{animation-delay:.85s}@keyframes hero-enter{from{opacity:0;transform:translateY(30px);filter:blur(5px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.reveal-wait{opacity:0;transform:translateY(25px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.reveal-wait.visible{opacity:1;transform:none}.motion-paused *{animation-play-state:paused!important}.motion-paused .reveal-wait{opacity:1;transform:none;transition:none}.motion-paused .hero-intro,.motion-paused .hero h1>span,.motion-paused .hero-description,.motion-paused .hero-actions,.motion-paused .hero-note{animation:none!important;opacity:1;transform:none;filter:none}
@media(min-width:1600px){.hero-topline,.hero-floor{left:max(5vw,calc((100vw - 1296px)/2));right:max(5vw,calc((100vw - 1296px)/2))}.hero-content{padding-left:72px;padding-right:72px}}
@media(max-width:1100px){.hero{min-height:850px}.hero-content{padding-top:220px}.hero h1{font-size:clamp(68px,9.5vw,105px)}.hero-location{max-width:190px}.approach-layout{gap:50px}.start-grid{gap:45px}.panel-copy{padding:35px}.panel-visual{padding:30px}.section-heading>p{max-width:280px}.footer-top p{display:none}}
@media(max-width:760px){html{scroll-padding-top:95px}.site-header{padding:20px 6vw;gap:12px}.site-header nav{display:none}.brand{font-size:17px;gap:10px}.brand-symbol{font-size:34px;width:37px}.brand small{font-size:9px;letter-spacing:3px}.header-cta{padding:9px 13px;gap:18px;font-size:13px}.site-header.scrolled{padding-top:14px;padding-bottom:14px}.hero{height:auto;min-height:850px;max-height:none}.hero-topline{top:115px;left:6vw;right:6vw;font-size:10px;letter-spacing:1.2px}.hero-location{display:none}.hero-world img{object-position:67% center}.hero-shade{background:linear-gradient(0deg,#08070c 0%,#08070cdd 24%,#08070c86 50%,#08070c0a 82%,#08070c44),linear-gradient(90deg,#08070c55,transparent)}.hero-content{padding:240px 6vw 140px}.hero-intro{font-size:10px}.hero h1{font-size:clamp(60px,13.5vw,98px);max-width:600px;line-height:.94;margin-bottom:25px}.hero-description{max-width:350px;font-size:15px}.hero-actions{gap:22px;align-items:flex-start}.hero .button{min-height:54px;font-size:13px}.hero-actions .explore-link{font-size:13px;min-height:54px}.hero-note{font-size:11px}.hero-floor{bottom:24px;left:6vw;right:6vw;flex-wrap:wrap;gap:18px}.hero-floor>span{font-size:9px;letter-spacing:1px}.experience-controls{gap:6px}.experience-controls button{font-size:11px;padding:7px 9px}.scroll-cue{display:none}.word-ribbon{padding:18px 0}.word-ribbon>div{gap:25px}.word-ribbon span{font-size:16px}.section{padding:75px 6vw}.section-kicker{margin-bottom:35px;font-size:10px;letter-spacing:1px;gap:15px}.section-kicker>span:last-child{text-align:right;max-width:130px}.section-heading{display:block;margin-bottom:35px}h2{font-size:clamp(39px,9.5vw,60px)}.section-heading>p{max-width:360px;margin:24px 0 0;font-size:15px}.coaching-tabs button{font-size:16px;padding:21px 12px;gap:8px}.coaching-tabs button>span:first-child{font-size:10px}.tab-plus{display:none}.coaching-panel{grid-template-columns:1fr;min-height:0}.panel-visual{min-height:295px;padding:28px}.visual-caption strong{font-size:44px}.panel-copy{padding:30px 26px}.panel-copy h3{font-size:30px}.panel-copy>p:not(.eyebrow){font-size:15px}.feature-list{margin:25px 0}.panel-copy .eyebrow{font-size:10px}.visual-cross{font-size:320px;top:-85px}.visual-footnote{font-size:8px}.nutrition-visual .visual-caption{padding-bottom:22px}.approach{padding-top:0}.approach-layout{display:block}.approach-title{position:static;margin-bottom:42px}.approach-title h2{font-size:clamp(38px,9.5vw,60px)}.approach-title p{max-width:380px;font-size:15px}.step{grid-template-columns:32px 1fr;gap:17px;padding-bottom:25px;margin-bottom:25px}.step h3{font-size:25px}.start{padding-top:45px}.start-grid{display:block}.start-copy{padding-top:0}.start-copy h2{font-size:clamp(45px,11vw,70px)}.start-copy>p:not(.eyebrow){max-width:400px;font-size:15px}.direct-contact{max-width:none;margin:28px 0 40px}.direct-contact strong{font-size:19px}.consultation-form{padding:26px 22px}.consultation-form h3{font-size:27px}input,select,textarea{font-size:16px}.site-footer{padding:30px 6vw 22px}.footer-top .brand{font-size:14px}.back-top{font-size:11px;gap:9px}.footer-word{margin:35px 0 25px;font-size:19vw}.footer-bottom{font-size:10px;flex-direction:column;gap:5px}}
@media(max-width:390px){.hero-content{padding-top:230px}.hero h1{font-size:14.2vw}.hero-actions{gap:16px}.hero-actions .explore-link{font-size:12px;gap:10px}.hero-actions .explore-link span{width:27px;height:27px}.hero .button{gap:10px;padding-left:14px;font-size:12px}.hero .button-icon{width:33px}.hero{min-height:840px}.experience-controls button{font-size:10px}.hero-floor{gap:12px}.coaching-tabs button{font-size:14px;gap:6px;padding-left:10px;padding-right:10px}.section-kicker{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-wait{opacity:1;transform:none}.hero-world img{transform:none}.button:hover{transform:none}.panel-visual img{transform:none!important}}

/* Comfortable reading sizes, including on touch screens. */
.motion-enabled:not(.motion-paused) .word-ribbon>div{animation:ribbon 38s linear infinite}
label{font-size:14px}input,select,textarea{font-size:16px}
.hero-description,.section-heading>p,.panel-copy>p:not(.eyebrow),.approach-title p,.step p:last-child,.start-copy>p:not(.eyebrow){font-size:16px}
.brand small{font-size:12px;letter-spacing:2.8px}.hero-topline,.eyebrow,.section-kicker,.hero-floor>span,.scroll-cue,.step .eyebrow,.form-heading .eyebrow,.direct-contact a>span:first-child,.visual-footnote,.footer-top p,.footer-bottom{font-size:12px}
.experience-controls button,.hero-note,.draft-note,.back-top{font-size:13px}
@media(max-width:760px){.hero{min-height:900px}.hero-content{padding-bottom:160px}.hero-floor{row-gap:12px}.hero-floor>span{font-size:10px}.experience-controls button{font-size:12px}.section-kicker{font-size:12px}.section-kicker>span:last-child{max-width:145px}.eyebrow,.hero-topline{font-size:12px}.brand small{font-size:10px;letter-spacing:2.5px}.visual-footnote{font-size:10px}}

/* Strength-training art direction: equipment leads the entrance. */
.hero h1{font-size:clamp(64px,7.8vw,122px);max-width:960px}
.hero-world img{object-position:65% center}
.hero-shade{background:linear-gradient(90deg,#08070cef 0%,#08070ca8 36%,#08070c0a 78%),linear-gradient(0deg,#08070c 0%,transparent 45%,#08070c55)}
.together-visual img{object-position:85% center;filter:brightness(.65) sepia(.15)}
@media(max-width:760px){.hero h1{font-size:clamp(48px,11.9vw,90px)}.hero-content{padding-top:260px}.hero-shade{background:linear-gradient(0deg,#08070c 0%,#08070ce8 25%,#08070c92 60%,#08070c20 90%),linear-gradient(90deg,#08070c55,transparent)}.hero-world img{object-position:65% top}.hero-topline{letter-spacing:1px}.start-copy h2{font-size:clamp(37px,9.5vw,66px)}}

/* The custom gym stays in 3D throughout the hero. */
.hero{min-height:850px;height:100svh;max-height:none}
.hero-content{padding-top:220px;padding-bottom:170px;pointer-events:none}
.hero-content a{pointer-events:auto}
.hero h1{font-size:clamp(58px,6.8vw,108px);max-width:790px}
.hero-shade{background:linear-gradient(90deg,#08070ce6 0%,#08070c9a 31%,#08070c00 64%),linear-gradient(0deg,#08070cef 0%,transparent 29%,transparent 84%,#08070c88)}
.hero-world canvas.ready{transition:opacity .6s}
.gym-concept{display:block;font:400 12px/1.5 var(--body);letter-spacing:.6px;color:#aaa0b6;margin-top:6px}
.gym-fallback #replay,.gym-fallback #skip-tour{display:none}
.experience-controls button{min-height:44px}
@media(max-width:1100px){.hero h1{font-size:clamp(58px,7.7vw,90px)}.hero-floor{flex-wrap:wrap}.hero-floor .scroll-cue{display:none}}
@media(max-width:760px){.hero{height:auto;min-height:980px}.hero-world canvas{height:520px}.hero-world img{height:520px;object-position:65% center}.hero-content{padding-top:430px;padding-bottom:185px}.hero h1{font-size:clamp(47px,11.7vw,80px);line-height:.96}.hero-shade{background:linear-gradient(0deg,#08070c 40%,#08070cdd 52%,transparent 75%,#08070c50)}.hero-topline{top:112px}.hero-intro{margin-bottom:16px}.hero-floor{bottom:24px;gap:16px}.experience-controls{gap:6px;flex-wrap:wrap}.experience-controls button{font-size:12px;padding:8px 10px}.hero-description{max-width:390px}.gym-concept{font-size:12px}.hero-floor>span{font-size:12px}}
@media(prefers-reduced-motion:reduce){.hero-world canvas.ready{transition:none}}

/* Real gym film: poster first, lightweight silent playback. */
.hero-world video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% center;opacity:0;transition:opacity .45s;pointer-events:none}
.hero-world video.ready{opacity:1}
.hero-world img{transform:none;object-position:62% center}
.video-unavailable #replay{display:none}
@media(max-width:760px){.hero-world video{height:520px;object-position:58% center}.hero-world img{object-position:58% center}}
@media(prefers-reduced-motion:reduce){.hero-world video{transition:none}}
