/* =============================================================================
   elements.dev — webfonts

   Inter (sans, OFL 1.1) — variable woff2 covering 100–900, plus the
   matching italic axis. One file per axis delivers every weight shade
   so anything asking for 400/500/600/700+ resolves cleanly.

   JetBrains Mono (mono, OFL 1.1) — variable woff2 covering 100–800.
   Reserved for code blocks, fenced code, terminal, kbd. Chrome reads
   sans (Inter) per the unified type system.

   Sites consume these via --font-sans / --font-mono in vars.css.

   Each family is declared twice: the Latin subset this site actually sets
   type in (~100KB for Inter, ~46KB for the mono), and the full variable file
   behind a unicode-range miss, for a feed post that happens to carry a
   character outside it. The subset is declared second so it wins wherever
   both match, which means a normal page downloads only the small file and
   the full one is never requested.

   font-display: block, not optional. `optional` gives the file a ~100ms
   window and no swap period: miss it and the page renders in system-ui for
   that load and never corrects. Which font you got depended on whether the
   file was warm, so a reload could change the headline's letterforms. The
   headline is set in italic, where Inter and SF differ most, and the swap
   was plainly visible. `block` renders nothing until the face arrives, so
   the only face this site ever paints is Inter. The <link rel=preload> in
   <SharedHead> starts all three above-the-fold faces with the document, so
   the block period is the file's transfer time and nothing else.
============================================================================= */

/* Everything the subset does not carry. Declared first so the Latin face
   below wins for the characters it covers; this one is only requested if a
   page actually renders a character outside that range. */
@font-face {
  font-family: "Inter";
  src: url("https://assets.elements.dev/assets/app/shared/styles/fonts/InterVariable.336a89fb4e7fc1d.woff2") format("woff2-variations");
  font-weight: 100 900;
  font-style: normal;
  font-display: block;
}

@font-face {
  font-family: "Inter";
  src: url("https://assets.elements.dev/assets/app/shared/styles/fonts/InterVariable.subset.1b7a50fe69245d47.woff2") format("woff2-variations");
  font-weight: 100 900;
  font-style: normal;
  font-display: block;
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
    U+2000-206F, U+2074, U+20AC, U+2122, U+2190-2193, U+2212, U+2215,
    U+25CF, U+2713, U+2717, U+FEFF, U+FFFD;
}

/* Everything the subset does not carry. Declared first so the Latin face
   below wins for the characters it covers; this one is only requested if a
   page actually renders a character outside that range. */
@font-face {
  font-family: "Inter";
  src: url("https://assets.elements.dev/assets/app/shared/styles/fonts/InterVariable-Italic.c91adde9f78caceb.woff2") format("woff2-variations");
  font-weight: 100 900;
  font-style: italic;
  font-display: block;
}

@font-face {
  font-family: "Inter";
  src: url("https://assets.elements.dev/assets/app/shared/styles/fonts/InterVariable-Italic.subset.1830a0216f9972ba.woff2") format("woff2-variations");
  font-weight: 100 900;
  font-style: italic;
  font-display: block;
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
    U+2000-206F, U+2074, U+20AC, U+2122, U+2190-2193, U+2212, U+2215,
    U+25CF, U+2713, U+2717, U+FEFF, U+FFFD;
}

/* Everything the subset does not carry. Declared first so the Latin face
   below wins for the characters it covers; this one is only requested if a
   page actually renders a character outside that range. */
@font-face {
  font-family: "JetBrains Mono";
  src: url("https://assets.elements.dev/assets/app/shared/styles/fonts/JetBrainsMono-Variable.aa4388db5528a0d5.woff2") format("woff2-variations");
  font-weight: 100 800;
  font-style: normal;
  font-display: block;
}

@font-face {
  font-family: "JetBrains Mono";
  src: url("https://assets.elements.dev/assets/app/shared/styles/fonts/JetBrainsMono-Variable.subset.50aad6033c9f3a30.woff2") format("woff2-variations");
  font-weight: 100 800;
  font-style: normal;
  font-display: block;
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
    U+2000-206F, U+2074, U+20AC, U+2122, U+2190-2193, U+2212, U+2215,
    U+25CF, U+2713, U+2717, U+FEFF, U+FFFD;
}

/* Everything the subset does not carry. Declared first so the Latin face
   below wins for the characters it covers; this one is only requested if a
   page actually renders a character outside that range. */
@font-face {
  font-family: "JetBrains Mono";
  src: url("https://assets.elements.dev/assets/app/shared/styles/fonts/JetBrainsMono-Variable-Italic.7a463bbf4bbf834c.woff2") format("woff2-variations");
  font-weight: 100 800;
  font-style: italic;
  font-display: block;
}

@font-face {
  font-family: "JetBrains Mono";
  src: url("https://assets.elements.dev/assets/app/shared/styles/fonts/JetBrainsMono-Variable-Italic.subset.ff118c74eba2f46a.woff2") format("woff2-variations");
  font-weight: 100 800;
  font-style: italic;
  font-display: block;
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
    U+2000-206F, U+2074, U+20AC, U+2122, U+2190-2193, U+2212, U+2215,
    U+25CF, U+2713, U+2717, U+FEFF, U+FFFD;
}
