
.bodtf-cgv-modern .bodtf-cgv-content{--p:#431078;--p2:#8436cf;--ink:#24162f;--muted:#6e6475;--bd:#e4d8ed;width:100%;max-width:1280px;margin:0 auto}
.bodtf-cgv-modern .bodtf-cgv-toc{margin:30px 0 42px;padding:30px;border:1px solid var(--bd);border-radius:22px;background:linear-gradient(180deg,#fff 0%,#fcf9ff 100%);box-shadow:0 16px 42px rgba(67,16,120,.08)}
.bodtf-cgv-modern .bodtf-cgv-kicker{display:inline-flex;padding:6px 11px;margin-bottom:8px;border-radius:999px;background:#f1e8f8;color:var(--p);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.bodtf-cgv-modern .bodtf-cgv-toc h2{margin:0 0 7px!important;padding:0!important;border:0!important;background:none!important;font-size:clamp(24px,2.2vw,34px)!important;color:var(--ink)!important}
.bodtf-cgv-modern .bodtf-cgv-toc p{margin:0 0 22px;color:var(--muted);font-size:14px}
.bodtf-cgv-modern .bodtf-cgv-toc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.bodtf-cgv-modern .bodtf-cgv-toc-link{display:grid;grid-template-columns:42px 1fr 24px;align-items:center;gap:12px;min-height:72px;padding:12px 14px;border:1px solid #e3d5ed;border-radius:14px;background:#fff;color:var(--ink)!important;text-decoration:none!important;transition:.18s}
.bodtf-cgv-modern .bodtf-cgv-toc-link:hover{transform:translateY(-2px);border-color:#b895d3;box-shadow:0 12px 26px rgba(67,16,120,.10)}
.bodtf-cgv-modern .bodtf-cgv-num{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,var(--p),var(--p2));color:#fff;font-weight:900;font-size:13px}
.bodtf-cgv-modern .bodtf-cgv-label{font-size:14px;line-height:1.32;font-weight:750}
.bodtf-cgv-modern .bodtf-cgv-arrow{color:var(--p);font-size:21px;font-weight:700}
.bodtf-cgv-modern .bodtf-cgv-content h2[data-cgv-index]{position:relative;scroll-margin-top:110px;margin-top:42px!important;margin-bottom:18px!important;padding:18px 22px 18px 72px!important;border:1px solid var(--bd);border-radius:16px;background:linear-gradient(90deg,#fbf7fe 0%,#fff 70%);color:var(--ink)!important;font-size:clamp(21px,1.8vw,27px)!important;box-shadow:0 8px 24px rgba(67,16,120,.045)}
.bodtf-cgv-modern .bodtf-cgv-content h2[data-cgv-index]::before{content:attr(data-cgv-index);position:absolute;left:18px;top:50%;transform:translateY(-50%);width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,var(--p),var(--p2));color:#fff;font-size:12px;font-weight:900}
.bodtf-cgv-modern .bodtf-cgv-content .bodtf-cgv-back{display:flex;justify-content:flex-end;margin:17px 0 4px}
.bodtf-cgv-modern .bodtf-cgv-content .bodtf-cgv-back a{display:inline-flex;padding:7px 11px;border-radius:999px;background:#f4edf8;color:var(--p)!important;font-size:12px;font-weight:750;text-decoration:none!important}
.bodtf-cgv-modern .bodtf-cgv-content .bodtf-cgv-old-summary-link{display:none!important}
@media(max-width:980px){.bodtf-cgv-modern .bodtf-cgv-toc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.bodtf-cgv-modern .bodtf-cgv-toc{padding:20px 16px}.bodtf-cgv-modern .bodtf-cgv-toc-grid{grid-template-columns:1fr}.bodtf-cgv-modern .bodtf-cgv-content h2[data-cgv-index]{padding:16px 16px 16px 64px!important}}

/* V1.0.1 — resserrage du haut de page : uniquement la zone de contenu CGV */
.bodtf-cgv-modern .bodtf-cgv-toc{
    margin-top:14px !important;
}
.bodtf-cgv-modern .bodtf-cgv-content > *:last-child{
    margin-bottom:0;
}
/* Réduit l'espace résiduel entre le bloc d'introduction Divi et le sommaire,
   sans toucher au header/footer ni aux autres pages. */
.bodtf-cgv-modern .bodtf-cgv-content{
    padding-top:0 !important;
}

/* V1.0.2 — le grand vide vient de la section Divi d'introduction, pas du sommaire.
   Ces classes sont ajoutées uniquement par JS sur /cgv/ aux deux sections concernées. */
.bodtf-cgv-modern .bodtf-cgv-intro-section{
    min-height:0 !important;
    height:auto !important;
    padding-bottom:24px !important;
    margin-bottom:0 !important;
}
.bodtf-cgv-modern .bodtf-cgv-toc-section{
    padding-top:24px !important;
    margin-top:0 !important;
}
.bodtf-cgv-modern .bodtf-cgv-toc-section .bodtf-cgv-toc{
    margin-top:0 !important;
}

/* V1.0.3 — rapprochement maximal du titre et du sommaire */
.bodtf-cgv-modern .et_pb_section:first-of-type,
.bodtf-cgv-modern .et_pb_section:first-of-type .et_pb_row,
.bodtf-cgv-modern .et_pb_section:first-of-type .et_pb_column{
    padding-bottom:0 !important;
    margin-bottom:0 !important;
    min-height:0 !important;
}
.bodtf-cgv-modern .bodtf-cgv-toc{
    margin-top:0 !important;
}

body.bodtf-cgv-modern .bodtf-cgv-toc{margin-top:0!important}

/* V1.0.5 — le sommaire est déplacé sous le H1, donc aucun vide Divi intermédiaire */
body.bodtf-cgv-modern .bodtf-cgv-toc{
    max-width:1220px;
    margin:22px auto 0 !important;
    text-align:left;
}
body.bodtf-cgv-modern .bodtf-cgv-toc + *{margin-top:0!important}

/* V1.0.6 — aucune zone vide entre sommaire et article 1 */
body.bodtf-cgv-modern .bodtf-cgv-title-compact{
    min-height:0!important;height:auto!important;padding-bottom:8px!important;margin-bottom:0!important;
}
body.bodtf-cgv-modern .bodtf-cgv-content-compact{
    min-height:0!important;height:auto!important;padding-top:8px!important;padding-bottom:12px!important;margin-top:0!important;margin-bottom:0!important;
}
body.bodtf-cgv-modern .bodtf-cgv-content .bodtf-cgv-toc{
    margin:0 0 18px!important;
}
body.bodtf-cgv-modern .bodtf-cgv-first-article-row,
body.bodtf-cgv-modern .bodtf-cgv-first-article-section{
    border:0!important;box-shadow:none!important;
}
body.bodtf-cgv-modern .bodtf-cgv-first-article-section{
    padding-top:0!important;margin-top:0!important;
}
