:root {
  --dandelion-bg: #F4F6F2;
  --dandelion-surface: #FFFFFF;
  --dandelion-tone: #2D5A38;
  --dandelion-tone-hover: #1F3F27;
  --dandelion-ink: #1C281E;
  --dandelion-accent: #C28E38;
  --dandelion-gradient: linear-gradient(135deg, #2D5A38 0%, #1F3F27 100%);
  --font-display: 'Merriweather', serif;
  --font-body: 'Inter', sans-serif;
}

body {
  font-family: var(--font-body);
  background-color: var(--dandelion-bg);
  color: var(--dandelion-ink);
  margin: 0;
  padding: 0;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-display);
}

/* Radio CSS Gallery Logic */
.dandelion-radio-input {
  display: none;
}

.dandelion-slide {
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
  pointer-events: none;
}

#gal-1:checked ~ .dandelion-photo-viewport #slide-1,
#gal-2:checked ~ .dandelion-photo-viewport #slide-2,
#gal-3:checked ~ .dandelion-photo-viewport #slide-3,
#gal-4:checked ~ .dandelion-photo-viewport #slide-4 {
  opacity: 1;
  pointer-events: auto;
}

.dandelion-thumb-label {
  opacity: 0.5;
  transition: opacity 0.2s ease, border-color 0.2s ease;
  cursor: pointer;
  border-color: transparent;
}

.dandelion-thumb-label:hover {
  opacity: 0.8;
}

#gal-1:checked ~ .dandelion-thumb-row label[for="gal-1"],
#gal-2:checked ~ .dandelion-thumb-row label[for="gal-2"],
#gal-3:checked ~ .dandelion-thumb-row label[for="gal-3"],
#gal-4:checked ~ .dandelion-thumb-row label[for="gal-4"] {
  opacity: 1;
  border-color: var(--dandelion-tone);
}

/* Action button hover state */
.organic-action-lane a:hover {
  background-color: var(--dandelion-tone-hover) !important;
  transform: translateY(-1px);
}