/*==================================================
    SHOP HEADER
==================================================*/

.shop-header{

    background:#F7F8FA;

    padding:40px 0;

    border-bottom:1px solid #ECECEC;

}

.shop-header__content{

    display:flex;

    justify-content:space-between;

    align-items:center;

    flex-wrap:wrap;

    gap:20px;

}

.shop-header h1{

    margin:0;

    font-size:36px;

    font-weight:700;

    color:#082C6C;

}

/*==================================================
    BREADCRUMB
==================================================*/

.shop-header__breadcrumb{

    display:flex;

    align-items:center;

    gap:12px;

    font-size:14px;

}

.shop-header__breadcrumb a{

    text-decoration:none;

    color:#666;

    transition:.25s;

}

.shop-header__breadcrumb a:hover{

    color:#082C6C;

}

.shop-header__breadcrumb i{

    font-size:11px;

    color:#999;

}

.shop-header__breadcrumb .current{

    font-weight:700;

    color:#082C6C;

}

/*==================================================
    SHOP LAYOUT
==================================================*/

.shop{

    padding:50px 0 70px;

    background:#F7F8FA;

}

.shop__layout{

    display:grid;

    grid-template-columns:290px 1fr;

    gap:30px;

    align-items:start;

}

.shop__content{

    min-width:0;

}
/*==================================================
    PAGINATION
==================================================*/

.shop-pagination{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:12px;

    margin-top:50px;

}

.shop-pagination__button{

    display:flex;

    justify-content:center;

    align-items:center;

    width:46px;

    height:46px;

    border:1px solid #E4E4E4;

    border-radius:8px;

    background:#ffffff;

    color:#555;

    text-decoration:none;

    font-weight:600;

    transition:.25s;

}

.shop-pagination__button:hover{

    background:#082C6C;

    border-color:#082C6C;

    color:#ffffff;

}

.shop-pagination__button.active{

    background:#F5B51D;

    border-color:#F5B51D;

    color:#082C6C;

}

.shop-pagination__button.disabled{

    pointer-events:none;

    opacity:.45;

}

/*==================================================*
* SHOP PRODUCT GRID
*==================================================*/

.shop__content .product-grid{

    display:grid;

    grid-template-columns:repeat(3,minmax(0,1fr));

    gap:24px;

}


/*==================================================*
* SHOP PRODUCT CARD
*==================================================*/

.shop-product-card{

    position:relative;

    display:flex;

    flex-direction:column;

    min-width:0;

    background:#FFFFFF;

    border:1px solid #E8E8E8;

    border-radius:10px;

    overflow:hidden;

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;

}


.shop-product-card:hover{

    transform:translateY(-4px);

    border-color:#E5E5E5;

    box-shadow:0 12px 28px rgba(0,0,0,.08);

}


/*==================================================*
* IMAGE
*==================================================*/

.shop-product-card__image{

    position:relative;

    display:flex;

    align-items:center;

    justify-content:center;

    width:100%;

    aspect-ratio:1 / 1;

    padding:18px;

    background:#FFFFFF;

    overflow:hidden;

    text-decoration:none;

}


.shop-product-card__image img{

    display:block;

    width:100%;

    height:100%;

    object-fit:contain;

    object-position:center;

    transition:transform .3s ease;

}


.shop-product-card:hover
.shop-product-card__image img{

    transform:scale(1.04);

}


/*==================================================*
* SALE BADGE
*==================================================*/

.shop-product-card__badge{

    position:absolute;

    top:14px;

    left:14px;

    z-index:2;

    padding:6px 11px;

    border-radius:5px;

    background:#E53935;

    color:#FFFFFF;

    font-size:11px;

    font-weight:700;

    text-transform:uppercase;

}


/*==================================================*
* CONTENT
*==================================================*/

.shop-product-card__content{

    display:flex;

    flex-direction:column;

    flex:1;

    padding:16px 18px 18px;

}


/*==================================================*
* TITLE
*==================================================*/

.shop-product-card__title{

    margin:0 0 10px;

    min-height:44px;

    font-size:16px;

    font-weight:600;

    line-height:1.4;

}


.shop-product-card__title a{

    color:#222222;

    text-decoration:none;

}


.shop-product-card__title a:hover{

    color:#082C6C;

}


/*==================================================*
* RATING
*==================================================*/

.shop-product-card__rating{

    display:flex;

    align-items:center;

    gap:3px;

    margin-bottom:10px;

    color:#FDBA12;

    font-size:12px;

}


/*==================================================*
* PRICE
*==================================================*/

.shop-product-card__price{

    display:flex;

    align-items:center;

    flex-wrap:wrap;

    gap:9px;

    margin-top:auto;

    margin-bottom:16px;

}


.shop-product-card__price .new-price{

    color:#082C6C;

    font-size:20px;

    font-weight:700;

}


.shop-product-card__price .old-price{

    color:#999999;

    font-size:13px;

    text-decoration:line-through;

}


/*==================================================*
* ADD TO CART
*==================================================*/

.shop-product-card__button{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:8px;

    width:100%;

    height:44px;

    border:none;

    border-radius:6px;

    background:#082C6C;

    color:#FFFFFF;

    font-family:inherit;

    font-size:14px;

    font-weight:600;

    cursor:pointer;

    transition:
        background-color .25s ease,
        transform .2s ease,
        box-shadow .2s ease;

}


.shop-product-card__button:hover{

    background:#061F4D;

    transform:translateY(-1px);

    box-shadow:0 6px 15px rgba(8,44,108,.18);

}


/*==================================================*
* RESPONSIVE
*==================================================*/

@media (max-width:1200px){

    .shop__content .product-grid{

        grid-template-columns:repeat(3,minmax(0,1fr));

    }

}


@media (max-width:992px){

    .shop__content .product-grid{

        grid-template-columns:repeat(2,minmax(0,1fr));

        gap:20px;

    }

}


@media (max-width:576px){

    .shop__content .product-grid{

        grid-template-columns:1fr;

        gap:18px;

    }

}

/*==================================================
    SHOP HEADER — LARGE TABLET
==================================================*/

@media (max-width:1200px){

    .shop-header{

        padding:35px 0;

    }

    .shop-header h1{

        font-size:32px;

    }

    .shop{

        padding:40px 0 60px;

    }

    .shop__layout{

        grid-template-columns:260px minmax(0,1fr);

        gap:25px;

    }

}


/*==================================================
    SHOP HEADER — TABLET
==================================================*/

@media (max-width:992px){

    .shop-header{

        padding:30px 0;

    }

    .shop-header h1{

        font-size:30px;

    }

    .shop{

        padding:35px 0 55px;

    }

    .shop__layout{

        grid-template-columns:220px minmax(0,1fr);

        gap:20px;

    }

}


/*==================================================
    SHOP — SMALL TABLET
==================================================*/

@media (max-width:768px){

    .shop-header{

        padding:25px 0;

    }

    .shop-header__content{

        justify-content:center;

        text-align:center;

        gap:10px;

    }

    .shop-header h1{

        width:100%;

        font-size:28px;

    }

    .shop-header__breadcrumb{

        justify-content:center;

    }

    .shop{

        padding:30px 0 50px;

    }

    .shop__layout{

        display:flex;

        flex-direction:column;

        gap:25px;

    }

    .shop__content{

        width:100%;

    }

}


/*==================================================
    SHOP — MOBILE
==================================================*/

@media (max-width:576px){

    .shop-header{

        padding:22px 0;

    }

    .shop-header h1{

        font-size:25px;

    }

    .shop-header__breadcrumb{

        gap:9px;

        font-size:13px;

    }

    .shop{

        padding:25px 0 40px;

    }

    .shop__layout{

        gap:20px;

    }

}


/*==================================================
    SHOP — SMALL MOBILE
==================================================*/

@media (max-width:400px){

    .shop-header{

        padding:20px 0;

    }

    .shop-header h1{

        font-size:23px;

    }

    .shop-header__breadcrumb{

        gap:7px;

        font-size:12px;

    }

    .shop{

        padding:20px 0 35px;

    }

}