:root {
  --color-bg: #f4f1eb;
  --color-bg-alt: #faf8f4;
  --color-surface: #ffffff;
  --color-surface-soft: #eee8df;
  --color-text: #2c2824;
  --color-text-muted: #6f675e;
  --color-primary: #286b57;
  --color-primary-soft: #3f846d;
  --color-accent-burgundy: #8a3f50;
  --color-accent-brass: #a4772e;
  --color-border-soft: rgba(47, 42, 37, 0.12);
  --color-border-strong: rgba(47, 42, 37, 0.22);
  --gray-50: #24211e;
  --gray-100: #39342f;
  --gray-200: #514a43;
  --gray-300: #675f57;
  --gray-400: #7d746a;
  --gray-500: #958b80;
  --gray-600: #aea499;
  --gray-700: #c9c1b7;
  --gray-800: #e2ddd5;
  --gray-900: #f4f1eb;
  --shadow-soft: 0 8px 24px rgba(58, 49, 41, 0.1);
  --shadow-elevated: 0 18px 44px rgba(58, 49, 41, 0.16);
  --shadow-subtle: 0 1px 4px rgba(58, 49, 41, 0.12);
}

body {
  background-image: radial-gradient(circle at top left, rgba(164, 119, 46, 0.1), transparent 55%),
    radial-gradient(circle at bottom right, rgba(138, 63, 80, 0.1), transparent 60%);
}

h1, h2, h3, h4, h5, h6 { color: var(--gray-50); }
.btn-primary { color: #fff; border-color: rgba(255, 255, 255, 0.3); }
.btn-outline { background: rgba(255, 255, 255, 0.72); color: var(--color-text); }
.btn-ghost { background: rgba(255, 255, 255, 0.78); color: var(--color-text); border-color: var(--color-border-soft); }
.btn-ghost:hover { background: #fff; }
input, select, textarea { background-color: rgba(255, 255, 255, 0.94); }
.card { background: linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(245, 241, 234, 0.98)); }
.card-soft { background: rgba(255, 255, 255, 0.78); border-color: var(--color-border-soft); }
.chip { background: rgba(255, 255, 255, 0.82); }
.badge, .badge-availability, .pill-filter[aria-pressed="true"], .pill-filter-active,
.brand-mark, .footer-brand-mark { color: #fff; }
.pill-filter { background: rgba(255, 255, 255, 0.9); border-color: var(--color-border-soft); }
.hero { background: radial-gradient(circle at top left, rgba(63, 132, 109, 0.22), transparent 55%), radial-gradient(circle at bottom right, rgba(138, 63, 80, 0.16), transparent 60%); }
.section-layout-alt { background: radial-gradient(circle at top, rgba(63, 132, 109, 0.12), transparent 55%), radial-gradient(circle at bottom, rgba(138, 63, 80, 0.1), transparent 60%); }
.card-cta-final { background: radial-gradient(circle at top left, rgba(63, 132, 109, 0.18), rgba(255, 255, 255, 0.96)); border-color: rgba(164, 119, 46, 0.28); }
.orenville-header, header.site-header { background: linear-gradient(to bottom, rgba(255, 255, 255, 0.98), rgba(247, 244, 238, 0.94)); border-bottom-color: var(--color-border-soft); }
.nav-toggle { background: rgba(255, 255, 255, 0.9); border-color: var(--color-border-soft); }
.nav-toggle-bar { background-color: var(--color-text); }
.orenville-footer, .footer { background: radial-gradient(circle at top, rgba(63, 132, 109, 0.16), transparent 60%), #ebe5dc; border-color: var(--color-border-soft); }
.footer-highlight, .cookie-banner, .cookie-bar { background: rgba(255, 255, 255, 0.96); border-color: var(--color-border-soft); }
.age-modal-dialog { background: linear-gradient(145deg, #fff, #f2ede5); }

@media (max-width: 767.98px) {
  .site-nav { background: radial-gradient(circle at top, #e4efe9, #f8f5ef); border-color: var(--color-border-soft); box-shadow: var(--shadow-elevated); }
}
