.carousel {
  width: min(100%, 54em);
  overflow: hidden;
  margin: 2em auto 0 auto;
  border-radius: 12px;
  box-shadow: 0 1em 2.5em rgba(30, 10, 55, 0.22);
}

.track {
  display: flex;
  animation: slide 16s infinite;
}

.track img {
  flex: 0 0 100%;
  width: 100%;
  height: 28em;
  object-fit: cover;
  display: block;
}

@keyframes slide {
  0%, 28% { transform: translateX(0); }
  33%, 61% { transform: translateX(-100%); }
  66%, 94% { transform: translateX(-200%); }
  100% { transform: translateX(0); }
}

@media screen and (max-width: 736px) {
  .carousel {
    margin-top: 1.5rem;
  }

  .track img {
    height: clamp(14rem, 72vw, 24rem);
  }
}

@media (prefers-reduced-motion: reduce) {
  .track {
    animation: none;
  }

  .track img:not(:first-child) {
    display: none;
  }
}

