/* Network motion: decorative, pausable and independent of the reading flow. */
.home-hero,.product-hero{isolation:isolate;position:relative}
.product-hero{overflow:clip}
.signal-field{position:absolute;inset:0;pointer-events:none;z-index:-1;overflow:hidden}
.signal-field svg{position:absolute;width:100%;height:1000px;inset:0;fill:none}
.signal-field .signal-route{stroke:#62d6c72b;stroke-width:1}
.signal-field .signal-stream{stroke:#79e6da;stroke-width:2;stroke-linecap:round;stroke-dasharray:3 97;animation:network-stream 8s linear infinite;filter:drop-shadow(0 0 5px #62d6c7)}
.signal-field .stream-two{animation-delay:-3s;animation-duration:11s;stroke:#759ee1}
.signal-field .stream-three{animation-delay:-5s;animation-duration:9s}
.signal-field .signal-point{fill:#86e7df;transform-box:fill-box;transform-origin:center;animation:network-point 5s ease-in-out infinite}
.signal-field .point-two{animation-delay:-2s;fill:#8db4f1}
.signal-field .signal-halo{stroke:#62d6c766;stroke-width:1;transform-box:fill-box;transform-origin:center;animation:network-halo 5s ease-out infinite}
.signal-field .halo-two{animation-delay:-2s}
.home-hero .hero-orbit{border-color:#62d6c717;animation:orbit-breathe 10s ease-in-out infinite}
.home-hero .hero-orbit::before{border-color:#62d6c720}
.home-hero .hero-orbit::after{border-color:#62d6c71d}
.home-hero h1>span{background-size:180% 100%;animation:headline-light 12s ease-in-out infinite}
.hero-instrument .hero-screen{animation:instrument-float 7s ease-in-out infinite}
.hero-instrument .signal-readout{animation:readout-float 7s ease-in-out infinite}
.hero-screen:hover{animation-play-state:paused}
.hero-instrument .trace-flow{stroke-width:3;stroke-dasharray:9 91;animation-duration:4.8s}
.product-choice .choice-icon svg{animation:icon-hover 6s ease-in-out infinite}
.product-choice:nth-child(2) .choice-icon svg{animation-delay:-2s}
.product-choice:nth-child(3) .choice-icon svg{animation-delay:-4s}
.product-choice{position:relative;overflow:hidden}
.product-choice::after{content:'';position:absolute;left:12%;right:12%;top:0;height:1px;background:linear-gradient(90deg,transparent,#62d6c7,transparent);opacity:.3;animation:card-signal 6s ease-in-out infinite;pointer-events:none}
.product-choice:nth-child(2)::after{animation-delay:-2s}
.product-choice:nth-child(3)::after{animation-delay:-4s}
.live-pipeline .pipeline-switch{animation:icon-hover 7s ease-in-out infinite}
.live-pipeline .pipeline-switch:nth-child(2){animation-delay:-2s}
.live-pipeline .pipeline-switch:nth-child(3){animation-delay:-4s}
.live-pipeline .pipeline-core>strong{animation:core-energy 5s ease-in-out infinite}
.live-pipeline .core-orbit{border-style:dashed;animation:orbit-turn 30s linear infinite}
.live-pipeline .orbit-two{animation-direction:reverse;animation-duration:40s}
.live-pipeline .pipeline-workbook{animation:instrument-float 7s ease-in-out infinite;animation-delay:-3s}
.live-pipeline .workbook-grid span{animation:record-highlight 7s ease-in-out infinite}
.live-pipeline .workbook-grid span:nth-child(n+7){animation-delay:.5s}
.live-pipeline .workbook-grid span:nth-child(n+10){animation-delay:1s}
.live-pipeline .workbook-grid span:nth-child(n+13){animation-delay:1.5s}
.hardware-product-scene .pi-board{animation:instrument-float 8s ease-in-out infinite}
.hardware-product-scene .hardware-phone{animation:readout-float 8s ease-in-out infinite}
.hardware-product-scene .hardware-orbit{animation:orbit-breathe 7s ease-in-out infinite}
.hardware-product-scene .orbit-two{animation-delay:-3s}
.hardware-product-scene .phone-result{animation:record-highlight 8s ease-in-out infinite}
.hardware-product-scene .phone-result:nth-child(3){animation-delay:1s}
.hardware-product-scene .phone-result:nth-child(4){animation-delay:2s}
.product-choices>.reveal:nth-child(2),.flow-story>.reveal:nth-child(2),.live-feature-grid>.reveal:nth-child(2){transition-delay:.12s}
.product-choices>.reveal:nth-child(3),.flow-story>.reveal:nth-child(3),.live-feature-grid>.reveal:nth-child(3){transition-delay:.24s}
.motion-dock{position:fixed;z-index:45;right:20px;bottom:max(18px,env(safe-area-inset-bottom));display:inline-flex;align-items:center;gap:9px;padding:10px 16px;min-height:44px;border:1px solid #597c8b88;border-radius:50px;background:#152433f2;color:#c7e6e6;font-size:12px;box-shadow:0 6px 30px #0005;backdrop-filter:blur(16px)}
.motion-dock:hover{border-color:var(--accent);background:#203b47}
.motion-dock:disabled{opacity:1;color:#adc0d3}
@keyframes network-stream{to{stroke-dashoffset:-100}}
@keyframes network-point{0%,100%{opacity:.35;scale:.85}50%{opacity:1;scale:1.25}}
@keyframes network-halo{0%{opacity:.6;scale:.5}80%,100%{opacity:0;scale:2}}
@keyframes orbit-breathe{0%,100%{opacity:.5;scale:1}50%{opacity:1;scale:1.04}}
@keyframes orbit-turn{to{rotate:360deg}}
@keyframes headline-light{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
@keyframes instrument-float{0%,100%{translate:0 0}50%{translate:0 -9px}}
@keyframes readout-float{0%,100%{translate:0 0}50%{translate:0 7px}}
@keyframes icon-hover{0%,100%{translate:0 0}50%{translate:0 -6px}}
@keyframes card-signal{0%,100%{opacity:.15;scale:.55 1}50%{opacity:.9;scale:1 1}}
@keyframes core-energy{0%,100%{box-shadow:0 20px 45px #0005,0 0 0 0 #62d6c70a}50%{box-shadow:0 20px 45px #0005,0 0 40px 8px #62d6c727}}
@keyframes record-highlight{0%,20%,65%,100%{background-color:transparent}35%,48%{background-color:#62d6c724}}
@media(max-width:760px){
 .signal-field svg{width:100%;left:0;height:700px;opacity:.65}
 .hero-instrument .hero-screen{animation-name:icon-hover}
 .motion-dock{right:12px;bottom:max(12px,env(safe-area-inset-bottom));font-size:11px;padding:9px 13px}
 .home-hero .hero-orbit{opacity:.7}
}
.motion-paused *, .motion-paused *::before, .motion-paused *::after,
.page-hidden *, .page-hidden *::before, .page-hidden *::after,
.animation-offscreen *, .animation-offscreen *::before, .animation-offscreen *::after{animation-play-state:paused!important}
.motion-paused .reveal-pending{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 .signal-field .signal-stream{stroke-dasharray:none;opacity:.25}
 .signal-field .signal-halo{display:none}
 .motion-dock{box-shadow:none}
}
