.category-scroller {
  display: flex;
  position: relative;
}

.category-scroller .carousel-container {
  font-size: 0px;
  cursor: pointer;
  overflow: hidden;
  white-space: nowrap;
  scroll-behavior: smooth;
}

.carousel-container .carousel {
  display: flex;
  width: max-content;
  transition: transform 0.3s ease-out;
  gap: 8px;
}

.carousel .image-container {
  display: flex;
  overflow: hidden;
  border-radius: 50%;
  height: 340px;
  width: 340px;
  position: relative;
}
.carousel .image-container h3 {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  z-index: 3;
  color: white;
  width: fit-content;
  max-width: 100%;
  height: fit-content;
  text-wrap: auto;
  text-align: center;
  font-size: 32px;
  transition: all 400ms ease 0ms;
  opacity: 0;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.carousel .image-container:hover h3 {
  opacity: 1;
}
.carousel .image-container::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(117, 58, 40, 0.7);
  z-index: 2;
  mix-blend-mode: multiply;
  transition: all 400ms ease 0ms;
  opacity: 0;
}
.carousel .image-container:hover::before {
  opacity: 1;
}
.carousel img {
  object-fit: cover;
  user-select: none;
}
@media screen and (max-width: 900px) {
  .carousel .image-container {
    width: calc(100% / 2);
  }
}
@media screen and (max-width: 550px) {
  .carousel .image-container {
    width: 90%;
  }
}