.eco-hero-stage{transform-origin:50% 0}@supports (animation-timeline:scroll()){.eco-hero-stage{animation:linear both eco-hero-stage-in;animation-timeline:scroll(root);animation-range:0 640px}}@keyframes eco-hero-stage-in{0%{transform:perspective(1800px)rotateX(24deg)translateY(40px)scale(.92)}to{transform:perspective(1800px)rotateX(0)translateY(0)scale(1)}}.eco-hero-chip{animation:6s ease-in-out infinite eco-hero-float}.eco-hero-chip-delayed{animation-delay:-3s}@keyframes eco-hero-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@media (prefers-reduced-motion:reduce){.eco-hero-stage,.eco-hero-chip{animation:none!important}}
.eco-marquee{-webkit-mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000)}.eco-marquee-track{animation:32s linear infinite eco-marquee-scroll}.eco-marquee:hover .eco-marquee-track{animation-play-state:paused}@keyframes eco-marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.eco-marquee-track{animation:none!important}}
@layer components{.eco-tree-flow{stroke-dasharray:44 300;animation:3s linear infinite eco-tree-flow}.eco-tree-flow-down{stroke-dasharray:30 80;animation:1s linear infinite eco-tree-flow-down}.eco-tree-pain{animation:3s ease-in-out infinite eco-tree-glow}.eco-tree-node{animation:1.5s ease-out infinite eco-tree-pulse}.eco-tree-output{opacity:0;justify-content:center;align-items:center;animation:8s infinite eco-tree-cycle;display:flex;position:absolute;inset:0}@keyframes eco-tree-flow{0%{stroke-dashoffset:340px}to{stroke-dashoffset:0}}@keyframes eco-tree-flow-down{0%{stroke-dashoffset:110px}to{stroke-dashoffset:0}}@keyframes eco-tree-glow{0%,40%,to{border-color:var(--color-ink-border);box-shadow:0 0 #0000}12%,26%{border-color:var(--color-brand-indigo);box-shadow:0 0 0 4px color-mix(in srgb, var(--color-brand-indigo) 16%, transparent)}}@keyframes eco-tree-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--color-brand-purple) 50%, transparent)}70%,to{box-shadow:0 0 0 14px #0000}}@keyframes eco-tree-cycle{0%{opacity:0;transform:translateY(4px)}4%,22%{opacity:1;transform:translateY(0)}26%,to{opacity:0;transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.eco-tree-flow,.eco-tree-flow-down,.eco-tree-pain,.eco-tree-node,.eco-tree-output{animation:none!important}.eco-tree-flow,.eco-tree-flow-down{stroke-dasharray:none}.eco-tree-output:first-child{opacity:1}}}
