/*
Theme Name: CaliNoticia
Theme URI: https://calinoticia.com
Author: Daniel VI
Author URI: https://calinoticia.com
Description: Tema WordPress a medida para CaliNoticia.com, portal de noticias de alta densidad informativa. Portada modular con orden arrastrable, 12 módulos editoriales, acentos por sección, modo oscuro, Schema.org NewsArticle y optimización Core Web Vitals. Totalmente personalizable desde el Customizer sin tocar código.
Version: 1.8.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: calinoticia
Tags: news, magazine, blog, custom-colors, custom-menu, custom-logo, featured-images, footer-widgets, full-width-template, right-sidebar, translation-ready, block-styles, wide-blocks, accessibility-ready
*/

/* =========================================================================
   CaliNoticia — Hoja de estilos principal
   1. Tokens de diseño          7. Módulos de portada
   2. Reset y base              8. Tarjetas de artículo
   3. Layout / retícula         9. Single / contenido
   4. Tipografía               10. Widgets y sidebar
   5. Componentes UI           11. Footer
   6. Cabecera y navegación    12. Utilidades, dark mode y responsive
   ========================================================================= */

/* ------------------------------------------------------------------ *
 * 1. TOKENS DE DISEÑO
 * Todas las variables se sobrescriben desde el Customizer (inc/customizer-output.php)
 * ------------------------------------------------------------------ */
:root{
  /* Marca */
  --cn-brand:#1046e0;
  --cn-brand-600:#0b37b4;
  --cn-brand-050:#eef3ff;
  --cn-brand-contrast:#ffffff;

  /* Acentos por sección */
  --cn-cat-1:#d92d20; /* Actualidad  */
  --cn-cat-2:#0e9f6e; /* Deportes    */
  --cn-cat-3:#7c3aed; /* Cultura     */
  --cn-cat-4:#f79009; /* Economía    */
  --cn-cat-5:#0ba5ec; /* Tecnología  */
  --cn-live:#e5252a;  /* En vivo     */

  /* Superficies y texto */
  --cn-bg:#ffffff;
  --cn-surface:#f6f8fb;
  --cn-surface-2:#eef1f6;
  --cn-ink:#0d1117;
  --cn-ink-2:#333c49;
  --cn-muted:#5a6472;
  --cn-line:#e3e7ee;
  --cn-line-strong:#cfd6e2;
  --cn-overlay:linear-gradient(180deg,rgba(9,12,20,0) 18%,rgba(9,12,20,.72) 68%,rgba(9,12,20,.92) 100%);
  --cn-special-bg:#d3ddeb;   /* Fondo del bloque «En profundidad» */
  --cn-special-ink:#4a5566;  /* Texto secundario dentro de ese bloque (contraste AA) */

  /* Tipografía */
  --cn-font-body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --cn-font-head:'Archivo','Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --cn-fs-base:16px;
  --cn-lh:1.6;
  --cn-head-weight:800;
  --cn-head-tracking:-.022em;

  /* Escala tipográfica fluida */
  --cn-t-xs:.75rem;
  --cn-t-sm:.8125rem;
  --cn-t-md:.9375rem;
  --cn-t-lg:1.0625rem;
  --cn-t-xl:clamp(1.15rem,.95rem + .6vw,1.4rem);
  --cn-t-2xl:clamp(1.4rem,1.1rem + 1vw,1.9rem);
  --cn-t-3xl:clamp(1.75rem,1.25rem + 2vw,2.75rem);
  --cn-t-4xl:clamp(2rem,1.4rem + 2.8vw,3.4rem);

  /* Layout */
  --cn-container:1280px;
  --cn-gap:24px;
  --cn-gap-sm:14px;
  --cn-radius:14px;
  --cn-radius-sm:8px;
  --cn-radius-pill:999px;
  --cn-shadow-1:0 1px 2px rgba(13,17,23,.06),0 1px 3px rgba(13,17,23,.05);
  --cn-shadow-2:0 6px 16px rgba(13,17,23,.09),0 2px 6px rgba(13,17,23,.05);
  --cn-shadow-3:0 18px 44px rgba(13,17,23,.14);
  --cn-ring:0 0 0 3px color-mix(in srgb,var(--cn-brand) 32%,transparent);
  --cn-header-h:64px;
  --cn-ease:cubic-bezier(.2,.7,.3,1);
}

/* ------------------------------------------------------------------ *
 * 2. RESET Y BASE
 * ------------------------------------------------------------------ */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}}
body{
  margin:0;background:var(--cn-bg);color:var(--cn-ink);
  font-family:var(--cn-font-body);font-size:var(--cn-fs-base);line-height:var(--cn-lh);
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  font-synthesis-weight:none;overflow-x:hidden;
}
img,svg,video,iframe{max-width:100%;height:auto;display:block}
img{background:var(--cn-surface-2)}
a{color:inherit;text-decoration:none;transition:color .18s var(--cn-ease)}
a:hover{color:var(--cn-brand)}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--cn-brand);outline-offset:2px;border-radius:4px}
hr{border:0;border-top:1px solid var(--cn-line);margin:2rem 0}
::selection{background:color-mix(in srgb,var(--cn-brand) 22%,transparent)}

/* Accesibilidad */
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:-9999px;top:0;z-index:9999;background:var(--cn-brand);color:#fff;padding:.7rem 1.1rem;border-radius:0 0 var(--cn-radius-sm) 0;font-weight:700}
.skip-link:focus{left:0;color:#fff}

/* ------------------------------------------------------------------ *
 * 3. LAYOUT / RETÍCULA
 * ------------------------------------------------------------------ */
.cn-container{width:100%;max-width:var(--cn-container);margin-inline:auto;padding-inline:20px}
.cn-container--narrow{max-width:760px}
.cn-container--wide{max-width:1480px}
.cn-grid{display:grid;gap:var(--cn-gap)}
.cn-g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.cn-g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.cn-g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.cn-g5{grid-template-columns:repeat(5,minmax(0,1fr))}
.cn-hero-grid{grid-template-columns:minmax(0,1.55fr) minmax(0,.9fr) minmax(0,.75fr)}
.cn-with-sidebar{display:grid;gap:40px;grid-template-columns:minmax(0,1fr) 336px;align-items:start}
.cn-layout--full .cn-with-sidebar{grid-template-columns:minmax(0,1fr)}
.cn-sidebar{position:sticky;top:calc(var(--cn-header-h) + 16px)}
.cn-section{padding-block:clamp(28px,3.5vw,48px)}
.cn-section + .cn-section{padding-top:0}
.cn-stack{display:flex;flex-direction:column}
.cn-stack > * + *{margin-top:var(--cn-gap-sm)}

/* ------------------------------------------------------------------ *
 * 4. TIPOGRAFÍA
 * ------------------------------------------------------------------ */
h1,h2,h3,h4,h5,h6,.cn-h{
  font-family:var(--cn-font-head);font-weight:var(--cn-head-weight);
  letter-spacing:var(--cn-head-tracking);line-height:1.16;margin:0 0 .5em;color:var(--cn-ink);
  text-wrap:balance;
}
h1{font-size:var(--cn-t-3xl)}h2{font-size:var(--cn-t-2xl)}h3{font-size:var(--cn-t-xl)}
h4{font-size:var(--cn-t-lg)}h5,h6{font-size:var(--cn-t-md)}
p{margin:0 0 1.1em}
small,.cn-small{font-size:var(--cn-t-sm);color:var(--cn-muted)}
blockquote{margin:1.8em 0;padding:.2em 0 .2em 1.25em;border-left:4px solid var(--cn-brand);font-size:var(--cn-t-xl);font-family:var(--cn-font-head);line-height:1.35}
blockquote cite{display:block;margin-top:.6em;font-size:var(--cn-t-sm);font-family:var(--cn-font-body);color:var(--cn-muted);font-style:normal}
code,kbd,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em}
pre{background:var(--cn-surface);padding:1rem 1.2rem;border-radius:var(--cn-radius-sm);overflow:auto;border:1px solid var(--cn-line)}

/* ------------------------------------------------------------------ *
 * 5. COMPONENTES UI
 * ------------------------------------------------------------------ */
.cn-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  padding:.7rem 1.15rem;border-radius:var(--cn-radius-pill);border:1px solid transparent;
  background:var(--cn-brand);color:var(--cn-brand-contrast);font-weight:700;font-size:var(--cn-t-md);
  cursor:pointer;transition:transform .16s var(--cn-ease),background .16s var(--cn-ease),box-shadow .16s var(--cn-ease);
  line-height:1;
}
.cn-btn:hover{background:var(--cn-brand-600);color:var(--cn-brand-contrast);transform:translateY(-1px);box-shadow:var(--cn-shadow-2)}
.cn-btn:active{transform:translateY(0)}
.cn-btn--ghost{background:transparent;color:var(--cn-ink);border-color:var(--cn-line-strong)}
.cn-btn--ghost:hover{background:var(--cn-surface);color:var(--cn-ink);box-shadow:none}
.cn-btn--block{width:100%}

.cn-kicker{
  display:inline-flex;align-items:center;gap:.4rem;font-size:var(--cn-t-xs);font-weight:800;
  letter-spacing:.09em;text-transform:uppercase;color:var(--cn-cat-1);
}
.cn-kicker::before{content:"";width:14px;height:2px;background:currentColor;border-radius:2px}
.cn-kicker--plain::before{display:none}
.cn-badge{
  display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .55rem;border-radius:var(--cn-radius-sm);
  background:var(--cn-surface);color:var(--cn-ink-2);font-size:var(--cn-t-xs);font-weight:700;
  letter-spacing:.04em;text-transform:uppercase;
}
.cn-badge--live{background:var(--cn-live);color:#fff}
.cn-badge--live::before{content:"";width:6px;height:6px;border-radius:50%;background:#fff;animation:cn-pulse 1.4s infinite}
@keyframes cn-pulse{0%,100%{opacity:1}50%{opacity:.25}}

.cn-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;font-size:var(--cn-t-xs);color:var(--cn-muted)}
.cn-meta > * + *::before{content:"·";margin-right:.45rem;color:var(--cn-line-strong)}
.cn-meta a:hover{color:var(--cn-brand)}

/* Encabezado de sección */
.cn-sec-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:18px;padding-bottom:10px;border-bottom:2px solid var(--cn-line)}
.cn-sec-head h2,.cn-sec-head .cn-h{margin:0;font-size:var(--cn-t-2xl);position:relative;padding-bottom:12px}
.cn-sec-head h2::after,.cn-sec-head .cn-h::after{content:"";position:absolute;left:0;bottom:-12px;width:100%;height:3px;background:var(--cn-accent,var(--cn-brand));border-radius:2px}
.cn-sec-head .cn-more{font-size:var(--cn-t-sm);font-weight:700;color:var(--cn-muted);white-space:nowrap;display:inline-flex;align-items:center;gap:.3rem}
.cn-sec-head .cn-more:hover{color:var(--cn-brand)}
.cn-sec-head .cn-more svg{width:14px;height:14px;transition:transform .18s var(--cn-ease)}
.cn-sec-head .cn-more:hover svg{transform:translateX(3px)}

/* Media / ratio */
.cn-media{position:relative;overflow:hidden;border-radius:var(--cn-radius);background:var(--cn-surface-2);display:block}
.cn-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--cn-ease)}
.cn-media--16x9{aspect-ratio:16/9}
.cn-media--4x3{aspect-ratio:4/3}
.cn-media--1x1{aspect-ratio:1/1}
.cn-media--3x4{aspect-ratio:3/4}
.cn-media--21x9{aspect-ratio:21/9}
a:hover .cn-media img,.cn-card:hover .cn-media img{transform:scale(1.045)}
.cn-media__play{position:absolute;inset:auto auto 12px 12px;width:38px;height:38px;border-radius:50%;background:rgba(9,12,20,.72);display:grid;place-items:center;backdrop-filter:blur(4px)}
.cn-media__play svg{width:14px;height:14px;fill:#fff}

/* ------------------------------------------------------------------ *
 * 6. CABECERA Y NAVEGACIÓN
 * ------------------------------------------------------------------ */
.cn-topbar{background:var(--cn-ink);color:#fff;font-size:var(--cn-t-xs)}
.cn-topbar a{color:rgba(255,255,255,.82)}
.cn-topbar a:hover{color:#fff}
.cn-topbar__inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:34px}
.cn-topbar__links{display:flex;gap:1.1rem;align-items:center;overflow-x:auto;scrollbar-width:none}
.cn-topbar__links::-webkit-scrollbar{display:none}
.cn-topbar__meta{display:flex;gap:.9rem;align-items:center;white-space:nowrap;color:rgba(255,255,255,.65)}

.cn-header{position:sticky;top:0;z-index:120;background:var(--cn-bg);border-bottom:1px solid var(--cn-line);transition:box-shadow .2s var(--cn-ease)}
.cn-header.is-stuck{box-shadow:var(--cn-shadow-2)}
.cn-header__inner{display:flex;align-items:center;gap:18px;height:var(--cn-header-h)}
.cn-brand{display:flex;align-items:center;gap:.6rem;font-family:var(--cn-font-head);font-weight:900;font-size:1.45rem;letter-spacing:-.03em;color:var(--cn-ink);flex:0 0 auto}
.cn-brand img{max-height:38px;width:auto}
.cn-brand__dot{width:9px;height:9px;border-radius:50%;background:var(--cn-brand)}
.cn-brand__name{display:inline-flex;align-items:baseline}
.cn-brand__base{color:var(--cn-ink-2)}
.cn-brand__tld{color:var(--cn-brand)}
.cn-footer__brand .cn-brand__base{color:#fff}
.cn-drawer .cn-brand__base{color:var(--cn-ink-2)}
.cn-brand small{display:block;font-family:var(--cn-font-body);font-weight:600;font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--cn-muted);margin-top:-2px}

.cn-nav{flex:1 1 auto;min-width:0}
.cn-nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:2px}
.cn-nav > ul{overflow:visible}
.cn-nav li{position:relative}
.cn-nav a{display:inline-flex;align-items:center;padding:.5rem .7rem;border-radius:var(--cn-radius-pill);font-size:var(--cn-t-md);font-weight:600;color:var(--cn-ink-2);white-space:nowrap}
.cn-nav a:hover,.cn-nav .current-menu-item > a,.cn-nav .current-menu-parent > a{background:var(--cn-surface);color:var(--cn-brand)}
.cn-nav .sub-menu{
  position:absolute;top:calc(100% + 8px);left:0;min-width:220px;display:block;
  background:var(--cn-bg);border:1px solid var(--cn-line);border-radius:var(--cn-radius);
  box-shadow:var(--cn-shadow-3);padding:8px;flex-direction:column;align-items:stretch;gap:0;
  opacity:0;visibility:hidden;transform:translateY(6px);transition:.18s var(--cn-ease);z-index:50;
}
.cn-nav li:hover > .sub-menu,.cn-nav li:focus-within > .sub-menu{opacity:1;visibility:visible;transform:translateY(0)}
.cn-nav .sub-menu a{width:100%;border-radius:var(--cn-radius-sm);padding:.55rem .7rem}
.cn-nav .sub-menu .sub-menu{top:-8px;left:calc(100% + 6px)}

.cn-header__actions{display:flex;align-items:center;gap:6px;flex:0 0 auto}
.cn-iconbtn{
  width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:50%;border:1px solid transparent;
  background:transparent;cursor:pointer;color:var(--cn-ink-2);transition:background .16s var(--cn-ease),color .16s var(--cn-ease);
}
.cn-iconbtn:hover{background:var(--cn-surface);color:var(--cn-brand)}
.cn-iconbtn svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.cn-burger{display:none}

/* Barra de secciones */
.cn-subnav{background:var(--cn-bg);border-bottom:1px solid var(--cn-line)}
.cn-subnav__inner{display:flex;align-items:center;gap:6px;height:44px;overflow-x:auto;scrollbar-width:none}
.cn-subnav__inner::-webkit-scrollbar{display:none}
.cn-subnav a{
  padding:.32rem .7rem;border-radius:var(--cn-radius-pill);font-size:var(--cn-t-sm);font-weight:700;
  color:var(--cn-muted);white-space:nowrap;border:1px solid transparent;
}
.cn-subnav a:hover{color:var(--cn-brand);background:var(--cn-brand-050);border-color:color-mix(in srgb,var(--cn-brand) 18%,transparent)}

/* Buscador desplegable */
.cn-search-panel{
  position:absolute;inset:auto 0 auto 0;top:100%;background:var(--cn-bg);border-bottom:1px solid var(--cn-line);
  box-shadow:var(--cn-shadow-2);padding:18px 0;display:none;
}
.cn-search-panel.is-open{display:block;animation:cn-fade .2s var(--cn-ease)}
@keyframes cn-fade{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.cn-searchform{display:flex;gap:8px}
.cn-searchform input[type=search],.cn-searchform input[type=text]{
  flex:1;padding:.85rem 1rem;border:1px solid var(--cn-line-strong);border-radius:var(--cn-radius-pill);
  background:var(--cn-surface);font-size:var(--cn-t-lg);
}
.cn-searchform input:focus{outline:none;border-color:var(--cn-brand);box-shadow:var(--cn-ring);background:var(--cn-bg)}

/* Menú móvil */
.cn-drawer{position:fixed;inset:0;z-index:200;visibility:hidden}
.cn-drawer.is-open{visibility:visible}
.cn-drawer__scrim{position:absolute;inset:0;background:rgba(9,12,20,.5);opacity:0;transition:opacity .24s var(--cn-ease)}
.cn-drawer.is-open .cn-drawer__scrim{opacity:1}
.cn-drawer__panel{
  position:absolute;inset:0 auto 0 0;width:min(88vw,340px);background:var(--cn-bg);
  transform:translateX(-100%);transition:transform .28s var(--cn-ease);overflow-y:auto;padding:18px;
  display:flex;flex-direction:column;gap:14px;
}
.cn-drawer.is-open .cn-drawer__panel{transform:none}
.cn-drawer__head{display:flex;align-items:center;justify-content:space-between}
.cn-drawer nav ul{list-style:none;margin:0;padding:0}
.cn-drawer nav > ul > li > a{font-family:var(--cn-font-head);font-weight:800;font-size:1.05rem}
.cn-drawer nav a{display:block;padding:.7rem .2rem;border-bottom:1px solid var(--cn-line)}
.cn-drawer .sub-menu a{font-size:var(--cn-t-md);font-weight:500;padding-left:1rem;color:var(--cn-muted)}

/* Ticker de última hora — alineado con el contenedor de la página */
.cn-ticker-wrap{margin-top:16px}
.cn-ticker{
  display:flex;align-items:stretch;gap:0;background:var(--cn-bg);
  border:1px solid var(--cn-line);border-radius:var(--cn-radius);overflow:hidden;
}
.cn-ticker__label{
  display:flex;align-items:center;gap:.4rem;background:var(--cn-live);color:#fff;flex:0 0 auto;
  padding:.5rem .9rem;font-size:var(--cn-t-xs);font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;
}
/* Variante a ancho completo, por si alguna vez se prefiere */
.cn-ticker--full{border-inline:0;border-top:0;border-radius:0}
.cn-ticker--full .cn-ticker-wrap{margin-top:0}
.cn-ticker__viewport{flex:1 1 auto;min-width:0;overflow:hidden}
.cn-ticker__track{display:flex;align-items:center;gap:2.5rem;padding:.5rem 1rem;white-space:nowrap;animation:cn-marquee 42s linear infinite;font-size:var(--cn-t-sm);font-weight:600;width:max-content}
.cn-ticker:hover .cn-ticker__track{animation-play-state:paused}
.cn-ticker__track span{color:var(--cn-muted);margin-right:.5rem;font-weight:800}
@keyframes cn-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* Barra de progreso de lectura */
.cn-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--cn-brand);z-index:300;transition:width .1s linear}

/* ------------------------------------------------------------------ *
 * 7. MÓDULOS DE PORTADA
 * ------------------------------------------------------------------ */
/* Hero principal */
.cn-hero{position:relative;border-radius:var(--cn-radius);overflow:hidden;display:block;min-height:420px;color:#fff;box-shadow:var(--cn-shadow-1)}
.cn-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cn-hero::after{content:"";position:absolute;inset:0;background:var(--cn-overlay)}
.cn-hero__body{position:relative;z-index:2;padding:clamp(20px,3vw,34px);margin-top:auto;display:flex;flex-direction:column;justify-content:flex-end;height:100%;min-height:420px}
.cn-hero__body h2{color:#fff;font-size:var(--cn-t-4xl);margin:.35em 0 .35em;text-shadow:0 2px 24px rgba(0,0,0,.35)}
.cn-hero__body p{color:rgba(255,255,255,.88);max-width:60ch;font-size:var(--cn-t-lg);margin:0}
.cn-hero .cn-hero__body .cn-kicker{color:#fff;background:var(--cn-accent,var(--cn-cat-1));padding:.28rem .6rem;border-radius:var(--cn-radius-sm);align-self:flex-start}
.cn-hero .cn-hero__body .cn-kicker::before{display:none}
.cn-hero__links{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;margin-top:1rem;padding-top:.9rem;border-top:1px solid rgba(255,255,255,.22)}
.cn-hero__links a{font-size:var(--cn-t-sm);font-weight:600;color:rgba(255,255,255,.9);display:inline-flex;gap:.4rem;align-items:center}
.cn-hero__links a::before{content:"›";color:var(--cn-brand-contrast);font-weight:800}
.cn-hero__links a:hover{color:#fff;text-decoration:underline}

/* Columna secundaria del hero */
.cn-hero-side{display:flex;flex-direction:column;gap:var(--cn-gap-sm)}
.cn-hero-side .cn-card{border:1px solid var(--cn-line);border-radius:var(--cn-radius);padding:12px;background:var(--cn-bg)}

/* Franja de titulares bajo el hero */
.cn-strip{display:grid;gap:var(--cn-gap);grid-template-columns:repeat(auto-fit,minmax(210px,1fr));padding-top:var(--cn-gap);margin-top:var(--cn-gap);border-top:1px solid var(--cn-line)}

/* Columnas por sección (Jornalismo / Esporte / Entretenimento) */
.cn-cols{display:grid;gap:var(--cn-gap);grid-template-columns:repeat(3,minmax(0,1fr))}
.cn-col{display:flex;flex-direction:column}
.cn-col__head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:14px}
.cn-col__head h2{font-size:var(--cn-t-xl);margin:0;color:var(--cn-accent,var(--cn-brand))}
.cn-col__lead{border-radius:var(--cn-radius);overflow:hidden;position:relative;display:block;margin-bottom:12px;color:#fff}
.cn-col__lead img{aspect-ratio:16/10;width:100%;object-fit:cover}
.cn-col__lead::after{content:"";position:absolute;inset:0;background:var(--cn-overlay)}
.cn-col__lead-body{position:absolute;z-index:2;inset:auto 0 0 0;padding:16px}
.cn-col__lead-body h3{color:#fff;margin:0;font-size:var(--cn-t-lg)}
.cn-col__lead-body .cn-badge{background:var(--cn-accent,var(--cn-brand));color:#fff;margin-bottom:.5rem}
.cn-col__list{display:flex;flex-direction:column;gap:12px;border-top:1px solid var(--cn-line);padding-top:12px}

/* Bloque especial / dossier */
.cn-special{
  background:var(--cn-special-bg);border-radius:var(--cn-radius);
  padding:clamp(18px,2.4vw,30px);border:1px solid color-mix(in srgb,var(--cn-special-bg) 78%,#000 8%);
}
.cn-special .cn-meta,.cn-special .cn-card__excerpt,.cn-special .cn-small{color:var(--cn-special-ink)}
.cn-special .cn-card--boxed{background:var(--cn-bg)}
.cn-special__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:18px}
.cn-special__head h2{margin:0;font-size:var(--cn-t-2xl)}
.cn-special .cn-btn{padding:.45rem .9rem;font-size:var(--cn-t-sm)}
.cn-special .cn-card__title{font-size:var(--cn-t-md)}

/* Carrusel horizontal */
.cn-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,1fr);gap:var(--cn-gap);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:thin}
.cn-rail > *{scroll-snap-align:start}
.cn-rail::-webkit-scrollbar{height:6px}
.cn-rail::-webkit-scrollbar-thumb{background:var(--cn-line-strong);border-radius:99px}
.cn-rail-wrap{position:relative}
.cn-rail-nav{position:absolute;top:38%;width:40px;height:40px;border-radius:50%;background:var(--cn-bg);border:1px solid var(--cn-line);box-shadow:var(--cn-shadow-2);display:grid;place-items:center;cursor:pointer;z-index:3}
.cn-rail-nav--prev{left:-14px}
.cn-rail-nav--next{right:-14px}
.cn-rail-nav svg{width:18px;height:18px;stroke:var(--cn-ink);fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}

/* Lo más leído */
.cn-mostread{counter-reset:cn-rank;display:flex;flex-direction:column;gap:0}
.cn-mostread li{counter-increment:cn-rank;display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--cn-line);list-style:none}
.cn-mostread li:last-child{border-bottom:0}
.cn-mostread li::before{
  content:counter(cn-rank);font-family:var(--cn-font-head);font-weight:900;font-size:1.5rem;line-height:1;
  color:var(--cn-brand);opacity:.35;min-width:1.4ch;
}
.cn-mostread a{font-weight:600;font-size:var(--cn-t-md);line-height:1.35}
.cn-mostread a:hover{color:var(--cn-brand)}

/* Boletín */
.cn-newsletter{background:linear-gradient(135deg,var(--cn-brand),var(--cn-brand-600));color:#fff;border-radius:var(--cn-radius);padding:clamp(22px,3vw,38px);display:grid;gap:20px;grid-template-columns:1.2fr 1fr;align-items:center}
.cn-newsletter h2{color:#fff;margin:0 0 .3em}
.cn-newsletter p{color:rgba(255,255,255,.85);margin:0}
.cn-newsletter form{display:flex;gap:8px;flex-wrap:wrap}
.cn-newsletter input{flex:1;min-width:200px;padding:.8rem 1rem;border-radius:var(--cn-radius-pill);border:0}
.cn-newsletter .cn-btn{background:#fff;color:var(--cn-brand)}
.cn-newsletter .cn-btn:hover{background:var(--cn-ink);color:#fff}

/* Zona de anuncios */
.cn-ad{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:var(--cn-surface);border:1px dashed var(--cn-line-strong);border-radius:var(--cn-radius);padding:14px;text-align:center;color:var(--cn-muted)}
.cn-ad__label{font-size:10px;letter-spacing:.14em;text-transform:uppercase}

/* ------------------------------------------------------------------ *
 * 8. TARJETAS DE ARTÍCULO
 * ------------------------------------------------------------------ */
.cn-card{display:flex;flex-direction:column;gap:10px;min-width:0}
.cn-card__title{font-family:var(--cn-font-head);font-weight:var(--cn-head-weight);letter-spacing:var(--cn-head-tracking);font-size:var(--cn-t-lg);line-height:1.24;margin:0}
.cn-card__title a:hover{color:var(--cn-brand)}
.cn-card__excerpt{font-size:var(--cn-t-md);color:var(--cn-muted);margin:0;line-height:1.5}
.cn-card--h{flex-direction:row;align-items:flex-start;gap:12px}
.cn-card--h .cn-media{flex:0 0 104px;border-radius:var(--cn-radius-sm)}
.cn-card--h .cn-card__title{font-size:var(--cn-t-md)}
.cn-card--h-rev{flex-direction:row-reverse}
.cn-card--sm .cn-card__title{font-size:var(--cn-t-md)}
.cn-card--lg .cn-card__title{font-size:var(--cn-t-2xl)}
.cn-card--boxed{background:var(--cn-bg);border:1px solid var(--cn-line);border-radius:var(--cn-radius);padding:14px;box-shadow:var(--cn-shadow-1);transition:box-shadow .2s var(--cn-ease),transform .2s var(--cn-ease)}
.cn-card--boxed:hover{box-shadow:var(--cn-shadow-2);transform:translateY(-2px)}
.cn-card--overlay{position:relative;border-radius:var(--cn-radius);overflow:hidden;color:#fff;min-height:230px}
.cn-card--overlay img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cn-card--overlay::after{content:"";position:absolute;inset:0;background:var(--cn-overlay)}
.cn-card--overlay .cn-card__body{position:relative;z-index:2;margin-top:auto;padding:16px}
.cn-card--overlay .cn-card__title{color:#fff}
.cn-card--overlay .cn-card__body .cn-card__cat{color:#fff}
.cn-card--overlay .cn-meta{color:rgba(255,255,255,.75)}
.cn-col__lead-body .cn-badge{background:var(--cn-accent,var(--cn-brand));color:#fff}
.cn-card__body{display:flex;flex-direction:column;gap:8px;min-width:0}
.cn-card__cat{font-size:var(--cn-t-xs);font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--cn-accent,var(--cn-cat-1))}
.cn-card--divided{border-top:1px solid var(--cn-line);padding-top:12px}

/* Lista de archivo */
.cn-archive-list{display:flex;flex-direction:column;gap:22px}
.cn-archive-list .cn-card--h .cn-media{flex:0 0 240px}
.cn-archive-list .cn-card--h .cn-card__title{font-size:var(--cn-t-xl)}

/* Paginación */
.cn-pagination{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin-top:40px}
.cn-pagination .page-numbers{
  display:grid;place-items:center;min-width:40px;height:40px;padding:0 .6rem;border-radius:var(--cn-radius-sm);
  border:1px solid var(--cn-line);font-weight:700;font-size:var(--cn-t-md);color:var(--cn-ink-2);
}
.cn-pagination .page-numbers:hover{border-color:var(--cn-brand);color:var(--cn-brand)}
.cn-pagination .current{background:var(--cn-brand);border-color:var(--cn-brand);color:#fff}

/* ------------------------------------------------------------------ *
 * 9. SINGLE / CONTENIDO
 * ------------------------------------------------------------------ */
.cn-breadcrumbs{font-size:var(--cn-t-xs);color:var(--cn-muted);margin-bottom:14px;display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}
.cn-breadcrumbs a:hover{color:var(--cn-brand)}
.cn-breadcrumbs .sep{opacity:.5}

.cn-entry-header{margin-bottom:22px}
.cn-entry-header h1{font-size:var(--cn-t-4xl);margin-bottom:.35em}
.cn-entry-lead{font-size:var(--cn-t-xl);color:var(--cn-ink-2);line-height:1.45;font-weight:500;margin:0 0 1rem}
.cn-byline{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:14px 0;border-block:1px solid var(--cn-line)}
.cn-byline img{width:40px;height:40px;border-radius:50%;object-fit:cover}
.cn-byline__info{font-size:var(--cn-t-sm);line-height:1.35}
.cn-byline__info strong{display:block;font-size:var(--cn-t-md)}
.cn-byline__info span{color:var(--cn-muted)}
.cn-share{display:flex;gap:6px;margin-left:auto}
.cn-share a{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--cn-line);color:var(--cn-ink-2)}
.cn-share a:hover{background:var(--cn-brand);border-color:var(--cn-brand);color:#fff}
.cn-share svg{width:16px;height:16px;fill:currentColor}

.cn-featured{margin:22px 0}
.cn-featured figcaption{font-size:var(--cn-t-xs);color:var(--cn-muted);margin-top:8px;padding-left:10px;border-left:3px solid var(--cn-line-strong)}

.cn-content{font-size:1.0625rem;line-height:1.75;color:var(--cn-ink-2)}
.cn-content > *{max-width:100%}
.cn-content h2{margin:1.8em 0 .6em;font-size:var(--cn-t-2xl);color:var(--cn-ink)}
.cn-content h3{margin:1.5em 0 .5em;color:var(--cn-ink)}
.cn-content a{color:var(--cn-brand);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.cn-content a:hover{text-decoration-thickness:2px}
.cn-content ul,.cn-content ol{padding-left:1.3em;margin:0 0 1.2em}
.cn-content li{margin-bottom:.5em}
.cn-content img,.cn-content figure{border-radius:var(--cn-radius-sm)}
.cn-content figure{margin:1.8em 0}
.cn-content figcaption{font-size:var(--cn-t-xs);color:var(--cn-muted);margin-top:8px;text-align:center}
.cn-content table{width:100%;border-collapse:collapse;margin:1.5em 0;font-size:var(--cn-t-md)}
.cn-content th,.cn-content td{border:1px solid var(--cn-line);padding:.6rem .8rem;text-align:left}
.cn-content th{background:var(--cn-surface);font-weight:700}
.cn-content .wp-block-pullquote,.cn-content .wp-block-quote{border-left:4px solid var(--cn-brand)}
.alignwide{width:min(100vw - 40px,1100px);margin-inline:auto}
.alignfull{width:100vw;margin-left:calc(50% - 50vw)}
.alignleft{float:left;margin:.4em 1.4em 1em 0}
.alignright{float:right;margin:.4em 0 1em 1.4em}
.aligncenter{margin-inline:auto}
.wp-caption{max-width:100%}

.cn-tags{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0}
.cn-tags a{padding:.35rem .75rem;border-radius:var(--cn-radius-pill);background:var(--cn-surface);font-size:var(--cn-t-sm);font-weight:600;color:var(--cn-ink-2)}
.cn-tags a:hover{background:var(--cn-brand);color:#fff}

/* Ficha de autor */
.cn-authorbox{
  display:flex;gap:20px;padding:22px;background:var(--cn-surface);border:1px solid var(--cn-line);
  border-radius:var(--cn-radius);margin:32px 0;align-items:flex-start;
}
.cn-authorbox__avatar{flex:0 0 auto;display:block}
.cn-authorbox img{width:88px;height:88px;border-radius:50%;object-fit:cover;background:var(--cn-surface-2)}
.cn-authorbox__body{min-width:0;flex:1}
.cn-authorbox__kicker{margin:0;font-size:var(--cn-t-xs);font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--cn-muted)}
.cn-authorbox h3{margin:.15em 0 .2em;font-size:var(--cn-t-xl)}
.cn-authorbox__role{margin:0 0 .55em;font-size:var(--cn-t-sm);font-weight:700;color:var(--cn-brand)}
.cn-authorbox__bio{margin:0 0 .8em;font-size:var(--cn-t-md);color:var(--cn-ink-2);line-height:1.55}
.cn-authorbox__foot{display:flex;flex-wrap:wrap;align-items:center;gap:12px;justify-content:space-between;margin-top:.6em}
.cn-authorbox__more{font-size:var(--cn-t-sm);font-weight:700;color:var(--cn-brand)}
.cn-authorbox__more:hover{text-decoration:underline}
.cn-share--author{margin-left:0}
.cn-share--author a{width:30px;height:30px}
.cn-share--author svg{width:14px;height:14px}
.cn-tags--sm span{
  display:inline-block;padding:.22rem .6rem;border-radius:var(--cn-radius-pill);background:var(--cn-bg);
  border:1px solid var(--cn-line);font-size:var(--cn-t-xs);font-weight:600;color:var(--cn-muted);margin:0 6px 6px 0;
}

/* Cabecera del archivo de autor */
.cn-author-hero{
  display:flex;gap:26px;align-items:flex-start;padding:26px;margin-bottom:34px;
  background:var(--cn-surface);border:1px solid var(--cn-line);border-radius:var(--cn-radius);
}
.cn-author-hero__avatar img{width:118px;height:118px;border-radius:50%;object-fit:cover;box-shadow:var(--cn-shadow-2)}
.cn-author-hero__body{min-width:0}
.cn-author-hero h1{font-size:var(--cn-t-3xl);margin:.1em 0 .2em}
.cn-author-hero__role{margin:0 0 .7em;font-weight:700;color:var(--cn-brand)}
.cn-author-hero__bio{margin:0 0 1em;font-size:var(--cn-t-lg);line-height:1.55;color:var(--cn-ink-2);max-width:70ch}
.cn-author-hero__foot{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:.4em}

/* Página de equipo */
.cn-team__member{text-align:center;padding:22px 16px;background:var(--cn-bg);border:1px solid var(--cn-line);border-radius:var(--cn-radius);transition:box-shadow .2s var(--cn-ease),transform .2s var(--cn-ease)}
.cn-team__member:hover{box-shadow:var(--cn-shadow-2);transform:translateY(-2px)}
.cn-team__avatar img{width:110px;height:110px;border-radius:50%;object-fit:cover;margin:0 auto 14px}
.cn-team__member h3{margin:0 0 .2em;font-size:var(--cn-t-lg)}
.cn-team__role{margin:0 0 .6em;font-size:var(--cn-t-sm);font-weight:700;color:var(--cn-brand)}
.cn-team__bio{margin:0 0 .8em;font-size:var(--cn-t-md);color:var(--cn-muted);line-height:1.5}
.cn-team__member .cn-share{justify-content:center}

@media (max-width:560px){
  .cn-authorbox,.cn-author-hero{flex-direction:column;text-align:left}
  .cn-author-hero__avatar img{width:88px;height:88px}
}

.cn-prevnext{display:grid;gap:var(--cn-gap);grid-template-columns:1fr 1fr;margin:28px 0}
.cn-prevnext a{padding:16px;border:1px solid var(--cn-line);border-radius:var(--cn-radius);display:block}
.cn-prevnext a:hover{border-color:var(--cn-brand)}
.cn-prevnext span{font-size:var(--cn-t-xs);color:var(--cn-muted);text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.cn-prevnext strong{display:block;margin-top:6px;font-family:var(--cn-font-head);font-size:var(--cn-t-md);line-height:1.3}
.cn-prevnext .cn-next{text-align:right}

/* Comentarios */
.cn-comments{margin-top:44px}
.cn-comments ol{list-style:none;margin:0;padding:0}
.cn-comments .comment{padding:18px 0;border-bottom:1px solid var(--cn-line)}
.cn-comments .children{padding-left:28px;border-left:2px solid var(--cn-line)}
.cn-comments .comment-meta{font-size:var(--cn-t-xs);color:var(--cn-muted);margin-bottom:6px}
.comment-form input[type=text],.comment-form input[type=email],.comment-form input[type=url],.comment-form textarea{
  width:100%;padding:.75rem .9rem;border:1px solid var(--cn-line-strong);border-radius:var(--cn-radius-sm);background:var(--cn-surface);margin-top:.3rem
}
.comment-form textarea{min-height:130px;resize:vertical}
.comment-form label{font-size:var(--cn-t-sm);font-weight:600}
.comment-form p{margin-bottom:1rem}
.comment-form .submit{all:unset}
.comment-form input[type=submit]{display:inline-flex;padding:.7rem 1.3rem;border-radius:var(--cn-radius-pill);border:0;background:var(--cn-brand);color:#fff;font-weight:700;cursor:pointer}

/* ------------------------------------------------------------------ *
 * 10. WIDGETS Y SIDEBAR
 * ------------------------------------------------------------------ */
.cn-widget{margin-bottom:28px}
.cn-widget .cn-widget-title,.cn-widget h2{
  font-size:var(--cn-t-md);text-transform:uppercase;letter-spacing:.09em;font-weight:800;
  padding-bottom:8px;margin:0 0 14px;border-bottom:2px solid var(--cn-ink);
}
.cn-widget ul{list-style:none;margin:0;padding:0}
.cn-widget > ul > li{padding:9px 0;border-bottom:1px solid var(--cn-line);font-size:var(--cn-t-md)}
.cn-widget > ul > li:last-child{border-bottom:0}
.cn-widget select{width:100%;padding:.6rem;border:1px solid var(--cn-line-strong);border-radius:var(--cn-radius-sm)}
.cn-widget .cn-tags a{font-size:var(--cn-t-xs)}


/* Lista de categorías con conteo (widget "Nuestras noticias") */
.cn-catlist{list-style:none;margin:0;padding:0}
.cn-catlist li{border-bottom:1px solid var(--cn-line)}
.cn-catlist li:last-child{border-bottom:0}
.cn-catlist a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;font-weight:600;font-size:var(--cn-t-md)}
.cn-catlist a::before{content:"";width:4px;height:18px;border-radius:2px;background:var(--cn-accent,var(--cn-brand));flex:0 0 4px;margin-right:2px}
.cn-catlist span{flex:1}
.cn-catlist b{font-size:var(--cn-t-xs);font-weight:800;color:var(--cn-muted);background:var(--cn-surface);border-radius:var(--cn-radius-pill);padding:.15rem .5rem}
.cn-catlist a:hover b{background:var(--cn-brand);color:#fff}
.cn-social--widget a{background:var(--cn-surface);color:var(--cn-ink-2)}
.cn-social--widget a:hover{background:var(--cn-brand);color:#fff}

/* ------------------------------------------------------------------ *
 * 11. FOOTER
 * ------------------------------------------------------------------ */
.cn-footer{background:var(--cn-ink);color:rgba(255,255,255,.72);margin-top:60px;padding-top:52px;font-size:var(--cn-t-md)}
.cn-footer a{color:rgba(255,255,255,.72)}
.cn-footer a:hover{color:#fff}
.cn-footer h2,.cn-footer .cn-widget-title{color:#fff;border-bottom-color:rgba(255,255,255,.2)}
.cn-footer__widgets{display:grid;gap:36px;grid-template-columns:repeat(4,minmax(0,1fr));padding-bottom:36px}
.cn-footer .cn-widget > ul > li{border-bottom-color:rgba(255,255,255,.1)}
.cn-footer__brand{font-family:var(--cn-font-head);font-weight:900;font-size:1.4rem;color:#fff;display:flex;align-items:center;gap:.5rem;margin-bottom:.6rem}
.cn-footer__bottom{border-top:1px solid rgba(255,255,255,.14);padding:20px 0;display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;font-size:var(--cn-t-sm)}
.cn-social{display:flex;gap:8px}
.cn-social a{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);display:grid;place-items:center}
.cn-social a:hover{background:var(--cn-brand)}
.cn-social svg{width:17px;height:17px;fill:currentColor}
.cn-totop{position:fixed;right:18px;bottom:18px;width:44px;height:44px;border-radius:50%;background:var(--cn-brand);color:#fff;display:grid;place-items:center;box-shadow:var(--cn-shadow-2);opacity:0;pointer-events:none;transition:.24s var(--cn-ease);z-index:150;border:0;cursor:pointer}
.cn-totop.is-visible{opacity:1;pointer-events:auto}
.cn-totop svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}

/* ------------------------------------------------------------------ *
 * 12. UTILIDADES, DARK MODE Y RESPONSIVE
 * ------------------------------------------------------------------ */
/* Red de seguridad: contenedores que quedan vacíos no dejan hueco */
.cn-section:empty,.cn-container:empty,.cn-content:empty,.cn-ticker-wrap:empty{display:none!important;padding:0!important;margin:0!important}
.cn-hide{display:none!important}
.cn-mt0{margin-top:0!important}
.cn-center{text-align:center}
.cn-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cn-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.cn-clamp-4{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.cn-accent-1{--cn-accent:var(--cn-cat-1)}
.cn-accent-2{--cn-accent:var(--cn-cat-2)}
.cn-accent-3{--cn-accent:var(--cn-cat-3)}
.cn-accent-4{--cn-accent:var(--cn-cat-4)}
.cn-accent-5{--cn-accent:var(--cn-cat-5)}
.cn-accent-1 .cn-card__cat,.cn-accent-1 .cn-kicker{color:var(--cn-cat-1)}
.cn-accent-2 .cn-card__cat,.cn-accent-2 .cn-kicker{color:var(--cn-cat-2)}
.cn-accent-3 .cn-card__cat,.cn-accent-3 .cn-kicker{color:var(--cn-cat-3)}
.cn-accent-4 .cn-card__cat,.cn-accent-4 .cn-kicker{color:var(--cn-cat-4)}
.cn-accent-5 .cn-card__cat,.cn-accent-5 .cn-kicker{color:var(--cn-cat-5)}

/* Modo oscuro */
html[data-cn-theme="dark"]{
  --cn-bg:#0e1117;--cn-surface:#161b23;--cn-surface-2:#1d2430;
  --cn-ink:#f2f5f9;--cn-ink-2:#c9d2de;--cn-muted:#8d99a8;
  --cn-line:#232a35;--cn-line-strong:#333d4c;--cn-brand-050:#131c31;
  --cn-shadow-1:0 1px 2px rgba(0,0,0,.5);--cn-shadow-2:0 6px 18px rgba(0,0,0,.55);--cn-shadow-3:0 18px 44px rgba(0,0,0,.6);
}
html[data-cn-theme="dark"]{--cn-special-bg:#1a212c;--cn-special-ink:#95a1b2}
html[data-cn-theme="dark"] img{background:#1d2430}
html[data-cn-theme="dark"] .cn-footer{background:#080b10}
html[data-cn-theme="dark"] .cn-topbar{background:#080b10}
html[data-cn-theme="dark"] .cn-widget .cn-widget-title,html[data-cn-theme="dark"] .cn-widget h2{border-bottom-color:var(--cn-line-strong)}

/* Breakpoints */
@media (max-width:1180px){
  .cn-hero-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}
  .cn-hero-grid > *:nth-child(3){grid-column:1 / -1}
  .cn-hero-grid > *:nth-child(3) .cn-hero-side{flex-direction:row;flex-wrap:wrap}
  .cn-hero-grid > *:nth-child(3) .cn-hero-side > *{flex:1 1 240px}
}
@media (max-width:1024px){
  .cn-with-sidebar{grid-template-columns:minmax(0,1fr)}
  .cn-sidebar{position:static}
  .cn-cols{grid-template-columns:1fr;gap:34px}
  .cn-footer__widgets{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cn-g5{grid-template-columns:repeat(3,minmax(0,1fr))}
  .cn-newsletter{grid-template-columns:1fr}
}
@media (max-width:860px){
  :root{--cn-gap:18px}
  .cn-nav,.cn-subnav{display:none}
  .cn-burger{display:grid}
  .cn-hero-grid{grid-template-columns:1fr}
  .cn-hero-grid > *:nth-child(3){grid-column:auto}
  .cn-g4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cn-g3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cn-hero{min-height:340px}
  .cn-hero__body{min-height:340px}
  .cn-archive-list .cn-card--h{flex-direction:column}
  .cn-archive-list .cn-card--h .cn-media{flex:auto;width:100%}
}
@media (max-width:560px){
  .cn-g2,.cn-g3,.cn-g4,.cn-g5{grid-template-columns:1fr}
  .cn-footer__widgets{grid-template-columns:1fr}
  .cn-prevnext{grid-template-columns:1fr}
  .cn-topbar__meta{display:none}
  .cn-header-cta{display:none}
  .cn-hero__body h2{font-size:var(--cn-t-2xl)}
  .cn-strip{grid-template-columns:1fr}
  .cn-card--h .cn-media{flex:0 0 92px}
}

/* Impresión */
@media print{
  .cn-header,.cn-topbar,.cn-subnav,.cn-footer,.cn-sidebar,.cn-share,.cn-totop,.cn-ticker,.cn-ad{display:none!important}
  body{font-size:12pt;color:#000}
  .cn-content a{text-decoration:none;color:#000}
}
