/* ==========================================
   HOTEL BUDDHA LAND — SCROLL ANIMATIONS
   ========================================== */

/* Hero Load Animations */
.in {
  opacity: 0;
  transform: translateY(20px);
  animation: fadeUpIn 0.9s var(--ease) forwards;
}

.d1 { animation-delay: 0.25s; }
.d2 { animation-delay: 0.45s; }
.d3 { animation-delay: 0.65s; }

@keyframes fadeUpIn {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* 1. Fade Up (.fu) */
.fu {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.9s var(--ease), transform 0.9s var(--ease);
}

.fu.on {
  opacity: 1;
  transform: translateY(0);
}

/* 2. Image Clip Reveal (.rv) */
.rv .fig {
  clip-path: inset(0 0 100% 0);
  transition: clip-path 1.2s var(--ease);
}

.rv.on .fig {
  clip-path: inset(0 0 0 0);
}

/* 3. Image Settle Scale (.sc) */
.sc .fig img,
.sc .ph-bg {
  transform: scale(1.05);
  transition: transform 1.6s var(--ease);
}

.sc.on .fig img,
.sc.on .ph-bg {
  transform: scale(1.0);
}

/* Accessibility: Prefers Reduced Motion */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation: none !important;
    transition-duration: 1ms !important;
    scroll-behavior: auto !important;
  }

  .in, .fu {
    opacity: 1 !important;
    transform: none !important;
  }

  .rv .fig {
    clip-path: none !important;
  }

  .sc .fig img, .sc .ph-bg {
    transform: none !important;
  }
}

