/* Art-directed layered illustration motion. The image remains the accessible fallback. */
.motion-scene{position:relative;isolation:isolate;perspective:1400px;aspect-ratio:3/2;background:#10251d;border-radius:12px;--split-one:35%;--split-two:67%;--lift:-5px;--drop:4px}
.scene-rig{position:relative;width:100%;height:100%;transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .6s ease-out}
.scene-fallback{display:block;width:100%;height:100%;object-fit:fill}
.scene-plane{position:absolute;inset:0;display:none;will-change:transform;pointer-events:none}
.scene-plane img{display:block;width:100%;height:100%;object-fit:fill;max-width:none}
.plane-0{clip-path:polygon(0 0,100% 0,100% var(--split-one),0 var(--split-one))}
.plane-1{clip-path:polygon(0 var(--split-one),100% var(--split-one),100% var(--split-two),0 var(--split-two))}
.plane-2{clip-path:polygon(0 var(--split-two),100% var(--split-two),100% 100%,0 100%)}
.scene-ready .scene-fallback{visibility:hidden}.scene-ready .scene-plane{display:block}
.scene-ready .plane-0{animation:plane-upper 11s cubic-bezier(.45,0,.55,1) infinite}
.scene-ready .plane-1{animation:plane-middle 11s cubic-bezier(.45,0,.55,1) infinite}
.scene-ready .plane-2{animation:plane-lower 11s cubic-bezier(.45,0,.55,1) infinite}
.scene-circuits{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;opacity:0;transition:opacity .8s}
.scene-ready .scene-circuits{opacity:1}.scene-route{fill:none;stroke:#cfdf8c;stroke-opacity:.1;stroke-width:1;vector-effect:non-scaling-stroke}.scene-signal{fill:none;stroke:#d4e893;stroke-width:1.8;stroke-linecap:round;stroke-dasharray:3 97;stroke-opacity:.7;vector-effect:non-scaling-stroke;animation:signal-travel 6s linear infinite;filter:drop-shadow(0 0 3px #c7dc7b)}.scene-signal:nth-of-type(4){animation-delay:-3s}.scene-signal:nth-of-type(6){animation-delay:-4.5s}
.scene-sheen{position:absolute;inset:0;border-radius:12px;pointer-events:none;background:linear-gradient(115deg,transparent 35%,#efffc208 49%,transparent 60%);background-size:300% 100%;mix-blend-mode:screen;animation:material-light 15s ease-in-out infinite;opacity:.5}
.scene-exploded{--lift:-18px;--drop:14px}.scene-exploded .plane-0{transform:translateY(-18px);animation:none!important}.scene-exploded .plane-1{transform:translateY(0);animation:none!important}.scene-exploded .plane-2{transform:translateY(14px);animation:none!important}.scene-exploded .scene-circuits{opacity:.35}.scene-plane{transition:transform 1.2s cubic-bezier(.22,1,.36,1)}
.scene-controls{position:absolute;right:5.5%;bottom:22px;z-index:5;display:flex;align-items:center;gap:10px}.scene-controls .motion-control{position:static;right:auto;bottom:auto}.explore-control{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:8px 14px;border-radius:40px;border:1px solid #61784f;background:#182f22;color:#e0ecc6;font-size:11px}.explore-control[aria-pressed=true]{background:#becf68;color:#10251d;border-color:#becf68}.explore-control:disabled{opacity:.4;cursor:wait}.explore-control>span:first-child{font-size:18px;line-height:1}.motion-control{min-height:38px}.scene-controls button:hover{border-color:#c4d981}
.scene-exploded-facility{aspect-ratio:1672/941;--split-one:36%;--split-two:63%;background:#0e2119}.scene-talent{--split-one:30%;--split-two:65%;--lift:-3px;--drop:3px}.scene-contractors{--split-one:38%;--split-two:55%;--lift:-3px;--drop:4px}.scene-timesheets{--split-one:42%;--split-two:76%;--lift:-7px;--drop:5px}.scene-contact{--split-one:30%;--split-two:57%;--lift:-3px;--drop:3px}.scene-trust{--split-one:30%;--split-two:64%;--lift:-4px;--drop:3px}.scene-continuity{--split-one:28%;--split-two:65%;--lift:-4px;--drop:3px}.scene-electrical{--split-one:27%;--split-two:65%;--lift:-6px;--drop:5px}.scene-payroll{--split-one:31%;--split-two:62%;--lift:-5px;--drop:5px}.scene-cabling{--split-one:31%;--split-two:62%;--lift:-6px;--drop:5px}.scene-services{--split-one:31%;--split-two:63%;--lift:-3px;--drop:3px}
.hero-art .motion-scene{width:100%}.hero-art>.orb{display:none}.home-art .motion-scene{width:100%;height:100%;aspect-ratio:auto}.home-art .scene-rig{width:100%;height:100%}.home-art .scene-fallback,.home-art .scene-plane img{object-fit:cover}.home-art::after{z-index:3}.home-hero .scene-controls{right:5.5%}
.motion-paused .scene-plane,.motion-paused .scene-signal,.motion-paused .scene-sheen,.tab-hidden .scene-plane,.tab-hidden .scene-signal,.tab-hidden .scene-sheen,.scene-offscreen .scene-plane,.scene-offscreen .scene-signal,.scene-offscreen .scene-sheen{animation-play-state:paused!important}.motion-paused .scene-rig{transform:none!important}
@keyframes plane-upper{0%,100%{transform:translateY(0)}50%{transform:translateY(var(--lift))}}@keyframes plane-middle{0%,100%{transform:translateY(0)}50%{transform:translateY(-1px)}}@keyframes plane-lower{0%,100%{transform:translateY(0)}50%{transform:translateY(var(--drop))}}@keyframes signal-travel{to{stroke-dashoffset:-100}}@keyframes material-light{0%,20%{background-position:150% 0}80%,100%{background-position:-150% 0}}
@media(max-width:650px){.scene-controls{right:6%;bottom:18px;gap:7px}.scene-controls .motion-control,.explore-control{font-size:10px;padding:8px 10px;min-height:40px}.home-hero{padding-bottom:100px}.home-hero .scroll-cue{bottom:74px}.home-hero .scene-controls{left:6%;right:auto}.home-art .scene-fallback,.home-art .scene-plane img{object-fit:contain}.hero-art .motion-scene{max-width:100%}.scene-exploded .plane-0{transform:translateY(-12px)}.scene-exploded .plane-2{transform:translateY(10px)}}
/* Keep the artwork intact: depth is expressed with a floating assembly and technical light planes. */
.plane-0{clip-path:none}.plane-1,.plane-2{clip-path:none;inset:auto 12% 10%;height:22%;border:1px solid #c8df8233;border-radius:50%;opacity:0;transform:rotate(-8deg);transition:opacity .8s,transform 1.2s;animation:none!important}.plane-1 img,.plane-2 img{display:none}.plane-2{inset:12% 18% auto;height:20%;border-style:dashed;border-color:#dfecc326}.scene-exploded .plane-0{transform:translateY(-5px) scale(1.035)}.scene-exploded .plane-1{opacity:1;transform:translateY(10px) rotate(-8deg)}.scene-exploded .plane-2{opacity:1;transform:translateY(-8px) rotate(-8deg)}.scene-exploded .scene-circuits{opacity:1}.scene-ready .plane-0{animation:assembly-float 11s ease-in-out infinite}.scene-exploded .plane-0{animation:none!important}
@keyframes assembly-float{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-6px) scale(1.012)}}
@media(prefers-reduced-motion:reduce){:root:not(.motion-enabled) .scene-plane,:root:not(.motion-enabled) .scene-signal,:root:not(.motion-enabled) .scene-sheen{animation:none!important}.scene-rig,.scene-plane,.scene-circuits{transition:none}}
