/*
  partner-carousel.css
  Frittstående, gjenbrukbar auto-scroll-komponent for klubb-/partnerlogoer.

  .carousel__item inneholder <img>-tagger — object-fit: contain skalerer
  logoer med ulikt sideforhold pent innenfor samme boks.

  Ingen avhengigheter til andre filer — kan droppes inn på forsiden eller
  andre sider uten endringer andre steder enn selve markupen.
*/

.carousel {
  padding: 60px 0;
  overflow: hidden;
}

.carousel__track-wrap {
  width: 100%;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
}

.carousel__track {
  display: flex;
  align-items: center;
  gap: clamp(32px, 5vw, 64px);
  width: max-content;
  animation: carousel-scroll 45s linear infinite;
}

.carousel__item {
  flex: 0 0 auto;
  width: clamp(80px, 8vw, 100px);
  height: 96px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.carousel__item img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

@keyframes carousel-scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

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

  .carousel__track-wrap {
    overflow-x: auto;
  }
}

@media (max-width: 760px) {
  /* Mellomrommet mellom seksjonene redusert til 64px på mobil (fra
     120px = 60+60 på desktop) — 32px hver side, samme prinsipp som
     resten av sidene som bruker denne rytmen. */
  .carousel {
    padding-top: 32px;
    padding-bottom: 32px;
  }
}
