/* ============================================================================
 * ALMS self-hosted fonts — served same-origin so slow networks and offline
 * CDN hiccups can never block icons/text (no more "slow network / fallback
 * font" interventions). Files live in /fonts and /vendor/fontawesome and
 * are cached immutably (see public/.htaccess). Bump ?v= if ever replaced.
 * ========================================================================== */

/* Poppins 300–800 (latin) — r via @fontsource/poppins */
@font-face {
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('/fonts/poppins-latin-300-normal.woff2') format('woff2');
}
@font-face {
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('/fonts/poppins-latin-400-normal.woff2') format('woff2');
}
@font-face {
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('/fonts/poppins-latin-500-normal.woff2') format('woff2');
}
@font-face {
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('/fonts/poppins-latin-600-normal.woff2') format('woff2');
}
@font-face {
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('/fonts/poppins-latin-700-normal.woff2') format('woff2');
}
@font-face {
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 800;
    font-display: swap;
    src: url('/fonts/poppins-latin-800-normal.woff2') format('woff2');
}

/* Material Icons (v145) — ligature icon font used via .material-icons.
 * font-display:block (not swap): icon slots stay invisible while loading
 * instead of flashing raw ligature text like "school". Poppins above stays
 * swap because body text must never be invisible. */
@font-face {
    font-family: 'Material Icons';
    font-style: normal;
    font-weight: 400;
    font-display: block;
    src: url('/fonts/material-icons-v145.woff2') format('woff2');
}

/* Base icon class (previously provided by the Google Fonts stylesheet).
 * Turns the ligature text (e.g. "school") into the icon glyph. Scoped
 * overrides in the Vite shell bundle (e.g. .btn .material-icons) still win,
 * exactly as before. */
.material-icons {
    font-family: 'Material Icons';
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: 'liga';
    -webkit-font-smoothing: antialiased;
}
