/* THE FONT MANIFEST: the one stylesheet every page links for its typefaces. Nothing is fetched from outside this site.
 *
 * KW Sans Thai and KW Mono are subsets of IBM Plex Sans Thai and IBM Plex Mono, under the SIL Open Font License 1.1 (the full text sits beside each folder: thai/OFL.txt,
 * mono/OFL.txt). The uncut files are IBM's own releases at github.com/IBM/plex: @ibm/plex-sans-thai@1.1.0 and @ibm/plex-mono@2.5.0 (the same versions this site served
 * before). Each file here keeps only the glyphs the site's pages render, so it is a Modified Version under OFL-1.1, and because IBM reserves the name 'Plex' a Modified
 * Version may not carry it as its primary font name (OFL-1.1 condition 3): the family is therefore renamed, and the copyright, trademark and licence records inside each file
 * are IBM's, unchanged. scripts/font-subset.mjs makes the cut and scripts/font-coverage.test.mjs checks that no rendered character is outside it.
 *
 * One @font-face per face and per script. Every src is a same-origin file under /fonts/, every face has font-display: swap, and
 * unicode-range keeps a visitor from fetching a script the page does not show. The Sans Thai files carry the Latin the pages
 * set in the same family, so the same file is declared once for its Thai range and once for its Latin range. The unicode-ranges are the full script ranges
 * of the uncut files, kept as they were: narrowing them would buy nothing once the files are cut.
 *
 * To add a language: put its script's faces in a new folder under web/fonts/ with the full OFL.txt beside them, declare them here
 * with the unicode-range of that script, and name the new files in scripts/surface-check.mjs (rule 7). Nothing else changes.
 */

/* Sans, Thai script */
@font-face {
  font-family: 'KW Sans Thai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/thai/kw-sans-thai-400.7a93a32da9.woff2') format('woff2');
  unicode-range: U+0E01-0E3A, U+0E3F-0E5B, U+200B-200D, U+25CC;
}
@font-face {
  font-family: 'KW Sans Thai';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/thai/kw-sans-thai-500.bab87050a2.woff2') format('woff2');
  unicode-range: U+0E01-0E3A, U+0E3F-0E5B, U+200B-200D, U+25CC;
}
@font-face {
  font-family: 'KW Sans Thai';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/thai/kw-sans-thai-600.4e5f5074ff.woff2') format('woff2');
  unicode-range: U+0E01-0E3A, U+0E3F-0E5B, U+200B-200D, U+25CC;
}
@font-face {
  font-family: 'KW Sans Thai';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/thai/kw-sans-thai-700.b87d41e0f9.woff2') format('woff2');
  unicode-range: U+0E01-0E3A, U+0E3F-0E5B, U+200B-200D, U+25CC;
}

/* Sans, Latin script (carried by the same Plex Sans Thai files) */
@font-face {
  font-family: 'KW Sans Thai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/thai/kw-sans-thai-400.7a93a32da9.woff2') format('woff2');
  unicode-range: U+0020-007E, U+00A0-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+2122, U+2212;
}
@font-face {
  font-family: 'KW Sans Thai';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/thai/kw-sans-thai-500.bab87050a2.woff2') format('woff2');
  unicode-range: U+0020-007E, U+00A0-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+2122, U+2212;
}
@font-face {
  font-family: 'KW Sans Thai';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/thai/kw-sans-thai-600.4e5f5074ff.woff2') format('woff2');
  unicode-range: U+0020-007E, U+00A0-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+2122, U+2212;
}
@font-face {
  font-family: 'KW Sans Thai';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/thai/kw-sans-thai-700.b87d41e0f9.woff2') format('woff2');
  unicode-range: U+0020-007E, U+00A0-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+2122, U+2212;
}

/* Mono, Latin script (IBM's own Latin1 subset: the only part of Plex Mono the pages show) */
@font-face {
  font-family: 'KW Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/mono/kw-mono-400.e8d30e29b8.woff2') format('woff2');
  unicode-range: U+0020-007E, U+00A0-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+2122, U+2212, U+FB01-FB02;
}
@font-face {
  font-family: 'KW Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/mono/kw-mono-500.78ee778fb0.woff2') format('woff2');
  unicode-range: U+0020-007E, U+00A0-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+2122, U+2212, U+FB01-FB02;
}
