.carousel {
  position: relative;
  cursor: pointer;
  touch-action: pan-y;
  width: 100%;
  height: 400px;
  -webkit-tap-highlight-color: transparent;
}

.carousel:focus-visible {
  outline: 2px solid rgb(74, 74, 234);
  outline-offset: 2px;
}

.carousel-item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
  pointer-events: none;
  visibility: hidden;
  height: auto;
}

.carousel-item[aria-hidden='false'] {
  position: relative;
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}

.carousel-item img {
  display: block;
  width: auto;
  height: auto;
  max-height: 300px;
  max-width: 100%;
  margin: 0 auto 14px;
  /* object-fit: contain; */
}

.carousel-item figure {
  width: 100%;
}

@media (min-width: 768px) {
  .carousel {
    height: 39vh;
    min-height: 300px;
    margin-top: 6px;
  }

  .carousel-item img {
    max-height: 28vh;
  }
}
