/********************************************/
/*VAIRABLES*/
/********************************************/
*{
    --couleur-titre: #2c7a2c;
    --couleur-background: #f4f4f4;
    --couleur-texte: #222222;
    --couleur-nav: #F2B705;
    --couleur-link: #222222;
    --couleur-link-hover: #1E5F1E;
    --couleur-sousListe2:#FFF4CC;

    --red-color: #C0392B;

    --taille-texte: 0.875rem;
    --taille-titre-h1: 2.5rem;
    --taille-titre-h2: 1.8rem;
    --taille-par-defaut: 1rem;

    --arrondi-bord: 0.2rem;
}
/****************************************************/
/* HTLM */   
/****************************************************/
html{
    font-size: 16px; /*16px*/
    font-family: Arial, Helvetica, sans-serif;
}
/****************************************************/
/* BODY */   
/****************************************************/
body {
    margin: 0;
    height: 100vh;  /* vh: viewport height */
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    background-color: var(--couleur-background);
    color: var(--couleur-texte);
    font-size: 1rem;
}
/****************************************************/
/* Titres */   
/****************************************************/
h1 { 
    font-size: var(--taille-titre-h1);
    text-align: center;
    margin-left: 5vh;
    color: var(--couleur-titre);
}

h2 { 
    font-size: var(--taille-titre-h2);
    text-align: center;
    margin: auto;
    margin-top: 1vh;
    margin-bottom: 1vh;
    color: var(--couleur-titre);
}
/****************************************************/
/* HEADER */   
/****************************************************/
header{
/*    position: absolute;
    top: 3vh;*/
    margin-top: 3vh;
    width: 100vw;   /* vw: viewport width */
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

header>div{
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
}

#header-img-text{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-left: 1vw;
    margin-right: 1vw;
}

#logo-bio{
   font-size: 0.8rem;
   margin-right: 2vw;
}

#connexion{
    display: inline-block;
    margin-right: 1vw;
}

#connexion{
    display: inline-block;
    margin-left: 1vw;
}
/****************************************************/
/* liens A */   
/****************************************************/
a{
    color: var(--couleur-link);
    text-decoration: none;
    display: inline-block;
}

a:hover{
    color: var(--couleur-link-hover);
} 
/****************************************************/
/* NAV */   
/****************************************************/
/* Nav générale et des menus de legumes */
nav{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;

    font-size: var(--taille-par-defaut);
    background-color: var(--couleur-nav);
    width: 100vw;

    border-radius: var(--arrondi-bord);
}

nav button{
    all: unset;          /* supprime la plupart des styles par défaut */
    display: inline-block;      /* se comporte comme un div */
    cursor: pointer;     /* garde le pointeur de clic */
    width: 100%;
/*    padding-left : 5px; padding-right: 5px;
    padding-top: 2px; padding-bottom: 2px;*/
}

nav li{
    color: var(--couleur-link);
    text-decoration: none;
}

nav li:hover{
    color: var(--couleur-link-hover);
    cursor: hand;
} 

nav>ul{
    padding: 0px;
    list-style: none;
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    flex-wrap: wrap;
}

nav button+ul{
    list-style: none;
    display: none;
    padding: 1vw;

    position: absolute;
    z-index: 10;
    background-color: var(--couleur-nav);
    border-radius: var(--arrondi-bord);
}

nav button:hover+ul{
    display:block;
}
nav button+ul:hover{
    display:block;
}

.sousListe2{
    background-color: var(--couleur-sousListe2);
}
/****************************************************/
/* FOOTER */   
/****************************************************/
footer{
    width: 100vw;
/*    
    position: absolute;
    bottom: 3vh;
*/    
    display: flex;
    flex-direction: column;
    color: var(--couleur-titre);
    justify-content: center;
    align-items: center;
    font-size: var(--taille-texte);
    padding-bottom: 2vh;
}

address{
    width: 90vw;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}
/****************************************************/
/* MAIN */   
/****************************************************/
main{
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    flex: 1;
}

#containerMain{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
}

p{
    width: 60%;
    text-align: center;
}
/****************************************************/
/* BUTTON */   
/* Tous les boutons ont le même aspect */
/****************************************************/
.btn-general {
    margin-top: 0.8em;
    padding: 0.5em 1em;
    background-color: #F2B705;
    color: #fff;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-weight: bold;
    transition: background-color 0.3s;
}

.btn-general:hover {
    background-color: #d99e05;
}
/****************************************************/
/* FORMULAIRES */   
/****************************************************/
form {
    background-color: white;
    padding: 2em;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
    width: 300px;
}

label {
    display: block;
    margin-top: 1em;
    font-weight: bold;
}

input[type="text"], input[type="password"], select {
    width: 100%;
    padding: 0.5em;
    margin-top: 0.3em;
    border-radius: 4px;
    border: 1px solid #ccc;
}

.error {
    color: #C0392B;
    text-align: center;
    margin-top: 1em;
}
