/*
Theme Name: Café con la Gerencia
Template: astra
Description: Child theme de Astra para Café con la Gerencia — ticker de indicadores económicos + layout editorial.
Author: Johan Roberto Rueda
Version: 0.1.0
*/

:root{
  --ccg-navy:#0D203E;
  --ccg-navy-deep:#081527;
  --ccg-navy-mid:#16294A;
  --ccg-gold:#CCA458;
  --ccg-gold-strong:#8F6A2E;
  --ccg-ink:#10182A;
  --ccg-ink-soft:#5B6472;
  --ccg-bg:#F5F6F8;
  --ccg-surface:#FFFFFF;
  --ccg-line:#E3E5EA;
  --ccg-good:#1F7A4C;
  --ccg-bad:#B23B22;
}

body{
  background:var(--ccg-bg);
  color:var(--ccg-ink);
}

/* ============ Ticker de indicadores ============ */
.ccg-ticker{
  background:var(--ccg-navy-deep);
  color:#fff;
  display:flex;
  align-items:center;
  font-size:12.5px;
  overflow:hidden;
  white-space:nowrap;
  position:relative;
}
.ccg-ticker-live{
  display:flex;
  align-items:center;
  gap:6px;
  padding:9px 14px;
  background:rgba(204,164,88,.12);
  border-right:1px solid rgba(255,255,255,.08);
  flex-shrink:0;
}
.ccg-ticker-live svg{width:16px;height:16px;display:block;}
.ccg-ticker-live .ccg-pulse{
  width:6px;height:6px;border-radius:50%;
  background:var(--ccg-gold);
  margin-left:2px;
  animation:ccg-blink 2s ease-in-out infinite;
}
@keyframes ccg-blink{ 0%,100%{opacity:1;} 50%{opacity:.25;} }
@media (prefers-reduced-motion: reduce){ .ccg-ticker-live .ccg-pulse{animation:none;} }

.ccg-ticker-track-wrap{
  flex:1;
  overflow:hidden;
  position:relative;
}
.ccg-ticker-track{
  display:flex;
  align-items:center;
  gap:26px;
  padding:9px 18px;
  width:max-content;
  animation:ccg-scroll 38s linear infinite;
}
.ccg-ticker-track-wrap:hover .ccg-ticker-track{ animation-play-state:paused; }
@keyframes ccg-scroll{
  from{ transform:translateX(0); }
  to{ transform:translateX(-50%); }
}
@media (prefers-reduced-motion: reduce){
  .ccg-ticker-track{ animation:none; }
}

.ccg-tick{display:flex;align-items:baseline;gap:7px;font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;flex-shrink:0;}
.ccg-tick .ccg-label{color:rgba(255,255,255,.6);font-family:-apple-system,"Segoe UI",sans-serif;font-size:11.5px;letter-spacing:.02em;}
.ccg-tick .ccg-val{font-weight:700;font-variant-numeric:tabular-nums;color:#fff;}
.ccg-tick .ccg-delta{font-weight:700;font-variant-numeric:tabular-nums;}
.ccg-tick .ccg-delta.up{color:#5fd08b;}
.ccg-tick .ccg-delta.down{color:#ef8266;}
.ccg-tick .ccg-delta.flat{color:rgba(255,255,255,.55);}

.ccg-ticker-cta{
  margin-left:auto;
  flex-shrink:0;
  background:var(--ccg-gold);
  color:var(--ccg-navy-deep);
  font-weight:800;
  font-size:11.5px;
  letter-spacing:.04em;
  padding:9px 18px;
  text-transform:uppercase;
  text-decoration:none;
  display:block;
}
.ccg-ticker-cta:hover{ color:var(--ccg-navy-deep); background:#dab671; }

/* ============ Ajustes de marca sobre Astra ============ */
.site-header,
.ast-primary-header{
  border-bottom:1px solid var(--ccg-line);
}
.main-header-menu .menu-item.current-menu-item > a,
.main-header-menu a:hover{
  color:var(--ccg-navy) !important;
  border-bottom:2px solid var(--ccg-gold);
}
a{ color:var(--ccg-gold-strong); }
a:hover{ color:var(--ccg-navy); }

.ast-container{ max-width:1180px; }

/* ============ Menú principal (Elementor "Menu" header) — fondo navy, logo blanco ============
   51f0da0d0 / 5dfa5817: filas de escritorio (logo+iconos / menú).
   bc0549b   / 19c6566  : mismas filas pero en las secciones "elementor-hidden-desktop"
                          que Elementor muestra en su lugar por debajo del breakpoint
                          móvil — sin esto quedan con fondo blanco y logo/iconos negros. */
.elementor-element-51f0da0d0,
.elementor-element-5dfa5817,
.elementor-element-bc0549b,
.elementor-element-19c6566{
  background-color:var(--ccg-navy) !important;
}
.elementor-element-51f0da0d0 .elementor-widget-theme-site-logo img,
.elementor-element-bc0549b .elementor-widget-theme-site-logo img{
  filter:brightness(0) invert(1);
}
.elementor-element-51f0da0d0 .elementor-nav-menu--main .elementor-item,
.elementor-element-51f0da0d0 nav a,
.elementor-element-51f0da0d0 .elementor-icon,
.elementor-element-51f0da0d0 svg,
.elementor-element-51f0da0d0 a,
.elementor-element-5dfa5817 .elementor-nav-menu--main .elementor-item,
.elementor-element-5dfa5817 nav a,
.elementor-element-5dfa5817 .elementor-icon,
.elementor-element-5dfa5817 svg,
.elementor-element-5dfa5817 a,
.elementor-element-bc0549b .elementor-nav-menu--main .elementor-item,
.elementor-element-bc0549b nav a,
.elementor-element-bc0549b .elementor-icon,
.elementor-element-bc0549b svg,
.elementor-element-bc0549b a{
  color:#fff !important;
  fill:#fff !important;
}
/* Submenús desplegables (hover) del menú de escritorio: fondo claro por
   defecto, así que su texto NO hereda el blanco forzado arriba — si no,
   queda invisible (blanco sobre blanco), igual que pasaba en el drawer móvil. */
.elementor-element-51f0da0d0 .wpr-sub-menu a,
.elementor-element-5dfa5817 .wpr-sub-menu a{
  color:var(--ccg-ink) !important;
  fill:var(--ccg-ink) !important;
}
.elementor-element-51f0da0d0 .wpr-sub-menu a:hover,
.elementor-element-5dfa5817 .wpr-sub-menu a:hover{
  color:var(--ccg-gold-strong) !important;
  fill:var(--ccg-gold-strong) !important;
}
/* El botón hamburguesa (.wpr-mobile-toggle) ya trae su propio círculo/línea
   con color fijo, independiente del texto del menú — no hace falta tocarlo.
   El contenido del panel desplegable (.wpr-nav-menu-container) tiene fondo
   claro por defecto, así que su texto se deja oscuro (no blanco) o queda
   invisible. Solo el fondo de la fila pasa a navy. */
.elementor-element-19c6566 .wpr-nav-menu-container{
  background:var(--ccg-surface) !important;
}
.elementor-element-19c6566 .wpr-nav-menu-container .wpr-menu-item{
  color:var(--ccg-ink) !important;
}
.elementor-element-19c6566 .wpr-nav-menu-container .wpr-menu-item:hover,
.elementor-element-19c6566 .wpr-nav-menu-container .wpr-active-menu-item{
  color:var(--ccg-gold-strong) !important;
}

/* Dropdown de resultados del buscador (Jet Search): mismo problema de
   herencia que los submenús — el fondo del panel de resultados es claro,
   pero el texto hereda el blanco forzado del navbar y queda invisible. */
.jet-ajax-search__results-holder{
  background:var(--ccg-surface) !important;
}
.jet-ajax-search__results-count,
.jet-ajax-search__item-title,
.jet-ajax-search__item-content{
  color:var(--ccg-ink) !important;
}
.jet-ajax-search__item-content{
  color:var(--ccg-ink-soft) !important;
}
.jet-ajax-search__results-item:hover .jet-ajax-search__item-title{
  color:var(--ccg-gold-strong) !important;
}
.elementor-element-51f0da0d0 .elementor-nav-menu--main .elementor-item:hover,
.elementor-element-51f0da0d0 .elementor-nav-menu--main .elementor-item.elementor-item-active,
.elementor-element-5dfa5817 .elementor-nav-menu--main .elementor-item:hover,
.elementor-element-5dfa5817 .elementor-nav-menu--main .elementor-item.elementor-item-active,
.elementor-element-19c6566 .wpr-menu-item:hover{
  color:var(--ccg-gold) !important;
}
.elementor-element-51f0da0d0 input,
.elementor-element-51f0da0d0 input::placeholder,
.elementor-element-bc0549b input,
.elementor-element-bc0549b input::placeholder{
  color:var(--ccg-ink) !important;
}
/* Menú desplegable móvil (drawer): mantener fondo claro y texto oscuro para legibilidad */
.elementor-element-19c6566 .wpr-nav-menu-container.wpr-mobile-menu-active,
.elementor-element-19c6566 .wpr-nav-menu-container.wpr-mobile-menu-active .wpr-menu-item{
  color:var(--ccg-ink) !important;
}

/* eyebrow de categoría reutilizable */
.ccg-eyebrow{
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--ccg-gold-strong);
}

/* ============ Portada: título de bloque reutilizable ============ */
.ccg-block-title{
  font-size:11px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--ccg-gold-strong);
  font-weight:800;
  margin:0 0 14px;
  display:flex;
  align-items:center;
  gap:8px;
}
.ccg-block-title::after{
  content:"";
  flex:1;
  height:1px;
  background:var(--ccg-line);
}

/* ============ Grid hero (titulares / feature / sidebar) ============ */
.ccg-home{
  max-width:1180px;
  margin:0 auto;
  padding:28px 20px;
}
.ccg-hero-grid{
  display:grid;
  grid-template-columns:1fr 1.7fr 1fr;
  gap:0;
  background:var(--ccg-surface);
  border:1px solid var(--ccg-line);
  border-radius:12px;
  overflow:hidden;
}
@media (max-width:900px){
  .ccg-hero-grid{ grid-template-columns:1fr; }
  .ccg-col{ border-right:none !important; border-bottom:1px solid var(--ccg-line); }
}

.ccg-col{ padding:22px 22px; }
.ccg-col--headlines{ border-right:1px solid var(--ccg-line); }
.ccg-col--feature{ border-right:1px solid var(--ccg-line); }

.ccg-headline-list{ list-style:none; margin:0; padding:0; }
.ccg-headline-list li{
  padding:11px 0;
  border-bottom:1px dashed var(--ccg-line);
}
.ccg-headline-list li:last-child{ border-bottom:none; }
.ccg-headline-list p{
  margin:4px 0 0;
  font-size:13.5px;
  font-weight:700;
  line-height:1.35;
  color:var(--ccg-ink);
}

.ccg-feature-media{
  aspect-ratio:16/10;
  border-radius:8px;
  background:
    radial-gradient(circle at 80% 20%, rgba(204,164,88,.25), transparent 55%),
    linear-gradient(135deg,var(--ccg-navy) 0%,var(--ccg-navy-mid) 60%,#26406b 100%);
  margin-bottom:14px;
  display:flex;
  align-items:flex-end;
  padding:14px;
  position:relative;
  overflow:hidden;
}
/* La miniatura llena el contenedor sin importar su tamaño real — si no,
   una imagen más chica que la caja queda flotando en su tamaño natural
   y deja ver el degradado de fondo alrededor. */
.ccg-feature-media img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:0;
}
.ccg-feature-tag{
  position:relative;
  z-index:1;
  background:var(--ccg-gold);
  color:var(--ccg-navy-deep);
  font-size:10.5px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
  padding:4px 10px;
  border-radius:3px;
}
.ccg-feature-title{
  font-size:21px;
  font-weight:800;
  line-height:1.25;
  margin:0 0 8px;
  letter-spacing:-.01em;
  text-wrap:balance;
  color:var(--ccg-ink);
}
.ccg-feature-dek{
  font-size:13px;
  color:var(--ccg-ink-soft);
  line-height:1.55;
  margin:0 0 10px;
}
.ccg-byline{
  font-size:11.5px;
  color:var(--ccg-ink-soft);
  font-family:ui-monospace,monospace;
}

.ccg-tabs{ display:flex; gap:14px; margin-bottom:14px; font-size:12px; font-weight:700; }
.ccg-tabs span{ color:var(--ccg-ink-soft); cursor:default; }
.ccg-tabs span.active{
  color:var(--ccg-navy);
  border-bottom:2px solid var(--ccg-gold);
  padding-bottom:5px;
}
.ccg-side-list{ list-style:none; margin:0; padding:0; }
.ccg-side-list li{
  display:flex;
  gap:10px;
  padding:9px 0;
  border-bottom:1px dashed var(--ccg-line);
}
.ccg-side-list li:last-child{ border-bottom:none; }
.ccg-side-thumb{
  width:44px; height:44px;
  border-radius:6px;
  background:linear-gradient(140deg,#e8ddc8,var(--ccg-gold));
  flex-shrink:0;
  display:block;
}
.ccg-side-list p{ margin:0; font-size:12.5px; font-weight:700; line-height:1.3; color:var(--ccg-ink); }
.ccg-meta{ font-size:10.5px; color:var(--ccg-ink-soft); margin-top:3px; display:block; }

/* ============ Franja de temas ============ */
.ccg-topics-strip{
  display:flex;
  gap:10px;
  padding:16px 4px;
  margin-top:16px;
  overflow-x:auto;
}
.ccg-chip{
  flex-shrink:0;
  font-size:11.5px;
  font-weight:700;
  padding:6px 14px;
  border-radius:99px;
  border:1px solid var(--ccg-line);
  color:var(--ccg-ink-soft);
  background:var(--ccg-surface);
}
.ccg-chip--hot{ background:var(--ccg-navy); color:#fff; border-color:var(--ccg-navy); }

/* ============ Últimas noticias ============ */
.ccg-latest{ margin-top:32px; }
.ccg-latest-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(230px,1fr));
  gap:20px;
}
.ccg-latest-card{
  background:var(--ccg-surface);
  border:1px solid var(--ccg-line);
  border-radius:10px;
  padding:16px;
}
.ccg-latest-thumb{ display:block; margin:-16px -16px 12px; overflow:hidden; border-radius:10px 10px 0 0; }
.ccg-latest-thumb img{ display:block; width:100%; height:auto; }
.ccg-latest-card h4{ margin:6px 0 4px; font-size:14.5px; line-height:1.35; }
.ccg-latest-card h4 a{ color:var(--ccg-ink); text-decoration:none; }
.ccg-latest-card h4 a:hover{ color:var(--ccg-gold-strong); }

/* ============ Entrada individual (single.php) ============ */
.ccg-single,
.ccg-page,
.ccg-archive{
  max-width:760px;
  margin:0 auto;
  padding:32px 20px 48px;
}
.ccg-single-header{ margin-bottom:20px; }
.ccg-single-title,
.ccg-page-title{
  font-size:32px;
  font-weight:800;
  line-height:1.2;
  letter-spacing:-.01em;
  color:var(--ccg-ink);
  margin:10px 0 10px;
}
.ccg-single-meta{
  font-size:12.5px;
  color:var(--ccg-ink-soft);
  font-family:ui-monospace,monospace;
  margin:0;
}
.ccg-single-media{
  margin:0 0 24px;
  border-radius:10px;
  overflow:hidden;
}
.ccg-single-media img{ display:block; width:100%; height:auto; }

.ccg-single-content{
  font-size:16px;
  line-height:1.75;
  color:var(--ccg-ink);
}
.ccg-single-content p{ margin:0 0 20px; }
.ccg-single-content h2,
.ccg-single-content h3{
  color:var(--ccg-navy);
  margin:32px 0 14px;
}
.ccg-single-content a{ text-decoration:underline; }
.ccg-single-content img{ max-width:100%; height:auto; border-radius:8px; }
.ccg-single-content blockquote{
  border-left:3px solid var(--ccg-gold);
  margin:24px 0;
  padding:4px 0 4px 18px;
  color:var(--ccg-ink-soft);
  font-style:italic;
}

.ccg-single-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:28px 0 0;
}

.ccg-author-box{
  display:flex;
  gap:14px;
  align-items:flex-start;
  margin-top:32px;
  padding-top:24px;
  border-top:1px solid var(--ccg-line);
}
.ccg-author-box img{ border-radius:50%; flex-shrink:0; }
.ccg-author-name{
  font-weight:800;
  font-size:13.5px;
  color:var(--ccg-ink);
  margin:0 0 4px;
}
.ccg-author-bio{
  font-size:12.5px;
  color:var(--ccg-ink-soft);
  line-height:1.5;
  margin:0;
}

.ccg-comments{ margin-top:36px; }

/* ============ Archivo (archive.php) ============ */
.ccg-archive{ max-width:1180px; }
.ccg-archive-header{ margin-bottom:24px; }
.ccg-archive-title{
  font-size:26px;
  font-weight:800;
  color:var(--ccg-ink);
  margin:8px 0 6px;
}
.ccg-archive-desc{
  font-size:13.5px;
  color:var(--ccg-ink-soft);
}
.ccg-archive-empty{
  color:var(--ccg-ink-soft);
  font-size:14px;
}

/* ============ Paginación ============ */
.ccg-pagination{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:32px;
}
.ccg-pagination .page-numbers{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:34px;
  height:34px;
  padding:0 10px;
  border-radius:6px;
  border:1px solid var(--ccg-line);
  background:var(--ccg-surface);
  color:var(--ccg-ink-soft);
  font-size:12.5px;
  font-weight:700;
  text-decoration:none;
}
.ccg-pagination .page-numbers.current{
  background:var(--ccg-navy);
  border-color:var(--ccg-navy);
  color:#fff;
}
.ccg-pagination .page-numbers:hover:not(.current){ border-color:var(--ccg-gold); color:var(--ccg-ink); }

/* ============================================================
   Branding CCG sobre las plantillas de Elementor Theme Builder
   (single + archivo/categoría). Estas plantillas controlan lo
   que se ve en producción — ver memoria del proyecto.
   Se usan clases genéricas de Elementor (no IDs por instancia)
   para que la marca se aplique en cualquier plantilla que use
   estos mismos widgets (Posts, Post Info, Post Title, etc).
   ============================================================ */

/* --- Tarjetas de posts (archivo, relacionadas) --- */
.elementor-posts--skin-cards .elementor-post__card{
  background:var(--ccg-surface);
  border:1px solid var(--ccg-line);
  border-radius:10px;
  box-shadow:none;
  overflow:hidden;
}
.elementor-post__badge{
  background:var(--ccg-gold) !important;
  color:var(--ccg-navy-deep) !important;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
  font-size:10.5px;
}
.elementor-post__title a{
  color:var(--ccg-ink) !important;
}
.elementor-post__title a:hover{
  color:var(--ccg-gold-strong) !important;
}
.elementor-post__excerpt p{
  color:var(--ccg-ink-soft);
}
.elementor-post__read-more{
  color:var(--ccg-gold-strong) !important;
  font-weight:800;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.03em;
}
.elementor-post__read-more:hover{ color:var(--ccg-navy) !important; }
.elementor-post-info,
.elementor-post__meta-data{
  color:var(--ccg-ink-soft) !important;
  font-family:ui-monospace,monospace;
  font-size:11.5px;
}
.elementor-post-author,
.elementor-post-date{ color:var(--ccg-ink-soft) !important; }

/* --- Título y meta de entrada individual --- */
.elementor-widget-theme-post-title .elementor-heading-title{
  font-family:Georgia,"Iowan Old Style",serif !important;
  font-weight:700 !important;
  line-height:1.25 !important;
  letter-spacing:-.01em;
}
.elementor-widget-post-info .elementor-post-info__item{
  color:var(--ccg-ink-soft) !important;
  font-family:ui-monospace,monospace;
  font-size:12.5px;
}
.elementor-widget-post-info a:hover .elementor-post-info__item{
  color:var(--ccg-gold-strong) !important;
}
.elementor-widget-theme-post-featured-image img{
  border-radius:10px;
}

/* --- Cuerpo del artículo: tipografía editorial, más aire para leer --- */
.elementor-widget-theme-post-content{
  font-size:18px;
  line-height:1.75;
  color:var(--ccg-ink);
}
.elementor-widget-theme-post-content h2,
.elementor-widget-theme-post-content h3{
  font-family:Georgia,"Iowan Old Style",serif;
  color:var(--ccg-ink);
}
.elementor-widget-theme-post-content strong{
  color:var(--ccg-navy);
}

/* --- Barra de progreso de lectura (post individual) --- */
.ccg-reading-progress{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:3px;
  background:transparent;
  z-index:9999;
  pointer-events:none;
}
.ccg-reading-progress__fill{
  height:100%;
  width:0%;
  background:var(--ccg-gold);
  transition:width .1s linear;
}

/* --- Sidebar "Más Artículos" en post individual: tarjetas compactas
   para que no compitan visualmente con el artículo principal --- */
.elementor-element-4ecdfa04.elementor-posts--thumbnail-top .elementor-post__thumbnail__link{
  max-height:96px;
  overflow:hidden;
}
.elementor-element-4ecdfa04 .elementor-post__title{
  font-size:14px;
  line-height:1.35;
}
.elementor-element-4ecdfa04 .elementor-post__excerpt{
  display:none;
}
.elementor-element-4ecdfa04 .elementor-post__meta-data{
  font-size:10.5px;
}

/* --- Paginación (widget Archive Posts) --- */
.elementor-screen-only{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
  padding:0;
  margin:-1px;
}
.elementor-pagination{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin:40px 0 48px;
}
.elementor-pagination .page-numbers{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:34px;
  height:34px;
  padding:0 12px;
  border-radius:6px;
  border:1px solid var(--ccg-line);
  background:var(--ccg-surface);
  color:var(--ccg-ink-soft) !important;
  font-size:12.5px;
  font-weight:700;
  text-decoration:none !important;
  transition:border-color .15s ease, color .15s ease, background .15s ease;
}
.elementor-pagination .page-numbers.prev,
.elementor-pagination .page-numbers.next{
  padding:0 14px;
  color:var(--ccg-ink) !important;
}
.elementor-pagination .page-numbers.dots{
  border-color:transparent;
  background:transparent;
}
.elementor-pagination .page-numbers.current{
  background:var(--ccg-navy) !important;
  border-color:var(--ccg-navy) !important;
  color:#fff !important;
}
.elementor-pagination a.page-numbers:hover{
  border-color:var(--ccg-gold) !important;
  color:var(--ccg-ink) !important;
  background:var(--ccg-surface);
}
.elementor-pagination span.page-numbers.prev,
.elementor-pagination span.page-numbers.next{
  opacity:.4;
}

/* --- Banner de cabecera de categoría/archivo (sección con overlay) --- */
.elementor-element-36a30175{
  background:linear-gradient(rgba(8,21,39,.72),rgba(13,32,62,.72)) !important;
}
.elementor-element-53a9b1eb{
  color:#fff !important;
  font-weight:800;
  letter-spacing:-.01em;
}
.elementor-element-3713b5c4 .elementor-heading-title{
  color:var(--ccg-gold) !important;
  font-weight:800;
  letter-spacing:-.01em;
}
.elementor-element-313fe7a #breadcrumbs,
.elementor-element-313fe7a #breadcrumbs span{
  color:rgba(255,255,255,.75) !important;
}
.elementor-element-313fe7a #breadcrumbs a{
  color:var(--ccg-gold) !important;
}

/* --- Sidebar de entrada individual: títulos de bloque --- */
.elementor-element-558dc .elementor-heading-title,
.elementor-element-7ad9a0ce .elementor-heading-title{
  font-size:11px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--ccg-gold-strong) !important;
  font-weight:800 !important;
}

/* --- Botones de compartir --- */
.elementor-widget-share-buttons .elementor-share-buttons__button,
.elementor-widget-share-buttons a{
  color:var(--ccg-navy) !important;
}
.elementor-widget-share-buttons a:hover{ color:var(--ccg-gold-strong) !important; }

/* ============================================================
   Categoría: post destacado + chips de subcategorías
   Inyectados vía functions.php sobre la plantilla de Elementor
   5702, dentro del widget de breadcrumbs (313fe7a) y del grid
   de posts (e8c9124). Ver ccg_elementor_category_widgets().
   ============================================================ */
.elementor-element-313fe7a .ccg-category-siblings{
  margin-top:14px;
  padding:0;
  justify-content:center;
  flex-wrap:wrap;
}

.ccg-category-feature{
  max-width:900px;
  margin:0 auto 32px;
}
.ccg-category-feature .ccg-feature-media{
  aspect-ratio:21/9;
}
.ccg-category-feature .ccg-feature-title{
  font-size:26px;
}

/* La tarjeta del post destacado se repite como primera tarjeta del grid
   (el widget de Elementor trae su propia query, separada de la del
   destacado) — se oculta solo en página 1, donde ya se muestra arriba.
   Es un parche visual por CSS, no una exclusión real de la query: si el
   orden del grid llegara a no coincidir con "el más reciente" (posts
   patrocinados fijados, cambios de orden, etc.) podría ocultar la tarjeta
   equivocada en vez de la duplicada. */
body.ccg-category-feature-active .elementor-element-e8c9124 .elementor-posts-container > .elementor-post:first-child{
  display:none;
}
