html {
  scroll-behavior: smooth;
}

[data-animate] {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.4s ease, transform 0.4s ease;
}

[data-animate].is-visible {
  opacity: 1;
  transform: translateY(0);
}

[data-animate="icon"] {
  transform: translateY(12px);
  transition: opacity 0.3s ease, transform 0.3s ease;
}

[data-animate="card"] {
  transform: translateY(16px);
  transition: opacity 0.4s ease, transform 0.4s ease;
}

@keyframes scroll {
  0% {
    transform: translateY(-6px);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: translateY(10px);
    opacity: 0;
  }
}

@keyframes pulse {
  0%,
  100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.08);
  }
}
