/* Self-hosted fonts: two families only.
   Headings: Playfair Display | Body: Open Sans (variable fonts, latin subset). */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url('../fonts/rangeela/opensans-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'Playfair Display';
    font-style: normal;
    font-weight: 500 700;
    font-display: swap;
    src: url('../fonts/rangeela/playfair-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'Playfair Display';
    font-style: italic;
    font-weight: 500;
    font-display: swap;
    src: url('../fonts/rangeela/playfair-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+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Metric-matched fallbacks: text uses these until the web fonts arrive, so nothing shifts when they swap in (CLS). */
@font-face {
    font-family: 'Open Sans Fallback';
    src: local('Arial'), local('Helvetica Neue'), local('Helvetica');
    size-adjust: 103.84%;
    ascent-override: 102.95%;
    descent-override: 28.22%;
    line-gap-override: 0%;
}
@font-face {
    font-family: 'Playfair Fallback';
    src: local('Times New Roman'), local('Times');
    size-adjust: 104.93%;
    ascent-override: 103.12%;
    descent-override: 23.92%;
    line-gap-override: 0%;
}
