/* SubDK — self-hosted webfonts. C9.
 *
 * WHY: ten pages used to load these from Google's font CDN, which hands Google the IP
 * address of every visitor at page load — including the visitor reading the privacy policy
 * itself, before any consent, and without an entry in the Art.13 recipients table
 * (privacy.html §8 lists six Firebase services; the font CDN was not among them). Serving
 * the same files from subdk.dk removes the third-party request entirely, so there is
 * nothing left to disclose. Same precedent as qrcode.min.js, vendored locally in P27.
 *
 * THE FILES ARE THE CDN'S OWN woff2 SUBSETS, byte-for-byte: fetched from the URLs its
 * stylesheet itself returns, so rendering is identical to what the pages showed before.
 * Nothing was re-generated or re-subset by hand.
 *
 * ALL FOUR ARE VARIABLE FONTS — read from each file's fvar table, not assumed:
 *   Inter           wght 100-900
 *   IBM Plex Sans   wght 100-700
 *   JetBrains Mono  wght 400-800
 *   Source Serif 4  opsz 8-60 ONLY — no weight axis at all
 * So ONE file per family covers every weight the pages ask for. The old link requested
 * four Inter weights and was served this same single file four times.
 *
 * LATIN ONLY — measured, not assumed. Two checks:
 *   1. æ ø å Æ Ø Å (U+00E6, U+00F8, U+00E5, U+00C6, U+00D8, U+00C5) are present in the
 *      cmap of every file below (verified with fontTools). They live in U+0000-00FF, the
 *      `latin` subset. The `latin-ext` subset contains NONE of them.
 *   2. Scanning the visible text of all ten pages for codepoints outside `latin` found 12,
 *      and every one is a symbol or emoji — ← → ☐ ☑ ⚠ ⏱ ▶ ▾ ✉ 🌐 🤝 and U+FE0F. None of
 *      them is in `latin-ext` either, so they fall through to the system font exactly as
 *      they already did with the CDN. Zero characters in the real latin-ext range
 *      (Central/Eastern European) appear anywhere in the site.
 * latin-ext was therefore 164 KB — 48% of the payload — covering nothing that is used.
 * Consequence, stated plainly: if a future page adds a name with ł ř ő or similar, that
 * text renders in the system fallback rather than in the brand font. Degradation, not
 * breakage — the fallback chains below all end in a generic family.
 *
 * unicode-range is kept even though only one subset ships: it stops the browser from
 * fetching a font file at all for text made purely of the symbols above.
 *
 * font-display: swap is carried over from the old link (&display=swap), so first paint
 * still uses the system fallback and the page never blocks on a font.
 *
 * The CSS variables and fallback chains in each page are UNTOUCHED.
 */

/* ── Inter — --sans in privacy / terms / vilkaar (400 500 600 700 all used) ────────── */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400 700;          /* variable: one file, the whole range */
  font-display: swap;
  src: url('/fonts/inter-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;
}

/* ── Source Serif 4 — --serif, the body text of the three legal documents ───────────
 * Weight 400 ONLY, deliberately. This file has no wght axis, and the old link requested
 * 400;500;600 — never 700 — so the 54 <strong> in privacy (36 in terms/vilkaar) have
 * always been rendered as synthesised bold by the browser. Declaring a range here would
 * not change that (there is no 700 to reach), and adding a real 700 file would change how
 * a published legal document looks. That is a typography decision, not a privacy fix, and
 * it is deliberately NOT bundled into this change. 500/600 are dropped: measured, no rule
 * in any of the three pages sets a weight on a --serif element. */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/source-serif-4-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;
}

/* ── JetBrains Mono — --mono: section numbers, TOC counters, the version line ───────
 * 400 500. The old link asked for 500 alone, so footer.foot .ver (which sets no weight,
 * i.e. 400) was being served the 500 file. 400 is included here on purpose — the one
 * intentional rendering change in C9, approved separately. */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400 500;
  font-display: swap;
  src: url('/fonts/jetbrains-mono-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;
}

/* ── IBM Plex Sans — the seven marketing pages (for-ai, saadan-fungerer, support,
 * sammenlign/*). 400-700; weight 300 is dropped because no rule in any of the seven
 * pages uses it (measured: zero matches for font-weight:300). */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('/fonts/ibm-plex-sans-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;
}
