
  /* ---------- GENERIC PAGE HEADER ---------- */
  .page-header{padding:170px 0 70px; background:var(--black); color:var(--white);}
  .page-header .label{margin-bottom:20px;}
  .page-header h1{font-size:clamp(34px, 5.2vw, 68px); max-width:18ch;}
  .page-header p{color:#C9C5C0; max-width:60ch; margin-top:22px; font-size:16px; line-height:1.6;}
   .page-header--contenus{
    background-image:linear-gradient(rgba(0,0,0,.55), rgba(0,0,0,.55)), url('https://test.reiwacreative.com/wp-content/uploads/2026/09/pexels-lilly-grace-944249302-29395490.jpg');
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
  }

    /* ---------- CONTENUS / BLOG ---------- */
  .content-filters{padding:50px 0 0;}
  .content-featured{padding:50px 0 0;}
  .filters{padding:44px 0 0; background:var(--white); position:sticky; top:78px; z-index:50; border-bottom:1px solid var(--line-light);}
  .filters-inner{display:flex; gap:10px; flex-wrap:wrap; padding-bottom:24px;}
  .filter-btn{
    font-family:var(--mono); font-size:13px; padding:9px 16px; border:1px solid var(--line-light); color:var(--ink);
    transition:all .2s ease;
  }
  .filter-btn:hover{border-color:var(--black); color:var(--black);}
  .filter-btn.active{background:var(--black); border-color:var(--black); color:var(--white);}
  .feat-card{
    display:grid; grid-template-columns:1.1fr 1fr; gap:50px; align-items:center;
    border-bottom:1px solid var(--line-light); padding-bottom:70px;
  }
  .feat-card img{width:100%; aspect-ratio:16/10; object-fit:cover;}
  .feat-card h2{font-size:clamp(26px,3vw,40px); margin:18px 0 16px;}
  .feat-card p{color:var(--ink); line-height:1.65; max-width:52ch; margin-bottom:22px;}
  @media (max-width:850px){ .feat-card{grid-template-columns:1fr;} }

  /* .mag-grid{padding:70px 0 130px; display:grid; grid-template-columns:repeat(3,1fr); gap:50px 34px;}
  .mag-card img{width:100%; aspect-ratio:4/3; object-fit:cover; margin-bottom:18px;}
  .mag-card .label{display:flex; justify-content:space-between; margin-bottom:12px;}
  .mag-card h3{font-size:19px; font-weight:500; margin-bottom:10px; line-height:1.3;}
  .mag-card p{color:var(--ink); font-size:14px; line-height:1.55;}
  @media (max-width:850px){ .mag-grid{grid-template-columns:1fr 1fr;} }
  @media (max-width:560px){ .mag-grid{grid-template-columns:1fr;} } */
  /* 1. Grille principale */
/* 1. Grille principale avec hauteur de lignes fixe */
.mag-grid {
    padding: 70px 0 130px; 
    display: grid; 
    grid-template-columns: repeat(3, 1fr); 
    gap: 50px 34px;
    align-items: stretch;
}

/* 2. Lien conteneur */
.mag-card-link {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    width: 100%;
    height: 100%;
    overflow: hidden; /* Empêche tout dépassement */
}

/* 3. Carte Article */
.mag-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

/* 4. Conteneur & Image à taille stricte et fixe */
.mag-card img {
    width: 100%;
    /* Fixe la hauteur exacte : vous pouvez utiliser une hauteur fixe en px (ex: 220px) ou un ratio strict */
    height: 250px; 
    object-fit: cover; /* Recadre proprement l'image sans la déformer */
    margin-bottom: 18px;
    display: block;
    flex-shrink: 0; /* Empêche l'image de se compresser si le texte est long */
}

/* 5. Contenu Texte */
.mag-card .label {
    display: flex; 
    justify-content: space-between; 
    margin-bottom: 12px;
    flex-shrink: 0;
}

/* Titre : Limité à 2 lignes maximum */
.mag-card h3 {
    font-size: 19px; 
    font-weight: 500; 
    margin-bottom: 10px; 
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2; /* Maximum 2 lignes */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Description : Limitée à 3 lignes maximum */
.mag-card p {
    color: var(--ink); 
    font-size: 14px; 
    line-height: 1.55;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 3; /* Maximum 3 lignes */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Responsive */
@media (max-width: 850px) { 
    .mag-grid { grid-template-columns: repeat(2, 1fr); } 
}

@media (max-width: 560px) { 
    .mag-grid { grid-template-columns: 1fr; } 
    .mag-card img { height: 200px; } /* Ajustement pour mobile si nécessaire */
}