/* ============================================================================
   geofide typefaces — 9 self-hosted WOFF2 weights.
   Masters + conversion: tools/fonts/build-fonts.sh  (OTF -> WOFF2, 54% smaller)

   Family roles (see app.css):
     PP Valve           display   — brand, page titles, continent headers (Plain variant)
     PP Neue Montreal   sans      — body copy, UI text, alternate names
     PP Mori            organ     — labels, table headers, filters
     PP Supply Mono     mono      — coordinates, IDs, codes, JSON

   NOTE: none of these families contains Arabic or CJK, so those place names
   fall back to the stack in --font-fallback. That is a design fact, not a bug.
   ============================================================================ */

/* ── PP Valve, Plain variant (display) ─────────────────────────────────── */
@font-face {
  font-family: 'PP Valve';
  src: url('/fonts/PPValve-PlainExtrabold.woff2') format('woff2');
  font-weight: 700; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'PP Valve';
  src: url('/fonts/PPValve-PlainMedium.woff2') format('woff2');
  font-weight: 500; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'PP Valve';
  src: url('/fonts/PPValve-PlainExtralight.woff2') format('woff2');
  font-weight: 400; font-style: normal; font-display: swap;
}

/* ── PP Neue Montreal (body + UI) ─────────────────────────────────────────── */
@font-face {
  font-family: 'PP Neue Montreal';
  src: url('/fonts/PPNeueMontrealText-Book.woff2') format('woff2');
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'PP Neue Montreal';
  src: url('/fonts/PPNeueMontrealText-BookItalic.woff2') format('woff2');
  font-weight: 400; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'PP Neue Montreal';
  src: url('/fonts/PPNeueMontreal-Regular.woff2') format('woff2');
  font-weight: 500; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'PP Neue Montreal';
  src: url('/fonts/PPNeueMontreal-Semibold.woff2') format('woff2');
  font-weight: 600; font-style: normal; font-display: swap;
}

/* ── PP Mori (labels / structure) ─────────────────────────────────────────── */
@font-face {
  font-family: 'PP Mori';
  src: url('/fonts/PPMori-Regular.woff2') format('woff2');
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'PP Mori';
  src: url('/fonts/PPMori-Semibold.woff2') format('woff2');
  font-weight: 600; font-style: normal; font-display: swap;
}

/* ── PP Supply Mono (raw data) ────────────────────────────────────────────── */
@font-face {
  font-family: 'PP Supply Mono';
  src: url('/fonts/PPSupplyMono-Regular.woff2') format('woff2');
  font-weight: 400; font-style: normal; font-display: swap;
}
