/* ==========================================================
   CORRIENTES DIGITAL - Portada tipo portal
   Se carga solo en la página de inicio.
   ========================================================== */

.cd-portal {
  --cd-navy: #0f2d5e;
  --cd-red: #d62828;
  --cd-ink: #111;
  --cd-muted: #5b6470;
  --cd-line: #e3e6ea;
  --cd-card: #fff;
  --cd-radius: 8px;
  font-family: 'Inter', sans-serif;
  color: var(--cd-ink);
  padding: 20px 0 40px;
}

.cd-portal *,
.cd-portal *::before,
.cd-portal *::after { box-sizing: border-box; }

.cd-wrap {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 16px;
}

.cd-vacio {
  background: var(--cd-card);
  border-radius: var(--cd-radius);
  padding: 40px 20px;
  text-align: center;
  color: var(--cd-muted);
}

/* ---------- Piezas comunes ---------- */

.cd-portal a { text-decoration: none; }

.cd-thumb {
  display: block;
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 6px;
  background: #dfe3e8;
}

/* Gana a las reglas globales de .wp-post-image del CSS adicional */
.cd-portal .cd-thumb img,
.cd-portal .cd-thumb .cd-img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 0 !important;
  background: none !important;
  margin: 0 !important;
}

.cd-ph {
  background: linear-gradient(135deg, var(--cd-navy), #26498a);
}

.cd-etq {
  display: inline-block;
  font-family: 'Montserrat', sans-serif;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--cd-red);
  margin-bottom: 6px;
}

.cd-portal .cd-titulo {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 17px;
  line-height: 1.25;
  margin: 0;
}

.cd-portal .cd-titulo a { color: var(--cd-ink) !important; }
.cd-portal .cd-titulo a:hover { color: var(--cd-red) !important; }

.cd-portal .cd-titulo--lg { font-size: 22px; }
.cd-portal .cd-titulo--xl { font-size: 34px; line-height: 1.15; font-weight: 800; }

.cd-extracto {
  margin: 10px 0 0;
  font-size: 15px;
  line-height: 1.5;
  color: #333;
}

.cd-hace {
  display: block;
  margin-top: 8px;
  font-size: 12px;
  color: var(--cd-muted);
}

.cd-card-txt { min-width: 0; }

/* ---------- Bloque superior ---------- */

.cd-top {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}

.cd-top-main,
.cd-top-side > .cd-widget,
.cd-ultimas,
.cd-sec {
  background: var(--cd-card);
  border-radius: var(--cd-radius);
}

.cd-top-main { padding: 20px; }

.cd-card--principal .cd-thumb { margin-bottom: 14px; }

.cd-card--horizontal {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
  gap: 16px;
  padding-top: 18px;
  margin-top: 18px;
  border-top: 1px solid var(--cd-line);
}

.cd-mas-notas {
  margin-top: 18px;
  padding-top: 6px;
  border-top: 1px solid var(--cd-line);
}

/* Miniatura chica al costado */
.cd-card--lista {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  gap: 14px;
  align-items: start;
  padding: 12px 0;
  border-bottom: 1px solid var(--cd-line);
}

.cd-card--lista:last-child { border-bottom: 0; }
.cd-card--lista .cd-thumb { aspect-ratio: 4 / 3; }
.cd-card--lista .cd-titulo { font-size: 16px; }
.cd-card--lista .cd-hace { margin-top: 4px; }

/* ---------- Barra lateral ---------- */

.cd-top-side > .cd-widget {
  padding: 14px;
  margin-bottom: 20px;
}

.cd-top-side .cd-widget-title {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  font-weight: 800;
  text-transform: uppercase;
  margin: 0 0 10px;
}

.cd-ultimas { padding: 16px 18px 6px; }

.cd-sec-titulo {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 12px;
  padding-bottom: 8px;
  border-bottom: 2px solid #000;
  font-family: 'Montserrat', sans-serif;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--cd-ink);
}

.cd-sec-titulo a { color: var(--cd-ink) !important; }
.cd-sec-titulo a:hover { color: var(--cd-red) !important; }

.cd-vivo {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--cd-red);
  box-shadow: 0 0 0 0 rgba(214, 40, 40, .6);
  animation: cd-pulso 1.8s infinite;
}

@keyframes cd-pulso {
  70%  { box-shadow: 0 0 0 8px rgba(214, 40, 40, 0); }
  100% { box-shadow: 0 0 0 0 rgba(214, 40, 40, 0); }
}

.cd-ult-item {
  padding: 11px 0;
  border-bottom: 1px solid var(--cd-line);
}

.cd-ult-item:last-child { border-bottom: 0; }
.cd-ult-item .cd-hace { margin: 0 0 3px; color: var(--cd-red); font-weight: 600; }
.cd-ult-item .cd-titulo { font-size: 15px; }

/* ---------- Banners ---------- */

.cd-banner {
  margin: 24px 0;
  text-align: center;
}

.cd-banner .cd-widget-title { display: none; }
.cd-banner--full { grid-column: 1 / -1; margin: 0; }
.cd-banner--top { margin: 0 0 20px; }

/* ---------- Secciones por categoría ---------- */

.cd-secciones {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  margin-top: 24px;
}

.cd-sec { padding: 18px 20px 8px; }
.cd-sec--completo { grid-column: 1 / -1; }

.cd-ver-mas {
  margin-left: auto;
  font-size: 12px;
  font-weight: 600;
  color: var(--cd-navy) !important;
}

.cd-sec-head {
  display: flex;
  align-items: center;
  margin: 0 0 12px;
  border-bottom: 2px solid #000;
}

.cd-sec-head .cd-sec-titulo {
  flex: 1;
  margin: 0;
  padding: 0 0 8px;
  border-bottom: 0;
}

.cd-sec-head .cd-ver-mas { padding-bottom: 8px; }

.cd-sec-body > .cd-card--media .cd-thumb { margin-bottom: 10px; }
.cd-sec-body > .cd-card--media .cd-titulo { font-size: 19px; }

.cd-sec-lista { margin-top: 6px; }

/* Texto solo: título con línea separadora */
.cd-card--texto {
  padding: 11px 0;
  border-top: 1px solid var(--cd-line);
}

.cd-card--texto .cd-titulo { font-size: 15.5px; }
.cd-card--texto .cd-hace { margin-top: 3px; }

/* Sección ancha: nota principal a la izquierda, lista a la derecha */
.cd-sec--completo .cd-sec-body {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  gap: 24px;
  align-items: start;
}

.cd-sec--completo .cd-sec-body > .cd-card--media .cd-titulo { font-size: 24px; }
.cd-sec--completo .cd-sec-lista { margin-top: 0; }

/* ---------- Pantallas medianas y celulares ---------- */

@media (max-width: 992px) {
  .cd-top { grid-template-columns: minmax(0, 1fr); }
  .cd-secciones { grid-template-columns: minmax(0, 1fr); }
  .cd-sec--completo .cd-sec-body { grid-template-columns: minmax(0, 1fr); gap: 8px; }
}

@media (max-width: 600px) {
  .cd-portal { padding-top: 12px; }
  .cd-wrap { padding: 0 10px; }
  .cd-top-main { padding: 14px; }
  .cd-portal .cd-titulo--xl { font-size: 26px; }
  .cd-portal .cd-titulo--lg { font-size: 19px; }
  .cd-card--horizontal { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .cd-card--lista { grid-template-columns: 96px minmax(0, 1fr); }
  .cd-sec { padding: 14px 14px 6px; }
}

@media (prefers-reduced-motion: reduce) {
  .cd-vivo { animation: none; }
}

/* Imágenes de banners: nunca se salen del ancho */
.cd-banner img { max-width: 100%; height: auto; }
.cd-banner .cd-widget { background: transparent; }

/* ---------- Destacadas anteriores ---------- */

.cd-anteriores {
  margin-top: 26px;
  padding-top: 18px;
  border-top: 1px solid var(--cd-line);
}

.cd-anteriores .cd-card--horizontal:first-of-type {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.cd-card--horizontal + .cd-card--lista {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid var(--cd-line);
}
