/* Design tokens — colours sampled from assets/logo/logo.jpg */
:root {
  /* Brand */
  --color-plum: #5b3350;
  --color-plum-dark: #3f2238;
  --color-green: #4b6e62;
  --color-green-dark: #3a574d;
  --color-copper: #b07a50;
  --color-copper-dark: #966541;
  --color-cream: #f3e7da;

  /* Roles */
  --color-primary: var(--color-plum);
  --color-secondary: var(--color-green);
  --color-accent: var(--color-copper);
  --color-text: #3b3036;
  --color-text-muted: #6f6469;
  --color-heading: var(--color-plum);
  --color-bg: #ffffff;
  --color-bg-alt: #f8f3ee;
  --color-border: #e3d8cd;
  --color-white: #ffffff;

  /* Typography */
  --font-heading: "Fraunces", Georgia, "Times New Roman", serif;
  --font-body: "Mulish", "Helvetica Neue", Arial, sans-serif;

  --fs-xs: 0.75rem;
  --fs-sm: 0.875rem;
  --fs-base: 1rem;
  --fs-md: 1.125rem;
  --fs-lg: 1.5rem;
  --fs-xl: clamp(1.75rem, 3.5vw, 2.25rem);
  --fs-2xl: clamp(1.9rem, 4vw, 2.5rem);
  --fs-3xl: clamp(2.4rem, 6vw, 3.6rem);

  --lh-tight: 1.15;
  --lh-base: 1.65;

  /* Spacing */
  --space-2xs: 0.25rem;
  --space-xs: 0.5rem;
  --space-sm: 0.75rem;
  --space-md: 1rem;
  --space-lg: 1.5rem;
  --space-xl: 2rem;
  --space-2xl: 3rem;
  --space-3xl: 4.5rem;
  --space-4xl: 6rem;

  /* Layout */
  --container-max: 1200px;
  --container-narrow: 1000px;
  --gutter: 1.25rem;

  /* Misc */
  --radius-sm: 3px;
  --radius-md: 10px;
  --shadow-soft: 0 30px 60px -20px rgba(91, 51, 80, 0.28);
  --transition: 200ms ease;
}
