/* =============================================
   Aliados Carousel – v1.0.0
   ============================================= */

.aliados-carousel-home {
    --ali-speed: 34s;
    --ali-border: #EAEAEA;
    padding: 10px 0;
    background: transparent;
    overflow: hidden;
}

.aliados-carousel-home * {
    box-sizing: border-box;
}

/* ── Track ─────────────────────────────────── */

.aliados-carousel-wrap {
    width: 100%;
    overflow: hidden;
    position: relative;
}

.aliados-track {
    display: flex;
    align-items: center;
    gap: 18px;
    width: max-content;
    animation: aliadosScroll var(--ali-speed) linear infinite;
}

/* Pause on hover (default behaviour) */
.aliados-carousel-wrap:hover .aliados-track {
    animation-play-state: paused;
}

/* Override: keep running when pause is disabled */
.aliados-no-pause .aliados-carousel-wrap:hover .aliados-track {
    animation-play-state: running;
}

/* ── Items ─────────────────────────────────── */

.aliado-item {
    width: 200px;
    min-width: 200px;
    height: 108px;
    background: linear-gradient(180deg, #ffffff 0%, #fbfbfb 100%);
    border: 1px solid var(--ali-border);
    border-radius: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, .03);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.aliado-item:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 26px rgba(0, 0, 0, .05);
    border-color: rgba(66, 166, 204, .22);
}

/* ── Logos ──────────────────────────────────── */

.aliado-item img {
    max-width: 100%;
    max-height: 48px;
    width: auto;
    height: auto;
    object-fit: contain;
    filter: grayscale(100%);
    opacity: .92;
    transition: filter .25s ease, opacity .25s ease, transform .25s ease;
}

.aliado-item:hover img {
    filter: grayscale(0%);
    opacity: 1;
    transform: scale(1.03);
}

/* No-grayscale modifier */
.aliados-no-grayscale .aliado-item img {
    filter: grayscale(0%);
    opacity: 1;
}

/* ── Keyframes ─────────────────────────────── */

@keyframes aliadosScroll {
    from { transform: translateX(0); }
    to   { transform: translateX(-50%); }
}

/* ── Mobile ────────────────────────────────── */

@media (max-width: 767px) {
    .aliados-track {
        gap: 12px;
    }

    .aliado-item {
        width: 160px;
        min-width: 160px;
        height: 92px;
        border-radius: 16px;
        padding: 14px;
    }

    .aliado-item img {
        max-height: 38px;
    }
}
