/* Neutralise les styles Divi autour des fragments du thème (sections .sg-sec, Theme Builder header/footer).
   Leçons du projet leo-lebreton : marges et paddings des sections/rows, listes, paragraphes, liens, .container. */
.et_pb_section.sg-sec, .et_pb_section.sg-sec .et_pb_row.sg-row, .et_pb_section.sg-sec .et_pb_column,
.et-l--header .et_pb_section, .et-l--header .et_pb_row, .et-l--footer .et_pb_section, .et-l--footer .et_pb_row {
  padding: 0 !important; margin: 0 !important; width: 100% !important; max-width: none !important; background: none;
}
.et_pb_code.sg-code, .et_pb_code.sg-code .et_pb_code_inner { margin: 0 !important; padding: 0 !important; }
.sg .et_pb_code ul, .sg .et-l--header ul, .sg .et-l--footer ul { list-style: none !important; padding: 0 !important; margin: 0; }
.sg .et_pb_code ol.etapes { padding: 0 !important; }
.sg .et_pb_code p, .sg .et-l--header p, .sg .et-l--footer p { padding-bottom: 0; }
.sg .et_pb_code h1, .sg .et_pb_code h2, .sg .et_pb_code h3, .sg .et-l--footer h2, .sg .et-l--footer h3 { padding-bottom: 0; color: inherit; }
.sg .et_pb_code a, .sg .et-l--header a, .sg .et-l--footer a { color: inherit; }
.sg .et_pb_code a.lien, .sg .et_pb_code .prose a { color: var(--sg-lien); }
.sg .fond-encre a.lien { color: var(--sg-lien-sombre); }
.sg #main-content, .sg .et-l--body { background: var(--sg-papier); }
.sg #main-content .container::before { display: none; }
/* Un ancêtre en overflow:hidden casse position:sticky ; clip coupe pareil sans créer de conteneur de défilement. */
.sg #page-container, .sg #et-boc, .sg #et-main-area { overflow-x: clip; overflow-y: visible; }
.sg .et-l--header { position: sticky; top: 0; z-index: 30; }
.sg .et-l--header .hd { position: static; }

/* Le CSS critique de Divi (Poppins, 14 px), injecté après le thème, écrase base.css à spécificité égale.
   Préfixe html : passe devant Divi, reste sous toute règle à classe du thème. */
html body { font: 400 var(--sg-t-corps)/var(--sg-lh-corps) var(--sg-sans); color: var(--sg-encre); }
html input, html select, html textarea { font-family: inherit; }
html h1 { font: 700 var(--sg-t-h1)/var(--sg-lh-titre) var(--sg-serif); }
html h2 { font: 700 var(--sg-t-h2)/var(--sg-lh-titre) var(--sg-serif); }
html h3 { font: 400 var(--sg-t-h3)/1.3 var(--sg-serif); }
html h4, html h5, html h6 { font-family: var(--sg-sans); }

/* Blocs « à fournir par Léo » (.attente) : visibles des seuls administrateurs connectés, jamais des clients. */
.sg:not(.logged-in) .attente { display: none !important; }
/* Barre qui ne contient que des blocs en attente : rien à montrer au visiteur. */
.sg:not(.logged-in) .barre-outils:not(:has(> .wrap > :not(.attente))) { display: none; }
