.formations-wrapper{
    width:min(1180px,92%);
    margin:50px auto 90px;
}

.formations-hero{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:40px;
    background:#fff;
    border-radius:32px;
    padding:52px;
    box-shadow:0 10px 40px rgba(0,0,0,.05);
    margin-bottom:34px;
}

.formations-text{
    flex:1;
}

.formations-image,
.highlight-image{
    width:260px;
    flex-shrink:0;
}

.formations-image img,
.highlight-image img{
    width:100%;
    aspect-ratio:1/1;
    object-fit:cover;
    border-radius:28px;
    display:block;
}

.formations-hero span,
.formation-highlight span,
.formation-card span{
    display:block;
    font-size:.82rem;
    font-weight:800;
    letter-spacing:2px;
    color:#8c909c;
    margin-bottom:10px;
    text-transform:uppercase;
}

.formations-hero h1{
    max-width:820px;
    font-size:2.7rem;
    line-height:1.1;
    margin-bottom:18px;
}

.formations-hero p{
    max-width:790px;
    color:#5f6470;
    line-height:1.8;
    font-size:1.05rem;
}

.formation-highlight{
    position:relative;
    overflow:hidden;
    background:linear-gradient(135deg,#ffffff 0%,#f9fafc 55%,#edf4fa 100%);
    border-radius:32px;
    padding:54px;
    margin-bottom:28px;
    box-shadow:0 16px 50px rgba(31,42,68,.08);
    border:1px solid rgba(100,151,195,.22);
}

.highlight-content{
    position:relative;
    z-index:1;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:40px;
}

.highlight-left{
    flex:1;
}

.highlight-badge{
    display:inline-flex;
    align-items:center;
    background:#bf6759;
    color:#fff;
    padding:10px 16px;
    border-radius:9px;
    font-size:.9rem;
    font-weight:800;
    margin-bottom:22px;
}

.formation-highlight h2{
    font-size:2.25rem;
    margin-bottom:16px;
}

.formation-highlight p{
    color:#4f5665;
    line-height:1.8;
    font-size:1.05rem;
    margin-bottom:26px;
}

.formation-btn,
.formation-card a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    background:#1f2a44;
    color:#fff;
    padding:14px 22px;
    border-radius:16px;
    font-weight:800;
    transition:.2s;
}

.formations-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:24px;
}

.formation-card{
    background:#f9f9f9;
    border-radius:28px;
    padding:34px;
    box-shadow:0 10px 40px rgba(0,0,0,.045);
}

.formation-card h2{
    font-size:1.55rem;
    margin-bottom:14px;
}

.formation-card p{
    color:#5f6470;
    line-height:1.75;
    margin-bottom:24px;
}

.formation-card a{
    background:#304052;
    padding:12px 18px;
    border-radius:14px;
    font-size:.95rem;
}

@media(max-width:850px){

    .formations-hero,
    .highlight-content{
        flex-direction:column;
    }

    .formations-image,
    .highlight-image{
        width:100%;
        max-width:320px;
        order:-1;
    }

    .formations-hero,
    .formation-highlight{
        padding:34px 24px;
        border-radius:26px;
    }

    .formations-hero h1{
        font-size:2.05rem;
    }

    .formation-highlight h2{
        font-size:1.85rem;
    }

    .formations-grid{
        grid-template-columns:1fr;
    }

}

@media(max-width:520px){

    .formations-wrapper{
        margin-top:34px;
    }

    .formations-hero h1{
        font-size:1.8rem;
    }

    .formation-card{
        padding:28px 22px;
        border-radius:24px;
    }

}
