/*==================================================
PRODUCT HERO
==================================================*/

.product-hero{

    background:#EDF5FF;

    overflow:hidden;

}

.hero-container{

    max-width:1500px;

    margin:auto;

    padding:0 20px;

}

.hero-content{

    height:220px;

    display:flex;

    align-items:center;

    justify-content:space-between;

}

.hero-text{

    width:38%;

}

.hero-text h1{

    font-size:52px;

    color:#123C92;

    font-weight:700;

    margin-bottom:18px;

}

.hero-text p{

    font-size:17px;

    color:#55657B;

    line-height:1.8;

}

.hero-image{

    width:58%;

    height:220px;

}

.hero-image img{

    width:100%;

    height:100%;

    object-fit:cover;

}
/*==================================================
CATEGORY BAR
==================================================*/

.category-bar{

    background:#fff;

    border-top:1px solid #E9EEF6;

    border-bottom:1px solid #E9EEF6;

}

.category-container{

    max-width:1500px;

    margin:auto;

    display:flex;

    align-items:center;

}

.category-arrow{

    width:70px;

    height:96px;

    border:none;

    background:#fff;

    color:#175BFF;

    font-size:18px;

    cursor:pointer;

    flex-shrink:0;

}

.category-wrapper{

    display:flex;

    flex:1;

}

.category-item{

    width:170px;

    height:96px;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    text-decoration:none;

    color:#123C92;

    border-left:1px solid #EDF2F8;

    transition:.3s;

}

.category-item:last-child{

    border-right:1px solid #EDF2F8;

}

.category-item:hover{

    background:#F8FBFF;

}

.category-item i{

    font-size:26px;

    margin-bottom:10px;

}

.category-item span{

    font-size:13px;

    text-align:center;

    line-height:18px;

    font-weight:500;

}

/*==================================================
PRODUCT SECTION
==================================================*/

.products-section{

    padding:50px 0;

    background:#F7F9FC;

}

.products-container{

    max-width:1500px;

    margin:auto;

    padding:0 20px;

    display:grid;

    grid-template-columns:270px 1fr 240px;


    gap:25px;

    align-items:start;

}

/* LEFT */

.filter-sidebar{

    width:100%;

}

/* CENTER */

.products-content{

    width:100%;

    flex:1;


}

/* RIGHT */

/*==================================================
SHOP SIDEBAR
==================================================*/

.shop-sidebar{

    display:flex;

    flex-direction:column;

    gap:25px;

}

/* Card */

.shop-card,
.feature-card{

    background:#fff;

    border:1px solid #E8EDF5;

    border-radius:18px;

    padding:25px;

}

.shop-card h3,
.feature-card h3{

    font-size:22px;

    line-height:1.4;

    color:#163D8F;

    margin-bottom:22px;

}

/* Marketplace */

.marketplace-list{

    display:flex;

    flex-direction:column;

    gap:15px;

}

.marketplace{

    height:58px;

    border:1px solid #E6EBF4;

    border-radius:12px;

    display:flex;

    align-items:center;

    gap:15px;

    padding:0 18px;

    text-decoration:none;

    transition:.3s;

    color:#23324A;

}

.marketplace img{

    width:30px;

}

.marketplace:hover{

    border-color:#1247B7;

    transform:translateY(-2px);

}

/* Features */

.feature-item{

    display:flex;

    gap:15px;

    margin-bottom:25px;

}

.feature-item:last-child{

    margin-bottom:0;

}
.feature-item i{

    width:48px;
    height:48px;

    min-width:48px;
    min-height:48px;

    border-radius:50%;

    background:#EEF5FF;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#1B4DBB;
    font-size:18px;

    flex-shrink:0;

}

.feature-item h4{

    font-size:15px;

    color:#123C92;

    margin-bottom:5px;

}

.feature-item p{

    font-size:13px;

    color:#697586;

    line-height:1.5;

}

/*==================================================
TOOLBAR
==================================================*/

.products-toolbar{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:30px;

}

.toolbar-left{

    font-size:14px;

    color:#64748B;

}

.toolbar-right{

    display:flex;

    align-items:center;

    gap:12px;

}

.toolbar-right span{

    color:#64748B;

    font-size:14px;

}

.toolbar-right select{

    width:170px;

    height:42px;

    border:1px solid #E2E8F0;

    border-radius:10px;

    padding:0 15px;

    background:#fff;

    outline:none;

}

.view-btn{

    width:42px;

    height:42px;

    border:1px solid #E2E8F0;

    border-radius:10px;

    background:#fff;

    cursor:pointer;

    transition:.3s;

}

.view-btn.active{

    background:#1247B7;

    color:#fff;

}


/*=====================================
PRODUCT CARD
=====================================*/

.product-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

}

.product-card{

    position:relative;

    background:#fff;
      min-width:300px;

    border:1px solid #E7EDF6;

    border-radius:12px;

    overflow:hidden;

    transition:.25s;
        padding:14px;

}

.product-card:hover{

     transform:translateY(-3px);

    box-shadow:0 10px 25px rgba(0,0,0,.08);

}

.product-badge{

    position:absolute;

    top:15px;

    left:15px;

    background:#F53B38;

    color:#fff;

    font-size:10px;

    font-weight:700;

    padding:5px 10px;

    border-radius:20px;

    z-index:2;

}

.wishlist-btn{

    position:absolute;

    top:15px;

    right:15px;

    width:32px;

    height:32px;

    border:none;

    background:#fff;

    border-radius:50%;

    color:#A8B1C6;

    cursor:pointer;

    box-shadow:0 4px 10px rgba(0,0,0,.08);

}

.product-image{

     height:180px;
    display:flex;
    align-items:center;
    justify-content:center;
        margin-bottom:15px;
            padding:10px;

}

.product-image img{

     max-width:170px;
    max-height:170px;
    object-fit:contain;

}

.product-info{

    padding:0 22px 18px;

}

.product-brand{

    display:block;

    color:#123C92;

    font-size:13px;

    font-weight:700;

    margin-bottom:6px;

}

.product-title{

    font-size:15px;

    color:#23324A;

    line-height:1.4;

    font-weight:600;

    margin-bottom:10px;

    overflow:hidden;
      margin:6px 0;


    

}

.product-rating{

    display:flex;

    align-items:center;

    gap:6px;

    font-size:13px;

    color:#A4AFC4;

    margin-bottom:14px;

}

.stars{

    color:#FDBB2D;

    letter-spacing:2px;

}

.product-price{

    color:#FF4A3D;

    font-size:20px;

    font-weight:700;

    margin-bottom:16px;
      margin-top:10px;

}

.product-actions{

    display:flex;

    gap:10px;

    padding:0 20px 20px;

}

.details-btn{

    flex:1;

    height:42px;

    border:1px solid #1F55D5;

    border-radius:8px;

    display:flex;

    justify-content:center;

    align-items:center;

    text-decoration:none;

    color:#1F55D5;

    font-weight:600;

    transition:.3s;
      text-align:center;

    line-height:42px;

    text-decoration:none;


}

.details-btn:hover{

    background:#1F55D5;

    color:#fff;

}

.cart-btn{

    width:42px;
     height:42px;

    border:none;

    background:#1F55D5;

    color:#fff;

    border-radius:8px;

    cursor:pointer;

    transition:.3s;

}

.cart-btn:hover{

    background:#153F9E;

}

/*==================================================
FILTER
==================================================*/

.filter-card{

    background:#fff;

    border-radius:18px;

    padding:22px;

    border:1px solid #E9EEF8;

    box-shadow:0 5px 20px rgba(0,0,0,.04);

}

.filter-header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:25px;

}

.filter-header h3{

    font-size:20px;

    color:#173B92;

}

.filter-header a{

    font-size:13px;

    color:#173B92;

    text-decoration:none;

}

.filter-search{

    position:relative;

}

.filter-search input{

    width:100%;

    height:46px;

    border:1px solid #E5E7EB;

    border-radius:12px;

    padding:0 40px 0 15px;

}

.filter-search i{

    position:absolute;

    right:15px;

    top:50%;

    transform:translateY(-50%);

    color:#999;

}


/*=====================================
FILTER SIDEBAR
======================================*/

.filter-sidebar{

    width:270px;

}

.filter-card{

    background:#fff;

    border:1px solid #E8EDF5;

    border-radius:18px;

    padding:22px;

    box-shadow:0 8px 25px rgba(16,24,40,.05);

}

/* Title */

.filter-title{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:28px;

}

.filter-title h3{

    font-size:20px;

    color:#143D8D;

    font-weight:700;

}

.filter-title a{

    font-size:13px;

    color:#6B7280;

    text-decoration:none;

}

/* Groups */

.filter-group{

    margin-bottom:30px;

}

.group-title{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:18px;

}

.group-title h4{

    font-size:16px;

    font-weight:600;

    color:#1F2937;

}

.group-title i{

    font-size:13px;

    color:#8C94A6;

}

/* Search */

.search-box{

    position:relative;

}

.search-box input{

    width:100%;

    height:44px;

    border:1px solid #E4E8F0;

    border-radius:10px;

    padding:0 42px 0 14px;

    font-size:14px;

    outline:none;

}

.search-box i{

    position:absolute;

    right:15px;

    top:50%;

    transform:translateY(-50%);

    color:#A0A7B8;

}

/* Checkbox */

.filter-group label{

    display:flex;

    align-items:center;

    margin-bottom:14px;

    font-size:14px;

    cursor:pointer;

}

.filter-group input[type="checkbox"]{

    margin-right:10px;

}

.filter-group span{

    flex:1;

    color:#374151;

}

.filter-group small{

    color:#9CA3AF;

}

/* Show More */

.show-more{

    font-size:13px;

    color:#1D4ED8;

    text-decoration:none;

    display:inline-flex;

    align-items:center;

    gap:5px;

    margin-top:6px;

}

/* Price */

.price-range{

    display:flex;

    justify-content:space-between;

    margin-top:10px;

    font-size:13px;

    color:#6B7280;

}

input[type="range"]{

    width:100%;

    accent-color:#1D4ED8;

}

/* Button */

.apply-filter{

    width:100%;

    height:48px;

    border:none;

    border-radius:12px;

    background:#1746C5;

    color:#fff;

    font-weight:600;

    cursor:pointer;

    transition:.3s;

}

.apply-filter:hover{

    background:#123AA8;

}
/*=========================================
PAGINATION
=========================================*/

/*====================================
PAGINATION
====================================*/

.pagination{

    width:100%;

    display:flex;

    justify-content:center;

    align-items:center;

    gap:8px;

    margin:40px auto 20px;

}
.page-number{

    width:38px;

    height:38px;

    border:1px solid #D9E3F2;

    border-radius:8px;

    display:flex;

    justify-content:center;

    align-items:center;

    text-decoration:none;

    color:#173C92;

    font-size:14px;

    font-weight:600;

    transition:.3s;

    background:#fff;

}
.page-number:hover{

    background:#1747C6;

    color:#fff;

    border-color:#1747C6;

}
.page-number.active{

    background:#1747C6;

    color:#fff;

    border-color:#1747C6;

}
.page-arrow{

    width:38px;

    height:38px;

    border:1px solid #D9E3F2;

    background:#fff;

    border-radius:8px;

    cursor:pointer;

    color:#173C92;

    transition:.3s;

}
.page-arrow:hover{

    background:#1747C6;

    color:#fff;

}
.page-arrow.disabled{

    opacity:.4;

    cursor:not-allowed;

}
.page-dots{

    color:#999;

    font-weight:600;

    padding:0 4px;

}


