/*! =================================================================================================
    css/fonts.css - Open Sans and Merriweather, served from this site's own server.

    WHY THIS FILE EXISTS
    --------------------
    Every page used to open with a stylesheet link to Google's font service, asking it for Open Sans
    and Merriweather. That hands Google the IP address, the page address and the browser fingerprint
    of every single visitor, before a word of the page has rendered. On a site about escorting and domination that
    is not a small thing: a visitor's interest here is their own business, and nobody consented to
    a third party being told about it. It was also the only render-blocking request to another host
    on otherwise very light pages, and there was no preconnect, so it cost a DNS lookup and a TLS
    handshake to somebody else's server before anything could be drawn.

    Self-hosting removes both problems at once. The files are the SAME files Google was serving
    (fetched from fonts.gstatic.com on 24/08/2026), so nothing about the site's appearance changes.

    ⚠ HER SITE HAS ITS OWN COPY, IN harley/fonts/, AND MUST KEEP IT.
    harley.spartanmanchester.com is a separate website with its own document root. It may not load
    a file from this one, and a gate check enforces that. Do not "tidy up" the duplication.

    WHAT IS HERE, AND WHY NOTHING ELSE IS
    -------------------------------------
    Only what the pages actually ask for, because a self-hosted set carrying weights nobody uses is
    slower than the thing it replaced:

      Open Sans, upright     one variable file covering 300 to 800. theme.css and custom.css between
                             them use 200, 300, 400, 500, 600 and 700, and inline styles reach for
                             800 four times. Google stopped shipping a separate 200, so 200 already
                             resolved to the lightest available; the range below reproduces that
                             exactly. The declared span stops at 700 on purpose: 800 then falls back
                             to 700 with the browser's own bolding, which is what visitors get today.
      Open Sans, italic      weight 400 only, which is all the site ever asked Google for. <em>, <i>
                             and .type--italic are the users.
      Merriweather 300       the reviews count (reviews-render.php) and nothing else upright.
      Merriweather 300 i     blockquote, styled in theme.css line ~3950.

    Material Icons was in the old family string and is REMOVED. Nothing on either site uses it:
    there is no material-icons class and no icon ligature anywhere in the markup. The only trace was
    two orphaned rules in theme.css that never match. It was downloading an icon font for nobody.

    LATIN SUBSET ONLY
    -----------------
    Google splits each family into subsets (latin, latin-ext, greek, cyrillic, vietnamese, math,
    symbols) and the browser fetches only the ones a page needs. Only latin is kept here. It covers
    everything the site writes, including the pound sign, accented vowels, curly quotes and the
    ellipsis. Arrows, ticks and crosses live in the maths and symbol subsets and now come from the
    visitor's own system font, which is indistinguishable at the sizes they are used.

    ⚠ THE unicode-range LINES MUST STAY. Without them a browser uses these files for every character
    and draws an empty box for anything the file does not contain.

    LICENCE
    -------
    Both families are under the SIL Open Font Licence 1.1, which permits self-hosting. The full
    texts sit beside the fonts as fonts/open-sans-OFL.txt and fonts/merriweather-OFL.txt, copied
    from github.com/google/fonts (ofl/opensans and ofl/merriweather).

    font-display: swap is on every face so the words are readable in a fallback font immediately and
    never invisible while a font loads.
    ================================================================================================= */

@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 300 700;
    font-display: swap;
    src: url('../fonts/open-sans-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;
}

@font-face {
    font-family: 'Open Sans';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/open-sans-latin-italic.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: 'Merriweather';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('../fonts/merriweather-latin-300.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: 'Merriweather';
    font-style: italic;
    font-weight: 300;
    font-display: swap;
    src: url('../fonts/merriweather-latin-300-italic.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;
}
