/* =====================================================================
   Le centre v2 (8 nov. 2026) : refonte alignée sur la page d'accueil (page de référence de l'owner).
   Chargé seulement par le-centre.php (body.csb-c2-page), après csb-le-centre.css. Préfixe : .csb-c2-
   Grammaire reprise de l'accueil : surtitre en petites majuscules avec trait jaune, h2 31 px noir à gauche,
   texte 16 px, filets fins, un seul bouton jaune par section, un seul bloc vert foncé.
   ===================================================================== */
.csb-c2-page {
	--c2-foret: #004540;
	--c2-encre: #16231A;
	--c2-noir: #111;
	--c2-vegetal: #23734A;
	--c2-mil: #FFE06A;
	--c2-craie: #F8F7F0;
	--c2-trait: rgba(0, 69, 64, .12);
	--c2-doux: rgba(22, 35, 26, .72);
	--c2-section: clamp(72px, 40px + 4.5vw, 120px);
	--c2-gouttiere: clamp(20px, 2.4vw, 36px);
}

/* --- Socle des sections --- */
.csb-c2-sec { padding: var(--c2-section) 0; background: #fff; }
body.csb-c2-page .csb-c2-sec :is(p, li, dd):not(#csb) { text-align: left; -webkit-hyphens: manual; hyphens: manual; }
body.csb-c2-page .csb-c2-sec p:not(#csb) { margin: 0 0 14px; max-width: 62ch; font-size: 16px; line-height: 1.65; color: var(--c2-encre); }
.csb-c2-sec ul, .csb-c2-sec ol { list-style: none; margin: 0; padding: 0; }

/* Surtitre : identique à l'accueil (trait jaune + petites majuscules) */
body.csb-c2-page p.csb-c2-sur:not(#csb) { display: flex; align-items: center; gap: 12px; margin: 0 0 14px; font-size: 11px; font-weight: 700; line-height: 1.4; letter-spacing: .09em; text-transform: uppercase; color: var(--c2-vegetal); }
.csb-c2-sur::before { content: ""; flex: none; width: 28px; height: 4px; border-radius: 2px; background: var(--c2-mil); }

/* Titre de section : identique à l'accueil */
body.csb-c2-page h2.csb-c2-h2:not(#csb) { margin: 0 0 16px; max-width: 22em; font-family: var(--csb-font-titre); font-size: clamp(26px, 21px + .8vw, 31px); font-weight: 600; line-height: 1.2; letter-spacing: -.015em; color: var(--c2-noir); text-align: left; text-wrap: balance; }

/* Titres de bloc (h3) */
body.csb-c2-page .csb-c2-sec h3:not(#csb) { margin: 0 0 8px; font-family: var(--csb-font-titre); font-size: clamp(19px, 17.9px + .286vw, 21px); font-weight: 600; line-height: 1.25; letter-spacing: -.01em; color: var(--c2-noir); }

/* En-tête de section */
.csb-c2-tete { margin-bottom: clamp(32px, 3.5vw, 52px); }
body.csb-c2-page .csb-c2-tete > p:not(.csb-c2-sur):not(#csb) { margin-bottom: 0; }
.csb-c2-tete-cta, .csb-c2-tete-duo { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 20px 48px; }
.csb-c2-tete-cta > div { flex: 1 1 520px; }
.csb-c2-tete-cta .e-primary-btn { flex: none; }
.csb-c2-tete-duo > div { flex: 1 1 460px; }
body.csb-c2-page .csb-c2-tete-duo > p:not(#csb) { flex: 1 1 360px; max-width: 46ch; margin: 0; }

/* Lien texte (souligné jaune, comme les liens de l'accueil) */
.csb-c2-lien { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-size: 15px; font-weight: 700; color: var(--c2-foret); text-decoration: underline; text-decoration-color: var(--c2-mil); text-decoration-thickness: 2px; text-underline-offset: 6px; transition: gap .2s ease, text-decoration-color .2s ease; }
.csb-c2-lien:hover, .csb-c2-lien:focus-visible { gap: 12px; color: var(--c2-foret); text-decoration-color: var(--c2-foret); }
.csb-c2-lien i { font-size: 13px; }

/* Focus visible sur tous les liens et boutons de la page */
.csb-c2-page main a:focus-visible, .csb-c2-page main button:focus-visible { outline: 2px solid var(--c2-foret); outline-offset: 3px; border-radius: 4px; }
.csb-c2-former a:focus-visible { outline-color: var(--c2-mil) !important; }

/* --- 1. Bandeau : sans pastilles, bas resserré --- */
body.csb-c2-page .csb-c2-bandeau .breadcrumb-title p:last-child:not(#csb) { margin-bottom: 0; }

/* Bande de chiffres (même composant que l'accueil) */
.csb-c2-chiffres { background: #fff; border-bottom: 1px solid var(--c2-trait); }
.csb-c2-chiffres-liste { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.csb-c2-chiffres-liste li { position: relative; display: flex; flex-direction: column; padding: clamp(18px, 1.8vw, 26px) clamp(16px, 2vw, 28px); }
.csb-c2-chiffres-liste li:first-child { padding-left: 0; }
.csb-c2-chiffres-liste li + li::before { content: ""; position: absolute; left: 0; top: 18px; bottom: 18px; width: 1px; background: var(--c2-trait); }
.csb-c2-chiffre { font-family: var(--csb-font-titre); font-size: clamp(24px, 20px + .8vw, 32px); font-weight: 600; line-height: 1; letter-spacing: -.02em; color: var(--c2-foret); white-space: nowrap; font-variant-numeric: lining-nums; }
.csb-c2-chiffre-txt { margin-top: 6px; font-size: 14px; font-weight: 500; line-height: 1.35; color: var(--c2-encre); }
.csb-c2-chiffre-sous { margin-top: 2px; font-size: 13px; line-height: 1.4; color: var(--c2-doux); }

/* --- 2. Qui sommes-nous --- */
.csb-c2-qui-grille { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(32px, 5vw, 80px); align-items: center; }
.csb-c2-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 28px; margin-top: 28px; }
body.csb-c2-page p.csb-c2-tel:not(#csb) { margin: 0; font-size: 15px; color: var(--c2-doux); }
.csb-c2-tel a { font-weight: 700; color: var(--c2-foret); text-decoration: underline; text-decoration-color: var(--c2-mil); text-decoration-thickness: 2px; text-underline-offset: 5px; white-space: nowrap; }
.csb-c2-qui-photo { margin: 0; border-radius: 14px; overflow: hidden; aspect-ratio: 1 / 1; background: var(--c2-craie); }
.csb-c2-qui-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* --- 3. Notre approche : colonnes à filets verticaux --- */
.csb-c2-approche { padding-top: 0; }
.csb-c2-approche .container { padding-top: var(--c2-section); border-top: 1px solid var(--c2-trait); }
.csb-c2-colonnes { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.csb-c2-colonnes > li { position: relative; padding: 4px clamp(18px, 2vw, 32px); }
.csb-c2-colonnes > li:first-child { padding-left: 0; }
.csb-c2-colonnes > li:last-child { padding-right: 0; }
.csb-c2-colonnes > li + li { border-left: 1px solid var(--c2-trait); }
.csb-c2-colonnes > li::before { content: ""; display: block; width: 36px; height: 4px; margin-bottom: 20px; border-radius: 2px; background: var(--c2-mil); }
body.csb-c2-page .csb-c2-colonnes p:not(#csb) { margin: 0; font-size: 15.5px; line-height: 1.6; color: rgba(22, 35, 26, .84); }

/* --- 4. Notre histoire --- */
.csb-c2-histoire { background: var(--c2-craie); }
.csb-c2-histoire-grille { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(32px, 5vw, 88px); align-items: start; }
.csb-c2-histoire-photo { position: sticky; top: 110px; margin-top: 6px; aspect-ratio: 4 / 5; border-radius: 14px; overflow: hidden; background: #E9E6DA; }
.csb-c2-histoire-photo figure { position: absolute; inset: 0; margin: 0; opacity: 0; transition: opacity .35s ease; }
.csb-c2-histoire-photo figure.is-actif { opacity: 1; }
.csb-c2-histoire-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.csb-c2-histoire-photo figcaption { position: absolute; left: 14px; bottom: 14px; padding: 4px 10px; border-radius: 6px; background: #fff; font-family: var(--csb-font-titre); font-size: 15px; font-weight: 600; color: var(--c2-foret); }
.csb-c2-frise { border-top: 1px solid var(--c2-trait); }
.csb-c2-frise-item { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 20px; padding: 26px 0; border-bottom: 1px solid var(--c2-trait); }
.csb-c2-frise-annee { font-family: var(--csb-font-titre); font-size: 22px; font-weight: 600; line-height: 1.15; letter-spacing: -.01em; font-variant-numeric: lining-nums; color: rgba(0, 69, 64, .45); transition: color .25s ease; }
.csb-c2-frise-item.is-actif .csb-c2-frise-annee { color: var(--c2-foret); }
.csb-c2-frise-annee::after { content: ""; display: block; width: 0; height: 3px; margin-top: 8px; border-radius: 2px; background: var(--c2-mil); transition: width .25s ease; }
.csb-c2-frise-item.is-actif .csb-c2-frise-annee::after { width: 28px; }
body.csb-c2-page .csb-c2-frise p:not(#csb) { margin: 0; font-size: 15.5px; line-height: 1.65; }
.csb-c2-frise .csb-c2-lien { margin-top: 4px; }

/* --- 5. Organisation et implantations --- */
.csb-c2-orga-grille { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(32px, 5vw, 88px); }
body.csb-c2-page .csb-c2-sec h3.csb-c2-orga-titre:not(#csb) { margin: 0; padding-bottom: 14px; border-bottom: 1px solid var(--c2-noir); font-family: var(--csb-font-texte); font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--c2-noir); }
.csb-c2-directions { margin: 0; }
.csb-c2-directions > div { padding: 20px 0; border-bottom: 1px solid var(--c2-trait); }
.csb-c2-directions dt { margin: 0 0 4px; font-family: var(--csb-font-titre); font-size: 19px; font-weight: 600; line-height: 1.3; color: var(--c2-noir); }
.csb-c2-directions dd { margin: 0; font-size: 15.5px; line-height: 1.6; color: rgba(22, 35, 26, .84); }
.csb-c2-sites > li { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 24px; padding: 24px 0; border-bottom: 1px solid var(--c2-trait); }
body.csb-c2-page p.csb-c2-site-surface:not(#csb) { margin: 0; font-family: var(--csb-font-titre); font-size: clamp(26px, 22px + .8vw, 34px); font-weight: 600; line-height: 1; letter-spacing: -.02em; white-space: nowrap; color: var(--c2-foret); }
body.csb-c2-page .csb-c2-sites h4:not(#csb) { margin: 0 0 4px; font-family: var(--csb-font-titre); font-size: 19px; font-weight: 600; line-height: 1.3; color: var(--c2-noir); }
body.csb-c2-page p.csb-c2-site-lieu:not(#csb) { margin: 0 0 10px; font-size: 14px; font-weight: 600; color: var(--c2-vegetal); }
body.csb-c2-page .csb-c2-sites p:last-child:not(#csb) { margin: 0; font-size: 15.5px; line-height: 1.6; }
body.csb-c2-page p.csb-c2-note:not(#csb) { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 16px; margin: 18px 0 0; font-size: 14.5px; color: var(--c2-doux); }

/* --- 6. Nos installations --- */
.csb-c2-inst { padding-top: 0; }
.csb-c2-inst .container { padding-top: var(--c2-section); border-top: 1px solid var(--c2-trait); }
.csb-c2-inst-carte { position: relative; display: flex; flex-direction: column; border: 1px solid var(--c2-trait); border-radius: 14px; overflow: hidden; background: #fff; transition: border-color .25s ease; }
.csb-c2-inst-carte:hover { border-color: rgba(0, 69, 64, .32); }
.csb-c2-inst-photo { aspect-ratio: 4 / 3; overflow: hidden; background: var(--c2-craie); }
.csb-c2-inst-photo img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .6s ease; }
.csb-c2-inst-carte:hover .csb-c2-inst-photo img { transform: scale(1.03); }
.csb-c2-inst-corps { display: flex; flex-direction: column; flex: 1 1 auto; padding: 20px 22px 22px; }
body.csb-c2-page p.csb-c2-inst-meta:not(#csb) { margin: 0 0 8px; font-size: 10.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--c2-vegetal); }
body.csb-c2-page .csb-c2-inst h3 a:not(#csb) { color: inherit; text-decoration: none; }
.csb-c2-inst h3 a::after { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: 14px; }
body.csb-c2-page .csb-c2-inst-corps p:not(.csb-c2-inst-meta):not(#csb) { margin: 0 0 16px; font-size: 15px; line-height: 1.6; color: rgba(22, 35, 26, .84); }
.csb-c2-inst-action { margin-top: auto; display: inline-flex; align-items: center; gap: 8px; align-self: flex-start; font-size: 14.5px; font-weight: 700; color: var(--c2-foret); border-bottom: 2px solid var(--c2-mil); padding-bottom: 3px; transition: gap .2s ease, border-color .2s ease; }
.csb-c2-inst-action i { font-size: 12px; }
.csb-c2-inst-carte:hover .csb-c2-inst-action { gap: 12px; border-color: var(--c2-foret); }
.csb-c2-inst-carte:has(a:focus-visible) { outline: 2px solid var(--c2-foret); outline-offset: 3px; }
.csb-c2-inst h3 a:focus-visible { outline: none !important; }

/* --- 7. Domaines : index --- */
.csb-c2-domaines { padding-top: 0; }
.csb-c2-domaines .container { padding-top: var(--c2-section); border-top: 1px solid var(--c2-trait); }
.csb-c2-index { border-top: 1px solid var(--c2-noir); }
.csb-c2-index > li { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 4fr) minmax(0, 4fr); gap: 12px clamp(24px, 3vw, 48px); padding: 26px 0; border-bottom: 1px solid var(--c2-trait); scroll-margin-top: 120px; }
body.csb-c2-page .csb-c2-index h3:not(#csb) { margin: 0; }
body.csb-c2-page .csb-c2-index > li > p:not(#csb) { margin: 0; font-size: 15.5px; line-height: 1.6; color: rgba(22, 35, 26, .84); }
.csb-c2-filieres { display: flex; flex-wrap: wrap; gap: 4px 0; align-content: flex-start; font-size: 15px; line-height: 1.6; color: var(--c2-encre); }
.csb-c2-filieres li:not(:last-child)::after { content: ","; margin-right: .4em; }
.csb-c2-filieres a { font-weight: 700; color: var(--c2-foret); text-decoration: underline; text-decoration-color: var(--c2-mil); text-decoration-thickness: 2px; text-underline-offset: 4px; }
.csb-c2-filieres a:hover { text-decoration-color: var(--c2-foret); }

/* --- 8. Se former et visiter : le seul bloc vert foncé --- */
.csb-c2-former { background: var(--c2-foret); }
body.csb-c2-page .csb-c2-former p.csb-c2-sur:not(#csb) { color: var(--c2-mil); }
body.csb-c2-page .csb-c2-former :is(h2, h3):not(#csb) { color: #fff; }
body.csb-c2-page .csb-c2-former p:not(.csb-c2-sur):not(#csb) { color: rgba(255, 255, 255, .82); }
.csb-c2-etapes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); counter-reset: none; }
.csb-c2-etapes > li { padding: 4px clamp(18px, 2.4vw, 40px); }
.csb-c2-etapes > li:first-child { padding-left: 0; }
.csb-c2-etapes > li + li { border-left: 1px solid rgba(255, 255, 255, .16); }
.csb-c2-etape-n { display: block; margin-bottom: 18px; font-family: var(--csb-font-titre); font-size: 34px; font-weight: 600; line-height: 1; font-variant-numeric: lining-nums; color: var(--c2-mil); }
body.csb-c2-page .csb-c2-etapes p:not(#csb) { margin: 0; font-size: 15.5px; line-height: 1.6; }
.csb-c2-visite { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 24px 48px; margin-top: clamp(40px, 4.5vw, 64px); padding-top: clamp(28px, 3vw, 40px); border-top: 1px solid rgba(255, 255, 255, .16); }
.csb-c2-visite > div:first-child { flex: 1 1 460px; }
body.csb-c2-page .csb-c2-visite p:not(#csb) { margin: 0; max-width: 58ch; }
.csb-c2-visite-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 24px; }
.csb-c2-wa { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-size: 15px; font-weight: 700; color: #fff; text-decoration: underline; text-decoration-color: rgba(255, 255, 255, .4); text-decoration-thickness: 2px; text-underline-offset: 6px; }
.csb-c2-wa:hover { color: #fff; text-decoration-color: var(--c2-mil); }
.csb-c2-wa i { font-size: 18px; }

/* --- 9. FAQ (partial faq.php conservé) : surtitre et titre alignés sur l'accueil --- */
body.csb-c2-page .csb-lc-faq .common-subtitle { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
body.csb-c2-page .csb-lc-faq .common-subtitle img { display: none; }
body.csb-c2-page .csb-lc-faq .common-subtitle::before { content: ""; flex: none; width: 28px; height: 4px; border-radius: 2px; background: var(--c2-mil); }
body.csb-c2-page .csb-lc-faq .common-subtitle span:not(#csb) { font-size: 11px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: var(--c2-vegetal); }
body.csb-c2-page .csb-lc-faq .common-title h2:not(#csb) { font-size: clamp(26px, 21px + .8vw, 31px); line-height: 1.2; letter-spacing: -.015em; color: var(--c2-noir); }
body.csb-c2-page .csb-lc-faq .accordion-button .csb-faq-q { color: var(--c2-noir); }

/* --- Tablette --- */
@media (max-width: 1199px) {
	.csb-c2-colonnes { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 36px; }
	.csb-c2-colonnes > li:nth-child(odd) { padding-left: 0; border-left: 0; }
	.csb-c2-colonnes > li:nth-child(even) { padding-right: 0; }
	.csb-c2-index > li { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
	.csb-c2-index > li > h3 { grid-column: 1 / -1; }
}
@media (max-width: 991px) {
	.csb-c2-qui-grille, .csb-c2-histoire-grille, .csb-c2-orga-grille { grid-template-columns: minmax(0, 1fr); }
	.csb-c2-qui-photo { aspect-ratio: 4 / 3; }
	.csb-c2-histoire-photo { display: none; }
	.csb-c2-etapes { grid-template-columns: minmax(0, 1fr); }
	.csb-c2-etapes > li { display: grid; grid-template-columns: 56px minmax(0, 1fr); column-gap: 8px; padding: 22px 0; }
	.csb-c2-etapes > li + li { border-left: 0; border-top: 1px solid rgba(255, 255, 255, .16); }
	.csb-c2-etape-n { grid-row: span 2; margin: 0; font-size: 28px; }
}
/* --- Mobile --- */
@media (max-width: 767px) {
	.csb-c2-chiffres-liste { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.csb-c2-chiffres-liste li { padding: 16px 12px; }
	.csb-c2-chiffres-liste li:nth-child(3) { padding-left: 0; }
	.csb-c2-chiffres-liste li:nth-child(3)::before { display: none; }
	.csb-c2-chiffres-liste li:nth-child(n+3) { border-top: 1px solid var(--c2-trait); }
	.csb-c2-chiffre-txt { font-size: 13px; }
	.csb-c2-index > li { grid-template-columns: minmax(0, 1fr); padding: 22px 0; }
	.csb-c2-tete-cta .e-primary-btn { order: 2; }
}
@media (max-width: 575px) {
	.csb-c2-colonnes { grid-template-columns: minmax(0, 1fr); row-gap: 0; }
	.csb-c2-colonnes > li, .csb-c2-colonnes > li:nth-child(even) { padding: 22px 0; border-left: 0; }
	.csb-c2-colonnes > li + li { border-top: 1px solid var(--c2-trait); }
	.csb-c2-colonnes > li::before { margin-bottom: 14px; }
	.csb-c2-sites > li { grid-template-columns: minmax(0, 1fr); gap: 10px; }
	.csb-c2-frise-item { grid-template-columns: minmax(0, 1fr); gap: 8px; padding: 22px 0; }
	.csb-c2-frise-annee::after { display: none; }
	.csb-c2-frise-annee { color: var(--c2-foret); font-size: 20px; }
	.csb-c2-qui-photo { aspect-ratio: 4 / 3; }
}

@media (prefers-reduced-motion: reduce) {
	.csb-c2-page .csb-c2-sec *, .csb-c2-page .csb-c2-sec *::before, .csb-c2-page .csb-c2-sec *::after { transition: none !important; }
	.csb-c2-inst-carte:hover .csb-c2-inst-photo img { transform: none; }
}

/* Ajustements après contrôle visuel (8 nov. 2026) */
body.csb-c2-page .csb-lc-faq .common-subtitle { justify-content: flex-start; }

/* --- 6 bis. Installations en slider (8 nov. 2026) : 3 cartes visibles, défilement automatique --- */
.csb-c2-inst-slider .swiper { overflow: hidden; }
.csb-c2-inst-slider .swiper-slide { height: auto; }
.csb-c2-inst-slider .csb-c2-inst-carte { height: 100%; }
/* Biodigesteur (sans photo) : carte texte, fond crème et filet jaune, contenu calé en bas comme les autres cartes */
.csb-c2-inst-carte.is-texte { background: var(--c2-craie); border-color: transparent; border-top: 3px solid var(--c2-mil); }
.csb-c2-inst-carte.is-texte .csb-c2-inst-corps { justify-content: flex-end; padding: 28px 24px 24px; }
body.csb-c2-page .csb-c2-inst-carte.is-texte h3:not(#csb) { font-size: clamp(22px, 19px + .6vw, 26px); }
.csb-c2-slider-bas { display: flex; align-items: center; gap: 24px; margin-top: 28px; }
.csb-c2-slider-nav { display: flex; gap: 10px; flex: none; }
.csb-c2-slider-nav button { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; border: 1px solid var(--c2-trait); border-radius: 50%; background: #fff; color: var(--c2-foret); font-size: 15px; cursor: pointer; transition: background-color .2s ease, color .2s ease, border-color .2s ease; }
.csb-c2-slider-nav button:hover { background: var(--c2-foret); border-color: var(--c2-foret); color: #fff; }
.csb-c2-slider-nav button.swiper-button-disabled { opacity: .4; cursor: default; }
.csb-c2-slider-nav button:focus-visible { outline: 2px solid var(--c2-foret); outline-offset: 3px; }
.csb-c2-inst-pause { margin-left: 6px; }
.csb-c2-inst-pagination.swiper-pagination-progressbar { position: relative; flex: 1 1 auto; height: 2px; background: var(--c2-trait); }
.csb-c2-inst-pagination .swiper-pagination-progressbar-fill { background: var(--c2-foret); }
/* Le contour de focus reste visible malgré le recadrage du slider */
.csb-c2-inst-slider .csb-c2-inst-carte:has(a:focus-visible) { outline-offset: -3px; }
