/* ==== SCROLL ANIMATIONS ==== */
[data-animate] {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.8s ease-out, transform 0.8s ease-out;
  will-change: opacity, transform;
}

[data-animate].active {
  opacity: 1;
  transform: translateY(0);
}

[data-animate="fade-left"] {
  transform: translateX(-40px);
}
[data-animate="fade-left"].active {
  transform: translateX(0);
}

[data-animate="fade-right"] {
  transform: translateX(40px);
}
[data-animate="fade-right"].active {
  transform: translateX(0);
}

/* ==== MOBILE (≤768px) ==== */
@media (max-width: 768px) {
  [data-animate] {
    transform: translateY(20px);
  }
  [data-animate="fade-left"] {
    transform: translateX(-20px);
  }
  [data-animate="fade-right"] {
    transform: translateX(20px);
  }
}

/* ==== TABLET (769px–1024px) ==== */
@media (min-width: 769px) and (max-width: 1024px) {
  [data-animate] {
    transform: translateY(30px);
  }
  [data-animate="fade-left"] {
    transform: translateX(-30px);
  }
  [data-animate="fade-right"] {
    transform: translateX(30px);
  }
}
