/* ==========================================================================
   Self-Hosted Local Fonts (Plus Jakarta Sans, Inter, Noto Serif, Baloo 2)
   Zero external Google Fonts API dependencies.
   ========================================================================== */

/* --------------------------------------------------------------------------
   Plus Jakarta Sans (Title Font — Headings, Navigation, Buttons)
   -------------------------------------------------------------------------- */

/* Variable font (200..800) */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url('/assets/fonts/plus-jakarta-sans/plus-jakarta-sans-normal-200-800-latin.woff2') format('woff2'),
       url('/assets/fonts/plus-jakarta-sans/PlusJakartaSans-Variable.ttf') format('truetype');
}

@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: italic;
  font-weight: 200 800;
  font-display: swap;
  src: url('/assets/fonts/plus-jakarta-sans/plus-jakarta-sans-italic-200-800-latin.woff2') format('woff2'),
       url('/assets/fonts/plus-jakarta-sans/PlusJakartaSans-Italic-Variable.ttf') format('truetype');
}

/* Discrete weights for browsers/CSS rules matching exact weights */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/plus-jakarta-sans/plus-jakarta-sans-normal-400-latin.woff2') format('woff2'),
       url('/assets/fonts/plus-jakarta-sans/PlusJakartaSans-Variable.ttf') format('truetype');
}

@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/assets/fonts/plus-jakarta-sans/plus-jakarta-sans-normal-500-latin.woff2') format('woff2'),
       url('/assets/fonts/plus-jakarta-sans/PlusJakartaSans-Variable.ttf') format('truetype');
}

@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/assets/fonts/plus-jakarta-sans/plus-jakarta-sans-normal-600-latin.woff2') format('woff2'),
       url('/assets/fonts/plus-jakarta-sans/PlusJakartaSans-Variable.ttf') format('truetype');
}

@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/assets/fonts/plus-jakarta-sans/plus-jakarta-sans-normal-700-latin.woff2') format('woff2'),
       url('/assets/fonts/plus-jakarta-sans/PlusJakartaSans-Variable.ttf') format('truetype');
}

@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url('/assets/fonts/plus-jakarta-sans/plus-jakarta-sans-normal-800-latin.woff2') format('woff2'),
       url('/assets/fonts/plus-jakarta-sans/PlusJakartaSans-Variable.ttf') format('truetype');
}

/* --------------------------------------------------------------------------
   Inter (Body Font — Paragraphs, Text, Inputs)
   -------------------------------------------------------------------------- */

/* Variable font (100..900) */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('/assets/fonts/inter/inter-normal-400-latin.woff2') format('woff2'),
       url('/assets/fonts/inter/Inter-Variable.ttf') format('truetype');
}

@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url('/assets/fonts/inter/Inter-Italic-Variable.ttf') format('truetype');
}

/* Discrete weights */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('/assets/fonts/inter/inter-normal-300-latin.woff2') format('woff2'),
       url('/assets/fonts/inter/Inter-Variable.ttf') format('truetype');
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/inter/inter-normal-400-latin.woff2') format('woff2'),
       url('/assets/fonts/inter/Inter-Variable.ttf') format('truetype');
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/assets/fonts/inter/inter-normal-500-latin.woff2') format('woff2'),
       url('/assets/fonts/inter/Inter-Variable.ttf') format('truetype');
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/assets/fonts/inter/inter-normal-600-latin.woff2') format('woff2'),
       url('/assets/fonts/inter/Inter-Variable.ttf') format('truetype');
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/assets/fonts/inter/inter-normal-700-latin.woff2') format('woff2'),
       url('/assets/fonts/inter/Inter-Variable.ttf') format('truetype');
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url('/assets/fonts/inter/inter-normal-800-latin.woff2') format('woff2'),
       url('/assets/fonts/inter/Inter-Variable.ttf') format('truetype');
}

/* --------------------------------------------------------------------------
   Noto Serif (Title Font 2 — Secondary Accents)
   -------------------------------------------------------------------------- */

@font-face {
  font-family: 'Noto Serif';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('/assets/fonts/noto-serif/noto-serif-normal-100-900-latin.woff2') format('woff2'),
       url('/assets/fonts/noto-serif/NotoSerif-Variable.ttf') format('truetype');
}

@font-face {
  font-family: 'Noto Serif';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url('/assets/fonts/noto-serif/noto-serif-italic-100-900-latin.woff2') format('woff2');
}

/* --------------------------------------------------------------------------
   Baloo 2 (Title Font 3 — Accents / Theme 5)
   -------------------------------------------------------------------------- */

@font-face {
  font-family: 'Baloo 2';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/baloo-2/baloo-2-normal-400-latin.woff2') format('woff2'),
       url('/assets/fonts/baloo-2/Baloo2-Variable.ttf') format('truetype');
}

@font-face {
  font-family: 'Baloo 2';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/assets/fonts/baloo-2/baloo-2-normal-500-latin.woff2') format('woff2'),
       url('/assets/fonts/baloo-2/Baloo2-Variable.ttf') format('truetype');
}

@font-face {
  font-family: 'Baloo 2';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/assets/fonts/baloo-2/baloo-2-normal-600-latin.woff2') format('woff2'),
       url('/assets/fonts/baloo-2/Baloo2-Variable.ttf') format('truetype');
}

@font-face {
  font-family: 'Baloo 2';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/assets/fonts/baloo-2/baloo-2-normal-700-latin.woff2') format('woff2'),
       url('/assets/fonts/baloo-2/Baloo2-Variable.ttf') format('truetype');
}

@font-face {
  font-family: 'Baloo 2';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url('/assets/fonts/baloo-2/baloo-2-normal-800-latin.woff2') format('woff2'),
       url('/assets/fonts/baloo-2/Baloo2-Variable.ttf') format('truetype');
}

