/* Native horizontal lists; usable by touch and keyboard even without JavaScript. */
.content-carousel { padding-bottom: 0; min-width: 0; }
.carousel-track {
    --carousel-columns: 1;
    --carousel-gap: 24px;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - (var(--carousel-columns) - 1) * var(--carousel-gap)) / var(--carousel-columns));
    gap: var(--carousel-gap);
    position: relative;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
    scrollbar-color: #ffcf59 #243240;
    padding: 8px 0 16px;
}
.carousel-track > .item {
    min-width: 0;
    scroll-snap-align: start;
    overflow-wrap: break-word;
    hyphens: auto;
}
.carousel-track .item img { width: auto; max-width: 100%; }
.carousel-track:focus-visible { outline: 2px solid #ffcf59; outline-offset: 5px; }
.carousel-track a:focus-visible { outline-offset: 0; }
.content-carousel .navs {
    position: static;
    display: flex;
    align-items: center;
    gap: 12px;
    height: auto;
    margin: 16px 0 0;
    font-size: 14px;
}
.content-carousel .navs[hidden] { display: none; }
.content-carousel .navs::before { display: none; }
.carousel-status { margin-right: auto; color: #ffcf59; font-variant-numeric: tabular-nums; }
.content-carousel .navs .prev,
.content-carousel .navs .next {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    line-height: 1;
}
.content-carousel .navs button[aria-disabled="true"] { opacity: .4; cursor: default; }
@media (min-width: 480px) {
    #clients-carousel { --carousel-columns: 2; }
}
@media (min-width: 720px) {
    .carousel-track { --carousel-columns: 2; --carousel-gap: 40px; }
    #clients-carousel { --carousel-columns: 3; }
}
@media (prefers-reduced-motion: reduce) {
    .content-carousel .navs button { transition: none; }
}
