/* Generated from tokens/tokens.json by scripts/build-tokens.mjs. Do not edit by hand. */

:root {
  /* Brand colour (fixed by the brand guidelines) */
  --color-forest: #1E3A2C;
  --color-cream: #F4F1E8;
  --color-yellow: #F2C230;
  --color-ink: #2B2F2C;
  --color-white: #FFFFFF;

  /* Brand type (fixed by the brand guidelines) */
  --font-display: 'Figtree', system-ui, sans-serif;
  --font-body: 'Lora', Georgia, serif;
  --font-mono: ui-monospace, 'SF Mono', Menlo, monospace;
  --text-display: 700 64px/1.05 var(--font-display);
  --tracking-display: -0.03em;
  --text-h1: 700 44px/1.1 var(--font-display);
  --tracking-h1: -0.025em;
  --text-h2: 700 32px/1.15 var(--font-display);
  --tracking-h2: -0.02em;
  --text-h3: 600 22px/1.25 var(--font-display);
  --tracking-h3: -0.01em;
  --text-body-lg: 400 20px/1.6 var(--font-body);
  --tracking-body-lg: 0;
  --text-body: 400 17px/1.6 var(--font-body);
  --tracking-body: 0;
  --text-label: 600 14px/1.4 var(--font-display);
  --tracking-label: 0.01em;
  --text-caption: 500 13px/1.4 var(--font-display);
  --tracking-caption: 0;

  /* System colour */
  --color-error: #A3261E;
  --color-error-reverse: #F4A99B;
  --line-subtle: rgba(30, 58, 44, 0.10);
  --line: rgba(30, 58, 44, 0.18);
  --line-strong: #1E3A2C;

  /* Spacing (4px base) */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-7: 28px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-14: 56px;
  --space-18: 72px;
  --space-20: 80px;

  /* Radii */
  --radius-sm: 4px;
  --radius-md: 6px;
  --radius-full: 999px;

  /* Edges and elevation */
  --shadow-hairline: inset 0 0 0 1px rgba(30, 58, 44, 0.10);
  --shadow-overlay: 0 0 0 1px rgba(30, 58, 44, 0.10), 0 12px 32px rgba(30, 58, 44, 0.14);

  /* Focus */
  --focus-ring: 0 0 0 2px #F4F1E8, 0 0 0 4px #1E3A2C;

  /* Motion */
  --motion-fast: 120ms;
  --motion-base: 200ms;
  --motion-ease: cubic-bezier(0.2, 0, 0, 1);

  /* Layout */
  --layout-content: 1200px;
  --layout-measure: 65ch;
  --layout-gutter: clamp(16px, 5vw, 80px);

  /* Type on narrow screens (below 640px) */
  --narrow-display: 42px;
  --narrow-h1: 34px;
  --narrow-h2: 26px;
  --narrow-h3: 20px;
  --narrow-body-lg: 18px;
}
