/*==================================================
SHOP PAGE
==================================================*/

.shop-page{
    background:#fafafa;
}

/*==================================================
BREADCRUMB
==================================================*/

.shop-breadcrumb{
    background:#fff;
    border-bottom:1px solid #eee;
}

.shop-breadcrumb .breadcrumb{
    margin:0;
    font-size:14px;
}

.shop-breadcrumb a{
    text-decoration:none;
    color:#777;
}

.shop-breadcrumb .active{
    color:#111;
    font-weight:600;
}

/*==================================================
SIDEBAR
==================================================*/

.shop-sidebar{

    background:#fff;

    border-radius:18px;

    padding:25px;

    box-shadow:0 10px 30px rgba(0,0,0,.05);

    position:sticky;

    top:100px;

}

/*==================================================
FILTER BOX
==================================================*/

.filter-box{

    margin-bottom:30px;

}

.filter-box:last-child{

    margin-bottom:0;

}

.filter-box h5{

    font-size:18px;

    font-weight:700;

    margin-bottom:18px;

    color:#222;

    position:relative;

    padding-bottom:12px;

}

.filter-box h5::after{

    content:"";

    position:absolute;

    left:0;

    bottom:0;

    width:45px;

    height:3px;

    background:#ef2b13;

    border-radius:50px;

}

/*==================================================
SEARCH
==================================================*/

.filter-box input.form-control{

    height:50px;

    border-radius:12px;

    border:1px solid #ddd;

    box-shadow:none;

    padding-left:18px;

}

.filter-box input.form-control:focus{

    border-color:#ef2b13;

    box-shadow:0 0 0 .15rem rgba(239,43,19,.15);

}

/*==================================================
CATEGORY LIST
==================================================*/

.filter-list{

    margin:0;

    padding:0;

    list-style:none;

}

.filter-list li{

    margin-bottom:14px;

}

.filter-list label{

    display:flex;

    align-items:center;

    gap:10px;

    cursor:pointer;

    font-size:15px;

    color:#555;

    transition:.3s;

}

.filter-list label:hover{

    color:#ef2b13;

}

.filter-list input{

    accent-color:#ef2b13;

    width:18px;

    height:18px;

}

/*==================================================
COLOR FILTER
==================================================*/

.color-filter{

    display:flex;

    gap:15px;

    flex-wrap:wrap;

}

.color-filter span{

    width:35px;

    height:35px;

    border-radius:50%;

    cursor:pointer;

    transition:.3s;

    border:2px solid #eee;

}

.color-filter span:hover{

    transform:scale(1.15);

    border-color:#ef2b13;

}

.color-filter .black{

    background:#000;

}

.color-filter .white{

    background:#fff;

    border:2px solid #ccc;

}

.color-filter .green{

    background:#556b2f;

}

.color-filter .blue{

    background:#1e63ff;

}

/*==================================================
SIZE
==================================================*/

.size-filter{

    display:flex;

    flex-wrap:wrap;

    gap:12px;

}

.size-filter button{

    width:45px;

    height:45px;

    border-radius:10px;

    background:#fff;

    border:1px solid #ddd;

    font-weight:600;

    transition:.3s;

}

.size-filter button:hover{

    background:#ef2b13;

    color:#fff;

    border-color:#ef2b13;

}

/*==================================================
PRICE
==================================================*/

.form-range{

    accent-color:#ef2b13;

}

.filter-box small{

    display:block;

    margin-top:10px;

    color:#666;

    font-size:13px;

}

/*==================================================
TOP BAR
==================================================*/

.shop-top{

    display:flex;

    justify-content:space-between;

    align-items:center;

    background:#fff;

    padding:22px 28px;

    border-radius:18px;

    box-shadow:0 10px 30px rgba(0,0,0,.05);

    margin-bottom:30px;

}

.shop-top h2{

    font-size:30px;

    margin:0;

    font-weight:700;

}

.shop-top p{

    margin:6px 0 0;

    color:#777;

    font-size:15px;

}

.shop-top .form-select{

    width:220px;

    height:50px;

    border-radius:12px;

    box-shadow:none;

    border:1px solid #ddd;

}

.shop-top .form-select:focus{

    border-color:#ef2b13;

    box-shadow:0 0 0 .15rem rgba(239,43,19,.15);

}

/*==================================================
RESPONSIVE
==================================================*/

@media(max-width:991px){

.shop-sidebar{

position:relative;

top:0;

margin-bottom:30px;

}

.shop-top{

flex-direction:column;

align-items:flex-start;

gap:20px;

}

.shop-top .form-select{

width:100%;

}

}

@media(max-width:576px){

.shop-sidebar{

padding:20px;

}

.shop-top{

padding:20px;

}

.shop-top h2{

font-size:24px;

}

.filter-box h5{

font-size:16px;

}

}


/*==================================================
PRODUCT GRID
==================================================*/

.mwrap{
    height:100%;
}

.mcard{

    background:#fff;

    border-radius:18px;

    overflow:hidden;

    display:flex;

    flex-direction:column;

    height:100%;

    box-shadow:0 8px 25px rgba(0,0,0,.06);

    transition:.35s ease;

    position:relative;

}

.mcard:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 40px rgba(0,0,0,.12);

}

/*==================================================
IMAGE
==================================================*/

.mimg{

    position:relative;

    height:340px;

    overflow:hidden;

    background:#f8f8f8;

}

.mimg img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.45s;

}

.mcard:hover .mimg img{

    transform:scale(1.08);

}

/*==================================================
BADGE
==================================================*/

.mbdg{

    position:absolute;

    top:15px;

    left:15px;

    background:#ef2b13;

    color:#fff;

    padding:6px 14px;

    border-radius:30px;

    font-size:12px;

    font-weight:600;

}

/*==================================================
WISHLIST
==================================================*/

.mhrt{

    position:absolute;

    top:15px;

    right:15px;

}

.mhrt a{

    width:42px;

    height:42px;

    border-radius:50%;

    background:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    color:#333;

    text-decoration:none;

    box-shadow:0 5px 15px rgba(0,0,0,.12);

    transition:.3s;

}

.mhrt a:hover{

    background:#ef2b13;

    color:#fff;

}

/*==================================================
BODY
==================================================*/

.mbody{

    padding:20px;

    display:flex;

    flex-direction:column;

    flex:1;

}

.mcat{

    color:#ef2b13;

    font-size:13px;

    font-weight:600;

    text-transform:uppercase;

    margin-bottom:8px;

}

.mtit{

    min-height:52px;

    margin-bottom:10px;

}

.mtit a{

    color:#222;

    text-decoration:none;

    font-size:17px;

    font-weight:700;

    line-height:1.5;

}

.mtit a:hover{

    color:#ef2b13;

}

.mdesc{

    font-size:14px;

    color:#777;

    line-height:1.7;

    min-height:48px;

    overflow:hidden;

}

/*==================================================
FOOTER
==================================================*/

.mfoot{

    margin-top:auto;

    display:flex;

    justify-content:space-between;

    align-items:center;

}

.mprice{

    color:#ef2b13;

    font-size:22px;

    font-weight:700;

}

.mprice small{

    display:block;

    color:#999;

    font-size:14px;

    text-decoration:line-through;

}

/*==================================================
ADD TO CART
==================================================*/

.madd{

    width:48px;

    height:48px;

    border-radius:50px;

    background:#ef2b13;

    color:#fff;

    display:flex;

    justify-content:center;

    align-items:center;

    text-decoration:none;

    overflow:hidden;

    transition:.35s;

    white-space:nowrap;

}

.madd i{

    font-size:18px;

    flex-shrink:0;

}

.madd span{

    width:0;

    opacity:0;

    overflow:hidden;

    transition:.35s;

    margin-left:0;

    font-size:14px;

    font-weight:600;

}

.madd:hover{

    width:170px;

    padding:0 18px;

    justify-content:flex-start;

    color:#fff;

}

.madd:hover i{

    margin-right:10px;

}

.madd:hover span{

    width:auto;

    opacity:1;

}

/*==================================================
PAGINATION
==================================================*/

.pagination{

    justify-content:center;

    gap:8px;

}

.pagination .page-link{

    border:none;

    width:46px;

    height:46px;

    border-radius:12px;

    display:flex;

    justify-content:center;

    align-items:center;

    color:#333;

    font-weight:600;

    box-shadow:0 5px 15px rgba(0,0,0,.08);

}

.pagination .active .page-link{

    background:#ef2b13;

    color:#fff;

}

.pagination .page-link:hover{

    background:#ef2b13;

    color:#fff;

}

/*==================================================
RESPONSIVE
==================================================*/

@media(max-width:991px){

.mimg{

height:280px;

}

}

@media(max-width:767px){

.mimg{

height:240px;

}

.mbody{

padding:15px;

}

.mtit{

min-height:auto;

}

.mprice{

font-size:18px;

}

.madd{

width:45px;

height:45px;

}

}

@media(max-width:575px){

.mimg{

height:220px;

}

}
