/* Selbst gehostete Schriften (SIL OFL 1.1, Lizenzen in ./fonts/OFL-*.txt). Kein CDN. */
@font-face {
  font-family: "Archivo";
  src: url("./fonts/archivo-var.woff2") format("woff2-variations"), url("./fonts/archivo-var.woff2") format("woff2");
  font-weight: 100 900;
  font-stretch: 62% 125%;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Instrument Serif";
  src: url("./fonts/instrument-serif-italic.woff2") format("woff2");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "JetBrains Mono";
  src: url("./fonts/jetbrains-mono-var.woff2") format("woff2-variations"), url("./fonts/jetbrains-mono-var.woff2") format("woff2");
  font-weight: 100 800;
  font-style: normal;
  font-display: swap;
}

/* Ersatzschriften mit der Metrik der Webschrift: kein Layout-Sprung beim Schriftwechsel (live12: CLS 0,107).
   size-adjust = Laufweite Webschrift / Systemschrift, in Chrome über die Seitentexte je Gewicht und Breite gemessen;
   ascent/descent/line-gap-override = Metrik der Webschrift / size-adjust (Archivo 878/210/0, Instrument Serif
   990/310/0, JetBrains Mono 1020/300/0, UPM 1000). Archivo ist variabel: je genutzter Breite (wdth) und Gewichtsstufe
   ein Face – neue Stufe in Überschriften: nachmessen und ergänzen. unicode-range = Zeichenvorrat der woff2, fehlende
   Zeichen fallen wie bisher weiter. ch folgt beim Laden der Ersatzschrift: in Archivo-Text --ch-* (tokens.css). */
@font-face { font-family: "Archivo Fallback"; src: local("Arial"), local("ArialMT"), local("Liberation Sans"), local("Arimo"); font-stretch: 50% 104%; font-weight: 1 449;
  size-adjust: 98.54%; ascent-override: 89.1%; descent-override: 21.31%; line-gap-override: 0%; /* 400 · 100 % */
  unicode-range: U+20-7E, U+A0-FF, U+102, U+131, U+152-153, U+2BC, U+2C6, U+2DA, U+2DC, U+300-301, U+303-304, U+308-309, U+323, U+2009, U+2013-2014, U+2018-201A, U+201C-201E, U+2022, U+2026, U+2032-2033, U+2039-203A, U+2044, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF; }
@font-face { font-family: "Archivo Fallback"; src: local("Arial"), local("ArialMT"), local("Liberation Sans"), local("Arimo"); font-stretch: 50% 104%; font-weight: 450 549;
  size-adjust: 100.49%; ascent-override: 87.37%; descent-override: 20.9%; line-gap-override: 0%; /* 500 · 100 % */
  unicode-range: U+20-7E, U+A0-FF, U+102, U+131, U+152-153, U+2BC, U+2C6, U+2DA, U+2DC, U+300-301, U+303-304, U+308-309, U+323, U+2009, U+2013-2014, U+2018-201A, U+201C-201E, U+2022, U+2026, U+2032-2033, U+2039-203A, U+2044, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF; }
@font-face { font-family: "Archivo Fallback"; src: local("Arial Bold"), local("Arial-BoldMT"), local("Liberation Sans Bold"), local("Arimo Bold"); font-stretch: 50% 104%; font-weight: 550 1000;
  size-adjust: 96.12%; ascent-override: 91.34%; descent-override: 21.85%; line-gap-override: 0%; /* 600–650 · 100 % */
  unicode-range: U+20-7E, U+A0-FF, U+102, U+131, U+152-153, U+2BC, U+2C6, U+2DA, U+2DC, U+300-301, U+303-304, U+308-309, U+323, U+2009, U+2013-2014, U+2018-201A, U+201C-201E, U+2022, U+2026, U+2032-2033, U+2039-203A, U+2044, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF; }
@font-face { font-family: "Archivo Fallback"; src: local("Arial Bold"), local("Arial-BoldMT"), local("Liberation Sans Bold"), local("Arimo Bold"); font-stretch: 105% 109%; font-weight: 1 1000;
  size-adjust: 104.67%; ascent-override: 83.88%; descent-override: 20.06%; line-gap-override: 0%; /* 620 · 108 % */
  unicode-range: U+20-7E, U+A0-FF, U+102, U+131, U+152-153, U+2BC, U+2C6, U+2DA, U+2DC, U+300-301, U+303-304, U+308-309, U+323, U+2009, U+2013-2014, U+2018-201A, U+201C-201E, U+2022, U+2026, U+2032-2033, U+2039-203A, U+2044, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF; }
@font-face { font-family: "Archivo Fallback"; src: local("Arial Bold"), local("Arial-BoldMT"), local("Liberation Sans Bold"), local("Arimo Bold"); font-stretch: 110% 111%; font-weight: 1 1000;
  size-adjust: 107.22%; ascent-override: 81.89%; descent-override: 19.59%; line-gap-override: 0%; /* 600 · 110 % */
  unicode-range: U+20-7E, U+A0-FF, U+102, U+131, U+152-153, U+2BC, U+2C6, U+2DA, U+2DC, U+300-301, U+303-304, U+308-309, U+323, U+2009, U+2013-2014, U+2018-201A, U+201C-201E, U+2022, U+2026, U+2032-2033, U+2039-203A, U+2044, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF; }
@font-face { font-family: "Archivo Fallback"; src: local("Arial Bold"), local("Arial-BoldMT"), local("Liberation Sans Bold"), local("Arimo Bold"); font-stretch: 112% 115%; font-weight: 1 1000;
  size-adjust: 109.67%; ascent-override: 80.06%; descent-override: 19.15%; line-gap-override: 0%; /* 620 · 112 % */
  unicode-range: U+20-7E, U+A0-FF, U+102, U+131, U+152-153, U+2BC, U+2C6, U+2DA, U+2DC, U+300-301, U+303-304, U+308-309, U+323, U+2009, U+2013-2014, U+2018-201A, U+201C-201E, U+2022, U+2026, U+2032-2033, U+2039-203A, U+2044, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF; }
@font-face { font-family: "Archivo Fallback"; src: local("Arial Bold"), local("Arial-BoldMT"), local("Liberation Sans Bold"), local("Arimo Bold"); font-stretch: 116% 119%; font-weight: 1 669;
  size-adjust: 115.82%; ascent-override: 75.81%; descent-override: 18.13%; line-gap-override: 0%; /* 620 · 118 % */
  unicode-range: U+20-7E, U+A0-FF, U+102, U+131, U+152-153, U+2BC, U+2C6, U+2DA, U+2DC, U+300-301, U+303-304, U+308-309, U+323, U+2009, U+2013-2014, U+2018-201A, U+201C-201E, U+2022, U+2026, U+2032-2033, U+2039-203A, U+2044, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF; }
@font-face { font-family: "Archivo Fallback"; src: local("Arial Bold"), local("Arial-BoldMT"), local("Liberation Sans Bold"), local("Arimo Bold"); font-stretch: 116% 119%; font-weight: 670 1000;
  size-adjust: 120.75%; ascent-override: 72.71%; descent-override: 17.39%; line-gap-override: 0%; /* 700 · 118 % */
  unicode-range: U+20-7E, U+A0-FF, U+102, U+131, U+152-153, U+2BC, U+2C6, U+2DA, U+2DC, U+300-301, U+303-304, U+308-309, U+323, U+2009, U+2013-2014, U+2018-201A, U+201C-201E, U+2022, U+2026, U+2032-2033, U+2039-203A, U+2044, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF; }
@font-face { font-family: "Archivo Fallback"; src: local("Arial Bold"), local("Arial-BoldMT"), local("Liberation Sans Bold"), local("Arimo Bold"); font-stretch: 120% 122%; font-weight: 1 669;
  size-adjust: 117.73%; ascent-override: 74.58%; descent-override: 17.84%; line-gap-override: 0%; /* 620 · 120 % */
  unicode-range: U+20-7E, U+A0-FF, U+102, U+131, U+152-153, U+2BC, U+2C6, U+2DA, U+2DC, U+300-301, U+303-304, U+308-309, U+323, U+2009, U+2013-2014, U+2018-201A, U+201C-201E, U+2022, U+2026, U+2032-2033, U+2039-203A, U+2044, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF; }
@font-face { font-family: "Archivo Fallback"; src: local("Arial Bold"), local("Arial-BoldMT"), local("Liberation Sans Bold"), local("Arimo Bold"); font-stretch: 120% 122%; font-weight: 670 1000;
  size-adjust: 120%; ascent-override: 73.17%; descent-override: 17.5%; line-gap-override: 0%; /* 700 · 120 % */
  unicode-range: U+20-7E, U+A0-FF, U+102, U+131, U+152-153, U+2BC, U+2C6, U+2DA, U+2DC, U+300-301, U+303-304, U+308-309, U+323, U+2009, U+2013-2014, U+2018-201A, U+201C-201E, U+2022, U+2026, U+2032-2033, U+2039-203A, U+2044, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF; }
@font-face { font-family: "Archivo Fallback"; src: local("Arial Bold"), local("Arial-BoldMT"), local("Liberation Sans Bold"), local("Arimo Bold"); font-stretch: 123% 200%; font-weight: 1 669;
  size-adjust: 123.61%; ascent-override: 71.03%; descent-override: 16.99%; line-gap-override: 0%; /* 620 · 125 % */
  unicode-range: U+20-7E, U+A0-FF, U+102, U+131, U+152-153, U+2BC, U+2C6, U+2DA, U+2DC, U+300-301, U+303-304, U+308-309, U+323, U+2009, U+2013-2014, U+2018-201A, U+201C-201E, U+2022, U+2026, U+2032-2033, U+2039-203A, U+2044, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF; }
@font-face { font-family: "Archivo Fallback"; src: local("Arial Bold"), local("Arial-BoldMT"), local("Liberation Sans Bold"), local("Arimo Bold"); font-stretch: 123% 200%; font-weight: 670 1000;
  size-adjust: 131.96%; ascent-override: 66.54%; descent-override: 15.91%; line-gap-override: 0%; /* 700 · 125 % */
  unicode-range: U+20-7E, U+A0-FF, U+102, U+131, U+152-153, U+2BC, U+2C6, U+2DA, U+2DC, U+300-301, U+303-304, U+308-309, U+323, U+2009, U+2013-2014, U+2018-201A, U+201C-201E, U+2022, U+2026, U+2032-2033, U+2039-203A, U+2044, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF; }
/* Zeichen, die Archivo fehlen (→ ← ≥): wie bis live12 */
@font-face { font-family: "Archivo Fallback Zeichen"; src: local("Arial"); size-adjust: 104%; ascent-override: 88%; descent-override: 22%; }
@font-face { font-family: "Instrument Serif Fallback"; src: local("Times New Roman Italic"), local("TimesNewRomanPS-ItalicMT"), local("Liberation Serif Italic"), local("Tinos Italic"); font-style: italic; font-weight: 400;
  size-adjust: 88.08%; ascent-override: 112.4%; descent-override: 35.2%; line-gap-override: 0%;
  unicode-range: U+20-7E, U+A0-A3, U+A5, U+A7-AB, U+AE-B0, U+B4, U+B6-B8, U+BA-BB, U+BF-FF, U+102, U+131, U+152-153, U+2C6, U+2DA, U+2DC, U+300-301, U+303-304, U+308, U+2013-2014, U+2018-201A, U+201C-201E, U+2022, U+2026, U+2039-203A, U+20AC, U+2122, U+2212; }
@font-face { font-family: "JetBrains Mono Fallback"; src: local("Consolas"); font-weight: 1 1000;
  size-adjust: 109.13%; ascent-override: 93.47%; descent-override: 27.49%; line-gap-override: 0%;
  unicode-range: U+20-7E, U+A0-FF, U+102, U+131, U+152-153, U+2BC, U+2C6, U+2DA, U+2DC, U+300-301, U+303-304, U+308-309, U+323, U+2013-2014, U+2018-201A, U+201C-201E, U+2022, U+2026, U+2032-2033, U+2039-203A, U+2044, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF; }
@font-face { font-family: "JetBrains Mono Fallback Courier"; src: local("Courier New"), local("CourierNewPSMT"), local("Liberation Mono"), local("Cousine"); font-weight: 1 1000;
  size-adjust: 99.98%; ascent-override: 102.02%; descent-override: 30.01%; line-gap-override: 0%;
  unicode-range: U+20-7E, U+A0-FF, U+102, U+131, U+152-153, U+2BC, U+2C6, U+2DA, U+2DC, U+300-301, U+303-304, U+308-309, U+323, U+2013-2014, U+2018-201A, U+201C-201E, U+2022, U+2026, U+2032-2033, U+2039-203A, U+2044, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF; }
