.elementor-15 .elementor-element.elementor-element-5ebe749{--display:flex;}.elementor-15 .elementor-element.elementor-element-b4a8877{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-15 .elementor-element.elementor-element-ba7d022{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-15 .elementor-element.elementor-element-d1e6bba{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-15 .elementor-element.elementor-element-d31132f{--display:flex;}.elementor-15 .elementor-element.elementor-element-3a5c179{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-15 .elementor-element.elementor-element-1a166e2{--display:flex;}.elementor-15 .elementor-element.elementor-element-85b25f4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS for html, class: .elementor-element-70702a8 */.vixa-hero{
    background:#0c2847;
    overflow:hidden;
}

/* CONTAINER */

.vixa-container{
    width:100%;
    max-width:1100px;
    margin:auto;
    padding:0 20px;
}

/* GRID */

.vixa-hero-grid{
    display:grid;
    grid-template-columns:1.1fr .8fr;
    gap:70px;
    padding:80px 0;
    align-items:center;
}

/* LEFT */

.vixa-top-badge{
    width:fit-content;
    display:flex;
    align-items:center;
    gap:10px;
    background:rgba(23,184,157,.08);
    border:1px solid rgba(23,184,157,.15);
    color:#fff;
    padding:10px 14px;
    border-radius:6px;
    font-size:11px;
    font-weight:700;
    letter-spacing:.14em;
    text-transform:uppercase;
    margin-bottom:28px;
}

.dot{
    width:8px;
    height:8px;
    border-radius:50%;
    background:#18b89d;
}

/* TITLE */

.vixa-hero-left h1{
    font-family:'Barlow Condensed',sans-serif;
    font-size:92px;
    line-height:.9;
    text-transform:uppercase;
    color:#fff;
    margin-bottom:28px;
}

.vixa-hero-left h1 span{
    color:#56d7c0;
}

/* TEXT */

.vixa-hero-left p{
    max-width:560px;
    color:rgba(255,255,255,.68);
    font-size:16px;
    line-height:1.9;
    margin-bottom:28px;
}

/* TAGS */

.vixa-client-tags{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-bottom:34px;
}

.vixa-client-tags span{
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.08);
    color:#fff;
    font-size:11px;
    font-weight:600;
    padding:10px 12px;
    border-radius:6px;
}

/* BUTTONS */

.vixa-hero-buttons{
    display:flex;
    gap:14px;
    flex-wrap:wrap;
}

.vixa-hero-buttons a{
    height:52px;
    padding:0 26px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:6px;
    text-decoration:none;
    font-size:14px;
    font-weight:700;
    transition:.3s;
}

.btn-primary{
    background:#17b89d;
    color:#fff;
}

.btn-primary:hover{
    background:#14a28b;
}

.btn-secondary{
    border:1px solid rgba(255,255,255,.18);
    color:#fff;
}

/* RIGHT */

.vixa-hero-right{
    display:flex;
    flex-direction:column;
    gap:14px;
}

/* FEATURE CARD */

.vixa-feature-card{
    background:rgba(255,255,255,.05);
    border:1px solid rgba(255,255,255,.06);
    border-radius:10px;
    padding:18px;
    display:flex;
    align-items:flex-start;
    gap:16px;
}

.feature-icon{
    width:42px;
    height:42px;
    border-radius:8px;
    background:#18b89d;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:16px;
    flex-shrink:0;
}

.vixa-feature-card h3{
    font-family:'Barlow Condensed',sans-serif;
    font-size:24px;
    line-height:1;
    text-transform:uppercase;
    color:#fff;
    margin-bottom:8px;
}

.vixa-feature-card p{
    color:rgba(255,255,255,.5);
    font-size:13px;
}

/* STATS */

.vixa-stats{
    background:#17b89d;
    display:grid;
    grid-template-columns:repeat(4,1fr);
}

.vixa-stat{
    padding:26px;
    text-align:center;
    border-right:1px solid rgba(255,255,255,.12);
}

.vixa-stat:last-child{
    border-right:none;
}

.vixa-stat strong{
    display:block;
    font-family:'Barlow Condensed',sans-serif;
    font-size:54px;
    line-height:1;
    text-transform:uppercase;
    color:#fff;
    margin-bottom:8px;
}

.vixa-stat span{
    color:rgba(255,255,255,.7);
    font-size:11px;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
}

/* MOBILE */

@media(max-width:980px){

    .vixa-hero-grid{
        grid-template-columns:1fr;
        gap:45px;
        padding:60px 0;
    }

    .vixa-hero-left h1{
        font-size:62px;
    }

    .vixa-stats{
        grid-template-columns:1fr 1fr;
    }

    .vixa-stat{
        border-bottom:1px solid rgba(255,255,255,.12);
    }

}

@media(max-width:600px){

    .vixa-hero-left h1{
        font-size:52px;
    }

    .vixa-feature-card h3{
        font-size:20px;
    }

    .vixa-stats{
        grid-template-columns:1fr;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7f37759 */html{
    scroll-behavior:smooth;
}

section{
    scroll-margin-top:100px;
}

/* SECTION */

.vixa-secteurs{
    background:#f4f6f9;
    padding:90px 0;
}

/* CONTAINER */

.vixa-container{
    width:100%;
    max-width:1180px;
    margin:auto;
    padding:0 20px;
}

/* HEADER */

.vixa-secteurs-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:60px;
    margin-bottom:45px;
}

.vixa-label{
    display:block;
    margin-bottom:14px;
    color:#18b89d;
    font-size:11px;
    font-weight:700;
    letter-spacing:.22em;
    text-transform:uppercase;
}

.vixa-secteurs-head h2{
    font-family:'Barlow Condensed',sans-serif;
    font-size:58px;
    line-height:.95;
    text-transform:uppercase;
    color:#0c2847;
}

.vixa-secteurs-head h2 span{
    color:#18b89d;
}

.vixa-secteurs-head p{
    max-width:340px;
    color:#6c7784;
    font-size:15px;
    line-height:1.8;
    padding-top:10px;
}

/* GRID */

.vixa-secteurs-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
    margin-bottom:40px;
}

/* CARD */

.vixa-secteur-card{
    position:relative;
    background:#fff;
    border:1px solid #dde4eb;
    border-radius:14px;
    padding:28px;
    overflow:hidden;
    transition:.3s;
}

.vixa-secteur-card:hover{
    transform:translateY(-4px);
    box-shadow:0 10px 30px rgba(0,0,0,.05);
}

.vixa-secteur-card.active{
    background:#eef7f5;
}

/* NUMBER */

.vixa-number{
    position:absolute;
    top:18px;
    right:18px;
    font-family:'Barlow Condensed',sans-serif;
    font-size:54px;
    color:#edf1f4;
    line-height:1;
    font-weight:700;
}

/* ICON */

.vixa-icon{
    width:46px;
    height:46px;
    border-radius:10px;
    background:#0c2847;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:18px;
    margin-bottom:20px;
    position:relative;
    z-index:2;
}

/* TEXT */

.vixa-secteur-card h3{
    position:relative;
    z-index:2;
    font-family:'Barlow Condensed',sans-serif;
    font-size:28px;
    line-height:1;
    text-transform:uppercase;
    color:#0c2847;
    margin-bottom:14px;
}

.vixa-secteur-card p{
    position:relative;
    z-index:2;
    color:#6f7b88;
    font-size:14px;
    line-height:1.8;
    margin-bottom:18px;
}

/* TAGS */

.vixa-tags{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    position:relative;
    z-index:2;
}

.vixa-tags span{
    background:#eef7f5;
    color:#169f89;
    font-size:10px;
    font-weight:700;
    padding:7px 9px;
    border-radius:4px;
    text-transform:uppercase;
}

/* BANNER */

.vixa-banner{
    position:relative;
    height:280px;
    border-radius:14px;
    overflow:hidden;
}

.vixa-banner img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.vixa-banner-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(
        90deg,
        rgba(12,40,71,.82),
        rgba(12,40,71,.15)
    );
}

.vixa-banner-content{
    position:absolute;
    left:38px;
    bottom:38px;
    max-width:420px;
}

.vixa-banner-content h3{
    font-family:'Barlow Condensed',sans-serif;
    font-size:52px;
    line-height:.92;
    text-transform:uppercase;
    color:#fff;
    margin-bottom:14px;
}

.vixa-banner-content h3 span{
    display:block;
    color:#29d3b5;
}

.vixa-banner-content p{
    color:rgba(255,255,255,.72);
    font-size:15px;
    line-height:1.8;
}

/* MOBILE */

@media(max-width:980px){

    .vixa-secteurs{
        padding:70px 0;
    }

    .vixa-secteurs-head{
        flex-direction:column;
        gap:20px;
    }

    .vixa-secteurs-head h2{
        font-size:42px;
    }

    .vixa-secteurs-grid{
        grid-template-columns:1fr;
    }

    .vixa-banner{
        height:240px;
    }

    .vixa-banner-content{
        left:24px;
        right:24px;
        bottom:24px;
    }

    .vixa-banner-content h3{
        font-size:36px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5b8b646 */.vixa-gammes{
    background:#f4f6f9;
    padding:90px 0;
}

/* CONTAINER */

.vixa-container{
    width:100%;
    max-width:1100px;
    margin:auto;
    padding:0 20px;
}

/* HEADER */

.vixa-gammes-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:60px;
    margin-bottom:45px;
}

.vixa-gammes-label{
    display:block;
    color:#18b89d;
    font-size:11px;
    font-weight:700;
    letter-spacing:.22em;
    text-transform:uppercase;
    margin-bottom:14px;
}

.vixa-gammes-head h2{
    font-family:'Barlow Condensed',sans-serif;
    font-size:58px;
    line-height:.95;
    text-transform:uppercase;
    color:#0c2847;
    max-width:520px;
}

.vixa-gammes-head h2 span{
    color:#18b89d;
}

.vixa-gammes-head p{
    max-width:350px;
    color:#6c7784;
    font-size:15px;
    line-height:1.8;
    padding-top:12px;
}

/* GRID */

.vixa-gammes-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}

/* CARD */

.vixa-gamme-card{
    background:#fff;
    border:1px solid #dde4eb;
    border-radius:14px;
    overflow:hidden;
    transition:.3s;
}

.vixa-gamme-card:hover{
    transform:translateY(-4px);
    box-shadow:0 10px 25px rgba(0,0,0,.05);
}

/* IMAGE */

.vixa-gamme-image{
    position:relative;
    height:185px;
    overflow:hidden;
}

.vixa-gamme-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

/* BADGE */

.vixa-badge{
    position:absolute;
    left:14px;
    bottom:14px;
    background:#17b89d;
    color:#fff;
    font-size:10px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.12em;
    padding:7px 10px;
    border-radius:4px;
}

/* CONTENT */

.vixa-gamme-content{
    padding:20px;
}

.vixa-gamme-content h3{
    font-family:'Barlow Condensed',sans-serif;
    font-size:28px;
    line-height:1;
    text-transform:uppercase;
    color:#0c2847;
    margin-bottom:12px;
}

.vixa-gamme-content p{
    color:#6f7b88;
    font-size:14px;
    line-height:1.8;
    margin-bottom:16px;
}

/* TAGS */

.vixa-tags{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.vixa-tags span{
    background:#eef7f5;
    color:#169f89;
    font-size:10px;
    font-weight:700;
    padding:7px 9px;
    border-radius:4px;
    text-transform:uppercase;
}

/* MOBILE */

@media(max-width:980px){

    .vixa-gammes{
        padding:70px 0;
    }

    .vixa-gammes-head{
        flex-direction:column;
        gap:20px;
    }

    .vixa-gammes-head h2{
        font-size:42px;
    }

    .vixa-gammes-grid{
        grid-template-columns:1fr;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6201e1d */.vixa-avantages{
    background:#fff;
    padding:90px 0;
}

/* CONTAINER */

.vixa-container{
    width:100%;
    max-width:1100px;
    margin:auto;
    padding:0 20px;
}

/* HEADER */

.vixa-avantages-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:60px;
    margin-bottom:55px;
}

.vixa-label{
    display:block;
    color:#17b89d;
    font-size:11px;
    font-weight:700;
    letter-spacing:.22em;
    text-transform:uppercase;
    margin-bottom:16px;
}

.vixa-avantages-head h2{
    font-family:'Barlow Condensed',sans-serif;
    font-size:58px;
    line-height:.95;
    text-transform:uppercase;
    color:#0c2847;
}

.vixa-avantages-head h2 span{
    color:#17b89d;
}

.vixa-avantages-head p{
    max-width:360px;
    color:#687483;
    font-size:15px;
    line-height:1.8;
    padding-top:14px;
}

/* GRID */

.vixa-avantages-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:38px 70px;
}

/* ITEM */

.vixa-avantage{
    display:flex;
    align-items:flex-start;
    gap:18px;
}

/* ICON */

.vixa-icon{
    width:42px;
    height:42px;
    border-radius:10px;
    background:#0c2847;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:18px;
    flex-shrink:0;
}

/* TEXT */

.vixa-avantage h3{
    font-family:'Barlow Condensed',sans-serif;
    font-size:26px;
    line-height:1;
    text-transform:uppercase;
    color:#0c2847;
    margin-bottom:10px;
}

.vixa-avantage p{
    color:#6f7b88;
    font-size:14px;
    line-height:1.8;
}

/* MOBILE */

@media(max-width:900px){

    .vixa-avantages{
        padding:70px 0;
    }

    .vixa-avantages-head{
        flex-direction:column;
        gap:20px;
        margin-bottom:45px;
    }

    .vixa-avantages-head h2{
        font-size:42px;
    }

    .vixa-avantages-grid{
        grid-template-columns:1fr;
        gap:28px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-bc2b300 */.vixa-process{
    background:#f4f6f9;
    padding:90px 0;
}

/* CONTAINER */

.vixa-container{
    width:100%;
    max-width:1100px;
    margin:auto;
    padding:0 20px;
}

/* HEAD */

.vixa-process-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:60px;
    margin-bottom:70px;
}

.vixa-process-label{
    display:block;
    color:#18b89d;
    font-size:11px;
    font-weight:700;
    letter-spacing:.22em;
    text-transform:uppercase;
    margin-bottom:16px;
}

.vixa-process-head h2{
    font-family:'Barlow Condensed',sans-serif;
    font-size:56px;
    line-height:.95;
    text-transform:uppercase;
    color:#0d2a49;
}

.vixa-process-head h2 span{
    color:#18b89d;
}

.vixa-process-head p{
    max-width:330px;
    color:#677483;
    font-size:15px;
    line-height:1.8;
    padding-top:14px;
}

/* TIMELINE */

.vixa-timeline{
    position:relative;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:25px;
}

/* LINE */

.vixa-line{
    position:absolute;
    top:22px;
    left:12%;
    right:12%;
    height:2px;
    background:#0d2a49;
    z-index:1;
}

/* STEP */

.vixa-step{
    position:relative;
    z-index:2;
    text-align:center;
}

/* NUMBER */

.vixa-step-number{
    width:44px;
    height:44px;
    border-radius:50%;
    background:#0d2a49;
    color:#fff;
    margin:auto;
    display:flex;
    align-items:center;
    justify-content:center;
    font-family:'Barlow Condensed',sans-serif;
    font-size:18px;
    font-weight:700;
    margin-bottom:20px;
}

.vixa-step-number.active{
    background:#18b89d;
}

/* TITLES */

.vixa-step h3{
    font-family:'Barlow Condensed',sans-serif;
    font-size:22px;
    line-height:1.1;
    text-transform:uppercase;
    color:#0d2a49;
    margin-bottom:12px;
}

/* TEXT */

.vixa-step p{
    color:#6f7b88;
    font-size:14px;
    line-height:1.8;
    max-width:220px;
    margin:auto;
}

/* MOBILE */

@media(max-width:900px){

    .vixa-process{
        padding:70px 0;
    }

    .vixa-process-head{
        flex-direction:column;
        gap:20px;
        margin-bottom:50px;
    }

    .vixa-process-head h2{
        font-size:42px;
    }

    .vixa-timeline{
        grid-template-columns:1fr;
        gap:45px;
    }

    .vixa-line{
        display:none;
    }

    .vixa-step p{
        max-width:100%;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b4aa82c */.split-section{
    display:grid;
    grid-template-columns:1fr 1fr;
    min-height:720px;
    width:100%;
}

/* IMAGE */

.split-image{
    position:relative;
    overflow:hidden;
}

.split-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

/* CONTENT */

.split-content{
    background:#06264a;
    padding:90px 20px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.split-label{
    color:#20d1b2;
    font-size:13px;
    font-weight:700;
    letter-spacing:.25em;
    text-transform:uppercase;
    margin-bottom:20px;
}

.split-content h2{
    font-family:'Barlow Condensed',sans-serif;
    font-size:58px;
    line-height:.95;
    text-transform:uppercase;
    color:#fff;
    margin-bottom:25px;
}

.split-content h2 span{
    color:#27d3b7;
}

.split-content p{
    color:rgba(255,255,255,.72);
    font-size:18px;
    line-height:1.8;
    margin-bottom:40px;
    max-width:700px;
}

/* LIST */

.split-list{
    list-style:none;
    display:flex;
    flex-direction:column;
    gap:20px;
    margin-bottom:45px;
}

.split-list li{
    display:flex;
    align-items:center;
    gap:15px;
    color:#fff;
    font-size:18px;
}

.check{
    width:34px;
    height:34px;
    border-radius:50%;
    background:#11b89c;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:700;
    flex-shrink:0;
}

/* BUTTON */

.split-btn{
    width:fit-content;
    padding:18px 34px;
    background:#12b89d;
    color:#fff;
    text-decoration:none;
    border-radius:8px;
    font-weight:700;
    transition:.3s;
}

.split-btn:hover{
    transform:translateY(-2px);
    background:#0fa58d;
}

/* MOBILE */

@media(max-width:980px){

    .split-section{
        grid-template-columns:1fr;
    }

    .split-image{
        height:420px;
    }

    .split-content{
        padding:60px 30px;
    }

    .split-content h2{
        font-size:52px;
    }

    .split-content p{
        font-size:17px;
    }

    .split-list li{
        font-size:16px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f361624 */.services-annexes{
    background:#f4f6f9;
    padding:110px 0;
}

/* HEAD */

.services-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:60px;
    margin-bottom:45px;
}

.services-label{
    display:block;
    color:#18b89d;
    font-size:12px;
    font-weight:700;
    letter-spacing:.2em;
    text-transform:uppercase;
    margin-bottom:12px;
}

.services-head h2{
    font-family:'Barlow Condensed',sans-serif;
    font-size:64px;
    line-height:1;
    text-transform:uppercase;
    color:#08284a;
}

.services-head h2 span{
    color:#18b89d;
}

.services-head p{
    max-width:420px;
    color:#5e6975;
    font-size:18px;
    line-height:1.8;
    padding-top:18px;
}

/* BANNER */

.services-banner{
    background:#08284a;
    border-radius:14px;
    padding:35px;
    display:flex;
    gap:20px;
    align-items:flex-start;
    margin-bottom:35px;
}

.banner-icon{
    width:42px;
    height:42px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.2);
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    flex-shrink:0;
}

.services-banner h3{
    font-family:'Barlow Condensed',sans-serif;
    font-size:26px;
    text-transform:uppercase;
    color:#fff;
    margin-bottom:10px;
}

.services-banner p{
    color:rgba(255,255,255,.55);
    line-height:1.8;
    max-width:700px;
}

/* GRID */

.services-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
}

/* CARD */

.service-card{
    background:#fff;
    border:1px solid #dde4eb;
    border-radius:14px;
    padding:32px 26px;
    transition:.3s;
}

.service-card:hover{
    transform:translateY(-4px);
    box-shadow:0 12px 30px rgba(0,0,0,.06);
}

.service-icon{
    width:46px;
    height:46px;
    border-radius:10px;
    background:#f4f6f9;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#08284a;
    font-size:20px;
    margin-bottom:24px;
}

.service-card h3{
    font-family:'Barlow Condensed',sans-serif;
    font-size:26px;
    line-height:1.1;
    text-transform:uppercase;
    color:#08284a;
    margin-bottom:14px;
}

.service-card p{
    color:#7a8694;
    line-height:1.8;
    font-size:15px;
}

/* MOBILE */

@media(max-width:980px){

    .services-head{
        flex-direction:column;
        gap:20px;
    }

    .services-head h2{
        font-size:46px;
    }

    .services-grid{
        grid-template-columns:1fr;
    }

    .services-banner{
        flex-direction:column;
    }

}/* End custom CSS */