/* Granite Safety — locked design tokens */
@import url('https://fonts.googleapis.com/css2?family=Big+Shoulders+Display:wght@700;800;900&family=IBM+Plex+Mono:wght@400;500;600&family=IBM+Plex+Sans:ital,wght@0,400;0,500;0,600;1,400&family=Instrument+Serif:ital@1&display=swap');

:root {
  /* Colors — primary */
  --granite: #0A0A0B;
  --slate: #17181B;
  --iron: #26282D;
  --concrete: #6B6E73;
  --ash: #A8AAAE;
  --bone: #E9E4D6;
  --paper: #F5F1E6;
  --white: #FFFFFF;
  --hivis: #F2D227;
  --hivis-200: #FAE85F;
  --rust: #C5421C;
  --field-green: #2C7A3E;

  /* Spacing */
  --s-1: 8px;
  --s-2: 16px;
  --s-3: 24px;
  --s-4: 32px;
  --s-6: 48px;
  --s-8: 64px;
  --s-12: 96px;

  /* Type families */
  --display: 'Big Shoulders Display', 'Helvetica Neue', sans-serif;
  --body: 'IBM Plex Sans', 'Helvetica Neue', sans-serif;
  --mono: 'IBM Plex Mono', 'SF Mono', monospace;
  --italic: 'Instrument Serif', 'Times New Roman', serif;

  /* Type scale */
  --fs-h1: 56px;
  --fs-h2: 32px;
  --fs-h3: 22px;
  --fs-h4: 16px;
  --fs-body: 14px;
  --fs-sm: 13px;
  --fs-tag: 11px;

  /* Borders */
  --border: 1px solid var(--bone);
  --border-strong: 1px solid var(--iron);
  --border-on-dark: 1px solid var(--iron);
}
