/* Independent product layers and an animated energy field. */
.hero.hero--motion{height:auto;min-height:870px;background:#08080b;padding:0 0 90px;--scene-x:0px;--scene-y:0px;--scene-rx:0deg;--scene-ry:0deg;--scene-scroll:0px;--scene-scale:1;--light-x:0px;--light-y:0px}
.hero-atmosphere{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 78% 44%,#2f0b14 0%,#110b12 36%,#08080b 65%)}
.hero-spotlight{position:absolute;width:900px;height:900px;left:44%;top:-15%;background:radial-gradient(ellipse,#ed23311e,transparent 65%);transform:translate3d(var(--light-x),var(--light-y),0);will-change:transform}
.hero-floor-glow{position:absolute;width:58%;height:190px;bottom:50px;right:0;background:radial-gradient(ellipse,#f11b3338,transparent 64%);animation:floor-glow 6s ease-in-out infinite;transform:rotate(-10deg)}
.hero-giant-word{position:absolute;right:-1.5%;bottom:17px;font-size:clamp(9rem,20.5vw,22rem);font-weight:700;letter-spacing:-.075em;line-height:.85;color:transparent;-webkit-text-stroke:1px #ffffff0b;white-space:nowrap;transform:translate3d(0,calc(var(--scene-scroll) * -.4),0);user-select:none}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;position:relative;padding-top:140px;min-height:760px;gap:0}
.hero-copy{position:relative;z-index:4;padding-block:48px 40px;pointer-events:none}
.hero-copy a{pointer-events:auto}
.hero--motion .hero-eyebrow{max-width:100%;letter-spacing:.085em;font-size:.75rem;animation:hero-copy-in 1s .05s var(--ease) both}
.hero--motion h1{font-size:clamp(4.6rem,7.85vw,8rem);line-height:.99;letter-spacing:-.065em;max-width:none;margin-top:28px;animation:none}
.hero-title-line{display:block;white-space:nowrap;animation:hero-copy-in 1.15s .14s var(--ease) both}
.hero-title-line:nth-child(2){animation-delay:.26s}
.hero--motion h1 em{color:#f12a38;position:relative}
.hero--motion h1 em:after{content:'';position:absolute;height:3px;left:1%;right:0;bottom:-8px;background:linear-gradient(90deg,#ed2331,transparent);transform-origin:left;animation:energy-underline 1.4s .55s var(--ease) both}
.hero--motion .hero-description{font-size:1.125rem;line-height:1.65;margin-top:31px;color:#bdbdc8;max-width:470px;animation:hero-copy-in 1s .35s var(--ease) both}
.hero--motion .hero-actions{margin-top:31px;gap:25px;align-items:flex-start;animation:hero-copy-in 1s .45s var(--ease) both}
.hero--motion .button-red{position:relative;overflow:hidden;box-shadow:0 8px 35px #ee233120}
.hero--motion .button-red:after{content:'';position:absolute;inset:-120% auto -120% -60%;width:23%;background:linear-gradient(90deg,transparent,#ffffff24,transparent);transform:rotate(25deg);animation:cta-sheen 7s 2s ease-in-out infinite;pointer-events:none}
.hero-stage{height:620px;position:relative;perspective:1300px;z-index:2;pointer-events:none;margin-left:-7%;margin-right:-3%}
.stage-reveal{position:absolute;inset:0;animation:stage-arrive 1.5s .12s var(--ease) both}
.stage-depth{width:100%;height:100%;position:relative;transform-style:preserve-3d;transform:translate3d(var(--scene-x),calc(var(--scene-y) + var(--scene-scroll)),0) rotateX(var(--scene-rx)) rotateY(var(--scene-ry)) scale(var(--scene-scale));will-change:transform}
.hero-coil{position:absolute;transform-style:preserve-3d;will-change:transform}
.hero-coil img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 30px 24px #0008);user-select:none;-webkit-user-drag:none}
.coil-float{width:100%;height:100%;will-change:transform}
.coil-front{width:78%;height:78%;left:4%;top:4%;transform:translateZ(90px);z-index:3}
.coil-front .coil-float{animation:coil-front-float 6.5s -.6s ease-in-out infinite}
.coil-back{width:44%;height:49%;left:56%;top:1%;transform:translateZ(-65px);z-index:1;opacity:.85}
.coil-back .coil-float{animation:coil-back-float 8s -2s ease-in-out infinite}
.coil-side{width:42%;height:49%;right:-2%;bottom:2%;transform:translateZ(135px);z-index:5}
.coil-side .coil-float{animation:coil-side-float 7.3s -1.5s ease-in-out infinite}
.energy-orbit{position:absolute;border-radius:50%;transform-style:preserve-3d;pointer-events:none}
.orbit-outer{width:114%;aspect-ratio:1;left:-5%;top:-4%;transform:translateZ(-95px) rotateX(60deg) rotateZ(-27deg)}
.orbit-inner{width:92%;aspect-ratio:1;left:3%;top:9%;transform:translateZ(0) rotateY(-45deg) rotateZ(18deg)}
.orbit-track{width:100%;height:100%;border-radius:50%;border:1px solid #fa263333;position:relative;box-shadow:0 0 35px #ff203008,inset 0 0 35px #ff203008;animation:orbit-spin 16s linear infinite}
.orbit-track:before{content:'';position:absolute;inset:-2px;border-radius:50%;border:3px solid transparent;border-top-color:#f12a38;border-right-color:#f12a3870;filter:drop-shadow(0 0 8px #f12a38)}
.orbit-track:after{content:'';position:absolute;width:9px;height:9px;top:14%;left:14%;border-radius:50%;background:#ffe6e9;box-shadow:0 0 12px 4px #f12a38,0 0 35px 8px #f12a3880}
.orbit-inner .orbit-track{animation-duration:22s;animation-direction:reverse;opacity:.5}
.orbit-inner .orbit-track:before{border-width:2px;border-top-color:#ff344b}
.energy-spark{position:absolute;width:4px;height:4px;background:#ff7481;border-radius:50%;box-shadow:0 0 12px #f12a38;z-index:6;animation:spark-float 5.5s ease-in-out infinite}
.spark-one{top:13%;left:38%;transform:translateZ(150px)}.spark-two{top:68%;left:13%;animation-delay:-2.1s}.spark-three{top:37%;right:3%;animation-delay:-3.7s}
.stage-legend{position:absolute;left:15%;bottom:-20px;display:flex;align-items:center;gap:13px;font-size:.75rem;letter-spacing:.14em;color:#9797a4;z-index:8;animation:hero-copy-in 1.2s .85s var(--ease) both}
.legend-line{width:27px;height:1px;background:#ee2331}.stage-legend b{font-weight:400;color:#ec2636;margin-inline:8px}
.hero--motion .hero-bottom{bottom:25px;z-index:6}.hero--motion .hero-index{font-size:.75rem}
.motion-paused .stage-depth{transform:none!important}.motion-paused .hero-title-line,.motion-paused .stage-reveal,.motion-paused .hero-copy .hero-eyebrow{animation:none!important;opacity:1;transform:none}.motion-paused .stage-legend{animation:none!important;opacity:1}.motion-paused .hero--motion h1 em:after{animation:none;transform:none}.motion-paused .hero-spotlight{transform:none}.hero-offscreen .hero-stage *,.hero-offscreen .hero-atmosphere *{animation-play-state:paused!important}
@keyframes hero-copy-in{from{opacity:0;transform:translate3d(0,36px,0)}to{opacity:1;transform:none}}
@keyframes stage-arrive{from{opacity:0;transform:translate3d(70px,40px,0) scale(.86) rotate(6deg)}to{opacity:1;transform:none}}
@keyframes energy-underline{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes coil-front-float{0%,100%{transform:translate3d(-4px,10px,0) rotate(-12deg)}50%{transform:translate3d(12px,-22px,0) rotate(-6deg)}}
@keyframes coil-back-float{0%,100%{transform:translate3d(0,-5px,0) rotate(17deg)}50%{transform:translate3d(-13px,24px,0) rotate(11deg)}}
@keyframes coil-side-float{0%,100%{transform:translate3d(2px,14px,0) rotate(12deg)}50%{transform:translate3d(-12px,-16px,0) rotate(18deg)}}
@keyframes orbit-spin{to{transform:rotate(360deg)}}
@keyframes floor-glow{0%,100%{opacity:.55;transform:rotate(-10deg) scale(.9)}50%{opacity:1;transform:rotate(-10deg) scale(1.12)}}
@keyframes spark-float{0%,100%{opacity:.15;translate:0 14px}50%{opacity:.8;translate:0 -23px}}
@keyframes cta-sheen{0%,70%{left:-60%}90%,100%{left:150%}}
@media(min-width:1700px){.hero.hero--motion{min-height:940px}.hero-grid{min-height:835px;padding-top:170px}.hero-stage{height:680px}.hero--motion h1{font-size:8.4rem}}
@media(max-width:1199px){.hero.hero--motion{min-height:800px}.hero-grid{padding-top:138px;min-height:700px}.hero-stage{height:525px;margin-right:-4%;margin-left:-5%}.hero--motion h1{font-size:clamp(4rem,7.8vw,6.5rem)}.hero--motion .hero-eyebrow{letter-spacing:.035em;font-size:.75rem}.hero--motion .hero-description{font-size:1rem}.hero--motion .hero-actions{gap:23px}.hero--motion .button{font-size:.875rem;padding:17px 19px;gap:19px}.hero--motion .hero-index{display:none}.stage-legend{left:9%;font-size:.75rem;letter-spacing:.05em}.stage-legend b{margin-inline:5px}.hero-copy{padding-top:20px}.coil-front{width:84%;left:0}.coil-back{left:56%;top:3%}.coil-side{right:-1%}}
@media(max-width:960px) and (min-width:801px){.hero-grid{grid-template-columns:1.08fr .92fr;padding-top:125px;min-height:685px}.hero-stage{height:440px;margin-left:-6%;margin-right:-10%}.hero--motion h1{font-size:4.2rem}.hero--motion .hero-eyebrow{max-width:280px}.hero--motion .button{max-width:355px}.stage-legend{left:1%;letter-spacing:0}.stage-legend b{margin-inline:3px}.hero--motion .hero-description br{display:none}.hero--motion .hero-description{max-width:340px}}
@media(max-width:800px){.hero.hero--motion{min-height:0;height:auto;padding:0 0 100px}.hero-grid{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding-top:124px;gap:0}.hero-copy{padding:0;z-index:4}.hero--motion .hero-eyebrow{font-size:.75rem;letter-spacing:.035em;max-width:none}.hero--motion h1{font-size:clamp(3.75rem,10.8vw,6.2rem);line-height:1.02;margin-top:23px;max-width:100%}.hero-title-line{white-space:normal}.hero--motion h1 em{white-space:nowrap}.hero--motion .hero-description{font-size:1rem;margin-top:26px;max-width:450px}.hero--motion .hero-actions{margin-top:25px;gap:19px;align-items:flex-start}.hero--motion .hero-actions .button{font-size:.9375rem;max-width:430px}.hero-stage{height:490px;margin:15px -5px 0;perspective:1100px}.stage-reveal{inset:0 5%}.coil-front{width:78%;height:83%;top:1%;left:1%}.coil-back{width:42%;height:50%;left:58%;top:1%;opacity:.85}.coil-side{width:41%;height:49%;right:0%;bottom:2%}.orbit-outer{width:106%;left:-2%;top:0}.orbit-inner{width:88%;left:7%;top:14%}.stage-legend{bottom:0;left:50%;transform:translateX(-50%);white-space:nowrap;letter-spacing:.08em;animation:none}.hero--motion .hero-bottom{bottom:25px}.hero--motion .hero-index{display:none}.hero-atmosphere{background:radial-gradient(ellipse at 65% 67%,#3a0a17 0%,#110b12 35%,#08080b 66%)}.hero-spotlight{width:600px;height:600px;left:-8%;top:26%;opacity:.9}.hero-floor-glow{width:95%;height:170px;right:-10%;bottom:95px}.hero-giant-word{font-size:27vw;bottom:72px;opacity:.9}.hero--motion .scroll-cue>span:first-child{max-width:110px}.hero--motion .scroll-cue{font-size:.75rem;letter-spacing:0}}
@media(max-width:500px){.hero-grid{padding-top:112px}.hero--motion .hero-eyebrow{font-size:.75rem;letter-spacing:.02em;gap:9px}.hero--motion h1{font-size:clamp(3.4rem,13.1vw,4.15rem);letter-spacing:-.06em}.hero--motion .hero-description{font-size:1rem;line-height:1.55;max-width:355px}.hero--motion .hero-actions{align-items:stretch}.hero--motion .hero-actions .button{padding:17px 18px;font-size:.875rem;gap:14px;max-width:100%}.hero--motion .text-link{width:fit-content}.hero-stage{height:370px;margin-top:13px;margin-left:-10px;margin-right:-10px}.stage-reveal{inset:0}.coil-front{left:1%;top:0;width:80%;height:88%}.coil-back{left:59%;top:4%;width:42%;height:50%}.coil-side{width:42%;height:47%;right:0;bottom:2%}.orbit-outer{width:110%;left:-6%;top:-2%}.orbit-inner{top:11%;width:95%;left:0}.stage-legend{font-size:.75rem;letter-spacing:.065em;bottom:-3px;gap:10px}.legend-line{width:20px}.hero--motion .hero-bottom{width:calc(100% - 40px)}.hero--motion .motion-control{font-size:.75rem}.hero--motion .scroll-cue{gap:8px}.hero-giant-word{bottom:72px}.hero--motion h1 em:after{bottom:-4px;height:2px}}
@media(max-width:370px){.hero--motion h1{font-size:3.15rem}.hero--motion .hero-eyebrow{font-size:.75rem;max-width:270px}.hero-stage{height:330px}.hero--motion .hero-description br{display:none}.hero--motion .hero-actions .button{font-size:.8125rem}.hero--motion .motion-label{max-width:85px;text-align:left}.stage-legend{letter-spacing:0;font-size:.75rem}}
@media(prefers-reduced-motion:reduce){.stage-depth{transform:none!important}.hero-title-line,.stage-reveal,.stage-legend{animation:none!important;opacity:1}.hero--motion .hero-title-line{transform:none}.hero-spotlight{transform:none}.hero-giant-word{transform:none}}
