.photos {
    position: relative;
    height: 15rem;
}

.photos .photo {
    width: auto;
    max-width: 100%;

    flex: none;!important;
    /* или */
    flex-shrink: 0!important;
    flex-basis: auto!important;

    border-radius: .5rem;
    background-color: var(--bs-secondary-background);
    background-size: cover;
    background-position: center;
}

.photos .photo.on-progress {
    background-image: url("/cdn/img/loader.svg");
    background-repeat: no-repeat;
    background-size: 8%;
}




.photos .photo img {
    display: block;
    width: auto;
    max-width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    background-size: cover;
    border-radius: .5rem;
    vertical-align: middle;
    cursor: zoom-in;
    -webkit-backface-visibility: hidden;
}

.photos .swiper-slide {
    display: flex;
    align-items: center;
    justify-content: center;
    /*flex: 0 0 auto;*/
    flex: 0 1 auto;
    flex-basis: 100%;
    width: auto !important;
    min-width: 0;
    max-width: 100%;
    height: 15rem;
    overflow: hidden;

    flex-shrink: 0 !important;
    min-width: 1px; /* Альтернатива min-width: 0 для Safari */
    -webkit-transform: translateZ(0);
    -webkit-backface-visibility: hidden;
}

.product-properties {
    line-height: 1.6rem;
    font-size: .9rem;
}



.card-product .photo{
    height: 3rem;
    width: 3rem;
    min-width: 3rem;
    min-height: 3rem;
    line-height: 3rem;
    border-radius: .2rem;
    overflow: hidden;
    background-image: url("/cdn/img/no-photo.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 140%;
    background-color: var(--bs-secondary-background);
}

.card-product .photo img {
    margin: 0;
    padding: 0;
    border: 0;
    color: transparent;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    vertical-align: middle;
}

.products-grid {
    width: 7rem;
}
.products-grid .product .product-thumb {
    user-select: none;
    width: 7rem;
    height: 7rem;
    min-width: 7rem;
    min-height: 7rem;
    background-color: var(--bs-secondary-background);
    border-radius: var(--bs-border-radius);
    margin-bottom: .8rem;
}

.products-grid .product .product-thumb img {
    color: transparent;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    vertical-align: middle;
    border-radius: var(--bs-border-radius);
}