body.elementor-page-1778 h1.entry-title{margin-top:1px;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-a6fc154 *//*==========================================================
=                    HERO JL ACADEMY                       =
==========================================================*/

.academy-hero,
.academy-hero *{
    box-sizing:border-box;
}

.academy-hero{
    --academy-green:#123f31;
    --academy-dark:#082b21;
    --academy-gold:#d7aa52;
    --academy-white:#ffffff;

    width:100%;

    margin:0;

    padding:
        22px
        28px
        36px;

    background:#fff;
}


/*==========================================================
=                       CONTENEUR                          =
==========================================================*/

.academy-hero__inner{
    width:min(1180px,100%);

    margin:0 auto;
}


/*==========================================================
=                        HERO MEDIA                        =
==========================================================*/

.academy-hero__media{
    position:relative;

    width:100%;
    height:760px;

    overflow:hidden;

    background:var(--academy-dark);
}


/*==========================================================
=                      WRAPPER PHOTO                       =
==========================================================*/

.academy-hero__photo{
    position:absolute;

    inset:0;

    z-index:0;

    width:100%;
    height:100%;

    overflow:hidden;
}


/*==========================================================
=                         IMAGE                            =
==========================================================*/

.academy-hero__image{
    position:absolute;

    inset:0;

    display:block;

    width:100%;
    height:100%;

    max-width:none;

    margin:0;
    padding:0;

    object-fit:cover;
    object-position:center center;

    transition:
        transform
        1.2s
        cubic-bezier(.2,.7,.2,1);
}


@media(hover:hover){

    .academy-hero__media:hover
    .academy-hero__image{
        transform:scale(1.012);
    }

}


/*==========================================================
=                         OVERLAY                          =
==========================================================*/

.academy-hero__overlay{
    position:absolute;

    inset:0;

    z-index:1;

    pointer-events:none;

    background:
        linear-gradient(
            to top,
            rgba(5,31,23,.82) 0%,
            rgba(5,31,23,.60) 25%,
            rgba(5,31,23,.27) 50%,
            rgba(5,31,23,.07) 75%,
            transparent 100%
        );
}


/*==========================================================
=                     CADRE INTÉRIEUR                      =
==========================================================*/

.academy-hero__border{
    position:absolute;

    inset:20px;

    z-index:6;

    border:
        1px solid
        rgba(255,255,255,.30);

    pointer-events:none;
}


/*==========================================================
=                          LOGO                            =
==========================================================*/

.academy-hero__logo-wrap{
    position:absolute;

    top:38px;
    right:42px;

    z-index:7;

    display:flex;

    align-items:center;
    justify-content:center;

    width:125px;
    height:125px;

    padding:12px;

    border-radius:50%;

    background:
        rgba(255,255,255,.94);

    box-shadow:
        0 8px 28px
        rgba(0,0,0,.10);
}


.academy-hero__logo{
    display:block;

    width:100%;
    height:100%;

    max-width:100%;

    object-fit:contain;
}


/*==========================================================
=                         CONTENU                          =
==========================================================*/

.academy-hero__content{
    position:absolute;

    left:50px;
    bottom:68px;

    z-index:4;

    width:min(
        760px,
        calc(100% - 150px)
    );
}


/*==========================================================
=                         EYEBROW                          =
==========================================================*/

.academy-hero__eyebrow{
    display:flex;

    align-items:center;

    gap:14px;

    margin:
        0
        0
        22px;

    color:var(--academy-gold);

    font-family:
        "Manrope",
        Arial,
        sans-serif;

    font-size:11px;
    font-weight:700;

    line-height:1.4;

    letter-spacing:.22em;

    text-transform:uppercase;
}


.academy-hero__eyebrow::before{
    content:"";

    width:36px;
    height:1px;

    flex:
        0
        0
        36px;

    background:var(--academy-gold);
}


/*==========================================================
=                          TITRE                           =
==========================================================*/

.academy-hero__title{
    max-width:720px;

    margin:0;

    color:#fff;

    font-family:
        "Cormorant Garamond",
        Georgia,
        serif;

    font-size:
        clamp(
            70px,
            7vw,
            105px
        );

    font-weight:500;

    line-height:.87;

    letter-spacing:-.05em;
}


.academy-hero__title em{
    display:block;

    margin-top:8px;

    color:var(--academy-gold);

    font-weight:400;
}


/*==========================================================
=                       DESCRIPTION                        =
==========================================================*/

.academy-hero__description{
    max-width:620px;

    margin:
        28px
        0
        0;

    color:
        rgba(255,255,255,.84);

    font-family:
        "Manrope",
        Arial,
        sans-serif;

    font-size:15px;

    line-height:1.7;
}


/*==========================================================
=                         ACTIONS                          =
==========================================================*/

.academy-hero__actions{
    display:flex;

    align-items:center;

    flex-wrap:wrap;

    gap:12px;

    margin-top:32px;
}


/*==========================================================
=                          BOUTON                          =
==========================================================*/

.academy-hero__button{
    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:18px;

    min-height:55px;

    padding:
        7px
        8px
        7px
        22px;

    border-radius:999px;

    font-family:
        "Manrope",
        Arial,
        sans-serif;

    font-size:13px;
    font-weight:700;

    text-decoration:none !important;

    transition:
        transform .3s ease,
        background-color .3s ease,
        border-color .3s ease;
}


/*==========================================================
=                    BOUTON PRINCIPAL                      =
==========================================================*/

.academy-hero__button--primary{
    border:1px solid #fff;

    background:#fff;

    color:
        var(--academy-green) !important;
}


.academy-hero__button--primary:hover{
    color:
        var(--academy-green) !important;

    transform:translateY(-2px);
}


/*==========================================================
=                   BOUTON SECONDAIRE                      =
==========================================================*/

.academy-hero__button--secondary{
    border:
        1px solid
        rgba(255,255,255,.80);

    background:
        rgba(255,255,255,.04);

    color:#fff !important;

    backdrop-filter:blur(5px);
    -webkit-backdrop-filter:blur(5px);
}


.academy-hero__button--secondary:hover{
    border-color:#fff;

    background:
        rgba(255,255,255,.11);

    color:#fff !important;

    transform:translateY(-2px);
}


/*==========================================================
=                    ICÔNES BOUTONS                        =
==========================================================*/

.academy-hero__button-icon{
    display:flex;

    align-items:center;
    justify-content:center;

    width:40px;
    height:40px;

    flex:
        0
        0
        40px;

    border-radius:50%;

    font-size:16px;

    line-height:1;

    transition:transform .3s ease;
}


.academy-hero__button--primary
.academy-hero__button-icon{
    background:
        var(--academy-green);

    color:#fff;
}


.academy-hero__button--secondary
.academy-hero__button-icon{
    background:#fff;

    color:
        var(--academy-green);
}


.academy-hero__button:hover
.academy-hero__button-icon{
    transform:translateX(3px);
}


.academy-hero__button--primary:hover
.academy-hero__button-icon{
    transform:translateY(3px);
}


/*==========================================================
=                  INDICATION VERTICALE                    =
==========================================================*/

.academy-hero__discover{
    position:absolute;

    right:45px;
    bottom:60px;

    z-index:5;

    display:flex;

    flex-direction:column;
    align-items:center;

    gap:12px;

    color:
        rgba(255,255,255,.72);

    font-family:
        "Manrope",
        Arial,
        sans-serif;

    font-size:8px;
    font-weight:700;

    letter-spacing:.24em;

    text-transform:uppercase;

    writing-mode:vertical-rl;

    transform:rotate(180deg);
}


.academy-hero__discover i{
    display:block;

    width:1px;
    height:44px;

    background:
        var(--academy-gold);
}


/*==========================================================
=                         TABLETTE                         =
==========================================================*/

@media(max-width:1024px) and (min-width:768px){

    .academy-hero{
        padding:
            18px
            22px
            30px;
    }


    .academy-hero__media{
        height:690px;
    }


    .academy-hero__content{
        left:44px;
        bottom:55px;

        width:min(
            680px,
            calc(100% - 115px)
        );
    }


    .academy-hero__title{
        font-size:74px;
    }


    .academy-hero__logo-wrap{
        top:32px;
        right:34px;

        width:110px;
        height:110px;
    }

}


/*==========================================================
=         MOBILE — PHOTO ENTIÈRE, PLEINE LARGEUR          =
==========================================================*/

@media(max-width:767px){

    /*======================================================
    =                      SECTION                         =
    ======================================================*/

    .academy-hero{
        width:100% !important;

        height:auto !important;
        min-height:0 !important;

        margin:0 !important;

        padding:
            10px
            12px
            24px !important;

        overflow:visible !important;

        background:#fff !important;
    }


    /*======================================================
    =                       INNER                          =
    ======================================================*/

    .academy-hero__inner{
        display:block !important;

        width:100% !important;

        height:auto !important;
        min-height:0 !important;

        margin:0 !important;
        padding:0 !important;
    }


    /*======================================================
    =                        MEDIA                         =
    ======================================================*/

    .academy-hero__media{
        position:relative !important;

        display:flex !important;

        flex-direction:column !important;

        width:100% !important;

        height:auto !important;
        min-height:0 !important;
        max-height:none !important;

        margin:0 !important;
        padding:0 !important;

        overflow:hidden !important;

        background:
            var(--academy-green) !important;
    }


    /*======================================================
    =                     PHOTO WRAPPER                    =
    ======================================================*/

    .academy-hero__photo{
        position:relative !important;

        top:auto !important;
        right:auto !important;
        bottom:auto !important;
        left:auto !important;

        inset:auto !important;

        order:1 !important;

        display:block !important;

        width:100% !important;

        height:auto !important;
        min-height:0 !important;
        max-height:none !important;

        /*
        AUCUN RATIO IMPOSÉ.
        */
        aspect-ratio:auto !important;

        margin:0 !important;
        padding:0 !important;

        overflow:hidden !important;

        background:transparent !important;
    }


    /*======================================================
    =                 IMAGE — POINT CLÉ                    =
    ======================================================*/

    .academy-hero__photo > .academy-hero__image{

        /*
        L'image sort complètement du système
        position:absolute utilisé sur desktop.
        */

        position:static !important;

        top:auto !important;
        right:auto !important;
        bottom:auto !important;
        left:auto !important;

        inset:auto !important;

        display:block !important;

        width:100% !important;

        /*
        Le navigateur calcule lui-même la hauteur
        selon le ratio ORIGINAL de l'image.
        */

        height:auto !important;

        min-width:0 !important;
        min-height:0 !important;

        max-width:100% !important;
        max-height:none !important;

        margin:0 !important;
        padding:0 !important;

        /*
        Aucun contain.
        Aucun cover.
        Aucun letterboxing.
        */

        object-fit:initial !important;
        object-position:initial !important;

        aspect-ratio:auto !important;

        transform:none !important;

        clip-path:none !important;

        border:0 !important;
        border-radius:0 !important;
    }


    /*======================================================
    =                  OVERLAY MOBILE                      =
    ======================================================*/

    .academy-hero__overlay{
        display:none !important;
    }


    /*======================================================
    =                      CADRE                           =
    ======================================================*/

    .academy-hero__border{
        display:none !important;
    }


    /*======================================================
    =                        LOGO                          =
    ======================================================*/

    .academy-hero__logo-wrap{
        position:absolute !important;

        top:14px !important;
        right:14px !important;

        z-index:20 !important;

        display:flex !important;

        align-items:center !important;
        justify-content:center !important;

        width:72px !important;
        height:72px !important;

        min-width:72px !important;
        min-height:72px !important;

        margin:0 !important;

        padding:6px !important;

        border:0 !important;

        border-radius:50% !important;

        background:
            rgba(255,255,255,.95) !important;

        box-shadow:
            0 6px 20px
            rgba(0,0,0,.10) !important;
    }


    .academy-hero__logo{
        display:block !important;

        width:100% !important;
        height:100% !important;

        max-width:100% !important;

        margin:0 !important;

        object-fit:contain !important;
    }


    /*======================================================
    =                   CONTENU VERT                       =
    ======================================================*/

    .academy-hero__content{
        position:relative !important;

        top:auto !important;
        right:auto !important;
        bottom:auto !important;
        left:auto !important;

        inset:auto !important;

        order:2 !important;

        display:block !important;

        width:100% !important;
        max-width:none !important;

        height:auto !important;
        min-height:0 !important;

        margin:0 !important;

        padding:
            36px
            24px
            27px !important;

        background:
            linear-gradient(
                145deg,
                #082b21 0%,
                #123f31 100%
            ) !important;
    }


    /*======================================================
    =                      EYEBROW                         =
    ======================================================*/

    .academy-hero__eyebrow{
        display:flex !important;

        align-items:flex-start !important;

        gap:9px !important;

        width:100% !important;
        max-width:290px !important;

        margin:
            0
            0
            15px !important;

        padding:0 !important;

        color:
            var(--academy-gold) !important;

        font-size:8px !important;

        line-height:1.4 !important;

        letter-spacing:.14em !important;
    }


    .academy-hero__eyebrow::before{
        width:23px !important;

        flex:
            0
            0
            23px !important;

        margin-top:5px !important;
    }


    /*======================================================
    =                       TITRE                          =
    ======================================================*/

    .academy-hero__title{
        width:100% !important;

        max-width:300px !important;

        margin:0 !important;

        font-size:49px !important;

        line-height:.89 !important;

        letter-spacing:-.04em !important;
    }


    .academy-hero__title em{
        margin-top:5px !important;
    }


    /*======================================================
    =                    DESCRIPTION                       =
    ======================================================*/

    .academy-hero__description{
        width:100% !important;

        max-width:300px !important;

        margin:
            20px
            0
            0 !important;

        padding:0 !important;

        font-size:12.5px !important;

        line-height:1.62 !important;
    }


    /*======================================================
    =                       ACTIONS                        =
    ======================================================*/

    .academy-hero__actions{
        display:grid !important;

        grid-template-columns:1fr !important;

        gap:9px !important;

        width:100% !important;

        margin:
            24px
            0
            0 !important;

        padding:0 !important;
    }


    /*======================================================
    =                       BOUTONS                        =
    ======================================================*/

    .academy-hero__button{
        display:flex !important;

        align-items:center !important;

        justify-content:
            space-between !important;

        width:100% !important;

        min-width:0 !important;
        max-width:none !important;

        min-height:56px !important;

        margin:0 !important;

        padding:
            7px
            8px
            7px
            18px !important;

        font-size:11.5px !important;
    }


    .academy-hero__button-icon{
        width:42px !important;
        height:42px !important;

        flex:
            0
            0
            42px !important;

        margin:0 !important;
    }


    /*======================================================
    =                  INDICATION                          =
    ======================================================*/

    .academy-hero__discover{
        display:none !important;
    }

}


/*==========================================================
=                     PETITS MOBILES                       =
==========================================================*/

@media(max-width:390px){

    .academy-hero{
        padding:
            8px
            8px
            20px !important;
    }


    .academy-hero__logo-wrap{
        top:11px !important;
        right:11px !important;

        width:64px !important;
        height:64px !important;

        min-width:64px !important;
        min-height:64px !important;

        padding:5px !important;
    }


    .academy-hero__content{
        padding:
            31px
            21px
            23px !important;
    }


    .academy-hero__title{
        max-width:275px !important;

        font-size:44px !important;
    }


    .academy-hero__description{
        max-width:275px !important;

        font-size:12px !important;
    }

}


/*==========================================================
=                    REDUCED MOTION                        =
==========================================================*/

@media(prefers-reduced-motion:reduce){

    .academy-hero__image,
    .academy-hero__button,
    .academy-hero__button-icon{
        transition:none !important;
    }

}


/*==========================================================
=        SUPPRESSION INFOS COMPLÉMENTAIRES                =
==========================================================*/

.jl-programs__bottom{
    display:none !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-261969b *//*==========================================================
=                  JL INTRO — SECTION                     =
==========================================================*/

.jl-intro,
.jl-intro *{
    box-sizing:border-box;
}

.jl-intro{
    --jli-green:#123f31;
    --jli-dark:#082b21;
    --jli-gold:#d7aa52;
    --jli-cream:#f7f4ec;
    --jli-white:#ffffff;
    --jli-text:#6d7974;
    --jli-border:rgba(18,63,49,.14);

    width:100%;

    padding:110px 30px 115px;

    background:
        radial-gradient(
            circle at 88% 7%,
            rgba(215,170,82,.08),
            transparent 24%
        ),
        var(--jli-cream);
}


/*==========================================================
=                      CONTAINER                          =
==========================================================*/

.jl-intro__container{
    display:grid;

    grid-template-columns:
        minmax(320px,.92fr)
        minmax(0,1.08fr);

    align-items:center;

    gap:78px;

    width:min(1180px,100%);

    margin:0 auto;
}


/*==========================================================
=                       VISUAL                             =
==========================================================*/

.jl-intro__visual{
    position:relative;

    min-height:650px;

    overflow:hidden;

    border-radius:28px;

    background:var(--jli-green);

    box-shadow:
        0 28px 65px
        rgba(18,63,49,.12);
}


/*==========================================================
=                        PHOTO                             =
==========================================================*/

.jl-intro__photo{
    position:absolute;
    inset:0;

    display:block;

    width:100%;
    height:100%;

    object-fit:cover;

    object-position:center center;
}


/*==========================================================
=                        OVERLAY                           =
==========================================================*/

.jl-intro__photo-overlay{
    position:absolute;
    inset:0;

    background:
        linear-gradient(
            to top,
            rgba(5,31,23,.70) 0%,
            rgba(5,31,23,.30) 30%,
            rgba(5,31,23,.04) 65%,
            rgba(5,31,23,0) 100%
        );
}


/*==========================================================
=                    PHOTO BORDER                         =
==========================================================*/

.jl-intro__photo-border{
    position:absolute;

    inset:18px;

    border:
        1px solid
        rgba(255,255,255,.32);

    border-radius:21px;

    pointer-events:none;
}


/*==========================================================
=                         LOGO                             =
==========================================================*/

.jl-intro__logo{
    position:absolute;

    top:30px;
    right:30px;

    z-index:3;

    display:flex;
    align-items:center;
    justify-content:center;

    width:82px;
    height:82px;

    border-radius:50%;

    background:#fff;

    box-shadow:
        0 10px 30px
        rgba(0,0,0,.12);
}

.jl-intro__logo img{
    display:block;

    width:67px;
    height:67px;

    object-fit:contain;
}


/*==========================================================
=                     PHOTO CAPTION                       =
==========================================================*/

.jl-intro__photo-caption{
    position:absolute;

    left:40px;
    bottom:40px;

    z-index:3;

    display:flex;
    flex-direction:column;

    gap:8px;
}

.jl-intro__photo-caption span{
    color:var(--jli-gold);

    font-size:8px;
    font-weight:700;

    letter-spacing:.18em;

    text-transform:uppercase;
}

.jl-intro__photo-caption strong{
    color:#fff;

    font-family:
        "Cormorant Garamond",
        Georgia,
        serif;

    font-size:27px;
    font-weight:500;
}


/*==========================================================
=                       CONTENT                           =
==========================================================*/

.jl-intro__content{
    max-width:570px;
}


/*==========================================================
=                       EYEBROW                           =
==========================================================*/

.jl-intro__eyebrow{
    display:flex;
    align-items:center;

    gap:14px;

    margin-bottom:22px;

    color:var(--jli-gold);

    font-size:10px;
    font-weight:700;

    letter-spacing:.22em;

    text-transform:uppercase;
}

.jl-intro__eyebrow::before{
    content:"";

    width:36px;
    height:1px;

    background:var(--jli-gold);
}


/*==========================================================
=                         TITLE                            =
==========================================================*/

.jl-intro__title{
    margin:0;

    color:var(--jli-green);

    font-family:
        "Cormorant Garamond",
        Georgia,
        serif;

    font-size:clamp(60px,5.6vw,82px);
    font-weight:500;

    line-height:.88;

    letter-spacing:-.045em;
}

.jl-intro__title em{
    display:block;

    margin-top:8px;

    color:var(--jli-gold);

    font-weight:400;
}


/*==========================================================
=                         LEAD                             =
==========================================================*/

.jl-intro__lead{
    max-width:500px;

    margin:33px 0 0;

    color:var(--jli-green);

    font-family:
        "Cormorant Garamond",
        Georgia,
        serif;

    font-size:21px;
    font-weight:500;

    line-height:1.35;
}


/*==========================================================
=                         TEXT                             =
==========================================================*/

.jl-intro__text{
    max-width:500px;

    margin:22px 0 0;

    color:var(--jli-text);

    font-size:14px;

    line-height:1.72;
}


/*==========================================================
=                    CREDENTIALS                          =
==========================================================*/

.jl-intro__credentials{
    margin-top:36px;

    border-top:
        1px solid
        var(--jli-border);
}


/*==========================================================
=                    CREDENTIAL                           =
==========================================================*/

.jl-intro__credential{
    display:grid;

    grid-template-columns:
        48px
        1fr;

    align-items:center;

    gap:18px;

    min-height:88px;

    border-bottom:
        1px solid
        var(--jli-border);
}


/*==========================================================
=                CREDENTIAL INDEX                         =
==========================================================*/

.jl-intro__credential-index{
    color:var(--jli-gold);

    font-family:
        "Cormorant Garamond",
        Georgia,
        serif;

    font-size:14px;
}


/*==========================================================
=               CREDENTIAL CONTENT                        =
==========================================================*/

.jl-intro__credential-content{
    display:flex;
    flex-direction:column;

    gap:5px;
}

.jl-intro__credential-content strong{
    color:var(--jli-green);

    font-size:15px;
    font-weight:700;
}

.jl-intro__credential-content span{
    color:var(--jli-text);

    font-size:13px;
}


/*==========================================================
=                         BOTTOM                           =
==========================================================*/

.jl-intro__bottom{
    display:flex;

    align-items:center;
    justify-content:flex-end;

    margin-top:36px;
}


/*==========================================================
=                  CONTACT BUTTON                         =
==========================================================*/

.jl-intro__contact-button{
    display:inline-flex;

    align-items:center;
    justify-content:space-between;

    gap:24px;

    min-height:58px;

    padding:
        7px
        8px
        7px
        25px;

    border:
        1.5px solid
        var(--jli-green);

    border-radius:999px;

    background:var(--jli-green);

    color:#fff !important;

    font-size:14px;
    font-weight:700;

    line-height:1;

    text-decoration:none !important;

    cursor:pointer;

    box-shadow:
        0 10px 24px
        rgba(18,63,49,.10);

    transition:
        transform .3s ease,
        background-color .3s ease,
        box-shadow .3s ease;
}


/*==========================================================
=                    BUTTON TEXT                          =
==========================================================*/

.jl-intro__contact-button-text{
    color:#fff;

    white-space:nowrap;
}


/*==========================================================
=                    BUTTON ICON                          =
==========================================================*/

.jl-intro__contact-button-icon{
    display:flex;

    align-items:center;
    justify-content:center;

    width:44px;
    height:44px;

    flex:0 0 44px;

    border-radius:50%;

    background:var(--jli-gold);

    color:var(--jli-green);

    font-size:18px;
    font-weight:400;

    transition:
        transform .3s ease,
        background-color .3s ease;
}


/*==========================================================
=                         HOVER                            =
==========================================================*/

.jl-intro__contact-button:hover{
    background:var(--jli-dark);

    color:#fff !important;

    transform:translateY(-2px);

    box-shadow:
        0 14px 30px
        rgba(18,63,49,.16);
}

.jl-intro__contact-button:hover
.jl-intro__contact-button-icon{
    transform:translateX(3px);
}


/*==========================================================
=                         TABLETTE                         =
==========================================================*/

@media(max-width:1024px){

    .jl-intro{
        padding:
            90px
            24px
            100px;
    }

    .jl-intro__container{
        grid-template-columns:
            minmax(300px,.9fr)
            minmax(0,1.1fr);

        gap:48px;
    }

    .jl-intro__visual{
        min-height:590px;
    }

    .jl-intro__title{
        font-size:60px;
    }

}


/*==========================================================
=                          MOBILE                          =
==========================================================*/

@media(max-width:767px){

    .jl-intro{
        padding:
            66px
            14px
            76px;
    }


    /* LAYOUT */

    .jl-intro__container{
        grid-template-columns:1fr;

        gap:42px;
    }


    /* VISUAL */

    .jl-intro__visual{
        min-height:530px;

        border-radius:22px;
    }

    .jl-intro__photo-border{
        inset:12px;

        border-radius:16px;
    }

    .jl-intro__logo{
        top:22px;
        right:22px;

        width:68px;
        height:68px;
    }

    .jl-intro__logo img{
        width:55px;
        height:55px;
    }

    .jl-intro__photo-caption{
        left:27px;
        bottom:28px;
    }

    .jl-intro__photo-caption strong{
        font-size:24px;
    }


    /* CONTENT */

    .jl-intro__content{
        max-width:none;
    }

    .jl-intro__eyebrow{
        gap:10px;

        margin-bottom:17px;

        font-size:9px;
    }

    .jl-intro__eyebrow::before{
        width:24px;
    }

    .jl-intro__title{
        font-size:49px;
    }

    .jl-intro__lead{
        margin-top:27px;

        font-size:19px;

        line-height:1.4;
    }

    .jl-intro__text{
        margin-top:18px;

        font-size:13px;

        line-height:1.68;
    }


    /* CREDENTIALS */

    .jl-intro__credentials{
        margin-top:30px;
    }

    .jl-intro__credential{
        grid-template-columns:
            38px
            1fr;

        gap:13px;

        min-height:78px;
    }

    .jl-intro__credential-content strong{
        font-size:14px;
    }

    .jl-intro__credential-content span{
        font-size:12px;
    }


    /* BUTTON */

    .jl-intro__bottom{
        justify-content:stretch;

        margin-top:30px;
    }

    .jl-intro__contact-button{
        width:100%;

        min-height:58px;

        padding:
            7px
            8px
            7px
            22px;
    }

}


/*==========================================================
=                    PETITS MOBILES                        =
==========================================================*/

@media(max-width:390px){

    .jl-intro{
        padding:
            60px
            10px
            70px;
    }

    .jl-intro__visual{
        min-height:500px;
    }

    .jl-intro__title{
        font-size:44px;
    }

    .jl-intro__contact-button{
        font-size:13px;

        padding-left:19px;
    }

    .jl-intro__contact-button-icon{
        width:42px;
        height:42px;

        flex-basis:42px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-9b24a76 *//*==========================================================
=              JL ACADEMY — EXPLORATEUR                   =
==========================================================*/

.jl-programs,
.jl-programs *{
    box-sizing:border-box;
}

.jl-programs{
    --jlp-green:#123f31;
    --jlp-dark:#082b21;
    --jlp-gold:#d7aa52;
    --jlp-cream:#f7f4ec;
    --jlp-white:#ffffff;
    --jlp-text:#6d7974;
    --jlp-border:rgba(18,63,49,.14);

    width:100%;
    padding:110px 30px 115px;
    overflow:hidden;

    background:
        radial-gradient(
            circle at 88% 5%,
            rgba(215,170,82,.08),
            transparent 24%
        ),
        var(--jlp-cream);
}


/*==========================================================
=                      CONTAINER                          =
==========================================================*/

.jl-programs__container{
    width:min(1180px,100%);
    margin:0 auto;
}


/*==========================================================
=                         HEADER                           =
==========================================================*/

.jl-programs__header{
    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);
    align-items:end;

    gap:75px;
    margin-bottom:52px;
}


/*==========================================================
=                        EYEBROW                           =
==========================================================*/

.jl-programs__eyebrow{
    display:flex;
    align-items:center;

    gap:14px;
    margin-bottom:18px;

    color:var(--jlp-gold);

    font-size:10px;
    font-weight:700;
    letter-spacing:.22em;
    text-transform:uppercase;
}

.jl-programs__eyebrow::before{
    content:"";

    width:36px;
    height:1px;
    flex:0 0 36px;

    background:var(--jlp-gold);
}


/*==========================================================
=                          TITRE                           =
==========================================================*/

.jl-programs__title{
    max-width:730px;
    margin:0;

    color:var(--jlp-green);

    font-family:"Cormorant Garamond",Georgia,serif;
    font-size:clamp(58px,5.5vw,80px);
    font-weight:500;
    line-height:.9;

    letter-spacing:-.045em;
}

.jl-programs__title em{
    display:block;

    margin-top:7px;

    color:var(--jlp-gold);
    font-weight:400;
}


/*==========================================================
=                         INTRO                            =
==========================================================*/

.jl-programs__intro{
    max-width:410px;
}

.jl-programs__intro p{
    margin:0;

    color:var(--jlp-text);

    font-size:14px;
    line-height:1.75;
}

.jl-programs__intro > span{
    display:block;

    margin-top:18px;

    color:var(--jlp-green);

    font-family:"Cormorant Garamond",Georgia,serif;
    font-size:22px;
    font-weight:600;
}


/*==========================================================
=             SELECT MOBILE CACHÉ PAR DÉFAUT              =
==========================================================*/

.jl-programs__mobile-.elementor-1778 .elementor-element.elementor-element-9b24a76{
    display:none;
}


/*==========================================================
=                  NAVIGATION DESKTOP                     =
==========================================================*/

.jl-programs__navigation{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));

    margin-bottom:18px;

    border-top:1px solid var(--jlp-border);
    border-bottom:1px solid var(--jlp-border);
}


/*==========================================================
=                     BOUTONS NAVIGATION                   =
==========================================================*/

.jl-programs__nav{
    position:relative;

    min-height:92px;
    padding:18px 17px;

    border:0;
    border-right:1px solid var(--jlp-border);

    background:transparent;
    color:var(--jlp-green);

    text-align:left;
    cursor:pointer;

    transition:background-color .3s ease;
}

.jl-programs__nav:last-child{
    border-right:0;
}

.jl-programs__nav::after{
    content:"";

    position:absolute;
    left:17px;
    right:17px;
    bottom:-1px;

    height:2px;

    background:var(--jlp-gold);

    transform:scaleX(0);
    transform-origin:left;

    transition:transform .35s ease;
}

.jl-programs__nav > span{
    display:block;

    margin-bottom:11px;

    color:var(--jlp-gold);

    font-family:"Cormorant Garamond",Georgia,serif;
    font-size:15px;
}

.jl-programs__nav strong{
    display:block;

    color:var(--jlp-green);

    font-size:10px;
    font-weight:700;
    line-height:1.35;
}

.jl-programs__nav:hover{
    background:rgba(18,63,49,.03);
}

.jl-programs__nav.is-active{
    background:rgba(18,63,49,.05);
}

.jl-programs__nav.is-active::after{
    transform:scaleX(1);
}


/*==========================================================
=                       EXPLORATEUR                        =
==========================================================*/

.jl-programs__explorer{
    display:grid;
    grid-template-columns:minmax(0,1.5fr) minmax(270px,.5fr);

    gap:18px;

    align-items:stretch;
}


/*==========================================================
=                    PANNEAU PRINCIPAL                     =
==========================================================*/

.jl-programs__main{
    position:relative;

    min-width:0;
    min-height:570px;

    padding:40px;

    overflow:hidden;

    border-radius:27px;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(215,170,82,.08),
            transparent 35%
        ),
        var(--jlp-green);

    color:#fff;

    transition:
        opacity .22s ease,
        transform .22s ease;
}


/*==========================================================
=                       ANIMATIONS                         =
==========================================================*/

.jl-programs__main.is-changing{
    opacity:0;
    transform:translateY(10px) scale(.99);
}

.jl-programs__main.is-entering{
    animation:
        jlProgramEnter
        .45s
        cubic-bezier(.2,.7,.2,1);
}

@keyframes jlProgramEnter{
    from{
        opacity:0;
        transform:translateY(14px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }
}


/*==========================================================
=                         MAIN TOP                         =
==========================================================*/

.jl-programs__main-top{
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:20px;

    padding-bottom:26px;

    border-bottom:1px solid rgba(255,255,255,.13);
}

.jl-programs__index{
    color:var(--jlp-gold);

    font-family:"Cormorant Garamond",Georgia,serif;
    font-size:20px;
}

.jl-programs__category{
    color:rgba(255,255,255,.53);

    font-size:8px;
    font-weight:700;
    letter-spacing:.18em;
    text-transform:uppercase;
}


/*==========================================================
=                         CONTENU                          =
==========================================================*/

.jl-programs__content{
    padding-top:38px;
}

.jl-programs__label{
    display:block;

    margin-bottom:13px;

    color:var(--jlp-gold);

    font-size:8px;
    font-weight:700;
    letter-spacing:.18em;
    text-transform:uppercase;
}

.jl-programs__content > h3{
    max-width:630px;

    margin:0;

    color:#fff;

    font-family:"Cormorant Garamond",Georgia,serif;
    font-size:51px;
    font-weight:500;
    line-height:.91;

    letter-spacing:-.04em;
}

.jl-programs__content > h3 em{
    display:block;

    color:var(--jlp-gold);
    font-weight:400;
}

.jl-programs__description{
    max-width:570px;

    margin:22px 0 0;

    color:rgba(255,255,255,.65);

    font-size:12.5px;
    line-height:1.7;
}


/*==========================================================
=                          TARIFS                          =
==========================================================*/

.jl-programs__prices{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));

    gap:12px;
    margin-top:38px;
}

.jl-programs__price-group{
    min-width:0;

    padding:22px;

    border:1px solid rgba(255,255,255,.14);
    border-radius:18px;

    background:rgba(255,255,255,.035);
}

.jl-programs__price-group-header{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;

    gap:14px;

    min-height:40px;
    margin-bottom:18px;
}

.jl-programs__price-group-header h4{
    margin:0;

    color:#fff;

    font-family:"Cormorant Garamond",Georgia,serif;
    font-size:26px;
    font-weight:500;
}

.jl-programs__price-group-header span{
    color:var(--jlp-gold);

    font-size:7px;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.jl-programs__price-list{
    border-top:1px solid rgba(255,255,255,.12);
}

.jl-programs__price-row{
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:20px;

    min-height:57px;

    border-bottom:1px solid rgba(255,255,255,.12);
}

.jl-programs__price-row > span{
    color:rgba(255,255,255,.59);

    font-size:10px;
}

.jl-programs__price-row strong{
    color:#fff;

    font-family:"Cormorant Garamond",Georgia,serif;
    font-size:26px;
    font-weight:500;

    white-space:nowrap;
}


/*==========================================================
=                          NOTE                            =
==========================================================*/

.jl-programs__price-note{
    display:flex;
    align-items:flex-start;

    gap:10px;

    margin:17px 0 0;

    color:rgba(255,255,255,.57);

    font-size:9px;
    line-height:1.45;
}

.jl-programs__price-note > span{
    display:flex;
    align-items:center;
    justify-content:center;

    width:23px;
    height:23px;
    flex:0 0 23px;

    border:1px solid rgba(215,170,82,.35);
    border-radius:50%;

    color:var(--jlp-gold);
}

.jl-programs__price-note b{
    font-weight:500;
}


/*==========================================================
=                          ASIDE                           =
==========================================================*/

.jl-programs__aside{
    display:flex;
    flex-direction:column;

    min-width:0;
    min-height:570px;

    padding:30px;

    overflow:hidden;

    border:1px solid var(--jlp-border);
    border-radius:27px;

    background:
        radial-gradient(
            circle at 50% 20%,
            rgba(215,170,82,.09),
            transparent 32%
        ),
        rgba(255,255,255,.62);
}


/*==========================================================
=                          LOGO                            =
==========================================================*/

.jl-programs__brand{
    display:flex;
    align-items:center;
    justify-content:center;

    min-height:185px;

    padding:25px;
}

.jl-programs__brand img{
    display:block;

    width:min(145px,80%);
    height:auto;

    object-fit:contain;
}


/*==========================================================
=                    CONTENU ASIDE                         =
==========================================================*/

.jl-programs__aside-content{
    padding-top:28px;

    border-top:1px solid var(--jlp-border);
}

.jl-programs__aside-content > span{
    display:block;

    margin-bottom:11px;

    color:var(--jlp-gold);

    font-size:8px;
    font-weight:700;
    letter-spacing:.17em;
    text-transform:uppercase;
}

.jl-programs__aside-content h3{
    margin:0;

    color:var(--jlp-green);

    font-family:"Cormorant Garamond",Georgia,serif;
    font-size:35px;
    font-weight:500;
    line-height:.94;
}

.jl-programs__aside-content h3 em{
    display:block;

    color:var(--jlp-gold);
    font-weight:400;
}

.jl-programs__aside-content p{
    margin:18px 0 0;

    color:var(--jlp-text);

    font-size:11px;
    line-height:1.6;
}


/*==========================================================
=                       ASIDE FOOTER                       =
==========================================================*/

.jl-programs__aside-footer{
    width:100%;

    margin-top:auto;
    padding-top:26px;

    border-top:1px solid var(--jlp-border);
}

.jl-programs__aside-label{
    display:block;

    margin-bottom:14px;

    color:var(--jlp-text);

    font-size:8px;
    font-weight:600;
    letter-spacing:.14em;
    text-transform:uppercase;
}


/*==========================================================
=             BOUTON CONTACT — VERSION PROPRE             =
==========================================================*/

/*
IMPORTANT :
La flèche n'est PLUS en position:absolute.
Le bouton est une grille avec :
1 colonne flexible pour le texte
+
1 colonne fixe pour le cercle.

Elle ne peut donc plus sortir du bouton.
*/

.jl-programs__contact-button{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 42px;
    align-items:center;

    column-gap:8px;

    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;

    min-height:56px;

    margin:0 !important;

    padding:7px !important;

    border:0 !important;
    border-radius:999px !important;

    background:var(--jlp-green) !important;

    color:#fff !important;

    text-decoration:none !important;

    overflow:hidden;

    cursor:pointer;

    box-shadow:0 10px 24px rgba(18,63,49,.10);

    transform:none;

    transition:
        background-color .3s ease,
        box-shadow .3s ease,
        transform .3s ease;
}


/* TEXTE */

.jl-programs__contact-button-text{
    display:block;

    min-width:0;

    margin:0 !important;

    padding:0 0 0 11px !important;

    overflow:hidden;

    color:#fff !important;

    font-size:12px;
    font-weight:700;
    line-height:1.15;

    text-align:left;

    white-space:nowrap;
    text-overflow:ellipsis;
}


/* CERCLE */

.jl-programs__contact-button-icon{
    position:static !important;

    display:flex !important;
    align-items:center;
    justify-content:center;

    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    max-width:42px !important;

    margin:0 !important;
    padding:0 !important;

    flex:none !important;

    border:0 !important;
    border-radius:50% !important;

    background:var(--jlp-gold) !important;

    color:var(--jlp-green) !important;

    font-size:17px;
    font-weight:400;
    line-height:1;

    transform:none !important;

    pointer-events:none;
}


/* HOVER */

.jl-programs__contact-button:hover{
    background:var(--jlp-dark) !important;

    color:#fff !important;

    transform:translateY(-2px);

    box-shadow:0 14px 30px rgba(18,63,49,.16);
}

.jl-programs__contact-button:hover
.jl-programs__contact-button-icon{
    transform:none !important;
}


/*==========================================================
=                        TABLETTE                          =
==========================================================*/

@media(max-width:1024px){

    .jl-programs{
        padding:90px 24px 100px;
    }


    .jl-programs__header{
        grid-template-columns:1fr;

        gap:28px;
    }


    .jl-programs__navigation{
        overflow-x:auto;

        grid-template-columns:repeat(5,minmax(180px,1fr));

        scrollbar-width:none;
    }

    .jl-programs__navigation::-webkit-scrollbar{
        display:none;
    }


    .jl-programs__explorer{
        grid-template-columns:1fr;
    }


    .jl-programs__aside{
        display:grid;
        grid-template-columns:180px minmax(0,1fr);
        grid-template-rows:auto auto;

        gap:30px;

        min-height:0;
    }


    .jl-programs__brand{
        min-height:160px;
        padding:15px;
    }


    .jl-programs__aside-content{
        padding-top:0;
        padding-left:30px;

        border-top:0;
        border-left:1px solid var(--jlp-border);
    }


    .jl-programs__aside-footer{
        grid-column:1 / -1;

        margin-top:0;
    }


    .jl-programs__contact-button{
        width:100% !important;
        min-width:0 !important;
        max-width:100% !important;
    }

}


/*==========================================================
=        SELECT MOBILE CACHÉ SUR DESKTOP/TABLETTE         =
==========================================================*/

@media(min-width:768px){

    .jl-programs__mobile-.elementor-1778 .elementor-element.elementor-element-9b24a76,
    .jl-programs__mobile-select-wrap{
        display:none !important;
    }

}


/*==========================================================
=                          MOBILE                          =
==========================================================*/

@media(max-width:767px){

    .jl-programs{
        padding:66px 14px 78px;

        overflow:visible;
    }


    /* HEADER */

    .jl-programs__header{
        grid-template-columns:1fr;

        gap:24px;
        margin-bottom:34px;
    }

    .jl-programs__eyebrow{
        gap:10px;

        margin-bottom:14px;

        font-size:9px;
        letter-spacing:.17em;
    }

    .jl-programs__eyebrow::before{
        width:24px;
        flex-basis:24px;
    }

    .jl-programs__title{
        max-width:340px;

        font-size:46px;
    }

    .jl-programs__intro{
        max-width:340px;
    }

    .jl-programs__intro p{
        font-size:13px;
        line-height:1.65;
    }

    .jl-programs__intro > span{
        margin-top:14px;

        font-size:20px;
    }


    /* NAVIGATION DESKTOP MASQUÉE */

    .jl-programs__navigation{
        display:none !important;
    }


    /*======================================================
    =                SELECTEUR MOBILE                      =
    ======================================================*/

    .jl-programs__mobile-.elementor-1778 .elementor-element.elementor-element-9b24a76{
        display:block !important;

        width:100%;

        margin:0 0 16px;
    }

    .jl-programs__mobile-select-wrap{
        position:relative;

        display:block !important;

        width:100%;
        min-height:86px;

        overflow:hidden;

        border:1px solid rgba(18,63,49,.15);
        border-radius:18px;

        background:#fff;

        box-shadow:0 9px 30px rgba(18,63,49,.06);
    }

    .jl-programs__mobile-select-label{
        position:absolute;

        top:15px;
        left:18px;

        z-index:1;

        color:var(--jlp-gold);

        font-size:8px;
        font-weight:700;
        line-height:1;
        letter-spacing:.16em;
        text-transform:uppercase;

        pointer-events:none;
    }

    .jl-programs__mobile-select{
        appearance:none;
        -webkit-appearance:none;
        -moz-appearance:none;

        position:absolute;
        inset:0;

        z-index:3;

        display:block;

        width:100%;
        height:100%;

        margin:0;

        padding:31px 74px 10px 18px;

        border:0;
        outline:0;
        border-radius:18px;

        background:transparent;

        color:var(--jlp-green);

        font-family:"Cormorant Garamond",Georgia,serif;
        font-size:24px;
        font-weight:600;
        line-height:1.1;

        cursor:pointer;
    }

    .jl-programs__mobile-select:focus{
        outline:none;
    }

    .jl-programs__mobile-select-arrow{
        position:absolute;

        top:50%;
        right:14px;

        z-index:2;

        display:flex;
        align-items:center;
        justify-content:center;

        width:46px;
        height:46px;

        border-radius:50%;

        background:var(--jlp-green);

        color:#fff;

        font-size:15px;

        transform:translateY(-50%);

        pointer-events:none;
    }


    /*======================================================
    =                       MAIN                           =
    ======================================================*/

    .jl-programs__explorer{
        display:block;
    }

    .jl-programs__main{
        min-height:0;

        padding:25px 21px 23px;

        border-radius:21px;
    }

    .jl-programs__main-top{
        gap:15px;

        padding-bottom:20px;
    }

    .jl-programs__index{
        font-size:18px;
    }

    .jl-programs__category{
        max-width:210px;

        font-size:7px;
        line-height:1.45;

        text-align:right;
    }

    .jl-programs__content{
        padding-top:27px;
    }

    .jl-programs__label{
        margin-bottom:10px;

        font-size:7.5px;
    }

    .jl-programs__content > h3{
        max-width:320px;

        font-size:40px;
        line-height:.92;
    }

    .jl-programs__description{
        max-width:315px;

        margin-top:19px;

        font-size:12px;
        line-height:1.65;
    }


    /* TARIFS */

    .jl-programs__prices{
        grid-template-columns:1fr;

        gap:10px;
        margin-top:27px;
    }

    .jl-programs__price-group{
        padding:17px;

        border-radius:16px;
    }

    .jl-programs__price-group-header{
        min-height:0;
        margin-bottom:15px;
    }

    .jl-programs__price-group-header h4{
        font-size:23px;
    }

    .jl-programs__price-row{
        min-height:54px;
    }

    .jl-programs__price-row strong{
        font-size:24px;
    }


    /*======================================================
    =                       ASIDE                          =
    ======================================================*/

    .jl-programs__aside{
        display:flex;
        flex-direction:column;

        min-height:0;

        margin-top:14px;
        padding:22px;

        border-radius:21px;
    }

    .jl-programs__brand{
        min-height:120px;

        padding:12px;
    }

    .jl-programs__brand img{
        width:100px;
    }

    .jl-programs__aside-content{
        padding-top:22px;
        padding-left:0;

        border-top:1px solid var(--jlp-border);
        border-left:0;
    }

    .jl-programs__aside-content h3{
        font-size:31px;
    }

    .jl-programs__aside-footer{
        width:100%;

        margin-top:24px;
    }


    /* BOUTON MOBILE */

    .jl-programs__contact-button{
        grid-template-columns:minmax(0,1fr) 44px;

        min-height:58px;

        padding:7px !important;
    }

    .jl-programs__contact-button-text{
        padding-left:13px !important;

        font-size:13px;
    }

    .jl-programs__contact-button-icon{
        width:44px !important;
        height:44px !important;
        min-width:44px !important;
        max-width:44px !important;
    }

}


/*==========================================================
=                    PETITS MOBILES                       =
==========================================================*/

@media(max-width:390px){

    .jl-programs{
        padding:60px 10px 70px;
    }

    .jl-programs__title{
        font-size:42px;
    }

    .jl-programs__mobile-select-wrap{
        min-height:82px;
    }

    .jl-programs__mobile-select{
        padding-right:68px;

        font-size:21px;
    }

    .jl-programs__mobile-select-arrow{
        right:12px;

        width:42px;
        height:42px;
    }

    .jl-programs__main{
        padding:22px 18px;
    }

    .jl-programs__content > h3{
        font-size:36px;
    }

    .jl-programs__price-group{
        padding:15px;
    }

    .jl-programs__price-row strong{
        font-size:22px;
    }

    .jl-programs__contact-button{
        grid-template-columns:minmax(0,1fr) 42px;
    }

    .jl-programs__contact-button-text{
        padding-left:11px !important;

        font-size:12.5px;
    }

    .jl-programs__contact-button-icon{
        width:42px !important;
        height:42px !important;
        min-width:42px !important;
        max-width:42px !important;
    }

}


/*==========================================================
=                RÉDUCTION DES ANIMATIONS                 =
==========================================================*/

@media(prefers-reduced-motion:reduce){

    .jl-programs__main,
    .jl-programs__nav,
    .jl-programs__contact-button{
        transition:none !important;
    }

    .jl-programs__main.is-entering{
        animation:none !important;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-192b15e *//*==========================================================
=          JL ACADEMY — CTA FINAL CLAIR                   =
==========================================================*/

.jl-final-light,
.jl-final-light *{
    box-sizing:border-box;
}

.jl-final-light{
    --jlf-green:#123f31;
    --jlf-dark:#082b21;
    --jlf-gold:#d7aa52;
    --jlf-cream:#f7f4ec;
    --jlf-white:#ffffff;
    --jlf-text:#6d7974;
    --jlf-border:rgba(18,63,49,.14);

    width:100%;

    padding:
        105px
        30px
        100px;

    overflow:hidden;

    background:
        radial-gradient(
            circle at 88% 20%,
            rgba(215,170,82,.08),
            transparent 27%
        ),
        var(--jlf-cream);
}


/*==========================================================
=                       CONTAINER                          =
==========================================================*/

.jl-final-light__container{
    position:relative;

    width:min(1180px,100%);

    margin:0 auto;
}


/*==========================================================
=                        HEADING                           =
==========================================================*/

.jl-final-light__heading{
    max-width:850px;
}


/*==========================================================
=                        EYEBROW                           =
==========================================================*/

.jl-final-light__eyebrow{
    display:flex;

    align-items:center;

    gap:14px;

    margin-bottom:23px;

    color:var(--jlf-gold);

    font-size:10px;
    font-weight:700;

    line-height:1;

    letter-spacing:.22em;

    text-transform:uppercase;
}


.jl-final-light__eyebrow::before{
    content:"";

    display:block;

    width:36px;
    height:1px;

    flex:0 0 36px;

    background:var(--jlf-gold);
}


/*==========================================================
=                         TITRE                            =
==========================================================*/

.jl-final-light__title{
    max-width:820px;

    margin:0;

    color:var(--jlf-green);

    font-family:
        "Cormorant Garamond",
        Georgia,
        serif;

    font-size:
        clamp(
            58px,
            6vw,
            82px
        );

    font-weight:500;

    line-height:.9;

    letter-spacing:-.045em;
}


.jl-final-light__title em{
    display:block;

    margin-top:8px;

    color:var(--jlf-gold);

    font-weight:400;
}


/*==========================================================
=                       INTRO                              =
==========================================================*/

.jl-final-light__intro{
    display:flex;

    justify-content:flex-end;

    margin-top:42px;
}


.jl-final-light__intro p{
    width:min(100%,590px);

    margin:0;

    color:var(--jlf-text);

    font-size:14px;

    line-height:1.8;
}


/*==========================================================
=                      BAS DE SECTION                      =
==========================================================*/

.jl-final-light__bottom{
    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        auto;

    align-items:center;

    gap:60px;

    margin-top:55px;

    padding-top:34px;

    border-top:
        1px solid
        var(--jlf-border);
}


/*==========================================================
=                        ACTIONS                           =
==========================================================*/

.jl-final-light__actions{
    display:flex;

    align-items:center;

    gap:12px;

    flex-wrap:wrap;
}


/*==========================================================
=                    BOUTONS — BASE                        =
==========================================================*/

.jl-final-light__button{
    position:relative;

    display:inline-flex;

    align-items:center;

    justify-content:space-between;

    gap:20px;

    min-height:64px;

    padding:
        7px
        7px
        7px
        25px;

    border-radius:999px;

    text-decoration:none !important;

    overflow:hidden;

    cursor:pointer;

    transition:
        transform .3s ease,
        background-color .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}


/*==========================================================
=                     TEXTE BOUTON                         =
==========================================================*/

.jl-final-light__button-text{
    display:block;

    position:relative;

    z-index:2;

    font-size:13px;

    font-weight:700;

    line-height:1;

    white-space:nowrap;
}


/*==========================================================
=                     ICÔNE BOUTON                         =
==========================================================*/

.jl-final-light__button-icon{
    display:flex;

    align-items:center;

    justify-content:center;

    width:50px;
    height:50px;

    min-width:50px;

    flex:0 0 50px;

    margin:0;

    border-radius:50%;

    font-size:17px;

    line-height:1;

    transition:
        transform .3s ease,
        background-color .3s ease,
        color .3s ease;
}


/*==========================================================
=                  BOUTON PRINCIPAL                        =
==========================================================*/

.jl-final-light__button--primary{
    min-width:230px;

    border:
        1px solid
        var(--jlf-green);

    background:
        var(--jlf-green);

    color:#fff !important;

    box-shadow:
        0 10px 28px
        rgba(18,63,49,.10);
}


.jl-final-light__button--primary
.jl-final-light__button-icon{
    background:var(--jlf-gold);

    color:var(--jlf-green);
}


/*==========================================================
=                  BOUTON SECONDAIRE                       =
==========================================================*/

.jl-final-light__button--secondary{
    min-width:240px;

    border:
        1px solid
        rgba(18,63,49,.28);

    background:
        rgba(255,255,255,.35);

    color:var(--jlf-green) !important;
}


.jl-final-light__button--secondary
.jl-final-light__button-icon{
    background:var(--jlf-green);

    color:#fff;
}


/*==========================================================
=                         HOVER                            =
==========================================================*/

.jl-final-light__button:hover{
    transform:translateY(-2px);
}


.jl-final-light__button--primary:hover{
    background:var(--jlf-dark);

    border-color:var(--jlf-dark);

    box-shadow:
        0 15px 32px
        rgba(18,63,49,.15);
}


.jl-final-light__button--secondary:hover{
    background:#fff;

    border-color:
        rgba(18,63,49,.45);
}


.jl-final-light__button--primary:hover
.jl-final-light__button-icon{
    transform:translateX(-3px);
}


.jl-final-light__button--secondary:hover
.jl-final-light__button-icon{
    transform:translateY(3px);
}


/*==========================================================
=                     SIGNATURE                            =
==========================================================*/

.jl-final-light__signature{
    display:flex;

    align-items:center;

    gap:16px;

    padding-left:35px;

    border-left:
        1px solid
        var(--jlf-border);
}


/*==========================================================
=                         LOGO                             =
==========================================================*/

.jl-final-light__logo{
    display:flex;

    align-items:center;

    justify-content:center;

    width:76px;
    height:76px;

    flex:0 0 76px;
}


.jl-final-light__logo img{
    display:block;

    width:100%;
    height:100%;

    object-fit:contain;
}


/*==========================================================
=                  TEXTE SIGNATURE                         =
==========================================================*/

.jl-final-light__signature-text{
    display:flex;

    flex-direction:column;

    align-items:flex-start;

    gap:5px;
}


.jl-final-light__signature-text span{
    color:var(--jlf-gold);

    font-size:8px;

    font-weight:700;

    letter-spacing:.18em;

    text-transform:uppercase;
}


.jl-final-light__signature-text strong{
    color:var(--jlf-green);

    font-family:
        "Cormorant Garamond",
        Georgia,
        serif;

    font-size:21px;

    font-weight:600;

    line-height:1.1;

    white-space:nowrap;
}


/*==========================================================
=                        TABLETTE                          =
==========================================================*/

@media(max-width:1024px){

    .jl-final-light{
        padding:
            90px
            24px
            90px;
    }


    .jl-final-light__title{
        max-width:700px;

        font-size:
            clamp(
                54px,
                7vw,
                72px
            );
    }


    .jl-final-light__intro{
        justify-content:flex-start;

        margin-top:35px;
    }


    .jl-final-light__bottom{
        grid-template-columns:1fr;

        gap:35px;

        margin-top:45px;
    }


    .jl-final-light__signature{
        width:100%;

        padding:
            25px
            0
            0;

        border-left:0;

        border-top:
            1px solid
            var(--jlf-border);
    }

}


/*==========================================================
=                         MOBILE                           =
==========================================================*/

@media(max-width:767px){

    .jl-final-light{
        padding:
            68px
            14px
            72px;
    }


    /* EYEBROW */

    .jl-final-light__eyebrow{
        gap:10px;

        margin-bottom:17px;

        font-size:9px;

        letter-spacing:.17em;
    }


    .jl-final-light__eyebrow::before{
        width:25px;

        flex-basis:25px;
    }


    /* TITRE */

    .jl-final-light__title{
        max-width:360px;

        font-size:47px;

        line-height:.92;
    }


    .jl-final-light__title em{
        margin-top:5px;
    }


    /* TEXTE */

    .jl-final-light__intro{
        margin-top:27px;
    }


    .jl-final-light__intro p{
        max-width:355px;

        font-size:13px;

        line-height:1.7;
    }


    /* BOTTOM */

    .jl-final-light__bottom{
        display:block;

        margin-top:34px;

        padding-top:27px;
    }


    /* ACTIONS */

    .jl-final-light__actions{
        display:flex;

        flex-direction:column;

        align-items:stretch;

        gap:10px;
    }


    /* BOUTONS */

    .jl-final-light__button{
        width:100%;

        min-width:0;

        min-height:60px;

        padding:
            6px
            6px
            6px
            21px;
    }


    .jl-final-light__button-text{
        font-size:13px;
    }


    .jl-final-light__button-icon{
        width:48px;
        height:48px;

        min-width:48px;

        flex-basis:48px;
    }


    /* SIGNATURE */

    .jl-final-light__signature{
        margin-top:32px;

        padding-top:27px;

        gap:14px;
    }


    .jl-final-light__logo{
        width:64px;
        height:64px;

        flex-basis:64px;
    }


    .jl-final-light__signature-text strong{
        font-size:19px;
    }

}


/*==========================================================
=                     PETITS MOBILES                       =
==========================================================*/

@media(max-width:390px){

    .jl-final-light{
        padding:
            62px
            10px
            66px;
    }


    .jl-final-light__title{
        font-size:42px;
    }


    .jl-final-light__intro p{
        font-size:12.5px;
    }


    .jl-final-light__button{
        min-height:58px;

        padding-left:18px;
    }


    .jl-final-light__button-icon{
        width:46px;
        height:46px;

        min-width:46px;

        flex-basis:46px;
    }


    .jl-final-light__logo{
        width:58px;
        height:58px;

        flex-basis:58px;
    }

}


/*==========================================================
=                 RÉDUCTION DES ANIMATIONS                 =
==========================================================*/

@media(prefers-reduced-motion:reduce){

    .jl-final-light__button,
    .jl-final-light__button-icon{
        transition:none !important;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0874817 *//*==========================================================
=                    POPUP CONTACT JULIEN                  =
==========================================================*/

.julien-modal,
.julien-modal *{
    box-sizing:border-box;
}

.julien-modal{
    --jm-green:#123f31;
    --jm-dark:#082b21;
    --jm-gold:#d7aa52;

    position:fixed;
    inset:0;

    z-index:9999;

    display:flex;
    align-items:center;
    justify-content:center;

    padding:20px;

    opacity:0;
    visibility:hidden;

    transition:opacity .3s ease, visibility .3s ease;
}

.julien-modal.is-open{
    opacity:1;
    visibility:visible;
}


/* OVERLAY */

.julien-modal__overlay{
    position:absolute;
    inset:0;

    background:rgba(5,31,23,.72);

    backdrop-filter:blur(3px);
    -webkit-backdrop-filter:blur(3px);
}


/* BOX */

.julien-modal__box{
    position:relative;

    width:min(440px,100%);

    padding:48px 36px 40px;

    border-radius:18px;

    background:linear-gradient(160deg,var(--jm-green) 0%,var(--jm-dark) 100%);

    text-align:center;

    transform:translateY(16px) scale(.97);

    transition:transform .35s cubic-bezier(.2,.7,.2,1);
}

.julien-modal.is-open .julien-modal__box{
    transform:translateY(0) scale(1);
}


/* CADRE INTÉRIEUR */

.julien-modal__border{
    position:absolute;
    inset:12px;

    border:1px solid rgba(255,255,255,.22);
    border-radius:12px;

    pointer-events:none;
}


/* BOUTON FERMER */

.julien-modal__close{
    position:absolute;

    top:16px;
    right:16px;

    width:34px;
    height:34px;

    display:flex;
    align-items:center;
    justify-content:center;

    border:none;
    border-radius:50%;

    background:rgba(255,255,255,.08);

    color:#fff;

    font-size:14px;
    cursor:pointer;

    transition:background-color .25s ease;
}

.julien-modal__close:hover{
    background:rgba(255,255,255,.18);
}


/* AVATAR */

.julien-modal__avatar{
    width:88px;
    height:88px;

    margin:0 auto 20px;

    border-radius:50%;
    overflow:hidden;

    background:#fff;

    border:2px solid var(--jm-gold);
}

.julien-modal__avatar img{
    width:100%;
    height:100%;

    object-fit:cover;
}


/* EYEBROW */

.julien-modal__eyebrow{
    display:block;

    margin-bottom:10px;

    color:var(--jm-gold);

    font-family:"Manrope",Arial,sans-serif;

    font-size:10.5px;
    font-weight:700;

    letter-spacing:.18em;
    text-transform:uppercase;
}


/* NOM */

.julien-modal__name{
    margin:0;

    color:#fff;

    font-family:"Cormorant Garamond",Georgia,serif;

    font-size:38px;
    font-weight:500;

    line-height:1.1;
}


/* TITRE */

.julien-modal__title{
    margin:6px 0 28px;

    color:rgba(255,255,255,.72);

    font-family:"Manrope",Arial,sans-serif;

    font-size:13px;
}


/* ACTIONS */

.julien-modal__actions{
    display:flex;
    flex-direction:column;

    gap:10px;
}


/* BOUTONS */

.julien-modal__button{
    display:flex;
    align-items:center;
    justify-content:space-between;

    padding:14px 8px 14px 20px;

    border-radius:100px;

    font-family:"Manrope",Arial,sans-serif;

    font-size:13px;
    font-weight:700;

    text-decoration:none;

    transition:transform .25s ease, background-color .25s ease;
}

.julien-modal__button--primary{
    background:#fff;
    color:var(--jm-green);
}

.julien-modal__button--primary:hover{
    transform:translateY(-2px);
}

.julien-modal__button--secondary{
    border:1px solid rgba(255,255,255,.55);
    background:rgba(255,255,255,.04);
    color:#fff;
}

.julien-modal__button--secondary:hover{
    background:rgba(255,255,255,.11);
    transform:translateY(-2px);
}

.julien-modal__button-icon{
    display:flex;
    align-items:center;
    justify-content:center;

    width:32px;
    height:32px;

    border-radius:50%;

    font-size:13px;
}

.julien-modal__button--primary .julien-modal__button-icon{
    background:var(--jm-green);
    color:#fff;
}

.julien-modal__button--secondary .julien-modal__button-icon{
    background:#fff;
    color:var(--jm-green);
}


/* MOBILE */

@media (max-width:480px){

    .julien-modal__box{
        padding:40px 24px 32px;
    }

    .julien-modal__name{
        font-size:32px;
    }

    .julien-modal__button{
        font-size:12px;

        padding-left:16px;
    }

}/* End custom CSS */