/* sections/clients.css */
.clients-section {
    padding-top: 70px;
    padding-bottom: 80px;
}

.clients-carousel-container {
    position: relative;
    padding: 0 40px;
}

.clients-carousel-wrapper {
    overflow: hidden;
}

.clients-grid {
    padding-top: 10px;
    display: flex;
    gap: 40px;
    align-items: center;
    transition: transform 0.5s ease;
}

.client-logo {
    flex: 0 0 160px;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 80px;
}

.client-logo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    filter: grayscale(100%) opacity(.65);
    transition: filter .3s ease, opacity .3s ease;
}

.client-logo img:hover {
    filter: grayscale(0%) opacity(1);
}

.client-logo img.logo-light {
    filter: invert(1) grayscale(100%) opacity(.55);
}

.client-logo img.logo-light:hover {
    filter: invert(1) grayscale(10%) opacity(.15);
}

/* --- Estilos y Posición para Flechas de Clientes --- */
.clients-carousel-container>.arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0.05);
    /* Color de fondo sutil */
    color: #555;
    /* Color de flecha oscuro */
}

.clients-carousel-container>.arrow:hover {
    background: var(--color-primary);
    color: white;
}

.clients-carousel-container>.arrow.prev {
    left: 0;
}

.clients-carousel-container>.arrow.next {
    right: 0;
}


/* Media Queries */
@media (max-width: 767px) {
    .clients-carousel-container {
        padding: 0 10px;
    }

    .client-logo {
        flex: 0 0 120px;
    }

    .clients-section {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .clients-carousel-container .arrow {
        display: none;
    }
}