/* ─────────────────────────────────────────────────────────────────────────────
   fonts.css — self-hosted Outfit.

   Outfit replaced Figtree, and is served from this repo rather than Google
   Fonts so the site renders identically with no internet connection and makes
   no third-party request on page load.

   One variable font file per subset covers the whole 100-900 weight range, so
   there is no per-weight download. Total ~46 KB.

   Files: fonts/outfit/*.woff2  (Outfit v15, SIL Open Font License 1.1)

   The unicode-range values are Google's own subset boundaries — keep them.
   They let the browser skip the latin-ext file entirely unless a character in
   that range actually appears, which is the usual case here.

   woff2 only: supported by every browser since ~2016 (Chrome 36, Firefox 39,
   Safari 10, Edge 14, Android 5). Anything older falls back to Helvetica/Arial
   via the font stack, which is an acceptable degradation.
────────────────────────────────────────────────────────────────────────────── */

/* latin-ext */
@font-face {
    font-family: 'Outfit';
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url('../fonts/outfit/outfit-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: 'Outfit';
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url('../fonts/outfit/outfit-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;
}

/* ─────────────────────────────────────────────────────────────────────────────
   DM Mono — self-hosted, map page only.

   The map uses a monospace for figures that must align in a column: stand
   areas, prices in the calculator, and the zoom-% readout. Outfit cannot do
   that job, so DM Mono stays.

   DM Sans, which the map previously used for body text, has been dropped
   entirely in favour of Outfit — one less family, and it unifies typography
   with the rest of the site.

   Not a variable font, so one file per weight. Only 400 and 500 are used.
   Files: fonts/dm-mono/*.woff2  (DM Mono v16, SIL Open Font License 1.1)
────────────────────────────────────────────────────────────────────────────── */

/* latin-ext */
@font-face {
    font-family: 'DM Mono';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/dm-mono/dm-mono-400-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: 'DM Mono';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/dm-mono/dm-mono-400-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 */
@font-face {
    font-family: 'DM Mono';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('../fonts/dm-mono/dm-mono-500-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: 'DM Mono';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('../fonts/dm-mono/dm-mono-500-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;
}
