/* ============================================================
   fonts.css — Flex Europa · finaldesign
   Self-hosted WOFF2 (Latin subset), font-display: swap (§9).
   Space Grotesk + Inter are variable (single file per family, a
   weight RANGE); IBM Plex Mono is static (one file per weight).
   Loaded before the cascade so @font-face is registered early;
   the two critical faces are <link rel=preload>ed in the head.
   ============================================================ */

/* Space Grotesk — variable display face (headings) */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url('../../fonts/space-grotesk.woff2') format('woff2');
}

/* Inter — variable body face */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('../../fonts/inter.woff2') format('woff2');
}

/* IBM Plex Mono — static (technical labels / spec rows / prices) */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../../fonts/ibm-plex-mono-400.woff2') format('woff2');
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../../fonts/ibm-plex-mono-500.woff2') format('woff2');
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../../fonts/ibm-plex-mono-600.woff2') format('woff2');
}
