/*
 * Fonts for the PHP-rendered pages: the same faces and CSS variables next/font generates for the
 * React tools (src/app/layout.tsx), so app.css (`--font-sans` / `--font-mono` read these variables)
 * renders identically. Link it before app.css; preload /assets/fonts/HostGrotesk-latin.woff2 and
 * /assets/fonts/CommitMono-latin.woff2 (crossorigin) on pages where text is the LCP.
 * Host Grotesk: Google Fonts variable woff2 (300–800, latin + latin-ext), OFL — HostGrotesk-OFL.txt.
 * Commit Mono: vendored Latin subset, OFL — CommitMono-OFL.txt. Owned by the React build (agent C).
 */

/* latin-ext: fetched only when a name needs it (unicode-range) */
@font-face {
  font-family: "Host Grotesk";
  font-style: normal;
  font-weight: 300 800;
  font-display: swap;
  src: url("fonts/HostGrotesk-latin-ext.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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: "Host Grotesk";
  font-style: normal;
  font-weight: 300 800;
  font-display: swap;
  src: url("fonts/HostGrotesk-latin.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;
}

/* Metric-matched fallback while Host Grotesk loads (the values next/font computes), so nothing shifts. */
@font-face {
  font-family: "Host Grotesk Fallback";
  src: local("Arial");
  ascent-override: 96.69%;
  descent-override: 30.01%;
  line-gap-override: 0%;
  size-adjust: 104.98%;
}

/* weight 400 600 is REQUIRED: the source variable font's default instance is 200. */
@font-face {
  font-family: "commitMono";
  src: url("fonts/CommitMono-latin.woff2") format("woff2");
  font-display: swap;
  font-weight: 400 600;
  font-style: normal;
}

:root {
  --font-host-grotesk: "Host Grotesk", "Host Grotesk Fallback";
  --font-commit-mono: "commitMono", ui-monospace, SFMono-Regular, Menlo, monospace;
}
