/* CPR brand palette: bright green for fills, deep green for readable text. */
:root {
  --brand: #82D617;
  --button-fill: #b4d98b;
  --brand-hover: #c4e2a4;
  --brand-text: #38640d;
  --ink: #151a18;
  --paper: #f7f9f5;
  --line: #d5ddd1;
  --muted: #596257;
  --copper: var(--brand-text);
}
.button,
.home-hero .actions .button.outline {
  background: var(--button-fill);
  border-color: var(--button-fill);
  color: var(--ink);
}
.button:hover,
.home-hero .actions .button.outline:hover {
  background: var(--brand-hover);
  border-color: var(--brand-hover);
  color: var(--ink);
}
.button.outline-dark { background: transparent; border-color: var(--brand-text); color: var(--brand-text); }
.button.outline-dark:hover { background: var(--button-fill); border-color: var(--button-fill); color: var(--ink); }
.about-band, .feature { background: #edf3e7; }
.notice, .choices label:has(input:checked) { background: #eaf5dd; }
.preview { background: #edf3e7; color: var(--muted); }
.filters button[aria-pressed=true], .steps [aria-current] span { background: var(--brand); color: var(--ink); }
.cta { background: #202b22; }
footer { color: #e1e7dc; }
header a:focus-visible, footer a:focus-visible, .cta a:focus-visible, .brand:focus-visible { outline-color: var(--brand); }
header a:not(.button):hover, footer a:hover, .cta .text-link:hover { color: var(--brand); }
.photo-0, .photo-3 { filter: saturate(.85); }
.hero>.photo-0, .hero>.photo-3 { filter: brightness(.4) saturate(.85); }
.hero-background:before, .hero-background:after { filter: brightness(.45) saturate(.85); }
