/* Actualités : page refaite (style ONG sobre) */
.actu-page { background: #fff; }
.actu-wrap { max-width: 1180px; margin: 0 auto; padding: 3rem clamp(1.25rem, 4vw, 2.5rem) 1rem; }
.actu-filters { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 1.75rem; }
.actu-filter { font-family: 'Montserrat', sans-serif; font-size: 0.78rem; font-weight: 600; padding: 8px 16px; border: 1px solid #E4E4E0; border-radius: 999px; background: #fff; color: #4A4A50; cursor: pointer; transition: background .15s, color .15s, border-color .15s; }
.actu-filter:hover { border-color: #4A90E2; color: #4A90E2; }
.actu-filter.active { background: #4A90E2; border-color: #4A90E2; color: #fff; }
.actu-tag { display: inline-block; font-family: 'Montserrat', sans-serif; font-size: 0.66rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; padding: 4px 10px; border-radius: 4px; background: #EAF3FB; color: #2A6FA8; }
.actu-date { font-family: 'Open Sans', sans-serif; font-size: 0.8rem; color: #6b6b73; margin-left: 8px; }
.actu-readmore { font-family: 'Montserrat', sans-serif; font-size: 0.82rem; font-weight: 700; color: #00A855; text-decoration: none; display: inline-block; margin-top: 14px; }
.actu-readmore:hover { text-decoration: underline; }
.actu-feature { display: grid; grid-template-columns: 1.15fr 1fr; background: #fff; border: 1px solid #E4E4E0; border-radius: 14px; overflow: hidden; margin-bottom: 1.5rem; }
.actu-feature .media-frame { height: 440px; }
.actu-feature-content { padding: clamp(1.5rem, 3vw, 2.5rem); display: flex; flex-direction: column; justify-content: center; }
.actu-feature-title { font-family: 'Playfair Display', serif; font-size: clamp(1.4rem, 2.4vw, 1.9rem); font-weight: 700; line-height: 1.25; color: #1C1C1E; margin: 14px 0 12px; }
.actu-feature-excerpt { font-family: 'Open Sans', sans-serif; font-size: 0.95rem; line-height: 1.75; color: #4A4A50; }
.actu-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.actu-card { background: #fff; border: 1px solid #E4E4E0; border-radius: 14px; overflow: hidden; display: flex; flex-direction: column; }
.actu-card .media-frame { height: 250px; }
.actu-card-content { padding: 1.25rem 1.25rem 1.4rem; display: flex; flex-direction: column; flex: 1; }
.actu-card-title { font-family: 'Playfair Display', serif; font-size: 1.1rem; font-weight: 700; line-height: 1.35; color: #1C1C1E; margin: 12px 0 8px; }
.actu-card-excerpt { font-family: 'Open Sans', sans-serif; font-size: 0.86rem; line-height: 1.65; color: #4A4A50; flex: 1; }
.actu-item[hidden] { display: none !important; }
.actu-support { background: #16232E; color: #fff; }
.actu-support-inner { max-width: 1180px; margin: 3.5rem auto 0; padding: 2.5rem clamp(1.25rem, 4vw, 2.5rem); display: flex; gap: 1.5rem; align-items: center; justify-content: space-between; flex-wrap: wrap; }
.actu-support h2 { font-family: 'Playfair Display', serif; font-size: 1.5rem; margin-bottom: 6px; color: #fff; }
.actu-support p { font-family: 'Open Sans', sans-serif; font-size: 0.92rem; color: rgba(255,255,255,.75); max-width: 560px; line-height: 1.7; }
.actu-support-btns { display: flex; gap: 10px; flex-wrap: wrap; }
.actu-btn { font-family: 'Montserrat', sans-serif; font-size: 0.82rem; font-weight: 700; padding: 12px 22px; border-radius: 8px; text-decoration: none; }
.actu-btn.primary { background: #00CC66; color: #fff; }
.actu-btn.ghost { border: 1.5px solid rgba(255,255,255,.55); color: #fff; }
@media (max-width: 900px) { .actu-grid { grid-template-columns: 1fr 1fr; } .actu-feature { grid-template-columns: 1fr; } .actu-feature .media-frame { height: 320px; } }
@media (max-width: 600px) { .actu-grid { grid-template-columns: 1fr; } }

/* Robustesse : empêche les textes de se chevaucher dans les cartes (colonnes flex compressées par certains navigateurs) */
.actu-card-content > *, .actu-feature-content > * { flex-shrink: 0; }
.actu-card-excerpt { flex: 1 0 auto; }
.actu-card-title { overflow: visible; }
