/* Styles additionnels déjà dans head.php ? sinon : */
.hero-title {
  font-size: 3rem;
  font-weight: 700;
  color: white;
  /* Ombre portée sous le texte : décalage X, décalage Y, flou, couleur */
  text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.6);
}
/* 1) Wrapper du titre : pas de pointer-events pour laisser passer les clics */
#heroCarousel .title-wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  text-align: center;
  z-index: 10;          /* au-dessus des images */
  pointer-events: none; /* laisse passer les clics */
}

/* 2) Flèches : au-dessus de tout */
#heroCarousel .carousel-control-prev,
#heroCarousel .carousel-control-next {
  z-index: 11;
}
 /* make the carousel itself dark so no white shows */
#heroCarousel,
#heroCarousel .carousel-inner,
#heroCarousel .carousel-item {
  background-color: rgba(0, 0, 0, 0.6); /* 60% d'opacité */
}

/* force the <img> to completely cover the 400px height with no gaps */
#heroCarousel .carousel-item img {
  display: block;
  width: 100%;
  height: 400px;
  object-fit: cover;
  margin: 0;
  padding: 0;
}

/* Prix colorés */
.price-int { background:#6c757d;color:#000;padding:.25rem .5rem;border-radius:.25rem; }
.price-vue { background:#5bc0de;color:#000;padding:.25rem .5rem;border-radius:.25rem; }
.price-bal { background:#f0ad4e;color:#000;padding:.25rem .5rem;border-radius:.25rem; }
.price-sui { background:#d9534f;color:#000;padding:.25rem .5rem;border-radius:.25rem; }
.table-departs th, .table-departs td { font-size:1.15rem; padding:1rem .75rem; }
.table-departs thead th { font-size:1.2rem; }

	/* hauteur fixe pour la map */
	#map { height: 350px; }
	
	.jour-item {
  background-color: #f7f8fa;
  border-left: 4px solid #f9b118;
  padding: 1rem;
  border-radius: 0.25rem;
}

.jour-title {
  margin-bottom: 0.75rem;
  display: flex;
  align-items: center;
}

.jour-title .badge {
  font-size: 1rem;
  font-weight: 500;
}

.escale-name {
  font-size: 1.125rem;
  font-weight: 600;
  color: #333;
}
 .custom-marker {
  background-color: #3FB1CE;
  border-radius: 50%;
  color: white;
  width: 30px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  font-size: 14px;
  box-shadow: 0 0 5px rgba(0,0,0,0.3);
}
  .info-produit ul{
  list-style: none;
  padding-left: 0;
  margin: .75rem 0 1rem 0;
}

.info-produit li{
  position: relative;
  padding-left: 2rem;
  margin-bottom: .55rem;
  line-height: 1.4;
}

.info-produit li:before{
  content: "\f058"; /* fa-check-circle */
  font-family: "Font Awesome 5 Pro";
  font-weight: 900; /* solid */
  position: absolute;
  left: 0;
  top: .05rem;
  color: #198754; /* vert bootstrap */
  font-size: 1.05rem;
}

/* Si tu as des <ul><li><strong>xxx</strong> ...</li> */
.info-produit li strong{
  font-weight: 700;
}
  .itineraire-list{
	list-style: none;
	padding-left: 0;
	margin: 0;
	border-left: 0px solid rgba(13,110,253,.25);
	padding-left: 1rem;
  }

  .itineraire-list li{
	position: relative;
	padding-left: 1.8rem;
	margin-bottom: .8rem;
	line-height: 1.4;
  }

  .itineraire-list li:before{
	content: "\f3c5"; /* fa-location-dot */
	font-family: "Font Awesome 6 Pro";
	font-weight: 900;
	position: absolute;
	left: -1.05rem;
	top: .05rem;
	color: #007526;
	font-size: 1rem;
	background: #fff;
	padding: 0 .2rem;
	  }