.reveal {
  opacity: 0;
  transform: translateY(24px);
  transition:
    opacity 0.7s ease,
    transform 0.7s ease;
}

.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

.hero-panel,
.info-card,
.service-card,
.review-card,
.step-card,
.visual-card,
.cta-panel,
.map-card,
.faq-item,
.thumb {
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease,
    border-color 0.3s ease,
    opacity 0.7s ease;
}