/* ---------------------------------------------------------------------------
   Self-hosted variable fonts.

   The content security policy sets font-src 'self', so Google Fonts and every
   other font CDN is refused outright. These three faces are therefore served
   from wwwroot/fonts. All are SIL Open Font Licence.

   One variable file per family rather than a weight per file: the display face
   is used from 400 to 700 and the body face from 400 to 800, which as static
   cuts would be six downloads instead of two.

   font-display: swap — text must be readable while the face loads. The
   fallback stacks are metric-adjacent so the swap does not reflow the page.
   --------------------------------------------------------------------------- */
@font-face {
  font-family: "Inter var";
  src: url("../fonts/inter-var.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
  /* Latin, punctuation, currency. Arabic comes from Cairo below. */
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2192, U+2190, U+2212, U+2215;
}

@font-face {
  font-family: "Space Grotesk var";
  src: url("../fonts/space-grotesk-var.woff2") format("woff2");
  font-weight: 300 700;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2192, U+2190, U+2212, U+2215;
}

/* Arabic. Cairo is a modern naskh-derived face that keeps its joins at display
   sizes, which the geometric Latin display face cannot do for Arabic at all. */
@font-face {
  font-family: "Cairo var";
  src: url("../fonts/cairo-var.woff2") format("woff2");
  font-weight: 200 1000;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF, U+200C-200E, U+2010-2011, U+204F, U+2E41;
}
