/*=========================================================
QUI SOMMES-NOUS
=========================================================*/

.about-company{

    padding:120px 0;

    background:#fff;

}

.about-image{

    position:relative;

    overflow:hidden;

    border-radius:24px;

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

}

.about-image img{

    width:100%;

    display:block;

    transition:.6s;

}

.about-image:hover img{

    transform:scale(1.08);

}

.experience-card{

    position:absolute;

    left:30px;

    bottom:30px;

    width:230px;

    background:#ffffff;

    padding:25px;

    border-radius:20px;

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

}

.experience-card span{

    color:#fff;

    font-weight:700;

    text-transform:uppercase;

    letter-spacing:1px;

    font-size:13px;

}

.experience-card h2{

    font-size:52px;

    color:#fff;

    font-weight:800;

    margin:8px 0;

}

.about-company p{

    color:#666;

    line-height:1.9;

    margin-top:20px;

}


.experience-card p{

    margin:0;

    color:#fff;

    font-size:15px;

}

.about-list{

    display:grid;

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

    gap:18px;

    margin-top:35px;

}

.about-item{

    display:flex;

    align-items:center;

    gap:12px;

    font-weight:600;

}

.about-item i{

    color:var(--primary);

    font-size:20px;

}

@media(max-width:991px){

.about-company{

    padding:80px 0;

}

.about-list{

    grid-template-columns:1fr;

}

.experience-card{

    left:15px;

    bottom:15px;

    width:200px;

    padding:20px;

}

.experience-card h2{

    font-size:40px;

}

}

.section-divider{

    display:flex;

    justify-content:center;

    margin:0 auto;

    width:100%;

    background:#fff;

}

.section-divider span{

    width:120px;

    height:5px;

    border-radius:20px;

    background:linear-gradient(90deg,#0E4EA6,#3EA6FF);

}

.wave-transition{

    line-height:0;

    background:#fff;

}

.wave-transition svg{

    display:block;

    width:100%;

    height:80px;

}

/*=========================================================
NOTRE HISTOIRE
=========================================================*/

.our-history{

    padding:140px 0;

    background:linear-gradient(
        180deg,
        #F8FAFC 0%,
        #EEF4FB 100%
    );

    position:relative;

}

.history-timeline{

    position:relative;

    max-width:900px;

    margin:70px auto 0;

}

.history-timeline::before{

    content:"";

    position:absolute;

    left:50%;

    top:0;

    width:4px;

    height:100%;

    background:var(--primary);

    transform:translateX(-50%);

}

.history-item{

    position:relative;

    width:50%;

    padding:0 50px 60px;

}

.history-item:nth-child(odd){

    left:0;

    text-align:right;

}

.history-item:nth-child(even){

    left:50%;

}

.history-year{

    display:inline-block;

    background:var(--primary);

    color:#fff;

    padding:10px 24px;

    border-radius:50px;

    font-weight:700;

    margin-bottom:20px;

}

.history-content{

    background:#fff;

    padding:30px;

    border-radius:20px;

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

}

.history-content h4{

    color:var(--secondary);

    margin-bottom:15px;

    font-weight:700;

}

.about-page h4 {
    color: #0B2F8A;
}

.history-content p{

    margin:0;

    line-height:1.8;

    color:#666;

}

.history-item::after{

    content:"";

    position:absolute;

    top:18px;

    width:18px;

    height:18px;

    border-radius:50%;

    background:var(--primary);

    border:4px solid #fff;

    box-shadow:0 0 0 4px rgba(14,78,166,.15);

}

.history-item:nth-child(odd)::after{

    right:-9px;

}

.history-item:nth-child(even)::after{

    left:-9px;

}

@media(max-width:991px){

.history-timeline::before{

    left:20px;

}

.history-item{

    width:100%;

    left:0!important;

    text-align:left!important;

    padding-left:60px;

    padding-right:0;

}

.history-item::after{

    left:11px!important;

}

}

/*=========================================================
MISSION - VISION - VALEURS
=========================================================*/

.mission-section{

    padding:120px 0;

    background:#ffffff;

}

.mission-card{

    background:#fff;

    border-radius:25px;

    padding:45px 35px;

    text-align:center;

    height:100%;

    transition:.4s;

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

    border:1px solid #eef2f7;

}

.mission-card:hover{

    transform:translateY(-12px);

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

}

.mission-icon{

    width:90px;

    height:90px;

    margin:auto;

    margin-bottom:25px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:linear-gradient(135deg,#0E4EA6,#2E8FFF);

}

.mission-icon i{

    color:#fff;

    font-size:36px;

}

.mission-card h3{

    font-size:26px;

    margin-bottom:20px;

    color:var(--secondary);

    font-weight:700;

}

.mission-card p{

    color:#666;

    line-height:1.9;

}

.mission-card ul{

    margin:0;

    padding:0;

    list-style:none;

}

.mission-card ul li{

    padding:10px 0;

    border-bottom:1px solid #eee;

    font-weight:600;

}

.mission-card ul li:last-child{

    border-bottom:none;

}

/*=========================================================
NOS ENGAGEMENTS
=========================================================*/

.commitments{

    padding:120px 0;

    background:#F7F9FC;

}

.commitments-grid{

    display:grid;

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

    gap:25px;

}

.commitment-card{

    background:#fff;

    padding:35px;

    border-radius:22px;

    transition:.35s;

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

    border-top:4px solid transparent;

}

.commitment-card:hover{

    transform:translateY(-10px);

    border-top:4px solid var(--primary);

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

}

.commitment-card i{

    font-size:40px;

    color:var(--primary);

    margin-bottom:20px;

}

.commitment-card h4{

    font-size:22px;

    color:var(--secondary);

    margin-bottom:15px;

    font-weight:700;

}

.commitment-card p{

    margin:0;

    color:#666;

    line-height:1.8;

}

@media(max-width:991px){

.commitments-grid{

    grid-template-columns:1fr;

}

}

/*=========================================================
ABOUT WHY
=========================================================*/

.about-why{

    padding:120px 0;

    background:#fff;

}

.why-box{

    margin-top:40px;

}

.why-box .why-item{

    display:flex;

    gap:20px;

    margin-bottom:28px;

}

.why-box .why-item i{

    width:65px;

    height:65px;

    border-radius:18px;

    display:flex;

    justify-content:center;

    align-items:center;

    background:linear-gradient(135deg,#0E4EA6,#2E8FFF);

    color:#fff;

    font-size:28px;

    flex-shrink:0;

}

.why-box .why-item h5{

    margin-bottom:8px;

    color:var(--secondary);

    font-weight:700;

}

.why-box .why-item p{

    margin:0;

    color:#666;

    line-height:1.8;

}

.why-image{

    position:relative;

    border-radius:25px;

    overflow:hidden;

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

}

.why-image img{

    width:100%;

    display:block;

}

.floating-project{

    position:absolute;

    right:30px;

    bottom:30px;

    background:#fff;

    padding:25px 35px;

    border-radius:20px;

    text-align:center;

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

}

.floating-project h2{

    font-size:54px;

    color:var(--primary);

    font-weight:800;

    margin:0;

}

.floating-project span{

    color:#555;

    font-weight:600;

}

/*=========================================================
NOS DOMAINES D'EXPERTISE
=========================================================*/

.expertise-section{

    padding:120px 0;

    background:linear-gradient(180deg,#F8FAFC,#FFFFFF);

}

.expertise-card{

    background:#fff;

    padding:40px 30px;

    border-radius:22px;

    text-align:center;

    height:100%;

    transition:.35s;

    border:1px solid #EEF2F7;

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

}

.expertise-card:hover{

    transform:translateY(-12px);

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

    border-color:var(--primary);

}

.expertise-card i{

    width:85px;

    height:85px;

    margin:auto auto 25px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:linear-gradient(135deg,#0E4EA6,#2E8FFF);

    color:#fff;

    font-size:34px;

}

.expertise-card h4{

    margin-bottom:15px;

    color:var(--secondary);

    font-weight:700;

}

.expertise-card p{

    margin:0;

    color:#666;

    line-height:1.8;

}

.expertise-highlight{

    background:linear-gradient(135deg,#0E4EA6,#0A2F6B);

    color:#fff;

    border:none;

}

.expertise-highlight i{

    background:#fff;

    color:var(--primary);

}

.expertise-highlight h4{

    color:#fff;

}

.expertise-highlight p{

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

}

.expertise-highlight:hover{

    transform:translateY(-12px);

    box-shadow:0 25px 60px rgba(14,78,166,.35);

}

/*=========================================================
NOS CHIFFRES CLÉS
=========================================================*/

.stats-section{

    padding:120px 0;

    background:linear-gradient(135deg,#0A2F6B,#0E4EA6);

    position:relative;

    overflow:hidden;

}

.stats-section::before{

    content:"";

    position:absolute;

    top:-120px;

    right:-120px;

    width:350px;

    height:350px;

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

    border-radius:50%;

}

.stats-section::after{

    content:"";

    position:absolute;

    bottom:-150px;

    left:-150px;

    width:420px;

    height:420px;

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

    border-radius:50%;

}

.badge-light{

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

    color:#fff;

}

.text-white{

    color:#fff;

}

.stats-description{

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

    max-width:720px;

    margin:auto;

}

.stat-card{

    position:relative;

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

    backdrop-filter:blur(10px);

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

    border-radius:24px;

    padding:45px 25px;

    text-align:center;

    transition:.35s;

}

.stat-card:hover{

    transform:translateY(-10px);

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

}

.stat-card i{

    font-size:42px;

    color:#fff;

    margin-bottom:20px;

}

.stat-card h2{

    color:#fff;

    font-size:54px;

    font-weight:800;

    margin-bottom:10px;

}

.stat-card p{

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

    margin:0;

    font-weight:500;
	color : var(--secondary);

}

.counter-p {
	color : var(--secondary);
}

/*=========================================================
NOTRE MÉTHODE
=========================================================*/

.work-process{

    padding:120px 0;

    background:#ffffff;

    position:relative;

}

.process-line{

    position:absolute;

    top:285px;

    left:12%;

    right:12%;

    height:4px;

    background:linear-gradient(90deg,#0E4EA6,#5FA8FF);

    z-index:1;

}

.process-card{

    position:relative;

    background:#fff;

    border-radius:25px;

    padding:35px 25px;

    text-align:center;

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

    transition:.35s;

    z-index:2;

    height:100%;

}

.process-card:hover{

    transform:translateY(-12px);

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

}

.process-number{

    position:absolute;

    top:-18px;

    left:50%;

    transform:translateX(-50%);

    width:42px;

    height:42px;

    border-radius:50%;

    background:var(--primary);

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    font-weight:700;

    font-size:15px;

}

.process-icon{

    width:90px;

    height:90px;

    margin:20px auto;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:linear-gradient(135deg,#0E4EA6,#2F8EFF);

}

.process-icon i{

    color:#fff;

    font-size:38px;

}

.process-card h5{

    margin-top:20px;

    color:var(--secondary);

    font-weight:700;

}

.process-card p{

    color:#666;

    font-size:15px;

    line-height:1.8;

}

@media(max-width:991px){

.process-line{

    display:none;

}

.process-card{

    margin-top:20px;

}

}

