/* =====================================================
   BLOC TESTIMONIALS - STRUCTURE
   ===================================================== */

/* Titre "Ce que pensent nos anciens élèves" — desktop */
@media (min-width: 1025px) {
    .gb-headline-te-ttl-001 {
        font-size: 2.5rem !important;
        font-weight: 800 !important;
    }
}

/* Section externe — fond blanc forcé */
.gb-container-d77d5feb {
    background-color: var(--base, #ffffff) !important;
}

/* Largeur max + clip du 3e slide au niveau wrapper */
.gb-container-te-wrap-001 {
    max-width: 1300px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow: hidden !important;
    position: relative !important;
}

/* Symbole Y Fitzy — grand, gris, centré, coupé en bas, totalement derrière */
.gb-container-te-wrap-001::before {
    content: "";
    position: absolute;
    z-index: 0;
    right: 0; bottom: 0;
    background-image: url('../../img/symbole_y_logo_gris.png');
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: 50% 20%;
    opacity: 0.15;
    pointer-events: none;
    top: 50% !important; 
    left: 50% !important; 
    transform: translate(-50%, -50%) !important; 
    width: 800px !important;
    height: 800px !important; 
    background-size: contain !important; 
}

.gb-container-te-wrap-001 > * {
    position: relative;
    z-index: 2;
}

@media (min-width: 1205px) {
    .testimonials-slider {
        padding: 0 !important;
    }
}




@media (min-width: 1025px) and (max-width: 1204px) {
    .testimonials-slider {
        padding: 0 !important;
    }

    .gb-container-te-wrap-001::before {
        background-size: 100%;
        background-position: 50% 10%;
    }
}

@media (min-width: 769px) and (max-width: 1024px) {
    .testimonials-slider {
        padding: 0 !important;
    }

    .gb-container-te-wrap-001::before {
        background-size: 105%;
        background-position: 50% 20%;
    }
}

@media (max-width: 768px) {
    .gb-container-te-wrap-001::before {
        background-size: 105%;
        background-position: 50% 20%;
    }
    /* Force slides above the Y symbol */
    .gb-container-te-wrap-001 .splide__slide,
    .gb-container-te-wrap-001 .testimonials-slider__card {
        position: relative;
        z-index: 3 !important;
    }
    .testimonials-slider__carousel {
        overflow: visible !important;
    }
}


.testimonials-slider__carousel {
    overflow: hidden !important;
}

.testimonials-slider__slide {
    display: flex !important;
    flex-direction: column !important;
    padding: 0 3px !important;
    min-height: 18em;
}

/* =====================================================
   BLOC TESTIMONIALS - CARTE
   ===================================================== */

/* Espace au-dessus de la carte pour que le badge puisse déborder */
.testimonials-slider__slide {
    padding-top: 22px !important;
}

.testimonials-slider__card {
    background: var(--base, #fff) !important;
    width: 100%;
    height: 100%;
    border-radius: var(--radius-md) !important;
    border: 1.5px solid var(--contrast) !important;
    box-shadow: none !important;
    overflow: visible !important;   /* permet au badge de déborder en haut */
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 3rem 2rem !important;  /* padding-top pour le badge */
    gap: 14px !important;
}

/* Badge centré sur le bord supérieur de la carte */
.testimonials-slider__header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    transform: translateY(-50%) !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}

/* Reorder : nom (1) → texte (2) — header est en absolu, hors flux */
.testimonials-slider__footer      { order: 1 !important; }
.testimonials-slider__content-wrap { order: 2 !important; }

/* =====================================================
   BLOC TESTIMONIALS - ÉTOILES DE NOTATION
   ===================================================== */

/* Badge pill vert centré */
.testimonials-slider__rating:not(:has(.gb-text)){
    display: none
}
.testimonials-slider__rating:has(.gb-text){
    display: inline-flex !important;
    background: var(--accent) !important;
    border-radius: 50px !important;
    padding: 0.25rem 0.5rem !important;
}

.testimonials-slider__rating .gb-text {
    font-size: 0 !important;
    line-height: 0 !important;
    display: block !important;
}

/* Étoiles dynamiques : blanches jusqu'à --rating-percentage, semi-transparentes au-delà */
.testimonials-slider__rating:has(> .gb-text) .gb-text::before {
    content: '★★★★★';
    font-size: 40px !important;
    line-height: 1 !important;
    letter-spacing: 4px !important;
    display: inline-block !important;
    background: linear-gradient(
        to right,
        #ffffff calc(var(--rating-percentage, 100%)),
        rgba(255, 255, 255, 0.3) calc(var(--rating-percentage, 100%))
    ) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    color: transparent !important;
}

/* =====================================================
   BLOC TESTIMONIALS - CONTENU
   ===================================================== */

.testimonials-slider__content-wrap {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}

.testimonials-slider__excerpt {
    font-family: "Nunito" !important;
    font-size: 1.1rem !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
    color: var(--contrast) !important;
    margin: 0 !important;
}

.testimonials-slider__excerpt p {
    margin: 0 !important;
}

.testimonials-slider__excerpt::before {
    content: '« ';
}

.testimonials-slider__excerpt::after {
    content: ' »';
}

.testimonials-slider__excerpt .wp-block-post-excerpt__more-link {
    display: none !important;
}

.testimonials-slider__footer {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
    border-top: none !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
}

.testimonials-slider__client {
    font-family: "Raleway" !important;
    font-weight: 700 !important;
    font-size: 1.1rem ;
    color: var(--contrast) !important;
    margin: 0.25rem !important;
}

.testimonials-slider__footer .gb-text:not(.testimonials-slider__client) {
    display: none !important;
}

/* =====================================================
   BLOC TESTIMONIALS - IMAGE DÉCORATIVE
   ===================================================== */
   @media (min-width: 1025px) and (max-width: 1600px) {
            body.home .gb-container-te-wrap-001  {
        width: 90% !important;
        }
        .testimonials-slider__client {
             font-size: 1.25rem !important;
        }
}

   @media (min-width: 1600px) {
        body.home .gb-container-te-wrap-001  {
        width: 100% !important;
        }
}

@media (min-width: 1025px) {
     body.home .gb-container-te-wrap-001  {
           margin: auto;
        max-width: 1300px;
        }
    .testimonials-slider {
        display: flex !important;
        align-items: stretch !important;
        gap: 24px !important;
 
        box-sizing: border-box !important;
    }

    .testimonials-slider__carousel {
        flex: 2 1 0 !important;
        min-width: 0 !important;
    }

    /* Splide : propager la hauteur depuis les cartes */
    .testimonials-slider__carousel .splide__track,
    .testimonials-slider__carousel .splide__list {
        height: 100% !important;
    }

    .testimonials-slider__carousel .splide__slide {
        height: auto !important;
        align-self: stretch !important;
    }

    /* Image étirée à la hauteur des cartes */
    .testimonials-slider__decorative {
        flex: 1 1 0 !important;
        min-width: 0 !important;
        border-radius: var(--radius-md) !important;
        overflow: hidden !important;
        margin: 0 !important;
        min-height: 18em;
    }

    .testimonials-slider__decorative img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        display: block !important;
    }
}

@media (max-width: 1204px) {
    .testimonials-slider__decorative {
        display: none !important;
    }
}

/* Masquer le débordement du carousel en tablette (769-1024px) */
@media (max-width: 1024px) {
    .testimonials-slider__carousel {
        overflow: hidden !important;
    }
    .gb-container-te-wrap-001 {
        overflow: hidden !important;
    }
}

/* =====================================================
   BLOC TESTIMONIALS - PAGINATION BULLETS
   ===================================================== */

/* Sortir la pagination du flux absolu de Splide */
.testimonials-slider__carousel .splide__pagination {
    position: relative !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 20px 0 4px !important;
    margin: 0 !important;
    list-style: none !important;
}

.testimonials-slider__carousel .splide__pagination li {
    list-style: none !important;
}

.testimonials-slider__carousel .splide__pagination__page {
    width: 10px !important;
    height: 10px !important;
    border-radius: 50% !important;
    background: #d0d0d0 !important;
    opacity: 1 !important;
    transition: background 0.3s ease, transform 0.3s ease !important;
    padding: 0 !important;
    border: none !important;
}

.testimonials-slider__carousel .splide__pagination__page.is-active {
    background: var(--accent-2, var(--contrast)) !important;
    transform: scale(1.3) !important;
}

/* =====================================================
   BLOC TESTIMONIALS - RESPONSIVE
   ===================================================== */

/* Pas de transparence sur tous les breakpoints */
.testimonials-slider__carousel .splide__slide,
.testimonials-slider__slide,
.testimonials-slider__card {
    opacity: 1 !important;
}

/* Desktop/tablette : hauteur uniforme */
@media (min-width: 769px) {
    .testimonials-slider__carousel .splide__slide {
        height: auto !important;
        transform: none !important;
    }

    .testimonials-slider__carousel .splide__list {
        align-items: stretch !important;
    }
}



@media (max-width: 768px) {
 .testimonials-slider{
    padding: 0 !important;
 }
    .testimonials-slider__excerpt,
    .testimonials-slider__excerpt p {
        font-size: 1rem !important;
    }

    .gb-headline-te-ttl-001 {
        font-size: 1.5rem !important;
        font-weight: 800 !important;
    }
}
