/* Bandeau animé de l'accueil : géométrie de LayerSlider 5 « fullwidth ». */
.ab-hero { position: relative; width: 100%; overflow: hidden; margin-bottom: 0; }
.ab-hero-slide { position: absolute; inset: 0; visibility: hidden; }
.ab-hero-slide.is-active { visibility: visible; z-index: 2; }
.ab-hero-slide.is-leaving { visibility: visible; z-index: 3; }
.ab-hero-bg { position: absolute; left: 0; top: 50%; width: 100%; height: auto; transform: translateY(-50%); max-width: none !important; }
.ab-hero-bg[style*="left"] { transform: none; }
.ab-hero-stage { position: absolute; inset: 0; }
.ab-hero-layer { position: absolute; display: block; width: max-content; white-space: nowrap; opacity: 0; will-change: transform, opacity; }
/* comme LayerSlider : les classes de style (text2…) gardent leur marge interne, pas leur fond */
.ab-hero-layer img { display: block; max-width: none !important; box-sizing: content-box; background: none !important; box-shadow: none !important; }
.ab-hero.ls-fullwidth .ls-circle-timer { display: block; }
.ab-hero .ab-hero-prev, .ab-hero .ab-hero-next { display: none; }
@media (hover: hover) { .ab-hero:hover .ab-hero-prev, .ab-hero:hover .ab-hero-next { display: block; } }
