
body {
  margin: 0;
  font-family: sans-serif;
  scroll-snap-type: y mandatory;
  overflow-y: scroll;
  height: 100vh;
}

.container {
  scroll-snap-type: y mandatory;
}

section.snap {
  scroll-snap-align: start;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  animation: fadeIn 1s ease-in-out;
}

section.snap img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  transition: transform 0.5s ease, opacity 0.5s ease;
}

section.snap:hover img {
  transform: scale(1.03);
  opacity: 0.95;
}

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