/* Verified reference carousel: two opposing rows; no third-party animation library. */
.jf-store .jf-brand-carousel {
    display: grid;
    gap: 24px;
    width: 100%;
    margin: 16px 0 0;
    padding: 0;
    overflow: hidden;
    background: #fff;
}
.jf-store .jf-brand-carousel-row {
    position: relative;
    width: 100%;
    height: 80px;
    overflow: hidden;
    touch-action: pan-y;
    user-select: none;
    -webkit-user-select: none;
}
.jf-store .jf-brand-carousel-row-2 { height: 96px; }
.jf-store .jf-brand-carousel-row:focus-visible { outline: 2px solid var(--jf-purple, #542355); outline-offset: -2px; }
.jf-store .jf-brand-carousel-track,
.jf-store .jf-brand-carousel-group {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    width: max-content;
    height: 100%;
    margin: 0;
    padding: 0;
    gap: 0;
}
.jf-store .jf-brand-carousel-group { flex: 0 0 auto; }
.jf-store .jf-brand-carousel-track { will-change: transform; }
.jf-store .jf-brand-carousel-link {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 192px;
    width: 192px;
    height: 80px;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    -webkit-user-drag: none;
}
.jf-store .jf-brand-carousel-row-2 .jf-brand-carousel-link { height: 96px; margin-inline: 16px; }
.jf-store .jf-brand-carousel-link img {
    display: block;
    flex: 0 0 auto;
    width: 192px;
    height: 80px;
    max-width: none;
    max-height: none;
    margin: 0;
    padding: 0;
    object-fit: contain;
    -webkit-user-drag: none;
}
.jf-store .jf-brand-carousel-row-2 .jf-brand-carousel-link img { height: 96px; }
.jf-store .jf-brand-carousel-link:focus-visible { outline-offset: -4px; }
.jf-store .jf-brand-carousel-row.is-dragging,
.jf-store .jf-brand-carousel-row.is-dragging a { cursor: grabbing; }
body.jf-reduce-motion .jf-brand-carousel-track { will-change: auto; }
/* Without JavaScript the same logos remain available through native horizontal scrolling. */
.jf-store .jf-brand-carousel-row:not(.is-enhanced) { overflow-x: auto; scrollbar-width: none; }
.jf-store .jf-brand-carousel-row:not(.is-enhanced)::-webkit-scrollbar { display: none; }
.jf-store .jf-brand-carousel-row:not(.is-enhanced) [aria-hidden="true"] { display: none; }
@media (min-width: 640px) and (max-width: 767px) {
    .jf-store .jf-brand-carousel-row-2 .jf-brand-carousel-link { margin-inline: 8px; }
}
@media (max-width: 639px) {
    .jf-store .jf-brand-carousel { gap: 12px; margin-top: 8px; }
    .jf-store .jf-brand-carousel-row { height: 48px; }
    .jf-store .jf-brand-carousel-row-2 { height: 56px; }
    .jf-store .jf-brand-carousel-link { flex-basis: 128px; width: 128px; height: 48px; }
    .jf-store .jf-brand-carousel-link img { width: 128px; height: 48px; }
    .jf-store .jf-brand-carousel-row-2 .jf-brand-carousel-link { height: 56px; margin-inline: 4px; }
    .jf-store .jf-brand-carousel-row-2 .jf-brand-carousel-link img { height: 56px; }
}
@media (prefers-reduced-motion: reduce) {
    .jf-store .jf-brand-carousel-track { will-change: auto; }
}
