/* Style global */
* {
   margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  font-family: 'Roboto', sans-serif;
  scroll-behavior: smooth;
}

body {
  margin: 0;
}

/* ==========Conteneur pour centrer le contenu à l'intérieur */
.container {
  width: 100%; /* Prend toute la largeur disponible */
  max-width: 1200px; /* Largeur maximale */
  padding: 20px; /* Espace autour du contenu */
  box-sizing: border-box;
}


img, picture, video {
  max-width: 100%;
  height: auto;
}

/* En-tête */
header {
  width: 100%;
  padding:2rem 1rem; 
  text-align: center;
  background-color: #ffffff;/* #f4f4f4;*/
}

.contenu_header {
  width: 100%;
  margin: auto;
  padding: 0;
}

.contenu_header img {
  width: 40%;
  padding-top: 1rem;
  display: block;
  margin: auto;
}

.contenu_header h1 { 
margin-bottom: 0.5rem;
  font-size: 1.6rem;
  color: #04B404;
  text-align: center;
  letter-spacing: 0.1em;
  margin: 0;
  line-height: 1.5;
}

/* Lien par défaut réinitialisé proprement */
/* Style général des liens */
a {
  text-decoration: underline;
  color: inherit;
}

/* Icône pour liens externes */
a[target="_blank"]::after {
  content: " ↗";
  font-size: 0.7em;
  opacity: 0.6;
  margin-left: 0.2em;
  transition: opacity 0.2s ease;
}

a[target="_blank"]:hover::after {
  opacity: 1;
}
/*============= Navigation principale =======================================*/

.barrenavig {
  width: 95%;
  margin: auto;
  padding: 0;
  display: flex;
  flex-wrap: wrap; 
  justify-content: center;
}

.nav-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 0;
  margin: 0 auto; 
  width: 100%;
  flex: 1;
}

.nav-list li {
  margin: 0.1rem;
  list-style: none;
  border-bottom: 1px dotted currentColor;
  flex: 1;
  background-color: #F2F2F2;
}

.nav-list a {
  display: block;
  padding: 10px;
  font-size: 1rem;
  text-align: center;
  text-decoration: none;
  color: black;
  transition: background-color 0.3s ease, color 0.3s ease; 
}

.nav-list a:hover {
  background-color: #F5BCA9;
  color: #ffffff;
}

/*=============  MOBILE / DESKTOP =======================================*/

/* MOBILE par défaut */
.nav-desktop {
  display: none;
}

.nav-mobile {
  width: 100%;
}

/* bouton menu */
.nav-mobile summary {
  cursor: pointer;
  font-size: 1.2rem;
  padding: 10px;
  background: #b6e3b6;
  color: white;
  list-style: none;
}

/* enlève triangle */
.nav-mobile summary::-webkit-details-marker {
  display: none;
}

/* espace menu mobile */
.nav-mobile .nav-list {
  margin-top: 10px;
}

/* DESKTOP */
@media screen and (min-width: 768px) {

  .nav-mobile {
    display: none;
  }

  .nav-desktop {
    display: flex;
  }

}

/* Lien inactif */
a.inactive {
  color: #BDBDBD; /* couleur pour indiquer l'inactivité */
  pointer-events: none; /* empêche l'interaction avec le lien */
  text-decoration: none; /* éventuellement enlever le soulignement */
}

/*----===================== ARCHIVES =========================== ---------------------*/

.dropdown details {
  position: relative;
}

.dropdown summary {
  cursor: pointer;
  padding:0.5rem;
  color: #8A0808;
  margin:0.5rem auto;
}

.submenu {
  position: absolute;
  top: 100%;
  left: 0;
  background-color: #7FB09A;
  border: none;
  list-style: none;
  margin: 5px 0 0 0;
  padding: 2%;
  display: none;
  z-index: 100;
}

/*-----------------------------------------------------------------*/
.submenu li {
  margin: 5px 0; /* espace vertical entre les items */
  padding: 8px 12px;
  background-color: #f9f9f9;
  border: 1px solid #ddd;
  border-radius: 4px;
  transition: background-color 0.2s ease;
}

.submenu li:hover {
  background-color: #e6e6e6;
}

.submenu li a {
  text-decoration: none;
  color: #8A0808;
  display: block; /* rend tout le bloc cliquable */
}

/*---------------------------------------------------------------------*/

details[open] .submenu {
  display: block;
}

/* Empêcher la redimension du bloc nav à l’ouverture */
.dropdown {
  position: relative;
}

/* grouper les pavés de la navigation*/
.nav-group {
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 2rem;
}

/* déco liens dans le texte */
#lien_page {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid currentColor;
}

#lien_page:hover {
  background-color: #ACFA58;
}

/* ============== Barre de navigation pour la même page */
.navig_page {
    display: flex;
    flex-wrap: wrap; /*  retour à la ligne si nécessaire */
    justify-content: center;
    gap: 0.5rem; 
    padding: 0.5rem;
    background-color: #FFF5EE; 
}

.navig_page a {
    padding: 0.5rem 1rem;
    background-color: #F6E3CE;
    text-decoration: none;
    color: #000;
    border-radius: 4px;
    transition: background-color 0.3s, border-bottom 0.3s;
    white-space: nowrap; /* Évite que le texte casse sur plusieurs lignes */
}

.navig_page a:hover {
    background-color: #F5BCA9;
    border-bottom: 2px solid red;
}

/*=============----------------------------*/
/* Lien inactif */
a.inactive {
  color: #BDBDBD; /* couleur pour indiquer l'inactivité */
  pointer-events: none; /* empêche l'interaction avec le lien */
  text-decoration: none; /* éventuellement enlever le soulignement */
}	  

/* ========= Section principale */
main {
  width: 100%;
  padding: 1rem;
}

article {
  width: 98%;
  margin: auto;
}

.titre_article {
  width: 95%;
  margin: auto;
  font-style: italic;
}

.titre_article h2, h3 {
  margin: 0;
  font-size: 1.5rem;
  color: #00ff00;
  letter-spacing: 0.1em;
  line-height: 1.5em;
  font-style: italic;
}

section{
	width:100%;
margin:auto;
padding:0.5rem;
}

/* Footer */
footer {
  width: 100%;
  padding: 1rem 0;
  background-color: #ffffff;
  text-align: center;
}

/* Alignement central */
.centrer {
  text-align: center;
}

/* Styles des titres */
h1, h2, h3, h4 {
  font-size: 1.2rem;
  color: #2A7309;
  letter-spacing: 0.1rem;
  line-height: 1.8rem;
  padding: 1rem;
}

/* Paragraphes */
p {
  margin: 0;
  padding: 0.3rem;
  font-size: 1rem;
  text-align: left;
  color:#2A7309;
  line-height: 1.8rem;
}

.p_notes_dans_texte {
  font-size: 0.8rem;
}

/* Colonnes avec espacement */
#column_gap {
  column-count: 2;
  column-gap: 2em;
}

/* Texte en majuscules */
.majuscules {
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.rouge{
	color:#ff0000;
}

strong {
  letter-spacing: 0.1rem;
  line-height: 1.5rem;
  font-weight: 700; /* très fort */
}

em {
  letter-spacing: 0.05rem; 
  line-height: 1.5rem;
  font-weight: 500; 
  font-style: italic; 
}

/* Logo */
.logo {
  width: 10%;
  margin: auto;
}

.logo img {
  width: 100%;
  margin: auto;
}

/* Bouton "Haut de page" */

/* ========== BOUTON  HAUT DE LA PAGE  */

.haut_page {
    position: fixed;
    bottom: 30px;
    right: 30px;
    background-color:#04B404;
    color: white;
    text-decoration: none;
    padding: 16px 20px;      /* bouton plus grand */
    border-radius: 50%;       /* cercle */
    font-size: 2rem;          /* flèche plus visible */
    display: inline-block;
    text-align: center;
    line-height: 1rem;        /* centrer verticalement la flèche */
    transition: background 0.3s, transform 0.2s;
    z-index: 1000;

}

.haut_page:hover {
    background-color: #5f8f7a;
    transform: scale(1.1);
}


/*VERSION MOBILE : un peu plus petit */
@media (max-width: 600px) {
    .back-to-top {
        bottom: 20px;
        right: 20px;
        padding: 12px 14px;
        font-size: 2rem;
    }
}

/* ========= Listes */
ul {
  padding: 0 0 0 1rem;
}

ul li {
  line-height: 1.6; /* 1.6 = 160% de la taille de la police */
}

li {
  color: #2A7309;
}

