/*
Theme Name: Pulso Comunitario Vanguardia
Theme URI: https://www.pulsocomunitario.online/
Author: FactoriaDigital
Author URI: https://factoriadigital.store/
Description: Tema periodístico vanguardista para Pulso Comunitario. Portada asimétrica por bloques, Hero con categoría Portada, menú principal automático con categorías existentes, SEO editorial, widgets publicitarios y páginas institucionales.
Version: 1.3.0
Requires at least: 6.2
Tested up to: 6.6
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: pulso-comunitario
Tags: news, blog, grid-layout, custom-logo, featured-images, footer-widgets
*/

:root{
  --pc-bg:#07090f;
  --pc-bg-soft:#0d1019;
  --pc-panel:#111522;
  --pc-panel-2:#151b2b;
  --pc-text:#f7f4ed;
  --pc-muted:#aeb6c8;
  --pc-line:rgba(255,255,255,.12);
  --pc-accent:#e4213d;
  --pc-accent-2:#ffb000;
  --pc-cyan:#46e0ff;
  --pc-white:#ffffff;
  --pc-black:#050507;
  --pc-radius:24px;
  --pc-shadow:0 30px 70px rgba(0,0,0,.42);
  --pc-max:1240px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--pc-text);
  background:
    linear-gradient(120deg, rgba(255,176,0,.035) 0 1px, transparent 1px 120px),
    radial-gradient(circle at top left, rgba(228,33,61,.28), transparent 34rem),
    radial-gradient(circle at top right, rgba(70,224,255,.15), transparent 30rem),
    radial-gradient(circle at 50% 120px, rgba(255,176,0,.10), transparent 22rem),
    linear-gradient(180deg,#05060b 0%,#090b12 45%,#050507 100%);
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height:1.55;
}
body.admin-bar .pc-header{top:32px}
a{color:inherit;text-decoration:none}
a:hover{color:var(--pc-accent-2)}
img{display:block;max-width:100%;height:auto}
.screen-reader-text{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}

.pc-shell{width:min(var(--pc-max),calc(100% - 36px));margin-inline:auto}
.pc-header{
  position:sticky;
  top:0;
  z-index:80;
  backdrop-filter:blur(18px);
  background:linear-gradient(90deg,rgba(5,6,11,.94),rgba(15,9,18,.88),rgba(5,6,11,.94));
  border-bottom:1px solid rgba(255,176,0,.24);
  box-shadow:0 12px 34px rgba(0,0,0,.28);
}
.pc-topbar{
  border-bottom:1px solid rgba(255,255,255,.08);
  color:var(--pc-muted);
  font-size:.78rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.pc-topbar .pc-shell{display:flex;justify-content:space-between;gap:18px;padding:9px 0}
.pc-brand-row{display:flex;align-items:center;gap:24px;justify-content:space-between;padding:18px 0}
.pc-brand{display:flex;align-items:center;gap:14px;min-width:230px}
.pc-brand img{width:252px;max-height:72px;object-fit:contain;filter:drop-shadow(0 12px 28px rgba(255,176,0,.18))}
.custom-logo-link.pc-brand{display:flex;align-items:center}
.pc-tagline{color:#f1f4fb;font-weight:850;font-size:.88rem;max-width:430px;text-transform:uppercase;letter-spacing:.1em}
.pc-menu-wrap{border-top:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025)}
.pc-primary-menu ul,
.pc-footer-menu ul{list-style:none;margin:0;padding:0}
.pc-primary-menu ul{display:flex;gap:6px;overflow:auto;scrollbar-width:none}
.pc-primary-menu ul::-webkit-scrollbar{display:none}
.pc-primary-menu li{flex:0 0 auto}
.pc-primary-menu a{
  display:block;
  padding:14px 14px 13px;
  color:#f6f8ff;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:.76rem;
  font-weight:900;
  border-bottom:2px solid transparent;
}
.pc-primary-menu a:hover{border-bottom-color:var(--pc-accent-2);color:#fff;background:linear-gradient(180deg,rgba(255,176,0,.12),rgba(255,255,255,.04))}

.pc-breaking{padding:18px 0 0}
.pc-breaking__inner{
  display:flex;align-items:center;gap:14px;overflow:hidden;
  border:1px solid var(--pc-line);
  background:linear-gradient(90deg,rgba(228,33,61,.24),rgba(255,255,255,.04));
  border-radius:999px;padding:8px 14px;
}
.pc-breaking strong{background:var(--pc-accent);color:#fff;border-radius:999px;padding:5px 10px;font-size:.72rem;letter-spacing:.09em;text-transform:uppercase}
.pc-breaking span{color:#dce2ef;white-space:nowrap;font-size:.9rem}

.pc-hero{padding:34px 0 24px}
.pc-hero__head{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:22px}
.pc-eyebrow{color:var(--pc-accent-2);text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;font-weight:950}
.pc-title{
  margin:0;
  font-size:clamp(2rem,6vw,5.7rem);
  line-height:.9;
  letter-spacing:-.08em;
  text-transform:uppercase;
  max-width:900px;
}
.pc-kicker{color:var(--pc-muted);max-width:360px;font-weight:600}
.pc-hero-grid{display:grid;grid-template-columns:1.35fr .8fr;gap:20px;align-items:stretch}
.pc-hero-main,.pc-card,.pc-mini-card,.pc-section,.pc-single,.pc-page-panel{
  border:1px solid var(--pc-line);
  background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.025));
  box-shadow:var(--pc-shadow), inset 0 1px 0 rgba(255,255,255,.06);
}
.pc-hero-main{position:relative;min-height:560px;border-radius:34px;overflow:hidden;isolation:isolate;border-color:rgba(255,176,0,.22);cursor:pointer;outline:none}
.pc-hero-main:focus-visible{box-shadow:0 0 0 3px rgba(255,176,0,.78), var(--pc-shadow)}
.pc-hero-main__cover,.pc-hero-main__link{position:absolute;inset:0;display:block;color:inherit;z-index:8}
.pc-hero-main::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,rgba(255,176,0,.16),transparent 28%,transparent 70%,rgba(70,224,255,.12));mix-blend-mode:screen;z-index:1;pointer-events:none}
.pc-hero-main::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,5,7,.94),rgba(5,5,7,.08) 52%,rgba(5,5,7,.18));z-index:2}
.pc-hero-main img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;filter:saturate(1.06) contrast(1.06)}
.pc-hero-main__body{position:absolute;z-index:4;left:28px;right:28px;bottom:28px;pointer-events:none}
.pc-hero-main h2{font-size:clamp(2rem,4.4vw,4.5rem);line-height:.95;letter-spacing:-.055em;margin:0 0 16px;text-transform:uppercase}
.pc-hero-main p{font-size:1.05rem;color:#e8edf8;max-width:760px;margin:0 0 18px}
.pc-hero-side{display:grid;gap:18px}
.pc-hero-side .pc-mini-card:nth-child(2){transform:translateX(-24px)}
.pc-hero-side .pc-mini-card:nth-child(3){transform:translateX(18px)}

.pc-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--pc-muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.pc-badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 10px;background:rgba(228,33,61,.92);color:white;font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;font-weight:950}
.pc-badge--gold{background:var(--pc-accent-2);color:#1b1200}
.pc-readmore{display:inline-flex;align-items:center;gap:8px;font-weight:950;color:#fff;text-transform:uppercase;letter-spacing:.09em;font-size:.78rem}
.pc-readmore::after{content:"→";color:var(--pc-accent-2)}

.pc-card,.pc-mini-card{border-radius:var(--pc-radius);overflow:hidden;transition:transform .2s ease,border-color .2s ease,background .2s ease}
.pc-card:hover,.pc-mini-card:hover{transform:translateY(-4px);border-color:rgba(255,176,0,.48);background:rgba(255,255,255,.08)}
.pc-card__image{aspect-ratio:16/10;background:#1b2233;overflow:hidden}
.pc-card__image img{width:100%;height:100%;object-fit:cover}
.pc-card__body{padding:17px}
.pc-card h3,.pc-mini-card h3{margin:8px 0 8px;line-height:1.05;letter-spacing:-.03em}
.pc-card h3{font-size:1.18rem}
.pc-card p,.pc-mini-card p{margin:0;color:var(--pc-muted);font-size:.94rem}
.pc-mini-card{display:grid;grid-template-columns:44% 1fr;min-height:160px}
.pc-mini-card__image{min-height:160px;background:#1b2233;overflow:hidden}
.pc-mini-card__image img{width:100%;height:100%;object-fit:cover}
.pc-mini-card__body{padding:15px}
.pc-mini-card h3{font-size:1.02rem}

.pc-ad{margin:26px 0;border-radius:30px;overflow:hidden;border:1px solid rgba(255,176,0,.34);box-shadow:var(--pc-shadow);background:linear-gradient(135deg,#050507 0%,#210714 42%,#7b0e23 72%,#d69b00 140%);position:relative;isolation:isolate}
.pc-ad::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 10% 20%,rgba(255,176,0,.35),transparent 20rem),linear-gradient(120deg,transparent 0 45%,rgba(255,255,255,.12) 45% 46%,transparent 46%);z-index:-1}
.pc-ad__inner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:28px}
.pc-ad__label{font-size:clamp(1.7rem,4.5vw,4rem);line-height:.9;font-weight:1000;letter-spacing:-.06em;text-transform:uppercase}
.pc-ad__sub{color:#ffe6b0;font-weight:800;max-width:360px}
.pc-ad a{border:1px solid rgba(255,255,255,.34);border-radius:999px;padding:12px 16px;font-weight:950;text-transform:uppercase;font-size:.78rem;letter-spacing:.09em;background:rgba(0,0,0,.22)}

.pc-sections{padding:16px 0 46px}
.pc-section{border-radius:34px;padding:24px;margin:22px 0;background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.02))}
.pc-section__head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:20px;border-bottom:1px solid var(--pc-line);padding-bottom:14px}
.pc-section h2{font-size:clamp(1.8rem,3.2vw,3.1rem);line-height:.95;margin:0;text-transform:uppercase;letter-spacing:-.055em}
.pc-section__desc{color:var(--pc-muted);max-width:420px;font-weight:600;margin:0}
.pc-section__grid{display:grid;grid-template-columns:.9fr 1.3fr;gap:18px;align-items:start}
.pc-section:nth-of-type(even) .pc-section__grid{grid-template-columns:1.3fr .9fr}
.pc-section:nth-of-type(even) .pc-section__lead{order:2}
.pc-section__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.pc-section__lead .pc-card__image{aspect-ratio:5/5.6}
.pc-section:nth-of-type(even) .pc-section__lead .pc-card__image{aspect-ratio:16/13}
.pc-section__grid--simple{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch}
.pc-section__grid--simple .pc-card{height:100%}
.pc-section__grid--single{grid-template-columns:minmax(0,620px)}
.pc-section__grid--simple .pc-card__image{aspect-ratio:16/10}

.pc-archive{padding:38px 0 56px}
.pc-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.pc-pagination{margin-top:30px;display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.pc-pagination .page-numbers{border:1px solid var(--pc-line);padding:8px 12px;border-radius:999px;color:#fff;background:rgba(255,255,255,.04)}
.pc-pagination .current{background:var(--pc-accent);border-color:var(--pc-accent)}

.pc-single-wrap{padding:38px 0 54px}
.pc-single{border-radius:34px;overflow:hidden;background:rgba(255,255,255,.055)}
.pc-single__header{padding:30px 30px 18px}
.pc-single h1{font-size:clamp(2.2rem,5vw,5.1rem);line-height:.95;letter-spacing:-.06em;text-transform:uppercase;margin:14px 0}
.pc-single__image{max-height:650px;overflow:hidden;border-top:1px solid var(--pc-line);border-bottom:1px solid var(--pc-line)}
.pc-single__image img{width:100%;height:100%;object-fit:cover}
.pc-content{padding:30px;max-width:860px;margin-inline:auto;color:#edf1f8;font-size:1.08rem}
.pc-content p{margin:0 0 1.2em}
.pc-content a{text-decoration:underline;text-decoration-color:var(--pc-accent-2);text-underline-offset:4px}
.pc-content h2,.pc-content h3{letter-spacing:-.03em;line-height:1.05}
.pc-author-box,.pc-related{border-top:1px solid var(--pc-line);padding:24px 30px}
.pc-author-box{display:flex;gap:15px;align-items:center;background:rgba(255,255,255,.035)}
.pc-author-box img{border-radius:50%}
.pc-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}

.pc-page{padding:40px 0 58px}
.pc-page-panel{border-radius:34px;padding:30px;background:rgba(255,255,255,.055)}
.pc-page-panel h1{font-size:clamp(2rem,4vw,4rem);line-height:.96;letter-spacing:-.06em;text-transform:uppercase;margin:0 0 18px}
.pc-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}
.pc-person{padding:18px;border:1px solid var(--pc-line);border-radius:22px;background:rgba(255,255,255,.045)}
.pc-person strong{display:block;font-size:1.1rem;color:#fff}.pc-person span{display:block;color:var(--pc-accent-2);font-weight:900;text-transform:uppercase;font-size:.72rem;letter-spacing:.1em;margin:4px 0 8px}

.pc-footer{border-top:1px solid var(--pc-line);background:linear-gradient(180deg,rgba(10,12,19,.76),#050507);padding:34px 0 22px}
.pc-footer-grid{display:grid;grid-template-columns:1.3fr 1.05fr repeat(3,.85fr);gap:20px;align-items:start}
.pc-footer-brand img{width:220px;margin-bottom:14px}
.pc-footer p,.pc-footer li{color:var(--pc-muted)}
.pc-footer h3{font-size:.82rem;text-transform:uppercase;letter-spacing:.14em;color:#fff;margin:0 0 12px}
.pc-footer-menu ul{display:grid;gap:6px}
.pc-footer-menu a{color:var(--pc-muted)}
.pc-footer-menu a:hover{color:var(--pc-accent-2)}
.pc-footer-widget{border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:14px;background:rgba(255,255,255,.025)}
.pc-footer-widget--ad{background:linear-gradient(145deg,rgba(228,33,61,.14),rgba(255,176,0,.08));border-color:rgba(255,176,0,.18)}
.pc-footer-widget--ad p{font-weight:1000;letter-spacing:.08em;text-transform:uppercase;color:#fff;margin:0}
.pc-footer-widget .widget{margin-bottom:16px}
.pc-credit{border-top:1px solid var(--pc-line);margin-top:26px;padding-top:18px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;color:var(--pc-muted);font-size:.9rem}
.pc-credit a{color:#fff;font-weight:900}

.pc-placeholder{width:100%;height:100%;min-height:180px;background:linear-gradient(135deg,#151a28,#2a1020 52%,#e4213d);position:relative;display:grid;place-items:center;color:#fff;font-weight:1000;letter-spacing:-.04em;text-transform:uppercase;text-align:center;padding:18px}
.pc-placeholder::after{content:"Pulso Comunitario";opacity:.78}

@media (max-width: 980px){
  .pc-brand-row{align-items:flex-start;flex-direction:column}.pc-tagline{max-width:none}
  .pc-hero-grid,.pc-section__grid,.pc-section:nth-of-type(even) .pc-section__grid,.pc-section__grid--simple,.pc-section__grid--single{grid-template-columns:1fr}
  .pc-section:nth-of-type(even) .pc-section__lead{order:0}
  .pc-hero-main{min-height:430px}.pc-hero-side .pc-mini-card{transform:none!important}
  .pc-archive-grid,.pc-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pc-footer-grid{grid-template-columns:1fr 1fr}.pc-ad__inner{align-items:flex-start;flex-direction:column}
}
@media (max-width: 640px){
  .pc-shell{width:min(100% - 24px,var(--pc-max))}.pc-topbar .pc-shell{flex-direction:column;gap:3px}
  .pc-brand img{width:214px}.pc-title{font-size:3rem}.pc-hero-main{min-height:460px;border-radius:24px}.pc-hero-main__body{left:18px;right:18px;bottom:20px}
  .pc-mini-card{grid-template-columns:1fr}.pc-mini-card__image{min-height:190px}.pc-section{padding:18px;border-radius:24px}.pc-section__head{align-items:flex-start;flex-direction:column}.pc-section__list,.pc-archive-grid,.pc-related-grid,.pc-directory{grid-template-columns:1fr}
  .pc-footer-grid{grid-template-columns:1fr}.pc-single__header,.pc-content,.pc-author-box,.pc-related,.pc-page-panel{padding:22px}
}
