@keyframes heroIllustrationFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.hero-illustration-float{animation:heroIllustrationFloat 5.5s ease-in-out infinite}@keyframes heroAmbientEnter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.hero-ambient-enter{animation:heroAmbientEnter 1.2s cubic-bezier(.16,1,.3,1) .4s both}@keyframes heroWordmarkGradient{0%{background-position:200% 50%}to{background-position:0 50%}}@keyframes heroWordmarkGlow{0%,to{filter:drop-shadow(0 0 0 transparent)}50%{filter:drop-shadow(0 0 28px rgba(59,130,246,.22))}}.hero-wordmark-glow{background-size:200% auto;animation:heroWordmarkGradient 5s linear infinite,heroWordmarkGlow 4s ease-in-out infinite}:root:not([data-theme=dark]) .hero-wordmark-glow{text-shadow:0 0 40px rgba(255,255,255,.9),0 2px 16px rgba(37,99,235,.18)}[data-theme=dark] .hero-wordmark-glow{animation-name:heroWordmarkGradient,heroWordmarkGlowDark}@keyframes heroWordmarkGlowDark{0%,to{filter:drop-shadow(0 0 0 transparent)}50%{filter:drop-shadow(0 0 32px rgba(56,189,248,.18))}}@keyframes heroOrbsEnter{0%{opacity:0}to{opacity:1}}.hero-orbs-enter{animation:heroOrbsEnter 1.4s ease-out both}@keyframes heroScrollChevron{0%,to{transform:translateY(-2px)}50%{transform:translateY(3px)}}@keyframes heroScrollChevronSecondary{0%,to{transform:translateY(-4px);opacity:.35}50%{transform:translateY(1px);opacity:.75}}.hero-scroll-chevron{animation:heroScrollChevron 1.8s ease-in-out infinite}.hero-scroll-chevron-secondary{animation:heroScrollChevronSecondary 1.8s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.hero-ambient-enter,.hero-illustration-float,.hero-orbs-enter,.hero-particle-rise,.hero-scroll-chevron,.hero-scroll-chevron-secondary,.hero-trend-fill,.hero-trend-path,.hero-wordmark-glow{animation:none}}.hero-trend-stop-start{stop-opacity:0}.hero-trend-stop-mid{stop-opacity:.58}.hero-trend-stop-end{stop-opacity:.72}[data-theme=dark] .hero-trend-stop-mid{stop-opacity:.35}[data-theme=dark] .hero-trend-stop-end{stop-opacity:.5}@keyframes heroParticleRise{0%{opacity:0;transform:translateY(0) scale(.85)}15%{opacity:1}85%{opacity:.55}to{opacity:0;transform:translateY(-160px) scale(1.05)}}[data-theme=dark] .hero-ambient .hero-particle-rise{animation-name:heroParticleRiseDark}@keyframes heroParticleRiseDark{0%{opacity:0;transform:translateY(0) scale(.85)}15%{opacity:.85}85%{opacity:.45}to{opacity:0;transform:translateY(-160px) scale(1.05)}}.hero-particle-rise{animation:heroParticleRise 7s ease-out infinite}@keyframes heroTrendDraw{0%{stroke-dashoffset:480;opacity:.35}40%{stroke-dashoffset:0;opacity:1}70%{stroke-dashoffset:0;opacity:.75}to{stroke-dashoffset:-40;opacity:.25}}[data-theme=dark] .hero-ambient .hero-trend-path{animation-name:heroTrendDrawDark}@keyframes heroTrendDrawDark{0%{stroke-dashoffset:480;opacity:.2}40%{stroke-dashoffset:0;opacity:.85}70%{stroke-dashoffset:0;opacity:.6}to{stroke-dashoffset:-40;opacity:.15}}@keyframes heroTrendFill{0%,to{opacity:.1}45%,65%{opacity:.22}}[data-theme=dark] .hero-ambient .hero-trend-fill{animation-name:heroTrendFillDark}@keyframes heroTrendFillDark{0%,to{opacity:.04}45%,65%{opacity:.14}}.hero-trend-path{stroke-dasharray:480;animation:heroTrendDraw 8s ease-in-out infinite}.hero-trend-fill{animation:heroTrendFill 8s ease-in-out infinite}