/* Webfonts — P1-FND-13. Four faces, all self-hosted, all SIL OFL 1.1, no
   network request to a third party. Provenance in src/static/VENDORED.md.

   Inter .................. Latin UI and documents
   IBM Plex Sans Arabic ... Arabic script (ar + ckb)
   JetBrains Mono ......... codes, IDs, file paths
   Space Grotesk .......... logotype and brand headlines ONLY, never UI

   The Zeneon Brand Package v1.0 mandates Cairo for Arabic and Kurdish. That
   rule is not followed, on evidence: Cairo has no Kurdish letters. U+06D5 (ە),
   U+06C6 (ۆ), U+06CE (ێ), U+0695 (ڕ) and U+06B5 (ڵ) are absent from the
   typeface itself — not from a subset of it — so Kurdish set in Cairo borrows
   those five glyphs from whatever font the reader's device happens to offer,
   silently and per character. IBM Plex Sans Arabic has all five. Ratified with
   Darya 2026-08-18; see .scratch/p1-fnd-13/design.md. The brand manual is owed
   an amendment.

   Latin and Arabic are split across two faces by unicode-range, not by [dir]:
   the browser resolves per character, so one --font-core token serves every
   locale and no CSS branch can get the direction wrong. Plex therefore ships
   its Arabic subset only — Inter owns Latin.

   Inter, JetBrains Mono and Space Grotesk are variable fonts: one file covers
   the whole weight range, which is why no weight appears in their filenames. */

/* ---- Inter — Latin UI ------------------------------------------------- */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../../fonts/inter-latin.260c81a4759b.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;
}
/* Kept so Kurdish-Latin and Turkish names (Şirîn, Öztürk) do not fall back
   mid-word — the same defect class this slice exists to remove. */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../../fonts/inter-latin-ext.1ad231aac0a8.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;
}

/* ---- IBM Plex Sans Arabic — Arabic script (ar + ckb) ------------------ */
/* Not variable upstream, so one file per weight. 400/500/600/700 are the four
   weights the --type-* roles in typography.css actually ask for. */
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/ibm-plex-sans-arabic-400-arabic.4fa3d81d41ab.woff2") format('woff2');
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF;
}
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../../fonts/ibm-plex-sans-arabic-500-arabic.106892212ea7.woff2") format('woff2');
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF;
}
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../../fonts/ibm-plex-sans-arabic-600-arabic.64891a810259.woff2") format('woff2');
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF;
}
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../../fonts/ibm-plex-sans-arabic-700-arabic.a4390abc98c2.woff2") format('woff2');
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF;
}

/* ---- JetBrains Mono — codes, IDs, file paths -------------------------- */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("../../fonts/jetbrains-mono-latin.b636a65da4f0.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;
}

/* ---- Space Grotesk — wordmark and brand headlines only ---------------- */
/* Exposed as --font-brand. It has no Arabic or Kurdish coverage at all, which
   is precisely why it must never reach UI chrome. */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url("../../fonts/space-grotesk-latin.87c506d88b9f.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;
}
