/* ── v11.2 — Socios: título prominente · fichas completas · marquee real ── */

/* ── Directory hero title (más predominante) ─────────────── */
.dir-title {
  position: relative;
  padding: clamp(3rem,7vw,5rem) 0 clamp(2.5rem,5vw,3.5rem);
  overflow: hidden;
}
.dir-title__bg {
  position: absolute; inset: 0;
  background: linear-gradient(160deg, var(--navy-800) 0%, #0d2c4a 100%);
}
.dir-title__hex {
  position: absolute; right: -4%; top: 50%; transform: translateY(-50%);
  width: clamp(160px,22vw,320px); aspect-ratio: .866;
  border: 1.5px solid rgba(85,187,235,.12);
  clip-path: polygon(50% 0, 100% 25%, 100% 75%, 50% 100%, 0 75%, 0 25%);
}
.dir-title__content { position: relative; z-index: 1; }
.dir-title__eyebrow {
  display: flex; align-items: center; gap: .6rem;
  font-family: var(--f-d); font-size: .75rem; font-weight: 700; letter-spacing: .18em; text-transform: uppercase;
  color: var(--p1); margin-bottom: 1.25rem;
}
.dir-title__eyebrow::before { content:''; width:9px; height:10px; background:var(--c1); clip-path:var(--hex-pointy); flex-shrink:0; }
.dir-title h1 {
  font-family: var(--f-d); font-weight: 700; color: #fff;
  font-size: clamp(2.75rem,6vw,5rem); line-height: .98; letter-spacing: -.03em; max-width: 16ch;
}
.dir-title h1 .a { color: var(--p1); }
.dir-title__lede { color: rgba(255,255,255,.6); font-size: 1.05rem; line-height: 1.7; max-width: 56ch; margin-top: 1.5rem; }
.dir-title__stats { display: flex; gap: clamp(1.5rem,4vw,3rem); flex-wrap: wrap; margin-top: 2.5rem; }
.dir-title__stat { display: flex; flex-direction: column; gap: 2px; }
.dir-title__stat .n { font-family: var(--f-d); font-weight: 700; font-size: 1.9rem; color: #fff; line-height: 1; }
.dir-title__stat .l { font-family: var(--f-d); font-size: .62rem; letter-spacing: .12em; text-transform: uppercase; color: rgba(255,255,255,.38); margin-top: 4px; }

/* ── Social / URL row on fichas ───────────────────────────── */
.pf-social-row { display: flex; gap: .6rem; flex-wrap: wrap; }
.pf-social-btn {
  display: flex; align-items: center; gap: .5rem;
  padding: .55rem 1rem; border-radius: 9px; font-family: var(--f-d); font-size: .78rem; font-weight: 700;
  text-decoration: none; transition: transform .2s, background .2s; cursor: pointer;
}
.pf-social-btn:hover { transform: translateY(-2px); }
.pf-social-btn--dark { background: rgba(255,255,255,.08); color: rgba(255,255,255,.8); border: 1px solid rgba(255,255,255,.12); }
.pf-social-btn--dark:hover { background: rgba(255,255,255,.14); }
.pf-social-btn--light { background: var(--ink-50); color: var(--ink-700); border: 1px solid var(--ink-100); }
.pf-social-btn--light:hover { background: var(--ink-100); }

/* ── Video zone (Platinum) ────────────────────────────────── */
.pf-video-zone {
  position: relative; border-radius: 16px; overflow: hidden; aspect-ratio: 16/9;
  background: linear-gradient(160deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
  border: 1px dashed rgba(255,255,255,.18);
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .75rem;
}
.pf-video-zone__play {
  width: 56px; height: 56px; border-radius: 50%;
  background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.2);
  display: grid; place-items: center; color: rgba(255,255,255,.7);
  transition: background .25s, transform .25s;
}
.pf-video-zone:hover .pf-video-zone__play { background: var(--cta); transform: scale(1.08); color: #fff; }
.pf-video-zone__label { font-family: var(--f-d); font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; color: rgba(255,255,255,.35); }

/* ── No-logo monogram tinting (brand-consistent per tier) ─── */
.logo-chip--mono.tier-platinum { background: linear-gradient(135deg,#7098b4,#3a5a72); }
.logo-chip--mono.tier-premium  { background: linear-gradient(135deg,var(--p1),var(--cta)); }
.logo-chip--mono.tier-estandar { background: linear-gradient(135deg,var(--cta),#0d5a94); }

/* ── Apibim svg (black) needs contrast wrapper on dark cards ── */
.logo-chip--onwhite { background:#fff !important; padding: 8px; }

/* Source attribution note reused */
.real-source-note { display:flex; align-items:center; gap:.6rem; margin-top:1rem; font-family:var(--f-d); font-size:.72rem; color:var(--ink-400); }
.real-source-note a { color:var(--cta); text-decoration:none; font-weight:700; }

/* ── Noticias: equal-height cards fix ─────────────────────── */
.news-grid > a, .news-grid > div { display:flex; height:100%; }
.news-card { height:100%; width:100%; }
.news-card__title { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; min-height:2.6em; }
.news-card__excerpt { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; min-height:63.3px; line-height:1.55; }

/* ── Connection-style image treatment (brand manual) ──────── */
.img-connect { position: relative; overflow: hidden; }
.img-connect img { filter: saturate(1.05) contrast(1.02); }
.img-connect::after {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(160deg, rgba(1,75,130,.18), rgba(85,187,235,.06) 60%, transparent 100%);
  mix-blend-mode: multiply;
}
