/* ============================================================
   PAGES COURS (template cours.php) : Activ' Aqua / Maman / Senior,
   Enfant, Adulte. Cartes cours uniformes + banniere.
   Ajout 08/09/2026
   ============================================================ */

/* --- Banniere : voile navy en bas de l'image pour fondre vers la
       section bleue, box texte plus affirmee ------------------------ */
.page-template-cours .block_banner__classes figure {
    position: relative;
}
.page-template-cours .block_banner__classes figure::after {
    content: "";
    position: absolute;
    left: 0; right: 0; bottom: 0;
    height: 55%;
    background: linear-gradient(to bottom, rgba(5, 31, 68, 0) 0%, rgba(5, 31, 68, .55) 100%);
    pointer-events: none;
}
.page-template-cours .block_banner__classes .container > div > div {
    position: relative;
    border-left: .6rem solid #ee6e2a;
    box-shadow: 0 1.8rem 4rem rgba(5, 31, 68, .18);
}
.page-template-cours .block_banner__classes .container h1 {
    color: #051f44;
    margin-bottom: 2rem;
}
.page-template-cours .block_banner__classes .container p {
    color: #051f44;
    font-weight: 500;
}
/* Sur-titre "Swim Stars Activ'" uniquement sur les 3 pages Activ' (FR + EN) */
.page-id-68879 .block_banner__classes .container h1::before,
.page-id-76443 .block_banner__classes .container h1::before,
.page-id-68884 .block_banner__classes .container h1::before,
.page-id-76440 .block_banner__classes .container h1::before,
.page-id-68892 .block_banner__classes .container h1::before,
.page-id-76451 .block_banner__classes .container h1::before {
    content: "Swim Stars Activ'";
    display: block;
    color: #ee6e2a;
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: .2em;
    line-height: 2rem;
    text-transform: uppercase;
    margin-bottom: 1.2rem;
}

/* --- Grille de cartes : hauteur uniforme, image ratio fixe,
       fleche alignee en bas, hover discret ---------------------------- */
.page-template-cours .block_classes__courses .block_courses__slider {
    row-gap: 3rem;
}
.page-template-cours .block_classes__courses .block_courses__slider > [class*="col-"] {
    display: flex;
}
.page-template-cours .block_courses__slider__single {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    margin-bottom: 0 !important;
    background: #fcf6f1;
    transition: transform .25s ease, box-shadow .25s ease;
}
.page-template-cours .block_courses__slider__single:hover {
    transform: translateY(-.4rem);
    box-shadow: 0 1.6rem 3.2rem rgba(5, 31, 68, .22);
}
.page-template-cours .block_courses__slider__single figure {
    margin: 0;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    flex: 0 0 auto;
}
.page-template-cours .block_courses__slider__single figure img {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
    display: block;
    transition: transform .45s ease;
}
.page-template-cours .block_courses__slider__single:hover figure img {
    transform: scale(1.04);
}
.page-template-cours .block_courses__slider__single h3 {
    margin: 0;
    padding: 2.4rem 2.4rem 1.2rem;
    font-size: 2.4rem;
    line-height: 3rem;
}
.page-template-cours .block_courses__slider__single h3 a {
    color: #051f44;
    text-decoration: none;
}
.page-template-cours .block_courses__slider__single h3 br {
    display: none;
}
.page-template-cours .block_courses__slider__single > div {
    flex: 1 1 auto;
    padding: 0 2.4rem !important;
    color: #051f44;
    font-size: 1.6rem;
    line-height: 2.5rem;
}
.page-template-cours .block_courses__slider__single > div p {
    color: #051f44;
    font-size: 1.6rem;
    line-height: 2.5rem;
    margin-bottom: 0;
}
.page-template-cours .block_courses__slider__single > a.d-block {
    flex: 0 0 auto;
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    margin: 2rem 2.4rem 2.4rem !important;
    padding-top: 1.6rem;
    border-top: .1rem solid rgba(5, 31, 68, .12);
}
.page-template-cours .block_courses__slider__single > a.d-block img {
    padding: 0 !important;
    width: 3.2rem;
    height: auto;
    transition: transform .25s ease;
}
.page-template-cours .block_courses__slider__single:hover > a.d-block img {
    transform: translateX(.6rem);
}
@media (max-width: 767.98px) {
    .page-template-cours .block_courses__slider__single figure {
        aspect-ratio: 16 / 10;
    }
    .page-template-cours .block_courses__slider__single h3 {
        padding: 2rem 2rem 1rem;
    }
    .page-template-cours .block_courses__slider__single > div {
        padding: 0 2rem !important;
    }
    .page-template-cours .block_courses__slider__single > a.d-block {
        margin: 1.6rem 2rem 2rem !important;
    }
}
