/* ============================================================
   ClassicDossier — selbst gehostete Schriften (DSGVO: kein Google-CDN)
   Latin-Subset (inkl. äöüß). Playfair Display (Titel/Marke),
   Hanken Grotesk (Text/Zahlen). VOR tokens.css/components.css laden
   genügt nicht — Reihenfolge: fonts.css → tokens.css → components.css.
   ============================================================ */

/* ---- Playfair Display (Serife) ---- */
@font-face {
  font-family: "Playfair Display"; font-style: normal; font-weight: 500;
  font-display: swap; src: url("fonts/cd-playfair-500.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display"; font-style: normal; font-weight: 600;
  font-display: swap; src: url("fonts/cd-playfair-600.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display"; font-style: normal; font-weight: 700;
  font-display: swap; src: url("fonts/cd-playfair-700.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display"; font-style: italic; font-weight: 500;
  font-display: swap; src: url("fonts/cd-playfair-500-italic.woff2") format("woff2");
}

/* ---- Hanken Grotesk (Grotesk) ---- */
@font-face {
  font-family: "Hanken Grotesk"; font-style: normal; font-weight: 400;
  font-display: swap; src: url("fonts/cd-hanken-400.woff2") format("woff2");
}
@font-face {
  font-family: "Hanken Grotesk"; font-style: normal; font-weight: 500;
  font-display: swap; src: url("fonts/cd-hanken-500.woff2") format("woff2");
}
@font-face {
  font-family: "Hanken Grotesk"; font-style: normal; font-weight: 600;
  font-display: swap; src: url("fonts/cd-hanken-600.woff2") format("woff2");
}
@font-face {
  font-family: "Hanken Grotesk"; font-style: normal; font-weight: 700;
  font-display: swap; src: url("fonts/cd-hanken-700.woff2") format("woff2");
}
@font-face {
  font-family: "Hanken Grotesk"; font-style: normal; font-weight: 800;
  font-display: swap; src: url("fonts/cd-hanken-800.woff2") format("woff2");
}
