/* Self-hosted Roboto (Latin subset only — this site has no Cyrillic,
   Greek, or Vietnamese content, and Punjabi/Gurmukhi text always falls
   back to a system font since Roboto doesn't cover that script anyway).
   Single variable-weight file instead of Google's default 45 declarations
   across 9 unicode subsets — removes an entire external CDN origin
   (fonts.googleapis.com + fonts.gstatic.com), which matters far more
   than it sounds under HTTP/1.1 + slow-network conditions, where every
   extra cross-origin connection costs a full DNS+TLS round trip. */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 300 900;
    font-display: swap;
    src: url('../fonts/roboto-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;
}

/* Self-hosted Noto Sans — Latin, Devanagari (Hindi) and Gurmukhi
   (Punjabi) subsets under one family name, 'Noto Sans India', so the
   Digital Books reader renders all three languages in one consistent
   typeface instead of Latin using the site's chosen font while
   Hindi/Punjabi silently fall back to whatever font each device/OS
   happens to have (the actual cause of the reader's inconsistent-font
   complaint — Roboto and the reader's other fonts are Latin-only).
   Same three-file, one-family, unicode-range-switched pattern as the
   Roboto rule above. All three source files are genuine variable
   fonts (Google serves the same file for both static weights 400 and
   700), so one 300–900 range per script, matching Roboto's approach,
   is correct rather than redundant. */
@font-face {
    font-family: 'Noto Sans India';
    font-style: normal;
    font-weight: 300 900;
    font-display: swap;
    src: url('../fonts/noto-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: 'Noto Sans India';
    font-style: normal;
    font-weight: 300 900;
    font-display: swap;
    src: url('../fonts/noto-sans-devanagari.woff2') format('woff2');
    unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09;
}
@font-face {
    font-family: 'Noto Sans India';
    font-style: normal;
    font-weight: 300 900;
    font-display: swap;
    src: url('../fonts/noto-sans-gurmukhi.woff2') format('woff2');
    unicode-range: U+0951-0952, U+0964-0965, U+0A01-0A76, U+200C-200D, U+20B9, U+25CC, U+262C, U+A830-A839;
}
