/* Hallmark · macrostructure: Letter · tone: editorial · anchor hue: 65 (gold) */

:root {
  --color-paper:      oklch(97% 0.008 80);
  --nav-bg: oklch(from var(--color-paper) l c h / 0.85);
  --color-paper-dim:  oklch(94% 0.010 75);
  --color-paper-2:    oklch(89% 0.012 70);
  --color-ink:        oklch(16% 0.008 50);
  --color-ink-soft:   oklch(38% 0.014 50);
  --color-accent: #8B7355  /* was  */    oklch(58% 0.16 65);
  --color-accent-glow: oklch(65% 0.10 65 / 0.12);
  --color-accent-ink: oklch(97% 0.005 90);
  --color-rule:       oklch(22% 0.015 65 / 0.10);
  --color-focus:      oklch(60% 0.18 65);
  --font-display: 'Newsreader', serif;
  --font-body: 'Switzer', sans-serif;
  --font-wordmark: 'Cabinet Grotesk', sans-serif;
  --text--2: clamp(0.64rem,0.59rem+0.21vw,0.80rem);
  --text--1: clamp(0.80rem,0.73rem+0.32vw,1.00rem);
  --text-0:  clamp(1.00rem,0.89rem+0.48vw,1.25rem);
  --text-1:  clamp(1.25rem,1.09rem+0.73vw,1.56rem);
  --text-2:  clamp(1.56rem,1.31rem+1.11vw,2.05rem);
  --text-3:  clamp(1.95rem,1.57rem+1.71vw,2.66rem);
  --text-4:  clamp(2.44rem,1.87rem+2.57vw,3.52rem);
  --text-5:  clamp(3.05rem,2.18rem+3.89vw,4.70rem);
  --space-3xs: clamp(0.25rem,0.22rem+0.14vw,0.38rem);
  --space-2xs: clamp(0.50rem,0.43rem+0.29vw,0.75rem);
  --space-xs:  clamp(0.75rem,0.66rem+0.43vw,1.00rem);
  --space-sm:  clamp(1.00rem,0.86rem+0.57vw,1.50rem);
  --space-md:  clamp(1.50rem,1.29rem+0.86vw,2.00rem);
  --space-lg:  clamp(2.00rem,1.71rem+1.14vw,3.00rem);
  --space-xl:  clamp(3.00rem,2.57rem+1.71vw,4.00rem);
  --space-2xl: clamp(4.00rem,3.43rem+2.29vw,6.00rem);
  --space-3xl: clamp(6.00rem,5.14rem+3.43vw,8.00rem);
  --content-narrow: 42rem;
  --content-wide: 56rem;
  --ease-out: cubic-bezier(0.16,1,0.3,1);
  --ease-in: cubic-bezier(0.4,0,1,1);
  --ease-in-out: cubic-bezier(0.65,0,0.35,1);
  --dur-fast: 150ms; --dur-normal: 250ms; --dur-slow: 400ms;
  --rule-thin: 1px; --rule-thick: 3px;
  --radius-sm: 6px; --radius-md: 12px; --radius-lg: 24px; --radius-full: 9999px;
}

/* h1 long-word safety */
h1, h2, h3 { overflow-wrap: anywhere; min-width: 0; }
