/* Newsreader (headings) and Source Sans 3 (body) -- the VaultWorth faces, owner 2026-10-27/28
 * (memory vaultworth-typefaces-2026-10-27, study artifact v5). They replace Playfair Display, which
 * was declared on 2026-09-28 and is a display face: at 27px its thin strokes were already fragile.
 * Newsreader has an optical-size axis, so it thickens itself at small sizes.
 *
 * SELF-HOSTED, NOT LINKED TO GOOGLE. One variable file per family, latin subset, served from our
 * own origin. A <link> to fonts.googleapis.com would put a render-blocking third-party request in
 * front of an app used on a phone in a vault or a storage unit, and it tells Google who is
 * appraising what. Same instinct as the charts: this app does not borrow its dependencies.
 * Licenses: fonts/OFL-newsreader.txt and fonts/OFL-source-sans-3.txt (SIL OFL 1.1).
 *
 * ONE FILE, EVERY PAGE. Each page carries its own copy of the header CSS, which is exactly how
 * five of them ended up without the nav overflow fix. The @font-face lives here once instead.
 *
 * Figures stay in the SYSTEM monospace (owner's pick over IBM Plex Mono), so there is no file here
 * for them; brand.css sets their weight.
 */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  /* Variable: the weight axis 200-800 and an optical-size axis, which the browser sets from the
     font size by itself (font-optical-sizing: auto). */
  font-weight: 200 800;
  /* swap, not block: the text is readable in Georgia while the file arrives, and reflows once. On a
     bad connection at an intake, words on screen beat correct words later. */
  font-display: swap;
  src: url('/fonts/newsreader-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: 'Source Sans 3';
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  src: url('/fonts/source-sans-3-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;
}
