/* Self-hosted faces for the three families every page references as
   'Playfair Display' / 'Lato' / 'IBM Plex Mono' (--disp / --body / --mono in
   refined.css, --font-display / --font-body / --font-mono in index.html's
   inline styles and tools.css). Loaded from Google Fonts before; _headers'
   CSP (style-src/font-src 'self') has always excluded fonts.googleapis.com /
   fonts.gstatic.com, so that stylesheet link has never actually applied in
   production — every visitor got the Georgia/system fallback. This file
   requires no CSP change: same-origin, so font-src 'self' already covers it.

   The weight/style set below (Playfair 400/500/600/700 normal + 400 italic;
   Lato 300/400/700; Mono 400/500/600) was determined by walking computed
   style on every element, on every page, at both a desktop and a mobile
   viewport — not by reading the CSS and guessing. Lato has no real 500 face
   in the family at all (Google returns an error for that request); a
   font-weight:500 request against Lato has always matched down to 400 and
   still will. Mono's 300 was requested sitewide but never actually
   rendered by any element, so it isn't shipped. Playfair 700 italic is
   likewise unused, and even Google's own serving maps 700 italic to the
   same physical file as 400 italic — so shipping only 400 italic loses
   nothing either way. */

@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/playfair-display-400-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/playfair-display-500-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/playfair-display-600-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/playfair-display-700-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/playfair-display-400-italic.woff2') format('woff2');
}

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('/fonts/lato-300-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/lato-400-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/lato-700-normal.woff2') format('woff2');
}

@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/ibm-plex-mono-400-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/ibm-plex-mono-500-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/ibm-plex-mono-600-normal.woff2') format('woff2');
}
