/* ESL · Athlete Hub — estilos de la ficha y del directorio.
   Todo va dentro de .eah y con el prefijo .eah para ganar a los estilos del tema y del kit de Elementor. Los colores leen los tokens de esl-mako-sync (--esl-*) cuando existen,
   así un cambio de marca en Elementor → Ajustes del sitio afecta a los dos módulos.
   Para desactivar esta hoja: add_filter( 'eah_load_css', '__return_false' ); */

.eah{
  --eah-abyss:var(--esl-navy-deep,#061a3a);
  --eah-navy:var(--esl-navy,#0d2d5e);
  --eah-bar:#1f3a68;
  --eah-orange:#ff8a00;
  --eah-orange-ink:#b85400;
  --eah-cyan:#00b4d8;
  --eah-green:#71c862;
  --eah-ice:#cbeff7;
  --eah-bg:#f5f7fa;
  --eah-line:var(--esl-line,#e2e8ef);
  --eah-grey:#5f6b7a;
  --eah-gold:#f2c94c;--eah-silver:#c9d1da;--eah-bronze:#d58b4f;
  --eah-r:14px;
  --eah-font:var(--esl-font,"Barlow",system-ui,sans-serif);
  --eah-font-display:var(--esl-font-display,"Barlow",system-ui,sans-serif);
  --eah-font-cond:var(--esl-font-cond,"Barlow Condensed","Barlow",system-ui,sans-serif);
  font-family:var(--eah-font);color:var(--eah-navy);line-height:1.5;box-sizing:border-box
}
.eah *,.eah *::before,.eah *::after{box-sizing:inherit}
.eah [hidden]{display:none !important}
.eah .eah-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.eah.eah-notice{padding:16px 20px;border-radius:var(--eah-r);background:var(--eah-bg);color:var(--eah-grey)}

/* chips */
.eah .eah-chips{display:flex;flex-wrap:wrap;gap:6px}
.eah .eah-chip{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:999px;font-weight:700;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;background:var(--eah-bg);color:var(--eah-navy);border:1px solid var(--eah-line);line-height:1;white-space:nowrap}
.eah .eah-chip-tech{background:var(--eah-orange);border-color:var(--eah-orange);color:var(--eah-abyss)}
.eah .eah-chip-ld{background:var(--eah-cyan);border-color:var(--eah-cyan);color:var(--eah-abyss)}
.eah .eah-chip-sprint{background:var(--eah-green);border-color:var(--eah-green);color:var(--eah-abyss)}
.eah .eah-chip-champ{background:var(--eah-orange);border-color:var(--eah-orange);color:var(--eah-abyss)}
.eah .eah-chip-sub{background:#e7f3fd;border-color:#e7f3fd;color:#12547d}

/* hero de la ficha */
.eah .eah-hero{background:var(--eah-abyss);color:#fff;border-radius:22px;padding:32px;margin-bottom:24px}
.eah .eah-hero .eah-chip{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.22);color:#fff}
.eah .eah-hero .eah-chip-sub{background:#e7f3fd;color:#12547d}
.eah .eah-name{font-family:var(--eah-font-display);font-weight:800;text-transform:uppercase;font-size:clamp(30px,4.6vw,60px);line-height:.95;margin:14px 0 16px;color:#fff}
.eah .eah-champ{display:inline-flex;align-items:center;gap:10px;margin:0 8px 16px 0;padding:8px 14px 8px 8px;border-radius:14px;background:var(--eah-ice);color:var(--eah-navy);font-weight:800;text-transform:uppercase;letter-spacing:.02em}
.eah .eah-champ-i{width:30px;height:30px;border-radius:9px;background:var(--eah-orange);color:var(--eah-abyss);display:inline-flex;align-items:center;justify-content:center}
.eah .eah-champ-i svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.eah .eah-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:8px 0 0;border-top:1px solid rgba(255,255,255,.18)}
.eah .eah-kpis div{padding:18px 16px 0 0}
.eah .eah-kpis div + div{padding-left:16px;border-left:1px solid rgba(255,255,255,.18)}
.eah .eah-kpis dd{margin:0;order:-1;font-family:var(--eah-font-display);font-weight:800;font-size:36px;line-height:1}
.eah .eah-kpis dd small{font-size:16px;color:var(--eah-orange);margin-right:2px}
.eah .eah-kpis dt{margin-top:8px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:12.5px;color:#c9d6e6}
.eah .eah-kpis div{display:flex;flex-direction:column}

/* barra de temporada */
.eah .eah-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin:0 0 22px}
.eah .eah-seg{display:inline-flex;gap:4px;padding:4px;border-radius:999px;background:var(--eah-bg);border:1px solid var(--eah-line);max-width:100%;overflow-x:auto}
.eah .eah-tab{height:40px;padding:0 18px;border-radius:999px;border:0;background:transparent;font:inherit;font-weight:700;font-size:15px;color:var(--eah-grey);cursor:pointer;white-space:nowrap}
.eah .eah-tab.is-on{background:var(--eah-navy);color:#fff}
.eah .eah-tab:focus-visible{outline:3px solid var(--eah-cyan);outline-offset:2px}
.eah .eah-src{margin:0;font-size:13.5px;color:var(--eah-grey)}

/* disciplinas */
.eah .eah-dcards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.eah .eah-dcard{position:relative;overflow:hidden;border:1px solid var(--eah-line);border-radius:var(--eah-r);background:#fff;padding:22px;display:flex;flex-direction:column;gap:10px}
.eah .eah-dcard::before{content:"";position:absolute;left:0;top:0;right:0;height:5px;background:var(--eah-orange)}
.eah .eah-dcard.eah-ld::before{background:var(--eah-cyan)}
.eah .eah-dcard.eah-sprint::before{background:var(--eah-green)}
.eah .eah-dtop{display:flex;justify-content:space-between;align-items:center}
.eah .eah-w{font-weight:700;font-size:13.5px;color:var(--eah-grey);letter-spacing:.06em}
.eah .eah-dname{font-size:18px}
.eah .eah-rk{display:flex;align-items:baseline;gap:12px}
.eah .eah-rk b{font-family:var(--eah-font-display);font-weight:800;font-size:50px;line-height:1}
.eah .eah-rk b small{font-size:20px;color:var(--eah-orange-ink)}
.eah .eah-rk span{font-weight:700;font-size:22px}
.eah .eah-rk span small{font-size:14px;color:var(--eah-grey);margin-left:3px}
.eah .eah-note{font-size:14.5px;color:var(--eah-grey)}
.eah .eah-meter{display:block;height:8px;border-radius:8px;background:var(--eah-bg);overflow:hidden}
.eah .eah-meter i{display:block;height:100%;border-radius:8px;background:var(--eah-orange)}
.eah .eah-ld .eah-meter i{background:var(--eah-cyan)}
.eah .eah-sprint .eah-meter i{background:var(--eah-green)}
.eah .eah-formula{margin-top:18px;padding:14px 18px;border-radius:var(--eah-r);background:var(--eah-bg);display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;font-size:15px}
.eah .eah-formula b{font-size:18px}

/* tabla prueba a prueba */
.eah .eah-h3{margin:40px 0 14px;font-size:24px;line-height:1.15}
.eah .eah-h3 span{display:block;font-weight:300;font-size:17px;color:var(--eah-grey)}
.eah .eah-table-wrap{border:1px solid var(--eah-line);border-radius:var(--eah-r);overflow:hidden}
.eah .eah-table{width:100%;border-collapse:collapse;font-size:15px;margin:0}
.eah .eah-table th{background:var(--eah-navy);color:#fff;text-align:left;font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:12.5px;padding:13px 16px;border:0}
.eah .eah-table td{padding:13px 16px;border:0;border-top:1px solid var(--eah-line);vertical-align:middle}
.eah .eah-table tbody tr:nth-child(even) td{background:#fafcfe}
.eah .eah-stp{font-family:var(--eah-font-display);font-weight:800;font-size:20px;color:var(--eah-orange-ink);width:64px}
.eah .eah-ev b{display:block}
.eah .eah-ev span{font-size:13px;color:var(--eah-grey)}
.eah .eah-res{display:inline-flex;align-items:center;gap:8px;font-weight:700}
.eah .eah-p{color:var(--eah-grey);font-weight:600}
.eah .eah-res.is-drop{opacity:.5;text-decoration:line-through}
.eah .eah-none{color:#9aa5b1}
.eah .eah-dns td{color:#9aa5b1}
.eah .eah-medal{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;color:var(--eah-abyss);text-decoration:none}
.eah .eah-m1{background:var(--eah-gold)}.eah .eah-m2{background:var(--eah-silver)}.eah .eah-m3{background:var(--eah-bronze)}
.eah .eah-legend{display:flex;flex-wrap:wrap;gap:18px;margin:12px 0 0;font-size:13.5px;color:var(--eah-grey)}
.eah .eah-legend > span{display:inline-flex;align-items:center;gap:6px}

/* directorio */
.eah .eah-filters{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px;border-radius:var(--eah-r);background:#fff;border:1px solid var(--eah-line);margin-bottom:28px}
.eah .eah-search{height:40px;min-width:260px;border-radius:999px;border:1px solid var(--eah-line);padding:0 16px;font:inherit;font-size:14.5px;color:var(--eah-navy)}
.eah .eah-group + .eah-group{margin-top:44px}
.eah .eah-group-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:10px;margin-bottom:18px;border-bottom:2px solid var(--eah-navy)}
.eah .eah-group-h h3{margin:0;font-family:var(--eah-font-display);font-weight:800;text-transform:uppercase;font-size:26px}
.eah .eah-group-h span{color:var(--eah-grey);font-size:14px}
.eah .eah-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.eah .eah-card{position:relative;display:block;aspect-ratio:4/5;border-radius:var(--eah-r);overflow:hidden;background:var(--eah-navy);color:#fff;text-decoration:none}
.eah .eah-card:hover,.eah .eah-card:focus{color:#fff}
.eah .eah-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,26,58,0) 45%,rgba(6,26,58,.92) 100%)}
.eah .eah-ph{position:absolute;inset:0;background-size:cover;background-position:center 18%;transition:transform .35s}
.eah a.eah-card:hover .eah-ph{transform:scale(1.04)}
.eah .eah-nophoto{background:var(--eah-abyss)}
.eah .eah-ph-sil{background-position:center 10%}
.eah .eah-bib{position:absolute;left:14px;top:10px;z-index:1;font-family:var(--eah-font-display);font-weight:800;font-size:42px;line-height:1;text-shadow:0 2px 18px rgba(6,26,58,.5)}
.eah .eah-bib small{font-size:17px;vertical-align:top}
.eah .eah-sub{position:absolute;right:12px;top:12px;z-index:1;height:24px;padding:0 9px;border-radius:999px;background:#e7f3fd;color:#12547d;font-weight:700;font-size:12px;display:inline-flex;align-items:center}
.eah .eah-pend{display:inline-block;margin-bottom:7px;padding:3px 8px;border-radius:6px;background:rgba(0,180,216,.16);border:1px solid rgba(0,180,216,.4);color:var(--eah-ice);font-family:var(--eah-font-cond);font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;line-height:1.25}
.eah .eah-bd{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:14px}
.eah .eah-nm{display:block;font-weight:800;font-size:17px;line-height:1.15;text-transform:uppercase}
.eah .eah-mt{display:flex;justify-content:space-between;margin-top:6px;font-weight:700;font-size:14px}

@media (max-width:1024px){
  .eah .eah-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:767px){
  .eah .eah-hero{padding:22px;border-radius:16px}
  .eah .eah-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .eah .eah-kpis div:nth-child(3){padding-left:0;border-left:0}
  .eah .eah-kpis dd{font-size:28px}
  .eah .eah-dcards{grid-template-columns:1fr}
  .eah .eah-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .eah .eah-bib{font-size:32px}
  .eah .eah-nm{font-size:14.5px}
  .eah .eah-search{min-width:0;width:100%}
  .eah .eah-table thead{display:none}
  .eah .eah-table,.eah .eah-table tbody,.eah .eah-table tr,.eah .eah-table td{display:block;width:100%}
  .eah .eah-table tr{border-top:1px solid var(--eah-line);padding:12px 14px}
  .eah .eah-table td{border:0;padding:4px 0;background:transparent !important}
  .eah .eah-table td[data-l]::before{content:attr(data-l);display:inline-block;width:120px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:11.5px;color:var(--eah-grey)}
}


/* ---------- 1.1.1: blindaje frente al tema (Hello Elementor) y al kit de Elementor ---------- */
.eah a.eah-card,.eah a.eah-card:visited,.eah a.eah-card:hover,.eah a.eah-card:focus{color:#fff;text-decoration:none}
.eah .eah-card .eah-bib,.eah .eah-card .eah-nm,.eah .eah-card .eah-mt{color:#fff}
.eah .eah-hero .eah-name{font-family:var(--eah-font-display);color:#fff;letter-spacing:0;font-weight:800;text-transform:uppercase;line-height:.95;font-size:clamp(30px,4.6vw,60px);margin:14px 0 16px}
.eah h3.eah-h3,.eah .eah-group-h h3{font-family:var(--eah-font);color:var(--eah-navy);font-weight:800;letter-spacing:0;text-transform:none}
.eah .eah-group-h h3{font-family:var(--eah-font-display);text-transform:uppercase}
.eah button.eah-tab,.eah button.eah-tab:hover,.eah button.eah-tab:focus{border:0;box-shadow:none;margin:0;line-height:1;letter-spacing:normal;text-transform:none;font-family:inherit;font-size:15px;font-weight:700;padding:0 18px;border-radius:999px;background:transparent;color:var(--eah-grey);text-decoration:none}
.eah button.eah-tab:hover{background:rgba(13,45,94,.07);color:var(--eah-navy)}
.eah button.eah-tab.is-on,.eah button.eah-tab.is-on:hover,.eah button.eah-tab.is-on:focus{background:var(--eah-navy);color:#fff}
.eah input.eah-search{width:auto;flex:1 1 260px;max-width:420px;margin:0;border:1px solid var(--eah-line);border-radius:999px;padding:0 16px;background:#fff;box-shadow:none}
.eah input.eah-search:focus{border-color:var(--eah-navy);outline:0}
.eah table.eah-table{margin:0;font-size:15px;border:0}
.eah table.eah-table th{border:0;vertical-align:middle;line-height:1.3}
.eah table.eah-table td{border:0;border-top:1px solid var(--eah-line);vertical-align:middle;line-height:1.4;background:#fff}
.eah table.eah-table tbody tr:nth-child(even) td{background:#fafcfe}
.eah table.eah-table tbody tr:hover td{background:#f3f7fb}
.eah table.eah-table tr.eah-dns td{color:#9aa5b1}
.eah dl,.eah dd,.eah dt{margin:0}
.eah p.eah-src,.eah p.eah-champ{margin-block:0}
.eah p.eah-champ{margin:0 8px 16px 0}

/* ---------- 1.2.0: misma ficha para todos — foto o silueta + bio en la cabecera ---------- */
.eah .eah-hero.has-photo{display:grid;grid-template-columns:minmax(220px,330px) minmax(0,1fr);gap:36px;align-items:start}
.eah .eah-hero-bd{min-width:0}
.eah .eah-hero-ph{position:relative;aspect-ratio:4/5;border-radius:16px;overflow:hidden;background-color:var(--eah-navy);background-size:cover;background-position:center 18%;box-shadow:0 22px 44px rgba(0,0,0,.35)}
.eah .eah-hero-ph.is-sil{background-position:center 10%}
.eah .eah-hero-ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,26,58,.25) 0%,rgba(6,26,58,0) 30%,rgba(6,26,58,0) 70%,rgba(6,26,58,.35) 100%);pointer-events:none}
.eah .eah-hero-bib{position:absolute;left:16px;top:10px;z-index:1;font-family:var(--eah-font-display);font-weight:800;font-size:60px;line-height:1;color:#fff;text-shadow:0 2px 18px rgba(6,26,58,.5)}
.eah .eah-hero-bib small{font-size:22px;vertical-align:top;color:var(--eah-orange)}
.eah .eah-hero-ph .eah-pend{position:absolute;left:14px;bottom:12px;z-index:1;margin:0}
.eah .eah-bio{margin:0 0 6px;max-width:780px}
.eah .eah-bio p{margin:0 0 12px;color:#c9d6e6;font-size:16.5px;line-height:1.6}
.eah .eah-hero .eah-chips{margin-top:2px}
@media (max-width:900px){
  .eah .eah-hero.has-photo{grid-template-columns:1fr;gap:22px}
  .eah .eah-hero-ph{width:100%;max-width:340px}
}
@media (max-width:767px){
  .eah .eah-hero-bib{font-size:46px}
  .eah .eah-bio p{font-size:15.5px}
}
/* la tabla no parte «1,000 pts» en dos líneas; en pantallas estrechas se desliza */
.eah .eah-table-wrap{overflow-x:auto}
.eah .eah-res{white-space:nowrap}

/* ---------- 1.3.0: elementos por idioma en plantillas (Polylang pone el lang del <html>) ----------
   En Elementor: Avanzado → Clases CSS → eah-only-en / eah-only-es */
html[lang^="es"] .eah-only-en,html:not([lang^="es"]) .eah-only-es{display:none !important}
