:root {
  --naphcon-bg: #f8fafc;
  --naphcon-surface: #ffffff;
  --naphcon-tone: #0284c7;
  --naphcon-tone-hover: #0369a1;
  --naphcon-ink: #0f172a;
  --naphcon-gradient: linear-gradient(135deg, #e0f2fe 0%, #ffffff 100%);
  --font-display: 'Playfair Display', serif;
  --font-body: 'Inter', sans-serif;
}

/* Preset D Specific Rules */

/* Header: Thin dividing line */
.naphcon-top-banner {
  background-color: var(--naphcon-surface);
  border-bottom: 1px solid #e2e8f0;
}

.naphcon-brand-title {
  text-transform: uppercase;
}

.naphcon-main-heading {
  text-transform: uppercase;
}

/* Radio Gallery Engine */
.naphcon-gallery-trigger {
  display: none;
}

.naphcon-slide-pane {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
  pointer-events: none;
  background-color: var(--naphcon-surface);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

#naphcon-img-1:checked ~ .naphcon-main-display .naphcon-slide-1,
#naphcon-img-2:checked ~ .naphcon-main-display .naphcon-slide-2,
#naphcon-img-3:checked ~ .naphcon-main-display .naphcon-slide-3,
#naphcon-img-4:checked ~ .naphcon-main-display .naphcon-slide-4 {
  opacity: 1;
  pointer-events: auto;
}

/* Preset D: Thumbnails side without border */
.naphcon-thumb-item {
  border-radius: 16px;
  overflow: hidden;
  opacity: 0.6;
  transition: opacity 0.2s ease, transform 0.2s ease;
  background-color: var(--naphcon-surface);
  padding: 2px;
}

.naphcon-thumb-item:hover {
  opacity: 0.9;
  transform: translateY(-2px);
}

#naphcon-img-1:checked ~ .naphcon-thumb-column label[for="naphcon-img-1"],
#naphcon-img-2:checked ~ .naphcon-thumb-column label[for="naphcon-img-2"],
#naphcon-img-3:checked ~ .naphcon-thumb-column label[for="naphcon-img-3"],
#naphcon-img-4:checked ~ .naphcon-thumb-column label[for="naphcon-img-4"] {
  opacity: 1;
}

/* Preset D: CTA wide without shadow, hover underline */
.naphcon-cta-button {
  box-shadow: none !important;
  text-decoration: none;
}

.naphcon-cta-button:hover {
  background-color: var(--naphcon-tone-hover) !important;
  text-decoration: underline;
}

/* Preset D: Reviews border-bottom + box-shadow */
.naphcon-feedback-item {
  border-bottom: 1px solid #e2e8f0;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
  padding: 1.5rem;
  background-color: var(--naphcon-surface);
  border-radius: 16px;
  margin-bottom: 1.5rem;
}