:root{
  --lead-ink:#171b20;
  --lead-muted:rgba(23,27,32,.62);
  --lead-line:rgba(23,27,32,.12);
  --lead-bg:#f5f6f7;
  --lead-panel:#123f66;
  --lead-gold:#c88a16;
}

*{box-sizing:border-box}
.leadership-page{margin:0;background:
  radial-gradient(circle at 86% 7%,rgba(17,23,30,.62) 0%,rgba(54,57,60,.42) 25%,rgba(54,57,60,0) 47%),
  radial-gradient(circle at 8% 4%,rgba(255,255,255,.86) 0%,rgba(255,255,255,.42) 24%,rgba(255,255,255,0) 44%),
  linear-gradient(135deg,#dad7d0 0%,#f7f5ef 27%,#ece9e2 47%,#d8d6d1 66%,#eef0f1 100%);color:var(--lead-ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.leadership-page .topbar{background:transparent;border-bottom-color:transparent;backdrop-filter:none;box-shadow:none}
.leadership-page .topbar.scrolled{background:rgba(245,246,247,.68);border-bottom-color:rgba(23,27,32,.08);backdrop-filter:blur(16px)}
.leadership-page .topbar.scrolled .topbar-brand,.leadership-page .topbar.scrolled .topbar-nav a,.leadership-page .topbar.scrolled .topbar-nav a:nth-child(n+5){color:#11161c;text-shadow:none}
.leadership-page .topbar.scrolled .topbar-nav a.active{color:var(--lead-gold)}
.leadership-page .topbar-brand{color:#0f141a}
.leadership-page .topbar-nav a{color:#11161c;text-shadow:0 1px 18px rgba(255,255,255,.40)}
.leadership-page .topbar-nav a:nth-child(n+5){color:#fff;text-shadow:0 1px 18px rgba(0,0,0,.28)}
.leadership-page .topbar-nav a.active{color:#fff}
.leadership-page .topbar-nav a.active::after{content:"";display:block;width:100%;height:2px;margin-top:14px;background:var(--lead-gold)}
.leadership-menu-toggle{display:none}

.leadership-hero{position:relative;min-height:540px;padding-top:76px;overflow:hidden;background-color:transparent;background-image:url("../img/presidents/hero-presidents.png");background-repeat:no-repeat;background-size:cover;background-position:right center}
.leadership-hero-wash{position:absolute;inset:0;background:
  radial-gradient(circle at 78% 22%,rgba(18,21,26,.48) 0%,rgba(55,58,61,.34) 30%,rgba(55,58,61,0) 55%),
  linear-gradient(90deg,rgba(247,245,239,.96) 0%,rgba(244,241,234,.78) 35%,rgba(229,226,219,.36) 58%,rgba(37,40,44,.35) 100%)}
.leadership-hero-network{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden;opacity:.56}
.hero-route{position:absolute;display:block;border:1px solid rgba(200,138,22,.22);border-left:0;border-bottom:0;border-radius:50%;animation:leadershipRoutePulse 18s ease-in-out infinite}
.route-1{width:54vw;height:18vw;right:4%;top:18%;transform:rotate(-14deg);animation-duration:19s}
.route-2{width:46vw;height:16vw;right:10%;top:34%;transform:rotate(10deg);animation-duration:22s;animation-delay:-6s}
.route-3{width:38vw;height:12vw;right:18%;top:54%;transform:rotate(-4deg);animation-duration:17s;animation-delay:-10s}
.route-4{width:42vw;height:15vw;right:-4%;top:44%;transform:rotate(-19deg);animation-duration:21s;animation-delay:-3s}
.route-5{width:34vw;height:11vw;right:24%;top:25%;transform:rotate(20deg);animation-duration:16s;animation-delay:-8s}
.route-6{width:30vw;height:10vw;right:8%;top:66%;transform:rotate(8deg);animation-duration:20s;animation-delay:-12s}
.hero-dot{position:absolute;display:block;width:4px;height:4px;border-radius:50%;background:rgba(200,138,22,.78);box-shadow:0 0 8px rgba(200,138,22,.32);animation:leadershipDotDrift 15s ease-in-out infinite}
.dot-1{right:17%;top:20%;animation-duration:17s}.dot-2{right:31%;top:29%;animation-duration:20s;animation-delay:-4s}.dot-3{right:10%;top:38%;animation-duration:18s;animation-delay:-7s}.dot-4{right:42%;top:45%;animation-duration:22s;animation-delay:-9s}.dot-5{right:24%;top:58%;animation-duration:19s;animation-delay:-12s}.dot-6{right:7%;top:68%;animation-duration:16s;animation-delay:-5s}.dot-7{right:52%;top:34%;animation-duration:21s;animation-delay:-14s}.dot-8{right:36%;top:70%;animation-duration:18s;animation-delay:-2s}.dot-9{right:16%;top:78%;animation-duration:23s;animation-delay:-11s}.dot-10{right:58%;top:55%;animation-duration:17s;animation-delay:-15s}
@keyframes leadershipRoutePulse{0%,100%{opacity:.16}50%{opacity:.34}}
@keyframes leadershipDotDrift{0%,100%{opacity:.25;transform:translate3d(0,0,0) scale(.9)}45%{opacity:.9;transform:translate3d(-18px,10px,0) scale(1.08)}70%{opacity:.45;transform:translate3d(12px,-8px,0) scale(.96)}}
.leadership-hero-inner{position:relative;z-index:2;width:min(1320px,calc(100% - 96px));min-height:464px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 170px;align-items:center;gap:58px}
.leadership-hero-copy{max-width:670px;padding:68px 0 56px}
.leadership-eyebrow{margin:0 0 18px;color:rgba(255,255,255,.68);font-size:.78rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.leadership-hero .leadership-eyebrow{color:var(--lead-gold)}
.leadership-hero h1{margin:0;color:#171b20;font-size:clamp(3rem,5.2vw,5.15rem);font-weight:760;line-height:.98;letter-spacing:-.06em;text-shadow:0 1px 18px rgba(255,255,255,.46)}
.leadership-hero-copy>p:last-child{max-width:610px;margin:26px 0 0;color:rgba(23,27,32,.76);font-size:1.03rem;line-height:1.66;text-shadow:0 1px 18px rgba(255,255,255,.42)}
.leadership-stats{margin:0;padding:14px 0 14px 38px;border-left:1px solid rgba(255,255,255,.28)}
.leadership-stats div+div{margin-top:28px}
.leadership-stats dt{color:#171b20;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:3rem;line-height:.92;text-shadow:0 1px 18px rgba(255,255,255,.30)}
.leadership-stats dd{margin:8px 0 0;color:rgba(23,27,32,.70);font-size:.72rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;line-height:1.25}

.leadership-directory{padding:64px 0 76px;background:transparent}
.leadership-shell{width:min(1320px,calc(100% - 96px));margin:0 auto}
.directory-heading{margin-bottom:34px}
.directory-heading .leadership-eyebrow{color:var(--lead-gold)}
.directory-heading h2{margin:0;color:#171b20;font-size:clamp(2rem,3vw,3.2rem);line-height:1.04;letter-spacing:-.045em}

.leadership-stage{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 0;transition:grid-template-columns .34s cubic-bezier(.22,.8,.2,1)}
.leadership-stage.panel-open{grid-template-columns:minmax(0,3fr) minmax(320px,1fr);gap:28px}
.leadership-gallery-wrap{min-width:0}
.leadership-gallery{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:32px 26px}
.leadership-card{position:relative;min-width:0;border:0;background:transparent;padding:0;text-align:center;color:inherit;cursor:pointer;transition:transform .22s ease,opacity .22s ease}
.leadership-card:hover,.leadership-card.is-selected{transform:translateY(-4px)}
.leadership-card.is-selected::after{content:"";display:block;width:28px;height:1px;margin:12px auto 0;background:var(--lead-gold)}
.leadership-portrait{display:block;position:relative;width:min(86%,152px);aspect-ratio:1;margin:0 auto 16px;border-radius:50%;overflow:hidden;background:#565a60;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.leadership-portrait img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.08) brightness(.96)}
.leadership-card strong{display:block;color:#171b20;font-size:.96rem;font-weight:780;line-height:1.25}
.leadership-card .leadership-node{display:block;margin-top:6px;color:rgba(23,27,32,.58);font-size:.79rem;line-height:1.32}
.leadership-message{padding:60px 20px;text-align:center;color:rgba(23,27,32,.62)}

.leadership-panel{position:sticky;top:92px;align-self:start;width:100%;max-height:calc(100vh - 112px);border:1px solid rgba(255,255,255,.16);border-radius:22px;background:linear-gradient(160deg,#061b35 0%,#082443 46%,#12375c 78%,rgba(242,229,207,.92) 150%);box-shadow:0 24px 60px rgba(0,0,0,.24);opacity:0;visibility:hidden;transform:translateX(32px);transition:opacity .28s ease,transform .34s cubic-bezier(.22,.8,.2,1),visibility .28s ease;overflow:hidden}
.leadership-stage:not(.panel-open) .leadership-panel{height:0;max-height:0;min-height:0;border:0;box-shadow:none;pointer-events:none}
.leadership-stage.panel-open .leadership-panel{height:auto;max-height:calc(100vh - 112px);opacity:1;visibility:visible;transform:translateX(0)}
.panel-close{position:absolute;z-index:3;right:14px;top:12px;width:38px;height:38px;border:0;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:1.7rem;line-height:1;cursor:pointer}
.panel-scroll{max-height:calc(100vh - 112px);overflow:auto;padding:32px 30px 38px}
.panel-identity{display:grid;grid-template-columns:82px 1fr;gap:18px;align-items:end;padding-right:34px}
.panel-logo{width:82px;height:82px;object-fit:contain;border-radius:18px;background:#fff;padding:8px;border:1px solid rgba(255,255,255,.12)}
.panel-photo{width:100%;max-width:150px;aspect-ratio:1;border-radius:50%;object-fit:cover;background:#555;justify-self:end}
.leadership-panel h2{margin:24px 0 0;color:#fff;font-size:clamp(1.65rem,2.3vw,2.35rem);line-height:1.02;letter-spacing:-.04em}
.panel-node{margin:9px 0 0;color:rgba(255,255,255,.84);font-weight:780}
.panel-founded{margin:9px 0 0;color:var(--lead-gold);font-size:.82rem;font-weight:800;letter-spacing:.02em}
.panel-section{padding-top:23px;margin-top:23px;border-top:1px solid var(--lead-line)}
.panel-section h3,.panel-connect h3{margin:0 0 10px;color:#fff;font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.panel-section p{margin:0;color:rgba(255,255,255,.72);font-size:.9rem;line-height:1.68}
.panel-facts{margin:23px 0 0;padding-top:18px;border-top:1px solid var(--lead-line)}
.panel-facts div{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:7px 0}
.panel-facts dt{color:rgba(255,255,255,.52);font-size:.74rem}
.panel-facts dd{margin:0;color:rgba(255,255,255,.86);font-size:.82rem;font-weight:680;overflow-wrap:anywhere}
.panel-connect{margin-top:24px;padding-top:20px;border-top:1px solid var(--lead-line)}
.panel-socials{display:flex;flex-wrap:wrap;gap:10px}
.panel-socials a{display:inline-grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.16);border-radius:50%;color:#fff;background:rgba(255,255,255,.06);transition:transform .18s ease,background .18s ease,border-color .18s ease}
.panel-socials a:hover{transform:scale(1.08);background:rgba(255,255,255,.12);border-color:var(--lead-gold)}
.panel-socials svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.panel-sources{margin-top:22px;padding-top:18px;border-top:1px solid var(--lead-line)}
.panel-sources summary{cursor:pointer;color:rgba(255,255,255,.68);font-size:.78rem;font-weight:800}
.panel-sources a{display:block;margin-top:10px;color:#fff;font-size:.8rem;text-decoration:none}
.panel-sources a:hover{text-decoration:underline}

.leadership-closing{position:relative;margin-top:54px;padding:32px 42px;border:1px solid rgba(23,27,32,.10);border-radius:18px;background:linear-gradient(90deg,#f2e5cf 0%,#f6f1e8 42%,#eceeef 100%);box-shadow:0 16px 36px rgba(23,27,32,.08);overflow:hidden;color:#171b20}
.leadership-closing::after{content:"";position:absolute;right:4%;bottom:-34%;width:32%;min-width:240px;aspect-ratio:1;background:url("../img/logos/nodos/logo-nodos.png") center/contain no-repeat;opacity:.38;filter:grayscale(1) saturate(.35) contrast(.86);pointer-events:none}
.leadership-closing .leadership-eyebrow,.leadership-closing h2,.leadership-closing p:last-child{position:relative;z-index:1;max-width:62%}
.leadership-closing .leadership-eyebrow{color:var(--lead-gold)}
.leadership-closing h2{margin:0;color:#171b20;font-size:clamp(1.65rem,2.4vw,2.65rem);letter-spacing:-.045em;line-height:1.06}
.leadership-closing p:last-child{margin:12px 0 0;color:rgba(23,27,32,.68);line-height:1.58}

@media(max-width:1180px){
  .leadership-hero-inner,.leadership-shell{width:min(100% - 48px,1040px)}
  .leadership-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:900px){
  .leadership-menu-toggle{display:grid;gap:5px;width:44px;height:44px;padding:11px;border:1px solid rgba(255,255,255,.22);border-radius:8px;background:transparent}
  .leadership-menu-toggle span{height:2px;background:#fff}
  .leadership-page .topbar-nav{position:absolute;top:76px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:12px 24px 20px;background:rgba(4,17,34,.98)}
  .leadership-page .topbar-nav a,.leadership-page .topbar-nav a:nth-child(n+5){color:rgba(255,255,255,.88);text-shadow:none}
  .leadership-page .topbar-nav.is-open{display:flex}
  .leadership-hero-inner{grid-template-columns:1fr}
  .leadership-stats{display:flex;gap:36px;padding:0 0 42px;border-left:0}
  .leadership-stats div+div{margin-top:0}
  .leadership-stage,.leadership-stage.panel-open{display:block}
  .leadership-panel{position:fixed;z-index:200;inset:auto 0 0 0;max-height:min(82vh,760px);border-left:0;border-top:1px solid var(--lead-line);border-radius:20px 20px 0 0;transform:translateY(100%)}
  .leadership-stage:not(.panel-open) .leadership-panel{height:0;max-height:0;min-height:0;border:0;box-shadow:none;pointer-events:none}
  .leadership-stage.panel-open .leadership-panel{height:auto;max-height:min(82vh,760px);transform:translateY(0)}
}
@media(max-width:620px){
  .leadership-page .topbar{height:70px;padding:0 18px}
  .leadership-hero{padding-top:70px;min-height:610px}
  .leadership-hero-inner,.leadership-shell{width:calc(100% - 34px)}
  .leadership-hero-copy{padding:58px 0 30px}
  .leadership-hero h1{font-size:clamp(2.7rem,13vw,4rem)}
  .leadership-stats{gap:24px}
  .leadership-stats dt{font-size:2.2rem}
  .leadership-directory{padding-top:46px}
  .leadership-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 18px}
  .leadership-portrait{width:min(82%,132px)}
  .leadership-card strong{font-size:.9rem}
  .leadership-card .leadership-node{font-size:.74rem}
  .panel-scroll{padding:24px 20px 32px}
  .panel-identity{grid-template-columns:70px 1fr}
  .panel-logo{width:70px;height:70px}
  .panel-photo{max-width:126px}
  .leadership-closing{padding:30px 24px 138px}
  .leadership-closing .leadership-eyebrow,.leadership-closing h2,.leadership-closing p:last-child{max-width:100%}
  .leadership-closing::after{right:50%;bottom:-138px;width:280px;min-width:0;transform:translateX(50%);opacity:.34}
}
@media(prefers-reduced-motion:reduce){
  .leadership-stage,.leadership-panel,.leadership-card,.panel-socials a{transition:none!important}
  .hero-route,.hero-dot{animation:none!important}
  .leadership-hero-network{opacity:.32}
}
/* Ajustes finales de contraste y acento */
.directory-heading::after{content:"";display:block;width:56px;height:2px;margin-top:18px;background:var(--lead-gold);opacity:.9}
.leadership-card:hover strong,.leadership-card.is-selected strong{color:#171b20}
.leadership-card:hover .leadership-node,.leadership-card.is-selected .leadership-node{color:var(--lead-gold)}
