/* The two typefaces the design draws, served from this app's own origin.
   Both layouts name this file, because tokens.css points --sans and --mono at
   these faces and every screen in the app reads those tokens.

   Self-hosting is not a preference here. The homepage design loaded these
   families from Google's CDN, and the content security policy blocks that twice
   over: font_src :self blocks the font files and style_src :self blocks the
   stylesheet fetch (config/initializers/content_security_policy.rb:12 and :18).
   Serving the files from app/assets is the only way any of these faces render,
   and it needs no policy change.

   PROVENANCE. Every file below was downloaded on 2026-08-03 from the URL
   Google Fonts' own CSS API returns for a current Chrome, and every license
   file was downloaded from Google's font repository. Both faces are licensed
   under the SIL Open Font License 1.1, which the shipped license file for each
   face states in full:

     Schibsted Grotesk — Bakken & Bæck, Henrik Kongsvoll. OFL 1.1.
       license:  app/assets/fonts/schibsted-grotesk-OFL.txt, from
                 https://raw.githubusercontent.com/google/fonts/main/ofl/schibstedgrotesk/OFL.txt
       latin:     https://fonts.gstatic.com/s/schibstedgrotesk/v7/Jqz55SSPQuCQF3t8uOwiUL-taUTtap9GayojdSFO.woff2
       latin-ext: https://fonts.gstatic.com/s/schibstedgrotesk/v7/Jqz55SSPQuCQF3t8uOwiUL-taUTtap9IayojdSFOd1I.woff2

     JetBrains Mono — JetBrains, Philipp Nurullin, Konstantin Bulenkov. OFL 1.1.
       license:  app/assets/fonts/jetbrains-mono-OFL.txt, from
                 https://raw.githubusercontent.com/google/fonts/main/ofl/jetbrainsmono/OFL.txt
       latin:     https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwgknk-4.woff2
       latin-ext: https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwgknk-6nFg.woff2

   WHAT IS AND IS NOT HERE. Schibsted Grotesk and JetBrains Mono are variable
   fonts: one file carries the whole weight axis, so each is declared once per
   subset with the weight range the design actually uses rather than once per
   weight. The design's Google request also asked for Schibsted Grotesk 800, and
   no rule in any stylesheet or any element in the markup selects it, so it is
   not here. Nothing here is italic: no rule sets font-style: italic, and the
   markup carries no <em>.

   Spectral was the design's third family, drawing the homepage's LEDES
   explainer and founder note. The founder cut it on 2026-08-03: those two
   passages now render in the Georgia stack --serif names in tokens.css, and the
   face and its license file are deleted rather than left unreferenced.

   Each face ships the latin and latin-ext subsets Google publishes, carrying
   Google's own unicode-range. A browser fetches a subset file only when the
   page uses a character from it, so latin-ext costs a reader nothing and is
   what keeps an accented name — in a timekeeper's name or an uploaded file's
   name — from rendering in a fallback face mid-word.

   font-display: swap on every face, matching the design's own display=swap
   request: the text is readable in the fallback face while the file loads, and
   swaps when it arrives. */

/* ---------------------------------------------------------------- Schibsted Grotesk (--sans) */
@font-face {
  font-family: "Schibsted Grotesk";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("/assets/schibsted-grotesk-latin-1061523f.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: "Schibsted Grotesk";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("/assets/schibsted-grotesk-latin-ext-1e4035b5.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* ---------------------------------------------------------------- JetBrains Mono (--mono) */
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url("/assets/jetbrains-mono-latin-68dbce1c.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: "JetBrains Mono";
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url("/assets/jetbrains-mono-latin-ext-b0c48b7a.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
