/* FCLB carousel presentation. Load after tiny-slider.css.
   Add fclb-carousel to the outer wrapper when initializing the carousel.
   Keep Tiny Slider responsible for slide widths, overflow and transitions. */
.fclb-carousel {
    --fclb-carousel-color: var(--couleur-texte, #243b42);
    --fclb-carousel-accent: var(--couleur-principale, #557f3b);
    --fclb-carousel-background: #fff;
    --fclb-carousel-border: #dce1dd;
    position: relative;
}
.fclb-carousel .tns-controls {
    display: flex;
    justify-content: flex-end;
    gap: .5rem;
    margin: 0 0 1rem;
}
.fclb-carousel .tns-controls button {
    position: static;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 2.75rem;
    width: 2.75rem;
    height: 2.75rem;
    margin: 0;
    padding: 0;
    border: 1px solid var(--fclb-carousel-border);
    border-radius: 50%;
    background: var(--fclb-carousel-background);
    color: var(--fclb-carousel-color);
    font: inherit;
    line-height: 1;
    opacity: 1;
    visibility: visible;
    transform: none;
    box-shadow: none;
    cursor: pointer;
}
.fclb-carousel .tns-controls button:hover:not(:disabled) {
    border-color: var(--fclb-carousel-accent);
    background: var(--fclb-carousel-accent);
    color: #fff;
}
.fclb-carousel .tns-controls button:disabled {
    opacity: .4;
    cursor: default;
}
.fclb-carousel .tns-controls svg {
    display: block;
    width: 1.25rem;
    height: 1.25rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
}
.fclb-carousel .tns-nav {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: .25rem;
    margin: 1rem 0 0;
    padding: 0;
}
.fclb-carousel .tns-nav button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    box-shadow: none;
    cursor: pointer;
}
.fclb-carousel .tns-nav button::before {
    content: '';
    display: block;
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    background: var(--fclb-carousel-color);
    opacity: .35;
}
.fclb-carousel .tns-nav button.tns-nav-active::before {
    background: var(--fclb-carousel-accent);
    opacity: 1;
}
.fclb-carousel .tns-controls button:focus-visible,
.fclb-carousel .tns-nav button:focus-visible {
    outline: 2px solid var(--fclb-carousel-accent);
    outline-offset: 3px;
}
.fclb-carousel .tns-controls[hidden],
.fclb-carousel .tns-nav[hidden],
.fclb-carousel button[hidden] {
    display: none !important;
}