/* =========================================================================
   One Person Company — design tokens (single source of truth).

   System: "beige engraving" — warm paper #f3efe7, clay #af4326, Fraunces
   serif display over Inter body. Recovered from Cloudflare deployment
   65c42360 (2026-07-14); see design/rescued-2026-07-14-beige-engraving/.

   Every page links this file and MUST NOT declare palette tokens of its own.
   Change a value here and it changes everywhere — there is nowhere else for
   it to drift to. Enforced by scripts/ci/design-token-gate.mjs.
   ========================================================================= */

:root {
  --paper: #f3efe7;
  --paper-2: #efe9df;
  --card: #fffefb;
  --bg: #f3efe7;
  --bg-2: #efe9df;
  --bg-card: #fffefb;
  --bg-card-2: #efe9df;
  --bg-cta: #efe9df;
  --bg-elevated: #fffefb;
  --surface: #fffefb;
  --surface-2: #efe9df;
  --surface-hover: #eae3d8;
  --panel: #fffefb;
  --panel-muted: #efe9df;
  --cream: #f3efe7;
  --sand: #efe9df;
  --white: #fffefb;
  --black: #1a1612;
  --ink: #1a1612;
  --ink-2: #453d33;
  --text: #1a1612;
  --text-primary: #1a1612;
  --text-secondary: #453d33;
  --muted: #6d665c;
  --text-muted: #6d665c;
  --subtle: #766b5c;
  --faint: #766b5c;
  --primary: #1a1612;
  --rule: rgba(26,22,18,.15);
  --rule-soft: rgba(26,22,18,.08);
  --line: rgba(26,22,18,.15);
  --border: rgba(26,22,18,.15);
  --line-strong: rgba(26,22,18,.28);
  --border-strong: rgba(26,22,18,.28);
  --clay: #af4326;
  --clay-2: #8f3216;
  --clay-tint: rgba(175,67,38,.07);
  --accent: #af4326;
  --accent-hover: #8f3216;
  --accent-active: #8f3216;
  --accent-dark: #8f3216;
  --accent-2: #c05a3c;
  --accent-light: #d9927e;
  --accent-soft: rgba(175,67,38,.07);
  --accent-bg: rgba(175,67,38,.07);
  --accent-shadow: rgba(175,67,38,.20);
  --glow: rgba(175,67,38,.12);
  --accent-dim: rgba(175,67,38,.5);
  --cta-bg: #efe9df;
  --bg-hover: #eae3d8;
  --serif: 'Fraunces',Georgia,'Times New Roman',serif;
  --sans: 'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif;
  --font-heading: 'Fraunces',Georgia,'Times New Roman',serif;
  --font-body: 'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif;
  --font-sans: 'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif;
  --font-mono: 'SF Mono','Courier New',monospace;
  --green: #2f5d3f;
  --green-light: #e6efe6;
  --success: #2f5d3f;
  --star-gold: #b8862b;
  --gray-100: #efe9df;
  --gray-200: #e5ddd0;
  --gray-300: #cfc5b5;
  --gray-400: #a89e90;
  --gray-600: #6d665c;
  --gray-800: #453d33;
  --gray-900: #1a1612;
  --shadow: rgba(26,22,18,.06);
  --code-bg: #1a1612;
  --maxw: 1120px;
  --ease: .35s cubic-bezier(.2,.7,.2,1);

  /* carried from page-level blocks so no var() goes undefined */
  --category-automation: #FF5A1F;
  --category-content: #8B5CF6;
  --category-growth: #10B981;
  --category-ops: #F59E0B;
  --category-seo: #3B82F6;
  --green-soft: #e8fff2;
  --radius: 12px;
  --radius-lg: 16px;
  --red: #b42318;
  --red-soft: #fff0ef;
  --shadow-hover: 0 8px 24px -8px rgba(0,0,0,0.12);
  --shadow-lg: 0 8px 24px -8px rgba(0,0,0,0.08);
  --shadow-md: 0 4px 12px rgba(0,0,0,0.05);
  --shadow-sm: 0 1px 2px rgba(0,0,0,0.03);
  --text-dim: #666666;
  --transition-fast: 150ms ease;
  --transition-normal: 200ms ease;
  --yellow: #a15c00;
  --yellow-soft: #fff7de;
  color-scheme: light;
}

/* -------------------------------------------------------------------------
   Base typography. Lives here, not in 1404 inline <style> blocks: pages
   overwhelmingly never set a heading font at all — they inherited body's sans,
   so swapping the tokens left every heading in Inter while the homepage moved
   to Fraunces, and the site visibly disagreed with itself. Headings are the
   engraving; body is Inter.
   ------------------------------------------------------------------------- */
body { font-family: var(--sans); }

h1, h2, h3, h4,
.h1, .h2, .h3,
.title, .page-title, .hero-title, .headline, .article-title,
.masthead, .sec-head, .dek, .kicker, .lead {
  font-family: var(--serif);
  font-optical-sizing: auto;
}

/* Fraunces is a display face — tighten it the way the engraving hero does. */
h1, .h1, .title, .page-title, .hero-title, .headline {
  letter-spacing: -0.015em;
  font-weight: 500;
}
