/* ============================================================
   MASTHEAD — entrypoint
   The only file a consumer links. @imports everything in
   cascade order. See DESIGN.md for the contract.
   (@import must precede all other rules — keep this list at the
   top of the file. @font-face follows below.)
   ============================================================ */

/* 1 — Tokens (immutable primitives + semantic aliases). */
@import url('tokens/colours.css');
@import url('tokens/type.css');
@import url('tokens/space.css');
@import url('tokens/shadows.css');
@import url('tokens/motion.css');

/* 2 — Base: reset + bare-tag appearance + primitives. */
@import url('base.css');

/* 3 — Components (RSCSS, one per file, order-independent). */
@import url('components/stamp-button.css');
@import url('components/form-field.css');
@import url('components/tick-box.css');
@import url('components/toggle-switch.css');
@import url('components/paper-card.css');
@import url('components/data-table.css');
@import url('components/press-masthead.css');
@import url('components/cancel-stamp.css');
@import url('components/text-link.css');

/* 4 — Helpers (the only !important). */
@import url('helpers.css');

/* ------------------------------------------------------------
   Webfonts — self-hosted from upstream. Paths are relative to
   this file, which is also where dist/masthead.{,min.}css sits
   after the build, so dist/fonts/ resolves the same way.
   ------------------------------------------------------------ */

/* EB Garamond — Pardo's EBGaramond12 (SIL OFL). Variable roman + italic. */
@font-face {
  font-family: 'EB Garamond';
  src: url('fonts/eb-garamond/eb-garamond-variable.woff2') format('woff2-variations');
  font-weight: 400 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'EB Garamond';
  src: url('fonts/eb-garamond/eb-garamond-italic-variable.woff2') format('woff2-variations');
  font-weight: 400 800;
  font-style: italic;
  font-display: swap;
}

/* League Spartan — The League of Movable Type (SIL OFL). Variable. */
@font-face {
  font-family: 'League Spartan';
  src: url('fonts/league-spartan/league-spartan-variable.woff2') format('woff2-variations');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

/* IBM Plex Mono — IBM (SIL OFL). Static faces; no variable mono available. */
@font-face {
  font-family: 'IBM Plex Mono';
  src: url('fonts/ibm-plex-mono/ibm-plex-mono-regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'IBM Plex Mono';
  src: url('fonts/ibm-plex-mono/ibm-plex-mono-italic.woff2') format('woff2');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'IBM Plex Mono';
  src: url('fonts/ibm-plex-mono/ibm-plex-mono-medium.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'IBM Plex Mono';
  src: url('fonts/ibm-plex-mono/ibm-plex-mono-semibold.woff2') format('woff2');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
