/* De Notenboom – Animations & Custom Styles */

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
  .reveal { opacity: 1 !important; transform: none !important; }
  .hero-anim { opacity: 1 !important; transform: none !important; animation: none !important; }
}

html { scroll-behavior: smooth; }

/* ── Hero entrance ── */
@keyframes fadeSlideUp {
  from { opacity: 0; transform: translateY(22px); }
  to   { opacity: 1; transform: translateY(0);    }
}
.hero-anim { animation: fadeSlideUp 0.75s cubic-bezier(0.22, 1, 0.36, 1) both; }
.hero-d1 { animation-delay: 0.05s; }
.hero-d2 { animation-delay: 0.22s; }
.hero-d3 { animation-delay: 0.42s; }
.hero-d4 { animation-delay: 0.62s; }
.hero-d5 { animation-delay: 0.80s; }

/* ── Scroll reveal ── */
.reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.65s cubic-bezier(0.22, 1, 0.36, 1),
              transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
}
.reveal.visible { opacity: 1; transform: translateY(0); }
.reveal-d1 { transition-delay: 0.10s; }
.reveal-d2 { transition-delay: 0.20s; }
.reveal-d3 { transition-delay: 0.30s; }
.reveal-d4 { transition-delay: 0.40s; }

/* ── Scroll hint ── */
#scroll-hint { transition: opacity 0.5s ease; }
#scroll-hint.gone { opacity: 0; pointer-events: none; }
