/* ============ TOKENS ============ */
:root{
  --bg:#0D1117;          /* carbón Improvia */
  --bg-2:#090C11;
  --ink:#F4EFE6;         /* hueso cálido */
  --ink-dim:#9AA4B3;     /* gris frío elegido */
  --ink-faint:#7C8798;   /* subido para pasar contraste AA en texto pequeño */
  --line:rgba(244,239,230,.13);
  --line-2:rgba(244,239,230,.07);
  --pill:#05070A;
  --surface:#12171F;
  --surface-2:#161C26;
  --accent:#1E90FF;      /* azul eléctrico Improvia — el acento fuerte */
  --accent-2:#4AA8FF;
  --accent-press:#1477E0;
  --gold:#ECC046;        /* premium */
  --live:#FF3B30;        /* punto en vivo / grabación */
  --bone:#F1EBDD;        /* sección invertida */
  --bone-ink:#0D1117;

  --mono:'Space Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --disp:'Red Hat Display',Helvetica,Arial,sans-serif;

  --pad:clamp(18px,4.5vw,64px);
  --maxw:1520px;
  --ease:cubic-bezier(.16,1,.3,1);
}

*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{
  background:var(--bg);color:var(--ink);
  font-family:var(--disp);font-weight:500;
  line-height:1.4;letter-spacing:-.01em;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
body::before{ /* grano/atmósfera sutil */
  content:"";position:fixed;inset:0;pointer-events:none;z-index:1;
  background:
    radial-gradient(1100px 600px at 82% -8%,rgba(30,144,255,.10),transparent 60%),
    radial-gradient(900px 700px at -10% 108%,rgba(30,144,255,.06),transparent 60%);
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
::selection{background:var(--accent);color:#fff}

.mono{font-family:var(--mono);font-weight:400;text-transform:uppercase;letter-spacing:.02em}
.eyebrow{
  font-family:var(--mono);font-weight:400;font-size:clamp(10px,1.05vw,12.5px);
  text-transform:uppercase;letter-spacing:.06em;color:var(--accent-2);
}
.eyebrow.dim{color:var(--ink-dim)}

/* ============ HEADER (píldoras flotantes) ============ */
.topbar{
  position:fixed;top:clamp(12px,1.6vw,20px);left:0;right:0;z-index:40;
  display:flex;align-items:flex-start;justify-content:center;gap:14px;
  padding:0 var(--pad);pointer-events:none;
}
.pill{
  pointer-events:auto;background:var(--pill);
  border:1px solid var(--line);border-radius:14px;
  backdrop-filter:blur(10px);
}
.nav{
  width:min(600px,74vw);height:56px;
  display:flex;align-items:center;gap:12px;
  padding:0 12px 0 14px;
}
.brand{display:flex;align-items:center;gap:9px;flex-shrink:0}
.brand .mark{width:30px;height:30px;border-radius:8px;background:var(--ink);
  display:grid;place-items:center;flex-shrink:0}
.brand .mark svg{height:19px;width:auto;display:block}
.brand .wm{font-family:var(--disp);font-weight:800;font-size:15px;letter-spacing:-.02em;
  text-transform:lowercase}
.nav__tag{
  flex:1;min-width:0;font-family:var(--mono);font-weight:400;font-size:10.5px;
  text-transform:uppercase;letter-spacing:.04em;color:var(--ink);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;
}
.nav__login{
  font-family:var(--mono);font-weight:400;font-size:11px;text-transform:uppercase;letter-spacing:.04em;
  color:var(--ink);border:1px solid var(--line);border-radius:9px;padding:8px 13px;white-space:nowrap;
  flex-shrink:0;margin-left:auto;transition:border-color .25s,background .25s,color .25s;
}
.nav__login:hover{border-color:var(--accent);color:var(--accent-2);background:rgba(30,144,255,.06)}
.nav__menu{
  width:34px;height:34px;border:0;background:transparent;cursor:pointer;flex-shrink:0;
  display:grid;gap:5px;align-content:center;justify-items:end;
}
.nav__menu span{display:block;height:1.6px;width:20px;background:var(--ink);transition:.3s var(--ease)}
.nav__menu span:last-child{width:13px}
.nav__menu:hover span:last-child{width:20px}

.founder{
  height:56px;display:flex;align-items:center;gap:10px;padding:0 16px 0 8px;
  transition:border-color .3s,transform .3s var(--ease);
}
.founder:hover{border-color:rgba(30,144,255,.5);transform:translateY(-1px)}
.founder__ava{
  width:40px;height:40px;border-radius:9px;flex-shrink:0;
  background:linear-gradient(150deg,#1c2836,#0c1118);
  border:1px solid var(--line);
  display:grid;place-items:center;font-family:var(--disp);font-weight:800;font-size:16px;color:var(--ink);
  position:relative;overflow:hidden;
}
.founder__ava::after{content:"";position:absolute;right:5px;bottom:5px;width:7px;height:7px;
  border-radius:50%;background:#2ECC71;box-shadow:0 0 0 2px var(--pill)}
.founder__ava svg{width:23px;height:23px;display:block}
.founder__label{font-family:var(--mono);font-weight:400;font-size:10.5px;text-transform:uppercase;
  letter-spacing:.04em;white-space:nowrap}
@media(max-width:900px){
  .founder__label{display:none}
  .founder{padding:0 8px}
  .nav{width:auto;flex:1}
}
@media(max-width:820px){
  .nav__tag{display:none}
}
@media(max-width:460px){
  .nav__login{padding:7px 10px;font-size:10px}
  .nav{gap:8px;padding:0 10px 0 12px}
}

/* ============ STATUS BAR (barra de estado fija) ============ */
.statusbar{
  position:fixed;left:0;right:0;bottom:0;z-index:35;
  height:44px;display:flex;align-items:center;gap:clamp(16px,3vw,48px);
  padding:0 var(--pad);
  font-family:var(--mono);font-weight:400;font-size:11px;text-transform:uppercase;letter-spacing:.03em;
  color:var(--ink-dim);
  background:linear-gradient(to top,var(--bg) 55%,rgba(13,17,23,0));
  border-top:1px solid var(--line-2);
}
.statusbar .sb-hide-sm{}
.statusbar b{color:var(--accent-2);font-weight:400}
.statusbar .grow{flex:1}
.clock{color:var(--ink);font-variant-numeric:tabular-nums}
.clock .dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--live);
  margin:0 6px -1px 2px;animation:pulse 1.4s var(--ease) infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.25}}
.lock{display:inline-flex;align-items:center;gap:7px;color:var(--ink)}
.lock svg{width:12px;height:12px}
@media(max-width:1180px){ .sb-hide-md{display:none} }
@media(max-width:720px){
  .statusbar{gap:16px;font-size:10px;justify-content:space-between}
  .sb-hide-sm{display:none}
}

/* ============ LAYOUT ============ */
main{position:relative;z-index:2}
section{padding-left:var(--pad);padding-right:var(--pad)}
.section-head{max-width:var(--maxw);margin:0 auto;padding-bottom:clamp(28px,4vw,56px)}
.section-title{
  font-family:var(--disp);font-weight:800;
  font-size:clamp(1.9rem,5.2vw,4.4rem);line-height:.94;letter-spacing:-.03em;
  text-transform:uppercase;text-wrap:balance;max-width:16ch;
}
.rule{max-width:var(--maxw);margin:0 auto;height:1px;background:var(--line)}

/* ============ HERO ============ */
.hero{
  min-height:100svh;max-width:var(--maxw);margin:0 auto;
  display:flex;flex-direction:column;justify-content:flex-end;
  padding-top:clamp(120px,16vh,190px);padding-bottom:clamp(84px,12vh,120px);
  position:relative;
}
.hero .eyebrow{margin-bottom:clamp(16px,2vw,26px)}
.hero__title{
  font-family:var(--disp);font-weight:900;
  font-size:clamp(2.7rem,8.9vw,9rem);line-height:.83;letter-spacing:-.035em;
  text-transform:uppercase;text-wrap:balance;max-width:15ch;
}
.hero__title .hl{color:var(--accent);-webkit-text-fill-color:var(--accent)}
.hero__meta{
  display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap;
  margin-top:clamp(30px,5vw,66px);
}
.hero__cta{display:flex;gap:12px;flex-wrap:wrap}
.hero__lede{
  font-family:var(--disp);font-weight:500;color:var(--ink-dim);
  font-size:clamp(1rem,1.5vw,1.35rem);line-height:1.45;max-width:40ch;letter-spacing:-.01em;
}
.hero__lede b{color:var(--ink);font-weight:700}
@media(max-width:820px){
  .hero{justify-content:flex-end}
  .hero__meta{flex-direction:column;align-items:flex-start;gap:26px}
  .hero__lede{order:-1}
}

/* ============ BOTONES ============ */
.btn{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--mono);font-weight:400;font-size:12.5px;text-transform:uppercase;letter-spacing:.04em;
  padding:15px 22px;border-radius:12px;border:1px solid transparent;cursor:pointer;
  transition:transform .25s var(--ease),background .25s,border-color .25s,color .25s;white-space:nowrap;
}
.btn span{transition:transform .3s var(--ease)}
.btn--primary{background:var(--accent);color:#fff}
.btn--primary:hover{background:var(--accent-press);transform:translateY(-2px)}
.btn--primary:hover span{transform:translateX(5px)}
.btn--ghost{border-color:var(--line);color:var(--ink)}
.btn--ghost:hover{border-color:var(--ink);transform:translateY(-2px)}
.btn--dark{background:var(--bone-ink);color:var(--bone)}
.btn--dark:hover{transform:translateY(-2px);background:#000}
.btn--big{padding:19px 30px;font-size:13.5px}

/* ============ CÓMO FUNCIONA (filas expandibles) ============ */
.rows{padding-top:clamp(70px,10vw,140px);padding-bottom:clamp(20px,4vw,40px)}
.rowlist{max-width:var(--maxw);margin:0 auto;border-top:1px solid var(--line)}
.row{border-bottom:1px solid var(--line)}
.row__head{
  display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:clamp(14px,3vw,42px);
  padding:clamp(22px,3vw,38px) 0;cursor:pointer;
}
.row__no{font-family:var(--mono);font-size:12px;color:var(--accent-2);align-self:start;padding-top:.5em}
.row__title{
  font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:-.025em;
  font-size:clamp(1.5rem,3.8vw,3rem);line-height:.98;transition:color .3s;
}
.row:hover .row__title{color:var(--ink)}
.row__tags{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;max-width:280px}
.tag{
  font-family:var(--mono);font-weight:400;font-size:10px;text-transform:uppercase;letter-spacing:.05em;
  color:var(--ink-dim);border:1px solid var(--line);border-radius:999px;padding:6px 11px;white-space:nowrap;
}
.row__toggle{
  width:44px;height:44px;border-radius:50%;border:1px solid var(--line);flex-shrink:0;
  display:grid;place-items:center;position:relative;transition:.3s var(--ease);
}
.row__toggle::before,.row__toggle::after{content:"";position:absolute;background:var(--ink);transition:.35s var(--ease)}
.row__toggle::before{width:14px;height:1.6px}
.row__toggle::after{width:1.6px;height:14px}
.row.open .row__toggle{background:var(--accent);border-color:var(--accent)}
.row.open .row__toggle::before,.row.open .row__toggle::after{background:#fff}
.row.open .row__toggle::after{transform:rotate(90deg);opacity:0}
.row__body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--ease)}
.row.open .row__body{grid-template-rows:1fr}
.row__inner{overflow:hidden}
.row__text{
  max-width:60ch;color:var(--ink-dim);font-size:clamp(1rem,1.4vw,1.22rem);line-height:1.5;
  padding:2px 0 clamp(26px,3vw,40px) 0;
}
.row__text b{color:var(--ink);font-weight:700}
@media(max-width:820px){
  .row__head{grid-template-columns:auto 1fr auto;gap:14px}
  .row__tags{display:none}
}

/* ============ QUÉ RECIBES (pilares) ============ */
.pillars{padding-top:clamp(70px,10vw,140px);padding-bottom:clamp(40px,6vw,80px)}
.pillar-grid{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
  background:var(--line);border:1px solid var(--line);border-radius:20px;overflow:hidden}
.pillar{background:var(--bg);padding:clamp(26px,2.6vw,42px);display:flex;flex-direction:column;gap:18px;
  transition:background .4s}
.pillar:hover{background:var(--surface)}
.pillar__no{font-family:var(--mono);font-size:11px;color:var(--ink-faint)}
.pillar h3{font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:-.02em;
  font-size:clamp(1.35rem,2.2vw,1.9rem);line-height:1;margin-top:2px}
.pillar p{color:var(--ink-dim);font-size:1rem;line-height:1.5;max-width:34ch}
.pillar ul{list-style:none;display:flex;flex-direction:column;gap:9px;margin-top:auto;padding-top:16px;
  border-top:1px solid var(--line-2)}
.pillar li{font-family:var(--mono);font-weight:400;font-size:11.5px;text-transform:uppercase;letter-spacing:.02em;
  color:var(--ink);display:flex;gap:10px;align-items:baseline}
.pillar li::before{content:"›";color:var(--accent);font-family:var(--disp);font-weight:700}
@media(max-width:900px){.pillar-grid{grid-template-columns:1fr}}

/* ============ FUNDADOR ============ */
.founder-sec{padding-top:clamp(70px,10vw,140px);padding-bottom:clamp(70px,10vw,140px)}
.founder-wrap{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(30px,5vw,80px);align-items:center}
.founder-quote{
  font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:-.03em;
  font-size:clamp(1.7rem,3.7vw,3.3rem);line-height:1.02;text-wrap:balance;
}
.founder-quote em{font-style:normal;color:var(--accent)}
.founder-card{
  background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:clamp(24px,2.4vw,34px);
  display:flex;flex-direction:column;gap:18px;
}
.founder-card .who{display:flex;align-items:center;gap:16px}
.founder-card .photo{
  width:64px;height:64px;border-radius:14px;flex-shrink:0;
  background:linear-gradient(150deg,#22303f,#0c1219);border:1px solid var(--line);
  display:grid;place-items:center;font-family:var(--disp);font-weight:800;font-size:24px;
}
.founder-card .who b{display:block;font-family:var(--disp);font-weight:800;font-size:1.15rem;letter-spacing:-.01em}
.founder-card .who span{font-family:var(--mono);font-size:11px;text-transform:uppercase;color:var(--ink-dim);letter-spacing:.03em}
.founder-card p{color:var(--ink-dim);line-height:1.55;font-size:1.02rem}
.founder-card p b{color:var(--ink);font-weight:700}
.creds{display:flex;flex-wrap:wrap;gap:8px}
@media(max-width:820px){.founder-wrap{grid-template-columns:1fr;gap:30px}}

/* ============ ANCLA DE PRECIO (sección invertida) ============ */
.anchor{background:var(--bone);color:var(--bone-ink);border-radius:clamp(20px,3vw,36px);
  max-width:calc(var(--maxw) + var(--pad)*2);margin:0 auto;
  padding:clamp(48px,7vw,110px) clamp(26px,5vw,90px)}
.anchor-inner{max-width:var(--maxw);margin:0 auto}
.anchor .eyebrow{color:#0d1117;opacity:.7}
.anchor h2{
  font-family:var(--disp);font-weight:900;text-transform:uppercase;letter-spacing:-.035em;
  font-size:clamp(2rem,5.6vw,5rem);line-height:.9;text-wrap:balance;max-width:18ch;margin:clamp(18px,2vw,26px) 0 0;
}
.anchor h2 .strike{position:relative;color:#0d1117;opacity:.32}
.anchor h2 .strike::after{content:"";position:absolute;left:-2%;right:-2%;top:52%;height:.09em;background:var(--live);transform:rotate(-4deg)}
.anchor h2 em{font-style:normal;color:var(--accent)}
.anchor-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;flex-wrap:wrap;margin-top:clamp(34px,4vw,58px)}
.guarantee{display:flex;align-items:center;gap:14px;max-width:44ch}
.guarantee .badge{width:52px;height:52px;border-radius:50%;border:1.5px solid var(--bone-ink);flex-shrink:0;
  display:grid;place-items:center;font-family:var(--mono);font-weight:700;font-size:11px;text-align:center;line-height:1}
.guarantee p{font-size:1rem;line-height:1.4}.guarantee p b{font-weight:700}

/* ============ CTA CIERRE ============ */
.cta{padding-top:clamp(80px,12vw,170px);padding-bottom:clamp(90px,12vw,180px);text-align:center}
.cta-inner{max-width:1100px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:clamp(22px,3vw,38px)}
.cta h2{
  font-family:var(--disp);font-weight:900;text-transform:uppercase;letter-spacing:-.04em;
  font-size:clamp(2.8rem,11vw,10rem);line-height:.82;text-wrap:balance;
}
.cta h2 .hl{color:var(--accent)}
.cta p{color:var(--ink-dim);font-size:clamp(1.05rem,1.6vw,1.35rem);max-width:46ch;line-height:1.5}
.cta .btn-row{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}

/* ============ FOOTER ============ */
footer{border-top:1px solid var(--line);padding:clamp(40px,5vw,70px) var(--pad) 90px}
.foot-wrap{max-width:var(--maxw);margin:0 auto;display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;align-items:flex-start}
.foot-brand{font-family:var(--disp);font-weight:900;font-size:clamp(2.4rem,7vw,5.5rem);text-transform:lowercase;letter-spacing:-.04em;line-height:.85}
.foot-links{display:flex;gap:clamp(30px,6vw,90px);flex-wrap:wrap}
.foot-col{display:flex;flex-direction:column;gap:12px}
.foot-col span{font-family:var(--mono);font-size:10px;text-transform:uppercase;color:var(--ink-faint);letter-spacing:.06em;margin-bottom:4px}
.foot-col a{font-family:var(--mono);font-size:12px;text-transform:uppercase;color:var(--ink-dim);letter-spacing:.02em;transition:color .2s}
.foot-col a:hover{color:var(--accent-2)}
.foot-legal{max-width:var(--maxw);margin:clamp(40px,5vw,70px) auto 0;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;
  font-family:var(--mono);font-size:10.5px;text-transform:uppercase;color:var(--ink-faint);letter-spacing:.03em}

/* reveal (progressive enhancement: solo se oculta si hay JS) */
html.js .reveal{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
html.js .reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition-duration:.001ms!important}
  html.js .reveal{opacity:1;transform:none}
}

/* ============================================================
   NAV OVERLAY (menú a pantalla completa) — chrome compartido
   ============================================================ */
html.nav-open{overflow:hidden}
.navmenu{
  position:fixed;inset:0;z-index:60;background:var(--bg-2);
  display:flex;flex-direction:column;padding:clamp(12px,1.6vw,20px) var(--pad) var(--pad);
  opacity:0;visibility:hidden;transition:opacity .45s var(--ease),visibility .45s;
}
.navmenu.open{opacity:1;visibility:visible}
.navmenu::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(900px 500px at 85% 0%,rgba(30,144,255,.12),transparent 60%)}
.navmenu__bar{position:relative;z-index:2;height:56px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
.navmenu__close{
  width:46px;height:46px;border-radius:12px;border:1px solid var(--line);background:transparent;cursor:pointer;
  display:grid;place-items:center;position:relative;transition:.3s var(--ease)}
.navmenu__close:hover{border-color:var(--ink);transform:rotate(90deg)}
.navmenu__close::before,.navmenu__close::after{content:"";position:absolute;width:17px;height:1.7px;background:var(--ink)}
.navmenu__close::before{transform:rotate(45deg)}.navmenu__close::after{transform:rotate(-45deg)}
.navmenu__eyebrow{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-dim)}
.navmenu__links{position:relative;z-index:2;flex:1;display:flex;flex-direction:column;justify-content:center;
  gap:clamp(4px,1vw,10px);max-width:var(--maxw);margin:0 auto;width:100%}
.navmenu__link{
  font-family:var(--disp);font-weight:900;text-transform:uppercase;letter-spacing:-.035em;line-height:.98;
  font-size:clamp(2.4rem,8.5vw,6.2rem);color:var(--ink);
  display:flex;align-items:baseline;gap:clamp(12px,2vw,28px);width:fit-content;
  transition:color .3s,transform .45s var(--ease);
  opacity:0;transform:translateY(24px);
}
.navmenu.open .navmenu__link{opacity:1;transform:none;transition:color .3s,opacity .6s var(--ease) var(--d,0s),transform .6s var(--ease) var(--d,0s)}
.navmenu__link:hover{color:var(--accent);transform:translateX(14px)}
.navmenu__link .idx{font-family:var(--mono);font-weight:400;font-size:clamp(11px,1.1vw,14px);color:var(--ink-faint);align-self:flex-start;padding-top:.4em}
.navmenu__link[aria-current="page"]{color:var(--accent)}
.navmenu__link[aria-current="page"] .idx{color:var(--accent-2)}
.navmenu__foot{position:relative;z-index:2;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;align-items:flex-end;
  max-width:var(--maxw);margin:0 auto;width:100%;padding-top:clamp(16px,2vw,26px);border-top:1px solid var(--line)}
.navmenu__foot .col{display:flex;flex-direction:column;gap:8px}
.navmenu__foot .col span{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint)}
.navmenu__foot .col a{font-family:var(--mono);font-size:12.5px;text-transform:uppercase;letter-spacing:.02em;color:var(--ink-dim);transition:color .2s}
.navmenu__foot .col a:hover{color:var(--accent-2)}
@media(prefers-reduced-motion:reduce){
  .navmenu__link{opacity:1!important;transform:none!important}
}

/* enlaces del footer activos */
.foot-col a[aria-current="page"]{color:var(--accent-2)}

/* ============================================================
   COMPONENTES — página Jugadores (y reutilizables)
   ============================================================ */
.sec{padding-top:clamp(70px,10vw,140px);padding-bottom:clamp(20px,3vw,40px)}
.sec--tight{padding-top:clamp(40px,6vw,80px)}

/* split texto + visual */
.split{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,72px);align-items:center}
.split__body .eyebrow{margin-bottom:16px}
.split__body p.lead{color:var(--ink-dim);font-size:clamp(1.02rem,1.4vw,1.22rem);line-height:1.55;max-width:44ch;margin-top:18px}
.split__body p.lead b{color:var(--ink);font-weight:700}
@media(max-width:900px){.split{grid-template-columns:1fr;gap:34px}.split--rev .split__media{order:-1}}

/* FICHA CARD */
.fichacard{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:clamp(20px,2.2vw,30px);display:flex;flex-direction:column;gap:20px;position:relative;overflow:hidden}
.fichacard::before{content:"";position:absolute;inset:0;background:radial-gradient(460px 280px at 100% 0,rgba(30,144,255,.12),transparent 60%);pointer-events:none}
.fichacard__head{display:flex;align-items:center;gap:13px;position:relative;z-index:1}
.fichacard__ava{width:50px;height:50px;border-radius:12px;background:linear-gradient(150deg,#22303f,#0c1219);border:1px solid var(--line);display:grid;place-items:center;font-family:var(--disp);font-weight:800;font-size:19px;flex-shrink:0}
.fichacard__id b{font-family:var(--disp);font-weight:800;font-size:1.08rem;display:block;letter-spacing:-.01em}
.fichacard__id span{font-family:var(--mono);font-size:10px;text-transform:uppercase;color:var(--ink-dim);letter-spacing:.04em}
.fichacard__badge{margin-left:auto;font-family:var(--mono);font-size:10px;color:var(--gold);border:1px solid rgba(236,192,70,.4);border-radius:999px;padding:5px 10px;text-transform:uppercase;letter-spacing:.05em}
.fichacard__grid{display:grid;grid-template-columns:1.05fr 1fr;gap:16px;position:relative;z-index:1;align-items:center}
.radar{width:100%;height:auto;display:block;overflow:visible}
.radar .ring{fill:none;stroke:var(--line);stroke-width:.6}
.radar .spoke{stroke:var(--line-2);stroke-width:.6}
.radar .area{fill:rgba(30,144,255,.20);stroke:var(--accent);stroke-width:1.4;stroke-linejoin:round}
.radar .dot{fill:var(--accent-2)}
.radar text{font-family:var(--mono);font-size:6.4px;fill:var(--ink-dim);letter-spacing:.02em}
.ficha-stats{display:flex;flex-direction:column;gap:11px;justify-content:center}
.ficha-stat .lab{font-family:var(--mono);font-size:9.5px;text-transform:uppercase;color:var(--ink-dim);letter-spacing:.03em;display:flex;justify-content:space-between;margin-bottom:5px}
.ficha-stat .lab b{color:var(--ink);font-weight:400}
.ficha-bar{height:5px;border-radius:3px;background:var(--line)}
.ficha-bar i{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,var(--accent),var(--accent-2))}
.fichacard__foot{position:relative;z-index:1;display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid var(--line-2);padding-top:15px}

/* HEATMAP mini pitch */
.pitchwrap{display:flex;flex-direction:column;gap:10px}
.pitchwrap .cap{font-family:var(--mono);font-size:10px;text-transform:uppercase;color:var(--ink-dim);letter-spacing:.04em}
.pitch{position:relative;aspect-ratio:68/44;border:1px solid var(--line);border-radius:10px;background:#0a0f16;overflow:hidden}
.pitch svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.pitch .lines{stroke:rgba(244,239,230,.14);stroke-width:.4;fill:none}

/* LEAD band + form */
.leadband{max-width:var(--maxw);margin:0 auto;background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:clamp(26px,3.4vw,48px);display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,56px);align-items:center;position:relative;overflow:hidden}
.leadband::before{content:"";position:absolute;inset:0;background:radial-gradient(600px 340px at 0 100%,rgba(30,144,255,.10),transparent 60%);pointer-events:none}
.leadband>*{position:relative;z-index:1}
.leadband h2{font-family:var(--disp);font-weight:900;text-transform:uppercase;letter-spacing:-.03em;font-size:clamp(1.7rem,3.2vw,2.7rem);line-height:.96;text-wrap:balance}
.leadband p{color:var(--ink-dim);margin-top:14px;line-height:1.5;max-width:38ch}
@media(max-width:820px){.leadband{grid-template-columns:1fr;gap:26px}}
.leadform{display:flex;flex-direction:column;gap:12px}
.leadform .row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.field{display:flex;flex-direction:column;gap:6px}
.field label{font-family:var(--mono);font-size:10px;text-transform:uppercase;color:var(--ink-dim);letter-spacing:.05em}
.field input,.field select{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:13px 14px;color:var(--ink);font-family:var(--disp);font-size:1rem;transition:border-color .2s;width:100%}
.field input::placeholder{color:var(--ink-faint)}
.field input:focus,.field select:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}
.leadform .btn{justify-content:center;margin-top:4px}
.leadnote{font-family:var(--mono);font-size:10px;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.03em;text-align:center;margin-top:2px}

/* PADRES band */
.parents{max-width:var(--maxw);margin:0 auto;border:1px solid var(--line);border-radius:22px;padding:clamp(26px,3.4vw,48px);display:grid;grid-template-columns:auto 1fr;gap:clamp(22px,3vw,44px);align-items:center;background:linear-gradient(180deg,rgba(30,144,255,.05),transparent)}
.parents__icon{width:64px;height:64px;border-radius:16px;border:1px solid var(--line);display:grid;place-items:center;background:var(--surface);flex-shrink:0}
.parents__icon svg{width:30px;height:30px}
.parents h2,.parents h3{font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:-.02em;font-size:clamp(1.4rem,2.4vw,2rem);line-height:1}
.parents p{color:var(--ink-dim);line-height:1.55;margin-top:12px;max-width:70ch}
.parents p b{color:var(--ink);font-weight:700}
@media(max-width:640px){.parents{grid-template-columns:1fr}}

/* FACTS strip */
.facts{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden}
.fact{background:var(--bg);padding:clamp(20px,2.4vw,32px);display:flex;flex-direction:column;gap:8px}
.fact b{font-family:var(--disp);font-weight:900;font-size:clamp(1.9rem,3.4vw,2.8rem);letter-spacing:-.03em;line-height:1;color:var(--ink)}
.fact b .u{color:var(--accent)}
.fact span{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;color:var(--ink-dim);letter-spacing:.03em}
@media(max-width:760px){.facts{grid-template-columns:1fr 1fr}}

/* precio destacado */
.pricecard{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:20px;overflow:hidden}
.pricecol{background:var(--bg);padding:clamp(26px,3vw,44px);display:flex;flex-direction:column;gap:16px}
.pricecol--hi{background:var(--surface)}
.pricecol .plabel{font-family:var(--mono);font-size:11px;text-transform:uppercase;color:var(--ink-dim);letter-spacing:.05em}
.pricecol .amt{font-family:var(--disp);font-weight:900;font-size:clamp(2.4rem,5vw,4rem);letter-spacing:-.03em;line-height:.9}
.pricecol .amt small{font-size:.34em;font-weight:700;color:var(--ink-dim);letter-spacing:0}
.pricecol ul{list-style:none;display:flex;flex-direction:column;gap:10px;margin-top:4px}
.pricecol li{font-size:.98rem;color:var(--ink-dim);display:flex;gap:10px;align-items:baseline;line-height:1.4}
.pricecol li::before{content:"✓";color:var(--accent);font-weight:700}
.pricecol .amt.old{color:var(--ink-faint)}
.pricecol .amt.old s{text-decoration-color:var(--live);text-decoration-thickness:.06em}
@media(max-width:760px){.pricecard{grid-template-columns:1fr}}

/* ============================================================
   PIZARRA TÁCTICA (elemento de fútbol, sustituye bloque personal)
   ============================================================ */
.tacticalboard{position:relative;aspect-ratio:100/64;border:1px solid var(--line);border-radius:16px;
  background:radial-gradient(130% 130% at 50% 0,#0e151f,#080b11);overflow:hidden}
.tacticalboard::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(90deg,transparent 0 11px,rgba(255,255,255,.012) 11px 22px)}
.tacticalboard svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.tb-line{stroke:rgba(244,239,230,.16);stroke-width:.35;fill:none}
.tb-arrow{stroke:var(--accent);stroke-width:.9;fill:none}
.tb-run{stroke:var(--gold);stroke-width:.7;stroke-dasharray:1.8 1.6;fill:none}
.tb-o{fill:var(--accent)}
.tb-x{fill:#8792a3}
.tb-spot{fill:rgba(236,192,70,.10);stroke:var(--gold);stroke-width:.6}
.tb-tag{font-family:var(--mono);font-size:2.7px;fill:var(--ink-dim);text-transform:uppercase;letter-spacing:.06em}

/* indicador de idioma actual (no es enlace) */
.navmenu__foot .col .lang-cur{font-family:var(--mono);font-size:12.5px;text-transform:uppercase;letter-spacing:.02em;color:var(--accent-2)}

/* ============================================================
   PÁGINAS LEGALES (layout de lectura)
   ============================================================ */
.legalwrap{max-width:840px;margin:0 auto;padding-top:clamp(120px,15vh,180px);padding-bottom:clamp(80px,10vw,140px)}
.legal-hero{margin-bottom:clamp(20px,2.5vw,30px)}
.legal-title{font-family:var(--disp);font-weight:900;text-transform:uppercase;letter-spacing:-.03em;
  font-size:clamp(2.2rem,6vw,4rem);line-height:.9;margin-top:12px}
.legal-updated{font-family:var(--mono);font-size:11px;text-transform:uppercase;color:var(--ink-dim);letter-spacing:.03em;margin-top:16px}
.draftnote{font-family:var(--mono);font-size:12px;line-height:1.55;color:var(--gold);
  border:1px solid rgba(236,192,70,.35);background:rgba(236,192,70,.06);border-radius:12px;
  padding:14px 16px;margin-bottom:clamp(28px,4vw,48px)}
.legal{color:var(--ink-dim);font-size:1.05rem;line-height:1.65}
.legal h2{font-family:var(--disp);font-weight:800;color:var(--ink);text-transform:uppercase;letter-spacing:-.02em;
  font-size:clamp(1.3rem,2.4vw,1.7rem);line-height:1.12;margin:clamp(30px,4vw,48px) 0 14px}
.legal h3{font-family:var(--disp);font-weight:700;color:var(--ink);font-size:1.12rem;margin:24px 0 10px}
.legal p{margin-bottom:14px}
.legal ul{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:9px}
.legal li{padding-left:20px;position:relative}
.legal li::before{content:"—";position:absolute;left:0;color:var(--accent)}
.legal a{color:var(--accent-2)}
.legal strong,.legal b{color:var(--ink);font-weight:700}
.legal .ph{color:var(--gold);font-family:var(--mono);font-size:.86em;letter-spacing:.02em}
.legal .toc{border:1px solid var(--line);border-radius:14px;padding:20px 22px;margin-bottom:8px}
.legal .toc ol{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:7px}
.legal .toc a{color:var(--ink-dim)}
.legal .toc a:hover{color:var(--accent-2)}

/* enlaces legales en el footer */
.foot-legal-links{display:flex;gap:16px;flex-wrap:wrap}
.foot-legal-links a{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;color:var(--ink-faint);letter-spacing:.03em;transition:color .2s}
.foot-legal-links a:hover{color:var(--accent-2)}

/* ============================================================
   ACCESIBILIDAD
   ============================================================ */
/* Foco visible solo para teclado (no molesta al ratón) */
:focus-visible{outline:2px solid var(--accent-2);outline-offset:3px;border-radius:3px}
.btn:focus-visible,.navmenu__link:focus-visible,.row__head:focus-visible,.foot-col a:focus-visible,
.foot-legal-links a:focus-visible,.brand:focus-visible,.founder:focus-visible,.legal a:focus-visible,
.nav__menu:focus-visible,.navmenu__close:focus-visible,.pill a:focus-visible{outline:2px solid var(--accent-2);outline-offset:3px}
/* Saltar al contenido (aparece al tabular) */
.skip{position:fixed;top:-120px;left:16px;z-index:100;background:var(--accent);color:#fff;
  padding:12px 18px;border-radius:10px;font-family:var(--mono);font-weight:400;font-size:12px;
  text-transform:uppercase;letter-spacing:.04em;transition:top .2s var(--ease)}
.skip:focus{top:16px}
/* Cabeceras de acordeón operables por teclado */
.row__head{outline:none}
.row__head:focus-visible{outline:2px solid var(--accent-2);outline-offset:-4px;border-radius:8px}

/* ============================================================
   BLOG — índice y artículo
   ============================================================ */
.postgrid{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,1.6vw,24px)}
@media(max-width:900px){.postgrid{grid-template-columns:1fr}}
.postcard{display:flex;flex-direction:column;gap:13px;background:var(--surface);border:1px solid var(--line);
  border-radius:18px;padding:clamp(22px,2.2vw,30px);transition:transform .3s var(--ease),border-color .3s}
.postcard:hover{transform:translateY(-3px);border-color:rgba(30,144,255,.4)}
.postcard .cat{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--accent-2)}
.postcard h3{font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:-.02em;
  font-size:clamp(1.3rem,2vw,1.65rem);line-height:1.04}
.postcard p{color:var(--ink-dim);font-size:1rem;line-height:1.5;flex:1}
.postcard .prow{display:flex;justify-content:space-between;align-items:center;margin-top:2px}
.postcard .more{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink);display:inline-flex;gap:8px;align-items:center;transition:gap .3s var(--ease)}
.postcard:hover .more{gap:13px;color:var(--accent-2)}
.postcard .readtime{font-family:var(--mono);font-size:10px;color:var(--ink-faint);text-transform:uppercase}

.article-meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-family:var(--mono);font-size:11px;
  text-transform:uppercase;letter-spacing:.03em;color:var(--ink-dim);margin-top:18px}
.article-meta .by{display:inline-flex;align-items:center;gap:9px;color:var(--ink)}
.article-meta .avatar{width:27px;height:27px;border-radius:7px;background:var(--ink);display:grid;place-items:center;flex-shrink:0}
.article-meta .avatar svg{height:16px;width:auto;display:block}
.article-lead{font-size:clamp(1.15rem,1.7vw,1.42rem);line-height:1.5;color:var(--ink);margin:0 0 10px;font-weight:500}
.inlinecta{border:1px solid var(--line);background:linear-gradient(180deg,rgba(30,144,255,.07),transparent);
  border-radius:16px;padding:clamp(22px,2.4vw,32px);margin:clamp(30px,4vw,44px) 0;
  display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.inlinecta p{margin:0;font-family:var(--disp);font-weight:700;color:var(--ink);font-size:clamp(1.1rem,1.6vw,1.4rem);max-width:34ch;line-height:1.15}

/* ============================================================
   FONDO CON TEXTURA SUTIL (override — que no sea plano)
   ============================================================ */
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:1;
  background-image:
    radial-gradient(1100px 600px at 82% -8%,rgba(30,144,255,.10),transparent 60%),
    radial-gradient(900px 700px at -12% 110%,rgba(30,144,255,.055),transparent 60%),
    radial-gradient(rgba(244,239,230,.028) 1px, transparent 1.4px);
  background-size:100% 100%,100% 100%,34px 34px;
  background-repeat:no-repeat,no-repeat,repeat;
}
body::after{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:1;opacity:.04;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ============================================================
   FIGURAS DE ARTÍCULO (diagramas de referencia)
   ============================================================ */
.figure{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:clamp(18px,2vw,26px);margin:clamp(26px,3.5vw,42px) 0}
.figure svg{width:100%;height:auto;display:block}
.figure figcaption{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-dim);margin-top:14px;text-align:center}
.fig-pitch .ln{stroke:rgba(244,239,230,.22);stroke-width:1;fill:none}
.fig-pitch .fov{fill:rgba(30,144,255,.10);stroke:rgba(30,144,255,.55);stroke-width:1;stroke-dasharray:4 3}
.fig-pitch .cam{fill:var(--accent)}
.fig-pitch .lens{fill:var(--bg)}
.fig-pitch .tri{stroke:var(--accent);stroke-width:1.4;fill:none}
.fig-pitch text{font-family:var(--mono);font-size:8.5px;fill:var(--ink-dim);text-transform:uppercase;letter-spacing:.04em}
.fig-pitch .hl{fill:var(--accent-2)}
/* barras de precio */
.pricebars{display:flex;flex-direction:column;gap:15px}
.pb{display:grid;grid-template-columns:132px 1fr auto;align-items:center;gap:14px}
.pb-l{font-family:var(--mono);font-size:11px;text-transform:uppercase;color:var(--ink-dim);letter-spacing:.02em}
.pb-track{height:12px;background:var(--line);border-radius:6px;overflow:hidden}
.pb-track i{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,#3a4658,#526074)}
.pb--hi .pb-track i{background:linear-gradient(90deg,var(--accent),var(--accent-2))}
.pb-v{font-family:var(--mono);font-size:11px;color:var(--ink);white-space:nowrap}
.pb--hi .pb-l,.pb--hi .pb-v{color:var(--accent-2)}
@media(max-width:600px){.pb{grid-template-columns:1fr auto;gap:5px 12px}.pb-track{grid-column:1/-1;order:3}}

/* ============================================================
   DEFENSA ANTI-TEMA (WordPress/Elementor) — mi CSS debe ganar
   ============================================================ */
html body{background:var(--bg)!important;color:var(--ink)!important;font-family:var(--disp)!important}
html body a{color:inherit}
html body main{background:transparent}
