.mbf-formations-grid {
    --mbf-primary:#b62f56;
    --mbf-text:#32282a;
    --mbf-muted:#7b5a62;
    --mbf-chip-bg:#f5e3e8;
    display:grid;
    gap:30px;
    width:100%;
}
.mbf-columns-1{grid-template-columns:1fr}
.mbf-columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.mbf-columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.mbf-columns-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.mbf-formation-card {
    overflow:hidden;
    background:#fff;
    border-radius:0 0 26px 26px;
    box-shadow:0 18px 35px rgba(77,45,54,.08);
    color:var(--mbf-text);
    display:flex;
    flex-direction:column;
    min-width:0;
}
.mbf-formation-image { aspect-ratio: 1.35 / 1; overflow:hidden; }
.mbf-formation-image img { display:block; width:100%; height:100%; object-fit:cover; }
.mbf-formation-content { padding:28px 28px 30px; display:flex; flex-direction:column; flex:1; }
.mbf-formation-title {
  margin: 0 0 10px;
  color: var(--mbf-text);
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(19px, 1.5vw, 22px);
  line-height: 1.2;
  font-weight: 400;
}
.mbf-formation-description { color:var(--mbf-muted); font-size:15px; line-height:1.65; }
.mbf-formation-description p { margin:0 0 16px; }
.mbf-formation-tags { display:flex; flex-wrap:wrap; gap:8px; margin:5px 0 22px; }
.mbf-formation-tag { display:inline-flex; align-items:center; min-height:27px; padding:4px 13px; border-radius:999px; background:var(--mbf-chip-bg); color:#962744; font-size:12px; line-height:1.2; font-weight:600; }
.mbf-formation-link { margin-top:auto; display:inline-flex; align-items:center; gap:9px; color:var(--mbf-primary); text-decoration:none; font-weight:700; font-size:14px; }
.mbf-formation-link span { font-size:20px; transition:transform .2s ease; }
.mbf-formation-link:hover span { transform:translateX(4px); }
@media (max-width:1100px){
    .mbf-columns-4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
    .mbf-columns-3{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
    .mbf-columns-2,.mbf-columns-3,.mbf-columns-4{grid-template-columns:1fr}
    .mbf-formations-grid{gap:22px}
    .mbf-formation-content{padding:24px 22px 26px}
}

.mbf-formation-image {
  border-radius: 22px 22px 0 0;
  overflow: hidden;
}

.mbf-formation-card {
  border-radius: 22px;
  overflow: hidden;
}
