/* ===================================================
   ElanNews — main.css (v2.0.1)
   Thème WordPress éditorial pleine largeur
   =================================================== */

:root{
  --vert:#1a7a4a;
  --vert-fonce:#0f5532;
  --vert-clair:#2d9968;
  --vert-pale:#e8f5ee;
  --rouge:#CE1126;
  --jaune:#FCD116;
  --noir:#0a0a0a;
  --texte:#1a1a1a;
  --texte-2:#4a4a4a;
  --gris:#7a7a7a;
  --gris-clair:#e8e8e8;
  --gris-bg:#f7f7f5;
  --bleu-foncé:#0a2540;
  --blanc:#ffffff;
}

*{margin:0;padding:0;box-sizing:border-box}
html,body{
  background:var(--blanc);color:var(--texte);
  font-family:'Inter',sans-serif;-webkit-font-smoothing:antialiased;
  font-size:15px;line-height:1.5;
}
body{overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}

.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}
.skip-link{background:var(--noir);color:#fff;padding:8px 16px;position:absolute;top:-40px;left:0;z-index:9999;transition:.2s}
.skip-link:focus{top:0}

/* === HEADER TOP === */
.header-top{
  background:var(--vert-fonce);color:#fff;padding:8px 0;font-size:12px;
}
.header-top-inner{
  width:100%;padding:0 30px;
  display:flex;justify-content:space-between;align-items:center;
  flex-wrap:wrap;gap:10px;
}
.header-top .date{
  color:rgba(255,255,255,.85);
  text-transform:uppercase;letter-spacing:.05em;font-size:11px;
}
.header-top .langues a{color:rgba(255,255,255,.7);padding:0 8px;transition:.2s}
.header-top .langues a:hover,.header-top .langues a.actif{color:var(--jaune)}
.header-top .socials a{
  display:inline-flex;align-items:center;justify-content:center;
  width:24px;height:24px;background:rgba(255,255,255,.12);
  margin-left:4px;border-radius:50%;font-size:11px;transition:.2s;color:#fff;
}
.header-top .socials a:hover{background:var(--jaune);color:var(--vert-fonce)}

/* === HEADER MAIN === */
.header-main{
  background:var(--blanc);
  border-bottom:1px solid var(--gris-clair);
  padding:18px 0;
}
.header-main-inner{
  width:100%;padding:0 30px;
  display:flex;justify-content:space-between;align-items:center;gap:30px;
}
.logo{
  font-family:'Inter',sans-serif;
  font-weight:900;font-size:36px;letter-spacing:-.03em;
  display:flex;align-items:center;color:inherit;
}
.logo .el{color:var(--noir)}
.logo .news{color:var(--vert)}
.logo .dot{
  display:inline-block;width:14px;height:14px;
  background:var(--jaune);border-radius:50%;
  margin:0 3px;position:relative;top:-2px;
}
.custom-logo{max-height:60px;width:auto}

.header-actions{display:flex;align-items:center;gap:14px}
.search-box{
  display:flex;align-items:center;
  background:var(--gris-bg);border:1px solid var(--gris-clair);
  padding:6px 14px;border-radius:30px;font-size:13px;
  width:240px;transition:.2s;
}
.search-box:focus-within{border-color:var(--vert);background:#fff}
.search-box input{
  background:transparent;border:none;outline:none;flex:1;
  font-family:inherit;font-size:13px;
}
.search-box .ico{font-size:13px;color:var(--gris)}

.subscribe-btn{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--jaune);color:var(--noir);
  padding:9px 20px;font-size:12px;font-weight:800;
  text-transform:uppercase;letter-spacing:.1em;
  border-radius:2px;transition:.2s;
  border:2px solid var(--jaune);
}
.subscribe-btn::before{content:"✉";font-size:14px}
.subscribe-btn:hover{background:var(--noir);color:var(--jaune);border-color:var(--noir)}

@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}

/* === MAIN NAV === */
.main-nav{
  background:var(--vert);
  position:sticky;top:0;z-index:100;
  box-shadow:0 2px 10px rgba(0,0,0,.08);
}
.main-nav-inner{
  width:100%;padding:0 30px;
  display:flex;align-items:center;
}
.main-nav a{
  display:block;padding:14px 18px;
  font-size:13px;font-weight:600;
  text-transform:uppercase;letter-spacing:.05em;
  color:#fff;
  position:relative;transition:.2s;
}
.main-nav a:hover,
.main-nav a.actif,
.main-nav .current-menu-item > a,
.main-nav .current_page_item > a{
  background:rgba(0,0,0,.15);
}
.main-nav a.actif::after,
.main-nav .current-menu-item > a::after{
  content:"";position:absolute;bottom:-2px;left:0;right:0;
  height:3px;background:var(--jaune);
}
.main-nav ul{list-style:none;display:contents}
.main-nav li{display:contents}
.main-nav .menu-end{margin-left:auto;display:flex;align-items:center}
.main-nav .menu-end .meteo{
  color:rgba(255,255,255,.85);font-size:12px;padding:14px 18px;
  border-left:1px solid rgba(255,255,255,.15);
  text-transform:uppercase;letter-spacing:.05em;
}

/* === BREAKING / FIL D'INFOS === */
.breaking{
  background:var(--jaune);
  border-bottom:2px solid var(--vert);
  overflow:hidden;
}
.breaking-inner{
  width:100%;padding:0 30px;display:flex;align-items:center;
}
.breaking-label{
  background:var(--noir);color:var(--jaune);
  padding:10px 16px;font-size:11px;font-weight:800;
  text-transform:uppercase;letter-spacing:.1em;
  flex-shrink:0;display:flex;align-items:center;gap:8px;
}
.breaking-label::before{
  content:"";width:6px;height:6px;background:var(--rouge);
  border-radius:50%;animation:pulse 1.4s infinite;
}
.breaking-content{
  flex:1;padding:10px 20px;font-size:13px;font-weight:600;
  white-space:nowrap;overflow:hidden;color:var(--noir);
}
.breaking-track{display:inline-block;animation:scroll 35s linear infinite}
.breaking-track:hover{animation-play-state:paused}
.breaking-track span{margin-right:50px}
.breaking-track .time{
  color:var(--jaune);background:var(--noir);
  padding:1px 6px;border-radius:2px;font-weight:800;margin-right:8px;
}
@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* === MAIN LAYOUT === */
.main-wrap{
  width:100%;padding:25px 30px;
  display:grid;grid-template-columns:1fr 320px;gap:30px;
}
.container-narrow{
  max-width:900px;margin:0 auto;
}

/* === HERO SECTION (grille 2/3 + 1/3) === */
.hero-section{
  display:grid;
  grid-template-columns:2fr 1fr;
  gap:30px;
  margin-bottom:30px;
}

/* === SLIDER HERO === */
.hero-slider{
  position:relative;
  width:100%;
  overflow:hidden;
}
.hero-slides{
  position:relative;
  width:100%;
}
.hero-slide{
  position:absolute;
  top:0;left:0;right:0;
  width:100%;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .6s ease;
}
.hero-slide.is-active{
  position:relative;
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

/* Flèches latérales */
.hero-arrow{
  position:absolute;
  top:30%;
  transform:translateY(-50%);
  width:42px;
  height:42px;
  border-radius:50%;
  background:rgba(255,255,255,.92);
  color:var(--noir);
  border:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:10;
  transition:.2s;
  box-shadow:0 2px 8px rgba(0,0,0,.15);
  opacity:0;
}
.hero-slider:hover .hero-arrow{opacity:1}
.hero-arrow:hover{background:var(--jaune);transform:translateY(-50%) scale(1.08)}
.hero-arrow-prev{left:12px}
.hero-arrow-next{right:12px}

/* Dots de navigation */
.hero-dots{
  position:absolute;
  /* Position : juste sous l'image, au-dessus du titre */
  top:calc(62.5% - 30px); /* image à 62.5% de padding-top */
  left:50%;
  transform:translateX(-50%);
  display:flex;
  gap:8px;
  z-index:10;
}
.hero-dot{
  width:10px;
  height:10px;
  border-radius:50%;
  background:rgba(255,255,255,.6);
  border:1.5px solid rgba(255,255,255,.95);
  cursor:pointer;
  padding:0;
  transition:.2s;
  box-shadow:0 1px 3px rgba(0,0,0,.3);
}
.hero-dot:hover{background:rgba(255,255,255,.95)}
.hero-dot.is-active{
  background:var(--jaune);
  border-color:var(--jaune);
  width:26px;
  border-radius:5px;
}

/* === HERO PRINCIPAL — STYLE AFRICANEWS (titre en dessous de l'image) === */
.hero-main{
  display:flex;
  flex-direction:column;
  background:transparent;
  cursor:pointer;
  color:inherit;
  overflow:hidden;
}

/* Wrapper image */
.hero-img-wrap{
  position:relative;
  width:100%;
  padding-top:62.5%; /* aspect-ratio 16:10 */
  overflow:hidden;
  background:#1a1a1a;
}
.hero-main .img{
  position:absolute;
  top:0;left:0;right:0;bottom:0;
  background:linear-gradient(135deg,#1a3a5a,#0a1a30);
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  transition:transform .5s;
}
.hero-main:hover .img{transform:scale(1.03)}

/* CARTOUCHE CATÉGORIE blanc qui chevauche le bas de l'image */
.hero-cat{
  position:absolute;
  bottom:0;
  left:0;
  background:#ffffff;
  color:var(--noir);
  padding:10px 18px;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
  border-left:4px solid var(--jaune);
  display:inline-flex;
  align-items:center;
  gap:8px;
  max-width:80%;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  z-index:2;
}
.hero-cat::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--vert);
  flex-shrink:0;
}

/* Body : titre + méta sous l'image */
.hero-body{
  padding:18px 0 8px;
}
.hero-title{
  font-size:22px;
  font-weight:800;
  line-height:1.25;
  letter-spacing:-.01em;
  color:var(--noir);
  margin:0 0 12px 0;
  font-family:'Inter',sans-serif!important;
  font-style:normal!important;
  text-transform:none!important;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.hero-main:hover .hero-title{color:var(--vert)}
.hero-meta{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:13px;
  color:var(--gris);
  font-weight:400;
  text-transform:none;
  letter-spacing:0;
}
.hero-meta .ico-clock{flex-shrink:0;opacity:.65}

/* === HERO SIDE (4 brèves statiques empilées) === */
.hero-side-wrap{
  width:100%;
}
.hero-side{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.hero-side{display:flex;flex-direction:column;gap:14px}
.hero-side-item{
  display:flex;
  flex-direction:row;
  gap:14px;
  cursor:pointer;
  color:inherit;
  width:100%;
  align-items:flex-start;
  padding-bottom:14px;
  border-bottom:1px solid var(--gris-clair);
  flex-shrink:0;
}
.hero-side-item .img-wrap{
  width:130px;
  height:90px;
  flex-shrink:0;
  position:relative;
  background:#1a1a1a;
  overflow:hidden;
}
.hero-side-item .img{
  position:absolute;
  top:0;left:0;right:0;bottom:0;
  background:linear-gradient(135deg,#3a1e1e,#0a0a0a);
  background-size:cover;
  background-position:center;
  transition:transform .5s;
}
.hero-side-item:hover .img{transform:scale(1.06)}
.hero-side-item .body{
  flex:1;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  min-width:0;
  padding:0;
}
.hero-side-item .pays{
  font-size:11px;
  font-weight:700;
  color:var(--vert);
  text-transform:uppercase;
  letter-spacing:.05em;
  margin-bottom:6px;
}
.hero-side-item h4{
  font-size:14px;
  font-weight:600;
  line-height:1.3;
  color:var(--texte);
  transition:.2s;
  margin-bottom:6px;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  font-family:'Inter',sans-serif!important;
  font-style:normal!important;
  text-transform:none!important;
}
.hero-side-item:hover h4{color:var(--vert)}
.hero-side-item .heure{
  font-size:11px;
  color:var(--gris);
  text-transform:none;
}

/* === SECTION TITLE === */
.section-title{
  display:flex;align-items:center;justify-content:space-between;
  margin:35px 0 20px;border-bottom:2px solid var(--vert);
  padding-bottom:8px;
}
.section-title h2{
  font-size:24px;font-weight:800;text-transform:uppercase;
  letter-spacing:-.005em;color:var(--vert-fonce);
  display:flex;align-items:center;gap:12px;
}
.section-title h2::before{content:"";width:6px;height:24px;background:var(--vert)}
.section-title .voir-plus{
  font-size:12px;font-weight:700;color:var(--vert);
  text-transform:uppercase;letter-spacing:.05em;transition:.2s;
}
.section-title .voir-plus:hover{color:var(--vert-fonce)}

/* === GRID 4 CARDS - STYLE AFRICANEWS === */
.cards-grid-4{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  column-gap:24px;
  row-gap:36px;
  margin-bottom:40px;
  align-items:stretch;
  width:100%;
}

/* === GRID 3 CARDS (utilisé dans la colonne gauche, sidebar à droite) === */
.cards-grid-3{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  column-gap:20px;
  row-gap:32px;
  margin-bottom:36px;
  align-items:stretch;
  width:100%;
}
.card{
  display:flex;
  flex-direction:column;
  background:transparent;
  cursor:pointer;
  transition:.2s;
  color:inherit;
  height:100%;
  min-width:0;
  overflow:hidden;
}

/* Image avec cartouche catégorie qui chevauche en bas */
.card-img-wrap{
  position:relative;
  width:100%;
  padding-top:62.5%; /* aspect-ratio 16:10 fallback compatible */
  overflow:hidden;
  background:#1a1a1a;
  margin-bottom:16px;
  flex-shrink:0;
}
.card .img{
  position:absolute;
  top:0;left:0;right:0;bottom:0;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  transition:transform .5s;
  background-color:#1a1a1a;
}
.card:hover .img{transform:scale(1.04)}

/* CARTOUCHE CATÉGORIE blanc qui chevauche le bas de l'image */
.card-cat{
  position:absolute;
  bottom:0;
  left:0;
  background:#ffffff;
  color:var(--noir);
  padding:10px 16px 10px 16px;
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
  max-width:90%;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  border-left:4px solid var(--jaune);
  display:inline-flex;
  align-items:center;
  gap:8px;
  z-index:2;
}
.card-cat::before{
  content:"";
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--vert);
  flex-shrink:0;
}

/* Titre gros et gras (style Africanews) */
.card-title{
  font-size:20px;
  font-weight:800;
  line-height:1.25;
  letter-spacing:-.01em;
  color:var(--noir);
  margin:0 0 12px 0;
  display:-webkit-box;
  -webkit-line-clamp:4;
  -webkit-box-orient:vertical;
  overflow:hidden;
  font-family:'Inter',sans-serif!important;
  font-style:normal!important;
  text-transform:none!important;
  flex:1;
}
.card:hover .card-title{color:var(--vert)}

/* Méta avec icône horloge */
.card-meta{
  display:flex;
  align-items:center;
  gap:7px;
  font-size:13px;
  color:var(--gris);
  font-weight:400;
  text-transform:none;
  letter-spacing:0;
  margin-top:auto;
}
.card-meta .ico-clock{flex-shrink:0;opacity:.65}

/* === ANCIENS STYLES (conservés pour compat) === */
.card .img-wrap{
  position:relative;
  padding-top:62.5%;
  overflow:hidden;
  background:#1a1a1a;
  margin-bottom:12px;
  flex-shrink:0;
}
.card .pays{
  display:inline-block;
  font-size:11px;
  font-weight:700;
  color:var(--vert);
  text-transform:uppercase;
  letter-spacing:.05em;
  margin-bottom:6px;
  padding:0 12px;
  font-style:normal!important;
}
.card h3{
  font-size:16px;
  font-weight:700;
  line-height:1.3;
  letter-spacing:-.005em;
  color:var(--texte);
  transition:.2s;
  padding:0 12px;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  font-family:'Inter',sans-serif!important;
  font-style:normal!important;
  text-transform:none!important;
  margin-bottom:auto;
}
.card .meta{
  font-size:10px;
  color:var(--gris);
  margin-top:8px;
  text-transform:uppercase;
  letter-spacing:.05em;
  padding:0 12px;
  flex-shrink:0;
}

/* === SIDEBAR DROITE === */
/* Sidebar : scrolle d'abord avec la page, puis se fixe en bas (gérée par JS) */
.sidebar{
  display:flex;
  flex-direction:column;
  gap:25px;
  align-self:start;
}
.widget-title{
  background:var(--noir);color:#fff;
  padding:12px 16px;font-size:13px;font-weight:800;
  text-transform:uppercase;letter-spacing:.05em;
  display:flex;align-items:center;justify-content:space-between;
}
.widget-title .ico{color:var(--jaune)}

/* DERNIÈRE MINUTE */
.dm-list{
  background:var(--gris-bg);
  max-height:540px;overflow-y:auto;
}
.dm-list::-webkit-scrollbar{width:4px}
.dm-list::-webkit-scrollbar-track{background:var(--gris-clair)}
.dm-list::-webkit-scrollbar-thumb{background:var(--vert)}
.dm-item{
  padding:12px 16px;border-bottom:1px solid var(--gris-clair);
  display:block;transition:.2s;cursor:pointer;color:inherit;
}
.dm-item:hover{background:#fff}
.dm-item .heure{
  font-size:11px;font-weight:700;color:var(--rouge);
  letter-spacing:.05em;margin-bottom:4px;
}
.dm-item h4{font-size:13px;font-weight:600;line-height:1.3;color:var(--texte)}
.dm-item:hover h4{color:var(--vert)}
.dm-voir-plus{
  display:block;background:var(--noir);color:var(--jaune);
  padding:10px;text-align:center;font-size:11px;font-weight:700;
  text-transform:uppercase;letter-spacing:.1em;transition:.2s;
}
.dm-voir-plus:hover{background:var(--vert);color:#fff}

/* POPULAIRES */
.populaire-list{padding:12px 0;background:var(--gris-bg)}
.pop-item{
  display:flex;gap:12px;padding:10px 16px;
  border-bottom:1px solid var(--gris-clair);transition:.2s;cursor:pointer;color:inherit;
}
.pop-item:last-child{border-bottom:none}
.pop-item:hover{background:#fff}
.pop-item .num{
  font-size:32px;font-weight:900;color:var(--vert);
  line-height:1;flex-shrink:0;width:38px;
  font-family:'Roboto Condensed',sans-serif;
}
.pop-item h4{font-size:13px;font-weight:600;line-height:1.3;color:var(--texte)}
.pop-item:hover h4{color:var(--vert)}

/* PUB */
.pub-block{
  background:var(--gris-bg);border:1px dashed var(--gris-clair);
  padding:50px 20px;text-align:center;color:var(--gris);
  font-size:11px;text-transform:uppercase;letter-spacing:.1em;
}

/* NEWSLETTER */
.newsletter-w{
  background:linear-gradient(135deg,var(--vert),var(--vert-fonce));
  padding:24px 20px;color:#fff;text-align:center;
}
.newsletter-w h4{
  font-size:18px;font-weight:800;margin-bottom:8px;
  text-transform:uppercase;letter-spacing:-.005em;
}
.newsletter-w p{font-size:13px;opacity:.9;margin-bottom:16px;line-height:1.4}
.newsletter-w input{
  width:100%;padding:10px 14px;border:none;
  font-family:inherit;font-size:13px;margin-bottom:8px;border-radius:2px;
}
.newsletter-w button{
  width:100%;padding:10px;background:var(--jaune);color:var(--vert-fonce);
  border:none;font-family:inherit;font-weight:700;
  text-transform:uppercase;letter-spacing:.1em;font-size:11px;
  cursor:pointer;border-radius:2px;transition:.2s;
}
.newsletter-w button:hover{background:#fff}

/* === BAND VIDÉOS === */
.videos-band{
  background:var(--noir);
  padding:50px 30px;margin:40px 0;
  color:#fff;
}
.videos-band-head{
  display:flex;justify-content:space-between;align-items:center;
  margin-bottom:30px;padding-bottom:14px;border-bottom:2px solid var(--jaune);
}
.videos-band-head h2{
  font-size:28px;font-weight:800;text-transform:uppercase;
  display:flex;align-items:center;gap:12px;color:#fff;
}
.videos-band-head h2::before{content:"▶";color:var(--jaune);font-size:20px}
.videos-band-head .voir-plus{color:var(--jaune);font-size:13px;font-weight:700}
.videos-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;align-items:stretch}
.video-card{display:flex;flex-direction:column;cursor:pointer;color:#fff}
.video-card .img-wrap{
  position:relative;aspect-ratio:16/10;overflow:hidden;
  background:#222;margin-bottom:12px;flex-shrink:0;
}
.video-card .img{
  position:absolute;inset:0;
  background-size:cover;background-position:center;transition:.5s;
  background:linear-gradient(135deg,#3a1e1e,#1a0a0a);
}
.video-card:hover .img{transform:scale(1.05)}
.video-card .play-overlay{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:54px;height:54px;background:var(--jaune);border-radius:50%;
  display:flex;align-items:center;justify-content:center;transition:.2s;
}
.video-card:hover .play-overlay{transform:translate(-50%,-50%) scale(1.15)}
.video-card .play-overlay::after{
  content:"";border-style:solid;border-width:8px 0 8px 13px;
  border-color:transparent transparent transparent var(--noir);margin-left:3px;
}
.video-card .duree{
  position:absolute;bottom:8px;right:8px;
  background:rgba(0,0,0,.85);color:#fff;padding:3px 8px;font-size:11px;
  font-family:'Roboto Condensed',sans-serif;
}
.video-card .pays{
  display:block;font-size:11px;font-weight:700;color:var(--jaune);
  text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px;
}
.video-card h4{
  font-size:15px;font-weight:600;line-height:1.3;color:#fff;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;
  overflow:hidden;
  font-family:'Inter',sans-serif!important;
  font-style:normal!important;
  text-transform:none!important;
}
.video-card:hover h4{color:var(--jaune)}

/* === GRILLE 3 RUBRIQUES === */
.rubriques-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  margin-bottom:40px;
}
.rubrique-col h3.rub-titre{
  font-size:18px;font-weight:800;text-transform:uppercase;
  letter-spacing:-.005em;
  border-bottom:2px solid var(--vert);
  padding-bottom:8px;margin-bottom:16px;
  display:flex;align-items:center;justify-content:space-between;
}
.rubrique-col h3.rub-titre::before{
  content:"";width:8px;height:18px;background:var(--vert);margin-right:10px;
}
.rubrique-col h3.rub-titre .rub-name{flex:1}
.rubrique-col h3.rub-titre .voir{
  font-size:11px;font-weight:600;color:var(--vert);
}
.rubrique-col .article-mini{
  display:flex;gap:12px;padding:14px 0;
  border-bottom:1px dashed var(--gris-clair);cursor:pointer;color:inherit;
  align-items:flex-start;
}
.rubrique-col .article-mini:last-child{border-bottom:none}
.rubrique-col .article-mini .img-wrap{
  width:90px;height:65px;flex-shrink:0;background:#1a1a1a;
  position:relative;overflow:hidden;
}
.rubrique-col .article-mini .img{
  position:absolute;inset:0;
  background-size:cover;background-position:center;transition:.4s;
  background:linear-gradient(135deg,#3a1e1e,#1a0a0a);
}
.rubrique-col .article-mini:hover .img{transform:scale(1.06)}
.rubrique-col .article-mini > div:last-child{
  flex:1;min-width:0;
}
.rubrique-col .article-mini h4{
  font-size:13px;font-weight:600;line-height:1.3;color:var(--texte);
  margin-bottom:5px;transition:.2s;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;
  overflow:hidden;
  font-family:'Inter',sans-serif!important;
  font-style:normal!important;
  text-transform:none!important;
}
.rubrique-col .article-mini:hover h4{color:var(--vert)}
.rubrique-col .article-mini .meta{
  font-size:10px;color:var(--gris);text-transform:uppercase;letter-spacing:.05em;
}

/* === BAND RÉGIONS === */
.regions-band{
  background:var(--gris-bg);
  padding:40px 30px;margin:40px 0 0;
}
.regions-band-head{
  display:flex;justify-content:space-between;align-items:center;
  margin-bottom:24px;
}
.regions-band-head h2{
  font-size:24px;font-weight:800;text-transform:uppercase;
  color:var(--vert-fonce);display:flex;align-items:center;gap:12px;
}
.regions-band-head h2::before{content:"";width:6px;height:24px;background:var(--vert)}
.regions-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;align-items:stretch}
.region-card{
  display:flex;flex-direction:column;
  background:#fff;cursor:pointer;transition:.2s;color:inherit;
}
.region-card:hover{transform:translateY(-4px);box-shadow:0 6px 20px rgba(0,0,0,.08)}
.region-card .img-wrap{
  position:relative;aspect-ratio:16/10;overflow:hidden;background:#1a1a1a;
  flex-shrink:0;
}
.region-card .img{
  position:absolute;inset:0;
  background-size:cover;background-position:center;transition:.5s;
  background:linear-gradient(135deg,#1a3a2e,#0a1a14);
}
.region-card:hover .img{transform:scale(1.05)}
.region-card .region-tag{
  position:absolute;top:12px;left:12px;
  background:var(--vert);color:#fff;
  padding:4px 10px;font-size:10px;font-weight:700;
  text-transform:uppercase;letter-spacing:.1em;
}
.region-card .body{padding:14px;flex:1;display:flex;flex-direction:column}
.region-card h4{
  font-size:15px;font-weight:700;line-height:1.3;color:var(--texte);
  transition:.2s;margin-bottom:6px;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;
  overflow:hidden;
  font-family:'Inter',sans-serif!important;
  font-style:normal!important;
  text-transform:none!important;
  flex:1;
}
.region-card:hover h4{color:var(--vert)}
.region-card .meta{font-size:11px;color:var(--gris);text-transform:uppercase;letter-spacing:.05em}

/* === SINGLE / PAGES INTERNES — STYLE AFRICANEWS === */

/* Container global */
.single-wrap{
  width:100%;
  max-width:1400px;
  margin:0 auto;
  padding:30px 30px 40px;
}

/* Layout 3 colonnes : partage | contenu | sidebar */
.single-article-africanews{
  display:grid;
  grid-template-columns:60px 1fr 320px;
  gap:30px;
  align-items:start;
}

/* === COLONNE 1 : PARTAGE SOCIAL === */
.single-share{
  position:sticky;
  top:80px;
  display:flex;
  flex-direction:column;
  gap:8px;
  align-items:center;
}
.share-btn{
  width:42px;
  height:42px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:transparent;
  color:var(--gris);
  border:1px solid var(--gris-clair);
  transition:.2s;
}
.share-btn:hover{transform:scale(1.08);border-color:transparent}
.share-fb:hover{background:#1877F2;color:#fff}
.share-x:hover{background:#000;color:#fff}
.share-wa:hover{background:#25D366;color:#fff}
.share-mail:hover{background:var(--vert);color:#fff}
.share-print:hover{background:var(--noir);color:#fff}

/* === COLONNE 2 : CONTENU PRINCIPAL === */
.single-main-col{
  min-width:0;
}

/* Titre énorme en haut */
.single-h1{
  font-size:clamp(28px,3.2vw,42px);
  font-weight:800;
  line-height:1.15;
  letter-spacing:-.015em;
  color:var(--noir);
  margin:0 0 24px 0;
  font-family:'Inter',sans-serif!important;
}

/* Image avec cartouche */
.single-figure{
  margin:0 0 12px 0;
  position:relative;
}
.single-figure img{
  width:100%;
  height:auto;
  display:block;
  background:#1a1a1a;
}
.single-cat-badge{
  position:absolute;
  bottom:0;
  left:0;
  background:#ffffff;
  color:var(--noir);
  padding:10px 18px;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
  border-left:4px solid var(--jaune);
  display:inline-flex;
  align-items:center;
  gap:8px;
  max-width:80%;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.single-cat-badge::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--vert);
  flex-shrink:0;
}
.single-caption{
  font-size:13px;
  color:var(--gris);
  line-height:1.5;
  margin-top:14px;
  text-align:center;
  font-style:italic;
}

/* Byline auteur + MAJ */
.single-byline{
  display:flex;
  align-items:center;
  gap:10px;
  font-size:14px;
  color:var(--gris);
  padding:14px 0;
  margin:14px 0 18px;
  border-top:1px solid var(--gris-clair);
  border-bottom:1px solid var(--gris-clair);
  flex-wrap:wrap;
}
.byline-author strong{color:var(--noir);font-weight:700}
.byline-sep{color:var(--gris-clair)}
.byline-clock{
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.byline-clock svg{opacity:.6}

/* Chapeau */
.single-lead{
  font-size:18px;
  line-height:1.55;
  font-weight:500;
  color:var(--noir);
  margin-bottom:24px;
}

/* Corps du texte */
.single-body{
  font-size:17px;
  line-height:1.75;
  color:#222;
}
.single-body p{margin-bottom:1.3em}
.single-body h2{
  font-weight:800;
  font-size:26px;
  margin:1.6em 0 .6em;
  letter-spacing:-.01em;
  color:var(--noir);
}
.single-body h3{
  font-weight:700;
  font-size:21px;
  margin:1.4em 0 .5em;
  color:var(--noir);
}
.single-body a{color:var(--vert);text-decoration:underline}
.single-body blockquote{
  border-left:4px solid var(--jaune);
  padding:8px 0 8px 22px;
  margin:1.5em 0;
  font-style:italic;
  font-size:19px;
  color:#333;
  background:var(--gris-bg);
  padding:18px 22px;
}
.single-body img{margin:1.5em 0;width:100%;height:auto}
.single-body ul,.single-body ol{margin:1em 0 1em 1.5em}
.single-body ul li,.single-body ol li{margin-bottom:.5em}

/* Tags */
.single-tags-area{
  margin-top:30px;
  padding-top:24px;
  border-top:1px solid var(--gris-clair);
}
.tag-pill{
  display:inline-block;
  font-size:12px;
  color:var(--gris);
  text-transform:uppercase;
  letter-spacing:.08em;
  margin-right:14px;
  margin-bottom:8px;
  transition:.2s;
}
.tag-pill:hover{color:var(--vert)}

/* Commentaires */
.single-comments-zone{
  margin-top:50px;
  padding-top:30px;
  border-top:2px solid var(--vert);
}

/* === COLONNE 3 : SIDEBAR === */
.single-sidebar{
  display:flex;
  flex-direction:column;
  gap:24px;
  position:sticky;
  top:80px;
}

/* VOUS AIMEREZ AUSSI */
.related-articles{
  background:#fff;
  padding-bottom:8px;
}
.related-title{
  font-size:14px;
  font-weight:800;
  color:var(--noir);
  text-transform:uppercase;
  letter-spacing:.05em;
  padding-bottom:10px;
  border-bottom:2px solid var(--jaune);
  margin-bottom:0;
}
.related-list{
  display:flex;
  flex-direction:column;
}
.related-item{
  display:block;
  padding:16px 0;
  border-bottom:1px solid var(--gris-clair);
  border-left:4px solid var(--jaune);
  padding-left:14px;
  margin-bottom:0;
  transition:.2s;
}
.related-item:last-child{border-bottom:none}
.related-item h4{
  font-size:15px;
  font-weight:700;
  line-height:1.3;
  color:var(--noir);
  margin-bottom:8px;
  transition:.2s;
  font-family:'Inter',sans-serif!important;
}
.related-item:hover h4{color:var(--vert)}
.related-time{
  display:inline-flex;
  align-items:center;
  gap:5px;
  font-size:12px;
  color:var(--gris);
}
.related-time svg{opacity:.6}

/* DERNIÈRE MINUTE — style Africanews noir */
.single-dm{
  background:var(--noir);
  color:#fff;
}
.single-dm-head{
  background:var(--noir);
  color:#fff;
  padding:14px 18px;
  font-size:14px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
  display:flex;
  justify-content:space-between;
  align-items:center;
  border-bottom:2px solid #222;
}
.single-dm-refresh{
  color:var(--jaune);
  font-size:18px;
  text-decoration:none;
  transition:.2s;
}
.single-dm-refresh:hover{transform:rotate(180deg)}
.single-dm-date{
  background:#1a1a1a;
  color:#aaa;
  padding:6px 18px;
  font-size:12px;
  text-align:center;
  border-bottom:1px solid #222;
}
.single-dm-list{
  background:var(--noir);
  max-height:600px;
  overflow-y:auto;
}
.single-dm-list::-webkit-scrollbar{width:4px}
.single-dm-list::-webkit-scrollbar-track{background:#1a1a1a}
.single-dm-list::-webkit-scrollbar-thumb{background:var(--jaune)}
.single-dm-item{
  display:grid;
  grid-template-columns:18px 50px 1fr;
  gap:8px;
  align-items:start;
  padding:14px 18px;
  border-bottom:1px solid #1a1a1a;
  color:#fff;
  transition:.2s;
}
.single-dm-item:last-child{border-bottom:none}
.single-dm-item:hover{background:#1a1a1a}
.single-dm-item .dm-time-ico{
  color:var(--jaune);
  display:flex;
  align-items:center;
  justify-content:center;
  padding-top:2px;
}
.single-dm-item .dm-time{
  font-size:12px;
  color:#aaa;
  font-weight:600;
  font-family:'Roboto Condensed',sans-serif;
  padding-top:1px;
}
.single-dm-item .dm-title{
  font-size:13px;
  line-height:1.4;
  color:#fff;
  font-weight:500;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.single-dm-item:hover .dm-title{color:var(--jaune)}

/* === RESPONSIVE === */
@media (max-width:1100px){
  .single-article-africanews{
    grid-template-columns:50px 1fr 280px;
    gap:24px;
  }
}
@media (max-width:900px){
  .single-article-africanews{
    grid-template-columns:1fr;
    gap:30px;
  }
  .single-share{
    position:static;
    flex-direction:row;
    flex-wrap:wrap;
    justify-content:flex-start;
    order:3;
  }
  .single-main-col{order:1}
  .single-sidebar{
    order:2;
    position:static;
  }
}
@media (max-width:600px){
  .single-wrap{padding:20px 16px 30px}
  .single-h1{font-size:26px}
  .single-byline{font-size:13px}
  .single-lead{font-size:16px}
  .single-body{font-size:16px}
}

/* === ANCIENS STYLES SINGLE (gardés pour compat avec page.php / single-elannews_video.php) === */
.archive-header{
  border-bottom:2px solid var(--vert);
  padding-bottom:18px;margin-bottom:32px;
}
.archive-title{
  font-size:36px;font-weight:900;letter-spacing:-.02em;color:var(--vert-fonce);
}
.archive-description,.archive-subtitle{
  margin-top:8px;color:var(--gris);font-style:italic;
}

.single-header{margin-bottom:30px}
.rubrique-tag{
  display:inline-block;font-family:inherit;
  font-size:11px;font-weight:700;text-transform:uppercase;
  letter-spacing:.15em;background:var(--noir);color:var(--jaune);
  padding:5px 12px;margin-bottom:18px;
}
.single-title{
  font-size:clamp(28px,3.5vw,42px);font-weight:900;line-height:1.1;letter-spacing:-.02em;
  margin:8px 0 14px;color:var(--texte);
}
.single-chapeau{
  font-size:18px;line-height:1.55;color:#333;margin-bottom:18px;
  font-style:italic;font-weight:500;
}
.single-meta{
  display:flex;align-items:center;gap:14px;font-size:13px;
  color:var(--gris);flex-wrap:wrap;text-transform:uppercase;letter-spacing:.05em;
}
.single-meta strong{color:var(--noir)}
.single-image{margin:30px 0}
.single-image img{width:100%;height:auto;display:block}
.single-image figcaption{
  font-size:11px;color:var(--gris);
  text-transform:uppercase;letter-spacing:.1em;margin-top:8px;
}
.single-content{
  font-size:17px;line-height:1.7;color:#222;
}
.single-content p{margin-bottom:1.2em}
.single-content h2{font-weight:800;font-size:28px;margin:1.6em 0 .6em;letter-spacing:-.01em;color:var(--vert-fonce)}
.single-content h3{font-weight:700;font-size:22px;margin:1.4em 0 .5em}
.single-content a{color:var(--vert);text-decoration:underline}
.single-content blockquote{
  border-left:4px solid var(--vert);
  padding:6px 0 6px 20px;margin:1.4em 0;
  font-style:italic;color:#444;
}
.single-content img{margin:1.4em 0}
.single-content ul,.single-content ol{margin:1em 0 1em 1.5em}

.single-tags{margin-top:30px;padding-top:20px;border-top:1px solid rgba(0,0,0,.1)}
.single-tags a{
  display:inline-block;font-size:11px;
  color:var(--gris);text-transform:uppercase;letter-spacing:.1em;
  margin-right:14px;transition:.2s;
}
.single-tags a:hover{color:var(--vert)}

/* === SINGLE VIDÉO === */
.single-video .video-embed-wrap{
  position:relative;width:100%;padding-bottom:56.25%;height:0;
  margin:30px 0;background:#000;
}
.single-video .video-embed-wrap iframe{
  position:absolute;top:0;left:0;width:100%;height:100%;border:0;
}
.related-videos{margin-top:60px;padding:30px;background:var(--noir);color:#fff}
.related-videos h3{
  font-size:24px;font-weight:800;margin-bottom:20px;color:#fff;
  text-transform:uppercase;letter-spacing:-.005em;
}
.related-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;
}

/* === ARCHIVES === */
.liste-articles{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:30px;
}

/* === PAGINATION === */
.elannews-pagination,.navigation.pagination{
  margin:50px 0 20px;text-align:center;
}
.elannews-pagination .nav-links,.navigation.pagination .nav-links{
  display:inline-flex;gap:6px;flex-wrap:wrap;justify-content:center;
}
.elannews-pagination a,.elannews-pagination span,
.navigation.pagination a,.navigation.pagination span{
  padding:8px 14px;font-size:13px;
  border:1px solid rgba(0,0,0,.15);background:#fff;
  text-transform:uppercase;letter-spacing:.05em;transition:.2s;font-weight:600;
}
.elannews-pagination .current,
.navigation.pagination .current{background:var(--vert);color:#fff;border-color:var(--vert)}
.elannews-pagination a:hover,
.navigation.pagination a:hover{background:var(--vert);color:#fff;border-color:var(--vert)}

/* === COMMENTS === */
.comments-area{margin-top:60px;padding-top:40px;border-top:2px solid var(--vert)}
.comments-title{font-weight:800;font-size:24px;margin-bottom:20px;color:var(--vert-fonce)}
.comment-list{list-style:none;margin:0 0 30px;padding:0}
.comment-list li{padding:18px;background:var(--gris-bg);margin-bottom:14px}
.comment-meta{font-size:11px;color:var(--gris);text-transform:uppercase;margin-bottom:8px}
.comment-form input[type="text"],.comment-form input[type="email"],
.comment-form input[type="url"],.comment-form textarea{
  width:100%;padding:10px 12px;border:1px solid rgba(0,0,0,.2);
  font-family:'Inter',sans-serif;font-size:14px;background:#fff;
}
.comment-form textarea{min-height:120px}
.comment-form input[type="submit"],.submit{
  background:var(--vert);color:#fff;border:0;
  padding:12px 24px;font-size:12px;text-transform:uppercase;letter-spacing:.15em;
  cursor:pointer;font-weight:700;
}
.comment-form input[type="submit"]:hover{background:var(--vert-fonce)}

/* === FOOTER === */
.site-footer{background:var(--noir);color:#aaa;padding:50px 0 0;margin-top:0}
.footer-inner{width:100%;padding:0 30px}
.footer-top{
  display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:30px;
  padding-bottom:30px;border-bottom:1px solid #222;
}
.footer-brand .logo{font-size:32px;margin-bottom:14px}
.footer-brand .logo .el{color:#fff}
.footer-brand .logo .news{color:var(--vert-clair)}
.footer-brand p{color:#888;font-size:13px;line-height:1.6;max-width:380px}
.footer-socials{margin-top:16px;display:flex;gap:8px}
.footer-socials a{
  width:34px;height:34px;background:#1a1a1a;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:13px;color:#fff;transition:.2s;
}
.footer-socials a:hover{background:var(--vert);color:#fff}
.footer-col h6{
  color:var(--jaune);font-size:11px;font-weight:700;
  text-transform:uppercase;letter-spacing:.1em;margin-bottom:14px;
}
.footer-col a{display:block;padding:5px 0;color:#aaa;font-size:13px;transition:.2s}
.footer-col a:hover{color:var(--vert-clair)}
.footer-col ul{list-style:none}

.footer-bottom{
  background:#000;padding:18px 30px;
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;
  font-size:11px;color:#666;text-transform:uppercase;letter-spacing:.05em;
}

/* === RESPONSIVE === */
@media (max-width:1200px){
  .main-wrap{grid-template-columns:1fr 280px}
  .cards-grid-4{grid-template-columns:repeat(3,minmax(0,1fr))}
  .cards-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .videos-grid,.regions-grid{grid-template-columns:repeat(3,1fr)}
  .videos-grid .video-card:nth-child(4),
  .regions-grid .region-card:nth-child(4){display:none}
  .footer-top{grid-template-columns:2fr 1fr 1fr 1fr}
  .footer-top .footer-col:nth-child(5){display:none}
}
@media (max-width:1000px){
  .main-wrap{grid-template-columns:1fr;padding:20px}
  .sidebar{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
  }
  .videos-band,.regions-band{padding-left:20px;padding-right:20px}
  .footer-inner{padding:0 20px}
  .cards-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:800px){
  .header-top-inner,.header-main-inner,.main-nav-inner,.breaking-inner{padding:0 16px;flex-wrap:wrap;gap:10px}
  .main-wrap{padding:16px}
  .videos-band,.regions-band{padding:30px 16px}
  .footer-inner{padding:0 16px}
  .footer-bottom{padding:18px 16px}
  .hero-section{grid-template-columns:1fr}
  .hero-title{font-size:24px}
  .cards-grid-4,.videos-grid,.regions-grid{grid-template-columns:repeat(2,1fr)}
  .cards-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rubriques-grid{grid-template-columns:1fr}
  .footer-top{grid-template-columns:1fr 1fr}
  .main-nav{overflow-x:auto}
  .main-nav-inner{white-space:nowrap;flex-wrap:nowrap}
  .main-nav .menu-end{display:none}
  .search-box{display:none}
  .sidebar{grid-template-columns:1fr}
}
@media (max-width:500px){
  .cards-grid-4,.cards-grid-3,.videos-grid,.regions-grid,.footer-top{grid-template-columns:1fr}
  .hero-title{font-size:20px}
  .subscribe-btn{padding:7px 14px;font-size:11px}
}
