/* =========================================================================
 * MVZ Roth — Self-hosted fonts (no external connection, DSGVO-compliant)
 *
 * Fraunces — Variable expressive serif (display, headlines)
 * Inter Tight — Modern refined sans-serif (body, UI)
 *
 * No connections to Google servers. All fonts locally served.
 * ========================================================================= */

/* ----- INTER TIGHT (Body) ----- */
@font-face {
    font-family: 'Inter Tight';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('../../fonts/inter-tight-v7-latin-300.woff2') format('woff2');
}
@font-face {
    font-family: 'Inter Tight';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../../fonts/inter-tight-v7-latin-regular.woff2') format('woff2');
}
@font-face {
    font-family: 'Inter Tight';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('../../fonts/inter-tight-v7-latin-italic.woff2') format('woff2');
}
@font-face {
    font-family: 'Inter Tight';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('../../fonts/inter-tight-v7-latin-500.woff2') format('woff2');
}
@font-face {
    font-family: 'Inter Tight';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('../../fonts/inter-tight-v7-latin-600.woff2') format('woff2');
}
@font-face {
    font-family: 'Inter Tight';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../../fonts/inter-tight-v7-latin-700.woff2') format('woff2');
}

/* ----- FRAUNCES (Display) ----- */
@font-face {
    font-family: 'Fraunces';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../../fonts/fraunces-v32-latin-regular.woff2') format('woff2');
}
@font-face {
    font-family: 'Fraunces';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('../../fonts/fraunces-v32-latin-italic.woff2') format('woff2');
}
@font-face {
    font-family: 'Fraunces';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('../../fonts/fraunces-v32-latin-500.woff2') format('woff2');
}
@font-face {
    font-family: 'Fraunces';
    font-style: italic;
    font-weight: 500;
    font-display: swap;
    src: url('../../fonts/fraunces-v32-latin-500italic.woff2') format('woff2');
}
@font-face {
    font-family: 'Fraunces';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('../../fonts/fraunces-v32-latin-600.woff2') format('woff2');
}
@font-face {
    font-family: 'Fraunces';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../../fonts/fraunces-v32-latin-700.woff2') format('woff2');
}

/* -------------------------------------------------------------------------
 * Metric-compatible fallbacks
 * -------------------------------------------------------------------------
 * With font-display:swap the first paint uses the system fallback. Matching its
 * metrics to the webfont keeps the swap from shifting layout (CLS ≈ 0).
 * Values derived from the ascent/descent/x-height ratios of each family.
 * ---------------------------------------------------------------------- */
@font-face {
    font-family: 'Inter Tight Fallback';
    src: local('Arial'), local('Helvetica Neue'), local('Liberation Sans');
    ascent-override: 96%;
    descent-override: 24%;
    line-gap-override: 0%;
    size-adjust: 101%;
}
@font-face {
    font-family: 'Fraunces Fallback';
    src: local('Georgia'), local('Times New Roman'), local('Liberation Serif');
    ascent-override: 92%;
    descent-override: 24%;
    line-gap-override: 0%;
    size-adjust: 106%;
}
