/*
 * Self-hosted web fonts (docs/design.md, "Type"). Generated by frontend/tools/fonts.mjs:
 * run `npm run build` in frontend/ instead of editing this file.
 *
 * Each face is a variable font split by unicode-range, so a page downloads only the
 * subsets its text uses. Latin, Latin Extended and Greek come from @fontsource-variable
 * (the Google Fonts subsets); each "symbols" file holds the arrows, math operators,
 * sub- and superscripts and other signs those subsets leave out, cut from the same
 * upstream font (google/fonts at 08dc85da6bca).
 *
 * Source Serif 4 keeps its optical-size axis (opsz 8-60). font-optical-sizing: auto,
 * the CSS default, sets it from the font size, so large headings get the display cut.
 *
 * Licenses (SIL Open Font License 1.1): ../fonts/OFL-*.txt
 */

/* Source Serif 4 */

@font-face {
  font-family: "Source Serif 4";
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  src: url(/fonts/source-serif-4-greek-normal-d5197bb3c0b5a822f9dae8041e9f150b.woff2) format("woff2");
  unicode-range: U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF;
}

@font-face {
  font-family: "Source Serif 4";
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  src: url(/fonts/source-serif-4-latin-ext-normal-33ba75072ebcb4b01e5433a1ba3dc7c5.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: "Source Serif 4";
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  src: url(/fonts/source-serif-4-latin-normal-e9192c2fe0a31fbb3b7cd6a28b2309cd.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: "Source Serif 4";
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  src: url(/fonts/source-serif-4-symbols-normal-1a0dc5cc5ae4fcc7f0f83e5515e06420.woff2) format("woff2");
  unicode-range: U+2070-2071,U+2074-2079,U+207D-2089,U+208D-208E,U+2116-2117,U+2120,U+2126,U+212E,U+2153-2154,U+215B-215E,U+2190,U+2192,U+2196-2199,U+2202,U+2206,U+220F,U+2211,U+2219-221A,U+221E,U+222B,U+2248,U+2260,U+2264-2265,U+25A0,U+25B2-25B3,U+25B6-25B7,U+25BC-25BD,U+25C0-25C1,U+25C6,U+25C9-25CA,U+2610-2611,U+266A,U+2713,U+2752;
}

@font-face {
  font-family: "Source Serif 4";
  font-style: italic;
  font-weight: 200 900;
  font-display: swap;
  src: url(/fonts/source-serif-4-greek-italic-454ea1db16bd8a9028db00c21bd367ff.woff2) format("woff2");
  unicode-range: U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF;
}

@font-face {
  font-family: "Source Serif 4";
  font-style: italic;
  font-weight: 200 900;
  font-display: swap;
  src: url(/fonts/source-serif-4-latin-ext-italic-3ff52c8f866c0f98779e9778408d26d7.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: "Source Serif 4";
  font-style: italic;
  font-weight: 200 900;
  font-display: swap;
  src: url(/fonts/source-serif-4-latin-italic-66c33f6b248f76850cff4a00118c80e4.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: "Source Serif 4";
  font-style: italic;
  font-weight: 200 900;
  font-display: swap;
  src: url(/fonts/source-serif-4-symbols-italic-94d038ba5c47e4bca8233af461ea8dc4.woff2) format("woff2");
  unicode-range: U+2070-2071,U+2074-2079,U+207D-2089,U+208D-208E,U+2116-2117,U+2120,U+2126,U+212E,U+2153-2154,U+215B-215E,U+2190,U+2192,U+2196-2199,U+2202,U+2206,U+220F,U+2211,U+2219-221A,U+221E,U+222B,U+2248,U+2260,U+2264-2265,U+25A0,U+25B2-25B3,U+25B6-25B7,U+25BC-25BD,U+25C0-25C1,U+25C6,U+25C9-25CA,U+2610-2611,U+266A,U+2713,U+2752;
}

/* Atkinson Hyperlegible Next */

@font-face {
  font-family: "Atkinson Hyperlegible Next";
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url(/fonts/atkinson-hyperlegible-next-latin-ext-normal-290c109915a4e53718c1ff34bb33282c.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: "Atkinson Hyperlegible Next";
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url(/fonts/atkinson-hyperlegible-next-latin-normal-825fabef695fe0e38de5094886eaf871.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: "Atkinson Hyperlegible Next";
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url(/fonts/atkinson-hyperlegible-next-symbols-normal-cdbf29a382e194aa25bf9ef2c84b2fce.woff2) format("woff2");
  unicode-range: U+0394,U+03A9,U+03BC,U+03C0,U+212E,U+2202,U+220F,U+2211,U+2219-221A,U+221E,U+222B,U+2248,U+2260,U+2264-2265,U+25CA,U+266A;
}

@font-face {
  font-family: "Atkinson Hyperlegible Next";
  font-style: italic;
  font-weight: 200 800;
  font-display: swap;
  src: url(/fonts/atkinson-hyperlegible-next-latin-ext-italic-67b512e9a6f2dd043774dc5b24a27336.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: "Atkinson Hyperlegible Next";
  font-style: italic;
  font-weight: 200 800;
  font-display: swap;
  src: url(/fonts/atkinson-hyperlegible-next-latin-italic-740db8084ae924b75bd525c5f856e780.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: "Atkinson Hyperlegible Next";
  font-style: italic;
  font-weight: 200 800;
  font-display: swap;
  src: url(/fonts/atkinson-hyperlegible-next-symbols-italic-d2d1eadf63c59694ba093e895245ae30.woff2) format("woff2");
  unicode-range: U+0394,U+03A9,U+03BC,U+03C0,U+212E,U+2202,U+220F,U+2211,U+2219-221A,U+221E,U+222B,U+2248,U+2260,U+2264-2265,U+25CA,U+266A;
}

/* JetBrains Mono */

@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 100 800;
  font-display: swap;
  src: url(/fonts/jetbrains-mono-greek-normal-51671ed9eb64e29390d4791ab0023c8e.woff2) format("woff2");
  unicode-range: U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF;
}

@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 100 800;
  font-display: swap;
  src: url(/fonts/jetbrains-mono-latin-ext-normal-e36841ed93d5bfe6b1d487d18ad7e90b.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: "JetBrains Mono";
  font-style: normal;
  font-weight: 100 800;
  font-display: swap;
  src: url(/fonts/jetbrains-mono-latin-normal-b058178d7f309414f8f856b99fd80d9b.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: "JetBrains Mono";
  font-style: normal;
  font-weight: 100 800;
  font-display: swap;
  src: url(/fonts/jetbrains-mono-symbols-normal-5bc7bf2ad5dc0205802e60e3d77bc0df.woff2) format("woff2");
  unicode-range: U+2070,U+2074-207A,U+2080-2089,U+2115-2116,U+212E,U+2190,U+2192,U+2194-2199,U+21E7,U+2200,U+2202-2203,U+2208-2209,U+220B-220C,U+220F-2211,U+2218-221A,U+221E,U+2223,U+2225,U+2227-2228,U+222B,U+2237,U+223C,U+2248-2249,U+2260-2261,U+2264-2265,U+2282-2287,U+2302-2305,U+2318,U+2325,U+2374,U+23FB-23FE,U+2500-25A1,U+25AA-25AB,U+25B2-25C7,U+25CA,U+25CC,U+25CE-25CF,U+25D4-25D5,U+25E7-25EB,U+25EF,U+26A0-26A1,U+2715,U+276E-2771,U+27E8-27E9,U+27F5-27F7,U+2B58;
}

@font-face {
  font-family: "JetBrains Mono";
  font-style: italic;
  font-weight: 100 800;
  font-display: swap;
  src: url(/fonts/jetbrains-mono-greek-italic-5b7b27d4a0611b7d3203c9eefa7b5ce3.woff2) format("woff2");
  unicode-range: U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF;
}

@font-face {
  font-family: "JetBrains Mono";
  font-style: italic;
  font-weight: 100 800;
  font-display: swap;
  src: url(/fonts/jetbrains-mono-latin-ext-italic-ce26d2e3a4f1fdb5ce6816203ca95109.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: "JetBrains Mono";
  font-style: italic;
  font-weight: 100 800;
  font-display: swap;
  src: url(/fonts/jetbrains-mono-latin-italic-8035798118615656e47b0851c2f1039c.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: "JetBrains Mono";
  font-style: italic;
  font-weight: 100 800;
  font-display: swap;
  src: url(/fonts/jetbrains-mono-symbols-italic-7fa579c4650b10f1a898cedcd852ab5c.woff2) format("woff2");
  unicode-range: U+2070,U+2074-207A,U+2080-2089,U+2115-2116,U+212E,U+2190,U+2192,U+2194-2199,U+21E7,U+2200,U+2202-2203,U+2208-2209,U+220B-220C,U+220F-2211,U+2218-221A,U+221E,U+2223,U+2225,U+2227-2228,U+222B,U+2237,U+223C,U+2248-2249,U+2260-2261,U+2264-2265,U+2282-2287,U+2302-2305,U+2318,U+2325,U+2374,U+23FB-23FE,U+2500-25A1,U+25AA-25AB,U+25B2-25C7,U+25CA,U+25CC,U+25CE-25CF,U+25D4-25D5,U+25E7-25EB,U+25EF,U+26A0-26A1,U+2715,U+276E-2771,U+27E8-27E9,U+27F5-27F7,U+2B58;
}
