
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:Arial, Helvetica, sans-serif;
    background:#f6f6f6;
    color:#2f3b45;
    overflow-x:hidden;
    line-height:1.6;
}

.container{
    width:min(1320px, calc(100% - 80px));
    margin:auto;
}

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

.header{

    position:fixed;

    top:18px;
    left:50%;

    transform:translateX(-50%);

    width:min(1280px, calc(100% - 40px));

    z-index:1000;

    padding:18px 30px;

    border-radius:28px;

background:linear-gradient(
    90deg,
    rgba(48,72,96,.78) 0%,
    rgba(58,84,108,.72) 100%
);

backdrop-filter:blur(14px);

-webkit-backdrop-filter:blur(14px);

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

    backdrop-filter:blur(18px);

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

    box-shadow:
    0 20px 45px rgba(0,0,0,.30);

}

.nav-container{

    display:flex;

    align-items:center;
    justify-content: center;
gap: 120px;

    gap:40px;

}
.footer-section {
    width: 280px;
}

.logo{

    display:flex;

    align-items:center;

    gap:16px;

    color:#fff;

    text-decoration:none;

    font-size:2rem;
    font-weight:900;

    letter-spacing:1px;

}

.logo-dot{

    width:14px;
    height:14px;

    border-radius:50%;

    background:#9dd63f;

    box-shadow:
    0 0 20px rgba(157,214,63,.9);

}

.nav-menu{

    display:flex;

    align-items:center;

    gap:38px;

}

.nav-menu a{

    position:relative;

    color:#fff;

    text-decoration:none;

    font-weight:600;

    transition:0.3s ease;

}

.nav-menu a::after{

    content:'';

    position:absolute;

    left:0;
    bottom:-10px;

    width:0;
    height:2px;

    border-radius:999px;

    background:#95cd42;

    transition:width 0.3s ease;

}

.nav-menu a:hover::after{

    width:100%;

}

.nav-menu a:hover{

    color:#ffffff;

}

.header-buttons{

    display:flex;

    gap:14px;

}


/* =====================================================
   TEAM PREMIUM
===================================================== */

.lr-team-premium{

    position:relative;

    padding:140px 0;

    background:
    linear-gradient(
        135deg,
        #5579a2 0%,
        #4c7099 45%,
        #3f6285 100%
    );

    overflow:hidden;

}

.lr-team-premium::before{

    content:'';

    position:absolute;

    inset:0;

    background:
    radial-gradient(
        circle at top,
        rgba(149,205,66,.10),
        transparent 60%
    );

    pointer-events:none;

}

.lr-team-header{

    position:relative;

    z-index:2;

    max-width:850px;

    margin:0 auto 90px;

    text-align:center;

}

.lr-team-badge{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:10px 22px;

    border-radius:999px;

    background:
    rgba(149,205,66,.14);

    border:
    1px solid rgba(149,205,66,.28);

    color:#d7ff88;

    font-size:.78rem;

    font-weight:800;

    letter-spacing:3px;

    text-transform:uppercase;

    margin-bottom:28px;

}

.lr-team-header h2{

    color:#ffffff;

    font-size:3.4rem;

    line-height:1.05;

    margin-bottom:24px;

    letter-spacing:-2px;

}

.lr-team-header p{

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

    font-size:1.08rem;

    line-height:1.9;

}

/* =====================================================
MISSION TEXT PREMIUM
===================================================== */

.mission-text{

    max-width:1100px;

    margin:70px auto 0;

    color:#243447;

    font-size:1.18rem;

    line-height:2;

    font-weight:400;

    letter-spacing:.2px;

}

.mission-text p{

    margin-bottom:15px;

}

.mission-text p:last-child{

    margin-bottom:0;

}

.mission-text ul{

    margin:25px 0;

    padding-left:28px;

}

.mission-text li{

    margin-bottom:18px;

    color:#3f6285;

    font-weight:600;

}

.mission-text strong{

    color:#95cd42;

    font-weight:700;

}

/* =====================================================
TEAM SOINS PREMIUM
===================================================== */

.lr-care-team{

    position:relative;

    padding:1px 0 110px;

    background:
    linear-gradient(
        180deg,
        #f4f7fb 0%,
        #edf3f9 100%
    );

    overflow:hidden;

}

.lr-care-team::before{

    content:'';

    position:absolute;

    inset:0;

    background:
    radial-gradient(
        circle at top,
        rgba(149,205,66,.08),
        transparent 65%
    );

    pointer-events:none;

}

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

.lr-care-header{

    position:relative;

    z-index:2;

    max-width:900px;

    margin:0 auto 35px;

    text-align:center;

}

.lr-care-badge{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:10px 24px;

    border-radius:999px;

    background:#d8f0a7 !important;

    border:1px solid #b9dd6a !important;

    color:#6e961d !important;

    font-size:.78rem;

    font-weight:800;

    letter-spacing:3px;

    text-transform:uppercase;

    margin-bottom:26px;

}

.lr-care-header h2{

    color:#3f6285;

        font-size:clamp(2.8rem, 5vw, 4rem);
    line-height:1;

    line-height:1.08;

    margin-bottom:24px;

    letter-spacing:-2px;

}

.lr-care-header p{

    color:#4e647c;

    font-size:1.08rem;

    line-height:1.9;

}

/* =====================================================
GRID
===================================================== */

.lr-care-grid{

    position:relative;

    z-index:2;

    display:grid;

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

    gap:90px 60px;

    justify-items:center;

}

.lr-care-grid{

    max-width:1400px;

    margin:auto;

    gap:40px;

    align-items:start;

}
/* =====================================================
CARD
===================================================== */

.lr-care-card{

    text-align:center;

    transition:
    transform .35s ease;

}

.lr-care-card:hover{

    transform:translateY(-8px);

}


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

.lr-care-photo-wrapper{

    position:relative;

    width:165px;

    height:165px;

    margin:0 auto 26px;

    border-radius:50%;

    padding:6px;

    background:
    linear-gradient(
        145deg,
        #95cd42,
        rgba(149,205,66,.18)
    );

    box-shadow:
    0 10px 35px rgba(63,98,133,.14);

}

.lr-care-photo-wrapper::before{

    content:'';

    position:absolute;

    inset:-12px;

    border-radius:50%;

    border:
    1px solid rgba(149,205,66,.18);

}

.lr-care-photo{

    width:100%;

    height:100%;

    object-fit:cover;

    border-radius:50%;

    border:4px solid #ffffff;

}

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

.lr-care-card h3{

    color:#95cd42;

    font-size:1.6rem;

    font-weight:800;

    margin-bottom:10px;

    letter-spacing:.5px;

}

.lr-care-card span{

    display:block;

    color:#5c7897;

    font-size:1.05rem;

    font-weight:500;

    letter-spacing:.3px;

}

/* =====================================================
RESPONSIVE
===================================================== */

@media(max-width:1100px){

    .lr-care-grid{

        grid-template-columns:
        repeat(2,1fr);

    }

}

@media(max-width:768px){

    .lr-care-team{

        padding:100px 0;

    }

    .lr-care-grid{

        grid-template-columns:1fr;

        gap:70px;

    }

    .lr-care-header h2{

        font-size:2.8rem;

    }

    .lr-care-photo-wrapper{

        width:145px;

        height:145px;

    }

    .lr-care-offset,
    .lr-care-bottom{

        margin-top:0;

    }

}

/* =====================================================
CENTRAGE CONTENU TEAM
===================================================== */

.lr-team-content{

    display:flex;

    flex-direction:column;

    align-items:center;

    justify-content:flex-start;

    text-align:center;

}

.lr-team-role{

    text-align:center;

}

.lr-team-content h3{

    text-align:center;

}

.lr-team-content p{

    text-align:center;

    max-width:320px;

    margin:auto;

}

/* =====================================================
   GRID
===================================================== */

.lr-team-grid{

    position:relative;

    z-index:2;

    display:grid;

    grid-template-columns:
    repeat(3,1fr);

    gap:42px;

}

/* =====================================================
   CARD
===================================================== */

.lr-team-card{

    position:relative;

    padding-top:110px;

}

.lr-team-photo-wrapper{

    position:absolute;

    top:0;

    left:50%;

    transform:translateX(-50%);

    width:210px;

    height:210px;

    border-radius:50%;

    padding:8px;

    background:
    linear-gradient(
        145deg,
        #95cd42,
        rgba(149,205,66,.22)
    );

    box-shadow:
    0 0 35px rgba(149,205,66,.22);

}

.lr-team-photo{

    width:100%;

    height:100%;

    border-radius:50%;

    object-fit:cover;

    border:6px solid #4c7099;

}

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

.lr-team-content{

    height:100%;

    padding:150px 38px 45px;

    border-radius:34px;

    background:
    linear-gradient(
        180deg,
        rgba(63,98,133,.96) 0%,
        rgba(54,84,115,.98) 100%
    );

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

    box-shadow:
    0 20px 55px rgba(0,0,0,.18);

    transition:
    transform .35s ease,
    box-shadow .35s ease;

}

.lr-team-card:hover .lr-team-content{

    transform:translateY(-10px);

    box-shadow:
    0 30px 70px rgba(0,0,0,.24);

}

.lr-team-role{

    display:inline-block;

    margin-bottom:18px;

    color:#d7ff88;

    font-size:.82rem;

    font-weight:800;

    text-transform:uppercase;

    letter-spacing:3px;

}

.lr-team-content h3{

    color:#ffffff;

    font-size:2rem;

    margin-bottom:20px;

}

.lr-team-content p{

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

    line-height:1.9;

    font-size:1rem;

}

/* =====================================================
   RESPONSIVE
===================================================== */

@media(max-width:1100px){

    .lr-team-grid{

        grid-template-columns:1fr;

        max-width:680px;

        margin:auto;

        gap:80px;

    }

}

@media(max-width:768px){

    .lr-team-premium{

        padding:100px 0 10px;

    }

    .lr-team-header h2{

        font-size:2.8rem;

    }

    .lr-team-photo-wrapper{

        width:180px;

        height:180px;

    }

    .lr-team-content{

        padding:130px 28px 38px;

    }

}

/* =====================================================
   BUTTONS PREMIUM
===================================================== */

.btn{

    display:inline-flex;

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

    padding:15px 30px;

    border-radius:999px;

    text-decoration:none;

    font-weight:700;

    position:relative;

    overflow:hidden;

    transition:
    transform 0.35s ease,
    box-shadow 0.35s ease,
    background 0.35s ease;

}

.btn:hover{

    transform:
    translateY(-4px)
    scale(1.02);

}

.btn-white{

    background:white;

    color:#16202b;

    box-shadow:
    0 10px 25px rgba(0,0,0,0.18);

}

.btn-white:hover{

    box-shadow:
    0 18px 40px rgba(255,255,255,0.22);

}

.btn-green{

    background:
    linear-gradient(
        145deg,
        #a7df4f,
        #8dcf30
    );

    color:white;

    box-shadow:
    0 10px 25px rgba(149,205,66,0.28),
    0 0 0 rgba(149,205,66,0);

}

.btn-green:hover{

    box-shadow:
    0 18px 40px rgba(149,205,66,0.45),
    0 0 30px rgba(149,205,66,0.35);

}

.btn-outline{

    border:2px solid rgba(255,255,255,.92);

    color:#fff;

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

    backdrop-filter:blur(10px);

}

.btn-outline:hover{

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

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

}

/* =====================================================
   HERO SLIDER
===================================================== */

.hero{

    position:relative;

    min-height:100vh;

    display:flex;

    align-items:center;

    overflow:hidden;

    background:#333333;

}

.hero-slider{

    position:absolute;

    inset:0;

    z-index:0;

}

.hero-slide{

    position:absolute;

    inset:0;

    opacity:0;

    transform:scale(1.06);

    transition:
    opacity 2s ease,
    transform 7s ease;

    background-size:cover;

    background-position:center;

}

.hero-slide.active{

    opacity:0.5;

    transform:scale(1);

}

.hero-overlay{

    position:absolute;

    inset:0;

    z-index:1;

    background:
    linear-gradient(
        rgba(0,0,0,.58),
        rgba(0,0,0,.68)
    ),
    radial-gradient(
        circle at top left,
        rgba(149,205,66,.12),
        transparent 30%
    );

}

.hero-container{

    position:relative;

    z-index:2;

    display:flex;

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

    min-height:100vh;

}

.hero-content{

    width:100%;
    max-width:1400px;

    padding-top:120px;

    margin:auto;

    text-align:center;

}

.hero-badge{

    display:inline-block;

    padding:12px 22px;

    border-radius:999px;

    background:
    rgba(157,214,63,.12);

    border:
    1px solid rgba(157,214,63,.3);

    color:#c6f06d;

    font-size:.82rem;
    font-weight:800;

    letter-spacing:4px;

    margin-bottom:28px;

}

.hero h1{

    font-size:5.8rem;

    line-height:1;

    letter-spacing:-4px;

    color:#fff;

    width:100%;

    max-width:none;

    margin:0 auto 30px;

    text-align:center;

    white-space:nowrap;

}

.hero p{

    font-size:1.2rem;

    line-height:1.9;

    color:#fff;

    max-width:760px;

    margin:0 auto 44px;

    text-align:center;

}

.hero-actions{

    display:flex;

    justify-content:center;

    gap:20px;

    flex-wrap:wrap;

}

/* =====================================================
   MISSIONS
===================================================== */

.missions{

    padding:140px 0 110px;

}

.section-label{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:14px 28px;

    border-radius:999px;

    background:
    rgba(149,205,66,.14);

    border:
    1px solid rgba(149,205,66,.28);

    backdrop-filter:blur(8px);

    color:#95cd42;

    font-weight:800;

    font-size:.82rem;

    letter-spacing:4px;

    text-transform:uppercase;

    margin-bottom:28px;

}
.lr-parrainage-badge{

    display:block;

    text-align:center;

    color:#95cd42;

    font-weight:800;

    letter-spacing:4px;

    margin-bottom:24px;

    text-transform:uppercase;

}
.missions h2{

    text-align:center;

    font-size:4rem;

    line-height:1.1;

    color:#3f6285;

    margin-bottom:80px;

}

.missions-grid{

    display:grid;

    grid-template-columns:
    repeat(3,1fr);

    gap:42px;

}

.mission-card{

    background:#fff;

    border-radius:20px;

    padding:55px 40px;

    text-align:center;

    display:flex;

    flex-direction:column;

    align-items:center;

    box-shadow:
    0 18px 45px rgba(0,0,0,.08);

    transition:
    transform .35s ease,
    box-shadow .35s ease;

}

.mission-card:hover{

    transform:translateY(-10px);

 box-shadow: 0 18px 45px rgba(0,0,0,0.12);

}

.mission-icon{

    width:82px;
    height:82px;

    border-radius:24px;

    background:#95cd42;

    display:flex;

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

    font-size:2rem;

    color:#fff;

    margin-bottom:24px;

}

.mission-tag{

    padding:8px 16px;

    border-radius:999px;

    background:
    rgba(149,205,66,.14);

    color:#7ea928;

    font-size:.8rem;
    font-weight:700;

    margin-bottom:20px;

}

.mission-card h3{

    font-size:1.8rem;

    color:#3f6285;

    margin-bottom:18px;
    

}

.mission-card p{

    max-width:290px;

    line-height:1.9;

}
/* =====================================================
   STATS
===================================================== */

.stats{

    position:relative;

    overflow:hidden;

    background:
    linear-gradient(
        135deg,
        #5579a2 0%,
        #4c7099 45%,
        #3f6285 100%
    );

    padding:100px 0;

    margin-top:40px;

    margin-bottom:120px;

    border-top:
    1px solid rgba(255,255,255,.08);

}

.stats::before{

    content:'';

    position:absolute;

    top:-140px;
    left:-140px;

    width:340px;
    height:340px;

    border-radius:50%;

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

    filter:blur(45px);

}


.stats::after{

    content:'';

    position:absolute;

    bottom:-160px;
    right:-120px;

    width:320px;
    height:320px;

    border-radius:50%;

    background:
    rgba(149,205,66,.10);

    filter:blur(55px);

}
.stats-grid{

    position:relative;

    z-index:2;

    display:grid;

    grid-template-columns:
    repeat(4,1fr);

    gap:40px;

}
.stat-item{

    position:relative;

    text-align:center;

    color:#fff;

    padding:24px 16px;

    border-radius:28px;

    transition:
    transform .35s ease,
    background .35s ease,
    box-shadow .35s ease;

}
.stat-item:hover{

    transform:
    translateY(-6px);

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

    backdrop-filter:blur(12px);

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

}
.stat-item strong{

    display:block;

    font-size:5.2rem;

    margin-bottom:14px;

    text-shadow:
    0 4px 18px rgba(255,255,255,.14);

}
.stat-item span{

    display:block;

    font-size:1.5rem;

    line-height:1.7;

    opacity:.92;

}
/* =====================================================
   PARRAINAGE PREMIUM
===================================================== */

#lr-premium-parrainage{

    padding:0 0 140px;

    background:
    linear-gradient(
        180deg,
        #f7f9f7 0%,
        #f5f7fa 100%
    );

}

.lr-parrainage-header{

    text-align:center;

    margin-bottom:80px;

}

.lr-parrainage-header .sectionlabel{

    display:block;

    text-align:center;

    color:#95cd42;

    font-weight:800;

    letter-spacing:4px;

    margin-bottom:24px;

}

.lr-parrainage-header h2{

    text-align:center;

    font-size:4rem;

    line-height:1.1;

    color:#3f6285;

    margin-bottom:28px;

}

.lr-parrainage-header p{

    max-width:760px;

    margin:auto;

    text-align:center;

    line-height:1.9;

    color:#5f6b76;

}

.lr-parrainage-grid{

    display:grid;

    grid-template-columns:
    repeat(3,1fr);

    gap:42px;
position:relative;
z-index:2;
}

.lr-parrainage-card{

    position:relative;

    height:420px;

    border-radius:30px;

    overflow:hidden;

    box-shadow:
    0 18px 50px rgba(0,0,0,.16);

    transition:
    transform .35s ease,
    box-shadow .35s ease;

}

.lr-parrainage-image{

    position:absolute;

    inset:0;

    width:100%;
    height:100%;

    object-fit:cover;

    object-position:center 5%;

    transition:
    transform 1.2s ease;

}
.lr-parrainage-card:hover .lr-parrainage-image{

    transform:scale(1.18);

}
.lr-parrainage-image img{

    width:100%;
    height:100%;

    object-fit:cover;

    object-position:center 5%;

    display:block;

    transform:scale(1.12);

    transition:
    transform 1.2s ease;

}

.lr-parrainage-card:hover .lr-parrainage-image img{

    transform:scale(1.18);

}

.lr-parrainage-overlay{

    position:absolute;

    inset:0;

    background:
    linear-gradient(
        to top,
        rgba(0,0,0,.88) 5%,
        rgba(0,0,0,.45) 42%,
        rgba(0,0,0,.10) 72%
    );

}

.lr-parrainage-content{

    position:absolute;

    left:0;
    right:0;
    bottom:0;
position:relative;
z-index:5;
    z-index:3;

    padding:4px;

    text-align:center;

    color:#fff;

}

.lr-parrainage-content h3{

    font-size:3rem;

    margin-bottom:16px;

    color:#fff;

    letter-spacing:2px;

    font-weight:900;

    text-transform:uppercase;

}
.lr-parrainage-content span{

    display:block;

    margin-bottom:12px;

    font-size:1rem;

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

}

.lr-parrainage-content p{

    line-height:1.8;

    margin-bottom:26px;

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

    font-size:1.05rem;

}

.lr-parrainage-content a{

    text-decoration:none;

    color:#fff;

}

.lr-parrainage-btn{

    display:inline-flex;

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

    padding:14px 24px;

    border-radius:999px;

    background:
    linear-gradient(
        145deg,
        #a7df4f,
        #8dcf30
    );

    color:#fff;

    text-decoration:none;

    font-weight:700;

}

.lr-parrainage-footer{

    text-align:center;

    margin-top:48px;

}

.lr-parrainage-footer a{

    display:inline-flex;

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

    padding:16px 30px;

    border-radius:999px;

    background:
    linear-gradient(
        145deg,
        #a7df4f,
        #8dcf30
    );

    color:#fff;

    text-decoration:none;

    font-weight:700;

}
/* =====================================================
   CTA
===================================================== */

.cta{

    padding-bottom:140px;
    

}

.cta-box{

    background:
    linear-gradient(
        rgba(0,0,0,.55),
        rgba(0,0,0,.60)
    ),
    url('../img/equi1.jpg')
    center/cover
    no-repeat;

    border-radius:34px;

    padding:110px 60px;

    text-align:center;

    color:#fff;

    box-shadow:
    0 20px 60px rgba(0,0,0,.18);

}

.cta-box h2{

    font-size:3.5rem;

    line-height:1.2;

    margin-bottom:24px;

}

.cta-box p{

    max-width:820px;

    margin:0 auto 38px;

    line-height:1.9;

}

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

.footer{

    background:
    linear-gradient(
        180deg,
        #4c7097 0%,
        #406287 100%
    );

    padding:
40px 0 5px;

    color:#fff;

}

.footer-grid{

    display:grid;

    grid-template-columns:
    repeat(3,1fr);

    gap:80px;

    align-items:start;

    max-width:1200px;

    margin:0 auto;

}
.footer-grid > div{

    text-align:left;

}

.footer h3{

    margin-bottom:22px;

    padding-bottom:14px;

    position:relative;

}

.footer h3::after{

    content:'';

    position:absolute;

    left:0;
    bottom:0;

    width:48px;
    height:3px;

    background:#95cd42;

    border-radius:999px;

}

.footer p{

    line-height:1.9;

    opacity:.92;

}

.social-links{

    display:flex;

    gap:18px;

    margin-top:22px;

}

.social-icon{

    width:64px;
    height:64px;

    border-radius:22px;

    display:flex;

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

    background:
    linear-gradient(
        145deg,
        rgba(255,255,255,.16),
        rgba(255,255,255,.05)
    );

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

    backdrop-filter:blur(12px);

    color:#fff;

    text-decoration:none;

    font-size:1.5rem;

    box-shadow:
    0 14px 35px rgba(0,0,0,.18);

    transition:
    transform .35s ease,
    background .35s ease,
    box-shadow .35s ease;

}

.social-icon:hover{

    background:#95cd42;

    transform:
    translateY(-7px)
    scale(1.08);

    box-shadow:
    0 20px 40px rgba(149,205,66,.35);

}

.footer-bottom{

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

    text-align:center;

    padding:32px 20px;

}

/* =====================================================
   RESPONSIVE
===================================================== */

@media(max-width:980px){

    .hero-container{

        justify-content:center;

        text-align:center;

    }

    .hero-content{

        display:flex;

        flex-direction:column;

        align-items:center;

    }

    .hero h1{

        font-size:4rem;

    }

    .hero-actions{

        justify-content:center;

        flex-wrap:wrap;

    }

    .missions-grid,
    .stats-grid,
    .footer-grid{

        grid-template-columns:1fr;

    }

}

@media(max-width:640px){

    .container{

        width:calc(100% - 30px);

    }

    .hero h1{

        font-size:3rem;

        line-height:1.05;

    }

    .missions h2{

        font-size:2.5rem;

    }

    .cta-box{

        padding:70px 30px;

    }

    .cta-box h2{

        font-size:2.4rem;

    }

}


/* =====================================================
   FORCE MOBILE TOGGLE
===================================================== */

.mobile-toggle{

    display:none;

}



/* =====================================================
   MOBILE CONSOLIDATION
   Source de conflit précédente :
   - 10+ media queries 768px contradictoires
   - multiples overrides sur .nav-menu, .mobile-toggle
   - white-space forcé puis annulé sur le titre hero
   - positionnements incompatibles du dropdown mobile

   Cette section remplace tous les anciens correctifs mobiles.
===================================================== */

.mobile-toggle{
    display:none;
}

@media (max-width:768px){

    /* ---------- HEADER ---------- */

    .header{
        overflow:visible;
    }

    .nav-container{
        position:relative;
        display:flex;
        align-items:center;
        justify-content:space-between;
        flex-wrap:wrap;
        gap:12px;
    }

    .mobile-toggle{
        display:flex;
        align-items:center;
        justify-content:center;
        width:52px;
        height:52px;
        border:none;
        border-radius:16px;
        background:rgba(255,255,255,.10);
        backdrop-filter:blur(10px);
        position:relative;
        cursor:pointer;
        flex-shrink:0;
        z-index:10001;
    }

    .mobile-toggle span{
        position:absolute;
        left:50%;
        width:24px;
        height:2px;
        background:#fff;
        border-radius:999px;
        transform:translateX(-50%);
        transition:.3s ease;
    }

    .mobile-toggle span:nth-child(1){
        top:18px;
    }

    .mobile-toggle span:nth-child(2){
        top:26px;
    }

    .mobile-toggle span:nth-child(3){
        top:34px;
    }

    .mobile-toggle.active span:nth-child(1){
        top:26px;
        transform:translateX(-50%) rotate(45deg);
    }

    .mobile-toggle.active span:nth-child(2){
        opacity:0;
    }

    .mobile-toggle.active span:nth-child(3){
        top:26px;
        transform:translateX(-50%) rotate(-45deg);
    }

    /* ---------- MENU MOBILE ---------- */

    .nav-menu,
    .header-buttons{
        display:none;
    }

    .nav-menu.mobile-open{
        display:flex;
        flex-direction:column;
        align-items:center;
        position:absolute;
        top:76px;
        left:0;
        width:100%;
        padding:28px 24px;
        gap:18px;
        border-radius:24px;
        background:rgba(33,43,54,.97);
        backdrop-filter:blur(12px);
        z-index:10000;
    }

    .nav-menu.mobile-open a{
        width:100%;
        text-align:center;
    }

    .header-buttons.mobile-open{
        display:flex;
        flex-direction:column;
        width:100%;
        gap:14px;
        margin-top:340px;
    }

    .header-buttons.mobile-open .btn{
        width:100%;
    }

    /* ---------- HERO MOBILE ---------- */

    .hero-main-title,
    .hero h1{
        max-width:260px;
        margin-inline:auto;
        font-size:2.55rem;
        line-height:1.05;
        letter-spacing:-1px;
        white-space:normal;
        text-wrap:balance;
    }

    /* ---------- PARRAINAGE ---------- */

    .lr-parrainage-grid{
        grid-template-columns:1fr;
        gap:28px;
    }

    .lr-parrainage-card{
        width:100%;
        height:420px;
    }
}

/* =====================================================
SOLIDARITÉ PREMIUM
===================================================== */

.lr-solidarity{

    position:relative;

    padding:1px 0 120px;

    background:
    linear-gradient(
        180deg,
        #f4f7fb 0%,
        #eef4fa 100%
    );

    overflow:hidden;

}

.lr-solidarity::before{

    content:'';

    position:absolute;

    inset:0;

    background:
    radial-gradient(
        circle,
        rgba(149,205,66,.08),
        transparent 70%
    );

    pointer-events:none;

}

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

.lr-solidarity-header{

    position:relative;

    z-index:2;

    max-width:900px;

    margin:0 auto 70px;

    text-align:center;

}

.lr-solidarity-badge{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:10px 24px;

    border-radius:999px;

    background:
    rgba(149,205,66,.12);

    border:
    1px solid rgba(149,205,66,.22);

    color:#95cd42;

    font-size:.78rem;

    font-weight:800;

    letter-spacing:3px;

    text-transform:uppercase;

    margin-bottom:24px;

}

.lr-solidarity-header h2{

    color:#3f6285;

    font-size:4rem;

    line-height:1.08;

    margin-bottom:24px;

    letter-spacing:-2px;

}

.lr-solidarity-header p{

    max-width:760px;

    margin:auto;

    color:#5b7088;

    font-size:1.08rem;

    line-height:1.9;

}

/* =====================================================
NETWORK
===================================================== */

.lr-solidarity-network{

    position:relative;

    width:100%;

    max-width:1200px;

    height:650px;

    margin:0 auto;

}

/* =====================================================
CORE
===================================================== */

.lr-solidarity-core{

    position:absolute;

    top:50%;

    left:50%;

    transform:translate(-50%,-50%);

    width:220px;

    height:220px;

    border-radius:50%;

    background:
    linear-gradient(
        145deg,
        #95cd42,
        #7fb82e
    );

    display:flex;

    align-items:center;

    justify-content:center;

    text-align:center;

    box-shadow:
    0 0 80px rgba(149,205,66,.28);

    z-index:10;

}

.lr-solidarity-core span{

    color:#ffffff;

    font-size:2rem;

    font-weight:900;

    letter-spacing:2px;

}

/* =====================================================
NODES
===================================================== */

.lr-node{

    position:absolute;

    display:flex;

    align-items:center;

    justify-content:center;

    text-align:center;

    width:180px;

    height:180px;

    border-radius:50%;

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

    backdrop-filter:blur(12px);

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

    color:#3f6285;

    font-size:1rem;

    font-weight:700;

    box-shadow:
    0 15px 40px rgba(63,98,133,.12);

    transition:
    transform .35s ease,
    box-shadow .35s ease;

}

.lr-node:hover{

    transform:translateY(-10px);

    box-shadow:
    0 25px 50px rgba(63,98,133,.18);

}

/* =====================================================
POSITIONNEMENT
===================================================== */

.lr-node-1{

    top:0;
    left:50%;
    transform:translateX(-50%);

}

.lr-node-2{

    top:110px;
    right:80px;

}

.lr-node-3{

    bottom:110px;
    right:80px;

}

.lr-node-4{

    bottom:0;
    left:50%;
    transform:translateX(-50%);

}

.lr-node-5{

    bottom:110px;
    left:80px;

}

.lr-node-6{

    top:110px;
    left:80px;

}

.lr-node-7{

    top:50%;
    left:0;

    transform:translateY(-50%);

}

.lr-node-8{

    top:50%;
    right:0;

    transform:translateY(-50%);

}

/* =====================================================
RESPONSIVE
===================================================== */

@media(max-width:1100px){

    .lr-solidarity-network{

        display:grid;

        grid-template-columns:
        repeat(2,1fr);

        gap:30px;

        height:auto;

    }

    .lr-solidarity-core,
    .lr-node{

        position:relative;

        top:auto;
        left:auto;
        right:auto;
        bottom:auto;

        transform:none;

        margin:auto;

    }

}

@media(max-width:768px){

    .lr-solidarity{

        padding:40px 0 90px;

    }

    .lr-solidarity-header h2{

        font-size:2.8rem;

    }

    .lr-solidarity-network{

        grid-template-columns:1fr;

    }

    .lr-solidarity-core{

        width:180px;
        height:180px;

    }

    .lr-solidarity-core span{

        font-size:1.5rem;

    }

    .lr-node{

        width:160px;
        height:160px;

    }

}


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

.lr-transmission-intro{

    padding:110px 0 80px;

    background:#f4f7fb;

}

.lr-transmission-intro-content{

    max-width:980px;

    margin:auto;

    text-align:center;

}

.lr-transmission-intro-content h2{

    color:#3f6285;

    font-size:4rem;

    line-height:1.1;

    margin:26px 0 34px;

    letter-spacing:-2px;

}

.lr-transmission-text{

    max-width:850px;

    margin:auto;

}

.lr-transmission-text p{

    color:#5b7088;

    font-size:1.08rem;

    line-height:2;

    margin-bottom:20px;

}

/* =====================================================
TYPES
===================================================== */

.lr-transmission-types{

    padding:40px 0 120px;

    background:#f4f7fb;

}

.lr-transmission-types-header{

    text-align:center;

    margin-bottom:70px;

}

.lr-transmission-types-header h2{

    color:#3f6285;

    font-size:3.5rem;

    line-height:1.1;

    margin-top:24px;

}

.lr-transmission-grid{

    display:grid;

    grid-template-columns:
    repeat(4,1fr);

    gap:30px;

}

.lr-transmission-card{

    padding:55px 38px;

    border-radius:34px;

    background:
    linear-gradient(
        180deg,
        rgba(255,255,255,.92),
        rgba(255,255,255,.76)
    );

    border:
    1px solid rgba(63,98,133,.08);

    box-shadow:
    0 18px 45px rgba(63,98,133,.08);

    transition:
    transform .35s ease,
    box-shadow .35s ease;

    text-align:center;

    display:flex;

    flex-direction:column;

    align-items:center;

    justify-content:flex-start;

}
.lr-transmission-card h3{

    text-align:center;

}

.lr-transmission-card p{

    text-align:center;

    max-width:260px;

    margin:auto;

}

.lr-transmission-card:hover{

    transform:translateY(-10px);

    box-shadow:
    0 30px 60px rgba(63,98,133,.12);

}

.lr-transmission-icon{

    width:70px;

    height:70px;

    border-radius:50%;

    background:
    linear-gradient(
        145deg,
        #95cd42,
        #7fb82e
    );

    display:flex;

    align-items:center;

    justify-content:center;

    color:#ffffff;

    font-size:1.5rem;

    margin-bottom:28px;

}

.lr-transmission-card h3{

    color:#3f6285;

    font-size:1.8rem;

    margin-bottom:20px;

}

.lr-transmission-card p{

    color:#5b7088;

    line-height:1.9;

}

/* =====================================================
QUOTE
===================================================== */

.lr-transmission-quote{

    padding:1px 0 120px;

    background:#f4f7fb;

}

.lr-transmission-quote-box{

    max-width:1100px;

    margin:auto;

    padding:90px;

    border-radius:44px;

    background:
    linear-gradient(
        145deg,
        #5579a2,
        #3f6285
    );

    text-align:center;

    box-shadow:
    0 35px 80px rgba(63,98,133,.18);

}

.lr-transmission-quote-box p{

    color:#ffffff;

    font-size:2.6rem;

    line-height:1.4;

    font-weight:700;

}

/* =====================================================
SECURITY
===================================================== */

.lr-transmission-security{

    position:relative;

    overflow:hidden;

    padding:140px 0;

    background:

    radial-gradient(
        circle at top left,
        rgba(149,205,66,.08),
        transparent 35%
    ),

    linear-gradient(
        135deg,
        #5677a3 0%,
        #4f709c 45%,
        #45658f 100%
    );

}
.lr-transmission-security::before{

    content:"";

    position:absolute;

    width:700px;

    height:700px;

    border-radius:50%;

    background:
    radial-gradient(
        circle,
        rgba(149,205,66,.10),
        transparent 70%
    );

    top:-280px;

    right:-180px;

    filter:blur(40px);

    pointer-events:none;

}

.lr-transmission-security-grid{

    display:grid;

    grid-template-columns:
    1.1fr .9fr;

    gap:80px;

    align-items:center;

}

.lr-security-content h2{

    color:#ffffff;

    font-size:4rem;

    line-height:1.1;

    margin:24px 0 34px;

}

.lr-security-content p{

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

    font-size:1.08rem;

    line-height:2;

    margin-bottom:22px;

}



.lr-security-circle{

    position:relative;

    width:360px;

    height:360px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    overflow:hidden;

    background:
    radial-gradient(
        circle at 30% 30%,
        rgba(190,255,120,.95),
        rgba(149,205,66,.92) 45%,
        rgba(111,163,39,.92) 100%
    );

    box-shadow:
    0 0 80px rgba(149,205,66,.28),
    0 0 180px rgba(149,205,66,.18),
    inset 0 10px 30px rgba(255,255,255,.18),
    inset 0 -20px 40px rgba(0,0,0,.12);
    
}

    display:flex;

    align-items:center;

    justify-content:center;

    margin:auto;

    box-shadow:
    0 0 80px rgba(149,205,66,.24);

}




.lr-security-circle > span{

    position:relative;

    z-index:3;

    color:#ffffff !important;

    font-size:4rem !important;

    font-weight:800 !important;

    font-family:'Montserrat',sans-serif;

    letter-spacing:-1px;

    line-height:1;

    text-shadow:
    0 4px 25px rgba(0,0,0,.18);

}

/* =====================================================
CTA
===================================================== */

.lr-transmission-cta{

    padding:120px 0;

    background:#f4f7fb;

}

.lr-transmission-cta-box{

    max-width:1100px;

    margin:auto;

    padding:90px;

    border-radius:44px;

    background:
    linear-gradient(
        145deg,
        #5579a2,
        #3f6285
    );

    text-align:center;

    box-shadow:
    0 35px 80px rgba(63,98,133,.14);

}

.lr-transmission-cta-box h2{

    color:#ffffff;

    font-size:4rem;

    line-height:1.1;

    margin:26px 0 30px;

}

.lr-transmission-cta-box p{

    max-width:760px;

    margin:0 auto 42px;

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

    font-size:1.08rem;

    line-height:2;

}

/* =====================================================
RESPONSIVE
===================================================== */

@media(max-width:1100px){

    .lr-transmission-grid{

        grid-template-columns:
        repeat(2,1fr);

    }

  .lr-transmission-security{

    position:relative;

    overflow:hidden;

    padding:140px 0;

    background:

    radial-gradient(
        circle at top left,
        rgba(149,205,66,.08),
        transparent 35%
    ),

    linear-gradient(
        135deg,
        #5677a3 0%,
        #4f709c 45%,
        #45658f 100%
    );

}

.lr-transmission-security::before{

    content:"";

    position:absolute;

    width:700px;

    height:700px;

    border-radius:50%;

    background:
    radial-gradient(
        circle,
        rgba(149,205,66,.10),
        transparent 70%
    );

    top:-280px;

    right:-180px;

    filter:blur(40px);

    pointer-events:none;

}

}

@media(max-width:768px){

    .lr-transmission-hero{

        padding:170px 0 130px;

    }

    .lr-transmission-content h1{

        font-size:3.3rem;

    }

    .lr-transmission-intro-content h2,
    .lr-security-content h2,
    .lr-transmission-cta-box h2,
    .lr-transmission-types-header h2{

        font-size:2.6rem;

    }

    .lr-transmission-grid{

        grid-template-columns:1fr;

    }

    .lr-transmission-quote-box,
    .lr-transmission-cta-box{

        padding:60px 35px;

    }

    .lr-transmission-quote-box p{

        font-size:1.8rem;

    }

.lr-security-circle{

    position:relative;

    width:360px;

    height:360px;

    min-width:360px;

    min-height:360px;

    aspect-ratio:1/1;

    flex-shrink:0;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    overflow:hidden;

    background:
    radial-gradient(
        circle at 30% 30%,
        rgba(190,255,120,.95),
        rgba(149,205,66,.92) 45%,
        rgba(111,163,39,.92) 100%
    );

    box-shadow:
    0 0 80px rgba(149,205,66,.28),
    0 0 180px rgba(149,205,66,.18),
    inset 0 10px 30px rgba(255,255,255,.18),
    inset 0 -20px 40px rgba(0,0,0,.12);

    backdrop-filter:blur(10px);

}



.lr-security-circle::before{

    content:"";

    position:absolute;

    inset:18px;

    border-radius:50%;

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

}

.lr-security-circle::after{

    content:"";

    position:absolute;

    width:140px;

    height:140px;

    top:40px;

    left:55px;

    border-radius:50%;

    background:
    radial-gradient(
        circle,
        rgba(255,255,255,.35),
        transparent 70%
    );

    filter:blur(10px);

}
@keyframes lrFloatSphere{

    0%{

        transform:
        translateY(0px);

    }

    50%{

        transform:
        translateY(-12px);

    }

    100%{

        transform:
        translateY(0px);

    }

}

}

.lr-transmission-quote-premium{

    position:relative;

    padding:170px 0;

    overflow:hidden;

    background-image:
    url('../img/transmission-quote-bg.jpg');

    background-size:cover;

    background-position:center;

    background-attachment:fixed;

}

.lr-transmission-quote-overlay{

    position:absolute;

    inset:0;

    background:
    linear-gradient(
        180deg,
        rgba(6,17,31,.82),
        rgba(22,38,58,.72)
    );

    backdrop-filter:blur(2px);

}

.lr-transmission-quote-content{

    position:relative;

    z-index:2;

    text-align:center;

    max-width:980px;

    margin:auto;

}

.lr-quote-line{

    width:120px;

    height:3px;

    margin:0 auto 50px;

    display:block;

    background:
    linear-gradient(
        90deg,
        transparent,
        #95cd42,
        transparent
    );

    box-shadow:
    0 0 25px rgba(149,205,66,.45);

}

.lr-transmission-quote-content blockquote{

    color:#fff;

    font-size:4rem;

    font-weight:800;

    line-height:1.3;

    letter-spacing:-1px;

    margin-bottom:35px;

    text-shadow:
    0 10px 40px rgba(0,0,0,.35);

}

.lr-quote-signature{

    color:#95cd42;

    font-size:.95rem;

    font-weight:700;

    letter-spacing:4px;

    text-transform:uppercase;

}
@keyframes lrFloatSphere{

    0%{

        transform:
        translateY(0px);

    }

    50%{

        transform:
        translateY(-10px);

    }

    100%{

        transform:
        translateY(0px);

    }

}
/* ===== FORCE TEXTE SPHÈRE ===== */

.lr-security-circle span{

    position:relative !important;

    z-index:5 !important;

    display:block !important;

    color:#ffffff !important;

    font-size:3rem !important;

    font-weight:800 !important;

    font-family:'Montserrat',sans-serif !important;

    line-height:1 !important;

    letter-spacing:-1px !important;

    text-align:center !important;

    text-shadow:
    0 4px 25px rgba(0,0,0,.18) !important;

}

/* =====================================================
GUIDE PREMIUM
===================================================== */

.lr-guide-premium{

    padding:10px 0;

    background:
    linear-gradient(
        180deg,
        #f6f8fb 0%,
        #edf2f7 100%
    );

}

.lr-guide-card{

    position:relative;

    display:grid;

    grid-template-columns:1.1fr .9fr;

    align-items:center;

    gap:80px;

    padding:90px;

    border-radius:42px;

    overflow:hidden;

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

    backdrop-filter:blur(14px);

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

    box-shadow:
    0 20px 70px rgba(41,72,111,.08);

}

.lr-guide-card::before{

    content:"";

    position:absolute;

    width:520px;

    height:520px;

    border-radius:50%;

    background:
    radial-gradient(
        circle,
        rgba(149,205,66,.12),
        transparent 70%
    );

    top:-220px;

    right:-160px;

}

.lr-guide-content{

    position:relative;

    z-index:2;

}

.lr-guide-badge{

    display:inline-flex;

    padding:12px 22px;

    border-radius:999px;

    background:
    rgba(149,205,66,.12);

    border:
    1px solid rgba(149,205,66,.28);

    color:#95cd42;

    font-size:.72rem;

    font-weight:700;

    letter-spacing:4px;

    text-transform:uppercase;

    margin-bottom:35px;

}

.lr-guide-content h2{

    color:#35557d;

    font-size:3.5rem;

    line-height:1.1;

    font-weight:800;

    letter-spacing:-2px;

    margin-bottom:35px;

}

.lr-guide-content p{

    color:#617895;

    font-size:1.18rem;

    line-height:2;

    margin-bottom:45px;

    max-width:720px;

}

.lr-guide-actions{

    display:flex;

    gap:22px;

    flex-wrap:wrap;

}

.btn-outline-dark{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:18px 38px;

    border-radius:999px;

    border:2px solid #35557d;

    color:#35557d;

    background:#fff;

    font-weight:700;

    transition:.3s;

}

.btn-outline-dark:hover{

    background:#35557d;

    color:#fff;

}

.lr-guide-visual{

    position:relative;

    z-index:2;

    display:flex;

    justify-content:center;

}

.lr-guide-book{

    position:relative;

    width:340px;

    transform:
    rotate(-6deg);

    transition:.5s;

    filter:
    drop-shadow(0 35px 55px rgba(41,72,111,.22));

}

.lr-guide-book:hover{

    transform:
    rotate(-2deg)
    translateY(-10px);

}

.lr-guide-book img{

    width:100%;

    display:block;

    border-radius:18px;

}

/* RESPONSIVE */

@media(max-width:1100px){

    .lr-guide-card{

        grid-template-columns:1fr;

        text-align:center;

        padding:70px 50px;

    }

    .lr-guide-content p{

        margin:auto auto 45px;

    }

    .lr-guide-actions{

        justify-content:center;

    }

}

@media(max-width:768px){

    .lr-guide-premium{

        padding:100px 0;

    }

    .lr-guide-card{

        padding:50px 30px;

        border-radius:30px;

    }

    .lr-guide-content h2{

        font-size:3rem;

    }

    .lr-guide-book{

        width:250px;

    }

}
/* =====================================================
MANIFESTE PREMIUM
===================================================== */

.lr-manifesto{

    position:relative;

    padding:140px 0;

    overflow:hidden;

    background:
    linear-gradient(
        180deg,
        #f5f8fc 0%,
        #edf3fa 100%
    );

}

.lr-manifesto-bg{

    position:absolute;

    inset:0;

    background:
    radial-gradient(
        circle at top left,
        rgba(149,205,66,.10),
        transparent 35%
    ),
    radial-gradient(
        circle at bottom right,
        rgba(53,85,125,.08),
        transparent 40%
    );

}

.lr-manifesto-grid{

    position:relative;

    z-index:2;

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:25px;

    align-items:center;

}

.lr-manifesto-left h2{

    font-size:4rem;

    line-height:1.05;

    font-weight:800;

    color:#35557d;

    letter-spacing:-3px;

    margin:25px 0 35px;

}

.lr-manifesto-intro{

    font-size:1.2rem;

    line-height:2;

    color:#5d7390;

    max-width:680px;

}

.lr-manifesto-right{

    display:flex;

    flex-direction:column;

    gap:25px;

}

.lr-manifesto-card{

    display:flex;

    align-items:flex-start;

    gap:28px;

    padding:35px;

    border-radius:30px;

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

    backdrop-filter:blur(10px);

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

    box-shadow:
    0 15px 45px rgba(41,72,111,.08);

    transition:.35s ease;

}

.lr-manifesto-card:hover{

    transform:
    translateY(-8px);

    box-shadow:
    0 25px 60px rgba(41,72,111,.14);

}

.lr-manifesto-icon{

    width:72px;

    height:72px;

    border-radius:22px;

    display:flex;

    align-items:center;

    justify-content:center;

    flex-shrink:0;

    font-size:2rem;

    background:
    linear-gradient(
        135deg,
        #95cd42,
        #7fb933
    );

    color:#fff;

    box-shadow:
    0 15px 35px rgba(149,205,66,.28);

}

.lr-manifesto-card h3{

    color:#35557d;

    font-size:1.8rem;

    font-weight:800;

    margin-bottom:12px;

}

.lr-manifesto-card p{

    color:#617895;

    line-height:1.8;

    font-size:1rem;

}

/* RESPONSIVE */

@media(max-width:1100px){

    .lr-manifesto-grid{

        grid-template-columns:1fr;

        gap:60px;

    }

}

@media(max-width:768px){

    .lr-manifesto{

        padding:100px 0;

    }

    .lr-manifesto-left h2{

        font-size:3.2rem;

    }

    .lr-manifesto-card{

        flex-direction:column;

    }

}
/* =====================================================
   ADOPTION PREMIUM
===================================================== */

.lr-adoption-manifesto{

    position:relative;

    padding:
    40px 0;

    background:
    linear-gradient(
    180deg,
    #f8fafc 0%,
    #eef3f9 100%
    );

    overflow:hidden;

}

.lr-adoption-manifesto::before{

    content:"";

    position:absolute;

    width:700px;
    height:700px;

    top:-220px;
    right:-180px;

    background:
    radial-gradient(
    circle,
    rgba(149,205,66,.18) 0%,
    transparent 70%
    );

}

.lr-adoption-grid{

    display:grid;

    grid-template-columns:1.1fr .9fr;

    gap:80px;

    align-items:center;

}

.lr-adoption-badge{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:14px 28px;

    border-radius:999px;

    background:#dff0b8;

    border:1px solid #bfdc79;

    color:#6c931d;

    font-size:.82rem;

    font-weight:800;

    letter-spacing:4px;

    margin-bottom:30px;

}

.lr-adoption-left h2{

    font-size:4.5rem;

    line-height:1;

    color:#35557d;

    margin-bottom:36px;

}

.lr-adoption-left p{

    font-size:1.12rem;

    line-height:2;

    color:#58708f;

    margin-bottom:22px;

}

.lr-adoption-intro{

    font-size:1.22rem !important;

    color:#35557d !important;

}

.lr-adoption-stats{

    display:flex;

    gap:24px;

    margin-top:50px;

    flex-wrap:wrap;

}

.lr-adoption-stat{

    padding:26px 28px;

    border-radius:26px;

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

    backdrop-filter:blur(12px);

    box-shadow:
    0 10px 30px rgba(40,70,110,.08);

    transition:.35s ease;

}
.lr-adoption-stat:hover{

    transform:translateY(-8px);

    box-shadow:
    0 18px 40px rgba(53,85,125,.12);

}

.lr-adoption-stat strong{

    display:block;

    font-size:1.5rem;

    color:#95cd42;

    margin-bottom:8px;

}

.lr-adoption-stat span{

    color:#58708f;

    font-weight:600;

}

.lr-adoption-right{

    display:flex;

    flex-direction:column;

    gap:28px;

}

.lr-adoption-card{

    padding:40px;

    border-radius:34px;

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

    backdrop-filter:blur(18px);

    box-shadow:
    0 15px 40px rgba(53,85,125,.08);

    transition:.4s ease;

}

.lr-adoption-card:hover{

    transform:translateY(-8px);

}

.lr-adoption-icon{

    width:82px;
    height:82px;

    border-radius:24px;

    display:flex;

    align-items:center;

    justify-content:center;

    margin-bottom:24px;

    background:
    linear-gradient(
    135deg,
    #95cd42,
    #b8eb64
    );

    color:#fff;

    font-size:2rem;

    box-shadow:
    0 15px 30px rgba(149,205,66,.28);

}

.lr-adoption-card h3{

    font-size:2rem;

    color:#35557d;

    margin-bottom:16px;

}

.lr-adoption-card p{

    line-height:1.9;

    color:#5f7693;

}



/* PROCESS */

.lr-adoption-process{

    position:relative;

    padding:100px 0;

    background:
    linear-gradient(
    180deg,
    #5f7fa8 0%,
    #4f719d 100%
    );

}

.lr-process-heading{

    text-align:center;

    max-width:900px;

    margin:auto auto 90px;

}

.lr-process-heading h2{

    font-size:4rem;

    line-height:1.1;

    color:#fff;

    margin:10px 0;

}

.lr-process-heading p{

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

    font-size:1.15rem;

    line-height:2;

}

.lr-process-line{

    position:absolute;

    top:52%;

    left:0;

    width:100%;

    height:2px;

    background:
    linear-gradient(
    90deg,
    transparent,
    rgba(255,255,255,.25),
    transparent
    );

}

.lr-process-grid{

    position:relative;

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

}

.lr-process-card{

    padding:42px 36px;

    border-radius:34px;

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

    backdrop-filter:blur(16px);

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

    cursor:pointer;

    transition:
    transform .35s ease,
    background .35s ease,
    border .35s ease,
    box-shadow .35s ease;

}
.lr-process-card:hover{

    transform:translateY(-10px);

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

    border:
    1px solid rgba(184,235,100,.45);

    box-shadow:
    0 20px 45px rgba(0,0,0,.14);

}

.lr-process-number{

    width:82px;
    height:82px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    margin-bottom:28px;

    background:
    linear-gradient(
    135deg,
    #95cd42,
    #b8eb64
    );

    color:#fff;

    font-size:1.6rem;

    font-weight:800;

    transition:.35s ease;

}
.lr-process-card:hover .lr-process-number{

    transform:scale(1.08);

    box-shadow:
    0 18px 40px rgba(149,205,66,.45);

}

.lr-process-card h3{

    color:#fff;

    font-size:1.8rem;

    margin-bottom:18px;

}

.lr-process-card p{

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

    line-height:1.9;

}



/* HORSES */

.lr-adoption-horses{

    padding:140px 0;

    background:#f8fafc;

}

.lr-horses-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:34px;

    margin-top:70px;

}

.lr-horse-card{

    overflow:hidden;

    border-radius:34px;

    background:#fff;

    box-shadow:
    0 20px 50px rgba(53,85,125,.08);

    transition:.45s ease;

}

.lr-horse-card:hover{

    transform:translateY(-10px);

}

.lr-horse-image{

    height:420px;

    background-size:cover;

    background-position:center;

}

.lr-horse-content{

    padding:34px;

}

.lr-horse-type{

    display:inline-block;

    margin-bottom:16px;

    color:#95cd42;

    font-weight:700;

    letter-spacing:2px;

    font-size:.82rem;

    text-transform:uppercase;

}

.lr-horse-content h3{

    font-size:2.4rem;

    color:#35557d;

    margin-bottom:18px;

}

.lr-horse-content p{

    line-height:1.9;

    color:#617895;

}



/* FINAL */

.lr-adoption-final{

    padding:50px 0;

    background:
    linear-gradient(
    180deg,
    #eef3f9 0%,
    #f8fafc 100%
    );

}

.lr-adoption-final-box{

    max-width:1000px;

    margin:auto;

    padding:50px;

    border-radius:42px;

    text-align:center;

    background:#fff;

    box-shadow:
    0 25px 70px rgba(53,85,125,.08);

    display:flex;

    flex-direction:column;

    align-items:center;

}

.lr-final-symbol{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    width:110px;
    height:110px;

    border-radius:50%;

    margin-bottom:34px;

    background:
    linear-gradient(
    135deg,
    #95cd42,
    #b8eb64
    );

    color:#fff;

    font-size:3rem;

}

.lr-adoption-final-box h2{

    font-size:4rem;

    line-height:1.1;

    color:#35557d;

    margin-bottom:30px;

}

.lr-adoption-final-box p{

    max-width:760px;

    margin:0 auto 40px;

    font-size:1.15rem;

    line-height:2;

    color:#617895;

}



/* MOBILE */

@media(max-width:980px){

    .lr-adoption-grid,
    .lr-process-grid,
    .lr-horses-grid{

        grid-template-columns:1fr;

    }

    .lr-adoption-left h2,
    .lr-process-heading h2,
    .lr-adoption-final-box h2{

        font-size:2.8rem;

    }

    .lr-process-line{

        display:none;

    }

    .lr-adoption-final-box{

        padding:60px 34px;

    }

    .lr-horse-image{

        height:340px;

    }

}
.lr-adoption-final .hero-actions{

    width:100%;

    display:flex;

    justify-content:center;

    align-items:center;

    margin-top:10px;

}

/* =====================================================
   CONTACT PREMIUM
===================================================== */

.lr-contact-section{

    position:relative;

    padding:80px 0;

    background:
    linear-gradient(
    180deg,
    #f8fafc 0%,
    #eef3f9 100%
    );

    overflow:hidden;

}

.lr-contact-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:70px;

    align-items:center;

}

.lr-contact-badge{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:14px 28px;

    border-radius:999px;

    background:#dff0b8;

    border:1px solid #bfdc79;

    color:#6c931d;

    font-size:.82rem;

    font-weight:800;

    letter-spacing:4px;

    margin-bottom:28px;

}

.lr-contact-left h2{

    font-size:4.2rem;

    line-height:1.05;

    color:#35557d;

    margin-bottom:34px;

}

.lr-contact-left p{

    font-size:1.1rem;

    line-height:2;

    color:#617895;

    margin-bottom:24px;

}

.lr-contact-intro{

    color:#35557d !important;

    font-size:1.25rem !important;

}



/* CARTES CONTACT */

.lr-contact-cards{

    margin-top:45px;

    display:flex;

    flex-direction:column;

    gap:22px;

}

.lr-contact-card{

    display:flex;

    align-items:center;

    gap:22px;

    padding:28px;

    border-radius:28px;

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

    backdrop-filter:blur(14px);

    box-shadow:
    0 10px 35px rgba(53,85,125,.08);

    transition:.35s ease;

}

.lr-contact-card:hover{

    transform:translateY(-8px);

    box-shadow:
    0 18px 40px rgba(53,85,125,.12);

}

.lr-contact-icon{

    width:74px;
    height:74px;

    border-radius:22px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:
    linear-gradient(
    135deg,
    #95cd42,
    #b8eb64
    );

    color:#fff;

    font-size:1.7rem;

}

.lr-contact-card strong{

    display:block;

    color:#35557d;

    margin-bottom:8px;

    font-size:1.15rem;

}

.lr-contact-card span{

    color:#617895;

}



/* FORMULAIRE */

.lr-contact-form-box{

    padding:50px;

    border-radius:38px;

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

    backdrop-filter:blur(16px);

    box-shadow:
    0 25px 60px rgba(53,85,125,.1);

}

.lr-contact-form{

    display:flex;

    flex-direction:column;

    gap:26px;

}

.lr-form-group{

    display:flex;

    flex-direction:column;

}

.lr-form-group label{

    color:#35557d;

    font-weight:700;

    margin-bottom:10px;

}

.lr-form-group input,
.lr-form-group select,
.lr-form-group textarea{

    padding:18px 22px;

    border-radius:18px;

    border:
    1px solid rgba(53,85,125,.08);

    background:#fff;

    font-size:1rem;

    color:#35557d;

    outline:none;

    transition:.3s ease;

}

.lr-form-group input:focus,
.lr-form-group select:focus,
.lr-form-group textarea:focus{

    border:
    1px solid rgba(149,205,66,.5);

    box-shadow:
    0 0 0 5px rgba(149,205,66,.08);

}



/* REASONS */

.lr-contact-reasons{

    padding:100px 0;

    background:
    linear-gradient(
    180deg,
    #5f7fa8 0%,
    #4f719d 100%
    );

}

.lr-contact-heading{

    text-align:center;

    max-width:900px;

    margin:auto auto 90px;

}

.lr-contact-heading h2{

    color:#fff;

    font-size:4rem;

    line-height:1.1;

    margin-top:28px;

}

.lr-contact-reasons-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

}

.lr-reason-card{

    padding:42px 34px;

    border-radius:34px;

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

    backdrop-filter:blur(16px);

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

    transition:.35s ease;

}

.lr-reason-card:hover{

    transform:translateY(-10px);

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

    border:
    1px solid rgba(184,235,100,.4);

    box-shadow:
    0 20px 45px rgba(0,0,0,.14);

}

.lr-reason-icon{

    width:82px;
    height:82px;

    border-radius:24px;

    display:flex;

    align-items:center;

    justify-content:center;

    margin-bottom:24px;

    background:
    linear-gradient(
    135deg,
    #95cd42,
    #b8eb64
    );

    color:#fff;

    font-size:2rem;

    transition:.35s ease;

}

.lr-reason-card:hover .lr-reason-icon{

    transform:scale(1.08);

    box-shadow:
    0 18px 40px rgba(149,205,66,.45);

}

.lr-reason-card h3{

    color:#fff;

    font-size:1.8rem;

    margin-bottom:16px;

}

.lr-reason-card p{

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

    line-height:1.9;

}



/* FINAL */

.lr-contact-final{

    padding:40px 0;

    background:
    linear-gradient(
    180deg,
    #eef3f9 0%,
    #f8fafc 100%
    );

}

.lr-contact-final-box{

    max-width:1000px;

    margin:auto;

    padding:90px;

    border-radius:42px;

    text-align:center;

    background:#fff;

    box-shadow:
    0 25px 70px rgba(53,85,125,.08);

}

.lr-contact-final-box h2{

    font-size:4rem;

    line-height:1.1;

    color:#35557d;

    margin-bottom:30px;

}

.lr-contact-final-box p{

    max-width:760px;

    margin:0 auto 40px;

    font-size:1.15rem;

    line-height:2;

    color:#617895;

}



/* MOBILE */

@media(max-width:980px){

    .lr-contact-grid,
    .lr-contact-reasons-grid{

        grid-template-columns:1fr;

    }

    .lr-contact-left h2,
    .lr-contact-heading h2,
    .lr-contact-final-box h2{

        font-size:2.8rem;

    }

    .lr-contact-form-box,
    .lr-contact-final-box{

        padding:50px 30px;

    }

}
/* =====================================================
   UPLOAD PREMIUM
===================================================== */

.lr-upload-box{

    position:relative;

    border:2px dashed rgba(149,205,66,.35);

    border-radius:24px;

    padding:40px;

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

    transition:.35s ease;

    cursor:pointer;

    overflow:hidden;

}

.lr-upload-box:hover{

    border-color:#95cd42;

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

}

.lr-upload-box input[type=file]{

    position:absolute;

    inset:0;

    opacity:0;

    cursor:pointer;

}

.lr-upload-content{

    text-align:center;

}

.lr-upload-icon{

    display:flex;

    align-items:center;

    justify-content:center;

    width:82px;
    height:82px;

    margin:auto auto 22px;

    border-radius:24px;

    background:
    linear-gradient(
    135deg,
    #95cd42,
    #b8eb64
    );

    color:#fff;

    font-size:2rem;

    box-shadow:
    0 18px 40px rgba(149,205,66,.25);

}

.lr-upload-content strong{

    display:block;

    color:#35557d;

    font-size:1.2rem;

    margin-bottom:10px;

}

.lr-upload-content p{

    color:#7b8ea7;

    font-size:.95rem;

}

.lr-file-list{

    margin-top:20px;

    display:flex;

    flex-direction:column;

    gap:12px;

}

.lr-file-item{

    display:flex;

    align-items:center;

    justify-content:space-between;

    padding:16px 18px;

    border-radius:16px;

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

    box-shadow:
    0 10px 25px rgba(53,85,125,.06);

    color:#35557d;

    font-weight:600;

}

.lr-honeypot{

    display:none;

}

/* =====================================================
   SUCCESS MESSAGE
===================================================== */

.lr-form-success{

    position:fixed;

    inset:0;

    display:flex;

    align-items:center;

    justify-content:center;

    padding:20px;

    background:
    rgba(20,30,40,.45);

    backdrop-filter:blur(10px);

    z-index:999999;

    animation:fadeSuccess .35s ease;

}

.lr-form-success-box{

    width:100%;

    max-width:520px;

    padding:60px 50px;

    border-radius:38px;

    background:#fff;

    text-align:center;

    box-shadow:
    0 30px 80px rgba(0,0,0,.18);

    animation:successPop .45s ease;

}

.lr-success-icon{

    display:flex;

    align-items:center;

    justify-content:center;

    width:110px;
    height:110px;

    margin:0 auto 30px;

    border-radius:50%;

    background:
    linear-gradient(
    135deg,
    #95cd42,
    #b8eb64
    );

    color:#fff;

    font-size:3rem;

    font-weight:800;

    box-shadow:
    0 20px 50px rgba(149,205,66,.35);

}

.lr-form-success-box h3{

    font-size:2.2rem;

    color:#35557d;

    margin-bottom:20px;

}

.lr-form-success-box p{

    color:#617895;

    line-height:1.9;

    font-size:1.08rem;

}



/* ANIMATIONS */

@keyframes fadeSuccess{

    from{

        opacity:0;

    }

    to{

        opacity:1;

    }

}

@keyframes successPop{

    from{

        opacity:0;

        transform:
        translateY(25px)
        scale(.96);

    }

    to{

        opacity:1;

        transform:
        translateY(0)
        scale(1);

    }

}

/* =====================================================
   CLOSE SUCCESS
===================================================== */

.lr-form-success-box{

    position:relative;

}

.lr-success-close{

    position:absolute;

    top:22px;
    right:22px;

    width:46px;
    height:46px;

    border:none;

    border-radius:50%;

    background:
    rgba(53,85,125,.08);

    color:#35557d;

    font-size:1.6rem;

    cursor:pointer;

    transition:.3s ease;

}

.lr-success-close:hover{

    background:
    rgba(149,205,66,.18);

    transform:rotate(90deg);

}
/* =====================================================
   HERO PARRAINAGE
===================================================== */

.lr-parrainage-hero{

    padding:140px 0 100px;

    background:
    linear-gradient(
    180deg,
    #f7fafc 0%,
    #eef3f8 100%
    );

    overflow:hidden;

}

.lr-parrainage-grid{

    display:grid;

    grid-template-columns:1.05fr .95fr;

    gap:70px;

    align-items:center;

}

.lr-parrainage-content h1{

    font-size:2.6rem !important;

    line-height:1.02 !important;

    color:#35557d;

    margin:26px 0 34px;

    max-width:620px;

    word-break:normal;

    font-weight:800;

}

.lr-parrainage-content p{

    font-size:1.15rem;

    line-height:2;

    color:#617895;

    max-width:680px;

    margin-bottom:24px;

}

.lr-parrainage-actions{

    display:flex;

    gap:20px;

    margin-top:45px;

    flex-wrap:wrap;

}

.lr-parrainage-visual{

    position:relative;
z-index:1;

}

.lr-parrainage-visual img{

    width:100%;

    display:block;

    border-radius:42px;

    position:relative;

    z-index:2;

    transform:
    perspective(1400px)
    rotateY(-4deg)
    rotateX(1deg);

    box-shadow:

    0 25px 60px rgba(20,40,70,.18),

    0 60px 120px rgba(20,40,70,.14),

    0 0 0 1px rgba(255,255,255,.45) inset;

    transition:
    transform .6s ease,
    box-shadow .6s ease;

}



/* =====================================================
   VALEURS
===================================================== */

.lr-parrainage-values{

    padding:0 0 80px;

    margin-top:-40px;

}

.lr-values-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}

.lr-value-card{

    padding:48px 40px;

    border-radius:34px;

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

    backdrop-filter:blur(16px);

    box-shadow:
    0 20px 50px rgba(30,50,80,.08);

    transition:.4s ease;

    text-align:center;

    display:flex;

    flex-direction:column;

    align-items:center;

}

.lr-value-card:hover{

    transform:
    translateY(-10px);

    box-shadow:
    0 30px 70px rgba(30,50,80,.12);

}

.lr-value-icon{

    display:flex;

    align-items:center;

    justify-content:center;

    width:92px;
    height:92px;
margin-left:auto;

margin-right:auto;
    border-radius:28px;

    margin-bottom:28px;

    background:
    linear-gradient(
    135deg,
    #95cd42,
    #b8eb64
    );

    color:#fff;

    font-size:2rem;

    box-shadow:
    0 18px 40px rgba(149,205,66,.25);

}

.lr-value-card h3{

    font-size:2rem;

    color:#35557d;

    margin-bottom:18px;

}

.lr-value-card p{

    color:#617895;

    line-height:1.9;

    max-width:320px;

    margin:0 auto;

}



/* =====================================================
   FORMULES
===================================================== */

.lr-parrainage-plans{

    padding:25px 0;

    background:
    linear-gradient(
    180deg,
    #ffffff 0%,
    #f4f8fb 100%
    );

}

.lr-parrainage-plans h2{

    text-align:center;

    font-size:clamp(2.1rem,5vw,4.2rem);

    color:#35557d;

    max-width:860px;

    margin:0 auto 70px;

}

.lr-plans-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:34px;

}

.lr-plan-card{

    position:relative;

    padding:28px;
max-width:380px;
    border-radius:38px;

    background:#fff;

    box-shadow:
    0 25px 60px rgba(30,50,80,.08);

    transition:.4s ease;

    overflow:hidden;

    display:flex;

    flex-direction:column;

    height:100%;

}

.lr-plan-card:hover{

    transform:
    translateY(-14px);

    box-shadow:
    0 35px 80px rgba(30,50,80,.14);

}

.lr-plan-card.featured{

    transform:
    scale(1.04);

}

.lr-plan-card.featured:hover{

    transform:
    scale(1.04)
    translateY(-12px);

}

.lr-plan-top{

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:20px;

    margin-bottom:30px;

}

.lr-plan-badge{

    padding:14px 22px;
font-size:1.5rem; 
    border-radius:999px;
 display: inline-block;
    width: 100%;
    text-align: center;
    background:
    rgba(149,205,66,.18);

    color:#35557d;

    font-weight:800;

}

.lr-plan-price{

    font-size:2.5rem;

    font-weight:900;

    color:#95cd42;

}

.lr-plan-price small{

    font-size:1rem;

    color:#617895;

}

.lr-plan-card img{

    width:100%;

    height:auto;

    border-radius:28px;

    margin:0 auto 30px;

    display:block;

    max-width:100%;

    box-shadow:
    0 18px 40px rgba(0,0,0,.16);

}

.lr-plan-card ul{

    list-style:none;

    padding:0;

    margin:0 0 35px;

}

.lr-plan-card li{

    position:relative;

    padding-left:34px;

    margin-bottom:18px;

    color:#617895;

    line-height:1.7;

}

.lr-plan-card li::before{

    content:"✓";

    position:absolute;

    left:0;

    top:0;

    color:#95cd42;

    font-weight:900;

}



/* =====================================================
   GALERIE
===================================================== */

.lr-parrainage-gallery{

    padding:80px 0;

}

.lr-parrainage-gallery h2{

    text-align:center;

    font-size:clamp(1.5rem,5vw,3.5rem);

    color:#35557d;

    margin:0 auto 80px;

    max-width:920px;

}

.lr-gallery-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:22px;

    grid-auto-rows:260px;

}

.lr-gallery-item{

    position:relative;

    overflow:hidden;

    border-radius:32px;

    background:#ddd;

}

.lr-gallery-item img{

    width:100%;
    height:100%;

    object-fit:cover;

    transition:transform .7s ease;

}

.lr-gallery-item:hover img{

    transform:scale(1.08);

}

.lr-gallery-item.tall{

    grid-row:span 2;

}

.lr-gallery-item.wide{

    grid-column:span 2;

}

.lr-gallery-overlay{

    position:absolute;

    inset:0;

    display:flex;

    flex-direction:column;

    justify-content:flex-end;

    padding:36px;

    background:
    linear-gradient(
    180deg,
    rgba(0,0,0,0) 20%,
    rgba(0,0,0,.68) 100%
    );

}

.lr-gallery-overlay h3{

    color:#fff;

    font-size:2rem;

    margin-bottom:12px;

}

.lr-gallery-overlay p{

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

    line-height:1.8;

}



/* =====================================================
   IMPACT
===================================================== */

.lr-parrainage-impact{

    padding:0 0 120px;

}

.lr-impact-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}

.lr-impact-card{

    padding:60px 40px;

    border-radius:34px;

    text-align:center;

    background:
    linear-gradient(
    135deg,
    #35557d,
    #456b9d
    );

    color:#fff;

    box-shadow:
    0 25px 60px rgba(30,50,80,.16);
    transition:
transform .45s ease,
box-shadow .45s ease,
background .45s ease,
filter .45s ease;

cursor:default;

}
.lr-impact-card:hover{

    transform:
    translateY(-12px)
    scale(1.03);

    background:
    linear-gradient(
    135deg,
    #8cc63f,
    #a8df54
    );

    box-shadow:
    0 35px 90px rgba(140,198,63,.28);

    filter:saturate(1.08);

}
.lr-impact-card:hover strong,
.lr-impact-card:hover span{

    color:#fff;

}

.lr-impact-card strong{

    display:block;

    font-size:3rem;

    margin-bottom:14px;

}

.lr-impact-card span{

    font-size:1.05rem;

    opacity:.92;

}



/* =====================================================
   CTA FINAL
===================================================== */

.lr-parrainage-final{

    padding:0 0 140px;

}

.lr-final-box{

    padding:50px 70px;

    border-radius:42px;

    background:
    linear-gradient(
    135deg,
    #8cc63f,
    #a8df54
    );

    text-align:center;

    color:#fff;

    box-shadow:
    0 35px 90px rgba(140,198,63,.22);

    position:relative;

    overflow:hidden;

}
.lr-final-box::before{

    content:"";

    position:absolute;

    inset:0;

    background:
    radial-gradient(
    circle at top right,
    rgba(255,255,255,.22),
    transparent 45%
    );

    pointer-events:none;

}

.lr-final-box h2{

    font-size:clamp(2.5rem,5vw,4.6rem);

    line-height:1.1;

    margin-bottom:28px;

}

.lr-final-box p{

    max-width:760px;

    margin:0 auto 40px;

    line-height:2;

    font-size:1.08rem;

    opacity:.92;

}

.lr-final-actions{

    display:flex;

    justify-content:center;

    gap:20px;

    flex-wrap:wrap;

}



/* =====================================================
   RESPONSIVE
===================================================== */

@media(max-width:1100px){

    .lr-parrainage-grid,
    .lr-values-grid,
    .lr-plans-grid,
    .lr-impact-grid{

        grid-template-columns:1fr;

    }

    .lr-gallery-grid{

        grid-template-columns:repeat(2,1fr);

    }

}



@media(max-width:768px){

    .lr-parrainage-hero{

        padding:110px 0 80px;

    }

    .lr-gallery-grid{

        grid-template-columns:1fr;

        grid-auto-rows:260px;

    }

    .lr-gallery-item.wide,
    .lr-gallery-item.tall{

        grid-column:auto;

        grid-row:auto;

    }

    .lr-final-box{

        padding:60px 34px;

    }

}

/* =========================================================
LEGAL PAGES
========================================================= */

.lr-legal-hero{

    padding:
    180px 0 90px;

    text-align:center;

}

.lr-legal-hero h1{

    font-size:
    clamp(3rem,6vw,5rem);

    line-height:1.05;

    margin:
    26px 0;

    color:#35557d;

}

.lr-legal-hero p{

    max-width:760px;

    margin:0 auto;

    line-height:2;

    font-size:1.08rem;

    color:#617895;

}

.lr-legal-content{

    padding:
    40px 0 120px;

}

.lr-legal-content .container{

    display:grid;

    gap:36px;

}

.lr-legal-card{

    padding:50px;

    border-radius:34px;

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

    backdrop-filter:blur(16px);

    box-shadow:
    0 25px 60px rgba(30,50,80,.08);

    transition:.4s ease;

}

.lr-legal-card:hover{

    transform:
    translateY(-8px);

    box-shadow:
    0 35px 80px rgba(30,50,80,.14);

}

.lr-legal-card h2{

    margin-bottom:24px;

    color:#35557d;

    font-size:2rem;

}

.lr-legal-card p,
.lr-legal-card li{

    color:#617895;

    line-height:2;

}

.lr-legal-card ul{

    padding-left:22px;

    margin-top:18px;

}
/* =========================================================
FOOTER LINKS
========================================================= */

.footer-link{

    display:block;

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

    text-decoration:none;

    margin-bottom:14px;

    transition:.3s ease;

}

.footer-link:hover{

    color:#b7ff39;

    transform:translateX(6px);

}

/* =========================================================
COOKIE BANNER
========================================================= */

.lr-cookie-banner{

    position:fixed;

    bottom:30px;

    left:50%;

    transform:translateX(-50%);

    width:min(92%,720px);

    z-index:9999;

    background:
    rgba(40,55,80,.92);

    backdrop-filter:blur(14px);

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

    border-radius:24px;

    padding:22px 26px;

    box-shadow:
    0 25px 60px rgba(0,0,0,.22);

}

.lr-cookie-content{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:24px;

}

.lr-cookie-content p{

    color:#fff;

    line-height:1.7;

    margin:0;

    font-size:.95rem;

}

.lr-cookie-content a{

    color:#b7ff39;

    text-decoration:none;

    font-weight:600;

}

.lr-cookie-content button{

    border:none;

    background:#b7ff39;

    color:#24344d;

    padding:14px 24px;

    border-radius:14px;

    font-weight:700;

    cursor:pointer;

    transition:.3s ease;

}

.lr-cookie-content button:hover{

    transform:translateY(-3px);

}

@media(max-width:768px){

    .lr-cookie-content{

        flex-direction:column;

        align-items:flex-start;

    }

}






/* =====================================================
VALEURS
===================================================== */

.lr-member-values{

    padding:1px 0 130px;

}

.lr-values-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}

.lr-value-card{

    padding:48px 40px;

    border-radius:34px;

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

    backdrop-filter:blur(16px);

    box-shadow:
    0 20px 50px rgba(30,50,80,.08);

    transition:.4s ease;

    text-align:center;

    display:flex;

    flex-direction:column;

    align-items:center;

}

.lr-value-card:hover{

    transform:
    translateY(-12px);

    box-shadow:
    0 35px 80px rgba(30,50,80,.14);

}

.lr-value-icon{

    display:flex;

    align-items:center;

    justify-content:center;

    width:90px;
    height:90px;

    border-radius:26px;

    margin-bottom:28px;

    background:
    linear-gradient(
    135deg,
    #95cd42,
    #b8eb64
    );

    color:#fff;

    font-size:2rem;

    box-shadow:
    0 18px 40px rgba(149,205,66,.22);

}

.lr-value-card h3{

    font-size:2rem;

    color:#35557d;

    margin-bottom:18px;

}

.lr-value-card p{

    color:#617895;

    line-height:1.9;

    max-width:320px;

}





/* =====================================================
FORMULES
===================================================== */

.lr-member-plans{

    padding:1px 0;

    background:
    linear-gradient(
    180deg,
    #ffffff 0%,
    #f5f8fb 100%
    );

}

.lr-member-plans h2{

    text-align:center;

    font-size:clamp(2.5rem,5vw,4.5rem);

    color:#35557d;

    margin:18px auto 70px;

    max-width:860px;

}

.lr-member-plans-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:34px;

    align-items:start;

}

.lr-member-card{

    position:relative;

    padding:44px 36px;

    border-radius:38px;

    background:#fff;

    box-shadow:
    0 25px 60px rgba(30,50,80,.08);

    transition:.45s ease;

    overflow:hidden;

    display:flex;

    flex-direction:column;

    text-align:center;

    height:100%;

}

.lr-member-card:hover{

    transform:
    translateY(-14px);

    box-shadow:
    0 40px 90px rgba(30,50,80,.16);

}

.lr-member-card.featured{

    transform:
    scale(1.04);

}

.lr-member-card.featured:hover{

    transform:
    scale(1.04)
    translateY(-12px);

}

.lr-member-badge{

    display:flex;

    align-items:center;

    justify-content:center;

    width:82px;
    height:82px;

    border-radius:24px;

    margin:0 auto 28px;

    background:
    linear-gradient(
    135deg,
    #95cd42,
    #b8eb64
    );

    color:#fff;

    font-size:2rem;

    box-shadow:
    0 18px 40px rgba(149,205,66,.22);

}

.lr-member-card h3{

    font-size:2rem;

    color:#35557d;

    margin-bottom:18px;

}

.lr-member-price{

    font-size:3rem;

    font-weight:900;

    color:#95cd42;

    margin-bottom:30px;

}

.lr-member-price span{

    font-size:1rem;

    color:#617895;

}

.lr-member-card ul{

    list-style:none;

    padding:0;

    margin:0 0 40px;

}

.lr-member-card li{

    position:relative;

    padding-left:34px;

    margin-bottom:18px;

    color:#617895;

    line-height:1.8;

    text-align:left;

}

.lr-member-card li::before{

    content:"✓";

    position:absolute;

    left:0;

    top:0;

    color:#95cd42;

    font-weight:900;

}

.lr-member-card .btn{

    margin-top:auto;

}





/* =====================================================
IMPACT
===================================================== */

.lr-member-impact{

    padding:140px 0;

}

.lr-member-impact-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:70px;

    align-items:center;

}

.lr-member-impact-image img{

    width:100%;

    border-radius:42px;

    display:block;

    box-shadow:
    0 35px 90px rgba(20,40,70,.18);

}

.lr-member-impact-content h2{

    font-size:clamp(2.5rem,5vw,4.5rem);

    line-height:1.08;

    color:#35557d;

    margin:26px 0 34px;

}

.lr-member-impact-content p{

    color:#617895;

    line-height:2;

    font-size:1.08rem;

    margin-bottom:24px;

}





/* =====================================================
AUTRES SOUTIENS
===================================================== */

.lr-member-support-alt{

    padding:0 0 100px;

}





/* =====================================================
FORMULAIRE
===================================================== */

.lr-member-form{

    padding:0 0 150px;

}

.lr-member-form h2{

    text-align:center;

    font-size:clamp(2.5rem,5vw,4.5rem);

    color:#35557d;

    margin:18px auto 70px;

}

.lr-adhesion-form{

    max-width:900px;

    margin:0 auto;

    padding:60px;

    border-radius:42px;

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

    backdrop-filter:blur(16px);

    box-shadow:
    0 30px 80px rgba(30,50,80,.1);

}

.lr-form-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:24px;

    margin-bottom:24px;

}

.lr-adhesion-form input,
.lr-adhesion-form select,
.lr-adhesion-form textarea{

    width:100%;

    padding:22px 24px;

    border:none;

    border-radius:22px;

    background:#f4f7fa;

    font-size:1rem;

    color:#35557d;

    margin-bottom:24px;

}

.lr-adhesion-form textarea{

    resize:vertical;

}

.lr-adhesion-form button{

    width:100%;

}





/* =====================================================
RESPONSIVE
===================================================== */

@media(max-width:1100px){

    .lr-member-hero-grid,
    .lr-member-impact-grid,
    .lr-member-plans-grid,
    .lr-values-grid{

        grid-template-columns:1fr;

    }

}



@media(max-width:768px){

    .lr-member-hero{

        padding:120px 0 90px;

    }

    .lr-member-hero-content h1{

        font-size:3rem;

    }

    .lr-form-grid{

        grid-template-columns:1fr;

    }

    .lr-adhesion-form{

        padding:40px 28px;

    }

}

/* =====================================================
MEMBER HERO PREMIUM VISUAL
===================================================== */

.lr-member-premium-visual{

    position:relative;

    perspective:1800px;

    animation:
    lrMemberFloating 7s ease-in-out infinite;

}



/* HALO PREMIUM */

.lr-member-premium-visual::before{

    content:"";

    position:absolute;

    width:78%;

    height:78%;

    top:50%;

    left:50%;

    transform:
    translate(-50%,-50%);

    background:
    radial-gradient(
    circle,
    rgba(149,205,66,.34) 0%,
    rgba(149,205,66,.12) 38%,
    transparent 72%
    );

    filter:blur(42px);

    z-index:1;

    transition:.7s ease;

}



/* IMAGE */

.lr-member-premium-visual img{

    position:relative;

    z-index:2;

    width:100%;

    display:block;

    border-radius:42px;

    transform:

    rotateY(-10deg)
    rotateX(3deg)
    scale(1);

    box-shadow:

    0 30px 80px rgba(20,40,70,.20),

    0 80px 160px rgba(20,40,70,.18),

    0 0 0 1px rgba(255,255,255,.35) inset;

    transition:

    transform .8s cubic-bezier(.2,.8,.2,1),

    box-shadow .8s ease,

    filter .8s ease;

}



/* HOVER */

.lr-member-premium-visual:hover img{

    transform:

    rotateY(0deg)
    rotateX(0deg)
    translateY(-14px)
    scale(1.04);

    box-shadow:

    0 45px 100px rgba(20,40,70,.24),

    0 120px 220px rgba(20,40,70,.20),

    0 0 0 1px rgba(255,255,255,.5) inset;

    filter:
    saturate(1.08);

}



/* HALO HOVER */

.lr-member-premium-visual:hover::before{

    transform:
    translate(-50%,-50%)
    scale(1.12);

    filter:blur(70px);

}



/* FLOATING */

@keyframes lrMemberFloating{

    0%{

        transform:
        translateY(0px);

    }

    50%{

        transform:
        translateY(-12px);

    }

    100%{

        transform:
        translateY(0px);

    }

}

/* CENTRAGE BOUTONS HERO DEVENIR MEMBRE */

.lr-member-actions{

    justify-content:center;

}

.lr-parrain-actions{

    justify-content:center;

}


/* =====================================================
DON HERO PREMIUM VISUAL
===================================================== */

.lr-don-premium-visual{

    position:relative;

    perspective:1800px;

    animation:
    lrDonFloating 7s ease-in-out infinite;

}

.lr-don-premium-visual::before{

    content:"";

    position:absolute;

    width:78%;

    height:78%;

    top:50%;

    left:50%;

    transform:
    translate(-50%,-50%);

    background:
    radial-gradient(
    circle,
    rgba(149,205,66,.34) 0%,
    rgba(149,205,66,.12) 38%,
    transparent 72%
    );

    filter:blur(42px);

    z-index:1;

    transition:.7s ease;

}

.lr-don-premium-visual img{

    position:relative;

    z-index:2;

    width:100%;

    display:block;

    border-radius:42px;

    transform:

    rotateY(-10deg)
    rotateX(3deg)
    scale(1);

    box-shadow:

    0 30px 80px rgba(20,40,70,.20),

    0 80px 160px rgba(20,40,70,.18),

    0 0 0 1px rgba(255,255,255,.35) inset;

    transition:

    transform .8s cubic-bezier(.2,.8,.2,1),

    box-shadow .8s ease,

    filter .8s ease;

}

.lr-don-premium-visual:hover img{

    transform:

    rotateY(0deg)
    rotateX(0deg)
    translateY(-14px)
    scale(1.04);

    box-shadow:

    0 45px 100px rgba(20,40,70,.24),

    0 120px 220px rgba(20,40,70,.20),

    0 0 0 1px rgba(255,255,255,.5) inset;

    filter:
    saturate(1.08);

}

.lr-don-premium-visual:hover::before{

    transform:
    translate(-50%,-50%)
    scale(1.12);

    filter:blur(70px);

}

@keyframes lrDonFloating{

    0%{

        transform:
        translateY(0px);

    }

    50%{

        transform:
        translateY(-12px);

    }

    100%{

        transform:
        translateY(0px);

    }

}



/* =====================================================
DON METHODS
===================================================== */

.lr-don-methods{

    padding:0px 0;

}

.lr-don-grid{

    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(280px,1fr));

    gap:32px;

    margin-top:70px;

}

.lr-don-card{

    background:#fff;

    padding:42px;

    border-radius:36px;

    box-shadow:
    0 25px 60px rgba(30,50,80,.08);

    transition:.4s ease;

    position:relative;

    overflow:hidden;

}

.lr-don-card:hover{

    transform:
    translateY(-12px);

    box-shadow:
    0 40px 90px rgba(30,50,80,.12);

}

.lr-don-icon{

    width:86px;

    height:86px;

    border-radius:28px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:
    linear-gradient(
    135deg,
    #b4ec51 0%,
    #8fd126 100%
    );

    font-size:2rem;

    margin-bottom:30px;

    box-shadow:
    0 20px 40px rgba(149,205,66,.24);

}

.lr-don-card h3{

    font-size:2rem;

    margin-bottom:20px;

    color:#35557d;

}

.lr-don-card p{

    line-height:2;

    color:#5e6f89;

    margin-bottom:30px;

}



/* =====================================================
DON SOINS
===================================================== */

.lr-don-soins{

    padding:120px 0;

}



/* =====================================================
DON MATERIEL
===================================================== */

.lr-don-materiel{

    padding:120px 0;

}



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

.lr-don-actions{

    justify-content:center;

}



/* =====================================================
RESPONSIVE
===================================================== */

@media(max-width:768px){

    .lr-don-grid{

        grid-template-columns:1fr;

    }

}

/* =====================================================
SECTION HEADING CENTER
===================================================== */

.section-heading.center{

    text-align:center;

    max-width:900px;

    margin:0 auto 70px;

}

.section-heading.center .section-label{

    margin:0 auto 28px;

}

.section-heading.center h2{

    font-size:clamp(1.8rem,4vw,4rem);

    line-height:1.1;

    color:#35557d;

    margin-bottom:24px;

}

.section-heading.center p{

    font-size:1.08rem;

    line-height:2;

    color:#5e6f89;

}

/* =====================================================
CENTRAGE DON CARDS
===================================================== */

.lr-don-card{

    text-align:center;

}

.lr-don-icon{

    margin:
    0 auto 30px;

}

.lr-don-card .btn{

    margin:
    10px auto 0;

}

.lr-don-card p{

    max-width:320px;

    margin:
    0 auto 30px;

}

.lr-final-box .lr-parrainage-actions{

    justify-content:center;

}
.lr-final-section{

    padding-bottom:120px;

}
/* =====================================================
PREMIUM HERO VISUAL
===================================================== */

.lr-parrainage-visual{

    position:relative;

    perspective:1800px;

}

.lr-parrainage-visual::before{

    content:"";

    position:absolute;

    inset:-30px;

    border-radius:48px;

    background:

    radial-gradient(
    circle at center,
    rgba(149,205,66,.22) 0%,
    rgba(149,205,66,.08) 38%,
    transparent 72%
    );

    filter:blur(38px);

    opacity:.9;

    z-index:1;

    transition:.7s ease;

}

.lr-parrainage-visual img{

    position:relative;

    z-index:2;

    display:block;

    width:100%;

    border-radius:42px;

    transform:

    rotateY(-7deg)
    rotateX(2deg)
    translateY(0);

    box-shadow:

    0 30px 70px rgba(20,40,70,.18),

    0 80px 140px rgba(20,40,70,.14),

    0 0 0 1px rgba(255,255,255,.35) inset;

    transition:

    transform .8s cubic-bezier(.2,.8,.2,1),

    box-shadow .8s ease,

    filter .8s ease;

}

.lr-parrainage-visual:hover img{

    transform:

    rotateY(0deg)
    rotateX(0deg)
    translateY(-14px)
    scale(1.03);

    box-shadow:

    0 45px 90px rgba(20,40,70,.22),

    0 120px 220px rgba(20,40,70,.18),

    0 0 0 1px rgba(255,255,255,.55) inset;

    filter:
    saturate(1.08);

}

.lr-parrainage-visual:hover::before{

    transform:scale(1.08);

    filter:blur(60px);

}
/* =====================================================
SCROLL REVEAL
===================================================== */

.reveal{

    opacity:0;

    transform:
    translateY(60px);

    transition:

    opacity 1s ease,

    transform 1s cubic-bezier(.2,.65,.2,1);

    will-change:
    opacity,
    transform;

}

.reveal.active{

    opacity:1;

    transform:
    translateY(0);

}
/* =====================================================
SCROLL TOP BUTTON
===================================================== */

.scroll-top{

    position:fixed;

    right:28px;

    bottom:28px;

    width:62px;

    height:62px;

    border:none;

    border-radius:50%;

    cursor:pointer;

    z-index:9999;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:1.5rem;

    font-weight:700;

    color:#fff;

    background:

    linear-gradient(
    135deg,
    #b4ec51 0%,
    #8fd126 100%
    );

    box-shadow:

    0 20px 40px rgba(149,205,66,.28),

    0 10px 20px rgba(20,40,70,.12);

    opacity:0;

    visibility:hidden;

    transform:
    translateY(20px);

    transition:
    all .35s ease;

}

.scroll-top.show{

    opacity:1;

    visibility:visible;

    transform:
    translateY(0);

}

.scroll-top:hover{

    transform:
    translateY(-6px)
    scale(1.08);

    box-shadow:

    0 28px 60px rgba(149,205,66,.36),

    0 18px 40px rgba(20,40,70,.18);

}

@media(max-width:768px){

    .scroll-top{

        width:54px;

        height:54px;

        right:18px;

        bottom:18px;

        font-size:1.2rem;

    }

}