/* =============================================================================
   WGL Advanced Slider
   ============================================================================= */

.wgl-main-slider,
.wgl-secondary-slider {
    position: relative;
    overflow: hidden; /* masque les slides hors viewport */
    width: 100%;
}

.wgl-main-slider {
    /*margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);*/
    width: 100%;
    max-width: 100%;
}

/* Track : flex sans retour à la ligne, transition gérée par JS */
.wgl-slider-track {
    display: flex;
    flex-wrap: nowrap;
    will-change: transform;
    /* pas de transition ici — le JS l'ajoute/retire dynamiquement */
}

/* ── Slide principal : 1 slide = 100% du wrapper ── */
.wgl-main-slider .wgl-slide {
    flex: 0 0 100%;
    width: 100%;
    position: relative;
}

/* ── Slide secondaire : 3 slides visibles = chacun fait 1/3 du wrapper ── */
.wgl-secondary-slider .wgl-slide--secondary {
    flex: 0 0 calc(100% / 3);
    width: calc(100% / 3);
    position: relative;
    padding: 0 5px; /* gouttière via padding pour ne pas casser le calcul */
    box-sizing: border-box;
}

/* ── Lien ── */
.wgl-slide-link {
    display: block;
    width: 100%;
    text-decoration: none;
    color: inherit;
}

/* ── Image ── */
.wgl-slide-img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}

/* ── Caption ── */
.wgl-slide-caption {
    position: absolute;
    bottom: 0;
    left: 8px;  /* compense le padding de gouttière */
    right: 8px;
    padding: 1rem 1rem;
    background: linear-gradient(transparent, rgba(0,0,0,0.5));
}

.wgl-main-slider .wgl-slide-caption {
    left: 0;
    right: 0;
}

.wgl-slide-title {
    display: block;
    color: #fff;
    font-size: 1.2rem;
    font-weight: 700;
    margin: 0;
    text-shadow: 0 1px 3px rgba(0,0,0,0.4);
}

.wgl-main-slider .wgl-slide-title { font-size: 1.5rem; }

/* ── Flèches ── */
.wgl-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    background: rgba(255,255,255,0.85);
    border: none;
    border-radius: 50%;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background 0.2s, opacity 0.2s;
    opacity: 0.8;
}
.wgl-arrow:hover { background: #fff; opacity: 1; }
.wgl-arrow-prev  { left: 12px; }
.wgl-arrow-next  { right: 12px; }

/* ── Dots ── */
.wgl-dots {
    position: absolute;
    bottom: 12px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 8px;
    z-index: 10;
}
.wgl-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 2px solid #fff;
    background: transparent;
    cursor: pointer;
    padding: 0;
    transition: background 0.2s;
}
.wgl-dot.is-active { background: #fff; }

/* =============================================================================
   Mobile
   ============================================================================= */
@media (max-width: 767px) {

    .wgl-main-slider {
        margin-left: 0;
        margin-right: 0;
        width: 100%;
        max-width: 100%;
    }

    /* Sur mobile : 1 slide à la fois pour le secondary aussi */
    .wgl-secondary-slider .wgl-slide--secondary {
        flex: 0 0 100%;
        width: 100%;
        padding: 0;
    }

    .wgl-secondary-slider .wgl-slide-caption {
        left: 0;
        right: 0;
    }

    .wgl-slide-title  { font-size: 1rem; }
    .wgl-arrow        { width: 36px; height: 36px; }
}
