/*=====================================
PRODUCT LIST V2
Jagadhatri Medicare
======================================*/

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

:root{

    --primary:#0A5EB0;
    --secondary:#00A991;
    --dark:#222;
    --light:#f7f9fc;
    --border:#e8edf5;
    --text:#666;
    --white:#fff;

}

body{

    background:var(--light);

    font-family:'Poppins',sans-serif;

    color:var(--dark);

    overflow-x:hidden;

}

/*=========================
CONTAINER
=========================*/

.custom-container{

    max-width:1400px;

    margin:auto;

    padding:0 15px;

}

/*=========================
MAIN
=========================*/

.product-v2{

    padding:35px 0 70px;

}

/*=========================
TOP HEADER
=========================*/

.top-header{

    display:flex;

    gap:20px;

    margin-bottom:30px;

    align-items:center;

}

.category-toggle{

    width:280px;

    height:58px;

    border:none;

    background:var(--primary);

    color:#fff;

    border-radius:10px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:0 22px;

    cursor:pointer;

    font-size:15px;

    font-weight:600;

    transition:.3s;

}

.category-toggle:hover{

    background:#08498a;

}

.header-search{

    flex:1;

    display:flex;

}

.header-search input{

    flex:1;

    height:58px;

    border:2px solid var(--primary);

    border-right:none;

    border-radius:10px 0 0 10px;

    padding:0 22px;

    outline:none;

    font-size:15px;

    background:#fff;

}

.header-search button{

    width:70px;

    border:none;

    background:var(--secondary);

    color:#fff;

    border-radius:0 10px 10px 0;

    cursor:pointer;

    transition:.3s;

}

.header-search button:hover{

    background:#008b76;

}

/*=========================
LAYOUT
=========================*/

.shop-layout{

    display:grid;

    grid-template-columns:280px 1fr;

    gap:30px;

}

/*=========================
SIDEBAR
=========================*/

.sidebar{

    position:sticky;

    top:30px;

    height:fit-content;

}

.sidebar-box{

    background:#fff;

    border-radius:12px;

    margin-bottom:25px;

    overflow:hidden;

    border:1px solid var(--border);

    box-shadow:0 8px 22px rgba(0,0,0,.05);

}

.sidebar-box h3{

    background:var(--primary);

    color:#fff;

    font-size:18px;

    padding:18px 22px;

    margin:0;

}

.sidebar-box ul{

    list-style:none;

    margin:0;

    padding:0;

}

.sidebar-box li{

    border-bottom:1px solid #f1f1f1;

}

.sidebar-box li:last-child{

    border-bottom:none;

}

.sidebar-box li a{

    display:flex;

    justify-content:space-between;

    align-items:center;

    text-decoration:none;

    color:#444;

    padding:15px 20px;

    transition:.3s;

    font-size:15px;

}

.sidebar-box li a:hover{

    background:#f8fbff;

    color:var(--primary);

    padding-left:28px;

}

/*=====================================
CONTENT AREA
======================================*/

.content-area{
    width:100%;
}

/*=====================================
BANNER
======================================*/

.banner{

    display:flex;

    justify-content:space-between;

    align-items:center;

    background:linear-gradient(135deg,#0A5EB0,#00A991);

    border-radius:18px;

    padding:45px 50px;

    overflow:hidden;

    position:relative;

    margin-bottom:30px;

}

.banner::before{

    content:"";

    position:absolute;

    width:320px;

    height:320px;

    border-radius:50%;

    background:rgba(255,255,255,.08);

    right:-120px;

    top:-100px;

}

.banner-left{

    position:relative;

    z-index:2;

    max-width:600px;

}

.banner-left span{

    display:inline-block;

    background:rgba(255,255,255,.18);

    color:#fff;

    padding:8px 18px;

    border-radius:50px;

    font-size:13px;

    margin-bottom:18px;

}

.banner-left h2{

    color:#fff;

    font-size:42px;

    font-weight:700;

    margin-bottom:15px;

}

.banner-left p{

    color:#eef5ff;

    line-height:30px;

    font-size:16px;

    margin-bottom:28px;

}

.banner-left a{

    display:inline-block;

    background:#fff;

    color:#0A5EB0;

    text-decoration:none;

    padding:14px 32px;

    border-radius:8px;

    font-weight:600;

    transition:.3s;

}

.banner-left a:hover{

    transform:translateY(-3px);

}

.banner-right{

    position:relative;

    z-index:2;

}

.banner-right img{

    width:320px;

    max-width:100%;

}

/*=====================================
TOOLBAR
======================================*/

.toolbar{

    display:flex;

    justify-content:space-between;

    align-items:center;

    background:#fff;

    border:1px solid var(--border);

    border-radius:12px;

    padding:18px 22px;

    margin-bottom:30px;

    box-shadow:0 6px 18px rgba(0,0,0,.04);

}

.toolbar strong{

    color:var(--primary);

}

.toolbar select{

    height:45px;

    border:1px solid #ddd;

    border-radius:8px;

    padding:0 15px;

    outline:none;

    cursor:pointer;

}

/*=====================================
PRODUCT GRID
======================================*/

.product-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

}

/*=====================================
PRODUCT CARD
======================================*/

.product-card{

    background:#fff;

    border-radius:14px;

    overflow:hidden;

    border:1px solid var(--border);

    transition:.35s;

    position:relative;

    box-shadow:0 8px 20px rgba(0,0,0,.05);

}

.product-card:hover{

    transform:translateY(-8px);

    box-shadow:0 18px 40px rgba(0,0,0,.12);

    border-color:var(--primary);

}

/*=====================================
PRODUCT IMAGE
======================================*/

.product-image{

    position:relative;

    height:250px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:#fff;

    padding:20px;

    overflow:hidden;

}

.product-image img{

    max-width:100%;

    max-height:200px;

    transition:.4s;

}

.product-card:hover .product-image img{

    transform:scale(1.08);

}

/*=====================================
PRODUCT TAG
======================================*/

.product-tag{

    position:absolute;

    top:15px;

    left:15px;

    background:#00A991;

    color:#fff;

    padding:6px 14px;

    border-radius:30px;

    font-size:11px;

    font-weight:700;

    letter-spacing:.5px;

    text-transform:uppercase;

    z-index:2;

}

/*=====================================
HOVER ICONS
======================================*/

.product-hover{

    position:absolute;

    top:15px;

    right:15px;

    display:flex;

    flex-direction:column;

    gap:10px;

    opacity:0;

    transform:translateX(15px);

    transition:.35s;

    z-index:3;

}

.product-card:hover .product-hover{

    opacity:1;

    transform:translateX(0);

}

.product-hover a{

    width:42px;

    height:42px;

    border-radius:50%;

    background:#fff;

    color:var(--primary);

    display:flex;

    justify-content:center;

    align-items:center;

    text-decoration:none;

    box-shadow:0 8px 20px rgba(0,0,0,.15);

    transition:.3s;

}

.product-hover a:hover{

    background:var(--primary);

    color:#fff;

}

/*=====================================
PRODUCT BODY
======================================*/

.product-body{

    padding:22px;

    border-top:1px solid #f3f3f3;

}

/*=====================================
BRAND NAME
======================================*/

.brand-name{

    display:block;

    font-size:12px;

    color:#888;

    font-weight:600;

    text-transform:uppercase;

    letter-spacing:1px;

    margin-bottom:10px;

}

/*=====================================
TITLE
======================================*/

.product-body h3{

    font-size:18px;

    font-weight:700;

    color:#222;

    line-height:28px;

    height:56px;

    overflow:hidden;

    margin-bottom:12px;

}

/*=====================================
CATEGORY
======================================*/

.product-body p{

    color:#666;

    font-size:14px;

    line-height:24px;

    min-height:48px;

    margin-bottom:18px;

}

/*=====================================
RATING
======================================*/

.product-rating{

    display:flex;

    align-items:center;

    gap:3px;

    margin-bottom:20px;

    color:#FFC107;

    font-size:14px;

}

/*=====================================
FOOTER
======================================*/

.product-footer{

    display:flex;

    gap:10px;

}

/*=====================================
BUTTON
======================================*/

.btn-details{

    flex:1;

    display:flex;

    justify-content:center;

    align-items:center;

    height:46px;

    background:var(--primary);

    color:#fff;

    border-radius:8px;

    text-decoration:none;

    font-size:14px;

    font-weight:600;

    transition:.3s;

}

.btn-details:hover{

    background:var(--secondary);

    color:#fff;

}

/*=====================================
WHATSAPP BUTTON
======================================*/

.btn-whatsapp{

    width:46px;

    height:46px;

    border-radius:8px;

    background:#25D366;

    color:#fff;

    display:flex;

    justify-content:center;

    align-items:center;

    text-decoration:none;

    font-size:18px;

    transition:.3s;

}

.btn-whatsapp:hover{

    background:#1ea952;

    color:#fff;

}
/*=====================================
NO PRODUCTS
======================================*/

.no-products{

    width:100%;

    background:#fff;

    border:1px solid var(--border);

    border-radius:15px;

    padding:70px 30px;

    text-align:center;

    box-shadow:0 10px 25px rgba(0,0,0,.05);

}

.no-products i{

    font-size:70px;

    color:var(--primary);

    margin-bottom:20px;

}

.no-products h3{

    font-size:32px;

    color:#222;

    margin-bottom:15px;

}

.no-products p{

    color:#777;

    font-size:15px;

    line-height:28px;

    margin-bottom:30px;

}

/*=====================================
PAGINATION
======================================*/

.pagination{

    margin-top:50px;

    display:flex;

    justify-content:center;

    align-items:center;

    gap:10px;

    flex-wrap:wrap;

}

.pagination a{

    width:45px;

    height:45px;

    display:flex;

    justify-content:center;

    align-items:center;

    background:#fff;

    border:1px solid var(--border);

    border-radius:8px;

    text-decoration:none;

    color:#444;

    font-weight:600;

    transition:.3s;

}

.pagination a.active{

    background:var(--primary);

    color:#fff;

    border-color:var(--primary);

}

.pagination a:hover{

    background:var(--secondary);

    color:#fff;

    border-color:var(--secondary);

}

/*=====================================
SCROLLBAR
======================================*/

::-webkit-scrollbar{

    width:8px;

}

::-webkit-scrollbar-thumb{

    background:var(--primary);

    border-radius:20px;

}

::-webkit-scrollbar-track{

    background:#f3f3f3;

}

/*=====================================
ANIMATIONS
======================================*/

.product-card,
.sidebar-box,
.toolbar,
.banner{

    animation:fadeUp .5s ease;

}

@keyframes fadeUp{

    from{

        opacity:0;

        transform:translateY(20px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

/*=====================================
RESPONSIVE
======================================*/

@media(max-width:1200px){

.product-grid{

grid-template-columns:repeat(3,1fr);

}

}

@media(max-width:992px){

.shop-layout{

grid-template-columns:1fr;

}

.sidebar{

display:block;

}

.banner{

flex-direction:column;

text-align:center;

padding:35px;

}

.banner-left{

max-width:100%;

}

.banner-right{

margin-top:30px;

}

.banner-right img{

width:240px;

}

.toolbar{

flex-direction:column;

gap:15px;

align-items:flex-start;

}

.product-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.top-header{

flex-direction:column;

}

.category-toggle{

width:100%;

}

.header-search{

width:100%;

}

.header-search input{

font-size:14px;

}

.product-grid{

grid-template-columns:1fr;

}

.banner-left h2{

font-size:30px;

line-height:40px;

}

.banner-left p{

font-size:14px;

line-height:26px;

}

.pagination{

gap:8px;

}

}

@media(max-width:480px){

.product-v2{

padding:20px 0 50px;

}

.custom-container{

padding:0 12px;

}

.banner{

padding:25px;

}

.banner-right img{

width:180px;

}

.sidebar-box h3{

font-size:16px;

}

.product-body{

padding:18px;

}

.product-body h3{

font-size:17px;

line-height:26px;

height:auto;

}

.btn-details{

font-size:13px;

}

.pagination a{

width:40px;

height:40px;

font-size:13px;

}

}



@media (max-width:992px){

    .shop-layout{
        display:block;
    }

    .sidebar{
        display:none;
        margin-bottom:20px;
    }

    .sidebar.show{
        display:block;
    }

    .product-grid{
        grid-template-columns:repeat(2,1fr);
    }

}

@media (max-width:768px){

    .product-grid{
        grid-template-columns:1fr;
    }

}

