body.intro-playing{overflow:hidden}
.cinematic-intro{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;overflow:hidden;background:#010a06;color:#fff;transition:opacity .75s cubic-bezier(.16,1,.3,1),visibility .75s}
.cinematic-intro:before{content:"";position:absolute;inset:-3%;background:linear-gradient(90deg,#010a06e8 0%,#010a0680 48%,#010a0620),url('demo-stadium-hero-v1.png') center/cover;scale:1.08;animation:introZoom 4s cubic-bezier(.16,1,.3,1) forwards}
.cinematic-intro:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 60% 48%,transparent 0 18%,#010a0680 72%),linear-gradient(180deg,#0006,transparent 42%,#000b)}
.cinematic-intro.done{opacity:0;visibility:hidden;pointer-events:none}
.intro-noise{position:absolute;inset:0;z-index:2;opacity:.08;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E");animation:noiseShift .22s steps(2) infinite}
.intro-beam{position:absolute;z-index:2;top:-30%;left:50%;width:28vw;height:150%;background:linear-gradient(90deg,transparent,#caff8a1b,transparent);filter:blur(22px);rotate:18deg;animation:beamSweep 3s ease-in-out both}
.intro-lockup{position:relative;z-index:4;text-align:center;animation:lockupIn 1.25s cubic-bezier(.16,1,.3,1) .25s both}
.intro-lockup img{width:clamp(82px,8vw,130px);height:clamp(95px,9vw,150px);object-fit:contain;filter:drop-shadow(0 0 35px #21de8370);animation:crestPulse 2.2s ease-in-out infinite}
.intro-rule{display:flex;align-items:center;gap:15px;margin:18px auto 2px;color:#91b7a3;font-size:clamp(7px,.7vw,10px);font-weight:950;letter-spacing:.24em}
.intro-rule i{display:block;width:55px;height:1px;background:linear-gradient(90deg,transparent,var(--green))}.intro-rule i:last-child{background:linear-gradient(90deg,var(--green),transparent)}
.intro-lockup>strong{display:block;font-size:clamp(74px,14vw,230px);line-height:.84;letter-spacing:-.065em;text-shadow:0 13px 70px #000;animation:titleTrack 1.4s cubic-bezier(.16,1,.3,1) .35s both}
.intro-lockup>p{margin:24px 0 0;color:var(--yellow);font-size:clamp(10px,1vw,15px);font-weight:950;letter-spacing:.34em;animation:subtitleIn .8s ease 1s both}
.intro-loader{position:absolute;z-index:5;bottom:7%;left:50%;translate:-50% 0;width:min(290px,48vw);height:2px;background:#ffffff16}.intro-loader i{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--yellow));box-shadow:0 0 18px #0bbf70;animation:introLoad 3.1s cubic-bezier(.65,0,.35,1) forwards}
.cinematic-intro>button{position:absolute;right:30px;bottom:27px;z-index:5;border:0;background:none;color:#789687;font-size:8px;font-weight:950;letter-spacing:.16em}
.page-progress{position:fixed;z-index:80;top:0;left:0;width:0;height:3px;background:linear-gradient(90deg,var(--green),var(--yellow));box-shadow:0 0 15px #0bbf70;transition:width .08s linear}
.hero{isolation:isolate;background:#020d08}.hero:before{content:"";position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,#02100bea 0%,#02100bc9 41%,#02100b55 67%,#02100b90),linear-gradient(0deg,#03120b 0%,transparent 45%),url('demo-stadium-hero-v1.png') center/cover no-repeat;filter:saturate(1.05) contrast(1.05);animation:heroBreath 12s ease-in-out infinite alternate}.hero:after{z-index:-1}
.hero-copy{animation:heroCopyIn 1.1s cubic-bezier(.16,1,.3,1) .15s both}.hero h1{filter:drop-shadow(0 18px 35px #0008)}.hero h1 em{background:linear-gradient(90deg,#0bdc7c,#a8ff78 56%,#efff6b);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-stage{perspective:1200px}.hero-player{filter:drop-shadow(0 35px 42px #000d) drop-shadow(0 0 45px #16c7762c);animation:playerReveal 1.3s cubic-bezier(.16,1,.3,1) .35s both}
.stadium-ray{position:absolute;z-index:1;top:-20%;height:120%;width:18%;background:linear-gradient(180deg,#f1fff038,transparent 62%);filter:blur(18px);transform-origin:top;mix-blend-mode:screen;opacity:.34}.ray-one{left:29%;rotate:17deg;animation:rayMove 7s ease-in-out infinite alternate}.ray-two{right:18%;rotate:-19deg;animation:rayMove 9s ease-in-out -2s infinite alternate}
.orbit-one{box-shadow:inset 0 0 50px #0bbf7008,0 0 60px #0bbf7008}.float-card{box-shadow:0 24px 65px #0009,inset 0 1px #ffffff18}.float-alert:after{content:"";position:absolute;inset:-1px;border-radius:inherit;background:linear-gradient(110deg,transparent 30%,#ffffff24 48%,transparent 66%);translate:-120% 0;animation:cardShine 5s ease-in-out 2s infinite}
.system-signal{position:absolute;z-index:8;left:50%;bottom:18px;translate:-50% 0;display:flex;align-items:center;gap:10px;padding:9px 15px;border:1px solid #ffffff18;border-radius:99px;background:#04140ebd;backdrop-filter:blur(15px);box-shadow:0 15px 40px #0007;white-space:nowrap}.system-signal span{font-size:7px;font-weight:950;letter-spacing:.13em;color:#afc4ba;margin-right:6px}.system-signal span i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px #0bbf7017,0 0 13px #0bbf70;margin-right:6px;animation:signalPulse 1.5s infinite}.system-signal b{font-size:12px}.system-signal small{font-size:6px;color:#718d7f;letter-spacing:.1em}.scroll-cue{bottom:32px}
.reveal{opacity:0;translate:0 34px;transition:opacity .85s cubic-bezier(.16,1,.3,1),translate .85s cubic-bezier(.16,1,.3,1)}.reveal.visible{opacity:1;translate:0 0}
.story-canvas{position:relative}.experience-shell.impact-live{box-shadow:0 45px 110px #0bbf7030}.experience-shell.impact-live .story-canvas:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:0 25px 25px 0;box-shadow:inset 0 0 0 2px #0bbf7075;animation:liveFrame 1.2s ease both}.experience-shell.impact-live .phone{box-shadow:0 26px 65px #0009,0 0 45px #0bbf7048}.experience-shell.impact-live .family-phone{animation:phoneKick .7s cubic-bezier(.16,1,.3,1)}.experience-shell.impact-live .trainer-phone{animation:phoneKickTrainer .7s cubic-bezier(.16,1,.3,1)}
.command-main{position:relative;overflow:hidden}.command-main:after{content:"";position:absolute;inset:-50%;background:conic-gradient(from 180deg,transparent,#ffffff13,transparent 22%);animation:commandSweep 8s linear infinite}.command-main>*{position:relative;z-index:1}.profile-card:hover>i{scale:1.12;rotate:-5deg}.profile-card>i{transition:.35s}
@keyframes introZoom{from{scale:1.18;filter:blur(4px)}to{scale:1.03;filter:blur(0)}}@keyframes noiseShift{0%{translate:0 0}25%{translate:1% -1%}50%{translate:-1% 1%}75%{translate:1% 1%}}@keyframes beamSweep{0%{translate:-65vw 0;opacity:0}32%{opacity:1}100%{translate:55vw 0;opacity:0}}@keyframes lockupIn{from{opacity:0;scale:.88;filter:blur(12px)}to{opacity:1;scale:1;filter:blur(0)}}@keyframes titleTrack{from{opacity:0;letter-spacing:.12em;translate:0 30px}to{opacity:1;letter-spacing:-.065em;translate:0 0}}@keyframes subtitleIn{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}@keyframes introLoad{from{width:0}to{width:100%}}@keyframes crestPulse{50%{filter:drop-shadow(0 0 50px #21de83a0);scale:1.035}}@keyframes heroBreath{to{scale:1.035;filter:saturate(1.2) contrast(1.08)}}@keyframes heroCopyIn{from{opacity:0;translate:-38px 0}to{opacity:1;translate:0 0}}@keyframes playerReveal{from{opacity:0;translate:-50% 65px;scale:.93;filter:blur(8px) drop-shadow(0 35px 42px #000d)}to{opacity:1;translate:-50% 0;scale:1;filter:blur(0) drop-shadow(0 35px 42px #000d) drop-shadow(0 0 45px #16c7762c)}}@keyframes rayMove{to{rotate:9deg;opacity:.5}}@keyframes cardShine{0%,65%{translate:-120% 0}100%{translate:120% 0}}@keyframes signalPulse{50%{opacity:.55;scale:.75}}@keyframes liveFrame{from{opacity:0}50%{opacity:1}to{opacity:.4}}@keyframes phoneKick{from{translate:40px 20px;rotate:10deg;opacity:.55}to{translate:0 0;rotate:0;opacity:1}}@keyframes phoneKickTrainer{from{translate:-40px 20px;rotate:-10deg;opacity:.55}to{translate:0 0;rotate:0;opacity:1}}@keyframes commandSweep{to{rotate:360deg}}
@media(max-width:780px){.cinematic-intro>button{right:18px;bottom:20px}.intro-lockup>strong{font-size:24vw}.intro-rule i{width:25px}.hero:before{background-position:62% center}.system-signal{bottom:7px;gap:6px;padding:8px 10px}.system-signal span{margin-right:0}.system-signal b:nth-of-type(n+2),.system-signal b:nth-of-type(n+2)+small{display:none}.scroll-cue{display:none}}
@media(prefers-reduced-motion:reduce){.cinematic-intro{display:none}.hero:before,.hero-player,.hero-copy,.float-card,.orbit-two,.stadium-ray,.command-main:after{animation:none!important}.reveal{opacity:1;translate:none}}
.ecosystem-cta{max-width:760px;margin:26px auto 0;min-height:74px;display:grid;grid-template-columns:42px 1fr auto;grid-template-rows:1fr 1fr;align-items:center;gap:0 14px;padding:13px 18px;border:1px solid rgba(106,232,151,.28);border-radius:15px;background:linear-gradient(135deg,rgba(0,129,75,.16),rgba(3,26,18,.82));color:#edfdf4;text-decoration:none;box-shadow:0 18px 50px rgba(0,0,0,.16);transition:.25s}.ecosystem-cta:hover{transform:translateY(-3px);border-color:rgba(117,239,160,.58);box-shadow:0 23px 58px rgba(0,0,0,.23)}.ecosystem-cta>span{grid-row:1/3;width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:#9bf1b3;color:#062218;font-size:15px}.ecosystem-cta b{align-self:end;font:800 13px Manrope,Arial,sans-serif}.ecosystem-cta small{align-self:start;color:#8eaea0;font-size:9px;margin-top:3px}.ecosystem-cta em{grid-column:3;grid-row:1/3;font-style:normal;color:#91efa9;font-size:21px;transition:.2s}.ecosystem-cta:hover em{transform:translateX(4px)}@media(max-width:620px){.ecosystem-cta{grid-template-columns:38px 1fr auto}.ecosystem-cta small{font-size:8px}}
