:root{
    --ink:#0A121C;
    --steel:#122238;
    --steel-2:#1B2F49;
    --lime:#8BC63F;
    --lime-deep:#6FA52E;
    --lime-bright:#A4DC5C;
    --paper:#F5F6F2;
    --paper-2:#ECEEE7;
    --fog:#B9C3CC;
    --graphite:#212A32;
    --line: rgba(255,255,255,0.08);
    --maxw: 1180px;
  }
  *,*::before,*::after{    box-sizing:border-box;    margin:0;    padding:0;}
  html{
    scroll-behavior:smooth;
    -webkit-text-size-adjust:100%;
    text-size-adjust:100%;
}
  body{
    margin:0;
    overflow-x:hidden;
    background:var(--paper);
    color:var(--graphite);
    font-family:'Work Sans',sans-serif;
    font-weight:400;
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
  }
  img{
    display:block;
    max-width:100%;
    height:auto;
    border:0;
}
picture{
    display:block;
}
svg{
    display:block;
    max-width:100%;
}
  a{color:inherit;text-decoration:none;}
  h1,h2,h3,h4{
    font-family:'Oswald',sans-serif;
    text-transform:uppercase;
    letter-spacing:0.01em;
    line-height:1.08;
    margin:0;
    color:#fff;
  }
  .on-light h1,.on-light h2,.on-light h3,.on-light h4{color:var(--ink);}
  .eyebrow{
    font-family:'JetBrains Mono',monospace;
    font-size:0.72rem;
    letter-spacing:0.18em;
    text-transform:uppercase;
    color:var(--lime);
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:18px;
  }
  .eyebrow::before{
    content:"";
    width:28px;height:2px;
    background:var(--lime);
    display:inline-block;
  }
  .on-light .eyebrow{color:var(--lime-deep);}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px;}
  section{position:relative;}
  a:focus-visible, button:focus-visible{outline:2px solid var(--lime-bright);outline-offset:3px;}

  /* ---------- HEADER ---------- */
  header{
    position:fixed;top:0;left:0;right:0;z-index:100;
    background:rgba(10,18,28,0.82);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
  }
  .nav{
    max-width:var(--maxw);margin:0 auto;padding:14px 32px;
    display:flex;align-items:center;justify-content:space-between;
  }
  .brand{display:flex;align-items:center;gap:12px;}
  .brand img{height:38px;width:auto;}
  .brand-text{font-family:'Oswald',sans-serif;color:#fff;font-size:1.05rem;letter-spacing:0.04em;}
  .brand-text b{color:var(--lime);}
  nav.menu{display:flex;align-items:center;gap:32px;}
  .menu a{
    font-size:0.82rem;text-transform:uppercase;letter-spacing:0.08em;
    color:var(--fog);font-weight:500;
    transition:color .2s;
  }
  .menu a:hover{color:var(--lime-bright);}
  .cta-btn{
    background:var(--lime);
    color:var(--ink)!important;
    padding:11px 22px;
    border-radius:2px;
    font-weight:600;
    font-size:0.8rem;
    text-transform:uppercase;
    letter-spacing:0.06em;
    transition:background .2s, transform .2s;
    display:inline-block;
    white-space:nowrap;
  }
  .cta-btn:hover{background:var(--lime-bright);transform:translateY(-1px);}
  .nav .cta-btn{
    padding:8px 15px;
    font-size:0.66rem;
    letter-spacing:0.08em;
    border:1px solid rgba(139,198,63,0.35);
    background:rgba(139,198,63,0.12);
    color:var(--lime-bright)!important;
  }
  .nav .cta-btn:hover{background:var(--lime);color:var(--ink)!important;border-color:var(--lime);}
  .burger{display:none;background:none;border:none;cursor:pointer;padding:8px;}
  .burger span{display:block;width:24px;height:2px;background:#fff;margin:5px 0;transition:.25s;}

  /* ---------- HERO ---------- */
  .hero{
    background:radial-gradient(ellipse at 70% 20%, #142642 0%, var(--ink) 60%);
    min-height:100vh;
    display:flex;align-items:center;
    padding:150px 0 100px;
    overflow:hidden;
    position:relative;
  }
  .hero .wrap{position:relative;z-index:3;}
  .tactic-field{
    position:absolute;inset:0;z-index:1;opacity:0.9;
  }
  .hero-grain{
    position:absolute;inset:0;z-index:2;
    background:linear-gradient(180deg, rgba(10,18,28,0) 0%, rgba(10,18,28,0.9) 100%);
  }
  .hero-inner{max-width:760px;}
  .hero h1{
    font-size:clamp(2.4rem, 5.4vw, 4.4rem);
    color:#fff;
    margin-bottom:26px;
  }
  .hero h1 em{
    font-style:normal;
    color:var(--lime);
  }
  .hero p.lead{
    color:var(--fog);
    font-size:1.15rem;
    max-width:560px;
    margin-bottom:38px;
  }
  .hero-ctas{display:flex;gap:18px;flex-wrap:wrap;}
  .ghost-btn{
    border:1px solid rgba(255,255,255,0.3);
    color:#fff;
    padding:11px 22px;
    border-radius:2px;
    font-size:0.8rem;
    text-transform:uppercase;
    letter-spacing:0.06em;
    font-weight:500;
    transition:border-color .2s, background .2s;
  }
  .ghost-btn:hover{border-color:var(--lime);background:rgba(139,198,63,0.08);}
  .hero-tagline{
    margin-top:64px;
    display:flex;gap:28px;flex-wrap:wrap;
    color:var(--fog);
    font-family:'JetBrains Mono',monospace;
    font-size:0.75rem;
    letter-spacing:0.05em;
  }
  .hero-tagline span{display:flex;align-items:center;gap:8px;}
  .hero-tagline span::before{content:"";width:6px;height:6px;background:var(--lime);border-radius:50%;}

  /* ---------- PRINCIPIO RECTOR ---------- */
  .principio{
    background:var(--paper);
    padding:120px 0;
  }
  .principio .wrap{max-width:900px;text-align:center;}
  .principio .eyebrow{justify-content:center;}
  .principio blockquote{
    font-family:'Oswald',sans-serif;
    font-size:clamp(1.5rem, 3.4vw, 2.4rem);
    color:var(--ink);
    line-height:1.3;
    margin:0 0 28px;
    text-transform:none;
    letter-spacing:0;
  }
  .principio blockquote b{color:var(--lime-deep);}
  .principio p.sub{color:#5A6570;max-width:620px;margin:0 auto;font-size:1.02rem;}

  /* ---------- CICLO ---------- */
  .ciclo{
    background:var(--steel);
    padding:110px 0 130px;
    position:relative;
  }
  .ciclo::before{
    content:"";position:absolute;inset:0;
    background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);
    background-size:44px 44px;
    opacity:0.4;
  }
  .ciclo .wrap{position:relative;z-index:2;}
  .ciclo-head{max-width:640px;margin-bottom:60px;}
  .ciclo-head h2{font-size:clamp(1.7rem,3.2vw,2.5rem);}
  .ciclo-head p{color:var(--fog);margin-top:18px;font-size:1.02rem;}
  .ciclo-flow{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:0;
    position:relative;
  }
  .ciclo-flow::before{
    content:"";
    position:absolute;top:26px;left:5%;right:5%;height:2px;
    background:repeating-linear-gradient(90deg, var(--lime) 0 8px, transparent 8px 16px);
    opacity:0.5;
    z-index:0;
  }
  .ciclo-node{
    position:relative;z-index:1;
    display:flex;flex-direction:column;align-items:center;text-align:center;
    padding:0 10px;
  }
  .ciclo-dot{
    width:54px;height:54px;border-radius:50%;
    background:var(--ink);
    border:2px solid var(--lime);
    display:flex;align-items:center;justify-content:center;
    font-family:'JetBrains Mono',monospace;
    color:var(--lime-bright);
    font-size:0.85rem;
    margin-bottom:18px;
    transition:transform .3s, background .3s;
  }
  .ciclo-node:hover .ciclo-dot{transform:scale(1.12);background:var(--lime);color:var(--ink);}
  .ciclo-node h4{color:#fff;font-size:0.92rem;letter-spacing:0.04em;margin-bottom:8px;}
  .ciclo-node p{color:var(--fog);font-size:0.82rem;margin:0;}

  /* ---------- PILARES ---------- */
  .pilares{background:var(--paper);padding:120px 0;}
  .pilares-head{max-width:640px;margin-bottom:64px;}
  .pilares-head h2{font-size:clamp(1.7rem,3.2vw,2.5rem);}
  .pilares-head p{color:#5A6570;margin-top:18px;font-size:1.02rem;}
  .pilares-grid{
    display:grid;grid-template-columns:repeat(4,1fr);gap:2px;
    background:var(--line);
    border:1px solid #E3E5DE;
  }
  .pilar{
    background:var(--paper);
    padding:36px 28px;
    display:flex;flex-direction:column;
    min-height:280px;
    transition:background .25s;
  }
  .pilar:hover{background:var(--ink);}
  .pilar:hover *{color:#fff!important;}
  .pilar:hover .pilar-num{color:var(--lime)!important;}
  .pilar-num{
    font-family:'JetBrains Mono',monospace;
    color:var(--lime-deep);
    font-size:0.85rem;
    margin-bottom:22px;
  }
  .pilar h3{color:var(--ink);font-size:1.15rem;margin-bottom:14px;}
  .pilar p{color:#5A6570;font-size:0.92rem;flex:1;margin:0 0 18px;}
  .pilar .go{
    font-family:'JetBrains Mono',monospace;
    font-size:0.72rem;text-transform:uppercase;letter-spacing:0.08em;
    color:var(--lime-deep);
  }

  /* ---------- AUTORIDAD ---------- */
  .autor{
    background:var(--ink);
    padding:120px 0;
  }
  .autor-grid{
    display:grid;grid-template-columns:0.9fr 1.1fr;gap:70px;align-items:center;
  }
  .autor-visual{
    aspect-ratio:4/5;
    background:linear-gradient(155deg, var(--steel-2) 0%, var(--ink) 100%);
    border:1px solid var(--line);
    display:flex;align-items:center;justify-content:center;
    position:relative;
    overflow:hidden;
  }
  .autor-visual img{filter:grayscale(0.25) contrast(1.06);}
  .autor-visual::before{
    content:"";position:absolute;inset:0;z-index:2;
    background:linear-gradient(180deg, rgba(10,18,28,0.05) 0%, rgba(10,18,28,0.55) 100%),
               linear-gradient(0deg, rgba(139,198,63,0.18), rgba(139,198,63,0) 40%);
    mix-blend-mode:multiply;
    pointer-events:none;
  }
  .autor-visual::after{
    content:"";position:absolute;inset:0;z-index:3;
    background:repeating-linear-gradient(115deg, transparent 0 60px, rgba(139,198,63,0.10) 60px 61px);
    pointer-events:none;
  }
  .autor-copy .eyebrow{color:var(--lime);}
  .autor-copy h2{font-size:clamp(1.6rem,3vw,2.3rem);margin-bottom:22px;}
  .autor-copy p{color:var(--fog);font-size:1rem;margin-bottom:16px;}
  .autor-creds{
    list-style:none;padding:0;margin:28px 0 0;
    display:grid;grid-template-columns:1fr 1fr;gap:14px 24px;
  }
  .autor-creds li{
    color:#fff;font-size:0.86rem;
    padding-left:20px;position:relative;
  }
  .autor-creds li::before{
    content:"";position:absolute;left:0;top:7px;width:8px;height:2px;background:var(--lime);
  }

  /* ---------- CTA FINAL ---------- */
  .cta-final{
    background:linear-gradient(120deg, var(--lime-deep), var(--lime));
    padding:90px 0;
    text-align:center;
  }
  .cta-final h2{color:var(--ink);font-size:clamp(1.7rem,3.4vw,2.6rem);margin-bottom:20px;}
  .cta-final p{color:#1c2a12;max-width:560px;margin:0 auto 34px;font-size:1.02rem;}
  .cta-final .cta-btn{background:var(--ink);color:#fff!important;}
  .cta-final .cta-btn:hover{background:#000;}

  /* ---------- FOOTER ---------- */
  footer{background:var(--ink);border-top:1px solid var(--line);padding:70px 0 30px;}
  .footer-grid{
    display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;
    padding-bottom:50px;border-bottom:1px solid var(--line);
  }
  .footer-brand .brand{margin-bottom:16px;}
  .footer-brand p{color:var(--fog);font-size:0.9rem;max-width:280px;}
  .footer-col h4{color:#fff;font-size:0.8rem;letter-spacing:0.08em;margin-bottom:18px;}
  .footer-col ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:11px;}
  .footer-col a{color:var(--fog);font-size:0.88rem;transition:color .2s;}
  .footer-col a:hover{color:var(--lime-bright);}
  .footer-bottom{
    padding-top:26px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;
    color:#647082;font-size:0.78rem;font-family:'JetBrains Mono',monospace;
  }

  /* ---------- REVEAL ---------- */
  .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease, transform .7s ease;}
  .reveal.in{opacity:1;transform:translateY(0);}

  @media (prefers-reduced-motion: reduce){
    *{animation:none!important;transition:none!important;}
    .reveal{opacity:1;transform:none;}
  }

  /* ---------- RESPONSIVE ---------- */
  @media (max-width: 980px){
    .menu, .nav .cta-btn{display:none;}
    .burger{display:block;}
    .autor-grid{grid-template-columns:1fr;}
    .autor-visual{max-width:320px;margin:0 auto;}
    .pilares-grid{grid-template-columns:1fr 1fr;}
    .footer-grid{grid-template-columns:1fr 1fr;}
  }
  @media (max-width: 720px){
    .wrap{padding:0 22px;}
    .ciclo-flow{grid-template-columns:repeat(3,1fr);row-gap:40px;}
    .ciclo-flow::before{display:none;}
    .pilares-grid{grid-template-columns:1fr;}
    .footer-grid{grid-template-columns:1fr;}
    .hero{padding-top:120px;}
    .contact-grid{grid-template-columns:1fr;gap:34px;}
    .contact-primary{padding:34px 24px;}
    .bio-grid{grid-template-columns:1fr;}
    .autor-grid{grid-template-columns:1fr;}
    .autor-visual{max-width:340px;margin:0 auto;}
    .ebook-card{grid-template-columns:1fr;}
    .clubes-grid{grid-template-columns:1fr 1fr;}
    .medios-grid{grid-template-columns:1fr;}
  }

  /* mobile menu drawer */
  .mobile-menu{
    position:fixed;inset:0;z-index:99;
    height:100vh;height:100dvh;
    background:var(--ink);
    transform:translateX(100%);
    transition:transform .35s ease;
    display:flex;flex-direction:column;
    padding:84px 32px 24px;
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
  }
  .mobile-menu.open{transform:translateX(0);}
  .mobile-menu a{
    color:#fff;font-family:'Oswald',sans-serif;text-transform:uppercase;
    font-size:1.15rem;padding:12px 0;border-bottom:1px solid var(--line);
    line-height:1.25;flex-shrink:0;
  }
  .mobile-menu .cta-btn{margin-top:18px;text-align:center;flex-shrink:0;}
  @media (max-height:640px){
    .mobile-menu{padding:70px 28px 20px;}
    .mobile-menu a{padding:9px 0;font-size:1rem;}
    .mobile-menu .cta-btn{margin-top:12px;padding:10px 16px;font-size:0.85rem;}
  }

/* ---------- PAGE HERO (inner pages) ---------- */
.page-hero{
  background:radial-gradient(ellipse at 75% 15%, #142642 0%, var(--ink) 65%);
  padding:170px 0 90px;
  position:relative;
  overflow:hidden;
}
.page-hero .wrap{max-width:820px;}
.page-hero h1{font-size:clamp(2rem,4.4vw,3.2rem);color:#fff;margin-bottom:18px;}
.page-hero p.lead{color:var(--fog);font-size:1.08rem;max-width:600px;}
.page-hero .eyebrow{color:var(--lime);}

/* ---------- BIO (Nosotros) ---------- */
.bio{background:var(--paper);padding:110px 0;}
.bio-grid{display:grid;grid-template-columns:0.85fr 1.15fr;gap:70px;align-items:start;}
.bio-photo{aspect-ratio:4/5;overflow:hidden;position:relative;border:1px solid #E3E5DE;}
.bio-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(0.25) contrast(1.06);}
.bio-photo::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(10,18,28,0) 60%, rgba(10,18,28,0.5) 100%);
}
.bio-copy h2{color:var(--ink);font-size:clamp(1.6rem,3vw,2.2rem);margin-bottom:10px;}
.bio-copy .role{
  font-family:'JetBrains Mono',monospace;color:var(--lime-deep);
  font-size:0.85rem;letter-spacing:0.05em;margin-bottom:26px;display:block;
}
.bio-copy p{color:#4A545C;font-size:1rem;margin-bottom:18px;}
.bio-creds{list-style:none;padding:0;margin:28px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:14px 24px;}
.bio-creds li{color:var(--ink);font-size:0.9rem;padding-left:20px;position:relative;font-weight:500;}
.bio-creds li::before{content:"";position:absolute;left:0;top:8px;width:8px;height:2px;background:var(--lime-deep);}
.bio-countries{
  margin-top:30px;display:flex;gap:10px;flex-wrap:wrap;
}
.bio-countries span{
  font-family:'JetBrains Mono',monospace;font-size:0.72rem;letter-spacing:0.05em;
  border:1px solid #D8DBD2;padding:7px 14px;color:#5A6570;text-transform:uppercase;
}

/* ---------- GALLERY STRIP ---------- */
.gallery{background:var(--steel);padding:100px 0;}
.gallery-head{max-width:640px;margin-bottom:50px;}
.gallery-head h2{font-size:clamp(1.5rem,3vw,2.2rem);}
.gallery-head p{color:var(--fog);margin-top:16px;}
.gallery-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:2px;}
.gallery-item{position:relative;aspect-ratio:4/3;overflow:hidden;}
.gallery-item img{width:100%;height:100%;object-fit:cover;filter:grayscale(0.15) contrast(1.05);transition:transform .5s;}
.gallery-item:hover img{transform:scale(1.04);}
.gallery-item .cap{
  position:absolute;left:0;right:0;bottom:0;padding:18px 20px;
  background:linear-gradient(0deg, rgba(10,18,28,0.85), transparent);
  color:#fff;font-size:0.82rem;font-family:'JetBrains Mono',monospace;
}

/* ---------- INSTITUCION (ADN summary block) ---------- */
.institucion{background:var(--paper);padding:110px 0;}
.institucion .wrap{max-width:820px;}
.institucion blockquote{
  font-family:'Oswald',sans-serif;font-size:clamp(1.3rem,2.6vw,1.9rem);
  color:var(--ink);line-height:1.35;text-transform:none;letter-spacing:0;margin:0 0 22px;
}
.institucion p{color:#5A6570;font-size:1rem;}

/* ---------- CONTACTO ---------- */
.contacto-section{background:var(--paper);padding:110px 0;}
.contact-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:60px;align-items:start;}
.contact-primary{
  background:var(--ink);
  padding:52px 44px;
  position:relative;
  overflow:hidden;
}
.contact-primary::after{
  content:"";position:absolute;inset:0;
  background:repeating-linear-gradient(115deg, transparent 0 50px, rgba(139,198,63,0.05) 50px 51px);
  pointer-events:none;
}
.contact-primary .eyebrow{color:var(--lime);}
.contact-primary h2{color:#fff;font-size:clamp(1.5rem,2.8vw,2rem);margin-bottom:16px;}
.contact-primary p{color:var(--fog);font-size:0.98rem;margin-bottom:32px;max-width:440px;}
.wa-btn{
  display:inline-flex;align-items:center;gap:12px;
  background:var(--lime);color:var(--ink);
  padding:16px 26px;font-weight:600;font-size:0.92rem;
  text-transform:uppercase;letter-spacing:0.04em;
  border-radius:2px;transition:background .2s, transform .2s;
  position:relative;z-index:1;
}
.wa-btn:hover{background:var(--lime-bright);transform:translateY(-1px);}
.wa-btn svg{width:20px;height:20px;flex-shrink:0;}
.contact-side{display:flex;flex-direction:column;gap:0;}
.contact-item{
  padding:26px 0;border-bottom:1px solid #E3E5DE;
}
.contact-item:first-child{padding-top:0;}
.contact-item .label{
  font-family:'JetBrains Mono',monospace;font-size:0.72rem;letter-spacing:0.08em;
  text-transform:uppercase;color:var(--lime-deep);display:block;margin-bottom:8px;
}
.contact-item a, .contact-item span.val{color:var(--ink);font-size:1rem;font-weight:500;}
.contact-item a:hover{color:var(--lime-deep);}

/* ---------- INTRO BLOCK (page sub-intro) ---------- */
.intro-block{background:var(--paper);padding:90px 0 20px;}
.intro-block .wrap{max-width:820px;}
.intro-block p{color:#4A545C;font-size:1.05rem;margin-bottom:16px;}

/* ---------- 5-COLUMN FLOW VARIANT ---------- */
.cols-5{grid-template-columns:repeat(5,1fr) !important;}
@media (max-width:720px){
  .cols-5{grid-template-columns:repeat(2,1fr) !important;row-gap:40px;}
}

/* ---------- JOURNEY STEPPER (Experiencias Formativas) ---------- */
.jf-section{background:var(--paper);padding:20px 0 120px;}
.jf-stepper{
  display:flex;border:1px solid #E3E5DE;margin-bottom:0;
  overflow-x:auto;
}
.jf-tab{
  flex:1;min-width:150px;
  background:var(--paper);border:none;border-right:1px solid #E3E5DE;
  padding:22px 18px;text-align:left;cursor:pointer;
  font-family:'Oswald',sans-serif;color:#8A9299;
  transition:background .2s,color .2s;
}
.jf-tab:last-child{border-right:none;}
.jf-tab b{
  display:block;font-family:'JetBrains Mono',monospace;font-size:0.72rem;
  letter-spacing:0.08em;margin-bottom:6px;color:var(--lime-deep);font-weight:500;
}
.jf-tab span{display:block;font-size:0.98rem;text-transform:uppercase;letter-spacing:0.02em;}
.jf-tab.active{background:var(--ink);}
.jf-tab.active b{color:var(--lime);}
.jf-tab.active span{color:#fff;}
.jf-tab:hover:not(.active){background:#EFF1EA;}
.jf-panels{border:1px solid #E3E5DE;border-top:none;padding:52px 48px;}
.jf-panel{display:none;}
.jf-panel.active{display:block;animation:fadein .35s ease;}
@keyframes fadein{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}
.jf-panel .meta{
  display:flex;gap:24px;flex-wrap:wrap;margin-bottom:22px;
}
.jf-panel .meta span{
  font-family:'JetBrains Mono',monospace;font-size:0.76rem;letter-spacing:0.04em;
  color:var(--lime-deep);text-transform:uppercase;
  border-left:2px solid var(--lime-deep);padding-left:10px;
}
.jf-panel h3{color:var(--ink);font-size:clamp(1.3rem,2.6vw,1.8rem);margin-bottom:16px;}
.jf-panel p{color:#4A545C;font-size:1rem;margin-bottom:14px;max-width:640px;}
.jf-panel ul{margin:18px 0 26px;padding-left:0;list-style:none;}
.jf-panel ul li{
  color:#333B41;font-size:0.94rem;padding-left:22px;position:relative;margin-bottom:10px;
}
.jf-panel ul li::before{content:"";position:absolute;left:0;top:8px;width:9px;height:2px;background:var(--lime-deep);}
.jf-panel .panel-cta{
  display:inline-block;background:var(--ink);color:#fff;
  padding:13px 24px;font-size:0.82rem;text-transform:uppercase;letter-spacing:0.05em;
  font-weight:600;border-radius:2px;transition:background .2s;
}
.jf-panel .panel-cta:hover{background:#000;}
.jf-panel .panel-cta.alt{background:var(--lime);color:var(--ink);}
.jf-panel .panel-cta.alt:hover{background:var(--lime-bright);}
@media (max-width:720px){
  .jf-stepper{flex-wrap:nowrap;}
  .jf-panels{padding:34px 24px;}
}

/* ---------- RECURSOS: EBOOK FEATURE CARD ---------- */
.ebook-section{background:var(--paper);padding:20px 0 120px;}
.ebook-card{
  background:var(--ink);
  display:grid;grid-template-columns:0.85fr 1.15fr;
  position:relative;overflow:hidden;
}
.ebook-card::after{
  content:"";position:absolute;inset:0;
  background:repeating-linear-gradient(115deg, transparent 0 60px, rgba(139,198,63,0.07) 60px 61px);
  pointer-events:none;
}
.ebook-cover{
  background:linear-gradient(160deg, var(--steel-2), var(--ink));
  display:flex;align-items:stretch;justify-content:center;
  border-right:1px solid var(--line);
  position:relative;z-index:1;
  min-height:320px;
  overflow:hidden;
}
.ebook-cover-inner{
  border:1px solid rgba(139,198,63,0.4);
  padding:34px 24px;text-align:center;width:100%;
}
.ebook-cover-inner .tag{font-family:'JetBrains Mono',monospace;color:var(--lime);font-size:0.7rem;letter-spacing:0.15em;margin-bottom:16px;display:block;}
.ebook-cover-inner h3{color:#fff;font-size:1.5rem;line-height:1.2;margin-bottom:8px;}
.ebook-cover-inner h3 em{color:var(--lime);font-style:normal;}
.ebook-cover-inner .author{color:var(--fog);font-size:0.8rem;margin-top:18px;font-family:'JetBrains Mono',monospace;}
.ebook-copy{padding:52px 48px;position:relative;z-index:1;}
.ebook-copy .eyebrow{color:var(--lime);}
.ebook-copy h2{color:#fff;font-size:clamp(1.4rem,2.6vw,2rem);margin-bottom:16px;}
.ebook-copy p{color:var(--fog);font-size:0.98rem;margin-bottom:14px;max-width:520px;}
.ebook-copy ul{list-style:none;padding:0;margin:22px 0 30px;}
.ebook-copy ul li{color:#fff;font-size:0.9rem;padding-left:20px;position:relative;margin-bottom:10px;}
.ebook-copy ul li::before{content:"";position:absolute;left:0;top:7px;width:8px;height:2px;background:var(--lime);}
.hotmart-btn{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--lime);color:var(--ink);padding:15px 26px;
  font-weight:600;font-size:0.85rem;text-transform:uppercase;letter-spacing:0.05em;
  border-radius:2px;transition:background .2s, transform .2s;
}
.hotmart-btn:hover{background:var(--lime-bright);transform:translateY(-1px);}
@media (max-width:820px){
  .ebook-card{grid-template-columns:1fr;}
  .ebook-cover{border-right:none;border-bottom:1px solid var(--line);padding:40px;}
}

/* ---------- RECURSOS: PRÓXIMAMENTE ---------- */
.recursos-proximamente{background:var(--steel);padding:90px 0;}
.recursos-proximamente .wrap{max-width:640px;text-align:center;}
.recursos-proximamente .eyebrow{justify-content:center;color:var(--lime);}
.recursos-proximamente h2{color:#fff;font-size:clamp(1.4rem,2.8vw,1.9rem);margin-bottom:16px;}
.recursos-proximamente p{color:var(--fog);font-size:0.98rem;}

/* ---------- CLUBES / PAÍSES ---------- */
.clubes{background:var(--paper);padding:100px 0;}
.clubes-head{max-width:640px;margin-bottom:50px;}
.clubes-head h2{font-size:clamp(1.5rem,3vw,2.2rem);}
.clubes-head p{color:#5A6570;margin-top:16px;}
.clubes-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:#E3E5DE;border:1px solid #E3E5DE;}
.clube-item{position:relative;aspect-ratio:3/4;overflow:hidden;background:var(--ink);}
.clube-item img{width:100%;height:100%;object-fit:cover;filter:grayscale(0.2) contrast(1.05);transition:transform .5s;}
.clube-item:hover img{transform:scale(1.05);}
.clube-item .country{
  position:absolute;left:0;right:0;bottom:0;padding:16px;
  background:linear-gradient(0deg, rgba(10,18,28,0.9), transparent);
  color:#fff;font-family:'JetBrains Mono',monospace;font-size:0.78rem;letter-spacing:0.06em;text-transform:uppercase;
}
@media (max-width:820px){.clubes-grid{grid-template-columns:repeat(2,1fr);}}

/* ---------- MEDIOS / PRENSA ---------- */
.medios{background:var(--steel);padding:100px 0;}
.medios-head{max-width:640px;margin-bottom:50px;}
.medios-head h2{font-size:clamp(1.5rem,3vw,2.2rem);}
.medios-head p{color:var(--fog);margin-top:16px;}
.medios-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:stretch;}
.video-embed{position:relative;width:100%;padding-top:56.25%;background:#000;border:1px solid var(--line);}
.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.press-card{
  background:var(--ink);border:1px solid var(--line);padding:36px 32px;
  display:flex;flex-direction:column;justify-content:center;
}
.press-card .outlet{
  font-family:'JetBrains Mono',monospace;color:var(--lime);font-size:0.75rem;
  letter-spacing:0.1em;text-transform:uppercase;margin-bottom:16px;display:block;
}
.press-card h3{color:#fff;font-size:1.2rem;line-height:1.35;margin-bottom:20px;text-transform:none;letter-spacing:0;font-family:'Oswald',sans-serif;}
.press-card a.read-more{
  font-family:'JetBrains Mono',monospace;font-size:0.78rem;text-transform:uppercase;letter-spacing:0.06em;
  color:var(--lime-bright);
}
.press-card a.read-more:hover{color:#fff;}
@media (max-width:820px){.medios-grid{grid-template-columns:1fr;}}

/* ---------- LEAD FORM (Contacto) ---------- */
.lead-form{display:flex;flex-direction:column;gap:16px;margin-top:8px;}
.lead-form .form-row{display:flex;flex-direction:column;gap:6px;}
.lead-form label{
  font-family:'JetBrains Mono',monospace;font-size:0.7rem;letter-spacing:0.06em;
  text-transform:uppercase;color:var(--lime-deep);
}
.lead-form input, .lead-form select, .lead-form textarea{
  font-family:'Work Sans',sans-serif;font-size:0.95rem;color:var(--ink);
  border:1px solid #D8DBD2;background:#fff;padding:11px 13px;
  border-radius:2px;resize:vertical;
}
.lead-form input:focus, .lead-form select:focus, .lead-form textarea:focus{
  outline:none;border-color:var(--lime-deep);
}
.lead-form button{
  margin-top:6px;border:none;cursor:pointer;width:100%;text-align:center;
}
.lead-form .form-status{
  font-size:0.85rem;min-height:20px;margin:0;font-family:'JetBrains Mono',monospace;
}
.contact-side-head{margin-bottom:6px;}
.contact-side-head .label{
  font-family:'JetBrains Mono',monospace;font-size:0.72rem;letter-spacing:0.08em;
  text-transform:uppercase;color:var(--lime-deep);display:block;margin-bottom:6px;
}
.contact-side-head h3{color:var(--ink);font-size:1.15rem;margin-bottom:4px;}
button,
input,
textarea,
select{
    font:inherit;
}
input,
textarea,
button{
    -webkit-appearance:none;
    appearance:none;
    border-radius:0;
}