/* ================= COMPETITION CAROUSEL ================= */
#comp .carousel-wrapper {
    position: relative;
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
    overflow: hidden;
}

#comp .carousel-track {
    display: flex;
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

#comp .carousel-slide {
    min-width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 20px;
    box-sizing: border-box;
}

#comp .carousel-slide img:not(.carousel-icon) {
    max-width: 100px;
    width: 80px;
    height: 40px;
    object-fit: contain;
    filter: drop-shadow(0 8px 20px rgba(0,0,0,0.3));
    transition: transform 0.3s ease;
}

#comp .carousel-slide .carousel-icon {
    max-width: 280px;
    width: 50%;
    height: auto;
    object-fit: contain;
}

#comp .carousel-slide img:hover {
    transform: scale(1.05);
}



/* ================= SL Track (reused for photo strips) ================= */
.sl-track {
  display: flex;
  width: max-content;
  animation: scroll 25s linear infinite;
}
.sl-track img {
  height: 160px;
  width: auto;
  flex-shrink: 0;
}
@keyframes scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

/* ================= DESKTOP HOVER PAUSE ================= */
@media (hover: hover) {
  .sl-track:hover {
    animation-play-state: paused;
  }
}

/* ================= RESPONSIVE ================= */
@media (max-width: 768px) {

    #comp .carousel-slide img {
        max-width: 200px;
    }
    
    #comp .carousel-slide {
        padding: 12px 8px;
    }
}

/* Extra small phones */
@media (max-width: 380px) {

    #comp .carousel-slide img {
        max-width: 160px;
    }
}

@media (min-width: 768px) {
  .sl-track img {
    height: 200px;
  }
}

@media (min-width: 1024px) {
  .sl-track img {
    height: 240px;
  }
  

  #comp .carousel-slide img {
    max-width: 320px;
  }
}
