/* ═══════════════════════════════════════════════════════════════════════════
   TYPE — site-wide. Loaded last so it wins over the Webflow export.

   "Site Sans"    Hanken Grotesk  all text, numerals included
   "Site Mono"    Geist Mono      only where something is set in monospace
   Refuge Final Latest           untouched — Mahnoor's own face

   Both families are SIL Open Font License 1.1 and self-hosted; the licences
   are in fonts/ alongside them. No external requests.
   ═══════════════════════════════════════════════════════════════════════════ */


/* ─── Site Sans — Hanken Grotesk ─────────────────────────────────────────────
   Hanken Grotesk, (c) 2021 The Hanken Grotesk Project Authors, SIL Open Font
   License 1.1 (fonts/OFL-HankenGrotesk.txt). Self-hosted, subset to latin /
   latin-ext, with the variable weight axis clamped to the 400-650 the design
   uses — 21KB for latin. One file covers body, medium accents and the
   wordmark. */

@font-face{
  font-family: "Site Sans";
  font-style: normal;
  font-weight: 400 650;
  font-display: swap;
  src: url("../fonts/HankenGrotesk-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;
}

@font-face{
  font-family: "Site Sans";
  font-style: normal;
  font-weight: 400 650;
  font-display: swap;
  src: url("../fonts/HankenGrotesk-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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}


/* ─── Refuge — Mahnoor's own face ────────────────────────────────────────────
   Untouched: the OTF as it came off her final file, 10KB, full basic latin
   (103 glyphs, U+0020–U+007E plus the dashes and curly quotes). Display use
   only — it is reached through `var(--font-refuge)` and nothing else on the
   site sets it, so the file downloads only on the page that shows it.

   This used to live in the Webflow export, which the framework pages no longer
   load. It belongs here now, with the other two. */

@font-face{
  font-family: "Refuge Final Latest";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/REFUGE-FINAL-LATEST.otf") format("opentype");
}


/* ─── Site Mono — for anything set wholly in monospace ────────────────────── */

@font-face{
  font-family: "Site Mono";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../fonts/GeistMono-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;
}

@font-face{
  font-family: "Site Mono";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../fonts/GeistMono-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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}


/* ─── Stacks ────────────────────────────────────────────────────────────── */

:root{
  --font-sans:   "Site Sans", Helvetica, Arial, sans-serif;
  --font-mono:   "Site Mono", ui-monospace, SFMono-Regular, monospace;
  --font-refuge: "Refuge Final Latest", var(--font-sans);
}

html, body{ font-family: var(--font-sans); }

/* Numerals still line up in columns, they just use the text face now. */
body{ font-variant-numeric: tabular-nums; font-feature-settings: "tnum" 1; }

/* Form controls don't inherit type by default. */
input, textarea, select, button{ font-family: inherit; }
