:root {
  --thorne-bg: #F4F7F6;
  --thorne-surface: #FFFFFF;
  --thorne-tone: #0F766E;
  --thorne-tone-hover: #115E59;
  --thorne-ink: #1F2937;
  --thorne-accent: #E07A5F;
  --font-display: 'Montserrat', sans-serif;
  --font-body: 'Inter', sans-serif;
}

body {
  font-family: var(--font-body);
  margin: 0;
  padding: 0;
  -webkit-font-smoothing: antialiased;
}

/* Hide Radio Inputs */
.thorne-selector-dot {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  width: 0;
  height: 0;
}

/* Slide Visibility Engine */
.thorne-slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease-in-out;
}

#thorne-pic-1:checked ~ .thorne-display-holder .thorne-slide:nth-child(1),
#thorne-pic-2:checked ~ .thorne-display-holder .thorne-slide:nth-child(2),
#thorne-pic-3:checked ~ .thorne-display-holder .thorne-slide:nth-child(3),
#thorne-pic-4:checked ~ .thorne-display-holder .thorne-slide:nth-child(4) {
  opacity: 1;
  visibility: visible;
  z-index: 2;
}

/* Preset C Thumbnails: at bottom, opacity 0.5 on inactive */
.thorne-thumb-item {
  opacity: 0.5;
  transition: all 0.25s ease;
}

.thorne-thumb-item:hover {
  opacity: 0.85;
}

#thorne-pic-1:checked ~ .thorne-thumbs-tray label[for="thorne-pic-1"],
#thorne-pic-2:checked ~ .thorne-thumbs-tray label[for="thorne-pic-2"],
#thorne-pic-3:checked ~ .thorne-thumbs-tray label[for="thorne-pic-3"],
#thorne-pic-4:checked ~ .thorne-thumbs-tray label[for="thorne-pic-4"] {
  opacity: 1;
  border-color: var(--thorne-tone);
}

/* Preset C CTA: Border-left accent 6px */
.thorne-cta-trigger {
  border-left: 6px solid var(--thorne-accent);
  border-radius: 12px;
  text-decoration: none;
}

.thorne-cta-trigger:hover {
  background-color: var(--thorne-tone-hover) !important;
  transform: translateY(-1px);
}