/* Our Partners — infinite logo marquee */

.partners-slider-section {
    padding: 56px 0;
    overflow: hidden;
    border-top: 1px solid var(--border-color);
    border-bottom: 1px solid var(--border-color);
    background: rgba(0, 255, 255, 0.02);
}

.partners-slider-header {
    text-align: center;
    padding: 0 2rem 2rem;
    max-width: 720px;
    margin: 0 auto;
}

.partners-slider-header .section-title {
    margin-bottom: 0.5rem;
}

.partners-slider-header .section-subtitle {
    margin: 0;
}

.partners-slider-viewport {
    overflow: hidden;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
    mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
}

.partners-slider-track {
    display: flex;
    align-items: center;
    gap: 1.75rem;
    width: max-content;
    padding: 0.5rem 0;
    animation: partnersMarquee 45s linear infinite;
}

.partners-slider-track:hover {
    animation-play-state: paused;
}

@keyframes partnersMarquee {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

.partners-slider-item {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: clamp(140px, 18vw, 200px);
    height: clamp(88px, 12vw, 110px);
    padding: 1rem 1.25rem;
    background: var(--card-bg);
    border: 1px solid var(--border-color);
    backdrop-filter: blur(10px);
    clip-path: polygon(10px 0%, 100% 0%, calc(100% - 10px) 100%, 0% 100%);
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.partners-slider-item:hover {
    border-color: var(--primary-cyan);
    box-shadow: 0 0 25px rgba(0, 255, 255, 0.12);
}

.partners-slider-item img {
    max-width: 100%;
    max-height: 72px;
    width: auto;
    height: auto;
    object-fit: contain;
    filter: brightness(1.05);
}

@media (prefers-reduced-motion: reduce) {
    .partners-slider-track {
        animation: none;
        flex-wrap: wrap;
        justify-content: center;
        width: 100%;
        max-width: 1200px;
        margin: 0 auto;
        padding: 0 2rem;
    }

    .partners-slider-viewport {
        -webkit-mask-image: none;
        mask-image: none;
    }
}
