@import url('https://fonts.googleapis.com/css2?family=Qwigley&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@100;200;300;400;500;600;700;800;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@200..1000&display=swap');

*, ::before, ::after {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    font-size: 62.5%;
    scroll-behavior: smooth;
    scroll-margin: 100px;
}

:root {
    --blue: #03BBEE;
    --blue2: #112D4E;
    --blue3: #03bbee6c;
    --green: #25C9BA;
    --white: #fff;
    --grey: #F1F1EF;
    --grey2: #F7F7F7;
    --black: #111;
    --black2: #1E1917;
    --red: red;
}

body {
    font-family: 'Montserrat', sans-serif;
    color: var(--black);
}

/* -------------------------------------------------------- Header Section -------------------------------------------------------- */
/* -------------------------------------------------------- Header Section -------------------------------------------------------- */

header {
    position: relative;
    width: 100%;
    height: 95vh;
    max-width: 1600px;
    margin: 0 auto;
}

.bg_header {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 30px;
    top: 55px;
}

.bg_header img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 0 80%;
    border-radius: 25px;
}

/* --------------------------- Navigation Bar --------------------------- */

nav {
    position: fixed;
    width: 100%;
    height: 75px;
    top: 0px;
    right: 0;
    background: var(--white);
    z-index: 999;
    box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.13);
    -webkit-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.13);
    -moz-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.13);
}

.nav_container {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1600px;
    margin: 0 auto;
}

/* --------- Logo --------- */

nav .logo {
    z-index: 30;
}

nav .logo img {
    width: 80px;
    transition: transform .2s ease-out;
}

nav .logo img:hover {
    transform: scale(105%);
}

/* --------- Links Nav --------- */

.menu_nav {
    position: fixed;
    width: 100%;
    height: 100vh;
    display: flex;
    justify-content: space-between;
    list-style-type: none;
    z-index: 50;
    background: var(--white);
    top: 0;
    left: 0;
    transform: translateX(-100%);
    transition: transform .3s ease-in-out;
}

.menu_nav.active {
    transform: translateX(0);
}

.item_nav {
    display: flex;
    align-items: center;
    border-bottom: 1px solid var(--grey);
}

.list_nav {
    width: 50%;
    height: 100%;
    display: flex;
    flex-direction: column;
    z-index: 60;
    margin-top: 50px;
}


.list_nav img {
    display: block;
    margin: 10px auto;
    width: 120px;
    align-items: center;
}

.list_nav a {
    text-decoration: none;
    text-transform: uppercase;
    font-size: 3rem;
    font-weight: 800;
    color: #111;
    letter-spacing: 2px;
    margin: 30px 0 0px 50px;
}

.list_nav a:hover {
    color: var(--blue);
}

.nav_img {
    width: 50%;
    height: 100%;
}

.nav_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* --------- Burger Menu --------- */

.burger_menu {
    position: relative;
    display: flex;
    align-items: center;
    width: 35px;
    height: 40px;
    left: 40px;
    top: 0px;
    border: none;
    cursor: pointer;
    background: transparent;
    z-index: 55;
}

.burger_menu span {
    display: block;
    position: absolute;
    width: 100%;
    height: 3.5px;
    background: var(--blue2);
    pointer-events: none;
    transition: all .3s ease-in-out;
    border-radius: 50px;
}

.burger_menu .line_1 {
    transform: translate(0, -10px);
}

.burger_menu .line_3 {
    transform: translate(0, 10px);
}

.open .line_1 {
    transform: translate(0, 0) rotate(-45deg);
    width: 80%;
}

.open .line_2 {
    opacity: 0;
}

.open .line_3 {
    transform: translate(0, 0) rotate(45deg);
    width: 80%;
}

.bg_color_header.open {
    opacity: 1;
}


/* --------------------- Cart Nav --------------------- */


.cart {
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
    right: 40px;
    z-index: 30;
}

.cart a {
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--black);
}

.cart a p {
    text-transform: uppercase;
    font-weight: 500;
    font-size: 1.5rem;
    padding: 0 8px;
}

.cart a h2 {
    position: absolute;
    font-size: 1.5rem;
    top: 12px;
    right: 4px;
}

.cart img {
    width: 22px;
}

.cart a:hover img {
    filter: invert(63%) sepia(21%) saturate(5942%) hue-rotate(152deg) brightness(97%) contrast(98%);
} 

.cart a:hover {
    color: var(--blue);
}


/* --------------------------- Main Part --------------------------- */


main {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 1600px;
}

main h2 {
    font-size: 16rem;
    color: var(--white);
    font-family: 'Qwigley', cursive;
    font-weight: 100;
    line-height: 80px;
    text-align: center;
    text-shadow: 0 0 5px hsla(0, 0%, 7%, 0.3);
}

main h4 {
    font-size: 3.8rem;
    font-weight: 200;
    text-align: center;
    color: var(--blue2);
    line-height: 30px;
}


/* ------------------------------------------------ Header Section Media Query ------------------------------------------------- */
/* ------------------------------------------------ Header Section Media Query ------------------------------------------------- */

@media screen and (max-width: 1350px) {
    .list_nav {
        width: 55%;
    }

    .nav_img {
        width: 45%;
    }

    .nav_container  {
        justify-content: center;
    }

    .burger_menu {
        position: absolute;
        top: 20px;
    }

    .cart {
        position: absolute;
    }
}


@media screen and (max-width: 1200px) {
    .list_nav {
        width: 60%;
    }

    .nav_img {
        width: 40%;
    }

    .list_nav {
        margin-top: 20px;
    }

    .list_nav img {
        width: 100px;
    }

    .list_nav a {
        margin: 40px 0 0px 40px;
    }

 
}


@media screen and (max-width: 1024px) {
    .list_nav  {
        width: 100%;
    }

    .item_nav {
        justify-content: center;
    }

    .list_nav a {
        margin: 30px 0 0px 0px;
    }

    .nav_img {
        display: none;
    }

    main h2 {
        font-size: 15rem;
    }

    main h4 {
        font-size: 3.6rem;
    }
}

@media screen and (max-width: 890px) {

    .burger_menu {
        left: 30px;
    }

    .cart {
        right: 30px;
    }
}

@media screen and (max-width: 768px) {
    .cart a p {
        font-size: 1.4rem;
        padding: 0 6px;
    }

    .cart a h2 {
        font-size: 1.4rem;
    }

    .list_nav {
        margin-top: 40px;
    }

    .list_nav img {
        margin: 0 auto; 
    }



    .bg_header img {
        object-position: center center;
    }

    main h2 {
        font-size: 12rem;
        line-height: 60px;
    }

    main h4 {
        font-size: 3rem;
    }
}

@media screen and (max-width: 576px) {
    .burger_menu {
        left: 20px;
    }

    nav .logo img {
        width: 70px;
    }

    .cart {
        right: 20px;
    }

    .list_nav img {
        width: 90px;
    }

    .list_nav a {
        font-size: 2.8rem;
    }

    .bg_header {
        padding: 30px 10px;
    }
    
    main h2 {
        font-size: 10rem;
    }

    main h4 {
        font-size: 2.6rem;
    }

}

@media screen and (max-width: 480px) {

    .cart {
        right: 15px;
    }

    .cart a p {
        font-size: 1.3rem;
        padding: 0 ;
    }

    .burger_menu {
        width: 32px;
        left: 15px;
    }

    .list_nav a {
        font-size: 2.4rem;
        text-align: center;
    }

    header {
        height: 90vh;
    }

    main h2 {
        font-size: 8rem;
        line-height: 40px;
    }

    main h4 {
        font-size: 2rem;
        line-height: 25px;
    }
}



/* --------------------------------------------------------- Category Section --------------------------------------------------------- */
/* --------------------------------------------------------- Category Section --------------------------------------------------------- */

.category {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 30px;
    margin: 30px auto;
    max-width: 1600px;
}

.acapulco, 
.flower {
    text-decoration: none;
    width: 49%;
    height: 230px;
    background: var(--grey2);
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    transition: transform .2s ease-in-out;
    overflow: hidden;
    border-radius: 20px;
    padding: 0 30px;
}

.acapulco img {
    width: 150px;
    transition: transform .5s ease-in-out;
}

.flower img {
    width: 160px;
    height: 90%;
    object-fit: contain;
    transition: transform .5s ease-in-out;
}


.acapulco:hover, 
.flower:hover {
    box-shadow: 0 5px 10px rgba(0, 0, 0, .2);
}

.acapulco:hover img,
.flower:hover img {
    transform: scale(115%);
}

.txt h3 {
    font-size: 2rem;
    color: var(--blue);
}

.txt h2 {
    font-size: 3.2rem;
    color: var(--black2);
    padding: 5px 0;
}

.txt h5 {
    font-size: 1.6rem;
    font-weight: 300;
    color: var(--black2);
}


/* ------------------------------------------------------ Category Media Query ----------------------------------------------------- */
/* ------------------------------------------------------ Category Media Query ----------------------------------------------------- */

@media screen and (max-width: 1350px) {
    .acapulco, .flower {
        padding: 0 25px;
    }

    .flower img {
        width: 100px;
    }
}

@media screen and (max-width: 1200px) {

    .acapulco, .flower {
        padding: 0 20px;
    }

    .txt h3 {
        font-size: 1.8rem;
    }

    .txt h2 {
        font-size: 3rem;
        padding: 0;
    }

    .txt h5 {
        font-size: 1.5rem;
    }

    .acapulco img {
        width: 130px;
    }
}

@media screen and (max-width: 1024px) {
    .acapulco, .flower {
        height: 200px;
        padding: 0 16px;
    }

    .txt h3 {
        font-size: 1.7rem;
    }

    .txt h2 {
        font-size: 2.8rem;
    }

    .txt h5 {
        font-size: 1.4rem;
    }

    .acapulco img {
        width: 120px;
    }
}

@media screen and (max-width: 890px) {
    .txt h3 {
        font-size: 1.6rem;
    }

    .txt h2 {
        font-size: 2.6rem;
        line-height: 25px;
    }

    .txt h5 {
        font-size: 1.3rem;
    }

    .acapulco img {
        width: 110px;
    }
}

@media screen and (max-width: 768px) {
    .category {
        flex-direction: column;
        padding: 0 30px;
    }

    .acapulco, .flower {
        width: 100%;
        margin: 10px 0;
        padding: 0 25px;
    }

    .txt h3 {
        font-size: 2rem;
    }
    
    .txt h2 {
        font-size: 3rem;
        line-height: 35px;
        padding: 5px 0;
    }

    .txt h5 {
        font-size: 1.6rem;
    }

    .acapulco img {
        width: 140px;
    }

    .flower img {
        width: 130px;
    }
}

@media screen and (max-width: 576px) {
    .category {
        padding: 0 10px;
    }

    .acapulco, .flower {
        height: 180px;
        padding: 0 20px;
    }

    .txt h3 {
        font-size: 1.8rem;
    }
    
    .txt h2 {
        font-size: 2.8rem;
        line-height: 35px;
        padding: 5px 0;
    }

    .txt h5 {
        font-size: 1.5rem;
    }

    .acapulco img {
        width: 120px;
    }

    .flower img {
        width: 110px;
    }
}

@media screen and (max-width: 480px) {
    .acapulco, .flower {
        height: 170px;
        padding: 0 15px;
    }

    .txt h3 {
        font-size: 1.6rem;
    }
    
    .txt h2 {
        font-size: 2.6rem;
        line-height: 25px;
        padding: 5px 0;
    }

    .txt h5 {
        font-size: 1.4rem;
    }

    .acapulco img {
        width: 100px;
    }

    .flower img {
        width: 90px;
    }
}

/* ------------------------------------------------------- Products Section ------------------------------------------------------- */
/* ------------------------------------------------------- Products Section ------------------------------------------------------- */



.product_container {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 50px;
    max-width: 1600px;
    margin: 0 auto;
}



/* --------------------------- Title Part --------------------------- */


.title h2 {
    font-size: 3.6rem;
    font-weight: 400;
    color: var(--black2);
    line-height: 35px;
    white-space: nowrap;
}

/* --------------------------- Card Part --------------------------- */

.product_content {
    width: 100%;
    height: 100%;
    max-width: 1300px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    padding-top: 30px;
    overflow: hidden;
    margin: 0 auto;
}

.card_product {
    position: relative;
    width: 20%;
    height: 440px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    transition: transform .3s ease-in-out;
    text-decoration: none;
    margin: 10px 20px;
    padding-bottom: 30px;
    background: var(--white);
    z-index: 80;
    overflow: hidden;
    border: 25px;
    border-radius: 25px;
}

.card_product .free_icon {
    width: 60px;
    position: absolute;
    right: 10px;
    top: 10px;
    z-index: 55;
    transform: rotate(45deg);
}

.card_background {
    position: absolute;
    width: 100%;
    height: 105%;
    background: hsla(198, 83%, 38%, 0.1);
    padding-bottom: 30px;
    transform: translate(0, 100%);
    z-index: -5;
    transition: all .5s ease-in-out;
}


.card_img {
    width: 100%;
    height: 60%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 20px;
}

.card_img img {
    height: 85%;
    max-height: 300px;
    max-width: 100%;
    object-fit: contain;
    transition: all .5s ease-in-out;
    border-radius: 20px;

}

.card_product:hover {
    border: 1px solid #d3d3d3;
}

.card_product:hover .card_background {
    transform: translate(0, 0%);
}

.card_product:hover .card_img img {
    transform: scale(105%);
}

.card_product h3 {
    font-size: 1.6rem;
    font-weight: 500;
    padding-top: 30px;
    color: var(--black2);
    text-transform: capitalize;
    line-height: 20px;
    text-align: center;
}

.card_info {
    width: 100%;
    height: 40%;
    display: flex;
    flex-direction: column;
    justify-content: end;
    padding: 10px;
}

.card_product h4 {
    font-size: 1.6rem;
    font-weight: 400;
    color: var(--blue);
    text-align: center;
}

.btn {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.big_btn {
    display: block;
    text-decoration: none;
    text-transform: uppercase;
    color: var(--blue2);
    font-size: 1.6rem;
    border: 1px solid var(--blue2);
    padding: 15px 0;
    width: 280px;
    text-align: center;
    margin-top: 80px;
    transition: all .3s ease-in-out;
}

.big_btn:hover {
    background: var(--blue2);
    color: var(--white);
    box-shadow: 0 5px 20px rgba(0, 0, 0, .2);

}

.card_product .prices {
    margin-top: 10px;
}

.card_product .old_price {
    color: var(--blue3);
    text-decoration: line-through;
}

/* --------------------------- Rating Part --------------------------- */

.star-rating {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row-reverse;
}

.star-rating span {
    font-size: 1.3rem;
    margin-left: 5px;
    letter-spacing: 1px;
}

.star-rating input {
    display: none;
}

.star-rating label {
    color: #ddd;
    cursor: pointer;
    font-size: 2.2rem;
    padding: 0 2px;
}

.star-rating input:checked ~ label {
    color: #f7d106;
}

.star-rating label:hover,
.star-rating label:hover ~ label {
    color: rgba(247, 211, 6, 0.527);
}


/* --------------------------------------------------  Products Section Media Query -------------------------------------------------- */
/* --------------------------------------------------  Products Section Media Query -------------------------------------------------- */

@media screen and (max-width: 1350px) {
    .product_container {
        padding: 50px 30px;
    }

    .card_product {
        margin: 25px;
    }

    .card_info {
        padding: 0 20px;
    }
}

@media screen and (max-width: 1200px) {
    .product_container {
        padding: 40px 20px;
    }

    .title h2 {
        font-size: 3.4rem;
    }

    .product_content {
        justify-content: space-evenly;
    }


    .card_product {
        width: 20%;
        margin: 20px;
    }

    .card_info {
        padding: 0 15px;
    }

    .card_product h3 {
        font-size: 1.6rem;
    }
}

@media screen and (max-width: 1024px) {
    .title h2 {
        font-size: 3.2rem;
    }

    .card_product {
        margin: 0;
    }

    .card_info {
        padding: 0 10px;
    } 

    .card_product h3 {
        font-size: 1.5rem;
    }

    
}

@media screen and (max-width: 890px) {
    .title h2 {
        font-size: 3rem;
    }

    .card_info {
        padding: 0 ;
    } 

    .product_content {
        justify-content: space-evenly;
    }

    .card_product {
        min-width: 200px;
        width: 40%;
        margin: 20px;
    }
}

@media screen and (max-width: 768px) {
    .card_product h4 {
        padding: 0;
    }

    .card_product {
        min-width: 180px;
    }

    .big_btn {
        margin-top: 60px;
    }
}

@media screen and (max-width: 576px) {

    .title h2 {
        font-size: 2.8rem;
    }

    .product_content {
        padding: 0;
    }

    .card_product {
        width: 25%;
    }

    .big_btn {
        width: 260px;
        margin-top: 40px;
    }
}

@media screen and (max-width: 480px) {

    .title h2 {
        font-size: 2.6rem;
        padding: 0;
        white-space: wrap;
        text-align: center;
        line-height: 28px;
    } 

    .product_container {
        padding: 30px 10px;
    }

    .card_product {
       width: 35%;
    }

    .big_btn {
        font-size: 1.5rem;
        margin-top: 20px;
        width: 240px;
    }

    
}



/* --------------------------------------------------- Shop Section --------------------------------------------------- */
/* --------------------------------------------------- Shop Section --------------------------------------------------- */


.shop {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 50px 30px;
    max-width: 1600px;
    margin: 0 auto;
}

.shop_container {
    width: 100%;
    height: 120vh;
    display: flex;
}

.img_main {
    width: 30%;
}

.img_main img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 25px 0 0 25px;
    opacity: 0.8;
}

.middle {
    width: 35%;
    padding: 0 10px;
}

.middle img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    padding-top: 10px;
}

.last {
    width: 35%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.last img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    padding-bottom: 10px;
    border-radius:  0 25px 0 0;
}

.shop_txt {
    height: 50%;
    width: 100%;
    padding: 30px;
    background: var(--grey);
}

.shop_txt h2 {
    font-size: 1.8rem;
    padding: 10px 0;
    color: var(--black2);
}

.shop_txt h2 span {
    font-size: 2rem;
    color: var(--blue);
    text-transform: uppercase;
}

.shop_txt p {
    font-size: 1.6rem;
    line-height: 25px;
    padding-bottom: 30px;
    text-align: justify;
}

.shop_txt a {
    display: block;
    text-align: center;
    text-decoration: none;
    background: var(--blue2);
    border: 1px solid var(--blue2);
    color: #fff;
    padding: 10px 20px;
    font-size: 1.6rem;
    transition: all .3s ease-in-out;
}

.shop_txt a:hover {
    background: transparent;
    color: var(--blue2);
}

.shop_img {
    width: 100%;
    height: 50%;
}

.border {
    border-radius: 0 0 25px 0;
}

/* --------------------------------------------------  Shop Section Media Query -------------------------------------------------- */
/* --------------------------------------------------  Shop Section Media Query -------------------------------------------------- */


@media screen and (max-width: 1350px) {

    .shop_txt h2 {
        font-size: 1.7rem;
    }

    .shop_txt h2 span {
        font-size: 1.9rem;
    }

    .shop_txt p {
        font-size: 1.5rem
    }

    .lampadaire img {
        object-position: left;
    }
}

@media screen and (max-width: 1200px) {
    .shop_container {
        height: 130vh;
    }

    .shop_txt {
        padding: 20px;
    }

    .shop_txt h2 {
        font-size: 1.6rem;
    }

    .shop_txt h2 span {
        font-size: 1.8rem;
    }
}

@media screen and (max-width: 1024px) {
    .shop {
        padding: 30px 20px;
    }

    .shop_txt {
        padding: 20px 10px;
    }

    .shop_txt h2 {
        font-size: 1.5rem;
    }

    .shop_txt h2 span {
        font-size: 1.7rem;
    }

    .shop_txt p {
        font-size: 1.4rem;
        line-height: 20px;
    }
}

@media screen and (max-width: 890px) {
    .shop_container {
        height: 100%;
    }

    .last {
        height: auto;
    }

    .lampadaire {
        display: none;
    }

    .middle {
        width: 50%;
    }

    .last {
        width: 50%;
        display: block;
    }

    .shop_txt {
        padding: 20px;
        height: 55%;
    }

    .middle .shop_txt {
        border-radius: 25px 0 0 0;
    }

    .middle img {
        border-radius: 0 0 0 25px;
    }

    .shop_txt h2 {
        font-size: 1.7rem;
    }

    .shop_txt h2 span {
        font-size: 1.9rem;
    }

    .shop_txt p {
        font-size: 1.6rem;
        line-height: 25px;
    }
}

@media screen and (max-width: 768px) {
    .shop {
        padding: 30px 10px;
    }

    .shop_txt {
        padding: 10px;
    }

    .shop_txt h2 {
        font-size: 1.6rem;
    }

    .shop_txt h2 span {
        font-size: 1.8rem;
    }

    .shop_txt p {
        font-size: 1.5rem;
        line-height: 20px;
    }

    .shop_txt a {
        font-size: 1.5rem;
    }
}

@media screen and (max-width: 640px) {
    .shop_txt {
        height: 60%;
    }

    .shop_txt h2 {
        font-size: 1.5rem;
    }

    .shop_txt p {
        font-size: 1.4rem;
    }
}

@media screen and (max-width: 576px) {

    .shop_container {
        flex-direction: column;
        height: 100%;
    }

   .middle {
        width: 100%;
        padding: 0;
        margin-bottom: 10px;
        display: flex;
        flex-direction: column-reverse;
   }

   .middle img {
        margin-bottom: 10px;
   }

   .last {
        width: 100%;
   }

   .shop_container img {
    border-radius: 20px;
   }

   .middle .shop_txt,
   .last .shop_txt {
    padding: 20px;
    border-radius: 20px;
   }

   .card_img img {
    height: 80%;
   }

}

@media screen and (max-width: 480px) {
    .shop_txt h2 {
        font-size: 1.5rem;
    }

    .shop_txt h2 span {
        font-size: 1.7rem;
    }

    .shop_txt p {
        font-size: 1.4rem;
        line-height: 20px;
    }

    .middle .shop_txt,
    .last .shop_txt {
        padding: 20px 10px;
    }

    .shop_txt a {
        font-size: 1.4rem;
        padding: 8px;
    }

    .card_product {
        height: 400px;
        width: 30%;
        margin: 0;
    }

    .card_img img {
        height: 70%;
    }
}




/* --------------------------------------------------- Skillz Section --------------------------------------------------- */
/* --------------------------------------------------- Skillz Section --------------------------------------------------- */


.skillz {
    width: 100%;
    height: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    max-width: 1600px;
    margin: 0 auto;
}

.skillz div {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 20px;
    flex: 1 1 200px;
    max-width: 300px;
    min-width: 150px;
}

.skillz p {
    font-size: 1.5rem;
    font-weight: 400;
    color: var(--blue2);
    text-align: center;
}

.skillz img {
    width: 60px;
    opacity: .8;
    margin-bottom: 10px;
    cursor: pointer;
}




/* --------------------------------------------------  Skillz Section Media Query -------------------------------------------------- */
/* --------------------------------------------------  Skillz Section Media Query -------------------------------------------------- */




/* --------------------------------------------------- PreFooter Section --------------------------------------------------- */
/* --------------------------------------------------- PreFooter Section --------------------------------------------------- */


.pre_footer {
    position: relative;
    width: 100%;
    height: 85vh;
    padding: 50px 30px;
    max-width: 1600px;
    margin: 0 auto;
} 

.pre_footer img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center bottom;
    border-radius: 30px;
}

.pre_txt {
    position: absolute;
    top: 40%;
    right: 10%;
}

.pre_txt h2 {
    font-size: 3rem;
    color: var(--blue);
}

.pre_txt p {
    font-size: 2rem;  
    text-align: center;
}

.pre_txt a {
    display: block;
    font-size: 1.8rem;
    font-weight: 500;
    color: #fff;
    text-decoration: none;
    background: var(--blue2);
    border: 1px solid var(--blue2);
    padding: 15px 0;
    width: 250px;
    margin: 20px auto;
    text-align: center;
    transition: all .3s ease-in-out;
}

.pre_txt a:hover {
    border: 1px solid var(--blue2);
    background: transparent;
    color: var(--blue2);
}


/* ------------------------------------------------  Prefooter Section Media Query ------------------------------------------------ */
/* ------------------------------------------------  Prefooter Section Media Query ------------------------------------------------ */

@media screen and (max-width: 1350px) {
    .pre_footer {
        height: 100%;
    }
}

@media screen and (max-width: 1200px) {
    .pre_txt h2 {
        font-size: 2.8rem;
    }

    .pre_txt p {
        font-size: 1.9rem;
    }
}

@media screen and (max-width: 1024px) {
    .pre_txt h2 {
        font-size: 2.6rem;
    }

    .pre_txt p {
        font-size: 1.8rem;
    }

    .pre_txt a {
        font-size: 1.7rem;
        width: 230px;
    }
}

@media screen and (max-width: 890px) {
    .pre_txt h2 {
        font-size: 2.4rem;
    }

    .pre_txt p {
        font-size: 1.7rem;
    }

    .pre_txt a {
        font-size: 1.7rem;
        width: 230px;
    }
}

@media screen and (max-width: 768px) {
    .pre_footer {
        padding: 40px 20px;
    }

    .pre_txt {
        right: 8%;
        top: 35%;
    }

    .pre_txt h2 {
        font-size: 2.2rem;
    }

    .pre_txt p {
        font-size: 1.6rem;
    }

    .pre_txt a {
        font-size: 1.6rem;
        width: 200px;
    }
}

@media screen and (max-width: 576px) {

    .pre_footer {
        padding: 30px 10px;
        height: 300px;
    }

    .pre_txt h2 {
        font-size: 2rem;
    }

    .pre_txt p {
        font-size: 1.5rem;
    }

    .pre_txt a {
        font-size: 1.5rem;
        width: 180px;
        padding: 10px 0;
    }

}

@media screen and (max-width: 480px) {
    .pre_footer {
        height: 280px;
    }

    .pre_txt h2 {
        font-size: 1.8rem;
    }

    .pre_txt p {
        font-size: 1.4rem;
    }

    .pre_txt a {
        font-size: 1.4rem;
        width: 170px;
        padding: 8px 0;
    }

    .pre_txt {
        right: 0;
        left: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
    }
}

/* --------------------------------------------------- Footer Section --------------------------------------------------- */
/* --------------------------------------------------- Footer Section --------------------------------------------------- */

footer {
    position: relative;
    width: 100%;
    height: 80vh;
    margin-top: 50px;
    padding: 50px 0;
    min-height: 600px;

}

.footer {
    position: relative;
    width: 100%;
    height: 100%;
}

.bg_footer {
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1;
    padding: 20px 30px;
}

.bg_footer img {
    border-radius: 20px;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.5;
    border: 1px solid #d3d3d3;
}


.top {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    flex-direction: column;
    z-index: 20;
    max-width: 1600px;
    margin: 0 auto;
}

/* --------------------------- Logo Part --------------------------- */

.logo_part {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    z-index: 20;
    margin-bottom: 20px;
}

.logo_part img {
    width: 180px;
    transition: transform .2s ease-out;
    margin-bottom: 30px;
}

.logo_part img:hover {
    transform: scale(105%);
}

.logo_part h2 {
    font-size: 1.6rem;
    color: #1E1917;
    font-weight: 300;
    text-transform: uppercase;
}

.logo_part h3 {
    margin-top: 30px;
    font-size: 1.8rem;
    color: var(--blue);
    text-transform: uppercase;
}

.social {
    display: flex;
}

.social img {
    width: 35px;
    margin: 20px 50px;
    transition: transform .2s ease-out;
}

.social img:hover {
    transform: scale(110%);
}


/* --------------------------- Logo Part --------------------------- */

.info_part {
    width: 100%;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 20;
    margin-bottom: 30px;
}

.info_part h2 {
    font-size: 2.4rem;
    color: var(--blue);
    text-transform: uppercase;
    margin-bottom: 20px;
}

.info {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
}

.info p {
    font-size: 1.6rem;
    color: #1E1917;
    display: flex;
    align-items: center;
    justify-content: center;
}

.info p span img {
    width: 25px;
    margin-right: 10px;
}

footer hr {
    border-width: .5px;
}

/* --------------------------- LokDev Part --------------------------- */

.lokdev {
    width: 100%;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    z-index: 50;
}

.lokdev p {
    font-size: 1.4rem;
    font-weight: 300;
    color: #14213D;
    z-index: 50;
}

.lokdev a {
    padding: 5px 10px;
    z-index: 50;
}

.lokdev img {
    width: 25px;
    transition: transform .2s ease-out;
    z-index: 50;

}

.lokdev img:hover {
    transform: scale(103%);
}


/* ------------------------------------------------  footer Section Media Query ------------------------------------------------ */
/* ------------------------------------------------  footer Section Media Query ------------------------------------------------ */

@media screen and (max-width: 1200px) {
   .logo_part .logo_footer {
        width: 180px;
        margin-bottom: 10px;
   }
}

@media screen and (max-width: 1024px) {
    .footer .info {
        justify-content: space-between;
        padding: 0 50px;
    }
}

@media screen and (max-width: 890px) {
    footer {
        height: 70vh;
        margin: 0;
        margin-top: 40px;
    }

    .logo_part .logo_footer {
        width: 160px;
        padding: 0;
    }
}

@media screen and (max-width: 768px) {
    .bg_footer {
        padding: 30px 20px;
    }

    .logo_part .logo_footer {
        width: 150px;
        margin-top: 50px;
    }

    .logo_part h2 {
        font-size: 1.5rem;
    }

    .logo_part h3 {
        margin-top: 20px;
        font-size: 1.7rem;
    }

    .social img {
        margin: 12px 40px;
        width: 30px;
    }

    .info_part .info {
        flex-wrap: wrap;
        justify-content: center;
    }

    .info_part .info p {
        margin: 10px 40px;
    }
}


@media screen and (max-width: 576px) {

    footer {
        height: 70vh;
        min-height: 550px;
    }
    .bg_footer {
        padding: 20px 10px;
    }

    .logo_part .logo_footer {
        width: 120px;
    }

    .social img {
        margin: 10px 40px;
    }

    .info_part .info p {
        margin: 5px 40px;
        font-size: 1.5rem;
    }

    .lokdev p {
        font-size: 1.3rem;
    }

    .lokdev img {
        width: 20px;
    }
}

@media screen and (max-width: 480px) {
    footer {
        height: 65vh;
        min-height: 530px;
    }

    .logo_part .logo_footer {
        width: 110px;
        margin-top: 70px;
    }

    .logo_part h2 {
        font-size: 1.4rem;
    }

    .logo_part h3 {
        font-size: 1.6rem;
        margin-top: 10px;
    }

    .footer .info {
        padding: 0 10px;
    }

    .social img {
        width: 30px;
    }

    .info_part .info p {
        font-size: 1.4rem;
        margin: 5px 10px;
    }

    .info p span img {

       width: 20px;
    }

    .lokdev {
        flex-direction: column;
    }

    .lokdev p {
        font-size: 1rem;
        text-align: center;
        padding: 0 10px;
    }

}



/* -------------------------------------------------------- Product Page -------------------------------------------------------- */
/* -------------------------------------------------------- Product Page -------------------------------------------------------- */
/* -------------------------------------------------------- Product Page -------------------------------------------------------- */

/* --------------------------- Back Links Part --------------------------- */


.back_links {
    width: 100%;
    display: flex;
    align-items: center;
    padding: 10px 40px;
}

.back_links a {
    font-size: 1.6rem;
    text-decoration: none;
    color: #1E1917;
    text-transform: capitalize;
}

.back_links a:hover {
    color: #03BBEE;
}

.back_links span {
    font-size: 1.8rem;
    padding: 0 10px;
    color: #1E1917;
}

.back_links p {
    font-size: 1.6rem;
    color: hsla(17, 13%, 10%, 0.5);
    text-transform: capitalize;

}

/* --------------------------- Product Page --------------------------- */


.product_page {
    position: relative;
    width: 100%;
    height: 100%;
    top: 80px;
    padding: 40px 20px;
    max-width: 1600px;
    margin: 0 auto;
}

.product_page_container {
    width: 100%;
    height: 100%;
    min-height: 80vh;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 40px 0;
}

/* --------------------------- Product Img Part --------------------------- */

.product_img_part {
    position: relative;
    width: 49%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}


.top_img {
    width: 90%;
    height: 50vh;
    display: flex;
    align-items: start;
    justify-content: center;
}

.top_img img {
    height: 100%;
    object-fit: contain;
    border-radius: 20px;
}

.bottom_img {
    width: 100%;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 20px;
}

.bottom_img img {
    width: auto;
    height: 100%;
    object-fit: contain;
    margin: 10px;
    opacity: .5;
    cursor: pointer;
    border-radius: 20px;
}

.bottom_img img:hover {
    opacity: 1;
}

.trait {
    display: block;
    width: 1px;
    height: 70vh;
    background: var(--grey);
}




/* --------------------------- Product Info Part --------------------------- */

.product_info_part {
    position: relative;
    width: 50%;
    height: 100%;
    padding: 10px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.product_info_part h2 {
    font-size: 3.6rem;
    font-weight: 400;
    color: #112D4E;
    line-height: 35px;
    padding: 0 15px;
    white-space: nowrap;
    text-transform: capitalize;
}

.product_info_part h4 {
    font-size: 3.8rem;
    margin: 10px 0;
}

.product_info_part .line {
    display: block;
    width: 100px;
    height: 2px;
    background: var(--blue2);
}

.product_info_part .free_icon {
    width: 120px;
    margin-top: 20px;
}

.product_info_part p {
    font-size: 1.5rem;
    padding-top: 5px;
    width: 85%;
    text-align: center;
    margin: 20px 0;
    color: var(--blue2);
}

.product_info_part .add {
    background: #18336e;
}

.product_info_part .submit_btn span {
    font-size: 1.6rem;
    font-family: "Cairo", sans-serif;
}


/* --------------------------- Color Part --------------------------- */


.color_content {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 10px 0;
}

.group_color h2 {
    font-size: 2.2rem;
    margin-bottom: 10px;
    color: var(--blue);
}

.group_color h3 {
    font-size: 1.5rem;
    font-weight: 300;
    text-align: center;
    margin-top: 10px;
}

.color_product {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 35px;
    height: 35px;
    border: 1px solid #d3d3d3;
    border-radius: 50%;
    margin: 0 5px;
    cursor: pointer;
    transition: transform .3s ease-in-out;
}

.color_product img {
   width: 20px;
   display: none;
}

.color_product:hover {
    transform: scale(105%);
}

.color_product.selected img {
    display: block;
    transition: transform .3s ease-in-out;

}


/* --------------------------- Counter Part --------------------------- */


.counter {
    width: 100%;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

.counter_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.counter button {
    font-size: 2rem;
    width: 30px;
    height: 30px;
    border: none;
    color: #fff;
    border-radius: 8px;
    margin: 10px;
    cursor: pointer;
    margin: 20px;
}

.counter .moins {
    background: transparent;
    color: #111;
    border: 1px solid #14213D;
}

.counter .moins:hover {
    background: hsla(221, 51%, 16%, 0.75);
    color: #fff;
}

.counter .plus {
    background: #14213D;
    border: 1px solid #14213D;
    color: #fff;
}

.counter .plus:hover {
    background: hsla(221, 51%, 16%, 0.75);
}

.counter input {
    font-size: 2rem;
    padding: 8px;
    border-radius: 8px;
    width: 30px;
    text-align: center;
    border: none;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.submit_btn {
    border: none;
    background: #14213D;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 500;
    width: 200px;
    padding: 10px 0;
    border-radius: 8px;
    margin-top: 10px;
    cursor: pointer;
    border: 1px solid #14213D;
    transition: all .3s ease-in-out;
}

.submit_btn:hover {
    background: transparent;
    color: #14213D;
}

.count {
    display: flex;
    align-items: center;
    justify-content: center;
}

.count button {
    width: 30px;
    height: 30px;
    margin: 0;
    font-size: 1.8rem;
}

.td_center .submit_btn:hover {
    background: hsla(221, 51%, 16%, 0.75);
}

.btn_del {
    background: red;
    border: 1px solid red;
}

.td_center .btn_del:hover {
    background: rgba(255, 0, 0, 0.75);
}

.count input {
    font-size: 1.6rem;
    width: 40px;
}

.cart_page .submit_btn img {
    width: 20px;
}

.cart_page .submit_btn {
    width: auto;
    padding: 5px;
    margin: 0 2px;
}



/* ---------------------------------------------------  Product Page Media Query --------------------------------------------------- */
/* ---------------------------------------------------  Product Page Media Query --------------------------------------------------- */

@media screen and (max-width: 1350px) {
    .product_page {
        padding: 30px 10px;
    }

    .top_img img {
        height: 90%;
    }

    .product_info_part p {
        width: 90%;
    }

    .color_product {
        width: 30px;
        height: 30px;
    }
}

@media screen and (max-width: 1200px) {
    .product_info_part h2 {
        font-size: 3.4rem;
    }

    .free_delivery h2 {
        font-size: 1.5rem;
    }

    .product_info_part h4 {
        font-size: 3.6rem;
    }

    .group_color h2 {
        font-size: 2rem;
    }
}

@media screen and (max-width: 1024px) {
    .product_info_part {
        padding: 0;
    }

    .product_info_part h2 {
        font-size: 3.2rem;
    }

    .free_delivery h2 {
        font-size: 1.5rem;
    }

    .product_info_part h4 {
        font-size: 3.4rem;
    }

    .product_info_part p {
        width: 95%;
        font-size: 1.4rem;
        margin: 10px 0;
    }

    .group_color h2 {
        font-size: 1.8rem;
    }

    .top_img img {
        height: 85%;
    }

    .bottom_img img {
        height: 90%;
    }
}

@media screen and (max-width: 890px) {
    .product_page_container {
        flex-direction: column;
    }

    .trait {
        display: none;
    }

    .product_img_part {
        width: 100%;
    }

    .top_img {
        height: 45vh;
        align-items: center;
    }

    .product_info_part {
        width: 100%;
        margin-top: 20px;
    }

    .product_info_part .free_icon {
        width: 100px;
        margin-top: 20px;
    }
}

@media screen and (max-width: 768px) {
    .product_info_part h2 {
        white-space: wrap;
        text-align: center;
    }
}


/* --------------------------------------------------- Cart Page --------------------------------------------------- */
/* --------------------------------------------------- Cart Page --------------------------------------------------- */


.cart_page {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 100vh;
    top: 80px;
    padding: 30px;
    max-width: 1600px;
    margin: 0 auto;
}

.cart_page_container {
    width: 100%;
    height: 100%;
    display: flex;
}


/* --------------------------- Cart Product Part --------------------------- */

.cart_product_part {
    width: 70%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    margin-top: 20px;
    align-self: center;
}

.cart_container {
    position: relative;
    left: 0;
    width: 100%;
    height: auto;
    display: flex;
    align-items: center;
    margin-top: 20px;
}

.cart_product_part h3 {
    font-size: 2rem;
    padding: 20px;
}

.cart_product_part .line {
    width: 97%;
    height: 0.5px;
    background: #d3d3d3;
    margin-top: 30px;
}

/* ----- Image Part ----- */

.cart_img {
    width: 15%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.cart_img img {
    height: 120px;
}

/* ----- Infos Part ----- */

.info_cart {
    width: 85%;
    height: 100%;
    display: flex;
    align-items: center;
}

.info_cart_container {
    position: relative;
    width: 100%;
    height: 100%;
}

.info_cart_container .free_icon {
    position: absolute;
    width: 80px;
    top: -60px;
    right: 100px;
    transform: rotate(45deg);
}

.info_cart_body {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-right: 50px;
}

.info_cart_body h2 {
    font-size: 2rem;
}

/* Colors Part */

.colors_container h2 {
    font-size: 1.8rem;
    font-weight: 600;
    margin-bottom: 10px;
}

.colors_container .color_info {
    font-size: 1.2rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 5px;
}

.colors_container .color_info span {
    width: 20px;
    height: 20px;
    margin: 0 10px;
}


.msg_valide {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(17, 17, 17, 0.6);
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
}

.msg_valide_container {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding: 50px 0;
    width: 620px;
    background: rgba(17, 17, 17, 0.7);
    border-radius: 40px;
}

.msg_valide img {
    width: 100px;
    margin-bottom: 20px;
}


.cart_info_part .msg_valide_container h3 {
    font-size: 3.4rem;
    font-weight: 500;
    color: #fff;
    text-align: center;
    font-family: "Cairo", sans-serif;
    padding: 0;
}

.cart_info_part .msg_valide_container h5 {
    font-size: 2rem;
    font-weight: 300;
    color: #fff;
    text-align: center;
    font-family: "Cairo", sans-serif;
}

.msgdd {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(17, 45, 78, 0.295);
    z-index: 9999;
    display: none;
}

/* --------------------------- Cart Info Part Msg --------------------------- */

.cart_info_part .invoice_error p {
    background: red;
    color: #fff;
    font-size: 1.6rem;
    padding: 8px;
    border-radius: 10px;
}

.cart_info_part .msg_success {
    background: var(--blue);
    color: #fff;
    font-size: 1.6rem;
    padding: 8px;
    border-radius: 10px;
    text-align: center;
}

/* --------------------------- Cart Info Part --------------------------- */


.cart_info_part {
    text-align: center;
    width: 30%;
    height: 100%;
    min-height: 85vh;
    right: 20px;
    top: 80px;
    padding: 30px 20px 20px 20px;
    border: 1px solid #d3d3d3;
    border-radius: 20px;
    background: rgba(135, 233, 255, 0.1);
}

.cart_info_part form {
    width: 100%;
    height: 100%;
}

.cart_info_part h3 {
    font-size: 2rem;
    font-weight: 400;
    color: #112D4E;
    text-align: start;
    padding: 20px 0 10px 0;
    text-transform: uppercase;
}

.cart_info_part select {
    width: 100%;
    font-size: 1.6rem;
    border: .5px solid #d3d3d3;
    border-radius: 10px;
    padding: 8px 10px;
    font-family: "Cairo", sans-serif;
    text-align: center;
}

.cart_info_part .delivery {
   display: flex;
   align-items: center;
   justify-content: space-between;
   font-size: 2.6rem;
   margin: 10px;
}

.cart_info_part .delivery .label_ar {
    font-size: 1.8rem;
    font-family: "Cairo", sans-serif;
    font-weight: 300;
}

.cart_info_part .delivery input {
    width: 20px;
}

.cart_info_part .desk, 
.cart_info_part .home {
    display: none;
    padding: 0;
} 

.cart_info_part .desk.desk_view  {
    display: block;
}

.cart_info_part .home.home_view  {
    display: flex;
    flex-direction: column;
}

.cart_info_part option {
    font-size: 1.5rem;
}


.cart_info_part h4 {
    font-size: 1.5rem;
    font-weight: 500;
    text-align: left;
    padding: 15px 0 5px 5px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.cart_info_part h4 span {
    font-size: 1.7rem;
    margin-right: 10px;
    font-family: "Cairo", sans-serif;
}

.cart_info_part input {
    width: 100%;
    padding: 8px 10px;
    border: .5px solid #d3d3d3;
    border-radius: 10px;
    background: transparent;
    font-size: 1.5rem;
    background: #fff;
}

.cart_info_part button {
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    font-size: 1.6rem;
    color: #fff;
    width: 100%;
    padding: 10px 0;
    background: #14213D;
    margin-top: 10px;
    cursor: pointer;
    border: 1px solid #14213D;
    text-transform: uppercase;
    transition: all .3s ease-in-out;
}

.cart_info_part button span {
    font-size: 1.7rem;
    font-family: "Cairo", sans-serif;

}

.cart_info_part button:hover {
    background: transparent;
    color: #14213D;
}

.cart_total {
    padding-top: 5%;
    width: 100%;
    height: 100%;
}

.cart_total table {
    width: 100%;
    margin-top: 20px;
}

.cart_total table .ville {
    font-size: 1.4rem;
    color: #14213D;
}

.cart_total table td {
    font-size: 1.7rem;
    font-weight: 500;
    color: #14213D;
    line-height: 25px;
    text-transform: capitalize;
}

.cart_total table td span {
    font-size: 1.8rem;
}

.cart_total table tr {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* ---------------------------------------------------  Cart Page Media Query --------------------------------------------------- */
/* ---------------------------------------------------  Cart Page Media Query --------------------------------------------------- */

@media screen and (max-width: 1350px) {
    .cart_page {
        padding: 30px 20px;
    }
}

@media screen and (max-width: 1200px) {
    .cart_page_container {
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .cart_product_part {
        width: 100%;
    }

    .cart_info_part {
        position: relative;
        min-height: 0;
        margin-bottom: 30px;
        width: 80%;
        top: 50px;
        right: 0;
        left: 0;
    }
}

@media screen and (max-width: 1024px) {

    .info_cart_body h2 {
        font-size: 1.8rem;
    }

    .info_cart_body h2 {
        font-size: 1.7rem;
    }

    .info_cart_body {
        padding: 0;
    }

    .msg_valide img {
        width: 90px;
    }

    .cart_info_part .msg_valide_container h3 {
        font-size: 3.2rem;
    }

    .cart_info_part .msg_valide_container h5 {
        font-size: 1.9rem;
    }
}

@media screen and (max-width: 890px) {
    .cart_product_part {
        width: 100%;
    }

    .cart_info_part {
        width: 100%;
    }

    .cart_img img {
        width: 100px;
        height: auto;
        max-height: 100px;
    }

    .info_cart_body h2 {
        font-size: 1.7rem;
    }

    .info_cart_body h2 {
        font-size: 1.6rem;
    }

    .msg_valide img {
        width: 85px;
    }

    .cart_info_part .msg_valide_container h3 {
        font-size: 3rem;
    }

    .cart_info_part .msg_valide_container h5 {
        font-size: 1.8rem;
    }

}

@media screen and (max-width: 768px) {

    .cart_product_part h3 {
        font-size: 1.8rem;
        padding: 10px;
    }

    .cart_container {
        flex-direction: column;
    }

    .cart_img img {
        width: 150px;
        height: auto;
        max-height: 150px;

    }

    .info_cart {
        width: 100%;
        margin-top: 20px;
    }

    .count {
        flex-direction: column-reverse;
    }

    .info_cart_body h2 {
        margin: 20px 0;
    }

    .msg_valide_container {
        width: 520px;
    }

    .msg_valide img {
        width: 80px;
    }

    .cart_info_part .msg_valide_container h3 {
        font-size: 2.8rem;
    }

    .cart_info_part .msg_valide_container h5 {
        font-size: 1.7rem;
    }
}




@media screen and (max-width: 576px) {

    .cart_container {
        margin: 0;
    }

    .cart_product_part h3 {
        margin: 0 auto;
        font-size: 2rem;
    }

    .info_cart {
        width: 85%;
    }

    .info_cart_body {
        flex-direction: column;
    }

    .colors_container h2 {
        text-align: center;
    }

    .count {
        flex-direction: row;
    }

    .cart_img img {
        width: 150px;
        max-height: 150px;
        margin: 0;
    }

    .msg_valide_container {
        width: 460px;
    }

    .msg_valide img {
        width: 75px;
    }

    .cart_info_part .msg_valide_container h3 {
        font-size: 2.6rem;
    }

    .cart_info_part .msg_valide_container h5 {
        font-size: 1.6rem;
    }
}

@media screen and (max-width: 480px) {
    .cart_product_part {
        margin: 0;
    }

    .cart_info_part h3 {
        font-size: 1.8rem;
    }

    .cart_info_part .delivery {
        font-size: 2.2rem;
        margin: 10px 0;
    }

    .cart_info_part h4 {
        font-size: 1.4rem;
    }

    .cart_info_part {
        padding: 20px 10px 10px 10px;
    }
    
    .cart_total table td {
        font-size: 1.5rem;
    }

    .cart_total table td span {
        font-size: 1.6rem;
    }

    .cart_info_part .delivery .label_ar {
        font-size: 1.6rem;
    }

    .msg_valide_container {
        width: 380px;
    }

    .msg_valide img {
        width: 70px;
    }

    .cart_info_part .msg_valide_container h3 {
        font-size: 2.5rem;
    }

    .cart_info_part .msg_valide_container h5 {
        font-size: 1.5rem;
    }

}

@media screen and (max-width: 400px) {
    .msg_valide_container {
        width: 340px;
    }

    .msg_valide img {
        width: 60px;
    }

    .cart_info_part .msg_valide_container h3 {
        font-size: 2.4rem;
    }

    .cart_info_part .msg_valide_container h5 {
        font-size: 1.4rem;
    }
}

@media screen and (max-width: 350px) {
    .msg_valide_container {
        width: 320px;
    }

    .msg_valide img {
        width: 55px;
    }

    .cart_info_part .msg_valide_container h3 {
        font-size: 2.2rem;
    }

    .cart_info_part .msg_valide_container h5 {
        font-size: 1.2rem;
    }
}





/* --------------------------------------------------- Empty Cart Page --------------------------------------------------- */
/* --------------------------------------------------- Empty Cart Page --------------------------------------------------- */

.empty_cart {
    position: relative;
    width: 100%;
    height: 100vh;
    top: 0px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    min-height: 500px;
}

.empty_cart img {
    width: 120px;
}

.empty_cart h2 {
    position: relative;
    font-size: 2.4rem;
    color: #1E1917;
    text-align: center;
}

.empty_cart p {
    font-size: 1.6rem;
    font-weight: 400;
    color: #1E1917;
    padding: 20px 0;
}

.empty_cart a {
    font-size: 1.8rem;
    color: #fff;
    width: 320px;
    padding: 15px 0;
    background: #14213D;
    cursor: pointer;
    border: 1px solid #14213D;
    text-decoration: none;
    text-align: center;
    transition: all .3s ease-in-out;

}

.empty_cart a:hover {
    background: transparent;
    color: #14213D;
}

/* --------------------------------------------------- Empty Cart Page Media Query --------------------------------------------------- */
/* --------------------------------------------------- Empty Cart Page Media Query --------------------------------------------------- */



@media screen and (max-width: 1350px) {
    .empty_cart {
        height: 90vh;
    }
}

@media screen and (max-width: 1200px) {
    .empty_cart img {
        width: 110px;
    }

    .empty_cart h2 {
        font-size: 2.1rem;
    }
}

@media screen and (max-width: 890px) {
    .empty_cart img {
        width: 100px;
    }

    .empty_cart h2 {
        font-size: 2rem;
    }

    .empty_cart p {
        font-size: 1.5rem;
    }

    .empty_cart a {
        font-size: 1.7rem;
    }
}

@media screen and (max-width: 768px) {
    .cart_page {
        padding: 30px 20px;
    }

    .empty_cart {
        height: 80vh;
    }
    .empty_cart img {
        width: 90px;
    }

    .empty_cart h2 {
        font-size: 1.9rem;
    }

    .empty_cart p {
        font-size: 1.5rem;
        padding: 10px 0;
        text-align: center;
    }

    .empty_cart a {
        font-size: 1.6rem;
        margin-top: 10px;
    }
}

@media screen and (max-width: 576px) {
    .empty_cart {
        height: 70vh;
        min-height: 600px;
    }

    .empty_cart a {
        font-size: 1.5rem;
        width: 280px;
    }
}


@media screen and (max-width: 480px) {

    
    .empty_cart h2 {
        font-size: 1.8rem;
    }

    .empty_cart p {
        font-size: 1.4rem;
    }

    .empty_cart a {
        font-size: 1.4rem;
        width: 260px;
    }
}

/* --------------------------------------------------- Products Page --------------------------------------------------- */
/* --------------------------------------------------- Products Page --------------------------------------------------- */

.products {
    position: relative;
    width: 100%;
    height: 100%;
    max-width: 1500px;
    min-height: 100vh;
    padding: 50px;
    top: 80px;
    margin: 0 auto;
}


.products .product_content {
    padding: 0;
}


@media screen and (max-width: 1024px) {
    .products {
        padding: 50px 30px;
    }

    .products .product_content .card_product {
        margin: 0 20px;
    }

}

@media screen and (max-width: 768px) {
    .products {
        padding: 50px 20px;
    }

    .back_links {
        padding: 5px 40px;
    }

    .back_links a {
        font-size: 1.5rem;
    }

    .back_links p {
        font-size: 1.5rem;
    }

    .card_product .free_icon {
        width: 50px;
    }
}

@media screen and (max-width: 576px) {
    .products {
        padding: 40px 10px;
    }

    .back_links {
        padding: 5px 20px;
    }
}

@media screen and (max-width: 480px) {
    .products {
        padding: 40px 5px;
    }

    .back_links  {
        justify-content: center;
        padding: 5px;
    }

    .products .product_content .card_product {
        margin: 0;
    }
}


@media screen and (max-width: 370px) {
    .products .product_content .card_product {
        height: 375px;
        width: 25%;
    }
}


/* --------------------------------------------- Message Page --------------------------------------------- */
/* --------------------------------------------- Message Page --------------------------------------------- */

.msg_section {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
}

/* ---------------- Contact Part ---------------- */

.contact_us {
    position: relative;
    width: 50%;
    height: 100%;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    z-index: 20;
}

.contact_us h2 {
    position: relative;
    font-size: 3.5rem;
    color: #03BBEE;
    line-height: 35px;
    font-weight: 400;
    z-index: 10;
    top: 50px;
}

.contact_us h4 {
    position: relative;
    font-size: 2.4rem;
    z-index: 10;
    top: -80px;
}

.contact_us img {
    z-index: 1;
    top: 20%;
    left: 50px;
    width: 400px;
}

/* ---------------- Form Part ---------------- */

.form {
    width: 50%;
    height: 100%;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 20;
    padding-top: 80px;
}

.form h2 {
    font-size: 2.8rem;
    font-weight: 400;
    color: #14213D;
}

.msg_section table {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.msg_section td {
    font-size: 1.8rem;
    font-weight: 600;
}

.msg_section tr {
    display: flex;
    flex-direction: column;
    padding: 8px 0;
}

.msg_section input {
    font-size: 1.6rem;
    width: 600px;
    padding: 8px;
    border-radius: 5px;
    border: .5px solid #112D4E;
}

.msg_section textarea {
    font-size: 1.6rem;
    width: 600px;
    height: 250px;
    padding: 8px;
    border-radius: 5px;
    border: .5px solid #112D4E;
    resize: none;
}

.msg_section button {
    width: 100%;
    padding: 12px 0;
    font-size: 2rem;
    color: #fff;
    background: #112D4E;
    border: 1px solid #112D4E;
    cursor: pointer;
    border-radius: 8px;
    transition: all .3s ease-in-out;
}

.msg_section button:hover {
    background: transparent; 
    color: #112D4E;
}



/* --------------------------------------------- Media Query Message Page --------------------------------------------- */
/* --------------------------------------------- Media Query Message Page --------------------------------------------- */

@media screen and (max-width: 1450px) {
    .msg_section input {
        width: 500px;
    }

    .msg_section textarea {
        width: 500px;
    }
}

@media screen and (max-width: 1200px) {
    .msg_section {
        flex-direction: column;
    }

    .contact_us {
        width: 100%;
        height: 50vh;
        min-height: 50vh;
        padding-top: 80px;
    }

    .contact_us img {
        width: 300px;
    }

    .form {
        width: 100%;
        padding: 0;
    }

    .msg_section input {
        width: 800px;
    }

    .msg_section textarea {
        width: 800px;
    }
}

@media screen and (max-width: 890px) {
    .contact_us {
        height: 40vh;
        min-height: 40vh;
        padding-top: 100px;
    }

    .contact_us h2 {
        font-size: 3.2rem;
    }

    .contact_us h4 {
        font-size: 2.2rem;
        padding: 10px 0;
    }

    .form h2 {
        font-size: 2.6rem;
    }

    .msg_section td {
        font-size: 1.7rem;
    }

    .msg_section input {
        width: 700px;
    }

    .msg_section textarea {
        width: 700px;
    }
}

@media screen and (max-width: 768px) {
    .contact_us h2 {
        font-size: 3rem;
    }

    .contact_us h4 {
        font-size: 2rem;
        padding: 5px 0;
    }

    .form h2 {
        font-size: 2.4rem;
    }

    .msg_section td {
        font-size: 1.6rem;
    }

    .msg_section input {
        width: 550px;
    }

    .msg_section textarea {
        width: 550px;
    }

    .msg_section button {
        font-size: 1.8rem;
    }
}

@media screen and (max-width: 576px) {
    .contact_us {
        height: 35vh;
        min-height: 35vh;
        padding-top: 150px;
    }

    .contact_us img {
        width: 250px;
    }

    .contact_us h2 {
        font-size: 2.8rem;
    }

    .contact_us h4 {
        font-size: 1.8rem;
    }

    .form h2 {
        font-size: 2.2rem;
    }

    .msg_section input {
        width: 400px;
    }

    .msg_section textarea {
        width: 400px;
    }

    .msg_section button {
        font-size: 1.6rem;
    } 
}

@media screen and (max-width: 480px) {
    .contact_us {
        height: 33vh;
        min-height: 33vh;
        padding-top: 150px;
        padding-bottom: 20px;

    }

    .contact_us h2 {
        font-size: 2.4rem;
        text-align: center;
    }

    .contact_us h4 {
        font-size: 1.6rem;
    }

    .form h2 {
        font-size: 2rem;
    }

    .contact_us img {
        width: 200px;
    }

    
    .msg_section input {
        width: 300px;
    }

    .msg_section textarea {
        width: 300px;
    }

    .msg_section td {
        font-size: 1.5rem;
    }
}



.nbr_panier.empty {
    color: var(--black2);
}

.nbr_panier.non-empty {
    color: var(--green);
}



