/* Danske Gas — self-hosted fonts (Google Fonts: Hanken Grotesk, Newsreader)
   v3 (§5): fonty ZMIENNE — jeden plik per subset/styl, deklaracja zakresu wag.
   Poprzednio ten sam plik zmienny leżał 25× pod nazwami per-waga (md5-identyczne),
   przez co przeglądarka pobierała identyczne bajty wielokrotnie. Teraz: 7 plików,
   każdy md5-różny, prawdziwe wagi z osi wght (bez syntezy w każdej przeglądarce
   wspierającej VF), Newsreader zachowuje oś opsz (optical size w nagłówkach).
   CYRYLICA: oba kroje NIE zawierają cyrylicy (Google coverage: Hanken cyrillic-ext
   to wyłącznie ₴/spacje). Dla ukraińskiego zdefiniowano ŚWIADOMY fallback przez
   src:local() w obrębie rodzin: Hanken → lokalny grotesk z cyrylicą
   (Helvetica Neue/Segoe UI/Roboto/Arial), Newsreader → Georgia (serif z cyrylicą,
   obecny na macOS/Windows). Zakresy unicode-range nie nachodzą na łacinę —
   wygląd tekstu łacińskiego bez zmian. */

/* ===================== Hanken Grotesk (zmienny, wght 100–900) ===================== */
/* cyrillic-ext (w tym kroju: praktycznie tylko U+20B4 ₴) */
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(HankenGrotesk-cyrillic-ext.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* latin-ext */
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(HankenGrotesk-latin-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;
}
/* latin */
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(HankenGrotesk-latin.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;
}

/* --- Cyrylica (ukraiński: U+0400-045F + Ґґ U+0490-0491) — świadomy fallback.
   Krój Hanken Grotesk nie posiada tych glifów; lokalny grotesk gwarantuje sans
   (a nie domyślny serif przeglądarki) także tam, gdzie stos to samo "Hanken Grotesk".
   UWAGA (zbadane w Chrome/Blink): twarz local() musi mieć IDENTYCZNE deskryptory
   font-weight/style jak twarze url() tej rodziny — tylko wtedy dołącza do wspólnej
   grupy segmentowanej po unicode-range; inny zakres wag przesłania całą rodzinę
   albo jest ignorowany. Pogrubienia dla cyrylicy przeglądarka wyprowadza sama. */
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: local('Helvetica Neue'), local('HelveticaNeue'), local('Segoe UI'), local('Roboto'), local('Arial'), local('ArialMT'), local('Liberation Sans');
  unicode-range: U+0400-045F, U+0490-0491, U+2116;
}

/* ===================== Newsreader (zmienny, wght 200–800 + opsz 6–72) ===================== */
/* latin-ext */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url(Newsreader-latin-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;
}
/* latin */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url(Newsreader-latin.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;
}
/* latin-ext italic */
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-weight: 200 800;
  font-display: optional;
  src: url(Newsreader-italic-latin-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;
}
/* latin italic */
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-weight: 200 800;
  font-display: optional;
  src: url(Newsreader-italic-latin.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;
}

/* --- Cyrylica — świadomy fallback: 'Newsreader' → Georgia (serif z pełną cyrylicą,
   dostępny na macOS i Windows; gdzie brak — dalej stos strony: serif). Efekt stosu
   'Newsreader', Georgia, serif dla nagłówków bez zmiany wyglądu tekstu łacińskiego
   (zakresy nie obejmują łaciny). Deskryptory identyczne z twarzami url() — patrz
   uwaga przy Hanken Grotesk. */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: local('Georgia');
  unicode-range: U+0400-04FF, U+2116;
}
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-weight: 200 800;
  font-display: optional;
  src: local('Georgia Italic'), local('Georgia-Italic'), local('Georgia');
  unicode-range: U+0400-04FF, U+2116;
}

/* r2c8: justowanie w CSS statycznym (było wstrzykiwane przez nav.js po pierwszym paincie
   → przełamanie wierszy przesuwało dolnie kotwiczone hero .inner ≈0.56 CLS na conferences).
   nav.js nadal niesie tę samą regułę (idempotentny duplikat dla stron bez fonts.css). */
main p,.ev-desc p,.lead,.body{text-align:justify;text-justify:inter-word;hyphens:auto}
main .nsx p,main .quickcard p,main .pf-card p,main .fs-tab *,#cform p{text-align:left;hyphens:manual}

/* ==== x10 (2026-07-21): globalna warstwa detali — jedyny arkusz ładowany na
   każdej stronie, stąd tu. Mikrotypografia silnika (pretty/balance degradują
   łagodnie poza Chromium), selekcja w barwie marki, dyskretny cienki scrollbar,
   cyfry tabelaryczne dla danych liczbowych. Zero wpływu na układ i CLS. */
main p,main li,main dd,main figcaption{text-wrap:pretty}
h1,h2,h3{text-wrap:balance}
::selection{background:#E5232B;color:#fff}
html{scrollbar-width:thin;scrollbar-color:rgba(158,172,182,.34) transparent}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:rgba(158,172,182,.28);border-radius:8px;border:2px solid transparent;background-clip:content-box}
::-webkit-scrollbar-thumb:hover{background:rgba(158,172,182,.46);border:2px solid transparent;background-clip:content-box}
time,.gg-v,.hfact-n,.cup,.tb-i b{font-variant-numeric:tabular-nums lining-nums}
