/* Self-hosted webfonts — site-wide.
   Outfit is the single text family (replaces Montserrat + Fira Sans). JetBrains
   Mono is used for mono surfaces (code, footer eyebrows/contact, tabular IDs).
   Both ship as variable woff2 (latin subset). */

@font-face {
    font-family: "Outfit";
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url("../fonts/outfit-variable.woff2") format("woff2");
}

@font-face {
    font-family: "JetBrains Mono";
    font-style: normal;
    font-weight: 400 800;
    font-display: swap;
    src: url("../fonts/jetbrains-mono-variable.woff2") format("woff2");
}

/* Material Icons — self-hosted (was fonts.googleapis.com/icon?family=Material+Icons, a render-blocking
   external request). font-display:block keeps the glyph invisible until the font loads rather than swapping
   to the literal ligature text; app.css additionally clips any pre-load overflow. */
@font-face {
    font-family: "Material Icons";
    font-style: normal;
    font-weight: 400;
    font-display: block;
    src: url("../fonts/material-icons.woff2") format("woff2");
}

.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;
}

:root {
    --primary-font: "Outfit", "Helvetica Neue", Helvetica, Arial, sans-serif;
    --secondary-font: var(--primary-font);
    --mono-font: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;

    /* Footer aliases — kept so Footer.razor.css does not need editing. */
    --footer-sans: var(--primary-font);
    --footer-mono: var(--mono-font);
}
