.elc-wrapper {
    position: relative;
    width: 100%;
    overflow: hidden;
    padding: 20px 0;
}

.elc-track {
    display: flex;
    align-items: center;
    gap: 24px;
    width: max-content;
    will-change: transform;
    animation-name: elc-scroll-left;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-duration: 28s;
}

.elc-wrapper[data-direction="right"] .elc-track {
    animation-name: elc-scroll-right;
}

.elc-item {
    width: 150px;
    height: 70px;
    flex: 0 0 auto;
}

.elc-item__inner {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: #ffffff;
    transition: transform 0.24s ease;
}

.elc-item__inner:hover {
    transform: translateY(-2px);
}

.elc-item img {
    display: block;
    width: var(--elc-item-media-size, 110px);
    height: auto;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.elc-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.elc-item i {
    font-size: var(--elc-item-media-size, 110px);
    line-height: 1;
}

.elc-item svg {
    width: var(--elc-item-media-size, 110px);
    height: auto;
    max-width: 100%;
    max-height: 100%;
}

.elc-wrapper[data-pause-hover="true"] .elc-track:hover {
    animation-play-state: paused;
}

@keyframes elc-scroll-left {
    from {
        transform: translate3d(0, 0, 0);
    }
    to {
        transform: translate3d(-50%, 0, 0);
    }
}

@keyframes elc-scroll-right {
    from {
        transform: translate3d(-50%, 0, 0);
    }
    to {
        transform: translate3d(0, 0, 0);
    }
}
