/* Sestala faces, self-hosted. Never a CDN: LG Muenchen I, 20 Jan 2022.
 *
 * Copied into the export so the pages are self-contained. In SESTALA-SITE this is
 * the repo's own token layer: replace this file with src/styles/tokens.css and
 * site.css if those already carry the same names, or commit these two as-is.
 * Every element in the export is styled inline with var(--sst-*), so if these
 * names are missing the whole site renders unstyled. There is no partial state.
 * ------------------------------------------------------------------ */

/* faces.css from SESTALA-DESIGN/public/fonts, 16 Aug 2026, byte-identical apart
   from the url() prefix: this export serves /fonts/ at the web root.
   Alegreya Sans 400, 400 italic, 500 and IBM Plex Sans 400, 500, 600 — SIL OFL 1.1,
   self-hosted. Never a CDN: LG Muenchen I, 20 Jan 2022 (3 O 17493/20). Plex licence at
   fonts/ibm-plex-sans-OFL.txt.

   TWO FINDINGS, recorded rather than acted on:
   1. The 700 blocks below declare a weight typography.md prohibits in both families on
      every surface. The files ship in all three repos and now here. Disposition is open:
      delete the files or lift the prohibition. Nothing deleted without that decision.
   Alegreya Sans 700 was DELETED on 16 Aug 2026, files and declarations, per the CEO
   decision of the same day. typography.md prohibits 700 and above in both families on
   every surface, so a shipped 700 was a weight nothing was allowed to set. Note on the
   reason given: Alegreya Sans is SIL OFL 1.1 and costs nothing. The commercial face in
   the estate is Optima, which the wordmark and lockup masters were drawn from as
   OUTLINES and which is not shipped, linked or needed at runtime.

   2. RESOLVED 17 Aug 2026. The OFL text now accompanies Alegreya Sans, at
      fonts/alegreya-sans-OFL.txt, copied from google/fonts@main. The licence
      requires its text to travel with the files, and until today only the Plex licence
      was present. */

@font-face {
  font-family: 'Alegreya Sans';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/alegreya-sans-400-italic-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;
}
@font-face {
  font-family: 'Alegreya Sans';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/alegreya-sans-400-italic-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: 'Alegreya Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/alegreya-sans-400-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;
}
@font-face {
  font-family: 'Alegreya Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/alegreya-sans-400-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: 'Alegreya Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/alegreya-sans-500-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;
}
@font-face {
  font-family: 'Alegreya Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/alegreya-sans-500-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;
}

/* IBM Plex Sans — the data register: labels, meta, numerics, controls.
 *
 * Adopted 16 August 2026, replacing Inter. Chosen against Inter, Source Sans 3
 * and Geist on the four checkable numbers, a 13px operator table and small prose.
 * The reason, in one line: it is the only one of the four with a point of view —
 * cut terminals, drawn figures, engineered rather than neutral, which is
 * "precise, never cold" as a face.
 *
 * Complete WOFF2 rather than split subsets: three files, one per weight, ~197 KB
 * total, no unicode-range to get wrong. Self-hosted, SIL OFL 1.1, licence at
 * fonts/ibm-plex-sans-OFL.txt. Copied from IBM/plex@master.
 */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/ibm-plex-sans-400.woff2') format('woff2');
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/ibm-plex-sans-500.woff2') format('woff2');
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/ibm-plex-sans-600.woff2') format('woff2');
}

/* Inter is GONE, 17 August 2026. It was the data face until 16 Aug and was retained
 * only so the 115 cards that hard-coded its stack inline kept rendering. That
 * re-anchoring pass is done: every card now links this layer and sets
 * var(--sst-font-data). The six WOFF2 files and the licence go with it.
 *
 * For the record: Inter was declared on every Sestala surface for months and defined
 * on none of them, so every label and every figure rendered in a system fallback. It
 * has now been both adopted and removed without ever having shipped.
 */
