:root{
  --lavanda:#EFEFF7; --blanco:#FFFFFF; --azul:#3B30D9; --indigo:#1F1A80; --indigo-hondo:#15105E;
  --lila:#E4E3FA; --borde:#CFCDF0; --texto-suave:#4A4790;
  --serif:"Playfair Display",Georgia,"Times New Roman",serif;
  --sans:"DM Sans","Helvetica Neue",Helvetica,Arial,sans-serif;
  --ancho:1160px;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
}
*,*::before,*::after{box-sizing:inherit}
html{scroll-behavior:smooth;scroll-padding-top:calc(84px + env(safe-area-inset-top,0px));-webkit-text-size-adjust:100%}
body{margin:0;background:var(--lavanda);color:var(--indigo);font-family:var(--sans);font-size:17px;line-height:1.55}
img,svg{max-width:100%}
a{color:inherit}
:focus-visible{outline:3px solid var(--azul);outline-offset:3px;border-radius:6px}
.wrap{max-width:var(--ancho);margin:0 auto;padding:0 24px}
h1,h2,h3{font-family:var(--serif);font-weight:600;margin:0;line-height:1.08;letter-spacing:-.01em}
p{margin:0}

/* Botones */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border-radius:999px;font:500 17px/1 var(--sans);text-decoration:none;border:1.5px solid transparent;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.btn svg{flex-shrink:0}
.btn-oscuro{background:var(--indigo);color:#fff}
.btn-oscuro:hover{background:var(--indigo-hondo)}
.btn-azul{background:var(--azul);color:#fff}
.btn-azul:hover{background:#2F25B8}
.btn-borde{background:transparent;color:var(--indigo);border-color:var(--indigo)}
.btn-borde:hover{background:var(--indigo);color:#fff}
.btn-blanco{background:#fff;color:var(--indigo)}
.btn-blanco:hover{background:var(--lila)}

/* Header */
.top{position:sticky;top:0;z-index:20;background:rgba(239,239,247,.92);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid transparent;padding-top:env(safe-area-inset-top,0px)}
.top.con-borde{border-bottom-color:var(--borde)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:72px;gap:20px}
.marca{display:inline-flex;flex-direction:column;align-items:center;text-decoration:none;line-height:1}
.marca b{font-family:var(--serif);font-weight:600;font-size:26px;letter-spacing:.06em;position:relative}
.marca b svg{position:absolute;top:-9px;left:50%;transform:translateX(-50%)}
.marca small{font-family:var(--serif);font-size:11px;letter-spacing:.35em;margin-top:3px;padding-left:.35em;color:var(--texto-suave)}
.nav{display:flex;align-items:center;gap:28px}
.nav a{text-decoration:none;font-size:16px;font-weight:500}
.nav a:hover{color:var(--azul)}
.nav .btn{min-height:44px;padding:0 20px;font-size:15px}
@media (max-width:820px){.nav a:not(.btn){display:none}}

/* Hero */
.hero{padding:72px 0 88px;overflow-x:clip}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);gap:56px;align-items:center}
.hero h1{font-weight:800;font-size:clamp(40px,5.6vw,72px);line-height:1.04;letter-spacing:-.02em}
.hero-sub{margin-top:26px;font-size:19px;max-width:36em;color:var(--texto-suave)}
.hero-acciones{margin-top:34px;display:flex;flex-wrap:wrap;gap:14px}
.hero-nota{margin-top:22px;display:flex;align-items:center;gap:10px;font-size:15px;color:var(--texto-suave)}

.hoja{position:relative;background:#fff;border-radius:18px;padding:34px 32px 30px;box-shadow:0 30px 60px -20px rgba(31,26,128,.35);transform:rotate(2.5deg);max-width:400px;justify-self:center;width:100%}
.hoja::before{content:"";position:absolute;inset:14px -14px -14px 14px;background:var(--azul);border-radius:18px;z-index:-1;transform:rotate(-5deg)}
.hoja .linea{height:10px;border-radius:5px;background:var(--lila);margin-top:10px}
.hoja .titulo{height:18px;width:62%;background:var(--indigo);border-radius:6px}
.hoja .sub{height:10px;width:40%;background:var(--azul);border-radius:5px;margin-top:12px}
.hoja hr{border:0;border-top:1.5px solid var(--borde);margin:24px 0 18px}
.hoja .bloque{display:grid;grid-template-columns:28px 1fr;gap:12px;align-items:start;margin-top:16px}
.hoja .punto{width:28px;height:28px;border-radius:50%;background:var(--lila);display:grid;place-items:center}
.hoja .sello{position:absolute;right:-18px;bottom:28px;background:var(--indigo);color:#fff;border-radius:999px;padding:10px 16px;font-size:14px;font-weight:700;display:flex;align-items:center;gap:8px;transform:rotate(-2.5deg)}
@media (max-width:900px){
  .hero{padding:40px 0 64px}
  .hero .wrap{grid-template-columns:1fr;gap:56px}
  .hoja{max-width:340px}
}

/* Secciones */
.seccion{padding:96px 0}
.cabeza{max-width:640px;margin-bottom:48px}
.cabeza h2{font-size:clamp(36px,5vw,56px)}
.cabeza p{margin-top:14px;font-size:18px;color:var(--texto-suave)}
.divisor{display:flex;align-items:center;gap:12px;margin-bottom:22px}
.divisor span{width:120px;height:2px;background:var(--azul)}

/* Planes */
.planes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:center;padding:14px 0}
.plan{background:#fff;border:1.5px solid var(--borde);border-radius:22px;padding:30px 24px 26px;display:flex;flex-direction:column;gap:22px;height:100%}
.plan h3{font-size:26px;line-height:1.15}
.plan .desc{margin-top:10px;font-size:16px;line-height:1.5;color:var(--texto-suave)}
.plan.destacado .desc{color:var(--lila)}
.plan ul{list-style:none;margin:0;padding:22px 0 0;border-top:1.5px solid var(--lila);display:flex;flex-direction:column;gap:14px}
.plan li{display:grid;grid-template-columns:24px 1fr;gap:10px;font-size:16.5px;line-height:1.35}
.plan li svg{margin-top:1px}
.plan-pie{margin-top:auto;padding-top:18px;border-top:1px solid var(--lila);display:flex;flex-direction:column;gap:16px}
.precio{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.precio span{font-size:15px;color:var(--texto-suave)}
.precio strong{font-family:var(--serif);font-weight:600;font-size:40px;line-height:1}
.plan .completo{display:inline-flex;align-items:center;gap:7px;padding:5px 13px;border:1.5px solid var(--azul);color:var(--azul);border-radius:999px;font-size:13px;font-weight:700;width:max-content;margin-top:12px}
.plan .btn{width:100%}

.plan.destacado{background:var(--azul);border-color:var(--azul);color:#fff;padding:0;overflow:hidden;box-shadow:0 30px 60px -24px rgba(31,26,128,.55);min-height:108%}
.plan.destacado .franja{background:var(--indigo-hondo);padding:14px 18px;display:flex;align-items:center;justify-content:center;gap:9px;font-size:14px;font-weight:700;letter-spacing:.06em}
.plan.destacado .cuerpo{padding:28px 24px 26px;display:flex;flex-direction:column;gap:22px;flex-grow:1}
.plan.destacado h3{font-size:30px}
.plan.destacado ul{border-top-color:rgba(255,255,255,.3)}
.plan.destacado .plan.destacado .plan-pie{border-top-color:rgba(255,255,255,.3)}
.plan.destacado .precio span{color:var(--lila)}
.plan.destacado .precio strong{font-size:48px}

.cuotas{margin-top:40px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px}
.cuotas .chip{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 22px;background:#fff;border:1.5px solid var(--indigo);border-radius:999px;font-size:17px}

@media (max-width:1100px){
  .planes{grid-template-columns:repeat(2,minmax(0,1fr))}
  .plan.destacado{min-height:0}
}
@media (max-width:640px){
  .planes{grid-template-columns:1fr;max-width:460px;margin:0 auto}
}

/* Qué incluye */
.incluye{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px}
.incluye .icono{width:52px;height:52px;border-radius:50%;background:#fff;border:1.5px solid var(--borde);display:grid;place-items:center;margin-bottom:18px}
.incluye h3{font-size:24px;margin-bottom:10px}
.incluye p{color:var(--texto-suave);font-size:16px}
@media (max-width:900px){.incluye{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:540px){.incluye{grid-template-columns:1fr}}

/* LinkedIn + Búsqueda Laboral */
.explica{background:#fff}
.explica .grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:stretch}
.explica .cabeza{margin-bottom:28px}
.explica .cabeza h2{font-size:clamp(32px,4vw,46px)}
.razones{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:22px}
.razones li{display:grid;grid-template-columns:44px 1fr;gap:16px}
.razones .icono{width:44px;height:44px;border-radius:50%;background:var(--lila);display:grid;place-items:center}
.razones h3{font-size:21px;margin-bottom:4px}
.razones p{color:var(--texto-suave);font-size:16px}
.como-busqueda{background:var(--azul);color:#fff;border-radius:24px;padding:40px 36px;display:flex;flex-direction:column}
.como-busqueda .cabeza p{color:var(--lila)}
.como-busqueda .divisor span{background:#fff}
.etapas{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.etapas li{display:grid;grid-template-columns:40px 1fr;gap:16px;padding:18px 0;border-top:1px solid rgba(255,255,255,.28)}
.etapas .n{width:40px;height:40px;border-radius:50%;background:#fff;color:var(--azul);display:grid;place-items:center;font-family:var(--serif);font-weight:600;font-size:20px}
.etapas h3{font-size:21px;margin-bottom:4px}
.etapas p{color:var(--lila);font-size:16px}
.etapas .clave{margin-top:12px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.35);border-radius:14px;padding:14px 16px;color:#fff;display:flex;gap:10px;align-items:flex-start}
.como-busqueda .btn{margin-top:26px;align-self:flex-start}
@media (max-width:900px){.explica .grid{grid-template-columns:1fr}.como-busqueda{padding:32px 22px}}

/* Pasos */
.pasos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1.5px solid var(--indigo)}
.pasos li{padding:28px 28px 0 0}
.pasos .num{font-family:var(--serif);font-size:56px;font-weight:500;line-height:1;color:var(--azul)}
.pasos h3{font-size:24px;margin:16px 0 8px}
.pasos p{color:var(--texto-suave);font-size:16px;max-width:28em}
@media (max-width:760px){.pasos{grid-template-columns:1fr}.pasos li{padding:24px 0;border-bottom:1px solid var(--borde)}}

/* Otros servicios */
.otros{background:#fff}
.otros .grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px;align-items:start}
.otros .cabeza{margin-bottom:0;position:sticky;top:110px}
.otros .cabeza .btn{margin-top:28px}
.servicios{list-style:none;margin:0;padding:0}
.servicios li{display:grid;grid-template-columns:48px 1fr;gap:18px;padding:26px 0;border-bottom:1px solid var(--borde)}
.servicios li:first-child{border-top:1px solid var(--borde)}
.servicios .icono{width:48px;height:48px;border-radius:50%;background:var(--lila);display:grid;place-items:center}
.servicios h3{font-size:24px;margin-bottom:6px}
.servicios p{color:var(--texto-suave);font-size:16px}
@media (max-width:860px){.otros .grid{grid-template-columns:1fr;gap:36px}.otros .cabeza{position:static}}

/* Contacto */
.contacto{background:var(--indigo);color:#fff}
.contacto .grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px;align-items:start}
.contacto .cabeza p{color:var(--lila)}
.contacto .divisor span{background:#fff}
.contacto .directo{margin-top:30px;display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.contacto .directo small{color:var(--lila);font-size:15px}
form{background:#fff;color:var(--indigo);border-radius:24px;padding:36px 34px}
fieldset{border:0;margin:0 0 26px;padding:0}
legend,.etiqueta{display:block;font-weight:700;font-size:16px;margin-bottom:12px;padding:0}
.opciones{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.opcion{position:relative}
.opcion.ancha{grid-column:1/-1}
.opcion input{position:absolute;opacity:0;width:1px;height:1px}
.opcion label{display:flex;flex-direction:column;gap:2px;min-height:64px;justify-content:center;padding:12px 16px 12px 44px;border:1.5px solid var(--borde);border-radius:14px;cursor:pointer;font-size:16px;font-weight:500;line-height:1.25;position:relative;transition:border-color .15s,background .15s}
.opcion label small{font-size:14px;font-weight:400;color:var(--texto-suave)}
.opcion label::before{content:"";position:absolute;left:16px;top:50%;width:18px;height:18px;margin-top:-9px;border-radius:50%;border:1.5px solid var(--texto-suave);background:#fff}
.opcion label:hover{border-color:var(--azul)}
.opcion input:checked + label{border-color:var(--azul);background:var(--lila)}
.opcion input:checked + label::before{border:5.5px solid var(--azul)}
.opcion input:focus-visible + label{outline:3px solid var(--azul);outline-offset:2px}
.opciones .separador{grid-column:1/-1;font-size:14px;color:var(--texto-suave);margin:8px 0 0}
.campo{margin-bottom:22px}
.campo input,.campo textarea{width:100%;font:400 17px/1.4 var(--sans);color:var(--indigo);background:var(--lavanda);border:1.5px solid transparent;border-radius:12px;padding:14px 16px;min-height:52px}
.campo textarea{min-height:110px;resize:vertical}
.campo input:focus,.campo textarea:focus{outline:none;border-color:var(--azul);background:#fff}
.campo .opcional{font-weight:400;color:var(--texto-suave)}
.error{display:none;margin-top:8px;font-size:15px;color:#B42318;font-weight:500}
.con-error .error{display:block}
.con-error input{border-color:#B42318}
form .btn{width:100%;min-height:56px;font-size:18px}
.aviso-form{margin-top:12px;font-size:14px;color:var(--texto-suave);text-align:center}
@media (max-width:860px){.contacto .grid{grid-template-columns:1fr;gap:40px}}
@media (max-width:520px){.opciones{grid-template-columns:1fr}form{padding:28px 20px}}

/* Footer */
footer{padding:40px 0 calc(40px + env(safe-area-inset-bottom,0px));font-size:15px;color:var(--texto-suave)}
footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px}
footer nav{display:flex;gap:22px}
footer a{text-decoration:none;font-weight:500;color:var(--indigo)}
footer a:hover{color:var(--azul)}

/* WhatsApp flotante */
.wa-flotante{position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:30;width:60px;height:60px;border-radius:50%;background:#1F8F4E;color:#fff;display:grid;place-items:center;box-shadow:0 12px 30px -8px rgba(21,16,94,.5);text-decoration:none}
.wa-flotante:hover{background:#18763F}

/* Entrada del hero (único momento de movimiento) */
@media (prefers-reduced-motion:no-preference){
  .hero-texto > *{animation:sube .7s cubic-bezier(.2,.7,.2,1) both}
  .hero-texto > *:nth-child(2){animation-delay:.08s}
  .hero-texto > *:nth-child(3){animation-delay:.16s}
  .hero-texto > *:nth-child(4){animation-delay:.24s}
  .hoja{animation:gira .9s .2s cubic-bezier(.2,.7,.2,1) both}
  @keyframes sube{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
  @keyframes gira{from{opacity:0;transform:rotate(-4deg) translateY(24px)}to{opacity:1;transform:rotate(2.5deg)}}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Reseñas */
.resenas{background:var(--lila)}
.resenas-grid{column-count:3;column-gap:22px}
.resena{break-inside:avoid;margin:0 0 22px;background:#fff;border:1.5px solid var(--borde);border-radius:20px;padding:26px 24px 22px;position:relative}
.resena::before{content:"\201C";position:absolute;top:6px;left:20px;font-family:var(--serif);font-size:64px;line-height:1;color:var(--azul);opacity:.9}
.resena blockquote{margin:0;padding-top:30px;font-size:17px;line-height:1.5}
.resena figcaption{margin-top:18px;display:flex;align-items:center;gap:12px;font-weight:700;font-size:16px}
.resena .ini{width:38px;height:38px;border-radius:50%;background:var(--lila);color:var(--azul);display:grid;place-items:center;font-family:var(--serif);font-size:19px;font-weight:600}
@media (max-width:960px){.resenas-grid{column-count:2}}
@media (max-width:620px){.resenas-grid{column-count:1}}

/* Carrusel de reseñas */
.carrusel{position:relative}
.pista{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 24px;margin:0 -24px;padding:6px 24px 14px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.pista::-webkit-scrollbar{display:none}
.pista .resena{flex:0 0 min(340px,82vw);margin:0;scroll-snap-align:start;display:flex;flex-direction:column}
.pista .resena blockquote{flex-grow:1}
.carrusel-pie{margin-top:22px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.flechas{display:flex;gap:10px}
.flecha{width:52px;height:52px;border-radius:50%;border:1.5px solid var(--indigo);background:#fff;color:var(--indigo);display:grid;place-items:center;cursor:pointer;transition:background .15s,color .15s,opacity .15s}
.flecha:hover:not(:disabled){background:var(--indigo);color:#fff}
.flecha:disabled{opacity:.35;cursor:default}
@media (max-width:620px){.flechas{display:none}}

/* Navegación secundaria en celular */
.subnav{display:none}
@media (max-width:820px){
  .subnav{display:flex;gap:10px;overflow-x:auto;padding:6px 24px 14px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .subnav::-webkit-scrollbar{display:none}
  .subnav a{flex:0 0 auto;white-space:nowrap;text-decoration:none;font-weight:500;font-size:15px;padding:9px 16px;border:1.5px solid var(--borde);border-radius:999px;background:#fff}
  .subnav a[aria-current=page]{background:var(--indigo);color:#fff;border-color:var(--indigo)}
}

/* Plus: 5 postulaciones */
.plus{margin-top:26px;display:flex;align-items:center;gap:18px;flex-wrap:wrap;background:#fff;border:1.5px dashed var(--azul);border-radius:18px;padding:18px 22px}
.plus .mas{width:42px;height:42px;border-radius:50%;background:var(--azul);color:#fff;display:grid;place-items:center;font-size:28px;line-height:1;flex-shrink:0}
.plus .txt{flex:1 1 280px;display:flex;flex-direction:column;gap:2px}
.plus .txt strong{font-size:18px;font-weight:700}
.plus .txt span{font-size:15px;color:var(--texto-suave)}
.plus .precio-plus{font-family:var(--serif);font-weight:600;font-size:32px;line-height:1}
.plus .btn{min-height:46px}
.opcion.check label::before{border-radius:6px}
#grupo-plus[hidden]{display:none}

/* Plan en celeste claro */
.plan.claro{background:#DCE7FF;border-color:#B3C5F3}
.plan.claro ul,.plan.claro .plan-pie{border-top-color:#B3C5F3}
.plan.claro .btn-borde:hover{background:var(--indigo);color:#fff}

/* Resultados (antes / después y galería) */
.resultados-intro{padding:64px 0 24px}
.resultados-intro .cabeza{margin-bottom:0}
.resultados-intro h1{font-size:clamp(40px,6vw,68px);font-weight:800;letter-spacing:-.02em}
.resultados-intro .cabeza p{margin-top:16px}
.nota-privacidad{display:inline-flex;align-items:center;gap:10px;margin-top:22px;font-size:15px;color:var(--texto-suave)}
.pares{display:flex;flex-direction:column;gap:56px}
.par h3{font-size:26px;margin-bottom:6px}
.par .quien{color:var(--texto-suave);font-size:16px;margin-bottom:20px}
.par-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;max-width:880px}
.cv{position:relative;margin:0}
.cv a{display:block;border-radius:14px;overflow:hidden;background:#fff;border:1.5px solid var(--borde);box-shadow:0 18px 40px -22px rgba(31,26,128,.4);transition:transform .2s,box-shadow .2s}
.cv a:hover{transform:translateY(-3px);box-shadow:0 24px 44px -20px rgba(31,26,128,.5)}
.cv img{display:block;width:100%;height:auto}
.cv .tag{position:absolute;top:12px;left:12px;z-index:1;padding:6px 14px;border-radius:999px;font-size:13px;font-weight:700;letter-spacing:.04em;background:#fff;color:var(--indigo);border:1.5px solid var(--borde)}
.cv .tag.despues{background:var(--azul);color:#fff;border-color:var(--azul)}
.cv figcaption{margin-top:10px;font-size:15px;color:var(--texto-suave)}
.galeria{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.galeria .cv figcaption strong{display:block;color:var(--indigo);font-size:17px;font-weight:700}
.resultados-home .par-grid{max-width:880px}
.resultados-home .acciones{margin-top:36px;display:flex;flex-wrap:wrap;gap:14px}
.cta-final{background:var(--indigo);color:#fff;text-align:center}
.cta-final h2{font-size:clamp(32px,4.6vw,52px);max-width:16em;margin:0 auto}
.cta-final p{margin:16px auto 0;color:var(--lila);max-width:32em}
.cta-final .acciones{margin-top:30px;display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
@media (max-width:900px){.galeria{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.par-grid{gap:12px}.galeria{grid-template-columns:1fr;max-width:420px;margin:0 auto}.cv .tag{top:8px;left:8px;padding:5px 11px;font-size:12px}}
