/* Partners Section - Infinite Marquee */
.partners {
    background-color: var(--color-bg);
    padding: 3rem 0;
    position: relative;
    overflow: hidden;
}

.partners__header {
    text-align: center;
    margin-bottom: 3rem;
}

/* Container do Marquee */
.partners__marquee {
    position: relative;
    width: 100%;
    overflow: hidden;
    /* Máscara para suavizar as bordas laterais */
    mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
    -webkit-mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
    padding: 20px 0;
}

/* Trilha que se move */
.partners__track {
    display: flex;
    align-items: center;
    gap: 6rem; /* Espaçamento entre logos */
    width: max-content;
    /* Animação infinita */
    animation: scroll-marquee 30s linear infinite;
}

/* Pausa a animação no hover para o usuário ver melhor */
.partners__track:hover {
    animation-play-state: paused;
}

@keyframes scroll-marquee {
    0% {
        transform: translateX(0);
    }
    100% {
        /* Move 20% (1/5) pois temos 5 grupos repetidos. 
           Isso cria um loop perfeito visualmente. */
        transform: translateX(-20%);
    }
}

/* Estilo do Card do Logo */
.partner-logo {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 2rem; /* Mais espaçamento interno */
    background: rgba(255, 255, 255, 0.03);
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.05);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    
    /* Tamanho AUMENTADO como solicitado */
    width: 350px; 
    height: 180px;
    flex-shrink: 0; /* Impede que encolha */
    
    backdrop-filter: blur(10px);
}

.partner-logo img {
    max-width: 90%;
    max-height: 90%;
    object-fit: contain;
    filter: grayscale(100%) opacity(0.7);
    transition: all 0.4s ease;
}

/* Hover Effects */
.partner-logo:hover {
    transform: scale(1.05);
    background: rgba(255, 255, 255, 0.08);
    border-color: var(--color-primary);
    box-shadow: 0 10px 30px -10px rgba(99, 102, 241, 0.2);
}

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

/* Adiciona contraste para os logos no modo claro (light theme) */
html[data-theme='light'] .partner-logo {
    background: rgba(0, 0, 0, 0.03);
    border-color: rgba(0, 0, 0, 0.1);
}

html[data-theme='light'] .partner-logo img {
    filter: grayscale(50%) opacity(0.7);
}

html[data-theme='light'] .partner-logo:hover {
    background: rgba(0, 0, 0, 0.05);
}

html[data-theme='light'] .partner-logo:hover img {
    filter: grayscale(0%) opacity(1);
}


/* Mobile Adjustments */
@media (max-width: 768px) {
    .partners__track {
        gap: 2.5rem; /* Espaçamento reduzido para mobile */
        animation-duration: 25s; /* Animação ajustada */
    }

    .partner-logo {
        /* No mobile também mantemos grande para legibilidade */
        width: 280px;
        height: 140px;
        padding: 1.5rem;
    }
}
