body {
  margin: 0;
  font-family: 'Work Sans', sans-serif;
}

.top-bar {
  background: #ffffff;
  color: #0e3c67;
  font-size: 14px;
  text-align: center;
  padding: 10px 0;
  border-bottom: 1px solid #dcdcdc;
}

.header-logo {
  text-align: center;
  padding: 25px 0;
  background-color: #ffffff;
}

.trusted-heading::after {
  content: "";
  display: none;
  width: 60px;
  height: 3px;
  background-color: #0052cc; /* Couleur de ton thème */
  margin-top: 10px;
}


.logo-img {
  height: 60px;
}

.navbar {
  background-color: #0e3c67;
  padding: 10px 0;
   position: relative; 
}

.navbar ul {
  list-style: none;
  display: flex;
  justify-content: center;
  padding: 0;
  margin: 0;
}

.navbar li {
  color: #fff;
  padding: 10px 20px;
  cursor: pointer;
  font-size: 14px;
  font-weight: 400;
}

.navbar li.active {
  border: 1px solid #fff;
  border-radius: 10px;
  font-weight: 500;
}

.navbar li:hover {
  background-color: #1a4a84;
  border-radius: 10px;
}


        /* Ajouts pour le responsive */
        .hamburger {
            display: none;
            background: none;
            border: none;
            color: #4CAF50;
            font-size: 24px;
            cursor: pointer;
            padding: 10px 15px;
            position: absolute;
            right: 10px;
            top: 10%;
            transform: translateY(-50%);
        }

        
        @media (max-width: 768px) {
            /* Force le menu à être caché par défaut */
            .navbar ul:not(.active) {
                display: none !important;
            }
            
            .hamburger {
                display: block;
            }
            
            .navbar ul {
               display: none;
                flex-direction: column;
                width: 80%; /* Largeur du menu flottant */
                position: absolute;
                top: -140px; /* Position sous la navbar */
                right: 0px; /* Alignement à droite */
                background-color: #0e3c67;
                border-radius: 8px;
                box-shadow: 0 4px 15px rgba(0,0,0,0.2);
                padding: 10px 0;
                z-index: 100;
                gap: 0px;
            }
            
            .navbar ul.active {
                display: flex;
                animation: fadeIn 0.3s ease;
            }
            
            .navbar li {
                text-align: center;
                padding: 12px 20px;
            }
        }
        @keyframes fadeIn {
            from { opacity: 0; transform: translateY(-10px); }
            to { opacity: 1; transform: translateY(0); }
        }

/*.slider {
  position: relative;
  width: 100%;
  max-height: 600px;
  overflow: hidden;
}

.slider img {
  width: 100%;
  height: auto;
  display: block;
}*/

.arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-size: 32px;
  color: #ffffff;
  background-color: rgba(0, 0, 0, 0.3);
  padding: 10px;
  cursor: pointer;
  user-select: none;
  z-index: 10;
}

.arrow.left {
  left: 20px;
}

.arrow.right {
  right: 20px;
}

 
    body {
      font-family: 'Barlow', sans-serif;
      background-color: #fff;
      color: #002e5d;
      margin: 0;
      padding: 0;
    }

    h2 {
      text-align: center;
      text-transform: uppercase;
      font-size: 20px;
      font-weight: 600;
      margin-top: 40px;
      position: relative;
    }

    h2::after {
      content: "";
      display: block;
      width: 80px;
      height: 2px;
      background-color: #002e5d;
      margin: 10px auto 30px;
    }

    .services-container {
      display: flex;
      justify-content: center;
      gap: 30px;
      margin-bottom: 50px;
      flex-wrap: wrap;
    }

    .service-box {
      background-color: #ecedef;
      padding: 20px;
      width: 240px;
      text-align: center;
      border-radius: 3px;
    }

    .service-box i {
      background-color: #f25c4d;
      color: white;
      border-radius: 50%;
      padding: 15px;
      font-size: 24px;
      margin-bottom: 10px;
    }

    .service-box h3 {
      font-size: 16px;
      text-transform: uppercase;
      font-weight: 700;
      margin: 10px 0 5px;
    }

    .service-box p {
      font-size: 16px;
      margin: 0 0 15px;
    }

    .service-box button {
      background-color: #f25c4d;
      border: none;
      padding: 10px 20px;
      color: white;
      text-transform: uppercase;
      font-size: 12px;
      cursor: pointer;
    }

    .stats {
      text-align: center;
      border-top: 2px solid #002e5d;
      margin-top: 30px;
      padding-top: 30px;
    }

    .stats-container {
      display: flex;
      justify-content: center;
      gap: 50px;
      flex-wrap: wrap;
      margin-top: 20px;
    }

    .stat-box {
      text-align: center;
    }

    .stat-box h3 {
      font-size: 32px;
      color: #f25c4d;
      margin: 0;
    }

    .stat-box p {
      font-size: 14px;
      color: #002e5d;
      margin-top: 5px;
    } 


    .engagements-section {
  display: flex;
  justify-content: center;
  gap: 40px;
  padding: 60px 40px;
  flex-wrap: wrap;
/*  border-top: 2px solid #002e5d;*/
}

.engagement {
  max-width: 300px;
  text-align: center;
  color: #f25c4d;
}

.engagement img {
  width: 100%;
  max-width: 200px;
  height: auto;
  border-radius: 50%;
  margin-bottom: 15px;
}

.engagement h3 {
  font-size: 15px;
  font-weight: bold;
  text-transform: uppercase;
  margin: 10px 0;
}

.engagement p {
  font-size: 13px;
  line-height: 1.6;
  color: #f25c4d;
}

.partners-section {
  display: flex;
  flex-wrap: wrap; /* Permet le retour à la ligne sur mobile */
  justify-content: center;
  align-items: center;
  gap: 40px;
  padding: 40px 5%; /* Padding relatif pour mobile */
  max-width: 1400px; /* Limite la largeur max */
  margin: 0 auto; /* Centre la section */
}

.partners-section img {
  height: 40px;
  width: auto; /* Maintient les proportions */
  object-fit: contain;
  transition: transform 0.3s ease; /* Animation fluide */
}

/* Effet au survol */
.partners-section img:hover {
  transform: scale(1.1);
  opacity: 0.9;
}

/* Adaptations responsive */
@media (max-width: 1024px) {
  .partners-section {
    gap: 30px;
    padding: 30px 5%;
  }
}

@media (max-width: 768px) {
  .partners-section {
    gap: 25px;
    padding: 25px 5%;
  }
  
  .partners-section img {
    height: 35px; /* Légère réduction */
  }
}

@media (max-width: 480px) {
  .partners-section {
    gap: 15px 20px; /* Vertical Horizontal */
    padding: 20px 5%;
  }
  
  .partners-section img {
    height: 30px;
    flex: 0 0 calc(33.333% - 20px); /* 3 logos par ligne */
    max-width: calc(33.333% - 20px);
    padding: 5px; /* Espace interne */
  }
}

/* Pour très petits écrans */
@media (max-width: 360px) {
  .partners-section img {
    flex: 0 0 calc(50% - 15px); /* 2 logos par ligne */
    max-width: calc(50% - 15px);
    height: 28px;
  }
}
.presentation-text {
  max-width: 1000px;
/*  border: 2px solid #002e5d;*/
  margin: 30px auto 10px;
  text-align: left;
  font-family: 'Helvetica Neue', sans-serif;
  color: #444;
  font-size: 15px;
  line-height: 1.6;
  padding: 0 20px;
 
}
.presentation-text p {
  font-size: 13px;
  line-height: 1.6; 
}


.slider {
  position: relative;
  width: 100%;
  height: 60vh;
  overflow: hidden;
}

.slides {
  position: relative;
  width: 100%;
  height: 100%;
}

.slide {
  display: none;
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  transition: opacity 0.5s ease-in-out;
  opacity: 0;
}

.slide.active {
  display: block;
  opacity: 1;
  z-index: 1;
}

.arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-size: 3rem;
  color: white;
  background-color: rgba(0, 0, 0, 0.4);
  padding: 0.5rem 1rem;
  cursor: pointer;
  z-index: 2;
  border-radius: 50%;
  user-select: none;
  transition: background-color 0.3s;
}

.arrow:hover {
  background-color: rgba(0, 0, 0, 0.7);
}

.arrow.left {
  left: 20px;
}

.arrow.right {
  right: 20px;
}
