/* Polices auto-hébergées (Google Fonts, SIL OFL), sous-ensemble latin. Les trois fichiers sont
   réellement variables (vérifié le 10/10 : Mona Sans axes wdth 75-125 + wght 200-900, Golos Text wght 400-900). */
@font-face{font-family:'Mona Sans';font-style:normal;font-weight:200 900;font-stretch:75% 125%;font-display:swap;src:url(../fonts/mona-sans-var-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Mona Sans';font-style:italic;font-weight:200 900;font-stretch:75% 125%;font-display:swap;src:url(../fonts/mona-sans-italic-var-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Golos Text';font-style:normal;font-weight:400 900;font-display:swap;src:url(../fonts/golos-text-var-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/*
Theme Name: Le Bon Numéro — lbn-phare
Description: Plaque, carte grise, attelage : les bons numéros, du premier coup. Thème code pur (la plaque SIV sous le phare, la carte grise en cases codées).
Version: 1.0.0
Author: Le Bon Numéro
Text Domain: lbn-phare
*/

/*
 * BLOC FIGÉ — ARTICLE (thématique) — CSS
 * Origine : curieux-du-web.com, theme/style.css, règles `.cdw-article*` /
 * `.cdw-fil-ariane` / `.cdw-a-lire` / `.cdw-carte*` (renommées `.sbt-*` ici).
 * Couleurs/polices/espacements uniquement en `var(--sb-*, repli)` : un site neuf peut
 * utiliser ce fichier tel quel sans avoir encore défini ses propres variables.
 *
 * INTERDIT DE MODIFIER : voir single-article.php (un seul <article>, « à lire aussi »
 * en <div>). LIBRE DE MODIFIER : toutes les valeurs des var() ci-dessous.
 */

.sbt-conteneur{ max-width: var(--sb-conteneur, 1240px); margin-inline: auto; padding-inline: var(--sb-gouttiere, 24px); }

.sbt-fil-ariane{ font-size: .8125rem; color: var(--sb-doux, #55607a); display: flex; gap: 6px; flex-wrap: wrap; padding-block: 16px; }
.sbt-fil-ariane a{ color: var(--sb-doux, #55607a); text-decoration: none; }
.sbt-fil-ariane a:hover{ color: var(--sb-encre, #0f172a); }

.sbt-article-entete{ max-width: var(--sb-lecture, 720px); margin-inline: auto; padding-block: 8px 24px; }
.sbt-article-pastille{
	display: inline-block; background: var(--sb-surf, #f4f5fa); color: var(--sb-encre, #0f172a);
	font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-weight: 700; font-size: .75rem;
	text-transform: uppercase; letter-spacing: .04em; padding: 6px 12px; border-radius: 999px; margin-bottom: 16px;
	text-decoration: none;
}
.sbt-article-entete h1{ font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); line-height: 1.15; margin: 0; }
.sbt-article-chapo{ font-family: var(--sb-texte, 'Inter', system-ui, sans-serif); font-style: italic; font-size: clamp(1.0625rem,1rem + .3vw,1.3125rem); color: var(--sb-doux, #55607a); margin-top: 16px; }
.sbt-article-meta{ display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-top: 20px; font-size: .875rem; color: var(--sb-doux, #55607a); }
.sbt-article-meta img{ width: 32px; height: 32px; border-radius: 50%; object-fit: cover; }
.sbt-article-meta-auteur{ color: inherit; font-weight: 600; text-decoration: none; }

.sbt-article-une{ max-width: var(--sb-conteneur, 1240px); margin: 28px auto 32px; padding-inline: var(--sb-gouttiere, 24px); }
.sbt-article-une-cadre{ aspect-ratio: 2.4 / 1; max-height: min(520px, 46vh); overflow: hidden; /* 01/10 : à 1440×900 le texte passait sous la ligne de flottaison (B-ART-09) */ border-radius: var(--sb-rayon, 14px); box-shadow: var(--sb-ombre, 0 8px 24px rgba(15,23,42,.08)); }
.sbt-article-une-cadre img{ width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 640px){ .sbt-article-une-cadre{ aspect-ratio: auto; height: 220px; max-height: 220px; } }

/* Grille corps + rail — align-items:start obligatoire pour que le rail sticky
   (cf. partial-sidebar.css) tienne sur toute la hauteur du contenu. */
.sbt-article-mise-en-page{
	display: grid; grid-template-columns: minmax(0, var(--sb-lecture, 720px)) var(--sb-rail, 340px);
	column-gap: var(--sb-gouttiere, 24px); row-gap: var(--sb-gouttiere, 24px);
	max-width: var(--sb-conteneur, 1240px); margin-inline: auto;
	padding: 32px var(--sb-gouttiere, 24px) 64px; align-items: start; justify-content: center;
}
@media (max-width: 1080px){ .sbt-article-mise-en-page{ grid-template-columns: minmax(0,1fr); } .sbt-article-principal, .sbt-rail{ min-width: 0; } }
.sbt-article-mise-en-page--suite{ padding-top: 0; }

.sbt-article-corps{ font-size: 1.0625rem; line-height: 1.7; color: var(--sb-encre, #0f172a); font-family: var(--sb-texte, 'Inter', system-ui, sans-serif); }
.sbt-article-corps h2{ margin-top: 2.2em; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); }
.sbt-article-corps h3{ margin-top: 1.8em; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); }
.sbt-article-corps p{ margin-bottom: 1.3em; }
.sbt-article-corps img{ border-radius: var(--sb-rayon, 14px); margin-block: 1.6em; width: 100%; height: auto; }
.sbt-article-corps blockquote{
	margin: 1.8em 0; padding: 18px 24px; border-left: 4px solid var(--sb-accent, #2563eb);
	background: var(--sb-surf, #f4f5fa); border-radius: 8px; font-style: italic;
}

/* Sommaire replié en accordéon sur mobile uniquement (en desktop, il vit dans le rail —
   cf. partial-sidebar.php / partial-sommaire.php). */
.sbt-sommaire-mobile{ display: none; }
@media (max-width: 1080px){ .sbt-sommaire-mobile{ display: block; margin-bottom: 24px; } }
/* 01/10/2026 (baliturismo, juge visuel) : sous 1080px le rail passe SOUS l'article ; sa carte sommaire
   faisait doublon avec le sommaire mobile de tête (erreur n°6 « sommaire en double »). */
@media (max-width: 1080px){ .sbt-rail-carte--sommaire{ display: none; } }

/* « À lire aussi » (toujours un <div>, jamais un <article> — cf. single-article.php) */
.sbt-a-lire{ margin-top: 48px; padding-top: 32px; border-top: 1px solid var(--sb-filet, #e2e5ef); }
.sbt-kicker{ font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-size: .9375rem; font-weight: 700; margin-bottom: 12px; }
.sbt-grille{ display: grid; gap: var(--sb-gouttiere, 24px); }
.sbt-grille--3{ grid-template-columns: repeat(3, minmax(0,1fr)); }
@media (max-width: 760px){ .sbt-grille--3{ grid-template-columns: 1fr; } }
.sbt-carte{
	background: var(--sb-fond-carte, #ffffff); border: 1px solid var(--sb-filet, #e2e5ef);
	border-radius: var(--sb-rayon, 14px); overflow: hidden; box-shadow: var(--sb-ombre, 0 8px 24px rgba(15,23,42,.08));
	transition: transform .2s ease, box-shadow .2s ease;
}
.sbt-carte:hover{ transform: translateY(-4px); box-shadow: var(--sb-ombre-forte, 0 16px 40px rgba(15,23,42,.16)); }
.sbt-carte a{ display: block; color: inherit; text-decoration: none; }
.sbt-carte img{ width: 100%; aspect-ratio: 16/10; object-fit: cover; }
.sbt-carte-corps{ padding: 18px; }
.sbt-carte-corps h3{ margin: 0; font-size: 1.0625rem; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); }

.sbt-article-commentaires{ margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--sb-filet, #e2e5ef); }

/* 01/10 (accessoiriste.net) : un seul sommaire visible par largeur — la carte du rail se masque quand l'accordéon mobile s'affiche. */
@media (max-width: 1080px){ .sbt-rail-carte--sommaire{ display: none; } }
/* 05/10 (operations-digestives, juge visuel) : sous-titres collés au paragraphe suivant (marge basse 0 px mesurée) */
.sbt-article-corps h2{ margin-bottom: .6em; }
.sbt-article-corps h3{ margin-bottom: .45em; }

/*
 * BLOC FIGÉ — BARRE LATÉRALE D'ARTICLE (thématique) — CSS
 * Origine : curieux-du-web.com, theme/style.css, règles `.cdw-rail` / `.cdw-rail-carte`
 * (lignes ~854-861, renommées `.sbt-rail*` ici) — commentaire garde-fou d'origine
 * CONSERVÉ TEL QUEL ci-dessous (règle la plus importante de ce bloc).
 *
 * Inspiration secondaire documentée (pas copiée en entier) : amatauto.fr fait basculer
 * sa colonne latérale en bloc STATIQUE empilé sous le texte à partir de 1100px
 * (assets/css/v2.css, `.a2-art__cote { position: sticky; ... }` +
 * `@media (max-width: 1100px) { .a2-art__cote { position: static; } }`) — repris ici en
 * option mobile (media query 1080px, cohérente avec le point de rupture de
 * `.sbt-article-mise-en-page` dans single-article.css).
 */

/* Rail sticky — collé à la colonne de texte, séparation par un filet interne, jamais un
   gap blanc entre les deux colonnes. */
.sbt-rail{
	position: sticky; top: 96px; align-self: start;
	display: flex; flex-direction: column; gap: 20px;
	border-left: 1px solid var(--sb-filet, #e2e5ef); padding-left: 20px;
}
/* ⛔ GARDE-FOU (conservé tel quel depuis curieux-du-web.com, retour Mathias ×3) : jamais
   de overflow-y ni de max-height ici — la colonne reste collante et accompagne TOUTE la
   lecture de l'article jusqu'en bas, sans sa propre barre de défilement interne. */
.sbt-rail-carte{
	background: var(--sb-fond-carte, #ffffff); border: 1px solid var(--sb-filet, #e2e5ef);
	border-radius: var(--sb-rayon, 14px); padding: 18px;
}
.sbt-rail-carte .sbt-t4, .sbt-rail-carte h4{
	font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-size: .875rem;
	text-transform: uppercase; letter-spacing: .04em; color: var(--sb-doux, #55607a); margin: 0 0 10px;
}

/* Option mobile (inspirée d'amatauto.fr, cf. en-tête) : sous 1080px, la grille parente
   passe déjà en une colonne (cf. .sbt-article-mise-en-page dans single-article.css) — le
   rail redevient donc naturellement un bloc statique empilé sous le texte. */
@media (max-width: 1080px){
	.sbt-rail{ position: static; border-left: 0; padding-left: 0; border-top: 1px solid var(--sb-filet, #e2e5ef); padding-top: 20px; }
}

/* Sommaire tel qu'affiché dans le rail (cf. partial-sommaire.css pour le détail des
   classes `.sbt-sommaire*`) : pas de style supplémentaire ici, la carte du rail suffit. */

/*
 * BLOC FIGÉ — SOMMAIRE (thématique) — CSS
 * CSS volontairement simple (voir partial-sommaire.php : la robustesse de ce bloc est
 * dans le PHP — ids séquentiels, exclusion FAQ/Sources, seuil de 3 titres — pas dans son
 * habillage). Inspiré du rendu `<details>` natif de health-nutrition-cambrai.fr
 * (« Bien Vivre Santé »), classes renommées `.sbt-sommaire*`.
 */

.sbt-sommaire{
	background: var(--sb-fond-carte, #ffffff); border: 1px solid var(--sb-filet, #e2e5ef);
	border-left: 4px solid var(--sb-accent, #2563eb); border-radius: var(--sb-rayon, 14px);
	padding: 16px 20px;
}
.sbt-sommaire-titre{
	font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-weight: 700;
	font-size: .9375rem; cursor: pointer; list-style: none;
}
.sbt-sommaire-titre::-webkit-details-marker{ display: none; }
.sbt-sommaire ol{ list-style: none; margin: 14px 0 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.sbt-sommaire li a{
	display: flex; align-items: baseline; gap: 10px; font-size: .9375rem;
	color: var(--sb-encre, #0f172a); text-decoration: none;
}
.sbt-sommaire li a:hover{ color: var(--sb-accent, #2563eb); text-decoration: underline; }
.sbt-sommaire-num{
	font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-weight: 700; font-size: .75rem;
	color: var(--sb-encre, #0f172a); background: var(--sb-surf, #f4f5fa); border-radius: 50%;
	width: 20px; height: 20px; flex-shrink: 0; display: flex; align-items: center; justify-content: center;
}

/*
 * BLOC FIGÉ — ENCADRÉS « LE SAVIEZ-VOUS » / « POINTS À RETENIR » (thématique) — CSS
 * Origine : amatauto.fr, assets/css/v2.css, règles `.amat-encadre--retenir` / `.a2-saviez`
 * (renommées `.sbt-encadre--retenir` / `.sbt-encadre--saviez` ici). Habillage simplifié
 * (gradients/decorations ::before retirés pour rester générique et léger), la structure
 * (grille icône + texte pour « le saviez-vous », liste à puces pour « points à retenir »)
 * est conservée.
 */

.sbt-encadre{ margin-block: 2em; border-radius: var(--sb-rayon-grand, 22px); }

.sbt-encadre-titre{
	margin: 0 0 12px; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif);
	font-weight: 700; font-size: .8125rem; text-transform: uppercase; letter-spacing: .08em;
}

/* « Points à retenir » — fond foncé, liste à puces check. */
.sbt-encadre--retenir{
	background: var(--sb-fonce, #141733); color: var(--sb-sur-fonce, #ffffff);
	padding: 28px 30px;
}
.sbt-encadre--retenir .sbt-encadre-titre{ color: var(--sb-accent-clair, #93c5fd); }
.sbt-retenir-liste{ list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.sbt-retenir-liste li{
	position: relative; padding-left: 32px; font-size: 1rem; line-height: 1.55;
}
.sbt-retenir-liste li::before{
	content: ""; position: absolute; left: 0; top: .15em; width: 20px; height: 20px; border-radius: 50%;
	background: var(--sb-accent, #2563eb)
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E")
		center / 12px no-repeat;
}

/* « Le saviez-vous ? » — encadré clair, icône ampoule. */
.sbt-encadre--saviez{
	display: grid; grid-template-columns: 48px 1fr; gap: 16px; align-items: start;
	padding: 22px 24px; background: var(--sb-surf, #f4f5fa);
}
.sbt-encadre--saviez::before{
	content: "?"; grid-row: 1 / span 2; width: 48px; height: 48px; border-radius: 14px;
	background: var(--sb-accent, #2563eb); color: #fff; display: flex; align-items: center; justify-content: center;
	font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-weight: 700; font-size: 1.375rem;
}
.sbt-encadre--saviez .sbt-encadre-titre{ grid-column: 2; margin: 0; color: var(--sb-encre, #0f172a); }
.sbt-encadre--saviez p:not(.sbt-encadre-titre){ grid-column: 2; margin: 0; font-size: 1rem; line-height: 1.6; color: var(--sb-encre, #0f172a); }

@media (max-width: 620px){
	.sbt-encadre--saviez{ grid-template-columns: 1fr; }
	.sbt-encadre--saviez::before{ grid-row: 1; }
	.sbt-encadre--saviez .sbt-encadre-titre, .sbt-encadre--saviez p:not(.sbt-encadre-titre){ grid-column: 1; }
}
/* 04/10/2026 (invalidcast.com) : la règle de liste du corps d'article écrasait le retrait → la coche mangeait la 1re lettre. */
.sbt-article-corps .sbt-retenir-liste{ padding: 0; margin: 0; list-style: none; }
.sbt-article-corps .sbt-retenir-liste li{ padding-left: 34px; margin: 0; text-indent: 0; }

/*
 * BLOC FIGÉ — FAQ EN ACCORDÉON (thématique) — CSS
 * Visuel inspiré du rendu RÉEL de solutionminceur.fr, classes `.smr-faq*` récupérées par
 * un unique curl en lecture seule sur
 * `https://solutionminceur.fr/wp-content/themes/solutionminceur-v2/roxane.css`
 * (fichier CSS distant, absent du mirroir local du chantier — ce curl a RÉUSSI, voir
 * README). Classes renommées `.sbt-faq*` ici, variables de couleur remplacées par des
 * `var(--sb-*, repli)` génériques.
 *
 * Mécanisme accordéon (natif <details>/<summary>, sans JS) : cf. partial-faq.php, origine
 * health-nutrition-cambrai.fr.
 */

.sbt-faq{ margin: 56px 0; padding: 30px; border-radius: var(--sb-rayon-grand, 22px); background: var(--sb-surf, #f4f5fa); border: 1px solid var(--sb-filet, #e2e5ef); }
.sbt-faq-liste{ display: grid; gap: 10px; }
.sbt-faq-liste details{
	background: var(--sb-fond-carte, #ffffff); border: 1px solid var(--sb-filet, #e2e5ef) !important;
	border-radius: 14px; padding: 0 !important; transition: box-shadow .25s ease, border-color .25s ease;
}
.sbt-faq-liste details[open]{ box-shadow: var(--sb-ombre, 0 8px 24px rgba(15,23,42,.08)); border-color: var(--sb-accent, #2563eb) !important; }
.sbt-faq-liste summary{
	list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center;
	gap: 18px; padding: 18px 20px; font-size: 1.03rem; font-weight: 600; line-height: 1.45; color: var(--sb-encre, #0f172a);
}
.sbt-faq-liste summary::-webkit-details-marker{ display: none; }
.sbt-faq-liste summary::after{
	content: ""; width: 30px; height: 30px; flex: none; border-radius: 50%;
	background: var(--sb-surf, #f4f5fa) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center / 15px no-repeat;
	transition: transform .3s ease;
}
.sbt-faq-liste details[open] summary::after{ transform: rotate(135deg); }
.sbt-faq-liste summary:hover{ color: var(--sb-accent, #2563eb); }
.sbt-faq-reponse{ padding: 0 20px 18px; font-size: .96875rem; line-height: 1.75; color: var(--sb-doux, #55607a); }
.sbt-faq-reponse p{ margin: 0 0 14px; }
.sbt-faq-reponse p:last-child{ margin-bottom: 0; }

@media (max-width: 760px){
	.sbt-faq{ padding: 20px; }
}

/*
 * BLOC FIGÉ — SIGNATURE / BOÎTE AUTEUR (thématique) — CSS
 * Visuel inspiré du rendu RÉEL de solutionminceur.fr, classes `.smr-auteur*` récupérées
 * par le même curl en lecture seule que partial-faq.css (roxane.css, voir README).
 * Classes renommées `.sbt-auteur*` ici, variables de couleur remplacées par des
 * `var(--sb-*, repli)` génériques.
 */

.sbt-auteur{
	display: grid; grid-template-columns: 120px 1fr; gap: 26px; margin: 54px 0 10px;
	padding: 30px; border-radius: var(--sb-rayon-grand, 22px);
	background: var(--sb-surf, #f4f5fa); border: 1px solid var(--sb-filet, #e2e5ef);
}
.sbt-auteur-photo img{
	width: 120px; height: 120px; border-radius: 50%; object-fit: cover;
	box-shadow: 0 0 0 5px var(--sb-fond-carte, #ffffff), var(--sb-ombre, 0 8px 24px rgba(15,23,42,.08));
}
.sbt-auteur-sur{ margin: 0 0 2px; font-size: .75rem; text-transform: uppercase; letter-spacing: .08em; color: var(--sb-doux, #55607a); }
.sbt-auteur-nom{ font-size: 1.5rem; margin: 0 0 4px; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); }
.sbt-auteur-nom a{ color: var(--sb-encre, #0f172a); text-decoration: none; }
.sbt-auteur-nom a:hover{ text-decoration: underline; }
.sbt-auteur-role{ margin: 0 0 12px; font-size: .8125rem; font-weight: 600; color: var(--sb-accent, #2563eb); text-transform: uppercase; letter-spacing: .05em; }
.sbt-auteur-bio{ font-size: .96875rem; line-height: 1.7; color: var(--sb-encre, #0f172a); margin: 0 0 16px; }
.sbt-auteur-chiffres{ display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.sbt-auteur-chiffres span{ background: var(--sb-fond-carte, #ffffff); border-radius: 12px; padding: 8px 12px; font-size: .78125rem; color: var(--sb-doux, #55607a); }
.sbt-auteur-chiffres b{ color: var(--sb-encre, #0f172a); margin-right: 4px; }
.sbt-auteur-der{ margin-bottom: 18px; }
.sbt-auteur-der p{ margin: 0 0 6px; font-size: .75rem; text-transform: uppercase; letter-spacing: .06em; color: var(--sb-doux, #55607a); }
.sbt-auteur-der a{ display: block; font-size: .9375rem; font-weight: 500; padding: 6px 0; color: var(--sb-encre, #0f172a); text-decoration: none; border-bottom: 1px dashed var(--sb-filet, #e2e5ef); }
.sbt-auteur-der a:hover{ color: var(--sb-accent, #2563eb); }
.sbt-auteur-actions{ display: flex; flex-wrap: wrap; gap: 10px; }
.sbt-auteur-actions .sbt-btn{
	display: inline-block; padding: 10px 18px; border-radius: 999px; font-size: .875rem; font-weight: 600;
	text-decoration: none; background: var(--sb-accent, #2563eb); color: #fff;
}
.sbt-auteur-actions .sbt-btn--fantome{ background: transparent; border: 1.5px solid var(--sb-filet, #e2e5ef); color: var(--sb-encre, #0f172a); }

@media (max-width: 700px){
	.sbt-auteur{ grid-template-columns: 1fr; padding: 22px; }
	.sbt-auteur-photo img{ width: 88px; height: 88px; }
}

/*
 * BLOC FIGÉ — PIED DE PAGE (thématique) — CSS
 * Origine : curieux-du-web.com, theme/style.css, règles `.cdw-footer*` / `.cdw-cookies*` /
 * `.cdw-popup-sortie*` / `.cdw-btn*` (renommées `.sbt-footer*` / `.sbt-cookies*` /
 * `.sbt-popup-sortie*` / `.sbt-btn*` ici).
 */

.sbt-btn{
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	padding: 13px 24px; border-radius: 999px; font-weight: 700; font-size: 1rem;
	background: var(--sb-accent, #2563eb); color: #fff; text-decoration: none; border: 0; cursor: pointer;
	transition: transform .2s ease, box-shadow .2s ease;
}
.sbt-btn:hover{ transform: translateY(-2px); box-shadow: var(--sb-ombre, 0 8px 24px rgba(15,23,42,.08)); }
.sbt-btn--petit{ padding: 10px 18px; font-size: .875rem; }
.sbt-btn--fantome{ background: transparent; border: 1.5px solid rgba(255,255,255,.5); color: inherit; }

.sbt-footer{ background: var(--sb-fonce, #141733); color: var(--sb-sur-fonce, #ffffff); padding-block: clamp(40px,6vw,64px) 24px; }
.sbt-footer a{ color: #c4c7e4; text-decoration: none; }
.sbt-footer a:hover{ color: #fff; }

.sbt-footer-cta{
	display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap;
	padding: 24px 28px; margin-bottom: 32px; border-bottom: 1px solid rgba(255,255,255,.12);
}
@media (max-width: 600px){ .sbt-footer-cta{ padding: 20px; } } /* 04/10/2026 (invalidcast.com) : texte collé au bord dès qu'un thème donne un fond de carte au bandeau */
.sbt-footer-cta .sbt-t3{ color: #fff; margin: 0 0 4px; font-size: 1.25rem; }
.sbt-footer-cta p{ color: #a9acd0; margin: 0; max-width: 46ch; }

.sbt-footer-grille{ display: grid; grid-template-columns: 1.4fr repeat(3, 1fr); gap: 32px; padding-bottom: 32px; border-bottom: 1px solid rgba(255,255,255,.12); }
@media (max-width: 980px){ .sbt-footer-grille{ grid-template-columns: repeat(2,1fr); } }
@media (max-width: 560px){ .sbt-footer-grille{ grid-template-columns: 1fr; } }
.sbt-footer-colonne .sbt-t4{ font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-size: .8125rem; text-transform: uppercase; letter-spacing: .06em; color: #8b8fb5; margin: 0 0 14px; }
.sbt-footer-colonne ul{ list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.sbt-footer-colonne ul a{ font-size: .875rem; }
.sbt-footer-logo{ display: block; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-weight: 700; font-size: 1.125rem; color: #fff; margin-bottom: 14px; }
.sbt-footer-desc{ color: #a9acd0; font-size: .9375rem; margin: 0; max-width: 32ch; }
.sbt-footer-contact{ display: flex; flex-direction: column; gap: 8px; font-size: .875rem; }

.sbt-footer-bas{ padding-top: 20px; font-size: .8125rem; color: #8b8fb5; }

/* Bandeau cookies — deux boutons de MÊME poids (même classe .sbt-btn/.sbt-btn--petit),
   jamais un seul « J'ai compris » qui vaudrait acceptation forcée. */
.sbt-cookies{
	position: fixed; left: 8px; right: 8px; bottom: 8px; z-index: 80;
	background: var(--sb-fonce, #141733); color: #fff; border-radius: 12px;
	padding: 10px 14px; display: none; align-items: center; gap: 12px;
	box-shadow: var(--sb-ombre-forte, 0 16px 40px rgba(15,23,42,.16)); max-height: 64px; overflow: hidden;
}
.sbt-cookies.est-visible{ display: flex; }
.sbt-cookies p{ margin: 0; flex: 1; min-width: 0; font-size: .75rem; line-height: 1.3; }
.sbt-cookies-actions{ display: flex; gap: 8px; flex-shrink: 0; }
.sbt-cookies .sbt-btn{ flex-shrink: 0; padding: 8px 14px; min-height: 32px; font-size: .8125rem; }

/* Popup de sortie — jamais de colonne image vide : si pas d'image, la boîte bascule sur
   une seule colonne (cf. .sbt-popup-sortie-boite--sans-image). */
.sbt-popup-sortie{ position: fixed; inset: 0; z-index: 90; display: none; align-items: center; justify-content: center; padding: 20px; }
.sbt-popup-sortie.est-ouvert{ display: flex; }
.sbt-popup-sortie-fond{ position: absolute; inset: 0; background: rgba(15,23,42,.7); }
.sbt-popup-sortie-boite{
	position: relative; z-index: 1; background: var(--sb-fond-carte, #ffffff); border-radius: var(--sb-rayon, 14px);
	max-width: 720px; width: 100%; display: grid; grid-template-columns: 1fr 1fr; overflow: hidden;
	box-shadow: var(--sb-ombre-forte, 0 16px 40px rgba(15,23,42,.16)); max-height: 90vh;
}
.sbt-popup-sortie-boite--sans-image{ grid-template-columns: 1fr; max-width: 480px; }
@media (max-width: 640px){ .sbt-popup-sortie-boite{ grid-template-columns: 1fr; max-height: 85vh; overflow-y: auto; } }
.sbt-popup-sortie-image{ min-height: 220px; }
.sbt-popup-sortie-image img{ width: 100%; height: 100%; object-fit: cover; }
.sbt-popup-sortie-texte{ padding: 28px; color: var(--sb-encre, #0f172a); }
.sbt-popup-sortie-fermer{
	position: absolute; top: 12px; right: 12px; z-index: 2; width: 40px; height: 40px; border-radius: 50%;
	background: var(--sb-fond-carte, #ffffff); border: 1px solid var(--sb-filet, #e2e5ef);
	display: flex; align-items: center; justify-content: center; cursor: pointer;
}
.sbt-popup-sortie-fermer svg{ width: 20px; height: 20px; }

/* =====================================================================
   lbn-phare — Le Bon Numéro. La plaque SIV sous le phare, la carte grise en cases codées.
   Mode clair seulement. Préfixe lbn-. Les blocs figés (.sbt-*) ne sont qu'habillés ici.
   ===================================================================== */

:root{
	/* Palette DA §4 */
	--sb-fond:#F4F6FA; --sb-surface:#FFFFFF; --sb-certificat:#E5EDE8; --sb-encre:#12161D; --sb-encre-douce:#46526A;
	--sb-bleu-plaque:#0F3D9A; --sb-nuit:#0A2357; --sb-jaune-etoile:#FFC61A; --sb-filet:#D3DBE6; --sb-conforme:#1E7F55; --sb-refus:#B8342C;
	--lbn-ancien:#9A5300; --lbn-jaune-survol:#FFB800; --lbn-bleu-pale:#E4EBF8; --lbn-sur-nuit:#C9D3EA;
	/* Ombres bleutées DA §6 */
	--sb-ombre-1:0 1px 2px rgba(10,35,87,.06), 0 8px 24px rgba(10,35,87,.08);
	--sb-ombre-2:0 2px 4px rgba(10,35,87,.08), 0 28px 64px -16px rgba(10,35,87,.30);
	--sb-ombre-plaque:inset 0 0 0 1.5px var(--sb-encre), 0 10px 30px -10px rgba(10,35,87,.35);
	/* Jetons attendus par les blocs figés */
	--sb-titre:'Mona Sans', 'Golos Text', system-ui, sans-serif; --sb-texte:'Golos Text', system-ui, sans-serif;
	--sb-accent:var(--sb-bleu-plaque); --sb-accent-clair:var(--lbn-bleu-pale); --sb-surf:var(--sb-certificat); --sb-fond-carte:#FFFFFF;
	--sb-doux:var(--sb-encre-douce); --sb-fonce:var(--sb-nuit); --sb-sur-fonce:#FFFFFF;
	--sb-rayon:18px; --sb-rayon-grand:24px; --sb-ombre:var(--sb-ombre-1); --sb-ombre-forte:var(--sb-ombre-2);
	--sb-conteneur:1240px; --sb-gouttiere:24px; --sb-lecture:720px; --sb-rail:340px;
	/* Matière : micro-prismes rétroréfléchissants à 4 % */
	--lbn-prismes:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='48.5' viewBox='0 0 28 48.5'%3E%3Cpath d='M14 0l14 8.08v16.17L14 32.33 0 24.25V8.08zM14 32.33v16.17M0 24.25v24.25M28 24.25v24.25' fill='none' stroke='%230A2357' stroke-opacity='.05' stroke-width='1'/%3E%3C/svg%3E");
	--lbn-entete:72px;
	color-scheme:light;
}
@media (min-width:1800px){ :root{ --sb-conteneur:1648px; --lbn-entete:80px; } }
@media (max-width:760px){ :root{ --sb-gouttiere:16px; --lbn-entete:60px; } }

/* ---------- Base ---------- */
*,*::before,*::after{ box-sizing:border-box; }
[hidden]{ display:none !important; }
html{ -webkit-text-size-adjust:100%; scroll-padding-top:calc(var(--lbn-entete) + 16px); }
body{
	margin:0; background:var(--sb-fond); color:var(--sb-encre);
	font-family:var(--sb-texte); font-size:18px; line-height:1.65; font-weight:400;
	min-height:100vh; display:flex; flex-direction:column; overflow-x:clip;
	-webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
@media (max-width:600px){ body{ font-size:17px; } }
.lbn-main{ flex:1 0 auto; display:block; width:100%; }
img,svg{ max-width:100%; }
img{ height:auto; display:block; }
a{ color:var(--sb-bleu-plaque); text-decoration-thickness:1px; text-underline-offset:3px; }
a:hover{ text-decoration-thickness:2px; }
h1,h2,h3,h4{ font-family:var(--sb-titre); font-stretch:87%; font-weight:800; letter-spacing:-.015em; line-height:1.08; margin:0; color:var(--sb-encre); text-wrap:balance; }
p{ margin:0; }
:focus-visible{ outline:3px solid var(--sb-bleu-plaque); outline-offset:2px; border-radius:4px; }
.lbn-cache{ position:absolute !important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.lbn-saut{ position:absolute; left:16px; top:-60px; z-index:100; background:var(--sb-jaune-etoile); color:var(--sb-encre); padding:10px 16px; border-radius:12px; font-weight:600; }
.lbn-saut:focus{ top:12px; }
.lbn-conteneur{ max-width:var(--sb-conteneur); margin-inline:auto; padding-inline:var(--sb-gouttiere); width:100%; }
.lbn-prismes{ background-image:var(--lbn-prismes); }

/* ---------- Boutons ---------- */
.lbn-btn{
	position:relative; overflow:hidden; display:inline-flex; align-items:center; justify-content:center; gap:10px;
	min-height:56px; padding:0 26px; border:0; border-radius:12px; cursor:pointer; white-space:nowrap;
	background:var(--sb-jaune-etoile); color:var(--sb-encre); font:600 17px/1 var(--sb-texte); text-decoration:none;
	transition:background-color .2s ease, transform .2s ease, box-shadow .2s ease; box-shadow:0 6px 18px -8px rgba(10,35,87,.45);
}
.lbn-btn svg{ width:20px; height:20px; flex-shrink:0; transition:transform .2s ease; }
.lbn-btn:hover{ background:var(--lbn-jaune-survol); text-decoration:none; }
.lbn-btn:hover svg{ transform:translateX(3px); }
.lbn-btn:active{ transform:translateY(1px); }
.lbn-btn::after{ content:""; position:absolute; top:-30%; bottom:-30%; left:-45%; width:30%; transform:skewX(-18deg); background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.55),rgba(255,255,255,0)); pointer-events:none; opacity:0; }
.lbn-btn:hover::after{ animation:lbn-balayage-btn .8s ease-out; }
.lbn-btn--second{ background:transparent; color:var(--sb-bleu-plaque); box-shadow:inset 0 0 0 2px var(--sb-bleu-plaque); min-height:48px; padding:0 20px; font-size:16px; }
.lbn-btn--second:hover{ background:var(--lbn-bleu-pale); }
.lbn-btn--plein{ width:100%; }
.lbn-btn[disabled]{ opacity:.6; cursor:wait; }

/* ---------- Le faisceau du phare (DA §6) ---------- */
.lbn-faisceau{ position:relative; overflow:hidden; }
.lbn-faisceau::after{
	content:""; position:absolute; z-index:3; top:-20%; bottom:-20%; left:-40%; width:30%; pointer-events:none; opacity:0;
	background:linear-gradient(90deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.55) 50%,rgba(255,255,255,0) 100%);
	transform:skewX(-18deg);
}
.lbn-faisceau--charge::after{ animation:lbn-balayage 1.4s ease-out .35s 1 both; }
.lbn-faisceau:hover::after,.lbn-faisceau.est-allume::after{ animation:lbn-balayage 1.1s ease-out 1 both; }
@keyframes lbn-balayage{ 0%{ opacity:1; transform:translateX(0) skewX(-18deg); } 100%{ opacity:1; transform:translateX(570%) skewX(-18deg); } }
@keyframes lbn-balayage-btn{ 0%{ opacity:1; left:-45%; } 100%{ opacity:1; left:130%; } }

/* ---------- La plaque SIV dessinée (520:110) ---------- */
.lbn-plaque{
	display:grid; grid-template-columns:8.5% minmax(0,1fr) 8.5%; width:100%; aspect-ratio:520/110;
	background:linear-gradient(180deg,#FFFFFF 0%,#F3F6FC 100%); border-radius:10px; box-shadow:var(--sb-ombre-plaque);
	container-type:inline-size; overflow:hidden; position:relative;
}
.lbn-plaque-ue,.lbn-plaque-dep{ background:var(--sb-bleu-plaque); display:flex; align-items:center; justify-content:center; margin:2px; }
.lbn-plaque-ue{ border-radius:8px 0 0 8px; margin-right:0; }
.lbn-plaque-dep{ border-radius:0 8px 8px 0; margin-left:0; color:#fff; font:700 5.4cqi/1 var(--sb-titre); font-stretch:75%; letter-spacing:.02em; }
.lbn-plaque-ue svg{ height:84%; width:auto; }
.lbn-plaque-num{
	display:flex; align-items:center; justify-content:center; white-space:nowrap; overflow:hidden;
	font-family:var(--sb-titre); font-stretch:75%; font-weight:620; letter-spacing:.04em; text-transform:uppercase;
	font-size:13.6cqi; line-height:1; color:var(--sb-encre); font-variant-numeric:tabular-nums lining-nums;
	text-shadow:0 1px 0 rgba(255,255,255,.9), 0 -1px 0 rgba(0,0,0,.18);
}
.lbn-plaque.est-exemple .lbn-plaque-num{ color:rgba(18,22,29,.26); text-shadow:none; }
.lbn-plaque-num .lbn-car{ display:inline-block; animation:lbn-emboutir .12s ease-out; }
@keyframes lbn-emboutir{ from{ transform:scale(1.08); } to{ transform:scale(1); } }
.lbn-plaque--repli{ width:min(76%,360px); }

/* Mini-plaque étiquette : bande bleue + texte */
.lbn-etiquette{
	display:inline-flex; align-items:stretch; height:28px; max-width:100%; background:#fff; border-radius:6px;
	box-shadow:inset 0 0 0 1.5px var(--sb-encre); overflow:hidden; text-decoration:none; color:var(--sb-encre);
	font:600 11.5px/1 var(--sb-texte); letter-spacing:.12em; text-transform:uppercase; transition:transform .2s ease;
}
.lbn-etiquette-bande{ width:9px; flex-shrink:0; background:var(--sb-bleu-plaque); }
.lbn-etiquette-txt{ display:flex; align-items:center; padding:0 11px 0 9px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.lbn-etiquette-txt b{ font-family:var(--sb-titre); font-stretch:75%; font-weight:800; font-size:13px; letter-spacing:.04em; margin-right:.25em; }
.lbn-etiquette--photo{ position:absolute; top:14px; left:14px; z-index:2; max-width:calc(100% - 28px); box-shadow:inset 0 0 0 1.5px var(--sb-encre), 0 6px 16px -6px rgba(10,35,87,.45); }
a.lbn-etiquette:hover{ transform:translateY(-2px); }

/* Cases codées de carte grise */
.lbn-case{ display:flex; flex-direction:column; gap:3px; min-width:0; }
.lbn-case-code{ font:600 11px/1.3 var(--sb-texte); letter-spacing:.12em; text-transform:uppercase; color:var(--sb-bleu-plaque); }
.lbn-case-code b{ font-weight:800; letter-spacing:.04em; margin-right:.3em; }
.lbn-case-val{ font-size:15.5px; line-height:1.4; font-weight:500; color:var(--sb-encre); }
.lbn-case-val a{ color:inherit; }

/* Repli d'une photo manquante : fond certificat + prismes + plaque dessinée */
.lbn-repli{ display:flex; align-items:center; justify-content:center; width:100%; height:100%; min-height:160px; background:var(--sb-certificat) var(--lbn-prismes); }

/* Avatars */
.lbn-avatar{ width:40px; height:40px; border-radius:50%; object-fit:cover; flex-shrink:0; box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--sb-bleu-plaque); }
.lbn-avatar--initiales{
	width:var(--lbn-av,40px); height:var(--lbn-av,40px); display:inline-flex; align-items:center; justify-content:center; position:relative; overflow:hidden;
	background:#fff; color:var(--sb-encre); font:800 calc(var(--lbn-av,40px) * .36)/1 var(--sb-titre); font-stretch:75%; letter-spacing:.04em; padding-left:calc(var(--lbn-av,40px) * .14);
}
.lbn-avatar-bande{ position:absolute; left:0; top:0; bottom:0; width:calc(var(--lbn-av,40px) * .2); background:var(--sb-bleu-plaque); }

/* États (pastilles de verdict) */
.lbn-etat{ display:inline-flex; align-items:center; gap:6px; flex-shrink:0; padding:4px 11px; border-radius:999px; font:600 13px/1.2 var(--sb-texte); white-space:nowrap; }
.lbn-etat::before{ content:""; width:8px; height:8px; border-radius:50%; background:currentColor; }
.lbn-etat--neutre{ background:var(--lbn-bleu-pale); color:var(--sb-bleu-plaque); }
.lbn-etat--ok{ background:#E2F3EA; color:var(--sb-conforme); }
.lbn-etat--ancien{ background:#FFF0D9; color:var(--lbn-ancien); }
.lbn-etat--ko{ background:#FBE6E4; color:var(--sb-refus); }

/* ---------- En-tête du site (collant) ---------- */
.lbn-entete{ position:sticky; top:0; z-index:50; background:rgba(244,246,250,.94); backdrop-filter:saturate(1.4) blur(10px); -webkit-backdrop-filter:saturate(1.4) blur(10px); border-bottom:1px solid var(--sb-filet); }
.lbn-entete-barre{ height:var(--lbn-entete); display:flex; align-items:center; gap:28px; }
.lbn-entete-logo{ display:flex; text-decoration:none; flex-shrink:0; }
.lbn-logo{ display:inline-flex; align-items:center; gap:10px; }
.lbn-logo-plaque{ width:64px; height:28px; filter:drop-shadow(0 3px 6px rgba(10,35,87,.18)); }
.lbn-logo-mot{ display:flex; flex-direction:column; line-height:1; }
.lbn-logo-le{ font:600 11px/1 var(--sb-texte); letter-spacing:.14em; text-transform:uppercase; color:var(--sb-encre-douce); }
.lbn-logo-num{ font:800 23px/1 var(--sb-titre); font-stretch:87%; color:var(--sb-bleu-plaque); letter-spacing:-.01em; margin-top:2px; }
.lbn-nav{ margin-left:auto; }
.lbn-nav ul{ display:flex; gap:4px; list-style:none; margin:0; padding:0; }
.lbn-nav-lien{ display:block; padding:9px 13px; border-radius:10px; color:var(--sb-encre); text-decoration:none; font-weight:500; font-size:16px; line-height:1.2; white-space:nowrap; }
.lbn-nav-lien:hover{ background:#fff; color:var(--sb-bleu-plaque); }
.lbn-nav-lien.est-actif{ color:var(--sb-bleu-plaque); box-shadow:inset 0 -3px 0 var(--sb-jaune-etoile); border-radius:10px 10px 0 0; }
.lbn-entete-actions{ display:flex; gap:6px; }
.lbn-entete-recherche,.lbn-nav-bascule{ width:44px; height:44px; display:inline-flex; align-items:center; justify-content:center; border:0; border-radius:12px; background:#fff; color:var(--sb-encre); cursor:pointer; box-shadow:inset 0 0 0 1px var(--sb-filet); }
.lbn-entete-recherche:hover,.lbn-nav-bascule:hover{ color:var(--sb-bleu-plaque); }
.lbn-nav-bascule{ display:none; }
.lbn-recherche{ border-top:1px solid var(--sb-filet); background:#fff; padding:14px 0; }
.lbn-nav-mobile{ border-top:1px solid var(--sb-filet); background:#fff; padding:8px var(--sb-gouttiere) 16px; }
.lbn-nav-mobile ul{ list-style:none; margin:0; padding:0; }
.lbn-nav-mobile a{ display:flex; align-items:center; gap:12px; padding:12px 4px; color:var(--sb-encre); text-decoration:none; font-weight:500; border-bottom:1px solid var(--sb-filet); }
.lbn-nav-mobile-num{ font:800 14px/1 var(--sb-titre); font-stretch:75%; color:#fff; background:var(--sb-bleu-plaque); border-radius:6px; padding:6px 7px; min-width:36px; text-align:center; }
@media (max-width:1080px){ .lbn-nav{ display:none; } .lbn-nav-bascule{ display:inline-flex; } .lbn-entete-actions{ margin-left:auto; } }
@media (max-width:760px){ .lbn-logo-plaque{ width:54px; height:24px; } .lbn-logo-num{ font-size:20px; } .lbn-logo-le{ font-size:10px; } .lbn-entete-recherche,.lbn-nav-bascule{ width:44px; height:44px; } }

/* Formulaire de recherche */
.lbn-cherche{ display:flex; gap:10px; max-width:640px; }
.lbn-cherche input{ flex:1; min-width:0; }

/* ---------- Champs ---------- */
.lbn-champ{ display:flex; flex-direction:column; gap:5px; min-width:0; }
.lbn-champ-lib{ font:500 13.5px/1.25 var(--sb-texte); color:var(--sb-encre-douce); }
.lbn-champ-lib .lbn-case-code{ margin-right:2px; }
input[type=text],input[type=email],input[type=number],input[type=search],select,textarea{
	width:100%; min-height:48px; padding:11px 14px; border:1.5px solid var(--sb-filet); border-radius:12px; background:#fff;
	font:500 16px/1.4 var(--sb-texte); color:var(--sb-encre); transition:border-color .15s ease, box-shadow .15s ease; appearance:none; -webkit-appearance:none;
}
select{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%2346526A' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 14px center; padding-right:36px; }
textarea{ resize:vertical; min-height:0; }
input:focus,select:focus,textarea:focus{ outline:0; border-color:var(--sb-bleu-plaque); box-shadow:0 0 0 3px rgba(15,61,154,.18); }
input::placeholder,textarea::placeholder{ color:#7C879C; }
.lbn-champ.est-erreur input,.lbn-champ.est-erreur textarea{ border-color:var(--sb-refus); }

/* =====================================================================
   1. HERO — photo entre deux bandes bleues + composeur flottant
   ===================================================================== */
.lbn-hero.lbn-section{ background-color:var(--sb-fond); padding:40px 0 64px; position:relative; }
.lbn-hero-grille{ display:grid; grid-template-columns:minmax(0,48fr) minmax(0,52fr); column-gap:24px; align-items:start; }
.lbn-hero-texte{ padding-top:4px; position:relative; z-index:2; }
.lbn-surtitre{ margin-bottom:18px; }
.lbn-hero-titre{ font-size:clamp(52px,4.72vw,68px); line-height:1.02; letter-spacing:-.015em; }
.lbn-hero-titre span{ display:block; }
.lbn-hero-titre em{ display:block; font-style:italic; color:var(--sb-bleu-plaque); }
.lbn-hero-chapo{ margin-top:18px; font-size:18px; line-height:1.5; color:var(--sb-encre-douce); max-width:470px; }
.lbn-hero-preuves{ display:flex; gap:12px; margin-top:22px; max-width:470px; }
.lbn-tuile-chiffre{ flex:1 1 0; min-width:0; height:80px; display:flex; flex-direction:column; justify-content:center; padding:10px 14px; background:#fff; border-radius:14px; box-shadow:var(--sb-ombre-1); border-top:3px solid var(--sb-bleu-plaque); }
.lbn-tuile-chiffre b{ font:800 30px/1 var(--sb-titre); font-stretch:87%; color:var(--sb-bleu-plaque); font-variant-numeric:tabular-nums lining-nums; }
.lbn-tuile-chiffre--date b{ font-size:21px; padding-block:4px; }
.lbn-tuile-chiffre span{ font-size:13px; line-height:1.25; color:var(--sb-encre-douce); margin-top:5px; }
.lbn-hero-sources{ display:flex; align-items:center; gap:8px; margin-top:16px; font-size:14.5px; color:var(--sb-encre-douce); }
.lbn-hero-sources svg{ color:var(--sb-conforme); width:18px; height:18px; }
.lbn-hero-visuel{ position:relative; }
.lbn-hero-panneau{ display:grid; grid-template-columns:52px minmax(0,1fr) 52px; height:560px; border-radius:32px; background:var(--sb-bleu-plaque); box-shadow:var(--sb-ombre-2), inset 0 0 0 2px var(--sb-encre); padding:2px; }
.lbn-hero-bande{ display:flex; align-items:center; justify-content:center; color:#fff; }
.lbn-hero-bande--ue{ align-items:flex-start; padding-top:22px; }
.lbn-hero-ue{ width:30px; height:60px; }
.lbn-hero-bande--dep{ align-items:flex-end; padding-bottom:24px; }
.lbn-hero-bande--dep b{ font:800 36px/1 var(--sb-titre); font-stretch:75%; letter-spacing:.02em; font-variant-numeric:tabular-nums; }
.lbn-hero-bande--dep b.est-long{ font-size:26px; }
.lbn-hero-photo{ position:relative; overflow:hidden; background:var(--sb-certificat); }
.lbn-hero-img,.lbn-hero-photo .lbn-repli{ width:100%; height:100%; object-fit:cover; object-position:62% 50%; }
/* Hero (photo paysage 1800×1385, plaque à x 64-81 %, y 49-56 %) : couverture simple, la plaque reste à droite du composeur. */
.lbn-hero-panneau::after{ z-index:4; }

/* Le composeur */
.lbn-composeur{
	position:absolute; left:-90px; bottom:-48px; width:460px; z-index:5;
	background:var(--sb-surface); border-radius:18px; box-shadow:var(--sb-ombre-2); padding:22px;
}
/* Corrections n°2 : la pastille est DANS la carte, sur la ligne du titre (plus rien ne dépasse du composeur). */
.lbn-composeur-tete{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:12px; min-width:0; }
.lbn-composeur-pastille{
	display:inline-flex; align-items:center; gap:5px; flex-shrink:0; height:28px; padding:0 12px;
	background:var(--lbn-bleu-pale); border-radius:999px; font-size:12.5px; font-weight:500; color:var(--sb-encre-douce); white-space:nowrap;
}
.lbn-composeur-pastille b{ font-family:var(--sb-titre); font-stretch:75%; font-weight:700; letter-spacing:.04em; color:var(--sb-encre); }
.lbn-composeur-titre{ font:700 15px/1.3 var(--sb-titre); font-stretch:87%; color:var(--sb-encre); margin-bottom:0; }
.lbn-composeur-plaque{ border-radius:10px; }
.lbn-composeur-champs{ display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:12px; margin-top:14px; }
.lbn-composeur-num input{ font-family:var(--sb-titre); font-stretch:75%; font-weight:620; font-size:20px; letter-spacing:.06em; text-transform:uppercase; }
.lbn-composeur-dep .lbn-champ-lib{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.lbn-composeur-res{ display:flex; align-items:center; gap:10px; min-height:28px; margin-top:12px; font-size:14px; line-height:1.35; color:var(--sb-encre-douce); }
.lbn-composeur-liens{ display:flex; flex-wrap:wrap; gap:4px 14px; margin-top:6px; font-size:13.5px; line-height:1.35; }
.lbn-composeur-liens a{ font-weight:500; }
.lbn-composeur .lbn-btn{ width:100%; margin-top:12px; }

@media (min-width:1800px){
	.lbn-hero.lbn-section{ padding:48px 0 72px; }
	.lbn-hero-grille{ grid-template-columns:minmax(0,46fr) minmax(0,54fr); column-gap:32px; }
	.lbn-surtitre{ margin-top:72px; }
	.lbn-hero-titre{ font-size:86px; }
	.lbn-hero-chapo{ font-size:20px; max-width:560px; }
	.lbn-hero-preuves{ max-width:560px; }
	.lbn-tuile-chiffre{ height:96px; }
	.lbn-tuile-chiffre b{ font-size:36px; }
	.lbn-hero-panneau{ height:640px; grid-template-columns:64px minmax(0,1fr) 64px; }
	.lbn-hero-bande--dep b{ font-size:44px; }
	.lbn-hero-bande--dep b.est-long{ font-size:32px; }
	.lbn-composeur{ width:520px; left:-120px; padding:26px; }
}
@media (min-width:1081px) and (max-height:820px){ .lbn-surtitre{ margin-bottom:14px; } }

/* Hero : tablette et mobile (ordre DA : surtitre → titre → photo → composeur → chapô, tuiles) */
@media (max-width:1080px){
	.lbn-hero.lbn-section{ padding:20px 0 40px; }
	.lbn-hero-grille{ grid-template-columns:minmax(0,1fr); }
	.lbn-hero-texte{ display:contents; }
	.lbn-surtitre{ order:1; margin-bottom:12px; }
	.lbn-hero-titre{ order:2; font-size:clamp(40px,7vw,56px); }
	.lbn-hero-visuel{ order:3; margin-top:18px; }
	.lbn-hero-chapo{ order:4; max-width:none; margin-top:22px; }
	.lbn-hero-preuves{ order:5; max-width:none; }
	.lbn-hero-sources{ order:6; }
	.lbn-hero-panneau{ height:clamp(200px,42vw,380px); grid-template-columns:clamp(28px,5vw,48px) minmax(0,1fr) clamp(28px,5vw,48px); border-radius:24px; }
	.lbn-hero-ue{ width:20px; height:40px; }
	.lbn-hero-bande--ue{ padding-top:14px; }
	.lbn-hero-bande--dep{ padding-bottom:12px; }
	.lbn-hero-bande--dep b,.lbn-hero-bande--dep b.est-long{ font-size:clamp(11px,2.6vw,20px); }
	.lbn-composeur{ position:relative; left:auto; bottom:auto; width:auto; margin:-56px 12px 0; padding:16px; }
}
@media (max-width:760px){
	.lbn-hero.lbn-section{ padding-top:14px; }
	.lbn-hero-img{ object-position:58% 52%; }
	.lbn-surtitre .lbn-etiquette{ height:26px; font-size:10.5px; letter-spacing:.1em; }
	.lbn-hero-titre{ font-size:40px; }
	.lbn-hero-visuel{ margin-top:14px; }
	.lbn-hero-panneau{ height:200px; }
	.lbn-composeur{ margin:-56px 8px 0; padding:14px; }
	.lbn-composeur-pastille{ height:26px; padding:0 10px; font-size:11.5px; }
	.lbn-composeur-depuis{ display:none; }
	.lbn-composeur-tete{ margin-bottom:8px; }
	.lbn-composeur-titre{ font-size:14px; }
	.lbn-composeur-champs{ grid-template-columns:minmax(0,1fr); gap:10px; margin-top:10px; }
	.lbn-composeur-dep{ display:none; }
	.lbn-composeur.est-saisi .lbn-composeur-dep{ display:flex; }
	.lbn-composeur-res{ display:none; }
	.lbn-composeur.est-saisi .lbn-composeur-res{ display:flex; }
	.lbn-composeur .lbn-btn{ margin-top:10px; }
	.lbn-hero-preuves{ gap:8px; }
	.lbn-tuile-chiffre{ height:76px; padding:8px 10px; }
	.lbn-tuile-chiffre b{ font-size:24px; }
	.lbn-tuile-chiffre--date b{ font-size:16px; }
	.lbn-tuile-chiffre span{ font-size:12px; }
}

/* =====================================================================
   Sections de l'accueil
   ===================================================================== */
.lbn-section{ padding-block:56px; position:relative; }
.lbn-section--blanc{ background-color:var(--sb-surface); }
.lbn-section--certificat{ background-color:var(--sb-certificat); }
.lbn-section--nuit{ background-color:var(--sb-nuit); color:#fff; }
.lbn-section--bleu{ background-color:var(--sb-bleu-plaque); color:#fff; }
.lbn-section-tete{ margin-bottom:28px; max-width:760px; }
.lbn-section-tete--ligne{ max-width:none; display:flex; align-items:flex-end; justify-content:space-between; gap:24px; flex-wrap:wrap; }
.lbn-h2{ font-size:30px; line-height:1.08; }
.lbn-section-chapo{ margin-top:8px; font-size:17px; line-height:1.5; color:var(--sb-encre-douce); max-width:64ch; }
.lbn-section--nuit .lbn-h2,.lbn-section--bleu .lbn-h2{ color:#fff; }
.lbn-section--nuit .lbn-section-chapo{ color:var(--lbn-sur-nuit); }
.lbn-surtitre--clair{ font:600 12px/1 var(--sb-texte); letter-spacing:.14em; text-transform:uppercase; color:var(--sb-jaune-etoile); margin-bottom:12px; }
@media (min-width:1800px){ .lbn-section{ padding-block:72px; } .lbn-h2{ font-size:36px; } }
@media (max-width:760px){ .lbn-section{ padding-block:44px; } .lbn-h2{ font-size:24px; } .lbn-section-chapo{ font-size:16px; } .lbn-section-tete{ margin-bottom:22px; } }

/* Cartes d'article */
.lbn-carte{ display:flex; flex-direction:column; height:100%; background:#fff; border-radius:18px; overflow:hidden; box-shadow:var(--sb-ombre-1); color:var(--sb-encre); text-decoration:none; transition:box-shadow .25s ease, transform .25s ease; }
.lbn-carte:hover{ box-shadow:var(--sb-ombre-2); text-decoration:none; }
.lbn-carte:hover .lbn-carte-img{ transform:scale(1.03); }
.lbn-carte:hover .lbn-etiquette--photo{ transform:translateY(-2px); }
.lbn-carte-photo{ position:relative; display:block; aspect-ratio:16/10; overflow:hidden; background:var(--sb-certificat); flex-shrink:0; }
.lbn-carte--large .lbn-carte-photo{ aspect-ratio:3/2; }
.lbn-carte-img,.lbn-carte-photo > img,.lbn-carte-photo .lbn-repli{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.lbn-carte-corps{ display:flex; flex-direction:column; gap:8px; padding:18px 20px 18px; flex:1; }
.lbn-carte-titre{ font-size:19px; line-height:1.2; font-stretch:87%; }
.lbn-carte--large .lbn-carte-titre{ font-size:22px; }
.lbn-carte-extrait{ font-size:15px; line-height:1.5; color:var(--sb-encre-douce); display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.lbn-carte-meta{ margin-top:auto; padding-top:10px; border-top:1px solid var(--sb-filet); display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 16px; font-size:14px; font-weight:500; color:var(--sb-encre); }
.lbn-carte-date{ display:inline-flex; gap:4px; align-items:baseline; }
.lbn-grille-3,.lbn-grille-4{ display:grid; gap:24px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.lbn-grille-4{ grid-template-columns:repeat(4,minmax(0,1fr)); }
@media (max-width:1080px){ .lbn-grille-4{ grid-template-columns:repeat(2,minmax(0,1fr)); } .lbn-grille-3{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:640px){ .lbn-grille-3,.lbn-grille-4{ grid-template-columns:minmax(0,1fr); gap:18px; } }

/* 2. Par où commencer */
.lbn-tuiles{ display:grid; gap:24px; grid-template-columns:repeat(4,minmax(0,1fr)); }
.lbn-tuiles--3{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.lbn-tuiles--2{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.lbn-tuiles--1{ grid-template-columns:minmax(0,1fr); max-width:420px; }
.lbn-tuile{ display:flex; flex-direction:column; min-width:0; }
.lbn-tuile-photo{ position:relative; display:block; aspect-ratio:4/5; max-height:300px; width:100%; border-radius:24px; overflow:hidden; background:var(--sb-certificat); box-shadow:var(--sb-ombre-1); transition:box-shadow .25s ease; }
.lbn-tuile-photo:hover{ box-shadow:var(--sb-ombre-2); }
.lbn-tuile-img,.lbn-tuile-photo .lbn-repli{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.lbn-tuile-photo:hover .lbn-tuile-img{ transform:scale(1.03); }
.lbn-tuile-titre{ font-size:21px; margin-top:14px; }
.lbn-tuile-titre a{ color:var(--sb-encre); text-decoration:none; }
.lbn-tuile-titre a:hover{ color:var(--sb-bleu-plaque); }
.lbn-tuile-liens{ list-style:none; margin:8px 0 0; padding:0; display:flex; flex-direction:column; gap:6px; }
.lbn-tuile-liens li{ padding-left:14px; position:relative; font-size:14.5px; line-height:1.35; }
.lbn-tuile-liens li::before{ content:""; position:absolute; left:0; top:.5em; width:6px; height:6px; border-radius:1px; background:var(--sb-jaune-etoile); box-shadow:0 0 0 1px var(--sb-encre); }
.lbn-tuile-liens a{ color:var(--sb-encre); text-decoration:none; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.lbn-tuile-liens a:hover{ color:var(--sb-bleu-plaque); text-decoration:underline; }
@media (min-width:1800px){ .lbn-tuile-photo{ max-height:380px; } }
@media (max-width:1080px){ .lbn-tuiles,.lbn-tuiles--3{ grid-template-columns:repeat(2,minmax(0,1fr)); } .lbn-tuile-photo{ aspect-ratio:16/10; max-height:none; } }
@media (max-width:640px){ .lbn-tuiles,.lbn-tuiles--3,.lbn-tuiles--2{ grid-template-columns:minmax(0,1fr); gap:28px; } .lbn-tuile-photo{ aspect-ratio:16/9; } }

/* 3. Actualités */
.lbn-actus-grille{ display:grid; grid-template-columns:minmax(0,58fr) minmax(0,42fr); gap:24px; align-items:stretch; }
.lbn-actus-grille--fil{ grid-template-columns:minmax(0,1fr); }
.lbn-actu-une{ min-height:380px; }
.lbn-actu-une-photo{ position:relative; flex:1 1 auto; min-height:240px; overflow:hidden; background:var(--sb-certificat); }
.lbn-actu-une-img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.lbn-actu-une:hover .lbn-actu-une-img{ transform:scale(1.03); }
.lbn-pastille-actu{ position:absolute; top:16px; left:16px; z-index:2; display:inline-flex; align-items:center; gap:6px; height:30px; padding:0 13px; border-radius:999px; background:var(--sb-jaune-etoile); color:var(--sb-encre); font:600 12.5px/1 var(--sb-texte); letter-spacing:.06em; box-shadow:0 6px 16px -6px rgba(10,35,87,.45); }
.lbn-actu-une-corps{ display:flex; flex-direction:column; gap:8px; padding:20px 22px 22px; }
.lbn-actu-une-titre{ font-size:24px; line-height:1.15; }
.lbn-fil{ background:#fff; border-radius:18px; box-shadow:var(--sb-ombre-1); padding:20px 22px; display:flex; flex-direction:column; }
.lbn-fil-titre{ font:700 13px/1 var(--sb-texte); letter-spacing:.12em; text-transform:uppercase; color:var(--sb-bleu-plaque); padding-bottom:12px; border-bottom:2px solid var(--sb-encre); }
.lbn-fil-liste{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; flex:1; justify-content:space-between; }
.lbn-fil-liste li + li{ border-top:1px solid var(--sb-filet); }
.lbn-breve{ display:flex; gap:14px; align-items:center; padding:12px 0; color:var(--sb-encre); text-decoration:none; }
.lbn-breve:hover .lbn-breve-titre{ color:var(--sb-bleu-plaque); text-decoration:underline; }
.lbn-breve-img{ width:96px; height:72px; border-radius:12px; object-fit:cover; flex-shrink:0; }
.lbn-breve-corps{ display:flex; flex-direction:column; gap:3px; min-width:0; }
.lbn-breve-corps time{ font:600 12px/1.2 var(--sb-texte); letter-spacing:.06em; color:var(--sb-bleu-plaque); }
.lbn-breve-titre{ font:700 16px/1.25 var(--sb-titre); font-stretch:87%; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.lbn-actus-grille--fil .lbn-fil-liste{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:24px; }
.lbn-actus-grille--fil .lbn-fil-liste li + li{ border-top:0; }
@media (max-width:900px){ .lbn-actus-grille{ grid-template-columns:minmax(0,1fr); } .lbn-actu-une{ min-height:0; } .lbn-actu-une-photo{ aspect-ratio:16/10; min-height:0; } .lbn-actus-grille--fil .lbn-fil-liste{ grid-template-columns:minmax(0,1fr); } }
@media (max-width:640px){ .lbn-actu-une-titre{ font-size:20px; } .lbn-breve-img{ width:84px; height:64px; } }

/* 4. Outil remorque (fond nuit) */
.lbn-outil{ overflow:hidden; }
.lbn-outil-fond{ position:absolute; top:0; right:0; bottom:0; width:58%; }
.lbn-outil-img,.lbn-outil-fond .lbn-repli{ width:100%; height:100%; object-fit:cover; }
.lbn-outil-fond::after{ content:""; position:absolute; inset:0; background:linear-gradient(90deg,var(--sb-nuit) 0%,rgba(10,35,87,.82) 35%,rgba(10,35,87,.70) 100%); }
.lbn-outil-grille{ position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); column-gap:56px; row-gap:16px; align-items:start; }
.lbn-outil-tete{ grid-column:1; grid-row:1; }
.lbn-remorque{ display:contents; }
.lbn-remorque-champs{ grid-column:1; grid-row:2; display:flex; flex-direction:column; gap:12px; }
.lbn-remorque > .lbn-btn{ grid-column:1; grid-row:3; justify-self:start; }
.lbn-remorque-tuiles{ grid-column:2; grid-row:1 / span 2; align-self:end; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.lbn-remorque-verdict{ grid-column:2; grid-row:3; align-self:center; font:700 19px/1.35 var(--sb-titre); font-stretch:87%; color:#fff; }
.lbn-remorque-alerte{ grid-column:2; grid-row:4; display:flex; gap:10px; align-items:flex-start; padding:10px 14px; border-radius:12px; background:rgba(184,52,44,.18); box-shadow:inset 0 0 0 1.5px #F0857D; color:#FFD9D5; font-size:15px; line-height:1.4; }
.lbn-remorque-alerte svg{ flex-shrink:0; color:#F0857D; }
.lbn-remorque-source{ grid-column:2; grid-row:5; display:flex; flex-wrap:wrap; align-items:center; gap:6px 10px; font-size:14px; color:var(--lbn-sur-nuit); }
.lbn-remorque-source svg{ width:18px; height:18px; }
.lbn-remorque-source a{ color:var(--sb-jaune-etoile); font-weight:600; }
.lbn-champ--nuit .lbn-champ-lib{ color:#fff; font-size:14px; }
.lbn-champ--nuit .lbn-case-code{ color:var(--sb-jaune-etoile); }
.lbn-champ--nuit small{ color:var(--lbn-sur-nuit); font-size:12.5px; }
.lbn-champ-unite{ position:relative; display:block; }
.lbn-champ-unite input{ padding-right:44px; font-family:var(--sb-titre); font-stretch:87%; font-weight:700; font-size:19px; font-variant-numeric:tabular-nums; border-color:transparent; }
.lbn-champ-unite span{ position:absolute; right:10px; top:50%; transform:translateY(-50%); padding:0 4px; border-radius:4px; background:#fff; font-weight:600; color:var(--sb-encre-douce); font-size:15px; pointer-events:none; }
.lbn-tuile-permis{ background:linear-gradient(180deg,#fff,#EEF2FA); border-radius:14px; box-shadow:var(--sb-ombre-plaque); padding:18px 12px 14px; display:flex; flex-direction:column; align-items:center; text-align:center; gap:10px; transition:opacity .3s ease, box-shadow .3s ease, transform .3s ease; color:var(--sb-encre); }
.lbn-tuile-permis-plaque{ font:620 56px/1 var(--sb-titre); font-stretch:75%; letter-spacing:.04em; text-shadow:0 1px 0 rgba(255,255,255,.9), 0 -1px 0 rgba(0,0,0,.18); }
.lbn-tuile-permis-lib{ font-size:13.5px; line-height:1.35; color:var(--sb-encre-douce); }
.lbn-remorque.a-verdict .lbn-tuile-permis{ opacity:.35; }
.lbn-remorque.a-verdict .lbn-tuile-permis.est-allume{ opacity:1; transform:translateY(-4px); box-shadow:inset 0 0 0 1.5px var(--sb-encre), 0 0 0 4px var(--sb-jaune-etoile), 0 18px 40px -12px rgba(0,0,0,.5); }
@media (max-width:1080px){
	.lbn-outil-fond{ width:100%; opacity:.5; }
	.lbn-outil-grille{ grid-template-columns:minmax(0,1fr); }
	.lbn-outil-tete,.lbn-remorque-champs,.lbn-remorque > .lbn-btn,.lbn-remorque-tuiles,.lbn-remorque-verdict,.lbn-remorque-alerte,.lbn-remorque-source{ grid-column:1; grid-row:auto; }
	.lbn-remorque-tuiles{ margin-top:8px; }
}
@media (max-width:640px){
	.lbn-remorque > .lbn-btn{ justify-self:stretch; }
	.lbn-remorque-tuiles{ gap:8px; }
	.lbn-tuile-permis{ padding:12px 6px 10px; gap:6px; }
	.lbn-tuile-permis-plaque{ font-size:36px; }
	.lbn-tuile-permis-lib{ font-size:11.5px; }
	.lbn-remorque-verdict{ font-size:17px; }
}

/* 6. Lire sa carte grise en 8 cases */
.lbn-cases-grille{ display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:56px; align-items:center; }
.lbn-cases-visuel{ margin:0; transform:rotate(-4deg); filter:drop-shadow(0 28px 40px rgba(10,35,87,.28)); }
.lbn-cases-visuel img{ width:100%; height:auto; max-height:440px; object-fit:contain; }
.lbn-cases-liste{ list-style:none; margin:20px 0 0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 20px; }
.lbn-cases-liste a{ display:grid; grid-template-columns:26px 42px minmax(0,1fr); align-items:center; gap:8px; padding:9px 4px; border-bottom:1px solid rgba(10,35,87,.14); color:var(--sb-encre); text-decoration:none; font-size:14.5px; line-height:1.3; min-height:56px; }
.lbn-cases-liste a:hover span:last-child{ color:var(--sb-bleu-plaque); text-decoration:underline; }
.lbn-cases-num{ width:26px; height:26px; border-radius:50%; background:var(--sb-bleu-plaque); color:#fff; display:inline-flex; align-items:center; justify-content:center; font:700 13px/1 var(--sb-texte); }
.lbn-cases-liste b{ font:800 18px/1 var(--sb-titre); font-stretch:75%; color:var(--sb-bleu-plaque); }
@media (max-width:1080px){ .lbn-cases-grille{ grid-template-columns:minmax(0,1fr); gap:28px; } .lbn-cases-visuel{ max-width:560px; } }
@media (max-width:640px){ .lbn-cases-liste{ grid-template-columns:minmax(0,1fr); gap:0; } .lbn-cases-visuel{ transform:rotate(-2.5deg); margin-inline:6px; } }

/* 8. Chiffres clés (bleu de bande) */
.lbn-chiffres{ padding-block:52px; }
.lbn-chiffres-grille{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.lbn-chiffres-grille--3{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.lbn-chiffres-grille--2{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.lbn-chiffres-grille--1{ grid-template-columns:minmax(0,1fr); }
.lbn-chiffre{ display:flex; flex-direction:column; gap:10px; padding:8px 28px; border-left:1px solid rgba(255,255,255,.22); }
.lbn-chiffre:first-child{ border-left:0; padding-left:0; }
a.lbn-chiffre{ color:#fff; text-decoration:none; }
a.lbn-chiffre:hover span{ text-decoration:underline; text-underline-offset:3px; }
.lbn-chiffre b{ font:800 60px/1 var(--sb-titre); font-stretch:87%; color:var(--sb-jaune-etoile); font-variant-numeric:tabular-nums lining-nums; letter-spacing:-.01em; white-space:nowrap; }
.lbn-chiffre b time{ font-size:.62em; }
.lbn-chiffre span{ font-size:15px; line-height:1.35; color:#fff; max-width:24ch; }
@media (min-width:1800px){ .lbn-chiffre b{ font-size:72px; } }
@media (max-width:900px){ .lbn-chiffres-grille,.lbn-chiffres-grille--3{ grid-template-columns:repeat(2,minmax(0,1fr)); row-gap:24px; } .lbn-chiffre:nth-child(odd){ border-left:0; padding-left:0; } }
@media (max-width:640px){ .lbn-chiffre{ padding:4px 14px; } .lbn-chiffre b{ font-size:44px; } .lbn-chiffre span{ font-size:14px; } }

/* 9. La rédaction — carte grise de la rédaction */
.lbn-redaction-grille{ display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:56px; align-items:center; }
.lbn-redaction-visages{ list-style:none; margin:22px 0 0; padding:0; display:flex; }
.lbn-redaction-visages li + li{ margin-left:-18px; }
.lbn-redaction-visages a{ display:block; border-radius:50%; transition:transform .2s ease; }
.lbn-redaction-visages a:hover{ transform:translateY(-3px); }
.lbn-redaction-visages .lbn-avatar{ width:88px; height:88px; box-shadow:0 0 0 4px var(--sb-certificat), 0 0 0 6px var(--sb-bleu-plaque); }
.lbn-redaction-visages .lbn-avatar--initiales{ box-shadow:inset 0 0 0 1.5px var(--sb-encre), 0 0 0 4px var(--sb-certificat); border-radius:50%; }
.lbn-redaction-noms{ margin-top:16px; font-size:16px; color:var(--sb-encre-douce); max-width:40ch; }
.lbn-redaction-noms a{ color:var(--sb-encre); font-weight:600; }
.lbn-certificat{ background:#fff; border-radius:18px; box-shadow:var(--sb-ombre-2); padding:24px 26px 26px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; position:relative; overflow:hidden; }
.lbn-certificat::before{ content:""; position:absolute; left:0; top:0; bottom:0; width:6px; background:var(--sb-bleu-plaque); }
.lbn-certificat-titre{ grid-column:1 / -1; font:700 12px/1 var(--sb-texte); letter-spacing:.14em; text-transform:uppercase; color:var(--sb-encre-douce); padding-bottom:14px; border-bottom:2px solid var(--sb-encre); margin-bottom:4px; }
.lbn-certificat .lbn-case{ padding:12px 14px 12px 0; border-bottom:1px solid var(--sb-filet); }
.lbn-certificat .lbn-case:nth-of-type(even){ padding-left:14px; border-left:1px solid var(--sb-filet); }
.lbn-certificat .lbn-case--large{ grid-column:1 / -1; padding-left:0 !important; border-left:0 !important; }
.lbn-certificat .lbn-btn{ grid-column:1 / -1; justify-self:start; margin-top:18px; }
@media (max-width:900px){ .lbn-redaction-grille{ grid-template-columns:minmax(0,1fr); gap:28px; } }
@media (max-width:520px){ .lbn-certificat{ grid-template-columns:minmax(0,1fr); padding:20px 18px 22px 22px; } .lbn-certificat .lbn-case:nth-of-type(even){ padding-left:0; border-left:0; } .lbn-redaction-visages .lbn-avatar{ width:72px; height:72px; } }

/* Bloc « sites voisins » (mu-plugin) : petit, pâle, discret, au-dessus du pied */
/* Corrections n°2 : le mu-plugin impose 1120 px + 20 px (!important) → réaligné sur le conteneur du thème, posé juste au-dessus du pied. */
body .lbn-voisins{ max-width:var(--sb-conteneur) !important; margin:0 auto !important; padding:12px var(--sb-gouttiere) 14px !important; font-size:13px; line-height:1.5; color:var(--sb-encre-douce); opacity:.85; }
.lbn-voisins a{ color:var(--sb-encre-douce); }
.lbn-voisins h2,.lbn-voisins h3,.lbn-voisins p:first-child{ font-size:13px; font-weight:600; margin:0 0 6px; }
.lbn-voisins ul{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:4px 16px; }

/* =====================================================================
   Pied de page (bloc figé) — habillage nuit, mini-plaque inversée, anneau en filigrane
   ===================================================================== */
.sbt-footer{ position:relative; overflow:hidden; background:var(--sb-nuit); padding-block:56px 28px; margin-top:0; }
.sbt-footer::after{ content:""; position:absolute; right:32px; bottom:24px; width:180px; height:180px; background:url(../svg/anneau-etoiles-filigrane.svg) center/contain no-repeat; opacity:.10; pointer-events:none; }
@media (max-width:760px){ .sbt-footer::after{ width:132px; height:132px; right:16px; bottom:16px; } }
/* Corrections n°3 : « Une question ? » vit dans la colonne du logo ; le bandeau du haut est masqué ; colonnes de hauteurs proches. */
.sbt-footer .sbt-footer-cta{ display:none; }
.lbn-footer-question{ grid-column:1; grid-row:2; align-self:end; display:flex; flex-direction:column; align-items:flex-start; gap:6px; padding-top:4px; }
.lbn-footer-question-titre{ font:800 18px/1.2 var(--sb-titre); font-stretch:87%; color:#fff; }
.lbn-footer-question p:not(.lbn-footer-question-titre){ font-size:14.5px; line-height:1.45; color:var(--lbn-sur-nuit); max-width:32ch; }
.lbn-footer-question .sbt-btn{ margin-top:8px; display:inline-flex; align-items:center; }
@media (min-width:981px){ .sbt-footer-grille > .sbt-footer-colonne:not(:first-child){ grid-row:1 / span 2; } }
@media (max-width:980px){ .lbn-footer-question{ grid-column:1 / -1; grid-row:auto; } }
.sbt-footer .sbt-conteneur{ position:relative; z-index:1; }
.sbt-footer a{ color:var(--lbn-sur-nuit); }
.sbt-footer a:hover{ color:#fff; text-decoration:underline; }
.sbt-footer-cta{ background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14); border-radius:18px; margin-bottom:40px; }
.sbt-footer-cta .sbt-t3{ font-family:var(--sb-titre); font-stretch:87%; font-weight:800; font-size:22px; }
.sbt-footer-cta p{ color:var(--lbn-sur-nuit); }
.sbt-footer .sbt-btn,.sbt-btn{ background:var(--sb-jaune-etoile); color:var(--sb-encre); border-radius:12px; min-height:52px; padding:0 24px; font-family:var(--sb-texte); font-weight:600; }
.sbt-footer .sbt-btn:hover{ background:var(--lbn-jaune-survol); color:var(--sb-encre); text-decoration:none; }
.sbt-footer-grille{ grid-template-columns:1.3fr 1fr 1fr 1fr; border-bottom-color:rgba(255,255,255,.14); }
.sbt-footer-logo{ display:flex; align-items:center; gap:10px; font-family:var(--sb-titre); font-stretch:87%; font-weight:800; font-size:22px; }
.sbt-footer-logo::before{ content:""; width:64px; height:28px; flex-shrink:0; background:url(../svg/miniplaque-inverse.svg) center/contain no-repeat; }
.sbt-footer-desc{ color:var(--lbn-sur-nuit); font-size:15px; max-width:30ch; }
.sbt-footer-colonne .sbt-t4{ font-family:var(--sb-texte); font-weight:600; font-size:12px; letter-spacing:.14em; color:var(--sb-jaune-etoile); }
.sbt-footer-colonne ul a{ font-size:15px; line-height:1.4; }
.lbn-footer-mentions{ grid-column:1 / -1; order:99; padding-top:20px; border-top:1px solid rgba(255,255,255,.14); display:flex; flex-wrap:wrap; gap:4px 24px; font-size:14px; line-height:1.5; color:var(--lbn-sur-nuit); }
.lbn-footer-mentions a{ color:#fff; font-weight:600; }
.sbt-footer-bas{ color:#9FB0D2; font-size:13px; }
@media (max-width:980px){ .sbt-footer-grille{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:560px){ .sbt-footer-grille{ grid-template-columns:minmax(0,1fr); } .sbt-footer{ padding-block:44px 24px; } }

/* =====================================================================
   ARTICLE — en-tête ENTETE-certificat-a-cases-codees-photo-bordee-bande-bleue-mini-plaque-a-cheval
   ===================================================================== */
/* Corrections n°2 : l'en-tête vit dans la colonne de lecture (single.php) ; sa bande « certificat » s'étend sur toute
   la largeur derrière la barre latérale, qui démarre ainsi sous le menu et tient entière à l'écran dès l'arrivée. */
.sbt-article-mise-en-page{ column-gap:36px; padding-top:8px; padding-bottom:72px; }
.sbt-article{ overflow-x:clip; } /* la bande pleine largeur ne crée jamais de défilement horizontal (clip ≠ hidden : le collant reste actif) */
.lbn-art-mise{ position:relative; isolation:isolate; padding-top:0; }
.lbn-art-entete{ position:relative; padding:0 0 30px; margin-bottom:36px; }
.lbn-art-entete::before{ content:""; position:absolute; z-index:-1; top:0; bottom:0; left:50%; width:200vw; margin-left:-100vw; background:var(--sb-certificat) var(--lbn-prismes); pointer-events:none; }
.lbn-art-entete .sbt-fil-ariane{ padding-block:14px 12px; font-size:13px; }
.lbn-art-grille{ display:grid; grid-template-columns:minmax(0,1fr) 248px; gap:28px; align-items:stretch; }
.lbn-art-texte{ min-width:0; }
.lbn-art-titre{ font-size:40px; line-height:1.06; margin-top:12px; }
.lbn-art-chapo{ margin-top:12px; font-size:17.5px; line-height:1.5; color:var(--sb-encre-douce); max-width:62ch; }
.lbn-art-cases{ display:flex; flex-wrap:nowrap; justify-content:space-between; margin-top:22px; background:#fff; border-radius:14px; box-shadow:var(--sb-ombre-1); padding:12px 4px; }
.lbn-art-cases .lbn-case{ padding:4px 13px; border-left:1px solid var(--sb-filet); justify-content:center; flex:0 1 auto; min-width:0; }
.lbn-art-cases .lbn-case:first-child{ border-left:0; }
.lbn-art-cases .lbn-case-code{ font-size:10.5px; letter-spacing:.1em; white-space:nowrap; }
.lbn-art-cases .lbn-case-val{ font-size:14.5px; white-space:nowrap; }
.lbn-art-cases .lbn-case--auteur .lbn-case-val{ white-space:normal; }
.lbn-art-cases .lbn-avatar{ width:30px; height:30px; }
.lbn-art-auteur{ display:flex; align-items:center; gap:8px; line-height:1.25; }
.lbn-art-auteur a{ font-weight:600; color:var(--sb-encre); }
.lbn-art-visuel{ position:relative; display:flex; flex-direction:column; margin-top:40px; }
.lbn-art-photo{ position:relative; flex:1 1 auto; min-height:210px; border-radius:22px; overflow:hidden; background:var(--sb-bleu-plaque); padding-left:12px; box-shadow:var(--sb-ombre-2); }
.lbn-art-photo img,.lbn-art-photo .lbn-repli{ position:absolute; top:0; right:0; bottom:0; left:12px; width:calc(100% - 12px); height:100%; object-fit:cover; border-radius:0 20px 20px 0; display:block; }
.lbn-art-plaque{ position:absolute; right:12px; bottom:-14px; width:168px; z-index:2; }
@media (min-width:1081px){ .sbt-rail{ margin-top:16px; } }
@media (min-width:1800px){ .lbn-art-titre{ font-size:44px; } .lbn-art-grille{ grid-template-columns:minmax(0,1fr) 264px; } }
/* Corrections n°4 — desktop : le titre prend toute la largeur ; dessous, le chapô à gauche et la photo à droite dans un
   cadre PAYSAGE 16:9 (les photos à la une sont des paysages : une plaque entière tient dans le cadre, centrée). */
@media (min-width:1081px){
	.lbn-art-grille{ grid-template-columns:minmax(0,1fr) 330px; grid-template-areas:"etiq etiq" "titre titre" "chapo visuel"; column-gap:28px; row-gap:0; align-items:start; }
	.lbn-art-texte{ display:contents; }
	.lbn-art-texte > .lbn-etiquette{ grid-area:etiq; justify-self:start; }
	.lbn-art-titre{ grid-area:titre; }
	.lbn-art-chapo{ grid-area:chapo; margin-top:16px; }
	.lbn-art-visuel{ grid-area:visuel; margin-top:18px; display:block; }
	.lbn-art-photo{ flex:none; min-height:0; aspect-ratio:16/9; }
	.lbn-art-photo img,.lbn-art-photo .lbn-repli{ object-position:center; }
	.lbn-art-plaque{ width:156px; bottom:-15px; }
}
@media (min-width:1800px){ .lbn-art-grille{ grid-template-columns:minmax(0,1fr) 340px; } }
@media (min-width:1081px) and (max-width:1200px){
	.lbn-art-cases{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:4px 0; }
	.lbn-art-cases .lbn-case{ padding:10px 14px; border-left:0; border-top:1px solid var(--sb-filet); }
	.lbn-art-cases .lbn-case:nth-child(-n+3){ border-top:0; }
	.lbn-art-cases .lbn-case:not(:nth-child(3n+1)){ border-left:1px solid var(--sb-filet); }
}
@media (max-width:1080px){
	.lbn-art-entete{ display:flex; flex-direction:column; padding-bottom:0; margin-bottom:84px; }
	.lbn-art-grille{ display:contents; }
	.lbn-art-texte{ order:1; }
	.lbn-art-cases{ order:2; }
	.lbn-art-visuel{ order:3; margin-top:22px; margin-bottom:-56px; }
	.lbn-art-photo{ flex:none; min-height:0; }
	.lbn-art-photo img,.lbn-art-photo .lbn-repli{ position:static; width:100%; height:auto; aspect-ratio:16/10; }
}
@media (max-width:760px){
	/* Corrections n°3 : à 390, la photo (et sa mini-plaque) passe AVANT la carte d'informations : visible sans défiler. */
	.lbn-art-entete{ padding-bottom:24px; margin-bottom:32px; }
	.lbn-art-texte{ display:contents; }
	.lbn-art-texte > .lbn-etiquette{ order:1; align-self:flex-start; }
	.lbn-art-titre{ order:2; }
	.lbn-art-visuel{ order:3; margin-top:16px; margin-bottom:0; }
	.lbn-art-chapo{ order:4; margin-top:26px; }
	.lbn-art-cases{ order:5; margin-top:18px; }
	.lbn-art-titre{ font-size:32px; }
	.lbn-art-chapo{ font-size:17px; }
	.lbn-art-cases{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); padding:4px 0; }
	.lbn-art-cases .lbn-case{ padding:10px 14px; border-left:0; border-top:1px solid var(--sb-filet); }
	.lbn-art-cases .lbn-case:nth-child(-n+2){ border-top:0; }
	.lbn-art-cases .lbn-case:nth-child(even){ border-left:1px solid var(--sb-filet); }
	.lbn-art-cases .lbn-case--auteur{ grid-column:1 / -1; border-left:0 !important; }
	.lbn-art-cases .lbn-case-val{ white-space:normal; }
	.lbn-art-plaque{ width:160px; right:14px; bottom:-16px; }
	.lbn-art-photo{ padding-left:10px; border-radius:20px; }
	.lbn-art-photo img,.lbn-art-photo .lbn-repli{ border-radius:0 18px 18px 0; }
}

/* Mise en page corps + rail (bloc figé) : gouttière 56 px, rail collant sous l'en-tête */
.sbt-rail{ top:calc(var(--lbn-entete) + 16px); gap:12px; padding-left:20px; }
.sbt-rail-carte{ border-radius:18px; box-shadow:var(--sb-ombre-1); border-color:var(--sb-filet); }
.sbt-rail-carte--sommaire{ padding:12px 14px; }
.sbt-rail .sbt-sommaire{ border:0; padding:0; background:transparent; border-radius:0; }
.sbt-sommaire{ border-left-color:var(--sb-bleu-plaque); }
.sbt-sommaire-titre{ font:700 12px/1 var(--sb-texte); letter-spacing:.14em; text-transform:uppercase; color:var(--sb-bleu-plaque); }
.sbt-rail .sbt-sommaire ol{ margin-top:8px; gap:0; }
.sbt-rail .sbt-sommaire li a{ font-size:13.5px; line-height:1.25; padding:3px 0; gap:9px; align-items:center; }
.sbt-rail .sbt-sommaire-libelle{ min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.sbt-sommaire-num{ border-radius:5px; width:24px; height:18px; background:#fff; box-shadow:inset 0 0 0 1.2px var(--sb-encre); font-family:var(--sb-titre); font-stretch:75%; font-weight:800; font-size:12px; }
.sbt-sommaire li a.est-lu .sbt-sommaire-num,.sbt-sommaire li a:hover .sbt-sommaire-num{ background:var(--sb-bleu-plaque); color:#fff; box-shadow:none; }
.sbt-rail-carte.lbn-rail-form{ padding:0; overflow:hidden; }

/* Carte « Une question à la rédaction » */
.lbn-question{ display:block; background:#fff; }
.lbn-question-tete{ display:flex; gap:12px; align-items:center; background:var(--sb-bleu-plaque); color:#fff; padding:12px 16px; }
.lbn-question-ue{ width:16px; height:32px; flex-shrink:0; }
.lbn-question-titre{ font:700 14.5px/1.3 var(--sb-titre); font-stretch:87%; color:#fff; }
.lbn-question-titre span{ font-weight:500; color:#DCE5F7; }
.lbn-question-corps{ display:flex; flex-direction:column; gap:10px; padding:14px 16px 14px; }
.lbn-question-ligne{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:10px; }
.lbn-question input,.lbn-question textarea{ min-height:44px; padding:10px 12px; font-size:15px; }
.lbn-question textarea{ height:auto; }
.lbn-consent{ display:flex; gap:9px; align-items:flex-start; font-size:13px; line-height:1.35; color:var(--sb-encre-douce); cursor:pointer; }
.lbn-consent input{ width:18px; height:18px; margin:1px 0 0; flex-shrink:0; accent-color:var(--sb-bleu-plaque); }
.lbn-question .lbn-btn{ min-height:56px; }
.lbn-question-rgpd{ font-size:12px; line-height:1.4; color:var(--sb-encre-douce); }
/* Corrections n°1 : carte du rail compacte — sommaire + formulaire tiennent ENTIERS sous l'en-tête à 1440×780. */
.lbn-rail-form .lbn-question-tete{ padding:10px 14px; gap:10px; }
.lbn-rail-form .lbn-question-ue{ width:14px; height:28px; }
.lbn-rail-form .lbn-question-titre{ font-size:14px; line-height:1.28; }
.lbn-rail-form .lbn-question-corps{ gap:8px; padding:12px 14px; }
.lbn-rail-form .lbn-question-ligne{ gap:8px; }
.lbn-rail-form input[type=text],.lbn-rail-form input[type=email]{ min-height:42px; padding:9px 11px; }
.lbn-rail-form textarea{ min-height:0; height:62px; padding:9px 11px; }
.lbn-rail-form .lbn-consent{ font-size:12.5px; line-height:1.3; }
.lbn-rail-form .lbn-question-rgpd{ font-size:12px; line-height:1.35; }
.lbn-question-rgpd a{ color:var(--sb-encre-douce); }
.lbn-question-erreur{ font-size:13.5px; color:var(--sb-refus); font-weight:500; }
.lbn-question-merci{ display:flex; gap:10px; align-items:flex-start; padding:18px 16px; color:var(--sb-conforme); font-size:15px; line-height:1.45; }
.lbn-question-merci p{ color:var(--sb-encre); }
.lbn-question.est-envoye .lbn-question-corps{ display:none; }
.lbn-question-sujets{ border:0; padding:0; margin:0 0 4px; display:flex; flex-wrap:wrap; gap:8px; }
.lbn-question-sujets legend{ width:100%; margin-bottom:8px; }
.lbn-puce-choix{ position:relative; cursor:pointer; }
.lbn-puce-choix input{ position:absolute; opacity:0; inset:0; margin:0; cursor:pointer; }
.lbn-puce-choix span{ display:inline-flex; align-items:center; min-height:38px; padding:0 14px; border-radius:999px; box-shadow:inset 0 0 0 1.5px var(--sb-filet); font-size:14.5px; font-weight:500; background:#fff; transition:all .15s ease; }
.lbn-puce-choix input:checked + span{ background:var(--sb-bleu-plaque); color:#fff; box-shadow:none; }
.lbn-puce-choix input:focus-visible + span{ outline:3px solid var(--sb-bleu-plaque); outline-offset:2px; }

/* Corps d'article : rythme, liens, repères, étapes, fiches */
.sbt-article-corps{ font-size:18px; line-height:1.68; }
.sbt-article-corps > *:first-child{ margin-top:0; }
.sbt-article-corps h2{ font-size:30px; margin-top:1.9em; scroll-margin-top:calc(var(--lbn-entete) + 20px); }
.sbt-article-corps h3{ font-size:21px; font-stretch:87%; }
.sbt-article-corps a{ color:var(--sb-bleu-plaque); }
.sbt-article-corps strong{ font-weight:600; }
.sbt-article-corps img{ border-radius:24px; box-shadow:var(--sb-ombre-1); }
.sbt-article-corps ul,.sbt-article-corps ol{ list-style:none; margin:1.4em 0; padding:0; display:grid; gap:10px; }
.sbt-article-corps ul > li,.sbt-article-corps ol > li{ display:block; position:relative; list-style:none; margin:0; }
.sbt-article-corps ul > li{ background:#fff; border-radius:12px; box-shadow:inset 0 0 0 1px var(--sb-filet); padding:12px 16px 12px 50px; line-height:1.5; }
.sbt-article-corps ul > li::before{ content:""; position:absolute; left:14px; top:13px; width:24px; height:24px; border-radius:7px; background:var(--sb-bleu-plaque) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%23FFC61A' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat; }
/* Corrections n°2 : la liste à puces du texte = UN encadré (carte à bande bleue), plus une pile de cartes. */
.sbt-article-corps ul.lbn-encadre-liste{ gap:0; padding:10px 22px 10px 28px; background:#fff; border-radius:18px; box-shadow:var(--sb-ombre-1), inset 6px 0 0 var(--sb-bleu-plaque); }
.sbt-article-corps ul.lbn-encadre-liste > li{ background:transparent; box-shadow:none; border-radius:0; padding:11px 0 11px 38px; border-bottom:1px solid var(--sb-filet); }
.sbt-article-corps ul.lbn-encadre-liste > li:last-child{ border-bottom:0; }
.sbt-article-corps ul.lbn-encadre-liste > li::before{ left:0; top:12px; }
/* Phrase-clé du texte mise en exergue (filtre the_content, aucun mot ajouté). */
@media (max-width:600px){ .sbt-article-corps ul.lbn-encadre-liste{ padding:8px 16px 8px 22px; } }

/* =====================================================================
   Corrections n°3 — blocs du corps (filtre lbn_corps_blocs) : sections en cases numérotées, alerte, fiche,
   sources, étapes, chiffre clé. Tout est tiré du texte ; ici seulement l'habillage.
   ===================================================================== */
.sbt-article-corps{ counter-reset:lbn-sec; }
.sbt-article-corps h2[id^="sbt-h2-"]{ counter-increment:lbn-sec; display:flex; align-items:flex-start; gap:14px; }
.sbt-article-corps h2[id^="sbt-h2-"]::before{ content:counter(lbn-sec, decimal-leading-zero); flex:none; display:inline-flex; align-items:center; justify-content:center; min-width:48px; height:36px; margin-top:-1px; padding:0 8px 0 13px; border-radius:7px; background:#fff; box-shadow:inset 0 0 0 1.5px var(--sb-encre), inset 6px 0 0 var(--sb-bleu-plaque); font:800 19px/1 var(--sb-titre); font-stretch:75%; letter-spacing:.03em; color:var(--sb-encre); font-variant-numeric:tabular-nums lining-nums; }
.lbn-encadre-alerte,.lbn-encadre-fiche,.lbn-encadre-sources{ margin:2.2em 0; padding:22px 26px 6px 32px; border-radius:18px; }
.lbn-encadre-alerte > h2,.lbn-encadre-fiche > h2,.lbn-encadre-sources > h2{ margin-top:0 !important; font-size:24px !important; }
.lbn-encadre-alerte{ background:#FFF4F2; box-shadow:inset 6px 0 0 var(--sb-refus), inset 0 0 0 1px #F2C9C4; }
.lbn-encadre-alerte > h2::before{ box-shadow:inset 0 0 0 1.5px var(--sb-refus), inset 6px 0 0 var(--sb-refus) !important; color:var(--sb-refus) !important; }
.lbn-encadre-fiche{ background:#fff; box-shadow:var(--sb-ombre-1), inset 6px 0 0 var(--sb-bleu-plaque); }
.lbn-encadre-fiche + .lbn-encadre-fiche{ margin-top:16px; }
.lbn-encadre-sources{ background:var(--sb-certificat); box-shadow:inset 0 0 0 1.5px var(--sb-bleu-plaque); font-size:16px; }
.sbt-article-corps h3.lbn-etape-h3{ display:flex; align-items:center; gap:12px; margin-top:1.6em; padding:11px 16px; border-radius:12px; background:#fff; box-shadow:inset 0 0 0 1px var(--sb-filet), inset 5px 0 0 var(--sb-bleu-plaque); font-size:19px; line-height:1.3; }
.lbn-infographie-chiffre{ display:grid; grid-template-columns:minmax(0,auto) minmax(0,1fr); align-items:center; gap:6px 22px; margin:1.6em 0; padding:18px 22px; background:#fff; border-radius:16px; border-top:3px solid var(--sb-bleu-plaque); box-shadow:var(--sb-ombre-1); }
.lbn-infographie-chiffre > b{ font:800 34px/1.05 var(--sb-titre); font-stretch:87%; letter-spacing:-.01em; color:var(--sb-bleu-plaque); font-variant-numeric:tabular-nums lining-nums; white-space:nowrap; max-width:14ch; }
.sbt-article-corps .lbn-infographie-chiffre > p{ margin:0; font-size:16.5px; line-height:1.5; color:var(--sb-encre); }
/* Corrections n°4 : encadré « Règle », fiches de sites, pastilles d'énumération, deux colonnes « X ou Y ». */
.lbn-encadre-regle{ margin:2.2em 0; padding:22px 26px 6px 32px; border-radius:18px; background:#EEF3FC; box-shadow:inset 6px 0 0 var(--sb-bleu-plaque), inset 0 0 0 1px #CAD7F0; }
.lbn-encadre-regle > h2{ margin-top:0 !important; font-size:24px !important; }
.lbn-encadre-sites{ display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr)); gap:12px; margin:1.4em 0; }
.lbn-encadre-site{ display:flex; flex-direction:column; gap:6px; padding:14px 16px 14px 20px; background:#fff; border-radius:14px; box-shadow:var(--sb-ombre-1), inset 5px 0 0 var(--sb-bleu-plaque); }
.lbn-encadre-site > b{ font:800 17px/1.2 var(--sb-titre); font-stretch:87%; color:var(--sb-bleu-plaque); overflow-wrap:anywhere; }
.sbt-article-corps .lbn-encadre-site > p{ margin:0; font-size:15.5px; line-height:1.5; }
.lbn-infographie-pastilles{ display:flex; flex-wrap:wrap; gap:8px; margin:-.4em 0 1.4em; }
.lbn-infographie-pastilles span{ display:inline-flex; align-items:center; min-height:34px; padding:0 14px 0 12px; border-radius:8px; background:#fff; box-shadow:inset 0 0 0 1.5px var(--sb-encre), inset 5px 0 0 var(--sb-bleu-plaque); font:700 15px/1.2 var(--sb-titre); font-stretch:87%; color:var(--sb-encre); padding-left:16px; }
.lbn-infographie-duel{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:16px; margin:1.2em 0 1.6em; }
.lbn-duel-col{ padding:16px 18px 4px; background:#fff; border-radius:16px; box-shadow:var(--sb-ombre-1); border-top:4px solid var(--sb-bleu-plaque); }
.lbn-duel-col + .lbn-duel-col{ border-top-color:var(--sb-jaune-etoile); }
.sbt-article-corps .lbn-duel-col > p{ font-size:16px; line-height:1.55; }
.sbt-article-corps .lbn-duel-tete{ margin:0 0 8px; font:800 18px/1.2 var(--sb-titre); font-stretch:87%; color:var(--sb-encre); }
@media (max-width:600px){ .lbn-encadre-regle{ padding:18px 16px 4px 22px; } .lbn-encadre-regle > h2{ font-size:21px !important; } .lbn-infographie-duel{ grid-template-columns:minmax(0,1fr); } }
@media (max-width:600px){
	.lbn-encadre-alerte,.lbn-encadre-fiche,.lbn-encadre-sources{ padding:18px 16px 4px 22px; }
	.lbn-encadre-alerte > h2,.lbn-encadre-fiche > h2,.lbn-encadre-sources > h2{ font-size:21px !important; }
	.sbt-article-corps h2[id^="sbt-h2-"]{ gap:11px; }
	.sbt-article-corps h2[id^="sbt-h2-"]::before{ min-width:40px; height:30px; font-size:16px; }
	.lbn-infographie-chiffre{ grid-template-columns:minmax(0,1fr); padding:16px 18px; }
	.lbn-infographie-chiffre > b{ font-size:28px; white-space:normal; }
}
.sbt-article-corps ol{ counter-reset:lbn-etape; }
.sbt-article-corps ol > li{ counter-increment:lbn-etape; padding:4px 0 14px 58px; border-bottom:1px solid var(--sb-filet); line-height:1.55; min-height:46px; }
.sbt-article-corps ol > li::before{ content:counter(lbn-etape, decimal-leading-zero); position:absolute; left:0; top:0; width:42px; height:34px; display:flex; align-items:center; justify-content:center; border-radius:7px; background:#fff; box-shadow:inset 0 0 0 1.5px var(--sb-encre); font:800 17px/1 var(--sb-titre); font-stretch:75%; color:var(--sb-encre); }
.sbt-article-corps li ul,.sbt-article-corps li ol{ margin:.6em 0 0; }
.sbt-article-corps li li{ box-shadow:none !important; background:transparent !important; padding:2px 0 2px 26px !important; border:0 !important; min-height:0 !important; }
.sbt-article-corps li li::before{ width:14px !important; height:14px !important; left:0 !important; top:7px !important; border-radius:3px !important; background:var(--sb-jaune-etoile) !important; box-shadow:inset 0 0 0 1px var(--sb-encre); content:"" !important; }
.sbt-article-corps blockquote{ border-left:6px solid var(--sb-bleu-plaque); background:#fff; border-radius:0 14px 14px 0; font-style:normal; box-shadow:var(--sb-ombre-1); }
.lbn-fiches{ margin:1.6em 0; display:grid; gap:10px; }
.lbn-fiches-titre{ font:700 12px/1.2 var(--sb-texte); letter-spacing:.12em; text-transform:uppercase; color:var(--sb-bleu-plaque); }
.lbn-fiches--2{ background:#fff; border-radius:14px; box-shadow:var(--sb-ombre-1); padding:6px 18px; gap:0; }
.lbn-fiche-ligne{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:16px; padding:11px 0; border-bottom:1px solid var(--sb-filet); font-size:16px; line-height:1.45; }
.lbn-fiche-ligne:last-child{ border-bottom:0; }
.lbn-fiche-lib{ color:var(--sb-encre-douce); }
.lbn-fiche-val{ font-weight:600; }
.lbn-fiches--cartes{ grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr)); }
.lbn-fiche-carte{ background:#fff; border-radius:14px; box-shadow:var(--sb-ombre-1); padding:14px 16px; border-top:4px solid var(--sb-bleu-plaque); }
.lbn-fiche-tete{ font:800 17px/1.25 var(--sb-titre); font-stretch:87%; margin-bottom:8px; }
.lbn-fiche-carte dl{ margin:0; display:grid; gap:6px; }
.lbn-fiche-carte dl div{ display:flex; flex-direction:column; }
.lbn-fiche-carte dt{ font:600 11px/1.3 var(--sb-texte); letter-spacing:.1em; text-transform:uppercase; color:var(--sb-bleu-plaque); }
.lbn-fiche-carte dd{ margin:0; font-size:15.5px; line-height:1.45; }
@media (max-width:600px){ .sbt-article-corps{ font-size:17px; } .sbt-article-corps h2{ font-size:24px; } .lbn-fiche-ligne{ grid-template-columns:minmax(0,1fr); gap:2px; } }

/* =====================================================================
   Corrections n°1 — INFOGRAPHIES DU SOCLE (<sbs-jauges> <sbs-tarifs> <sbs-frise> <sbs-lieu>, socle-infographies.php)
   Habillage seul : carte blanche à bande bleue (la plaque), chiffres Mona Sans tabulaires, libellés en cases codées.
   ===================================================================== */
sbs-jauges,sbs-tarifs,sbs-frise,sbs-lieu{ display:block; position:relative; margin:1.8em 0; padding:22px 24px 20px 30px; background:#fff; border-radius:18px; box-shadow:var(--sb-ombre-1), inset 6px 0 0 var(--sb-bleu-plaque); color:var(--sb-encre); line-height:1.45; }
sbs-jauges small,sbs-tarifs small,sbs-frise small,sbs-lieu small{ font-size:inherit; }
sbs-jauges > .sbs_jauges_titre,sbs-tarifs > .sbs_tarifs_titre,sbs-frise > .sbs_frise_titre{ display:block; margin:0 0 14px; font:800 20px/1.2 var(--sb-titre); font-stretch:87%; letter-spacing:-.01em; color:var(--sb-encre); }
.sbs_jauges_titre::first-letter,.sbs_tarifs_titre::first-letter,.sbs_frise_titre::first-letter{ text-transform:uppercase; }
.sbs_source,.sbs_tarifs_notes{ display:block; margin-top:14px; padding-top:10px; border-top:1px solid var(--sb-filet); font-size:13px; line-height:1.45; color:var(--sb-encre-douce); }
.sbs_tarifs_notes + .sbs_source{ border-top:0; padding-top:0; margin-top:6px; }

/* Jauges = tuiles de chiffres (comme les tuiles du hero) */
sbs-jauges{ display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:12px; }
sbs-jauges > .sbs_jauges_titre,sbs-jauges > .sbs_source{ grid-column:1 / -1; margin-bottom:2px; }
sbs-jauges > .sbs_source{ margin-top:4px; }
sbs-jauge{ display:grid; grid-template-columns:auto minmax(0,1fr); grid-template-areas:"val uni" "lib lib"; align-items:baseline; column-gap:6px; row-gap:6px; align-content:start; min-width:0; padding:14px 14px 13px; background:var(--sb-fond); border-radius:14px; border-top:3px solid var(--sb-bleu-plaque); }
.sbs_jauge_valeur{ grid-area:val; font:800 38px/1 var(--sb-titre); font-stretch:87%; letter-spacing:-.01em; color:var(--sb-bleu-plaque); font-variant-numeric:tabular-nums lining-nums; white-space:nowrap; }
.sbs_jauge_unite{ grid-area:uni; font:600 15px/1.2 var(--sb-texte) !important; color:var(--sb-encre); min-width:0; }
.sbs_jauge_libelle{ grid-area:lib; font-size:13.5px !important; line-height:1.35; color:var(--sb-encre-douce); }
sbs-jauge.est-long{ grid-template-columns:minmax(0,1fr); grid-template-areas:"val" "uni" "lib"; }
sbs-jauge.est-long .sbs_jauge_valeur{ font-size:22px; line-height:1.15; white-space:normal; }

/* Tarifs = rangées libellé | barre | prix */
sbs-tarif{ display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1.6fr) minmax(6.5em,auto); gap:16px; align-items:center; padding:11px 0; border-top:1px solid var(--sb-filet); }
.sbs_tarifs_titre + sbs-tarif,sbs-tarifs > sbs-tarif:first-child{ border-top:0; }
sbs-tarifs > sbs-tarif:first-child{ padding-top:2px; }
.sbs_tarif_libelle{ font-size:15.5px !important; line-height:1.35; color:var(--sb-encre); }
.sbs_tarif_barre{ width:100%; height:12px; -webkit-appearance:none; appearance:none; border:0; border-radius:999px; background:var(--lbn-bleu-pale); overflow:hidden; display:block; }
.sbs_tarif_barre::-webkit-meter-bar{ background:var(--lbn-bleu-pale); border:0; border-radius:999px; height:12px; }
.sbs_tarif_barre::-webkit-meter-optimum-value,.sbs_tarif_barre::-webkit-meter-suboptimum-value,.sbs_tarif_barre::-webkit-meter-even-less-good-value{ background:var(--sb-bleu-plaque); border-radius:999px; }
.sbs_tarif_barre::-moz-meter-bar{ background:var(--sb-bleu-plaque); border-radius:999px; }
.sbs_tarif_prix{ font:700 17px/1.1 var(--sb-titre); font-stretch:87%; color:var(--sb-encre); font-variant-numeric:tabular-nums lining-nums; white-space:nowrap; text-align:right; }

/* Frise = étapes, la date sur une mini-plaque, reliées par un filet bleu */
sbs-etape{ display:grid; grid-template-columns:minmax(118px,auto) minmax(0,1fr); grid-template-areas:"date titre" "date desc"; column-gap:18px; row-gap:2px; position:relative; padding:10px 0 12px; }
sbs-etape + sbs-etape{ border-top:1px solid var(--sb-filet); }
.sbs_etape_date{ grid-area:date; align-self:start; justify-self:start; display:inline-flex; align-items:center; min-height:30px; padding:4px 10px 4px 14px; border-radius:6px; background:#fff; box-shadow:inset 0 0 0 1.5px var(--sb-encre), inset 6px 0 0 var(--sb-bleu-plaque); font:700 14px/1.2 var(--sb-titre); font-stretch:75%; letter-spacing:.03em; color:var(--sb-encre); font-variant-numeric:tabular-nums; }
sbs-etape > .sbs_etape_titre{ grid-area:titre; font-weight:600; font-size:16.5px; line-height:1.35; }
.sbs_etape_desc{ grid-area:desc; font-size:15px !important; line-height:1.45; color:var(--sb-encre-douce); }
sbs-etape:not(:has(.sbs_etape_titre)):not(:has(.sbs_etape_desc)){ grid-template-columns:minmax(0,1fr); grid-template-areas:"date"; }

/* Lieu = fiche adresse */
sbs-lieu{ display:grid; gap:6px; }
sbs-lieu > .sbs_lieu_nom{ font:800 19px/1.25 var(--sb-titre); font-stretch:87%; }
.sbs_lieu_adresse{ font-style:normal; font-size:16px; }
.sbs_lieu_acces{ font-size:14.5px !important; color:var(--sb-encre-douce); }
.sbs_lieu_carte{ justify-self:start; display:inline-flex; align-items:center; gap:8px; min-height:44px; margin-top:4px; padding:0 16px; border-radius:12px; box-shadow:inset 0 0 0 2px var(--sb-bleu-plaque); font-weight:600; font-size:15px; text-decoration:none; }
.sbs_lieu_carte svg{ width:18px; height:18px; fill:currentColor; }
.sbs_lieu_carte:hover{ background:var(--lbn-bleu-pale); }

@media (max-width:600px){
	sbs-jauges,sbs-tarifs,sbs-frise,sbs-lieu{ padding:18px 16px 16px 22px; }
	sbs-jauges{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
	sbs-jauge{ padding:12px 11px; }
	.sbs_jauge_valeur{ font-size:30px; }
	sbs-jauge.est-long .sbs_jauge_valeur{ font-size:18px; }
	sbs-tarif{ grid-template-columns:minmax(0,1fr) auto; gap:6px 12px; }
	.sbs_tarif_barre{ grid-column:1 / -1; grid-row:2; }
	sbs-etape{ grid-template-columns:minmax(0,1fr); grid-template-areas:"date" "titre" "desc"; row-gap:6px; }
}

/* Encadrés figés : « À retenir » = carte blanche à bande bleue ; « Le saviez-vous » = case codée géante */
.sbt-encadre{ border-radius:18px; }
.sbt-encadre--retenir{ background:#fff; border-left:8px solid var(--sb-bleu-plaque); box-shadow:var(--sb-ombre-1); color:var(--sb-encre); }
.sbt-encadre--saviez{ background:var(--sb-certificat); box-shadow:inset 0 0 0 1.5px var(--sb-bleu-plaque); color:var(--sb-encre); }
.sbt-encadre-titre{ font:700 12px/1.2 var(--sb-texte) !important; letter-spacing:.14em; text-transform:uppercase; color:var(--sb-bleu-plaque) !important; }
.sbt-encadre p,.sbt-encadre li{ color:var(--sb-encre); }
/* Corrections n°1 : « Points à retenir » = grille coche | texte ; la coche n'est plus posée par-dessus la 1re lettre. */
.sbt-article-corps .sbt-encadre--retenir .sbt-retenir-liste{ display:grid; gap:10px; counter-reset:none; }
.sbt-article-corps .sbt-encadre--retenir .sbt-retenir-liste > li{ display:grid; grid-template-columns:26px minmax(0,1fr); column-gap:14px; align-items:start; padding:0 0 10px; min-height:0; border-bottom:1px solid var(--sb-filet); line-height:1.55; }
.sbt-article-corps .sbt-encadre--retenir .sbt-retenir-liste > li:last-child{ border-bottom:0; padding-bottom:0; }
.sbt-article-corps .sbt-encadre--retenir .sbt-retenir-liste > li::before{ content:""; position:static; grid-column:1; width:26px; height:26px; margin-top:1px; border-radius:7px; box-shadow:none; background:var(--sb-bleu-plaque) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%23FFC61A' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat; }
.sbt-encadre--retenir{ padding:24px 28px; }
@media (max-width:600px){ .sbt-encadre--retenir{ padding:20px 18px; } .sbt-article-corps .sbt-encadre--retenir .sbt-retenir-liste > li{ column-gap:12px; font-size:16px; } }

/* FAQ figée : filets bleus, « + » qui tourne */
.sbt-faq{ background:transparent; border:0; box-shadow:none; padding:0; }
.sbt-faq details{ border-top:1.5px solid var(--sb-bleu-plaque); background:transparent; border-radius:0; }
.sbt-faq details:last-child{ border-bottom:1.5px solid var(--sb-bleu-plaque); }
.sbt-faq summary{ font-family:var(--sb-titre); font-stretch:87%; font-weight:700; color:var(--sb-encre); }

/* Boîte auteur figée */
.sbt-auteur{ border-radius:18px; box-shadow:var(--sb-ombre-1); border-top:6px solid var(--sb-bleu-plaque); }

/* Corrections n°1 : maillage du mu-plugin (« À lire aussi » en fin de corps) habillé en cartes-liens. */
.sbt-article-corps .sb-maillage{ margin-top:2.4em; padding-top:22px; border-top:2px solid var(--sb-encre); }
.sbt-article-corps .sb-maillage h2{ font-size:22px; margin:0 0 14px; }
.sbt-article-corps .sb-maillage ul{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:0; }
.sbt-article-corps .sb-maillage ul > li{ padding:0; background:transparent; box-shadow:none; border:0; min-height:0; }
.sbt-article-corps .sb-maillage ul > li::before{ content:none; display:none; }
.sbt-article-corps .sb-maillage a{ position:relative; display:flex; align-items:center; gap:14px; height:100%; min-height:64px; padding:12px 44px 12px 20px; background:#fff; border-radius:14px; box-shadow:var(--sb-ombre-1), inset 6px 0 0 var(--sb-bleu-plaque); color:var(--sb-encre); text-decoration:none; font:700 16px/1.3 var(--sb-titre); font-stretch:87%; transition:box-shadow .2s ease, color .2s ease; }
.sbt-article-corps .sb-maillage a::after{ content:""; position:absolute; right:16px; top:50%; width:18px; height:18px; margin-top:-9px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230F3D9A' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat; transition:transform .2s ease; }
.sbt-article-corps .sb-maillage a:hover{ color:var(--sb-bleu-plaque); box-shadow:var(--sb-ombre-2), inset 6px 0 0 var(--sb-bleu-plaque); }
.sbt-article-corps .sb-maillage a:hover::after{ transform:translateX(3px); }
.sbt-article-corps .sb-maillage a[href*="/category/"]{ background:var(--sb-certificat); box-shadow:inset 0 0 0 1.5px var(--sb-bleu-plaque); }
@media (max-width:640px){ .sbt-article-corps .sb-maillage ul{ grid-template-columns:minmax(0,1fr); } }

/* « Continuer la lecture » (bloc figé, ex-« À lire aussi ») : section pleine largeur, cartes du thème */
.sbt-article-mise-en-page--suite{ display:block; max-width:var(--sb-conteneur); padding-bottom:64px; }
.sbt-article-mise-en-page--suite .sbt-article-principal{ max-width:none; }
.sbt-a-lire{ border-top:2px solid var(--sb-encre); margin-top:0; padding-top:24px; }
.sbt-kicker{ font:800 26px/1.1 var(--sb-titre); font-stretch:87%; margin-bottom:20px; }
.sbt-a-lire .sbt-carte{ border:0; box-shadow:none; background:transparent; overflow:visible; border-radius:18px; }
.sbt-a-lire .sbt-carte:hover{ transform:none; box-shadow:none; }
.sbt-a-lire .sbt-carte .lbn-carte-img{ aspect-ratio:auto; }
.sbt-fil-ariane{ color:var(--sb-encre-douce); }
.sbt-fil-ariane a{ color:var(--sb-encre-douce); text-decoration:underline; text-decoration-color:rgba(70,82,106,.35); }

/* =====================================================================
   RUBRIQUE — bandeau photo terminé en bande « département » à numéro géant
   ===================================================================== */
.lbn-rub{ padding-bottom:0; }
.lbn-rub-haut{ padding-top:4px; }
.lbn-rub-haut .sbt-fil-ariane{ padding-block:14px; font-size:13px; }
.lbn-rub-bandeau{ display:grid; grid-template-columns:minmax(0,72fr) minmax(0,28fr); height:380px; border-radius:32px; overflow:hidden; box-shadow:var(--sb-ombre-1), inset 0 0 0 2px var(--sb-encre); background:var(--sb-encre); padding:2px; }
.lbn-rub-photo{ position:relative; overflow:hidden; border-radius:30px 0 0 30px; background:var(--sb-certificat); }
.lbn-rub-photo img,.lbn-rub-photo .lbn-repli{ width:100%; height:100%; object-fit:cover; }
.lbn-rub-bande{ background:var(--sb-bleu-plaque); color:#fff; border-left:4px solid var(--sb-encre); border-radius:0 30px 30px 0; padding:28px 30px; display:flex; flex-direction:column; justify-content:flex-end; gap:10px; min-width:0; }
.lbn-rub-num{ font:800 160px/.8 var(--sb-titre); font-stretch:87%; color:#fff; letter-spacing:-.03em; font-variant-numeric:tabular-nums lining-nums; margin-bottom:auto; }
.lbn-rub-titre{ font-size:30px; line-height:1.05; color:#fff; }
.lbn-rub-chapo{ font-size:15px; line-height:1.45; color:#DCE5F7; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.lbn-sujets{ display:flex; flex-wrap:wrap; gap:8px; margin:24px 0 0; }
.lbn-sujet{ display:inline-flex; align-items:center; gap:6px; min-height:40px; padding:0 15px; border:0; border-radius:999px; background:#fff; box-shadow:inset 0 0 0 1.5px var(--sb-filet); font:500 15px/1 var(--sb-texte); color:var(--sb-encre); cursor:pointer; }
.lbn-sujet b{ font:800 13px/1 var(--sb-titre); font-stretch:75%; color:var(--sb-bleu-plaque); }
.lbn-sujet[aria-pressed=true]{ background:var(--sb-bleu-plaque); color:#fff; box-shadow:none; }
.lbn-sujet[aria-pressed=true] b{ color:var(--sb-jaune-etoile); }
.lbn-rub-une{ display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); background:#fff; border-radius:24px; overflow:hidden; box-shadow:var(--sb-ombre-1); margin-top:32px; color:var(--sb-encre); text-decoration:none; }
.lbn-rub-une:hover{ box-shadow:var(--sb-ombre-2); text-decoration:none; }
.lbn-rub-une-photo{ position:relative; height:clamp(340px, calc(100vh - 380px), 440px); overflow:hidden; background:var(--sb-certificat); }
.lbn-rub-une-photo img,.lbn-rub-une-photo .lbn-repli{ width:100%; height:100%; object-fit:cover; }
.lbn-rub-une-corps{ padding:36px 36px 32px; display:flex; flex-direction:column; gap:14px; justify-content:center; }
.lbn-rub-une-titre{ font-size:34px; line-height:1.08; }
.lbn-rub-une-corps .lbn-carte-extrait{ -webkit-line-clamp:4; font-size:16.5px; }
.lbn-rub-une .lbn-carte-meta{ margin-top:4px; }
.lbn-rub-une-lire{ align-self:flex-start; margin-top:6px; }
.lbn-rub-une:hover .lbn-rub-une-lire{ background:var(--lbn-bleu-pale); }
.lbn-qr-guide{ margin-top:8px; font-size:14.5px; }
.lbn-rub-liste{ margin-top:28px; }
.lbn-rub-liste .lbn-carte.est-masque,.lbn-rub-liste .lbn-carte.est-filtre{ display:none; }
.lbn-plus{ display:flex; justify-content:center; margin-top:32px; }
.lbn-bande-faq{ background:var(--sb-certificat); margin-top:64px; padding-block:56px; }
.lbn-bande-faq-grille{ display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:48px; align-items:start; }
.lbn-bande-faq .lbn-section-chapo a{ font-weight:600; }
.lbn-qr details{ border-top:1.5px solid var(--sb-bleu-plaque); }
.lbn-qr details:last-child{ border-bottom:1.5px solid var(--sb-bleu-plaque); }
.lbn-qr summary{ list-style:none; cursor:pointer; display:flex; justify-content:space-between; gap:16px; align-items:center; padding:16px 2px; font:700 18px/1.3 var(--sb-titre); font-stretch:87%; }
.lbn-qr summary::-webkit-details-marker{ display:none; }
.lbn-qr summary svg{ flex-shrink:0; color:var(--sb-bleu-plaque); transition:transform .25s ease; }
.lbn-qr details[open] summary svg{ transform:rotate(45deg); }
.lbn-qr-rep{ padding:0 2px 18px; font-size:16px; line-height:1.55; color:var(--sb-encre-douce); }
.lbn-qr-rep a{ font-weight:600; }
@media (min-width:1800px){ .lbn-rub-bandeau{ height:420px; } .lbn-rub-num{ font-size:180px; } }
@media (max-width:1080px){ .lbn-rub-bandeau{ grid-template-columns:minmax(0,1fr); height:auto; } .lbn-rub-photo{ height:240px; border-radius:30px 30px 0 0; } .lbn-rub-bande{ border-left:0; border-top:4px solid var(--sb-encre); border-radius:0 0 30px 30px; display:grid; grid-template-columns:auto minmax(0,1fr); column-gap:20px; align-items:end; } .lbn-rub-num{ font-size:96px; grid-row:1 / span 2; margin:0; } .lbn-rub-chapo{ grid-column:2; } .lbn-rub-une{ grid-template-columns:minmax(0,1fr); } .lbn-rub-une-photo{ height:auto; aspect-ratio:16/10; } .lbn-bande-faq-grille{ grid-template-columns:minmax(0,1fr); gap:20px; } }
@media (max-width:640px){ .lbn-rub-bandeau{ border-radius:24px; } .lbn-rub-photo{ height:180px; border-radius:22px 22px 0 0; } .lbn-rub-bande{ padding:18px 18px 20px; border-radius:0 0 22px 22px; } .lbn-rub-num{ font-size:72px; } .lbn-rub-titre{ font-size:24px; } .lbn-rub-une-corps{ padding:20px; } .lbn-rub-une-titre{ font-size:24px; } }

/* =====================================================================
   Pages : bandeau court, page sobre, À propos, Contact, Mentions, 404, recherche, auteur
   ===================================================================== */
.lbn-bandeau{ background:var(--sb-certificat) var(--lbn-prismes); padding:8px 0 44px; }
.lbn-bandeau .sbt-fil-ariane{ padding-block:14px; font-size:13px; }
.lbn-bandeau-ligne{ display:flex; align-items:center; gap:22px; margin-top:12px; }
.lbn-bandeau .lbn-plaque{ width:150px; flex-shrink:0; }
.lbn-bandeau-titre{ font-size:46px; }
.lbn-bandeau-chapo{ margin-top:10px; font-size:18px; color:var(--sb-encre-douce); max-width:62ch; }
@media (max-width:760px){ .lbn-bandeau-titre{ font-size:32px; } .lbn-bandeau .lbn-plaque{ width:96px; } .lbn-bandeau-ligne{ gap:14px; } }
.lbn-page{ padding-block:48px 72px; }
.lbn-lecture{ max-width:var(--sb-lecture); margin-inline:auto; }
.lbn-lecture > * + *{ margin-top:1.1em; }
.lbn-lecture h2{ font-size:28px; margin-top:1.8em; }
.lbn-lecture h3{ font-size:21px; margin-top:1.5em; }
.lbn-lecture ul,.lbn-lecture ol{ padding-left:0; list-style:none; display:grid; gap:8px; }
.lbn-lecture li{ position:relative; padding-left:26px; }
.lbn-lecture li::before{ content:""; position:absolute; left:2px; top:.55em; width:12px; height:12px; border-radius:3px; background:var(--sb-jaune-etoile); box-shadow:inset 0 0 0 1.2px var(--sb-encre); }
.lbn-cases-page{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); background:#fff; border-radius:18px; box-shadow:var(--sb-ombre-1); overflow:hidden; margin-bottom:40px; }
.lbn-cases-page .lbn-case{ padding:18px 22px; border-bottom:1px solid var(--sb-filet); }
.lbn-cases-page .lbn-case:nth-child(even){ border-left:1px solid var(--sb-filet); }
.lbn-cases-page .lbn-case-val{ font-size:16px; }
@media (max-width:640px){ .lbn-cases-page{ grid-template-columns:minmax(0,1fr); } .lbn-cases-page .lbn-case:nth-child(even){ border-left:0; } }

/* À propos — la carte grise de la rédaction */
.lbn-ap-hero{ padding:8px 0 56px; background:var(--sb-fond) var(--lbn-prismes); }
.lbn-ap-hero .sbt-fil-ariane{ padding-block:14px; font-size:13px; }
.lbn-ap-hero-grille{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:48px; align-items:center; }
.lbn-ap-titre{ font-size:54px; line-height:1.04; }
.lbn-ap-titre em{ font-style:italic; color:var(--sb-bleu-plaque); }
.lbn-ap-chapo{ margin-top:18px; font-size:19px; line-height:1.5; color:var(--sb-encre-douce); max-width:46ch; }
.lbn-ap-panneau{ display:grid; grid-template-columns:44px minmax(0,1fr) 44px; height:min(520px,62vh); min-height:360px; border-radius:32px; background:var(--sb-bleu-plaque); box-shadow:var(--sb-ombre-2), inset 0 0 0 2px var(--sb-encre); padding:2px; }
.lbn-ap-panneau .lbn-hero-bande--ue{ padding-top:18px; }
.lbn-ap-panneau .lbn-hero-photo img,.lbn-ap-panneau .lbn-hero-photo .lbn-repli{ width:100%; height:100%; object-fit:cover; }
.lbn-ap-certificat{ padding-block:56px; background:var(--sb-surface); }
.lbn-ap-carte{ max-width:1040px; margin-inline:auto; background:#fff; border-radius:24px; box-shadow:var(--sb-ombre-2); overflow:hidden; position:relative; }
.lbn-ap-carte-tete{ display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 28px; background:var(--sb-certificat) var(--lbn-prismes); border-bottom:2px solid var(--sb-encre); }
.lbn-ap-carte-tete p{ font:700 12px/1.2 var(--sb-texte); letter-spacing:.14em; text-transform:uppercase; color:var(--sb-encre-douce); }
.lbn-ap-carte-tete .lbn-plaque{ width:180px; }
.lbn-ap-cases{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
.lbn-ap-case{ padding:22px 28px; border-bottom:1px solid var(--sb-filet); }
.lbn-ap-case:nth-child(even){ border-left:1px solid var(--sb-filet); }
.lbn-ap-case--large{ grid-column:1 / -1; border-left:0 !important; }
.lbn-ap-case .lbn-case-val{ font-size:16.5px; line-height:1.55; margin-top:6px; }
.lbn-ap-case .lbn-case-val ul{ list-style:none; margin:4px 0 0; padding:0; display:grid; gap:6px; }
.lbn-ap-case .lbn-case-val li{ position:relative; padding-left:22px; }
.lbn-ap-case .lbn-case-val li::before{ content:""; position:absolute; left:0; top:.5em; width:11px; height:11px; border-radius:3px; background:var(--sb-jaune-etoile); box-shadow:inset 0 0 0 1.2px var(--sb-encre); }
.lbn-ap-auteurs{ display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr)); gap:16px; margin-top:10px; } /* n°4 : auto-fit → les 2 fiches occupent toute la largeur */
.lbn-ap-auteur{ display:flex; gap:14px; align-items:flex-start; text-decoration:none; color:var(--sb-encre); padding:14px; border-radius:14px; box-shadow:inset 0 0 0 1px var(--sb-filet); }
.lbn-ap-auteur:hover{ box-shadow:inset 0 0 0 1.5px var(--sb-bleu-plaque); text-decoration:none; }
.lbn-ap-auteur .lbn-avatar{ width:64px; height:64px; }
.lbn-ap-auteur b{ display:block; font:800 18px/1.2 var(--sb-titre); font-stretch:87%; }
.lbn-ap-auteur span{ font-size:14.5px; line-height:1.45; color:var(--sb-encre-douce); }
.lbn-ap-corps{ padding-block:8px 64px; background:var(--sb-surface); }
.lbn-bande-nuit{ background:var(--sb-nuit); color:#fff; padding-block:48px; }
.lbn-bande-nuit-ligne{ display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; }
.lbn-bande-nuit .lbn-h2{ color:#fff; }
.lbn-bande-nuit p{ color:var(--lbn-sur-nuit); margin-top:6px; }
@media (max-width:900px){ .lbn-ap-hero-grille{ grid-template-columns:minmax(0,1fr); gap:28px; } .lbn-ap-titre{ font-size:40px; } .lbn-ap-panneau{ height:260px; min-height:0; grid-template-columns:28px minmax(0,1fr) 28px; border-radius:24px; } .lbn-ap-cases{ grid-template-columns:minmax(0,1fr); } .lbn-ap-case:nth-child(even){ border-left:0; } .lbn-ap-case{ padding:18px 20px; } .lbn-ap-carte-tete{ padding:14px 20px; } .lbn-ap-carte-tete .lbn-plaque{ width:120px; } }
@media (max-width:640px){ .lbn-ap-titre{ font-size:32px; } }

/* Contact — grande photo + carte formulaire flottante à cheval sur son bord gauche */
.lbn-contact{ padding:8px 0 64px; background:var(--sb-fond) var(--lbn-prismes); }
.lbn-contact .sbt-fil-ariane{ padding-block:14px; font-size:13px; }
.lbn-contact-titre{ font-size:46px; margin-bottom:6px; }
.lbn-contact-chapo{ font-size:18px; color:var(--sb-encre-douce); max-width:60ch; }
.lbn-contact-scene{ position:relative; display:grid; grid-template-columns:minmax(0,40fr) minmax(0,60fr); align-items:start; margin-top:2px; }
.lbn-contact-photo{ grid-column:2; grid-row:1; height:600px; margin-top:28px; border-radius:32px; overflow:hidden; box-shadow:var(--sb-ombre-2); background:var(--sb-certificat); }
/* Corrections n°3 : la photo est posée dans le cadre plaque (bande UE, bande département), comme l'accueil et À propos. */
.lbn-contact-panneau{ display:grid; grid-template-columns:52px minmax(0,1fr) 52px; background:var(--sb-bleu-plaque); padding:2px; box-shadow:var(--sb-ombre-2), inset 0 0 0 2px var(--sb-encre); }
.lbn-contact-panneau .lbn-hero-photo{ border-radius:0; }
.lbn-contact-panneau .lbn-hero-photo img{ width:100%; height:100%; object-fit:cover; object-position:6% 50%; }
@media (max-width:1080px){ .lbn-contact-panneau{ grid-template-columns:28px minmax(0,1fr) 28px; } .lbn-contact-panneau .lbn-hero-ue{ width:18px; height:36px; } .lbn-contact-panneau .lbn-hero-bande--ue{ padding-top:12px; } }
.lbn-contact-photo img,.lbn-contact-photo .lbn-repli{ width:100%; height:100%; object-fit:cover; }
.lbn-contact-carte{ grid-column:1 / span 1; grid-row:1; position:relative; z-index:2; margin-right:-64px; background:#fff; border-radius:18px; box-shadow:var(--sb-ombre-2); overflow:hidden; }
.lbn-contact-carte .lbn-question-corps{ padding:16px 20px 18px; gap:12px; }
.lbn-contact-carte .lbn-question-tete{ padding:14px 20px; }
.lbn-contact-carte .lbn-question-titre{ font-size:15px; margin-top:4px; }
.lbn-question-h1{ font-size:30px; line-height:1.05; color:#fff; }
.lbn-contact-carte .lbn-question-tete{ align-items:flex-start; }
.lbn-contact-carte .lbn-question-ue{ width:22px; height:44px; }
@media (max-width:640px){ .lbn-question-h1{ font-size:24px; } }
.lbn-reassurances{ list-style:none; margin:28px 0 0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.lbn-reassurances li{ display:flex; gap:12px; align-items:flex-start; background:#fff; border-radius:14px; padding:16px; box-shadow:var(--sb-ombre-1); font-size:15px; line-height:1.45; color:var(--sb-encre-douce); }
.lbn-reassurances b{ display:block; color:var(--sb-encre); font-weight:600; }
.lbn-reassurances svg{ flex-shrink:0; color:var(--sb-bleu-plaque); margin-top:2px; }
@media (max-height:820px) and (min-width:1081px){ .lbn-contact-photo{ height:560px; } .lbn-contact .lbn-question-sujets .lbn-puce-choix span{ min-height:34px; } }
/* Corrections n°2 : en tablette et mobile, le formulaire passe AVANT la photo (titre + bouton au-dessus du pli à 390×700). */
@media (max-width:1080px){ .lbn-contact-scene{ grid-template-columns:minmax(0,1fr); } .lbn-contact-carte{ grid-column:1; grid-row:1; margin:0; } .lbn-contact-photo{ grid-column:1; grid-row:2; height:260px; margin-top:20px; } .lbn-reassurances{ grid-template-columns:minmax(0,1fr); } .lbn-contact-titre{ font-size:34px; } }
@media (max-width:640px){
	.lbn-contact{ padding-top:0; }
	.lbn-contact .sbt-fil-ariane{ padding-block:10px; }
	.lbn-contact-photo{ height:180px; border-radius:24px; }
	.lbn-contact-carte .lbn-question-tete{ padding:12px 16px; gap:10px; }
	.lbn-contact-carte .lbn-question-ue{ width:16px; height:32px; }
	.lbn-contact-carte .lbn-question-titre{ font-size:13.5px; line-height:1.3; margin-top:2px; }
	.lbn-contact-carte .lbn-question-corps{ padding:12px 14px 14px; gap:9px; }
	.lbn-contact-carte .lbn-question-ligne{ grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:8px; }
	.lbn-contact-carte .lbn-champ-lib{ font-size:13px; }
	.lbn-contact-carte input[type=text],.lbn-contact-carte input[type=email]{ min-height:44px; padding:9px 11px; font-size:15.5px; }
	.lbn-contact-carte textarea{ height:72px; padding:9px 11px; font-size:15.5px; }
	.lbn-contact .lbn-question-sujets{ gap:6px; margin-bottom:0; }
	.lbn-contact .lbn-question-sujets legend{ margin-bottom:6px; }
	.lbn-contact .lbn-puce-choix span{ min-height:36px; padding:0 11px; font-size:13.5px; }
	.lbn-contact-carte .lbn-consent{ font-size:12.5px; }
}

/* Listes (archive, recherche, auteur) */
.lbn-liste-tete{ display:flex; align-items:center; gap:20px; }
.lbn-auteur-tete{ display:flex; gap:22px; align-items:center; margin-top:12px; }
.lbn-auteur-tete .lbn-avatar{ width:112px; height:112px; }
.lbn-auteur-bio{ margin-top:10px; font-size:17px; color:var(--sb-encre-douce); max-width:64ch; }
.lbn-vide{ background:#fff; border-radius:18px; box-shadow:var(--sb-ombre-1); padding:28px; max-width:720px; }
.lbn-vide p + p{ margin-top:10px; }
.lbn-404-plaque{ width:min(420px,100%); margin:8px 0 24px; }
.lbn-404-liens{ list-style:none; margin:24px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:10px; }
@media (max-width:640px){ .lbn-auteur-tete{ flex-direction:column; align-items:flex-start; } .lbn-auteur-tete .lbn-avatar{ width:88px; height:88px; } }

/* Apparitions au défilement (DA §6-4) — désactivées sans JS et en mouvement réduit */
.lbn-js .lbn-apparait{ opacity:0; transform:translateY(14px); transition:opacity .4s ease, transform .4s ease; transition-delay:var(--lbn-delai,0ms); }
.lbn-js .lbn-apparait.est-vu{ opacity:1; transform:none; }

@media (prefers-reduced-motion:reduce){
	*,*::before,*::after{ animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; scroll-behavior:auto !important; }
	.lbn-faisceau::after,.lbn-btn::after{ display:none; }
	.lbn-js .lbn-apparait{ opacity:1; transform:none; }
}
.lbn-rub .est-filtre,.lbn-liste .est-filtre{ display:none !important; }
.lbn-liste .lbn-carte.est-masque{ display:none; }
/* Corrections n°4 : carte seule en fin de grille de rubrique → toute la ligne, photo à gauche. */
@media (min-width:641px){
	.lbn-rub-liste > .lbn-carte.est-seule{ grid-column:1 / -1; flex-direction:row; }
	.lbn-rub-liste > .lbn-carte.est-seule .lbn-carte-photo{ width:46%; aspect-ratio:auto; min-height:240px; }
	.lbn-rub-liste > .lbn-carte.est-seule .lbn-carte-corps{ justify-content:center; padding:26px 30px; }
	.lbn-rub-liste > .lbn-carte.est-seule .lbn-carte-titre{ font-size:24px; }
	.lbn-rub-liste > .lbn-carte.est-seule .lbn-carte-meta{ margin-top:8px; }
}
