/* Black Bond, lot D7a : pages L3a (accueil, Éducation, Glossaire, Outils, Première visite, 20 pages d'outil) avec le
   design de la maquette v12. Complète bb-global.css (L1), bb-composants.css (L4), bb-maquette*.css (D2) et bb-modeles.css
   (D4) avec ce qu'aucun attribut Divi ne porte : lignes de liens dans un module texte, états de survol, grilles internes
   d'un module texte (glossaire, pied des questions), accordéon horizontal des piliers (flex-grow au survol), sélecteurs
   du DOM des modules Divi Essential. Largeurs de colonnes, écarts de rangées, marges, polices, boîtes : par attribut
   (générateurs), jamais ici. Chaque section porte la classe bb-m : toutes les règles sont préfixées « .bb-m ».
   Seuils : 1180, 980, 760, 640 (mesures 1440 / 768 / 390). Généré par scripts/d1_design.py : ne pas éditer à la main. */

/* === D7a 00 Gardes de structure (aucune largeur de colonne : rang() les pose en attribut) === */
.bb-m .et_pb_column { min-width: 0; }                      /* un contenu large (grille, canvas) ne pousse pas sa colonne */
.bb-m .bb-m-vide { padding: 0; }
@media (max-width: 1180px) { .bb-m .bb-m-vide { display: none; } }

/* === D7a 01 Boutons Divi Essential (dnxte/button) : hauteur, rayon, padding, polices et couleurs par attribut ;
       ici l'affichage en ligne, la transition et le relèvement de 2 px au survol (aucun chemin transform:hover) === */
.bb-m .bb-btn .dnxte_button, .bb-m .bb-btn a.dnxte_button_link, .bb-m .bb-btn .dnxte-button {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px; text-decoration: none; box-sizing: border-box;
  transition: background-color .3s, color .3s, border-color .3s, transform .3s var(--bb-ease, ease); }
.bb-m .bb-btn .dnxte_button:hover, .bb-m .bb-btn .dnxte-button:hover { transform: translateY(-2px); }
.bb-m .bb-btn .et_pb_button_wrapper, .bb-m .bb-btn .dnxte_button_wrapper { text-align: left; }
.bb-m .bb-m-droite .et_pb_button_wrapper, .bb-m .bb-m-droite .dnxte_button_wrapper { text-align: right; }
.bb-m a.bb-btn.bb-btn--encre { background: var(--bb-encre); color: var(--bb-bone); border-radius: 6px; }
.bb-m a.bb-btn.bb-btn--encre:hover { background: var(--bb-encre-2); color: var(--bb-bone); }
@media (max-width: 420px) { .bb-m .bb-hero10 .bb-btn .dnxte_button, .bb-m .bb-hero10 a.bb-btn { width: 100%; } }
@media (max-width: 1180px) { .bb-m .bb-m-droite .et_pb_button_wrapper, .bb-m .bb-m-droite .dnxte_button_wrapper { text-align: left; } }

/* === D7a 02 Lignes de boutons et de liens dans une colonne qui porte d'autres modules (aucun module conteneur dans les
       références Divi 5) : paragraphe flex d'un module texte ; liens flèche alignés sur la ligne de base === */
.bb-m .bb-m-ctas .bb-m-ctas-l { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 18px; }
.bb-m .bb-m-ctas p { margin: 0; }
.bb-m .bb-m-ctas a.bb-btn { display: inline-flex; align-items: center; justify-content: center; }
.bb-m .bb-m-liens .et_pb_text_inner { display: flex; flex-wrap: wrap; align-items: baseline; gap: 12px 24px; }
.bb-m .bb-m-liens p { margin: 0; }
.bb-m .bb-m-droite .bb-m-liens .et_pb_text_inner, .bb-m .bb-m-droite .bb-lien-fleche { justify-content: flex-end; }
@media (max-width: 1180px) { .bb-m .bb-m-droite .bb-m-liens .et_pb_text_inner { justify-content: flex-start; } }

/* === D7a 03 Cartes d'articles (dnxte/post-grid) : colonnes, écarts, boîte, polices et « Charger plus » par attribut ;
       ici la 1re carte « à la une » sur deux colonnes (a.card.big 750 px, h3 32), le visuel 2:1 et le survol.
       Sélecteurs du DOM du module : convention D4 (bb-modeles.css), à vérifier sur le rendu réel. === */
.bb-m .bb-m-cartes .dnxte-post-grid-card { display: flex; flex-direction: column; overflow: hidden;
  transition: transform .35s var(--bb-ease, ease), box-shadow .35s; }
.bb-m .bb-m-cartes .dnxte-post-grid-card:hover { transform: translateY(-3px); box-shadow: 0 1px 0 0 rgba(36,30,26,.05), 0 18px 40px -18px rgba(36,30,26,.45); }
.bb-m .bb-m-cartes .dnxte-post-grid-card-image img { display: block; width: 100%; aspect-ratio: 2 / 1; object-fit: cover; border-radius: 6px 6px 0 0; }
.bb-m .bb-m-cartes .dnxte-post-grid-pagination-load-more { display: inline-flex; align-items: center; min-height: 48px; padding: 0 26px; border-radius: 10px;
  border: 1px solid var(--bb-encre); background: transparent; color: var(--bb-encre); font: 600 15px var(--bb-fd, Poppins, sans-serif); }
.bb-m .bb-m-cartes .dnxte-post-grid-pagination-load-more:hover { background: var(--bb-encre); color: var(--bb-bone); }
/* « À la une » (D8) : Post Grid n'a aucune requête par étiquette ni par taxonomie (schéma VB : categories, querySource latest /
   related) ; la sélection éditoriale bb_selection « a-la-une » (6 articles, un par pilier) est rendue par le repli de l'extension
   [bb_articles selection="a-la-une" limite="6"] dans un divi/code : grille une9 de la maquette (3 × 364 gap 22, 1re carte double
   750 × 519 ; 768 : 2 × 342, 1re carte pleine largeur ; 390 : 1 colonne) sur la liste du shortcode, le module reste en bloc */
.bb-m .et_pb_code.bb-une9-grid, .bb-m .et_pb_code.bb-une9-grid .et_pb_code_inner { display: block; }
.bb-m .bb-une9-grid .bb-articles-grille { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: auto; gap: 22px; list-style: none; margin: 0; padding: 0; }
.bb-m .bb-une9-grid .bb-articles-grille > li { width: auto; min-width: 0; margin: 0; }
.bb-m .bb-une9-grid .bb-articles-grille > li:first-child { grid-column: 1 / 3; grid-row: 1 / 3; }
.bb-m .bb-une9-grid .bb-article-carte { height: 100%; border-radius: 6px 6px 12px 12px; background: var(--bb-papier, #FFFDF8); box-shadow: 0 1px 0 0 rgba(36,30,26,.05), 0 12px 26px -16px rgba(36,30,26,.35); transition: transform .35s var(--bb-ease, ease), box-shadow .35s; }
.bb-m .bb-une9-grid .bb-article-carte:hover { transform: translateY(-3px); box-shadow: 0 1px 0 0 rgba(36,30,26,.05), 0 18px 40px -18px rgba(36,30,26,.45); }
.bb-m .bb-une9-grid .bb-article-titre { font: 600 19px/1.2 var(--bb-fd, Poppins, sans-serif); color: var(--bb-encre); text-decoration: none; }
.bb-m .bb-une9-grid .bb-articles-grille > li:first-child .bb-article-titre { font-size: 32px; line-height: 1.12; letter-spacing: -.015em; }
.bb-m .bb-une9-grid .bb-article-pilier { font: italic 400 18px/1.1 var(--bb-fs, Fraunces, serif); letter-spacing: -.01em; color: var(--bb-argile-fonce); }
.bb-m .bb-une9-grid .bb-article-chapeau { font: 400 14.5px/1.6 var(--bb-fb, Inter, sans-serif); color: var(--bb-attenue); margin: 0; }
@media (max-width: 1180px) { .bb-m .bb-une9-grid .bb-articles-grille > li:first-child .bb-article-titre { font-size: 24px; } }
@media (max-width: 980px) {
  .bb-m .bb-une9-grid .bb-articles-grille { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bb-m .bb-une9-grid .bb-articles-grille > li:first-child { grid-column: 1 / -1; grid-row: auto; }
}
@media (max-width: 640px) { .bb-m .bb-une9-grid .bb-articles-grille { grid-template-columns: minmax(0, 1fr); } }

/* === D7a 04 Accueil === */
.bb-m.bb-hero10 { overflow: hidden; }
/* D10 : nœud du hero à 768 / 390 (maquette 723 × 180 / 374 × 180 ; le module .bbhn garde 6:5 jusqu'à 760 px puis 3:2 : hero 1 105 px contre 895) */
@media (max-width: 980px) { .bb-m .bb-hero10-mount .bbhn { max-width: none; aspect-ratio: 4 / 1; } }
@media (max-width: 640px) { .bb-m .bb-hero10-mount .bbhn { aspect-ratio: 2.08 / 1; } }
.bb-m .bb-mot9-txt p + p { margin-top: 16px; }
/* piliers : accordéon horizontal de la maquette (.pillar flex 1, .pillar.open flex 4.2, transition .7 s ; 520 px) :
   un flex-grow, pas une largeur ; la première ouverte au chargement, puis au survol / focus / état JS (.is-actif, .bb-open) */
.bb-m .bb-pillars { min-height: 520px; }
.bb-m .bb-pillars > .et_pb_column.bb-pillar { flex: 1 1 0%; min-height: 520px; overflow: hidden; transition: flex .7s var(--bb-ease, cubic-bezier(.2,.7,.2,1)); }
.bb-m .bb-pillars > .et_pb_column.bb-pillar:first-child, .bb-m .bb-pillars > .et_pb_column.bb-pillar.bb-open,
.bb-m .bb-pillars > .et_pb_column.bb-pillar.is-actif, .bb-m .bb-pillars > .et_pb_column.bb-pillar:hover,
.bb-m .bb-pillars > .et_pb_column.bb-pillar:focus-within { flex: 4.2 1 0%; }
.bb-m .bb-pillars:hover > .et_pb_column.bb-pillar:first-child:not(:hover):not(:focus-within):not(.is-actif):not(.bb-open) { flex: 1 1 0%; }
.bb-m .bb-pillars .bb-pillar .et_pb_text_inner > p:first-child { font: 600 12px/1 var(--bb-fd, Poppins, sans-serif); letter-spacing: .14em; text-transform: uppercase; opacity: .8; margin: 0 0 12px; white-space: nowrap; }
.bb-m .bb-pillars .bb-pillar h3 + p em { font-family: var(--bb-fd, Poppins, sans-serif); font-style: normal; font-weight: 600; font-size: 18px; color: inherit; }
.bb-m .bb-pillars .bb-pillar ul { list-style: none; padding: 0; margin: 23px 0 22px; max-width: 520px; }
.bb-m .bb-pillars .bb-pillar li { padding: 8px 0; border-top: 1px solid rgba(127,127,127,.25); }
.bb-m .bb-pillars .bb-pillar li a { font: 500 14.5px/1.35 var(--bb-fd, Poppins, sans-serif); color: inherit; text-decoration: none; transition: padding-left .25s var(--bb-ease, ease); }
.bb-m .bb-pillars .bb-pillar li a:hover { padding-left: 8px; }
.bb-m .bb-pillars .bb-pillar li small { display: block; font: 500 12.5px var(--bb-fb, Inter, sans-serif); opacity: .7; }
.bb-m .bb-pillars .bb-pillar .bb-m-ligne { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; }
.bb-m .bb-pillars .bb-pillar .bb-m-ligne p { margin: 0; }
.bb-m .bb-pillars .bb-pillar .bb-m-ligne .bb-m-compteur { font: 500 12.5px var(--bb-fb, Inter, sans-serif); opacity: .7; }
/* parcours : dnxte/advanced-tab, DOM réel relevé en D5 (.tab-container > .dnxte_tab_menu ul li a.dnxte_tab_a + .dnxte_body_content_wrapper) ;
   disposition verticale 320 | 1fr gap 40 (aucun attribut de disposition verticale dans le schéma), filets des onglets, liste numérotée */
.bb-m .bb-paths .tab-container { display: grid; grid-template-columns: 320px minmax(0, 1fr); gap: 40px; align-items: start; }
.bb-m .bb-paths .dnxte_tab_menu ul { display: grid; grid-template-columns: 1fr; gap: 0; margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--bb-filet, rgba(36,30,26,.12)); }
.bb-m .bb-paths .dnxte_tab_menu li { margin: 0; padding: 0; width: 100%; max-width: none; }
.bb-m .bb-paths .dnxte_tab_a { display: grid; gap: 4px; text-align: left; border: 0; border-bottom: 1px solid var(--bb-filet, rgba(36,30,26,.12)); border-left: 2px solid transparent; background: none; text-decoration: none; min-height: 88px; box-sizing: border-box; }
.bb-m .bb-paths .dnxte_tab_a:hover { border-left-color: var(--bb-sable, #D9CFC2); }
.bb-m .bb-paths .dnxte_tab_a.dnxte_active_a { border-left-color: var(--bb-argile, #B3562A); }
.bb-m .bb-paths .dnxte_tab_nav_pra { margin: 0; }
.bb-m .bb-paths .dnxte_body_content_wrapper { border-top: 1px solid var(--bb-filet, rgba(36,30,26,.12)); }
.bb-m .bb-paths .dnxte_tab_content_title { margin: 0 0 6px; }
.bb-m .bb-paths .dnxte_tab_content_pra > p:first-child { margin: 0 0 30px; }
.bb-m .bb-paths ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; list-style: none; padding: 0; margin: 0; counter-reset: etape; }
.bb-m .bb-paths ol li { display: grid; gap: 6px; counter-increment: etape; }
.bb-m .bb-paths ol li::before { content: counter(etape, decimal-leading-zero); font: 600 12.5px/36px var(--bb-fd, Poppins, sans-serif); text-align: center; width: 36px; height: 36px; border-radius: 50%; border: 1px solid var(--bb-encre); }
.bb-m .bb-paths ol li span, .bb-m .bb-paths ol li small { font: 500 12.5px var(--bb-fb, Inter, sans-serif); color: var(--bb-attenue); }
.bb-m .bb-paths ol li a { font: 600 17px/1.3 var(--bb-fd, Poppins, sans-serif); color: var(--bb-encre); text-decoration: none; }
.bb-m .bb-paths ol li a:hover { color: var(--bb-argile-fonce); }
/* questions (dnxte/next-faq en grille 2 colonnes : boîtes, écarts, polices par attribut) : icône Argile, lien de la réponse ; pied à filet, 2 colonnes */
.bb-m .bb-m-faq .next_faq__icon { color: var(--bb-argile); }
.bb-m .bb-m-faq .next_faq__answer p { margin: 0; }
.bb-m .bb-m-faq .next_faq__answer p + p { margin-top: 10px; }
.bb-m .bb-m-faq .next_faq__header { cursor: pointer; }
.bb-m .bb-q9-foot { border-top: 1px solid var(--bb-filet); }
.bb-m .bb-q9-foot .et_pb_text_inner { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 40px; }
.bb-m .bb-q9-foot .et_pb_text_inner p { margin: 0; }
.bb-m .bb-q9-foot .bb-lien-fleche { margin-left: 4px; }
/* feuille de route : cartes (boîte par attribut), colonne « idées » en pointillé (style de filet observé seulement sur divi/row) */
.bb-m .bb-rm9 .bb-rm9-st p { margin: 0; }
.bb-m .bb-rm9-c h4 { font: 600 16px/1.3 var(--bb-fd, Poppins, sans-serif); letter-spacing: -.02em; color: var(--bb-encre); margin: 0 0 6px; }
.bb-m .bb-rm9-c p { margin: 0 0 10px; }
.bb-m .bb-rm9-c p:last-child { margin-bottom: 0; }
.bb-m .bb-rm9-empty { border-style: dashed !important; }
.bb-m .bb-rm9-empty p { margin: 0 0 12px; }
.bb-m .bb-rm9-empty p:last-child { margin: 16px 0 0; }
.bb-m .bb-rm9-foot a { color: var(--bb-encre); text-decoration: underline; text-underline-offset: 3px; }
/* FAQ de l'accueil (dnxte/next-faq accordéon) : filet haut, lien « en savoir plus » Atténué */
.bb-m .bb-faq .next_faq__item:first-child { border-top: 1px solid var(--bb-filet); }
.bb-m .bb-faq .bb-faq-more .bb-lien-fleche { color: var(--bb-attenue); }
@media (max-width: 1180px) {
  .bb-m .bb-pillars { min-height: 0; }
  .bb-m .bb-pillars > .et_pb_column.bb-pillar, .bb-m .bb-pillars > .et_pb_column.bb-pillar:first-child, .bb-m .bb-pillars > .et_pb_column.bb-pillar:hover { flex: none; min-height: 0; }
  .bb-m .bb-paths .tab-container { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .bb-m .bb-paths .dnxte_tab_menu ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
/* D10 : les trois étapes restent sur une ligne à 768 (maquette .steps en 1 colonne seulement sous 640 ; « Lire dans l'ordre » 1 085 px contre 867) */
@media (max-width: 640px) {
  .bb-m .bb-q9-foot .et_pb_text_inner { grid-template-columns: minmax(0, 1fr); }
  .bb-m .bb-paths .dnxte_tab_menu ul { grid-template-columns: minmax(0, 1fr); }
  .bb-m .bb-paths ol { grid-template-columns: minmax(0, 1fr); gap: 18px; }
}

/* === D7a 05 Éducation === */
/* six tuiles de pilier (dnxte/next-blurb : rayon, marges internes, police par attribut) : visuel du pilier en dégradé (L1 bb-p-degrade), contenu en bas */
.bb-m .bb-pt5 { min-height: 250px; display: flex; flex-direction: column; justify-content: flex-end; color: inherit; }
.bb-m .bb-pt5 .dnxte_next_blurb_pre_heading { font: 500 13px/1.5 var(--bb-fb, Inter, sans-serif); opacity: .9; margin: 0; }
.bb-m .bb-pt5 h3, .bb-m .bb-pt5 .dnxte_next_blurb_title { font: 600 34px/1.05 var(--bb-fd, Poppins, sans-serif); letter-spacing: -.02em; margin: 10px 0; color: inherit; }
.bb-m .bb-pt5 h3 a { color: inherit; text-decoration: none; }
.bb-m .bb-pt5 p { margin: 0; color: inherit; max-width: 265px; }
.bb-m .bb-pt5 p:last-child { margin-top: 14px; padding-top: 14px; font: 600 13px var(--bb-fb, Inter, sans-serif); border-top: 1px solid rgba(127,127,127,.25); max-width: none; }
.bb-m .bb-pt5.bb-p-les-fondamentaux, .bb-m .bb-pt5.bb-p-mental-emotionnel, .bb-m .bb-pt5.bb-p-univers-bdsm { color: var(--bb-bone); }
.bb-m .bb-pt5.bb-p-consentement-relations, .bb-m .bb-pt5.bb-p-pratiques-experiences, .bb-m .bb-pt5.bb-p-identites-orientations { color: var(--bb-encre); }
.bb-m .bb-two .bb-mesure p + p { margin-top: 14px; }
/* article épinglé (D10) : sélection éditoriale « epingle » rendue par [bb_articles selection="epingle" limite="1"] dans un divi/code
   (Post Grid n'a ni étiquette ni taxonomie) : une carte a.tcard.big de la maquette (532 × 584, titre 32), même dessin que « À la une » */
.bb-m .et_pb_code.bb-m-epingle, .bb-m .et_pb_code.bb-m-epingle .et_pb_code_inner { display: block; }
.bb-m .bb-m-epingle .bb-articles-grille { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; list-style: none; margin: 0; padding: 0; }
.bb-m .bb-m-epingle .bb-articles-grille > li { width: auto; min-width: 0; margin: 0; }
.bb-m .bb-m-epingle .bb-article-carte { display: flex; flex-direction: column; justify-content: flex-end; border-radius: 6px 6px 12px 12px; background: var(--bb-papier, #FFFDF8); box-shadow: 0 1px 0 0 rgba(36,30,26,.05), 0 12px 26px -16px rgba(36,30,26,.35); transition: transform .35s var(--bb-ease, ease), box-shadow .35s; }
.bb-m .bb-m-epingle .bb-article-carte:hover { transform: translateY(-3px); box-shadow: 0 1px 0 0 rgba(36,30,26,.05), 0 18px 40px -18px rgba(36,30,26,.45); }
.bb-m .bb-m-epingle .bb-article-titre { font: 600 32px/1.12 var(--bb-fd, Poppins, sans-serif); letter-spacing: -.015em; color: var(--bb-encre); text-decoration: none; }
.bb-m .bb-m-epingle .bb-article-pilier { font: italic 400 18px/1.1 var(--bb-fs, Fraunces, serif); letter-spacing: -.01em; color: var(--bb-argile-fonce); }
.bb-m .bb-m-epingle .bb-article-chapeau { font: 400 14.5px/1.6 var(--bb-fb, Inter, sans-serif); color: var(--bb-attenue); margin: 0; }
@media (min-width: 981px) { .bb-m .bb-m-epingle .bb-article-carte { min-height: 584px; } }
@media (max-width: 980px) { .bb-m .bb-pt5 h3, .bb-m .bb-pt5 .dnxte_next_blurb_title { font-size: 26px; } .bb-m .bb-m-epingle .bb-article-titre { font-size: 24px; } }

/* === D7a 06 Outils (hub) : cartes d'outil en divi/text (boîte par attribut) : haut 117 px au dégradé du pilier, pictogramme
       52 px dans un disque Papier, corps 18 / 22 / 22 (type Inter 16, H3 19, description 14,5, méta 12,5) === */
.bb-m .bb-m-tc .et_pb_text_inner { display: flex; flex-direction: column; min-height: 353px; }
.bb-m .bb-m-tc .bb-m-tc-top { display: grid; place-items: center; height: 117px; border-radius: 6px 6px 0 0; background: var(--bb-pg, var(--bb-lin)); }
.bb-m .bb-m-tc .bb-m-tc-ico { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: var(--bb-papier, #FFFDF8); color: var(--bb-pc, var(--bb-encre)); }
.bb-m .bb-m-tc .bb-m-tc-ico svg { width: 26px; height: 26px; }
.bb-m .bb-m-tc .et_pb_text_inner > :not(.bb-m-tc-top) { margin: 0 22px; }
.bb-m .bb-m-tc .bb-m-tc-pil { margin-top: 18px; font: 400 16px/1.1 var(--bb-fb, Inter, sans-serif); color: var(--bb-encre); }
.bb-m .bb-m-tc h3 { margin: 8px 22px 0; }
.bb-m .bb-m-tc h3 a { color: inherit; text-decoration: none; }
.bb-m .bb-m-tc h3 + p { margin-top: 8px; }
.bb-m .bb-m-tc .bb-m-tc-meta { margin-top: auto; padding: 22px 0 22px; font: 500 12.5px var(--bb-fb, Inter, sans-serif); }
.bb-m .bb-m-tc:hover { transform: translateY(-3px); }
.bb-m .bb-m-tc { transition: transform .35s var(--bb-ease, ease); }
.bb-m .bb-tools7-l .bb-lien-fleche { color: var(--bb-attenue); }
/* Glossaire : titre du module 3D (h2 rendu par l'extension dans un divi/code : 34 / 24 mesurés) ; barre A à Z collante (D10 :
   un seul divi/text de 26 liens, police par attribut ; maquette .az .wrap : flex, gap 6 / 14, lettre 33 px = padding 4 / 2,
   filet bas 2 px Argile au survol, lettre sans terme Sable ; 58 px à 1440, 97 à 768 / 390) ; termes d'une lettre en grille
   2 colonnes dans un divi/text (gl-items : 2 × 493, gap 26 / 40 ; terme Poppins 600 17, définition Inter 15 Atténué, lien
   Poppins 500 13,5 Argile foncé) */
.bb-m .bb-mod-slot .bb3d-gx-head h2, .bb-m .bb-mod-slot h2#bb3d-gx-h { font: 600 34px/1.15 var(--f-display, 'Poppins', system-ui, sans-serif); letter-spacing: -0.02em; margin: 0; color: var(--bb-encre); }
.bb-m .bb-m-gl-az .et_pb_module { margin: 0 !important; }
.bb-m .bb-m-gl-az .bb-m-gl-az-l .et_pb_text_inner, .bb-m .bb-m-gl-az .bb-m-gl-az-l p { display: flex; flex-wrap: wrap; gap: 6px 14px; align-items: center; margin: 0; }
.bb-m .bb-m-gl-az .bb-m-gl-az-l a, .bb-m .bb-m-gl-az .bb-m-gl-az-l .bb-m-gl-vide { display: inline-block; padding: 4px 2px; border-bottom: 2px solid transparent; color: inherit; text-decoration: none; }
.bb-m .bb-m-gl-az .bb-m-gl-az-l a:hover, .bb-m .bb-m-gl-az .bb-m-gl-az-l a:focus-visible { border-bottom-color: var(--bb-argile); }
.bb-m .bb-m-gl-az .bb-m-gl-az-l .bb-m-gl-vide { color: var(--bb-sable); cursor: default; }
.bb-m .bb-m-gl-items .et_pb_text_inner { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 40px; }
.bb-m .bb-m-gl-items .bb-m-gl-t { scroll-margin-top: 150px; }
.bb-m .bb-m-gl-items .bb-m-gl-t p { margin: 0; }
.bb-m .bb-m-gl-items .bb-m-gl-dt { font: 600 17px/1.3 var(--bb-fd, Poppins, sans-serif); color: var(--bb-encre); margin: 0 0 6px; }
.bb-m .bb-m-gl-items .bb-m-gl-t > a { display: inline-block; margin-top: 8px; font: 500 13.5px/1.55 var(--bb-fd, Poppins, sans-serif); color: var(--bb-argile-fonce); }
.bb-m .bb-m-gl-lettre { scroll-margin-top: 150px; }
@media (max-width: 1180px) {
  .bb-m .bb-mod-slot .bb3d-gx-head h2, .bb-m .bb-mod-slot h2#bb3d-gx-h { font-size: 24px; }
  .bb-m .bb-m-tc .et_pb_text_inner { min-height: 0; }
}
@media (max-width: 640px) { .bb-m .bb-m-gl-items .et_pb_text_inner { grid-template-columns: minmax(0, 1fr); } }

/* === D7a 07 Première visite (gabarit bbm-pv de la maquette, rendu en modules Divi ; D8 : 2 sections mod-head / mod-body comme la
       maquette, les blocs numérotés et la boîte Encre sont des rangées de la section mod-body) === */
.bb-m .bb-m-pv-hero { border-bottom: 1px solid var(--bb-encre); }
.bb-m .bb-m-pv-sec { border-bottom: 1px solid var(--bb-filet); }
.bb-m .bb-m-pv-n p { color: transparent; -webkit-text-stroke: 1px var(--bb-encre); margin: 0; }
.bb-m .bb-m-pv-never .bb-m-pv-n p { -webkit-text-stroke-color: var(--bb-bone); }
.bb-m .bb-m-pv-pil ul { list-style: none; padding: 0; margin: 6px 0 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.bb-m .bb-m-pv-pil li a { display: flex; flex-direction: column; gap: 6px; min-height: 154px; padding: 18px 18px 20px; border-radius: 6px; text-decoration: none; color: var(--bb-pi, var(--bb-bone)); background: var(--bb-pg, var(--bb-encre)); }
.bb-m .bb-m-pv-pil li a > span:first-child { font: 600 13px/1.5 var(--bb-fd, Poppins, sans-serif); opacity: .8; }
.bb-m .bb-m-pv-pil li a strong { margin-top: auto; font: 700 19px/1.15 var(--bb-fd, Poppins, sans-serif); letter-spacing: -.02em; }
.bb-m .bb-m-pv-pil li a span:last-child { font: 400 14.5px/1.4 var(--bb-fb, Inter, sans-serif); opacity: .9; }
.bb-m .bb-m-pv-pil li.bb-p-consentement-relations a, .bb-m .bb-m-pv-pil li.bb-p-pratiques-experiences a, .bb-m .bb-m-pv-pil li.bb-p-identites-orientations a { color: var(--bb-encre); box-shadow: inset 0 0 0 1px var(--bb-filet); }
.bb-m .bb-m-pv-jamais ul { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 56px; }
.bb-m .bb-m-pv-jamais li { padding-top: 16px; border-top: 1px solid rgba(250,247,242,.14); }
.bb-m .bb-m-pv-jamais li p:first-child { margin: 0 0 10px; }
.bb-m .bb-m-pv-jamais li strong { font: 700 40px/1.05 var(--bb-fd, Poppins, sans-serif); letter-spacing: -.025em; color: var(--bb-bone); }
.bb-m .bb-m-pv-jamais li p + p { margin: 0; color: rgba(250,247,242,.85); }
.bb-m .bb-m-pv-start ul { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 17px; }
.bb-m .bb-m-pv-start li a { display: grid; gap: 6px; padding: 18px 20px; border: 1px solid var(--bb-filet); border-radius: 6px; background: #fff; color: var(--bb-encre); text-decoration: none; transition: border-color .2s; }
.bb-m .bb-m-pv-start li a:hover { border-color: var(--bb-encre); }
.bb-m .bb-m-pv-start li a strong { font: 600 17px/1.3 var(--bb-fd, Poppins, sans-serif); }
.bb-m .bb-m-pv-start li a span { font: 400 14.5px/1.55 var(--bb-fb, Inter, sans-serif); color: var(--bb-attenue); }
.bb-m .bb-m-pv-aide { border-left: 4px solid var(--bb-sauge); }
.bb-m .bb-m-pv-nums ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 4px; }
.bb-m .bb-m-pv-nums li { font: 400 15px/1.5 var(--bb-fb, Inter, sans-serif); }
.bb-m .bb-m-pv-nums li a { font-weight: 600; color: var(--bb-encre); }
@media (max-width: 760px) { .bb-m .bb-m-pv-pil ul { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .bb-m .bb-m-pv-jamais ul, .bb-m .bb-m-pv-start ul { grid-template-columns: minmax(0, 1fr); }
  .bb-m .bb-m-pv-jamais li strong { font-size: 26px; } }

/* === D7a 08 Pages d'outil (gabarit mod-head / mod-body) === */
.bb-m .bb-qz7-pils .bb-pilules { gap: 10px; margin-bottom: 22px; }
.bb-m .bb-qz7-pils .bb-pilule { padding: 7px 14px; font-size: 13.5px; }
.bb-m .bb-qz7-pils .bb-pilule::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--bb-pc, var(--bb-encre)); }
.bb-m .bb-retour9-tool a { color: var(--bb-encre); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
/* D10 1.6 porté à la source : « La boîte à questions », titre de l'encadré Encre (.bbm-qs-box--alert, aside) en Bone ; « h1…h6 { color: Encre } »
   (Divi / bb-global) l'emportait sur la couleur posée sur le bloc (18 px Encre sur Encre, illisible) */
.bb-m .bbm-qs .bbm-qs-box--alert h3, .bb-m .bbm-qs .bbm-qs-box--alert h2 { color: var(--bb-bone, #FAF7F2) !important; }
@media (max-width: 640px) { .bb-m .bb-qz7-pils .bb-pilules { gap: 8px; margin-bottom: 14px; } }

@media (prefers-reduced-motion: reduce) { .bb-m *, .bb-m *::before, .bb-m *::after { transition-duration: .001ms !important; animation-duration: .001ms !important; } }
