.elementor-756 .elementor-element.elementor-element-91cc141{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for container, class: .elementor-element-91cc141 */@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&family=Roboto:wght@400;500;600;700&display=swap');


/* =========================================================
   VARIABLES
========================================================= */

:root{
    --pr-blue:#21489A;
    --pr-orange:#ff571c;
    --pr-light:#fbfaf7;
    --pr-beige:#f4eee6;
    --pr-text:#647c8a;
    --pr-line:rgba(33,72,154,.11);
}


/* =========================================================
   RESET
========================================================= */

.pr-page,
.pr-page *,
.pr-page *::before,
.pr-page *::after{
    box-sizing:border-box;
}

.pr-page{
    width:100%;
    overflow:hidden;
    background:var(--pr-light);
    color:var(--pr-blue);
    font-family:"Roboto",sans-serif;
}

.pr-page a{
    text-decoration:none;
}

.pr-container{
    width:min(1040px,calc(100% - 90px));
    margin:0 auto;
}


/* =========================================================
   HERO
========================================================= */

.pr-hero{
    position:relative;
    overflow:hidden;

    padding:
        clamp(55px,5vw,75px)
        0
        clamp(52px,5vw,72px);

    background:
        radial-gradient(
            circle at 92% 0%,
            rgba(255,87,28,.055),
            transparent 29%
        ),
        linear-gradient(
            115deg,
            var(--pr-light),
            var(--pr-beige)
        );
}

.pr-hero__grid{
    position:absolute;
    inset:0;
    pointer-events:none;

    background-image:
        linear-gradient(
            rgba(33,72,154,.025) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(33,72,154,.025) 1px,
            transparent 1px
        );

    background-size:92px 92px;
}


/* =========================================================
   LABELS
========================================================= */

.pr-label,
.pr-section-label{
    position:relative;
    z-index:2;

    display:flex;
    align-items:center;
    gap:16px;

    margin-bottom:clamp(30px,3vw,42px);
}

.pr-label > span,
.pr-section-label > span{
    width:42px;
    height:2px;
    flex:0 0 42px;
    background:var(--pr-orange);
}

.pr-label small,
.pr-section-label small{
    color:#748a97;
    font-family:"Montserrat",sans-serif;
    font-size:16px;
    font-weight:800;
    line-height:1;
    letter-spacing:.17em;
    text-transform:uppercase;
}


/* =========================================================
   H1
========================================================= */

.pr-title{
    position:relative;
    z-index:2;
    width:fit-content;
    max-width:100%;
    margin:0;

    font-family:"Montserrat",sans-serif;
    font-size:clamp(58px,5.6vw,90px);
    font-weight:800;
    line-height:.88;
    letter-spacing:-.06em;
}

.pr-title__top{
    display:block;
    color:var(--pr-blue);
}

.pr-title__bottom{
    position:relative;
    display:block;
    width:fit-content;

    margin-top:8px;
    margin-left:clamp(38px,4vw,64px);

    color:var(--pr-orange);
    font-weight:800;
}

.pr-title__dot{
    position:absolute;
    left:calc(100% + .11em);
    bottom:.08em;
    width:.14em;
    height:.14em;
    background:var(--pr-blue);
}


/* =========================================================
   ACCROCHE
========================================================= */

.pr-hook{
    position:relative;
    z-index:2;
    max-width:900px;

    margin:clamp(30px,3vw,42px) 0 0;
    padding-left:22px;

    color:var(--pr-blue);
    font-family:"Montserrat",sans-serif;
    font-size:clamp(17px,1.45vw,22px);
    font-weight:600;
    line-height:1.55;
}

.pr-hook::before{
    content:"";
    position:absolute;
    left:0;
    top:4px;
    bottom:4px;
    width:2px;
    background:var(--pr-orange);
}


/* =========================================================
   PROFILS SECTION
========================================================= */

.pr-profiles{
    padding:
        clamp(60px,6vw,90px)
        0
        clamp(70px,7vw,100px);

    background:
        linear-gradient(
            115deg,
            #fbfaf7,
            #f6f0e9
        );
}


/* =========================================================
   PROFILS GRID
========================================================= */

.pr-profiles__grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:72px;
    row-gap:56px;
}


/* =========================================================
   PROFIL ITEM
========================================================= */

.pr-profile{
    display:grid;
    grid-template-columns:44px minmax(0,1fr);
    align-items:start;
    gap:18px;
    min-width:0;
}

.pr-profile__number{
    padding-top:8px;
    color:var(--pr-orange);
    font-family:"Montserrat",sans-serif;
    font-size:12px;
    font-weight:800;
    letter-spacing:.07em;
}

.pr-profile__content{
    min-width:0;
}


/* =========================================================
   PROFIL TITLE
========================================================= */

.pr-profile h2{
    display:flex;
    align-items:baseline;
    gap:10px;

    margin:0 0 18px;

    color:var(--pr-blue);
    font-family:"Montserrat",sans-serif;
    font-size:clamp(27px,2.5vw,37px);
    font-weight:800;
    line-height:1.1;
    letter-spacing:-.045em;
}

.pr-profile__dot{
    display:inline-block;
    width:8px;
    height:8px;
    flex:0 0 8px;
    background:var(--pr-orange);
}

.pr-profile p{
    margin:0;
    color:var(--pr-text);
    font-size:clamp(15px,1vw,17px);
    line-height:1.82;
}


/* =========================================================
   RÉFÉRENCES SECTION
========================================================= */

.pr-references{
    padding:
        clamp(70px,7vw,105px)
        0
        clamp(80px,8vw,115px);

    background:var(--pr-light);
    border-top:1px solid var(--pr-line);
}

.pr-section-label{
    margin-bottom:25px;
}

.pr-section-label small{
    font-size:12px;
}

.pr-section-label > span{
    width:34px;
    flex-basis:34px;
}


/* =========================================================
   RÉFÉRENCES TITLE
========================================================= */

.pr-section-title{
    display:flex;
    align-items:baseline;
    gap:14px;
    margin:0 0 25px;

    color:var(--pr-blue);
    font-family:"Montserrat",sans-serif;
    font-size:clamp(38px,4vw,60px);
    font-weight:800;
    line-height:1;
    letter-spacing:-.055em;
}

.pr-section-title__dot{
    display:inline-block;
    width:11px;
    height:11px;
    flex:0 0 11px;
    background:var(--pr-orange);
}

.pr-references__intro{
    max-width:790px;
    margin:0 0 clamp(42px,5vw,65px);

    color:var(--pr-text);
    font-size:clamp(16px,1.2vw,19px);
    line-height:1.75;
}

.pr-references__intro em{
    color:var(--pr-blue);
    font-style:italic;
}


/* =========================================================
   LOGOS GRID
========================================================= */

.pr-logos{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}


/* =========================================================
   LOGO CARD
========================================================= */

.pr-logo{
    display:flex;
    align-items:center;
    justify-content:center;

    min-width:0;
    min-height:175px;
    padding:30px;

    overflow:hidden;

    background:#fff;
    border:1px solid var(--pr-line);
    border-radius:18px;

    transition:
        border-color .3s ease,
        box-shadow .3s ease,
        transform .3s ease;
}

.pr-logo img{
    display:block;
    width:100%;
    max-width:205px;
    height:95px;

    object-fit:contain;
    object-position:center;

    transition:transform .3s ease;
}

.pr-logo:hover{
    transform:translateY(-4px);
    border-color:rgba(33,72,154,.24);
    box-shadow:0 14px 30px rgba(33,72,154,.07);
}

.pr-logo:hover img{
    transform:scale(1.04);
}


/* =========================================================
   VALIANT CAPITAL
========================================================= */

.pr-logo--valiant img{
    max-width:220px;
    height:105px;
}


/* =========================================================
   CLUB PILATE — AGRANDI
========================================================= */

.pr-club-wordmark{
    display:block;
    width:100%;
    color:var(--pr-blue);
    font-family:"Montserrat",sans-serif;
    font-size:clamp(25px,2.4vw,35px);
    font-weight:800;
    letter-spacing:-.05em;
    line-height:1.1;
    text-align:center;
}


/* =========================================================
   UPSILON
========================================================= */

.pr-logo--upsilon img{
    max-width:220px;
    height:105px;
}


/* =========================================================
   ÉCOLE LOUIS LEGRAND — AGRANDI
========================================================= */

.pr-logo--legrand{
    padding:14px;
}

.pr-logo--legrand img{
    width:100%;
    max-width:285px;
    height:140px;
    object-fit:contain;
}


/* =========================================================
   SAHADA
========================================================= */

.pr-logo--sahada img{
    max-width:220px;
    height:110px;
}


/* =========================================================
   EDUCATIS
========================================================= */

.pr-logo--educatis img{
    max-width:220px;
    height:105px;
}


/* =========================================================
   TRUSTEE — LETTRAGE PROVISOIRE
========================================================= */

.pr-trustee-wordmark{
    display:block;
    color:var(--pr-blue);
    font-family:"Montserrat",sans-serif;
    font-size:clamp(21px,2vw,28px);
    font-weight:800;
    text-align:center;
}


/* =========================================================
   INTELLIGENCE & ASSURANCE — LOGO PNG
========================================================= */

.pr-logo--ia{
    padding:15px;
}

.pr-logo--ia img{
    width:100%;
    max-width:290px;
    height:140px;
    object-fit:contain;
    object-position:center;
}


/* =========================================================
   MOOVJEE
========================================================= */

.pr-logo--moovjee img{
    width:100%;
    max-width:235px;
    height:115px;
    object-fit:contain;
}


/* =========================================================
   L.L. — NOUVEAU LOGO
========================================================= */

.pr-logo--ll img{
    width:100%;
    max-width:235px;
    height:115px;
    object-fit:contain;
}


/* =========================================================
   CTA FINAL
========================================================= */

.pr-cta{
    padding:clamp(65px,6vw,90px) 0;
    background:#fbfaf7;
    border-top:1px solid var(--pr-line);
}


/* =========================================================
   CTA LAYOUT — BOUTON À DROITE
========================================================= */

.pr-cta__layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 270px;
    align-items:center;
    gap:25px;
}

.pr-cta__copy{
    max-width:none;
    min-width:0;
}


/* =========================================================
   CTA KICKER
========================================================= */

.pr-kicker{
    display:flex;
    align-items:center;
    gap:13px;

    margin-bottom:22px;

    color:#748a97;
    font-family:"Montserrat",sans-serif;
    font-size:12px;
    font-weight:700;
    line-height:1;
    letter-spacing:.15em;
    text-transform:uppercase;
}

.pr-kicker::before{
    content:"";
    width:34px;
    height:2px;
    flex:0 0 34px;
    background:var(--pr-orange);
}


/* =========================================================
   CTA TITLE
========================================================= */

.pr-cta h2{
    margin:0 0 20px;
    font-family:"Montserrat",sans-serif;
    font-size:clamp(30px,3.1vw,42px);
    font-weight:800;
    line-height:1.06;
    letter-spacing:-.045em;
}

.pr-cta h2 > span{
    display:block;
    color:var(--pr-blue);
}

.pr-cta h2 > strong{
    display:block;
    margin-top:5px;

    color:var(--pr-orange);
    font-weight:800;
    white-space:nowrap;
}

.pr-cta__copy p{
    max-width:580px;
    margin:0;

    color:var(--pr-text);
    font-size:16px;
    line-height:1.7;
}


/* =========================================================
   CTA BUTTON
========================================================= */

.pr-cta__button{
    width:270px;
    min-height:64px;

    display:grid;
    grid-template-columns:minmax(0,1fr) 64px;

    overflow:hidden;
    flex-shrink:0;
    justify-self:end;

    border-radius:18px;
    background:var(--pr-blue);

    box-shadow:0 12px 26px rgba(33,72,154,.10);

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}

.pr-cta__text{
    min-height:64px;
    display:flex;
    align-items:center;
    justify-content:center;

    padding:0 16px;
    color:#fff;

    font-family:"Montserrat",sans-serif;
    font-size:16px;
    font-weight:700;
    line-height:1;
    text-align:center;
}

.pr-cta__action{
    min-height:64px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:var(--pr-orange);
}

.pr-cta__action svg{
    width:38px;
    height:auto;
    overflow:visible;

    transition:transform .3s cubic-bezier(.2,.8,.2,1);
}

.pr-cta__button:hover{
    transform:translateY(-3px);
    box-shadow:0 17px 34px rgba(33,72,154,.15);
}

.pr-cta__button:hover .pr-cta__action svg{
    transform:translate(4px,-2px) rotate(-3deg);
}


/* =========================================================
   TABLETTE — CTA
========================================================= */

@media(max-width:1100px){

    .pr-cta__layout{
        grid-template-columns:1fr;
        gap:35px;
    }

    .pr-cta__button{
        justify-self:start;
        width:330px;
    }

    .pr-cta h2 > strong{
        white-space:normal;
    }
}


/* =========================================================
   TABLETTE
========================================================= */

@media(max-width:900px){

    .pr-container{
        width:calc(100% - 50px);
    }

    .pr-profiles__grid{
        column-gap:35px;
        row-gap:48px;
    }

    .pr-profile{
        grid-template-columns:30px minmax(0,1fr);
        gap:12px;
    }

    .pr-logos{
        gap:14px;
    }

    .pr-logo{
        min-height:155px;
        padding:20px;
    }

    .pr-logo--legrand,
    .pr-logo--ia{
        padding:12px;
    }

    .pr-logo--legrand img,
    .pr-logo--ia img{
        height:125px;
    }

    .pr-club-wordmark{
        font-size:27px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:700px){

    .pr-container{
        width:calc(100% - 32px);
    }

    /* HERO */

    .pr-hero{
        padding:42px 0 50px;
    }

    .pr-hero__grid{
        background-size:58px 58px;
    }

    .pr-label{
        gap:11px;
        margin-bottom:26px;
    }

    .pr-label > span{
        width:28px;
        flex-basis:28px;
    }

    .pr-label small{
        font-size:12px;
        letter-spacing:.14em;
    }

    .pr-title{
        font-size:clamp(45px,12vw,62px);
    }

    .pr-title__bottom{
        margin-left:clamp(26px,7vw,38px);
    }

    .pr-hook{
        margin-top:25px;
        padding-left:16px;
        font-size:clamp(17px,4.5vw,20px);
        line-height:1.5;
    }

    /* PROFILS */

    .pr-profiles{
        padding:50px 0 65px;
    }

    .pr-profiles__grid{
        grid-template-columns:1fr;
        row-gap:36px;
    }

    .pr-profile{
        grid-template-columns:35px minmax(0,1fr);
        gap:12px;
    }

    .pr-profile h2{
        margin-bottom:12px;
        font-size:29px;
    }

    .pr-profile p{
        font-size:14px;
        line-height:1.76;
    }

    /* RÉFÉRENCES */

    .pr-references{
        padding:60px 0 70px;
    }

    .pr-section-title{
        font-size:clamp(33px,8.5vw,43px);
    }

    .pr-references__intro{
        margin-bottom:35px;
        font-size:15px;
        line-height:1.72;
    }

    /* GRILLE DES LOGOS */

    .pr-logos{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:12px;
    }

    .pr-logo{
        min-height:130px;
        padding:14px;
        border-radius:14px;
    }

    .pr-logo img{
        max-width:150px;
        height:75px;
    }

    /* CLUB PILATE */

    .pr-club-wordmark{
        font-size:clamp(19px,4.9vw,25px);
    }

    /* ÉCOLE LOUIS LEGRAND */

    .pr-logo--legrand{
        padding:8px;
    }

    .pr-logo--legrand img{
        max-width:100%;
        height:110px;
    }

    /* INTELLIGENCE & ASSURANCE */

    .pr-logo--ia{
        padding:8px;
    }

    .pr-logo--ia img{
        max-width:100%;
        height:110px;
    }

    /* TRUSTEE */

    .pr-trustee-wordmark{
        font-size:19px;
    }

    /* MOOVJEE */

    .pr-logo--moovjee img{
        max-width:160px;
        height:80px;
    }

    /* L.L. */

    .pr-logo--ll img{
        max-width:160px;
        height:80px;
    }

    /* CTA FINAL */

    .pr-cta{
        padding:55px 0 65px;
    }

    .pr-cta__layout{
        display:block;
    }

    .pr-kicker{
        margin-bottom:18px;
        font-size:10px;
    }

    .pr-cta h2{
        font-size:clamp(30px,8.5vw,39px);
    }

    .pr-cta h2 > strong{
        white-space:normal;
    }

    .pr-cta__copy p{
        font-size:14px;
    }

    .pr-cta__button{
        width:100%;
        min-height:62px;
        margin-top:32px;

        grid-template-columns:minmax(0,1fr) 62px;
        border-radius:17px;
    }

    .pr-cta__text,
    .pr-cta__action{
        min-height:62px;
    }

    .pr-cta__text{
        font-size:16px;
    }

    .pr-cta__action svg{
        width:36px;
    }
}


/* =========================================================
   PETIT MOBILE
========================================================= */

@media(max-width:390px){

    .pr-container{
        width:calc(100% - 28px);
    }

    .pr-title{
        font-size:clamp(39px,11vw,47px);
    }

    .pr-title__bottom{
        margin-left:24px;
    }

    .pr-profile{
        grid-template-columns:27px minmax(0,1fr);
        gap:10px;
    }

    .pr-profile h2{
        font-size:26px;
    }

    .pr-logo{
        min-height:115px;
        padding:10px;
    }

    .pr-logo img{
        height:68px;
    }

    .pr-club-wordmark{
        font-size:18px;
    }

    .pr-logo--legrand img,
    .pr-logo--ia img{
        height:95px;
    }

    .pr-cta h2{
        font-size:29px;
    }
}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media(prefers-reduced-motion:reduce){

    .pr-logo,
    .pr-logo img,
    .pr-cta__button,
    .pr-cta__action svg{
        transition:none !important;
    }
}/* End custom CSS */