/*
 * Klean web font kit — Karcher's current corporate font.
 *
 * Foundry: Supertype (Jürgen Huber & Martin Wenzel), v1.029 (14 Aug 2025).
 * Web-tier license held by Karcher marketing. Source files in
 * `Klean_Web_Static/` at the repo root (committed); the build copies
 * them into `wwwroot/css/fonts/Klean/` for runtime serving.
 *
 * Three width variants:
 *   - 'Klean'             — width 100 (default)
 *   - 'Klean Narrow'      — width 90
 *   - 'Klean Cond'        — width 60
 *
 * 'Klean Narrow Black' is also declared as its own family alias for
 * the design system's `--kp-font-display` token.
 *
 * font-display: swap — show fallback immediately while Klean loads,
 * then re-render once available. Avoids invisible-text flashes.
 */

/* ============================================================ */
/*  Klean (default width 100)                                    */
/* ============================================================ */
@font-face {
    font-family: 'Klean';
    src: url('../fonts/Klean/Klean-Regular.woff2') format('woff2'),
         url('../fonts/Klean/Klean-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Klean';
    src: url('../fonts/Klean/Klean-RegularItalic.woff2') format('woff2'),
         url('../fonts/Klean/Klean-RegularItalic.woff') format('woff');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Klean';
    src: url('../fonts/Klean/Klean-Medium.woff2') format('woff2'),
         url('../fonts/Klean/Klean-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Klean';
    src: url('../fonts/Klean/Klean-Bold.woff2') format('woff2'),
         url('../fonts/Klean/Klean-Bold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Klean';
    src: url('../fonts/Klean/Klean-BoldItalic.woff2') format('woff2'),
         url('../fonts/Klean/Klean-BoldItalic.woff') format('woff');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Klean';
    src: url('../fonts/Klean/Klean-Extrabold.woff2') format('woff2'),
         url('../fonts/Klean/Klean-Extrabold.woff') format('woff');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Klean';
    src: url('../fonts/Klean/Klean-Black.woff2') format('woff2'),
         url('../fonts/Klean/Klean-Black.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

/* ============================================================ */
/*  Klean Narrow (width 90)                                      */
/* ============================================================ */
@font-face {
    font-family: 'Klean Narrow';
    src: url('../fonts/Klean/Klean-NarrowRegular.woff2') format('woff2'),
         url('../fonts/Klean/Klean-NarrowRegular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Klean Narrow';
    src: url('../fonts/Klean/Klean-NarrowMedium.woff2') format('woff2'),
         url('../fonts/Klean/Klean-NarrowMedium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Klean Narrow';
    src: url('../fonts/Klean/Klean-NarrowBold.woff2') format('woff2'),
         url('../fonts/Klean/Klean-NarrowBold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Klean Narrow';
    src: url('../fonts/Klean/Klean-NarrowExtrabold.woff2') format('woff2'),
         url('../fonts/Klean/Klean-NarrowExtrabold.woff') format('woff');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Klean Narrow';
    src: url('../fonts/Klean/Klean-NarrowBlack.woff2') format('woff2'),
         url('../fonts/Klean/Klean-NarrowBlack.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

/* ============================================================ */
/*  Klean Narrow Black — alias family for the display token.    */
/*  Same file as 'Klean Narrow' weight 900 above; declaring it   */
/*  as its own family lets `--kp-font-display` reference it by  */
/*  name without forcing weight/stretch CSS at every consumer.  */
/* ============================================================ */
@font-face {
    font-family: 'Klean Narrow Black';
    src: url('../fonts/Klean/Klean-NarrowBlack.woff2') format('woff2'),
         url('../fonts/Klean/Klean-NarrowBlack.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

/* ============================================================ */
/*  Klean Cond (width 60)                                        */
/* ============================================================ */
@font-face {
    font-family: 'Klean Cond';
    src: url('../fonts/Klean/Klean-CondRegular.woff2') format('woff2'),
         url('../fonts/Klean/Klean-CondRegular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Klean Cond';
    src: url('../fonts/Klean/Klean-CondMedium.woff2') format('woff2'),
         url('../fonts/Klean/Klean-CondMedium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Klean Cond';
    src: url('../fonts/Klean/Klean-CondBold.woff2') format('woff2'),
         url('../fonts/Klean/Klean-CondBold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Klean Cond';
    src: url('../fonts/Klean/Klean-CondExtrabold.woff2') format('woff2'),
         url('../fonts/Klean/Klean-CondExtrabold.woff') format('woff');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Klean Cond';
    src: url('../fonts/Klean/Klean-CondBlack.woff2') format('woff2'),
         url('../fonts/Klean/Klean-CondBlack.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}
