@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400;500&display=swap');
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Roboto', sans-serif;
}

body {
    padding-top: 80px; /* Compense la hauteur de l'en-tête fixée */
}

header {
    background-color: #f5f9f9b6;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 5%;
    position: fixed; /* Fixe l'en-tête */
    width: 100%; /* Prend toute la largeur */
    top: 0; /* Fixe l'en-tête en haut de la page */
    z-index: 1000; /* Assure que l'en-tête reste au-dessus du contenu */
}

header .logo {
    font-size: 25px;
}
header .logo span {
    color: #034343;
}
.logo {
    display: flex;
    align-items: center;
}

.logo-icon {
    width: 60px;
    height: 40px;
    margin-right: 5px;
}
header .menu a {
    position: relative;
    margin: 0 10px;
    text-decoration: 0;
    color: #02393c;
    transition: 0.5s;
}
header .menu a:before {
    position: absolute;
    top: -2px;
    content: "";
    width: 0;
    height: 2px;
    background-color: #bc1730;
    transition: 0.5s;
}
header .menu a:hover:before {
    width: 100%;
}
header .menu a:hover {
    color: #000;
}
/* home */

.home {
    height: calc(100vh - 55px);
    background: url("images/img1.jpg");
    background-position: center;
    background-size: cover;
    display: flex;
    align-items: flex-end;
    padding-left: 5%;
    padding-bottom: 50px;
}
.home-infos {
    background-color: #fff;
    border-radius: 6px;
    padding: 40px;
    animation: anime 2s linear;
}

/* animation home-infos */

@keyframes anime {
    from{
        transform: translateX(-600px);
    }
}
.home-infos h1 {
    color: #268a81;
    font-size: 30px;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.home-infos p {
    color: #0f0446;
    font-size: 26px;
    margin-top: 20px;
    margin-bottom: 40px;
}
.home-infos a {
    text-decoration: 0;
    border: 2px solid #268a81;
    color: #268a81;
    border-radius: 6px;
    padding: 5px 20px;
    margin-top: 5px;
    font-weight: 400;
    text-transform: capitalize;
    transition: 0.5s;
}

.home-infos a:hover {
    background-color: #1ad160;
    color: #fff;
    letter-spacing: 1px;
}

/* Section Consultations */
.consultations {
    text-align: center;
    padding: 50px 20px;
    background-color: #f9f9f9;
}
.appointment {
    padding: 50px 5%;
    background-color: #f3fbfa;
}

.appointment-info {
    max-width: 600px;
    margin: auto;
    background-color: #fff;
    padding: 40px;
    border-radius: 10px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

.appointment-info h1 {
    color: #268a81;
    font-size: 32px;
    margin-bottom: 20px;
}

.appointment-info p {
    color: #0f0446;
    font-size: 18px;
    margin-bottom: 20px;
}

.form-group {
    margin-bottom: 20px;
}

.form-group label {
    display: block;
    margin-bottom: 5px;
    color: #0f0446;
}

.form-group input {
    width: calc(100% - 22px);
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
}

.form-group button {
    background-color: #268a81;
    color: #fff;
    border: none;
    padding: 10px 20px;
    border-radius: 5px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.form-group button:hover {
    background-color: #1ad160;
}

.confirmation {
    height: calc(100vh - 55px);
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f3fbfa;
}

.confirmation-message {
    background-color: #fff;
    border-radius: 10px;
    padding: 40px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    text-align: center;
    animation: fadeIn 1s ease-in-out;
}

.confirmation-message h1 {
    color: #268a81;
    font-size: 32px;
    margin-bottom: 20px;
}

.confirmation-message p {
    color: #0f0446;
    font-size: 18px;
    margin-bottom: 20px;
}

.confirmation-message a {
    text-decoration: none;
    color: #fff;
    background-color: #268a81;
    padding: 10px 20px;
    border-radius: 5px;
    transition: background-color 0.3s ease;
}

.confirmation-message a:hover {
    background-color: #1ad160;
}


.consultations .title {
    font-size: 2.5rem;
    margin-bottom: 10px;
    color: #004d4d;
}

.consultations .sub-title {
    margin-bottom: 30px;
    color: #555;
    font-size: 1.1rem;
}

.consultation-options {
    display: flex;
    justify-content: center;
    gap: 30px;
    flex-wrap: wrap;
}

.consultation-options .option {
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 8px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    width: 45%;
    max-width: 600px;
    padding: 20px;
    text-align: left;
    transition: transform 0.3s ease;
}

.consultation-options .option:hover {
    transform: translateY(-5px);
}

.consultation-options .option img {
    width: 100%;
    border-radius: 8px 8px 0 0;
}

.consultation-options h2 {
    font-size: 1.5rem;
    margin: 15px 0;
    color: #007575;
}

.consultation-options ul {
    list-style: none;
    padding-left: 0;
}

.consultation-options li {
    margin-bottom: 10px;
    color: #333;
}

.consultation-options li strong {
    color: #004d4d;
}

.btn {
    display: inline-block;
    margin-top: 15px;
    padding: 10px 20px;
    background-color: #007575;
    color: #fff;
    text-decoration: none;
    border-radius: 5px;
    font-weight: bold;
}

.btn:hover {
    background-color: #005f5f;
}


/* services */

.services {
    color: #0f0446;
    padding: 0 10%;
}
.title {
    text-align: center;
    margin-top: 50px;
    font-size: 35px;
    letter-spacing: 1px;
    text-transform: uppercase
}
.sub-title {
    text-align: center;
    color: #01043a;
    margin: 20px 0;
}
.list-services {
    text-align: center;
    display: grid;
    grid-template-columns: repeat(auto-fit,20rem);
    justify-content: center;
    gap: 20px;
    margin-bottom: 50px;
}
.list-services .box {
    padding: 30px;
    background-color: #f3fbfa;
    border-radius: 6px;
    transition: 0.5s;
}
.list-services img {
    max-width: 150px;
    margin-bottom: 20px;
   
}
.list-services .box h1 {
    text-transform: uppercase;
    color: #268a81;
    margin-bottom: 10px;
    font-size: 18px;
    letter-spacing: 1px;
}
.list-services .box p {
    font-size: 16px;
}
.list-services .box:hover{
    background-color: #93d6d0;
} 
.list-services .box:hover h1 {
    color: #fff;
}
.list-services .box:hover p {
    color: #333;
}

/* banner */
.confidentialite-section {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #cce7ff;
    padding: 20px 40px;
}
.image-container {
    flex: 1;
    text-align: center;
    max-width: 500px;
    margin-bottom: 20px;
    
}
.image-container img {
    max-width: 300PX;
    height: auto;
}
.text-container {
    flex: 1;
    padding: 20px;
    color: #333;
}
.text-container h2 {
    color: #2a2b8d;
    font-size: 28px;
    margin-bottom: 20px;
}
.text-container ul {
    list-style: none;
    padding: 0;
}
.text-container li {
    margin-bottom: 15px;
    font-size: 16px;
    display: flex;
    align-items: center;
}
.text-container li::before {
    content: '\2714';
    color: #ff6600;
    font-size: 18px;
    margin-right: 10px;
}
/* Our Goal */
.our-goal {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 50px 10%;
    background: url("images/img2.png");
    min-height: auto;
    margin-top: 50px;
}

.our-goal .left, .our-goal .right {
    width: 48%; /* Slightly adjust the width */
}

.our-goal .left h1 {
    font-size: 36px;
    padding: 15px 0;
    margin-bottom: 20px;
    color: #268a81; /* Change color for contrast */
}

.our-goal .left p {
    font-size: 18px;
    line-height: 1.7;
    color: #130e5f;
    margin-bottom: 25px;
}

.our-goal .left a {
    background-color: #0ded93;
    color: #fff;
    text-decoration: none;
    padding: 15px 30px;
    text-transform: uppercase;
    border-radius: 10px; /* Rounded corners for the button */
    margin-top: 20px;
    display: inline-block;
    font-weight: bold;
}

.our-goal .right h2 {
    font-size: 30px;
    color: #268a81;
    text-transform: uppercase;
    margin-bottom: 20px;
}

.our-goal .right h4 {
    font-size: 24px;
    font-weight: bold;
    color: #15025f;
    margin-top: 20px;
}

.our-goal .right p {
    font-size: 18px;
    line-height: 1.6;
    color: #130e5f;
    margin-bottom: 25px;
}

.our-goal .right h4:first-of-type {
    margin-top: 0; /* Remove margin for the first h4 */
}

/* Add subtle shadow and padding for better legibility */
.our-goal .left, .our-goal .right {
    background-color: white;
    border-radius: 10px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    padding: 25px;
}

/* Add spacing between paragraphs */
.our-goal .left p, .our-goal .right p {
    margin-bottom: 20px;
}
.advantages {
    padding: 50px 20px;
    text-align: center;
    background-color: white;
}

.advantages h2 {
    font-size: 2.5em;
    margin-bottom: 20px;
    color: #08888c;
}

.advantages-container {
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
}

.advantage {
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    padding: 20px;
    max-width: 450px;
    text-align: center;
    transition: transform 0.3s;
    margin-bottom: 40px;
}

.advantage:hover {
    transform: translateY(-10px);
}

.advantage img {
    max-width: 200px;
    margin-bottom: 20px;
}

.advantage h3 {
    font-size: 1.5em;
    margin-bottom: 10px;
    color: #0c4077;
}

.advantage p {
    font-size: 1em;
    color: #555;
}

/* Remarque en rouge */
/* Style général pour la remarque */
.remark {
    border-left: 5px solid #d9534f; /* Bordure rouge sur la gauche */
    background-color: #fbcfcf; /* Fond clair pour la section */
    padding: 30px;
    margin: 30px 0;
    font-size: 1.1em;
    border-radius: 5px; /* Arrondir les bords */
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); /* Ombre légère */
}

/* Conteneur pour le texte et l'image */
.remark-content {
    display: flex; /* Utilisation de Flexbox pour aligner l'image et le texte côte à côte */
    align-items: center; /* Alignement vertical */
    gap: 20px; /* Espacement entre l'image et le texte */
}

/* Style de l'image circulaire */
.remark-image {
    width: 100px; /* Taille de l'image */
    height: 100px;
    border-radius: 50%; /* Pour rendre l'image circulaire */
    overflow: hidden; /* Pour que l'image ne dépasse pas du cercle */
}

.remark-image img {
    width: 100%; /* L'image s'adapte à la taille du conteneur */
    height: 100%;
    object-fit: cover; /* Couvrir tout l'espace du cercle sans déformer l'image */
}

/* Style du texte */
.remark-text {
    flex: 1; /* Permet au texte de prendre toute la largeur restante */
    font-size: 1.1em;
    color: #333;
}

.remark-text h3 {
    font-size: 1.3em;
    color: #e74c3c; /* Couleur rouge pour le titre */
    margin-bottom: 10px;
}

.remark-text p {
    font-size: 1em;
    color: #555;
}
.rdv a {
    background-color: #0ded93;
    color: #fff;
    text-decoration: none;
    padding: 15px 30px;
    text-transform: uppercase;
    border-radius: 10px; /* Rounded corners for the button */
    margin-top: 20px;
    display: inline-block;
    font-weight: bold;
}
.teleconsultation-section {
    background-color: #5EC8CD; /* Couleur du fond */
    color: #fff;
    padding: 4.5em;
    text-align: center;
}

.section-title {
    font-size: 2em;
    margin-bottom: 10px;
}

.section-description {
    font-size: 1.2em;
    margin-bottom: 2em;
}

/* Container pour les étapes */
.steps-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1em;
}

.step {
    background-color: #ffffff;
    color: #333;
    border-radius: 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    padding: 3.5em;
    width: 250px;
    text-align: left;
    position: relative;
}

.step-number {
    background-color: #5EC8CD;
    color: #fff;
    width: 35px;
    height: 35px;
    display: flex; /* Utilisation de Flexbox */
    align-items: center; /* Centre verticalement */
    justify-content: center; /* Centre horizontalement */
    border-radius: 50%; /* Rend le cercle parfait */
    font-weight: bold;
    position: absolute;
    top: 18px;
    left: 50%; /* Centre horizontalement par rapport au parent */
    transform: translateX(-50%); /* Ajuste pour être parfaitement centré */
}

.step-content {
    margin: 1.5em 0 0 0;
    font-size: 1em;
    line-height: 1.5;
}

/* Liens */
.step a {
    color: #5EC8CD;
    text-decoration: underline;
    font-weight: bold;
}
.details P {
    line-height: 1.5;
    margin: 1.5em 0 0 0;
   
}
/* Section des témoignages des clients */
.testimonials {
    text-align: center;
    background-color: #ffffff;
    padding: 40px 20px;
}

.testimonials h2 {
    color: #002C77;
    font-size: 3em;
    margin-bottom: 20px;
}
.subtitle {
    color: #FF6347; /* Couleur attrayante */
    font-size: 1    em;
    margin-bottom: 20px;
    font-weight: bold;
    margin: 30px 0;
}
.rating-summary {
    color: #555;
    font-size: 1.5em;
    height: 10px;
}
.rating-stars {
    margin: 10px 0;
    font-size: 1.5em;
    color: gold;
}

.rating-logos {
    margin: -20px 0;
}

.rating-logos img {
    height: 100px;
    margin: 5 20px;
}

.testimonial-container {
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
}

.testimonial {
    background-color: #f5f9f8;
    padding: 40px;
    border-radius: 12px;
    width: 350px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    position: relative;
    text-align: left;
}

.testimonial .quote {
    font-size: 3em;
    color: #fcc0c0;
    position: absolute;
    top: 10px;
    left: 10px;
}

.testimonial .text {
    font-size: 1em;
    color: #002C77;
    margin: 20px 0;
}

.testimonial .author {
    font-size: 1em;
    font-weight: bold;
    color: #002C77;
    text-align: right;
}



/* Footer */
.footer {
    background-color: #107182b6;
    color: #ffffff;
    padding: 20px 0;
    text-align: center;
}

.footer-container {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    max-width: 1500px;
    margin: 0 auto;
    padding: 0 20px;
}

.footer-section {
    flex: 1;
    margin: 20px;
    min-width: 250px;
    text-align: left;
}

.footer-title {
    font-size: 1.5em;
    margin-bottom: 20px;
    color: #fefeff;
}

.logo-icon1 {
    width: 100px;
    height: auto;
    margin-bottom: 20px;
}

.footer-section p,
.footer-section ul,
.footer-section form {
    font-size: 1em;
    color: #ffffff;
}

.footer-section ul {
    list-style: none;
    padding: 0;
}

.footer-section ul li {
    margin: 10px 0;
}

.footer-section ul li a {
    color: #ffffff;
    text-decoration: none;
    transition: color 0.3s;
}

.footer-section ul li a:hover {
    color: #2bd583;
}

.footer-section .contact-form {
    display: flex;
    flex-direction: column;
    align-items: center; /* Centre le formulaire horizontalement */
}

.footer-section form {
    display: flex;
    flex-direction: column;
    align-items: center; /* Centre les éléments à l'intérieur du formulaire */
    max-width: 400px; /* Ajuster cette valeur pour réduire la largeur du formulaire */
    margin: 0 auto; /* Centrer le formulaire */
}

.footer-section form input,
.footer-section form textarea {
    width: 100%; /* Prendre toute la largeur disponible dans le conteneur */
    padding: 10px;
    margin: 10px 0;
    border: none;
    border-radius: 10px;
    font-size: 0.9em; /* Réduire la taille de la police */
}

.footer-section form button {
    width: 100%; /* Prendre toute la largeur disponible dans le conteneur */
    padding: 10px;
    border: none;
    border-radius: 5px;
    background-color: #2bd583;
    color: #f1f3f7;
    cursor: pointer;
    transition: background-color 0.3s;
    font-size: 1.2em;
}

.footer-section form button:hover {
    background-color: #ffffff;
    color: #002C77;
}

.footer-bottom {
    margin-top: 40px;
    font-size: 0.9em;
    color: #f9fbfa;
    text-align: center;
}
/* Style général de la page */
body {
    font-family: Arial, sans-serif;
    background-color: #f4f4f4;
    margin: 0;
    padding: 0;
}

/* Conteneur principal */
.container {
    width: 80%;
    margin: 20px auto;
    padding: 20px;
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

/* Titre de la page */
h1 {
    text-align: center;
    color: #333;
    font-size: 2rem;
}

/* Style pour la table des rendez-vous */
table {
    width: 100%;
    margin-top: 20px;
    border-collapse: collapse;
}

th, td {
    padding: 12px;
    text-align: left;
    border: 1px solid #ddd;
}

th {
    background-color: #4CAF50;
    color: white;
}

tr:nth-child(even) {
    background-color: #f2f2f2;
}

/* Style pour les boutons */
button {
    background-color: #4CAF50;
    color: white;
    border: none;
    padding: 10px 20px;
    margin: 10px 0;
    cursor: pointer;
    border-radius: 5px;
    font-size: 1rem;
}

button:hover {
    background-color: #45a049;
}
