/*
Theme Name: Pulso Disidente
Theme URI: https://pulsodisidente.com/
Author: Ernesto Mirabal + OpenAI
Description: Tema editorial personalizado para Pulso Disidente. Historia, ideas y libertad con diseño responsive, archivo de artículos, biblioteca de videos y espacios para newsletter.
Version: 16.0.0
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: pulso-disidente
*/

:root{
  --pd-charcoal:#1F1F1D;
  --pd-ivory:#F7F4EE;
  --pd-coral:#D85C4A;
  --pd-sand:#D9C9AE;
  --pd-warmgray:#6B6862;
  --pd-white:#fff;
  --pd-line:rgba(31,31,29,.14);
  --pd-radius:20px;
  --pd-shadow:0 12px 40px rgba(31,31,29,.08);
  --pd-container:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--pd-ivory);color:var(--pd-charcoal);font-family:'Poppins',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;line-height:1.65}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--pd-coral)}
img{max-width:100%;height:auto;display:block}
.container{width:min(calc(100% - 36px),var(--pd-container));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:30;background:rgba(247,244,238,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--pd-line)}
.header-inner{min-height:118px;display:grid;grid-template-columns:auto minmax(220px,1fr) auto;align-items:center;gap:28px}
.brand-logo img{width:112px;max-height:100px;object-fit:contain}
.brand-tagline{font-size:.92rem;color:var(--pd-warmgray);max-width:420px}
.primary-nav ul{display:flex;gap:24px;list-style:none;padding:0;margin:0;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.primary-nav a{text-decoration:none;font-size:.9rem;font-weight:500;letter-spacing:.01em}
.primary-nav .subscribe-link a{background:var(--pd-coral);color:#fff;padding:11px 17px;border-radius:999px;font-weight:700}
.primary-nav .subscribe-link a:hover{background:var(--pd-charcoal);color:#fff}
.menu-toggle{display:none;border:1px solid var(--pd-charcoal);background:transparent;border-radius:10px;padding:8px 11px;font:inherit}
.hero{padding:64px 0 42px}
.hero-copy{max-width:880px;margin-bottom:30px}
.hero h1,.section-title,.archive-title,.entry-title{font-family:'Lora',Georgia,serif;line-height:1.08;letter-spacing:-.02em}
.hero h1{font-size:clamp(2.7rem,7vw,5.6rem);margin:0 0 14px;font-weight:600}
.hero-kicker{font-weight:600;font-size:1rem;margin:0 0 16px}
.hero-statement{font-size:clamp(1.1rem,2.1vw,1.45rem);max-width:830px;margin:0 0 26px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border-radius:999px;border:1px solid var(--pd-charcoal);text-decoration:none;font-weight:700;font-size:.92rem;transition:.2s ease}
.btn-primary{background:var(--pd-coral);border-color:var(--pd-coral);color:#fff}
.btn-primary:hover{background:var(--pd-charcoal);border-color:var(--pd-charcoal);color:#fff;transform:translateY(-1px)}
.btn-secondary{background:transparent;color:var(--pd-charcoal)}
.btn-secondary:hover{background:var(--pd-charcoal);color:#fff}
.hero-visual{border-radius:var(--pd-radius);overflow:hidden;box-shadow:var(--pd-shadow);border:1px solid var(--pd-line)}
.hero-visual img{width:100%;aspect-ratio:2.25/1;object-fit:cover}
.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:44px;padding:44px 0 80px}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}
.section-title{font-size:clamp(2rem,4vw,3rem);margin:0}
.section-link{text-decoration:none;color:var(--pd-coral);font-weight:700;font-size:.92rem}
.posts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.post-card{background:rgba(255,255,255,.45);border:1px solid var(--pd-line);border-radius:16px;overflow:hidden;transition:.2s ease}
.post-card:hover{transform:translateY(-3px);box-shadow:var(--pd-shadow)}
.post-card-image{aspect-ratio:16/10;background:var(--pd-sand);overflow:hidden}
.post-card-image img{width:100%;height:100%;object-fit:cover}
.post-card-body{padding:18px}
.post-meta,.entry-meta{font-size:.78rem;color:var(--pd-warmgray);display:flex;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.category-pill{display:inline-block;background:var(--pd-coral);color:#fff;border-radius:999px;padding:4px 9px;text-decoration:none;font-size:.7rem;font-weight:700}
.post-card h3{font-family:'Lora',Georgia,serif;font-size:1.25rem;line-height:1.2;margin:8px 0 8px}
.post-card h3 a{text-decoration:none}
.post-card p{font-size:.92rem;margin:0;color:#393833}
.placeholder-card{min-height:320px;display:flex;align-items:center;justify-content:center;text-align:center;padding:30px;background:rgba(217,201,174,.35);border:1px dashed rgba(31,31,29,.3);border-radius:16px;color:var(--pd-warmgray)}
.sidebar{display:flex;flex-direction:column;gap:26px}
.sidebar-box{border-top:3px solid var(--pd-coral);padding-top:16px}
.sidebar-title{font-family:'Lora',Georgia,serif;font-size:1.45rem;margin:0 0 13px}
.category-list{list-style:none;margin:0;padding:0}
.category-list li{border-bottom:1px solid var(--pd-line)}
.category-list a{display:flex;justify-content:space-between;padding:10px 0;text-decoration:none}
.video-mini{display:grid;grid-template-columns:92px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--pd-line);text-decoration:none}
.video-mini-thumb{aspect-ratio:16/9;background:#ddd;border-radius:9px;overflow:hidden}
.video-mini-thumb img{width:100%;height:100%;object-fit:cover}
.video-mini strong{font-size:.88rem;line-height:1.25}
.newsletter-box{background:var(--pd-charcoal);color:#fff;padding:24px;border-radius:18px}
.newsletter-box h3{font-family:'Lora',Georgia,serif;font-size:1.7rem;margin:0 0 8px}
.newsletter-box p{color:#dedbd4;font-size:.9rem}
.newsletter-box input[type=email]{width:100%;border:0;border-radius:10px;padding:13px 14px;font:inherit;margin-bottom:10px}
.newsletter-box input[type=submit],.newsletter-box button{width:100%;border:0;border-radius:10px;background:var(--pd-coral);color:#fff;padding:13px 14px;font:inherit;font-weight:700;cursor:pointer}
.more-posts{margin-top:40px}
.post-row{display:grid;grid-template-columns:220px 1fr;gap:22px;padding:22px 0;border-top:1px solid var(--pd-line)}
.post-row-image{aspect-ratio:16/10;border-radius:12px;overflow:hidden;background:var(--pd-sand)}
.post-row-image img{width:100%;height:100%;object-fit:cover}
.post-row h3{font-family:'Lora',Georgia,serif;font-size:1.55rem;margin:5px 0 8px;line-height:1.18}
.archive-header{padding:54px 0 20px}
.archive-title{font-size:clamp(2.8rem,6vw,5.2rem);margin:0 0 10px}
.archive-intro{max-width:760px;color:var(--pd-warmgray)}
.category-nav{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.category-nav a{border:1px solid var(--pd-line);background:rgba(255,255,255,.45);padding:8px 13px;border-radius:999px;text-decoration:none;font-size:.84rem}
.category-nav a:hover{background:var(--pd-charcoal);color:#fff}
.entry-wrap{max-width:850px;margin:0 auto;padding:52px 18px 80px}
.entry-header{margin-bottom:26px}
.entry-title{font-size:clamp(2.5rem,6vw,4.8rem);margin:0 0 14px}
.entry-featured{margin:28px 0;border-radius:18px;overflow:hidden}
.entry-content{font-size:1.06rem}
.entry-content h2,.entry-content h3{font-family:'Lora',Georgia,serif;line-height:1.2;margin-top:1.8em}
.entry-content p{margin:0 0 1.25em}
.entry-content blockquote{margin:1.7em 0;padding:12px 0 12px 24px;border-left:4px solid var(--pd-coral);font-family:'Lora',Georgia,serif;font-size:1.25rem}
.entry-newsletter{margin-top:48px}
.page-wrap{max-width:980px;margin:0 auto;padding:52px 18px 80px}
.page-wrap h1{font-family:'Lora',Georgia,serif;font-size:clamp(2.7rem,5vw,4.6rem);margin:0 0 30px}
.videos-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:30px}
.video-card{border:1px solid var(--pd-line);border-radius:16px;overflow:hidden;background:rgba(255,255,255,.4)}
.video-card-thumb{aspect-ratio:16/9;background:#ddd;overflow:hidden}
.video-card-thumb img{width:100%;height:100%;object-fit:cover}
.video-card-body{padding:16px}
.video-card h3{font-family:'Lora',Georgia,serif;font-size:1.3rem;margin:0 0 8px;line-height:1.2}
.video-card a{text-decoration:none}
.site-footer{background:var(--pd-charcoal);color:#fff;padding:48px 0 26px;margin-top:40px}
.footer-grid{display:grid;grid-template-columns:1.3fr .8fr .9fr;gap:34px}
.site-footer h3{font-family:'Lora',Georgia,serif;margin-top:0}
.site-footer a{color:#fff;text-decoration:none}
.site-footer a:hover{color:var(--pd-coral)}
.footer-logo{width:110px;margin-bottom:12px}
.footer-bottom{border-top:1px solid rgba(255,255,255,.15);margin-top:30px;padding-top:18px;font-size:.78rem;color:#bebbb4}
.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}
.pagination{display:flex;gap:8px;margin-top:30px;flex-wrap:wrap}
.pagination .page-numbers{border:1px solid var(--pd-line);padding:7px 11px;border-radius:9px;text-decoration:none}
.pagination .current{background:var(--pd-charcoal);color:#fff}
@media(max-width:980px){
  .header-inner{grid-template-columns:auto 1fr auto;min-height:96px}
  .brand-tagline{display:none}
  .menu-toggle{display:block}
  .primary-nav{display:none;grid-column:1/-1;padding:0 0 20px}
  .primary-nav.is-open{display:block}
  .primary-nav ul{justify-content:flex-start;gap:14px}
  .content-grid{grid-template-columns:1fr}
  .posts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .newsletter-box{grid-column:1/-1}
  .videos-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  .container{width:min(calc(100% - 26px),var(--pd-container))}
  .header-inner{gap:14px}
  .brand-logo img{width:82px}
  .hero{padding-top:38px}
  .hero-visual img{aspect-ratio:16/10}
  .content-grid{gap:30px;padding-top:30px}
  .posts-grid,.sidebar,.videos-grid{grid-template-columns:1fr}
  .post-row{grid-template-columns:1fr}
  .post-row-image{max-width:100%}
  .footer-grid{grid-template-columns:1fr}
  .primary-nav ul{flex-direction:column;align-items:flex-start}
}


/* ===== Cabecera definitiva v1.0.3 ===== */
.site-header{
  position:sticky !important;
  top:0;
  z-index:100;
  background:rgba(247,244,238,.98) !important;
  border-bottom:1px solid rgba(31,31,29,.28) !important;
  box-shadow:0 4px 16px rgba(31,31,29,.03);
  backdrop-filter:blur(10px);
}
.site-header::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-2px;
  transform:translateX(-50%);
  width:72px;
  height:3px;
  border-radius:999px;
  background:var(--pd-coral);
}
.header-inner{
  min-height:104px !important;
  display:flex !important;
  align-items:center !important;
  gap:24px !important;
  flex-wrap:nowrap !important;
  padding-top:8px;
  padding-bottom:8px;
}
.brand-logo{
  display:flex !important;
  align-items:center;
  flex:0 0 auto !important;
  text-decoration:none;
  line-height:0;
}
.brand-logo img{
  display:block !important;
  width:92px !important;
  max-width:92px !important;
  height:auto !important;
  max-height:88px !important;
  object-fit:contain !important;
}
.brand-tagline{
  flex:0 1 270px !important;
  max-width:270px !important;
  margin:0 !important;
  font-size:.80rem !important;
  line-height:1.45 !important;
  color:var(--pd-warmgray) !important;
}
.primary-nav{
  margin-left:auto !important;
  flex:0 0 auto !important;
}
.primary-nav ul{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  flex-wrap:nowrap !important;
  gap:18px !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
  white-space:nowrap !important;
}
.primary-nav li{margin:0 !important;padding:0 !important}
.primary-nav a{
  display:inline-block;
  text-decoration:none !important;
  font-size:.84rem !important;
  font-weight:500 !important;
}
.primary-nav .subscribe-link a{
  padding:10px 15px !important;
  border-radius:999px;
  background:var(--pd-coral) !important;
  color:#fff !important;
  font-weight:700 !important;
}
.primary-nav .subscribe-link a:hover{
  background:var(--pd-charcoal) !important;
  color:#fff !important;
}
.menu-toggle{display:none}

@media (max-width:1120px){
  .header-inner{gap:18px !important}
  .brand-logo img{width:78px !important;max-width:78px !important;max-height:76px !important}
  .brand-tagline{flex-basis:210px !important;max-width:210px !important;font-size:.74rem !important}
  .primary-nav ul{gap:12px !important}
  .primary-nav a{font-size:.78rem !important}
  .primary-nav .subscribe-link a{padding:8px 12px !important}
}
@media (max-width:900px){
  .header-inner{
    min-height:84px !important;
    flex-wrap:wrap !important;
    gap:12px !important;
  }
  .brand-logo img{width:72px !important;max-width:72px !important}
  .brand-tagline{display:none !important}
  .menu-toggle{
    display:block !important;
    margin-left:auto;
    border:1px solid var(--pd-charcoal);
    background:transparent;
    border-radius:10px;
    padding:8px 11px;
    font:inherit;
  }
  .primary-nav{
    display:none !important;
    flex:1 0 100% !important;
    margin-left:0 !important;
    padding-bottom:12px;
  }
  .primary-nav.is-open{display:block !important}
  .primary-nav ul{
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:10px !important;
  }
}


/* ===== Ajustes editables desde WordPress v1.0.4 ===== */
:root{
  --pd-logo-width:92px;
  --pd-header-height:104px;
  --pd-tagline-size:.80rem;
  --pd-nav-size:.84rem;
}
.header-inner{min-height:var(--pd-header-height) !important;}
.brand-logo img{
  width:var(--pd-logo-width) !important;
  max-width:var(--pd-logo-width) !important;
  max-height:none !important;
}
.brand-tagline{font-size:var(--pd-tagline-size) !important;}
.primary-nav a{font-size:var(--pd-nav-size) !important;}

/* ===== Diseño Impacto 2.0 ===== */
:root{--pd-red:#a90f20;--pd-red2:#c9272f;--pd-paper:#fbfaf7;--pd-ink:#111;--pd-container:1340px}
body{background:var(--pd-paper);color:var(--pd-ink)}
.site-header{position:sticky!important;top:0;background:rgba(255,255,255,.97)!important;border:0!important;box-shadow:0 1px 0 rgba(0,0,0,.08);z-index:100}
.site-header::after{display:none!important}.header-inner{min-height:92px!important;display:flex!important;gap:28px!important;padding:10px 0!important}
.brand-wordmark{display:flex;flex-direction:column;text-decoration:none;line-height:1;color:#111;white-space:nowrap}.brand-wordmark>span{font-size:2.25rem;font-weight:700;letter-spacing:-.055em}.brand-wordmark strong{color:var(--pd-red);font-weight:700}.brand-wordmark small{font-size:.67rem;margin-top:5px;letter-spacing:0;color:#333}
.primary-nav{margin-left:auto!important}.primary-nav ul{gap:27px!important}.primary-nav a{font-size:.9rem!important;font-weight:500!important}.primary-nav .search-link a{font-size:1.8rem!important;line-height:1}.primary-nav .subscribe-link a{background:var(--pd-red)!important;border-radius:7px!important;padding:13px 20px!important;font-size:.92rem!important}
.impact-hero{position:relative;min-height:470px;overflow:hidden;background:#333}.impact-hero-media{position:absolute;inset:0}.impact-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,12,16,.48) 0%,rgba(8,12,16,.08) 38%,rgba(255,236,200,.08) 72%,rgba(0,0,0,.22) 100%)}.impact-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center}
.impact-hero-inner{position:relative;z-index:2;min-height:470px;display:flex;align-items:center;justify-content:flex-end}.impact-copy{width:min(56%,720px);padding:42px 0;color:#111;text-shadow:0 1px 1px rgba(255,255,255,.18)}.impact-copy h1{font-family:'Lora',Georgia,serif;font-size:clamp(3rem,5vw,5rem);line-height:1.03;letter-spacing:-.035em;margin:0 0 14px;font-weight:700}.impact-copy p{font-size:1.25rem;line-height:1.35;max-width:670px;margin:0 0 25px;font-weight:500}.impact-mantra{position:absolute;right:0;top:88px;font-family:'Segoe Print','Comic Sans MS',cursive;font-style:italic;font-size:1.55rem;line-height:1.25;transform:rotate(-5deg);border-bottom:4px solid var(--pd-red);padding-bottom:6px}.btn{border-radius:6px;min-height:50px}.btn-primary{background:var(--pd-red2);border-color:var(--pd-red2)}.btn-light{background:rgba(255,255,255,.72);border:1px solid #111;color:#111}
.benefits{background:#fff;border-bottom:1px solid #e8e6e1}.benefits-grid{display:grid;grid-template-columns:repeat(4,1fr);min-height:98px;align-items:center}.benefits-grid>div{display:flex;align-items:center;gap:16px;padding:10px 26px;border-right:1px solid #ddd}.benefits-grid>div:last-child{border-right:0}.benefits-grid span{font-size:2rem;color:var(--pd-red)}.benefits-grid p{margin:0;line-height:1.25}.benefits-grid strong,.benefits-grid small{display:block}.benefits-grid small{color:#555;margin-top:6px;font-size:.82rem}
.home-main{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:42px;padding:38px 0 28px}.section-title{font-size:2.25rem}.impact-posts{grid-template-columns:repeat(3,1fr);gap:28px}.impact-posts .post-card{border:0;background:transparent;border-radius:0}.impact-posts .post-card:hover{box-shadow:none}.impact-posts .post-card-image{border-radius:7px;aspect-ratio:16/9}.impact-posts .post-card-body{padding:12px 2px}.impact-posts .post-card h3{font-size:1.45rem;margin:10px 0 7px}.impact-posts .post-card p{font-size:.95rem}.category-pill{border-radius:4px;background:var(--pd-red);font-size:.7rem}.card-date{font-size:.75rem;color:#555;margin-top:15px}.image-placeholder{display:flex;height:100%;align-items:center;justify-content:center;background:linear-gradient(135deg,#c9b59b,#27333a);color:white;font-family:'Lora',serif;font-size:1.4rem}.demo-one{background:linear-gradient(135deg,#263843,#d08d54)}.demo-two{background:linear-gradient(135deg,#333,#aaa)}.demo-three{background:linear-gradient(135deg,#c46d42,#324a4c)}
.topics-card{background:#fff;border:1px solid #eee;border-radius:8px;padding:20px 24px;align-self:start;box-shadow:0 8px 28px rgba(0,0,0,.035)}.topics-card h2{font-family:'Lora',serif;font-size:1.55rem;margin:0 0 12px}.topics-card ul{list-style:none;padding:0;margin:0}.topics-card li{border-bottom:1px solid #eee}.topics-card a{display:block;padding:10px 0;text-decoration:none}
.impact-newsletter{margin-top:10px;margin-bottom:60px;background:linear-gradient(115deg,#101d22,#162d35);color:#fff;border-radius:10px;padding:34px 42px;display:grid;grid-template-columns:1fr 1.25fr;gap:50px;align-items:center}.impact-newsletter h2{font-family:'Lora',serif;font-size:2rem;line-height:1.1;margin:8px 0}.impact-newsletter p{color:#d9e0e1;margin:0}.free-pill{background:var(--pd-red);font-weight:700;font-size:.7rem;padding:5px 8px;border-radius:4px}.newsletter-action form{display:flex;gap:12px}.newsletter-action input{flex:1;padding:14px;border:0;border-radius:6px;font:inherit}.newsletter-action button{padding:14px 18px;border:0;border-radius:6px;background:var(--pd-red);color:#fff;font:inherit;font-weight:700}.newsletter-action small{display:block;margin-top:10px;color:#c7cdcf}
.site-footer{background:#111!important;color:#eee!important}
@media(max-width:1000px){.brand-wordmark small{display:none}.primary-nav ul{gap:14px!important}.impact-copy{width:64%}.impact-mantra{display:none}.benefits-grid{grid-template-columns:repeat(2,1fr)}.home-main{grid-template-columns:1fr}.topics-card{display:none}}
@media(max-width:760px){.header-inner{min-height:72px!important}.brand-wordmark>span{font-size:1.7rem}.menu-toggle{display:block!important;margin-left:auto}.primary-nav{display:none!important;flex-basis:100%!important}.primary-nav.is-open{display:block!important}.primary-nav ul{flex-direction:column!important;align-items:flex-start!important}.impact-hero,.impact-hero-inner{min-height:560px}.impact-hero-media:after{background:linear-gradient(0deg,rgba(0,0,0,.72),rgba(0,0,0,.1))}.impact-hero-inner{align-items:flex-end}.impact-copy{width:100%;padding:40px 0;color:#fff;text-shadow:0 1px 2px #000}.impact-copy h1{font-size:2.8rem}.impact-copy p{font-size:1.05rem}.benefits-grid{grid-template-columns:1fr}.benefits-grid>div{border-right:0;border-bottom:1px solid #ddd}.impact-posts{grid-template-columns:1fr}.impact-newsletter{grid-template-columns:1fr;padding:28px 22px}.newsletter-action form{flex-direction:column}}


/* =========================================================
   Pulso Disidente Impacto v8 — capa única final
   ========================================================= */
body{
  background:var(--pd8-bg,#F7F4EE) !important;
  color:var(--pd8-text,#1F1F1D) !important;
}
.container{
  width:min(calc(100% - 48px),var(--pd8-site-width,1240px)) !important;
}
.site-header{
  background:var(--pd8-header-bg,#FFFDF9) !important;
}
.header-inner{
  min-height:var(--pd8-header-height,92px) !important;
}
.brand-wordmark>span{
  font-size:var(--pd8-brand-size,36px) !important;
}
.brand-wordmark small{
  font-size:var(--pd8-tagline-size,11px) !important;
}
.primary-nav a{
  font-size:var(--pd8-nav-size,14px) !important;
}
.impact-copy{
  width:min(var(--pd8-hero-copy-width,56%),760px) !important;
}
.impact-copy h1{
  font-size:clamp(40px,5vw,var(--pd8-hero-title-size,68px)) !important;
}
.impact-copy p{
  font-size:var(--pd8-hero-text-size,20px) !important;
}
.impact-copy,
.impact-copy h1,
.impact-copy p{
  color:var(--pd8-hero-text,#FFFFFF) !important;
  text-shadow:
    0 1px 1px rgba(0,0,0,.95),
    1px 0 1px rgba(0,0,0,.68),
    -1px 0 1px rgba(0,0,0,.68),
    0 -1px 1px rgba(0,0,0,.48) !important;
}
.page-wrap h1,
.archive-title{
  font-size:var(--pd8-page-title-size,42px) !important;
  line-height:1.08 !important;
}
.primary-nav .subscribe-link a,
.btn-primary,
.category-pill,
.free-pill,
.newsletter-action button{
  background:var(--pd8-accent,#B71927) !important;
  border-color:var(--pd8-accent,#B71927) !important;
}

@media(max-width:760px){
  .container{
    width:min(calc(100% - 26px),var(--pd8-site-width,1240px)) !important;
  }
  .impact-copy{width:100% !important}
  .impact-copy h1{font-size:clamp(36px,11vw,52px) !important}
  .page-wrap h1,.archive-title{
    font-size:clamp(30px,10vw,var(--pd8-page-title-size,42px)) !important;
  }
}


/* =========================================================
   Pulso Disidente Impacto v9 — estructura de blog
   ========================================================= */

/* tarjetas de portada/listados */
.post-card-excerpt{
  margin:8px 0 0;
  color:#3f3d38;
  font-size:.95rem;
  line-height:1.55;
}
.post-card-footer{
  margin-top:12px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  font-size:.78rem;
  color:var(--pd-warmgray);
}

/* entrada individual con sidebar */
.single-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 320px;
  gap:44px;
  align-items:start;
  padding-top:46px;
  padding-bottom:80px;
}
.single-main{
  min-width:0;
}
.entry-taxonomy{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  margin:0 0 18px;
}
.entry-taxonomy a{
  text-decoration:none;
}
.entry-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:28px 0 0;
}
.entry-tags a{
  display:inline-block;
  padding:6px 10px;
  border:1px solid var(--pd-line);
  border-radius:999px;
  text-decoration:none;
  font-size:.8rem;
}
.entry-tags a:hover{
  background:var(--pd-charcoal);
  color:#fff;
}
.entry-navigation{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  margin:42px 0 10px;
  padding-top:24px;
  border-top:1px solid var(--pd-line);
}
.entry-navigation a{
  display:block;
  text-decoration:none;
  border:1px solid var(--pd-line);
  border-radius:14px;
  padding:14px 16px;
  background:rgba(255,255,255,.35);
}
.entry-navigation a:hover{
  background:rgba(255,255,255,.7);
}
.entry-navigation .next{
  text-align:right;
}

/* comentarios */
.comments-area{
  margin-top:44px;
  padding-top:30px;
  border-top:1px solid var(--pd-line);
}
.comments-title,
.comment-reply-title{
  font-family:'Lora',Georgia,serif;
}
.comment-list{
  list-style:none;
  margin:20px 0 0;
  padding:0;
}
.comment-list li{
  padding:18px 0;
  border-bottom:1px solid var(--pd-line);
}
.comment-author{
  font-weight:700;
}
.comment-meta{
  font-size:.78rem;
  color:var(--pd-warmgray);
  margin-bottom:8px;
}
.comment-form p{
  margin:0 0 14px;
}
.comment-form input[type=text],
.comment-form input[type=email],
.comment-form input[type=url],
.comment-form textarea{
  width:100%;
  border:1px solid var(--pd-line);
  border-radius:10px;
  padding:12px 13px;
  font:inherit;
  background:rgba(255,255,255,.5);
}
.comment-form input[type=submit]{
  border:0;
  border-radius:999px;
  background:var(--pd8-accent,#B71927);
  color:#fff;
  padding:12px 20px;
  font:inherit;
  font-weight:700;
  cursor:pointer;
}

/* sidebar de blog */
.blog-sidebar{
  position:sticky;
  top:120px;
  display:flex;
  flex-direction:column;
  gap:24px;
}
.sidebar-widget{
  padding-top:14px;
  border-top:3px solid var(--pd8-accent,#B71927);
}
.sidebar-widget h3{
  font-family:'Lora',Georgia,serif;
  font-size:1.35rem;
  margin:0 0 12px;
}
.sidebar-widget ul{
  list-style:none;
  margin:0;
  padding:0;
}
.sidebar-widget li{
  padding:8px 0;
  border-bottom:1px solid var(--pd-line);
}
.sidebar-widget a{
  text-decoration:none;
}
.sidebar-search{
  display:flex;
  gap:8px;
}
.sidebar-search input[type=search]{
  flex:1;
  min-width:0;
  border:1px solid var(--pd-line);
  border-radius:10px;
  padding:10px 11px;
  font:inherit;
  background:rgba(255,255,255,.5);
}
.sidebar-search button{
  border:0;
  border-radius:10px;
  background:var(--pd-charcoal);
  color:#fff;
  padding:0 13px;
  cursor:pointer;
}
.sidebar-video{
  display:grid;
  grid-template-columns:96px 1fr;
  gap:10px;
  padding:10px 0;
  border-bottom:1px solid var(--pd-line);
}
.sidebar-video-thumb{
  aspect-ratio:16/9;
  border-radius:8px;
  overflow:hidden;
  background:#ddd;
}
.sidebar-video-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.sidebar-video strong{
  font-size:.86rem;
  line-height:1.25;
}

/* listado Historia / archivos */
.archive-listing .post-row{
  grid-template-columns:220px minmax(0,1fr);
}
.archive-excerpt{
  margin:7px 0 0;
  color:#3f3d38;
}
.archive-footer{
  margin-top:10px;
  font-size:.78rem;
  color:var(--pd-warmgray);
}

@media(max-width:980px){
  .single-layout{
    grid-template-columns:1fr;
  }
  .blog-sidebar{
    position:static;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .blog-sidebar .sidebar-widget:first-child{
    grid-column:1/-1;
  }
}
@media(max-width:640px){
  .entry-navigation{
    grid-template-columns:1fr;
  }
  .blog-sidebar{
    grid-template-columns:1fr;
  }
  .archive-listing .post-row{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   Pulso Disidente Impacto v10 — tarjetas de portada
   ========================================================= */
.recent-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:24px !important;
  align-items:start;
}
.home-post-card{
  min-width:0;
}
.home-post-thumb{
  display:block;
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  border-radius:10px;
  background:#e8e4dc;
  text-decoration:none;
}
.home-post-thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .25s ease;
}
.home-post-thumb:hover img{
  transform:scale(1.025);
}
.home-post-placeholder{
  display:block;
  width:100%;
  height:100%;
  background:linear-gradient(135deg,#e8e4dc,#d8d2c7);
}
.home-post-body{
  padding-top:13px;
}
.home-post-body .category-pill{
  display:inline-block;
  margin-bottom:8px;
}
.home-post-body h3{
  margin:0 0 7px;
  font-family:'Lora',Georgia,serif;
  font-size:1.18rem;
  line-height:1.2;
}
.home-post-body h3 a{
  color:inherit;
  text-decoration:none;
}
.home-post-meta{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-bottom:8px;
  font-size:.76rem;
  color:var(--pd-warmgray,#716c64);
}
.home-post-excerpt{
  margin:0;
  font-size:.91rem;
  line-height:1.48;
  color:#45423d;
}

@media(max-width:1050px){
  .recent-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media(max-width:600px){
  .recent-grid{
    grid-template-columns:1fr !important;
  }
}


/* =========================================================
   Impacto v11 — artículos recientes grandes en INICIO
   ========================================================= */
.homepage-feature-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:30px 26px;
}
.homepage-feature-card{
  min-width:0;
}
.homepage-feature-image{
  display:block;
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  border-radius:14px;
  background:#ded8cd;
  box-shadow:0 8px 24px rgba(31,31,29,.07);
  text-decoration:none;
}
.homepage-feature-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .25s ease;
}
.homepage-feature-image:hover img{
  transform:scale(1.025);
}
.homepage-feature-placeholder{
  display:flex;
  width:100%;
  height:100%;
  align-items:center;
  justify-content:center;
  font-family:'Lora',Georgia,serif;
  color:var(--pd-warmgray);
}
.homepage-feature-body{
  padding-top:14px;
}
.homepage-feature-body .category-pill{
  margin-bottom:9px;
}
.homepage-feature-body h3{
  margin:0 0 8px;
  font-family:'Lora',Georgia,serif;
  font-size:1.4rem;
  line-height:1.18;
}
.homepage-feature-body h3 a{
  color:inherit;
  text-decoration:none;
}
.homepage-feature-meta{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-bottom:9px;
  font-size:.78rem;
  color:var(--pd-warmgray);
}
.homepage-feature-body p{
  margin:0;
  font-size:.95rem;
  line-height:1.55;
  color:#44413b;
}

@media(max-width:900px){
  .homepage-feature-grid{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   Impacto v12 — edición básica + suscripción
   ========================================================= */
body{
  font-size:var(--pd8-body-size,17px) !important;
}
.homepage-feature-body h3,
.home-post-body h3,
.post-row h3{
  font-size:var(--pd8-card-title-size,22px) !important;
}
.homepage-feature-body p,
.home-post-excerpt,
.archive-excerpt{
  font-size:var(--pd8-excerpt-size,15px) !important;
}

.pd-home-subscribe,
.pd-page-subscribe{
  margin-top:42px;
  margin-bottom:70px;
}
.pd-subscribe-box{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);
  gap:34px;
  align-items:center;
  padding:34px 38px;
  border-radius:18px;
  background:#182329;
  color:#fff;
  box-shadow:0 14px 40px rgba(20,25,28,.10);
}
.pd-subscribe-compact{
  padding:28px 32px;
}
.pd-subscribe-kicker{
  display:block;
  margin-bottom:7px;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.12em;
  color:#f0b2a8;
}
.pd-subscribe-box h2{
  margin:0 0 8px;
  font-family:'Lora',Georgia,serif;
  font-size:var(--pd8-subscribe-title-size,30px);
  line-height:1.12;
  color:#fff;
}
.pd-subscribe-box p{
  margin:0;
  color:#e4e6e7;
}
.pd-subscribe-form form{
  display:flex;
  gap:10px;
}
.pd-subscribe-form input[type=email]{
  flex:1;
  min-width:0;
  padding:13px 14px;
  border:1px solid rgba(255,255,255,.32);
  border-radius:9px;
  background:#fff;
  color:#222;
  font:inherit;
}
.pd-subscribe-form button{
  border:0;
  border-radius:9px;
  padding:13px 17px;
  background:var(--pd8-accent,#B71927);
  color:#fff;
  font:inherit;
  font-weight:800;
}
.pd-subscribe-form small{
  display:block;
  margin-top:8px;
  color:#bac0c3;
  font-size:.72rem;
}
@media(max-width:800px){
  .pd-subscribe-box{
    grid-template-columns:1fr;
    padding:26px 22px;
  }
  .pd-subscribe-form form{
    flex-direction:column;
  }
}


/* =========================================================
   Impacto v13 — contacto
   ========================================================= */
.pd-contact-box{
  margin-top:36px;
  padding:32px;
  border:1px solid var(--pd-line);
  border-radius:18px;
  background:rgba(255,255,255,.42);
}
.pd-contact-kicker{
  display:block;
  margin-bottom:6px;
  color:var(--pd8-accent,#B71927);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.12em;
}
.pd-contact-box h2{
  margin:0 0 8px;
  font-family:'Lora',Georgia,serif;
  font-size:2rem;
}
.pd-contact-copy p{
  margin:0 0 24px;
  color:#555149;
}
.pd-contact-form{
  display:grid;
  gap:16px;
}
.pd-contact-form label>span{
  display:block;
  margin-bottom:6px;
  font-weight:600;
}
.pd-contact-form input[type=text],
.pd-contact-form input[type=email],
.pd-contact-form textarea{
  width:100%;
  border:1px solid var(--pd-line);
  border-radius:10px;
  padding:12px 13px;
  background:#fff;
  font:inherit;
}
.pd-contact-form textarea{
  resize:vertical;
}
.pd-contact-consent{
  display:flex !important;
  align-items:flex-start;
  gap:9px;
  font-size:.9rem;
  font-weight:400 !important;
}
.pd-contact-consent input{
  margin-top:5px;
}
.pd-contact-consent span{
  display:inline !important;
  margin:0 !important;
  font-weight:400 !important;
}
.pd-contact-form button{
  justify-self:start;
  border:0;
  border-radius:999px;
  padding:12px 22px;
  background:var(--pd8-accent,#B71927);
  color:#fff;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
.pd-contact-success,
.pd-contact-error{
  margin:0 0 18px;
  padding:12px 14px;
  border-radius:10px;
}
.pd-contact-success{
  background:#e9f6ec;
  color:#215a2b;
}
.pd-contact-error{
  background:#fdecec;
  color:#7f2323;
}


/* =========================================================
   Impacto v14 — suscripción global en el pie
   ========================================================= */
.site-footer{
  background:var(--pd-charcoal);
  color:#fff;
  padding:46px 0 24px;
  margin-top:52px;
}
.footer-grid{
  display:grid;
  grid-template-columns:1.05fr .65fr 1.3fr;
  gap:38px;
  align-items:start;
}
.footer-brand h3,
.footer-nav h3{
  margin:0 0 10px;
  font-family:'Lora',Georgia,serif;
}
.footer-brand p{
  margin:0 0 10px;
  color:#d8d6d1;
}
.footer-contact a{
  color:#fff;
  text-decoration:none;
}
.footer-nav ul{
  list-style:none;
  margin:0;
  padding:0;
}
.footer-nav li{
  margin:0 0 7px;
}
.footer-nav a{
  color:#fff;
  text-decoration:none;
}
.footer-nav a:hover{
  color:var(--pd8-accent,#B71927);
}
.footer-subscribe .pd-subscribe-box{
  display:block;
  padding:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.footer-subscribe .pd-subscribe-copy{
  margin-bottom:13px;
}
.footer-subscribe .pd-subscribe-kicker{
  color:#f0b2a8;
}
.footer-subscribe .pd-subscribe-box h2{
  margin:0 0 7px;
  font-size:1.45rem;
}
.footer-subscribe .pd-subscribe-box p{
  font-size:.86rem;
  color:#d7d9da;
}
.footer-subscribe .pd-subscribe-form form{
  display:grid;
  grid-template-columns:1fr 1.2fr auto;
  gap:8px;
  align-items:center;
}
.footer-subscribe .pd-subscribe-form input[type=text],
.footer-subscribe .pd-subscribe-form input[type=email]{
  width:100%;
  min-width:0;
  padding:10px 11px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:8px;
  background:#fff;
  color:#222;
  font:inherit;
}
.footer-subscribe .pd-subscribe-form button{
  border:0;
  border-radius:8px;
  padding:10px 14px;
  background:var(--pd8-accent,#B71927);
  color:#fff;
  font:inherit;
  font-weight:800;
}
.pd-subscribe-consent{
  grid-column:1/-1;
  display:flex;
  gap:8px;
  align-items:flex-start;
  margin-top:2px;
  font-size:.75rem;
  color:#d5d7d8;
}
.pd-subscribe-consent input{
  margin-top:3px;
}
.pd-subscribe-consent a{
  color:#fff;
}
.footer-subscribe .pd-subscribe-form small{
  display:block;
  margin-top:7px;
  color:#aeb4b7;
  font-size:.68rem;
}
.footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:16px;
  margin-top:28px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.14);
  font-size:.76rem;
  color:#bdbbb6;
}

@media(max-width:1000px){
  .footer-grid{
    grid-template-columns:1fr 1fr;
  }
  .footer-subscribe{
    grid-column:1/-1;
  }
}
@media(max-width:700px){
  .footer-grid{
    grid-template-columns:1fr;
  }
  .footer-subscribe{
    grid-column:auto;
  }
  .footer-subscribe .pd-subscribe-form form{
    grid-template-columns:1fr;
  }
  .pd-subscribe-consent{
    grid-column:auto;
  }
  .footer-bottom{
    flex-direction:column;
  }
}

.pd-honeypot{
  position:absolute !important;
  left:-99999px !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
  pointer-events:none !important;
}
