@keyframes intro-logo{0%{transform:scale(.6);opacity:0}45%{transform:scale(1.05);opacity:1}70%{transform:scale(1)}to{transform:scale(1)}}@keyframes intro-out{0%,70%{opacity:1;visibility:visible}to{opacity:0;visibility:hidden}}@keyframes intro-ring{0%{stroke-dashoffset:300}to{stroke-dashoffset:0}}.intro{animation:intro-out .9s ease forwards}.intro-logo{animation:intro-logo .7s cubic-bezier(.2,.9,.3,1.2) both}.intro-ring{stroke-dasharray:300;animation:intro-ring .7s ease-out both}@keyframes word-in{0%{opacity:0;transform:translateY(.6em) rotate(4deg);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}.word{display:inline-block;opacity:0;animation:word-in .7s cubic-bezier(.2,.8,.2,1) forwards}@keyframes rot-in{0%{transform:translateY(100%);opacity:0}to{transform:none;opacity:1}}.rot-word{display:inline-block;animation:rot-in .45s cubic-bezier(.2,.8,.2,1) both}@keyframes marquee{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.marquee{display:flex;width:max-content;animation:marquee var(--dur,40s) linear infinite}.marquee-wrap:hover .marquee{animation-play-state:paused}.marquee-rev{animation-direction:reverse}@keyframes bokeh{0%{transform:translateZ(0);opacity:0}15%{opacity:var(--o,.6)}to{transform:translate3d(var(--x),-110vh,0);opacity:0}}.bokeh{position:absolute;bottom:-40px;border-radius:9999px;animation:bokeh var(--d) linear infinite;animation-delay:var(--delay);will-change:transform}@keyframes kenburns{0%{transform:scale(1.08)}to{transform:scale(1.18) translate(-1%,-1%)}}.kenburns{animation:kenburns 18s ease-in-out infinite alternate}.draw-line path{stroke-dasharray:1200;stroke-dashoffset:1200;transition:stroke-dashoffset 2.2s ease}.draw-line.in path,.reveal.in .draw-line path{stroke-dashoffset:0}.faq-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}.faq-open .faq-body{grid-template-rows:1fr}.faq-open .faq-icon{transform:rotate(45deg)}.faq-icon{transition:transform .3s ease}.tilt{transform-style:preserve-3d;transition:transform .25s ease;will-change:transform}.screen-in{animation:fadeUp .45s ease both}@media (prefers-reduced-motion:reduce){.intro{display:none}.word{opacity:1}.marquee{animation:none}.bokeh{display:none}.draw-line path{stroke-dashoffset:0}}@keyframes xfade{0%{opacity:0;transform:scale(1.12)}4%{opacity:1}20%{opacity:1}24%{opacity:0;transform:scale(1.02) translate(-1.5%,-1%)}to{opacity:0}}.xfade{opacity:0;animation:xfade 30s linear infinite;will-change:opacity,transform}@keyframes wave{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.wave{animation:wave var(--wd,14s) linear infinite}@keyframes state-glow{0%,to{filter:drop-shadow(0 0 0 rgba(20,184,166,0))}50%{filter:drop-shadow(0 0 10px rgba(20,184,166,.8))}}.map-on{fill:#e2e8f0;transition:fill .8s ease}.in .map-on{fill:#14b8a6;animation:state-glow 2.6s ease-in-out infinite;animation-delay:var(--md,0s);transition-delay:var(--md,0s)}.map-soon{fill:#f1f5f9;stroke:#cbd5e1;stroke-dasharray:4 4}.tl-fill{transform:scaleX(0);transform-origin:left;transition:transform 2.4s cubic-bezier(.2,.8,.2,1)}.in .tl-fill{transform:scaleX(1)}.tl-fill-y{transform:scaleY(0);transform-origin:top;transition:transform 2.4s cubic-bezier(.2,.8,.2,1)}.in .tl-fill-y{transform:scaleY(1)}.tl-dot{transform:scale(0);transition:transform .4s cubic-bezier(.2,.9,.3,1.4);transition-delay:var(--td,0s)}.in .tl-dot{transform:scale(1)}.side-l{transform:translateX(-40px)}.side-l,.side-r{opacity:0;transition:all .7s cubic-bezier(.2,.8,.2,1);transition-delay:var(--sd,0s)}.side-r{transform:translateX(40px)}.in .side-l,.in .side-r{opacity:1;transform:none}@keyframes ai-flash{0%,70%,to{opacity:0}75%{opacity:1}}@keyframes ai-hand{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes ai-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes ai-write{0%{stroke-dashoffset:20}40%,to{stroke-dashoffset:0}}@keyframes ai-pulse{0%{r:10;opacity:.6}to{r:22;opacity:0}}.ai-flash{animation:ai-flash 2.4s infinite}.ai-hand{transform-box:view-box;transform-origin:24px 24px;animation:ai-hand 4s linear infinite}.ai-bounce{animation:ai-bounce 1.6s ease-in-out infinite}.ai-write{stroke-dasharray:20;animation:ai-write 2.4s ease-in-out infinite}.ai-pulse{animation:ai-pulse 2s ease-out infinite}.masonry-item{break-inside:avoid}@media (prefers-reduced-motion:reduce){.xfade{animation:none;opacity:0}.xfade:first-child{opacity:1}.ai-bounce,.ai-flash,.ai-hand,.ai-pulse,.ai-write,.wave{animation:none!important}.side-l,.side-r,.tl-dot{opacity:1;transform:none}.tl-fill,.tl-fill-y{transform:none}.map-on{fill:#14b8a6}}