html { min-width: 320px; background: var(--page-deep); scroll-behavior: smooth; }
body {
    min-height: 100vh;
    background:
        radial-gradient(circle at 20% -20%, rgba(61, 135, 214, .28), transparent 36rem),
        linear-gradient(145deg, var(--page), var(--page-deep));
    color: var(--text);
    font-family: "Segoe UI", Inter, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
    font-size: 14px;
    line-height: 1.4;
}
button, select, input { color: inherit; }
button, select { cursor: pointer; }
button:focus-visible, input:focus-visible, select:focus-visible, a:focus-visible, [tabindex]:focus-visible {
    outline: none;
    box-shadow: var(--focus);
}
a { text-decoration-color: color-mix(in srgb, currentColor 50%, transparent); text-underline-offset: .18em; }
a:hover { text-decoration-color: currentColor; }
h1, h2, h3 { line-height: 1.15; letter-spacing: -.02em; }
h1 { font-size: clamp(1.2rem, 1.5vw, 1.55rem); font-weight: 650; }
h2 { font-size: clamp(1.05rem, 1.15vw, 1.22rem); font-weight: 650; }
.sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}
.svg-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }
.skip-link {
    position: fixed;
    z-index: 1000;
    top: 12px;
    left: 12px;
    padding: 10px 14px;
    border-radius: 8px;
    background: var(--accent);
    color: var(--accent-ink);
    transform: translateY(-150%);
}
.skip-link:focus { transform: translateY(0); }
.eyebrow {
    color: var(--muted);
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .09em;
    text-transform: uppercase;
}
