/* ==========================================================================
   fonts.css - self-hosted Inter
   --------------------------------------------------------------------------
   Inter was previously loaded from fonts.googleapis.com. It is served from
   this origin instead so that:

     - no visitor IP is disclosed to a third party on page load (the privacy
       notice tells visitors we do not share their data with parties they
       have not been told about, so a Google request on every page contradicted
       it),
     - the Content-Security-Policy in .htaccess can stay at style-src 'self'
       and font-src 'self' with no third-party origins allowed at all,
     - one render-blocking cross-origin request is removed.

   This is the VARIABLE font (one file spans weights 100-900), which also
   fixes a real bug: css/tokens.css defines --fw-black: 900, but the old
   Google request only asked for 400-800, so 900 was being synthesised by the
   browser (faux bold) rather than drawn from the real face.

   Files come from Google's own CDN (the v20 Inter subsets) and are
   unmodified. To refresh them, re-fetch the URLs in the comments below.

   ONE TRADE-OFF, worth knowing before you debug it:
   Opening a page as a local file (double-clicking the .html) will NOT load
   this font, and the browser falls back to system-ui. That is not a bug in
   these files - per the CSS Fonts spec @font-face is always fetched in CORS
   mode, and a file:// page has a null origin, so Chrome blocks every local
   font regardless of how it is referenced. Pages still open and render fine;
   only the typeface differs.

   Over http(s) - which is how the site is actually served - it loads normally.
   For a local preview that matches production, run:  node tools/dev-server.js
   ========================================================================== */

/* latin-ext - accented characters, extended punctuation and currency.
   https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2 */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('../assets/fonts/inter-var-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
                 U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,
                 U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin - the subset that covers effectively all copy on this site, including
   the em-dashes and curly quotes used throughout.
   https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2 */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('../assets/fonts/inter-var-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;
}
