/*
 * Paper: self-hosted fonts (SIL OFL 1.1, license texts in assets/links/fonts/), shared with
 * the other skins. Latin subset only, woff2 only, font-display: swap.
 *
 *   Fraunces Variable    wght 100-900, normal + italic   "serif" and "serif-italic" titles
 *   Montserrat Variable  wght 100-900, normal + italic   body, buttons, tracked caps, "small-caps" titles
 *
 * The Fraunces files carry only the weight axis (optical size, softness and wonk sit at the
 * font's defaults). The "... Fallback" faces are local system fonts scaled to the web font's
 * widths and vertical metrics, so text barely moves when the web font swaps in. Where the local
 * font is missing (most Android phones), the stack falls through to the generic family.
 */

/* ---------- Fraunces ---------- */

@font-face {
  font-family: "Fraunces Variable";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../../fonts/fraunces-latin-wght-normal.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: "Fraunces Variable";
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("../../fonts/fraunces-latin-wght-italic.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;
}

/* Tuned to mixed-case titles at 500-600. */
@font-face {
  font-family: "Fraunces Fallback";
  font-style: normal;
  font-weight: 100 900;
  src: local("Georgia");
  size-adjust: 106%;
  ascent-override: 92.26%;
  descent-override: 24.06%;
  line-gap-override: 0%;
}

@font-face {
  font-family: "Fraunces Fallback";
  font-style: italic;
  font-weight: 100 900;
  src: local("Georgia Italic"), local("Georgia-Italic");
  size-adjust: 102%;
  ascent-override: 95.88%;
  descent-override: 25%;
  line-gap-override: 0%;
}

/* ---------- Montserrat ---------- */

@font-face {
  font-family: "Montserrat Variable";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../../fonts/montserrat-latin-wght-normal.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: "Montserrat Variable";
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("../../fonts/montserrat-latin-wght-italic.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;
}

/* Regular weights: tuned to lowercase body text at 500. */
@font-face {
  font-family: "Montserrat Fallback";
  font-style: normal;
  font-weight: 100 599;
  src: local("Arial"), local("ArialMT");
  size-adjust: 116.31%;
  ascent-override: 83.23%;
  descent-override: 21.58%;
  line-gap-override: 0%;
}

/* Bold weights: tuned to uppercase labels and titles at 600-800. */
@font-face {
  font-family: "Montserrat Fallback";
  font-style: normal;
  font-weight: 600 900;
  src: local("Arial Bold"), local("Arial-BoldMT");
  size-adjust: 104%;
  ascent-override: 93.08%;
  descent-override: 24.13%;
  line-gap-override: 0%;
}
