/* =====================================
   TENETS WOOCOMMERCE SHOP CSS
===================================== */


/* MAIN SHOP CONTAINER */

.woocommerce-page .site-main,
.woocommerce-page .content-area{

    padding-left:30px;
    padding-right:30px;

}



/* =====================================
   PRODUCT GRID
===================================== */


.woocommerce ul.products,
.woocommerce-page ul.products{

    display:grid !important;

    grid-template-columns:repeat(4,1fr) !important;

    gap:25px !important;

    margin:0 !important;

    padding:0 !important;

}



.woocommerce ul.products::before,
.woocommerce ul.products::after{

    display:none !important;

}




/* PRODUCT CARD */

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{


    width:100% !important;

    margin:0 !important;

    padding:0 !important;

    float:none !important;

    clear:none !important;

    text-align:center;

    background:transparent !important;

    border:none !important;


}



/* IMAGE */


.woocommerce ul.products li.product img{


    width:100% !important;

    height:230px !important;

    object-fit:contain !important;

    margin:0 !important;


}



/* TITLE */


.woocommerce ul.products li.product .woocommerce-loop-product__title{


    color:#222 !important;

    font-size:17px !important;

    font-weight:700;

    line-height:1.4;

    min-height:45px;

    display:-webkit-box;

    -webkit-line-clamp:2;

    -webkit-box-orient:vertical;

    overflow:hidden;

    margin:10px 0 !important;


}



/* PRICE */


.woocommerce ul.products li.product .price{


    color:#0a8f55 !important;

    font-size:18px !important;

    font-weight:700;

}



/* BUTTON */


.woocommerce ul.products li.product .button{


    display:inline-flex !important;

    align-items:center;

    justify-content:center;


    background:#0d6efd !important;

    color:#fff !important;


    border-radius:30px !important;

    padding:10px 25px !important;

    margin-top:10px !important;


}



.woocommerce ul.products li.product .button:hover{


    background:#0a8f55 !important;

}





/* =====================================
   PRODUCT CATEGORY PAGE
===================================== */


.woocommerce ul.products li.product-category{


    text-align:center;

}



.woocommerce ul.products li.product-category img{


    height:220px !important;

    object-fit:contain !important;

}



.woocommerce ul.products li.product-category h2{


    color:#222 !important;

    font-size:18px !important;

    font-weight:700;

}





/* =====================================
   TABLET
===================================== */


@media(max-width:1024px){


.woocommerce ul.products,
.woocommerce-page ul.products{


    grid-template-columns:repeat(3,1fr) !important;


}


}




/* =====================================
   MOBILE
===================================== */


@media(max-width:768px){


.woocommerce-page .site-main,
.woocommerce-page .content-area{

    padding-left:10px;

    padding-right:10px;

}



.woocommerce ul.products,
.woocommerce-page ul.products{


    grid-template-columns:repeat(2,1fr) !important;

    gap:10px !important;


}




.woocommerce ul.products li.product img{


    height:auto !important;

    aspect-ratio:1/1;


}



.woocommerce ul.products li.product .woocommerce-loop-product__title{


    font-size:14px !important;

    text-align:left;

    min-height:40px;


}



.woocommerce ul.products li.product .price{


    font-size:15px !important;

    text-align:left;


}



.woocommerce ul.products li.product .button{


    width:100% !important;

    height:34px;

    padding:5px !important;

    font-size:12px;


}


}

/* =====================================
   SHOP PAGE PRODUCT TITLE - 2 LINES
===================================== */


/* Product title fixed 2 line height */

.woocommerce-shop ul.products li.product .woocommerce-loop-product__title,
.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title{


    font-size:17px !important;

    line-height:1.4 !important;

    min-height:48px !important;

    height:48px !important;

    margin:10px 0 !important;

    color:#222 !important;

    font-weight:700 !important;


    display:-webkit-box !important;

    -webkit-line-clamp:2 !important;

    -webkit-box-orient:vertical !important;

    overflow:hidden !important;

}



/* Mobile shop title */

@media(max-width:768px){


.woocommerce-shop ul.products li.product .woocommerce-loop-product__title,
.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title{


    font-size:14px !important;

    line-height:18px !important;

    height:36px !important;

    min-height:36px !important;

    text-align:left !important;

    padding:0 5px !important;


}


}


/* =====================================
   TENETS CATEGORY ARCHIVE PAGE FIX
   SAME STYLE AS HOMEPAGE GRID
===================================== */


/* Main Woo category/archive container */

.woocommerce.archive .site-main,
.tax-product_cat .site-main{

    max-width:1400px !important;

    margin:auto !important;

    padding-left:40px !important;

    padding-right:40px !important;

}


/* Remove large category image/banner */

.tax-product_cat .woocommerce-products-header img,
.tax-product_cat .term-description img{

    display:none !important;

}



/* Category title */

.tax-product_cat .woocommerce-products-header{

    text-align:center;

    margin-bottom:35px;

}



.tax-product_cat .woocommerce-products-header h1{

    color:#0a8f55 !important;

    font-size:36px !important;

    font-weight:700 !important;

}





/* Product grid */

.tax-product_cat ul.products,
.woocommerce.archive ul.products{


    display:grid !important;

    grid-template-columns:repeat(4,1fr) !important;

    gap:25px !important;

    margin:0 !important;

    padding:0 !important;


}




/* Product card */

.tax-product_cat ul.products li.product,
.woocommerce.archive ul.products li.product{


    width:100% !important;

    margin:0 !important;

    padding:0 !important;

    float:none !important;

    clear:none !important;

    text-align:center;

    background:transparent !important;

}




/* Product image */

.tax-product_cat ul.products li.product img,
.woocommerce.archive ul.products li.product img{


    width:100% !important;

    height:230px !important;

    object-fit:contain !important;

}



/* Product name 2 lines */

.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
.woocommerce.archive ul.products li.product .woocommerce-loop-product__title{


    font-size:17px !important;

    font-weight:700 !important;

    line-height:1.4 !important;

    color:#222 !important;


    height:48px !important;

    min-height:48px !important;


    margin:10px 0 !important;


    display:-webkit-box !important;

    -webkit-line-clamp:2 !important;

    -webkit-box-orient:vertical !important;

    overflow:hidden !important;


}



/* Price */

.tax-product_cat ul.products li.product .price,
.woocommerce.archive ul.products li.product .price{


    color:#0a8f55 !important;

    font-size:18px !important;

    font-weight:700 !important;

}



/* Add to cart button */

.tax-product_cat ul.products li.product .button,
.woocommerce.archive ul.products li.product .button{


    display:inline-flex !important;

    width:auto !important;

    padding:10px 25px !important;

    background:#0d6efd !important;

    color:#fff !important;

    border-radius:30px !important;

    justify-content:center;

}



.tax-product_cat ul.products li.product .button:hover,
.woocommerce.archive ul.products li.product .button:hover{


    background:#0a8f55 !important;

}



/* =====================================
   MOBILE CATEGORY PAGE
===================================== */


@media(max-width:768px){


.woocommerce.archive .site-main,
.tax-product_cat .site-main{


    padding-left:8px !important;

    padding-right:8px !important;

}



.tax-product_cat ul.products,
.woocommerce.archive ul.products{


    grid-template-columns:repeat(2,1fr) !important;

    gap:8px !important;


}



.tax-product_cat ul.products li.product img,
.woocommerce.archive ul.products li.product img{


    height:auto !important;

    aspect-ratio:1/1;

}



.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
.woocommerce.archive ul.products li.product .woocommerce-loop-product__title{


    font-size:14px !important;

    height:38px !important;

    min-height:38px !important;

    text-align:left !important;

    padding:0 5px !important;


}



.tax-product_cat ul.products li.product .button,
.woocommerce.archive ul.products li.product .button{


    width:100% !important;

    height:34px !important;

    padding:6px 10px !important;

    font-size:12px !important;


}



}

/* =====================================
   TENETS SHOP / CATEGORY FINAL FIX
===================================== */


/* Remove duplicate product title */

.woocommerce ul.products li.product .woocommerce-loop-product__title + .woocommerce-loop-product__title{

    display:none !important;

}


/* Product title fixed 2 lines */

.woocommerce ul.products li.product .woocommerce-loop-product__title{


    height:48px !important;

    min-height:48px !important;

    font-size:17px !important;

    line-height:24px !important;

    font-weight:700 !important;

    color:#222 !important;


    display:-webkit-box !important;

    -webkit-line-clamp:2 !important;

    -webkit-box-orient:vertical !important;

    overflow:hidden !important;

    margin:10px 0 !important;


}



/* Make select options same as add cart button */


.woocommerce ul.products li.product .button{


    display:inline-flex !important;

    align-items:center;

    justify-content:center;


    background:#0d6efd !important;

    color:#fff !important;

    border-radius:30px !important;


    padding:10px 25px !important;

    width:auto !important;

    min-height:40px;


    font-weight:600 !important;


}



.woocommerce ul.products li.product .button:hover{


    background:#0a8f55 !important;

}



/* Keep product card spacing */

.woocommerce ul.products li.product{


    min-height:430px !important;

    display:flex !important;

    flex-direction:column;

    justify-content:flex-start;


}



/* Push footer down */

.woocommerce.archive main,
.tax-product_cat main{


    padding-bottom:80px !important;


}





/* Mobile */

@media(max-width:768px){


.woocommerce ul.products li.product{


    min-height:360px !important;

}



.woocommerce ul.products li.product .woocommerce-loop-product__title{


    height:38px !important;

    min-height:38px !important;

    font-size:14px !important;

    line-height:18px !important;


}



.woocommerce ul.products li.product .button{


    width:100% !important;

    height:34px !important;

    min-height:34px !important;

    padding:5px 8px !important;

    font-size:12px !important;


}



}


/* =====================================
   TENETS CATEGORY PAGE FIX
===================================== */


/* Category archive grid */

.tax-product_cat ul.products,
.page-id-woocommerce-category ul.products{


    display:grid !important;

    grid-template-columns:repeat(4,1fr) !important;

    gap:30px !important;

    margin:0 auto !important;

    padding:40px 20px !important;

    max-width:1400px;


}



/* Category cards */


.tax-product_cat ul.products li.product-category,
.tax-product_cat ul.products li.product{


    width:100% !important;

    margin:0 !important;

    float:none !important;

    text-align:center;


}



/* Category image */


.tax-product_cat ul.products li.product-category img{


    width:100% !important;

    height:220px !important;

    object-fit:contain !important;

    border-radius:12px;


}



/* Category name */


.tax-product_cat ul.products li.product-category h2{


    font-size:18px !important;

    font-weight:700 !important;

    color:#222 !important;

    margin-top:15px !important;


}



/* Remove Woo category count */


.tax-product_cat .count{


    display:none !important;


}




/* =====================================
   PRODUCT PAGE FOOTER SPACE FIX
===================================== */


.post-type-archive-product .site-main,
.tax-product_cat .site-main{


    min-height:900px !important;

}


.post-type-archive-product footer,
.tax-product_cat footer{


    margin-top:80px !important;


}




/* =====================================
   MOBILE CATEGORY
===================================== */


@media(max-width:768px){


.tax-product_cat ul.products{


    grid-template-columns:repeat(2,1fr) !important;

    gap:15px !important;

    padding:20px 8px !important;


}



.tax-product_cat ul.products li.product-category img{


    height:auto !important;

    aspect-ratio:1/1;

}



.tax-product_cat ul.products li.product-category h2{


    font-size:14px !important;


}


}

/* =====================================================
   TENETS FINAL SHOP + CATEGORY CLEAN FIX
===================================================== */


/* ===============================
   CATEGORY ARCHIVE PAGE
================================ */


.tax-product_cat ul.products{

    display:grid !important;

    grid-template-columns:repeat(4,1fr) !important;

    gap:25px !important;

    max-width:1400px;

    margin:0 auto !important;

    padding:40px 20px !important;

}



.tax-product_cat ul.products li.product-category{

    width:100% !important;

    margin:0 !important;

    padding:0 !important;

    float:none !important;

    text-align:center;

    background:none !important;

}



/* Category image */

.tax-product_cat ul.products li.product-category img{

    width:100% !important;

    height:220px !important;

    object-fit:contain !important;

    display:block;

}



/* Category title */

.tax-product_cat ul.products li.product-category h2{

    font-size:18px !important;

    font-weight:700 !important;

    color:#222 !important;

    margin:15px 0 !important;

}


/* remove count */

.tax-product_cat .count{

    display:none !important;

}





/* ===============================
   SHOP PRODUCT PAGE
================================ */


.post-type-archive-product ul.products,
.woocommerce-shop ul.products{


    display:grid !important;

    grid-template-columns:repeat(4,1fr) !important;

    gap:25px !important;

    max-width:1400px;

    margin:auto !important;

    padding:40px 20px !important;


}




.post-type-archive-product ul.products li.product,
.woocommerce-shop ul.products li.product{


    width:100% !important;

    margin:0 !important;

    float:none !important;

    clear:none !important;

    text-align:center;


}




/* Product image */


.post-type-archive-product ul.products li.product img,
.woocommerce-shop ul.products li.product img{


    width:100% !important;

    height:230px !important;

    object-fit:contain !important;


}




/* Product name 2 lines */


.post-type-archive-product .woocommerce-loop-product__title,
.woocommerce-shop .woocommerce-loop-product__title{


    height:48px !important;

    min-height:48px !important;

    font-size:17px !important;

    line-height:24px !important;

    font-weight:700 !important;


    display:-webkit-box !important;

    -webkit-line-clamp:2;

    -webkit-box-orient:vertical;

    overflow:hidden;


    margin:10px 0 !important;


}





/* Button */


.post-type-archive-product ul.products li.product .button,
.woocommerce-shop ul.products li.product .button{


    width:auto !important;

    display:inline-flex !important;

    padding:10px 25px !important;

    background:#0d6efd !important;

    color:#fff !important;

    border-radius:30px !important;


}



.post-type-archive-product ul.products li.product .button:hover,
.woocommerce-shop ul.products li.product .button:hover{


    background:#0a8f55 !important;

}






/* ===============================
   FOOTER FIX
================================ */


.post-type-archive-product .site-main,
.tax-product_cat .site-main{


    min-height:auto !important;

    padding-bottom:80px !important;


}




/* ===============================
   TABLET
================================ */


@media(max-width:1024px){


.tax-product_cat ul.products,
.post-type-archive-product ul.products,
.woocommerce-shop ul.products{


    grid-template-columns:repeat(3,1fr) !important;


}


}






/* ===============================
   MOBILE
================================ */


@media(max-width:768px){


.tax-product_cat ul.products,
.post-type-archive-product ul.products,
.woocommerce-shop ul.products{


    grid-template-columns:repeat(2,1fr) !important;

    gap:10px !important;

    padding:20px 8px !important;


}




.tax-product_cat ul.products li.product-category img{


    height:auto !important;

    aspect-ratio:1/1;


}



.post-type-archive-product ul.products li.product img,
.woocommerce-shop ul.products li.product img{


    height:auto !important;

    aspect-ratio:1/1;


}




.post-type-archive-product .woocommerce-loop-product__title,
.woocommerce-shop .woocommerce-loop-product__title{


    height:38px !important;

    min-height:38px !important;

    font-size:14px !important;

    line-height:18px !important;

    text-align:left !important;

}



.post-type-archive-product ul.products li.product .button,
.woocommerce-shop ul.products li.product .button{


    width:100% !important;

    height:34px !important;

    padding:5px !important;

    font-size:12px !important;


}



}

/* =====================================
   TENETS CUSTOM CATEGORIES PAGE
   /categories/
===================================== */


/* category page wrapper */

.page-id-xxx .ms-categories,
.elementor-page .ms-categories{

    max-width:1400px;
    margin:auto;
    padding:50px 40px;

}


/* category grid */

.ms-categories .ms-category-grid{

    display:grid !important;

    grid-template-columns:repeat(4,1fr) !important;

    gap:25px !important;

}



/* category card */

.ms-categories .ms-category-card{

    width:100% !important;

    text-align:center;

    background:transparent !important;

    border:none !important;

}



/* image fix */

.ms-categories .ms-category-card img{


    width:100% !important;

    height:220px !important;

    object-fit:contain !important;

    display:block;

    margin:auto;


}



/* title */


.ms-categories .ms-category-card h3{


    font-size:18px !important;

    height:45px;

    margin:15px 0 !important;

    line-height:22px;

    overflow:hidden;


}



/* button */


.ms-categories .ms-category-btn{


    display:inline-flex !important;

    width:auto !important;

    padding:10px 25px !important;

    background:#0d6efd !important;

    color:white !important;

    border-radius:30px;


}



.ms-categories .ms-category-btn:hover{


    background:#0a8f55 !important;


}





/* =====================================
   PRODUCTS PAGE
   /products/
===================================== */


/* Elementor products shortcode */

.ms-product-grid{


    display:grid !important;

    grid-template-columns:repeat(4,1fr) !important;

    gap:25px !important;

}



.ms-product-card{


    width:100% !important;

    text-align:center;

    display:flex;

    flex-direction:column;


}




/* Product image */


.ms-product-card img{


    width:100% !important;

    height:230px !important;

    object-fit:contain !important;


}



/* product title */


.ms-product-title{


    height:48px;

    line-height:24px;

    font-size:17px;

    font-weight:700;

    overflow:hidden;

}




/* price */


.ms-price{


    color:#0a8f55;

    font-weight:700;

}




/* Add cart */


.ms-product-buttons .button{


    display:inline-flex !important;

    width:auto !important;

    padding:10px 25px !important;

    background:#0d6efd !important;

    color:#fff !important;

    border-radius:30px;


}



.ms-product-buttons .button:hover{


    background:#0a8f55 !important;


}






/* =====================================
   MOBILE
===================================== */


@media(max-width:768px){


.ms-categories{

    padding:25px 8px !important;

}


.ms-categories .ms-category-grid{


    grid-template-columns:repeat(2,1fr) !important;

    gap:10px !important;


}



.ms-categories .ms-category-card img{


    height:auto !important;

    aspect-ratio:1/1;


}



.ms-product-grid{


    grid-template-columns:repeat(2,1fr) !important;

    gap:8px !important;


}



.ms-product-card img{


    height:auto !important;

    aspect-ratio:1/1;


}



.ms-product-title{


    font-size:14px;

    height:38px;

    line-height:18px;


}



.ms-product-buttons .button{


    width:100% !important;

    height:34px !important;

    padding:5px !important;

    font-size:12px !important;


}


}

/* =====================================
   TENETS PRODUCTS PAGE FINAL FIX
   /products/
===================================== */


/* Main products page width */

.page-id-472 .site-main,
.woocommerce-page .site-main{

    max-width:1400px !important;

    margin:auto !important;

    padding-left:40px !important;

    padding-right:40px !important;

    padding-bottom:100px !important;

}



/* Product grid */

.woocommerce ul.products,
.woocommerce-page ul.products{


    display:grid !important;

    grid-template-columns:repeat(4,1fr) !important;

    gap:30px !important;

    margin:0 !important;

    padding:0 !important;


}



/* Remove Woo float */

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{


    width:100% !important;

    float:none !important;

    clear:none !important;

    margin:0 !important;

    padding:0 !important;

    text-align:center !important;

    min-height:430px !important;


}



/* Product image */


.woocommerce ul.products li.product img{


    width:100% !important;

    height:230px !important;

    object-fit:contain !important;

    margin:0 !important;


}



/* Product title always 2 lines */


.woocommerce ul.products li.product .woocommerce-loop-product__title{


    height:48px !important;

    min-height:48px !important;

    margin:12px 0 !important;

    font-size:17px !important;

    line-height:24px !important;

    font-weight:700 !important;

    color:#222 !important;


    display:-webkit-box !important;

    -webkit-line-clamp:2 !important;

    -webkit-box-orient:vertical !important;

    overflow:hidden !important;


}



/* Price */


.woocommerce ul.products li.product .price{


    color:#0a8f55 !important;

    font-size:18px !important;

    font-weight:700 !important;

    margin:5px 0 !important;


}



/* Add cart / Select options button */


.woocommerce ul.products li.product .button{


    display:inline-flex !important;

    align-items:center !important;

    justify-content:center !important;

    width:auto !important;

    min-height:40px !important;

    padding:10px 25px !important;

    background:#0d6efd !important;

    color:#fff !important;

    border-radius:30px !important;

    margin-top:10px !important;


}



.woocommerce ul.products li.product .button:hover{


    background:#0a8f55 !important;


}



/* Remove category count */


.woocommerce ul.products li.product-category .count{


    display:none !important;


}



/* Footer spacing */


.post-type-archive-product main,
.page-id-472 main{


    padding-bottom:100px !important;


}



/* =====================================
   TABLET
===================================== */

@media(max-width:1024px){


.woocommerce ul.products,
.woocommerce-page ul.products{


    grid-template-columns:repeat(3,1fr) !important;


}


}



/* =====================================
   MOBILE
===================================== */

@media(max-width:768px){


.woocommerce-page .site-main{


    padding-left:8px !important;

    padding-right:8px !important;


}



.woocommerce ul.products,
.woocommerce-page ul.products{


    grid-template-columns:repeat(2,1fr) !important;

    gap:12px !important;


}



.woocommerce ul.products li.product{


    min-height:360px !important;


}



.woocommerce ul.products li.product img{


    height:auto !important;

    aspect-ratio:1/1 !important;


}



.woocommerce ul.products li.product .woocommerce-loop-product__title{


    height:36px !important;

    min-height:36px !important;

    font-size:14px !important;

    line-height:18px !important;

    text-align:left !important;


}



.woocommerce ul.products li.product .price{


    font-size:15px !important;

    text-align:left !important;


}



.woocommerce ul.products li.product .button{


    width:100% !important;

    height:34px !important;

    min-height:34px !important;

    padding:5px 8px !important;

    font-size:12px !important;


}


}

/* =====================================
   TENETS PRODUCTS PAGE DUPLICATE FIX
===================================== */


/* Hide Woo accessibility text showing on page */

.woocommerce .screen-reader-text,
.woocommerce-page .screen-reader-text{

    display:none !important;

}



/* Remove duplicate product title */

.woocommerce ul.products li.product a.woocommerce-loop-product__link + .woocommerce-loop-product__link{

    display:none !important;

}



/* Keep only one title */

.woocommerce ul.products li.product .woocommerce-loop-product__title{

    margin-top:12px !important;

}


/* Product card alignment */

.woocommerce ul.products li.product{


    display:flex !important;

    flex-direction:column !important;

    align-items:center !important;


}


/* Button always below price */

.woocommerce ul.products li.product .button{


    width:100% !important;


}

/* =====================================
   TENETS PRODUCTS FINAL BUTTON + SALE FIX
===================================== */


/* Product card */

.woocommerce ul.products li.product{

    position:relative !important;

    display:flex !important;

    flex-direction:column !important;

    align-items:center !important;

    min-height:430px !important;

}




/* Product image space */

.woocommerce ul.products li.product img{

    margin-top:15px !important;

}



/* Product button */

.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product .button{


    display:inline-flex !important;

    visibility:visible !important;

    opacity:1 !important;


    align-items:center !important;

    justify-content:center !important;


    background:#0d6efd !important;

    color:#ffffff !important;


    border:none !important;

    border-radius:30px !important;


    padding:10px 25px !important;

    min-height:40px !important;


    width:auto !important;


    font-size:14px !important;

    font-weight:600 !important;

    text-decoration:none !important;


}


/* Hover */

.woocommerce ul.products li.product a.button:hover,
.woocommerce ul.products li.product .button:hover{


    background:#0a8f55 !important;

    color:#fff !important;


}



/* Product title fixed */

.woocommerce ul.products li.product .woocommerce-loop-product__title{


    height:48px !important;

    min-height:48px !important;

    display:-webkit-box !important;

    -webkit-line-clamp:2 !important;

    -webkit-box-orient:vertical !important;

    overflow:hidden !important;


}



/* Keep button bottom aligned */

.woocommerce ul.products li.product .button{

    margin-top:auto !important;

}



/* Mobile */

@media(max-width:768px){


.woocommerce ul.products li.product{

    min-height:360px !important;

}


.woocommerce ul.products li.product .button{


    width:100% !important;

    height:34px !important;

    min-height:34px !important;


    padding:5px 8px !important;


    font-size:12px !important;


}


}

/* =====================================
   MOBILE PRODUCT CARDS ALIGNMENT
===================================== */

@media (max-width: 767px) {

    .ms-products-page,
    .ms-products-page .ms-container {
        width: 100%;
        max-width: 100%;
        padding: 0 12px;
        margin: 0 auto;
        box-sizing: border-box;
        overflow: hidden;
    }

    .ms-products-page .ms-product-grid {
        width: 100%;
        margin: 0;
        padding: 0;
        display: grid;
        grid-template-columns: 1fr;
        gap: 16px;
        justify-items: center;
    }

    .ms-products-page .ms-product-card {
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
        box-sizing: border-box;
    }

}

/* =====================================
   RESTORE DEFAULT WOOCOMMERCE SALE BADGE
===================================== */

.woocommerce ul.products li.product .onsale,
.woocommerce-page ul.products li.product .onsale {

    position:absolute !important;

    top:10px !important;
    left:10px !important;

    z-index:5 !important;

    min-height:3.236em !important;
    min-width:3.236em !important;

    padding:0.202em !important;

    border-radius:100% !important;

    background:#77a464 !important;

    color:#fff !important;

    font-size:0.857em !important;

    font-weight:700 !important;

    line-height:3.236em !important;

    text-align:center !important;

}

/* =====================================
   FORCE DEFAULT WOOCOMMERCE SALE BADGE
===================================== */

.woocommerce ul.products li.product span.onsale,
.woocommerce-page ul.products li.product span.onsale {

    position:absolute !important;

    top:10px !important;
    left:10px !important;
    right:auto !important;

    display:flex !important;

    align-items:center !important;
    justify-content:center !important;

    width:45px !important;
    height:45px !important;

    min-width:45px !important;
    min-height:45px !important;

    padding:0 !important;

    border-radius:50% !important;

    background:#77a464 !important;

    color:#ffffff !important;

    font-size:13px !important;

    font-weight:700 !important;

    line-height:1 !important;

    box-shadow:none !important;

    transform:none !important;

}

/* =====================================
   SHOP PAGE PRICE TO BUTTON GAP FIX
===================================== */


.post-type-archive-product ul.products li.product .price,
.woocommerce-shop ul.products li.product .price{


    margin-bottom:0 !important;

    line-height:1.2 !important;

}



/* Button closer to price */

.post-type-archive-product ul.products li.product .button,
.woocommerce-shop ul.products li.product .button{


    margin-top:2px !important;

    font-size:15px !important;

    font-weight:600 !important;

    padding:10px 25px !important;

}



/* Remove flex auto pushing button down */

.post-type-archive-product ul.products li.product .button,
.woocommerce-shop ul.products li.product .button{


    transform:none !important;

}


/* Mobile */

@media(max-width:768px){


.post-type-archive-product ul.products li.product .button,
.woocommerce-shop ul.products li.product .button{


    font-size:18px !important;

    margin-top:2px !important;

}


}

/* =====================================
   MOBILE SHOP BUTTON TEXT SIZE FIX
===================================== */

@media(max-width:768px){

    .woocommerce ul.products li.product .button,
    .woocommerce-page ul.products li.product .button,
    .post-type-archive-product ul.products li.product .button,
    .woocommerce-shop ul.products li.product .button{

        font-size:18px !important;

        font-weight:600 !important;

        line-height:1.2 !important;

        height:36px !important;

        padding:6px 8px !important;

    }

}

/* =====================================
   FORCE MOBILE SHOP BUTTON FONT SIZE
===================================== */

@media(max-width:768px){

    body.woocommerce-shop ul.products li.product a.button,
    body.post-type-archive-product ul.products li.product a.button,
    body.woocommerce-page ul.products li.product a.button{

        font-size:18px !important;
        font-weight:700 !important;

        line-height:1 !important;

        height:auto !important;
        min-height:40px !important;

        padding:8px 10px !important;

    }

}

/* =====================================
   MOBILE SHOP BUTTON FULL WIDTH + FONT
===================================== */

@media(max-width:768px){

    body.woocommerce-shop ul.products li.product .button,
    body.post-type-archive-product ul.products li.product .button,
    body.woocommerce-page ul.products li.product .button{


        width:100% !important;

        display:flex !important;

        align-items:center !important;

        justify-content:center !important;


        height:42px !important;

        min-height:42px !important;


        padding:8px 5px !important;


        font-size:16px !important;

        font-weight:700 !important;


        border-radius:30px !important;


        margin-top:5px !important;

        box-sizing:border-box !important;

    }


}

/* =====================================
   MOBILE CUSTOM PRODUCTS BUTTON FIX
===================================== */

@media(max-width:768px){

    .ms-product-buttons .button,
    .ms-product-card .button,
    .ms-product-buttons a.button{


        width:100% !important;

        display:flex !important;

        align-items:center !important;

        justify-content:center !important;


        height:42px !important;

        min-height:42px !important;


        padding:8px 5px !important;


        font-size:18px !important;

        font-weight:700 !important;


        border-radius:30px !important;


        margin-top:5px !important;

        box-sizing:border-box !important;


    }

}

/* =====================================
   DESKTOP SHOP BUTTON FULL WIDTH FIX
===================================== */

@media(min-width:769px){

    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product{

        align-items:stretch !important;

    }


    .woocommerce ul.products li.product .button,
    .woocommerce ul.products li.product a.button,
    .woocommerce-shop ul.products li.product .button,
    .post-type-archive-product ul.products li.product .button{

        width:100% !important;

        max-width:100% !important;

        display:flex !important;

        justify-content:center !important;

        align-items:center !important;

        box-sizing:border-box !important;

    }

}

/* =====================================
   DESKTOP BUTTON WIDTH ONLY FIX
===================================== */

@media(min-width:769px){

    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product{

        align-items:stretch !important;

    }


    .woocommerce ul.products li.product a.button,
    .woocommerce ul.products li.product .button,
    .woocommerce-shop ul.products li.product .button,
    .post-type-archive-product ul.products li.product .button{

        width:100% !important;

        display:flex !important;

        justify-content:center !important;

        align-items:center !important;

        box-sizing:border-box !important;

        padding:10px 0 !important;

        height:auto !important;

        min-height:0 !important;

        line-height:20px !important;

        font-size:16px !important;

    }

}

/* =====================================
   PRODUCT IMAGE TO TITLE GAP REDUCE
===================================== */


/* Desktop + Mobile */

.woocommerce ul.products li.product img,
.woocommerce-page ul.products li.product img{

    margin-bottom:0 !important;

}


/* Reduce space after image link */

.woocommerce ul.products li.product .woocommerce-loop-product__link{

    margin-bottom:0 !important;

}


/* Product title closer to image */

.woocommerce ul.products li.product .woocommerce-loop-product__title{

    margin-top:2px !important;

    margin-bottom:5px !important;

}



/* Mobile extra tightening */

@media(max-width:768px){


    .woocommerce ul.products li.product img{

        margin-bottom:0 !important;

    }


    .woocommerce ul.products li.product .woocommerce-loop-product__title{


        margin-top:0 !important;

        margin-bottom:3px !important;

        padding-top:0 !important;


    }


}

/* =====================================
   FORCE REDUCE IMAGE TO PRODUCT NAME GAP
===================================== */


/* Remove space from product link */

.woocommerce ul.products li.product a.woocommerce-loop-product__link,
.woocommerce-page ul.products li.product a.woocommerce-loop-product__link{

    margin:0 !important;

    padding:0 !important;

    display:block !important;

    line-height:0 !important;

}



/* Image bottom gap */

.woocommerce ul.products li.product img,
.woocommerce-page ul.products li.product img{

    display:block !important;

    margin:0 !important;

}



/* Product name */

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title{

    margin-top:0 !important;

    padding-top:0 !important;

    margin-bottom:3px !important;

    line-height:24px !important;

}


/* Mobile */

@media(max-width:768px){

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title{

    margin-top:0 !important;

    margin-bottom:2px !important;

    line-height:18px !important;

}

}

/* =====================================
   DESKTOP SHOP PRODUCTS 6 COLUMNS
===================================== */

@media(min-width:1200px){

    .post-type-archive-product ul.products,
    .woocommerce-shop ul.products,
    .woocommerce ul.products{

        grid-template-columns:repeat(6,1fr) !important;

        gap:20px !important;

    }

}


/* =====================================
   FORCE SHOP PAGE 6 COLUMNS DESKTOP
===================================== */

@media(min-width:1200px){

    body.woocommerce-shop ul.products.products,
    body.post-type-archive-product ul.products.products,
    .woocommerce ul.products.products{

        display:grid !important;

        grid-template-columns:repeat(6, 1fr) !important;

        gap:20px !important;

    }


    body.woocommerce-shop ul.products.products.columns-4,
    body.post-type-archive-product ul.products.products.columns-4{

        grid-template-columns:repeat(6, 1fr) !important;

    }


    body.woocommerce-shop ul.products li.product,
    body.post-type-archive-product ul.products li.product{

        width:100% !important;

        max-width:100% !important;

    }

}


