.acc-logo-scroll {
    --acc-ls-visible: 5;
    --acc-ls-gap: 24px;
    --acc-ls-height: 100px;
    --acc-ls-fit: contain;
    --acc-ls-max-width: 300px;
    --acc-ls-padding: 12px;
    --acc-ls-radius: 0px;
    --acc-ls-duration: 30s;
    --acc-ls-grayscale: 0;
    position: relative;
    min-width: 0;
}
.acc-logo-scroll__viewport { overflow-x: auto; }
.acc-logo-scroll__track { display: flex; width: max-content; direction: ltr; }
.acc-logo-scroll__group {
    display: flex;
    flex: 0 0 auto;
    gap: var(--acc-ls-gap);
    padding-right: var(--acc-ls-gap);
}
.acc-logo-scroll__item {
    flex: 0 0 var(--acc-ls-item-width, 160px);
    width: var(--acc-ls-item-width, 160px);
    height: var(--acc-ls-height);
    padding: var(--acc-ls-padding);
    border-radius: var(--acc-ls-radius);
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
}
.acc-logo-scroll__item a { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }
.acc-logo-scroll__item img {
    display: block;
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
    max-width: 100%;
    max-height: 100%;
    object-fit: var(--acc-ls-fit);
    object-position: center;
    filter: grayscale(var(--acc-ls-grayscale));
    transition: filter .2s;
}
.acc-logo-scroll__item:hover img,
.acc-logo-scroll__item:focus-within img { filter: grayscale(0); }
.acc-logo-scroll[data-width-mode="auto"] .acc-logo-scroll__item {
    flex: 0 0 auto;
    width: auto;
}
.acc-logo-scroll[data-width-mode="auto"] .acc-logo-scroll__item a { width: auto; }
.acc-logo-scroll[data-width-mode="auto"] .acc-logo-scroll__item img {
    width: auto;
    max-width: var(--acc-ls-max-width);
}
.acc-logo-scroll.is-ready .acc-logo-scroll__viewport { overflow: hidden; }
.acc-logo-scroll.is-ready .acc-logo-scroll__track {
    animation: acc-logo-scroll-loop var(--acc-ls-duration) linear infinite;
}
.acc-logo-scroll[data-direction="right"] .acc-logo-scroll__track { animation-direction: reverse; }
@keyframes acc-logo-scroll-loop {
    from { transform: translateX(0); }
    to { transform: translateX(calc(-1 * var(--acc-ls-distance))); }
}
@media (prefers-reduced-motion: reduce) {
    .acc-logo-scroll.is-ready .acc-logo-scroll__viewport { overflow-x: auto; }
    .acc-logo-scroll.is-ready .acc-logo-scroll__track { animation: none; }
    .acc-logo-scroll [data-clone] { display: none; }
}
