/* Scroll Animations & Transitions */

.fade-in {
  opacity: 0;
  animation: fadeIn 1s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

.slide-up {
  opacity: 0;
  transform: translateY(40px);
  animation: slideUp 1s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

.stagger-1 { animation-delay: 0.1s; }
.stagger-2 { animation-delay: 0.2s; }
.stagger-3 { animation-delay: 0.3s; }
.stagger-4 { animation-delay: 0.4s; }

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes slideUp {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Image Hover Zoom */
.img-zoom-container {
  overflow: hidden;
  border-radius: var(--border-radius);
}

.img-zoom-container img {
  transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.img-zoom-container:hover img {
  transform: scale(1.05);
}

/* Smooth Scrolling for entire page */
html {
  scroll-behavior: smooth;
}