/* Global Styles */
@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:ital,wght@0,100..900;1,100..900&display=swap');
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}


/* Styles généraux (PC et grands écrans) */
body {
    font-family: "Roboto Condensed", serif;

    margin: 0;
    padding: 0;

    font-size: 1rem; /* Taille relative */
    width: 100%;
  }
 

h1, h2, h3 {
    color: #2c3e50;
}

/* Navbar principale */

.navbar, .navbar1 {
    display: flex;
    justify-content: space-between;
  align-items: center;
    position: absolute;
    top: 0; /* Place le menu en haut */
    left: 0;
    right: 100;
    width: 100%; /* Prend toute la largeur de la page */
    z-index: 2; /* Placer le menu au-dessus de l'image de fond */
   /*background: linear-gradient(45deg, rgb(241, 241, 241), rgb(146, 109, 59), rgba(3, 46, 3, 0.85)); /* Dégradé du vert vers le blanc */
   background-color:rgb(58, 55, 55);
    padding: 0px;

  border: none; /* Retire toute bordure */

  box-shadow: none; /* Retire toute ombre si présente */
}

.navbar li a, .navbar1 li a {
    font-size: 16px;
    text-decoration: none;
    color: white;
    padding: 10px 15px;
    transition: color 0.3s, background-color 0.3s; /* Animation douce */
}

.navbar li a:hover, .navbar1 li a:hover {
    color: rgb(66, 46, 7); 
    background-color: rgba(255, 255, 255, 0.3); /* Fond en survol */
    border-radius: 4px; /* Coins arrondis */
}

/* Conteneur des logos */
.logo-column ul {
    display: flex;
    align-items: center;
    gap: 10px;
  }
  
  .logo-column img {
    max-height: 60px; /* Limite la taille des logos */

  }


  .footer-sectionlogo img {
    max-width: 70px; /* Ajuste la largeur sans dépasser cette limite */
    height: auto; /* Conserve les proportions du logo */
    display: block; /* Permet le centrage via margin */
    margin: 0 auto; /* Centre le logo horizontalement */
  }
  


/* Navigation */
nav {
    text-align: auto;
}

nav ul {
    display: flex;
    list-style: none;
}

nav ul li {
    margin-right: 15px;
}

nav ul li a {
    padding: 10px;
  /*  transition: all 0.3s ease-in-out;*/

}

.navbar1 ul li a {
    font-size: 16px;
  }

  
  .content-box {
    width: 95%;
    margin: 10px 0;
  }



/* Liens sociaux */

.social-links1 {
    position: fixed;
    top: 0; /* Place la liste en haut de la page */
    right: 0; /* Aligne la liste à droite */
    display: flex;
    list-style: none; /* autour des icônes */
    margin: 0;
}

   /* background-color: #f8f8f8; /* Couleur de fond (facultatif) */

.social-links1 li {
    margin-left: 25px; /* Espace entre les icônes */
}

.icon {
    width: 24px; /* Taille de l'icône */
    height: auto;
  
}



/* Responsivité : Ajustements pour les écrans plus petits */


/* Responsive Design */
@media (max-width: 768px) {
    .navbar, .navbar1 {
        flex-direction: column; /* Passer la navbar en colonne sur mobile */
        padding: 10px;
    }

    nav ul {
        flex-direction: column;
        align-items: center; /* Centrage des liens */
    }

    nav ul li {
        margin: 10px 0; /* Espacement vertical des liens */
    }

}

@media (max-width: 480px) {
    .navbar li a, .navbar1 li a {
        font-size: 16px; /* Réduction de la taille de la police */
        padding: 8px 12px;
    }

    .logo-column img {
        width: 70px; /* Réduction des logos */
    }
}

/* Responsive pour les écrans de plus de 768px */
@media (min-width: 768px) {
    .navbar, .navbar1 {
        flex-direction: row; /* Les éléments restent en ligne */
        justify-content: space-between; /* Les éléments se répartissent de manière égale */
        padding: 10px 20px; /* Réduit le padding pour un espace plus compact */
        height: 70px; /* Diminue la hauteur de la barre */
    }

    .navbar li a, .navbar1 li a {
        font-size: 12px; /* Conserve une petite taille pour les liens */
        padding: 5px 10px; /* Réduit le padding interne des liens */
    }

    .logo-column img {
        max-height: 50px; /* Réduit la taille des logos */
    }

    nav ul {
        gap: 10px; /* Réduit l’espace entre les liens de navigation */
    }

  
}

/***/


/* Responsive Design - Pour les écrans plus larges que 1000px */
/* Responsive Design - Pour les écrans plus larges que 1000px */
/* Pour les écrans plus larges que 1000px */

/**/

/* Sous-menu */
nav ul ul {
    display: none; /* Masquer le sous-menu par défaut */
    position: absolute;
    top: 100%; /* Positionner sous l'élément parent */
    left: 0;
    background-color: #131311; /* Fond clair */
    padding: 15px; /* Espacement interne */
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2); /* Ombre subtile */
    list-style-type: none; /* Supprimer les puces */
    border-radius: 4px; /* Bords arrondis */
    z-index: 1100; /* Priorité sur d'autres éléments */
    min-width: 200px; /* Largeur minimale pour assurer un affichage propre */
    text-align: left; /* Alignement par défaut */
}

/* Flèche pour les éléments déroulants */
.deroulant > a::after {
    content: "▼"; /* Petite flèche */
    font-size: 14px; /* Taille ajustée */
    margin-left: 8px; /* Espace entre le texte et la flèche */
    transition: transform 0.3s ease-in-out; /* Animation douce */
}

/* Rotation de la flèche lors du survol */
nav ul li:hover > a::after {
    transform: rotate(180deg); /* Inversion de la flèche */
}

/* Afficher le sous-menu au survol */
nav ul li:hover > ul {
    display: block; /* Afficher le sous-menu */
}

/* Position relative nécessaire pour les parents */
nav ul li {
    position: relative;
}

/* Liens du sous-menu */
nav ul ul li a {
    padding: 10px 20px; /* Espacement interne */
    display: block; /* Occupation de toute la largeur */
    color: #131111; /* Couleur du texte */
    text-decoration: none; /* Supprimer les soulignements */
    font-size: 14px; /* Police ajustée */
    transition: background-color 0.3s ease, color 0.3s ease; /* Animation douce */
}

/* Séparation entre les éléments du sous-menu */
nav ul ul li {
    border-bottom: 1px solid #eee; /* Ligne de séparation */
}

/* Supprimer la ligne pour le dernier élément */
nav ul ul li:last-child {
    border-bottom: none;
}

/* Changement de style au survol des éléments */
nav ul ul li a:hover {
    background-color: #ddd; /* Fond clair au survol */
    color: #000; /* Texte noir au survol */
}

/* Barre de navigation normale (par défaut visible) */
.navbar-menu {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 20px;
}

/* Style du bouton hamburger (par défaut masqué) */
.hamburger {
    display: none;
    font-size: 24px;
    background: none;
    border: none;
    color: #f1f1f1;
    cursor: pointer;
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 1100;
}

/* Responsive : masquage du menu et affichage du bouton hamburger */
@media (max-width: 768px) {
    .navbar-menu {
        display: none; /* Cacher la barre de navigation */
        flex-direction: column;
        background-color: rgba(0, 0, 0, 0.9); /* Fond sombre */
        position: absolute;
        top: 60px;
        left: 0;
        right: 0;
        padding: 10px 0;
        z-index: 1000;
    }

    .navbar-menu.active {
        display: flex; /* Afficher la navigation lorsque le bouton est activé */
    }

    .hamburger {
        display: block; /* Afficher le bouton hamburger sur les petits écrans */
    }

    .navbar-menu ul li {
        margin: 10px 0;
        text-align: center;
    }

    .navbar-menu ul li a {
        color: white;
        text-decoration: none;
        font-size: 18px;
        padding: 8px 15px;
        transition: background-color 0.3s ease-in-out;
    }

    .navbar-menu ul li a:hover {
        background-color: rgba(255, 255, 255, 0.2);
        border-radius: 4px;
    }
}




/* News Section */
.news-section {
    padding: 40px 20px;
    max-width: 1200px;
    margin: 0 auto;
    margin-top: 100px;
}

.news-item {
    display: flex;
    flex-wrap: wrap; /* Permet de passer à une disposition en colonne sur petits écrans */
    background-color: #fff;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 20px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); /* Ajout d'une ombre pour un aspect moderne */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.news-item:hover {
    transform: translateY(-5px); /* Légère élévation au survol */
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.2);
}

.news-item img {
    width: 100%; /* Par défaut, l'image prend toute la largeur */
    max-width: 300px; /* Limite la taille maximale */
    height: auto; /* Garde les proportions */
    object-fit: cover;
    flex-shrink: 0; /* Empêche la réduction de l'image */
}

.news-content {
    padding: 20px;
    flex: 1; /* Permet à la zone de texte de s'étendre */
}

.news-content h2 {
    font-size: 24px;
    margin-bottom: 10px;
    color: #2c3e50;
}

.news-content .date {
    font-size: 14px;
    color: #7f8c8d;
    margin-bottom: 10px;
}

.news-content p {
    font-size: 16px;
    margin-bottom: 20px;
    color: #34495e;
}

.read-more {
    color: #2980b9;
    text-decoration: none;
    font-weight: bold;
}

.read-more:hover {
    text-decoration: underline;
}

/* Responsive Design */
@media (max-width: 768px) {
    .news-item {
        flex-direction: column; /* Les éléments passent en colonne */
        align-items: center;
        text-align: center; /* Centre le texte */
    }

    .news-item img {
        width: 100%; /* L'image prend toute la largeur sur mobile */
        max-width: 100%; /* Supprime la limite de largeur */
        height: auto;
    }

    .news-content {
        padding: 15px;
    }

    .news-content h2 {
        font-size: 20px;
    }

    .news-content p {
        font-size: 14px;
    }
}
@media (min-width: 768px) {
    .news-item {
        flex-direction: row; /* Les éléments s'alignent horizontalement */
        align-items: flex-start;
        text-align: left;
    }

    .news-item img {
        width: 300px;
        height: 200px;
    }

    .news-content {
        padding: 20px;
    }

    .news-content h2 {
        font-size: 24px;
    }

    .news-content p {
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .news-content {
        padding: 10px;
    }

    .news-content h2 {
        font-size: 18px;
    }

    .news-content p {
        font-size: 13px;
    }
}


/* Section footer */
#footer {
   /* background: linear-gradient(45deg, rgb(241, 241, 241), rgb(146, 109, 59), rgba(3, 46, 3, 0.85)); /* Dégradé du vert vers le blanc */
   background-color:rgb(58, 55, 55);
    color: #082509; /* Couleur du texte */
    padding: 40px 0;
    height: auto; /* Hauteur initiale */
    width: 100%; /* Assure que la section prend toute la largeur */
    background-size: cover; /* L'image couvrira toute la section sans se répéter */
    background-repeat: no-repeat; /* Empêche l'image de se répéter */
    background-position: center; /* Centre l'image pour un meilleur alignement */
}

/* Conteneur principal */
.footer-container {
    display: flex;
    flex-wrap: wrap; /* Permet aux sections de passer à la ligne si nécessaire */
    justify-content: space-between; /* Répartit les sections uniformément */
    max-width: 100%;
    margin: 0 auto;
    padding: 20px; /* Ajout d'un peu de padding pour le confort */
    height: auto; /* Ajuste la hauteur en fonction du contenu */
}

/* Section du footer */
.footer-section {
    flex: 1 1 200px; /* Définit une largeur minimale pour chaque section, mais permet de s'étendre */
    margin: 10px 40px;
}

/* Titres des sections */
.footer-section h3 {
    margin-bottom: 25px;
    font-size: 19px;
    font-weight: bold;
    color: #bbddc1;
}

.footer-section h2 {
    font-size: 25px;
    color: #ecebe8;
    margin-bottom: 25px;
    text-align: center; /* Centre le titre */
}

/* Paragraphes des sections */
.footer-section p {
    font-size: 18px;
    color: #e9e5db;
    margin-bottom: 25px;
}

/* Listes et formulaires */
.footer-section p, .footer-section ul, .footer-section form {
    margin-bottom: 25px;
}

.footer-section ul {
    list-style: none;
    padding: 0;
}

.footer-section ul li {
    margin-bottom: 30px;
}

.footer-section ul li a {
    color: #e9e5db;
    text-decoration: none;
    transition: color 0.3s;
    font-size: 16px;
}

.footer-section ul li a:hover {
    color: #09580d;
}

/* Formulaire */
.footer-section form input {
    padding: 10px;
    margin-right:10px;
    border: none;
    border-radius: 5px;
    width: 70%;
}

.footer-section form button {
    padding: 10px 20px;
    background-color:#09580d;
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

.footer-section form button:hover {
    background-color: #106e77;
}

/* Style de base pour les icônes sociales */
.social-links .icon {
    width: 24px; /* Taille de l'icône */
    height: 24px; /* Taille de l'icône */
    margin-right: 10px; /* Espace entre l'icône et le texte */
}

/* Styles responsives */
@media (max-width: 1200px) {
    .social-links .icon {
        width: 22px; /* Réduit la taille de l'icône à 22px sur les grands écrans */
        height: 22px;
    }
}

@media (max-width: 992px) {
    .social-links .icon {
        width: 20px; /* Réduit la taille de l'icône à 20px sur les écrans moyens */
        height: 20px;
    }
}

@media (max-width: 768px) {
    .social-links .icon {
        width: 18px; /* Réduit la taille de l'icône à 18px sur les petits écrans */
        height: 18px;
    }
}

@media (max-width: 576px) {
    .social-links .icon {
        width: 16px; /* Réduit la taille de l'icône à 16px sur les très petits écrans */
        height: 16px;
    }
}



/* Responsive Design */

/* Sur les écrans de taille moyenne (max-width: 768px) */
@media (max-width: 768px) {
    #footer {
        height: auto; /* Réduit la hauteur pour les petits écrans */
        padding: 30px 0; /* Réduit l'espacement */
    }
    
    .footer-container {
        flex-direction: column; /* Aligne les sections verticalement */
        align-items: center; /* Centre les éléments */
        padding: 10px; /* Réduit les espacements */
    }

    .footer-section {
        margin: 20px 0; /* Ajuste les marges entre les sections */
        text-align: center; /* Centre le texte des sections */
    }

    .social-links {
        flex-direction: column; /* Empile les icônes verticalement */
        align-items: center;
    }

    .social-links li {
        margin-bottom: 10px; /* Ajoute un espace entre les icônes */
    }

   

    .footer-section h2 {
        font-size: 22px; /* Réduit la taille du titre */
    }

    .footer-section h3 {
        font-size: 18px; /* Ajuste la taille des titres */
    }

    .footer-section p {
        font-size: 16px; /* Réduit la taille du texte */
    }
}

/* Sur les écrans très petits (max-width: 480px) */
@media (max-width: 480px) {
    #footer {
        height: auto; /* Assure que la hauteur s'ajuste */
        padding: 20px 0; /* Réduit l'espacement */
    }
    
    .footer-container {
        padding: 5px; /* Réduit l'espacement intérieur */
    }

    .footer-section {
        margin: 10px 0; /* Réduit l'espace entre les sections */
        text-align: center; /* Centre le texte */
    }

    .footer-section h2 {
        font-size: 20px; /* Réduit la taille du titre */
    }

    .footer-section h3 {
        font-size: 16px; /* Ajuste la taille des sous-titres */
    }

    .footer-section p {
        font-size: 14px; /* Réduit la taille du texte */
    }
}

@media (min-width: 768px) {
    .footer-container {
        flex-wrap: nowrap; /* Évite que les sections passent à la ligne */
        justify-content: space-around; /* Répartit mieux l'espace entre les sections */
    }

    .footer-section {
        flex: 1; /* Permet une répartition égale entre les sections */
        margin: 10px 20px; /* Réduit l'espacement pour un meilleur alignement */
    }

    .footer-section form input {
        width: 60%; /* Ajuste la largeur du champ input */
    }
}

/********icon*****/
/* Style de base pour le logo */