/* ==================================================
   HERO GÉNÉRIQUE LAVERIEEXPERT
================================================== */

.le-hero{
    width:100vw;
    margin-left:calc(50% - 50vw);
    margin-right:calc(50% - 50vw);
    padding:0;
    overflow:hidden;
}

.le-hero-container{
    width:100vw;
    max-width:none;
    height:800px;
    min-height:800px;
    display:grid;
    grid-template-columns:49% 51%;
    position:relative;
    overflow:hidden;
}

.le-hero-content{
    position:relative;
    z-index:3;

    min-height:750px;

    padding-top:150px;
    padding-bottom:70px;

    padding-left:max(70px, calc((100vw - 1700px) / 2 + 70px));
    padding-right:40px;

    display:flex;
    flex-direction:column;
    justify-content:flex-start;
}

.le-hero-subtitle{
    color:#0b63ff;
    font-size:16px;
    font-weight:800;
    letter-spacing:.5px;
    text-transform:uppercase;
    margin-bottom:28px;
}

.le-hero h1{
    font-size:58px;
    font-weight:800;
    line-height:1.15;
    letter-spacing:-1.5px;
    margin:0 0 30px;
}

.le-hero h1 span{
    color:#0b63ff;
}

.le-hero p{
    max-width:620px;
    font-size:20px;
    font-weight:500;
    line-height:1.75;
    margin:0 0 48px;
}

.le-hero-buttons{
    display:flex;
    align-items:center;
    gap:24px;
}

.le-hero-btn{
    height:68px;
    padding:0 34px;
    border-radius:10px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:18px;
    text-decoration:none;
    font-size:18px;
    font-weight:800;
    white-space:nowrap;
    transition:.3s ease;
}

.le-hero-btn svg{
    width:25px;
    height:25px;
    fill:none;
    stroke:currentColor;
    stroke-width:2.4;
    stroke-linecap:round;
    stroke-linejoin:round;
    transition:.3s ease;
    flex-shrink:0;
}

/* Icônes blanches uniquement pour le hero Ouvrir une laverie */

.ouvrir-hero-features .le-hero-feature svg{
    stroke:#ffffff;
    fill:none;
}

.le-hero-btn:hover{
    transform:translateY(-4px);
}

.le-hero-btn:hover svg{
    transform:translateX(4px);
}

.le-hero-image{
    position:relative;
    overflow:hidden;
    clip-path:polygon(8% 0,100% 0,100% 100%,0 100%);
}

.le-hero-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}



/* ==================================================
   POINTS HERO FINANCEMENT
================================================== */

.financement-points{
    display:flex;
    align-items:center;
    gap:42px;
    margin:0 0 48px;
    flex-wrap:nowrap;
}

.financement-point{
    display:flex;
    align-items:center;
    gap:16px;
    flex:1;
}

.financement-point-icon{
    width:44px;
    height:44px;
    flex-shrink:0;

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

    color:#2563eb;
}

.financement-point-icon svg{
    width:44px;
    height:44px;

    fill:none;
    stroke:currentColor;
    stroke-width:2.1;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.financement-point strong{
    display:block;
    margin:0 0 3px;

    color:#000d20;
    font-size:18px;
    font-weight:800;
    line-height:1.2;
}

.financement-point span{
    display:block;

    color:#5f6b7a;
    font-size:16px;
    font-weight:500;
    line-height:1.35;
}

@media(max-width:1200px){

    .financement-points{
        gap:26px;
    }

    .financement-point strong{
        font-size:17px;
    }

    .financement-point span{
        font-size:15px;
    }

}

@media(max-width:900px){

    .financement-points{
        flex-direction:column;
        align-items:flex-start;
        gap:22px;
    }

}

/* CHECK OPTIONNEL */

.le-hero-check{
    display:flex;
    align-items:center;
    gap:14px;
    margin-top:34px;
}

.le-hero-check span{
    width:36px;
    height:36px;
    border-radius:50%;
    border:2px solid #0b63ff;
    color:#0b63ff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:18px;
    font-weight:900;
    flex-shrink:0;
}

.le-hero-check p{
    margin:0;
    font-size:17px;
    font-weight:400;
    line-height:1.4;
}

/* VERSION FOND BLEU */

.le-hero-dark{
    background:#000d20;
}

.le-hero-dark .le-hero-container{
    background:#000d20;
}

.le-hero-dark h1{
    color:#ffffff;
}

.le-hero-dark p{
    color:rgba(255,255,255,.88);
}

.le-hero-dark .le-hero-check p{
    color:#ffffff;
}

.le-hero-dark .le-hero-btn-primary{
    background:#0b63ff;
    color:#ffffff;
    box-shadow:0 16px 35px rgba(11,99,255,.32);
}

.le-hero-dark .le-hero-btn-primary:hover{
    background:#1f73ff;
    color:#ffffff;
}

.le-hero-dark .le-hero-btn-secondary{
    background:rgba(255,255,255,.05);
    border:1px solid rgba(255,255,255,.25);
    color:#ffffff;
}

.le-hero-dark .le-hero-btn-secondary:hover{
    background:rgba(255,255,255,.12);
    color:#ffffff;
}

.le-hero-dark .le-hero-image::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:2;
    background:linear-gradient(
        90deg,
        #000d20 0%,
        rgba(0,13,32,.98) 4%,
        rgba(0,13,32,.90) 11%,
        rgba(0,13,32,.70) 20%,
        rgba(0,13,32,.42) 32%,
        rgba(0,13,32,.18) 45%,
        rgba(0,13,32,.05) 58%,
        rgba(0,13,32,0) 72%
    );
    pointer-events:none;
}

/* VERSION FOND BLANC */

.le-hero-light{
    background:#ffffff;
}

.le-hero-light .le-hero-container{
    background:#ffffff;
}

.le-hero-light h1{
    color:#000d20;
}

.le-hero-light p{
    color:#55657d;
}

.le-hero-light .le-hero-check p{
    color:#000d20;
}

.le-hero-light .le-hero-btn-primary{
    background:#1e2956;
    color:#ffffff;
    box-shadow:0 16px 35px rgba(11,99,255,.28);
}

.le-hero-light .le-hero-btn-primary:hover{
    background:#1f73ff;
    color:#ffffff;
}

.le-hero-light .le-hero-btn-secondary{
    background:#ffffff;
    color:#1e2956 ;
    border:1.5px solid #1e2956;
}

.le-hero-light .le-hero-btn-secondary:hover{
    background:#1f73ff;
    color:#ffffff;
    border:1.5px solid #1f73ff;
}

.le-hero-light .le-hero-image::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:2;
    background:linear-gradient(
        90deg,
        #ffffff 0%,
        rgba(255,255,255,.98) 3%,
        rgba(255,255,255,.82) 10%,
        rgba(255,255,255,.48) 18%,
        rgba(255,255,255,.16) 26%,
        rgba(255,255,255,.04) 34%,
        rgba(255,255,255,0) 42%
    );
    pointer-events:none;
}

/* RESPONSIVE */

@media(max-width:1200px){

    .le-hero-container{
        grid-template-columns:1fr;
        height:auto;
        min-height:auto;
    }

    .le-hero-content{
        min-height:auto;
        padding:90px 60px;
    }

    .le-hero-image{
        min-height:430px;
        clip-path:none;
    }

    .le-hero-dark .le-hero-image::before{
        background:linear-gradient(
            0deg,
            #000d20 0%,
            rgba(0,13,32,.25) 45%,
            rgba(0,13,32,0) 100%
        );
    }

    .le-hero-light .le-hero-image::before{
        background:linear-gradient(
            0deg,
            #ffffff 0%,
            rgba(255,255,255,.35) 42%,
            rgba(255,255,255,0) 100%
        );
    }

}

@media(max-width:768px){

    .le-hero-content{
        padding:70px 28px;
    }

    .le-hero h1{
        font-size:40px;
        letter-spacing:-1px;
    }

    .le-hero p{
        font-size:17px;
        line-height:1.7;
    }

    .le-hero-buttons{
        flex-direction:column;
        align-items:stretch;
    }

    .le-hero-btn{
        width:100%;
    }

    .le-hero-image{
        min-height:340px;
    }

}

/* ==================================================
   FEATURES HERO
================================================== */

.le-hero-features{
    display:flex;
    align-items:center;
    gap:34px;
    margin-top:46px;
}

.le-hero-feature{
    display:flex;
    align-items:center;
    gap:14px;
}

.le-hero-feature svg{
    width:34px;
    height:34px;
    fill:none;
    stroke:#0b63ff;
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round;
    flex-shrink:0;
}

.le-hero-feature span{
    color:#ffffff;
    font-size:16px;
    font-weight:700;
    line-height:1.45;
}

.le-hero-light .le-hero-feature span{
    color:#000d20;
}

@media(max-width:900px){
    .le-hero-features{
        flex-direction:column;
        align-items:flex-start;
        gap:20px;
    }
}

/* ==================================================
   HERO OUVRIR LAVERIE
================================================== */

.ouvrir-hero-features{
    gap:0;
}

.ouvrir-hero-features .le-hero-feature{
    position:relative;
    padding:0 28px;
}

.ouvrir-hero-features .le-hero-feature:first-child{
    padding-left:0;
}

.ouvrir-hero-features .le-hero-feature:last-child{
    padding-right:0;
}

.ouvrir-hero-features .le-hero-feature:not(:last-child)::after{

    content:"";

    position:absolute;

    top:50%;
    right:0;

    transform:translateY(-50%);

    width:1px;
    height:48px;

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

}

/* ==================================================
   HERO EQUIPEMENTS
================================================== */


.equip-hero{
    position:relative;
    width:100%;
    background:#000d20;
    overflow:hidden;
}

.equip-hero-inner{
    
    position:relative;

    width:100%;
  /*  min-height:560px; taille plus petit */ 
min-height:800px;
    height:800px;
    display:grid;
    grid-template-columns:49% 51%;

    background:#000d20;
}

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

/*.equip-hero-content{
    position:relative;
    z-index:3;

    min-height:800px;

    padding:
        90px
        48px
        96px
        max(54px,calc((100vw - 1700px) / 2 + 54px));

    display:flex;
    flex-direction:column;
    justify-content:center;
} ancien */

.equip-hero-content{
    position:relative;
    z-index:3;

    min-height:560px;

    padding:
        54px
        48px
        96px
        max(54px,calc((100vw - 1700px) / 2 + 54px));

    display:flex;
    flex-direction:column;
    justify-content:center;
}

/* FIL D’ARIANE */

.equip-breadcrumb{
    display:flex;
    align-items:center;
    gap:10px;

    margin-bottom:34px;

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

    font-size:14px;
    font-weight:600;
}

.equip-breadcrumb a{
    color:rgba(255,255,255,.72);
    text-decoration:none;

    transition:color .25s ease;
}

.equip-breadcrumb a:hover{
    color:#ffffff;
}

.equip-breadcrumb span:last-child{
    color:#ffffff;
}

/* TITRE */

.equip-hero h1{
    max-width:760px;

    margin:0 0 22px;

    color:#ffffff;

    font-size:54px;
    font-weight:900;
    line-height:1.08;
    letter-spacing:-1.4px;
}

.equip-hero h1 span{
    color:#2563eb;
}

/* DESCRIPTION */

.equip-hero-description{
    max-width:680px;

    margin:0 0 36px;

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

    font-size:18px;
    font-weight:500;
    line-height:1.65;
}

/* AVANTAGES */

.equip-hero-benefits{
    display:flex;
    align-items:center;
    flex-wrap:wrap;

    gap:26px 42px;
}

.equip-hero-benefit{
    display:flex;
    align-items:center;
    gap:13px;
}

.equip-hero-check{
    width:34px;
    height:34px;
    flex:0 0 34px;

    border:2px solid #2563eb;
    border-radius:50%;

    color:#2563eb;

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

.equip-hero-check svg{
    width:18px;
    height:18px;

    fill:none;
    stroke:currentColor;
    stroke-width:2.5;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.equip-hero-benefit strong,
.equip-hero-benefit small{
    display:block;
}

.equip-hero-benefit strong{
    color:#ffffff;

    font-size:15px;
    font-weight:800;
    line-height:1.25;
}

.equip-hero-benefit small{
    margin-top:2px;

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

    font-size:14px;
    font-weight:500;
    line-height:1.3;
}

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

/* .equip-hero-image{
    position:relative;

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

    overflow:hidden;
} ancien */

.equip-hero-image{
    position:relative;
    min-width:0;
    min-height:800px;
    overflow:hidden;
}


.equip-hero-image img{
    display:block;

    width:100%;
    height:100%;

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

    transform:scale(1.01);

    transition:transform 1s cubic-bezier(.22,.61,.36,1);
}

.equip-hero:hover .equip-hero-image img{
    transform:scale(1.035);
}

/* FONDU GAUCHE */

.equip-hero-image::before{
    content:"";

    position:absolute;
    inset:0;
    z-index:2;

    background:linear-gradient(
        90deg,
        #000d20 0%,
        rgba(0,13,32,.96) 7%,
        rgba(0,13,32,.78) 17%,
        rgba(0,13,32,.48) 29%,
        rgba(0,13,32,.20) 42%,
        rgba(0,13,32,.05) 57%,
        rgba(0,13,32,0) 70%
    );

    pointer-events:none;
}

/* VOILE GLOBAL */

.equip-hero-image::after{
    content:"";

    position:absolute;
    inset:0;
    z-index:1;

    background:rgba(0,13,32,.10);

    pointer-events:none;
}

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

@media(max-width:1200px){

    .equip-hero-inner{
        grid-template-columns:1fr;
    }

    .equip-hero-content{
        min-height:auto;
        padding:90px 60px 80px;
    }

    .equip-hero-image{
        min-height:420px;
    }

    .equip-hero-image::before{
        background:linear-gradient(
            180deg,
            #000d20 0%,
            rgba(0,13,32,.62) 18%,
            rgba(0,13,32,.12) 55%,
            rgba(0,13,32,0) 80%
        );
    }

}

@media(max-width:768px){

    .equip-hero-content{
        padding:72px 26px 70px;
    }

    .equip-breadcrumb{
        margin-bottom:26px;
    }

    .equip-hero h1{
        font-size:39px;
        letter-spacing:-.8px;
    }

    .equip-hero-description{
        font-size:16px;
    }

    .equip-hero-benefits{
        flex-direction:column;
        align-items:flex-start;
        gap:18px;
    }

    .equip-hero-image{
        min-height:300px;
    }

}

/* ==================================================
   PAGE ACCUEIL
================================================== */

.home-page .le-hero-container{
    min-height:800px;
}

/* Centre le texte avec le check */

.home-page .le-hero-check{
    display:flex;
    align-items:center;
    gap:10px;
}

.home-page .le-hero-check span{
    display:flex;
    align-items:center;
    justify-content:center;
    width:26px;
    height:26px;
    min-width:26px;
    line-height:1;
}

.home-page .le-hero-check p{
    margin:0;
    line-height:1;
    padding-bottom: 0px;
}

/* Responsive */

@media (max-width:991px){

    .home-page .le-hero-container{
        min-height:auto;
    }

}