/* ─────────────────────────────────────────────────────────────────────────
   BRAND V4 — the three faces that matter (brandv4/BRAND_V4.md § Type).

     display  Signifier Light  (licensed WOFF2 from Klim, Light only — never
              synthesise a bold; a heavier headline is a bigger headline)
     body     Inter            (variable, 100-900, Regular/Medium in practice)
     mono     IBM Plex Mono    (already self-hosted further down this file)

   Self-hosted like everything else here: the marketing landing pulls Inter
   from Google, but store-front deliberately does not hand visitor IPs to a
   third party.
   ───────────────────────────────────────────────────────────────────────── */
@font-face {
  font-family: 'Signifier';
  src: url('./fonts/signifier-light.woff2') format('woff2');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

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

/* Aeonik (local OTF files) */
@font-face {
  font-family: 'Aeonik';
  src: url('./fonts/AeonikTRIAL-Light.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Aeonik';
  src: url('./fonts/AeonikTRIAL-Regular.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Aeonik';
  src: url('./fonts/AeonikTRIAL-Medium.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Aeonik';
  src: url('./fonts/AeonikTRIAL-SemiBold.otf') format('opentype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Aeonik';
  src: url('./fonts/AeonikTRIAL-Bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* Switzer (variable TTF) */
@font-face {
  font-family: 'Switzer';
  src: url('./fonts/Switzer-Variable.ttf') format('truetype');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

/* Lyon Display (hero accent) */
@font-face {
  font-family: 'Lyon Display';
  src: url('./fonts/LyonDisplay-LightItalic.otf') format('opentype');
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

/* Aeonik TRIAL alias — ensures consistency with product apps that use 'Aeonik TRIAL' */
@font-face {
  font-family: 'Aeonik TRIAL';
  src: url('./fonts/AeonikTRIAL-Light.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Aeonik TRIAL';
  src: url('./fonts/AeonikTRIAL-Regular.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Aeonik TRIAL';
  src: url('./fonts/AeonikTRIAL-Medium.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Aeonik TRIAL';
  src: url('./fonts/AeonikTRIAL-SemiBold.otf') format('opentype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Aeonik TRIAL';
  src: url('./fonts/AeonikTRIAL-Bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* ─────────────────────────────────────────────────────────────────────────
   aikka OS brand type (BRAND.md). Boska stands in for Test Signifier
   (display serif) and IBM Plex Mono for Apercu Mono Pro (data labels);
   Switzer above already stands in for PP Neue Montreal. All three are
   self-hosted — aikka-os loaded them from fontshare/Google at runtime, which
   would leak visitor IPs to a third party on the marketing home.
   When the real licences land, swap these files and the --font-* vars in
   src/os/os.css; nothing else references them.
   ───────────────────────────────────────────────────────────────────────── */
@font-face {
  font-family: 'Boska';
  src: url('./fonts/Boska-300.woff2') format('woff2');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Boska';
  src: url('./fonts/Boska-400.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Boska';
  src: url('./fonts/Boska-500.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'IBM Plex Mono';
  src: url('./fonts/IBMPlexMono-400-latin.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'IBM Plex Mono';
  src: url('./fonts/IBMPlexMono-400-latin-ext.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
    U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
    U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Mono';
  src: url('./fonts/IBMPlexMono-500-latin.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'IBM Plex Mono';
  src: url('./fonts/IBMPlexMono-500-latin-ext.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
    U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
    U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
