/**
 * fonts.css — self-hosted DM Sans.
 *
 * WHY THIS FILE EXISTS
 *
 *   layout.php used to pull DM Sans from fonts.googleapis.com. That means
 *   every visitor's browser opens a connection to Google before the page
 *   renders, and Google receives their IP address. A 2022 Munich regional
 *   court decision (LG München I, 3 O 17493/20) found that this breached
 *   GDPR where the site could have hosted the files itself.
 *
 *   Hosting them ourselves removes the connection entirely, which also
 *   removes Google from the Privacy Policy's sharing list. No consent
 *   question, no disclosure, no third party.
 *
 * WHY FOUR WEIGHTS AND NOT FIVE
 *
 *   The old Google Fonts URL requested 300, 400, 500, 600 and 700. Nothing
 *   in style.css or leads.css ever uses 300 — it was downloading a file for
 *   a weight that is never applied. Four files, one fewer request.
 *
 *   If you add font-weight: 300 anywhere later, you must add the matching
 *   @font-face here too. Without it the browser will not fail visibly; it
 *   will synthesise a fake light weight from the 400 file, which looks
 *   subtly wrong and is very hard to notice.
 *
 * WHY latin AND latin-ext
 *
 *   Slovak needs č, š, ž, ľ, ť, ď, ň, ĺ, ŕ and ô. Those live in the
 *   latin-ext subset, not latin. Ship latin only and "Púchovská" renders
 *   half in DM Sans and half in the system fallback.
 *
 * WHY font-display: swap
 *
 *   Text is painted immediately in the fallback font and re-painted in
 *   DM Sans when it arrives. The alternative, the default `auto`, hides
 *   the text for up to three seconds while the font loads. A blank page
 *   is worse than a page that changes font once.
 *
 * NO local() SOURCE
 *
 *   A local() line tells the browser to use a same-named font already on
 *   the machine. That sounds like a free optimisation and is not: it will
 *   happily match an unrelated or outdated font of the same name, and you
 *   cannot reproduce the result on your own machine to debug it.
 */

@font-face {
    font-family: 'DM Sans';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/dm-sans-400.woff2') format('woff2');
}

@font-face {
    font-family: 'DM Sans';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/dm-sans-400-italic.woff2') format('woff2');
}

@font-face {
    font-family: 'DM Sans';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('../fonts/dm-sans-600.woff2') format('woff2');
}

@font-face {
    font-family: 'DM Sans';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/dm-sans-700.woff2') format('woff2');
}

@font-face {
    font-family: 'DM Sans';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url('../fonts/dm-sans-900.woff2') format('woff2');
}
