/*=========================== 
Google Font Link
=============================*/
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Philosopher:ital,wght@0,400;0,700;1,400;1,700&display=swap');

/*=========================== 
CSS Reset
=============================*/
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Montserrat', sans-serif;
}
body{
    color: #011740;
    overflow-x: hidden;
}
section{
    padding:  0;
}
h1{font-size: 60px; font-weight: bold;}
h2{font-size: 32px; font-weight: bold;}
h3{font-size: 25px; font-weight: bold;}
h4{font-size: 20px;font-weight: bold;}
h5{font-size: 18px;}
h6{font-size: 16px;}


h2,h3,h4,h5{
    color: #011740;
}

@media (max-width: 1200px) {
    h1 { font-size: 55px; }
    h2 { font-size: 40px; }
    h3 { font-size: 24px; }
    h4 { font-size: 18px; }
    h5 { font-size: 16px; }
    h6 { font-size: 14px; }
    p { font-size: 18px; }
}

@media (max-width: 992px) {
    h1 { font-size: 50px; }
    h2 { font-size: 36px; }
    h3 { font-size: 22px; }
    h4 { font-size: 16px; }
    h5 { font-size: 14px; }
    h6 { font-size: 12px; }
    p { font-size: 16px; }
}

@media (max-width: 768px) {
    h1 { font-size: 45px; }
    h2 { font-size: 32px; }
    h3 { font-size: 20px; }
    h4 { font-size: 14px; }
    h5 { font-size: 12px; }
    h6 { font-size: 10px; }
    p { font-size: 14px; }
}

@media (max-width: 576px) {
    h1 { font-size: 2rem; } /* Environ 32px */
    h2 { font-size: 1.5rem; } /* Environ 24px */
    h3 { font-size: 1.25rem; } /* Environ 20px */
    h4 { font-size: 1rem; } /* Environ 16px */
    h5 { font-size: 0.875rem; } /* Environ 14px */
    h6 { font-size: 0.75rem; } /* Environ 12px */
    p { font-size: 0.875rem; } /* Environ 14px */
}

/* Taille par défaut (grands écrans) */
.responsive-logo {
    height: 300px; /* Taille initiale */
    width: auto; /* Maintenir le ratio d'aspect */
}

/* Écrans moyens */
@media (max-width: 768px) {
    .responsive-logo {
        height: 200px; /* Réduire la hauteur */
    }
}

/* Écrans petits */
@media (max-width: 576px) {
    .responsive-logo {
        height: 150px; /* Taille encore plus réduite */
    }
}




/*=========================== 
Reusable Classes
=============================*/

/* Colors */
:root{
    --deep-blue: #73B4C3;
    --light-gold: #FFD65A;
}
/* Logo */
.logo{
    text-decoration: none;
    color: white;
    font-size: 2rem;
}
.logo:hover{
    color: white;
}
.logo .img-box{
    width: 2.25rem;
}

/* Social Links */
.social-links ul{
    list-style: none;
}
.social-links ul li{
    border-radius: 5px;
    background-color: #73B4C3;
    padding: 20px;
    cursor: pointer;
    margin: 0 5px;
    position: relative;
}
.social-links ul li a .icon{
    text-decoration: none;
    font-size: 20px;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    color: white;
}
.social-links ul li:hover{
    background-color: #011740;
}
.social-links ul li:hover .icon{
    color: var(--light-gold);
}




/* Buttons - Styles communs */
.button-1 a, 
.button-2 a, 
.button-3 a, 
.button-4 a {
    font-size: 18px;
    border-radius: 30px;
    padding: 10px 20px; /* Taille de base */
    text-align: center;
    display: inline-block;
    text-decoration: none; /* Supprime le soulignement */
    transition: all 0.3s ease; /* Animation fluide */
}

/* Styles spécifiques */
.button-1 a {
    border: 2px solid var(--deep-blue);
    color: white;
    background-color: transparent;
    font-weight: 500;
}
.button-1 a:hover {
    background-color: var(--deep-blue);
    color: white!important;
}

.button-2 a {
    border: 2px solid var(--deep-blue);
    color: white;
    background-color: var(--deep-blue);
    font-weight: bold;
}
.button-2 a:hover {
    background-color: transparent;
    color: var(--deep-blue)!important;
}


.button-6 {
    font-size: 18px;
    border-radius: 30px;
    padding: 10px 20px; /* Taille de base */
    text-align: center;
    display: inline-block;
    text-decoration: none; /* Supprime le soulignement */
    transition: all 0.3s ease; /* Animation fluide */
}
.button-6 {
    border: 2px solid var(--deep-blue);
    color: white;
    background-color: var(--deep-blue);
    font-weight: bold;
}
.button-6:hover {
    background-color: transparent;
    color: var(--deep-blue)!important;
}

.button-3 a {
    border: 2px solid var(--light-gold);
    color: white;
    background-color: transparent;
    font-weight: bold;
}
.button-3 a:hover {
    background-color: var(--light-gold);
    color: white!important;
}

.button-4 a {
    border: 2px solid var(--light-gold);
    color: white;
    background-color: var(--light-gold);
    font-weight: bold;
}
.button-4 a:hover {
    background-color: transparent;
    color: var(--light-gold)!important;
}

/* Media Queries pour rendre les boutons responsives */

/* Petits écrans (smartphones) */
@media (max-width: 767px) {
    .button-1 a, 
    .button-2 a, 
    .button-3 a, 
    .button-4 a {
        font-size: 14px; /* Réduit la taille de la police */
        padding: 8px 16px; /* Réduit le padding */
        width: 100%; /* Les boutons prennent toute la largeur */
        margin-bottom: 10px; /* Espace entre les boutons */
    }
}

/* Écrans moyens (tablettes) */
@media (min-width: 768px) and (max-width: 1023px) {
    .button-1 a, 
    .button-2 a, 
    .button-3 a, 
    .button-4 a {
        font-size: 16px; /* Taille intermédiaire */
        padding: 10px 20px;
    }
}

/* Grands écrans (ordinateurs) */
@media (min-width: 1024px) {
    .button-1 a, 
    .button-2 a, 
    .button-3 a, 
    .button-4 a {
        font-size: 18px; /* Taille normale */
        padding: 12px 24px; /* Padding augmenté pour un meilleur rendu */
    }
}



/* Section Title */
.section-title {
    text-align: center; /* Centrer les éléments */
    margin-bottom: 3%;
}

/* Titre principal */
.section-title h2 {
    font-weight: bold;
    font-size: 2rem; /* Taille par défaut */
    margin-bottom: 1rem;
    line-height: 1.2; /* Meilleur espacement entre lignes */
}

/* Sous-titre */
.section-title p {
    font-size: 1.2rem; /* Taille par défaut */
    font-weight: bold;
    padding: 0;
    margin: 0 0 1rem 0; /* Ajustement du bas */
    color: #011740;
    line-height: 1.5; /* Espacement plus naturel */
}

/* Ligne après le sous-titre */
.section-title p::after {
    content: "";
    width: 120px;
    height: 1px;
    display: block; /* Changement en block pour éviter les chevauchements */
    background: var(--deep-blue);
    margin: 10px auto 0 auto; /* Centré et espacé */
}

/* Responsivité pour les petits écrans */
@media screen and (max-width: 768px) {
    .section-title h2 {
        font-size: 1.5rem; /* Réduction de la taille du titre */
        margin-bottom: 0.5rem; /* Réduction de l'espacement */
    }
    
    .section-title p {
        font-size: 0.9rem; /* Réduction de la taille du sous-titre */
        margin-bottom: 0.5rem; /* Moins d'espacement */
    }

    .section-title p::after {
        width: 80px; /* Ligne plus courte pour s'adapter */
    }
}

@media screen and (max-width: 480px) {
    .section-title h2 {
        font-size: 1.2rem; /* Encore plus petit pour les très petits écrans */
    }
    
    .section-title p {
        font-size: 0.8rem; /* Ajustement supplémentaire */
    }

    .section-title p::after {
        width: 60px; /* Ligne encore plus courte */
    }
}


/* Card */
.card{
    box-shadow: rgba(0, 0, 0, 0.5) 0px 0px 2px;
    border: none;
}

/*=========================== 
Navbar
=============================*/
.navbar{
    background-color: #F7FBFF;
    box-shadow: 0px 3px 3px #BBBEC1;;
}
.navbar-nav .nav-item{
    margin: 5px 0.75rem;
}
.navbar-nav .nav-item .nav-link{
    font-size: 16px;
    text-decoration: none;
    color: #011740;
    font-weight: 700;
}
.navbar-nav .nav-item .nav-link:hover{
    color: #033289;
}
.navbar .menu-icon{
    color: #73B4C3;
    font-size: 2.25rem;
}
.navbar-collapse.show .social-links{
    padding-bottom: 1rem;
}

/*=========================== 
Home
=============================*/
#home{
    height: 80vh;
    background-color: #F7FBFF;
    background-attachment: fixed;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
}
#home .home-content{
    position: relative;
    z-index: 2;
    padding-top: 50px;
}
#home .home-content h1{
    color: #011740;
    font-weight: 700;
    text-shadow: 0px 0px black;
}
#home .home-content h4{
    color: #011740;
    font-weight: 500;
    font-size: 24px;
    text-shadow: 0px 0px black;
}

/*=========================== 
About
=============================*/
#about .heading h3{
    font-weight: 600;
}

#about .check-list{
    list-style: none;
    margin: 20px 0;
}
#about .check-list li p{
    margin-bottom: 5px;
}
#about .check-list li p .icon{
    margin-right: 5px;
    font-size: 25px;
    color: var(--deep-blue);
    transform: translateY(5px);
}

#about {
    display: flex;
    flex-wrap: wrap;
    height: auto; /* Ajuste selon le contenu */
    width: 100%;
    margin: 0;
}

.particulier, .professionnel {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    box-sizing: border-box; /* S'assurer que le padding ne modifie pas la taille des éléments */
    padding: 40px 0 40px 0; /* Padding initial pour les petits écrans */
}

.particulier {
    background-color: #f5f5dc; /* Beige clair pour particulier */
}

.professionnel {
    background-color: #dcecff; /* Bleu clair pour professionnel */
}

/* Media Query pour les petits écrans (smartphones) */
@media (max-width: 767px) {
    #about {
        flex-direction: column; /* Les blocs se mettent l'un sur l'autre */
    }

    .particulier, .professionnel {
        flex: 1 1 100%; /* Chaque bloc prend toute la largeur */
        padding: 40px; /* Padding réduit pour les petits écrans */
    }
}

/* Media Query pour les écrans moyens et plus grands (tablettes et ordinateurs) */
@media (min-width: 768px) {
    #about {
        flex-direction: row; /* Les blocs sont côte à côte */
    }

    .particulier, .professionnel {
        flex: 1; /* Chaque bloc prend 50% de la largeur */
        padding: 60px; /* Padding augmenté pour les grands écrans */
    }
}

/* Media Query pour les très grands écrans (grands ordinateurs ou écrans) */
@media (min-width: 1200px) {
    .particulier, .professionnel {
        padding: 100px; /* Augmentation du padding pour les grands écrans */
    }
}




/*=========================== 
Achievements
=============================*/
#achievements{
    background-image: url(../images/transformationchangement.png);
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
    background-repeat: no-repeat;
    height: 40vh;
    color: white;
    position: relative;
    padding: 80px 0 60px 0;
}
#achievements .title{
    position: relative;
    z-index: 2;
    margin-bottom: 30px; 
}
#achievements .title h2{
    color: white;
}
#achievements .title p{
    color: #f3f3f3;
}
.achievement-box{
    position: relative;
    z-index: 2;
    margin-top: 20px;
}
.achievement-box h2{
    color: var(--light-gold);
    font-size: 40px;
    font-weight: 600;
}



/* Conteneur principal */
#achievements2 {
    background-image: url(../images/equipeidee1.png);
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
    background-repeat: no-repeat;
    min-height: 30vh;
    color: white;
    position: relative;
    padding: 60px 20px;
}

/* Overlay */
#achievements2 .overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  
    background-color: rgba(0, 0, 0, 0.5); /* Overlay sombre */
    z-index: 1; /* Positionné en arrière-plan */
}

/* Titre principal */
#achievements2 .title {
    position: relative;
    z-index: 2; /* Au-dessus de l'overlay */
    margin-bottom: 30px;
    text-align: center;
}

#achievements2 .title h2 {
    font-size: 2rem;
    color: #fff;
    font-weight: bold;
    margin-bottom: 10px;
}

#achievements2 .title h3 {
    font-size: 1.2rem;
    color: #fff;
    font-weight: bold;
    margin-bottom: 20px;
}

/* Conteneur des éléments */
.achievement-box2 {
    position: relative;
    z-index: 2; /* Au-dessus de l'overlay */
    margin-top: 20px;
}

/* Texte des catégories */
.achievement-box2 h3 {
    color: #fff;
    font-size: 1rem;
    font-weight: 500;
    text-align: center;
    margin-top: 10px;
    overflow-wrap: break-word;
    word-break: break-word;
}

/* Point jaune */
.dot {
    width: 20px;
    height: 20px;
    background-color: #fbc02d; /* Couleur jaune */
    border-radius: 50%;
    margin: 0 auto 10px auto;
}


/* Responsive Design */
@media (max-width: 992px) {
    .achievement-box2 {
        flex: 1 1 calc(25% - 15px); /* 4 éléments par ligne sur tablettes */
    }
}

@media (max-width: 768px) {
    .achievement-box2 {
        flex: 1 1 calc(33.33% - 15px); /* 3 éléments par ligne sur tablettes moyennes */
    }
}

@media (max-width: 576px) {
    .achievement-box2 {
        flex: 1 1 calc(50% - 15px); /* 2 éléments par ligne sur petits écrans */
    }
}

@media (max-width: 400px) {
    .achievement-box2 {
        flex: 1 1 100%; /* 1 élément par ligne sur très petits écrans */
    }
}



/*=========================== 
Services
=============================*/
.service-card{
    margin-bottom: 15px;
    padding: 1rem 0;
    border-bottom: 3px solid transparent;
    transition: all 0.3s ease-in-out;
    border-top: 5px solid var(--deep-blue);
}
.service-card .icon-box .icon{
    color: var(--deep-blue);
    float: left;
    font-size: 50px;
    transform: translate(20px, 10px);
}
.service-card .card-title{
    font-weight: 600;
    margin-left: 6rem;
    transition: color 0.3s ease-in-out;
}
.service-card .card-text{
    font-size: 15px;
    margin-left: 6rem;
}
.service-card:hover{
    transform: translateY(-3%);
    border-bottom-color: var(--deep-blue);
}
.service-card:hover .card-title{
    color: var(--deep-blue);
}


.service-card2 {
    margin-bottom: 15px;
    padding: 1rem 1rem;
    border-bottom: 3px solid transparent;
    transition: all 0.3s ease-in-out;
    display: flex; /* Utilisation de flexbox pour éviter les chevauchements */
    align-items: flex-start; /* Aligne les éléments en haut */
    gap: 1rem; /* Ajoute un espacement entre les éléments */
}

.service-card2 .icon-box {
    flex-shrink: 0; /* Empêche l'icône de se réduire */
}

.service-card2 .icon-box .icon {
    color: #011740;
    font-size: 50px;
    margin-right: 1rem; /* Espacement entre l'icône et le texte */
}

.service-card2 .card-body2 {
    flex: 1; /* Permet au texte de prendre le reste de l'espace */
}

.service-card2 .card-title {
    font-weight: 600;
    margin-bottom: 0.5rem; /* Espacement en dessous du titre */
    font-size: 1.2rem; /* Taille du titre */
}

.service-card2 .card-text {
    font-size: 15px;
    margin: 0; /* Supprime les marges inutiles */
    line-height: 1.5; /* Améliore la lisibilité */
}

/* Responsivité pour les petits écrans */
@media screen and (max-width: 768px) {
    .service-card2 {
        flex-direction: column; /* Passe en colonne sur petits écrans */
        align-items: center; /* Centre les éléments */
        text-align: center; /* Centre le texte */
    }

    .service-card2 .icon-box .icon {
        margin-right: 0; /* Supprime l'espacement latéral */
        margin-bottom: 1rem; /* Ajoute un espacement en dessous */
    }

    .service-card2 .card-title {
        margin-left: 0; /* Supprime l'alignement gauche */
    }
}





/* Style des cartes */
.service-card3 {
    margin-bottom: 20px; /* Augmenter l'espacement entre les cartes */
    padding: 1rem 0;
    border-bottom: 3px solid transparent;
    transition: all 0.3s ease-in-out;
    background-color: #F7FBFF;
    flex: 1 1 calc(33.333% - 1rem); /* Ajustement pour 3 colonnes */
    margin: 0.5rem; /* Espacement entre les cartes */
    display: flex;
    flex-direction: column; /* Assure un empilement correct */
    justify-content: center; /* Centrage vertical */
    align-items: center; /* Centrage horizontal */
}

/* Pour garantir une hauteur uniforme */
.service-card3 {
    min-height: 100px; /* Ajuste la hauteur minimale des cartes */
    max-height: auto; /* Permet aux contenus plus longs de s'afficher correctement */
}

/* Icône */
.service-card3 .icon-box .icon {
    color: #011740;
    font-size: 50px;
    transform: translate(20px, 10px);
}

/* Titre */
.service-card3 .card-title {
    font-weight: 600;
    margin-left: 0; /* Centrer correctement */
    transition: color 0.3s ease-in-out;
}

/* Texte */
.service-card3 .card-text {
    font-size: 15px;
    padding: 1%;
}

/* Pour les écrans moyens (tablettes) */
@media (max-width: 768px) {
    .service-card3 {
        flex: 1 1 calc(50% - 1rem); /* 2 colonnes */
    }
}

/* Pour les petits écrans (mobiles) */
@media (max-width: 480px) {
    .service-card3 {
        flex: 1 1 100%; /* Une seule colonne */
        min-height: auto; /* Autorise une hauteur variable */
        padding: 1rem;
    }
}


/* Style des cartes */
.service-card4 {
    margin-bottom: 20px; /* Augmenter l'espacement entre les cartes */
    padding: 1rem 0;
    border-bottom: 3px solid transparent;
    transition: all 0.3s ease-in-out;
    flex: 1 1 calc(33.333% - 1rem); /* Ajustement pour 3 colonnes */
    margin: 0.5rem; /* Espacement entre les cartes */
    display: flex;
    flex-direction: column; /* Assure un empilement correct */
    justify-content: center; /* Centrage vertical */
    align-items: center; /* Centrage horizontal */
}

/* Pour garantir une hauteur uniforme */
.service-card4 {
    min-height: 100px; /* Ajuste la hauteur minimale des cartes */
    max-height: auto; /* Permet aux contenus plus longs de s'afficher correctement */
}

/* Icône */


/* Titre */
.service-card4 .card-title {
    font-weight: 600;
    margin-left: 0; /* Centrer correctement */
    transition: color 0.3s ease-in-out;
}

/* Texte */
.service-card4 .card-text {
    font-size: 15px;
    padding: 1%;
}

/* Pour les écrans moyens (tablettes) */
@media (max-width: 768px) {
    .service-card4 {
        flex: 1 1 calc(50% - 1rem); /* 2 colonnes */
    }
}

/* Pour les petits écrans (mobiles) */
@media (max-width: 480px) {
    .service-card4 {
        flex: 1 1 100%; /* Une seule colonne */
        min-height: auto; /* Autorise une hauteur variable */
        padding: 1rem;
    }
}



#moyens {
    font-family: Arial, sans-serif;
    margin: 50px 0;
}

h2 {
    font-weight: bold;
    color: #000033;
}

h3 {
    font-weight: bold;
    color: #000033;
}

.action-card, .tool-card {
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 15px;
    margin-bottom: 15px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    flex-grow: 1; /* Cartes flexibles */
    display: flex;
    align-items: center; /* Aligne le texte au centre verticalement */
    min-height: 100px; /* Définit une hauteur minimale pour éviter les problèmes */
}

.tool-card {
    height: 220px; /* Hauteur standard fixe pour toutes les tool-card */
    padding: 2%;
}

.action-card {
    height: 220px; /* Hauteur standard fixe pour toutes les tool-card */
    padding: 2%;
}
.arrow {
    font-size: 60px;
    color: #FFD65A;
    margin: 75px 0px; /* Augmentez la marge verticale */
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Cacher les flèches en petit format */
@media (max-width: 768px) {
    .arrow {
        display: none;
    }

    .align-cards {
        flex-direction: column; /* Passe en pile (vertical) */
    }
}



.service-card5{
    margin-bottom: 15px;
    padding: 1rem 0;
    border-bottom: 3px solid transparent;
    transition: all 0.3s ease-in-out;
    border-top: 5px solid var(--deep-blue);
    background-color: #F7FBFF ;
}
.service-card5 .icon-box .icon{
    color: var(--deep-blue);
    float: left;
    font-size: 50px;
    transform: translate(20px, 10px);
}
.service-card5 .card-title{
    font-weight: 600;
    margin-left: 1rem;
    transition: color 0.3s ease-in-out;
}
.service-card5 .card-text{
    font-size: 15px;
    margin-left: 1rem;
}





/*=========================== 
Pricing
=============================*/

.pricing-card{
    border-top: 5px solid var(--deep-blue);
    margin-bottom: 15px;
    padding: 1.5rem 3rem;
}
.pricing-card .card-title{
    font-size: 25px;
    font-weight: 500;
    margin-bottom: 40px;
}
.pricing-card .price-block h1{
    font-size: 50px;
    font-weight: 700;
    color: var(--deep-blue);
    margin: 0;
    margin-right: 1rem;
    position: relative;
}
.pricing-card .price-block h1 .currency{
    font-size: 20px;
    position: absolute;
    left: -20px;
    
}
.pricing-card .price-block h1 span{
    font-size: 15px;
    position: absolute;
    right: -65px;
    bottom: 10px;
}
.pricing-card ul{
    list-style: none;
    margin: 40px 0;
}
.pricing-card ul li{
    margin-bottom: 16px;
}
.pricing-card ul li.na{
    color: #ccc;
    text-decoration: line-through;
}
.pricing-card .button-1 a{
    color: var(--deep-blue);
}

/*=========================== 
Testimonials
=============================*/
#testimonials{
    background-image: url(/Images/Review-Bg-img.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    position: relative;
}
.review-box .img-wrapper{
    width: 6rem;
    margin-bottom: 20px;
}
.review-box .img-wrapper img{
    border-radius: 50%;
    border: 6px solid rgba(255, 255, 255, 0.15);
    margin: 0 auto;
}
.review-box h4{
    color: white;
    font-weight: 500;
}
.review-box span{
    color: #ddd;
    font-weight: 400;
    font-size: 15px;
    margin: 0 0 30px 0;
}
.review-box p{
    margin: 0 auto 75px auto;
    color: #eee;
    width: 65%;
    font-weight: 300;
}
.review-box p .icon{
    transform: translateY(-2px);
}

/*=========================== 
Team
=============================*/
#team{
    padding-bottom: 3%;
    padding-top: 3%;
}
#team .team-card{
    margin-bottom: 10px;
}
#team .team-card .member-img{
    position: relative;
}
#team .team-card .member-img .social-links{
    position: absolute;
    right: 0;
    top: 30px;
    transition: all 0.3s ease;
    opacity: 0;
}
#team .team-card .member-img .social-links ul li{
    padding: 15px;
    margin-bottom: 15px;
}
#team .team-card:hover .social-links{
    right: 10px;
    opacity: 1;
}
#team .team-card h5{
    font-weight: 700;
}
#team .team-card p{
    font-size: 14px;
}

/*=========================== 
Contact
=============================*/

#contact{
    padding-top: 3%;
    padding-bottom: 3%;
    text-align: center;
}

/* Info Cards */
.info-card{
    padding: 28px 0;
    background: white;
}
.info-card .icon-box{
    display: inline-block;
    margin-bottom: 20px;
}
.info-card .icon-box .icon{
    color: var(--deep-blue);
    font-size: 35px;
}
.info-card h5{
    font-weight: 700;
    margin-bottom: 10px;
}
.info-card p{
    font-size: 15px;
    margin-bottom: 5px;
    
}

/* Form */
#contact form{
    padding: 30px;
    background-color: white;
}
#contact form .form-group{
    margin-bottom: 20px;
}
#contact form input,
#contact form textarea{
    box-shadow: none;
    font-size: 14px;
    border-radius: 4px;
}
#contact form input:focus,
#contact form textarea:focus{
    border: 1px solid black;
}
#contact form textarea{
    padding: 12px 15px;
    outline: none;
    height: 10rem;
}
#contact form button{
    outline: none;
    border: none;
    background-color: transparent;
}
#contact form button .button-2 a{
    border-radius: 5px;
}

/*=========================== 
Footer
=============================*/
/* Footer Top */
.footer-top{
    padding-top: 60px;
    padding-bottom: 10px;
    background-color: #011740;
    color: white;
    font-size: 15px;
}
.footer-top .footer-box{
    margin-bottom: 15px;
    background-color: #000C22;
    border-top: 4px solid var(--deep-blue);
    padding: 20px 0;
}
.footer-top .footer-box .logo{
    margin-bottom: 15px;
}

.footer-top .title{
    color: white;
    margin-bottom: 20px;
}
.footer-top .footer-links ul {
    list-style: none;
}
.footer-top .footer-links ul li{
    padding-bottom: 15px;
}
.footer-top .footer-links ul li .links{
    text-decoration: none;
    color: #aaa;
    margin-bottom: 1rem;
    font-weight: 200;
    font-size: 14px;
}
.footer-top .footer-links ul li .links:hover{
    color: var(--light-gold);
}
.footer-top .footer-news-letter form input{
    padding: 3px;
}
.footer-top .footer-news-letter form button{
    padding: 5px 10px;
    background-color: var(--deep-blue);
    color: white;
    border: none;
    border-radius: 2px;
}

/* Footer Bottom */
.footer-bottom{
    background-color: #000C22;
}

.footer-bottom p{
    font-size: 14px;
    font-weight: 500;
    color: white;
}

#domaines{
    background-color: #F7FBFF;
    padding-top: 3%;
    padding-bottom: 3%;
}

  
  #domaines h2 {
    font-size: 2.5rem; /* Taille relative pour s'adapter à l'écran */
    margin-bottom: 1rem; /* Espacement adapté */
  }
  
  #domaines p {
    font-size: 1.2rem;
    line-height: 1.6;
  }
  
  /* Responsiveness via media queries */
  @media (max-width: 768px) {
    #domaines h2 {
      font-size: 2rem; /* Réduction de la taille pour les écrans moyens */
    }
  
    #domaines p {
      font-size: 1rem;
    }
  }
  
  @media (max-width: 480px) {
    #domaines h2 {
      font-size: 1.5rem; /* Taille adaptée pour les petits écrans */
    }
  
    #domaines p {
      font-size: 0.9rem;
    }
  }

.row{
    margin-top: 2%;
}

#temoignages{
    margin-top: 2%; 
    margin-bottom:2%;
}

ul li{
    list-style-type:none;
}

#pratiques{
    background-color: #E4E1D6;
    padding-top: 2%;
    padding-bottom: 2%;
}

#languesection{
    padding-top: 2%;
}

#pourqui{
    padding-top: 2%;
}

#messpecialites{
    text-align: center;
}

#specialites{
    padding-top: 2%;
}

#listespe{
    font-weight: bold;
}

#infospratique{
    background-color: #F7FBFF;
    padding-top: 3%;
    padding-bottom: 3%;
}
#infostitle{
    text-align: center;
}

#tarifs{
    padding-top: 3%;
    background-color: #E4E1D6;
    padding-bottom: 2%;
}
#tarifssection{
    padding-top: 2%;
    text-align: center;
}

#mission{
    padding-top: 2%;
    padding-bottom: 2%;
}

#articles{
    padding-top: 2%;
    padding-bottom: 2%;
}

#expertises{
    padding-top: 2%;
    padding-bottom: 2%;
    background-color: #F7FBFF;
}

#qvct{
    padding-top: 2%;
    padding-bottom: 2%;
    background-color: #E4E1D6;
}

#moyens{
    padding-bottom: 3%;
    padding-top: 1%;
}

#caspratiques{
    padding-bottom: 3%;
}

#teamentreprise{
    background-color: #F7FBFF;
    padding-top: 2%;
    padding-bottom: 2%;
}

.overlay{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.5);
}