/* Animation definitions */
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes scaleIn {
  from {
    transform: scale(0.95);
    opacity: 0;
  }
  to {
    transform: scale(1);
    opacity: 1;
  }
}

/* Apply animations to elements */
.photo-wrapper {
  animation: scaleIn 1s ease-out forwards;
}

#photo-title {
  animation: fadeIn 1.2s ease-out 0.3s forwards;
  opacity: 0;
  animation-fill-mode: both;
}

/* Subtle hover effects */
.photo-wrapper::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.02) 75%,
    rgba(0, 0, 0, 0.1) 100%
  );
  opacity: 0;
  transition: opacity 0.3s ease;
}

.photo-wrapper:hover::after {
  opacity: 1;
}