/* Investigatable design tokens, v4 "Editorial" (warm cream journal).
   All colours, type, spacing and radii live here. styles.css consumes them. */

/* Self-hosted fonts (woff2 in ./fonts). Newsreader substitutes for the proprietary Martina Plantijn. */
@font-face { font-family: "Newsreader"; font-style: normal; font-weight: 200 800; font-display: swap;
  src: url("fonts/newsreader-latin-wght-normal.woff2") format("woff2");
  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: "Newsreader"; font-style: normal; font-weight: 200 800; font-display: swap;
  src: url("fonts/newsreader-latin-ext-wght-normal.woff2") format("woff2");
  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: "Newsreader"; font-style: italic; font-weight: 200 800; font-display: swap;
  src: url("fonts/newsreader-latin-wght-italic.woff2") format("woff2");
  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: "Newsreader"; font-style: italic; font-weight: 200 800; font-display: swap;
  src: url("fonts/newsreader-latin-ext-wght-italic.woff2") format("woff2");
  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: "Inter"; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url("fonts/inter-latin-wght-normal.woff2") format("woff2");
  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: "Inter"; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url("fonts/inter-latin-ext-wght-normal.woff2") format("woff2");
  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: "Inter Tight"; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url("fonts/inter-tight-latin-wght-normal.woff2") format("woff2");
  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: "Inter Tight"; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url("fonts/inter-tight-latin-ext-wght-normal.woff2") format("woff2");
  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; }

:root {
  /* Colour */
  --canvas: #f9f8f6;        /* warm cream page */
  --paper: #ffffff;         /* cards */
  --hairline: #f0e9e1;      /* cream borders, never cool gray */
  --ink-navy: #0c1754;      /* display headings, dark cards, footer */
  --charcoal: #171417;      /* body text */
  --graphite: #222222;      /* secondary text */
  --stone: #969696;         /* muted metadata (large/secondary use only) */
  --stone-strong: #6f6c69;  /* metadata at 12-14px where contrast matters */
  --smoke: #cccccc;         /* input borders */
  --lavender: #eaebf8;      /* tag and badge backgrounds */
  --cobalt: #2545ff;        /* filled pills, active links, one key icon per view */
  --navy-soft: rgba(255,255,255,0.72);  /* body text on navy */
  --navy-line: rgba(255,255,255,0.14);  /* hairlines on navy */

  /* Type families */
  --font-display: "Newsreader", "Iowan Old Style", Georgia, serif;
  --font-sub: "Inter Tight", "Inter", system-ui, sans-serif;
  --font-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-prose: "Newsreader", Georgia, serif;  /* long-form article body; swap to var(--font-body) for an all-sans read */

  /* Type scale */
  --fs-12: 0.75rem; --fs-14: 0.875rem; --fs-16: 1rem; --fs-20: 1.25rem; --fs-24: 1.5rem;
  --fs-32: 2rem; --fs-40: 2.5rem; --fs-48: 3rem; --fs-64: 4rem;
  --lh-display: 1.05; --lh-sub: 1.2; --lh-body: 1.6; --lh-prose: 1.6;
  --track-display: -0.01em;
  --track-sub-xl: -0.05em;  /* Inter Tight at 40px+ */
  --track-sub-l: -0.02em;   /* Inter Tight at 24-40px */
  --track-eyebrow: 0.12em;

  /* Space (8px base) */
  --s-1: 8px; --s-2: 16px; --s-3: 24px; --s-4: 32px; --s-5: 40px; --s-6: 48px; --s-8: 64px; --s-10: 80px;
  --section-gap: 80px; --card-pad: 32px; --gap: 24px;
  --max: 1200px; --measure: 680px;

  /* Radius */
  --r-card: 16px; --r-image: 24px; --r-pill: 100px;

  /* Elevation */
  --shadow-card: 0 4px 24px rgba(12, 23, 84, 0.08);

  /* Motion */
  --ease: cubic-bezier(.2,.7,.2,1);
}
