.landing-root{--l-teal:#489fb5;--l-teal-deep:#2f7d92;--l-teal-ghost:#eaf3f6;--l-ink:#1d2226;--l-ink-soft:#2b3940;--l-line:#e4e9ec}@media (prefers-reduced-motion:no-preference){html:has(.landing-root){scroll-behavior:smooth}}.landing-root [id]{scroll-margin-top:84px}.reveal{opacity:0;transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1);transition-delay:var(--reveal-delay,0s);will-change:opacity, transform}.reveal-up{transform:translateY(26px)}.reveal-left{transform:translate(-30px)}.reveal-right{transform:translate(30px)}.reveal-scale{transform:scale(.96)}.reveal.is-visible{opacity:1;transform:none}.draw-path{stroke-dasharray:44;stroke-dashoffset:44px;animation:1.1s cubic-bezier(.65,0,.35,1) forwards draw}.draw-path:nth-child(2){animation-delay:.22s}.draw-path:nth-child(3){animation-delay:.44s}@keyframes draw{to{stroke-dashoffset:0}}.sheen{position:relative;overflow:hidden}.sheen:after{content:"";background:linear-gradient(100deg,#0000 20%,#ffffff8c 50%,#0000 80%);animation:4.5s ease-in-out 1.2s infinite sheen;position:absolute;inset:0;transform:translate(-120%)}@keyframes sheen{0%{transform:translate(-120%)}35%,to{transform:translate(120%)}}.float-slow{animation:7s ease-in-out infinite floatY}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.marquee{gap:.75rem;width:max-content;animation:32s linear infinite marquee;display:flex}.marquee-mask{-webkit-mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000);mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}@keyframes marquee{to{transform:translate(-50%)}}.browser{border:1px solid var(--l-line);background:#fff;border-radius:14px;transition:transform .5s cubic-bezier(.22,.61,.36,1),box-shadow .5s cubic-bezier(.22,.61,.36,1);overflow:hidden;box-shadow:0 30px 60px -30px #1d222666}.browser:hover{transform:translateY(-6px);box-shadow:0 40px 80px -34px #1d222680}.browser-bar{border-bottom:1px solid var(--l-line);background:#f6f8f9;align-items:center;gap:8px;padding:10px 14px;display:flex}.browser-dot{border-radius:50%;width:10px;height:10px}.browser-shot{width:100%;height:auto;display:block}.cycler-in{animation:.5s both cyclerIn}@keyframes cyclerIn{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}@media (scripting:none){.reveal{opacity:1!important;transform:none!important}}@media (prefers-reduced-motion:reduce){.reveal{opacity:1!important;transition:none!important;transform:none!important}.draw-path{stroke-dashoffset:0!important;animation:none!important}.sheen:after,.float-slow,.marquee{animation:none!important}.browser:hover{transform:none}}
