/*
Typography (global)

Enforce consistent typography across the frontend via tokens.

Critical constraint: this file must be safe to load globally without causing
layout/visual regressions. It therefore avoids margin resets, color resets,
and aggressive line-height changes. Page/context selectors remain authoritative.
*/

body {
    font-family: var(--font-family-base, var(--ds-font-body, 'Sora', 'Space Grotesk', sans-serif));
    font-size-adjust: var(--ds-font-size-adjust, 0.52);
    font-size: var(--font-size-body, var(--ds-body-size, 1rem));
}

:where(h1, h2, h3, h4, h5, h6) {
    /* Defaults preserve current behavior (inherit from body / UA defaults). */
    font-family: var(--font-family-heading, inherit);
}

:where(h1) { font-size: var(--font-size-h1, var(--ds-h1-size, 2em)); }
:where(h2) { font-size: var(--font-size-h2, var(--ds-h2-size, 1.5em)); }
:where(h3) { font-size: var(--font-size-h3, var(--ds-h3-size, 1.17em)); }
:where(h4) { font-size: var(--font-size-h4, var(--ds-h4-size, 1em)); }
:where(h5) { font-size: var(--font-size-h5, var(--ds-h5-size, 0.83em)); }
:where(h6) { font-size: var(--font-size-h6, var(--ds-h6-size, 0.67em)); }
