
:root {
     --gris-clair: #f8f9fa;
     --gris: #dee2e6;
     --gris-fonce: #343a40;
     --jaune: #ffc107;
     --jaune-fonce: #e0a800;
     --noir: #000;
 }

 * {
     margin: 0;
     padding: 0;
     box-sizing: border-box;
 }

 body {
     font-family: 'Segoe UI', sans-serif;
     background-color: var(--gris-clair);
     color: var(--gris-fonce);
 }

 header {
     background: var(--jaune);
     padding: 20px 0;
     text-align: center;
     color: var(--noir);
 }

 .header-container {
     display: flex;
     align-items: center;
     justify-content: center;
     gap: 15px;
     flex-wrap: wrap;
 }

 .logo {
     width: 60px;
     height: 60px;
     object-fit: contain;
 }

 .flash-info {
     background: var(--jaune-fonce);
     color: black;
     text-align: center;
     padding: 10px;
     font-weight: bold;
     animation: slideDown 1s ease;
 }

 @keyframes slideDown {
     from {
         transform: translateY(-100%);
         opacity: 0;
     }

     to {
         transform: translateY(0);
         opacity: 1;
     }
 }

 nav {
     background: var(--gris);
 }

 .menu-toggle {
     display: none;
     padding: 10px;
     cursor: pointer;
     text-align: center;
     font-weight: bold;
 }

 .menu-toggle i {
     margin-right: 8px;
 }

 .nav-links {
     display: flex;
     list-style: none;
     margin: 0;
     padding: 0;
     justify-content: center;
     flex-wrap: wrap;
     background: var(--gris);
 }

 .nav-links li {
     position: relative;
 }

 .nav-links li a,
 .nav-links li span {
     display: block;
     padding: 15px 20px;
     font-weight: bold;
     color: var(--gris-fonce);
     text-decoration: none;
     cursor: pointer;
     transition: background 0.3s;
 }

 .nav-links li a:hover,
 .nav-links li span:hover {
     background: var(--jaune);
     color: var(--noir);
 }

 .submenu {
     display: none;
     position: absolute;
     background: var(--gris);
     top: 100%;
     left: 0;
     min-width: 160px;
     z-index: 999;
     flex-direction: column;
 }

 .submenu li a {
     padding: 10px 20px;
     font-weight: normal;
 }

 @media (min-width: 769px) {
     .has-submenu:hover .submenu {
         display: flex;
     }
 }

 @media (max-width: 768px) {
     .menu-toggle {
         display: block;
     }

     .nav-links {
         display: none;
         flex-direction: column;
         align-items: flex-start;
     }

     .nav-links.show {
         display: flex;
     }

     .submenu {
         position: static;
         box-shadow: none;
         display: none;
         flex-direction: column;
     }

     .has-submenu.open .submenu {
         display: flex;
     }
 }

 .hero {
     background: url('images/equipe.jpg') center/cover no-repeat;
     height: 300px;
     display: flex;
     align-items: center;
     justify-content: center;
     color: white;
     text-shadow: 1px 1px 5px black;
 }

 .hero h2 {
     font-size: 2.5rem;
     background-color: rgba(0, 0, 0, 0.4);
     padding: 10px 20px;
     border-radius: 10px;
 }

 main {
     padding: 40px 20px;
     max-width: 1000px;
     margin: auto;
 }

 footer {
     background: var(--gris);
     padding: 20px;
     text-align: center;
     font-size: 0.9em;
     color: var(--gris-fonce);
 }


  .hero {
      background: url('../hc.jpg') center/cover no-repeat;
      height: 300px;
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      color: white;
      text-shadow: 1px 1px 5px black;
      animation: slideIn 1.2s ease-out;
  }

  .hero h2 {
      font-size: 2.5rem;
      background-color: rgba(0, 0, 0, 0.4);
      padding: 10px 20px;
      border-radius: 10px;
  }

  @keyframes slideIn {
      from {
          opacity: 0;
          transform: translateY(-30px);
      }

      to {
          opacity: 1;
          transform: translateY(0);
      }
  }

  .match-cards {
      display: flex;
      gap: 20px;
      flex-wrap: wrap;
      margin-top: 20px;
  }

  .match-card {
      flex: 1 1 300px;
      background: white;
      border-left: 6px solid var(--gris);
      padding: 20px;
      border-radius: 10px;
      box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
      transition: transform 0.3s;
  }

  .match-card:hover {
      transform: translateY(-5px);
  }

  .match-card h3 {
      margin-bottom: 10px;
  }

  .match-card i {
      margin-right: 5px;
  }

  .match-card.past {
      border-color: #6c757d;
      /* gris foncé */
  }

  .match-card.next {
      border-color: var(--jaune);
  }

  .match-card img.result-image {
      width: 100%;
      margin-top: 15px;
      border-radius: 8px;
      max-height: 180px;
      object-fit: cover;
  }

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

  .tournoi-card {
      display: flex;
      flex-direction: column;
      align-items: center;
      background: white;
      padding: 20px;
      text-align: center;
      border-radius: 10px;
      box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
      text-decoration: none;
      color: var(--gris-fonce);
      transition: transform 0.3s ease;
  }

  .tournoi-card:hover {
      transform: translateY(-5px);
      background: var(--jaune);
      color: black;
  }

  .tournoi-card i {
      font-size: 2rem;
      margin-bottom: 10px;
      color: var(--gris-fonce);
  }

  main {
      padding: 40px 20px;
      max-width: 1000px;
      margin: auto;
  }

  section {
      margin-bottom: 50px;
  }

  .team-carousel {
      display: flex;
      gap: 20px;
      overflow-x: auto;
      scroll-behavior: smooth;
      padding-bottom: 10px;
  }

  .team-carousel::-webkit-scrollbar {
      display: none;
  }

  .member-slide {
      flex: 0 0 150px;
      text-align: center;
      opacity: 0;
      transform: scale(0.95);
      animation: fadeInZoom 0.6s forwards;
  }

  .member-slide img {
      width: 100px;
      height: 100px;
      object-fit: cover;
      border-radius: 50%;
      border: 3px solid var(--jaune);
      margin-bottom: 10px;
      transition: transform 0.3s;
  }

  .member-slide:hover img {
      transform: scale(1.1);
  }

  @keyframes fadeInZoom {
      to {
          opacity: 1;
          transform: scale(1);
      }
  }

.presentation-club {
    background: var(--gris);
    padding: 40px 20px;
    border-radius: 10px;
    margin-bottom: 40px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    text-align: center;
}

.presentation-club h2 {
    font-size: 2rem;
    margin-bottom: 15px;
    color: var(--gris-fonce);
}

.presentation-club p {
    font-size: 1.05rem;
    margin-bottom: 10px;
    line-height: 1.6;
    color: var(--gris-fonce);
}

header {
    position: relative;
    background-color: var(--jaune);
    padding: 20px 0;
    color: var(--noir);
}

header::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('../honeycomb-pattern.svg');
    background-repeat: repeat;
    background-size: auto;
    opacity: 0.1;
    z-index: 0;
}

.header-container {
    position: relative;
    z-index: 1;
}

.submenu {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.btn-inscription {
    display: inline-block;
    padding: 8px 15px;
    background: var(--jaune);
    color: black;
    font-weight: bold;
    text-decoration: none;
    border-radius: 5px;
    transition: 0.3s;
}

.btn-inscription:hover {
    background: var(--jaune-fonce);
}

.prochains-evenements {
    background: #f8f9fa;
    padding: 30px 20px;
    border-top: 2px solid #dee2e6;
    margin-top: 40px;
  }
  
  .prochains-evenements h2 {
    margin-bottom: 15px;
    color: #343a40;
  }
  
  .evenements-liste {
    list-style: none;
    padding-left: 0;
  }
  
  .evenements-liste li {
    padding: 10px;
    border-bottom: 1px solid #dee2e6;
  }
  
  .evenements-liste li strong {
    color: #ffc107;
  }
  
  .evenements-liste li span {
    font-weight: bold;
  }

  .evenements-liste {
    list-style-position: inside; /* garde la puce dans la marge */
    padding-left: 20px;          /* décale le texte vers la droite */
    margin-top: 1rem;
  }
  
  .evenements-liste li {
    margin-bottom: 12px;         /* espace vertical entre les événements */
    padding-left: 10px;          /* optionnel : petit retrait supplémentaire */
    text-indent: -10px;          /* aligne le texte avec la puce */
  }

  