.image.product-preview {
    position: relative;
    /* Reserve the same indicator row for single-photo and multiple-photo cards. */
    margin-bottom: 21px;
}
.product-preview .product-preview-link,
.product-preview .product-preview-link picture {
    display: block;
    height: 100%;
}
.product-preview .product-preview-link {
    -webkit-user-drag: none;
}
.product-preview.is-ready .product-preview-link {
    touch-action: pan-y pinch-zoom;
    user-select: none;
    -webkit-user-select: none;
}
.image.product-preview .product-preview-link img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.product-preview [hidden] {
    display: none !important;
}
.product-preview .product-preview-dot {
    appearance: none;
    padding: 0;
    border: 0;
    cursor: pointer;
    box-shadow: none;
}
.product-preview .product-preview-dots {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    display: flex;
    justify-content: safe center;
    overflow-x: auto;
    scrollbar-width: none;
    height: 18px;
    z-index: 2;
}
.product-preview .product-preview-dots::-webkit-scrollbar { display: none; }
.product-preview .product-preview-dot {
    flex: 0 0 18px;
    height: 18px;
    background: transparent;
    border-radius: 4px;
}
.product-preview .product-preview-dot::after {
    content: '';
    display: block;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #c9cbd0;
    margin: auto;
}
.product-preview .product-preview-dot[aria-pressed="true"]::after {
    background: #f0291a;
}
.product-preview button:focus-visible,
.product-preview .product-preview-link:focus-visible {
    outline: 2px solid #f0291a;
    outline-offset: 1px;
}
.product-preview .product-preview-status {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
}
@media (max-width: 768px) {
    .image.product-preview { margin-bottom: 21px; }
    .product-preview .product-preview-link picture { aspect-ratio: 7 / 6; }
}
