/* ==========================================================================
   FONTS — self-hosted subsets, generated by scripts/fonts.py. Do not edit
   by hand; rerun the script after changing copy. Each file contains only the
   characters the site uses; anything missing falls back to the system
   family named in tokens.css.
   ========================================================================== */

@font-face {
  font-family: "Instrument Serif";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/instrument-serif.487c680f.woff2") format("woff2");
}

@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("/fonts/inter-300.38a16a4a.woff2") format("woff2");
}

@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/fonts/inter-500.5fcf16d4.woff2") format("woff2");
}

/* The two glyphs of the 中文 switch, plus the space and the digit zero:
   Blink resolves an element's primary font from the space glyph and `ch`
   units from the zero, even for hidden elements — without them it would
   fetch the full face for the metrics alone. Under the family name the stack
   tries first; every other character falls through to "Noto Sans SC Full". */
@font-face {
  font-family: "Noto Sans SC";
  font-style: normal;
  font-weight: 200 400;
  font-display: swap;
  src: url("/fonts/noto-sans-sc-zhongwen.bdaa774c.woff2") format("woff2");
  unicode-range: U+0020, U+0030, U+4E2D, U+6587;
}

/* One variable file carries the 200, 300 and 400 cuts. */
@font-face {
  font-family: "Noto Sans SC Full";
  font-style: normal;
  font-weight: 200 400;
  font-display: swap;
  src: url("/fonts/noto-sans-sc.ba180e09.woff2") format("woff2");
}

@font-face {
  font-family: "Noto Serif SC";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/noto-serif-sc.cefe4992.woff2") format("woff2");
}
