*{
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}
:root{
    --body-color: white;
    --background_gradient : linear-gradient(rgb(0, 0, 18), rgb(0, 42, 72));
    --background-color: rgb(0, 42, 72);
    --border_color: goldenrod;
    --text-color: white;
    --active_color:rgb(0, 0, 18);
    
}
a{
    text-decoration: none;
}
body{
    color: white;
    background-color: rgb(232, 232, 232);
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}
/* HEARDER */
.side{
    background-color: var(--background-color);
}
.side a{
    color: var(--text-color);
    margin-top: 10px;
    margin-left: 7px;
    transition: 0.5s;
}
.side a:hover, .actives{
    padding: 4px;
    background-color: var(--active_color);
    border-left: 7px solid var(--text-color);
}
.header{
    min-width: 100%;
    display: flex;
    color: white;
    background: linear-gradient(rgb(0, 0, 18), rgb(0, 42, 72));
}
.header_title{
    padding: 5px 20px;
    background-color: rgb(0, 42, 72);
    position: absolute;
    margin-top: 80px;
    position: fixed;
    display: flex;
    z-index: 100;
    justify-content: center;
    align-items: center;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    border-bottom: 2px solid goldenrod;
    border-left: 2px solid goldenrod;
    border-right: 2px solid goldenrod;
    box-shadow: 0 8px 27px -1px rgba(0, 0, 0, 0.382);
}


.logo{
    display: flex;
    justify-content: center;
    align-items: center;
    justify-items: center;
}
.logo a {
    text-decoration: none;
    color: white;
}
.header img{
    width: 4rem;
    object-fit: cover;
}
.off img{
    width: auto;
    height: 50px;
}
.header span{
    font-weight: bolder;
    font-size: 1.2em;
    object-fit: cover;
}
.header ul{
    display: flex;
    justify-content: space-between;
    margin-top: 30px;
    margin-left: 55px;
}
.header li{
    list-style: none;
    display: flex;
    padding: 0 10px;
}
.header ul li a{
    color: white;
    text-decoration: none;
    transition: 0.3s;
}
.header ul li a:hover{
    color: goldenrod;
    object-fit: cover;
    border-radius: 5px;
}
.header ul li a.active{
    color: goldenrod;
    font-weight: bold;
}
.donation {
    background-color: goldenrod;
    padding: 5px 8px;
}
.donation:hover{
    background-color: #ff3a1a;
    color: white;
}
.donation.active{
    color: rgb(0, 0, 18);
    background-color: #ff3a1a;
    font-weight: bold;
}
#lang-select {
    padding-left: 25px;
    background-repeat: no-repeat;
    background-position: 5px center;
    background-size: 20px auto;
}
.langue select{
    background-color: transparent;
    color: gold;
    font-weight: bold;
    text-align: center;

    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding: 0 7px;
}
option{
    background-color: rgba(0,42,72);
    font-weight: bold;
    text-align: justify;
}
.burger{
    display: none;
    font-size: 28px;
    cursor: pointer;
    color: white;
}

/*------DRAPEAU DESKTOP*/
.langue img{
width:22px;
height:22px;
object-fit:cover;
margin-right:8px;
}

.dropdown-item{
display:flex;
align-items:center;
}
.langue .dropdown-menu{
display:none;
color: black;
}

.langue .dropdown-menu.show{
display:block;
}

.btn-lang{
background:transparent;
border:none;
}

.btn-lang:hover{
color: black;
}

.dropdown-item{
color:#222;
}

.dropdown-item:hover{
background:#ffc107;
color:black;
}

@media (max-width: 768px){
    nav ul{
        display: none;
        flex-direction: column;
        background: linear-gradient(rgba(0,18,31), rgba(0,42,72));
        position: absolute;
        top: 55px;
        left: 55%;
        width: 100%;
    }
    #nav-links{
        display: none;
    }
    #nav-links.show{
        display: flex;
    }
    .burger{
        display: block;
    }
    nav li a {
        padding: 5px;
        display: block;
        text-align: center;
    }
    .header span{
        font-size: 1em;
    }
    .langue select{
        padding: 10px;
        margin-bottom: 15px;
        margin-top: 10px;
    }
}


/*----------------------------------
----------------PAGE CONTACT------------*/
.ve-contact{
    background-position: center;
    height: 50vh;
    background-size: cover;
    padding: 230px 70px 90px;
}
.hero-title h1{
    font-weight: 900;
    font-size: 3rem;
    color: rgb(0, 42, 72);
}
.ve-page-hero{
    background-color: var(--background-color);
    z-index: 28;
    position: absolute;
}
.co-icon i{
    background-color: rgb(0, 42, 72);
}
.co-icon{
    transition: 0.5s;
}
.co-icon:hover{
    box-shadow: 0 8px 27px -1px rgba(0, 0, 0, 0.382);
}
.reservez .spam{
    border: 1px solid gold;
}
.reservez h2{
    font-weight: 900;
    font-size: 2rem;
}
@media (max-width:990px) {
    .hero-title h1{
        font-size: 2rem;
        margin-top: -20px;
        margin-left: -20px;
        line-height: 1;
    }
    .hero-title .ve-section-tag{
        color: #27ae60;
        display: none;
    }
    
}



/*=====================================
SECTION
=====================================*/

.reservez{
    padding:120px 0;
    position:relative;
}


/*=====================================
FORM CARD
=====================================*/

.ve-contact-form-wrap{

    background:#ffffff;

    border-radius:28px;

    padding:50px;

    border:1px solid rgba(255,193,7,.15);

    box-shadow:
        0 30px 80px rgba(
            0,
            0,
            0,
            .08
        );

    transition:.35s;

}

.ve-contact-form-wrap:hover{

    transform:
        translateY(-5px);

}


.spam{

    font-size:.85rem;

    font-weight:700;

    display:inline-block;

    letter-spacing:1px;

}


.ve-contact-form-wrap h2{

    font-size:3rem;

    font-weight:800;

    line-height:1.1;

}


.ve-contact-form-wrap p{

    color:#6d6d6d;

    margin-bottom:40px;

}



/*=====================================
FORM
=====================================*/

.ve-contact-form{

    display:flex;

    flex-direction:column;

    gap:25px;

}


.ve-form-row,
.ve-contact-form .row{

    gap:20px;

}


.ve-form-group{

    display:flex;

    flex-direction:column;

}


.ve-form-group label{

    margin-bottom:10px;

    font-size:.75rem;

    font-weight:700;

    color:#999;

    letter-spacing:1px;

}


.ve-form-group input,
.ve-form-group select,
.ve-form-group textarea{

    width:100%;

    border:none;

    outline:none;

    background:#ffffff;

    padding:18px 22px;

    border-radius:18px;

    transition:.25s;

    font-size:15px;

}


.ve-form-group input:focus,
.ve-form-group select:focus,
.ve-form-group textarea:focus{

    background:#fff;

    box-shadow:
        0 0 0 4px
        rgba(
            255,
            193,
            7,
            .18
        );

}


.ve-form-group textarea{

    min-height:180px;

}



/*=====================================
BUTTON
=====================================*/

/*
.btn-warning{

    border:none;

    padding:18px 30px;

    font-weight:700;

    border-radius:18px;

    transition:.3s;

}

*/


.btn-warning:hover{

    transform:
        translateY(-4px);

    box-shadow:
        0 20px 45px
        rgba(
            255,
            193,
            7,
            .35
        );

}



/*=====================================
RIGHT SIDE
=====================================*/

.ve-contact-aside{

    display:flex;

    flex-direction:column;

    gap:25px;

}


.ve-ca-box,
.ve-ca-hours,
.ve-ca-social{

    background: var(--background-color);

    padding:35px;

    border-radius:24px;

    box-shadow:
        0 15px 50px
        rgba(
            0,
            0,
            0,
            .06
        );

}


.ve-ca-box h4,
.ve-ca-hours h5,
.ve-ca-social h5{

    font-weight:700;

    margin-bottom:25px;

}


.ve-ca-list{

    list-style:none;

    padding:0;

}


.ve-ca-list li{

    padding:14px 0;

    border-bottom:
        1px solid
        rgba(
            0,
            0,
            0,
            .06
        );

}


.ve-ca-list li i{

    color:#ffc107;

    margin-right:12px;

}


.ve-ca-hours ul{

    list-style:none;

    padding:0;

}


.ve-ca-hours li{

    display:flex;

    justify-content:space-between;

    padding:16px 0;

}


.ve-ca-hours strong{

    color:#ffc107;

}


.ve-social{

    display:flex;

    gap:15px;

}


.ve-social a{

    width:55px;

    height:55px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:16px;

    color:#222;

    background:#fafafa;

    text-decoration:none;

    transition:.3s;

}


.ve-social a:hover{

    background:#ffc107;

    color:#fff;

    transform:
        translateY(-5px);

}



/*=====================================
RESPONSIVE
=====================================*/

@media(max-width:991px){

.ve-contact-form-wrap{

padding:35px;

}

.ve-contact-form-wrap h2{

font-size:2rem;

}

}




/*-------------------------------
-------------------------MAIN */

/* Section principale */
.main {
    padding-top: 20em;
    position: relative;
    width: 100%;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: 'Arial', sans-serif;
}
/* Vidéo en fond */
.main_video video {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    transform: translate(-50%, -50%);
    z-index: 1;
    object-fit: cover;
}
/* Dégradé sombre pour lisibilité */
.degrad {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(rgba(0,0,0,0.4), rgba(0,0,0,0.4));
    z-index: 2;
}
/* Contenu principal au-dessus de la vidéo */
.main_content {
    position: relative;
    z-index: 3;
    text-align: center;
    color: white;
    padding: 0 20px;
    margin-bottom: 100px;
}
/* Titre */
.main_title h1 {
    font-size: 5rem;
    margin-bottom: 10px;
    padding: 0 50px;
    text-shadow: 0 4px 13px rgba(0, 0, 0, 0.414);
}
.main_title p {
    font-size: 1.2rem;
    letter-spacing: 2px;
}
/* Responsive */
@media (max-width: 990px) {
    .main_content{
        padding: 0;
        
    }
    .main_title h1{
        font-size: 2rem;
        font-weight: 900;
    }
    .main_title p{
        padding: 20px;
    }
}


/*----------------- PAGE CONTENT ---
----------------------------------*/
.page_content{
    color: rgb(0, 18, 31);
    padding: 25px;
    object-fit: cover;
}
.historique{
    text-align: center;
    padding: 0 20px;

}
.historique h2{
    margin-bottom: 25px;
    font-size: 3em;
}
.historique p{
    padding: 0 15px;
}
.mission, .vision{
    color: var(--text-color);
    margin-top: 20px;
    border-top: 12px solid goldenrod;
    border-radius: 25px;
    background-color: rgba(0, 42, 77, 0.748);
    padding: 15px 30px;
    transition: transform 1s;
}
.mission:hover, .vision:hover{
    transform: translateY(-7px)
}
.mission h3, .vision h3{
    margin-bottom: 10px;
    font-size: 2em;
}
.mission li{
    list-style-type: circle;
    line-height: 1.7;
}
.page_content a{
    color: goldenrod;
    font-weight: bold;
    transition: 0.3s;
}
.page_content a:hover{
    color: white;
    font-weight: bold;
}
.mission_back, .vision_back{
    text-align: center;
}
.mission_back i, .vision_back i{
    font-size: 3.5rem;
    color: goldenrod;
}
@media (max-width: 789px){
    .page_content{
        padding: 25px;
    }
    .historique{
        padding: 0;
    }
    .historique h2{
        font-size: 1.5rem;
        margin-bottom: 1rem;
    }
    .historique p{
        padding: 0;
    }
    .mission h3, .vision h3{
        font-size: 1.5rem;
    }


}


/*-----------------NOS VALEURS----------
--------------------------------------*/
.valeur{
    background-color: var(--background-color);
    color: white;
    text-align: center;
}


.amour, .dynamisme, .professionalisme{
    border-top: 10px solid white;
    background-color: rgba(240, 248, 255, 0.101);
    padding: 15px;
    padding-bottom: 30px;
    text-align: center;
    justify-items: center;
    margin: 30px;
    box-shadow: 0 30px 50px 0px rgba(0, 0, 0, 0.2);
    transition: transform 0.5s;
}

.amour:hover, .dynamisme:hover, .professionalisme:hover{
    transform: translateY(-20px);
}

.amour i, .dynamisme i, .professionalisme i{
    margin-bottom: 15px;
    font-size: 2.5em;
    width: 70px;
    height: 70px;
    border: 1px solid rgb(255, 255, 255);
    border-radius: 50%;
    align-items: center;
    text-align: center;
    display: flex;
    justify-content: center;
    background-color: rgb(0, 18, 31);
    position: absolute;
    margin-top: -60px;

}
.amour h3, .dynamisme h3, .professionalisme h3{
    font-size: 1.4rem;
    margin-bottom: 10px;
    margin-top: 20px;
}
.valeur h2{
    font-size: 2em;
    margin-bottom: 20px;
    font-weight: bold;
}


/* next div */

.domaine{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}
.droit_humain, .femme, .tech{
    object-fit: cover;
    margin:15px;
    border: 1px solid white;
    background-color: rgba(0, 112, 193, 0.316);
    transition: 0.5s;
    box-shadow: 0 30px 50px 0px rgba(0, 0, 0, 0.2);
}
.droit_humain h3, .femme h3, .tech h3{

}
.droit_humain:hover, .femme:hover, .tech:hover{
    background-color: rgba(218, 165, 32, 0.897);
    border: 1px solid goldenrod;
}
.droit_humain img, .femme img, .tech img{
    width: 100%;
    height: 250px;
    border-bottom-right-radius: 60px;
    opacity: 0.9;
}
.droit_humain a, .femme a, .tech a{
    text-decoration: none;
    color: white;
}
.droit_humain a:hover, .femme a:hover, .tech a:hover{
    text-decoration: none;
    background-color: goldenrod;    
}

@media (max-width: 990px){
    .valeur h1{
        font-size: 2em;
    }
}

/* ---- PROJET EN COURS ----*/

.pro_encours{
    margin: auto;
    color: rgb(0, 18, 31);

}
.pro_encours h2{
    text-align:center; 
    margin-bottom:30px;
    font-size: 3em;
}
.grid { 
    display: grid; 
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); 
    gap: 20px; 
}
.card1 { 
    background: rgba(0, 42, 72, 0.774); 
    padding: 30px; 
    border-radius: 10px; 
    box-shadow: 0 4px 15px rgba(0,0,0,0.05); 
    text-align: center;
}
.card1 h3 { 
    color: white;
    margin-bottom: 10px;
}
.card1 p { 
    font-size: 0.95em; 
    color: white }
    
.cta { 
    text-align: center; 
    background: rgba(0, 42, 72, 0.9); 
    padding: 40px 20px; 
    color: white; 
}
.cta h2 { 
    margin-bottom: 20px; 
}
.cta p{
    margin-bottom: 35px;
}
.cta a { 
    padding: 12px 25px; 
    border-radius: 30px; 
    text-decoration: none; 
    font-weight: bold;
    transition: 0.5s;
}
.cta a:hover{
    background-color: goldenrod;
    color: white;
}
@media (max-width:990px) {
    .pro_encours h2{
        font-size: 2rem;
        margin-bottom: 15px;
    }

    
}





/* NOTRE EQUIPE */
.notre_equipe{
    padding: 15px;
    color: rgb(0, 0, 18);
    box-shadow: 0 30px 80px 87px rgba(0, 0, 0, 0.240);
}
.notre_equipe h2{
    font-size: 3em;
    margin-bottom: 30px;
    margin-left: 15px;
    line-height: 1;
}
.scroll{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
    padding: 0 40px;
    align-items: center;
    justify-content: center;
    text-align: center;
}
.scroll p{
    background-color: brown;
    color: white;
    margin-top: 270px;
    padding: 10px 0;
}
.pre{
    text-align: center;
    background-position: center;
    background-image:url(../img/Pre.jpg);
}
.vp{
    text-align: center;
    background-position: center;
    background-image:url(../img/Vp.jpg);

}
.sg{
    text-align: center;
    background-position: center;
    background-image:url(../img/Cg.jpg);
}
@media (max-width:789px) {
    .carousel-item img{
        width: 250px;
        height: auto;
    }
    .notre_equipe h2{
        font-size: 2rem
    }
    .notre_equipe_image{
        display: none;
    }
    
}

/*---- .scroll{
    object-fit: cover;
    width: 30%*10;
    display: flex;    
    animation: scroll_step 35s steps(7) infinite;
}

@keyframes scroll_step {
    0% { transform: translateX(0);}
    100% { transform: translateX(-2100px);}
}-------*/


/* COORDONNEES */
.contact{
    background-color: rgb(0, 42, 72);
    padding: 70px;
}

.main_contact h4{
    margin-top: 15px;
    font-size: 1.2rem;
    color: goldenrod;
}
.main_contact a{
    text-decoration: none;
    color: white;
}
.contact_icon{
    margin-top: 15px;
}
.media-social{
    display: flex;
    margin-top: 10px;
}
.fb, .insta, .yout, .tikt, .linked{
    width: 40px;
    height: 40px;
    border: 1px solid white;
    border-radius: 50%;
    font-size: 20px;
    justify-content: center;
    align-items: center;
    display: flex;
    margin: 0 2px;
}
.fb:hover, .insta:hover, .yout:hover, .tikt:hover, .linked:hover{
    background-color: goldenrod;
    border: 2px solid goldenrod;
}

@media (max-width:990px) {
    .contact{
        padding: 20px;
    }
    .main_contact{
        margin: 0;
    }
    .main_contact h2{
        font-size: 1.5rem;
    }
    .main_contact h4{
        line-height: 0.5;
    }
    .iframe{
        width: 100%;
        height: 200px;
    }
    .fb, .insta, .yout, .tikt, .linked{
        width: 30px;
        height: 30px;
    }

    
}

/*---- Map Contact----*/
iframe{
    width: 500px;
    height: 350px;
}
.map_image{
    height: 57%;
}
.newsletter{
    margin-top: 20px ;
    height: 32%;
}
.newsletter legend{
    font-weight: bold;
}
.newsletter fieldset{
    padding-bottom: 20px;
}

/* PARTENAIRE */
.partner_box{
    min-width: 100%;
    background-position: center;
    background-size: cover;
    overflow: hidden; 
    background-image: linear-gradient(rgb(1,26,44,0.8), rgb(1,26,44,0.8)), url(../img/1.jpg);
}
.partner img{
    width: 150px;
    height: auto;
    padding: 8px;

}

/* FOOTER */
footer{
    padding: 1.5rem;
    background: rgb(1, 26, 44);
    color: rgb(243, 243, 243);
    text-align: center;
}
@media (max-width:990px) {
    .partner img{
        width: 60px;
        height: auto;
        padding: 5px;
    }
    
}


/*------------------------------------------------------------------
MISSION
---------------------------------------------------------------------*/

/*----------MAIN PAGE BACKGROUND----
-----------------------------------*/

.background-slideshow{
  position: absolute;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  top: 0;
  z-index: -99;
}
.bg{
    position: absolute;
    width: 100%;
    min-height: 30vh;
    overflow: hidden;
    top: 0;
    background-size: cover;
    background-position: center;
    opacity: 0;
    animation: fade 24s infinite;
    align-items:flex-end; 
    padding-bottom:60px;
    display:flex; 
    align-items:flex-end; 
    margin-top:65px;
}

.sbg{
    padding-left: 40px;
}
.sbg h1{
    font-weight: 900;
}


.bg1{ background-image: linear-gradient(to left, rgba(0,0,0,0.4), rgba(0,0,0,0.4)), url(../img/m_back2.JPG); animation-delay: 0s;}
.bg2{ background-image: linear-gradient(to bottom, rgba(0,0,0,0.4), rgb(0,0,0,0.4)), url(../img/m_back4.JPG); animation-delay: 6s;}
.bg3{ background-image: linear-gradient(to bottom, rgba(0,0,0,0.4), rgb(0,0,0,0.4)), url(../img/m_back3.JPG); animation-delay: 12s;}
.bg4{ background-image: linear-gradient(to left, rgba(0, 0, 0, 0.6), rgba(0,0,0,0.4)), url(../img/m_back1.JPG); animation-delay: 18s;}



@keyframes fade {
    0% {opacity: 0;}
    10% {opacity: 1;}
    25% {opacity: 1;}
    35% {opacity: 0;}
    100% {opacity: 0;}
}

@media (max-width:990px) {
    .bg{
        padding-bottom: 10px;
    }
    .sbg p, .sbg h1{
        line-height: 1.1;
    }
    
}

@media (min-width:990px) {
    .bg{
        height: 60vh;
    }
    .sbg{
        margin-left: 200px;
    }
    .sbg h1{
        font-size: 3.5rem;
        margin-top: -150px;
    }
    
}



/*------PAGE CONTENT------
-----------------------*/ 
.m_page_content{
    margin-top: 350px;
}

.box_content_miss{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    color: rgb(0, 18, 31);
}
.miss_principale h1{
    margin-bottom: 10px;
    font-size: 2.5em;
    font-weight: bolder;
}
.miss_img_p{
    text-align: center;
}
.miss_img_p img{
    width: 30rem;
}
.miss_line{
    width: 40%;
    height: 2px;
    background-color: rgb(0, 42, 72);
    text-align: center;
    margin-top: 20px;
    margin-bottom: 10px;
}
@media (max-width:990px) {
    .miss_img_p img{
        width: 20rem;

    }
    .m_page_content{
        margin-top: 320px;
    }
}

@media (min-width:990px) {
    .m_page_content{
        margin-top: 600px;
    }
    
}


/*---AXE D'ACTION-----
---------------------*/

.axe_action{
    height: 100%;
    text-align: center;
    background-image: linear-gradient(rgba(0,42,72,0.8), rgba(0, 18, 31, 0.85)), url(../img/africa.JPG);
}
.dh_all .box_content{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); 
    gap: 20px; 
    margin-top: 10px;
    margin-bottom: 20px;
    padding: 15px 30px;
    object-fit: cover;
}
.box_content h3{
    font-size: 2em;
}
.axe_action i{
    font-size: 3.5em;
    margin-top: 30px;
    color: goldenrod;
    margin-bottom: 15px;
}
.axe_action p{
    padding: 10px;

}
.axe_action li{
    margin-left: 30px;
    list-style-type: circle;
    text-align: left;
    line-height: 1.8;
}

.defense_droit{
    border: 1px  solid white;
    padding: 0 10px;
}
.autonom{
    border: 1px  solid white;
    padding: 0 10px;
}
.acces_tech{
    border: 1px  solid white;
    padding: 0 10px;
}



/*------NEXT CONTENT -------
--------------------------*/

.next_content{
    color: rgb(0, 18, 31);
    text-align: center;
    padding: 0 55px;
}
.next_content h1{
    font-size: 2.5em;
    margin-top: 20px;
    margin-bottom: 10px;
}
.next_content .dh_all p{
    margin-top: 20px;
}
.next_content_image{
    display: grid; 
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); 
    gap: 20px; 
    margin-top: 10px;
    color: rgb(0, 0, 18);
    margin-bottom: 20px;
}
.img1, .img2, .img3, .img4{
    margin: 0 10px;
    height: auto;
    box-shadow: 0 3px 10px -3px rgba(0, 0, 0, 0.727);
}
.next_content_image h4{
    object-fit: cover;
    padding: 10px;
    font-size: 1rem;

}
.next_content_image img{
    object-fit: cover;
    width: 100%;
    height: 200px;

}
@media (max-width:990px) {
    .miss_principale h1{
        font-size: 2rem;
    }
    .m_page_content{
        padding: 20px 30px;
    }
    .next_content{
        padding: 15px 30px;
    }
    .dh_all h1{
        font-size: 2rem;
    }
    .dh_all .p{
        text-align: start;
    }

}





/*-------DROITS HUMAINS----
------------------------*/
.droits_humains{
    padding: 50px 20px; 
    color: white;
    background-image: linear-gradient(rgba(0,42,72,0.8), rgba(0, 18, 31, 0.85)), url(../img/Lawer.JPG);
}
.dh_all{
    max-width: 1200px; 
    margin: auto;

}
.dh_all h2{
    text-align: center; 
    font-size: 2.5em; 
    margin-bottom: 10px;

}
.dh_all p{
    text-align: center; 
    font-size: 1.1em; 
    max-width: 800px; 
    margin: auto;

}
/* BLOC INTRO */
.bloc_intro{
    margin-top: 40px;
    background-color: white; 
    padding: 25px; 
    border-radius: 10px; 
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);

}
.bloc_intro h3{
    color: #27ae60;
    font-size: 1.5em;
    margin-bottom: 8px;
    
}
.bloc_intro p{
    color: rgb(0, 42, 72);
    margin: 0;
    text-align: left;

}
 /* ACTION CLE */
.action_cle{
    display: grid; 
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); 
    gap: 25px; 
    margin-top: 30px;
    color: rgb(0, 0, 18);
}
.action_cle p{
    text-align: left;
}
.action_cle h4{
    font-size: 1.5em;
    margin-bottom: 10px;
}
.action_cle1{
    background: rgba(255, 255, 255, 0.8); 
    padding: 20px; 
    border-radius: 10px; 
    border-top: 9px solid #27ae60;
}
.action_cle2{
    background: rgba(255, 255, 255, 0.8); 
    padding: 20px; 
    border-radius: 10px; 
    border-top: 9px solid #2980b9;
}
.action_cle3{
    background: rgba(255, 255, 255, 0.8); 
    padding: 20px; 
    border-radius: 10px; 
    border-top: 9px solid #e67e22;
}
.action_cle4{
    background: rgba(255, 255, 255, 0.8); 
    padding: 20px; 
    border-radius: 10px; 
    border-top: 9px solid #8e44ad;
}
/* IMPACTS */
.impacts{
    margin-top: 35px; 
    background-color: #ecf0f1; 
    padding: 35px; 
    border-radius: 10px;
}
.impacts h3{
    color: #2C3E50;
    font-size: 1.5em;
    margin-bottom: 8px;

}
.impacts ul{
    color: #333; 
    line-height: 1.6;

}
/* APPEL ACTION */
.appel_action{
    text-align: center; 
    margin-top: 30px;
}
.appel_action a{
    background-color: goldenrod; 
    color: white; 
    padding: 12px 25px; 
    text-decoration: none; 
    border-radius: 30px; 
    font-weight: bold; 
    margin: 5px; 
    display: inline-block;
    transition: 0.5s;
}
.appel_action a:hover{
    background-color: red;
}

.temoign_tech{
    color: rgb(0, 18, 31);
    margin-top: 40px; 
    background-color: #eef6fb; 
    padding: 25px; 
    border-radius: 10px; 
    font-style: italic; 
    border-left: 9px solid #2980b9;
}
.techno{
    padding: 50px 20px; 
    color: white;
    background-image: linear-gradient(rgba(0,42,72,0.8), rgba(0, 18, 31, 0.85)), url(../img/tech.jpg);

}




/*-------AUTONOMISATION DE LA FEMME---
------------------------------------*/
.auton_femme{
    font-family: Arial, sans-serif; 
    padding: 50px 20px; 
}
.auton_femme_all{
    max-width: 1100px; 
    margin: auto;
}
.auton_femme_all h2{
    text-align: center; 
    color: #e67e22; 
    font-size: 2.5em; 
    margin-bottom: 10px;

}
.auton_femme_all p{
    text-align: center; 
    color: #555; 
    font-size: 1.1em; 
    max-width: 800px; 
    margin: auto;

}
/* BLOC INTRO */
.bloc_intro_femme{
    margin-top: 40px;
    background-color: white; 
    padding: 25px; 
    border-radius: 10px; 
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}
.bloc_intro_femme h3{
    color: #e67e22;
    font-size: 1.5em;
    margin-bottom: 8px;
}
.bloc_intro_femme p{
    color: rgb(0, 42, 72);
    margin: 0;
    text-align: left;
}
.auton_femme .action_cle p{
    text-align: left;
}
.auton_femme .action_cle1,
.auton_femme .action_cle2,
.auton_femme .action_cle3,
.auton_femme .action_cle4{
    background: rgba(0, 42, 72, 0.2);

}
.auton_femme .impacts{
    background: rgba(0, 42, 72, 0.309);

}

/* TEMOIGN */
.temoign_femme{
    margin-top: 40px; 
    background-color: #fff8f0; 
    padding: 25px; 
    border-radius: 15px; 
    font-style: italic; 
    border-left: 9px solid #e67e22;
}


/*-------EMAIL US-----
--------------------*/

.mail_us{
    width: 100%;
    height: 65vh;
    background-image: linear-gradient(rgba(0,42,72,0.5), rgba(0,42,72,0.5)), url(../img/backgPhote2.jpg);
}
.in input, textarea{
    padding: 5px;

}



/*------------------------------------------------------
A PROPOS----------------------------------------------*/

.apropos{
    width: 100%;
    height: 40vh;
    text-align: center;
    justify-content: center;
    display: flex;
    object-fit: cover;
    background-image: linear-gradient(rgba(0, 0, 0, 0.522), rgba(0, 42, 72, 0.7)), url(../img/backgPhoto3.jpg);
}
.about_ong{
    color: white;
    background-color: rgb(0, 42, 72);

}
.histo_ong12{
    color: rgb(0, 0, 18);
}



.structure{
    background-color: rgba(0, 42, 72, 0.488);
    font-family: Arial, sans-serif; padding: 50px 20px;

}

.struct_all{
    max-width: 1100px; margin: auto;
}
.missi{
    margin-top: 30px; 
    background-color: white; 
    padding: 25px; 
    border-radius: 10px; 
    border-left: 15px solid #27ae60; 
    color: rgb(0,42,72);

}
.missi h3{
    color: #2980b9;

}
.val{
    margin-top: 20px; 
    background-color: white; 
    padding: 25px; 
    border-radius: 10px; 
    border-left: 15px solid #e67e22;
}
.val h3{
    color: #e67e22;
}
.val ul{
    line-height: 1.8; 
    color: #333;
}
.vis{
    margin-top: 20px; 
    background-color: white; 
    padding: 25px; 
    border-radius: 10px; 
    border-left: 15px solid #2980b9; 
    color: rgb(0,42,72);

}
.vis h3{
    color: #2980b9;

}
.organigramme{
    margin-top: 40px;
}
.organigramme h3{
    text-align:center; 
    color: #2C3E50;
}
.orga_all{
    display: grid; 
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); 
    gap: 20px; 
    margin-top: 20px; 
    color: rgb(0,42,72);

}
.orga_all div{
    background: white; 
    padding: 15px; 
    border-radius: 10px; 
    text-align: center;

}





/*--------------------------------------------------
PROJECTS------------------------------------------*/

.projects{
    width: 100%;
    height: 20vh;
    text-align: center;
    justify-content: center;
    display: flex;
    object-fit: cover;
    background-image: linear-gradient(rgba(0, 0, 0, 0.522), rgba(0, 42, 72, 0.7)), url(../img/backgPhote2.jpg);
}
.project{
    width: 200px;
    height: 50px;
    background-color: rgb(0, 42, 72);
    position: absolute;
    margin-top: 90px;
    display: flex;
    position: fixed;
    justify-content: center;
    align-items: center;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    border: 1px solid white;
    box-shadow: 0 8px 27px -1px rgba(0, 0, 0, 0.382);
}
.project_content{
    width: 100%;
    height: 100vh;
}




/*--------------ADMINISTRATEURS------------------------------------------------
------------------------------------------------------------------------------*/
.admin{
    padding: 15px;
    background-color: goldenrod;
    color: white;
    display: grid;
    background-image: url(../img/cd_logo.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;

}
.admin_all{
    padding: 30px;
    display: grid;
    text-align: center;
    background-color: rgba(0, 42, 72, 0.896);
    text-align: center;
    object-fit: cover;
    width: 100%;
    height: auto;


}
.back_logo{
    width: 100%;
    height: 100%;
    background-color: #27ae60;
    z-index: 2;


}
.admin_all h1{
    text-align: center;
    color: goldenrod;
    margin-bottom: 20px;
}
.admin_all h2{
    margin-bottom: 10px;
}
.table_newsletter{
    text-align: center;
    margin-bottom: 20px;
}
.table_newsletter td{
    padding: 3px 10px;
    color: gold;
}
.admin_all p{
    margin-bottom: 20px;
}
.admin_all textarea, .admin_all input{
    background-color: rgb(219, 219, 219);
    padding: 10px;
    margin-top: 5px;
}
.admin_all button{
    background-color: goldenrod;
    font-weight: bold;
    transition: 0.3s;
}
.admin_all button:hover{
    background-color: rgb(0, 42, 72);
    color: white;
}
.admin_all li{
    list-style: none;
    font-style: italic;
}
.admin_all ul{
    margin-bottom: 10px;
}
.descend a{
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: 2px solid white;
    text-decoration: none;
    color: white;
    position: fixed;
    right: 10px;
    top: 100px;
    text-align: center;
    align-items: center;
    justify-content: center;
    display: grid;

}




/*---------------BENEVOLAT-------------------------------------------------------------------
-------------------------------------------------------------------------------------------*/

.benevolat{
    font-family: Arial, sans-serif; 
    padding: 50px 20px;
}
.ben_div{
    max-width: 1100px; 
    margin: auto;
}
.ben_div h2{
    text-align: center; 
    color: rgb(0,42,72); 
    font-size: 2.5em; 
    margin-bottom: 10px;
}
.ben_div p{
    text-align: center; 
    color: #555; 
    font-size: 1.1em; 
    max-width: 800px; 
    margin: auto;
}
.ben_pourquoi{
    margin-top: 40px; 
    background-color: white; 
    padding: 25px; 
    border-radius: 10px; 
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}
.ben_pourquoi h3{
    color: rgb(0,42,72);
}
.ben_pourquoi ul{
    line-height: 1.8; 
    color: #333;
}


.ben_processus{
    margin-top: 30px; 
    background-color: #ecf0f1; 
    padding: 25px; 
    border-radius: 10px;
}
.ben_processus h3{
    color: #2C3E50;
}
.ben_processus ol{
    line-height: 1.8; 
    color: #333;
}


.ben_formulaire{
    margin-top: 40px; 
    background-color: rgb(0,42,72); 
    padding: 25px; 
    border-radius: 10px; 
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}
.ben_formulaire h3{
    color: gold; 
    text-align: center;
}
.ben_formulaire form{
    max-width: 500px; 
    margin: auto; 
    margin-top: 20px;
}
.ben_formulaire input{
    width:100%; 
    padding:10px; 
    margin-bottom:15px; 
    border:1px solid #ccc; 
    border-radius:5px;
}
.ben_formulaire select{
    width:100%; 
    padding:10px; 
    margin-bottom:15px; 
    border:1px solid #ccc; 
    border-radius:5px; 
    background-color: white;
}
.ben_formulaire textarea{
    width:100%; 
    padding:10px; 
    height:80px; 
    margin-bottom:15px; 
    border:1px solid #ccc; 
    border-radius:5px;
}
.ben_formulaire button{
    width:100%; 
    background:gold; 
    color: rgb(0,42,72); 
    padding:0; 
    border:none; 
    border-radius:5px; 
    font-size:1em; 
    cursor:pointer; 
    font-weight: bold;
}

.ben_appel{
    text-align: center; 
    margin-top: 40px;
}
.ben_appel p{
    color: #555;
}
.ben_appel a{
    background-color: rgb(0,42,72); 
    color: white; 
    padding: 12px 25px; 
    text-decoration: none; 
    border-radius: 30px; 
    font-weight: bold; 
    margin: 5px; 
    display: inline-block;
}




/*-----------------DONATION------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------*/
.hero{
background:linear-gradient( 135deg,rgba(0, 42, 72, 0.586), rgb(1, 31, 53));
color:white;
padding:80px 20px;
text-align:center;
}
.hero h1{
font-size:42px;
margin-bottom:15px;
font-weight:700;
margin-top: 20px;
}
.hero p{
max-width:700px;
margin:auto;
line-height:1.7;
}
.donate_div{
    max-width:850px;
    margin:auto;
    padding:10px;
}
.donate_pourquoi{
    margin-top: 40px; 
    background-color: white; 
    padding: 25px; 
    border-radius: 10px; 
    text-align:center;
}
.donate_pourquoi h3{
    color: rgb(0,42,72);
    font-weight: bold;
}
.donate_pourquoi p{
    color: #333;
}
.donate_pourquoi ul{
    list-style: none; 
    padding: 0; 
    color: #333; 
    text-align: left;
}
.donate_formulaire{
    margin-top: 40px; 
    background: rgb(0,42,72);; 
    padding: 25px; 
    border-radius: 10px; 
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}
.donate_formulaire form{
    max-width: 500px; 
    margin: auto; 
    margin-top: 20px;
}
.donate_formulaire select{
    width:100%; 
    padding:10px; 
    margin-bottom:15px; 
    border:1px solid #ccc; 
    border-radius:5px;
}
.donate_formulaire button{
    width:100%; 
    background:goldenrod; 
    color:white; 
    padding:12px; 
    border:none; 
    border-radius:5px; 
    font-size:1.1em; 
    cursor:pointer;
}
.donate_trans{
    margin-top: 40px; 
    background-color: #ecf0f1; 
    padding: 25px; 
    border-radius: 10px;
}
.donate_trans h3{
    color: #2C3E50;
}
.donate_trans p{
    color: #333; 
    text-align: start;
}


/*===========================================================*/

.payment_choice{
    display:flex;
    gap:25px;
    justify-content: space-between;
}
.donate_div input[type="radio"]{
    width: 22px;
    height: 22px;
}
.card_box{
    padding:25px;
    border:1px solid #dbe2ea;
    border-radius:18px;
    background:white;
}
.card_title{
    display:flex;
    gap:15px;
    align-items:center;
    margin-bottom:25px;
}
.card_title span{
    font-size:24px;
}
.card_form{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.card_form label{
    display:block;
    margin-bottom:5px;
    font-weight:600;
}

.card_form input{
    width:100%;
    padding:13px;
    border:1px solid #d8dde5;
    border-radius:12px;
    font-size:18px;
}

.card_form input:focus{
    outline:none;
    border-color:#1565ff;
    box-shadow:0 0 0 4px, rgba(21,101,255,0.15);
}

.card_form .row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}

.secure_notice{
    margin-top:18px;
    padding:16px;
    border-radius:12px;
    background:#eef5ff;
    line-height:1.6;
}

@media (max-width:990px) {
    .card_form input{
        padding: 9px;
    }
    .donate_div input[type="radio"]{
    width: 15px;
    height: 15px;
    }
    .payment_choice label{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

}



/*------------------SOUTIEN---------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------*/
.soutien{
    font-family: Arial, sans-serif; 
    padding: 50px 20px; 
    background-color: #f8f9fa;
}
.soutien_div{
    max-width: 1100px; 
    margin: auto;
}
.soutien_div h2{
    text-align: center; 
    color: #27ae60; 
    font-size: 2.5em; 
    margin-bottom: 10px;
}
.soutien_div p{
    text-align: center; 
    color: #555; 
    font-size: 1.1em; 
    max-width: 800px; 
    margin: auto;
}

.sout_pourquoi{
    margin-top: 40px; 
    background-color: white; 
    padding: 25px; 
    border-radius: 10px; 
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}
.sout_pourquoi h3{
    color: #27ae60;
}
.sout_pourquoi ul{
    line-height: 1.8; 
    color: #333;
}

.sout_type{
    margin-top: 40px;
}
.sout_type h3{
    color: #2C3E50; 
    text-align:center;
}

.sout_div{
    display: grid; 
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); 
    gap: 20px; 
    margin-top: 20px;
}

.sout_div1{
    background: white; 
    padding: 20px; 
    border-radius: 10px; 
    border-top: 4px solid #27ae60;
}
.sout_div2{
    background: white; 
    padding: 20px; 
    border-radius: 10px; 
    border-top: 4px solid #2980b9;
}
.sout_div3{
    background: white; 
    padding: 20px; 
    border-radius: 10px; 
    border-top: 4px solid #e67e22;
}

.sout_impact{
    margin-top: 40px;
    background-color: #ecf0f1; 
    padding: 25px; 
    border-radius: 10px;
}
.sout_impact h3{
    color: #2C3E50;
}
.sout_impact ul{
    color: #333; 
    line-height: 1.8;
}

.sout-formulaire{
    margin-top: 40px; 
    background: white; 
    padding: 25px; 
    border-radius: 10px; 
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}
.sout-formulaire h3{
    color: #27ae60; 
    text-align:center;
}
.sout-formulaire form{
    max-width: 500px; 
    margin: auto; 
    margin-top: 20px;
}
.sout-formulaire input{
    width:100%; 
    padding:10px; 
    margin-bottom:15px; 
    border:1px solid #ccc; 
    border-radius:5px;
}
.sout-formulaire select{
    width:100%; 
    padding:10px; 
    margin-bottom:15px; 
    border:1px solid #ccc; 
    border-radius:5px;
}
.sout-formulaire textarea{
    width:100%; 
    padding:10px; 
    height:80px; 
    margin-bottom:15px; 
    border:1px solid #ccc; 
    border-radius:5px;
}
.sout-formulaire button{
    width:100%; 
    background:#27ae60; 
    color:white; 
    padding:12px; 
    border:none; 
    border-radius:5px; 
    font-size:1.1em; 
    cursor:pointer;
}

.sout_appel{
    text-align: center; 
    margin-top: 40px;
}
.sout_appel a{
    background-color: #e67e22; 
    color: white; 
    padding: 12px 25px; 
    text-decoration: none; 
    border-radius: 30px; 
    font-weight: bold; 
    margin: 5px; 
    display: inline-block;
}
.sout_appel p{
    color: #555;
}