/* raster — @font-face.
   PLIK GENEROWANY przez narzedzia/pobierz-fonty.py.

   Osobny arkusz, nie część styles.css: kroje zmieniają się raz na nigdy,
   a arkusz przy każdej poprawce. Rozdzielone, przeglądarka nie pobiera
   205 kB krojów po zmianie jednego marginesu.

   Oba kroje są ZMIENNE (variable). Jeden plik na podzestaw obsługuje
   wszystkie wagi, których motyw używa (500, 600, 700) — zamiast trzech
   plików statycznych na krój i podzestaw. Dlatego `font-weight` jest tu
   zakresem, a nie liczbą.

   Nazwy rodzin są BEZ przyrostka „Variable”. Pakiety @fontsource rejestrują
   je jako 'Space Grotesk Variable' i 'IBM Plex Sans Variable'; gdyby tak
   zostało, trzeba by ruszyć tokeny --font-naglowek i --font-tekst, a za nimi
   każdy znacznik przeniesiony z makiety. Rodzina to zwykły łańcuch, więc
   rejestrujemy ją pod nazwą, której makieta już używa.

   Podzestawy przez unicode-range: przeglądarka bierze latin-ext tylko
   wtedy, gdy na stronie stoi znak spoza latin. Dla polskiego to się dzieje
   praktycznie zawsze (ą, ć, ę, ł, ń, ś, ź, ż), ale „ó” siedzi już w latin,
   więc krótkie napisy w maszcie potrafią zmieścić się w pierwszym pliku.

   Kursywy jest tylko dla kroju tekstowego. Nagłówki nigdzie w motywie nie
   idą kursywą, a treść wpisu owszem — <em> w artykule bez tego pliku
   przeglądarka pochyla sama, mechanicznie przekrzywiając rysunek liter.
*/

/* ---------- Space Grotesk — nagłówki ---------- */

@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url('../fonts/space-grotesk-normal-300_700-lat.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: 'Space Grotesk';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url('../fonts/space-grotesk-normal-300_700-ext.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;
}

/* ---------- IBM Plex Sans — tekst ---------- */

@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 100 700;
  font-display: swap;
  src: url('../fonts/ibm-plex-sans-normal-100_700-lat.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: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 100 700;
  font-display: swap;
  src: url('../fonts/ibm-plex-sans-normal-100_700-ext.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: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 100 700;
  font-display: swap;
  src: url('../fonts/ibm-plex-sans-italic-100_700-lat.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: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 100 700;
  font-display: swap;
  src: url('../fonts/ibm-plex-sans-italic-100_700-ext.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;
}
