/* Self-hosted web fonts (SIL Open Font License), latin subset, variable weight.
   Replaces the render-blocking Google Fonts stylesheet (2026-10-20, ported
   from the China site): one same-origin CSS file, and the two font files a
   page uses are <link rel="preload">ed in its <head> (with crossorigin, or
   the browser downloads them twice). The woff2 files are byte-identical to
   what Google Fonts served before (DM Sans v17, Playfair Display v40).

   Weight ranges reproduce exactly what the pages rendered with Google Fonts:
   DM Sans 400–700 (body), Playfair Display 500–700 (headings). Text styled
   800/900 keeps rendering at 700, as before. Travel guides add their own
   DM Sans 800–900 face (scripts/build-blog.js STYLE), because they always
   asked Google for 800/900. Inter is NOT declared here: no public page renders
   it — only login.html, which declares it inline.

   The home page (index.html) inlines these same rules in its <style> so no
   font stylesheet blocks its first paint; keep the two in step.

   Font FILES are versioned by file name (netlify.toml caches
   /assets/fonts/* immutable for a year): to replace a font, add a new file
   name. This CSS is cached a year too: after editing it, bump
   fonts.css?v= at every reference site (grep the repo, including
   scripts/build-blog.js, tools/productpage-builder/demo-page-shell.html,
   tools/destination-builder/page-template.html and the committed
   destinations/<slug>/index.html pages via scripts/sweep-destination-chrome.js). */
@font-face {
  font-family: "DM Sans";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("/assets/fonts/dm-sans-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;
}
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 500 700;
  font-display: swap;
  src: url("/assets/fonts/playfair-display-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;
}
