[data-products][data-hover="swap"] > li.product figure .ct-media-container.fp-card-photo-scroll {
    display: flex !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
}

.fp-card-photo-scroll::-webkit-scrollbar {
    display: none;
}

[data-products][data-hover="swap"] .fp-card-photo-scroll > img {
    flex: 0 0 100%;
    min-width: 0;
    scroll-snap-align: start;
}

[data-products][data-hover="swap"] .fp-card-photo-scroll > img.ct-swap {
    position: static;
    opacity: 1;
    transition: none;
}

.fp-card-photo-scroll > img.ct-swap + img {
    order: -1;
}

[data-products][data-hover="swap"] > li.product figure:has(> .fp-card-photo-dots) {
    margin-bottom: 14px;
}

.fp-card-photo-dots {
    display: flex;
    justify-content: center;
    margin-top: 6px;
}

.fp-card-photo-dots > .fp-card-photo-dot {
    display: grid;
    place-items: center;
    width: 24px;
    height: 24px;
    min-width: 0;
    min-height: 0;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}

.fp-card-photo-dot::before {
    content: "";
    width: 7px;
    height: 7px;
    box-sizing: border-box;
    border: 1px solid #828d97;
    border-radius: 50%;
}

.fp-card-photo-dot[aria-current="true"]::before {
    width: 8px;
    height: 8px;
    border: 0;
    background: var(--theme-palette-color-1, #02a1e6);
}

.fp-card-photo-dot:focus-visible {
    outline: 2px solid var(--theme-palette-color-1, #009fe3);
    outline-offset: -3px;
}

@media (prefers-reduced-motion: reduce) {
    [data-products][data-hover="swap"] > li.product figure .ct-media-container.fp-card-photo-scroll {
        scroll-behavior: auto;
    }
}
