/* HELP-012 — Noto Sans Tamil for the public help centre.
 *
 * ── WHY THIS EXISTS ──────────────────────────────────────────────────────
 * `assets/css/fonts/urbanist.css` carries the site's base typography:
 *
 *     body { font-family: Urbanist, sans-serif; font-size: .85rem }
 *
 * Urbanist ships latin and latin-ext only. So a Tamil string on bizgo.in fell
 * through to the browser's generic `sans-serif` — Nirmala UI or Latha on
 * Windows, Noto on Android, Tamil MN on iOS — at metrics nobody chose, beside
 * Urbanist headings it does not match. Identical defect to the dashboard's,
 * and fixed the same way; see
 * `admin/src/assets/fonts/noto-sans-tamil/noto-sans-tamil.css` for the full
 * account.
 *
 * ── WHY IT IS LOADED ONLY BY home/help/*.php, AND NOT SITE-WIDE ──────────
 * Deliberate, and worth stating because the opposite looks tidier. There are
 * ~1,048 generated SEO pages plus the whole marketing site, and not one of
 * them renders a Tamil character today. Linking this globally would add a
 * stylesheet request to every one of them to fix a problem none of them has.
 *
 * The FONT FILE costs nothing either way — `unicode-range` means a browser
 * only fetches a face when a rendered character falls in its range — but the
 * CSS request is real, and home/header.php's own comments show how carefully
 * this site's asset waterfall has already been measured (APP-077: 0.0931 CLS
 * on /demo, traced to exactly this file landing late).
 *
 * If a Tamil string ever appears elsewhere on home/, this moves into
 * header.php unconditionally and this comment goes with it.
 *
 * ── WHY `urbanist.css` IS NOT EDITED ─────────────────────────────────────
 * It is CLS-critical (APP-077 again) and its `font-display` value is a
 * deliberate difference from the admin's. A separate file with a later
 * cascade position gets the same result and leaves that tuning alone.
 *
 * ⚠️ THE SELECTOR IS `html body`, NOT `body`, AND THAT IS LOAD-BEARING.
 * urbanist.css is fetched with `rel="preload" … onload="this.rel='stylesheet'"`
 * (header.php), i.e. ASYNCHRONOUSLY. Two async stylesheets have no guaranteed
 * cascade order between them, so "declare it later in the document" is not a
 * rule that holds here — it would work on a warm cache and lose on a cold one,
 * which is the worst way for a font bug to behave. `html body` is specificity
 * (0,0,2) against urbanist.css's (0,0,1) and wins whichever arrives first.
 */

/* tamil — the ONLY subset. Urbanist precedes Noto for every Latin codepoint,
   so a Latin glyph can never reach this family and the other two Google
   subsets would be dead weight. */
@font-face {
  font-family: "Noto Sans Tamil";
  font-style: normal;
  font-weight: 300 800;
  font-stretch: 100%;
  /* `swap`, matching the pSEO pages rather than urbanist.css's `block`. This
     face only ever draws help-article prose, never the page frame, so a swap
     cannot move the layout the way APP-077's did. */
  font-display: swap;
  src: url(../../fonts/noto-sans-tamil-gf/noto-sans-tamil-tamil.woff2) format("woff2");
  unicode-range: U+0964-0965, U+0B82-0BFA, U+200C-200D, U+20B9, U+25CC;
}

/* One stack, Noto SECOND, never a per-language swap — so a mixed line draws
   Latin in Urbanist and Tamil in Noto. Every Tamil article contains English
   product names on purpose. */
html body {
  font-family: Urbanist, "Noto Sans Tamil", sans-serif;
}
