/* Supprime les marges et définit le modèle de boîte */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Montserrat", serif;
}

/* Le body et le HTML prennent 100% de la hauteur */
html, body {
    height: 100%;
    display: flex;
    flex-direction: column; /* Organise les sections en colonne */
    background-color: #00ADB5;  /* Couleur de fond du menu */
}

/* Le header occupe un espace défini et flexible */
header {
    background-color: #575757;
    width: 100%;
    min-height: 15vh; /* Minimum 15% de la hauteur de l'écran */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

/* Style du logo */
header .logo img {
    width: auto;
    max-height: 8vh; /* Le logo s’adapte mais ne dépasse pas 8% de l'écran */
    margin-bottom: 10px;
    margin-top: 10px;
    transition: transform 1s ease;
}

header .logo img:hover{
    transform: rotate(25deg);
}

/* Le menu est centré sous le logo */
nav.menu {
    display: flex;
    gap: 2vw;
    justify-content: center;
    width: 100%;
}

.menu a {
    color: rgb(212, 214, 216);
    text-decoration: none;
    padding: 1vh 2vw;
    border-radius: 5px;
    transition: transform 1s ease;
}
.menu a:hover  {
    transform: scale(1.2);
}
/* --------------------------main---------------------------------------- */
/* ---        Le main occupe tout l'espace restant                    --- */

main {
    flex: 1; /* Permet au main de prendre tout l'espace disponible */
    display: flex;
    justify-content: center; /* Centre le texte horizontalement */
    align-items: center; /* Centre le texte verticalement */
    padding: 2%; /* Ajoute de l'espace autour du texte */
    background-color: #02a1aa; /* Couleur de fond */
    text-align: justify; /* Justifie le texte */
}

.texte {
    max-width: 95%; /* Limite la largeur du texte pour qu'il reste lisible */
    font-size: 1.2rem; /* Taille du texte */
    color: #d3e6d8 ;
    margin-left: 0; /* Supprime tout décalage */
    padding-left: 2vw; /* Ajoute un petit padding pour éviter de coller complètement au bord */
}

.texte h1 {
    text-align: left; /* Centre le titre */
    font-size: 2rem; /* Taille du titre */
    font-weight: 300;
    margin-bottom: 20px;
    margin-left: 0;
    margin-right: 2vw;
    color:  #303030;
}

.texte p {
    margin-left: 0vw;
    padding-left: 2vw; /* Ajoute un léger padding */
    margin-right: 4vw;
    text-align: justify;
    font-size: 25px;
}

/*------------------------ Footer ----------------------------------------*/                               
/* ---             Footer collé en bas de page                        --- */

footer {
    background-color: #333;
    color: white;
    text-align: center;
    padding: 2vh 0;
    width: 100%;
}

.reseaux {
    display: flex;
    justify-content: flex-start; /* Aligne à gauche */
    padding-left: 10px; /* Ajuste l’espace avec le bord */
}


/*---              Style des icônes du footer                         --- */
.reseaux a {
    display: inline-block;
    transition: transform 0.3s ease;
    
}

.reseaux img {
    width: 40px;  
    height: 40px;
    object-fit: contain;  

    transition: transform 0.3s ease;  
}

.reseaux a:hover img {
    transform: scale(1.2);
}