/* Logo-only strip, shared by Home and About. */
body.sibo-site .sibo-partner-carousel {
    --sibo-partner-cell: clamp(156px, 17vw, 224px);
    margin: 0;
    padding: 30px 0;
    background: var(--sibo-surface, #111518);
}
body.sibo-site .sibo-partner-carousel-viewport {
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    overscroll-behavior-x: contain;
}
body.sibo-site .sibo-partner-carousel-viewport::-webkit-scrollbar { display: none; }
body.sibo-site .sibo-partner-carousel-viewport:focus-visible {
    outline: 2px solid var(--sibo-accent, #21c4b8);
    outline-offset: 4px;
}
body.sibo-site .sibo-partner-carousel-track {
    display: flex;
    width: max-content;
    align-items: center;
}
body.sibo-site .sibo-partner-carousel-list {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
}
body.sibo-site .sibo-partner-carousel-item {
    display: flex;
    flex: 0 0 var(--sibo-partner-cell);
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: var(--sibo-partner-cell);
    height: 96px;
    margin: 0;
    padding: 8px 20px;
}
body.sibo-site .sibo-partner-carousel-logo {
    display: block;
    flex: 0 1 auto;
    box-sizing: border-box;
    width: 176px;
    height: 80px;
    max-width: 100%;
    max-height: 80px;
    padding: 12px 16px;
    border-radius: 6px;
    background: #fff;
    object-fit: contain;
    opacity: 1;
    filter: none;
}
body.sibo-site .sibo-partner-carousel.is-ready .sibo-partner-carousel-viewport { overflow: hidden; }
body.sibo-site .sibo-partner-carousel.is-ready .sibo-partner-carousel-track {
    animation: sibo-partner-drift var(--sibo-partner-duration, 36s) linear infinite;
    will-change: transform;
}
body.sibo-site .sibo-partner-carousel:is(:hover, :focus-within, .is-paused) .sibo-partner-carousel-track {
    animation-play-state: paused;
}
@keyframes sibo-partner-drift {
    from { transform: translate3d(0, 0, 0); }
    to { transform: translate3d(calc(-1 * var(--sibo-partner-distance)), 0, 0); }
}
@media (max-width: 600px) {
    body.sibo-site .sibo-partner-carousel { --sibo-partner-cell: 152px; padding-block: 22px; }
    body.sibo-site .sibo-partner-carousel-item { height: 80px; padding-inline: 12px; }
    body.sibo-site .sibo-partner-carousel-logo { width: 128px; height: 64px; max-width: 100%; max-height: 64px; padding: 10px 12px; }
}
@media (prefers-reduced-motion: reduce) {
    body.sibo-site .sibo-partner-carousel.is-ready .sibo-partner-carousel-track { animation: none; will-change: auto; }
    body.sibo-site .sibo-partner-carousel.is-ready .sibo-partner-carousel-viewport { overflow-x: auto; }
    body.sibo-site .sibo-partner-carousel [data-partner-copy] { display: none; }
}
