/* ELIXIR motion layer — progressive enhancement, no external dependency. */
body{overflow-x:clip}.hero{isolation:isolate;background:radial-gradient(ellipse at 80% 35%,#99112632,transparent 55%),#080809}.hero>.wrap{position:relative;z-index:2}.hero-x{position:absolute;right:2%;top:35px;font-size:clamp(440px,64vw,950px);font-weight:950;line-height:1;letter-spacing:-.12em;color:transparent;-webkit-text-stroke:1px #ff29492e;user-select:none;pointer-events:none;transform:translate3d(0,var(--drift,0px),0) rotate(-9deg);text-shadow:0 0 130px #e8152020;z-index:0}.hero:after{content:'';position:absolute;inset:-30%;background:linear-gradient(115deg,transparent 40%,#ff284710 48%,#ff28472a 50%,#ff284708 53%,transparent 62%);pointer-events:none;animation:light-drift 14s ease-in-out infinite;z-index:0}.hero-copy{position:relative}.hero-copy h1{position:relative}.hero-copy h1 em{background:linear-gradient(100deg,#ff243c 15%,#ff7e87 48%,#ff243c 75%);background-size:220% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:title-shine 9s ease-in-out infinite}.hero-visual{perspective:1100px;transform-style:preserve-3d;will-change:transform;transform:translate3d(0,var(--visual-drift,0px),0) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .25s ease-out}.phone-window{border:1px solid #ffffff20;transform:rotate(-3deg);position:relative;box-shadow:0 0 100px #e7192530,24px 40px 80px #000b;animation:phone-arrival 1.1s cubic-bezier(.2,.7,.2,1) both}.phone-window:after{content:'';position:absolute;inset:-100% -70%;background:linear-gradient(110deg,transparent 44%,#ffffff18 49%,transparent 54%);transform:translateX(-30%);animation:glass-sweep 12s ease-in-out infinite;pointer-events:none}.visual-label{transform:translateZ(45px);border-color:#ff425a44;box-shadow:0 0 30px #ef173019,0 20px 40px #0009}.visual-label .symbol{animation:symbol-turn 16s linear infinite}.benefit-strip{background:linear-gradient(90deg,#ffffff02,transparent);position:relative}.benefit-strip:before{content:'';position:absolute;left:0;top:-1px;width:18%;height:1px;background:linear-gradient(90deg,transparent,#ff344d,transparent);animation:strip-travel 8s ease-in-out infinite}.offer{overflow:hidden;transform-style:preserve-3d;background:radial-gradient(350px circle at var(--mx,50%) var(--my,-30%),#ff243c13,transparent 75%),linear-gradient(145deg,#151518,#0c0c0e);transition:border-color .3s,transform .25s,box-shadow .3s}.offer:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 25%,#ffffff06 48%,transparent 70%);transform:translateX(-110%);transition:transform .7s}.offer:hover:after{transform:translateX(110%)}.offer:hover{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(-7px);box-shadow:0 18px 45px #0008}.offer-icon{transition:transform .35s,box-shadow .35s}.offer:hover .offer-icon{transform:translateY(-3px) rotate(-6deg);box-shadow:0 0 30px #ff243c20}.offers .reveal:nth-child(2){transition-delay:90ms}.offers .reveal:nth-child(3){transition-delay:180ms}.button{position:relative;overflow:hidden;isolation:isolate}.button:after{content:'';position:absolute;inset:-100% -50%;background:linear-gradient(110deg,transparent 40%,#ffffff30 50%,transparent 60%);transform:translateX(-100%);transition:transform .6s;pointer-events:none}.button:hover:after{transform:translateX(100%)}.final{isolation:isolate;padding-block:110px;background:radial-gradient(ellipse at 50% 120%,#ad122840,transparent 70%)}.final:before{content:'X';position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%) rotate(-9deg);font-size:600px;line-height:1;font-weight:950;color:#ff243c06;-webkit-text-stroke:1px #ff243c15;z-index:-1;pointer-events:none}.final .button{box-shadow:0 0 60px #ff243c28}.step{position:relative}.step:before{content:'';position:absolute;bottom:-1px;height:1px;left:0;width:0;background:linear-gradient(90deg,var(--red),transparent);transition:width .8s}.steps.in .step:before{width:100%}.steps.in .step:nth-child(2):before{transition-delay:.15s}.steps.in .step:nth-child(3):before{transition-delay:.3s}.hero-copy>.eyebrow,.hero-copy h1,.hero-copy .lead,.hero-copy>.button,.hero-note{animation:copy-arrival .8s cubic-bezier(.2,.7,.2,1) both}.hero-copy h1{animation-delay:.08s}.hero-copy .lead{animation-delay:.16s}.hero-copy>.button{animation-delay:.23s}.hero-note{animation-delay:.28s}.progress{box-shadow:0 0 16px #ff243c90}.content{background:radial-gradient(ellipse at 5% 20%,#7c15320a,transparent 50%)}
@keyframes copy-arrival{from{opacity:0;transform:translateY(24px);filter:blur(5px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes phone-arrival{from{opacity:0;transform:translateY(45px) rotate(4deg) scale(.94)}to{opacity:1;transform:rotate(-3deg)}}
@keyframes light-drift{50%{transform:translateX(12%) rotate(5deg);opacity:.5}}
@keyframes title-shine{50%{background-position:100% 50%}}
@keyframes glass-sweep{0%,65%{transform:translateX(-35%)}90%,100%{transform:translateX(35%)}}
@keyframes symbol-turn{to{transform:rotate(360deg)}}
@keyframes strip-travel{50%{left:82%}}
@media(max-width:620px){.hero-x{font-size:590px;right:-170px;top:60px;opacity:.7}.hero:after{animation:none}.hero-visual{will-change:auto}.phone-window{animation:none;transform:rotate(-2deg)}.phone-window:after{animation:none;opacity:.3}.final{padding-block:70px}.final:before{font-size:430px}.offers .reveal{transition-delay:0ms}.hero-copy h1{font-size:clamp(54px,13.8vw,79px)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.hero-visual,.hero-x,.phone-window,.offer:hover{transform:none!important}.hero-copy h1 em{color:var(--red);background:none}.hero-copy>.eyebrow,.hero-copy h1,.hero-copy .lead,.hero-copy>.button,.hero-note{opacity:1;filter:none}}
/* Choreography: one motion language from the first screen to the Discord CTA. */
header{position:fixed;z-index:25;transition:background .4s,border-color .4s;pointer-events:none}
header .nav{pointer-events:auto;transition:height .35s,border-color .35s}
header.nav-compact{background:#09090de8;backdrop-filter:blur(22px);border-bottom:1px solid #ffffff14}
header.nav-compact .nav{height:66px;border-bottom-color:transparent}
header.nav-compact .brand b{font-size:30px}
.hero{background:radial-gradient(500px circle at var(--spot-x,80%) var(--spot-y,30%),#be112922,transparent 80%),radial-gradient(ellipse at 80% 40%,#73101e30,transparent 60%),#080809}
.hero-copy h1{animation:none;line-height:1.02}
.title-line{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.title-line>span{display:block;animation:line-unveil 1.15s cubic-bezier(.16,1,.3,1) both}
.title-line:nth-child(2)>span{animation-delay:.13s}
.title-line:nth-child(3)>span{animation-delay:.26s}
.hero-x{color:#ff243c03;-webkit-text-stroke:1px #ff294943;text-shadow:14px 14px 0 #ff243c03,0 0 150px #ff243c15}
.hero-dust{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:1}
.hero-dust i{position:absolute;left:var(--x);top:var(--y);width:2px;height:2px;border-radius:50%;background:#fd7a85;box-shadow:0 0 12px #ff243c;opacity:0;animation:dust-rise var(--duration) var(--delay) linear infinite}
.hero-dust i:nth-child(3n){height:14px;width:1px;border-radius:0;background:linear-gradient(transparent,#f94c6460)}
.hero-away .hero-dust i,.hero-away .hero:after{animation-play-state:paused}
.hero-copy>.button{animation:none;transform:translate3d(var(--mag-x,0px),var(--mag-y,0px),0)}
.scroll-hint{display:flex;gap:12px;align-items:center;color:#a6a1ad;font-size:12px;letter-spacing:1px;margin:28px 0 0}
.scroll-hint i{position:relative;display:block;width:1px;height:34px;background:#ffffff22;overflow:hidden}
.scroll-hint i:after{content:'';position:absolute;width:1px;height:16px;background:#ff4c63;animation:scroll-indicator 2.4s ease-in-out infinite}
.kinetic-band{overflow:hidden;border-block:1px solid #ffffff12;margin-top:30px;padding:25px 0;background:linear-gradient(90deg,#ff243c05,transparent);pointer-events:none}
.kinetic-track{width:max-content;position:relative;left:50%;transform:translateX(calc(-50% + var(--band-x,0px)));font-size:clamp(36px,7vw,100px);line-height:1.1;font-weight:850;letter-spacing:-.05em;white-space:nowrap;color:transparent;-webkit-text-stroke:1px #ffffff28;display:flex;gap:30px;align-items:center}
.kinetic-track b{font-size:.65em;color:var(--red);-webkit-text-stroke:0;font-weight:400}
.kinetic-track .solid{color:#ece8ee;-webkit-text-stroke:0}
.brand-cinema{transform:perspective(1200px) rotateX(calc((1 - var(--opening,1))*7deg)) scale(calc(.9 + var(--opening,1)*.1))!important;transform-origin:50% 100%;transition:opacity .8s!important;border-radius:calc(24px - var(--opening,1)*12px);margin-top:45px}
.brand-cinema .cinema-image img{transform:scale(calc(1.06 - var(--opening,1)*.06))}
.brand-cinema:hover .cinema-image img{transform:scale(calc(1.06 - var(--opening,1)*.06))}
.brand-cinema:before{content:'';position:absolute;inset:0;pointer-events:none;border:1px solid #ff405334;border-radius:inherit;z-index:1}
[data-read] .read-word{transition:opacity .12s linear}
.offers{isolation:isolate}
.offer{border-radius:18px;min-height:330px}
.offer:before{content:attr(data-mark);position:absolute;right:-8px;bottom:12px;font-size:105px;font-weight:850;letter-spacing:-9px;line-height:1;color:#ffffff03;pointer-events:none}
.offer h3,.offer p,.offer .tag{position:relative}
.offer .offer-icon{background:#ff243c08}
.button:not(.small){transform:translate3d(var(--mag-x,0px),var(--mag-y,0px),0);transition:transform .22s,box-shadow .3s,background .3s}
.button:not(.small):hover{box-shadow:0 10px 45px #ff243c45}
.journey-rail{position:fixed;right:18px;top:50%;transform:translateY(-50%);z-index:14;display:flex;flex-direction:column;gap:15px}
.journey-rail a{min-height:40px;min-width:40px;display:flex;gap:9px;align-items:center;justify-content:flex-end;font:12px ui-monospace,monospace;color:#77727f}
.journey-rail a:after{content:'';width:16px;height:1px;background:#ffffff30;transition:width .3s,background .3s}
.journey-rail a span{opacity:0;transform:translateX(6px);transition:.2s;background:#08080be8;padding:4px 6px}
.journey-rail a:hover span,.journey-rail a:focus-visible span{opacity:1;transform:none}
.journey-rail a.current{color:#ff6478}.journey-rail a.current:after{width:28px;background:#ff243c;box-shadow:0 0 10px #ff243c}
.media-grid{perspective:1600px}
.story-on .media-grid .media-card{transform:translateY(var(--media-lift,0px)) rotate(var(--media-turn,0deg));transition:opacity .7s,transform .15s linear,border-color .3s;transform-origin:50% 100%}
.media-card:hover{box-shadow:0 22px 55px #0009,0 0 35px #ff243c0c}
.media-card .media-kicker{background:linear-gradient(100deg,#ff243c07,transparent)}
.access{position:relative}
.steps{position:relative}
.steps:before{content:'';position:absolute;top:6px;bottom:30px;left:8px;width:1px;background:#ffffff13}
.step{border:0;padding-left:0;gap:30px;padding-bottom:30px}
.step:before{display:none}
.step:after{content:'';position:absolute;left:8px;top:20px;bottom:-1px;width:1px;background:linear-gradient(#ff243c,#ff243c22);transform:scaleY(var(--step-p,0));transform-origin:top;transition:transform .1s linear}
.step:last-child:after{bottom:30px}
.step>b{position:relative;z-index:1;background:#080809;padding:5px 0;font-size:13px;color:#9c7880;transition:color .3s}
.step.step-lit>b{color:#ff526c;text-shadow:0 0 15px #ff243c88}
.step h3{color:#aaa4b1;transition:color .3s}.step.step-lit h3{color:white}
.final{min-height:540px;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 75%,#95132928,transparent 65%);padding-block:125px}
.final:before{display:none}
.final>.reveal{position:relative;z-index:2}
.final-orbits{position:absolute;inset:0;pointer-events:none;display:grid;place-items:center;overflow:hidden}
.final-orbits i{position:absolute;width:min(85vw,950px);aspect-ratio:1;border:1px solid #ff243c23;border-radius:50%;transform:scale(calc(1.5 - var(--arrival,1)*.55)) rotate(calc(var(--arrival,1)*40deg));box-shadow:0 0 100px #ff243c04}
.final-orbits i:nth-child(2){width:min(64vw,690px);border-color:#ffffff12;transform:scale(calc(1.8 - var(--arrival,1)*.8))}
.final-orbits i:nth-child(3){width:min(42vw,450px);border-color:#ff243c33;transform:scale(calc(2 - var(--arrival,1)));background:radial-gradient(ellipse,#ff243c05,transparent 65%)}
.final h2{transform:translateY(calc((1 - var(--arrival,1))*26px));transition:transform .1s linear}
.final.arrived .button{box-shadow:0 0 0 6px #ff243c08,0 0 65px #ff243c35}
.final.arrived .button:after{animation:final-shine 1.4s .25s ease-out both}
.final .eyebrow{letter-spacing:3px}.final p{font-size:14px}
.motion-paused .title-line>span{animation:none!important;transform:none!important}
.motion-paused .read-word{opacity:1!important}
.motion-paused .hero-dust{display:none}
.motion-paused .brand-cinema,.motion-paused .media-grid .media-card,.motion-paused .button,.motion-paused .final h2{transform:none!important}
.motion-paused .step h3{color:white}
@keyframes line-unveil{from{transform:translateY(115%) rotate(3deg)}to{transform:translateY(0) rotate(0)}}
@keyframes dust-rise{0%{transform:translate3d(0,30px,0);opacity:0}20%,70%{opacity:.4}100%{transform:translate3d(20px,-100px,0);opacity:0}}
@keyframes scroll-indicator{0%{transform:translateY(-20px)}70%,100%{transform:translateY(40px)}}
@keyframes final-shine{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
@media(max-width:1390px){.journey-rail{display:none}}
@media(min-width:1000px){.access-title{position:sticky;top:115px;align-self:start}.access{padding-block:100px 40px}.step{min-height:130px}.immersion{padding-block:120px 30px}.media-card:nth-child(2){margin-top:30px}.media-card:nth-child(3){margin-top:60px}}
@media(max-width:900px){header.nav-compact .nav{height:62px}.offer{min-height:280px}.media-card{margin-top:0}.scroll-hint{display:none}.final{min-height:470px;padding-block:95px}.final-orbits i{width:110vw}.final-orbits i:nth-child(2){width:85vw}.final-orbits i:nth-child(3){width:60vw}.kinetic-band{padding-block:20px}.kinetic-track{gap:20px}.brand-cinema{margin-top:30px}.title-line{padding-bottom:.12em;margin-bottom:-.12em}}
@media(max-width:740px) and (min-height:680px){
  .story-on .offers{display:block;padding-bottom:55px}
  .story-on .offers .offer{position:sticky;top:calc(86px + var(--order)*20px);margin:0 0 24px;min-height:280px;background:radial-gradient(ellipse at 100% 0,#75112020,transparent 70%),#121217;opacity:1!important;transform:scale(var(--stack-scale,1))!important;transform-origin:50% 0;transition:transform .15s linear!important;box-shadow:0 -12px 35px #0006}
  .story-on .offers .offer:nth-child(2){z-index:2}
  .story-on .offers .offer:nth-child(3){z-index:3}
}
@media(max-width:620px){.hero-dust i:nth-child(n+9){display:none}.hero-copy h1{font-size:clamp(52px,13vw,76px)}.hero-copy .lead{max-width:345px}.hero-x{right:-185px;top:100px;font-size:650px;opacity:.7}.phone-window{box-shadow:0 0 80px #e7192520,0 30px 55px #000b}.benefit-strip{margin-top:40px}.kinetic-band{margin-top:0}.kinetic-track{font-size:48px}.brand-cinema{width:94%}.offer h3{font-size:29px}.offer p{font-size:16px}.offer:before{font-size:115px}.final{min-height:500px}.final h2{font-size:clamp(43px,10.5vw,60px)}.final p{font-size:13px}.steps .step{gap:24px}.immersion{padding-top:45px}}
@media(prefers-reduced-motion:reduce){.title-line>span{animation:none!important;transform:none!important}.hero-dust{display:none}.read-word{opacity:1!important}.brand-cinema,.media-grid .media-card,.button,.final h2{transform:none!important}.kinetic-track{transform:translateX(-50%)!important}.final-orbits i{transform:none!important}}
