/* Redpine brand typefaces, self-hosted @font-face declarations.
 *
 * All four families ship as production-licensed cuts:
 *   - Kessler Text + Kessler Text Mono   (Production Type, order 1281396343038)
 *   - ABC Diatype  + ABC Diatype Mono    (ABC Dinamo, order 2026-3788060)
 *
 * Paths are relative to this CSS file. Copy `assets/fonts/` into your
 * web app's static directory and import this file, or adjust the url()
 * prefixes to match your asset pipeline. Format precedence is woff2 →
 * woff → opentype, so modern browsers always grab the smallest cut.
 *
 * Available weights (everything else falls back via the system stack
 * declared at the bottom of this file):
 *   Kessler Text         400 (regular + italic)
 *   Kessler Text Mono    400 (regular + italic)
 *   ABC Diatype          300 / 400 / 500 (each with italic)
 *   ABC Diatype Mono     400 (regular + italic)
 *
 * The Dinamo EULA is alongside as DINAMO-EULA.pdf.
 */

/* ── Kessler Text (serif, primary headline + statement face) ────── */

@font-face {
  font-family: 'Kessler Text';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src:
    url('./kessler/KesslerTextWeb-Regular.woff2') format('woff2'),
    url('./kessler/KesslerTextWeb-Regular.woff')  format('woff'),
    url('./kessler/KesslerText-Regular.otf')      format('opentype');
}
@font-face {
  font-family: 'Kessler Text';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src:
    url('./kessler/KesslerTextWeb-Italic.woff2') format('woff2'),
    url('./kessler/KesslerTextWeb-Italic.woff')  format('woff'),
    url('./kessler/KesslerText-Italic.otf')      format('opentype');
}

/* ── Kessler Text Mono (callouts, technical copy) ──────────────── */

@font-face {
  font-family: 'Kessler Text Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src:
    url('./kessler-text-mono/KesslerTextMonoWeb-Regular.woff2') format('woff2'),
    url('./kessler-text-mono/KesslerTextMonoWeb-Regular.woff')  format('woff'),
    url('./kessler-text-mono/KesslerTextMono-Regular.otf')      format('opentype');
}
@font-face {
  font-family: 'Kessler Text Mono';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src:
    url('./kessler-text-mono/KesslerTextMonoWeb-Italic.woff2') format('woff2'),
    url('./kessler-text-mono/KesslerTextMonoWeb-Italic.woff')  format('woff'),
    url('./kessler-text-mono/KesslerTextMono-Italic.otf')      format('opentype');
}

/* ── ABC Diatype (sans, body + supporting copy) ────────────────── */

@font-face {
  font-family: 'ABC Diatype';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src:
    url('./abc-diatype/ABCDiatype-Light.woff2') format('woff2'),
    url('./abc-diatype/ABCDiatype-Light.woff')  format('woff'),
    url('./abc-diatype/ABCDiatype-Light.otf')   format('opentype');
}
@font-face {
  font-family: 'ABC Diatype';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src:
    url('./abc-diatype/ABCDiatype-LightItalic.woff2') format('woff2'),
    url('./abc-diatype/ABCDiatype-LightItalic.woff')  format('woff'),
    url('./abc-diatype/ABCDiatype-LightItalic.otf')   format('opentype');
}
@font-face {
  font-family: 'ABC Diatype';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src:
    url('./abc-diatype/ABCDiatype-Regular.woff2') format('woff2'),
    url('./abc-diatype/ABCDiatype-Regular.woff')  format('woff'),
    url('./abc-diatype/ABCDiatype-Regular.otf')   format('opentype');
}
@font-face {
  font-family: 'ABC Diatype';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src:
    url('./abc-diatype/ABCDiatype-RegularItalic.woff2') format('woff2'),
    url('./abc-diatype/ABCDiatype-RegularItalic.woff')  format('woff'),
    url('./abc-diatype/ABCDiatype-RegularItalic.otf')   format('opentype');
}
@font-face {
  font-family: 'ABC Diatype';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src:
    url('./abc-diatype/ABCDiatype-Medium.woff2') format('woff2'),
    url('./abc-diatype/ABCDiatype-Medium.woff')  format('woff'),
    url('./abc-diatype/ABCDiatype-Medium.otf')   format('opentype');
}
@font-face {
  font-family: 'ABC Diatype';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src:
    url('./abc-diatype/ABCDiatype-MediumItalic.woff2') format('woff2'),
    url('./abc-diatype/ABCDiatype-MediumItalic.woff')  format('woff'),
    url('./abc-diatype/ABCDiatype-MediumItalic.otf')   format('opentype');
}

/* ── ABC Diatype Mono (digital interfaces, small mono copy) ────── */

@font-face {
  font-family: 'ABC Diatype Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src:
    url('./abc-diatype-mono/ABCDiatypeMono-Regular.woff2') format('woff2'),
    url('./abc-diatype-mono/ABCDiatypeMono-Regular.woff')  format('woff'),
    url('./abc-diatype-mono/ABCDiatypeMono-Regular.otf')   format('opentype');
}
@font-face {
  font-family: 'ABC Diatype Mono';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src:
    url('./abc-diatype-mono/ABCDiatypeMono-RegularItalic.woff2') format('woff2'),
    url('./abc-diatype-mono/ABCDiatypeMono-RegularItalic.woff')  format('woff'),
    url('./abc-diatype-mono/ABCDiatypeMono-RegularItalic.otf')   format('opentype');
}

/* ── CSS custom properties (drop-in brand stack) ───────────────── */

:root {
  --font-headline: 'Kessler Text', ui-serif, Georgia, serif;
  --font-body:     'ABC Diatype', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-callout:  'Kessler Text Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
  --font-ui-mono:  'ABC Diatype Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
}
