.logo-carousel {
  overflow: hidden;
  position: absolute;
  width: 100%;
  max-width: 1140px;
  bottom: 2rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  padding: 0.6rem 0;
  background: rgba(26, 32, 44, 0.5);
  backdrop-filter: blur(20px);
  border: 1px solid rgba(74, 144, 226, 0.25);
  border-radius: 0.5rem;
  -webkit-mask-image: linear-gradient(to right, rgba(0,0,0,0), rgba(0,0,0,1) 10%, rgba(0,0,0,1) 90%, rgba(0,0,0,0));
  mask-image: linear-gradient(to right, rgba(0,0,0,0), rgba(0,0,0,1) 10%, rgba(0,0,0,1) 90%, rgba(0,0,0,0));
}

.logo-carousel-track {
  --scroll-distance: calc(-200px * 4);
  display: flex;
  width: calc(200px * 10);
  animation: scroll 40s linear infinite;
}

.logo-item {
  width: 200px;
  padding: 0 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.logo-item img {
  max-width: 120px;
  height: auto;
  filter: grayscale(100%) opacity(0.8);
  transition: filter 0.3s ease;
}

/* Larger logos for better readability */
.logo-item img.large-logo {
  max-width: 140px;
}

.logo-item img:hover {
  filter: grayscale(0%) opacity(1);
}

@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(var(--scroll-distance));
  }
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .logo-carousel {
    bottom: 1rem;
    padding: 0.4rem 0;
    width: 90%;
  }
  .logo-carousel-track {
    --scroll-distance: calc(-150px * 4);
    width: calc(150px * 10);
    animation-duration: 30s;
  }
  .logo-item {
    width: 150px;
    padding: 0 25px;
  }
}

/* Landscape mobile optimization (iPhone SE 667x375 and similar) */
@media (max-height: 450px) and (orientation: landscape) {
  .logo-carousel {
    bottom: 0.5rem;
    padding: 0.3rem 0;
    width: 95%;
    z-index: 10;
  }
  
  .logo-carousel-track {
    --scroll-distance: calc(-100px * 4);
    width: calc(100px * 10);
    animation-duration: 20s;
  }
  
  .logo-item {
    width: 100px;
    padding: 0 15px;
  }
  
  .logo-item img {
    max-width: 60px;
  }
  
  .logo-item img.large-logo {
    max-width: 70px;
  }
}