/* Self-hosted typefaces.

   These used to be loaded from fonts.googleapis.com, which meant every
   visitor's IP address reached Google before they had done anything —
   including on the privacy notice, whose whole purpose is to explain that we
   do not do that sort of thing. German courts have found precisely that
   arrangement to be an unlawful transfer.

   Geist is one variable file covering 300–600, so declaring the range serves
   every weight the site uses from a single 29 KB request. */

@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url('/assets/fonts/geist-variable.woff2') format('woff2');
}

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

@font-face {
  font-family: 'Instrument Serif';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/instrument-serif-400-italic.woff2') format('woff2');
}

/* A monospace numeral reads as measured; a proportional one reads as
   marketing. On a product whose whole pitch is that it measured your house
   from a photograph, that is an argument rather than decoration — so every
   number that came from a measurement is set in this, and every number that
   didn't isn't.

   One variable file covering 400–500, latin only. */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400 500;
  font-display: swap;
  src: url('/assets/fonts/jetbrains-mono-variable.woff2') format('woff2');
}
