/* ── Open Sans (self-hosted) ─────────────────────────────────────────────
   The design system's typeface. Self-hosted TrueType — must stay self-hosted
   (offline; no CDN). Six bundled weights/styles; body copy is 400.

   Add / replace a weight: drop the .ttf in fonts/ and add or edit its
   @font-face rule below. Validate any new .ttf before committing — it must be a
   real font (first four bytes 00 01 00 00 for TrueType) with no external
   hostnames inside.
   ──────────────────────────────────────────────────────────────────────── */
@font-face { font-family: "Open Sans"; font-weight: 300; font-style: normal; font-display: swap; src: url("../fonts/OpenSans-Light.ttf") format("truetype"); }
@font-face { font-family: "Open Sans"; font-weight: 400; font-style: normal; font-display: swap; src: url("../fonts/OpenSans-Regular.ttf") format("truetype"); }
@font-face { font-family: "Open Sans"; font-weight: 400; font-style: italic; font-display: swap; src: url("../fonts/OpenSans-Italic.ttf") format("truetype"); }
@font-face { font-family: "Open Sans"; font-weight: 600; font-style: normal; font-display: swap; src: url("../fonts/OpenSans-SemiBold.ttf") format("truetype"); }
@font-face { font-family: "Open Sans"; font-weight: 700; font-style: normal; font-display: swap; src: url("../fonts/OpenSans-Bold.ttf") format("truetype"); }
@font-face { font-family: "Open Sans"; font-weight: 800; font-style: italic; font-display: swap; src: url("../fonts/OpenSans-ExtraBoldItalic.ttf") format("truetype"); }

:root {
  /* Open Sans leads every stack; system fonts remain as fallback. Open Sans has
     no serif/mono cut, so those stacks fall back to platform faces. */
  --font-family-base: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-family-display: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-family-serif: Georgia, "Times New Roman", serif;
  --font-family-monospace: "Monaco", ui-monospace, Menlo, Consolas, monospace;

  /* aliases — all point at the base family; components read --font-family-base */
  --base-font-family: var(--font-family-base);
  --font-family-default: var(--font-family-base);
  --font-font-family: var(--font-family-base);
}
