
html{scroll-behavior:smooth}html,body{overflow-x:clip}
body{background:#faf8ff;color:#151b29;-webkit-font-smoothing:antialiased}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0s)}
.reveal.in{opacity:1;transform:none}
.reveal-l{opacity:0;transform:translateX(-32px)}.reveal-l.in{opacity:1;transform:none}
.reveal-r{opacity:0;transform:translateX(32px)}.reveal-r.in{opacity:1;transform:none}
.reveal-l,.reveal-r{transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0s)}
.grad-text{background:linear-gradient(100deg,#004bb9,#1f63e0 40%,#5b8def 60%,#004bb9);background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent}
.glass{background:rgba(255,255,255,.72);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.card{background:#fff;border:1px solid rgba(195,198,214,.55);border-radius:2rem;transition:transform .35s,box-shadow .35s,border-color .35s}
.card:hover{transform:translateY(-6px);box-shadow:0 24px 60px -24px rgba(0,75,185,.35);border-color:#b2c5ff}
.phone{position:relative;border-radius:2.6rem;background:#0d1220;padding:9px;box-shadow:0 40px 80px -30px rgba(0,40,120,.55),inset 0 0 0 2px #2a303f}
.phone::before{content:"";position:absolute;top:15px;left:50%;transform:translateX(-50%);width:84px;height:22px;background:#0d1220;border-radius:99px;z-index:2}
.phone img{border-radius:2.1rem;width:100%;display:block;aspect-ratio:9/19;object-fit:cover;object-position:top;background:#fff}
.btn{display:inline-flex;align-items:center;gap:.5rem;border-radius:1rem;font-weight:600;padding:.85rem 1.4rem;transition:all .25s}
.btn-primary{background:linear-gradient(135deg,#1f63e0,#004bb9);color:#fff;box-shadow:0 10px 30px -10px rgba(0,75,185,.7)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 36px -10px rgba(0,75,185,.8)}
.btn-ghost{background:#fff;border:1px solid #c3c6d6;color:#151b29}
.btn-ghost:hover{border-color:#1f63e0;color:#004bb9;transform:translateY(-2px)}
.bar-fill{width:0;transition:width 1.6s cubic-bezier(.2,.7,.2,1)}
.dotgrid{background-image:radial-gradient(#b2c5ff 1.2px,transparent 1.2px);background-size:26px 26px}
.prose-doc h2{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:1.5rem;margin:2.6rem 0 .8rem;color:#151b29;scroll-margin-top:110px}
.prose-doc h3{font-weight:700;font-size:1.05rem;margin:1.5rem 0 .4rem}
.prose-doc p,.prose-doc li{color:#424654;line-height:1.8}
.prose-doc p{margin:.7rem 0}
.prose-doc ul{list-style:none;margin:.6rem 0;padding:0}
.prose-doc ul li{position:relative;padding-left:1.5rem;margin:.45rem 0}
.prose-doc ul li::before{content:"";position:absolute;left:0;top:.7em;width:8px;height:8px;border-radius:99px;background:#1f63e0}
.prose-doc a{color:#004bb9;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.prose-doc table{width:100%;border-collapse:separate;border-spacing:0;margin:1rem 0;font-size:.92rem;border:1px solid #dde2f6;border-radius:1.2rem;overflow:hidden}
.prose-doc th{background:#f1f3ff;text-align:left;padding:.8rem 1rem;color:#151b29}
.prose-doc td{padding:.8rem 1rem;border-top:1px solid #e9edff;color:#424654;vertical-align:top}
.prose-doc img{display:block;max-width:100%;height:auto;border-radius:1.6rem;margin:2rem auto 0;box-shadow:0 20px 50px -28px rgba(0,75,185,.45)}
.prose-doc img + p{margin-top:.6rem;text-align:center;font-size:.85rem}
.prose-doc img + p em{font-style:normal;color:#737786}
.prose-doc blockquote{border-left:4px solid #1f63e0;background:#f1f3ff;padding:1rem 1.3rem;border-radius:0 1.2rem 1.2rem 0;margin:1.4rem 0}
.prose-doc blockquote p{margin:.3rem 0}
.prose-doc ol{list-style:decimal;margin:.6rem 0;padding-left:1.5rem}.prose-doc ol li{margin:.45rem 0;padding-left:.3rem}
.prose-doc code{background:#f1f3ff;padding:.1rem .4rem;border-radius:.4rem;font-size:.9em}
.prose-doc hr{border:0;border-top:1px solid #e2e8fc;margin:2rem 0}
.prose-doc h2:first-child{margin-top:0}
.toc a{display:block;padding:.45rem .9rem;border-radius:.8rem;color:#424654;font-size:.9rem;font-weight:500;transition:.2s}
.toc a:hover,.toc a.on{background:#dae2ff;color:#004bb9}
details>summary{list-style:none;cursor:pointer}details>summary::-webkit-details-marker{display:none}
details[open] .chev{transform:rotate(180deg)}
.chev{transition:transform .3s}
.msg{opacity:0;transform:translateY(12px) scale(.97);transition:all .5s cubic-bezier(.2,.7,.2,1)}
.msg.show{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal,.reveal-l,.reveal-r,.msg{opacity:1!important;transform:none!important}.bar-fill{width:var(--w)!important}}
