.woocommerce ul.products{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:24px !important;
    list-style:none;
    margin:30px 0 !important;
    padding:0 !important;
}

.woocommerce ul.products li.product,
.woocommerce ul.products li.ek-product-card{
    width:auto !important;
    float:none !important;
    margin:0 !important;
    max-width:none !important;

    background:#fff;
    border:1px solid #e5e5e5;
    border-radius:12px;
    padding:16px;
    text-align:center;
    box-sizing:border-box;
}

.woocommerce ul.products li.product img{
    width:100%;
    height:220px;
    object-fit:contain;
    display:block;
    margin-bottom:15px;
}

.woocommerce ul.products li.product h2{
    font-size:16px;
    min-height:48px;
    margin-bottom:10px;
}

.woocommerce ul.products li.product .price{
    display:block;
    color:#008a3d;
    font-size:18px;
    font-weight:700;
    margin:12px 0;
}

.woocommerce ul.products li.product .button{
    display:block;
    width:100%;
}
.woocommerce,
.woocommerce-page,
.content-area,
.site-main,
.ek-shop-page,
.ek-shop-page .ek-container{
    width:100% !important;
    max-width:100% !important;
}

.woocommerce ul.products{
    width:100% !important;
}

aside,
.sidebar,
.widget-area{
    display:none !important;
}
/* Shop Full Width */
.post-type-archive-product .ek-shop-page{
    padding:40px 0;
}

.post-type-archive-product .ek-shop-page .ek-container{
    width:100%;
    max-width:1400px;
    margin:0 auto;
    padding:0 20px;
}

.post-type-archive-product .woocommerce{
    width:100%;
}

.post-type-archive-product .woocommerce ul.products{
    display:grid !important;
    grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
    gap:24px;
    width:100%;
    margin:30px 0;
    padding:0;
}

.post-type-archive-product aside,
.post-type-archive-product .widget-area{
    display:none !important;
}
.ek-product-card{
    background:#fff;
    border:1px solid #e5e5e5;
    border-radius:14px;
    overflow:hidden;
    transition:.3s;
}

.ek-product-card:hover{
    transform:translateY(-6px);
    box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.ek-product-image{
    position:relative;
    padding:20px;
}

.ek-product-image img{
    width:100%;
    height:220px;
    object-fit:contain;
}

.ek-sale-badge{
    position:absolute;
    top:15px;
    right:15px;
    background:#e53935;
    color:#fff;
    padding:5px 10px;
    border-radius:20px;
    font-size:12px;
}

.ek-product-content{
    padding:16px;
}

.ek-product-title{
    font-size:15px;
    line-height:1.8;
    min-height:54px;
}

.ek-product-title a{
    color:#222;
    text-decoration:none;
}

.ek-price{
    margin:15px 0;
    font-size:18px;
    font-weight:700;
}

.ek-cart-btn .button{
    width:100%;
    border-radius:8px;
    text-align:center;
}
.ek-price del{
    color:#999;
    font-size:14px;
    margin-left:8px;
}

.ek-price ins{
    text-decoration:none;
    color:#d32f2f;
    font-size:20px;
    font-weight:700;
}
.ek-cart-btn .button{
    display:flex;
    justify-content:center;
    align-items:center;
    width:100%;
    height:44px;
    border-radius:10px;
    background:#0d6efd;
    color:#fff;
    font-weight:600;
    text-decoration:none;
    transition:.3s;
}

.ek-cart-btn .button:hover{
    background:#0b5ed7;
}
.ek-product-image{
    overflow:hidden;
}

.ek-product-image img{
    transition:.35s ease;
}

.ek-product-card:hover .ek-product-image img{
    transform:scale(1.08);
}
.ek-rating{
    display:flex;
    justify-content:center;
    margin-top:8px;
    margin-bottom:10px;
}
.ek-product-card{
    transition:.35s;
}

.ek-product-card:hover{
    box-shadow:0 15px 40px rgba(0,0,0,.12);
}