/* ── Existing fonts ─────────────────────────────────────────── */

/* Caveat — Handwriting (OFL 1.1, Impallari Type) */
@font-face {
  font-family: 'Caveat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/caveat-regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Caveat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/caveat-bold.ttf') format('truetype');
}

/* Merriweather — Serif (OFL 1.1, Sorkin Type) */
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/merriweather-regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/merriweather-bold.ttf') format('truetype');
}
@font-face {
  font-family: 'Merriweather';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/merriweather-italic.ttf') format('truetype');
}
@font-face {
  font-family: 'Merriweather';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/merriweather-bolditalic.ttf') format('truetype');
}

/* Playfair Display — Elegant Serif (OFL 1.1, Claus Eggers Sørensen) */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/playfair-regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/playfair-bold.ttf') format('truetype');
}
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/playfair-italic.ttf') format('truetype');
}
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/playfair-bolditalic.ttf') format('truetype');
}

/* ── New fonts ─────────────────────────────────────────────── */

/* Lato — Sans-Serif (OFL 1.1, Łukasz Dziedzic / tyPoland) */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/lato-regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/lato-bold.ttf') format('truetype');
}

/* Open Sans — Sans-Serif (OFL 1.1, Steve Matteson) */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/opensans-regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/opensans-bold.ttf') format('truetype');
}

/* Nunito — Rounded Sans-Serif (OFL 1.1, Vernon Adams) */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/nunito-regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/nunito-bold.ttf') format('truetype');
}

/* Poppins — Geometric Sans-Serif (OFL 1.1, Indian Type Foundry) */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/poppins-regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/poppins-bold.ttf') format('truetype');
}

/* Raleway — Elegant Sans-Serif (OFL 1.1, Matt McInerney, Pablo Impallari, Rodrigo Fuenzalida) */
@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/raleway-regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/raleway-bold.ttf') format('truetype');
}

/* Josefin Sans — Vintage Geometric (OFL 1.1, Santiago Orozco) */
@font-face {
  font-family: 'Josefin Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/josefinsans-regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Josefin Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/josefinsans-bold.ttf') format('truetype');
}

/* Lora — Calligraphic Serif (OFL 1.1, Cyreal) */
@font-face {
  font-family: 'Lora';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/lora-regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Lora';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/lora-bold.ttf') format('truetype');
}

/* Libre Baskerville — Classic Serif (OFL 1.1, Impallari Type) */
@font-face {
  font-family: 'Libre Baskerville';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/librebaskerville-regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Libre Baskerville';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/librebaskerville-bold.ttf') format('truetype');
}

/* Bitter — Slab Serif (OFL 1.1, Huerta Tipográfica) */
@font-face {
  font-family: 'Bitter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/bitter-regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Bitter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/bitter-bold.ttf') format('truetype');
}

/* Comfortaa — Rounded Geometric (OFL 1.1, Johan Aakerlund) */
@font-face {
  font-family: 'Comfortaa';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/comfortaa-regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Comfortaa';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/comfortaa-bold.ttf') format('truetype');
}

/* Dancing Script — Handwriting (OFL 1.1, Impallari Type) */
@font-face {
  font-family: 'Dancing Script';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/dancingscript-regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Dancing Script';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/dancingscript-bold.ttf') format('truetype');
}

/* Shadows Into Light — Handwriting (OFL 1.1, Kimberly Geswein) */
@font-face {
  font-family: 'Shadows Into Light';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/shadowsintolight-regular.ttf') format('truetype');
}

/* ── CJK Fallback fonts ──────────────────────────────────────── */

/* Noto Sans KR — Korean (OFL 1.1, Google) */
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/noto-sans-kr-korean-400-normal.woff2') format('woff2');
  unicode-range: U+AC00-D7AF, U+1100-11FF, U+3130-318F, U+A960-A97F, U+D7B0-D7FF, U+FFA0-FFDC;
}
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/noto-sans-kr-korean-700-normal.woff2') format('woff2');
  unicode-range: U+AC00-D7AF, U+1100-11FF, U+3130-318F, U+A960-A97F, U+D7B0-D7FF, U+FFA0-FFDC;
}

/* Noto Sans JP — Japanese (OFL 1.1, Google) */
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/noto-sans-jp-japanese-400-normal.woff2') format('woff2');
  unicode-range: U+3000-303F, U+3040-309F, U+30A0-30FF, U+31F0-31FF, U+4E00-9FFF, U+F900-FAFF, U+FF00-FFEF;
}
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/noto-sans-jp-japanese-700-normal.woff2') format('woff2');
  unicode-range: U+3000-303F, U+3040-309F, U+30A0-30FF, U+31F0-31FF, U+4E00-9FFF, U+F900-FAFF, U+FF00-FFEF;
}

/* Noto Sans SC — Simplified Chinese (OFL 1.1, Google) */
@font-face {
  font-family: 'Noto Sans SC';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/noto-sans-sc-chinese-simplified-400-normal.woff2') format('woff2');
  unicode-range: U+4E00-9FFF, U+3400-4DBF, U+F900-FAFF, U+2F800-2FA1F;
}
@font-face {
  font-family: 'Noto Sans SC';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/noto-sans-sc-chinese-simplified-700-normal.woff2') format('woff2');
  unicode-range: U+4E00-9FFF, U+3400-4DBF, U+F900-FAFF, U+2F800-2FA1F;
}
