.nemc-logos {
    --nemc-logo-width: 160px;
    --nemc-logo-height: 80px;
    --nemc-logo-gap: 48px;
    --nemc-logo-padding: 24px;
    --nemc-logo-duration: 35s;
    position: relative;
    width: 100%;
    min-width: 0;
    padding-block: var(--nemc-logo-padding);
}
.nemc-logos[data-full-width="true"] {
    width: var(--nemc-logo-viewport, 100%);
    margin-left: var(--nemc-logo-offset, 0px);
}
.nemc-logos__viewport { overflow: hidden; direction: ltr; }
.nemc-logos__track {
    display: flex;
    width: max-content;
    animation: nemc-logo-slide var(--nemc-logo-duration) linear infinite;
}
.nemc-logos__group {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: space-around;
    gap: var(--nemc-logo-gap);
    min-width: var(--nemc-logo-viewport, 100vw);
    padding-inline: calc(var(--nemc-logo-gap) / 2);
    box-sizing: border-box;
}
.nemc-logos__item { flex: 0 0 var(--nemc-logo-width); width: var(--nemc-logo-width); }
.nemc-logos__item a { display: block; border-radius: 2px; }
.nemc-logos__item a:focus-visible { outline: 2px solid currentColor; outline-offset: -2px; }
.nemc-logos .nemc-logos__item img { display: block; width: 100%; height: var(--nemc-logo-height); object-fit: contain; }
.nemc-logos[data-direction="right"] .nemc-logos__track { animation-direction: reverse; }
.nemc-logos[data-pause-hover="true"]:hover .nemc-logos__track,
.nemc-logos:focus-within .nemc-logos__track { animation-play-state: paused; }
/* Show the original row in normal flow while keyboard users navigate its links. */
.nemc-logos__viewport:focus-within { overflow-x: auto; }
.nemc-logos__viewport:focus-within .nemc-logos__track { animation: none; }
.nemc-logos__viewport:focus-within .nemc-logos__group[aria-hidden] { display: none; }
@keyframes nemc-logo-slide { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) {
    .nemc-logos__track { animation: none; width: 100%; }
    .nemc-logos__group { flex-wrap: wrap; width: 100%; min-width: 0; row-gap: 24px; }
    .nemc-logos__item { max-width: 100%; }
    .nemc-logos__group[aria-hidden] { display: none; }
}
