.reveal-on-scroll {
  opacity: 0;
  transform: translateY(34px);
  transition: opacity 750ms ease, transform 750ms cubic-bezier(.22, 1, .36, 1);
}

.reveal-on-scroll.is-visible {
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .reveal-on-scroll { opacity: 1; transform: none; transition: none; }
}

/* Keep editable FAQ question text visually consistent with the summary. */
summary > [data-content] {
  font: inherit;
  transform: none;
}

.hero {
  background-image: var(--hero-image, url("https://images.unsplash.com/photo-1515377905703-c4788e51af15?auto=format&fit=crop&w=2000&q=90"));
}

.quote-block {
  background-image: linear-gradient(rgba(50, 67, 54, .68), rgba(50, 67, 54, .7)), var(--quote-image, url("https://images.unsplash.com/photo-1506126613408-eca07ce68773?auto=format&fit=crop&w=1800&q=85"));
}

.booking {
  background-image: var(--booking-image, url("https://images.unsplash.com/photo-1544161515-4ab6ce6db874?auto=format&fit=crop&w=1800&q=90"));
}
