/* ============================================================
   DESIGN TOKENS · AgenticPress LP-Tier Block Library
   Change any value here and it propagates across every block.
   ============================================================ */

:root {
  /* Color — surfaces */
  --cream: #faf7f2;
  --cream-alt: #f2ede4;
  --white: #ffffff;
  --charcoal: #1a1713;
  --charcoal-soft: #2a2622;
  --charcoal-deep: #0f0d0b;

  /* Color — ink */
  --ink: #1a1a1a;
  --ink-soft: #4a4a4a;
  --ink-muted: #6b6b6b;
  --ink-dim: #8a8a8a;
  --ink-faint: #a89885;
  --ink-inverse: #f4ebdf;

  /* Color — accent */
  --amber: #8b6f47;
  --amber-light: #b69470;
  --amber-lighter: #c9a887;
  --amber-pale: #e4d1ba;

  /* Color — rules */
  --rule: rgba(26, 26, 26, 0.12);
  --rule-soft: rgba(26, 26, 26, 0.06);
  --rule-strong: rgba(26, 26, 26, 0.2);
  --rule-dark: rgba(244, 235, 223, 0.15);

  /* Typography — families */
  --serif: 'Newsreader', Georgia, serif;
  --display: 'Playfair Display', Georgia, serif;
  --sans: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;

  /* Typography — scale */
  --type-hero: clamp(56px, 7vw, 96px);
  --type-h1: clamp(44px, 5.5vw, 72px);
  --type-h2: clamp(32px, 4vw, 48px);
  --type-h3: clamp(26px, 3vw, 36px);
  --type-h4: clamp(22px, 2.4vw, 28px);
  --type-body-lg: 17px;
  --type-body: 15px;
  --type-body-sm: 14px;
  --type-caption: 12px;
  --type-eyebrow: 10px;

  /* Typography — tracking */
  --track-eyebrow: 0.32em;
  --track-label: 0.24em;
  --track-caps: 0.18em;

  /* Typography — line-height */
  --lh-tight: 1.08;
  --lh-display: 1.15;
  --lh-body: 1.7;
  --lh-snug: 1.5;

  /* Spacing */
  --s-1: 4px;
  --s-2: 8px;
  --s-3: 12px;
  --s-4: 16px;
  --s-5: 20px;
  --s-6: 24px;
  --s-8: 32px;
  --s-10: 40px;
  --s-12: 48px;
  --s-16: 64px;
  --s-20: 80px;
  --s-24: 96px;
  --s-28: 112px;
  --s-32: 128px;

  /* Container */
  --container: 1280px;
  --container-wide: 1440px;
  --container-narrow: 1040px;
  --container-reading: 720px;

  /* Motion */
  --ease: cubic-bezier(0.2, 0.8, 0.2, 1);
  --dur-fast: 0.2s;
  --dur-med: 0.4s;
  --dur-slow: 0.9s;
  --dur-slower: 1.4s;

  /* Shadow */
  --shadow-card: 0 1px 2px rgba(26,26,26,0.02), 0 24px 56px -20px rgba(26,26,26,0.1);
  --shadow-hover: 0 2px 4px rgba(26,26,26,0.03), 0 32px 64px -24px rgba(26,26,26,0.22);
}

/* Global resets */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  background: var(--cream);
  color: var(--ink);
  font-family: var(--sans);
  font-weight: 300;
  line-height: var(--lh-body);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button { font: inherit; cursor: pointer; }
