/* Passager Privée — Paris–Le Bourget
 * Même identité que taxismotoparis.com (site.css), en plus calme :
 * un héros nuit, plus d'air, des titres plus légers. La plaque de prix reste la seule audace.
 */
:root { --nuit: #13233a; --nuit-texte: #b9c6d4; }

/* En-tête : nav courte */
.entete .marque-texte span { letter-spacing: .01em; }

/* Héros nuit */
.heros-lbg { background: var(--nuit); color: #fff; padding: clamp(44px, 6vw, 96px) 0 clamp(56px, 7vw, 112px); }
.heros-lbg h1 { color: #fff; font-size: clamp(2rem, 4.2vw, 3.15rem); font-weight: 480; font-stretch: 86%; letter-spacing: -.02em; line-height: 1.08; margin-bottom: .5em; }
.heros-lbg .heros-intro { color: var(--nuit-texte); font-size: 1.14rem; max-width: 46ch; }
.heros-lbg .heros-faits { margin-top: 34px; gap: 14px; }
.heros-lbg .heros-faits li { color: #e4ebf2; }
.heros-lbg .heros-faits li::before { background-color: rgba(255, 255, 255, .1); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E"); }
.heros-lbg .heros-contact { margin-top: 40px; padding-top: 28px; border-top: 1px solid rgba(255, 255, 255, .12); }
.heros-lbg .lien-icone, .heros-lbg .lien-icone:hover { color: #fff; }
.heros-lbg .lien-icone .ico { color: #9fb6d4; }
.heros-lbg .lien-icone small { color: var(--nuit-texte); }
.heros-lbg .heros-prix { margin-top: 30px; display: inline-flex; align-items: center; gap: 14px; color: var(--nuit-texte); font-size: .95rem; }
.heros-lbg .heros-prix .trajet-prix { min-width: 0; }

/* Carte de réservation */
.heros-lbg .devis { border: 0; border-radius: 16px; box-shadow: 0 40px 80px -40px rgba(0, 0, 0, .65); color: var(--encre); }
.devis-lbg .devis-titre { font-weight: 560; letter-spacing: -.01em; }
.devis-lbg .devis-titre ~ .devis-titre { font-size: 1.12rem; }

/* Sens du trajet : deux choix côte à côte */
.sens { border: 0; padding: 0; margin: 0 0 16px; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; min-width: 0; }
.sens legend { font-weight: 600; font-size: .9rem; margin-bottom: 6px; padding: 0; }
.sens > div { position: relative; }
.sens input { position: absolute; inset: 0; width: 1px; height: 1px; min-height: 0; opacity: 0; pointer-events: none; }
.sens label { display: block; height: 100%; padding: 13px 14px; border: 1px solid #c3ccd5; border-radius: var(--rayon-petit); cursor: pointer; line-height: 1.3; transition: border-color .15s ease, box-shadow .15s ease; }
.sens label strong { display: block; font-weight: 600; }
.sens label span { display: block; font-size: .84rem; color: var(--zinc); margin-top: 2px; }
.sens label:hover { border-color: #9eabb8; }
.sens input:checked + label { border-color: var(--plaque); box-shadow: inset 0 0 0 1px var(--plaque); background: #f5f8fc; }
.sens input:focus-visible + label { outline: 3px solid rgba(29, 61, 110, .25); outline-offset: 1px; }

/* Sections */
.lbg-titre { font-weight: 520; font-stretch: 88%; letter-spacing: -.015em; }
.atouts-lbg .atout h3 { font-weight: 560; }
.section-tarifs .trajets a { cursor: pointer; }
.supplements { list-style: none; padding: 0; margin: 0; border-top: 1px solid var(--trait); }
.supplements li { display: flex; justify-content: space-between; gap: 16px; padding: 13px 0; border-bottom: 1px solid var(--trait); max-width: none; }
.supplements li span:last-child { font-variant-numeric: tabular-nums; font-weight: 600; white-space: nowrap; }
.supplements-titre { font-size: 1.12rem; margin: 0 0 12px; }

/* Bandeau final */
.bandeau-lbg { background: var(--nuit); color: #fff; padding: clamp(44px, 6vw, 72px) 0; }
.bandeau-lbg .conteneur { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px 40px; }
.bandeau-lbg h2 { color: #fff; font-weight: 480; margin: 0; max-width: 26ch; }
.bandeau-lbg p { color: var(--nuit-texte); margin: 8px 0 0; }
.bandeau-lbg .boutons { display: flex; flex-wrap: wrap; gap: 12px; }
.bandeau-lbg .bouton-principal { background: #fff; color: var(--plaque); }
.bandeau-lbg .bouton-principal:hover { background: #e8eef6; color: var(--plaque-fonce); }
.bandeau-lbg .bouton-contour { background: transparent; color: #fff; border-color: rgba(255, 255, 255, .4); }
.bandeau-lbg .bouton-contour:hover { border-color: #fff; color: #fff; }

@media (max-width: 980px) {
  .heros-lbg .devis { margin-top: 8px; }
}
@media (max-width: 420px) {
  .sens { grid-template-columns: 1fr; }
}

/* Le texte du héros reste visible pendant que l'on remplit le formulaire */
@media (min-width: 981px) {
  .heros-lbg .conteneur > div:first-child { position: sticky; top: 150px; }
}
.bandeau-lbg + .pied, .bandeau-lbg ~ .pied { border-top: 1px solid rgba(255, 255, 255, .1); }
