/* Reset + Base */
*,*::before,*::after{box-sizing:border-box}
:root{
    --bg:#ffffff;
    --text:#0e1116;
    --muted:#6b7280;
    --brand:#1e66ff;
    --brand-2:#0ea5e9;
    --ink:#0b1220;
    --surface:#f6f8fb;
    --border:#e5e7eb;
    --green:#16a34a;
    --red:#ef4444;
    --shadow:0 6px 18px rgba(2,8,23,.08);
    --radius:16px;
    --radius-sm:10px;
    --container:1180px;
}
html,body{height:100%}
body{
    font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
    margin:0;background:var(--bg);color:var(--text);line-height:1.4;
    -webkit-font-smoothing:antialiased
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{margin:0;padding:0;list-style:none}
h1,h2,h3,h4,h5,h6{margin:0 0 .4em}
p{margin:0 0 1em}
.container{max-width:var(--container);margin-inline:auto;padding:0 16px}
.section{padding:56px 0}
.section--alt{background:var(--surface)}
.display{font-size:clamp(32px,5vw,52px);font-weight:800;letter-spacing:-.02em}
.h3{font-size:clamp(20px,2.4vw,28px);font-weight:700}
.h5{font-size:18px;font-weight:700}
.h6{font-size:14px;font-weight:700}
.tagline{font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.u-muted{color:var(--muted)}
.u-text-brand{color:var(--brand)}
.u-mb-4{margin-bottom:16px}.u-mb-8{margin-bottom:24px}.u-mb-24{margin-bottom:24px}
.u-ml-12{margin-left:12px}
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{left:16px;top:16px;width:auto;height:auto;padding:8px 12px;background:#000;color:#fff;border-radius:8px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.input{border:1px solid var(--border);background:#fff;border-radius:10px;padding:12px 14px;font:inherit;width:100%}
.input--lg{padding:14px 16px;font-size:16px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:12px 18px;font-weight:700;box-shadow:var(--shadow);border:0;cursor:pointer;transition:transform .06s ease}
.btn:active{transform:translateY(1px)}
.btn--primary{background:var(--brand);color:#fff}
.btn--secondary{background:var(--brand-2);color:#fff}
.btn--ghost{background:#fff;border:1px solid var(--border);box-shadow:none}
.btn--sm{padding:10px 14px;font-size:14px}
.btn--xs{padding:8px 12px;font-size:13px;border-radius:12px}
.badge{position:absolute;top:10px;left:10px;background:#111;color:#fff;border-radius:999px;font-size:12px;padding:6px 10px}
.badge.is-green{background:var(--green)}
.form-switch{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.form-switch input[type="radio"]{accent-color:var(--brand)}
