.ce-logos-referenzen {
    padding: 48px 0;
    max-width: 1550px;
    margin: 0 auto;
    overflow: hidden;

    .ce-lr__header {
        padding: 0 0 24px;
    }

    .ce-lr__headline {
        font-size: clamp(1rem, 1.7vw, 1.8rem);
        font-weight: 300;
        text-transform: uppercase;
        letter-spacing: 0.12em;
        color: #162637;
        margin: 0;
    }

    .ce-lr__swiper-wrap {
        overflow: hidden;
        position: relative;
        border-top: 1px solid #d0d0d0;
        border-bottom: 1px solid #d0d0d0;
    }

    .ce-lr__track {
        display: flex;
        align-items: center;
        width: max-content;
        animation: lr-scroll 30s linear infinite;

        &:hover { animation-play-state: paused; }

        @media (prefers-reduced-motion: reduce) {
            animation: none;
            flex-wrap: wrap;
            justify-content: center;
            width: 100%;
        }
    }

    .ce-lr__logo {
        flex-shrink: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 24px 40px;
        position: relative;

        &::after {
            content: '';
            position: absolute;
            right: 0;
            bottom: 0;
            width: 1px;
            height: 50%;
            background: #d0d0d0;
        }

        img {
            height: 56px;
            width: auto;
            max-width: 150px;
            object-fit: contain;
            filter: grayscale(100%);
            opacity: 0.7;
            transition: filter 0.3s, opacity 0.3s;

            &:hover {
                filter: grayscale(0%);
                opacity: 1;
            }
        }
    }
}

@keyframes lr-scroll {
    from { transform: translateX(0); }
    to   { transform: translateX(-50%); }
}
