/* Remplacements CSS des comportements autrefois gérés par jQuery / Bootstrap JS */

html{scroll-behavior:smooth}

/* Menu mobile : case à cocher pilotée par le label .navbar-toggle */
.nav-toggle-cb{position:absolute;opacity:0;pointer-events:none}
.navbar-toggle{cursor:pointer}
.nav-toggle-cb:checked~.navbar-collapse{display:block}
.nav-toggle-cb:focus-visible~.navbar-header .navbar-toggle{outline:2px solid #0e72ba;outline-offset:2px}

/* Carrousel d'accueil : fondu automatique entre les 4 diapositives (6 s chacune) */
.carousel-inner{height:75vh}
.carousel-fade .carousel-inner>.item{display:block;position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;visibility:hidden;animation:carousel-slide 24s linear infinite}
.carousel-indicators li{cursor:default;animation:carousel-dot 24s step-end infinite}
.carousel-fade .carousel-inner>.item:nth-child(2),.carousel-indicators li:nth-child(2){animation-delay:-18s}
.carousel-fade .carousel-inner>.item:nth-child(3),.carousel-indicators li:nth-child(3){animation-delay:-12s}
.carousel-fade .carousel-inner>.item:nth-child(4),.carousel-indicators li:nth-child(4){animation-delay:-6s}
@keyframes carousel-slide{0%{opacity:1;visibility:visible}21%{opacity:1;visibility:visible}25%{opacity:0;visibility:hidden}96%{opacity:0;visibility:hidden}100%{opacity:1;visibility:visible}}
@keyframes carousel-dot{0%{background-color:#fff}25%{background-color:transparent}}

/* Blocs animés de l'accueil (ex-plugin css3-animate-it) */
.animatedParent .fadeInUpShort{animation-name:fadeInUpShort}
@supports (animation-timeline:view()){
.animatedParent .fadeInUpShort{animation-timeline:view();animation-range:entry 0% entry 80%;animation-delay:0s}
}

/* Bouton retour en haut : visible après 300 px de défilement quand le navigateur le permet */
.scrollup{display:block;z-index:9999}
@supports (animation-timeline:scroll()){
.scrollup{animation:scrollup-show linear both;animation-timeline:scroll(root);animation-range:0 300px}
@keyframes scrollup-show{from{opacity:0;visibility:hidden}to{opacity:1;visibility:visible}}
}

@media (prefers-reduced-motion:reduce){
html{scroll-behavior:auto}
.carousel-fade .carousel-inner>.item,.carousel-indicators li,.animatedParent .fadeInUpShort{animation:none}
.carousel-fade .carousel-inner>.item:first-child{opacity:1;visibility:visible}
.carousel-indicators li:first-child{background-color:#fff}
.animatedParent .fadeInUpShort{opacity:1;transform:none}
}
