.woocommerce #main-content ul.products {
    list-style: none;
    clear: both;
    display: flex;
    flex-wrap: wrap;
    gap: 20px 15px;
    justify-content: space-between;
    margin-bottom: 30px;
}

.woocommerce #main-content ul.products:after {
    display: none;
}

.woocommerce #main-content ul.products li {
    min-height: auto;
    padding-bottom: 80px;
    flex: 0 0 calc(33% - 15px);
    width: 100%;
    max-width: calc(33% - 15px);
    margin: 0;
}

.woocommerce #main-content ul.products li .product-wrapper .catalog-product-gallery-container img {
    display: block;
    max-height: 230px;
    width: auto;
    object-fit: cover;
    aspect-ratio: 1;
}

.woocommerce #main-content ul.products li h3, .archive.woocommerce #main-content ul.products li h2.woocommerce-loop-product__title {
    height: auto;
}

main#main-content > .products-container ul.products > li.product .excerpt-wrapper {
    max-height: max-content;
}

.woocommerce #main-content .item-content-box .price-wrapper {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    position: absolute;
    bottom: 70px;
    width: calc(100% - 20px);
    left: 10px;
}

.woocommerce #main-content .item-content-box .price-wrapper ins:not([aria-hidden="true"]) {
    font-size: 16px;
    text-align: center;
}

.woocommerce .item-content-box .product-block-bottom {
    bottom: 10px;
    position: absolute;
}


@media screen and (max-width: 991px) {

    .woocommerce #main-content ul.products li {
        max-width: calc(50% - 15px);
        flex: 0 0 calc(50% - 15px);
    }
}

@media screen and (max-width: 640px) {
    .woocommerce #main-content ul.products {
        flex-direction: column;
    }
    
    .woocommerce #main-content ul.products li {
        max-width: calc(100% - 15px);
        flex: 0 0 calc(100% - 15px);
    }
}