/**
 * Storefront product card cover images — uniform size and crop everywhere.
 */
.rbt-product-card:not(.rbt-list-view-variation) .rbt-card-img {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: #f3f4f6;
}

.rbt-product-card:not(.rbt-list-view-variation) .rbt-card-img > a {
    display: block;
    width: 100%;
    height: 100%;
}

.rbt-product-card .rbt-card-img .rbt-prd-img,
.rbt-product-card .rbt-card-img .rbt-hover-img,
.rbt-product-card .rbt-card-img img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

.rbt-product-card .rbt-card-img.rbt-has-hover-img .rbt-hover-img,
.rbt-product-card .rbt-card-img.rbt-has-hover-video .rbt-hover-video {
    width: 100%;
    height: 100%;
}

.rbt-product-card .rbt-card-img.rbt-has-hover-video .rbt-hover-video {
    object-fit: cover;
    object-position: center center;
}

.rbt-product-card.rbt-list-view-variation .rbt-card-img {
    overflow: hidden;
    flex-shrink: 0;
}

.rbt-product-card.rbt-list-view-variation.rbt-list-view-sm .rbt-card-img {
    aspect-ratio: 1 / 1;
}

.rbt-product-card.rbt-list-view-variation .rbt-card-img > a {
    display: block;
    width: 100%;
    height: 100%;
}

.catalog-grid[data-layout="list"] .catalog-card .rbt-card-img {
    aspect-ratio: 1 / 1;
}
