body{margin:0;background:#fff}.page{min-height:100vh;background:#fff;font-family:DM Sans,system-ui,sans-serif;color:#1b1c1f}.navlink{color:#1b1c1f;text-decoration:none;padding:10px 2px}.navlink.active{color:#2350b0;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}a{color:#2350b0}a:hover{color:#1b3c86}.rise{animation:rise .8s cubic-bezier(.2,.8,.2,1) backwards}@keyframes rise{0%{opacity:0;transform:translateY(28px)}}.draw path{stroke-dasharray:520;stroke-dashoffset:520;animation:draw 1.1s .5s ease-out forwards}@keyframes draw{to{stroke-dashoffset:0}}.flow{stroke-dasharray:6 8;animation:flow 1.4s linear infinite}@keyframes flow{to{stroke-dashoffset:-28}}.row{transition:border-color .3s,box-shadow .3s}.row:hover{border-color:#2350b0!important;box-shadow:0 14px 32px #1b1c1f14}.btn{transition:transform .2s,box-shadow .2s}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px #2350b059}.navlink{transition:color .2s}.navlink:hover{color:#2350b0!important}.demo{transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,border-color .3s}.demo:hover{transform:translateY(-6px);border-color:#2350b0!important;box-shadow:0 18px 40px #1b1c1f1a}.st1{animation:st1 11s infinite}.st2{animation:st2 11s infinite}.st3{animation:st3 11s infinite}.st4{animation:st4 11s infinite}@keyframes st1{0%,4%{opacity:0;transform:translateY(10px)}8%,92%{opacity:1;transform:none}97%,to{opacity:0}}@keyframes st2{0%,22%{opacity:0;transform:translateY(10px)}26%,92%{opacity:1;transform:none}97%,to{opacity:0}}@keyframes st3{0%,42%{opacity:0;transform:translateY(10px)}46%,92%{opacity:1;transform:none}97%,to{opacity:0}}@keyframes st4{0%,62%{opacity:0;transform:scale(.92)}67%,92%{opacity:1;transform:none}97%,to{opacity:0}}.typing{animation:typing 11s infinite}@keyframes typing{0%,10%{opacity:0}12%,21%{opacity:1}23%,to{opacity:0}}.dot{animation:dot 1s infinite}.dot:nth-child(2){animation-delay:.15s}.dot:nth-child(3){animation-delay:.3s}@keyframes dot{0%,60%,to{transform:none;opacity:.4}30%{transform:translateY(-4px);opacity:1}}.win1{animation:win1 11s infinite}.win2{animation:win2 11s infinite}.win3{animation:win3 11s infinite}@keyframes win1{0%,4%{opacity:0;transform:scale(.9)}8%,26%{opacity:1;transform:none}30%,to{opacity:0}}@keyframes win2{0%,26%{opacity:0;transform:translate(-14px)}30%,52%{opacity:1;transform:none}56%,to{opacity:0}}@keyframes win3{0%,52%{opacity:0;transform:translate(-14px)}56%,92%{opacity:1;transform:none}97%,to{opacity:0}}.bar{transform-origin:bottom;animation:grow 11s infinite}@keyframes grow{0%,44%{transform:scaleY(.08)}58%,92%{transform:scaleY(1)}to{transform:scaleY(.08)}}.pulse{animation:pulse 1.6s infinite}@keyframes pulse{0%,to{box-shadow:0 0 #2350b073}50%{box-shadow:0 0 0 7px #2350b000}}@supports (animation-timeline: view()){.reveal{animation:reveal linear both;animation-timeline:view();animation-range:entry 0% entry 70%}}@keyframes reveal{0%{opacity:0;translate:0 48px}}.ring{animation:ring 2.4s infinite}@keyframes ring{0%{box-shadow:0 0 #ffffff8c}70%,to{box-shadow:0 0 0 14px #fff0}}.ringb{animation:ringb 2.4s infinite}@keyframes ringb{0%{box-shadow:0 0 #2350b080}70%,to{box-shadow:0 0 0 16px #2350b000}}.card svg,.demo .pulse{transition:transform .35s cubic-bezier(.2,.8,.2,1)}.card:hover svg{transform:rotate(-8deg) scale(1.12)}.step{animation:step 8s infinite}@keyframes step{0%,to{opacity:.4}6%,24%{opacity:1}30%{opacity:.4}}.step-last{animation:steplast 8s infinite}@keyframes steplast{0%,72%{opacity:.4}78%,96%{opacity:1}to{opacity:.4}}.before{background:linear-gradient(currentColor,currentColor) no-repeat 0 55%/0 2px;transition:background-size .5s ease}.row:hover .before{background-size:100% 2px}.row .arrow{transition:translate .3s}.row:hover .arrow{translate:8px 0}.draw path{stroke-dasharray:520;stroke-dashoffset:520;animation:draw 1.1s .4s ease-out forwards}.card{transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,border-color .3s}.card:hover{transform:translateY(-6px);border-color:#2350b0!important;box-shadow:0 18px 40px #1b1c1f1a}@media(prefers-reduced-motion:reduce){.typing,.win1,.win2{display:none!important}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.draw path{stroke-dashoffset:0}}@media(max-width:720px){.wrap{padding-left:16px!important;padding-right:16px!important}.hero-title{font-size:46px!important}.sec-title{font-size:34px!important}.band{padding:56px 0!important}.arrow{transform:rotate(90deg)}}
