/* Pages de destination (une commune, un aéroport).
   Partagée par toutes : la deuxième page ne recopie pas ce fichier, elle le lie.
   Reprend le noir et le rouge du site principal, en plus lisible pour du texte
   long : fond clair, colonne étroite, corps de texte confortable. */

:root {
  --rouge: #fe0000;
  --noir: #111;
  --gris-texte: #333;
  --gris-clair: #f6f6f6;
  --rose: #fde1e1;
}

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

body {
  font-family: "Roboto", "Helvetica Neue", Arial, sans-serif;
  color: var(--gris-texte);
  background: #fff;
  line-height: 1.65;
}

/* Corps */

.page {
  max-width: 760px;
  margin: 0 auto;
  padding: 25px 20px 50px;
}

.fil-ariane {
  font-size: 0.85rem;
  color: #777;
  margin-bottom: 20px;
}

h1 {
  font-size: clamp(1.6rem, 4vw, 2.2rem);
  line-height: 1.25;
  color: var(--noir);
  margin-bottom: 12px;
}

h2 {
  font-size: clamp(1.2rem, 3vw, 1.5rem);
  color: var(--noir);
  margin: 35px 0 12px;
}

h3 {
  font-size: 1.05rem;
  color: var(--noir);
  margin: 22px 0 6px;
}

p {
  margin-bottom: 12px;
}

a {
  color: var(--rouge);
}

.chapeau {
  font-size: 1.1rem;
  color: #555;
  margin-bottom: 25px;
}

/* Le prix, information la plus cherchée : elle se voit sans faire défiler */

.prix-bloc {
  background: var(--gris-clair);
  border-left: 5px solid var(--rouge);
  border-radius: 4px;
  padding: 22px 25px;
  margin: 25px 0;
}

.prix {
  font-size: 3rem;
  font-weight: 700;
  color: var(--noir);
  line-height: 1;
  margin-bottom: 2px;
}

.prix span {
  font-size: 1.6rem;
}

.prix-detail {
  color: #666;
  margin-bottom: 14px;
}

.inclus {
  list-style: none;
  margin-bottom: 18px;
}

.inclus li {
  padding-left: 22px;
  position: relative;
  margin-bottom: 4px;
}

.inclus li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--rouge);
  font-weight: 700;
}

.appel-action {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 0;
}

.bouton {
  display: inline-block;
  background: var(--rouge);
  color: #fff;
  text-decoration: none;
  font-weight: 700;
  padding: 12px 22px;
  border-radius: 4px;
}

.bouton:hover {
  background: #c50000;
}

.bouton-clair {
  background: #fff;
  color: var(--noir);
  border: 1px solid #ccc;
}

.bouton-clair:hover {
  background: var(--rose);
}

/* Tarifs secondaires */

.autres-tarifs div {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 11px 15px;
}

.autres-tarifs div:nth-child(odd) {
  background: var(--rose);
}

.note {
  font-size: 0.9rem;
  color: #666;
  margin-top: 10px;
}

.retour {
  margin-top: 40px;
  text-align: center;
}

/* Pied de page */

.pied {
  background: var(--noir);
  color: #999;
  font-size: 0.8rem;
  text-align: center;
  padding: 18px 20px;
}

.pied a {
  color: #ccc;
}
