/*
 * Page Tarifs (07/10/2026) : la grille, le curseur et les conditions, déplacés
 * de la home (règles reprises telles quelles de home.css, bloc « Tarifs »),
 * plus le TTC en France et le tableau empilé sur petit écran. La page charge
 * aussi home.css (sections, appel final).
 */
.ac-tarif { display: grid; gap: 2rem; padding: 2rem; border-radius: var(--st-rayon-lg); background: #fff; border: 1px solid rgba(196, 198, 205, .7); box-shadow: var(--st-ombre-1); }
@media (min-width: 640px) { .ac-tarif { padding: 2.5rem; } }
.ac-tarif__tete { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.5rem; padding-bottom: 2rem; border-bottom: 1px solid rgba(196, 198, 205, .5); }
.ac-tarif__tete p { margin: 0; }
.ac-tarif__tete p:not(.st-surtitre) { color: var(--st-texte-variant); }
.ac-tarif__tete .st-titre-md { margin-block: .25rem; }
.ac-tarif__prix { display: grid; gap: .1rem; text-align: start; }
@media (min-width: 640px) { .ac-tarif__prix { text-align: end; } }
.ac-tarif__prix span { font-size: 12px; line-height: 18px; color: var(--st-texte-variant); }
.ac-tarif__prix strong { font: 600 32px/40px var(--st-serif); color: var(--st-primaire); }
/* Deux devises (branche prix-euro, 06/10/2026) : une ligne selon le pays où le client est établi. */
.ac-tarif__prix { gap: .75rem; }
.ac-tarif__ligne { display: grid; gap: 0; }
.ac-tarif__prix .ac-tarif__pays { font: 600 11px/14px var(--st-sans); letter-spacing: .08em; text-transform: uppercase; color: var(--st-secondaire); }
.ac-tarif__prix .ac-tarif__ligne strong { font-size: 28px; line-height: 34px; }
.ac-tarif__depart { font-size: 12px; line-height: 18px; }
.ac-curseur__titre { margin: 0 0 .35rem; font: 600 11px/14px var(--st-sans); letter-spacing: .08em; text-transform: uppercase; color: var(--st-secondaire); }
.ac-curseur__resultat .ac-montant--second { margin-top: .2rem; }
.ac-tarif__atouts { list-style: none; margin: 0; padding: 0; display: grid; gap: .9rem 1.5rem; font-size: 14px; line-height: 20px; }
@media (min-width: 640px) { .ac-tarif__atouts { grid-template-columns: 1fr 1fr; } }
.ac-tarif__atouts li { display: flex; align-items: flex-start; gap: .6rem; }
.ac-tarif__atouts .material-symbols-outlined { font-size: 18px; color: var(--st-secondaire); }
.ac-paliers { width: 100%; border-collapse: collapse; font-size: 14px; line-height: 20px; }
.ac-paliers caption { caption-side: top; text-align: start; padding-bottom: .75rem; font: 600 11px/14px var(--st-sans); letter-spacing: .1em; text-transform: uppercase; color: var(--st-secondaire); }
.ac-paliers th, .ac-paliers td { padding: .7rem .5rem; text-align: start; border-bottom: 1px solid rgba(196, 198, 205, .5); }
.ac-paliers thead th { font-size: 12px; font-weight: 600; color: var(--st-texte-variant); }
.ac-paliers tbody th { font-weight: 600; color: var(--st-primaire); }
.ac-paliers td:last-child { font-weight: 600; color: var(--st-secondaire); }
.ac-curseur { padding: 1.5rem; border-radius: var(--st-rayon-md); background: var(--st-conteneur-bas); }
.ac-curseur__tete { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.ac-curseur__tete label { font-weight: 600; color: var(--st-primaire); }
.ac-curseur__tete output { font: 600 28px/34px var(--st-serif); color: var(--st-primaire); }
.ac-curseur input[type="range"] { width: 100%; margin: 1rem 0 0; accent-color: var(--st-primaire-conteneur); }
.ac-curseur__reperes { position: relative; height: 1.1rem; margin: .2rem .5rem 0; font-size: 11px; color: var(--st-texte-variant); }
.ac-curseur__reperes span { position: absolute; transform: translateX(-50%); }
.ac-curseur__reperes .ac-repere-1 { left: 0; }
.ac-curseur__reperes .ac-repere-6 { left: 17.24%; }
.ac-curseur__reperes .ac-repere-10 { left: 31.03%; }
.ac-curseur__reperes .ac-repere-21 { left: 68.97%; }
.ac-curseur__reperes .ac-repere-30 { left: 100%; }
.ac-curseur__resultat { display: grid; gap: 1rem; margin-top: 1.25rem; padding-top: 1.25rem; border-top: 1px solid rgba(196, 198, 205, .6); }
@media (min-width: 640px) { .ac-curseur__resultat { grid-template-columns: 1fr 1fr; } }
.ac-curseur__resultat p { margin: 0; }
.ac-montant { font: 600 24px/30px var(--st-serif); color: var(--st-primaire); }
.ac-detail { font: 400 13px/18px var(--st-sans); color: var(--st-texte-variant); }
.ac-curseur__palier { margin: 1rem 0 0; text-align: center; font: 600 12px/16px var(--st-sans); letter-spacing: .06em; text-transform: uppercase; color: var(--st-secondaire); }
.ac-tarif__notes { display: grid; gap: .6rem; }
.ac-tarif__notes p { margin: 0; font-size: 13px; line-height: 20px; color: var(--st-texte-variant); }
.ac-tarif__notes strong { color: var(--st-primaire); }
.ac-tarif__pied { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; padding-top: 1.5rem; border-top: 1px solid rgba(196, 198, 205, .5); }
.ac-tarif__pied p { margin: 0; flex: 1 1 18rem; font-size: 13px; line-height: 20px; color: var(--st-texte-variant); }
/* TTC en France (07/10/2026) : à côté du HT, plus discret. */
.ac-curseur__resultat .ac-montant--ttc { margin-top: .2rem; font-size: 18px; line-height: 24px; color: var(--st-texte-variant); }
.ac-tarif__tva { margin: -1rem 0 0; font-size: 13px; line-height: 20px; color: var(--st-texte-variant); }
/* Cinq colonnes : empilées par ligne sur petit écran. */
@media (max-width: 639px) {
  .ac-paliers thead { display: none; }
  .ac-paliers caption { display: block; }
  .ac-paliers, .ac-paliers tbody, .ac-paliers tr, .ac-paliers th, .ac-paliers td { display: block; }
  .ac-paliers tr { padding: .5rem 0; border-bottom: 1px solid rgba(196, 198, 205, .5); }
  .ac-paliers tbody th, .ac-paliers td { padding: .2rem 0; border-bottom: 0; }
  .ac-paliers td { display: flex; justify-content: space-between; gap: 1rem; }
  .ac-paliers td::before { content: attr(data-titre); font-weight: 400; color: var(--st-texte-variant); }
}
