/**
 * fonts.css — the self-hosted Rovvi brand type program (Phase 1).
 *
 * CSP blocks font CDNs (font-src 'self' data:), so the faces are served from
 * /public/fonts. Loaded alongside rovvi.css; `--rv-font-display/-sans` (see
 * rovvi.css) point at these families.
 *
 *   Display — Fraunces (warm editorial serif): headings, hero, certificate italic.
 *   Body/UI — Figtree (clean humanist sans).
 *   Code    — JetBrains Mono is deferred; --rv-font-mono still uses the system stack.
 *
 * `font-display: swap` keeps text visible during load; TODO (polish): add a
 * size-adjusted fallback (size-adjust/ascent-override) to zero out swap CLS.
 */

/* ── Fraunces (display) ── */
@font-face { font-family:"Fraunces"; font-style:normal; font-weight:500; font-display:swap;
  src:url("/fonts/fraunces-500.woff2") format("woff2"); }
@font-face { font-family:"Fraunces"; font-style:normal; font-weight:600; font-display:swap;
  src:url("/fonts/fraunces-600.woff2") format("woff2"); }
@font-face { font-family:"Fraunces"; font-style:normal; font-weight:700; font-display:swap;
  src:url("/fonts/fraunces-700.woff2") format("woff2"); }
@font-face { font-family:"Fraunces"; font-style:italic; font-weight:500; font-display:swap;
  src:url("/fonts/fraunces-italic-500.woff2") format("woff2"); }

/* ── Figtree (body / UI) ── */
@font-face { font-family:"Figtree"; font-style:normal; font-weight:400; font-display:swap;
  src:url("/fonts/figtree-400.woff2") format("woff2"); }
@font-face { font-family:"Figtree"; font-style:normal; font-weight:500; font-display:swap;
  src:url("/fonts/figtree-500.woff2") format("woff2"); }
@font-face { font-family:"Figtree"; font-style:normal; font-weight:600; font-display:swap;
  src:url("/fonts/figtree-600.woff2") format("woff2"); }
@font-face { font-family:"Figtree"; font-style:normal; font-weight:700; font-display:swap;
  src:url("/fonts/figtree-700.woff2") format("woff2"); }
