/* =========================================================
   CONTENT — pages de contenu long : légales, règlement,
   déclaration d'accessibilité, politique de confidentialité,
   pages Page (BP, etc.).
   Réutilise les variables globales (variables.css).
   ========================================================= */

.content-page h1,
.content-page h2,
.content-page h3,
.content-page h4,
.content-page h5,
.content-page h6{
  font-family: var(--font-body);
}

.content-page h1{
  font-size:var(--fs-h1);
  font-weight:600;
  line-height:var(--lh-heading);
  color:var(--primary-dark);
  margin-bottom:1rem;
}
.content-page h2{
  font-size:var(--fs-h2);
  font-weight:600;
  line-height:var(--lh-heading);
  margin-top:2.2rem;
  margin-bottom:.75rem;
  color:var(--primary-dark);
}
.content-page h3{
  font-size:var(--fs-h3);
  font-weight:600;
  line-height:var(--lh-heading);
  margin-top:1.5rem;
  margin-bottom:.5rem;
  color:var(--text);
}
.content-page h4{
  font-size:var(--fs-h4);
  font-weight:500;
  margin-top:1.2rem;
  margin-bottom:.4rem;
  color:var(--text);
}
.content-page p, .content-page li{
  color:var(--text);
}
.content-page ul, .content-page ol{
  padding-left:1.3rem;
}
.content-page .updated-date{
  color:var(--text-secondary);
  font-size:.85rem;
}

/* Paragraphe Texte simple (bp_para_text) */
.bp-text-box .text-content p{
  margin: 0.2em;
}

/* Sommaire latéral (table des matières) */
.content-toc{
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:1.25rem;
  position:sticky;
  top:96px;
}
.content-toc h2{
  font-size:.85rem;
  text-transform:uppercase;
  letter-spacing:.03em;
  color:var(--text-secondary);
  margin:0 0 .75rem;
}
.content-toc ol{
  list-style:none;
  padding:0;
  margin:0;
  counter-reset:toc;
}
.content-toc li{ margin-bottom:.5rem; }
.content-toc a{
  color:var(--text);
  font-weight:600;
  font-size:.9rem;
  text-decoration:none;
}
.content-toc a:hover{ color:var(--primary); text-decoration:underline; }

/* Bloc de conformité (déclaration d'accessibilité) */
.conformity-box{
  display:flex;
  align-items:center;
  gap:1rem;
  background:var(--success-bg);
  border:1px solid #BFE3CE;
  border-radius:var(--radius);
  padding:1.25rem;
  margin:1.5rem 0;
}
.conformity-box .conformity-icon{
  font-size:2rem;
  color:var(--accent-dark);
}

@media (max-width:991px){
  .content-toc{ position:static; margin-bottom:2rem; }
}
@media (max-width:575px){
  .content-page h1{ font-size:1.75rem; }
  .content-page h2{ font-size:1.4rem; }
  .content-page h3{ font-size:1.15rem; }
}
