/*
 * tarifs.css — PsyRisso Desktop
 * Réécriture complète (29 juillet 2026) pour le nouveau contenu de la
 * page Tarifs : principe de facturation détaillé, cartes par bilan,
 * bilans à montant ouvert avec exemples chiffrés, mentions pratiques,
 * module 2027 à venir. Remplace l'ancienne version (accordéons +
 * tableaux) — .tar-accordion / .tar-table / .tar-badge-both n'ont
 * plus d'usage et ont été retirés.
 *
 * Ajout (31 juillet 2026) : .tar-separateur pour la bande 2 —
 * "Entretien seul" isolé dans son propre .cadre.tar-page (carte
 * blanche, via la classe .cadre déjà standard sur le site), séparé du
 * bloc "Haut potentiel" — lui aussi dans son propre .cadre.tar-page —
 * par un filet + point doré posé sur le fond bande-gris, hors cadre.
 * Premier essai (même jour) avec un .tar-boite interne à un unique
 * .cadre : abandonné, le blanc du wrapper se fondait dans celui du
 * .cadre englobant et ne créait aucune séparation visible.
 */

/* Police du corps de texte propre à cette page (cf. maquette validée) */
.tar-page { font-family: Georgia, "Times New Roman", serif; }

.tar-page { max-width: 780px; margin: 0 auto; }

.tar-h2 {
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    font-size: 1.6rem;
    color: var(--bleu);
    text-align: center;
    margin: 0 0 14px;
}

.tar-chapo {
    font-size: 0.97rem;
    line-height: 1.68;
    color: #3a3a3a;
    text-align: center;
    max-width: 640px;
    margin: 0 auto 26px;
}

/* ── Le principe de facturation ────────────────────────────── */

.tar-bloc-principe {
    background: #f6fafb;
    border-left: 2px solid var(--dore);
    padding: 20px 24px;
    margin: 0 0 38px;
}

.tar-bloc-principe p {
  font-family: Calibri, Carlito, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: #3a3a3a;
  margin: 0 0 9px;
}

.tar-bloc-principe p:last-child { margin-bottom: 0; }

.tar-bloc-principe strong { color: var(--bleu); font-weight: 700; }

.tar-principe-note {
  font-family: Calibri, Carlito, Arial, sans-serif;
  font-size: 15px !important;
  color: #36706c !important;
}

.tar-validite {
    font-size: 0.75rem;
    letter-spacing: .06em;
    color: #5a8a87;
    text-align: right;
    margin: -28px 0 30px;
}

.tar-validite sup { font-size: .72em; vertical-align: .35em; }

/* ── Séparateur entre cadres (bande 2) ─────────────────────── */

.tar-separateur {
    display: flex;
    align-items: center;
    gap: 10px;
    max-width: 780px;
    margin: 26px auto;
}

.tar-separateur::before,
.tar-separateur::after {
    content: "";
    flex: 1;
    height: 1px;
    background: var(--gris-sep);
}

.tar-separateur span {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--dore);
    flex: 0 0 auto;
}

/* ── Familles ──────────────────────────────────────────────── */

.tar-famille {
    font-size: 0.72rem;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: #5a8a87;
    margin: 34px 0 14px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--gris-sep);
}

/* Quand .tar-famille ouvre un cadre (premier enfant), la marge du
   haut pensée pour séparer d'un contenu précédent ne sert plus à
   rien et ne fait que creuser un vide sous le padding du .cadre. */
.tar-page > .tar-famille:first-child { margin-top: 0; }

/* ── Les cartes ────────────────────────────────────────────── */

.tar-carte { padding: 20px 0 22px; position: relative; }

.tar-carte:not(:last-of-type)::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 130px;
    height: 1px;
    background: linear-gradient(to right, #e3e0d5 0 45px, transparent 45px 85px, #e3e0d5 85px 130px);
}

.tar-carte:not(:last-of-type)::after {
    content: "";
    position: absolute;
    bottom: -3px;
    left: 50%;
    width: 6px;
    height: 6px;
    background: var(--dore);
    transform: translate(-50%, -50%) rotate(45deg);
}

.tar-carte-tete {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 4px;
}

.tar-carte-nom {
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    font-size: 1.1rem;
    line-height: 1.35;
    color: var(--bleu);
    margin: 0;
    flex: 1;
}

.tar-carte-prix { margin: 0; flex: 0 0 auto; text-align: right; white-space: nowrap; }

.tar-carte-prix span {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.65rem;
    color: var(--dore);
    letter-spacing: .01em;
}

.tar-carte-prix span.tar-devis { font-size: 1.15rem; }

.tar-carte-prix em {
    display: block;
    font-style: normal;
    font-size: 0.78rem;
    color: #5a8a87;
    margin-top: 1px;
}

.tar-carte-detail { font-size: 0.78rem; color: #5a8a87; margin: 0 0 11px; }

.tar-carte-desc {
  font-family: Calibri, Carlito, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: #3a3a3a;
  margin: 0 0 12px;
}

.tar-carte-faits {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 6px 22px;
}

.tar-carte-faits li {
  font-family: Calibri, Carlito, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5;
  color: #5a8a87;
}
.tar-carte-faits li::before { content: "·"; position: absolute; left: 3px; color: var(--dore); }

.tar-carte-simple .tar-carte-desc { margin-bottom: 0; }

/* Note d'âge sous la carte TDA/H — provisoire, à remplacer par une
   carte de plein droit quand le parcours 16-18 ans sera arrêté et
   chiffré. */
.tar-carte-age {
  font-family: Calibri, Carlito, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.5;
  color: #3a3a3a;
  margin: 14px 0 0;
  padding: 12px 16px;
  background: #f6fbfa;
  border-left: 2px solid #d4ecea;
}

/* ── Badges de modalité ────────────────────────────────────── */

.tar-badge {
    display: inline-block;
    padding: 1px 8px;
    border-radius: 3px;
    font-size: 0.69rem;
    letter-spacing: .05em;
    text-transform: uppercase;
    vertical-align: 1px;
}

.tar-badge-visio { background: rgba(78,193,188,0.15); color: #2ea39c; }
.tar-badge-pres { background: var(--bleu); color: #fff; }

/* ── Bilans à montant ouvert ───────────────────────────────── */

.tar-ouvert-intro {
  font-family: Calibri, Carlito, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: #3a3a3a;
  margin: 0 0 4px;
}

/* ── L'exemple chiffré ─────────────────────────────────────── */

.tar-exemple {
    margin: 26px 0 0;
    padding: 24px 26px;
    background: #FAF6EC;
    border: 1px solid #ecdfc4;
}

.tar-exemple h4 {
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    font-size: 1.05rem;
    color: var(--bleu);
    margin: 0 0 10px;
}

.tar-exemple > p {
  font-family: Calibri, Carlito, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: #3a3a3a;
  margin: 0 0 16px;
}

.tar-ex { margin: 22px 0 0; padding-top: 20px; border-top: 1px solid #ecdfc4; }

.tar-ex-label {
    font-size: 0.69rem !important;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--dore);
    margin: 0 0 9px !important;
}

.tar-ex-cas {
    font-family: Georgia, "Times New Roman", serif;
    font-style: italic;
    font-size: 0.94rem;
    line-height: 1.6;
    color: var(--bleu);
    margin: 0 0 14px;
    padding: 0 0 0 15px;
    border-left: 2px solid var(--dore);
}

.tar-ex-src {
  font-family: Calibri, Carlito, Arial, sans-serif;
  font-size: 14px !important;
  color: #5a8a87 !important;
  margin: 10px 0 0 !important;
}

.tar-ex-quoi {
  font-family: Calibri, Carlito, Arial, sans-serif;
  font-size: 16px !important;
  line-height: 1.5;
  color: #3a3a3a;
  margin: 0 0 18px !important;
  padding-left: 14px;
  border-left: 2px solid #ecdfc4;
}

.tar-exemple dl { display: grid; grid-template-columns: 1fr auto auto; gap: 0; margin: 0; }

.tar-exemple dt {
    font-size: 0.85rem;
    line-height: 1.5;
    color: #3a3a3a;
    padding: 8px 18px 8px 0;
    border-top: 1px solid #ecdfc4;
}

.tar-exemple dd {
    font-size: 0.78rem;
    line-height: 1.5;
    color: #5a8a87;
    margin: 0;
    padding: 8px 18px 8px 0;
    border-top: 1px solid #ecdfc4;
    white-space: nowrap;
}

.tar-exemple dd.tar-exemple-eur {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 0.91rem;
    color: var(--bleu);
    text-align: right;
    padding-right: 0;
}

.tar-exemple dt:first-of-type,
.tar-exemple dt:first-of-type ~ dd:nth-of-type(1),
.tar-exemple dt:first-of-type ~ dd:nth-of-type(2) { border-top: 0; }

.tar-exemple .tar-exemple-tot {
    border-top: 1px solid var(--dore);
    font-family: Georgia, "Times New Roman", serif;
    color: var(--bleu);
    font-size: 0.94rem;
    padding-top: 11px;
}

.tar-exemple-note {
  font-family: Calibri, Carlito, Arial, sans-serif;
  font-size: 15px !important;
  line-height: 1.5;
  color: #5a8a87 !important;
  margin: 15px 0 0 !important;
}

/* ── Mentions pratiques ────────────────────────────────────── */

.tar-pratique { margin: 38px 0 0; padding-top: 26px; border-top: 1px solid #d4ecea; }

/* Quand .tar-pratique ouvre son cadre (bande 5, aucun contenu avant
   lui), le filet et l'espace du haut ne séparent plus rien — même
   logique que le fix .tar-famille ci-dessus. */
.tar-page > .tar-pratique:first-child {
    margin-top: 0;
    padding-top: 0;
    border-top: 0;
}

.tar-pratique h3 {
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    font-size: 1.2rem;
    color: var(--bleu);
    margin: 0 0 16px;
}

.tar-pratique dl { display: grid; grid-template-columns: 160px 1fr; gap: 0; margin: 0; }

.tar-pratique dt {
    font-size: 0.75rem;
    letter-spacing: .09em;
    text-transform: uppercase;
    color: #5a8a87;
    padding: 12px 20px 12px 0;
}

.tar-pratique dd {
  font-family: Calibri, Carlito, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: #3a3a3a;
  margin: 0;
  padding: 11px 0;
}
.tar-pratique dd::before {
    content: "";
    position: absolute;
    top: 0;
    left: calc(50% - 80px - 65px);
    width: 130px;
    height: 1px;
    background: linear-gradient(to right, #e3e0d5 0 45px, transparent 45px 85px, #e3e0d5 85px 130px);
}

.tar-pratique dd::after {
    content: "";
    position: absolute;
    top: 0;
    left: calc(50% - 80px);
    width: 6px;
    height: 6px;
    background: var(--dore);
    transform: translate(-50%, -50%) rotate(45deg);
}

.tar-pratique dd:first-of-type::before,
.tar-pratique dd:first-of-type::after { display: none; }

/* ── En préparation — 2027 ─────────────────────────────────── */

.tar-venir { margin: 34px 0 0; padding: 20px 24px; background: #FAF6EC; border-left: 2px solid var(--dore); }

.tar-venir h3 {
    font-size: 0.72rem;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: #5a8a87;
    font-weight: 600;
    margin: 0 0 12px;
}

.tar-venir p {
  font-family: Calibri, Carlito, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: #3a3a3a;
  margin: 0 0 10px;
}

.tar-venir ul { list-style: none; margin: 0 0 12px; padding: 0; }

.tar-venir li {
  font-family: Calibri, Carlito, Arial, sans-serif;
  font-size: 16px;
  color: var(--bleu);
  padding: 5px 0 5px 16px;
  position: relative;
}

.tar-venir li::before { content: "·"; position: absolute; left: 2px; color: var(--dore); font-weight: 700; }

.tar-venir-note {
  font-family: Calibri, Carlito, Arial, sans-serif;
  font-size: 15px !important;
  line-height: 1.5;
  color: #5a8a87 !important;
  margin: 12px 0 0 !important;
}

/* ── CTA final ─────────────────────────────────────────────── */

.tar-cta { margin-top: 38px; padding-top: 26px; border-top: 1px solid var(--gris-sep); text-align: center; }
.tar-cta h3 { font-family: Georgia, "Times New Roman", serif; font-size: 1.1rem; font-weight: 400; color: var(--bleu); margin: 0 0 0.5rem; }
.tar-cta p {
  font-family: Calibri, Carlito, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: #3a3a3a;
}
.tar-cta-btn {
    display: inline-block;
    background: var(--bleu);
    color: var(--dore);
    font-family: Arial, sans-serif;
    font-size: 0.82rem;
    font-weight: bold;
    letter-spacing: 0.02em;
    padding: 0.55rem 1.4rem;
    border-radius: 6px;
    text-decoration: none;
}
.tar-cta-btn:hover { background: #142e29; }

@media (max-width: 720px) {
    .tar-pratique dl { grid-template-columns: 1fr; }
    .tar-pratique dt { padding: 12px 0 4px; border-top: 1px solid var(--gris-sep); }
    .tar-pratique dt:first-of-type { border-top: 0; }
    .tar-pratique dd { padding: 0 0 14px; }
    .tar-pratique dd::before,
    .tar-pratique dd::after { display: none; }
}