/* =====================================================================
   En-tête photo commun (8 nov. 2026) : partials/csb-hero-photo.php, préfixe .csb-ph
   Reprend le bandeau des pages de formation (csb-formation.css .csb-fo-hero + réglages Maraîchage) pour les pages
   Événements, Actualités et fiches d'actualité. Base commune : .csb-lc-bandeau dans csb.css.
   Sélecteurs doublés « :not(#csb) » : passer devant les règles de texte des pages (.csb-ag p, .csb-jn p).
   ===================================================================== */
.csb-ph picture { position: absolute; inset: 0; z-index: 0; }
.csb-ph .csb-lc-bandeau-fond { object-position: center 40%; }
.csb-ph::after { background: linear-gradient(90deg, rgba(8, 28, 26, .86) 0%, rgba(8, 28, 26, .7) 40%, rgba(8, 28, 26, .18) 72%, rgba(8, 28, 26, .05) 100%); }
.csb-ph .breadcrumb-content { min-height: 440px; padding: 48px 0 44px; justify-content: center; }
.csb-ph .breadcrumb-nav { margin-bottom: 18px; }
.csb-ph .breadcrumb-nav ul li + li { margin-left: 4px; }
body .csb-ph .breadcrumb-nav ul li:not(#csb):not(#csb) { font-size: 13px; line-height: 1.5; color: rgba(255, 255, 255, .78); }
.csb-ph .breadcrumb-nav ul li::after { font-size: 11px; margin: 0 6px 0 8px; }
.csb-ph .breadcrumb-nav a { color: #fff; }
body .csb-ph .breadcrumb-title h1:not(#csb):not(#csb) { margin: 0 0 12px; max-width: 16em; font-family: var(--csb-font-titre); font-size: clamp(30px, 1vw + 26px, 42px); font-weight: 600; line-height: 1.12; letter-spacing: -.01em; color: #fff; text-wrap: balance; }
body .csb-ph p.csb-ph-accroche:not(#csb):not(#csb) { max-width: 52ch; margin: 0; font-size: 17px; line-height: 1.55; color: rgba(255, 255, 255, .94); }
.csb-ph-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 22px; margin-top: 28px; }
.csb-ph-lien { color: #fff; font-size: 15px; font-weight: 500; text-decoration: underline; text-underline-offset: 4px; }
.csb-ph-lien:hover { color: #FFE06A; }
.csb-ph a:focus-visible { outline: 3px solid #FFE06A; outline-offset: 3px; border-radius: 3px; }
.csb-ph-faits { display: flex; flex-wrap: wrap; gap: 10px 36px; max-width: 640px; margin: 30px 0 0; padding-top: 16px; border-top: 1px solid rgba(255, 255, 255, .3); }
.csb-ph-faits dt { font-size: 13px; font-weight: 500; color: rgba(255, 255, 255, .82); }
body .csb-ph-faits dd:not(#csb):not(#csb) { margin: 0; font-size: 15px; font-weight: 600; color: #fff; }
@media (max-width: 767px) {
	.csb-ph .breadcrumb-content { min-height: 0; padding: 36px 0 32px; }
	.csb-ph::after { background: linear-gradient(180deg, rgba(8, 28, 26, .66) 0%, rgba(8, 28, 26, .84) 100%); }
	.csb-ph-faits { gap: 10px 24px; margin-top: 24px; }
}
