/* fonts.css -- self-hosted @font-face declarations.
 *
 * Sprint 42 (industry-frontend-rebuild): Barlow Condensed (headings) +
 * Barlow (body) join Geist Mono (numerics). Geist SANS is retired -- the
 * Industry system has no use for it and no screen should reference it.
 * The .woff2 files are dropped rather than kept "just in case", so a
 * stray `font-family: GeistSans` fails visibly instead of silently
 * rendering the old typeface.
 *
 * Provenance: Barlow and Barlow Condensed are the official static weights
 * from github.com/google/fonts (ofl/barlow, ofl/barlowcondensed, v1.408),
 * SIL Open Font License 1.1 -- the licence text ships beside them as
 * Barlow-OFL.txt. The upstream .ttf files were converted to .woff2 with
 * fontTools; the same converted .ttf files (with patched name tables, see
 * below) are what apps/mobile/assets/fonts/ carries.
 *
 * The full upstream charset is kept, NOT a latin subset. Google's own
 * CSS API serves Barlow split across latin / latin-ext / vietnamese
 * subsets, and Turkish -- this product's primary locale -- needs
 * latin-ext for the dotless i, breve g and cedilla s. Self-hosting the
 * whole face is ~38KB per weight and removes the question entirely.
 *
 * The family strings below must stay identical in three places: here,
 * packages/design-system/src/tokens/typography.ts, and the internal
 * `name` tables of the mobile .ttf files (React Native's native font
 * linking matches on those, not on filenames -- which is why the mobile
 * files were patched to family "Barlow" / "BarlowCondensed" with the
 * weight in the subfamily record, exactly the way the Geist Mono files
 * already were). Change one, change all three.
 */

@font-face {
  font-family: "Barlow";
  src: url("/fonts/Barlow-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Barlow";
  src: url("/fonts/Barlow-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Barlow";
  src: url("/fonts/Barlow-SemiBold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Barlow";
  src: url("/fonts/Barlow-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "BarlowCondensed";
  src: url("/fonts/BarlowCondensed-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "BarlowCondensed";
  src: url("/fonts/BarlowCondensed-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "BarlowCondensed";
  src: url("/fonts/BarlowCondensed-SemiBold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "BarlowCondensed";
  src: url("/fonts/BarlowCondensed-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "GeistMono";
  src: url("/fonts/GeistMono-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "GeistMono";
  src: url("/fonts/GeistMono-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "GeistMono";
  src: url("/fonts/GeistMono-SemiBold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
