:root{
    --azul:#1743c4;
    --azul-osc:#0d2e8f;
    --naranja:#e8631c;
    --amarillo:#ffcc00;
    --amarillo-texto:#a87900;
    --rojo:#d62839;
    --verde:#1a9e5c;
    --texto:#1b1f27;
    --gris:#6b7280;
    --gris-claro:#f2f3f5;
    --borde:#e5e7eb;
    --fondo:#f7f7f8;
    --max:1500px;
    --font-display:'Fraunces', Georgia, 'Times New Roman', serif;
    --font-body:'Inter', -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;

    /* colores por categoría (menú + páginas de categoría) */
    --c-nacionales:#1743c4;
    --c-provinciales:#1a9e5c;
    --c-oeste:#a16207;
    --c-locales:#e8631c;
    --c-politica:#9d174d;
    --c-deportes:#d62839;
    --c-mundo:#0369a1;
    --c-salud:#0d8f8f;
    --c-espectaculos:#7c3aed;
    --c-interes:#475569;
    --c-turismo:#0891b2;
    --c-mineria:#78350f;
  }
  *{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:var(--font-body);
    background:var(--fondo);
    color:var(--texto);
    line-height:1.5;
    font-size:16.5px;
  }
  a{color:inherit;text-decoration:none;}
  img{display:block;max-width:100%;}
  .wrap{max-width:var(--max);margin:0 auto;padding:0 20px;}

  /* ===== HEADER ===== */
  .topbar{
    background:var(--azul-osc);
    color:#fff;
    font-size:12px;
    padding:5px 0;
  }
  .topbar .wrap{display:flex;justify-content:space-between;align-items:center;}
  .topbar .fecha{opacity:.85;}
  .topbar .redes a{margin-left:12px;opacity:.9;}
  .topbar .redes a:hover{opacity:1;}

  header.site-header{
    background:#fff;
    border-bottom:3px solid var(--azul);
    position:sticky;
    top:0;
    z-index:50;
    box-shadow:0 1px 4px rgba(0,0,0,.06);
  }
  .header-inner{
    display:flex;
    align-items:center;
    gap:24px;
    padding:12px 0;
    flex-wrap:wrap;
  }
  .logo img{height:64px;width:auto;}
  nav.main-menu{flex:1;}
  nav.main-menu ul{
    list-style:none;
    display:flex;
    flex-wrap:wrap;
    gap:2px;
    justify-content:flex-end;
  }
  nav.main-menu a{
    display:block;
    padding:8px 12px;
    font-size:13px;
    font-weight:600;
    letter-spacing:.3px;
    color:var(--texto);
    border-radius:4px;
    text-transform:uppercase;
    transition:background .25s ease, color .25s ease;
  }
  nav.main-menu a:hover{background:var(--cat, var(--azul));color:#fff;}
  nav.main-menu a.activo{background:var(--cat, var(--azul-osc));color:#fff;}

  /* ===== menú hamburguesa (mobile) ===== */
  .menu-toggle{
    display:none;
    flex-direction:column;
    justify-content:center;
    gap:5px;
    width:38px;
    height:38px;
    border:1px solid var(--borde);
    border-radius:6px;
    background:#fff;
    cursor:pointer;
    padding:0;
    flex-shrink:0;
  }
  .menu-toggle span{display:block;width:20px;height:2px;margin:0 auto;background:var(--texto);border-radius:2px;transition:transform .2s ease, opacity .2s ease;}
  body.menu-abierto .menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  body.menu-abierto .menu-toggle span:nth-child(2){opacity:0;}
  body.menu-abierto .menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
  .menu-fondo{display:none;}

  @media (max-width:860px){
    .menu-toggle{display:flex;}
    .header-inner{flex-wrap:nowrap;justify-content:space-between;}
    nav.main-menu{
      flex:none;
      position:fixed;
      top:0; right:0;
      height:100vh;
      width:min(78vw,320px);
      background:#fff;
      box-shadow:-4px 0 24px rgba(0,0,0,.18);
      transform:translateX(100%);
      transition:transform .25s ease;
      z-index:101;
      overflow-y:auto;
      padding:70px 8px 24px;
    }
    body.menu-abierto nav.main-menu{transform:translateX(0);}
    nav.main-menu ul{flex-direction:column;justify-content:flex-start;gap:2px;}
    nav.main-menu a{padding:12px 14px;font-size:14px;border-radius:6px;}
    body.menu-abierto .menu-fondo{
      display:block;
      position:fixed;inset:0;
      background:rgba(15,23,42,.45);
      z-index:100;
    }
    body.menu-abierto{overflow:hidden;}
  }

  /* ===== BADGES / CATEGORIES ===== */
  .badge{
    display:inline-block;
    font-size:11px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.4px;
    color:#fff;
    padding:4px 10px;
    border-radius:3px;
  }
  .badge.nacionales{background:var(--azul);}
  .badge.provinciales{background:var(--verde);}
  .badge.deportes{background:var(--rojo);}
  .badge.salud{background:#0d8f8f;}
  .badge.espectaculos{background:#7c3aed;}
  .badge.locales{background:var(--naranja);}
  .badge.interes{background:#475569;}
  .badge.turismo{background:#0891b2;}
  .badge.mineria{background:#78350f;}

  .meta-row{
    display:flex;
    align-items:center;
    font-size:12px;
    color:var(--gris);
    margin-top:8px;
  }

  section{padding:28px 0;}
  section.tight{padding:0 0 28px 0;}
  .section-title{
    font-size:15px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.6px;
    color:var(--azul-osc);
    border-left:4px solid var(--amarillo);
    padding-left:10px;
    margin-bottom:16px;
  }

  /* ===== HERO GRID (4 noticias) ===== */
  .hero-grid{
    display:flex;
    gap:4px;
    height:460px;
  }
  .hero-grid > .hero-card{flex:1.4;height:100%;}
  .hero-card{
    position:relative;
    overflow:hidden;
    border-radius:3px;
  }
  .hero-card img{
    width:100%;height:100%;object-fit:cover;
    position:absolute;inset:0;
    transition:transform .7s cubic-bezier(.25,.8,.25,1);
  }
  .hero-card:hover img{transform:scale(1.045);}
  .hero-card:hover h2{color:var(--cat-color, var(--amarillo));}
  .hero-card .tint{
    position:absolute;inset:0;
    mix-blend-mode:multiply;
    opacity:.55;
  }
  .hero-card.nacionales .tint{background:linear-gradient(135deg,#0f766e,#134e4a);}
  .hero-card.provinciales .tint{background:linear-gradient(135deg,#334155,#0f172a);}
  .hero-card.deportes1 .tint{background:linear-gradient(135deg,#831843,#4c0519);}
  .hero-card.deportes2 .tint{background:linear-gradient(135deg,#c2410c,#7c2d12);}
  .hero-card .shade{
    position:absolute;inset:0;
    background:linear-gradient(to top, rgba(0,0,0,.85) 0%, rgba(0,0,0,.15) 55%, rgba(0,0,0,0) 75%);
  }
  .hero-card .content{
    position:absolute;left:0;right:0;bottom:0;
    padding:18px 20px;
    color:#fff;
    z-index:2;
  }
  .hero-card .badge{position:absolute;top:14px;left:16px;z-index:3;}
  .hero-card .fecha{font-size:12px;opacity:.85;margin-bottom:6px;}
  .hero-card h2{
    font-family:var(--font-display);
    font-size:24px;
    font-weight:600;
    line-height:1.2;
    letter-spacing:.1px;
    text-shadow:0 1px 6px rgba(0,0,0,.4);
    transition:color .3s ease;
  }
  .hero-card.small h2{font-size:16px;}
  .hero-card p.bajada{
    font-size:13px;
    opacity:.9;
    margin-top:6px;
    max-width:44ch;
  }
  .hero-right{
    flex:1;
    height:100%;
    display:flex;
    flex-direction:column;
    gap:4px;
  }
  .hero-right > .hero-card{flex:1;height:auto;}
  .hero-bottom-pair{
    flex:1;
    display:flex;
    gap:4px;
  }
  .hero-bottom-pair > .hero-card{flex:1;height:100%;}

  /* ===== LAYOUT: contenido + sidebar ===== */
  .layout{
    display:grid;
    grid-template-columns:1fr 300px;
    gap:24px;
    align-items:start;
  }

  /* ===== 2 noticias grandes ===== */
  .dos-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    grid-auto-rows:1fr;
    gap:18px;
  }
  .foto-card{
    position:relative;
    display:block;
    height:340px;
    border-radius:4px;
    overflow:hidden;
    box-shadow:0 2px 10px rgba(0,0,0,.08);
  }
  .foto-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.25,.8,.25,1);}
  .foto-card:hover img{transform:scale(1.045);}
  .foto-card:hover h3{color:var(--cat-color, var(--amarillo));}
  .foto-card .shade{
    position:absolute;inset:0;
    background:linear-gradient(to top, rgba(0,0,0,.88) 0%, rgba(0,0,0,.1) 60%, rgba(0,0,0,0) 80%);
    transition:background .4s ease;
  }
  .foto-card:hover .shade{
    background:linear-gradient(to top, rgba(0,0,0,.92) 0%, rgba(0,0,0,.18) 60%, rgba(0,0,0,0) 80%);
  }
  .foto-card .badge{position:absolute;top:14px;left:14px;z-index:3;}
  .foto-card .content{position:absolute;left:0;right:0;bottom:0;padding:18px;color:#fff;z-index:2;}
  .foto-card h3{font-family:var(--font-display);font-size:20px;font-weight:600;line-height:1.28;transition:color .3s ease;}
  .foto-card .meta-row{color:#fff;opacity:.85;margin-top:10px;}

  /* ===== lista horizontal (articulo con imagen a la izquierda) ===== */
  .lista-articulos{display:flex;flex-direction:column;gap:18px;}
  .art-row{
    display:grid;
    grid-template-columns:230px 1fr;
    gap:18px;
    background:#fff;
    border:1px solid var(--borde);
    border-left:3px solid transparent;
    border-radius:6px;
    overflow:hidden;
    cursor:pointer;
    transition:border-left-color .3s ease, background .3s ease;
  }
  .art-row:hover{
    border-left-color:var(--cat-color, var(--amarillo));
    background:#fafbfd;
  }
  .art-row:hover h3{color:var(--cat-color, var(--azul));}
  .art-row .foto{position:relative;height:150px;overflow:hidden;}
  .art-row .foto img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.25,.8,.25,1);}
  .art-row:hover .foto img{transform:scale(1.045);}
  .art-row .foto .badge{position:absolute;bottom:10px;right:10px;}
  .art-row .info{padding:14px 16px 14px 0;display:flex;flex-direction:column;gap:6px;}
  .art-row .info .meta-row{margin-top:0;}
  .art-row h3{font-family:var(--font-display);font-size:18px;font-weight:600;line-height:1.32;transition:color .3s ease;}
  .art-row p{font-size:13.5px;color:var(--gris);line-height:1.5;}
  .btn-leer{
    align-self:flex-start;
    margin-top:4px;
    background:var(--cat-color, var(--azul));
    color:#fff;
    font-size:12.5px;
    font-weight:700;
    padding:7px 16px;
    border-radius:4px;
    transition:filter .25s ease;
  }
  .btn-leer:hover{filter:brightness(.85);}

  /* ===== 4 noticias: destacada + lista chica ===== */
  .cuatro-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:22px;
  }
  .destacada-salud .foto-card{height:230px;margin-bottom:12px;}
  .destacada-salud h3{font-family:var(--font-display);font-size:20px;font-weight:600;line-height:1.3;margin-bottom:6px;}
  .destacada-salud p{font-size:13.5px;color:var(--gris);margin-bottom:10px;}

  .mini-lista{display:flex;flex-direction:column;gap:16px;}
  .mini-item{
    display:grid;grid-template-columns:90px 1fr;gap:12px;
    padding:4px;border-radius:6px;
    transition:background .25s ease;
  }
  .mini-item:hover{background:var(--gris-claro);}
  .mini-item .foto-mini{display:block;border-radius:4px;overflow:hidden;width:90px;height:64px;}
  .mini-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.25,.8,.25,1);}
  .mini-item:hover img{transform:scale(1.06);}
  .mini-item .fecha{font-size:11px;color:var(--gris);font-family:var(--font-body);}
  .mini-item h4{font-family:var(--font-display);font-size:15px;font-weight:600;line-height:1.3;margin-top:2px;transition:color .3s ease;}
  .mini-item:hover h4{color:var(--cat-color, var(--azul));}

  /* ===== sidebar publicidad ===== */
  .sidebar{display:flex;flex-direction:column;gap:22px;}
  .sidebar-box{
    background:#fff;
    border:1px solid var(--borde);
    border-radius:6px;
    padding:14px;
  }
  .sidebar-box .titulo{
    font-size:12px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.5px;
    color:var(--gris);
    border-bottom:2px solid var(--gris-claro);
    padding-bottom:8px;
    margin-bottom:12px;
  }
  .espacios{display:flex;flex-direction:column;gap:14px;}
  .espacio-item{
    display:block;
    border-radius:4px;
    overflow:hidden;
    border:1px solid var(--borde);
  }
  .espacio-item img{width:100%;display:block;}

  /* ===== franja de publicidad del inicio (banners cuadrados) ===== */
  .publi-inicio{
    padding:22px 0;
    border-top:1px solid var(--borde);
    border-bottom:1px solid var(--borde);
    margin:34px 0;
  }
  .publi-inicio .etiqueta{
    font-family:var(--font-body);
    font-size:11.5px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.6px;
    color:var(--gris);
    text-align:center;
    margin-bottom:14px;
  }
  .publi-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(160px, 1fr));
    gap:16px;
  }
  .publi-grid .espacio-item{aspect-ratio:1/1;}
  .publi-grid .espacio-item img{width:100%;height:100%;object-fit:cover;}

  /* ===== widget de clima ===== */
  .clima-widget .titulo-clima{
    text-align:center;
    font-weight:800;
    color:var(--azul-osc);
    font-size:13px;
    text-transform:uppercase;
    margin-bottom:4px;
  }
  .clima-actual{
    text-align:center;
    font-size:12px;
    color:var(--gris);
    margin-bottom:12px;
    padding-bottom:10px;
    border-bottom:1px solid var(--gris-claro);
  }
  .clima-actual strong{color:var(--texto);font-size:14px;}
  .clima-dias{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
  .clima-dia{text-align:center;font-size:11px;color:var(--gris);}
  .clima-dia .dia-nombre{font-weight:700;color:var(--texto);margin-bottom:4px;}
  .clima-dia .icono{font-size:26px;margin:4px 0;}
  .clima-dia .temp{font-weight:800;font-size:14px;color:var(--texto);}
  .clima-dia .temp .max{color:var(--rojo);}
  .clima-dia .temp .min{color:var(--azul);}
  .clima-dia .dato{margin-top:2px;}
  .clima-fuente{
    text-align:right;
    font-size:10px;
    color:var(--amarillo-texto);
    font-weight:700;
    margin-top:10px;
  }

  /* ===== footer ===== */
  footer{
    background:var(--azul-osc);
    color:#fff;
    margin-top:20px;
    padding:36px 0 18px;
  }
  .footer-grid{
    display:grid;
    grid-template-columns:1.4fr 1fr 1fr;
    gap:30px;
    padding-bottom:24px;
    border-bottom:1px solid rgba(255,255,255,.15);
  }
  footer .logo-footer img{height:56px;filter:brightness(0) invert(1);opacity:.95;margin-bottom:10px;}
  footer p{font-size:13px;opacity:.75;max-width:38ch;}
  footer h5{font-size:13px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;opacity:.9;}
  footer ul{list-style:none;font-size:13px;display:flex;flex-direction:column;gap:8px;opacity:.8;}
  footer ul a:hover{opacity:1;text-decoration:underline;}
  .copy{
    text-align:center;
    font-size:12px;
    opacity:.6;
    padding-top:16px;
  }
  .creditos-dev{text-align:center;padding-top:14px;}
  .creditos-dev img{opacity:.85;transition:opacity .2s ease;}
  .creditos-dev a:hover img{opacity:1;}

  /* ===== responsive ===== */
  @media (max-width:1100px){
    .layout{grid-template-columns:1fr;}
    .sidebar{flex-direction:row;flex-wrap:wrap;}
    .sidebar-box{flex:1;min-width:260px;}
  }
  @media (max-width:860px){
    .hero-grid{grid-template-columns:1fr;height:auto;}
    .hero-card{height:280px;grid-row:span 1;}
    .hero-right{grid-template-rows:auto;}
    .hero-bottom-pair{grid-template-columns:1fr;}
    .dos-grid{grid-template-columns:1fr;}
    .cuatro-grid{grid-template-columns:1fr;}
    .art-row{grid-template-columns:1fr;}
    .art-row .foto{height:200px;}
    .art-row .info{padding:14px;}
    footer .footer-grid{grid-template-columns:1fr;}
    nav.main-menu ul{justify-content:flex-start;}
  }

  /* ===== PÁGINA DE CATEGORÍA ===== */
  .cat-header{padding:22px 0 0;}
  .breadcrumb{
    font-size:12.5px;
    color:var(--gris);
    margin-bottom:10px;
  }
  .breadcrumb a{color:var(--gris);transition:color .2s ease;}
  .breadcrumb a:hover{color:var(--cat-color, var(--azul));}
  .breadcrumb .sep{margin:0 4px;opacity:.6;}
  .cat-title{
    font-family:var(--font-display);
    font-size:38px;
    font-weight:700;
    color:var(--cat-color, var(--texto));
    letter-spacing:.2px;
  }
  .cat-divider{
    border:none;
    border-top:3px solid var(--cat-color, var(--borde));
    margin:20px 0 0;
  }
  .cat-section-label{
    font-family:var(--font-body);
    font-size:12px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.6px;
    color:var(--gris);
    border-left:4px solid var(--cat-color, var(--amarillo));
    padding-left:10px;
    margin:26px 0 14px;
  }
  .paginacion{
    display:flex;
    justify-content:center;
    gap:8px;
    margin-top:8px;
  }
  .paginacion a{
    display:flex;
    align-items:center;
    justify-content:center;
    width:36px;height:36px;
    border:1px solid var(--borde);
    border-radius:4px;
    font-size:13px;
    font-weight:700;
    color:var(--texto);
    transition:background .2s ease, color .2s ease, border-color .2s ease;
  }
  .paginacion a.activo,
  .paginacion a:hover{background:var(--cat-color, var(--azul));border-color:var(--cat-color, var(--azul));color:#fff;}

  /* ===== NOTICIA INDIVIDUAL ===== */
  .noticia-cabecera{
    padding-top:22px;
    margin-bottom:28px;
    max-width:760px;
    margin-left:auto;
    margin-right:auto;
  }
  .noticia-cabecera .breadcrumb{margin-bottom:16px;}
  .noticia-badge{margin-bottom:16px;display:inline-block;}
  .noticia-titulo{
    font-family:var(--font-display);
    font-size:38px;
    font-weight:700;
    line-height:1.22;
    letter-spacing:.1px;
    color:var(--texto);
    margin-bottom:16px;
  }
  .noticia-bajada{
    font-family:var(--font-body);
    font-size:19px;
    font-weight:400;
    line-height:1.6;
    color:var(--gris);
    margin-bottom:20px;
    max-width:70ch;
  }
  .meta-noticia{
    display:flex;
    align-items:center;
    gap:18px;
    font-size:13.5px;
    color:var(--gris);
    padding:14px 0;
    border-top:1px solid var(--borde);
    border-bottom:1px solid var(--borde);
    margin-bottom:20px;
  }

  /* compartir con iconos Font Awesome */
  .compartir{
    display:flex;
    align-items:center;
    gap:10px;
  }
  .compartir .etiqueta{
    font-size:12.5px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.4px;
    color:var(--gris);
    margin-right:2px;
  }
  .btn-compartir{
    display:flex;
    align-items:center;
    justify-content:center;
    width:36px;
    height:36px;
    border-radius:50%;
    background:var(--gris-claro);
    color:var(--texto);
    font-size:15px;
    transition:background .2s ease, color .2s ease, transform .2s ease;
  }
  .btn-compartir span{display:none;} /* oculta el texto viejo si quedó en el HTML */
  .btn-compartir:hover{transform:translateY(-2px);}
  .btn-compartir.facebook:hover{background:#1877f2;color:#fff;}
  .btn-compartir.twitter:hover{background:#000;color:#fff;}
  .btn-compartir.whatsapp:hover{background:#25d366;color:#fff;}
  .btn-compartir.email:hover{background:var(--azul-osc);color:#fff;}

  /* imagen principal */
  .noticia-imagen{
    margin-bottom:28px;
    border-radius:8px;
    overflow:hidden;
    max-width:760px;
    margin-left:auto;
    margin-right:auto;
  }
  .noticia-imagen img{width:100%;height:auto;object-fit:cover;}
  .noticia-imagen.inline{margin:26px auto;}
  .noticia-imagen figcaption{
    font-size:13px;
    color:var(--gris);
    padding:10px 2px 0;
    line-height:1.5;
    font-style:italic;
  }

  /* cuerpo del artículo */
  .noticia-cuerpo{
    font-family:var(--font-body);
    font-size:18px;
    line-height:1.85;
    color:var(--texto);
    max-width:760px;
    margin-left:auto;
    margin-right:auto;
  }
  .noticia-cuerpo p{
    margin-bottom:22px;
    text-align:justify;
    text-justify:inter-word;
    hyphens:auto;
  }
  .noticia-cuerpo h2{
    font-family:var(--font-display);
    font-size:26px;
    font-weight:600;
    line-height:1.3;
    margin:36px 0 16px;
    color:var(--texto);
  }
  .noticia-cuerpo blockquote{
    font-family:var(--font-display);
    font-size:20px;
    font-style:italic;
    line-height:1.55;
    color:var(--azul-osc);
    border-left:4px solid var(--amarillo);
    padding:6px 0 6px 22px;
    margin:28px 0;
  }
  .noticia-tags{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:32px;
    padding-top:24px;
    border-top:1px solid var(--borde);
  }
  .noticia-tags a{
    font-size:12.5px;
    font-weight:600;
    color:var(--azul-osc);
    background:var(--gris-claro);
    padding:6px 14px;
    border-radius:20px;
    transition:background .2s ease, color .2s ease;
  }
  .noticia-tags a:hover{background:var(--cat-color, var(--azul));color:#fff;}

  /* fecha de publicación reubicada, fuera del bloque de arriba */
  .info-publicacion{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:13px;
    color:var(--gris);
    background:#fff;
    border:1px solid var(--borde);
    border-radius:6px;
    padding:12px 14px;
    margin-bottom:22px;
  }
  .info-publicacion i{color:var(--cat-color, var(--azul));font-size:14px;}
  .info-publicacion strong{color:var(--texto);font-weight:700;}

  @media (max-width:600px){
    .noticia-titulo{font-size:28px;}
    .noticia-bajada{font-size:17px;}
    .noticia-cuerpo{font-size:16.5px;}
    .cat-title{font-size:26px;}
    .topbar .wrap{font-size:10.5px;gap:6px;}
    .topbar .redes a{margin-left:8px;}
  }
