/* Sonaloop typeface — self-hosted webfonts. Part of the design system (ships in the package).
 *
 * "Sona" and "Sona Mono" are Sonaloop's OWN font names. They are the brand-stable families the
 * whole system references via --sl-sans / --sl-mono and Tailwind font-sans / font-mono.
 *
 * IMPLEMENTATION NOTE: today Sona is *built on* Geist (© 2023 Vercel + basement.studio),
 * licensed SIL OFL-1.1 — see fonts/LICENSE-Geist.txt. The .woff2 files in /fonts are Geist's
 * variable fonts vendored UNMODIFIED; we only assign them the family name "Sona" here. Because
 * everything downstream references "Sona", swapping in a true bespoke face later (see the Sona
 * roadmap in BRANDING.md) means dropping new files in /fonts and editing only this file.
 *
 * Both are variable fonts (weight axis 100–900); the design system uses 400–800. */

@font-face {
  font-family: "Sona";
  font-style: normal;
  font-weight: 100 900;        /* variable weight axis */
  font-display: swap;
  src: url("/fonts/Sona-Variable.woff2") format("woff2-variations"),
       url("/fonts/Sona-Variable.woff2") format("woff2");
}

@font-face {
  font-family: "Sona Mono";
  font-style: normal;
  font-weight: 100 900;        /* variable weight axis */
  font-display: swap;
  src: url("/fonts/SonaMono-Variable.woff2") format("woff2-variations"),
       url("/fonts/SonaMono-Variable.woff2") format("woff2");
}

/* Sona Pixel — a high-resolution bitmap DISPLAY face for technical flourishes (loaders, council
 * ids, "SONALOOP"); never body text. Built on Geist Pixel (© 2023 Vercel + basement.studio,
 * SIL OFL-1.1), renamed Geist → Sona by scripts/build_sona_fonts.py — same OFL-derived status as
 * the Sona / Sona Mono text faces. Ships in five "fills"; the DEFAULT family "Sona Pixel" is the
 * Line fill (delicate outlined cells). The five are also exposed by name.
 * (A fully clean-room own pixel face is available via scripts/build_sona_pixel.py — see BRANDING.md.) */
@font-face {
  font-family: "Sona Pixel";           /* default = Line */
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/SonaPixel-Line.woff2") format("woff2");
}
@font-face {
  font-family: "Sona Pixel Line";      /* hollow outlined cells — the default, finely gridded */
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/SonaPixel-Line.woff2") format("woff2");
}
@font-face {
  font-family: "Sona Pixel Square";    /* solid blocks — crisp, neutral */
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/SonaPixel-Square.woff2") format("woff2");
}
@font-face {
  font-family: "Sona Pixel Circle";    /* round dots — soft, echoes the loop mark */
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/SonaPixel-Circle.woff2") format("woff2");
}
@font-face {
  font-family: "Sona Pixel Grid";      /* blocks with gaps — schematic */
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/SonaPixel-Grid.woff2") format("woff2");
}
@font-face {
  font-family: "Sona Pixel Triangle";  /* triangular pixels — most decorative */
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/SonaPixel-Triangle.woff2") format("woff2");
}
