/* Spécifique à la page réservation (complète contact.css sans le remplacer) */
.reservation-page h1 i {
  color: #6BAF46;
}

/* Réduit l'espace uniquement entre h3 et le bloc qui suit */
.reservation-page h3 {
  margin-bottom: 0;
}

.reservation-page h3 + div {
  margin-top: 0.5rem; /* au lieu de 1.5rem ou plus par défaut */
}

.reservation-form .form-row {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}

.reservation-form .two-cols > input {
  flex: 1 1 260px;   /* deux colonnes confortables, wrap sur mobile */
  min-width: 200px;
}

.reservation-form .three-cols > input {
  flex: 1 1 180px;   /* trois colonnes pour nom/prénom/âge */
  min-width: 150px;
}

/* Placeholder un peu plus lisible, aligné au style contact.css */
.reservation-form ::placehold

.payment-terms {
  margin: 1.5rem 0;
  padding: 1rem;
  background: #f9f9f9;
  border: 1px solid #ccc;
  border-radius: 8px;
}

.payment-terms p {
  margin: 0.5rem 0;
  font-weight: 500;
}

.payment-method {
  display: flex;
  gap: 2rem;
  margin-top: 1rem;
}

.payment-method label {
  display: flex;
  align-items: center;
  gap: 0.3rem;
}

.payment-tip,
.cgv-tip {
  margin-top: 0.5rem;
  font-size: 0.9rem;
  color: #555;
  font-style: italic;
}

.payment-method label {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 1rem;
}

.payment-method i {
  color: #6BAF46; /* vert du site */
  font-size: 1.1rem;
}

.cgv-container {
  margin: 2rem 0;
  padding: 1.5rem;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 10px;
  color: #222;
  line-height: 1.6;
  max-height: 400px;       /* limite hauteur */
  overflow-y: auto;        /* scroll interne */
}

.cgv-container h3 {
  margin-bottom: 1rem;
  color: #6BAF46;
}

.cgv-container h4 {
  margin-top: 1rem;
  margin-bottom: 0;
  color: #333;
}

.cgv-container p, 
.cgv-container ul {
  margin: 0.3rem 0 0.8rem;
}