/* ============================================================================
   Self-hosted fonts (replaces the Google Fonts CDN) — Archivo, Newsreader, Sora.
   woff2 only; font-display:swap so text renders immediately with a fallback.
   Newsreader uses the 14pt optical size (general-purpose text/display).
   ============================================================================ */

/* ── Archivo (body / UI) — 400/500/600/700 ───────────────────────────────── */
@font-face {
    font-family: 'Archivo'; font-style: normal; font-weight: 400; font-display: swap;
    src: url('/fonts/Archivo-Regular.woff2') format('woff2');
}
@font-face {
    font-family: 'Archivo'; font-style: normal; font-weight: 500; font-display: swap;
    src: url('/fonts/Archivo-Medium.woff2') format('woff2');
}
@font-face {
    font-family: 'Archivo'; font-style: normal; font-weight: 600; font-display: swap;
    src: url('/fonts/Archivo-SemiBold.woff2') format('woff2');
}
@font-face {
    font-family: 'Archivo'; font-style: normal; font-weight: 700; font-display: swap;
    src: url('/fonts/Archivo-Bold.woff2') format('woff2');
}

/* ── Newsreader (display / headings) — 500/600/700 + italic 500/600 ───────── */
@font-face {
    font-family: 'Newsreader'; font-style: normal; font-weight: 500; font-display: swap;
    src: url('/fonts/Newsreader_14pt-Medium.woff2') format('woff2');
}
@font-face {
    font-family: 'Newsreader'; font-style: normal; font-weight: 600; font-display: swap;
    src: url('/fonts/Newsreader_14pt-SemiBold.woff2') format('woff2');
}
@font-face {
    font-family: 'Newsreader'; font-style: normal; font-weight: 700; font-display: swap;
    src: url('/fonts/Newsreader_14pt-Bold.woff2') format('woff2');
}
@font-face {
    font-family: 'Newsreader'; font-style: italic; font-weight: 500; font-display: swap;
    src: url('/fonts/Newsreader_14pt-MediumItalic.woff2') format('woff2');
}
@font-face {
    font-family: 'Newsreader'; font-style: italic; font-weight: 600; font-display: swap;
    src: url('/fonts/Newsreader_14pt-SemiBoldItalic.woff2') format('woff2');
}

/* ── Sora (stat numerals / accents) — 600/700/800 ─────────────────────────── */
@font-face {
    font-family: 'Sora'; font-style: normal; font-weight: 600; font-display: swap;
    src: url('/fonts/Sora-SemiBold.woff2') format('woff2');
}
@font-face {
    font-family: 'Sora'; font-style: normal; font-weight: 700; font-display: swap;
    src: url('/fonts/Sora-Bold.woff2') format('woff2');
}
@font-face {
    font-family: 'Sora'; font-style: normal; font-weight: 800; font-display: swap;
    src: url('/fonts/Sora-ExtraBold.woff2') format('woff2');
}
