/*--------------------- 
DEBUGGING OUTLINE START 
--------------------- */

/* *{
    outline : 1px solid red!important;
} */

/*---------------------
DEBUGGING OUTLINE END 
--------------------- */



/*--------------------- 
RESET START
--------------------- */
*,
::before,
::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
/*---------------------
RESET END
--------------------- */

/*---------------------
SCROLLBAR START
--------------------- */
/* Masquer la scrollbar pour les éléments WebKit (Chrome, Safari, etc.) */
::-webkit-scrollbar {
    width: 0;
    background: transparent; /* rendre la scrollbar transparente */
    scroll-snap-type: x mandatory;
}

/* Masquer la scrollbar pour Firefox */
body {
    scrollbar-width: auto; /* Firefox 64+ */
    -ms-overflow-style: scrollbar;  /* Internet Explorer 10+ */
    scroll-snap-type: x mandatory;
}

/* Masquer la scrollbar pour IE10+ */
body::-ms-scrollbar {
    display: none;
    scroll-snap-type: x mandatory;
}
/*---------------------
SCROLLBAR END
--------------------- */


/*--------------------- 
Display START
--------------------- */
.d-none{
    display: none;
}

.d-flex{
    display: flex;
}

.d-column{
    display: flex;
    flex-direction: column;
}

.d-row{
    display: flex;
    flex-direction: row;
}

.d-wrap{
    display: flex;
    flex-wrap: wrap;
}


/*---------------------
Display none END
--------------------- */


/*--------------------- 
Body START
--------------------- */
@font-face {
    font-family: "Poppins";
    src: url(/font/Poppins/Poppins-Regular.ttf);
}
@font-face {
    font-family: "Righteous";
    src: url(/Righteous/Righteous-Regular.ttf);
}


:root {
    scroll-snap-type: 100vh;
    scroll-behavior: smooth;


    /* Colors */
    --dark-blue: rgb(32, 63, 146);
    --blue: rgb(22, 156, 191);
    --light-blue: rgb(159, 199, 235);
    
    /* General */ 
    --dark-base: #222;
    --lighter-dark: #333;
    --gray: #858585;
    --light-gray: #d2d2d2;
    --light-white: #f1f1f1;
    
    /* Active */
    --active-almond: #feecd7;
    --active-light-white: #dedede;
    --active-crimson: #c51337;
    
    /* Fonts */
    font-family: "Poppins", sans-serif;
    --base-font: "Poppins", sans-serif;
    --accent-font: Nunito sans, sans-serif;
    
    /* Font-size ( taille en px / 16 (1rem) = taille en rem -> Exemple : 72/16 = 4.5rem ) */
    
    --fs-8: 0.5rem;
    --fs-10: 0.625rem;
    --fs-12: 0.75rem;
    --fs-14: 0.875rem;
    --fs-16: 1rem;
    --fs-18: 1.125rem;
    --fs-20: 1.25rem;
    --fs-22: 1.375rem;
    --fs-24: 1.5rem;
    --fs-26: 1.625rem;
    --fs-28: 1.75rem;
    --fs-30: 1.875rem;
    --fs-32: 2rem;
    --fs-34: 2.125rem;
    --fs-36: 2.25rem;
    --fs-38: 2.375rem;
    --fs-40: 2.5rem;
    --fs-42: 2.625rem;
    --fs-44: 2.75rem;
    --fs-46: 2.875rem;
    --fs-48: 3rem;
    --fs-50: 3.125rem;
    --fs-52: 3.25rem;
    --fs-54: 3.375rem;
    --fs-56: 3.5rem;
    --fs-58: 3.625rem;
    --fs-60: 3.75rem;
    --fs-62: 3.875rem;
    --fs-64: 4rem;
    --fs-66: 4.125rem;
    --fs-68: 4.25rem;
    --fs-70: 4.375rem;
    --fs-72: 4.5rem;
    
    
    
}

h1{
    font-size: var(--fs-32);
    color: var(--dark-blue);
    text-align: center;
    margin: 5% 0%;
}
h2{
    font-size: var(--fs-22);
    color: var(--light-blue);
    text-align: left;
    margin-bottom: 2.5%;
}
h3{
    font-size: var(--fs-24);
}
h4{
    font-size: var(--fs-20);
}
h5{
    font-size: var(--fs-20);
}
h6{
    font-size: var(--fs-);
}
p{
    font-size: var(--fs-18);
}


ol, ul {
    padding-left: 0px;
}



/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE LE CSS COMMUN A PLUSIEURS PAGES          ----------------------------------
-------------------------------------------------------------------------------------------------------*/
/*CONTAINER DES PAGES*/
.container{
    width: 90%;
    margin: 0 auto;
}


.menuicon{
    display: none;
    position: absolute;
    font-size: 22px;
    cursor: pointer;
    right: 20%;
    transition: 1s all;
}

.menuiconclose{
    position: absolute;
    color: white;
    font-size: 42px;
    cursor: pointer;
    top: 5%;
    right: 5%;
    transition: 1s all;
}

.menuiconclose:hover{
    transform: rotate(90deg);

}

.menuicon:hover{
    transform: rotate(90deg);
}

.menu{
    padding: 20px;
    transform: translateX(0vh);
    transition: 0.5s all ;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    position: fixed;
    z-index: 1999;
    background-color: var(--blue);
    width: 55%;
    height: 100%;
}

.menuhidden{
    transform: translateX(-200vh);
}

.menu ul {
    display: flex;
    flex-direction: column;
    gap: 20px;
    text-decoration: none;
    list-style: none;
    margin-top: 30%;

}





.menu ul li a {
    display: block;
    color: white;
    text-decoration: none;
    font-size: 28px;
    position: relative;
    padding: 0.2em 0;
    font-weight: 500;
    overflow: hidden;
    color: white(24,43,127,1);
    text-decoration: none;

  }
  
  .menu ul li  a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0.1em;
    
    background-color: rgb(255, 255, 255);
    opacity: 0;

    transition: opacity 300ms, transform 300ms;
  }
  
  .menu ul li  a::after {
    opacity : 1;
    transform: translate3d(-100%, 0, 0);
  }

  .menu ul li a:hover::after,
  .menu ul li a:focus::after {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }  


/*SUBMIT BUTTON*/
button{
    font-size: var(--fs-16);
    text-decoration: none; 
    font-family: "Poppins";
    color: black;
    padding: 7.5px 15px;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
    border-radius: 10px;
    background-color: var(--light-blue);
    transition: 0.75s all ;
    border-style: none;
    position: relative;
    margin-top: 1em;
    cursor: pointer;
}

button:hover{
    background-color: var(--dark-blue);
    color: white;
}

.containerButton{
    display: flex;
    justify-content: center;
    height: auto;
    padding: 20px;
    padding-top: -10px;
    gap: 10px;
    width: 100%;
}

.containerButton-right{
    display: flex;
    justify-content: flex-end;
    height: auto;
    padding: 20px;
    padding-top: -10px;
    gap: 10px;
    width: 100%;

}

.containerMargin{
    margin-top: 50px;
    margin-bottom: 50px;
}

/*button a*/
.button{
    font-size: var(--fs-16);
    text-decoration: none; 
    font-family: "Poppins";
    color: black;
    padding: 7.5px 15px;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
    border-radius: 10px;
    background-color: var(--light-blue);
    transition: 0.75s all ;
    margin-top: 1em;
}
.button:hover{
    background-color: var(--dark-blue);
    color: white;
    
}
.button:active{
    background-color: var(--blue);
}


/*Tableau*/
tr th:last-child{
    border-top-right-radius: 20px;
}
tr th:first-child{
    border-top-left-radius: 20px;
}

tr:last-child td:first-child{
    border-bottom-left-radius: 20px ;


}
tr:last-child td:last-child{
    border-bottom-right-radius: 20px ;

}



/*FORMULAIRES*/

/*form*/
form{
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    padding-left: 3%;
}

/*input*/
input{
    margin: 3px 0px 20px 0px;
    border: 1px solid lightgray;
    border-radius: 5px;
    padding: 5px;
    font-family: "Poppins", sans-serif;
    font-size: var(--fs-12);
}
input:active{
    border: 1px solid lightgray;
    border-radius: 5px;
}

/*textarea*/
textarea{
    margin-bottom: 5%;
    border: 1px solid lightgray;
    border-radius: 5px;
    padding: 5px;
    font-family: "Poppins", sans-serif;
    font-size: var(--fs-12);
}
textarea:active{
    margin-bottom: 10%;
    border: 1px solid lightgray;
    border-radius: 5px;
    padding: 5px;
}
label{
    padding: 5px;
}

/* Modifier l'apparence de la zone de texte */
input[type="file"] {
    background-color: white;
    padding: 6px 10px;
    border-radius: 4px;
    font-family: Poppins, sans-serif;
    color: #333;
    cursor: pointer;
}

select{
  margin: 3px 0px 20px 0px;
  border: 1px solid lightgray;
  border-radius: 5px;
  padding: 5px;
  font-family: "Poppins", sans-serif;
  font-size: var(--fs-12);
}


 /* Cacher le bouton de parcourir*/
 input[type="file"]::-webkit-file-upload-button {
    display: none;
}

  /* Ajouter un bouton personnalisé */
  .custom-file-input::before {
    content: 'Test';
    padding: 8px 12px;
    background-color: #ccc;
    color: #fff;
    border: none;
    border-radius: 4px;
  }

/*TABLEAUX*/

/*<table> : Définit un tableau*/
table{
    width: 100%;
    height: auto;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
    border-radius: 20px;
    border-collapse: collapse;
    padding: 200px;
}
/*<tr> : Définit une ligne dans un tableau*/
tr{
}
/*<th> : Définit une cellule d'en-tête (utilisée pour les titres ou les étiquettes des colonnes ou des lignes)*/
th{
    text-align: left;
}
/*<td> : Définit une cellule de données (utilisée pour les données ordinaires)*/
td{
    font-size: var(--fs-14);
    height: 50px;
}
/*<caption> : Définit le titre du tableau*/
caption{
    
}
/*<thead> : Définit la section d'en-tête du tableau*/
thead{
    height: 50px;
    border-bottom: 1px solid black;
}
/*<tbody> : Définit la section du corps du tableau*/
tbody{
    
}
/*<tfoot> : Définit la section du pied de tableau*/
tfoot{
    
}
/*<colgroup> : Définit un groupe de colonnes dans un tableau pour appliquer des styles ou des attributs communs*/
colgroup{
    
}
/*<col> : Définit les attributs de mise en forme pour une ou plusieurs colonnes spécifiques dans un <colgroup>*/
col{
    
}




/*Tablette*/
@media (min-width: 426px) and (max-width: 768px) {
    .container{
        width: 90%;
    }
  }

  /*Mobile L*/
  @media (min-width: 376px) and (max-width: 425px) {
    .container{
        width: 90%;
    }
  }

  /*Mobile M*/
  @media (min-width: 321px) and (max-width: 375px) {
    .container{
        width: 90%;
    }
  }

  /*Mobile S*/
  @media (max-width: 320px) {
    .container{
        width: 90%;
    }
  }

/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DES ANIMATIONS          ---------------------
-------------------------------------------------------------------------------------------------------*/

@keyframes fadeup{
    0%{
        opacity: 0;
        transform: translateY(400px);
    }
    100%{
        opacity: 1;
        transform: translateY(0px);

    }
}


@keyframes apparition{
    0%{
        opacity: 0;
    }
    100%{
        opacity: 1;
    }
}


@keyframes slideleft{
    0%{
        opacity: 0;
        transform: translateX(-200px);
    }
    100%{
        opacity: 1;
        transform: translateX(0px);
    }
}


@keyframes slideright{
    0%{
        opacity: 0;
        transform: translateX(200px);
    }
    100%{
        opacity: 1;
        transform: translateX(0px);
    }
}



/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DES HEADER ET FOOTER          ------------------------
-------------------------------------------------------------------------------------------------------*/


/*Ici Commence le Header*/


/*top-nav*/
.top-nav{
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--dark-blue);
    height: 5vh;
}

.top-nav1{
    width: 25%;
    padding-left: 3%;
}
.top-nav2{
    width: 50%;
    text-align: center;
}
.top-nav3{
    display: flex;
    justify-content: flex-end;
    width: 25%;
    padding-right: 3%;
}

.top-nav a{
    text-decoration: none;
    color: white;
    font-size: var(--fs-14);
}
.top-nav p{
    color: white;
    font-size: var(--fs-14);
    margin-bottom: 0px;
}




/*bottom-nav*/
.bottom-nav{
    display: flex;
    align-items: center;
    padding: 1% 0;
    height: 15vh;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
}
.bottom-nav-logo{
    width: 20%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.bottom-nav-logo img{
    width: 80%;
    padding: 1%
}
nav{
    width: 60%;
}
nav ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
nav ul li{
    list-style-type: none;
    margin: 0 2%;

}

nav ul li a:hover{
    color:rgba(26,139,177,1);
}


nav ul li a {
    display: block;
    position: relative;
    padding: 0.2em 0;
    font-weight: 500;
    overflow: hidden;
    color: rgba(24,43,127,1);
    text-decoration: none;
}
  
nav ul li  a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0.1em;

    background-color: rgba(144,186,231,1);
    opacity: 0;

    transition: opacity 300ms, transform 300ms;
}

nav ul li  a::after {
    opacity : 1;
    transform: translate3d(-100%, 0, 0);
}

nav ul li a:hover::after,
nav ul li a:focus::after {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}  

.sticky-nav{
    
    align-items: center;
    justify-content: center;
    padding: 1% 0;
    height: 7.5vh;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
    width: 100%;
    position: fixed;
    top: 0;
    background-color: white;
    z-index: 999;
    opacity: 0;
    transition: 0.5s all;
}

.show{
    opacity: 1;
}

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



/*Ici Commence le Footer*/
footer{
    position: relative;
}

.scroll-to-top {
    display: none; /* Masque la flèche par défaut */
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 40px;
    height: 40px;
    color: var(--blue);
    text-align: center;
    line-height: 40px;
    font-size: 20px;
    cursor: pointer;
    z-index: 1;
  }
  
  .scroll-to-top.show {
    display: block; /* Affiche la flèche lorsqu'elle est visible */
  }
  



.footer-arrow{
    position: absolute;
    bottom: 55vh;
    right: 3vw;
    color: black !important;
}

/*Footer-top*/


.footer-top{
    margin-top: 10%;
    padding: 30px;
    display: flex;
    justify-content: space-evenly;
    align-items: flex-start;
    box-shadow: rgba(0, 0, 0, 0.35) 0px -10px 15px;
}
.footer-top-left h2,
.footer-top-center h2,
.footer-top-right h2{
    font-size: var(--fs-16);
    margin: 3% 0 15% 0;
    color: rgba(24,43,127,1);

}
.footer-top-left h3{
    font-size: var(--fs-18);
    margin: 3% 0 10% 0;
}
.footer-top-left h4{
    font-size: var(--fs-16);
    margin: 3% 0 3% 0;
}
.footer-top-left p{
    font-size: var(--fs-16);
}
.footer-top li{
    list-style-type: none;
    width: 100%;
    font-size: var(--fs-16);
    padding-bottom: 10px
}


.footer-top li a{
    text-decoration: none;
    color: black;
}
.footer-top a{
    text-decoration: none;
    color: black;
}

.footer-top li a:hover{
    text-decoration: none;
    color: rgba(24,43,127,1);
}
.footer-top a:hover{
    text-decoration: none;
    color: rgba(24,43,127,1);
}

.footer-show {
    display: none;
}





/*Footer-bottom*/
.footer-bottom{
    height: 7.5vh;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    background-color: var(--dark-blue);
    gap: 2%;
}


.footer-bottom-left{
    width: 30%;
    margin-left:2%;
}
.footer-bottom-left a{
    
    color: black;
}
.footer-bottom-left a:hover{
    
    color: blue;
}
.footer-bottom-left i{
    filter: invert();
    width: auto;
    height: 80%;
}


.footer-bottom-center{
    width: 30%;
    text-align: center;
}

.footer-bottom-center a {
    text-decoration: none;
    color: rgb(208, 208, 208);

}
.footer-bottom-center a:hover {
    text-decoration: none;
    color: rgb(255, 255, 255);

}


.footer-bottom-center p{
    color: white;
    font-size: var(--fs-12);
}


.footer-bottom-right{
    width: 30%;
    text-align: right;
    margin-right:2%;
    font-size: var(--fs-12);
}
.footer-bottom-right a{
    text-decoration: none;
    color: white;
    margin:0 2%;
}
.footer-bottom-right a:hover{
    text-decoration: underline;
}


.linkdicon:hover{
    color: blue !important;
    text-decoration: none;
}





/*Tablette*/
@media (min-width: 426px) and (max-width: 768px) {

    .bottom-nav-logo{
        width: 20%;
       
    }

    .footer-bottom{
        height: auto;
        padding: 2% 0%;
    }
    .footer-bottom-left{
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .footer-bottom-center p{
        font-size: var(--fs-12);
    }
    .footer-bottom-right{
        font-size: var(--fs-12);
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
        justify-content: flex-end;
    }
    .footer-top-left h2, .footer-top-center h2, .footer-top-right h2 {
        font-size: var(--fs-16);
    }
    .footer-top-left h3,
    .footer-top-left h4{
        font-size: var(--fs-16);
    }
 
    .footer-top-left p,
    .footer-top li{
        font-size: var(--fs-16);
    }
    .footer-arrow{
        bottom: 43vh;
    }
  }

  /*Mobile L*/
  @media (min-width: 376px) and (max-width: 425px) {

    .frc-captcha {
        min-width: 200px !important;
    }


    .bottom-nav-logo{
        width: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .footer-bottom{
        height: auto;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .footer-bottom-left,
    .footer-bottom-center,
    .footer-bottom-right{
        width: 90%;
        text-align: center;
        margin: 2% 0%;
    }
    .footer-bottom-right{
        display: flex;
        flex-direction: row;
    }
    .footer-top{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        width: 100%;
    }
    .footer-top-left h3,
    .footer-top-left h4{
        font-size: var(--fs-16);
    }
    .footer-top-left p,
    .footer-top li{
        font-size: var(--fs-16);
    }
    .footer-top-left h2, .footer-top-center h2, .footer-top-right h2 {
        margin-top:10%;
    }
    .footer-bottom-center{
        height: 100%;

    }
    .footer-bottom-center p{
        font-size: var(--fs-12);
    }
    .footer-bottom-right{
        font-size: var(--fs-12);
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
    }
    .footer-arrow{
        bottom: 82vh;
    }
  }

  /*Mobile M*/
  @media (min-width: 321px) and (max-width: 375px) {
    .frc-captcha {
        min-width: 180px !important;
    }

    .frc-captcha *{
        font-size: 10px !important;
    }
    .bottom-nav-logo{
        width: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .footer-bottom{
        height: auto;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .footer-bottom-left,
    .footer-bottom-center,
    .footer-bottom-right{
        width: 90%;
        text-align: center;
        margin: 2% 0%;
    }
    .footer-bottom-right{
        display: flex;
        flex-direction: row;
    }
    .footer-top{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        width: 100%;
    }
    .footer-top-left h3,
    .footer-top-left h4{
        font-size: var(--fs-16);
    }
    .footer-top-left p,
    .footer-top li{
        font-size: var(--fs-16);
    }
    .footer-top-left h2, .footer-top-center h2, .footer-top-right h2 {
        margin-top:10%;
    }
    .footer-bottom-center p{
        font-size: var(--fs-16);
    }
    .footer-bottom-right{
        font-size: var(--fs-16);
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
        justify-content: flex-end;
    }
    .footer-arrow{
        bottom: 81vh;
    }
  }

  /*Mobile S*/
  @media (max-width: 320px) {

    .frc-captcha {
        min-width: 170px !important;
    }

    .frc-captcha *{
        font-size: 10px !important;
    }

    .bottom-nav-logo{
        width: 70%;
        display: flex;
        justify-content: center;
        align-items: center;
    }


    .footer-bottom{
        height: auto;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .footer-bottom-left,
    .footer-bottom-center,
    .footer-bottom-right{
        width: 90%;
        text-align: center;
        margin: 2% 0%;
    }
    .footer-bottom-right{
        display: flex;
        flex-direction: row;
    }
    .footer-top{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        width: 100%;
    }
    .footer-top-left h3,
    .footer-top-left h4{
        font-size: var(--fs-16);
    }
    .footer-top-left p,
    .footer-top li{
        font-size: var(--fs-16);
    }
    .footer-top-left h2, .footer-top-center h2, .footer-top-right h2 {
        margin-top:10%;
    }
    .footer-bottom{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
        height: auto;
        row-gap: 2%;
    }
    .footer-bottom-left{
        width: 100%;
        display: flex;
        justify-content: center;

    }
    .footer-bottom-center{
        width: 100%;
        display: flex;
        justify-content: center;
    }
    .footer-bottom-right{
        font-size: var(--fs-12);
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
        justify-content: flex-end;
    }
    .footer-bottom-center p{
        font-size: var(--fs-12);
    }
    .footer-bottom-right{
        font-size: var(--fs-12);
    }
    .footer-arrow{
        bottom: 80vh;
    }
  }

  @media (min-width: 426px) and (max-width: 675px) {

    
    .bottom-nav-logo{
        width: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .footer-bottom{
        height: auto;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .footer-bottom-left,
    .footer-bottom-center,
    .footer-bottom-right{
        width: 90%;
        text-align: center;
        margin: 2% 0%;
    }
    .footer-bottom-right{
        display: flex;
        flex-direction: row;
    }
    .footer-top{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        width: 100%;
    }
    .footer-top-left,
    .footer-top-center,
    .footer-top-right{
        margin-left:25%
    }
    .footer-top-left h3,
    .footer-top-left h4{
        font-size: var(--fs-16);
    }
    .footer-top-left p,
    .footer-top li{
        font-size: var(--fs-16);
    }
    .footer-top-left h2, .footer-top-center h2, .footer-top-right h2 {
        margin-top:10%;
    }
    .footer-bottom{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
        height: auto;
        row-gap: 2%;
    }
    .footer-bottom-left{
        width: 100%;
        display: flex;
        justify-content: center;

    }
    .footer-bottom-center{
        width: 100%;
        display: flex;
        justify-content: center;
    }
    .footer-bottom-right{
        font-size: var(--fs-12);
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
        justify-content: flex-end;
    }
    .footer-bottom-center p{
        font-size: var(--fs-12);
    }
    .footer-bottom-right{
        font-size: var(--fs-12);
    }
    .footer-arrow{
        bottom: 80vh;
    }
  }


/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DE LA PAGE ACCUEIL          ------------------------
-------------------------------------------------------------------------------------------------------*/


.accueil-hero{
    height: 83vh;
    width: 100vw;
    background-image: url(../assets/img/accueil-chantier3.jpg);
    object-fit: contain;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;

    display: flex;
    justify-content: center;
    align-items: center;
}
.accueil-hero h1{
    color: white;
    font-size: var(--fs-42);
    backdrop-filter: brightness(40%);
    
    border-radius: 20px;
    padding: 1% 2%;
}





.accueil-main h2{
    margin: 3% 0% 5% 0%;
    text-align: center;
    color: var(--blue)!important;
    font-size: var(--fs-26);
}

.accueil-section1,
.accueil-section2,
.accueil-section3,
.accueil-section4,
.accueil-section5,
.accueil-section-services{
    display: flex;
    align-items: center;
    gap: 3%;
    margin-bottom: 7%;
}

.accueil-section1-img{
    width: 30%;
}
.accueil-section1-img img{
    width: 100%;
    height: auto;
    border-radius: 20px;
}
.accueil-section1-content{
    width: 70%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-end;
}
.accueil-section1-content p{
    margin-bottom: 2%;
}

.section1-btn{
    align-self: center;
}


.accueil-section2{
    display: flex;
    justify-content: center;
    gap: 3%;
}

.accueil-section2-img1,
.accueil-section2-img2,
.accueil-section2-img3,
.accueil-section2-img4{
    width: 15rem;
    height: 10rem;
    display: flex;
    justify-content: center;
    align-items: center;
}
.accueil-section2 img{
    width: 100%;
    height: auto;
    transition: all 0.5s ease-out;
}
.accueil-section2 img:hover{
    width: 100%;
    height: auto;
    transform: scale(110%);
}


.accueil-section3{
    display: flex;
    flex-direction: row-reverse;
    gap: 3%;
    margin-bottom: 7%;
}
.accueil-section3-img{
    width: 30%;
}
.accueil-section3-img img{
    width: 100%;
    height: auto;
    border-radius: 20px;
}
.accueil-section3-content{
    width: 70%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.accueil-section3-content p{
    margin-bottom: 2%;
}


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


.accueil-section4-master-card{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    gap: 5%;
}

.accueil-section4-card{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    width: 33%;
    overflow: hidden;
    gap: 3%;
}

.accueil-section4-card-title{
    width: 100%;
    text-align: center;
}

.accueil-section4-card-content{
    display: flex;
    flex-direction: column;
    width: 100%;
    border: 2px solid var(--blue);
    border-radius: 20px;
    overflow: hidden;
}


.accueil-section4-card-content img{
    width: 100%;
    height: 18rem;
    object-fit: cover;
}
.accueil-section4-card h3{
    font-size: var(--fs-18);
    margin: 2% 4% 4% 4%;
}
.accueil-section4-card p{
    margin:4%;
}
.accueil-section4-card-content a{
    width: 50%;
    margin: 3% auto 5% auto;
    text-align: center;
}
.accueil-section4-card-btn{
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    gap: 5%;
    width: 100%;
    height: 5rem;
}

.accueil-section4-btn{
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 1%;
}


.accueil-section5{
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.accueil-section5 p{
    text-align: center;
}
.accueil-section5 p a{
    text-decoration: none;
    color: var(--blue);
    font-weight: 500;
}
.accueil-section5 p a:hover{
    text-decoration: none;
    color: var(--dark-blue);
}

.accueil-section5-btn{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60vw;
}

.accueil-section5-btn1{
    margin-right: 2%;
    margin-top: 2%;
}
.accueil-section5-btn2{
    margin-left :2%;
    margin-top: 2%;
}




.accueil-section-services{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-end;
    width: 100%;
}

.accueil-section-services-master-card{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    gap: 5%;
}

.accueil-section-services-card{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-radius: 20px;
    width: 100%;
}
.accueil-section-services-card:nth-child(2) a img{
    border: 1px solid black;
    padding: 10px;
    object-fit: contain;
}

.accueil-section-services-card-title{
    text-align: center;
    width: 100%;
    margin-top:5%;
}
.accueil-section-services-card-img{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    overflow: hidden;
}

.accueil-section-services-card-img img{
    width: 100%;
    height: 18rem;
    border-radius: 20px;
    object-fit: cover;
}


.accueil-section-services-card h3{
    font-size: var(--fs-18);
    margin: 2% 4% 4% 4%;
}
.accueil-section-services-card p{
    margin:4%;
}
.accueil-section-services-card a{
    
    width: 100%;
}

.accueil-section-services-btn{
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 1%;
}



/*Tablette*/
@media (min-width: 426px) and (max-width: 768px) {
    .accueil-hero h1{
        margin: 5%;
        font-size: var(--fs-24);
    }
    .accueil-main h2, h2{
        font-size: var(--fs-22);
        margin: 5% 0;
    }
    .accueil-section1{
        align-items: flex-start;
        justify-content: center;
        align-items: center;
        flex-direction: column;
    }
    .accueil-section1-img{
        width: 80%;
        margin-bottom: 3%;
    }
    .accueil-section1-content{
        width: 80%;
    }
    .section1-btn{
        font-size: var(--fs-18);
    }
    .accueil-section-services-card h3,
    .accueil-section4-card h3{
        font-size: var(--fs-16);
    }
    .accueil-section-services-master-card{
        display: flex;
        flex-direction: column;
    }
    .accueil-section-services-card{
        width: 80%;
    }
    .accueil-section-services-btn a{
        font-size: var(--fs-16);
    }
    .accueil-section3{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .accueil-section3-img{
        width: 80%;
        margin-bottom: 3%;
    }
    .accueil-section3-content{
        width: 80%;
    }
    .accueil-section3-content a{
        font-size: var(--fs-16);
    }
    .accueil-section4-master-card{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .accueil-section4-card{
        width: 80%;
    }
    .accueil-section4-card-content{
        margin-bottom: 5%;
    }
    .accueil-section4-card-content{
        margin-bottom: 5%;
    }
    .accueil-section4-card-content a,
    .accueil-section4-btn a{
        font-size: var(--fs-16);
        text-align: center;
    }
    .accueil-section5-btn{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .accueil-section5-btn a{
        font-size: var(--fs-16);
        text-align: center;
    }
    .accueil-section5-btn1{
        margin-top: 5%;
    }
    .accueil-section5-btn2{
        margin-top: 10%;
    }
  }

  /*Mobile L*/
  @media (min-width: 376px) and (max-width: 425px) {
    .accueil-hero h1{
        margin: 5%;
        font-size: var(--fs-24);
    }
    .accueil-main h2, h2{
        font-size: var(--fs-18);
    }
    .accueil-section1{
        align-items: flex-start;
        flex-direction: column;
    }
    .accueil-section1-img{
        width: 100%;
        margin-bottom: 3%;
    }
    .accueil-section1-content{
        width: 100%;
    }
    .section1-btn{
        font-size: var(--fs-16);
    }
    .accueil-section-services-card h3,
    .accueil-section4-card h3{
        font-size: var(--fs-16);
    }
    .accueil-section-services-master-card{
        display: flex;
        flex-direction: column;
    }
    .accueil-section-services-card{
        width: 80%;
    }
    .accueil-section-services-btn a{
        font-size: var(--fs-16);
    }
    .accueil-section3{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .accueil-section3-img{
        width: 80%;
        margin-bottom: 3%;
    }
    .accueil-section3-content{
        width: 80%;
    }
    .accueil-section3-content a{
        font-size: var(--fs-16);
    }
    .accueil-section4-master-card{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .accueil-section4-card{
        width: 80%;
    }
    .accueil-section4-card-content{
        margin-bottom: 5%;
    }
    .accueil-section4-card-content a,
    .accueil-section4-btn a{
        font-size: var(--fs-16);
        text-align: center;
    }
    .accueil-section5-btn{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .accueil-section5-btn a{
        font-size: var(--fs-16);
        text-align: center;
    }
    .accueil-section5-btn1{
        margin-top: 10%;
    }
    .accueil-section5-btn2{
        margin-top: 15%;
    }
  }

  /*Mobile M*/
  @media (min-width: 321px) and (max-width: 375px) {
    .accueil-hero h1{
        margin: 5%;
        font-size: var(--fs-22);
    }
    .accueil-main h2, h2{
        font-size: var(--fs-18);
    }
    .accueil-section1{
        align-items: flex-start;
        flex-direction: column;
    }
    .accueil-section1-img{
        width: 100%;
        margin-bottom: 3%;
    }
    .accueil-section1-content{
        width: 100%;
    }
    .section1-btn{
        font-size: var(--fs-16);
    }
    .accueil-section-services-card h3,
    .accueil-section4-card h3{
        font-size: var(--fs-16);
    }
    .accueil-section-services-master-card{
        display: flex;
        flex-direction: column;
    }
    .accueil-section-services-card{
        width: 80%;
    }
    .accueil-section-services-btn a{
        font-size: var(--fs-16);
    }
    .accueil-section3{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .accueil-section3-img{
        width: 80%;
        margin-bottom: 3%;
    }
    .accueil-section3-content{
        width: 80%;
    }
    .accueil-section3-content a{
        font-size: var(--fs-16);
    }
    .accueil-section4-master-card{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .accueil-section4-card{
        width: 80%;
    }
    .accueil-section4-card-content{
        margin-bottom: 5%;
    }
    .accueil-section4-card-content a,
    .accueil-section4-btn a{
        font-size: var(--fs-16);
        text-align: center;
    }
    .accueil-section5-btn{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .accueil-section5-btn a{
        font-size: var(--fs-16);
        text-align: center;
    }
    .accueil-section5-btn1{
        margin-top: 10%;
    }
    .accueil-section5-btn2{
        margin-top: 15%;
    }
  }

  /*Mobile S*/
  @media (max-width: 320px) {
    .accueil-hero h1{
        margin: 5%;
        font-size: var(--fs-20);
    }
    .accueil-main h2, h2{
        font-size: var(--fs-18);
    }
    .accueil-section1{
        align-items: flex-start;
        flex-direction: column;
    }
    .accueil-section1-img{
        width: 100%;
        margin-bottom: 3%;
    }
    .accueil-section1-content{
        width: 100%;
    }
    .section1-btn{
        font-size: var(--fs-16);
    }
    .accueil-section-services-card h3,
    .accueil-section4-card h3{
        font-size: var(--fs-16);
    }
    .accueil-section-services-master-card{
        display: flex;
        flex-direction: column;
    }
    .accueil-section-services-card{
        width: 80%;
    }
    .accueil-section-services-btn a{
        font-size: var(--fs-16);
        text-align: center;
    }
    .accueil-section3{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .accueil-section3-img{
        width: 80%;
        margin-bottom: 3%;
    }
    .accueil-section3-content{
        width: 80%;
    }
    .accueil-section3-content a{
        font-size: var(--fs-16);
    }
    .accueil-section4-master-card{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .accueil-section4-card{
        width: 80%;
    }
    .accueil-section4-card-content{
        margin-bottom: 5%;
    }
    .accueil-section4-card-content a,
    .accueil-section4-btn a{
        font-size: var(--fs-16);
        text-align: center;
    }
    .accueil-section5-btn{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .accueil-section5-btn a{
        font-size: var(--fs-16);
        text-align: center;
    }
    .accueil-section5-btn1{
        margin-top: 10%;
    }
    .accueil-section5-btn2{
        margin-top: 15%;
    }
  }


/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DE LA PAGE NOTRE HISTOIRE          -------------------
-------------------------------------------------------------------------------------------------------*/
.histoire-main{
    display: flex;
    flex-direction: column;
    
}


.histoire-main h1{
    animation: apparition 2s forwards;

}


.histoire-section1,
.histoire-section2,
.histoire-section3,
.histoire-section4{
    margin: 5% 0;
    display: flex;
    justify-content: center;
    align-items: center;
    animation: fadeup 3s forwards;
}


.histoire-section1-img,
.histoire-section2-img,
.histoire-section3-img,
.histoire-section4-img{
    width: 33%;
    padding: 0 2.5%;
}


.histoire-section1-img img,
.histoire-section2-img img,
.histoire-section3-img img,
.histoire-section4-img img{
    width: 100%;
    height: 100%;
    border-radius: 20px;
}



.histoire-section1-content,
.histoire-section2-content,
.histoire-section3-content,
.histoire-section4-content{
    width: 100%;
    padding: 0 2.5%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
}


/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DE LA PAGE NOS SERVICES          ---------------------
-------------------------------------------------------------------------------------------------------*/

.services-main{
    display: flex;
    flex-direction: column;
}

.services-section2-content,
.services-section3-content,
.services-section1-img,
.services-section3-img{
    animation: slideleft 2s forwards;

}

.services-section1-content,
.services-section4-content,
.services-section2-img,
.services-section4-img{
    animation: slideright 2s forwards;
}



.services-section1,
.services-section2,
.services-section3,
.services-section4{
    margin: 5% 0;
    display: flex;
    justify-content: center;
    align-items: center;
}



.services-section1-img,
.services-section2-img,
.services-section3-img,
.services-section4-img{
    width: 33%;
    padding: 0 2.5%;
}


.services-section1-img img,
.services-section2-img img,
.services-section3-img img,
.services-section4-img img{
    width: 100%;
    height: 100%;
    border-radius: 20px;
}



.services-section1-content,
.services-section2-content,
.services-section3-content,
.services-section4-content{
    width: 100%;
    padding: 0 2.5%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
}

.services-section1-btn{
    width: 100%;
    display: flex;
    justify-content: flex-end;
}
.services-section2-btn{
    width: 100%;
    display: flex;
    justify-content: flex-start;
}
.services-section3-btn{
    width: 100%;
    display: flex;
    justify-content: flex-end;
}
.services-section4-btn{
    width: 100%;
    display: flex;
    justify-content: flex-start;
}

.serviceinfo{
    display: flex;
    flex-direction: column;

}
.serviceinfo ul{
    margin: 20px;
}



/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DE LA PAGE NOS CHANTIERS          --------------------
-------------------------------------------------------------------------------------------------------*/
.chantiers-main{
    display: flex;
    flex-direction: column;
}

.chantiers-section{
    display: flex;
    flex-direction: column;
    gap: 7.5vh;
    border: 2px solid;
    border-color: var(--blue);
    border-radius: 20px;
    padding: 75px 50px;
    margin-bottom:100px;
}
.chantiers-section h2{
    text-align: center;
}


.chantiers-section-display{
    display: flex;
    gap: 10vw;
}

.chantiers-section-img{
    /* width: 80%; */
    /* display: flex;
    justify-content: center;
    align-items: center; */
}
.chantiers-section-img img{
    width: 60%;
    
    /* object-fit: cover; */
}
.chantiers-section-img i{
    margin: 20px;
    color: rgb(32, 63, 146);
}

.chantiers-section1-content{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.chantiers-section1-content p{
    padding-bottom: 10px;
}

.chantiers-section1-content-gallery{
    display: flex;
    justify-content: space-around;
    align-items: flex-end;
    gap: 20px;
}
.chantiers-section1-content-gallery img{
    width: 100px;
    height: 100px;
    object-fit: cover;
}
/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DE LA PAGE NOUS CONTACTER          -------------------
-------------------------------------------------------------------------------------------------------*/

.contact-main{
    width: 80%;
    
    display: flex;
    flex-direction: column;
}

.contact{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10%;
}

.contact-form{
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
    border-radius: 20px;
    width: 80%;
    margin-bottom: 250px;
}

.contact-form form{
    padding: 10px 20px;
}

.contact-info{
    width: 80%;
    display: flex;
    flex-direction: column;
    gap: 20px;
    height: 50%;
    border-radius: 20px;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
    margin-bottom: 5%;
}

.contact-info-adresse{
    display: flex;
    justify-content: space-evenly;
    align-items: flex-start;
    padding-bottom: 20px;
}
.contact-info-contact-mail a,
.contact-info-contact-tel a{
    text-decoration: none;
    color: black;
}

.contact-info-title{
    height: 4rem;
    border-top-right-radius: 20px;
    border-top-left-radius: 20px;
    font-size: var(--fs-20);
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--blue);
    color: white;
}

.contact-info-title-secondary{
    height: 2.5rem;
    display: flex;
    font-size: var(--fs-20);
    justify-content: center;
    align-items: center;
    background-color: var(--blue);
    color: white;
}




/*Ordinateur portable*/
@media (min-width: 769px) and (max-width: 1024px) {
    .contact-main{
        width: 100%;
    }
    .contact-info-adresse{
        display: flex;
        justify-content: center;
        align-content: center;
        flex-wrap: wrap;
        margin: 0 2%;
    }
    .contact-info-siege,
    .contact-info-entrepot,
    .contact-info-contact-mail,
    .contact-info-contact-tel{
        width: 50%;
    }
    
    .contact-info-contact-mail,
    .contact-info-contact-tel{
        margin-top: 5%;
    }
    .contact-info a,
    .contact-info p {
        font-size: var(--fs-16);
    }
}

/*Tablette*/
@media (min-width: 426px) and (max-width: 768px) {

    .chantiers-section{
        display: flex;
        flex-direction: column;
        gap: 7.5vh;
        border: 2px solid;
        border-color: var(--blue);
        border-radius: 20px;
        padding: 15px 5px;
        margin-bottom:100px;
    }

    .contact-info h2,
    .contact-form h2{
        margin: 0;
        font-size: var(--fs-18);
    }
    .contact-info-adresse{
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        align-items: flex-start;
        margin:0% 5%;
    }
    .contact-info-adresse p,
    .contact-info-adresse a{
        font-size: var(--fs-14);
    }
    .contact-info-subtitle{
        margin-top:5%;
    }
    .contact-form input{
        font-size: var(--fs-12);
    }
    .contact-form label{
        font-size: var(--fs-14);
    }
}

/*Mobile L*/
@media (min-width: 376px) and (max-width: 425px) {

    .chantiers-section{
        display: flex;
        flex-direction: column;
        gap: 7.5vh;
        border: 2px solid;
        border-color: var(--blue);
        border-radius: 20px;
        padding: 5px 5px;
        margin-bottom:100px;
    }

    .chantiers-section-img img{
        width: 50%;
        
    }
    
    .contact-info h2,
    .contact-form h2{
        margin: 0;
        font-size: var(--fs-16);
    }
    .contact-info-adresse{
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        align-items: flex-start;
        margin:0% 5%;
    }
    .contact-info-adresse p,
    .contact-info-adresse a{
        font-size: var(--fs-12);
    }
    .contact-info-subtitle{
        margin-top:5%;
    }
    .contact-form input{
        font-size: var(--fs-10);
    }
    .contact-form label{
        font-size: var(--fs-12);
    }
}

/*Mobile M*/
@media (min-width: 321px) and (max-width: 375px) {

    .chantiers-section{
        display: flex;
        flex-direction: column;
        gap: 7.5vh;
        border: 2px solid;
        border-color: var(--blue);
        border-radius: 20px;
        padding: 5px 5px;
        margin-bottom:100px;
    }

    .chantiers-section-img img{
        width: 40%;
        
    }
    
    .contact-info h2,
    .contact-form h2{
        margin: 0;
        font-size: var(--fs-16);
    }
    .contact-info-adresse{
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        align-items: flex-start;
        margin:0% 5%;
    }
    .contact-info-adresse p,
    .contact-info-adresse a{
        font-size: var(--fs-12);
    }
    .contact-info-subtitle{
        margin-top:5%;
    }
    .contact-form input{
        font-size: var(--fs-10);
    }
    .contact-form label{
        font-size: var(--fs-12);
    }
}

/*Mobile S*/
@media (max-width: 320px) {

    .chantiers-section{
        display: flex;
        flex-direction: column;
        gap: 7.5vh;
        border: 2px solid;
        border-color: var(--blue);
        border-radius: 20px;
        padding: 5px 5px;
        margin-bottom:100px;
    }

    .chantiers-section-img img{
        width: 30%;
        
    }
    
    .contact-info h2,
    .contact-form h2{
        margin: 0;
        font-size: var(--fs-16);
    }
    .contact-info-adresse{
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        align-items: flex-start;
        margin:0% 5%;
    }
    .contact-info-adresse p,
    .contact-info-adresse a{
        font-size: var(--fs-12);
    }
    .contact-info-subtitle{
        margin-top:5%;
    }
    .contact-form input{
        font-size: var(--fs-10);
    }
    .contact-form label{
        font-size: var(--fs-12);
    }
}


/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DE LA PAGE DEVIS          ----------------------------
-------------------------------------------------------------------------------------------------------*/
.devis-main{
    display: flex;
    flex-direction: column;
    width: 70%;
}

.devis-main p{
    margin: 5% 0%;
    text-align: center;
}

.devis-form{
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
    border-radius: 20px !important;
}
.devis-form form{
    padding: 0;
}

.devis-form-contact{
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    padding: 3%;
    gap: 5%;
}
.devis-file-input{
    margin: 0 auto;;
}


.devis-form-contact h2{
    text-decoration: underline;
    color: var(--blue);
    text-align: center;
    width: 100%;
    margin: 3% 0%;
}
.devis-form-contact h2:nth-child(1){
    text-align: center;
    width: 100%;
    margin-bottom: 3%;
    margin-top: 0%;
}


.devis-form-chantier{
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    height: 100px;

}


.devis-form-presta{
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    padding: 20px;
    width: 120%;
    height: 200px;
    gap: 20px;
}

.devis-form-presta p{
    font-weight: bold;
    font-size: var(--fs-18);
}


.devis-form-presta input{
    width: 20px !important;
}



.formbutton{
    display: flex;
    margin-left: 42%;
}

.d-column-devis{
    display: flex;
    flex-direction: column;
    width: 30%;
    padding-bottom: 2%;
}
.d-flex-devis-master{
    display: flex;
    gap: 30px;
}
.d-flex-devis{
    display: flex;
    align-items: baseline;
}


.devis-form-reception-choix input{
    width: 15px;
    height: 15px;
}

.devis-file-input{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.devis-rdv{
    width: 47%;
    
}

.devis-file-label{
    margin-bottom: 20px;
}





/*Ordinateur portable*/
@media (min-width: 769px) and (max-width: 1024px) {
    .devis-form-contact label,
    .devis-form-contact input,
    .devis-form-contact select{
        font-size: var(--fs-16);
    }
}

/*Tablette*/
@media (min-width: 426px) and (max-width: 768px) {
    .devis-main p {
        font-size: var(--fs-16);
    }
    
    .devis-form-contact label,
    .devis-form-contact input,
    .devis-form-contact select{
        font-size: var(--fs-16);
    }

    .d-column-devis{
        width: 90%;
    }
}

/*Mobile L*/
@media (min-width: 376px) and (max-width: 425px) {
    .devis-main p {
        font-size: var(--fs-16);
    }
    
    .devis-form-contact label,
    .devis-form-contact input,
    .devis-form-contact select{
        font-size: var(--fs-12);
    }

    .d-column-devis{
        width: 90%;
    }
}

/*Mobile M*/
@media (min-width: 321px) and (max-width: 375px) {
    .devis-main p {
        font-size: var(--fs-16);
    }
    
    .devis-form-contact label,
    .devis-form-contact input,
    .devis-form-contact select{
        font-size: var(--fs-10);
    }

    .d-column-devis{
        width: 90%;
    }
}

/*Mobile S*/
@media (max-width: 320px) {
    .devis-main p {
        font-size: var(--fs-16  );
    }
    
    .devis-form-contact label,
    .devis-form-contact input,
    .devis-form-contact select{
        font-size: var(--fs-10);
    }

    .d-column-devis{
        width: 90%;
    }
}


/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DE LA PAGE CGU          ------------------------------
-------------------------------------------------------------------------------------------------------*/


/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DE LA PAGE MENTIONS LEGALES          -----------------
-------------------------------------------------------------------------------------------------------*/


/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DE LA PAGE POLITIQUE DE CONFIDENTIALITE          -----
-------------------------------------------------------------------------------------------------------*/



/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DE LA PAGE CONNEXION DU DAHSBOARD          -----
-------------------------------------------------------------------------------------------------------*/

.dashboard-login-main{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.dashboard-login-form{
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
    border-radius: 20px;
    padding: 30px 50px;
}

/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DE LA PAGE ACCUEIL DU DAHSBOARD          -----
-------------------------------------------------------------------------------------------------------*/
.dashboardAccueil{
    z-index: -999;
    width: 100%;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: column;
    background: linear-gradient(265deg, rgba(24,43,127,1) 0%, rgba(26,139,177,1) 35%, rgba(144,186,231,1) 53%);
}

.dashboardAccueil h1{
    color: white;
}

.cardDash{
    width: 240px;
    height: 200px;
    background-color: white;
    display: flex;
    flex-direction: column;
    padding: 20px;
    justify-content: flex-end;
    align-items: center;
    gap: 20px;
    cursor: pointer;
    border-radius: 20px;
    transition: 1s all;
    box-shadow: rgba(255, 255, 255, 0.15) 0px 15px 25px, rgba(255, 255, 255, 0.05) 0px 5px 10px;
}

.cardDash p{
    font-size: 12px;
    height: 60px;
    text-align: center;
}

.fas{
    font-size: 40px;
    display: flex;
    justify-content: center;
    align-items: center;

}

.containerCard{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    width: 70%;
    margin-bottom: 20px;
    margin-top: -50px;
    gap: 30px;
}

.cardDash:hover{
    transform: scale(1.2);
}


.exitSiteDash{
    background-color: rgb(163, 163, 255);
}

.buttondash{
    display: flex;
    gap: 20px;
}

.btnDecon{
    font-size: var(--fs-16);
    text-decoration: none;
    list-style: none;
    text-decoration: none; 
    font-family: "Poppins";
    color: black;
    padding: 7.5px 15px;
    margin-top: -5px;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
    border-radius: 10px;
    background-color: var(--light-blue);
    transition: 0.75s all ;
    border-style: none;
    position: relative;
    cursor: pointer;
}

.btnRed{
    background-color: rgb(255, 169, 169) ;
}

.btnRed:hover{
    background-color: rgb(255, 116, 116) ;
}

.exitSiteDash:hover{
    background-color: rgb(118, 118, 255)

}

.cardDash a {
    display: flex;
    text-decoration: none;
    flex-direction: column;
    align-items: center;
    color: black;

}

/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DE LA PAGE FORMULAIRES DE CONTACT RECUS DU DAHSBOARD          -----
-------------------------------------------------------------------------------------------------------*/
.dashboard-contact-main{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}


/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DE LA PAGE DEVIS RECUS DU DAHSBOARD          -----
-------------------------------------------------------------------------------------------------------*/
.dashboard-devis-main{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}


/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DE LA PAGE MES CHANTIERS DU DAHSBOARD          -----
-------------------------------------------------------------------------------------------------------*/
.chantiers-section-button{
    
}

/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DE LA PAGE DECONNEXION DU DAHSBOARD          -----
-------------------------------------------------------------------------------------------------------*/




/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DE LA PAGE SUPPORT DU DAHSBOARD          -----
-------------------------------------------------------------------------------------------------------*/
.contact-form-master{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.support-main{
    width: 80%;
    display: flex;
    flex-direction: column;
    
}

.support{
    display: flex;
    width: 100%;
    gap: 100px;
    margin-bottom: 120px;
}

.support-form{
    width: 100%;

    
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
    border-radius: 20px;

}

.support-form form{
    padding: 10px 20px;
}

.support-info{
    display: flex;
    flex-direction: column;
    width: 25%;
    gap: 20px;
    height: 30%;
    border-radius: 20px;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
}

.support-info li{
    list-style: none;
    padding: 10px 20px;
}

.support-info-title{
    border-top-right-radius: 20px;
    border-top-left-radius: 20px;
    display: flex;
    font-size: var(--fs-26);
    justify-content: center;
    align-items: center;
    height: 15vh;
    justify-content: center;
    align-items: center;
    padding-bottom: 20px;
    background-color: rgb(32, 63, 146);
    color: white;
}


/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DE LA PAGE UTILISATEURS DU DAHSBOARD          -----
-------------------------------------------------------------------------------------------------------*/

tr td:nth-child(7),
tr td:nth-child(8),
tr :nth-child(7),
tr :nth-child(8){
    text-align: center;


}

.utilisateur-creation{
    width: 60%;
    display: flex;
    align-items: center;
    flex-direction: column;
}

.dashboard-utilisateur-creation-main{
    display: flex;
    justify-content: center;
    align-items: center;
}


/* Styliser les lignes impaires */
tr:nth-child(odd) {
    background-color: lightgrey;
    border-color: lightgray;

}
  
/* Styliser les lignes paires */
tr:nth-child(even) {
    background-color: white;
}

/* Styliser les lignes paires */
thead{
    background-color: white;
}




.fa-pen{
    transition: 0.2s all;
    padding-left: 5%;
    color: blue;
    cursor: pointer;

}

.fa-eye{
    transition: 0.2s all;
    margin-left: 35px;
    color: blue;
    cursor: pointer;

}



.fa-trash-can{
    color: red;
    transition: 0.2s all;
    padding-left: 10%;
    cursor: pointer;
}

.fa-trash-can:hover{
    animation: tremble 1s infinite;
    transition: 1s all;
}



@keyframes tremble{
    0%{
        transform: rotate(40deg);

    }
    50%{transform: rotate(-40deg);}
    100%{
        transform: rotate(40deg);
    }
}

.fa-pen:hover{
    transform: scale(1.4);
}
.fa-eye:hover{
    transform: scale(1.4);
}


/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DES PAGES CREER et MODIFIER UN UTILISATEURS DU DAHSBOARD          -----
-------------------------------------------------------------------------------------------------------*/

.utilisateur-creation-main{
    display: flex;
    flex-direction: column;
    
}

.utilisateur-creation{
    display: flex;
    justify-content: center;
    width: 60%;
    margin-bottom: 120px;
}

.utilisateur-creation-form{
    width: 100%;

    
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
    border-radius: 20px;

}

.utilisateur-creation-form form{
    padding: 10px 20px;
}

.utilisateur-creation-info{
    display: flex;
    flex-direction: column;
    width: 25%;
    gap: 20px;
    height: 30%;
    border-radius: 20px;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
}

.utilisateur-creation-info li{
    list-style: none;
    padding: 10px 20px;
}

.utilisateur-creation-info-title{
    padding: 0px;
    border-top-right-radius: 20px;
    border-top-left-radius: 20px;
    display: flex;
    font-size: var(--fs-26);
    justify-content: center;
    align-items: center;
    height: 100px;
    justify-content: center;
    align-items: center;
    padding-bottom: 20px;
    background-color: rgb(32, 63, 146);
    color: white;
}

.utilisateur-creation-droits p{
    padding-bottom: 20px;
}

.vldutilisateur{
    margin-bottom: 10px;
}

.retourutilisateur{
    align-self: flex-end;

}

/*-------------------------------------------------------------------------------------------------------
------------          ICI COMMENCE CSS PERSONALISE DE LA PAGE CHANTIERS DU DAHSBOARD          -----
-------------------------------------------------------------------------------------------------------*/



.contactreceivetab tr, th, td{
    padding: 20px;
}



.table th{
    background-color: var(--dark-blue);
    color: white;
}







.devis-form-contacttemplate{
    display: flex;

    flex-direction: column;

    gap: 20px;
    padding: 20px;
}












@media screen and (max-width: 768px) {
    nav{
        width: 80%;
    }
    .footer-show{
        display: block;
    }
    .sticky-nav {
        display: none !important ;
        }

    .sticky-nav nav ul{
        display: none;
        }


    .services-section1, .services-section2, .services-section3, .services-section4 {
        flex-direction: column;
        gap: 20px;
    }

    .menu ul li a{
        font-size: 20px;
    }

    .chantiers-section-img {
        width: 100%;
    }
    
    .chantiers-section-display {
        display: flex;
        gap: 10vw;
        flex-direction: column;
    }

    .top-nav  {
        display: none;
     }

    .top-nav a {
       font-size: 9px;
        width: 900px;
    }
    

    .top-nav p {
      
    width: 359px;
    }
.services-section1-img, .services-section2-img, .services-section3-img, .services-section4-img {
    width: 70%;

}

.services-section1-content, .services-section2-content, .services-section3-content, .services-section4-content {
    gap: 20px;
}

.services-section3-btn {
    justify-content: center;
}

    .services-section2-btn {
    justify-content: center;
}

    .histoire-section1, .histoire-section2, .histoire-section3, .histoire-section4 {
        flex-direction: column;
        gap: 20px;
    }


.histoire-section1-img, .histoire-section2-img, .histoire-section3-img, .histoire-section4-img {
    width: 70%;

}

.histoire-section1-content, .histoire-section2-content, .histoire-section3-content, .histoire-section4-content {
    gap: 20px;
}

.histoire-section3-btn {
    justify-content: center;
}

    .histoire-section2-btn {
    justify-content: center;
}
  
.contact-info-adresse {
    gap: 20px;
    padding: 20px;
    font-size: 12px;



}



.contact-info-siege p , .contact-info-entrepot p {
    font-size: 12px;
}

.bottom-nav-logo img {
    width: 100%;
}




}



@media screen and (max-width: 576px) {
    .contact-info-adresse {
        flex-direction: column;
        font-size: 12px;
    }

    .menu ul li a{
        font-size: 18px;
    }


    .top-nav p {
      
        width: 140px;
        }

        .Linknav{
            display: none !important;
        }
        .menuicon{
            margin-left: 200px;
            display: flex;
        }
}


.image-container {
  }
  
  .image-container img {
    display: none;
   
  }
  
  .image-container img.active {
    display: inline-block;
  }


  #imageEnGrand {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 9999;
    text-align: center;
    padding-top: 100px;
  }
  
  #imageEnGrand img {
    max-width: 80%;
    max-height: 80%;
    border: 2px solid white;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  }

  .friendly-captcha {
    display: flex;
    margin-top: 3%;
    justify-content: center;
  }
  .friendly-captcha div {
  }



       
      

.cookie-alert {
	position: fixed;
	bottom: 0px;
	background: var(--light-blue);
	color: black;
	padding:10px 15px;
	width:100%;
	text-align: center;
	z-index:100;
	padding-bottom: 10px;
  }
  .cookie-alert a { 
    color: var(--white-color);
    
  }

  
  .cookie-alert a:hover {
	color: var(--dark-blue) !important;
    text-decoration: none !important;
  
  }   

  .cookie-alert .boutton button { 
	background: var(--blue) !important;
	border-radius: 5px !important;
	padding: 5px !important;
	color: var(--white-color) !important;
	border-color: var(--white-color) !important;
  }
  .cookie-alert .boutton button:hover { 
	background:var(--blue-color) !important;
	border-radius: 5px !important;
	padding: 5px !important;
	color: #2f2f2f !important;
	border-color: var(--blue-color) !important;
  }

  .infos-legale {
    text-align: center;
  }

  .infos-legale h2 {
    text-align: center;
    margin-top: 30px;
  }
  .infos-legale h3 {
    text-align: center;
    margin-bottom: 30px;
    margin-top: 30px;
    font-size: 20px;
  }




