/* Speecon UI kit — bundled web fonts (REL-11, CR-1 speecon.com retheme).
   These @font-face rules point ONLY at woff2 files bundled next to this stylesheet. Nothing is
   loaded from Google Fonts or any CDN at runtime: the tools run on-prem and offline, and a remote
   Google Fonts request would leak the viewer's IP (a GDPR issue). The woff2 were fetched once at
   build time from the @fontsource npm packages (pinned 5.3.0), all SIL OFL 1.1; licences are in
   fonts/Anton-OFL.txt, fonts/Inter-OFL.txt and fonts/Fraunces-OFL.txt and recorded in the project
   licence register (GLOBAL_MEMORY §Licensing). `font-display: swap` means text renders immediately
   in the fallback and reflows when the face loads — never an invisible page.

   Three faces match the speecon.com website:
     • Anton 400         — the display face (UPPERCASE headings + the SPEECON wordmark)
     • Inter (variable)  — body, UI, controls, tables (weight axis 100–900, we use 400–800)
     • Fraunces (italic, variable) — the serif eyebrow only (coral, italic)
   Each face ships a latin + a latin-ext subset (German umlauts/ß live in latin). The mono stack is
   a system stack (no bundled mono), unchanged. */

/* ---- Anton — display (headings + wordmark), single weight 400 ------------------------------- */
@font-face {
  font-family: "Anton";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/anton-400-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: "Anton";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/anton-400-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

/* ---- Inter (variable) — the text face (body, UI, tables). Weight axis 100–900. ------------- */
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("fonts/inter-var-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("fonts/inter-var-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

/* ---- Fraunces (variable, italic) — the serif eyebrow only. Weight axis 100–900. ------------ */
@font-face {
  font-family: "Fraunces";
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("fonts/fraunces-var-italic-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: "Fraunces";
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("fonts/fraunces-var-italic-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
