/* === Page Tarifs : styles dédiés === */
.tarifs { margin: 2rem 0; }
.tarifs .container { max-width: 960px; }

.tarifs h2 { font-size: 1.75rem; margin: 0 0 1rem; }
.tarifs h3 { font-size: 1.25rem; margin: 1.5rem 0 .5rem; }

/* Titre + CTA alignés (desktop), empilés (mobile) */
.tarif-headline{
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
  margin:.75rem 0 .5rem;
}
.tarif-title{ margin:0; font-size:1.25rem; font-weight:700; }
.tarif-headline .btn-cta{
  display:inline-flex; width:auto; white-space:nowrap;
  padding:.6rem 1rem; font-size:1rem; border-radius:.6rem;
}
@media (max-width: 800px){
  .tarif-headline{ flex-direction:column; align-items:stretch; }
  .tarif-headline .btn-cta{ width:100%; }
}

/* Table tarifs (UX senior) */
.price-table{
  width:100%; border-collapse:collapse;
  font-size:1.0625rem; line-height:1.5; background:#fff;
  border:1px solid #e6e6e6; border-radius:.75rem; overflow:hidden;
  margin-top:.25rem;
}
.price-table caption{
  text-align:left; font-weight:700; font-size:1.125rem;
  padding:.75rem 1rem; background:var(--bg-alt, #f7f7f7);
}
.price-table th, .price-table td{
  padding:.75rem 1rem; border-top:1px solid #eee; vertical-align:top;
}
.price-table th[scope="col"]{ background:#fafafa; font-weight:700; }
.price-table tr:nth-child(even) td{ background:#fcfcfc; }

/* Pastilles de saison */
.season-badge{
  display:inline-block; font-weight:700; padding:.2rem .5rem; border-radius:.5rem;
  font-size:.9rem; line-height:1; margin-bottom:.25rem;
}
.season-basse{      background:#e8f3ea; color:#1f6f3f; }
.season-moyenne{    background:#f0f5e6; color:#5b6a1b; }
.season-haute{      background:#fff2e5; color:#8a4b08; }
.season-treshaute{  background:#ffe8e8; color:#8a1f1f; }

/* Notes sous tableau */
.price-table + .tarif-notes{ margin-top:1rem; }
.tarif-notes{
  padding:1rem 1.25rem; background:var(--bg-alt, #f7f7f7);
  border-left:4px solid var(--menu-current, #98b58a);
  border-radius:.5rem; line-height:1.6; font-size:1.0625rem;
}
.tarif-notes p{ margin:0; }
.tarif-notes p + p{ margin-top:.4rem; }

/* Ancre sous header sticky */
.anchor-offset{ position:relative; scroll-margin-top:80px; }

/* Accessibilité : masquer visuel du <caption> (le HTML l’applique déjà) 
   NB: la classe .sr-only est dans styles.css global */
