/* The three typefaces, served from this origin instead of Google's.

   Why a file of its own rather than a block at the top of site.css: the app
   at /app needs the same faces, and it cannot load site.css without also
   inheriting the company site's .card, .btn and body rules. Both pages link
   this one, so the faces are declared once.

   Why self-hosted at all: fetching them from fonts.gstatic.com sent every
   visitor's IP address to Google before they had agreed to anything, which
   the privacy notice had to disclose, and it put a cross-origin DNS lookup,
   TLS handshake and stylesheet round trip in front of the first paint.

   These are the same four files Google was serving: the latin subset only,
   which is what both pages are written in. Anything outside that range
   (Greek, Cyrillic) falls through to the next family in the stack, which is
   what unicode-range is for.

   Archivo and IBM Plex are both under the SIL Open Font License 1.1; see
   fonts/OFL.txt. Replacing a file means re-checking the unicode-range and
   font-stretch lines against what Google's css2 endpoint returns for it. */

/* Variable across width 62-125% and weight 600-800, which is the range the
   two stylesheets use. A heavier or lighter Archivo needs a new slice. */
@font-face {
  font-family: "Archivo";
  font-style: normal;
  font-weight: 600 800;
  font-stretch: 62% 125%;
  font-display: swap;
  src: url("/site/fonts/archivo-latin-var.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;
}

/* One variable file covers 400, 500 and 600. */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 400 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("/site/fonts/ibm-plex-sans-latin-var.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;
}

/* Plex Mono is not variable: one file per weight. The app asks for mono 600
   in one place (.tel); that was already synthesised from 500 when Google
   served these, and still is. */
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/site/fonts/ibm-plex-mono-latin-400.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: "IBM Plex Mono";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/site/fonts/ibm-plex-mono-latin-500.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;
}
