/* Wikipol HUBS V2: encapsulado. Sin afectar las plantillas públicas antiguas. */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@600;700;800&display=swap');
.wpk-hv2{--hv-pink:#ef0058;--hv-ink:#17192d;--hv-soft:#f5f6f8;--hv-muted:#626e82;--hv-line:#e1e4ea;background:#fff;color:var(--hv-ink);font:15px/1.55 Inter,Arial,sans-serif;overflow:clip}
.wpk-hv2,.wpk-hv2 *,.wpk-hv2 *:before,.wpk-hv2 *:after{box-sizing:border-box}
.wpk-hv2 a{text-decoration:none}
.wpk-hv2 a:focus-visible,.wpk-hv2 input:focus-visible,.wpk-hv2 select:focus-visible,.wpk-hv2 button:focus-visible{outline:3px solid #ae31d7;outline-offset:3px}
.wpk-hv2__shell{width:min(1160px,calc(100% - 50px));margin:0 auto}
.wpk-hv2__hero{min-height:425px;background-image:linear-gradient(105deg,rgba(25,18,44,.96) 5%,rgba(48,26,55,.92) 56%,rgba(99,52,95,.77) 100%),var(--wpk-hv2-bg,none);background-color:#271735;background-position:center;background-repeat:no-repeat;background-size:cover;color:#fff;display:flex;align-items:center}
.wpk-hv2__hero>.wpk-hv2__shell{padding-block:42px 46px}
.wpk-hv2__crumb{display:flex;align-items:center;gap:9px;flex-wrap:wrap;color:#f1dbe6;font-size:12px;margin-bottom:26px}
.wpk-hv2__crumb a{color:#f7e6ed!important}.wpk-hv2__crumb a:hover{text-decoration:underline}
.wpk-hv2__eyebrow,.wpk-hv2__kicker{font-size:11px;font-weight:850;letter-spacing:.11em;color:var(--hv-pink);display:block;margin-bottom:8px}
.wpk-hv2__eyebrow{color:#ffa6c7}
.wpk-hv2__hero h1{color:#fff!important;font:700 clamp(32px,4.2vw,56px)/1.12 'Cinzel',Georgia,'Times New Roman',serif!important;letter-spacing:-.018em;max-width:970px;margin:0 0 17px;text-wrap:balance;text-transform:none}
.wpk-hv2__hero-lead{max-width:760px;color:#fcf4f8;margin:0 0 22px;font-size:15px;font-weight:550;line-height:1.65}
.wpk-hv2__cta{display:inline-flex;gap:16px;align-items:center;border-radius:25px;background:var(--hv-pink);color:#fff!important;padding:12px 20px;font-size:13px;font-weight:850;box-shadow:0 6px 20px #ed005733}
.wpk-hv2__cta:hover{background:#ce004f}
.wpk-hv2__stats{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.wpk-hv2__stats>div{min-width:170px;background:#1f1836c9;border:1px solid #ffffff2b;border-radius:11px;padding:12px 16px;display:flex;flex-direction:column;gap:2px}
.wpk-hv2__stats strong{font-size:23px;line-height:1.15;color:#fff}.wpk-hv2__stats span{font-size:11px;color:#e7dce9}
.wpk-hv2__section{padding-block:58px 65px;scroll-margin-top:85px}
.wpk-hv2__section--soft{background:var(--hv-soft)}
.wpk-hv2__section--white{background:#fff}
.wpk-hv2 h2{color:var(--hv-ink);font-size:clamp(25px,2.9vw,33px);font-weight:850;line-height:1.2;letter-spacing:-.02em;margin:0 0 12px}
.wpk-hv2__intro{font-size:14px;max-width:820px;color:var(--hv-muted);line-height:1.65;margin:0 0 23px}
.wpk-hv2__hub-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.wpk-hv2__hub-grid>a{border:1px solid var(--hv-line);padding:23px 18px;background:#fff;box-shadow:0 7px 16px #1015270c;border-radius:14px;display:flex;flex-direction:column;gap:8px;min-height:174px;color:var(--hv-ink)!important;transition:box-shadow .15s,transform .15s}
.wpk-hv2__hub-grid>a:hover{transform:translateY(-3px);box-shadow:0 12px 26px #10152717}
.wpk-hv2__hub-grid span{font-size:12px;font-weight:900;color:var(--hv-pink)}
.wpk-hv2__hub-grid strong{font-size:18px;line-height:1.22}.wpk-hv2__hub-grid small{font-size:12px;color:var(--hv-muted)}
.wpk-hv2__hub-grid em{font-size:12px;color:var(--hv-pink);font-style:normal;font-weight:800;margin-top:auto}
.wpk-hv2__chips,.wpk-hv2__inline-link{display:flex;gap:11px;flex-wrap:wrap;margin:18px 0 26px}
.wpk-hv2__chips a{display:inline-flex;align-items:center;padding:9px 15px;border-radius:22px;background:#fff;border:1px solid var(--hv-line);color:#283047!important;font-size:12px;font-weight:700}
.wpk-hv2__chips a[aria-current="page"]{background:var(--hv-pink);border-color:var(--hv-pink);color:#fff!important}
.wpk-hv2__inline-link a{color:#cb004d!important;font-size:13px;font-weight:800}
.wpk-hv2__inline-link a:hover{text-decoration:underline}
.wpk-hv2__form{display:flex;align-items:center;gap:11px;flex-wrap:wrap;padding:15px;border:1px solid var(--hv-line);background:#fff;border-radius:15px;box-shadow:0 6px 24px #0f153408}
.wpk-hv2__form input,.wpk-hv2__form select{min-width:0;height:43px;border:1px solid #dfe3eb!important;background:#fff!important;border-radius:25px!important;padding:0 16px!important;color:#263149!important;font:13px Inter,Arial,sans-serif!important;box-shadow:none!important}
.wpk-hv2__form input{flex:2 1 260px}
.wpk-hv2__form select{flex:1 1 185px;cursor:pointer}
.wpk-hv2__form button{background:var(--hv-pink)!important;border:0!important;color:#fff!important;border-radius:25px;padding:0 21px;height:43px;font-size:12px;font-weight:800;cursor:pointer}
.wpk-hv2__form a{color:#be0049!important;font-size:12px;font-weight:750;padding:8px}
.wpk-hv2__count{color:var(--hv-muted);margin:26px 0 18px;font-size:14px}
.wpk-hv2__count strong{font-size:25px;color:#151c2d}
.wpk-hv2__inst-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px}
.wpk-hv2__inst-card{min-width:0;border:1px solid #e0e4eb;background:#fff;border-radius:13px;overflow:hidden;box-shadow:0 7px 16px #1015270e;transition:transform .15s,box-shadow .15s}
.wpk-hv2__inst-card:hover{transform:translateY(-2px);box-shadow:0 12px 22px #10152719}
.wpk-hv2__inst-card>a{display:block;height:100%;color:var(--hv-ink)!important}
.wpk-hv2__inst-cover{height:115px;background-color:#e9e8ee;background-image:linear-gradient(112deg,#281e46,#664465);background-repeat:no-repeat;background-size:cover;background-position:center}
.wpk-hv2__inst-portrait{position:relative;width:82px;height:82px;border-radius:50%;background:#fff;display:grid;place-items:center;margin:-38px auto 2px;border:4px solid #fff;box-shadow:0 4px 11px #191b2726;z-index:1}
.wpk-hv2__inst-portrait>img:first-child{width:100%;height:100%;object-fit:contain;border-radius:50%}
.wpk-hv2__inst-portrait>span{display:grid;place-items:center;width:100%;height:100%;background:#fff2f7;color:var(--hv-pink);font-size:33px;font-weight:800;border-radius:50%}
.wpk-hv2__inst-portrait img.wpk-hv2__inst-badge{position:absolute;right:-8px;bottom:-7px;width:26px;height:26px;object-fit:contain;background:#fff;border-radius:50%;padding:2px}
.wpk-hv2__inst-body{padding:10px 17px 18px;text-align:center;min-height:143px;display:flex;align-items:center;flex-direction:column}
.wpk-hv2__inst-body h3{font-size:15px;line-height:1.27;color:var(--hv-ink);font-weight:850;margin:3px 0 6px;text-wrap:balance}
.wpk-hv2__inst-abbr{font-size:12px;color:#55657d;margin:0 0 5px;font-weight:800}
.wpk-hv2__inst-slogan{font-size:12px;color:#7b8493;margin:0 0 13px;max-width:225px}
.wpk-hv2__inst-link{font-size:12px;color:var(--hv-pink);font-weight:850;margin-top:auto}
.wpk-hv2__leader-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px}
.wpk-hv2__leader-card{min-width:0;display:flex;align-items:stretch}
.wpk-hv2__leader-card>.wpk-v2-card{width:100%;min-width:0;flex:1}
.wpk-hv2__empty{border:1px dashed #d6d9e0;border-radius:13px;background:#fff;padding:27px;color:#667084;text-align:center}
.wpk-hv2__pages{display:flex;justify-content:center;gap:7px;flex-wrap:wrap;margin-top:29px}
.wpk-hv2__pages>a{min-width:39px;height:39px;display:grid;place-items:center;border:1px solid #dfe3e9;border-radius:9px;background:#fff;color:#252d40!important;font-weight:750;font-size:13px;padding:0 9px}
.wpk-hv2__pages>a[aria-current=page]{background:var(--hv-pink);color:#fff!important;border-color:var(--hv-pink)}
.wpk-hv2__editorial{max-width:1160px}.wpk-hv2__editorial>p{max-width:880px;color:#5f6878;font-size:14px;line-height:1.85;margin-bottom:16px}
.wpk-hv2__editorial h3{font-size:18px;color:var(--hv-ink);font-weight:800;margin:23px 0 8px}
.wpk-hv2__editorial p a{color:#ce0053;text-decoration:underline}
@media(max-width:1000px){.wpk-hv2__hub-grid,.wpk-hv2__inst-grid,.wpk-hv2__leader-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.wpk-hv2__hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wpk-hv2__inst-grid,.wpk-hv2__leader-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wpk-hv2__hero{min-height:390px}}
@media(max-width:520px){.wpk-hv2__shell{width:calc(100% - 32px)}.wpk-hv2__hero>.wpk-hv2__shell{padding-block:38px}.wpk-hv2__hero h1{font-size:32px!important}.wpk-hv2__hero-lead{font-size:14px}.wpk-hv2__hub-grid,.wpk-hv2__inst-grid,.wpk-hv2__leader-grid{grid-template-columns:1fr}.wpk-hv2__stats>div{min-width:130px}.wpk-hv2__section{padding-block:42px}.wpk-hv2__form input,.wpk-hv2__form select{flex-basis:100%}.wpk-hv2__form button{flex:1}}

/* ===========================================================
   WIKIPOL HUBS V2.1 - TARJETAS INSTITUCIONALES MAS AMPLIAS
   Ajuste aislado al directorio de instituciones y partidos.
   No modifica las tarjetas de lideres ni otros hubs.
   =========================================================== */
.wpk-hv2 .wpk-hv2__inst-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
.wpk-hv2 .wpk-hv2__inst-card {
  min-height: 370px;
}
.wpk-hv2 .wpk-hv2__inst-card > a {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.wpk-hv2 .wpk-hv2__inst-cover {
  height: 145px;
  flex: 0 0 145px;
}
.wpk-hv2 .wpk-hv2__inst-portrait {
  width: 92px;
  height: 92px;
  margin: -43px auto 0;
  flex: 0 0 92px;
}
.wpk-hv2 .wpk-hv2__inst-body {
  flex: 1 1 auto;
  min-height: 175px;
  padding: 16px 22px 24px;
}
.wpk-hv2 .wpk-hv2__inst-body h3 {
  font-size: 16px;
  line-height: 1.36;
  margin: 6px 0 9px;
}
.wpk-hv2 .wpk-hv2__inst-abbr {
  font-size: 13px;
  line-height: 1.4;
  margin-bottom: 8px;
}
.wpk-hv2 .wpk-hv2__inst-slogan {
  font-size: 13px;
  line-height: 1.5;
  margin: 0 auto 17px;
  max-width: 270px;
}
.wpk-hv2 .wpk-hv2__inst-link {
  font-size: 13px;
  margin-top: auto;
  padding-top: 5px;
}
@media (min-width: 1450px) {
  .wpk-hv2 .wpk-hv2__inst-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
  }
}
@media (max-width: 850px) {
  .wpk-hv2 .wpk-hv2__inst-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
  }
}
@media (max-width: 560px) {
  .wpk-hv2 .wpk-hv2__inst-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
  }
  .wpk-hv2 .wpk-hv2__inst-cover {
    height: 150px;
    flex-basis: 150px;
  }
  .wpk-hv2 .wpk-hv2__inst-card { min-height: 355px; }
}

/* HUBS V2.2: fondos fotográficos autorizados para los heroes.
   El overlay conserva el contraste del título Cinzel. No afecta heroes sin fotografía. */
.wpk-hv2 .wpk-hv2__hero--photo {
  background-image: linear-gradient(105deg,rgba(25,18,44,.88) 2%,rgba(41,23,51,.77) 55%,rgba(80,39,79,.61) 100%),var(--wpk-hv2-bg);
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}
@media (max-width: 600px) {
 .wpk-hv2 .wpk-hv2__hero--photo { background-position: 60% center; }
}
