body.cbhb-banner-active #cbhb-campaign-bar{display:none!important}
/* Prévenir l'affichage initial de l'ancien bandeau avant initialisation. */
html.cbhb-banner-preparing #cbhb-campaign-bar{display:none!important}
/* Complément au bandeau de campagne existant, limité à l’accueil */
.cbhb-dynamic-banner{position:relative;overflow:hidden;margin:12px 0 18px;width:100%;box-sizing:border-box;min-height:185px;border-radius:24px;background:linear-gradient(110deg,#071b22,#173f51 65%,#24667b);color:#fff;box-shadow:inset 0 0 0 1px #ffffff27,0 12px 28px #0018202a}
.cbhb-dynamic-banner[hidden],.cbhb-campaign-superseded{display:none!important}
.cbhb-dynamic-banner:after{content:"";position:absolute;z-index:0;pointer-events:none;inset:-25% auto -25% -50%;width:45%;transform:skewX(-20deg);background:linear-gradient(90deg,transparent,#80dfff13,transparent);animation:cbhb-led-sweep 7s linear infinite}
@keyframes cbhb-led-sweep{from{left:-55%}to{left:155%}}
.cbhb-dynamic-banner:before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 3px,#ffffff07 4px 5px);mix-blend-mode:screen}
.cbhb-dynamic-track{position:relative;z-index:1}.cbhb-dynamic-slide{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 30px 9px;min-height:140px}
.cbhb-dynamic-slide h2{font-size:clamp(1.5rem,4vw,2.8rem);line-height:1.08;font-weight:900;margin:0 0 10px;letter-spacing:.03em;color:#fff}.cbhb-dynamic-slide p{margin:0 0 9px;color:#e1f4fb}
.cbhb-dynamic-copy{min-width:0}.cbhb-dynamic-slide img{animation:cbhb-led-float 4s ease-in-out infinite;display:block;max-width:46%;max-height:142px;object-fit:contain;filter:drop-shadow(0 10px 12px #0004)}
.cbhb-dynamic-link{color:#fff;display:inline-block;text-decoration:underline;text-underline-offset:4px;font-weight:700}.cbhb-dynamic-link:focus-visible,.cbhb-dynamic-controls button:focus-visible{outline:3px solid #caff3e;outline-offset:3px}
.cbhb-dynamic-controls{display:flex;position:relative;z-index:1;justify-content:center;align-items:center;gap:12px;padding:0 12px 12px}.cbhb-dynamic-controls button{border:1px solid #ffffff66;background:#ffffff20;color:white;border-radius:100px;width:36px;height:36px;font:700 22px/1 Arial;cursor:pointer}.cbhb-dynamic-controls button:disabled{opacity:.3;cursor:default}.cbhb-dynamic-count{font-variant-numeric:tabular-nums;font-size:13px;min-width:36px;text-align:center}
@media(max-width:640px){.cbhb-dynamic-banner{min-height:0;width:calc(100% - 16px);border-radius:18px;margin:8px auto 14px}.cbhb-dynamic-slide{flex-direction:column-reverse;align-items:stretch;text-align:center;padding:16px 14px 8px;gap:9px;min-height:0}.cbhb-dynamic-slide img{max-width:100%;max-height:110px;margin:auto}.cbhb-dynamic-slide h2{font-size:1.75rem}.cbhb-dynamic-controls{padding-bottom:10px}}
@media(prefers-reduced-motion:reduce){.cbhb-dynamic-banner *{animation:none!important;transition:none!important}}

@keyframes cbhb-led-float{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-5px) scale(1.015)}}
.cbhb-banner-single .cbhb-dynamic-controls button{display:none}
.cbhb-banner-single .cbhb-dynamic-count{font-size:12px;letter-spacing:.035em;color:#c8e9f1}
@media(max-width:640px){.cbhb-dynamic-banner{width:100%;margin:8px 0 14px}}
@media(prefers-reduced-motion:reduce){.cbhb-dynamic-banner:after,.cbhb-dynamic-slide img{animation:none!important}}

/* Alternance fluide strictement contenue dans le bandeau existant. */
.cbhb-dynamic-track{overflow:hidden;isolation:isolate;min-height:160px}
.cbhb-dynamic-slide{box-sizing:border-box;width:100%}
.cbhb-dynamic-slide.cbhb-exit{position:absolute;inset:0;animation:cbhb-banner-out .65s ease-in forwards;pointer-events:none}
.cbhb-dynamic-slide.cbhb-enter{animation:cbhb-banner-in .65s ease-out both}
@keyframes cbhb-banner-out{to{opacity:0;transform:translateX(-12%) scale(.97)}}
@keyframes cbhb-banner-in{from{opacity:0;transform:translateX(12%) scale(.97)}to{opacity:1;transform:none}}
@media(max-width:640px){.cbhb-dynamic-track{min-height:190px}}
@media(prefers-reduced-motion:reduce){.cbhb-dynamic-slide.cbhb-exit,.cbhb-dynamic-slide.cbhb-enter{animation:none!important}}

/* Version multi-messages : l'animation reste strictement dans le cadre. */
.cbhb-dynamic-banner{isolation:isolate;contain:paint}
.cbhb-dynamic-track{position:relative;overflow:hidden;min-height:160px}
.cbhb-dynamic-slide{position:relative;max-width:100%;overflow:hidden}
.cbhb-dynamic-slide.cbhb-exit{position:absolute;left:0;top:0;right:0;bottom:0}
@media(max-width:640px){.cbhb-dynamic-banner{width:100%;max-width:100%;margin-left:0;margin-right:0}.cbhb-dynamic-track{min-height:190px}}

/* Correctif validé : mise en page simple centrée, aucun contrôle ou compteur. */
.cbhb-dynamic-banner{font-family:inherit}
.cbhb-dynamic-track{display:block}
.cbhb-dynamic-slide{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;min-height:184px;padding:16px 24px;box-sizing:border-box;color:inherit;font-family:inherit;text-decoration:none}
.cbhb-dynamic-slide h2{font-family:inherit;font-weight:900;letter-spacing:inherit;margin:0;color:#fff}
.cbhb-dynamic-slide p{font-family:inherit;margin:0;max-width:760px}
.cbhb-dynamic-slide img{order:-1;width:auto;max-width:min(240px,80%);max-height:98px;margin:0 auto;object-fit:contain}
.cbhb-dynamic-slide[href]{cursor:pointer}
.cbhb-dynamic-slide[href]:hover h2,.cbhb-dynamic-slide[href]:focus-visible h2{text-decoration:underline;text-underline-offset:.13em}
.cbhb-dynamic-slide[href]:focus-visible{outline:3px solid #fff;outline-offset:-5px;border-radius:18px}
.cbhb-dynamic-controls,.cbhb-dynamic-count{display:none!important}
@media(max-width:640px){.cbhb-dynamic-slide{min-height:190px;padding:14px;gap:6px}.cbhb-dynamic-slide img{max-height:80px;max-width:180px}.cbhb-dynamic-slide h2{font-size:clamp(1.3rem,5.5vw,1.75rem)}}

/* Titres alignés sur les titres natifs CBHB (dernier mot italique, teinte du thème). */
.cbhb-dynamic-banner .cbhb-dynamic-slide h2{font-family:var(--cbhb-banner-heading-family,inherit);font-weight:var(--cbhb-banner-heading-weight,900);font-style:normal;color:#fff;text-transform:uppercase}
.cbhb-dynamic-banner .cbhb-dynamic-slide h2 em{color:var(--cbhb-banner-accent-color,#45c6f5);font-style:var(--cbhb-banner-accent-font-style,italic);font-weight:inherit}
.cbhb-dynamic-banner .cbhb-dynamic-slide img{max-height:105px;object-fit:contain}

/* CBHB_THEME_BANNER_V20261113 : fond, accent et commandes suivent le thème global. */
html[data-theme] .cbhb-dynamic-banner {
 background: linear-gradient(110deg,var(--cbhb-dark,#083b29),var(--cbhb-bg1,#0f5137) 65%,var(--cbhb-bg2,#3a9258)) !important;
}
html[data-theme] .cbhb-dynamic-banner .cbhb-dynamic-slide h2 em {
 color: var(--cbhb-accent,#72ff00) !important;
}
html[data-theme] .cbhb-dynamic-banner .cbhb-dynamic-controls button {
 border-color: var(--cbhb-accent,#72ff00);
}
html[data-theme="deuil"] .cbhb-dynamic-banner {
 background:linear-gradient(110deg,#202124,#303136 65%,#3c3e41)!important;
}
html[data-theme="deuil"] .cbhb-dynamic-banner .cbhb-dynamic-slide h2 em {
 color:#dbdcdd!important;
}
