/* ================================================================
   PAISMINERO TEMPLATE — template.css  v3.0
   Joomla 6.10+ | Zero external dependencies | Mobile-first
   Usa variables CSS inyectadas por index.php (admin configurable)
   ================================================================ */

/* ── RESET ──────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:15px;-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  background-color:var(--bg,#f0f0f0);
  font-family:'Trebuchet MS','Helvetica Neue',Arial,sans-serif;
  color:var(--text,#1a1a1a);
  overflow-x:hidden;
  min-height:100vh;
}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:inherit}
ul{list-style:none}
button{cursor:pointer;font-family:inherit}
:focus-visible{outline:2px solid var(--accent,#2e8b57);outline-offset:2px}

/* ── CSS VARIABLES — fallbacks (overridden by PHP :root block) ── */
:root{
  --accent:#e8292a;
  --accent-dark:#900;
  --primary:#1a2940;
  --bg:#f0f0f0;
  --surface:#fff;
  --border:#d4d4d4;
  --text:#1a1a1a;
  --muted:#666;
  --light:#999;
  --fh:'Georgia','Times New Roman',serif;
  --fu:Arial,Helvetica,sans-serif;
  --gap:10px;
  --r:2px;
  --max-w:1160px;
  /* Category palette */
  --c-mc:#2c2c2c; --c-mi:#555;    --c-mo:#c9a84c;
  --c-pn:#1a3a5c; --c-pc:#2155a0; --c-pi:#2d7dd2;
  --c-er:#2e7d32; --c-eg:#388e3c; --c-eas:#6abf69;
  --c-ai:#00695c; --c-aa:#00897b; --c-at:#26a69a;
  --c-em:#6a1b9a; --c-ei:#8e24aa; --c-ee:#ab47bc;
  --c-rm:#bf360c; --c-rp:#e64a19; --c-re:#ff7043;
  --c-ah:#37474f; --c-ae:#546e7a;
}

/* ── DARK MODE (system preference) ─────────────────────────── */
@media(prefers-color-scheme:dark){
  body:not(.pm-light){
    --bg:#111518;
    --surface:#1c2128;
    --border:#2d3748;
    --text:#e2e8f0;
    --muted:#a0aec0;
    --light:#718096;
  }
}
/* Force dark when .pm-dark class on body */
.pm-dark{
  --bg:#111518 !important;
  --surface:#1c2128 !important;
  --border:#2d3748 !important;
  --text:#e2e8f0 !important;
  --muted:#a0aec0 !important;
  --light:#718096 !important;
}

/* ── WRAPPER ─────────────────────────────────────────────────── */
.pm-wrap{width:100%;max-width:var(--max-w,1160px);margin:0 auto;padding:0 12px}

/* ════════════════════════════════════════════════════════════════
   TOP BAR
════════════════════════════════════════════════════════════════ */
#pm-topbar{
  background:#0f1e2e;color:#8a9bac;
  font-family:var(--fu);font-size:.68rem;
  padding:4px 0;border-bottom:1px solid #1e3248;
}
#pm-topbar .pm-wrap{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.pm-tb-links{display:flex;flex-wrap:wrap}
.pm-tb-links a{color:#7a8ea0;padding:0 7px;border-right:1px solid #2a3d52;transition:color .15s}
.pm-tb-links a:last-child{border:none}
.pm-tb-links a:hover{color:#fff}
.pm-tb-date{color:#4a5e70;white-space:nowrap;font-size:.67rem}

/* ════════════════════════════════════════════════════════════════
   HEADER
════════════════════════════════════════════════════════════════ */
#pm-header{
  background:linear-gradient(180deg,color-mix(in srgb, var(--primary) 90%, black) 0%, var(--primary) 100%);
  padding:10px 0 0;
}
.pm-hdr{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:10px;flex-wrap:wrap}

/* Logo */
.pm-logo a{display:flex;flex-direction:column}
.pm-logo-text{
  font-family:var(--fh);color:#fff;
  font-size:clamp(1.4rem,3.5vw,2.2rem);
  font-weight:bold;letter-spacing:-1px;line-height:1;
}
.pm-logo-text em{color:var(--accent);font-style:normal}
.pm-logo-text .pm-dot{color:var(--accent);font-size:1.1em;vertical-align:-.06em}
.pm-logo-tag{color:#5a7a96;font-size:.63rem;font-family:var(--fu);letter-spacing:.8px;margin-top:3px;text-transform:uppercase}

/* Header right */
.pm-hdr-r{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.pm-social{display:flex;gap:3px;flex-wrap:wrap}
.pm-social a{
  display:inline-flex;align-items:center;justify-content:center;
  width:28px;height:28px;background:#263548;border-radius:var(--r);
  color:#9ab;font-size:.72rem;font-weight:bold;font-family:var(--fu);
  transition:background .15s,color .15s;
}
.pm-social a:hover{background:var(--accent);color:#fff}
.pm-search{display:flex}
.pm-search input{
  background:#1e3350;border:1px solid #2e4a66;color:#ccc;
  padding:5px 10px;font-size:.75rem;outline:none;
  width:clamp(110px,18vw,190px);
  border-radius:var(--r) 0 0 var(--r);
}
.pm-search input::placeholder{color:#4a6070}
.pm-search button{
  background:var(--accent);border:none;color:#fff;
  padding:5px 10px;font-size:.85rem;
  border-radius:0 var(--r) var(--r) 0;
  transition:background .15s;
}
.pm-search button:hover{background:var(--accent-dark)}

/* Hamburger */
.pm-hamburger{
  display:none;flex-direction:column;justify-content:center;
  gap:5px;background:none;border:none;padding:6px;
  width:38px;height:38px;flex-shrink:0;
}
.pm-hamburger span{
  display:block;width:22px;height:2px;background:#fff;
  border-radius:2px;transition:transform .3s,opacity .3s;
}
.pm-hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.pm-hamburger.open span:nth-child(2){opacity:0}
.pm-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ════════════════════════════════════════════════════════════════
   NAVIGATION
════════════════════════════════════════════════════════════════ */
#pm-mainnav{background:#1a1a1a;position:relative;z-index:200}
#pm-mainnav.pm-sticky{
  position:fixed;top:0;left:0;right:0;
  box-shadow:0 2px 12px rgba(0,0,0,.5);z-index:500;
}
#pm-mainnav .pm-wrap{display:flex;align-items:center}

.pm-nav-desktop{
  display:flex;overflow-x:auto;scrollbar-width:none;
  -webkit-overflow-scrolling:touch;flex:1;
}
.pm-nav-desktop::-webkit-scrollbar{display:none}
.pm-nav-desktop ul{display:flex;flex-shrink:0}
.pm-nav-desktop ul li a{
  display:block;padding:10px 13px;color:#ccc;
  font-family:var(--fu);font-size:.72rem;font-weight:bold;
  text-transform:uppercase;letter-spacing:.4px;
  border-right:1px solid #2a2a2a;white-space:nowrap;
  transition:background .15s,color .15s;
}
.pm-nav-desktop ul li a:hover,
.pm-nav-desktop ul li.active a,
.pm-nav-desktop ul li.current a{background:var(--accent);color:#fff}

/* Dropdown submenu */
.pm-nav-desktop ul li{position:relative}
.pm-nav-desktop .pm-dropdown{
  display:none;position:absolute;top:100%;left:0;
  background:#222;min-width:160px;z-index:300;
  box-shadow:0 6px 18px rgba(0,0,0,.4);
}
.pm-nav-desktop li.parent:hover .pm-dropdown{display:block}
.pm-nav-desktop .pm-dropdown li a{
  padding:8px 14px;border-right:none;border-bottom:1px solid #2e2e2e;
  font-size:.7rem;
}

/* Mobile nav */
.pm-nav-mobile{
  display:none;position:absolute;top:100%;left:0;right:0;
  background:#111;z-index:400;border-top:2px solid var(--accent);
  box-shadow:0 8px 24px rgba(0,0,0,.55);
  max-height:0;overflow:hidden;transition:max-height .35s ease;
}
.pm-nav-mobile.open{max-height:600px}
.pm-nav-mobile a{
  display:block;padding:11px 16px;color:#ccc;
  font-family:var(--fu);font-size:.82rem;font-weight:bold;
  text-transform:uppercase;border-bottom:1px solid #1e1e1e;
  transition:background .15s,color .15s;
}
.pm-nav-mobile a:hover{background:#1e1e1e;color:#fff}
.pm-nav-mobile a.active{color:var(--accent)}

/* Sub navigation */
#pm-subnav{background:var(--surface);border-bottom:2px solid var(--border);overflow:hidden}
.pm-sn{display:flex;align-items:center;justify-content:space-between}
.pm-sn-links{
  display:flex;overflow-x:auto;scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}
.pm-sn-links::-webkit-scrollbar{display:none}
.pm-sn-links a{
  display:block;padding:6px 9px;font-size:.67rem;color:var(--muted);
  font-family:var(--fu);text-transform:uppercase;letter-spacing:.3px;
  border-right:1px solid var(--border);white-space:nowrap;transition:color .15s;
}
.pm-sn-links a:hover{color:var(--accent)}
.pm-sn-search{display:flex;align-items:center;gap:4px;padding-right:4px;flex-shrink:0}
.pm-sn-search input{
  border:1px solid var(--border);padding:3px 7px;font-size:.72rem;
  outline:none;border-radius:var(--r);width:100px;
  color:var(--text);background:var(--surface);
}

/* ════════════════════════════════════════════════════════════════
   BREAKING NEWS TICKER
════════════════════════════════════════════════════════════════ */
#pm-ticker{background:var(--accent);display:flex;align-items:center;height:30px;overflow:hidden}
.pm-tick-lbl{
  background:var(--accent-dark);color:#fff;font-family:var(--fu);
  font-size:.62rem;font-weight:bold;text-transform:uppercase;
  letter-spacing:1px;padding:0 10px;height:100%;
  display:flex;align-items:center;white-space:nowrap;flex-shrink:0;
}
.pm-tick-wrap{flex:1;overflow:hidden}
.pm-tick-track{
  display:flex;gap:36px;white-space:nowrap;
  animation:pm-tick 42s linear infinite;align-items:center;height:30px;
}
.pm-tick-track a{color:#fff;font-size:.72rem;font-family:var(--fu)}
.pm-tick-track span{color:rgba(255,255,255,.4)}
@keyframes pm-tick{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
#pm-ticker:hover .pm-tick-track{animation-play-state:paused}

/* ════════════════════════════════════════════════════════════════
   HERO SLIDER
════════════════════════════════════════════════════════════════ */
#pm-slider{
  position:relative;height:clamp(170px,33vw,260px);
  overflow:hidden;background:#0f1e2e;touch-action:pan-y;
}
.pm-slide{position:absolute;inset:0;opacity:0;transition:opacity .55s ease}
.pm-slide.active{opacity:1}
.pm-slide img{width:100%;height:100%;object-fit:cover;opacity:.65}
.pm-slide-cap{
  position:absolute;bottom:0;left:0;right:0;
  background:linear-gradient(transparent,rgba(0,0,0,.88));
  padding:clamp(14px,3vw,24px) clamp(10px,2vw,16px) 12px;
}
.pm-slide-badge{
  display:inline-block;color:#fff;font-size:.59rem;font-family:var(--fu);
  font-weight:bold;text-transform:uppercase;padding:2px 7px;
  border-radius:1px;margin-bottom:6px;letter-spacing:.5px;
}
.pm-slide-cap h2{
  font-family:var(--fh);color:#fff;line-height:1.25;
  font-size:clamp(.82rem,2.4vw,1.22rem);
  text-shadow:0 1px 4px rgba(0,0,0,.7);
}
.pm-slide-cap p{font-size:.73rem;color:#bbb;margin-top:3px}
.pm-sl-btn{
  position:absolute;top:50%;transform:translateY(-50%);
  background:rgba(0,0,0,.42);border:none;color:#fff;
  font-size:1.1rem;width:28px;height:44px;transition:background .2s;
}
.pm-sl-btn:hover{background:var(--accent)}
.pm-sl-prev{left:0}.pm-sl-next{right:0}
.pm-sl-dots{position:absolute;bottom:8px;right:10px;display:flex;gap:5px}
.pm-sl-dot{
  width:8px;height:8px;border-radius:50%;
  background:rgba(255,255,255,.32);border:none;padding:0;transition:background .2s;
}
.pm-sl-dot.active{background:var(--accent)}

/* ════════════════════════════════════════════════════════════════
   CONTENT AREA
════════════════════════════════════════════════════════════════ */
#pm-content{padding:12px 0;background:var(--bg)}
.pm-content-grid{display:grid;grid-template-columns:1fr 262px;gap:var(--gap);align-items:start}
.pm-no-sidebar .pm-content-grid{grid-template-columns:1fr}

/* ════════════════════════════════════════════════════════════════
   ROW / COLUMN SYSTEM
════════════════════════════════════════════════════════════════ */
.pm-row{margin-bottom:12px}
.pm-row-head{
  display:flex;align-items:center;justify-content:space-between;
  border-bottom:2px solid var(--accent);padding-bottom:4px;margin-bottom:8px;
}
/* Per-row accent from category color */
.pm-row[class*="cat-"] .pm-row-head{border-bottom-color:var(--cat-color,var(--accent))}

.pm-row-title{
  font-family:var(--fu);font-size:.7rem;font-weight:bold;
  text-transform:uppercase;letter-spacing:1px;color:var(--primary);
}
.pm-dark .pm-row-title{color:#e2e8f0}

.pm-row-btn{
  background:none;border:1px solid var(--border);font-size:.62rem;
  font-family:var(--fu);color:var(--muted);padding:2px 7px;
  border-radius:var(--r);transition:background .15s;flex-shrink:0;
}
.pm-row-btn:hover{background:var(--border)}

/* Row body grid */
.pm-row-body{
  display:grid;gap:var(--gap);overflow:hidden;
  transition:max-height .35s ease,opacity .3s ease;
}
.pm-row-body.c1{grid-template-columns:1fr}
.pm-row-body.c2{grid-template-columns:repeat(2,1fr)}
.pm-row-body.c3{grid-template-columns:repeat(3,1fr)}
.pm-row-body.collapsed{max-height:0!important;opacity:0;pointer-events:none}

/* ════════════════════════════════════════════════════════════════
   ARTICLE CARD
════════════════════════════════════════════════════════════════ */
.pm-card{background:var(--surface);border:1px solid var(--border);overflow:hidden}
.pm-card-img{position:relative;overflow:hidden}
.pm-card-img img,.pm-card-faux{
  width:100%;height:clamp(110px,12vw,150px);
  object-fit:cover;transition:transform .3s ease;
  display:flex;align-items:center;justify-content:center;
}
.pm-card:hover .pm-card-img img,
.pm-card:hover .pm-card-faux{transform:scale(1.04)}
.pm-card-cat{
  position:absolute;bottom:0;left:0;color:#fff;
  font-size:.57rem;font-family:var(--fu);font-weight:bold;
  text-transform:uppercase;padding:2px 8px;letter-spacing:.4px;
  background:var(--cat-color,var(--accent));
}
.pm-card-body{padding:9px 10px 10px}
.pm-card-meta{font-size:.63rem;color:var(--light);font-family:var(--fu);margin-bottom:3px}
.pm-card-title{
  font-family:var(--fh);font-size:.88rem;line-height:1.3;
  color:var(--text);margin-bottom:4px;
}
.pm-card-title a:hover{color:var(--accent)}
.pm-card-intro{
  font-size:.73rem;color:var(--muted);line-height:1.44;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
.pm-readmore{display:inline-block;font-size:.65rem;color:var(--accent);font-family:var(--fu);margin-top:5px}
.pm-readmore:hover{text-decoration:underline}

/* ════════════════════════════════════════════════════════════════
   SIDEBAR
════════════════════════════════════════════════════════════════ */
#pm-sidebar{display:flex;flex-direction:column;gap:10px}
.pm-widget{background:var(--surface);border:1px solid var(--border)}
.pm-w-head{
  background:var(--primary);color:#fff;font-family:var(--fu);
  font-size:.67rem;font-weight:bold;text-transform:uppercase;
  letter-spacing:.8px;padding:7px 10px;
  display:flex;align-items:center;justify-content:space-between;
}
.pm-w-head .pm-all,
.pm-w-head a{color:var(--accent);font-size:.63rem;text-transform:none;font-weight:normal}
.pm-w-head a:hover{text-decoration:underline}
.pm-w-body{padding:8px}

/* Article list in sidebar */
.pm-alist{display:flex;flex-direction:column;gap:6px}
.pm-aitem{display:flex;gap:7px;padding-bottom:6px;border-bottom:1px solid var(--border)}
.pm-aitem:last-child{border-bottom:none;padding-bottom:0}
.pm-athumb{flex-shrink:0;width:64px;height:50px;overflow:hidden}
.pm-athumb img,.pm-athumb-faux{width:100%;height:100%;object-fit:cover;display:flex;align-items:center;justify-content:center}
.pm-abody{flex:1;min-width:0}
.pm-acat{
  display:inline-block;color:#fff;font-size:.56rem;font-family:var(--fu);
  font-weight:bold;text-transform:uppercase;padding:1px 5px;
  border-radius:1px;margin-bottom:2px;letter-spacing:.3px;
  background:var(--cat-color,var(--accent));
}
.pm-atitle{font-size:.75rem;font-family:var(--fh);line-height:1.24;color:var(--text)}
.pm-atitle a:hover{color:var(--accent)}
.pm-adate{font-size:.6rem;color:var(--light);font-family:var(--fu);margin-top:1px}

/* Weather */
.pm-weather{text-align:center;padding:12px 8px}
.pm-wthr-city{font-size:1.05rem;font-family:var(--fh);margin-bottom:2px;color:var(--text)}
.pm-wthr-icon{font-size:1.8rem;margin:3px 0;line-height:1}
.pm-wthr-desc{font-size:.68rem;color:var(--muted);margin-bottom:5px}
.pm-wthr-temp{font-size:2rem;font-weight:bold;color:var(--primary);line-height:1}
.pm-wthr-det{font-size:.66rem;color:var(--muted);margin-top:5px}
.pm-wthr-dates{
  display:flex;justify-content:space-between;font-size:.64rem;
  color:var(--light);border-top:1px solid var(--border);
  margin-top:5px;padding-top:5px;font-family:var(--fu);
}

/* ════════════════════════════════════════════════════════════════
   BOTTOM TABS / VIDEOS
════════════════════════════════════════════════════════════════ */
#pm-bottom{padding:10px 0;background:var(--bg)}
.pm-tabs{background:var(--surface);border:1px solid var(--border)}
.pm-tabs-nav{
  display:flex;background:color-mix(in srgb,var(--surface) 60%,var(--border) 40%);
  border-bottom:1px solid var(--border);
  overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;
}
.pm-tabs-nav::-webkit-scrollbar{display:none}
.pm-tab-btn{
  background:none;border:none;padding:7px 14px;font-size:.68rem;
  font-family:var(--fu);font-weight:bold;text-transform:uppercase;
  color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap;
  transition:color .15s;
}
.pm-tab-btn.active{color:var(--accent);border-bottom-color:var(--accent);background:var(--surface)}
.pm-tab-pnl{display:none;padding:10px}
.pm-tab-pnl.active{display:block}
.pm-vgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}
.pm-vcard{cursor:pointer}
.pm-vthumb{height:80px;overflow:hidden;position:relative}
.pm-vthumb img,.pm-vfaux{width:100%;height:100%;object-fit:cover;display:flex;align-items:center;justify-content:center}
.pm-vplay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.25)}
.pm-vplay::after{content:'▶';color:rgba(255,255,255,.9);font-size:1.3rem;text-shadow:0 1px 4px rgba(0,0,0,.7)}
.pm-vcard h5{font-size:.68rem;font-family:var(--fh);margin-top:4px;line-height:1.25;color:var(--text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pm-vcard p{font-size:.6rem;color:var(--light);font-family:var(--fu);margin-top:1px}

/* ════════════════════════════════════════════════════════════════
   FOOTER
════════════════════════════════════════════════════════════════ */
#pm-footer{background:var(--primary);color:#8a9bac;padding:20px 0 0}
.pm-fg{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding-bottom:18px;border-bottom:1px solid #243548}
.pm-fc h4{color:#fff;font-family:var(--fu);font-size:.68rem;font-weight:bold;text-transform:uppercase;letter-spacing:.8px;margin-bottom:10px;padding-bottom:5px;border-bottom:1px solid var(--accent)}
.pm-fc li{margin-bottom:4px}
.pm-fc li a{color:#7a8ea0;font-size:.72rem;transition:color .12s}
.pm-fc li a:hover{color:#fff}
.pm-fb{padding:8px 0;display:flex;justify-content:space-between;align-items:center;font-size:.63rem;color:#4a5e6f;flex-wrap:wrap;gap:4px}

/* ════════════════════════════════════════════════════════════════
   CATEGORY COLOR UTILITY CLASSES
   --cat-color is the CSS var consumed by cards, badges, row heads
════════════════════════════════════════════════════════════════ */
.cat-mineria-carbon         {--cat-color:var(--c-mc)}
.cat-mineria-interes        {--cat-color:var(--c-mi)}
.cat-mineria-oro            {--cat-color:var(--c-mo)}
.cat-petroleo-negocios      {--cat-color:var(--c-pn)}
.cat-petroleo-cifras        {--cat-color:var(--c-pc)}
.cat-petroleo-interes       {--cat-color:var(--c-pi)}
.cat-energia-renovable      {--cat-color:var(--c-er)}
.cat-energia-general        {--cat-color:var(--c-eg)}
.cat-energia-gas            {--cat-color:var(--c-eas)}
.cat-ambiente-interes       {--cat-color:var(--c-ai)}
.cat-ambiente-alternativas  {--cat-color:var(--c-aa)}
.cat-ambiente-tecnologias   {--cat-color:var(--c-at)}
.cat-economia-minera        {--cat-color:var(--c-em)}
.cat-economia-interes       {--cat-color:var(--c-ei)}
.cat-economia-energetica    {--cat-color:var(--c-ee)}
.cat-rse-mineria            {--cat-color:var(--c-rm)}
.cat-rse-petroleo           {--cat-color:var(--c-rp)}
.cat-rse-energia            {--cat-color:var(--c-re)}
.cat-autos-hibridos         {--cat-color:var(--c-ah)}
.cat-autos-electricos       {--cat-color:var(--c-ae)}

/* ════════════════════════════════════════════════════════════════
   JOOMLA 6 OVERRIDES
════════════════════════════════════════════════════════════════ */
.system-message-container{max-width:var(--max-w,1160px);margin:10px auto;padding:0 12px}
.alert{padding:10px 14px;border-radius:var(--r);font-family:var(--fu);font-size:.82rem;margin-bottom:8px}
.alert-warning{background:#fff3cd;border:1px solid #ffc107;color:#856404}
.alert-error  {background:#f8d7da;border:1px solid #dc3545;color:#842029}
.alert-info   {background:#d1ecf1;border:1px solid #0c5460;color:#0c5460}
/* J6 uses .alert-message instead of .alert-error in some contexts */
.alert-message{background:#d1ecf1;border:1px solid #0c5460;color:#0c5460}
.mod-languages ul{display:flex;gap:6px}
.mod-languages ul li a{color:#7a8ea0;font-size:.72rem}

/* J6: com_content article view */
.com-content-article .article-header h1{
  font-family:var(--fh);font-size:1.5rem;line-height:1.3;
  color:var(--text);margin-bottom:.5rem;
}
.com-content-article .article-info{
  font-size:.72rem;color:var(--muted);font-family:var(--fu);margin-bottom:.75rem;
}
.com-content-article .article-fulltext{
  font-size:.9rem;line-height:1.65;color:var(--text);
}
.com-content-article .article-fulltext h2,
.com-content-article .article-fulltext h3{
  font-family:var(--fh);margin:1rem 0 .4rem;color:var(--primary);
}
.pm-dark .com-content-article .article-fulltext h2,
.pm-dark .com-content-article .article-fulltext h3{color:#e2e8f0}

/* J6: pagination */
.pagination{display:flex;flex-wrap:wrap;gap:4px;margin:10px 0;justify-content:center}
.pagination .page-link{
  padding:5px 10px;border:1px solid var(--border);color:var(--text);
  font-size:.75rem;background:var(--surface);border-radius:var(--r);transition:background .15s;
}
.pagination .page-item.active .page-link{background:var(--accent);color:#fff;border-color:var(--accent)}
.pagination .page-link:hover{background:var(--border)}

/* ════════════════════════════════════════════════════════════════
   PM TABS WIDGET (reemplaza mod_tabs_gk5)
════════════════════════════════════════════════════════════════ */
.pm-tabs-widget{background:var(--surface);border:1px solid var(--border);overflow:hidden}
.pm-tw-nav{
  display:flex;overflow-x:auto;scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  background:color-mix(in srgb,var(--surface) 60%,var(--border) 40%);
  border-bottom:2px solid var(--border);
}
.pm-tw-nav::-webkit-scrollbar{display:none}
.pm-tw-btn{
  background:none;border:none;border-bottom:3px solid transparent;
  padding:8px 12px;font-family:var(--fu);font-size:.68rem;
  font-weight:bold;text-transform:uppercase;letter-spacing:.4px;
  color:var(--muted);white-space:nowrap;cursor:pointer;
  transition:color .15s,border-color .15s,background .15s;flex-shrink:0;
}
.pm-tw-btn:hover{color:var(--accent);background:rgba(0,0,0,.03)}
.pm-tw-btn.active{color:var(--accent);border-bottom-color:var(--accent);background:var(--surface)}
.pm-tw-panel{display:none;padding:10px}
.pm-tw-panel.active{display:block}
.pm-tw-articles{display:flex;flex-direction:column;gap:0}
.pm-tw-featured{margin-bottom:10px}
.pm-tw-img{position:relative;overflow:hidden}
.pm-tw-img img{
  width:100%;height:clamp(130px,14vw,180px);
  object-fit:cover;transition:transform .3s ease;display:block;
}
.pm-tw-featured:hover .pm-tw-img img{transform:scale(1.04)}
.pm-tw-badge{
  position:absolute;bottom:0;left:0;
  background:var(--cat-color,var(--accent));color:#fff;
  font-size:.57rem;font-family:var(--fu);font-weight:bold;
  text-transform:uppercase;padding:2px 8px;letter-spacing:.4px;
}
.pm-tw-body{padding:8px 0 4px}
.pm-tw-meta{font-size:.62rem;color:var(--light);font-family:var(--fu);margin-bottom:3px}
.pm-tw-title{font-family:var(--fh);font-size:.9rem;line-height:1.3;color:var(--text);margin-bottom:4px}
.pm-tw-title a:hover{color:var(--accent)}
.pm-tw-intro{
  font-size:.72rem;color:var(--muted);line-height:1.44;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
.pm-tw-item{display:flex;gap:8px;padding:7px 0;border-top:1px solid var(--border);align-items:flex-start}
.pm-tw-item-img{flex-shrink:0;width:72px;height:54px;overflow:hidden}
.pm-tw-item-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}
.pm-tw-item:hover .pm-tw-item-img img{transform:scale(1.06)}
.pm-tw-item-body{flex:1;min-width:0}
.pm-tw-item-title{
  font-family:var(--fh);font-size:.78rem;line-height:1.28;color:var(--text);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.pm-tw-item-title a:hover{color:var(--accent)}
.pm-tw-footer{padding:8px 0 2px;border-top:1px solid var(--border);margin-top:4px;text-align:right}
.pm-tw-more{font-size:.67rem;color:var(--accent);font-family:var(--fu);font-weight:bold}
.pm-tw-more:hover{text-decoration:underline}

/* ════════════════════════════════════════════════════════════════
   RESPONSIVE — MOBILE FIRST
   Breakpoints: 1024 | 900 | 768 | 480 | 360
════════════════════════════════════════════════════════════════ */
@media(max-width:1024px){
  .pm-content-grid{grid-template-columns:1fr 230px}
  .pm-fg{grid-template-columns:repeat(2,1fr)}
  .pm-vgrid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  .pm-content-grid{grid-template-columns:1fr}
  #pm-sidebar{flex-direction:row;flex-wrap:wrap}
  #pm-sidebar .pm-widget{flex:1 1 calc(50% - 5px);min-width:200px}
  .pm-row-body.c3{grid-template-columns:repeat(2,1fr)}
  .pm-sn-search{display:none}
}
@media(max-width:768px){
  .pm-tb-links{display:none}
  #pm-topbar .pm-wrap{justify-content:center}
  .pm-hdr{flex-direction:column;align-items:flex-start;gap:8px}
  .pm-hdr-r{width:100%;flex-direction:row;align-items:center;justify-content:space-between}
  .pm-search input{width:clamp(110px,35vw,190px)}
  .pm-nav-desktop{display:none}
  .pm-hamburger{display:flex}
  .pm-nav-mobile{display:block}
  .pm-sn-links a{padding:6px 8px;font-size:.65rem}
  #pm-slider{height:210px}
  .pm-slide-cap p{display:none}
  .pm-slide-cap h2{font-size:1rem}
  .pm-row-body.c2,
  .pm-row-body.c3{grid-template-columns:1fr}
  .pm-card-img img,.pm-card-faux{height:185px}
  #pm-sidebar{flex-direction:column}
  #pm-sidebar .pm-widget{flex:none;width:100%}
  .pm-fg{grid-template-columns:repeat(2,1fr);gap:14px}
  .pm-tw-btn{padding:7px 10px;font-size:.63rem}
  .pm-tw-img img{height:160px}
}
@media(max-width:480px){
  html{font-size:14px}
  #pm-topbar{display:none}
  .pm-logo-tag{display:none}
  .pm-social a{width:26px;height:26px;font-size:.68rem}
  .pm-search input{width:110px;font-size:.7rem}
  .pm-tick-lbl{font-size:.58rem;padding:0 7px;letter-spacing:.5px}
  .pm-tick-track a{font-size:.68rem}
  #pm-slider{height:190px}
  .pm-slide-cap h2{font-size:.88rem}
  .pm-sl-btn{width:24px;height:38px;font-size:.9rem}
  .pm-card-img img,.pm-card-faux{height:170px}
  .pm-vgrid{grid-template-columns:repeat(2,1fr)}
  .pm-vthumb,.pm-vfaux{height:65px}
  .pm-tab-btn{padding:6px 10px;font-size:.63rem}
  .pm-fg{grid-template-columns:1fr}
  .pm-fb{flex-direction:column;text-align:center;gap:4px}
  #pm-subnav{display:none}
  .pm-row-btn{font-size:.58rem;padding:2px 5px}
  .pm-tw-img img{height:140px}
  .pm-tw-item-img{width:62px;height:48px}
  .pm-tw-title{font-size:.85rem}
  .pm-tw-item-title{font-size:.74rem}
}
@media(max-width:360px){
  .pm-logo-text{font-size:1.3rem}
  .pm-search{display:none}
  #pm-slider{height:160px}
  .pm-slide-cap h2{font-size:.78rem}
  .pm-vgrid{grid-template-columns:1fr}
}

/* Touch / hover:none devices */
@media(hover:none){
  .pm-card:hover .pm-card-img img,
  .pm-card:hover .pm-card-faux{transform:none}
  .pm-social a:hover{background:#263548;color:#9ab}
}

/* Reduced motion */
@media(prefers-reduced-motion:reduce){
  .pm-tick-track{animation:none}
  .pm-slide,.pm-card-img img,.pm-card-faux,.pm-row-body{transition:none}
}

/* ════════════════════════════════════════════════════════════════
   LAYOUT HERO — imagen grande + 3 artículos al lado  v4.0
════════════════════════════════════════════════════════════════ */
.pm-hero-wrap{
  display:grid;
  grid-template-columns:1fr 280px;
  gap:12px;
  align-items:start;
}
.pm-hero-main{}
.pm-hero-imgbox{position:relative;overflow:hidden}
.pm-hero-img{
  width:100%;
  height:clamp(200px,28vw,380px);
  object-fit:cover;
  display:block;
  transition:transform .35s ease;
}
.pm-hero-imgbox:hover .pm-hero-img{transform:scale(1.03)}
.pm-hero-badge{
  position:absolute;bottom:0;left:0;
  background:var(--cat-color,var(--accent));color:#fff;
  font-size:.58rem;font-family:var(--fu);font-weight:bold;
  text-transform:uppercase;padding:3px 10px;letter-spacing:.5px;
}
.pm-hero-body{padding:10px 0 6px}
.pm-hero-date{font-size:.62rem;color:var(--muted);font-family:var(--fu);margin-bottom:4px}
.pm-hero-title{
  font-family:var(--fh);font-size:clamp(1rem,2.2vw,1.35rem);
  line-height:1.25;color:var(--text);margin-bottom:8px;
}
.pm-hero-title a:hover{color:var(--accent)}

/* Artículos secundarios del hero */
.pm-hero-aside{
  display:flex;flex-direction:column;gap:10px;
}
.pm-hero-sec{
  display:flex;flex-direction:column;
  border-bottom:1px solid var(--border);
  padding-bottom:10px;
}
.pm-hero-sec:last-child{border-bottom:none;padding-bottom:0}
.pm-hero-sec-imgbox{position:relative;overflow:hidden}
.pm-hero-sec-img{
  width:100%;height:clamp(90px,10vw,130px);
  object-fit:cover;display:block;
  transition:transform .3s ease;
}
.pm-hero-sec-imgbox:hover .pm-hero-sec-img{transform:scale(1.05)}
.pm-hero-sec-badge{
  position:absolute;bottom:0;left:0;
  background:var(--cat-color,var(--accent));color:#fff;
  font-size:.55rem;font-family:var(--fu);font-weight:bold;
  text-transform:uppercase;padding:2px 7px;letter-spacing:.4px;
}
.pm-hero-sec-body{padding:6px 0 0}
.pm-hero-sec-title{
  font-family:var(--fh);font-size:.82rem;line-height:1.25;
  color:var(--text);margin-bottom:4px;
}
.pm-hero-sec-title a:hover{color:var(--accent)}

/* Responsive hero */
@media(max-width:900px){
  .pm-hero-wrap{grid-template-columns:1fr}
  .pm-hero-aside{flex-direction:row;flex-wrap:wrap}
  .pm-hero-sec{flex:1 1 calc(33% - 8px);min-width:130px}
}
@media(max-width:600px){
  .pm-hero-aside{flex-direction:column}
  .pm-hero-sec{flex:none;width:100%}
}

/* ════════════════════════════════════════════════════════════════
   LAYOUT MIXED — cards + list combinados  v4.0
════════════════════════════════════════════════════════════════ */
.pm-mixed{}
.pm-mixed-cards{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(200px,1fr));
  gap:10px;
  margin-bottom:12px;
}
.pm-mixed-list{
  border-top:2px solid var(--accent);
  padding-top:8px;
}

/* ════════════════════════════════════════════════════════════════
   ESTILOS DE INTRO / TEXTO  v4.0
════════════════════════════════════════════════════════════════ */
.pm-intro{
  font-size:.82rem;
  color:var(--muted);
  margin:.4rem 0 .6rem;
}

/* Intro destacado — fondo amarillo suave */
.pm-intro--highlighted{
  background:#fffbe6;
  border-left:3px solid #f0c040;
  padding:6px 10px;
  color:#5a4500;
  border-radius:0 var(--r,2px) var(--r,2px) 0;
}
.pm-dark .pm-intro--highlighted{
  background:#2a2200;color:#e0c060;border-color:#c0a030;
}

/* Intro con borde izquierdo */
.pm-intro--bordered{
  border-left:3px solid var(--accent);
  padding-left:10px;
  color:var(--text);
}

/* Intro con fondo sutil */
.pm-intro--shaded{
  background:color-mix(in srgb,var(--surface) 80%,var(--border) 20%);
  padding:6px 10px;
  border-radius:var(--r,2px);
  color:var(--text);
}

/* Intro en modo lista (más compacto) */
.pm-alist-intro{
  font-size:.75rem;
  margin:.2rem 0 .3rem;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
/* ═══════════════════════════════════════════════════════════
   ARTÍCULOS DEL PIPELINE — Tipografía profesional de noticias
   Fuentes: Inter (cuerpo) + Montserrat (títulos)
   ═══════════════════════════════════════════════════════════ */

/* Importar fuentes de Google */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700&family=Montserrat:wght@600;700;800&display=swap');

.pm-article-body {
    font-family: 'Inter', -apple-system, 'Segoe UI', Roboto, sans-serif;
    font-size: 17px;
    line-height: 1.75;
    color: #2a2a2a;
    font-weight: 400;
}

/* Todos los párrafos: peso normal, justificado */
.pm-article-body p {
    margin: 0 0 1.3em 0;
    text-align: justify;
    font-weight: 400;
    color: #2a2a2a;
}

/* SOLO el primer párrafo: azul oscuro, negrita, itálica (entradilla) */
.pm-article-body p:first-of-type {
    color: #1a3a5c;
    font-style: italic;
    font-weight: 700;
    font-size: 18px;
    line-height: 1.6;
    margin-bottom: 1.5em;
}

/* La fuente NO debe heredar negrita del primer párrafo */
.pm-article-body p.pm-fuente {
    color: #555 !important;
    font-style: normal !important;
    font-weight: 400 !important;
    font-size: 13px !important;
}

/* Imagen SIEMPRE a la derecha, el texto la rodea */
.pm-article-body img,
.pm-article-body figure {
    float: right !important;
    margin: 4px 0 16px 24px !important;
    max-width: 42% !important;
    height: auto !important;
    border-radius: 4px;
}

/* Encabezados internos */
.pm-article-body h2,
.pm-article-body h3 {
    font-family: 'Montserrat', sans-serif;
    color: #1a3a5c;
    margin: 1.6em 0 0.5em;
    font-weight: 700;
    line-height: 1.3;
}
.pm-article-body h2 { font-size: 21px; }
.pm-article-body h3 { font-size: 18px; }

/* Cita de fuente al final */
.pm-fuente {
    clear: both;
    margin-top: 2.2em;
    padding: 12px 16px;
    background: #f5f7fa;
    border-left: 4px solid #1a3a5c;
    font-family: 'Inter', sans-serif;
    font-size: 13px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    color: #555 !important;
}
.pm-fuente strong { color: #1a3a5c; font-weight: 700; }
.pm-fuente a { color: #1a3a5c; font-weight: 600; text-decoration: none; }
.pm-fuente a:hover { text-decoration: underline; }

/* Responsive: en móvil la imagen ocupa todo el ancho */
@media (max-width: 600px) {
    .pm-article-body img,
    .pm-article-body figure {
        float: none !important;
        max-width: 100% !important;
        margin: 0 0 16px 0 !important;
    }
    .pm-article-body { font-size: 16px; }
}
/* ── IMAGEN Y TÍTULO DEL ARTÍCULO INDIVIDUAL ── */
.pm-article-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 800;
    line-height: 1.2;
    color: #1a1a1a;
    margin-bottom: 8px;
}

.pm-article-meta {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    color: #888;
    margin-bottom: 18px;
    padding-bottom: 12px;
    border-bottom: 2px solid #eee;
}

/* Imagen del artículo SIEMPRE a la derecha */
.pm-article-wrap .pm-article-img {
    float: right;
    width: 42%;
    max-width: 420px;
    height: auto;
    margin: 4px 0 16px 24px;
    border-radius: 4px;
}

/* El cuerpo hereda la tipografía profesional */
.pm-article-wrap {
    font-family: 'Inter', -apple-system, 'Segoe UI', Roboto, sans-serif;
    font-size: 15px;
    line-height: 1.75;
    color: #2a2a2a;
}

.pm-article-wrap p {
    margin: 0 0 1.3em 0;
    text-align: justify;
    font-weight: 400;
    font-size: 15px;
}

/* Primer párrafo (entradilla) en azul itálica */
.pm-article-wrap .pm-article-body p:first-of-type,
.pm-article-wrap > p:first-of-type {
    color: #1a3a5c;
    font-style: italic;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.55;
    margin-bottom: 1.5em;
}

/* Limpiar floats al final */
.pm-article-wrap::after {
    content: "";
    display: block;
    clear: both;
}

/* Responsive móvil */
@media (max-width: 600px) {
    .pm-article-wrap .pm-article-img {
        float: none;
        width: 100%;
        max-width: 100%;
        margin: 0 0 16px 0;
    }
    .pm-article-title { font-size: 21px; }
    .pm-article-wrap { font-size: 16px; }
}