:root{
  /* ---- Base palette. Six named colours plus one dark-surface accent. Never pure white, never pure black. ---- */
  --parchment:#F3F2EC;
  --heavy-metal:#212322;
  --woodland:#3E4827;
  --tuna:#343444;
  --rusty-nail:#864D08;
  --warm-stone:#8C7B6B;
  --brass:#DAB87A;

  /* ---- Tints & shades sampled from the live site ---- */
  --parchment-warm:#F6EFDD;    /* CTA band — parchment pushed warmer */
  --parchment-deep:#E7E0D3;    /* hero plate / photographic backdrop */
  --parchment-edge:#EFEDE5;    /* section alternation, one step down */
  --woodland-deep:#2C331C;     /* foliage shadow inside Woodland */
  --tuna-deep:#262530;         /* inset cards on Tuna */
  --heavy-metal-soft:#4A4C4A;  /* secondary body copy on Parchment */

  /* ---- Hairlines. The brand's only "border" system. ---- */
  --stone-line:rgba(140,123,107,0.35);
  --stone-line-soft:rgba(140,123,107,0.20);
  --ink-line:rgba(33,35,34,0.14);
  --parchment-line:rgba(243,242,236,0.25);
  --parchment-line-soft:rgba(243,242,236,0.14);

  /* ---- Semantic aliases: light surfaces (the default) ---- */
  --surface-page:var(--parchment);
  --surface-raised:var(--parchment-edge);
  --surface-warm:var(--parchment-warm);
  --surface-plate:var(--parchment-deep);
  --text-body:var(--heavy-metal);
  --text-secondary:var(--heavy-metal-soft);
  --text-muted:var(--warm-stone);
  --text-heading:var(--heavy-metal);
  --text-accent:var(--rusty-nail);
  --divider:var(--stone-line);
  --divider-soft:var(--stone-line-soft);

  /* ---- Semantic aliases: dark surfaces ---- */
  --surface-dark:var(--woodland);
  --surface-dark-alt:var(--tuna);
  --surface-dark-inset:var(--tuna-deep);
  --text-on-dark:var(--parchment);
  --text-on-dark-muted:rgba(243,242,236,0.62);
  --text-accent-on-dark:var(--brass);
  --divider-on-dark:var(--parchment-line);

  /* ---- Interactive ---- */
  --action-fill:var(--woodland);
  --action-fill-hover:#4B572F;
  --action-fill-press:#333C20;
  --action-text:var(--parchment);
  --action-fill-brass:var(--brass);
  --action-fill-brass-hover:#E6C892;
  --action-fill-brass-press:#C9A768;
  --action-text-brass:var(--heavy-metal);
  --focus-ring:var(--rusty-nail);
  --link:var(--rusty-nail);
  --link-hover:#6B3D06;
}

/* Reversed scope: drop this class on any Woodland / Tuna block and the semantic
   aliases flip so components need no dark-mode branching. */
.mf-on-dark{
  --surface-page:var(--woodland);
  --surface-raised:var(--tuna-deep);
  --text-body:var(--parchment);
  --text-secondary:rgba(243,242,236,0.78);
  --text-muted:rgba(243,242,236,0.55);
  --text-heading:var(--parchment);
  --text-accent:var(--brass);
  --divider:var(--parchment-line);
  --divider-soft:var(--parchment-line-soft);
  --link:var(--brass);
  --link-hover:#E6C892;
  --focus-ring:var(--brass);
  color:var(--text-body);
}
.mf-on-dark.mf-tuna{--surface-page:var(--tuna)}
