@keyframes hero-fade{0%{opacity:0}}@keyframes hero-draw{to{stroke-dashoffset:0}}@keyframes hero-flow{to{stroke-dashoffset:-1px}}@keyframes hero-resolve{0%{opacity:0;clip-path:inset(48% 0 round 8px)}40%{opacity:1}to{clip-path:inset(0 round 8px)}}.hero-node{animation:hero-fade .4s var(--ease-out) both;animation-delay:calc(var(--i) * 80ms)}.hero-stream{stroke-dasharray:1;stroke-dashoffset:1px;animation:hero-draw .6s var(--ease-out) forwards;animation-delay:calc(.6s + var(--i) * .2s);transition:stroke var(--dur-base) var(--ease-out)}.hero-flow{stroke-dasharray:.012 .07;animation:.4s linear both hero-fade,3.2s linear infinite hero-flow;animation-delay:calc(3.2s + var(--i) * .2s)}.hero-panel{animation:hero-resolve .7s var(--ease-out) both;animation-delay:1.8s}.hero-panel .spark-line{stroke-dasharray:1;stroke-dashoffset:1px;animation:hero-draw .9s var(--ease-out) forwards;animation-delay:2.6s}.hero-panel .spark-point{animation:.3s linear 3.4s both hero-fade}.spark-point{filter:drop-shadow(0 0 3px var(--signal))}.hero-node-tip{opacity:0;transition:opacity var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);transform:translateY(2px)}.hero-node:hover .hero-node-tip{opacity:1;transform:none}.hero-node:hover .hero-node-pill{border-color:var(--harbour)}:is(.hero-stage:has(.hero-node[data-i="0"]:hover) [data-stream="0"],.hero-stage:has(.hero-node[data-i="1"]:hover) [data-stream="1"],.hero-stage:has(.hero-node[data-i="2"]:hover) [data-stream="2"],.hero-stage:has(.hero-node[data-i="3"]:hover) [data-stream="3"],.hero-stage:has(.hero-node[data-i="4"]:hover) [data-stream="4"],.hero-stage:has(.hero-node[data-i="5"]:hover) [data-stream="5"]){stroke:var(--harbour)}.hero-canvas{opacity:0;transition:opacity .6s var(--ease-out)}.hero-stage[data-mode=webgl] .hero-canvas{opacity:1}.hero-stage[data-mode=webgl] .hero-poster-lg{opacity:0;transition:opacity .6s var(--ease-out)}@media (prefers-reduced-motion:reduce){.hero-flow{display:none}}
