/* Style général */

#about-us {
    padding: 50px 20px;
    background-color: #ffffff;
    text-align: center;
}

#about-us h1 {
    font-size: 2rem;
    margin-bottom: 40px;
}

/* Pyramide */
#team-tree {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}

.team-member {
    text-align: center;
    position: relative;
}

.team-member img {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    margin-bottom: 10px;
    border: 3px solid #ccc;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.team-member h2, 
.team-member h3, 
.team-member h4 {
    margin: 5px 0;
    font-size: 1.1rem;
    font-weight: bold;
}

.team-member p {
    font-size: 0.9rem;
    color: #666;
}

/* Alignement en pyramide */
.sub-members {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 20px;
}

.sub-members::before {
    content: '';
    position: absolute;
    top: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 2px;
    height: 20px;
    background-color: #ccc;
}

.sub-members .team-member::before {
    content: '';
    position: absolute;
    top: -10px;
    width: 2px;
    height: 20px;
    background-color: #ccc;
    left: 50%;
    transform: translateX(-50%);
}

.team-member::after {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    width: 50%;
    height: 2px;
    background-color: #ccc;
    transform: translateX(-50%);
}

.team-member:first-child::after {
    left: 25%;
    transform: none;
    width: 25%;
}

.team-member:last-child::after {
    left: 50%;
    transform: none;
    width: 25%;
}

/* Responsive Design */
@media (max-width: 768px) {

    
    #about-us h1 {
        font-size: 1rem;
    }

    .team-member img {
        width: 80px;
        height: 80px;
    }

    .team-member h2, 
    .team-member h3, 
    .team-member h4 {
        font-size: 0.8rem;
    }

    .team-member p {
        font-size: 0.8rem;
    }

    .sub-members {
        flex-wrap: wrap;
        gap: 10px;
    }
}




/*...............about us..............................................*/

.about-us {
    padding: 40px 0;
    background-color: #f9f9f9;
}

.about-us h1 {
    text-align: center;
    margin-bottom: 40px;
    font-size: 2.5em;
    color: #333;
}

.about-us h2 {
    font-size: 2em;
    margin-bottom: 20px;
    color: #555;
}

.about-us p {
    font-size: 1.2em;
    line-height: 1.6;
    color: #666;
}

.about-us .container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.about-us .mission-vision,
.about-us .history,
.about-us .areas-of-intervention {
    margin-bottom: 40px;
}

.about-us ul {
    list-style: disc;
    margin-left: 20px;
}

/* Responsive */
@media (max-width: 768px) {
    .about-us h1 {
        font-size: 2em;
    }

    .about-us h2 {
        font-size: 1.5em;
    }

    .about-us p {
        font-size: 1em;
    }
}

/* Styles pour le Formulaire de Volontaire */
#volunteer-form {
    padding: 40px 0;
    background-color: #f9f9f9;
}

#volunteer-form h2 {
    text-align: center;
    margin-bottom: 20px;
    font-size: 2.5em;
    color: #ff8000;
}

#volunteer-form .container {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 20px;
}

#volunteer-form .form-group {
    margin-bottom: 20px;
}

#volunteer-form label {
    display: block;
    margin-bottom: 5px;
    font-weight: bold;
    color: #353535;
}

#volunteer-form input,
#volunteer-form select,
#volunteer-form textarea {
    width: 100%;
    padding: 10px;
    margin-bottom: 10px;
    border: 1px solid #acf7ac;
    border-radius: 5px;
}

#volunteer-form button {
    display: block;
    width: 100%;
    padding: 10px;
    background-color: #ff8000; /* Couleur orange */
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

#volunteer-form button:hover {
    background-color: #008000; /* Couleur verte */
}

/* Responsive */
@media (max-width: 400px) {
    #volunteer-form h2 {
        font-size: 1em;
    }

    #volunteer-form label,
    #volunteer-form input,
    #volunteer-form select,
    #volunteer-form textarea {
        font-size: 0.5em;
    }

    #volunteer-form button {
        padding: 8px;
    }
}

/* Styles pour la Section de Donation */
#donation {
    padding: 40px 0;
    background-color: #fff;
    text-align: center;
}

#donation h2 {
    font-size: 2.5em;
    margin-bottom: 20px;
    color: #333;
}

#donation p {
    font-size: 1.2em;
    margin-bottom: 20px;
    color: #666;
}

#donation .donation-methods {
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
}

#donation .method {
    background-color: #f9f9f9;
    padding: 20px;
    border-radius: 10px;
    text-align: center;
    width: 200px;
}

#donation .method i {
    font-size: 2em;
    margin-bottom: 10px;
    color: #ff8000; /* Couleur orange */
}

#donation .method p {
    font-size: 1.2em;
    color: #008000; /* Couleur verte */
}


/* Responsive */
@media (max-width: 768px) {
    #donation h2 {
        font-size: 2em;
    }

    #donation p {
        font-size: 1em;
    }

    #donation .donation-methods {
        flex-direction: column;
        align-items: center;
    }

    #donation .method {
        width: 100%;
        max-width: 300px;
    }
}

/* Styles pour la Section des Partenaires */
#partners {
    padding: 40px 0;
    background-color: #fff;
    text-align: center;
}

#partners h2 {
    font-size: 2.5em;
    margin-bottom: 20px;
    color: #333;
}

#partners p {
    font-size: 1.2em;
    margin-bottom: 40px;
    color: #666;
}

#partners .partners-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
}

#partners .partner {
    text-align: center;
    width: 200px;
}

#partners .partner img {
    max-width: 45%;
    height: auto;
    border-radius: 10px;
}

#partners .partner p {
    margin-top: 10px;
    font-size: 1.2em;
    color: #333;
}

/* Styles pour la Section Devenir Partenaire */
#become-partner {
    padding: 40px 0;
    background-color: #f9f9f9;
    text-align: center;
}

#become-partner h2 {
    font-size: 2.5em;
    margin-bottom: 20px;
    color: #333;
}

#become-partner p {
    font-size: 1.2em;
    margin-bottom: 40px;
    color: #666;
}

#become-partner .container {
    max-width: 400px;
    margin: 0 auto;
    padding: 0 20px;
}

#become-partner .form-group {
    margin-bottom: 20px;
    text-align: left;
}

#become-partner label {
    display: block;
    margin-bottom: 5px;
    font-weight: bold;
    color: #555;
}

#become-partner input,
#become-partner textarea {
    width: 100%;
    padding: 10px;
    margin-bottom: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
}

#become-partner button {
    display: block;
    width: 100%;
    padding: 10px;
    background-color: rgb(0, 90, 72);
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

#become-partner button:hover {
    background-color: #ff8000;
}

/* Styles pour la Section Témoignages */
#testimonials {
    padding: 40px 0;
    background-color: #fff;
    text-align: center;
}

#testimonials h2 {
    font-size: 2em;
    margin-bottom: 20px;
    color: #333;
}

#testimonials .testimonials-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
}

#testimonials .testimonial {
    max-width: 300px;
    background-color: #f9f9f9;
    border-radius: 10px;
    padding: 20px;
    text-align: left;
    position: relative;
}

#testimonials .testimonial i {
    font-size: 1em;
    color: #ff8000; /* Couleur orange */
}

#testimonials .quote {
    font-size: 1em;
    color: #666;
    margin: 10px 0;
}

#testimonials .author {
    font-size: 1em;
    color: #333;
    font-weight: bold;
}

/* Styles pour la Section Soumettre un Témoignage */
#submit-testimonial {
    padding: 40px 0;
    background-color: #f9f9f9;
    text-align: center;
}

#submit-testimonial h2 {
    font-size: 2em;
    margin-bottom: 20px;
    color: #333;
}

#submit-testimonial p {
    font-size: 1em;
    margin-bottom: 40px;
    color: #666;
}

#submit-testimonial .container {
    max-width: 400px;
    margin: 0 auto;
    padding: 0 20px;
}

#submit-testimonial .form-group {
    margin-bottom: 20px;
    text-align: left;
}

#submit-testimonial label {
    display: block;
    margin-bottom: 5px;
    font-weight: bold;
    color: #555;
}

#submit-testimonial input,
#submit-testimonial textarea {
    width: 100%;
    padding: 10px;
    margin-bottom: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
}

#submit-testimonial button {
    display: block;
    width: 100%;
    padding: 10px;
    background-color: rgb(0, 90, 72);
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

#submit-testimonial button:hover {
    background-color: #ff8000;
}

/* Styles pour la Section Contact */
#contact {
    padding: 40px 0;
    background-color: #f9f9f9;
    text-align: center;
}

#contact h2 {
    font-size: 2.5em;
    margin-bottom: 20px;
    color: #333;
}

#contact p {
    font-size: 1.2em;
    margin-bottom: 40px;
    color: #666;
}

#contact .container {
    max-width: 400px;
    margin: 0 auto;
    padding: 0 20px;
}

#contact .form-group {
    margin-bottom: 20px;
    text-align: left;
}

#contact label {
    display: block;
    margin-bottom: 5px;
    font-weight: bold;
    color: #555;
}

#contact input,
#contact textarea {
    width: 100%;
    padding: 10px;
    margin-bottom: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
}

#contact button {
    display: block;
    width: 100%;
    padding: 10px;
    background-color: #ff5100;
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

#contact button:hover {
    background-color: rgb(0, 90, 72);
}

/* Responsive */
@media (max-width: 768px) {
    #contact h2 {
        font-size: 2em;
    }

    #contact p {
        font-size: 1em;
    }

    #contact label,
    #contact input,
    #contact textarea {
        font-size: 1em;
    }

    #contact button {
        padding: 8px;
    }
}

/*................................................blog...................................................*/
#blog {
    background-color: #f4f4f4;
    padding: 50px 0;
    text-align: center;
}

#blog .container {
    width: 80%;
    margin: 0 auto;
}

#blog h2 {
    font-size: 2em;
    margin-bottom: 20px;
    color: #333;
}

#blog .blog-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}

#blog .blog-post {
    width: 45%;
    margin-bottom: 30px;
    padding: 20px;
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    text-align: left;
    transition: box-shadow 0.3s ease;
}

#blog .blog-post:hover {
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
}

#blog .blog-post img {
    width: 100%;
    height: auto;
    border-radius: 10px 10px 0 0;
}

#blog .blog-post h3 {
    font-size: 1.6em;
    color: #333;
    margin: 15px 0;
}

#blog .blog-post p {
    font-size: 1.2em;
    color: #666;
    line-height: 1.6;
}

#blog .read-more {
    display: inline-block;
    margin-top: 10px;
    padding: 10px 20px;
    background-color: #007bff;
    color: #fff;
    text-decoration: none;
    border-radius: 5px;
    transition: background-color 0.3s ease;
}

#blog .read-more:hover {
    background-color: #0056b3;
}

/* Responsive */
@media (max-width: 768px) {
    #blog .blog-post {
        width: 100%;
    }

    #blog h2 {
        font-size: 1.5em;
    }
}


/*................................................gallery...................................................*/
#gallery {
    background-color: #f4f4f4;
    padding: 50px 0;
    text-align: center;
}

#gallery .container {
    width: 80%;
    margin: 0 auto;
}

#gallery h2 {
    font-size: 2em;
    margin-bottom: 20px;
    color: #333;
}

#gallery .gallery-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}

#gallery .gallery-item {
    width: 30%;
    margin-bottom: 30px;
    padding: 20px;
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    text-align: center;
    transition: box-shadow 0.3s ease;
}

#gallery .gallery-item:hover {
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
}

#gallery .gallery-item img {
    width: 100%;
    height: auto;
    border-radius: 10px 10px 0 0;
}

#gallery .gallery-item p {
    font-size: 1.2em;
    color: #666;
    margin-top: 10px;
    line-height: 1.6;
}

/* Responsive */
@media (max-width: 500px) {
    #gallery .gallery-item {
        width: 100%;
    }

    #gallery h2 {
        font-size: 1.5em;
    }
}


/* Style pour la section Vidéos de Presse */
#press-video {
    background-color: #f9f9f9;
    background: url(/assets/images/ecole1.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    margin: 20px 0;
}

#press-video .container {
    max-width: 1200px;
    margin: 0 auto;
}

#press-video h2 {
    text-align: center;
    color: #4CAF50; /* Vert */
    margin-bottom: 20px;
}

.press-video-content {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
}

.press-video-content table {
    width: 100%;
    border-collapse: collapse;
}

.press-video-content table, th, td {
    border: 1px solid #ddd;
}

.press-video-content th, .press-video-content td {
    padding: 10px;
    text-align: left;
}

.press-video-content th {
    background-color: #faf7f3bd; /* Orange */
    color: white;
}

.press-video-content td {
    background-color: #FFF3E0; /* Légèrement orange */
}

.press-video-content td video {
    max-width: 100%;
    height: auto;
    border-radius: 5px;
}

.press-video-content td a {
    color: #4CAF50; /* Vert */
    text-decoration: none;
}

.press-video-content td a:hover {
    text-decoration: underline;
}

/* Responsive design */
@media (max-width: 768px) {
    .press-video-content table, .press-video-content th, .press-video-content td {
        display: block;
        width: 100%;
    }

    .press-video-content td {
        padding: 10px 0;
    }

    .press-video-content th {
        display: none;
    }

    .press-video-content td video {
        max-width: 100%;
    }
}




/* Style pour la section Articles de Presse */
#press-articles {
    padding: 20px;
}

#press-articles h2 {
    text-align: center;
    margin-bottom: 20px;
}

.articles {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.article {
    border: 1px solid #ccc;
    padding: 15px;
    width: 100%;
    max-width: 300px;
}

.article img {
    width: 100%;
    height: auto;
}

.article h3 {
    font-size: 1.2em;
}

.article p {
    font-size: 1em;
    margin: 10px 0;
}

.article small {
    display: block;
    margin-top: 10px;
    color: #666;
}

/* Responsive Design */
@media screen and (max-width: 768px) {
    .article {
        width: 100%;
    }
}

/*..............p enfant..............*/




section#programme-enfant {
    background-color: white;
    padding: 40px 20px;
    border-radius: 5px;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
    margin-bottom: 20px;
}

section#programme-enfant h2 {
    color: #4CAF50;
    text-align: center;
    margin-bottom: 20px;
}

section#programme-enfant h3 {
    color: #333;
}

section#programme-enfant .description,
section#programme-enfant .activities,
section#programme-enfant .health-programs,
section#programme-enfant .art-culture,
section#programme-enfant .psychosocial-support {
    margin-bottom: 20px;
}

section#programme-enfant .images {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

section#programme-enfant .images img {
    width: 100%;
    max-width: 250px;
    border-radius: 5px;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}

/* Responsive design */
@media (max-width: 768px) {
    .container {
        padding: 10px;
    }

    section#programme-enfant {
        padding: 20px 10px;
    }

    section#programme-enfant .images img {
        max-width: 100%;
    }
}

@media (max-width: 480px) {
    section#programme-enfant h2 {
        font-size: 1.5em;
    }

    section#programme-enfant h3 {
        font-size: 1.2em;
    }
}


/*...............edu/..........*/

section#programme-education {
    background-color: white;
    padding: 40px 20px;
    border-radius: 5px;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
    margin-bottom: 20px;
}

section#programme-education h2 {
    color: #4CAF50;
    text-align: center;
    margin-bottom: 20px;
}

section#programme-education h3 {
    color: #333;
}

section#programme-education .description,
section#programme-education .activities,
section#programme-education .future-projects {
    margin-bottom: 20px;
}

section#programme-education .future-projects ul {
    list-style-type: disc;
    padding-left: 20px;
}

section#programme-education .images {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

section#programme-education .images img {
    width: 100%;
    max-width: 250px;
    border-radius: 5px;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}

/* Responsive design */
@media (max-width: 768px) {
    .container {
        padding: 10px;
    }

    section#programme-education {
        padding: 20px 10px;
    }

    section#programme-education .images img {
        max-width: 100%;
    }
}

@media (max-width: 480px) {
    section#programme-education h2 {
        font-size: 1.5em;
    }

    section#programme-education h3 {
        font-size: 1.2em;
    }
}

/*........................sante........................*/

section#programme-sante {
    background-color: white;
    padding: 40px 20px;
    border-radius: 5px;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
    margin-bottom: 20px;
}

section#programme-sante h2 {
    color: #4CAF50;
    text-align: center;
    margin-bottom: 20px;
}

section#programme-sante h3 {
    color: #333;
}

section#programme-sante .description,
section#programme-sante .health-initiatives,
section#programme-sante .future-projects {
    margin-bottom: 20px;
}

section#programme-sante .future-projects ul {
    list-style-type: disc;
    padding-left: 20px;
}

section#programme-sante .images {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

section#programme-sante .images img {
    width: 100%;
    max-width: 250px;
    border-radius: 5px;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}

/* Responsive design */
@media (max-width: 768px) {
    .container {
        padding: 10px;
    }

    section#programme-sante {
        padding: 20px 10px;
    }

    section#programme-sante .images img {
        max-width: 100%;
    }
}

@media (max-width: 480px) {
    section#programme-sante h2 {
        font-size: 1.5em;
    }

    section#programme-sante h3 {
        font-size: 1.2em;
    }
}

/*......................com..................*/

section#programme-communaute {
    background-color: white;
    padding: 40px 20px;
    border-radius: 5px;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
    margin-bottom: 20px;
}

section#programme-communaute h2 {
    color: #4CAF50;
    text-align: center;
    margin-bottom: 20px;
}

section#programme-communaute h3 {
    color: #333;
}

section#programme-communaute .description,
section#programme-communaute .community-initiatives,
section#programme-communaute .future-projects {
    margin-bottom: 20px;
}

section#programme-communaute .future-projects ul {
    list-style-type: disc;
    padding-left: 20px;
}

section#programme-communaute .images {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

section#programme-communaute .images img {
    width: 100%;
    max-width: 250px;
    border-radius: 5px;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}

/* Responsive design */
@media (max-width: 768px) {
    .container {
        padding: 10px;
    }

    section#programme-communaute {
        padding: 20px 10px;
    }

    section#programme-communaute .images img {
        max-width: 100%;
    }
}

@media (max-width: 480px) {
    section#programme-communaute h2 {
        font-size: 1.5em;
    }

    section#programme-communaute h3 {
        font-size: 1.2em;
    }
}



/* ============================
   SECTION : ARTICLES DE PRESSE
   ============================ */
#press-articles {
  padding: 60px 0;
  background-color: #f9f9f9;
  text-align: center;
}

#press-articles h2 {
  font-size: 2.2rem;
  margin-bottom: 40px;
  color: #222;
  position: relative;
}

#press-articles h2::after {
  content: '';
  width: 80px;
  height: 3px;
  background: #ff5757;
  display: block;
  margin: 10px auto 0;
  border-radius: 3px;
}

/* Disposition en grille */
#press-articles .articles {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px;
}

/* Style des cartes */
#press-articles .nouvelle {
  background-color: #fff;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  width: 340px;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  text-align: left;
}

#press-articles .nouvelle:hover {
  transform: translateY(-5px);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15);
}

/* Image */
#press-articles .nouvelle img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  border-bottom: 1px solid #ddd;
}

/* Contenu interne */
#press-articles .nouvelle h3 {
  font-size: 1.3rem;
  color: #333;
  margin: 15px 20px 10px;
  font-weight: 600;
}

#press-articles .nouvelle p {
  font-size: 0.95rem;
  color: #555;
  line-height: 1.5;
  margin: 0 20px 10px;
}

#press-articles .nouvelle small {
  display: block;
  margin: 0 20px 20px;
  color: #999;
  font-size: 0.85rem;
}
