/* Self-hosted, subset. No network font request leaves the page (spec v6 §9:
   nothing is fetched from a third party at runtime).

   SUBSETTING, and what it assumes. These faces carry exactly the glyphs this
   game can render: every character in the 3,666 player names, club names and
   season labels in dist/ and app/clubs.json, every string literal in the
   shipping source, plus the whole of printable ASCII and Latin-1 Supplement as
   a margin — clubs.json is editable reference data and dist/ gets regenerated,
   so a name that gains an accent must not come back a .notdef box. 207
   codepoints. Player names measured across the pool use nothing above U+017F,
   and in fact nothing above U+00FF.

   The separate -latin-ext files are gone. They covered one or two of the 150
   glyphs actually needed and every one of those was in the latin file too, so
   they were 195KB of pure redundancy. The unicode-range split went with them:
   with one small face per weight there is nothing left to split.

   The weight axis is pinned per face; Fraunces' OPTICAL SIZE axis is
   deliberately left variable. This UI renders Fraunces from 15px to 40px and
   the typeface is drawn to change shape across that range, so the browser
   keeps doing automatic optical sizing. Pinning opsz as well would save about
   15KB a face — worth knowing, but that is a change to how the type looks, not
   a smaller version of the same thing.

   377,068 -> 96,188 bytes. */

@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('fonts/fraunces-600.woff2') format('woff2');
}
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('fonts/fraunces-700.woff2') format('woff2');
}
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/space-grotesk-400.woff2') format('woff2');
}
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('fonts/space-grotesk-500.woff2') format('woff2');
}
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('fonts/space-grotesk-700.woff2') format('woff2');
}

/* v9 (the redesign): Outfit, the one face of the game, self-hosted like the
   faces above (nothing is fetched from a third party at runtime). The two
   files are what Google Fonts serves for Outfit:wght@400..800: one variable
   face (weights 400 to 800) per subset, latin and latin-ext (the player names
   use a few latin-ext letters: Čech, Bošnjak). SIL Open Font License.
   Fraunces and Space Grotesk stay for the card study page (card-study.css). */
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url('fonts/outfit-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url('fonts/outfit-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;
}
