:root{--bg:#fff;--fg:#0e1330;--mut:#545b7a;--line:#e6e8f5;--card:#fff;--soft:#f5f6ff;--acc:#4f46e5;--acc2:#7c3aed;--cy:#06b6d4;--grad:linear-gradient(135deg,#4f46e5 0%,#7c3aed 55%,#c026d3 100%);--gradtxt:linear-gradient(90deg,#4f46e5,#9333ea 60%,#db2777);--btnfg:#fff;--shadow:0 1px 2px rgba(20,24,70,.05),0 14px 34px rgba(79,70,229,.10);--glow:radial-gradient(40rem 22rem at 85% -5%,rgba(124,58,237,.18),transparent 70%),radial-gradient(32rem 20rem at 5% 10%,rgba(6,182,212,.16),transparent 70%)}
@media (prefers-color-scheme:dark){:root{--bg:#090a1c;--fg:#eceefc;--mut:#a3a8c9;--line:#22254a;--card:#10122b;--soft:#0d0f26;--acc:#9a9bff;--acc2:#c084fc;--cy:#22d3ee;--shadow:0 1px 0 rgba(255,255,255,.03) inset,0 14px 34px rgba(0,0,0,.35);--glow:radial-gradient(40rem 22rem at 85% -5%,rgba(124,58,237,.35),transparent 70%),radial-gradient(32rem 20rem at 5% 10%,rgba(6,182,212,.22),transparent 70%)}}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font:17px/1.65 ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--acc)}.wrap{max-width:70rem;margin:0 auto;padding:0 1.25rem}
.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;background:var(--card);padding:.5rem 1rem;z-index:9}
header.site{position:sticky;top:0;z-index:5;background:color-mix(in srgb,var(--bg) 85%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4.2rem}
.brand{display:flex;align-items:center;gap:.6rem;font-weight:800;letter-spacing:-.02em;color:var(--fg);text-decoration:none}
.logo{width:2rem;height:2rem;border-radius:.6rem;background:var(--grad);color:#fff;display:grid;place-items:center;font-size:.8rem;font-weight:800;box-shadow:0 4px 14px rgba(124,58,237,.4)}
nav.main{display:flex;flex-wrap:wrap;gap:.25rem 1.4rem;align-items:center}nav.main a{color:var(--fg);text-decoration:none;font-size:.95rem;font-weight:500}nav.main a:hover{color:var(--acc)}
.btn{display:inline-block;background:var(--grad);color:var(--btnfg)!important;padding:.8rem 1.4rem;border-radius:.7rem;text-decoration:none;font-weight:700;box-shadow:0 8px 22px rgba(124,58,237,.35);transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(124,58,237,.45)}
.btn.sm{padding:.55rem 1.05rem;font-size:.92rem;box-shadow:none}
.btn.ghost{background:transparent;color:var(--fg)!important;border:1.5px solid var(--line);box-shadow:none}.btn.ghost:hover{border-color:var(--acc);box-shadow:none}
.btn.white{background:#fff;color:#3b2fd0!important;box-shadow:0 8px 22px rgba(0,0,0,.2)}.btn.outline-w{background:transparent;color:#fff!important;border:1.5px solid rgba(255,255,255,.6);box-shadow:none}
.hero{padding:5.5rem 0 4rem;background:var(--glow)}
.eyebrow{display:inline-block;color:var(--acc);font-weight:700;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;background:var(--soft);border:1px solid var(--line);border-radius:999px;padding:.3rem .8rem}
h1{font-size:clamp(2.4rem,6vw,4.1rem);line-height:1.05;letter-spacing:-.035em;margin:1rem 0 1.1rem;max-width:20ch}
.gt{background:var(--gradtxt);-webkit-background-clip:text;background-clip:text;color:transparent}
h2{font-size:clamp(1.65rem,3.2vw,2.35rem);line-height:1.15;letter-spacing:-.025em;margin:0 0 .6rem}h3{margin:.2rem 0 .4rem;font-size:1.12rem;letter-spacing:-.01em}
.lead{font-size:1.22rem;color:var(--mut);max-width:44rem}.cta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.8rem}
.chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:2rem}.chips span{font-size:.9rem;color:var(--mut);background:var(--card);border:1px solid var(--line);border-radius:999px;padding:.3rem .85rem}.chips span:before{content:"\2713";color:var(--cy);font-weight:800;margin-right:.45rem}
section{padding:4rem 0}section.alt{background:var(--soft);border-block:1px solid var(--line)}section.first{padding-top:0}.sub{color:var(--mut);max-width:42rem;margin:0 0 2.2rem;font-size:1.05rem}.center{text-align:center}.center .sub{margin-inline:auto}
.grid{display:grid;gap:1.1rem;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}
.card{background:var(--card);border:1px solid var(--line);border-radius:1rem;padding:1.4rem 1.4rem;box-shadow:var(--shadow);transition:transform .15s,border-color .15s}.card:hover{transform:translateY(-3px);border-color:var(--acc)}
.card p{margin:.3rem 0 0;color:var(--mut);font-size:.97rem}.card ul{margin:.7rem 0 0;padding-left:1.1rem;color:var(--mut);font-size:.95rem}.card ul li{margin:.15rem 0}
.ico{width:2.7rem;height:2.7rem;border-radius:.8rem;background:var(--grad);display:grid;place-items:center;margin-bottom:.8rem;box-shadow:0 6px 16px rgba(124,58,237,.3)}.ico svg{width:1.4rem;height:1.4rem;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.tag{display:inline-block;font-size:.78rem;font-weight:700;color:var(--acc);background:var(--soft);border:1px solid var(--line);border-radius:999px;padding:.1rem .6rem;margin-top:.8rem}
.steps{counter-reset:s;display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fit,minmax(13.5rem,1fr));padding:0;list-style:none;margin:0}
.steps li{counter-increment:s;background:var(--card);border:1px solid var(--line);border-radius:1rem;padding:1.2rem}.steps li:before{content:counter(s);display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:var(--grad);color:#fff;font-weight:800;margin-bottom:.7rem}.steps p{margin:.2rem 0 0;color:var(--mut);font-size:.96rem}
.split{display:grid;gap:2.2rem;grid-template-columns:repeat(auto-fit,minmax(19rem,1fr));align-items:start}
details{background:var(--card);border:1px solid var(--line);border-radius:.9rem;padding:1rem 1.2rem;margin:.7rem 0}summary{cursor:pointer;font-weight:650;list-style:none}summary::-webkit-details-marker{display:none}summary:after{content:"+";float:right;color:var(--acc);font-size:1.3rem;line-height:1}details[open] summary:after{content:"\2212"}details p{margin:.6rem 0 0;color:var(--mut)}
.banner{background:var(--grad);color:#fff;border-radius:1.4rem;padding:3.2rem 2rem;text-align:center;box-shadow:0 20px 50px rgba(124,58,237,.35);position:relative;overflow:hidden}
.banner:before{content:"";position:absolute;inset:-40% -10% auto auto;width:26rem;height:26rem;background:radial-gradient(circle,rgba(34,211,238,.45),transparent 65%)}
.banner>*{position:relative}.banner h2{color:#fff;max-width:26ch;margin-inline:auto}.banner p{color:rgba(255,255,255,.88);max-width:38rem;margin:.4rem auto 0}.banner .cta{justify-content:center}
dl.contact{margin:0;display:grid;grid-template-columns:auto 1fr;gap:.5rem 1.4rem}dl.contact dt{color:var(--mut)}dl.contact dd{margin:0}
footer.site{border-top:1px solid var(--line);padding:2.2rem 0;color:var(--mut);font-size:.92rem}footer.site .wrap{display:flex;flex-wrap:wrap;gap:1rem 2rem;justify-content:space-between}footer.site a{color:var(--mut)}
.doc{max-width:46rem;padding:3rem 1.25rem}.doc h1{font-size:2.3rem;max-width:none}.doc h2{font-size:1.25rem;margin-top:2rem}.small{color:var(--mut);font-size:.9rem}
.nomb{margin-bottom:0}.nomt{margin-top:0}
@media (max-width:42rem){.hero{padding:3.2rem 0 2.5rem}section{padding:3rem 0}nav.main .hide-sm{display:none}.banner{padding:2.4rem 1.2rem}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card,.btn{transition:none}}
.mt1{margin-top:1rem}.mt08{margin-top:.8rem}.mt14{margin-top:1.4rem}.grid.one{grid-template-columns:1fr}.narrow{max-width:48rem}section[id]{scroll-margin-top:4.5rem}
.hero.first{padding-top:5rem}@media (max-width:42rem){.hero.first{padding-top:3rem}}

.brand img{height:2.4rem;width:auto;display:block}.brand{padding:.2rem 0}
