/* Self-hosted variable fonts — latin subset. Replaces the runtime
   <link rel="stylesheet" href="fonts.googleapis.com/..."> which was
   blocked by our own CSP (style-src 'self' 'unsafe-inline' did NOT
   permit external stylesheet origins). Per 2026-05-23 3-way audit:
   self-host beats CSP allowlist because it (a) removes a Google
   tracking/referer surface, (b) eliminates a GDPR-relevant external
   request, (c) loads faster from our own /static origin.

   Source files:
     - Montserrat.woff2       — Google Fonts variable font v31
     - PlayfairDisplay.woff2  — Google Fonts variable font v40
   Both downloaded with `latin` subset only (English UI; no Cyrillic /
   Vietnamese / Greek / etc. consumers in templates today). Re-download
   the latin-ext subset if a non-ASCII token symbol surfaces.

   The `woff2-variations` format hint goes FIRST so browsers that
   understand variable fonts use the proper renderer; older browsers
   fall back to treating the file as a single static face per @font-face.
*/

@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url('/static/fonts/Montserrat.woff2') format('woff2-variations'),
       url('/static/fonts/Montserrat.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;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500 700;
  font-display: swap;
  src: url('/static/fonts/PlayfairDisplay.woff2') format('woff2-variations'),
       url('/static/fonts/PlayfairDisplay.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;
}
