/* =========================================================
   INFOGATE 3.0 - main.css (COMPLETO Y ACTUALIZADO)
   - Incluye soporte para cambiar tipografía vía variables CSS:
     --ig-font-base y --ig-font-headings
   ========================================================= */

/* =========================
   Variables globales
========================= */
:root{
  --ig-primary:#4682B4;
  --ig-text:#0d1b24;
  --ig-muted:#6b7b86;
  --ig-border:rgba(0,0,0,.10);
  --ig-radius:14px;

  /* ✅ Tipografías (para tu futuro módulo "Interfaz") */
  --ig-font-base: system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --ig-font-headings: var(--ig-font-base);

  /* Azul corporativo (modal menú hamburguesa) */
  --ig-corp-blue:#0b2a5b;
  --ig-corp-blue-2:#0a234a;
}

/* =========================
   Reset / Base
========================= */
*{ box-sizing:border-box; }
body{
  margin:0;
  font-family:var(--ig-font-base);
  color:var(--ig-text);
  background:#fff;
}
h1,h2,h3,h4,h5,h6{
  font-family:var(--ig-font-headings);
}

.ig-container{
  width:min(1200px, calc(100% - 32px));
  margin:0 auto;
}

/* =========================
   PREHEADER (color principal)
========================= */
.ig-preheader{
  background:var(--ig-primary);
  color:#fff;
  font-size:12px;
}
.ig-preheader-nav{
  display:flex;
  justify-content:flex-end;
  gap:14px;
  padding:8px 0;
}
.ig-preheader-nav a{
  color:#fff;
  text-decoration:none;
  opacity:.92;
}
.ig-preheader-nav a:hover{
  opacity:1;
  text-decoration:underline;
}

/* =========================
   MAIN HEADER (blanco)
========================= */
.ig-mainheader{
  background:#fff;
  border-bottom:1px solid var(--ig-border);
}
.ig-mainheader-row{
  display:flex;
  align-items:center;
  gap:18px;
  padding:14px 0;
}

/* Logo */
.ig-logo{
  display:flex;
  align-items:center;
  text-decoration:none;
  line-height:1;
  white-space:nowrap;
}
.ig-logo-img{
  height:60px;
  width:auto;
  display:block;
}

/* NAV */
.ig-nav{
  display:flex;
  align-items:center;
  gap:16px;
  white-space:nowrap;
  flex:1;
  overflow:visible; /* ✅ no matar submenús */
}
.ig-nav a{
  color:var(--ig-text);
  text-decoration:none;
  font-size:16px;
  font-weight:600;
  padding:8px 8px;
  border-radius:10px;
}
.ig-nav a:hover{
  background:rgba(6,147,227,.10);
  color:var(--ig-primary);
}

/* Donaciones destacado */
.ig-nav-highlight{
  background:var(--ig-primary);
  color:#fff !important;
}
.ig-nav-highlight:hover{
  background:rgba(6,147,227,.92);
  color:#fff !important;
}

/* Burger */
.ig-burger{
  width:44px;
  height:40px;
  border:1px solid var(--ig-border);
  background:#fff;
  border-radius:12px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  cursor:pointer;
  flex:0 0 auto;
}
.ig-burger span{
  display:block;
  width:18px;
  height:2px;
  background:var(--ig-primary);
  border-radius:2px;
}
.ig-burger:hover{
  border-color:rgba(6,147,227,.45);
  background:rgba(6,147,227,.06);
}

/* =========================
   SUBHEADER (color principal)
========================= */
.ig-subheader{
  background:var(--ig-primary);
  border-bottom:1px solid rgba(255,255,255,.18);
}
.ig-subheader-row{
  display:grid;
  grid-template-columns: 1fr 1fr 1fr;
  align-items:center;
  gap:12px;
  padding:6px 0;
}
.ig-date{
  color:rgba(255,255,255,.88);
  font-size:12px;
}
.ig-slogan{
  font-style:italic;
  text-align:center;
  display:block;
  color:#fff;
  opacity:.95;
}
.ig-subcol-right{
  display:flex;
  justify-content:flex-end;
  gap:10px;
}

/* Redes sociales */
.ig-social{
  width:30px;
  height:30px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.28);
  border-radius:12px;
  text-decoration:none;
  background:rgba(255,255,255,.10);
}
.ig-social svg{
  width:16px;
  height:16px;
  fill:#fff;
}
.ig-social:hover{
  background:rgba(255,255,255,.18);
  border-color:rgba(255,255,255,.40);
}

/* =========================
   Buscador (header)
========================= */
.ig-search{
  display:flex;
  align-items:center;
  gap:8px;
  margin-left:12px;
  flex:0 0 auto;
}
.ig-search-input{
  height:40px;
  width:230px;
  padding:0 12px;
  border:1px solid var(--ig-border);
  background:#fff;
  border-radius:0;
  outline:none;
  font-weight:800;
  font-family:var(--ig-font-base);
}
.ig-search-input:focus{
  border-color:rgba(6,147,227,.55);
}
.ig-search-btn{
  height:40px;
  padding:0 12px;
  border:1px solid var(--ig-border);
  background:rgba(6,147,227,.92);
  color:#fff;
  font-weight:950;
  cursor:pointer;
  border-radius:0;
  font-family:var(--ig-font-base);
}
.ig-search-btn:hover{ background:rgba(6,147,227,.85); }

/* En pantallas medias, achicar */
@media (max-width: 1120px){
  .ig-search-input{ width:170px; }
}

/* En móvil: ocultar buscador del header (usar el del modal) */
@media (max-width: 860px){
  .ig-search{ display:none; }
}

/* Buscador en modal */
.ig-search--modal{
  display:flex;
  gap:10px;
  margin:12px 0 14px 0;
}
.ig-search--modal .ig-search-input{
  width:100%;
  flex:1 1 auto;
  height:42px;
}
.ig-search--modal .ig-search-btn{
  height:42px;
  padding:0 14px;
}

/* =========================
   MODAL MENU (Hamburguesa)
========================= */
.ig-menu-modal{
  position:fixed;
  inset:0;
  display:none;
  z-index:9999;
}
.ig-menu-modal.is-open{ display:block; }

.ig-menu-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.45);
}

.ig-menu-modal-panel{
  position:absolute;
  top:16px;
  right:16px;
  width:min(420px, calc(100% - 32px));
  border-radius:14px;
  overflow:hidden;
  outline:none;
  background:var(--ig-corp-blue);
  color:#fff;
  box-shadow:0 20px 60px rgba(0,0,0,.25);
}
.ig-menu-modal-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 16px;
  border-bottom:1px solid rgba(255,255,255,.12);
}
.ig-menu-modal-title{ font-weight:900; }
.ig-menu-close{
  border:0;
  background:transparent;
  color:#fff;
  font-size:18px;
  cursor:pointer;
}

/* Links (panel) */
.ig-menu-modal-links{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  padding:14px 16px 16px 16px;
}
.ig-menu-modal-links a{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);
  color:#fff;
  text-decoration:none;
  font-weight:650;
  padding:12px 10px;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.ig-menu-modal-links a:hover{
  background:rgba(255,255,255,.14);
}

/* Acordeón categorías */
.ig-menu-group{ margin:6px 0; }

.ig-menu-parent{
  width:100%;
  border:0;
  background:transparent;
  color:#fff;
  font-weight:750;
  padding:12px 10px;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  cursor:pointer;
}
.ig-menu-parent:hover{
  background:rgba(255,255,255,.10);
}
.ig-menu-caret{
  opacity:.85;
  transition:transform .18s ease;
}
.ig-menu-parent[aria-expanded="true"] .ig-menu-caret{
  transform:rotate(180deg);
}

.ig-menu-sub{
  background:rgba(0,0,0,.14);
  border-radius:12px;
  padding:8px;
  margin:6px 6px 10px 6px;
}
.ig-menu-sub a{
  color:#fff;
  padding:10px 10px;
  border-radius:10px;
  font-weight:650;
  text-decoration:none;
  display:block;
}
.ig-menu-sub a:hover{
  background:rgba(255,255,255,.10);
}
.ig-menu-suball{
  opacity:.92;
  font-weight:800;
}

/* =========================
   NAV con submenú (desktop)
========================= */
.ig-nav-item{ position:relative; display:flex; align-items:center; }
.ig-nav-link{ display:inline-flex; align-items:center; }

.ig-nav-item.has-sub .ig-nav-link::after{
  content:"▾";
  font-size:12px;
  margin-left:6px;
  opacity:.75;
}

.ig-nav-sub{
  position:absolute;
  top:100%;
  left:0;
  min-width:240px;
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  border-radius:12px;
  box-shadow:0 16px 40px rgba(0,0,0,.14);
  padding:8px;
  display:none;
  z-index:9999;
}
.ig-nav-sub a{
  display:block;
  padding:10px 12px;
  border-radius:10px;
  color:#111;
  text-decoration:none;
  font-weight:600;
}
.ig-nav-sub a:hover{
  background:rgba(0,0,0,.06);
}
.ig-nav-item.has-sub:hover .ig-nav-sub,
.ig-nav-item.has-sub:focus-within .ig-nav-sub{
  display:block;
}

/* Responsive header */
@media (max-width: 860px){
  .ig-nav{ display:none; }
  .ig-subheader-row{
    grid-template-columns:1fr;
    text-align:center;
  }
  .ig-subcol-right{ justify-content:center; }
}
@media (max-width: 420px){
  .ig-logo-img{ height:52px; }
}

/* =========================
   BODY
========================= */
.ig-body{
  padding:0 0 28px 0;
}

/* =========================
   HERO principal
========================= */
.ig-hero-card{
  position:relative;
  display:block;
  border-radius:0;
  overflow:hidden;
  text-decoration:none;
  border:0;
  background:#000;
}
.ig-hero-img{
  width:100%;
  height:520px;
  object-fit:cover;
  display:block;
  position:relative;
  z-index:0;
}
.ig-hero-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    to bottom,
    rgba(0,0,0,0.05) 10%,
    rgba(0,0,0,0.25) 45%,
    rgba(0,0,0,0.70) 100%
  );
  pointer-events:none;
  z-index:2;
}
.ig-hero-link{
  position:absolute;
  inset:0;
  z-index:1; /* debajo overlays */
}

.ig-hero-overlay{
  position:absolute;
  left:24px;
  right:24px;
  bottom:24px;
  top:auto;
  transform:none;
  z-index:3; /* sobre el link */
}
.ig-hero-title{
  margin:0 0 10px 0;
  color:#fff;
  font-size:42px;
  font-weight:900;
  line-height:1.05;
  letter-spacing:-0.4px;
  max-width:950px;

  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ig-hero-meta{
  display:flex;
  align-items:center;
  gap:10px;
  color:rgba(255,255,255,.88);
  font-size:14px;
  font-weight:500;
}
.ig-hero-cat{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(6,147,227,.92);
  color:#fff;
  font-weight:700;
  font-size:12px;
  letter-spacing:.2px;
}
.ig-dot{ opacity:.8; }

/* Relacionadas dentro del hero */
.ig-hero-related{
  position:absolute;
  top:18px;
  right:18px;
  z-index:3;
  display:flex;
  flex-direction:column;
  gap:10px;
  width:min(360px, 46%);
}
.ig-hero-related-title{
  font-size:12px;
  font-weight:950;
  letter-spacing:.6px;
  text-transform:uppercase;
  color:rgba(255,255,255,.92);
  background:rgba(6,147,227,.92);
  padding:8px 10px;
  border:1px solid rgba(255,255,255,.18);
}
.ig-hero-rel-item{
  display:flex;
  gap:10px;
  text-decoration:none;
  color:#fff;
  background:rgba(0,0,0,.45);
  border:1px solid rgba(255,255,255,.18);
  padding:10px;
  backdrop-filter: blur(6px);
}
.ig-hero-rel-item:hover{
  border-color:rgba(6,147,227,.55);
  background:rgba(0,0,0,.55);
}
.ig-hero-rel-thumb{
  width:78px;
  height:58px;
  flex:0 0 auto;
  overflow:hidden;
  background:#000;
}
.ig-hero-rel-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.ig-hero-rel-text{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.ig-hero-rel-title{
  min-width:0;
  font-size:13px;
  font-weight:900;
  line-height:1.18;
  color:rgba(255,255,255,.95);

  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ig-hero-rel-time{
  font-size:12px;
  font-weight:800;
  color:rgba(255,255,255,.78);
}

/* Responsive hero */
@media (max-width: 860px){
  .ig-hero-img{ height:420px; }
  .ig-hero-overlay{ left:16px; right:16px; bottom:16px; }
  .ig-hero-title{ font-size:32px; }

  .ig-hero-related{
    left:16px;
    right:16px;
    top:auto;
    bottom:86px;
    width:auto;
    flex-direction:row;
    overflow:auto;
    padding-bottom:6px;
  }
  .ig-hero-rel-item{
    flex:0 0 auto;
    width:260px;
  }
}
@media (max-width: 420px){
  .ig-hero-img{ height:360px; }
  .ig-hero-title{ font-size:26px; }
  .ig-hero-meta{ font-size:13px; }
  .ig-hero-related{ bottom:78px; }
  .ig-hero-rel-item{ width:240px; }
}

/* =========================
   TICKER
========================= */
.ig-ticker{
  background:#fff;
  border-bottom:1px solid var(--ig-border);
}
.ig-ticker-wrap{
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px 0;
}
.ig-ticker-label{
  flex:0 0 auto;
  background:var(--ig-primary);
  color:#fff;
  font-weight:950;
  font-size:12px;
  letter-spacing:.6px;
  text-transform:uppercase;
  padding:8px 10px;
}
.ig-ticker-viewport{
  position:relative;
  overflow:hidden;
  flex:1 1 auto;
  min-width:0;
}
.ig-ticker-track{
  display:flex;
  align-items:center;
  width:max-content;
  animation: igTicker 38s linear infinite;
}
.ig-ticker-items{
  display:flex;
  align-items:center;
  gap:0;
  white-space:nowrap;
}
.ig-ticker-item{
  text-decoration:none;
  color:#0d1b24;
  font-size:13px;
  font-weight:800;
}
.ig-ticker-item strong{
  color:var(--ig-primary);
  font-weight:950;
}
.ig-ticker-item:hover{ text-decoration:underline; }
.ig-ticker-sep{
  color:rgba(0,0,0,.45);
  font-weight:900;
  padding:0 10px;
}
.ig-ticker:hover .ig-ticker-track{
  animation-play-state:paused;
}
@keyframes igTicker{
  0%{ transform:translateX(0); }
  100%{ transform:translateX(-50%); }
}
@media (prefers-reduced-motion: reduce){
  .ig-ticker-track{ animation:none; }
  .ig-ticker-viewport{ overflow:auto; }
}
@media (max-width: 560px){
  .ig-ticker-wrap{ padding:8px 0; }
  .ig-ticker-label{ padding:7px 9px; }
  .ig-ticker-item{ font-size:12px; }
}

/* =========================
   BANNERS PUBLICITARIOS
========================= */
.ig-ad-banner{
  padding:22px 0 0 0;
}
.ig-ad-slot{
  border:1px solid var(--ig-border);
  background:#fff;
  padding:10px;
}
.ig-ad-unit{ display:none; }
.ig-ad-slot iframe{ max-width:100%; display:block; }

/* Mostrar según breakpoint */
@media (min-width: 981px){
  .ig-ad-desktop{ display:block; }
}
@media (min-width: 561px) and (max-width: 980px){
  .ig-ad-tablet{ display:block; }
}
@media (max-width: 560px){
  .ig-ad-mobile{ display:block; }
}

/* Placeholder */
.ig-ad-placeholder{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  font-weight:900;
  color:rgba(0,0,0,.55);
  border:1px dashed rgba(0,0,0,.25);
  background:rgba(6,147,227,.05);
  padding:18px;
}
.ig-ph-970x250{ min-height:250px; }
.ig-ph-728x90{  min-height:90px;  }
.ig-ph-320x100{ min-height:100px; }
.ig-ph-300x600{ min-height:600px; }
.ig-ph-300x250{ min-height:250px; }

/* =========================
   BLOQUE GENÉRICO (destacada + lista)
========================= */
.ig-block{
  padding:18px 0 0 0;
}
.ig-block-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:16px;
  padding:14px 0 10px 0;
  border-bottom:1px solid var(--ig-border);
}
.ig-block-title{
  margin:0;
  font-size:18px;
  font-weight:900;
  letter-spacing:.2px;
}
.ig-block-more{
  text-decoration:none;
  color:var(--ig-primary);
  font-weight:800;
  font-size:14px;
}
.ig-block-more:hover{ text-decoration:underline; }

.ig-block-grid{
  display:grid;
  grid-template-columns: 1.25fr 1fr;
  gap:16px;
  padding-top:14px;
}

/* Destacada */
.ig-block-feature{
  position:relative;
  display:block;
  text-decoration:none;
  background:#000;
  overflow:hidden;
}
.ig-block-feature-img{
  width:100%;
  height:360px;
  object-fit:cover;
  display:block;
}
.ig-block-feature::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    to bottom,
    rgba(0,0,0,0.10) 10%,
    rgba(0,0,0,0.35) 55%,
    rgba(0,0,0,0.80) 100%
  );
  pointer-events:none;
}
.ig-block-feature-overlay{
  position:absolute;
  left:16px;
  right:16px;
  bottom:16px;
  z-index:2;
}
.ig-block-feature-title{
  margin:0 0 10px 0;
  color:#fff;
  font-size:26px;
  font-weight:900;
  line-height:1.08;

  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ig-block-meta{
  display:flex;
  align-items:center;
  gap:10px;
  color:rgba(255,255,255,.88);
  font-size:13px;
  font-weight:700;
}
.ig-block-tag{
  background:rgba(6,147,227,.92);
  color:#fff;
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:900;
}
.ig-block-time{
  color:rgba(255,255,255,.88);
  font-weight:700;
  font-size:13px;
}

/* Lista (al lado) */
.ig-block-list{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:12px;
}
.ig-block-item{
  display:flex;
  gap:10px;
  text-decoration:none;
  color:var(--ig-text);
  padding:10px;
  border:1px solid var(--ig-border);
  background:#fff;
}
.ig-block-item:hover{
  border-color:rgba(6,147,227,.35);
  background:rgba(6,147,227,.04);
}
.ig-block-thumb{
  width:88px;
  height:66px;
  flex:0 0 auto;
  overflow:hidden;
  background:#000;
}
.ig-block-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.ig-block-text{ min-width:0; }
.ig-block-item-title{
  margin:0 0 6px 0;
  font-size:14px;
  font-weight:900;
  line-height:1.15;

  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ig-block-mini{
  font-size:12px;
  color:var(--ig-muted);
  font-weight:700;
}

/* Responsive bloque */
@media (max-width: 980px){
  .ig-block-grid{ grid-template-columns:1fr; }
  .ig-block-feature-img{ height:380px; }
  .ig-block-list{ grid-template-columns:1fr 1fr; }
}
@media (max-width: 560px){
  .ig-block-list{ grid-template-columns:1fr; }
  .ig-block-item{ padding:12px; }
  .ig-block-thumb{ width:110px; height:78px; }
}

/* =========================
   BLOQUE 3 COLUMNAS (Economía/Mundo/Sidebar)
========================= */
.ig-triple{
  padding:22px 0 0 0;
}
.ig-triple-grid{
  display:grid;
  grid-template-columns: 1fr 1fr 0.9fr;
  gap:16px;
  padding-top:14px;
}
.ig-col{
  background:#fff;
}
.ig-col-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  padding:0 0 10px 0;
  border-bottom:1px solid var(--ig-border);
  margin-bottom:12px;
}
.ig-col-title{
  margin:0;
  font-size:16px;
  font-weight:900;
}
.ig-col-more{
  text-decoration:none;
  color:var(--ig-primary);
  font-weight:800;
  font-size:13px;
}
.ig-col-more:hover{ text-decoration:underline; }

.ig-col-item{
  display:flex;
  gap:10px;
  text-decoration:none;
  color:var(--ig-text);
  padding:10px;
  border:1px solid var(--ig-border);
  background:#fff;
  margin-bottom:10px;
}
.ig-col-item:hover{
  border-color:rgba(6,147,227,.35);
  background:rgba(6,147,227,.04);
}
.ig-col-thumb{
  width:92px;
  height:70px;
  flex:0 0 auto;
  overflow:hidden;
  background:#000;
}
.ig-col-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.ig-col-text{ min-width:0; }
.ig-col-item-title{
  margin:0 0 6px 0;
  font-size:14px;
  font-weight:900;
  line-height:1.15;

  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ig-col-mini{
  font-size:12px;
  color:var(--ig-muted);
  font-weight:700;
}

/* Responsive triple */
@media (max-width: 980px){
  .ig-triple-grid{ grid-template-columns:1fr; }
}

/* =========================
   SIDEBAR / blocks
========================= */
.ig-side-block{
  margin-bottom:14px;
  background:#fff;
  border:1px solid var(--ig-border);
  padding:12px;
}
.ig-side-head{
  padding:10px 0 10px 0;
  border-bottom:1px solid var(--ig-border);
  margin-bottom:12px;
}
.ig-side-title{
  margin:0;
  font-size:15px;
  font-weight:950;
}
.ig-side-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.ig-side-item{
  display:flex;
  gap:10px;
  text-decoration:none;
  color:var(--ig-text);
  border:1px solid var(--ig-border);
  background:#fff;
  padding:10px;
}
.ig-side-item:hover{
  border-color:rgba(6,147,227,.35);
  background:rgba(6,147,227,.04);
}
.ig-side-thumb{
  width:86px;
  height:64px;
  overflow:hidden;
  background:#000;
  flex:0 0 auto;
}
.ig-side-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.ig-side-text{ min-width:0; }
.ig-side-item-title{
  font-size:13px;
  font-weight:950;
  line-height:1.18;
  margin-bottom:6px;

  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ig-side-time{
  font-size:12px;
  font-weight:800;
  color:var(--ig-muted);
}

/* =========================
   DIVISAS
========================= */
.ig-fx-box{
  border:1px solid var(--ig-border);
  background:#fff;
}
.ig-fx-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px;
  border-bottom:1px solid var(--ig-border);
}
.ig-fx-left{
  display:flex;
  align-items:baseline;
  gap:10px;
  min-width:0;
}
.ig-fx-code{
  font-weight:950;
  font-size:13px;
  color:#fff;
  background:var(--ig-primary);
  padding:5px 8px;
}
.ig-fx-name{
  font-weight:900;
  font-size:13px;
  color:#0d1b24;
  opacity:.9;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:180px;
}
.ig-fx-right{
  text-align:right;
  flex:0 0 auto;
}
.ig-fx-value{
  font-weight:950;
  font-size:14px;
  color:#0d1b24;
}
.ig-fx-delta{
  font-weight:950;
  font-size:12px;
  margin-top:4px;
}
.ig-fx-up{ color:#0b7a2a; }
.ig-fx-down{ color:#b00020; }
.ig-fx-flat{ color:rgba(0,0,0,.55); }
.ig-fx-foot{
  padding:10px 12px;
  font-size:12px;
  font-weight:800;
  color:var(--ig-muted);
  background:rgba(6,147,227,.05);
}

/* =========================
   VIDEO COLUMNA
========================= */
.ig-video-col{
  padding:22px 0 0 0;
}
.ig-video-card{
  display:grid;
  grid-template-columns: 420px 1fr;
  gap:18px;
  align-items:stretch;
  text-decoration:none;
  color:var(--ig-text);
  background:rgba(6,147,227,.08);
  border:1px solid rgba(6,147,227,.18);
  padding:14px;
}
.ig-video-thumb{
  position:relative;
  background:#000;
  overflow:hidden;
  min-height:220px;
}
.ig-video-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.ig-video-thumb::after{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.0);
  transition:background .18s ease;
  pointer-events:none;
}
.ig-video-play{
  position:absolute;
  left:18px;
  bottom:18px;
  width:54px;
  height:54px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(0,0,0,.08);
  transform:translateY(6px);
  opacity:0;
  transition:opacity .18s ease, transform .18s ease;
}
.ig-video-play svg{
  width:26px;
  height:26px;
  fill:var(--ig-primary);
  transform:translateX(1px);
}
.ig-video-card:hover .ig-video-thumb::after{
  background:rgba(0,0,0,.25);
}
.ig-video-card:hover .ig-video-play{
  opacity:1;
  transform:translateY(0);
}
.ig-video-info{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:6px 6px;
}
.ig-video-kicker{
  font-weight:900;
  color:var(--ig-primary);
  letter-spacing:.4px;
  text-transform:uppercase;
  font-size:12px;
  margin-bottom:6px;
}
.ig-video-title{
  margin:0 0 8px 0;
  font-size:22px;
  font-weight:950;
  line-height:1.12;

  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ig-video-desc{
  margin:0 0 10px 0;
  color:#2a3b47;
  font-size:14px;
  line-height:1.35;
  max-width:820px;

  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ig-video-meta{
  margin-top:auto;
  display:flex;
  gap:10px;
  color:var(--ig-muted);
  font-size:12px;
  font-weight:800;
}
@media (max-width: 980px){
  .ig-video-card{ grid-template-columns: 1fr; }
  .ig-video-thumb{ min-height:260px; }
}
@media (max-width: 420px){
  .ig-video-thumb{ min-height:220px; }
  .ig-video-title{ font-size:20px; }
}

/* =========================
   OPINIONES (Home)
========================= */
.ig-opiniones{
  padding:22px 0 0 0;
}
.ig-op-grid{
  display:grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap:14px;
  padding-top:14px;
}
.ig-op-card{
  display:flex;
  gap:12px;
  align-items:flex-start;
  text-decoration:none;
  color:var(--ig-text);
  background:#fff;
  border:1px solid var(--ig-border);
  padding:12px;
}
.ig-op-card:hover{
  border-color:rgba(6,147,227,.35);
  background:rgba(6,147,227,.04);
}
.ig-op-avatar{
  width:56px;
  height:56px;
  flex:0 0 auto;
  overflow:hidden;
  background:#000;
}
.ig-op-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.ig-op-content{ min-width:0; }
.ig-op-author{
  font-weight:950;
  font-size:13px;
  color:var(--ig-primary);
  margin-bottom:6px;
  letter-spacing:.2px;
}
.ig-op-title{
  margin:0 0 8px 0;
  font-size:15px;
  font-weight:950;
  line-height:1.15;

  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ig-op-desc{
  margin:0 0 10px 0;
  color:#2a3b47;
  font-size:13px;
  line-height:1.35;

  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ig-op-meta{
  font-size:12px;
  color:var(--ig-muted);
  font-weight:800;
}
@media (max-width: 980px){
  .ig-op-grid{ grid-template-columns:1fr; }
  .ig-op-card{ padding:14px; }
  .ig-op-avatar{ width:64px; height:64px; }
}

/* =========================
   RADIO ONLINE
========================= */
.ig-radio{
  padding:22px 0 0 0;
}
.ig-radio-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 0 10px 0;
  border-bottom:1px solid var(--ig-border);
  margin-bottom:12px;
}
.ig-radio-title{
  margin:0;
  font-size:18px;
  font-weight:950;
}
.ig-radio-pill{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  background:rgba(6,147,227,.92);
  color:#fff;
  font-weight:950;
  font-size:12px;
  letter-spacing:.6px;
}
.ig-radio-embed{
  border:1px solid var(--ig-border);
  background:#fff;
  padding:10px;
}
.ig-radio-embed iframe{
  width:100%;
  height:140px;
  border:0;
  display:block;
}
@media (max-width: 560px){
  .ig-radio-embed iframe{ height:170px; }
}

/* =========================
   PÁGINAS ESTÁTICAS
========================= */
.ig-static{
  padding:18px 0 28px 0;
}
.ig-static-head{
  padding:8px 0 14px 0;
}
.ig-static-title{
  margin:0;
  font-size:42px;
  font-weight:950;
  letter-spacing:-.6px;
  line-height:1.05;
}
.ig-static-underline{
  margin-top:10px;
  height:4px;
  width:140px;
  background:var(--ig-primary);
}
.ig-static-card{
  margin-top:14px;
  background:#fff;
  border:1px solid var(--ig-border);
  padding:18px;
  color:#13232e;
  line-height:1.75;
  font-size:16px;
}
.ig-static-card h2{
  margin:18px 0 10px 0;
  font-size:20px;
  font-weight:950;
}
.ig-static-block{
  margin:14px 0;
  padding:14px;
  border:1px solid var(--ig-border);
  background:rgba(6,147,227,.04);
}
.ig-static-block h3{
  margin:0 0 8px 0;
  font-size:16px;
  font-weight:950;
}
.ig-static-link a{
  color:var(--ig-primary);
  font-weight:950;
  text-decoration:none;
}
.ig-static-link a:hover{ text-decoration:underline; }

.ig-static-cta{
  margin-top:18px;
  padding:14px;
  border:1px solid rgba(6,147,227,.25);
  background:rgba(6,147,227,.08);
}
.ig-static-cta-title{
  font-weight:950;
  margin-bottom:6px;
}
.ig-static-cta-text a{
  color:var(--ig-primary);
  font-weight:950;
  text-decoration:none;
}
.ig-static-cta-text a:hover{ text-decoration:underline; }

@media (max-width: 420px){
  .ig-static-title{ font-size:30px; }
  .ig-static-card{ padding:14px; }
}

/* =========================
   PÁGINA BUSCAR
========================= */
.ig-search-page{
  padding:18px 0 28px 0;
}
.ig-search-head{
  padding:8px 0 14px 0;
}
.ig-search-title{
  margin:0;
  font-size:40px;
  font-weight:950;
  letter-spacing:-.6px;
  line-height:1.05;
}
.ig-search-sub{
  margin-top:10px;
  font-size:13px;
  font-weight:800;
  color:var(--ig-muted);
}
.ig-search-page-form{
  margin-top:12px;
  display:flex;
  gap:10px;
}
.ig-search-page-input{
  flex:1;
  height:42px;
  padding:0 12px;
  border:1px solid var(--ig-border);
  border-radius:0;
  outline:none;
  font-weight:700;
  font-family:var(--ig-font-base);
}
.ig-search-page-btn{
  height:42px;
  padding:0 14px;
  border:1px solid var(--ig-border);
  background:rgba(6,147,227,.92);
  color:#fff;
  font-weight:950;
  cursor:pointer;
  border-radius:0;
  font-family:var(--ig-font-base);
}
.ig-search-page-btn:hover{ background:rgba(6,147,227,.85); }

.ig-search-grid{
  display:grid;
  grid-template-columns: 1fr 360px;
  gap:18px;
  align-items:start;
  margin-top:14px;
}
.ig-search-results{ background:#fff; }

.ig-search-item{
  display:flex;
  gap:12px;
  text-decoration:none;
  color:var(--ig-text);
  border:1px solid var(--ig-border);
  background:#fff;
  padding:12px;
  margin-bottom:12px;
}
.ig-search-item:hover{
  border-color:rgba(6,147,227,.35);
  background:rgba(6,147,227,.04);
}
.ig-search-thumb{
  width:140px;
  height:96px;
  background:#000;
  overflow:hidden;
  flex:0 0 auto;
}
.ig-search-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.ig-search-text{ min-width:0; }
.ig-search-meta{
  display:flex;
  align-items:center;
  gap:10px;
  font-size:12px;
  font-weight:900;
  color:var(--ig-muted);
  margin-bottom:8px;
}
.ig-search-cat{
  color:var(--ig-primary);
  font-weight:950;
}
.ig-search-h2{
  margin:0;
  font-size:16px;
  font-weight:950;
  line-height:1.18;

  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ig-search-empty{
  border:1px solid var(--ig-border);
  background:#fff;
  padding:16px;
  font-weight:800;
  color:var(--ig-muted);
}
.ig-search-side{
  position:sticky;
  top:14px;
}
@media (max-width: 980px){
  .ig-search-grid{ grid-template-columns:1fr; }
  .ig-search-side{ position:static; }
  .ig-search-thumb{ width:120px; height:84px; }
}
@media (max-width: 420px){
  .ig-search-title{ font-size:30px; }
  .ig-search-thumb{ width:110px; height:80px; }
}

/* =========================
   NOTICIA.php
========================= */
.ig-article{
  padding:18px 0 28px 0;
}
.ig-article-grid{
  display:grid;
  grid-template-columns: 1fr 360px;
  gap:18px;
  align-items:start;
}
.ig-article-main{ background:#fff; }

.ig-article-top{
  padding:14px 0 12px 0;
  border-bottom:1px solid var(--ig-border);
  margin-bottom:14px;
}
.ig-article-cat{
  display:inline-flex;
  padding:6px 10px;
  background:rgba(6,147,227,.92);
  color:#fff;
  font-weight:900;
  font-size:12px;
  border-radius:999px;
  margin-bottom:10px;
}
.ig-article-title{
  margin:0 0 10px 0;
  font-size:38px;
  font-weight:950;
  line-height:1.05;
  letter-spacing:-.4px;
}
.ig-article-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  color:var(--ig-muted);
  font-size:13px;
  font-weight:700;
}
.ig-article-author{ color:#2a3b47; font-weight:900; }

.ig-article-figure{
  margin:0;
  background:#000;
}
.ig-article-figure img{
  width:100%;
  height:clamp(240px, 42vw, 420px);
  object-fit:cover;
  display:block;
}
.ig-article-body{
  padding:16px 0 0 0;
  font-size:16px;
  line-height:1.75;
  color:#13232e;
}
.ig-article-body p{ margin:0 0 14px 0; }
.ig-article-body h2{
  margin:22px 0 10px 0;
  font-size:20px;
  font-weight:950;
}
.ig-article-quote{
  margin:18px 0;
  padding:14px 16px;
  border-left:4px solid var(--ig-primary);
  background:rgba(6,147,227,.06);
  color:#0d1b24;
  font-weight:800;
}
.ig-article-side{
  position:sticky;
  top:14px;
}
@media (max-width: 980px){
  .ig-article-grid{ grid-template-columns:1fr; }
  .ig-article-side{ position:static; }
}
@media (max-width: 420px){
  .ig-article-title{ font-size:28px; }
}

/* =========================
   SECCIONES (breadcrumb/títulos)
========================= */
.ig-cathead{
  padding:16px 0 12px 0;
}
.ig-breadcrumb{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:13px;
  font-weight:800;
  color:var(--ig-muted);
  margin-bottom:8px;
}
.ig-breadcrumb a{
  color:var(--ig-primary);
  text-decoration:none;
  font-weight:900;
}
.ig-breadcrumb a:hover{ text-decoration:underline; }
.ig-bc-sep{ opacity:.7; }
.ig-bc-current{ color:var(--ig-muted); font-weight:900; }

.ig-cathead-title{
  margin:0;
  font-size:40px;
  font-weight:950;
  letter-spacing:-.6px;
  line-height:1.05;
}
.ig-cathead-underline{
  margin-top:10px;
  height:4px;
  width:120px;
  background:var(--ig-primary);
}

/* =========================
   OPINION.php
========================= */
.ig-op-page{
  padding:18px 0 28px 0;
}
.ig-op-page-grid{
  display:grid;
  grid-template-columns: 1fr 360px;
  gap:18px;
  align-items:start;
}
.ig-op-article{ background:#fff; }

.ig-op-head{
  padding:10px 0 12px 0;
  border-bottom:1px solid var(--ig-border);
  margin-bottom:14px;
}
.ig-op-authorbox{
  display:flex;
  gap:12px;
  align-items:center;
  margin-bottom:12px;
}
.ig-op-avatar-lg{
  width:72px;
  height:72px;
  overflow:hidden;
  background:#000;
  flex:0 0 auto;
}
.ig-op-avatar-lg img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.ig-op-authorinfo{ min-width:0; }
.ig-op-authorname{
  font-weight:950;
  font-size:16px;
  color:#fff;
  background:rgba(6,147,227,.92);
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
}
.ig-op-role{
  margin-top:8px;
  font-weight:800;
  color:var(--ig-muted);
  font-size:13px;
}
.ig-op-meta{
  margin-top:6px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  color:var(--ig-muted);
  font-size:12px;
  font-weight:800;
}
.ig-op-h1{
  margin:8px 0 10px 0;
  font-size:38px;
  font-weight:950;
  line-height:1.05;
  letter-spacing:-.4px;
}
.ig-op-excerpt{
  margin:0;
  font-size:16px;
  line-height:1.55;
  color:#2a3b47;
  font-weight:700;
  max-width:950px;
}
.ig-op-figure{
  margin:0;
  background:#000;
}
.ig-op-figure img{
  width:100%;
  height:360px;
  object-fit:cover;
  display:block;
}
.ig-op-body{
  padding:16px 0 0 0;
  font-size:16px;
  line-height:1.75;
  color:#13232e;
}
.ig-op-body p{ margin:0 0 14px 0; }
.ig-op-body h2{
  margin:22px 0 10px 0;
  font-size:20px;
  font-weight:950;
}
.ig-op-quote{
  margin:18px 0;
  padding:14px 16px;
  border-left:4px solid var(--ig-primary);
  background:rgba(6,147,227,.06);
  font-weight:900;
}
.ig-op-list{
  margin:10px 0 0 18px;
  padding:0;
}
.ig-op-list li{
  margin:0 0 8px 0;
  font-weight:700;
  color:#1a2b36;
}
.ig-op-side{
  position:sticky;
  top:14px;
}
.ig-op-side-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.ig-op-side-item{
  display:flex;
  gap:10px;
  text-decoration:none;
  color:var(--ig-text);
  border:1px solid var(--ig-border);
  background:#fff;
  padding:10px;
}
.ig-op-side-item:hover{
  border-color:rgba(6,147,227,.35);
  background:rgba(6,147,227,.04);
}
.ig-op-side-avatar{
  width:44px;
  height:44px;
  overflow:hidden;
  background:#000;
  flex:0 0 auto;
}
.ig-op-side-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.ig-op-side-text{ min-width:0; }
.ig-op-side-author{
  font-size:12px;
  font-weight:950;
  color:var(--ig-primary);
  margin-bottom:6px;
}
.ig-op-side-title{
  font-size:13px;
  font-weight:950;
  line-height:1.18;
  margin-bottom:6px;

  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ig-op-side-time{
  font-size:12px;
  font-weight:800;
  color:var(--ig-muted);
}
@media (max-width: 980px){
  .ig-op-page-grid{ grid-template-columns:1fr; }
  .ig-op-side{ position:static; }
  .ig-op-figure img{ height:300px; }
}
@media (max-width: 420px){
  .ig-op-h1{ font-size:28px; }
  .ig-op-figure img{ height:240px; }
  .ig-op-avatar-lg{ width:64px; height:64px; }
}

/* =========================
   FOOTER
========================= */
.ig-footer{
  margin-top:34px;
  background:#0b2231;
  color:#fff;
  padding:28px 0 16px 0;
}
.ig-footer-grid{
  display:grid;
  grid-template-columns: 1.25fr 1fr 1fr;
  gap:18px;
  padding-top:6px;
}
.ig-footer-col{ min-width:0; }

.ig-footer-logo{ display:inline-flex; text-decoration:none; }
.ig-footer-logo-img{ height:52px; width:auto; display:block; }

.ig-footer-slogan{
  margin-top:10px;
  font-style:italic;
  opacity:.9;
}
.ig-footer-text{
  margin:12px 0 0 0;
  color:rgba(255,255,255,.82);
  line-height:1.45;
  font-size:13px;
}
.ig-footer-title{
  margin:0 0 12px 0;
  font-size:15px;
  font-weight:950;
  letter-spacing:.2px;
}

/* Lo más visto */
.ig-footer-link{
  display:grid;
  grid-template-columns: 22px 1fr;
  gap:10px;
  align-items:start;
  text-decoration:none;
  padding:8px 0;
  border-bottom:1px solid rgba(255,255,255,.10);
  color:#fff;
}
.ig-footer-link:hover{ color:#fff; }
.ig-footer-rank{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  background:rgba(6,147,227,.95);
  color:#fff;
  font-weight:950;
  font-size:12px;
}
.ig-footer-linktext{
  color:rgba(255,255,255,.90);
  font-size:13px;
  line-height:1.25;

  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

/* Redes */
.ig-footer-socials{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.ig-footer-social{
  text-decoration:none;
  color:rgba(255,255,255,.90);
  font-weight:800;
}
.ig-footer-social:hover{
  color:#fff;
  text-decoration:underline;
}

/* Newsletter */
.ig-footer-newsletter{
  margin-top:16px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.12);
}
.ig-footer-newsletter-title{
  font-weight:950;
  margin-bottom:6px;
}
.ig-footer-newsletter-sub{
  color:rgba(255,255,255,.78);
  font-size:13px;
  margin-bottom:10px;
}
.ig-footer-form{
  display:flex;
  gap:10px;
}
.ig-footer-input{
  flex:1;
  min-width:0;
  height:40px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.08);
  color:#fff;
  outline:none;
  border-radius:0;
  font-family:var(--ig-font-base);
}
.ig-footer-input::placeholder{ color:rgba(255,255,255,.55); }
.ig-footer-btn{
  height:40px;
  padding:0 14px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(6,147,227,.95);
  color:#fff;
  font-weight:950;
  cursor:pointer;
  border-radius:0;
  font-family:var(--ig-font-base);
}
.ig-footer-btn:hover{ background:rgba(6,147,227,.88); }

.ig-footer-bottom{
  margin-top:18px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.12);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}
.ig-footer-copy{
  color:rgba(255,255,255,.70);
  font-size:12px;
  font-weight:700;
}
.ig-footer-legal{
  display:flex;
  gap:14px;
}
.ig-footer-legal a{
  color:rgba(255,255,255,.80);
  text-decoration:none;
  font-weight:800;
  font-size:12px;
}
.ig-footer-legal a:hover{ color:#fff; text-decoration:underline; }

@media (max-width: 980px){
  .ig-footer-grid{ grid-template-columns:1fr; }
  .ig-footer-logo-img{ height:56px; }
}

/* =========================
   FIX RESPONSIVE WYSIWYG
========================= */
.ig-wysiwyg{
  overflow-wrap:anywhere;
  word-break:break-word;
}
.ig-wysiwyg img,
.ig-wysiwyg video,
.ig-wysiwyg iframe,
.ig-wysiwyg embed,
.ig-wysiwyg object{
  max-width:100% !important;
}
.ig-wysiwyg img{ height:auto !important; }
.ig-wysiwyg iframe{ width:100% !important; }
.ig-wysiwyg table{
  width:100% !important;
  max-width:100% !important;
  border-collapse:collapse;
  display:block;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.ig-wysiwyg pre{
  max-width:100%;
  overflow:auto;
}
.ig-wysiwyg blockquote{
  margin:18px 0;
  padding:14px 16px;
  border-left:4px solid var(--ig-primary);
  background:rgba(6,147,227,.06);
  font-weight:800;
}

/* =========================
   HOME: Grid 2/3 + Sidebar sticky
========================= */
.ig-home{
  padding:22px 0 0 0;
}
.ig-home-grid{
  display:grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr) 360px; /* ✅ sidebar fija */
  gap:16px;
  padding-top:14px;
  align-items:start;
}
.ig-home-main{
  grid-column: 1 / span 2;
}
.ig-home-boxgrid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:16px;
  align-items:start;
}
.ig-home-sidebar{
  grid-column: 3;
}
.ig-home-sticky{
  position:sticky;
  top:16px;
  display:flex;
  flex-direction:column;
  gap:16px;
}
.ig-home-boxgrid .ig-col{
  border:1px solid var(--ig-border);
  padding:12px;
  background:#fff;
}
@media (max-width: 980px){
  .ig-home-grid{ grid-template-columns: 1fr; }
  .ig-home-main,
  .ig-home-sidebar{ grid-column:auto; }
  .ig-home-sticky{ position:static; }
  .ig-home-boxgrid{ grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px){
  .ig-home-boxgrid{ grid-template-columns: 1fr; }
}

/* =========================
   DESTACADAS: slider + carrusel
   ========================= */

.ig-featured{ margin: 14px 0 10px; }
.ig-featured-card{
  background:#fff;
  border-radius:14px;
  overflow:hidden;
  border:1px solid rgba(0,0,0,.08);
}

.ig-featured-main{
  position:relative;
  width:100%;
  aspect-ratio: 16/9;
  background:#eee;
}

.ig-featured-slides{ position:relative; width:100%; height:100%; }
.ig-featured-slide{
  position:absolute;
  inset:0;
  display:block;
  opacity:0;
  pointer-events:none;
  transition: opacity .7s ease;
}
.ig-featured-slide.is-active{
  opacity:1;
  pointer-events:auto;
  z-index:2;
}
.ig-featured-slide img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.ig-featured-overlay{
  position:absolute;
  left:0; right:0; bottom:0;
  padding:18px 18px 16px;
  color:#fff;
  background: linear-gradient(to top, rgba(0,0,0,.78), rgba(0,0,0,0));
}
.ig-featured-title{
  margin:0;
  font-size: 28px;
  line-height:1.15;
}
.ig-featured-meta{
  margin-top:8px;
  font-size:13px;
  opacity:.95;
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
}

.ig-featured-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:42px; height:42px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.45);
  background: rgba(0,0,0,.35);
  color:#fff;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  z-index:5;
  display:grid;
  place-items:center;
}
.ig-featured-prev{ left:12px; }
.ig-featured-next{ right:12px; }
.ig-featured-nav:hover{ background: rgba(0,0,0,.5); }

.ig-featured-carousel{
  padding:12px;
  background:#fff;
  border-top:1px solid rgba(0,0,0,.08);
}

.ig-featured-viewport{
  position:relative;
  overflow:hidden;
}
.ig-featured-track{
  display:flex;
  gap: var(--igFeatThumbGap, 12px);
  transition: transform .55s ease;
  will-change: transform;
}

.ig-featured-thumb{
  flex: 0 0 var(--igFeatThumbW, 200px);
  border:0;
  background:transparent;
  padding:0;
  text-align:left;
  cursor:pointer;
}
.ig-featured-thumb-imgwrap{
  border-radius:10px;
  overflow:hidden;
  aspect-ratio: 16/9;
  background:#eee;
}
.ig-featured-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.ig-featured-thumb-title{
  margin-top:8px;
  font-size:13px;
  line-height:1.25;
  max-height: 2.5em;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  opacity:.95;
}
.ig-featured-thumb.is-active .ig-featured-thumb-imgwrap{
  outline: 2px solid rgba(0,0,0,.35);
  outline-offset:2px;
}

/* ✅ “última foto se degrada a blanco” (degradado en el borde derecho del viewport) */
.ig-featured-viewport--fade::after{
  content:"";
  position:absolute;
  top:0; right:0;
  width:120px;
  height:100%;
  background: linear-gradient(to right, rgba(255,255,255,0), rgba(255,255,255,1));
  pointer-events:none;
}

@media (max-width: 900px){
  .ig-featured-title{ font-size:22px; }
}
@media (max-width: 600px){
  .ig-featured-title{ font-size:18px; }
  .ig-featured-viewport--fade::after{ width:80px; }
}

/* Redes sociales (Font Awesome) */
.ig-social{
  width:30px;
  height:30px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.28);
  border-radius:12px;
  text-decoration:none;
  background:rgba(255,255,255,.10);
  color:#fff;
  line-height:1;
}

.ig-social i{
  font-size:16px;
  color:inherit;
}

/* Si FA inyecta SVG (algunas configs), también queda ok */
.ig-social svg{
  width:16px;
  height:16px;
  fill:currentColor;
}

.ig-social:hover{
  background:rgba(255,255,255,.18);
  border-color:rgba(255,255,255,.40);
  color:#fff;
}

/* Accesibilidad: texto solo para lectores de pantalla */
.sr-only{
  position:absolute !important;
  width:1px; height:1px;
  padding:0; margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

/* ✅ Capa link principal (no tapa relacionadas) */
.ig-featured-slide{ position:absolute; inset:0; }
.ig-featured-slide-link{
  position:absolute;
  inset:0;
  z-index:2;
}

/* ✅ Overlay NO debe bloquear clicks */
.ig-featured-overlay{
  z-index:3;
  pointer-events:none;
}

/* ✅ Relacionadas SI deben estar por encima y clickeables */
.ig-featured-related{
  z-index:4;
  pointer-events:auto;
}

/* opcional: el texto “no hay relacionadas” se vea bien */
.ig-featured-related-empty{
  color:#fff;
  background:rgba(0,0,0,.35);
  border:1px solid rgba(255,255,255,.18);
  padding:10px;
  font-weight:800;
}

/* =========================================================
   ✅ NUEVO: DESTACADAS - Relacionadas en MÓVIL (recuadro listado)
   ========================================================= */

.ig-featured-related-mobile{
  display:none;              /* ✅ visible solo en móvil */
  background:#fff;
  border-top:1px solid rgba(0,0,0,.08);
  padding:12px;
}

.ig-featured-related-mobile-title{
  font-size:12px;
  font-weight:950;
  letter-spacing:.6px;
  text-transform:uppercase;
  color:var(--ig-text);
}

.ig-featured-related-mobile-empty{
  margin-top:10px;
  border:1px solid var(--ig-border);
  padding:12px;
  font-weight:800;
  color:var(--ig-muted);
  background:#fff;
}

.ig-rel-list{
  margin-top:10px;
  display:flex;
  flex-direction:column;
  gap:10px;
}

.ig-rel-item{
  display:flex;
  gap:10px;
  text-decoration:none;
  color:var(--ig-text);
  border:1px solid var(--ig-border);
  background:#fff;
  padding:10px;
}

.ig-rel-item:hover{
  border-color:rgba(6,147,227,.35);
  background:rgba(6,147,227,.04);
}

.ig-rel-thumb{
  width:96px;
  height:72px;
  flex:0 0 auto;
  overflow:hidden;
  background:#000;
}

.ig-rel-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.ig-rel-text{
  min-width:0;
  display:flex;
  flex-direction:column;
}

.ig-rel-title{
  margin:0;
  font-size:14px;
  font-weight:950;
  line-height:1.15;

  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.ig-rel-time{
  margin-top:6px;
  font-size:12px;
  font-weight:800;
  color:var(--ig-muted);
}

/* ✅ En móvil: ocultar overlay derecha y mostrar recuadro listado */
@media (max-width: 860px){
  .ig-featured-related{ display:none !important; }
  .ig-featured-related-mobile{ display:block; }
}
/* =========================
   FIX: menú header no se sale del contenedor
========================= */

/* Permite que el flex pueda encoger correctamente */
.ig-mainheader-row{
  min-width:0;
}

/* Antes tenías nowrap; con muchos items se desborda.
   Ahora permitimos wrap dentro del ancho disponible. */
.ig-nav{
  min-width:0;
  flex:1 1 auto;

  white-space:normal;     /* ✅ rompe el nowrap */
  flex-wrap:wrap;         /* ✅ permite 2da línea si es necesario */
  row-gap:6px;            /* separación entre líneas */
  overflow:visible;       /* mantiene submenús */
}

/* Asegura que cada item no intente estirarse raro */
.ig-nav > a,
.ig-nav .ig-nav-item{
  flex:0 0 auto;
}

/* El buscador que no “empuje” al menú */
.ig-search{
  min-width:0;
}

/* Opcional: que el input se adapte mejor en anchos intermedios */
.ig-search-input{
  width:clamp(140px, 18vw, 230px);
}

/* =========================================================
   HEADER NAV: 1 sola línea + fuente más chica + recorte
   (pegar al FINAL de main.css)
   ========================================================= */

.ig-mainheader-row{
  min-width:0; /* clave para que el flex pueda encoger */
}

/* Menú SIEMPRE en 1 línea, sin wrap, y recorta lo que no cabe */
.ig-nav{
  flex: 1 1 auto;
  min-width:0;

  flex-wrap:nowrap;       /* ✅ nunca doble línea */
  white-space:nowrap;     /* ✅ una sola línea */
  overflow:hidden;        /* ✅ se corta “hasta donde se vea” */
  gap: clamp(8px, 1.2vw, 14px); /* ✅ menos separación en pantallas chicas */
}

/* Links más compactos y font-size responsivo */
.ig-nav a{
  font-size: clamp(13px, 1.1vw, 16px); /* ✅ reduce tamaño según ancho */
  padding: 6px 6px;                    /* ✅ menos padding */
}

/* Donaciones igual, pero compacta para no comerse el ancho */
.ig-nav-highlight{
  padding: 6px 10px !important;
  font-size: clamp(13px, 1.1vw, 16px);
}

/* El buscador también se adapta para no empujar el menú */
.ig-search{
  min-width:0;
}
.ig-search-input{
  width: clamp(140px, 16vw, 230px);
}

/* (Opcional) fade suave a la derecha para indicar que “hay más” */
.ig-nav{
  -webkit-mask-image: linear-gradient(to right, #000 0%, #000 88%, transparent 100%);
  mask-image: linear-gradient(to right, #000 0%, #000 88%, transparent 100%);
}

/* =========================
   SECCION: FEED 3 COLUMNAS (resto de noticias)
   ========================= */
.ig-feed-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:12px;
  padding-top:14px;
}

/* Responsive */
@media (max-width: 980px){
  .ig-feed-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px){
  .ig-feed-grid{ grid-template-columns: 1fr; }
}



/* =========================================================
   ✅ NUEVA VERSIÓN (HOME 2 columnas)
   - Título: blanco sobre azul
   - Body: azul claro (suave)
   ========================================================= */

/* Ajustes de colores */
:root{
  --ig-box-head-bg: var(--ig-primary);                 /* azul */
  --ig-box-body-bg: rgba(70,130,180,.10);             /* azul claro (suave) */
}

/* La caja completa (Economía / Mundo / extras) */
.ig-home-boxgrid .ig-col{
  background: var(--ig-box-body-bg) !important;       /* ✅ body celeste */
  border: 1px solid var(--ig-border);
  border-radius: 14px;
  overflow: hidden;
  padding: 0 !important;                               /* para que la barra quede pegada */
}

/* Barra del título */
.ig-home-boxgrid .ig-col-head{
  background: var(--ig-box-head-bg) !important;        /* ✅ azul */
  padding: 12px 12px !important;
  margin: 0 !important;
  border-bottom: 1px solid rgba(255,255,255,.18) !important;
}

/* Título blanco */
.ig-home-boxgrid .ig-col-title{
  color: #fff !important;
  font-weight: 950;
  margin: 0;
}

/* "Ver más" en blanco dentro de la barra */
.ig-home-boxgrid .ig-col-more{
  color: #fff !important;
  font-weight: 900;
  text-decoration: none;
  border: 1px solid rgba(255,255,255,.35);
  padding: 6px 10px;
  border-radius: 10px;
  opacity: .95;
}
.ig-home-boxgrid .ig-col-more:hover{
  opacity: 1;
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.55);
}

/* Cards de noticias (blancas, sobre el fondo celeste) */
.ig-home-boxgrid .ig-col-item{
  background: #fff !important;
  border: 1px solid rgba(0,0,0,.10) !important;
  border-radius: 12px;
  margin: 10px 12px !important;                        /* separación dentro del body celeste */
  padding: 10px !important;
}

/* Hover suave */
.ig-home-boxgrid .ig-col-item:hover{
  background: rgba(255,255,255,.92) !important;
  border-color: rgba(0,0,0,.16) !important;
}

/* Thumb más lindo dentro del card */
.ig-home-boxgrid .ig-col-thumb{
  border-radius: 10px;
  overflow: hidden;
}

/* =========================
   ✅ Botón lupa (header)
========================= */
.ig-search-icon{
  width:44px;
  height:40px;
  border:1px solid var(--ig-border);
  background:#fff;
  border-radius:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  flex:0 0 auto;
  margin-left:6px;
}
.ig-search-icon i{ color:var(--ig-primary); font-size:16px; }
.ig-search-icon:hover{
  border-color:rgba(6,147,227,.45);
  background:rgba(6,147,227,.06);
}

/* =========================
   ✅ MODAL BUSCADOR
========================= */
.ig-search-modal{
  position:fixed;
  inset:0;
  display:none;       /* clave */
  z-index:10000;
}
.ig-search-modal.is-open{ display:block; }

.ig-search-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.45);
}

.ig-search-modal-panel{
  position:absolute;
  top:16px;
  left:50%;
  transform:translateX(-50%);
  width:min(520px, calc(100% - 32px));
  border-radius:14px;
  overflow:hidden;
  outline:none;
  background:#fff;
  color:var(--ig-text);
  box-shadow:0 20px 60px rgba(0,0,0,.25);
}

.ig-search-modal-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 16px;
  background:var(--ig-primary);
  color:#fff;
}
.ig-search-modal-title{ font-weight:950; }
.ig-search-modal-close{
  border:0;
  background:transparent;
  color:#fff;
  font-size:18px;
  cursor:pointer;
}

.ig-search-modal-form{
  display:flex;
  gap:10px;
  padding:14px 16px 16px;
}
.ig-search-modal-input{
  flex:1 1 auto;
  height:44px;
  padding:0 12px;
  border:1px solid var(--ig-border);
  outline:none;
  font-weight:800;
  border-radius:10px;
}
.ig-search-modal-btn{
  height:44px;
  padding:0 14px;
  border:1px solid var(--ig-border);
  background:rgba(6,147,227,.92);
  color:#fff;
  font-weight:950;
  cursor:pointer;
  border-radius:10px;
}
.ig-search-modal-btn:hover{ background:rgba(6,147,227,.85); }
.ig-search-modal{ display:none; }
.ig-search-modal.is-open{ display:block; }

/* ============================
   INFOGATE Videos (yt_videos)
   ============================ */

.ig-yt-layout{
  display:grid;
  grid-template-columns: 1.55fr 0.85fr;
  gap: 18px;
  align-items:start;
  margin-bottom: 18px;
}

@media (max-width: 980px){
  .ig-yt-layout{ grid-template-columns: 1fr; }
}

.ig-yt-player-card{
  background: rgba(255,255,255,.02);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 10px 26px rgba(0,0,0,.18);
}

.ig-yt-player-wrap{
  position:relative;
  width:100%;
  aspect-ratio: 16/9;
  background: rgba(0,0,0,.45);
}

.ig-yt-player-wrap iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
}

.ig-yt-empty{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:18px;
  text-align:center;
}
.ig-yt-empty-title{ font-size: 20px; font-weight: 800; }
.ig-yt-empty-sub{ opacity:.75; margin-top: 6px; }

.ig-yt-main-meta{
  padding: 14px 16px 16px 16px;
}

.ig-yt-main-kicker{
  font-size: 12px;
  letter-spacing: .08em;
  opacity: .75;
  text-transform: uppercase;
}

.ig-yt-main-title{
  margin: 6px 0 8px 0;
  line-height: 1.15;
  font-size: 22px;
}

.ig-yt-main-sub{
  display:flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items:center;
  opacity:.80;
  font-size: 13px;
}

.ig-yt-main-desc{
  margin: 10px 0 0 0;
  opacity:.92;
  line-height: 1.45;
  font-size: 14px;
}

.ig-yt-side{
  background: rgba(255,255,255,.02);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 10px 26px rgba(0,0,0,.14);
}

.ig-yt-side-head{
  padding: 12px 14px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.ig-yt-side-title{
  font-weight: 800;
  font-size: 14px;
  letter-spacing: .02em;
}
.ig-yt-side-sub{
  margin-top: 2px;
  font-size: 12px;
  opacity: .72;
}

.ig-yt-list{ display:flex; flex-direction:column; }

.ig-yt-item{
  display:flex;
  gap: 10px;
  padding: 10px 12px;
  text-decoration:none;
  border-bottom: 1px solid rgba(255,255,255,.06);
  transition: background .15s ease, transform .15s ease;
}
.ig-yt-item:hover{
  background: rgba(255,255,255,.04);
}

.ig-yt-item.is-active{
  background: rgba(255,255,255,.06);
  outline: 1px solid rgba(255,255,255,.10);
}

.ig-yt-thumb{
  width: 148px;
  min-width: 148px;
  aspect-ratio: 16/9;
  position: relative;
  border-radius: 10px;
  overflow: hidden;
  background: rgba(0,0,0,.35);
}
.ig-yt-thumb img{
  width:100%;
  height:100%;
  object-fit: cover;
  display:block;
}

.ig-yt-dur{
  position:absolute;
  right: 6px;
  bottom: 6px;
  font-size: 12px;
  padding: 2px 6px;
  border-radius: 8px;
  background: rgba(0,0,0,.70);
  color: #fff;
}

.ig-yt-text{ min-width: 0; }
.ig-yt-title{
  font-weight: 800;
  font-size: 13px;
  line-height: 1.25;
  display:-webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow:hidden;
}
.ig-yt-mini{
  margin-top: 6px;
  font-size: 12px;
  opacity: .75;
}

/* FEED inferior tipo "diario" */
.ig-yt-feed-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

@media (max-width: 980px){
  .ig-yt-feed-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px){
  .ig-yt-feed-grid{ grid-template-columns: 1fr; }
}

.ig-yt-card{
  display:flex;
  flex-direction:column;
  text-decoration:none;
  background: rgba(255,255,255,.02);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 14px;
  overflow:hidden;
  box-shadow: 0 10px 26px rgba(0,0,0,.12);
  transition: transform .15s ease, background .15s ease;
}
.ig-yt-card:hover{
  transform: translateY(-2px);
  background: rgba(255,255,255,.04);
}

.ig-yt-card-thumb{
  position:relative;
  width:100%;
  aspect-ratio: 16/9;
  background: rgba(0,0,0,.35);
}
.ig-yt-card-thumb img{
  width:100%;
  height:100%;
  object-fit: cover;
  display:block;
}
.ig-yt-card-text{
  padding: 10px 12px 12px 12px;
}
.ig-yt-card-title{
  margin: 0;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 900;
  display:-webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow:hidden;
}
.ig-yt-card-mini{
  margin-top: 8px;
  font-size: 12px;
  opacity: .75;
}
/* =========================================================
   INFOGATE TV (videos.php) - HERO full width + playlist horizontal
   Pegar al FINAL de main.css
   ========================================================= */

/* Fondo institucional oscuro (puedes alternar a negro puro si quieres) */
:root{
  --ig-tv-bg: #081a33;   /* azul institucional oscuro */
  --ig-tv-bg-2:#000000;  /* negro */
}

/* Full-bleed: ocupa todo el ancho real del viewport */
.ig-yt-hero{
  width:100vw;
  margin-left:calc(50% - 50vw);
  background: linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.25)), var(--ig-tv-bg);
  padding: 18px 0 22px 0;
  border-top: 1px solid rgba(255,255,255,.08);
  border-bottom: 1px solid rgba(255,255,255,.08);
}

/* Contenido centrado a tu ancho estándar */
.ig-yt-hero-inner{
  width:min(1200px, calc(100% - 32px));
  margin:0 auto;
}

/* Player card en modo hero */
/*.ig-yt-player-card-- hook;*/
.ig-yt-player-card--hero{
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 18px 60px rgba(0,0,0,.35);
}

.ig-yt-player-wrap--hero{
  background: rgba(0,0,0,.55);
}

/* Meta en hero: texto claro */
.ig-yt-main-meta--hero{
  color: rgba(255,255,255,.92);
}
.ig-yt-main-meta--hero .ig-yt-main-kicker{
  color: rgba(255,255,255,.80);
}
.ig-yt-main-meta--hero .ig-yt-main-title{
  color:#fff;
}
.ig-yt-main-meta--hero .ig-yt-main-sub{
  color: rgba(255,255,255,.78);
}
.ig-yt-main-meta--hero .ig-yt-main-desc{
  color: rgba(255,255,255,.86);
}

/* Playlist horizontal */
.ig-yt-playlist-block{
  margin-top: 14px;
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 14px;
  overflow: hidden;
}

.ig-yt-playlist-head{
  padding: 12px 14px;
  border-bottom: 1px solid rgba(255,255,255,.10);
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
}

.ig-yt-playlist-title{
  color:#fff;
  font-weight: 900;
  font-size: 14px;
  letter-spacing: .02em;
}
.ig-yt-playlist-sub{
  color: rgba(255,255,255,.70);
  font-size: 12px;
  font-weight: 700;
}

/* Fila horizontal con scroll */
.ig-yt-playlist-row{
  display:flex;
  gap: 12px;
  padding: 12px 12px 14px 12px;
  overflow-x:auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
}
.ig-yt-playlist-row::-webkit-scrollbar{ height: 10px; }
.ig-yt-playlist-row::-webkit-scrollbar-thumb{
  background: rgba(255,255,255,.18);
  border-radius: 999px;
}
.ig-yt-playlist-row::-webkit-scrollbar-track{
  background: rgba(255,255,255,.06);
}

/* Item horizontal */
.ig-yt-hitem{
  flex: 0 0 280px;
  scroll-snap-align: start;
  text-decoration:none;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.18);
  border-radius: 14px;
  overflow:hidden;
  transition: transform .15s ease, background .15s ease, border-color .15s ease;
  color:#fff;
}
.ig-yt-hitem:hover{
  transform: translateY(-2px);
  background: rgba(0,0,0,.28);
  border-color: rgba(255,255,255,.16);
}
.ig-yt-hitem.is-active{
  outline: 2px solid rgba(70,130,180,.85); /* tu azul */
  outline-offset: 2px;
}

.ig-yt-hthumb{
  position:relative;
  aspect-ratio: 16/9;
  background: rgba(0,0,0,.35);
}
.ig-yt-hthumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.ig-yt-htext{
  padding: 10px 12px 12px 12px;
  min-width:0;
}
.ig-yt-htitle{
  font-weight: 950;
  font-size: 13px;
  line-height: 1.25;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  color:#fff;
}
.ig-yt-hmini{
  margin-top: 8px;
  font-size: 12px;
  font-weight: 800;
  color: rgba(255,255,255,.70);
}

/* Ajustes responsive */
@media (max-width: 640px){
  .ig-yt-hitem{ flex: 0 0 240px; }
}
/* =========================================================
   INFOGATE TV (sidebar box) - fondo oscuro institucional
   ========================================================= */
.ig-tv-box{
  background: var(--ig-corp-blue);            /* azul institucional ya definido */
  border: 1px solid rgba(255,255,255,.14);
  color:#fff;
}
.ig-tv-box .ig-col-head{
  border-bottom:1px solid rgba(255,255,255,.14);
}
.ig-tv-box .ig-col-title{
  color:#fff;
}
.ig-tv-box .ig-col-more{
  color:rgba(255,255,255,.92);
}
.ig-tv-box .ig-col-more:hover{
  color:#fff;
}

.ig-tv-box .ig-col-item{
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.14);
  color:#fff;
}
.ig-tv-box .ig-col-item:hover{
  background: rgba(255,255,255,.10);
  border-color: rgba(255,255,255,.22);
}
.ig-tv-box .ig-col-item-title{
  color:#fff;
}
.ig-tv-box .ig-col-mini{
  color: rgba(255,255,255,.78);
}
.ig-tv-box .ig-col-thumb{
  border:1px solid rgba(255,255,255,.10);
}

/* opcional: pequeña “barra” de acento arriba */
.ig-tv-box{
  position:relative;
  overflow:hidden;
}
.ig-tv-box::before{
  content:"";
  position:absolute;
  left:0; right:0; top:0;
  height:3px;
  background: var(--ig-primary);
  opacity:.95;
}
