/* ============================================
   PABLO HERNANDEZ BAEZA — "CAMPO APERTO"
   Navy × Terracota × Ámbar
============================================ */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500;1,600&family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=Space+Grotesk:wght@500;600;700&display=swap');

:root{
  --ink:#1C1916;
  --paper:#FAFAF7;
  --paper-2:#FAFAF7;
  --noche:#141E2D;
  --noche-deep:#0A1018;
  --amanecer:#C0392B;
  --amanecer-deep:#9A2A1D;
  --sol:#D4892A;
  --sol-deep:#B56D15;
  --brote:#4A7A5C;
  --brote-deep:#3A6349;
  --sol-pale:#FBF0DC;
  --amanecer-pale:#FAEAE8;
  --brote-pale:#E0EDE4;
  --line:#E2D9CE;
  --text-soft:#6B6056;
  --ochre:var(--sol);
  --ochre-deep:var(--sol-deep);
  --clay:var(--amanecer);
  --clay-deep:var(--amanecer-deep);
  --pine:var(--noche);
  --pine-deep:var(--noche-deep);
  --parchment:var(--paper-2);
  --parchment-card:var(--paper);
  --moss:var(--brote);
  --moss-deep:var(--brote-deep);
  --font-display:'Cormorant Garamond', Georgia, serif;
  --font-body:'DM Sans', system-ui, sans-serif;
  --font-mono:'Space Grotesk', sans-serif;
  --shadow:0 14px 34px rgba(28,25,22,0.09);
  --shadow-hover:0 22px 52px rgba(28,25,22,0.16);
}

/* ── RESET ── */
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:var(--font-body);color:var(--ink);line-height:1.65;background:var(--paper);position:relative;overflow-x:hidden;}
h1,h2,h3{font-family:var(--font-display);color:var(--ink);line-height:1.08;font-weight:400;}
.container{max-width:1160px;margin:0 auto;padding:0 24px;}
section{padding:100px 0;position:relative;z-index:2;}
img{max-width:100%;display:block;}
svg{display:block;}

/* ── UTILITIES ── */
#fx-canvas{display:none;}
.grid-overlay{display:none;}
.progress-bar{position:fixed;top:0;left:0;height:3px;width:0%;background:var(--amanecer);z-index:1001;}
.fade-in,.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease, transform .75s ease;}
.fade-in.visible,.reveal.visible{opacity:1;transform:translateY(0);}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

/* ── EYEBROW ── */
.eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--font-mono);font-weight:600;font-size:.72rem;
  letter-spacing:.14em;color:var(--amanecer-deep);text-transform:uppercase;margin-bottom:18px;
}
.eyebrow::before{content:'';width:22px;height:2px;background:var(--sol);flex-shrink:0;}

/* ── BOTONES ── */
.btn{display:inline-flex;align-items:center;gap:10px;padding:15px 32px;font-family:var(--font-mono);font-weight:600;font-size:.83rem;letter-spacing:.06em;text-decoration:none;transition:transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease;border:1.5px solid transparent;cursor:pointer;border-radius:3px;text-transform:uppercase;}
.btn--primary{background:var(--amanecer);color:#fff;box-shadow:0 8px 24px rgba(192,57,43,0.28);}
.btn--primary:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(192,57,43,0.40);background:var(--amanecer-deep);}
.btn--ghost{background:transparent;color:var(--noche);border-color:var(--noche);}
.btn--ghost:hover{background:var(--noche);color:#fff;transform:translateY(-2px);}
.btn--dark{background:var(--noche);color:#fff;}
.btn--dark:hover{background:var(--noche-deep);transform:translateY(-2px);}
.btn--outline-light{background:transparent;color:#fff;border-color:rgba(255,255,255,0.5);}
.btn--outline-light:hover{background:#fff;color:var(--noche);}
.btn--small{padding:10px 20px;font-size:.76rem;}
.btn--full{width:100%;justify-content:center;}
.btn[data-loading="true"]{opacity:.65;pointer-events:none;}

/* ══════════════════════════════════════
   HEADER
══════════════════════════════════════ */
.header{
  position:sticky;top:0;
  background:rgba(250,250,247,0.96);
  backdrop-filter:blur(14px);
  z-index:100;
  border-bottom:1px solid var(--line);
}
.header__inner{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;gap:20px;}
.logo{font-family:var(--font-display);font-weight:400;font-size:1.42rem;color:var(--ink);white-space:nowrap;}
.logo em{font-style:italic;color:var(--amanecer-deep);}
.nav{display:flex;gap:28px;list-style:none;}
.nav a{font-family:var(--font-mono);font-size:.74rem;letter-spacing:.06em;color:var(--text-soft);text-decoration:none;text-transform:uppercase;transition:color .2s;}
.nav a:hover{color:var(--amanecer-deep);}
.header__cta{display:flex;align-items:center;flex-shrink:0;}
@media (max-width:900px){.nav{display:none;}.header__cta{display:none;}}

/* ══════════════════════════════════════
   HERO — full-bleed grid, foto hasta el borde
══════════════════════════════════════ */
.hero{
  display:grid;
  grid-template-columns:55% 45%;
  min-height:92vh;
  padding:0;
  overflow:hidden;
  position:relative;
  background:var(--paper);
}
/* línea vertical de acento entre columnas */
.hero::after{
  content:'';
  position:absolute;
  top:8%;bottom:8%;
  left:55%;
  width:2px;
  background:linear-gradient(180deg, transparent 0%, var(--amanecer) 30%, var(--sol) 70%, transparent 100%);
  z-index:3;
  pointer-events:none;
  transform:translateX(-50%);
}
.hero__text{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:80px 56px 80px clamp(24px, calc((100vw - 1160px)/2 + 24px), 160px);
}
.hero__text h1{
  font-size:clamp(3rem,5vw,5rem);
  margin-bottom:22px;
  letter-spacing:-.025em;
  font-weight:400;
  line-height:1.06;
}
.hero__text h1 em{font-style:italic;color:var(--amanecer-deep);}
.hero__subtitle{font-size:1.08rem;color:var(--text-soft);margin-bottom:36px;max-width:460px;line-height:1.72;}
.hero__ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:24px;}
.hero__microcopy{font-size:.82rem;color:var(--text-soft);display:flex;align-items:center;gap:8px;font-family:var(--font-mono);letter-spacing:.01em;}
.hero__microcopy svg{color:var(--sol-deep);flex-shrink:0;}

/* COLUMNA DE FOTO */
.hero__image{
  position:relative;
  overflow:hidden;
  background:var(--paper-2);
}
/* La tarjeta es solo un pass-through para el img */
.hero__card{
  width:100%;height:100%;
  overflow:hidden;
  border-radius:0;
  box-shadow:none;
  padding:0;
  background:none;
  position:relative;
}
.hero__card img{
  width:100%;height:100%;
  object-fit:cover;
  object-position:top center;
  display:block;
  border-radius:0;
}
.hero__tag{
  position:absolute;bottom:32px;left:-2px;z-index:4;
  background:var(--noche);color:#fff;
  font-family:var(--font-mono);font-size:.70rem;letter-spacing:.08em;
  padding:10px 22px;
  box-shadow:var(--shadow);text-transform:uppercase;border-radius:0 3px 3px 0;
}
.hero__corner{display:none;}

/* ══════════════════════════════════════
   AUTORIDAD — oscuro, números poster
══════════════════════════════════════ */
.autoridad{
  padding:80px 0;
  background:var(--noche);
  border:none;
  z-index:2;
}
.autoridad__inner{
  display:flex;align-items:center;justify-content:center;
  gap:0;flex-wrap:wrap;
  max-width:900px;margin:0 auto;padding:0 24px;
}
.autoridad__item{
  display:flex;flex-direction:column;align-items:center;text-align:center;
  flex:1 1 260px;padding:20px 48px;
  position:relative;
}
.autoridad__item:not(:last-child)::after{
  content:'';
  position:absolute;right:0;top:15%;bottom:15%;
  width:1px;
  background:rgba(255,255,255,0.18);
}
.autoridad__item strong{
  font-family:var(--font-display);font-weight:400;
  font-size:clamp(4.5rem,9vw,8rem);
  color:#fff;
  line-height:1;
  letter-spacing:-.03em;
  display:block;
}
.autoridad__item span{
  font-size:.78rem;color:rgba(255,255,255,0.50);
  font-family:var(--font-mono);margin-top:12px;
  letter-spacing:.1em;text-transform:uppercase;
}
.autoridad__label{display:none;}
.autoridad__logos{display:none;}

/* ══════════════════════════════════════
   MI CAMBIO FISICO
══════════════════════════════════════ */
.cambio{
  padding:100px 0;
  text-align:center;
  background:var(--paper-2);
  border-top:none;border-bottom:none;
}
.cambio__titulo{
  font-size:clamp(2.6rem,4.2vw,3.8rem);
  margin:8px 0 18px;font-weight:400;
  letter-spacing:-.02em;
}
.cambio__lead{max-width:520px;margin:0 auto 52px;font-size:1.05rem;color:var(--text-soft);line-height:1.72;}

.cambio__fotos{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:20px;
  max-width:860px;
  margin:0 auto;
}
.cambio__foto{
  position:relative;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 32px 72px rgba(28,25,22,0.18);
}
.cambio__foto img{
  width:100%;
  aspect-ratio:3/4;
  object-fit:cover;
  display:block;
}
.cambio__foto-tag{
  position:absolute;top:16px;left:16px;z-index:2;
  font-family:var(--font-mono);font-weight:600;font-size:.72rem;
  letter-spacing:.08em;text-transform:uppercase;
  padding:8px 16px;border-radius:2px;color:#fff;
}
.cambio__foto-tag--antes{background:var(--noche);}
.cambio__foto-tag--despues{background:var(--amanecer);}
.cambio__flecha{
  display:flex;align-items:center;justify-content:center;
  width:52px;height:52px;flex-shrink:0;
  background:var(--amanecer);border-radius:50%;
  color:#fff;box-shadow:0 8px 24px rgba(192,57,43,0.35);
}

.cambio__stats{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:0;
  margin-top:48px;
  border:1.5px solid var(--line);
  border-radius:12px;
  overflow:hidden;
  max-width:860px;
  margin-left:auto;margin-right:auto;
  background:var(--paper);
}
.cambio__stat{
  display:flex;flex-direction:column;align-items:center;
  padding:32px 20px;
  border-right:1.5px solid var(--line);
}
.cambio__stat:last-child{border-right:none;}
.cambio__stat strong{
  font-family:var(--font-display);font-weight:400;
  font-size:clamp(2.8rem,4.8vw,3.6rem);
  color:var(--amanecer-deep);
  line-height:1;
  letter-spacing:-.02em;
}
.cambio__stat span{
  font-size:.74rem;color:var(--text-soft);margin-top:10px;
  font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;
}

/* ══════════════════════════════════════
   TESTIMONIOS — oscuro, cita destacada
══════════════════════════════════════ */
.testimonios{
  background:var(--noche);
  border:none;padding:100px 0;
}
.testimonios__head{text-align:center;margin-bottom:64px;}
.testimonios__head .eyebrow{color:var(--sol);}
.testimonios__head .eyebrow::before{background:var(--amanecer);}
.testimonios__titulo{
  font-size:clamp(2.4rem,3.8vw,3.2rem);
  margin:8px 0 0;font-weight:400;
  color:#fff;letter-spacing:-.01em;
}

.testimonios__grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:20px;
  max-width:1040px;margin:0 auto;
}
/* Primer testimonio: cita featured a ancho completo */
.testimonios__grid .testimonio:first-child{
  grid-column:1/-1;
  padding:52px 60px;
}
.testimonios__grid .testimonio:first-child .testimonio__texto{
  font-size:1.5rem;
  line-height:1.65;
}
.testimonios__grid .testimonio:first-child::before{
  font-size:10rem;
  top:8px;left:36px;
}

.testimonio{
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.09);
  border-radius:12px;
  padding:40px 32px 30px;
  display:flex;flex-direction:column;gap:20px;position:relative;
  transition:border-color .3s ease, background .3s ease;
}
.testimonio:hover{border-color:rgba(255,255,255,0.20);background:rgba(255,255,255,0.065);}
.testimonio::before{
  content:'\201C';font-family:var(--font-display);font-size:6rem;line-height:.72;
  color:var(--amanecer);opacity:.25;position:absolute;top:14px;left:24px;
  pointer-events:none;
}
.testimonio__texto{
  font-size:1.02rem;color:rgba(255,255,255,0.86);
  line-height:1.78;font-style:italic;
  font-family:var(--font-display);position:relative;z-index:1;padding-top:22px;
}
.testimonio__autor{
  display:flex;flex-direction:column;gap:4px;margin-top:auto;
  padding-top:18px;border-top:1px solid rgba(255,255,255,0.10);
}
.testimonio__nombre{font-family:var(--font-mono);font-weight:600;font-size:.78rem;color:#fff;text-transform:uppercase;letter-spacing:.08em;}
.testimonio__detalle{font-family:var(--font-mono);font-size:.70rem;color:rgba(255,255,255,0.45);}

/* ══════════════════════════════════════
   GUIAS + CURSO
══════════════════════════════════════ */
.precio{background:var(--paper);padding:100px 0;}
.precio__head{text-align:center;margin-bottom:64px;}
.precio__titulo{
  font-size:clamp(2.6rem,4vw,3.6rem);
  margin:8px 0 14px;font-weight:400;letter-spacing:-.02em;
}
.precio__lead{max-width:520px;margin:0 auto;font-size:1.05rem;color:var(--text-soft);line-height:1.72;}

.guias__grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;align-items:start;text-align:left;
  max-width:1100px;margin:0 auto;
}

.guia{
  position:relative;background:var(--paper);border:1.5px solid var(--line);border-radius:14px;
  padding:36px 28px 32px;display:flex;flex-direction:column;
  box-shadow:var(--shadow);transition:transform .25s ease, box-shadow .25s ease;
}
.guia:hover{transform:translateY(-6px);box-shadow:var(--shadow-hover);}

/* Tarjeta popular: borde superior degradado + sombra terracota */
.guia--popular{
  border:2px solid var(--amanecer);
  background:var(--paper);
  box-shadow:0 24px 60px rgba(192,57,43,0.16);
  padding-top:40px;
}
.guia--popular::before{
  content:'';
  position:absolute;top:0;left:0;right:0;height:5px;
  background:linear-gradient(90deg, var(--amanecer) 0%, var(--sol) 100%);
  border-radius:12px 12px 0 0;
}
.guia--popular:hover{transform:translateY(-8px);box-shadow:0 36px 80px rgba(192,57,43,0.26);}

/* Tarjeta curso: degradado oscuro dramático */
.guia--curso{
  background:linear-gradient(160deg, var(--noche) 0%, var(--amanecer-deep) 75%, var(--amanecer) 100%);
  border-color:transparent;color:#fff;
  box-shadow:0 24px 60px rgba(14,20,35,0.35);
}
.guia--curso:hover{transform:translateY(-8px);box-shadow:0 36px 80px rgba(14,20,35,0.48);}

.guia__badge{
  position:absolute;top:-14px;right:24px;font-family:var(--font-mono);font-weight:700;font-size:.66rem;
  letter-spacing:.08em;text-transform:uppercase;padding:7px 16px;border-radius:2px;
  background:var(--sol);color:var(--ink);box-shadow:var(--shadow);
}
.guia--curso .guia__badge{background:#fff;color:var(--noche);}

.guia__header{margin-bottom:22px;}
.guia__subbrand{display:block;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--sol);margin-bottom:6px;}
.guia__nombre{font-family:var(--font-display);font-weight:500;font-size:1.7rem;display:block;margin-bottom:8px;letter-spacing:-.01em;}
.guia__desc{font-size:.9rem;color:var(--text-soft);line-height:1.65;}
.guia--curso .guia__desc{color:rgba(255,255,255,0.72);}

.guia__precio{font-family:var(--font-mono);font-weight:700;font-size:2.2rem;color:var(--amanecer-deep);margin-bottom:24px;letter-spacing:-.02em;}
.guia--popular .guia__precio{color:var(--amanecer);}
.guia--curso .guia__precio{color:var(--sol);}
.guia__precio span{font-size:.68rem;font-weight:500;color:var(--text-soft);letter-spacing:.04em;display:block;margin-top:4px;text-transform:uppercase;}
.guia--curso .guia__precio span{color:rgba(255,255,255,0.55);}

.guia__lista{display:flex;flex-direction:column;gap:12px;margin-bottom:28px;flex-grow:1;font-family:var(--font-mono);font-size:.81rem;}
.guia__lista li{padding-left:20px;position:relative;color:var(--ink);line-height:1.55;}
.guia--curso .guia__lista li{color:rgba(255,255,255,0.90);}
.guia__lista li::before{content:'—';position:absolute;left:0;color:var(--brote-deep);}
.guia--popular .guia__lista li::before{color:var(--amanecer);}
.guia--curso .guia__lista li::before{color:var(--sol);}

.guia__nota{margin-top:12px;font-size:.72rem;color:var(--text-soft);font-family:var(--font-mono);text-align:center;letter-spacing:.01em;}
.guia--curso .guia__nota{color:rgba(255,255,255,0.50);}
.precio__garantia{margin-top:44px;font-size:.82rem;color:var(--text-soft);font-family:var(--font-mono);text-align:center;letter-spacing:.02em;}

/* ══════════════════════════════════════
   INSTRUCTOR
══════════════════════════════════════ */
.instructor{background:var(--noche);padding:100px 0;}
.instructor__inner{
  display:grid;
  grid-template-columns:290px 1fr;
  align-items:start;gap:80px;
}
.instructor__image{position:relative;align-self:flex-start;}
.instructor__image::before{
  content:'';position:absolute;top:-20px;right:-20px;bottom:20px;left:20px;
  background:linear-gradient(145deg, var(--amanecer) 0%, var(--sol) 100%);
  border-radius:12px;z-index:0;
}
.instructor__image img{
  aspect-ratio:1/1;object-fit:cover;position:relative;z-index:2;
  border-radius:12px;width:100%;
}
.instructor__tag{
  position:absolute;bottom:-16px;left:-16px;z-index:3;background:var(--amanecer);color:#fff;
  font-family:var(--font-mono);font-size:.68rem;letter-spacing:.08em;padding:10px 16px;
  border-radius:3px;box-shadow:var(--shadow);text-transform:uppercase;
}

.instructor__text h3{
  font-size:.80rem;font-weight:600;color:var(--sol);
  font-family:var(--font-mono);margin-bottom:10px;
  text-transform:uppercase;letter-spacing:.1em;
}
.instructor__text h2{
  margin-bottom:10px;font-weight:400;
  font-size:clamp(2.2rem,3.6vw,3.2rem);
  letter-spacing:-.02em;color:#fff;
}
.instructor__text p{margin-bottom:20px;font-size:.97rem;color:rgba(255,255,255,0.68);line-height:1.78;}
.instructor__lead{
  font-size:1.45rem;color:#fff;font-family:var(--font-display);
  font-style:italic;font-weight:400;
  border-left:3px solid var(--amanecer);padding-left:24px;
  margin-bottom:28px;line-height:1.5;
}
.instructor__cierre{margin-top:24px;padding-top:22px;border-top:1px solid rgba(255,255,255,0.12);color:rgba(255,255,255,0.72);font-size:.97rem;line-height:1.78;}
.instructor__cierre strong{color:var(--sol);}
.instructor__credenciales{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;}
.instructor__credenciales span{
  background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.14);
  color:rgba(255,255,255,0.80);font-size:.76rem;font-family:var(--font-mono);
  font-weight:600;padding:8px 14px;letter-spacing:.02em;border-radius:3px;
}

/* ══════════════════════════════════════
   MEDIOS — tarjetas de prensa clicables
══════════════════════════════════════ */
.medios{
  padding:80px 0;
  background:var(--paper-2);
  text-align:center;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.medios__head{
  max-width:560px;margin:0 auto 52px;
}
.medios__titulo{
  font-family:var(--font-display);font-weight:400;
  font-size:clamp(2rem,3.2vw,2.6rem);
  color:var(--ink);margin-bottom:12px;letter-spacing:-.01em;
}
.medios__lead{
  font-size:.95rem;color:var(--text-soft);font-family:var(--font-body);
}
.medios__grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
  max-width:900px;margin:0 auto;
}
.medios__card{
  display:flex;flex-direction:column;align-items:center;
  gap:0;
  text-decoration:none;
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:12px;
  padding:40px 28px 28px;
  box-shadow:0 2px 12px rgba(28,25,22,0.06);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  overflow:hidden;
}
.medios__card:hover{
  transform:translateY(-5px);
  box-shadow:var(--shadow-hover);
  border-color:rgba(28,25,22,0.18);
}
.medios__logo-wrap{
  display:flex;align-items:center;justify-content:center;
  height:56px;margin-bottom:28px;
}
.medios__logo-img{
  height:36px;width:auto;max-width:150px;object-fit:contain;
  filter:grayscale(100%) contrast(1.1);opacity:.60;
  transition:opacity .3s ease, filter .3s ease;
}
.medios__card:hover .medios__logo-img{opacity:1;filter:grayscale(0%);}
.medios__ver{
  display:inline-flex;align-items:center;gap:6px;
  margin-top:auto;
  padding-top:20px;
  border-top:1px solid var(--line);
  width:100%;
  justify-content:center;
  font-family:var(--font-mono);font-weight:600;font-size:.74rem;
  letter-spacing:.06em;text-transform:uppercase;
  color:var(--text-soft);
  transition:color .2s ease;
}
.medios__card:hover .medios__ver{color:var(--amanecer-deep);}

@media (max-width:640px){
  .medios__grid{grid-template-columns:1fr;}
  .medios__card{flex-direction:row;align-items:center;padding:20px 24px;gap:20px;}
  .medios__logo-wrap{height:auto;flex:1;margin-bottom:0;}
  .medios__logo-img{height:26px;}
  .medios__ver{padding-top:0;border-top:none;border-left:1px solid var(--line);padding-left:20px;width:auto;flex-shrink:0;}
}

/* ══════════════════════════════════════
   FAQ
══════════════════════════════════════ */
.faq{background:var(--paper-2);border-top:1px solid var(--line);}
.faq__head{text-align:center;margin-bottom:56px;}
.faq h2{font-size:clamp(2.4rem,3.8vw,3.2rem);font-weight:400;letter-spacing:-.02em;}
.accordion{max-width:800px;margin:0 auto;display:flex;flex-direction:column;text-align:left;border-top:1px solid rgba(28,25,22,0.11);}
.accordion__item{border-bottom:1px solid rgba(28,25,22,0.11);}
.accordion__header{
  width:100%;text-align:left;background:none;border:none;padding:24px 4px;
  font-family:var(--font-display);font-weight:400;font-size:1.35rem;
  color:var(--ink);display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;
  line-height:1.25;
}
.accordion__header .chev{color:var(--amanecer-deep);flex-shrink:0;transition:transform .3s ease;}
.accordion__item.active .chev{transform:rotate(180deg);}
.accordion__body{max-height:0;overflow:hidden;transition:max-height .35s ease;padding:0 4px;}
.accordion__body p{padding-bottom:24px;color:var(--text-soft);max-width:640px;line-height:1.78;}

/* ══════════════════════════════════════
   CTA FINAL
══════════════════════════════════════ */
.cta-final{
  text-align:center;background:var(--noche);
  color:#fff;position:relative;overflow:hidden;
  padding:120px 0;
}
.cta-final::before{
  content:'';position:absolute;top:-140px;left:50%;transform:translateX(-50%);
  width:700px;height:380px;
  background:radial-gradient(ellipse, rgba(212,137,42,0.22), transparent 68%);
}
.cta-final__inner{max-width:560px;margin:0 auto;position:relative;z-index:1;}
.cta-final h2{
  font-size:clamp(2.4rem,3.8vw,3.4rem);margin-bottom:16px;
  color:#fff;font-weight:400;letter-spacing:-.02em;
}
.cta-final p{color:rgba(255,255,255,0.72);margin-bottom:32px;font-size:1.05rem;line-height:1.72;}

/* ══════════════════════════════════════
   FOOTER
══════════════════════════════════════ */
.footer{background:var(--noche-deep);color:rgba(255,255,255,0.60);padding:52px 0 28px;}
.footer__inner{display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;align-items:center;}
.footer__logo{font-family:var(--font-display);font-weight:400;font-size:1.42rem;color:#fff;}
.footer__logo em{font-style:italic;color:var(--sol);}
.footer__links{list-style:none;display:flex;gap:24px;flex-wrap:wrap;}
.footer__links a{color:rgba(255,255,255,0.50);text-decoration:none;font-size:.82rem;font-family:var(--font-mono);transition:color .2s;}
.footer__links a:hover{color:var(--sol);}
.footer__social{display:flex;gap:10px;}
.footer__social a{
  color:#fff;border:1px solid rgba(255,255,255,0.18);border-radius:50%;
  width:36px;height:36px;display:flex;align-items:center;justify-content:center;
  text-decoration:none;transition:background .3s, border-color .3s;
}
.footer__social a:hover{background:var(--amanecer);border-color:transparent;}
.footer__copy{text-align:center;margin-top:32px;font-size:.74rem;opacity:0.45;font-family:var(--font-mono);}

/* ══════════════════════════════════════
   ACCESIBILIDAD
══════════════════════════════════════ */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

/* ══════════════════════════════════════
   FORMULARIOS — captación de leads
══════════════════════════════════════ */
.form{display:flex;flex-direction:column;gap:14px;}
.form input{padding:15px 18px;border:1.5px solid rgba(255,255,255,0.28);background:rgba(255,255,255,0.08);color:#fff;font-family:var(--font-body);font-size:1rem;border-radius:3px;}
.form input::placeholder{color:rgba(255,255,255,0.50);}
.form input:focus{outline:none;border-color:var(--sol);}
.form__mensaje{margin-top:16px;color:var(--sol);font-weight:600;font-family:var(--font-mono);font-size:.88rem;}

.form-lead{margin:0 0 20px;}
.form-lead__row{display:flex;gap:10px;flex-wrap:wrap;}
.form-lead__row input[type="email"]{flex:1 1 240px;min-width:0;}
.form-lead input[type="email"]{
  width:100%;padding:15px 18px;border:1.5px solid var(--line);background:var(--paper);
  color:var(--ink);font-family:var(--font-body);font-size:1rem;border-radius:3px;
}
.form-lead input[type="email"]::placeholder{color:var(--text-soft);}
.form-lead input[type="email"]:focus{outline:none;border-color:var(--amanecer);}
.form-lead input[type="email"][aria-invalid="true"]{border-color:var(--amanecer-deep);}

.form-lead__consent{display:flex;align-items:flex-start;gap:9px;margin-top:12px;font-size:.8rem;color:var(--text-soft);line-height:1.5;cursor:pointer;}
.form-lead__consent input{margin-top:3px;flex-shrink:0;accent-color:var(--amanecer);width:15px;height:15px;cursor:pointer;}
.form-lead__consent a{color:var(--amanecer-deep);}
.form-lead__msg{margin-top:12px;font-family:var(--font-mono);font-size:.82rem;min-height:1.1em;}
.form-lead__msg--ok{color:var(--brote-deep);}
.form-lead__msg--error{color:var(--amanecer-deep);}
.form-lead--card{margin-top:auto;}
.form-lead--card input[type="email"]{margin-bottom:10px;}
.form-lead--dark input[type="email"]{background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.22);color:#fff;}
.form-lead--dark input[type="email"]::placeholder{color:rgba(255,255,255,0.48);}
.form-lead--dark input[type="email"]:focus{border-color:var(--sol);}
.form-lead--dark .form-lead__consent{color:rgba(255,255,255,0.68);}
.form-lead--dark .form-lead__consent a{color:var(--sol);}
.form-lead--dark .form-lead__msg--ok{color:var(--sol);}
.form-lead--dark .form-lead__msg--error{color:#f8cac5;}
.form-lead__legal{font-size:.79rem;color:var(--text-soft);margin-top:10px;line-height:1.55;}
.form-lead__legal a{color:var(--amanecer-deep);}
.form-lead--dark .form-lead__legal{color:rgba(255,255,255,0.52);}
.form-lead--dark .form-lead__legal a{color:var(--sol);}

/* ══════════════════════════════════════
   HAMBURGER
══════════════════════════════════════ */
.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;background:none;border:none;cursor:pointer;padding:8px;border-radius:3px;flex-shrink:0;}
.nav-toggle span{display:block;width:100%;height:2px;background:var(--ink);border-radius:2px;transition:transform .3s ease, opacity .3s ease;}
.nav-toggle.active span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-toggle.active span:nth-child(2){opacity:0;}
.nav-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
@media (max-width:900px){.nav-toggle{display:flex;}}

/* ══════════════════════════════════════
   MOBILE NAV
══════════════════════════════════════ */
.mobile-nav{
  position:fixed;inset:0;top:57px;background:var(--paper);z-index:99;
  padding:32px 24px 40px;display:flex;flex-direction:column;
  transform:translateX(-100%);transition:transform .35s ease;
  overflow-y:auto;pointer-events:none;
}
.mobile-nav.active{transform:translateX(0);pointer-events:auto;}
.mobile-nav__list{list-style:none;display:flex;flex-direction:column;flex:1;margin-bottom:28px;}
.mobile-nav__list li{border-bottom:1px solid var(--line);}
.mobile-nav__list a{display:block;padding:20px 4px;font-family:var(--font-display);font-size:1.65rem;color:var(--ink);text-decoration:none;transition:color .2s;}
.mobile-nav__list a:hover{color:var(--amanecer-deep);}
@media (min-width:901px){.mobile-nav{display:none;}}

/* ══════════════════════════════════════
   STICKY CTA MOVIL
══════════════════════════════════════ */
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:150;padding:12px 16px;background:rgba(250,250,247,0.97);backdrop-filter:blur(12px);border-top:1px solid var(--line);transform:translateY(120%);transition:transform .35s ease;display:none;}
.sticky-cta.visible{transform:translateY(0);}
@media (max-width:768px){.sticky-cta{display:block;}}
body.cookie-open .sticky-cta{transform:translateY(120%);}

/* ══════════════════════════════════════
   PÁGINAS LEGALES
══════════════════════════════════════ */
.legal{padding:120px 0 100px;}
.legal .container{max-width:820px;}
.legal h1{font-size:clamp(2rem,3.2vw,2.6rem);margin-bottom:8px;font-weight:400;}
.legal__actualizado{font-family:var(--font-mono);font-size:.8rem;color:var(--text-soft);margin-bottom:40px;text-transform:uppercase;letter-spacing:.04em;}
.legal h2{font-size:1.35rem;margin:40px 0 14px;color:var(--ink);font-weight:600;font-family:var(--font-body);}
.legal p{margin-bottom:16px;color:var(--text-soft);}
.legal ul{margin:0 0 16px 20px;color:var(--text-soft);}
.legal li{margin-bottom:8px;}
.legal strong{color:var(--ink);}
.legal a{color:var(--amanecer-deep);}
.legal mark{background:var(--sol-pale);color:var(--ink);padding:0 3px;border-radius:2px;}

/* ══════════════════════════════════════
   COOKIE BANNER
══════════════════════════════════════ */
.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:200;background:var(--noche-deep);border-top:1px solid rgba(255,255,255,0.10);box-shadow:0 -10px 30px rgba(0,0,0,0.22);transform:translateY(110%);transition:transform .4s ease;}
.cookie-banner.visible{transform:translateY(0);}
.cookie-banner__inner{max-width:1160px;margin:0 auto;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;}
.cookie-banner__inner p{margin:0;font-size:.9rem;color:rgba(255,255,255,0.80);max-width:640px;}
.cookie-banner__inner a{color:var(--sol);}
.cookie-banner__actions{display:flex;gap:12px;flex-shrink:0;}
.cookie-banner .btn--ghost{border-color:rgba(255,255,255,0.45);color:#fff;}
.cookie-banner .btn--ghost:hover{background:#fff;color:var(--noche);}
@media (max-width:640px){.cookie-banner__inner{flex-direction:column;align-items:stretch;text-align:center;}.cookie-banner__actions{justify-content:center;}}

/* ══════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════ */
@media (max-width:1024px){
  .guias__grid{grid-template-columns:1fr 1fr;}
  .guia--curso{grid-column:1/-1;}
}

@media (max-width:900px){
  .hero{
    display:flex;
    flex-direction:column;
    min-height:auto;
  }
  .hero::after{display:none;}
  .hero__text{
    padding:52px 24px 40px;
    text-align:center;
    align-items:center;
    order:2;
  }
  .hero__subtitle{max-width:100%;}
  .hero__image{
    order:1;
    height:55vw;
    min-height:260px;
    max-height:440px;
  }
  .hero__form .form-lead__row{flex-direction:column;}
  .hero__form .btn{width:100%;justify-content:center;}
  .instructor__inner{grid-template-columns:1fr;gap:48px;}
  .instructor__image{max-width:240px;margin:0 auto;}
}

@media (max-width:768px){
  section{padding:72px 0;}
  .hero__image{height:62vw;}
  .autoridad__item strong{font-size:clamp(3.5rem,14vw,6rem);}
  .cambio__fotos{grid-template-columns:1fr;gap:16px;}
  .cambio__flecha{transform:rotate(90deg);margin:0 auto;}
  .cambio__stats{grid-template-columns:1fr;}
  .cambio__stat{border-right:none;border-bottom:1.5px solid var(--line);}
  .cambio__stat:last-child{border-bottom:none;}
  .guias__grid{grid-template-columns:1fr;}
  .guia--curso{grid-column:auto;}
  .testimonios__grid{grid-template-columns:1fr;}
  .testimonios__grid .testimonio:first-child{padding:40px 28px;}
  .testimonios__grid .testimonio:first-child .testimonio__texto{font-size:1.2rem;}
  .cta-final{padding:80px 0;}
  .footer{padding-bottom:88px;}
  .form-lead__consent{text-align:left;}
  .legal{padding:80px 0 60px;}
  .medios__grid{gap:28px;}
}

@media (max-width:480px){
  .autoridad__inner{flex-direction:column;}
  .autoridad__item{width:100%;padding:24px 24px;}
  .autoridad__item:not(:last-child)::after{display:none;}
  .autoridad__item:not(:last-child){border-bottom:1px solid rgba(255,255,255,0.14);}
}
