/* Self-hosted variable fonts (previously fonts.googleapis.com — render-blocking third party
 * + GDPR transfer). Variable woff2 subsets downloaded from Google Fonts; latin-ext is required
 * for Polish diacritics. To retheme, replace the files in wwwroot/fonts/ and these blocks.
 */

/* ── ST Figures — the digits inside display type ──────────────────────────────
 * Playfair Display is a Didone, and its numerals are its weakest glyph set: the
 * "1" measures 39.8% narrower than the "0", the face carries NO tabular figures
 * at all (font-feature-settings: "tnum" is a verified no-op in it), and its
 * hairline strokes are thinnest exactly in the digits — on the darkest surface
 * this site paints. Set a price in it and the number wobbles.
 *
 * Giving up the serif everywhere display type happens to contain a number would
 * cost the brand its voice. So this face substitutes ONLY the numeric characters,
 * by unicode-range, out of Inter: letters still resolve to Playfair, digits
 * resolve to the clean grotesque already in this page's critical path. The swap
 * therefore costs zero extra bytes and zero extra requests — it points at the
 * same woff2 the body text preloads.
 *
 * size-adjust is measured, not guessed: at 100px Inter's digits cap at 74px and
 * Playfair's at 73px, so Inter is scaled to 98.6% and the two sit on exactly the
 * same optical line. U+00A0 is included because that — not U+0020 — is the
 * thousands separator pl-PL number formatting actually emits, so a grouped price
 * is set in one consistent face; the ordinary word space is deliberately left to
 * Playfair so headline word spacing is untouched.
 *
 * Declared BEFORE the Playfair blocks: for equal specificity the first matching
 * family in the font-family list wins, and --font-display lists this one first. */
@font-face {
    font-family: 'ST Figures';
    font-style: normal;
    font-weight: 300 700;
    font-display: swap;
    size-adjust: 98.6%;
    src: url('../fonts/inter-300-700-latin.woff2') format('woff2');
    unicode-range: U+0025, U+002B, U+002C-002E, U+0030-0039, U+003A, U+00A0, U+00D7, U+2013;
}

/* Inter normal 300 700 — latin-ext */
@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 300 700;
    font-display: swap;
    src: url('../fonts/inter-300-700-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;
}

/* Inter normal 300 700 — latin */
@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 300 700;
    font-display: swap;
    src: url('../fonts/inter-300-700-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;
}

/* Playfair Display italic 500 600 — latin-ext */
@font-face {
    font-family: 'Playfair Display';
    font-style: italic;
    font-weight: 500 600;
    font-display: swap;
    src: url('../fonts/playfair-display-italic-500-600-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;
}

/* Playfair Display italic 500 600 — latin */
@font-face {
    font-family: 'Playfair Display';
    font-style: italic;
    font-weight: 500 600;
    font-display: swap;
    src: url('../fonts/playfair-display-italic-500-600-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;
}

/* Playfair Display normal 500 700 — latin-ext */
@font-face {
    font-family: 'Playfair Display';
    font-style: normal;
    font-weight: 500 700;
    font-display: swap;
    src: url('../fonts/playfair-display-500-700-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;
}

/* Playfair Display normal 500 700 — latin */
@font-face {
    font-family: 'Playfair Display';
    font-style: normal;
    font-weight: 500 700;
    font-display: swap;
    src: url('../fonts/playfair-display-500-700-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;
}
