/* Scrolling Logo Module Styles */
.container-platforms-module {
  overflow: hidden;
  position: relative;
}

/* Module Header - Removed */

/* Logo Scrolling Container */
.logo-scroll-wrapper {
  position: relative;
  overflow: hidden;
  width: 100%;
  margin: 0 auto;
  background: inherit;
  border-radius: 12px;
  padding: 2rem 0;
  
  /* CSS Mask for fade effect */
  --fade-width: 100px;
  
  /* Create horizontal fade mask */
  mask-image: linear-gradient(
    to right,
    transparent 0%,
    black var(--fade-width),
    black calc(100% - var(--fade-width)),
    transparent 100%
  );
  -webkit-mask-image: linear-gradient(
    to right,
    transparent 0%,
    black var(--fade-width),
    black calc(100% - var(--fade-width)),
    transparent 100%
  );
  
  mask-size: 100% 100%;
  -webkit-mask-size: 100% 100%;
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
}

.logo-scroll-container {
  overflow: hidden;
  white-space: nowrap;
  position: relative;
  width: 100%;
}

.logo-scroll-track {
  display: inline-flex;
  align-items: center;
  /* Animation now handled by JavaScript */
}

/* Hover pause removed */

.logo-set {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
}

.logo-item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0 20px;
  flex-shrink: 0;
  width: auto; /* Let content determine width */
}

/* Logo link styles - Removed */

.logo-image {
  height: 48px; /* Fixed height for consistency */
  width: auto; /* Auto width maintains aspect ratio */
  max-width: 200px; /* Prevent extremely wide logos */
  min-width: 40px; /* Prevent extremely narrow logos */
  object-fit: contain;
  padding: 0.5rem;
}


/* Fade Overlays - Now handled by CSS mask on wrapper */
.fade-overlay {
  display: none; /* Hidden since we're using CSS mask */
}

/* When fade is disabled, remove mask */
.logo-scroll-wrapper[data-enable-fade="false"] {
  mask-image: none;
  -webkit-mask-image: none;
}

/* Fallback for browsers that don't support CSS masks */
@supports not (mask-image: none) and not (-webkit-mask-image: none) {
  /* Remove mask and show overlays on unsupported browsers */
  .logo-scroll-wrapper {
    mask-image: none !important;
    -webkit-mask-image: none !important;
  }
  
  .fade-overlay {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100px;
    pointer-events: none;
    z-index: 2;
  }
  
  .fade-left {
    left: 0;
    background: linear-gradient(90deg, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0.6) 30%, transparent 100%);
  }
  
  .fade-right {
    right: 0;
    background: linear-gradient(270deg, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0.6) 30%, transparent 100%);
  }
}

/* Animation Keyframes - Removed (now using JavaScript) */

/* Responsive Design */
@media (max-width: 768px) {
  .logo-item {
    margin: 0 15px;
  }
  
  .logo-image {
    height: 50px; /* Smaller height for tablet */
  }
  
  .logo-scroll-wrapper {
    padding: 1.5rem 0;
    /* Remove mask on mobile for clean scroll */
    mask-image: none;
    -webkit-mask-image: none;
  }
  
  /* Hide fade overlays on mobile */
  .fade-overlay {
    display: none;
  }
}

@media (max-width: 576px) {
  .logo-item {
    margin: 0 10px;
  }
  
  .logo-image {
    height: 40px; /* Smaller height for mobile */
  }
  
  .logo-scroll-wrapper {
    padding: 1rem 0;
  }
}

/* Dark theme support */
@media (prefers-color-scheme: dark) {
  .logo-scroll-wrapper {
    background: inherit;
  }
  
  /* CSS mask works the same in dark mode */
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
  .logo-scroll-track {
    /* JavaScript will respect this preference */
    overflow-x: auto;
    white-space: nowrap;
    padding-bottom: 1rem;
  }
  
  .logo-scroll-wrapper {
    /* Remove mask for better accessibility */
    mask-image: none;
    -webkit-mask-image: none;
  }
  
  .logo-image:hover {
    transform: none;
  }
}

/* High contrast mode */
@media (prefers-contrast: high) {
  .logo-image {
    filter: none;
    border: 2px solid transparent;
  }
  
  .logo-image:hover {
    border-color: #007bff;
  }
}
