.elementor-8327 .elementor-element.elementor-element-2df0107{--display:flex;}.elementor-8327 .elementor-element.elementor-element-8f40468{margin:100px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-8327 .elementor-element.elementor-element-e89563f{--display:flex;}.elementor-8327 .elementor-element.elementor-element-ce80799{--display:flex;}.elementor-8327 .elementor-element.elementor-element-81ec1c7{--display:flex;}/* Start custom CSS for html, class: .elementor-element-4246ae4 *//*==================================================
HERO INSERTS
Le Salonais
==================================================*/

.salonais-insert-hero{

    position:relative;

    overflow:hidden;

    padding:120px 70px;

    border-radius:40px;

    margin:40px 0 20px;

    background:
    radial-gradient(circle at top left,
    rgba(124,92,255,.18),
    transparent 40%),

    radial-gradient(circle at bottom right,
    rgba(0,205,255,.12),
    transparent 35%),

    linear-gradient(135deg,#12141b,#191d27);

    color:white;

    box-shadow:
    0 35px 80px rgba(0,0,0,.18);

}

.insert-bg-decoration{

    position:absolute;

    width:520px;
    height:520px;

    right:-150px;
    top:-180px;

    border-radius:50%;

    background:

    radial-gradient(circle,
    rgba(124,92,255,.25),
    transparent 70%);

    filter:blur(40px);

    pointer-events:none;

}

.insert-hero-content{

    position:relative;

    max-width:900px;

    z-index:2;
    

}

.insert-badge{

    display:inline-block;

    padding:12px 22px;

    border-radius:999px;

    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.12);

    font-size:14px;

    font-weight:700;

    letter-spacing:1px;

    text-transform:uppercase;

    margin-bottom:28px;

}

.salonais-insert-hero h1{

    font-size:66px;

    line-height:1.05;

    font-weight:800;

    margin-bottom:28px;
    
    color:#fff;

}

.insert-subtitle{

    max-width:760px;

    font-size:21px;

    line-height:1.9;

    color:rgba(255,255,255,.78);

    margin-bottom:55px;

}

.insert-subtitle strong{

    color:white;

}

.insert-features{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:22px;

}

.insert-feature{

    padding:22px;

    border-radius:22px;

    background:rgba(255,255,255,.06);

    backdrop-filter:blur(10px);

    border:1px solid rgba(255,255,255,.08);

    font-size:18px;

    font-weight:700;

    text-align:center;

    transition:.3s;

}

.insert-feature:hover{

    transform:translateY(-6px);

    background:rgba(255,255,255,.1);

    border-color:#7c5cff;

}

/**********************
Responsive
**********************/

@media(max-width:1024px){

.insert-features{

grid-template-columns:repeat(2,1fr);

}

.salonais-insert-hero h1{

font-size:50px;

}

}

@media(max-width:768px){

.salonais-insert-hero{

padding:70px 30px;

border-radius:24px;

}

.salonais-insert-hero h1{

font-size:38px;

}

.insert-subtitle{

font-size:17px;

line-height:1.7;

}

.insert-features{

grid-template-columns:1fr;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8f40468 *//*=====================================
POURQUOI CET INSERT
======================================*/

.salonais-benefits{

    margin:40px 0;

}

.benefits-header{

    max-width:900px;

    margin:auto;

    text-align:center;

    margin-bottom:70px;

}

.benefits-badge{

    display:inline-block;

    padding:10px 20px;

    border-radius:999px;

    background:#f3f4ff;

    color:#6d59ff;

    font-weight:700;

    margin-bottom:22px;

}

.benefits-header h2{

    font-size:54px;

    line-height:1.1;

    margin-bottom:25px;

    font-weight:800;

}

.benefits-header p{

    font-size:20px;

    color:#666;

    line-height:1.8;

}

/* GRID */

.benefits-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:28px;

}

/* CARTE */

.benefit-card{

    position:relative;

    overflow:hidden;

    padding:38px;

    border-radius:28px;

    background:white;

    box-shadow:
    0 18px 45px rgba(0,0,0,.08);

    transition:.35s;

}

.benefit-card:hover{

    transform:translateY(-10px);

    box-shadow:
    0 30px 60px rgba(0,0,0,.12);

}

.benefit-icon{

    width:72px;

    height:72px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:18px;

    background:#eef1ff;

    font-size:34px;

    margin-bottom:28px;

}

.benefit-card h3{

    font-size:28px;

    margin-bottom:18px;

    font-weight:700;

}

.benefit-card p{

    color:#666;

    font-size:17px;

    line-height:1.8;

}

/* CARTE PREMIUM */

.featured{

    background:linear-gradient(145deg,#181d26,#222935);

    color:white;

}

.featured p{

    color:rgba(255,255,255,.78);

}

.featured .benefit-icon{

    background:rgba(255,255,255,.08);

}

.benefit-glow{

    position:absolute;

    width:220px;

    height:220px;

    border-radius:50%;

    background:rgba(124,92,255,.22);

    filter:blur(70px);

    top:-80px;

    right:-80px;

}

/********************/

@media(max-width:1024px){

.benefits-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.benefits-header h2{

font-size:38px;

}

.benefits-header p{

font-size:17px;

}

.benefits-grid{

grid-template-columns:1fr;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4e17597 *//*========================================
CONTENU DE L'INSERT
========================================*/

.salonais-modules{

    margin:50px 0;

}

.modules-header{

    max-width:900px;

    margin:auto;

    text-align:center;

    margin-bottom:70px;

}

.modules-badge{

    display:inline-block;

    padding:10px 20px;

    border-radius:999px;

    background:#eef3ff;

    color:#6d59ff;

    font-weight:700;

    margin-bottom:22px;

}

.modules-header h2{

    font-size:54px;

    line-height:1.1;

    margin-bottom:22px;

    font-weight:800;

}

.modules-header p{

    font-size:20px;

    color:#666;

    line-height:1.8;

}

/* GRID */

.modules-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

}

/* CARTE */

.module-card{

    position:relative;

    overflow:hidden;

    padding:32px;

    border-radius:26px;

    background:#ffffff;

    box-shadow:
    0 15px 40px rgba(0,0,0,.08);

    transition:.35s;

}

.module-card:hover{

    transform:translateY(-8px);

    box-shadow:
    0 25px 55px rgba(0,0,0,.13);

}

.module-icon{

    width:68px;

    height:68px;

    border-radius:18px;

    background:#eef3ff;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:30px;

    margin-bottom:22px;

}

.module-card h3{

    font-size:24px;

    margin-bottom:15px;

    font-weight:700;

}

.module-card p{

    font-size:16px;

    line-height:1.8;

    color:#666;

}

/* CARTE PREMIUM */

.module-card.featured{

    background:linear-gradient(145deg,#181d26,#232b38);

    color:white;

}

.module-card.featured p{

    color:rgba(255,255,255,.78);

}

.module-card.featured .module-icon{

    background:rgba(255,255,255,.08);

}

.module-glow{

    position:absolute;

    width:220px;

    height:220px;

    border-radius:50%;

    background:rgba(0,210,255,.18);

    filter:blur(70px);

    right:-80px;

    top:-80px;

}

/* TABLET */

@media(max-width:1100px){

.modules-grid{

grid-template-columns:repeat(2,1fr);

}

}

/* MOBILE */

@media(max-width:768px){

.modules-header h2{

font-size:38px;

}

.modules-header p{

font-size:17px;

}

.modules-grid{

grid-template-columns:1fr;

}

.module-card{

padding:28px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ca4f520 *//*=========================================
TIMELINE
=========================================*/

.salonais-timeline{

    margin:50px 0;

}

.timeline-header{

    text-align:center;

    max-width:900px;

    margin:auto;

    margin-bottom:80px;

}

.timeline-badge{

    display:inline-block;

    padding:10px 22px;

    border-radius:999px;

    background:#eef3ff;

    color:#6d59ff;

    font-weight:700;

    margin-bottom:22px;

}

.timeline-header h2{

    font-size:54px;

    font-weight:800;

    line-height:1.1;

    margin-bottom:22px;

}

.timeline-header p{

    font-size:20px;

    color:#666;

    line-height:1.8;

}

/* CONTENEUR */

.timeline{

    position:relative;

    max-width:1000px;

    margin:auto;

}

/* Ligne centrale */

.timeline:before{

    content:"";

    position:absolute;

    left:40px;

    top:0;

    bottom:0;

    width:4px;

    border-radius:10px;

    background:#e7e7e7;

}

/* ITEM */

.timeline-item{

    position:relative;

    display:flex;

    gap:35px;

    margin-bottom:50px;

    align-items:flex-start;

}

.timeline-number{

    position:relative;

    z-index:2;

    width:80px;

    height:80px;

    flex-shrink:0;

    border-radius:50%;

    background:white;

    box-shadow:

    0 15px 40px rgba(0,0,0,.12);

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:34px;

    font-weight:800;

    color:#6d59ff;

}

.timeline-content{

    flex:1;

    background:white;

    padding:35px;

    border-radius:28px;

    box-shadow:

    0 15px 45px rgba(0,0,0,.08);

    transition:.35s;

}

.timeline-content:hover{

    transform:translateY(-6px);

}

.timeline-content h3{

    font-size:30px;

    margin-bottom:18px;

}

.timeline-content p{

    font-size:17px;

    line-height:1.8;

    color:#666;

}

/* ETAPE MISE EN AVANT */

.timeline-item.featured .timeline-content{

    background:linear-gradient(145deg,#181d26,#232b38);

    color:white;

}

.timeline .featured {
        background:transparent;
}

.timeline-item.featured p{

    color:rgba(255,255,255,.78);

}

.timeline-item.featured .timeline-number{

    background:#6d59ff;

    color:white;

}

.timeline-glow{

    position:absolute;

    width:220px;

    height:220px;

    right:50px;

    top:-60px;

    background:rgba(109,89,255,.18);

    filter:blur(70px);

    border-radius:50%;

    pointer-events:none;

}

/* MOBILE */

@media(max-width:768px){

.timeline:before{

left:24px;

}

.timeline-item{

gap:20px;

}

.timeline-number{

width:48px;

height:48px;

font-size:20px;

}

.timeline-content{

padding:24px;

}

.timeline-header h2{

font-size:38px;

}

.timeline-header p{

font-size:17px;

}

.timeline-content h3{

font-size:24px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7912c68 *//*=====================================
COMPATIBILITÉ
======================================*/

.salonais-compatibility{

    margin:150px 0;

}

.compatibility-header{

    max-width:900px;

    margin:auto;

    text-align:center;

    margin-bottom:70px;

}

.compatibility-badge{

    display:inline-block;

    padding:10px 22px;

    border-radius:999px;

    background:#eef3ff;

    color:#6d59ff;

    font-weight:700;

    margin-bottom:20px;

}

.compatibility-header h2{

    font-size:54px;

    font-weight:800;

    line-height:1.1;

    margin-bottom:22px;

}

.compatibility-header p{

    font-size:20px;

    line-height:1.8;

    color:#666;

}

/* GRID */

.compatibility-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:35px;

}

/* CARD */

.compat-card{

    position:relative;

    overflow:hidden;

    padding:45px;

    border-radius:32px;

    background:#fff;

    box-shadow:
    0 20px 55px rgba(0,0,0,.08);

    transition:.35s;

}

.compat-card:hover{

    transform:translateY(-8px);

}

/* SUCCESS */

.compat-card.success{

    border-left:8px solid #27c46b;

}

/* WARNING */

.compat-card.warning{

    border-left:8px solid #ff9d00;

}

/* ICON */

.compat-icon{

    width:80px;

    height:80px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:20px;

    background:#f5f5f5;

    font-size:36px;

    margin-bottom:30px;

}

.compat-card h3{

    font-size:32px;

    margin-bottom:25px;

    font-weight:700;

}

/* LISTE */

.compat-card ul{

    list-style:none;

    padding:0;

    margin:0 0 25px;

}

.compat-card li{

    position:relative;

    padding-left:32px;

    margin-bottom:18px;

    font-size:17px;

    line-height:1.7;

}

.compat-card.success li:before{

    content:"✔";

    position:absolute;

    left:0;

    color:#27c46b;

    font-weight:700;

}

.compat-card.warning li:before{

    content:"✖";

    position:absolute;

    left:0;

    color:#ff9d00;

    font-weight:700;

}

.compat-card small{

    display:block;

    padding-top:20px;

    border-top:1px solid #eee;

    color:#888;

    font-size:14px;

    line-height:1.7;

}

/* RESPONSIVE */

@media(max-width:900px){

.compatibility-grid{

grid-template-columns:1fr;

}

}

@media(max-width:768px){

.compatibility-header h2{

font-size:38px;

}

.compatibility-header p{

font-size:17px;

}

.compat-card{

padding:30px;

}

.compat-card h3{

font-size:26px;

}

.compat-card li{

font-size:16px;

}

}/* End custom CSS */