/* section hero */
    .caroussel_container{
        position: relative;
        width: 100%;
        height: max-content;
        background: var(--light-gray);
    }

    .caroussel_container .image{
        width: 100%;
        height: 100%;
        display: none;
    }

    .caroussel_container .image.active {
        display: block;
    }

    .caroussel_container .img_bg_caroussel{
        position: absolute;
        top: 0; left: 0;
        object-fit: cover;
        overflow: hidden;
    }

    .caroussel_container .button{
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 100%;
        display: flex;
        justify-content: space-between;
        z-index: 100;
    }

    .caroussel_container .button div{
        width: 40px;
        height: 40px;
        text-align: center;
        line-height: 40px;
        vertical-align: middle;
        align-items: center;
        cursor: pointer;
        color: white;
        background: var(--primary);
        user-select: none;
    }

    .caroussel_container .button div:hover{
        background: var(--second);
    }

    .caroussel_container .button .prev{
        border-radius: 0 5px 5px 0;
    }

    .caroussel_container .button .next{
        border-radius: 5px 0 0 5px;
    }

    .dots{
        position: absolute;
        bottom: 0px;
        left: 50%;
        transform: translateX(-50%);
        padding: 5px;
    }

    .dot{
        cursor: pointer;
        padding: .3rem;
        border-radius: 50%;
        background: #bbb;
        display: inline-block;
        margin: 0 2px;
    }

    .caroussel_container .active, .dot:hover{
        background: var(--second);
    }

    /* first caroussel */
        .container_text{
            position: relative;
            z-index: 10;
            width: 100%; height: 100%;
            padding: 64px;
            padding-top: 48px;
            display: flex;
            flex-direction: column;
            justify-content: center;
        }

        .container_text h1, .container_text p{
            width: 80%;
        }      
        
        .logo_caroussel_resethub{
            width: 150px;
            height: 150px;
            margin-top: 64px;
        }

        .logo_caroussel_resethub img{
            width: 100%; height: 100%;
            object-fit: contain;
        }

        .container_text h1{
            font-size: 35px;
            text-transform: uppercase;
            font-weight: 900;
            color: var(--white);
            margin: 16px 0;
        }

        .container_text p{
            color: var(--white);
            font-size: 18px;
        }   
        
        .container_text .flexBtn{
            margin-top: 16px;
        }

        .container_text{
            align-items: center;
        }

        .container_text h1, .container_text p{
            text-align: center;
        }
        
        .container_text .flexBtn{
            justify-content: center;
        }
    /* first caroussel */

    /* caroussel hero  */
        .container_hero{
            height: 100%;
            display: grid;
            grid-template-columns: repeat(2,1fr);
            gap: 32px;
            position: relative;
            z-index: 10;
            padding: 80px;
            padding-top: 120px;
        }

        .content_hero:first-child {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            gap: 8px;
            position: relative;
            z-index: 10;
        }

        .hero_info_package{
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            gap: 18px;
        }

        .hero_titre_package{
            text-align: center;
            font-size: 30px;
            font-weight: 700;
            color: var(--second);
        }

        .description_package{
            text-align: center;
            font-size: 18px;
            white-space: pre-line;                                             
        }

        .content_hero:last-child {
            display: flex;
            align-items: center;
        }

        .hero_img{
            width: 100%;
            height: auto;
        }

        .hero_img img{
            width: 100%; height: 100%;
            object-fit: contain;
        }

        .container_hero.inverse .content_hero:first-child{
            order: 2;
        }
        .container_hero.inverse .content_hero:last-child{
            order: 1;
        }
    /* caroussel hero  */

    /* design */
        .box_design{
            position: absolute;
            bottom: -8px; left: 0;
            width: 100%; height: auto;
        }

        .box_design img{
            width: 100%; height: 100%;
            object-fit: cover;
        }
    /* design */
/* section hero */

/* section plan */
    .plans{
        position: relative;
        z-index: 1;
    }
/* section plan */

/* section service */
    .container_services{
        display: grid;
        grid-template-columns: repeat(auto-fit,minmax(300px,1fr));
        justify-content: center;
        gap: 32px;
        padding: 0 80px;
    }

    .content_services:first-child, .content_services:last-child, .service{
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .content_services:first-child, .content_services:last-child{
        gap: 32px;
    }

    .box_img_service{
        width: auto;
        height: 50px;
    }

    .box_img_service img{
        width: 100%; height: 100%;
        object-fit: contain;
    }

    .titre_service{
        text-align: center;
        font-weight: 700;
        margin: 8px 0;
    }

    .text_service{
        text-align: center;
        font-size: 15px;
    }

    .box_img_service_tel{
        width: 100%; height: auto;
    }

    .box_img_service_tel img{
        width: 100%; height: 100%;
        object-fit: contain;
    }

    .content_services .btn{
        width: 80%;
        margin-top: 16px;
    }
/* section service */

/* section project */
    .container_projects{
        display: grid;
        grid-template-columns: repeat(2,1fr);
        justify-content: center;
        gap: 16px;
        width: 900px;
        margin: 0 auto;
        margin-bottom: 25px;
    }

    .content_project{
        display: grid;
        grid-template-columns: repeat(3,1fr);
        gap: 8px;
    }           

    .item_project{
        background: var(--light-white);
        border-radius: 16px;
        height: 130px;
        padding: 16px;
    }

    .item_project:nth-child(1){
        grid-column: 1/4;
        grid-row: 1;
    }

    .item_project:nth-child(8){
        grid-column: 1/4;
        grid-row: 4;
    }
/* section project */

/* section statistique */
    .statistiques{
        position: relative;
        width: 100%;
        background: url(../images/pieces/banniere_web.jpg);
        padding-top: 32px;
        padding-bottom: 50px;
        margin-bottom: 125px;
    }

    .container_stat{
        width: 800px;
        margin: 0 auto;
        background: var(--white);
        border-radius: 16px;
        display: grid;
        grid-template-columns: repeat(4,1fr);
        gap: 16px;
        padding: 16px;
        position: absolute;
        bottom: 0; left: 50%;
        transform: translate(-50%, 50%);
    }

    .content_stat{
        color: var(--black);
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    .box_img_stat{
        width: auto; height: 50px;   
    }

    .box_img_stat img{
        width: 100%; height: 100%;
        object-fit: contain;
    }

    .count_stat{
        font-weight: 700;
        font-size: 30px;
        color: var(--darkblue);
        text-align: center;
    }

    .name_stat{
        text-align: center;
        color: var(--black);
    }
/* section statistique */

/* responsive */
    /* section hero */
        /* first caroussel */
            @media screen and (max-width: 1080px) {
                .container_text h1, .container_text p{
                    width: 100%;
                }
            }

            @media screen and (max-width: 800px) {
                .container_text h1{
                    font-size: 28px;
                }

                .container_text p{
                    font-size: 17px;
                }
            }

            @media screen and (max-width: 650px){
                .logo_caroussel_resethub{
                    width: 110px;
                    height: 110px;
                }
            }

            @media screen and (max-width: 550px) {
                .container_text{
                    padding: 48px;
                    padding-bottom: 64px;
                }

                .container_text h1{
                    font-size: 25px;
                }

                .container_text p{
                    font-size: 16px;
                }
            }

            @media screen and (max-width: 400px) {
                .logo_caroussel_resethub{
                    width: 90px;
                    height: 90px;
                }

                .container_text h1{
                    font-size: 22px;
                }

                .container_text p{
                    font-size: 15px;
                }
            }
        /* first caroussel */

        /* caroussel hero */
            @media screen and (max-width: 1000px) {
                .container_hero{
                    display: flex;
                    flex-direction: column;
                }

                .container_hero.inverse .content_hero:first-child{
                    order: 1;
                }
                .container_hero.inverse .content_hero:last-child{
                    order: 2;
                }
            }

            @media screen and (max-width: 650px) {
                .hero_titre_package{
                    font-size: 25px;
                }

                .description_package{
                    font-size: 16px;
                }
            }

            @media screen and (max-width: 550px) {
                .container_hero{
                    padding-left: 48px;
                    padding-right: 48px;
                }
            }

            @media screen and (max-width: 450px) {
                .hero_titre_package{
                    font-size: 22px;
                }

                .description_package{
                    font-size: 15px;
                }
            }
        /* caroussel hero */
    /* section hero */

    /* section service */
        @media screen and (max-width: 1350px) {
            .container_services{
                padding: 0;
            }
        }

        @media screen and (max-width: 1142px) {
            .container_services{
                grid-template-columns: repeat(1,1fr);
                max-width: 700px;
                margin: 0 auto;
            }

            .box_img_service_tel{
                height: 650px;
            }
        }

        @media screen and (max-width: 500px) {
            .box_img_service_tel{
                height: 500px;
            }
        }
    /* section service */

    /* section project */
        @media screen and (max-width: 1100px) {
            .container_projects{
                display: flex;
                flex-wrap: wrap;
                justify-content: center;
                gap: 20px;
                max-width: 650px;
            }

            .content_project{
                width: 100%;
            }

            .item_project{
                height: 185px;
            }
        }

        @media screen and (max-width: 820px) {
            .container_projects{
                max-width: 550px;
            }

            .item_project{
                height: 150px;
            }

            .item_project:nth-child(1), .item_project:nth-child(8){
                height: 180px;
            }
        }

        @media screen and (max-width: 700px) {
            .container_projects{
                max-width: 450px;
            }
        }

        @media screen and (max-width: 560px) {
            .container_projects{
                max-width: 400px;
            }

            .content_project{
                grid-template-columns: repeat(2,1fr);
            } 

            .item_project:nth-child(1), .item_project:nth-child(8){                
                grid-column: 1/3;
            }

            .item_project:nth-child(8){
                grid-row: 5;
            }
        }

        @media screen and (max-width: 500px) {
            .container_projects{
                max-width: 350px;
            }

            .item_project{
                height: 120px;
            }

            .item_project:nth-child(1), .item_project:nth-child(8){
                height: 150px;
            }
        }

        @media screen and (max-width: 400px) {
            .container_projects{
                max-width: 300px;
            }

            .item_project{
                height: 100px;
            }

            .item_project:nth-child(1), .item_project:nth-child(8){
                height: 130px;
            }
        }
    /* section project */

    /* section statistique */
        @media screen and (max-width: 860px) {
            .container_stat{
                width: max-content;
                grid-template-columns: repeat(3,1fr);
            }

            .statistiques{
                margin-bottom: 180px;
                padding-bottom: 120px;
            }
        }

        @media screen and (max-width: 500px) {
            .container_stat{
                width: 90%;
                grid-template-columns: repeat(2,1fr);
            }
        }
    /* section statistique */
/* responsive */