/* ═══════════════════════════════════════════
   Logo Slider — Marquee / Infinite Scroll
═══════════════════════════════════════════ */
.ls-slider-wrapper {
    --ls-accent:  #1a56db;
    --ls-border:  #e8e8e8;
    --ls-bg:      #ffffff;
    --ls-text:    #1e293b;
    --ls-speed:   30s;

    position: relative;
    background: var(--ls-bg);
    border-bottom: 1px solid var(--ls-border);
    padding: 30px 0;
    overflow: hidden;
    width: 100%;
    box-sizing: border-box;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
}

/* ── Fade edges ── */
.ls-slider-wrapper::before,
.ls-slider-wrapper::after {
    content: '';
    position: absolute;
    top: 0;
    width: 140px;
    height: 100%;
    z-index: 2;
    pointer-events: none;
}
.ls-slider-wrapper::before {
    left: 0;
    background: linear-gradient(to right, var(--ls-bg) 0%, transparent 100%);
}
.ls-slider-wrapper::after {
    right: 0;
    background: linear-gradient(to left, var(--ls-bg) 0%, transparent 100%);
}

/* ── Track ── */
.ls-track-outer {
    overflow: hidden;
    width: 100%;
}

.ls-track {
    display: flex;
    align-items: center;
    width: max-content;
    animation: ls-marquee var(--ls-speed) linear infinite;
    will-change: transform;
}

.ls-track.ls-paused {
    animation-play-state: paused;
}

@keyframes ls-marquee {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

/* ── Individual logo ── */
.ls-slide {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 40px;
    flex-shrink: 0;
}

.ls-logo-box {
    width: 160px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.ls-logo-box img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    transition: transform .3s ease, opacity .3s ease;
}

.ls-slide:hover .ls-logo-box img {
    transform: scale(1.06);
    opacity: .8;
}

/* Hide labels */
.ls-logo-name { display: none !important; }

/* ── Controls ── */
.ls-controls {
    display: flex;
    justify-content: center;
    margin-top: 18px;
    position: relative;
    z-index: 3;
}

.ls-btn {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    border: 1.5px solid var(--ls-border);
    background: #fff;
    color: var(--ls-text);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    transition: background .18s, border-color .18s, color .18s, transform .15s, box-shadow .18s;
    box-shadow: 0 1px 4px rgba(0,0,0,.07);
}

.ls-btn:hover {
    background: var(--ls-accent);
    border-color: var(--ls-accent);
    color: #fff;
    box-shadow: 0 3px 12px rgba(26,86,219,.3);
    transform: scale(1.08);
}

.ls-btn:active { transform: scale(.93); }
.ls-btn svg { width: 14px; height: 14px; display: block; }

.ls-playpause .ls-icon-play  { display: none; }
.ls-playpause .ls-icon-pause { display: block; }
.ls-playpause.ls-is-paused .ls-icon-play  { display: block; }
.ls-playpause.ls-is-paused .ls-icon-pause { display: none; }

.ls-playpause {
    width: 38px;
    height: 38px;
    background: var(--ls-accent);
    border-color: var(--ls-accent);
    color: #fff;
    box-shadow: 0 2px 8px rgba(26,86,219,.3);
}
.ls-playpause:hover { background: #1347c4; border-color: #1347c4; }

/* ── Mobile ── */
@media (max-width: 600px) {
    .ls-slider-wrapper {
        padding: 15px 0;
    }
    .ls-slide { padding: 0 24px; }
    .ls-logo-box { width: 110px; height: 56px; }
    .ls-slider-wrapper::before,
    .ls-slider-wrapper::after { width: 60px; }
}
