/* Homepage hero: compositor-only movement, no additional media requests. */
.hero.hero-elevated{isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 82% 44%,#441525 0,transparent 48%),linear-gradient(125deg,#111219,#17131b 62%,#111219)}
.hero-elevated .hero-grid-bg{opacity:.25;mask-image:linear-gradient(90deg,transparent,#000)}
.hero-elevated .hero-copy>p{color:#b8b7c2}
.hero-elevated .hero-copy h1,.hero-elevated .hero-copy .slide-heading{text-wrap:balance}
.hero-elevated .hero-art{isolation:isolate}
.hero-elevated .hero-art:before{content:'';position:absolute;inset:4%;border-radius:50%;background:radial-gradient(circle,#e72e3b20,transparent 65%);border:1px solid #ffffff08;pointer-events:none}
.hero-elevated .hero-art:after{content:'';position:absolute;left:17%;right:17%;bottom:11%;height:12%;border-radius:50%;background:radial-gradient(ellipse,#e72e3b24,transparent 68%);transform:rotate(-12deg);pointer-events:none}
.hero-elevated .hero-art .orbit{border:1px solid #ffffff12;box-shadow:none;animation:none}
.hero-elevated .hero-art .orbit:before{content:'';position:absolute;inset:-1px;border-radius:inherit;border:2px solid transparent;border-top-color:#f8556b;border-right-color:#f8556b28;transform:rotate(20deg)}
.hero-elevated .hero-art .orbit:after{content:'';position:absolute;left:50%;top:-4px;width:7px;height:7px;background:#ff8491;border-radius:50%;box-shadow:0 0 15px #ff536c}
.hero-elevated .hero-art .orbit-two:before{border-top-color:#a9b8ed;border-right-color:#a9b8ed22}
.hero-elevated .hero-art .orbit-three:before{border-top-color:#ffffff90;border-right-color:transparent}
.hero-elevated .orbital-node{width:112px;height:95px;border-radius:18px;background:linear-gradient(135deg,#32303c,#1b1a24);border:1px solid #ffffff24;box-shadow:0 18px 45px #0004;gap:8px}
.hero-elevated .orbital-node span{color:#e1dfe9;font-size:12px;font-weight:650;letter-spacing:.02em}
.hero-elevated .core-cube{filter:drop-shadow(0 25px 35px #ed29433b)}
.hero-elevated .ecosystem-label{background:#1c1923cc;border:1px solid #ffffff14;border-radius:30px;padding:8px 16px;color:#d4d0dc}
.hero-elevated .hero-proof{color:#c2bdc9}
.hero-elevated .hero-bottom{border-top-color:#ffffff14}
.hero-elevated.is-hero-moving .hero-art .orbit-one{animation:hero-orbit-turn 24s linear infinite}
.hero-elevated.is-hero-moving .hero-art .orbit-two{animation:hero-orbit-turn 17s linear infinite reverse}
.hero-elevated.is-hero-moving .hero-art .orbit-three{animation:hero-orbit-turn 12s linear infinite}
.hero-elevated.is-hero-moving .orbital-node{animation:hero-node-lift 5s ease-in-out infinite}
.hero-elevated.is-hero-moving .node-two{animation-delay:-1.7s}
.hero-elevated.is-hero-moving .node-three{animation-delay:-3.4s}
.hero-elevated:not(.is-hero-moving) .hero-art *, .hero-elevated:not(.is-hero-moving) .cinematic-lights i,.hero-elevated:not(.is-hero-moving) .hero-glow{animation-play-state:paused!important}
@keyframes hero-orbit-turn{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes hero-node-lift{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-15px) rotate(2deg)}}
@media(max-width:767px){.hero-elevated .orbital-node{width:96px;height:82px}.hero-elevated .orbital-node span{font-size:11px}.hero-elevated .hero-art .orbit-three:before{display:none}.hero-elevated .hero-copy>p{font-size:14px}.hero-elevated .hero-art{margin-top:10px}}
@media(prefers-reduced-motion:reduce){.hero-elevated *{animation:none!important;transition:none!important}}
/* Two independent brand layers replace the cube. */
.hero-brand-duet{position:absolute;inset:0;z-index:3;pointer-events:none}
.hero-brand-float{position:absolute;display:flex;align-items:center;justify-content:center;transform-origin:center;filter:drop-shadow(0 18px 24px #0006)}
.hero-brand-float img{display:block;width:100%;height:100%;object-fit:contain}
.hero-brand-portkon{width:54%;height:20%;left:13%;top:28%;transform:rotate(-7deg)}
.hero-brand-partner{width:30%;height:32%;right:12%;top:48%;transform:rotate(7deg)}
.hero-brand-path{position:absolute;width:68%;height:47%;left:15%;top:29%;border:1px solid #ff647b32;border-radius:50%;transform:rotate(-26deg)}
.hero-brand-path:after{content:'';position:absolute;inset:12px -15px;border:1px dashed #ffffff16;border-radius:50%}
.hero-brand-path i{position:absolute;top:-4px;left:50%;width:8px;height:8px;border-radius:50%;background:#ff7085;box-shadow:0 0 18px #ff466c}
.hero-elevated .hero-art .node-one{top:9%;left:9%}
.hero-elevated .hero-art .node-two{top:25%;right:-1%}
.hero-elevated .hero-art .node-three{bottom:9%;left:16%}
.hero-elevated.is-hero-moving .hero-brand-portkon{animation:hero-portkon-drift 8s ease-in-out infinite}
.hero-elevated.is-hero-moving .hero-brand-partner{animation:hero-partner-drift 8s ease-in-out infinite}
.hero-elevated.is-hero-moving .hero-brand-path{animation:hero-brand-signal 16s linear infinite}
@keyframes hero-portkon-drift{0%,100%{transform:translate3d(0,0,0) rotate(-7deg)}35%{transform:translate3d(22px,-15px,0) rotate(2deg)}70%{transform:translate3d(8px,12px,0) rotate(-2deg)}}
@keyframes hero-partner-drift{0%,100%{transform:translate3d(0,0,0) rotate(7deg)}35%{transform:translate3d(-15px,15px,0) rotate(-3deg)}70%{transform:translate3d(-22px,-10px,0) rotate(2deg)}}
@keyframes hero-brand-signal{to{transform:rotate(334deg)}}
@media(max-width:767px){.hero-brand-portkon{width:56%;left:10%;top:28%}.hero-brand-partner{width:31%;right:11%;top:49%}.hero-elevated .hero-art .node-one{top:0;left:4%}.hero-elevated .hero-art .node-two{top:23%;right:-2%}.hero-elevated .hero-art .node-three{bottom:0;left:8%}}
@media(prefers-reduced-motion:reduce){.hero-brand-duet *{animation:none!important}}
/* A single product stage: brands connect to the robot through light circuits. */
.hero-elevated .hero-robot-fusion{perspective:1000px}
.hero-elevated .hero-robot-fusion>.orbit,.hero-elevated .hero-robot-fusion>.orbital-node,.hero-robot-fusion>.orbit-coordinate{display:none}
.hero-elevated .hero-robot-fusion:before,.hero-elevated .hero-robot-fusion:after{display:none}
.hero-robot-fusion .hero-brand-duet{inset:0}
.fusion-halo{position:absolute;left:22%;top:12%;width:61%;height:72%;border-radius:50%;background:radial-gradient(ellipse,#496a8e20,transparent 69%);border:1px solid #ffffff0d}
.fusion-halo:before,.fusion-halo:after{content:'';position:absolute;inset:9%;border:1px solid #ffffff09;border-radius:50%}
.fusion-halo:after{inset:22%;border-style:dashed}
.fusion-robot{position:absolute;left:30%;top:12%;width:44%;height:75%;z-index:3;overflow:hidden}
.fusion-robot img{width:100%;height:100%;object-fit:contain;filter:brightness(1.5) drop-shadow(0 8px 16px #0008)}
.fusion-platform{position:absolute;left:26%;top:79%;width:53%;height:13%;border-radius:50%;background:radial-gradient(ellipse,#7494bb20,transparent 67%);border:1px solid #8badd43b;transform:rotate(-5deg)}
.fusion-platform:before{content:'';position:absolute;inset:10%;border-radius:50%;border:1px solid #e72e3b77}
.fusion-platform i{position:absolute;inset:25%;border-radius:50%;background:#e72e3b0d}
.hero-robot-fusion .hero-brand-portkon{left:0;top:27%;width:34%;height:13%;transform:none;z-index:4}
.hero-robot-fusion .hero-brand-partner{right:-2%;top:25%;width:24%;height:24%;transform:none;z-index:4}
.fusion-circuit{position:absolute;top:45%;height:18%;width:28%;z-index:2;border-bottom:1px solid #fa456980}
.fusion-circuit-left{left:6%;border-right:1px solid #fa456980;border-radius:0 0 22px 0}
.fusion-circuit-right{right:2%;border-left:1px solid #8bbedb70;border-bottom-color:#8bbedb70;border-radius:0 0 0 22px}
.fusion-circuit i{position:absolute;height:2px;width:36%;bottom:-1px;background:linear-gradient(90deg,transparent,#ff99b0);box-shadow:0 0 10px #e72e3b60;opacity:0}
.fusion-circuit-right i{background:linear-gradient(90deg,#b6e8ff,transparent);box-shadow:0 0 10px #91cbff60}
.fusion-scan{position:absolute;left:20%;right:20%;height:1px;top:20%;background:linear-gradient(90deg,transparent,#b2e1ffad,transparent);box-shadow:0 3px 16px #a5d7ff45;opacity:0}
.hero-robot-fusion .ecosystem-label{left:50%;bottom:0;transform:translateX(-50%);white-space:nowrap;font-size:9px;letter-spacing:2px}
.hero-elevated.is-hero-moving .hero-robot-fusion .hero-brand-portkon{animation:fusion-brand-left 7s ease-in-out infinite}
.hero-elevated.is-hero-moving .hero-robot-fusion .hero-brand-partner{animation:fusion-brand-right 7s ease-in-out infinite}
.hero-elevated.is-hero-moving .fusion-circuit-left i{animation:fusion-flow-left 3.6s ease-in-out infinite}
.hero-elevated.is-hero-moving .fusion-circuit-right i{animation:fusion-flow-right 3.6s 1.2s ease-in-out infinite}
.hero-elevated.is-hero-moving .fusion-scan{animation:fusion-scan 6s 2s ease-in-out infinite}
@keyframes fusion-brand-left{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(6px,-9px,0)}}
@keyframes fusion-brand-right{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(-6px,9px,0)}}
@keyframes fusion-flow-left{0%{transform:translateX(0);opacity:0}25%{opacity:1}80%{transform:translateX(170%);opacity:0}100%{opacity:0}}
@keyframes fusion-flow-right{0%{transform:translateX(170%);opacity:0}25%{opacity:1}80%{transform:translateX(0);opacity:0}100%{opacity:0}}
@keyframes fusion-scan{0%,15%{transform:translateY(0);opacity:0}30%{opacity:.8}65%{transform:translateY(240px);opacity:0}100%{opacity:0}}
@media(max-width:767px){.hero-robot-fusion .hero-brand-portkon{left:0;top:24%;width:35%;height:14%}.hero-robot-fusion .hero-brand-partner{right:-2%;top:24%;width:25%;height:24%}.fusion-robot{left:28%;top:3%;width:48%;height:85%}.fusion-platform{top:81%}.hero-robot-fusion .ecosystem-label{bottom:-8%;font-size:8px;letter-spacing:1.2px}.fusion-halo{top:4%;height:82%}}
@media(prefers-reduced-motion:reduce){.hero-robot-fusion *{animation:none!important}}
@media(min-width:768px){.fusion-robot{left:25%;top:8%;width:54%;height:82%}}
/* Brand presentation: restrained glass layers and illuminated perimeter details. */
.hero-robot-fusion .hero-brand-float{isolation:isolate;filter:none;transform-style:preserve-3d}
.hero-robot-fusion .hero-brand-float:before,.hero-robot-fusion .hero-brand-float:after{content:'';position:absolute;pointer-events:none;z-index:-1}
.hero-robot-fusion .hero-brand-portkon{height:18%;top:24%;padding:16px 12px;background:linear-gradient(135deg,#ffffff0c,#ffffff02);border:1px solid #ffffff1c;border-radius:16px;box-shadow:0 18px 35px #0003,inset 0 1px #ffffff0a}
.hero-robot-fusion .hero-brand-portkon:before{inset:-7px;border-radius:21px;border:1px solid #f04b6745;clip-path:polygon(0 0,24% 0,24% 3%,3% 3%,3% 26%,0 26%,0 0,100% 100%,76% 100%,76% 97%,97% 97%,97% 74%,100% 74%,100% 100%)}
.hero-robot-fusion .hero-brand-portkon:after{height:2px;left:15%;right:15%;bottom:-1px;background:linear-gradient(90deg,transparent,#ff647c,transparent);box-shadow:0 0 15px #f43a6255}
.hero-robot-fusion .hero-brand-portkon img{filter:drop-shadow(0 5px 9px #0005)}
.hero-robot-fusion .hero-brand-partner{padding:12px;border-radius:50%;background:radial-gradient(circle at 38% 26%,#dceeff12,#95c8f905 70%);border:1px solid #9fc6e237;box-shadow:0 18px 35px #0003,inset 0 1px #ffffff15}
.hero-robot-fusion .hero-brand-partner:before{inset:-8px;border:1px solid #94d6ff25;border-top-color:#b5e2ffba;border-bottom-color:#5288b977;border-radius:50%}
.hero-robot-fusion .hero-brand-partner:after{inset:-15px;border:1px dashed #a1d8ff22;border-radius:50%}
.hero-robot-fusion .hero-brand-partner img{filter:drop-shadow(0 0 6px #93c9ff25)}
.hero-elevated.is-hero-moving .hero-robot-fusion .hero-brand-partner:before{animation:fusion-brand-ring 14s linear infinite}
.hero-elevated.is-hero-moving .hero-robot-fusion .hero-brand-partner:after{animation:fusion-brand-ring 24s linear infinite reverse}
@keyframes fusion-brand-ring{to{transform:rotate(360deg)}}
@keyframes fusion-brand-left{0%,100%{transform:translate3d(0,0,0) rotateY(-6deg) rotateZ(-2deg)}50%{transform:translate3d(6px,-9px,0) rotateY(5deg) rotateZ(1deg)}}
@keyframes fusion-brand-right{0%,100%{transform:translate3d(0,0,0) rotateY(6deg)}50%{transform:translate3d(-6px,9px,0) rotateY(-5deg)}}
@media(max-width:767px){.hero-robot-fusion .hero-brand-portkon{height:18%;top:22%;padding:10px 7px;border-radius:12px}.hero-robot-fusion .hero-brand-partner{padding:9px}.hero-robot-fusion .hero-brand-partner:before{inset:-5px}.hero-robot-fusion .hero-brand-partner:after{inset:-10px}}
@media(prefers-reduced-motion:reduce){.hero-robot-fusion .hero-brand-float:before,.hero-robot-fusion .hero-brand-float:after{animation:none!important}}
.hero-elevated:not(.is-hero-moving) .hero-brand-float:before,.hero-elevated:not(.is-hero-moving) .hero-brand-float:after{animation-play-state:paused!important}
body[data-motion="0"] .hero-brand-float:before,body[data-motion="0"] .hero-brand-float:after{animation:none!important}
