@media (min-width:782px) and (max-width:1023px) {
    .wc-block-product-template:is(.columns-3,.columns-4,.columns-5,.columns-6) {
        grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    }
}


.wc-block-product-template,
.block-editor-block-list__block {
    &.products-block-post-template,
    &.wp-block-woocommerce-product-template,
    .cross-sells-product {
        font-size: 30px;
        .woocommerce-loop-product__link,
        .wc-block-grid__product-link {
            display: inline-flex;
            width: 100%;
            flex-direction: column;
        }

        .wc-block-grid__product-image a {
            width: 100%;
        }

        .wp-block-post-title {
            font-size: 16px;
            text-align: left !important;
            overflow: hidden;
            display: -webkit-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 2;
            margin-bottom: 8px;
            margin-top: 0;
            font-weight: 500 !important;
            line-height: 1.5;
            font-family: var(--wp--preset--font-family--plus-jakartaSans);
        }

        .wc-block-components-product-rating__container {
            line-height: 1;
            font-size: 16px;
        }

        .product-image,
        .product-category-image,
        .wc-block-grid__product-link .wc-block-grid__product-image,
        .wc-block-grid__product-image a,
        .wc-block-components-product-image a,
        .wp-block-cart-cross-sells-product__product-image {     
            position: relative;
            display: flex;

            img {
                aspect-ratio: 4/6;
                object-fit: cover;
                border-radius: clamp(0.5rem, 0.5rem + ((1vw - 0.48rem) * 0.24), 0.5rem);
                width: 100%;

                @media (min-width:1200px) {
                    height: 352px;
                }

                @media (min-width:768px) {
                    aspect-ratio: 4/5;
                }
            }
        }

        .wc-block-grid__product-image,
        .product-image,
        .wp-block-cart-cross-sells-product__product-image  {
            margin-bottom: 12px;
            display: flex;
            background-color: var(--wp--preset--color--gray-100);
            border-radius: clamp(0.875rem, 0.875rem + ((1vw - 0.48rem) * 0.24), 1rem);
            
            @media (min-width:1200px) {
                height: 352px;
            }
        }

        .wc-block-components-product-sale-badge {
            padding: 3px 9px;
            display: none;
            place-items: center;
            background-color: transparent;
            color: var(--wp--preset--color--secondary);
            border: 1px solid var(--wp--preset--color--secondary);
            font-size: 12px;
            left: 20px;
            top: 20px;
            right: auto;
            font-weight: 500;
            position: absolute;
            text-transform: capitalize;
            z-index: 1;
            line-height: 12px;
            border-radius: 20px;

            @media (min-width:600px) {
                display: flex;
            }

            &.alignright {
                right: 20px;
                left: auto;
                top: 20px;
            }
            &.alignleft {
                left: 20px;
                top: 20px;
            }
        }

        .price,
        .wc-block-components-product-price,
        .wp-block-cart-cross-sells-product__product-price {
            display: flex;
            flex-wrap: wrap;
            column-gap: 10px;
            color: var(--wp--preset--color--primary);
            margin-bottom: 14px;
            font-weight: 800;
            align-items: center;
            font-size: clamp(14px, 0.875rem + (1vw - 0.48rem) * 0.24, 0.875rem) !important;
            line-height: 26px;

            del  {
                font-weight: 500;
                color: var(--wp--preset--color--text-main);
            }

            ins {
                text-decoration: none;
            }
        }
    
        .product {
            display: flex;
            flex-direction: column;
            transition: .3s ease-in-out;
            position: relative;
            border-width: 0;

            &::after {
                content: "";
                position: absolute;
                height: 20px;
                display: block;
                width: 100%;
                top: 100%;
            }

            .wc-block-components-product-button {
                position: relative;
                margin-bottom: 0;
            } 
        
            > .button,
            > .wc-block-grid__product-add-to-cart .wp-element-button,
            > .wc-block-grid__product-add-to-cart .added_to_cart,
            > .wc-block-components-product-button .added_to_cart,
            > .wc-block-components-product-button .add_to_cart_button,
            > .wc-block-components-product-button a.wp-element-button,
            > .added_to_cart {
                margin-top: 10px;
                width: 100%;

                @media (max-width:1199px) {
                    display: none;
                    font-size: 1em;
                    padding: 0.5em 1em;
                    text-align: center;
                }

                @media (min-width:1200px) {
                    width: auto;
                    margin-bottom: 0;
                    margin-top: 0;
                    position: relative;
                    align-items: center;
                    justify-content: center;
                    gap: 8px;
                    font-size: 14px !important;
                    background-color: var(--wp--preset--color--white);
                    color: var(--wp--preset--color--primary);
                    flex-flow: row-reverse;
                    padding: 13px 30px;
                    border-radius: 120px;
                    box-shadow: none;/*0 0 4px 0 rgba(32, 55, 55, 0.07);*/
                    transition: .3s ease-in-out;
                    text-align: center;
                    border-width:0;
                    display: none;

                    &:is(:hover,:focus) {
                        background-color: var(--wp--preset--color--primary);
                        text-indent: 0;
                        color: var(--wp--preset--color--white);
                        padding: 13px 30px;
                        z-index: 1;
                        transition: all .1s ease-in-out 0s;
                    }
                }
            }

            &:hover,
            &:focus {
                > .button,
                > .wc-block-grid__product-add-to-cart .wp-element-button,
                > .wc-block-grid__product-add-to-cart .added_to_cart,
                > .added_to_cart {
                    @media (min-width:1200px) {
                        position: absolute;
                        z-index: 2;
                        transition: .3s ease-in-out;
                        width: calc(100% - 20px);
                        top: 317px;
                        left: 50%;
                        transform: translate(-50%, -50%);
                        height: inherit;
                        display: block;
                        animation: fadeIn .2s;
                        animation-fill-mode: forwards;
                    }
                }

                .woocommerce-loop-product__title,
                .woocommerce-loop-category__title,
                .wc-block-grid__product-title,
                .wp-block-post-title {
                    &,a {
                        color: var(--wp--preset--color--primary);
                        text-decoration: underline;
                        text-underline-offset: 4px;
                    }
                }

                >.wc-block-components-product-button .added_to_cart {
                    position: absolute;
                    z-index: 2;
                    transition: .3s ease-in-out;
                    top: 25px;
                    left: 50%;
                    transform: translate(-50%, -50%);
                    height: 50px;
                    animation: fadeIn .2s;
                    animation-fill-mode: forwards;
                }

                .wc-block-components-product-button {
                    position: absolute;
                    width: calc(100% - 20px);
                    top: 295px;
                    left: 5%;
                    .add_to_cart_button,
                    .added_to_cart,
                    a.wp-block-button__link {
                        display: block;
                        width: 100%;
                    }
                }
            }

            .price,
            .wc-block-components-product-price {
                margin-bottom: 0;
                width: calc(100% - 34px);
            }

            .wc-block-grid__product-add-to-cart > .added_to_cart,
            > .wc-block-components-product-button .added_to_cart,
            > .added_to_cart,
            > .wp-block-cart-cross-sells-product__product-add-to-cart {
                background-color: var(--wp--preset--color--white);
                color: var(--wp--preset--color--primary);
                font-weight: 600;
                font-size: 14px;

                &:is(:hover,:focus) {
                    background-color: var(--wp--preset--color--primary);
                    color: var(--wp--preset--color--white);
                }
            }

            .wc-block-grid__product-add-to-cart,
            .wc-block-grid__product-rating {
                margin: 0;
            }

            .wc-block-grid__product-price {
                margin-right: 0;
                margin-left: 0;
            }

            div[data-block-name="woocommerce/product-button"] > button.added,
            > .button.added,
            > .wc-block-grid__product-add-to-cart:not(.wc-block-components-product-button) .wp-element-button.added {
                display: none;
            }
        }
    }
}