:root{
    /* — Paleta de marca: azul zafiro + oro, neutros tintados (sin gris puro) — */
    --tinta:#0d1d2d;          /* azul noche del logo */
    --tinta-2:#102640;
    --azul:#19345c;
    --azul-vivo:#2f5da8;
    --oro:#c8a45c;
    --oro-claro:#e6cd97;
    --oro-prof:#a8843f;
    --crema:#faf6ee;          /* fondo cálido */
    --crema-2:#f3ebdd;
    --papel:#fffdf9;
    /* neutros tintados de azul, nunca gris neutro */
    --texto:#1c2533;
    --suave:#5b657a;          /* "gris" tintado de azul */
    --tenue:#8a93a6;
    --linea:rgba(13,29,45,.10);
    --linea-2:rgba(13,29,45,.06);
    --wa:#25d366;
    --ease:cubic-bezier(.22,1,.36,1);
    --ease-2:cubic-bezier(.16,1,.3,1);
    --s-1:0 1px 2px rgba(13,29,45,.05);
    --s-2:0 10px 30px rgba(13,29,45,.08);
    --s-3:0 26px 60px rgba(13,29,45,.16);
    --s-oro:0 14px 36px rgba(200,164,92,.30);
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    font-family:'Jost',system-ui,-apple-system,sans-serif;
    color:var(--texto);background:var(--crema);line-height:1.7;font-weight:400;
    -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;
  }
  h1,h2,h3,h4{font-family:'Cormorant Garamond',Georgia,serif;line-height:1.08;font-weight:600;letter-spacing:.2px}
  .wrap{max-width:1160px;margin:0 auto;padding:0 28px}
  .acento{color:var(--oro);font-style:italic;font-weight:600}
  .eyebrow{font-family:'Jost',sans-serif;font-size:.7rem;letter-spacing:3.2px;text-transform:uppercase;font-weight:500}

  /* ——— Escala tipográfica modular (fluida) ——— */
  .d-1{font-size:clamp(2.7rem,6vw,4.6rem)}
  .d-2{font-size:clamp(2rem,4vw,3rem)}
  .d-3{font-size:clamp(1.5rem,2.4vw,1.9rem)}

  /* ——— Barra superior ——— */
  .topbar{
    position:sticky;top:0;z-index:60;
    background:rgba(250,246,238,.82);backdrop-filter:blur(12px) saturate(1.2);
    border-bottom:1px solid var(--linea-2);
  }
  .topbar .row{display:flex;align-items:center;justify-content:space-between;height:66px}
  .brand{display:flex;align-items:center;gap:11px;text-decoration:none}
  .brand img{height:34px;width:auto;display:block}
  .brand .nm{font-family:'Cormorant Garamond',serif;font-weight:700;font-size:1.18rem;color:var(--tinta);letter-spacing:.5px;line-height:1}
  .brand .nm small{display:block;font-family:'Jost',sans-serif;font-weight:500;font-size:.56rem;letter-spacing:3px;color:var(--oro-prof);margin-top:2px}
  .topbar .mini{display:inline-flex;align-items:center;gap:8px;font-size:.92rem;font-weight:500;color:var(--tinta);text-decoration:none;border:1px solid var(--linea);padding:8px 18px;border-radius:40px;transition:background .22s var(--ease),border-color .22s var(--ease)}
  .topbar .mini:hover{background:#fff;border-color:rgba(200,164,92,.5)}
  @media(max-width:640px){.topbar .mini{display:none}}

  /* ——— Botones ——— */
  .btn-wa{
    display:inline-flex;align-items:center;gap:11px;
    background:linear-gradient(135deg,#2ee06f,#1fb457);color:#fff;
    font-family:'Jost',sans-serif;font-size:1rem;font-weight:600;letter-spacing:.3px;
    padding:16px 32px;border-radius:50px;text-decoration:none;
    box-shadow:0 12px 30px rgba(37,211,102,.36);transition:transform .22s var(--ease),box-shadow .22s var(--ease);border:none;cursor:pointer;
  }
  .btn-wa:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(37,211,102,.46)}
  .btn-wa svg{width:22px;height:22px;fill:#fff}
  .btn-oro{
    display:inline-flex;align-items:center;gap:10px;
    background:linear-gradient(135deg,var(--oro-claro),var(--oro));color:#33280a;
    font-family:'Jost',sans-serif;font-size:1rem;font-weight:600;letter-spacing:.4px;
    padding:15px 32px;border-radius:50px;text-decoration:none;box-shadow:var(--s-oro);
    transition:transform .22s var(--ease),box-shadow .22s var(--ease);border:none;cursor:pointer;
  }
  .btn-oro:hover{transform:translateY(-2px);box-shadow:0 20px 44px rgba(200,164,92,.42)}
  .nota-wa{font-size:.82rem;color:var(--suave);margin-top:14px;letter-spacing:.2px}

  .wa-float{position:fixed;right:22px;bottom:22px;z-index:99;padding:15px;box-shadow:0 10px 30px rgba(37,211,102,.5);animation:pulso 2.8s infinite}
  @keyframes pulso{0%{box-shadow:0 10px 30px rgba(37,211,102,.5),0 0 0 0 rgba(37,211,102,.4)}70%{box-shadow:0 10px 30px rgba(37,211,102,.5),0 0 0 16px rgba(37,211,102,0)}100%{box-shadow:0 10px 30px rgba(37,211,102,.5),0 0 0 0 rgba(37,211,102,0)}}

  /* ——— HERO editorial asimétrico ——— */
  .hero{
    position:relative;color:#fff;overflow:hidden;
    padding:clamp(54px,8vw,96px) 0 clamp(80px,10vw,124px);
    background:
      radial-gradient(1100px 540px at 85% -12%,rgba(200,164,92,.20),transparent 58%),
      radial-gradient(860px 600px at -5% 115%,rgba(47,93,168,.30),transparent 55%),
      linear-gradient(155deg,var(--tinta) 0%,var(--tinta-2) 52%,var(--azul) 100%);
  }
  .hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.045) 1px,transparent 1px);background-size:26px 26px;opacity:.6;pointer-events:none}
  /* línea fina dorada decorativa */
  .hero::after{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(200,164,92,.55),transparent)}
  .hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(34px,5vw,68px);align-items:center;position:relative;z-index:2}

  .hero-lockup{display:flex;align-items:center;gap:14px;margin-bottom:24px}
  .hero-eye{width:58px;height:58px;flex-shrink:0;filter:drop-shadow(0 8px 22px rgba(0,0,0,.4))}
  .hero-wordmark{font-family:'Cormorant Garamond',serif;font-weight:700;font-size:1.8rem;color:#fff;letter-spacing:1px;line-height:1}
  .hero-wordmark small{display:block;font-family:'Jost',sans-serif;font-weight:500;font-size:.62rem;letter-spacing:4.5px;color:var(--oro-claro);margin-top:4px}
  .badge{
    display:inline-flex;align-items:center;gap:9px;background:rgba(255,255,255,.06);
    border:1px solid rgba(200,164,92,.42);color:var(--oro-claro);
    padding:8px 17px;border-radius:30px;margin-bottom:22px;backdrop-filter:blur(6px);
  }
  .badge .dot{width:6px;height:6px;border-radius:50%;background:var(--oro);box-shadow:0 0 0 4px rgba(200,164,92,.22)}
  .hero h1{margin-bottom:22px;letter-spacing:.4px;font-weight:600}
  .hero h1 .l2{display:block;color:var(--oro-claro);font-style:italic;font-weight:600}
  .hero p.sub{font-size:clamp(1.02rem,1.4vw,1.18rem);font-weight:300;opacity:.92;margin-bottom:32px;max-width:30ch}

  .datos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12);border-radius:16px;overflow:hidden;margin-bottom:34px;max-width:440px}
  .dato{background:rgba(13,29,45,.34);padding:14px 18px}
  .dato b{display:block;color:var(--oro-claro);font-family:'Jost',sans-serif;font-size:.64rem;text-transform:uppercase;letter-spacing:1.8px;margin-bottom:4px;font-weight:600}
  .dato span{font-size:1rem;font-weight:300}

  .hero-foto{
    position:relative;border-radius:22px;aspect-ratio:4/5;
    background:linear-gradient(160deg,rgba(255,255,255,.12),rgba(255,255,255,.02));
    border:1px solid rgba(255,255,255,.16);box-shadow:var(--s-3);
    display:flex;align-items:center;justify-content:center;text-align:center;padding:26px;
    color:rgba(255,255,255,.66);font-size:.9rem;font-weight:300;overflow:hidden;
  }
  .hero-foto::after{content:"";position:absolute;inset:0;border-radius:22px;box-shadow:inset 0 0 0 1px rgba(200,164,92,.28)}
  .hero-foto .marco{position:absolute;inset:14px;border:1px solid rgba(200,164,92,.32);border-radius:14px}
  /* Para foto real: agrega style="background-image:url('andrea.jpg');background-size:cover;background-position:center" y borra el texto */
  .hero-foto .firma{position:absolute;bottom:16px;left:16px;display:flex;align-items:center;gap:8px;background:rgba(13,29,45,.5);backdrop-filter:blur(4px);border:1px solid rgba(200,164,92,.4);padding:7px 13px 7px 9px;border-radius:30px}
  .hero-foto .firma .firma-icon{width:22px;height:22px;flex-shrink:0}
  .hero-foto .firma span{font-family:'Jost',sans-serif;font-weight:500;font-size:.72rem;letter-spacing:.6px;color:#fff}

  /* tira de confianza */
  .tira{position:relative;z-index:2;margin-top:clamp(40px,6vw,64px);padding-top:26px;border-top:1px solid rgba(255,255,255,.12);display:flex;flex-wrap:wrap;gap:28px;align-items:center;color:rgba(255,255,255,.8)}
  .tira .it{display:flex;align-items:center;gap:9px;font-size:.88rem;font-weight:300}
  .tira .it b{color:var(--oro-claro);font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:700;line-height:1}

  .wave{display:block;width:100%;height:58px;margin-top:-1px}

  /* ——— Secciones ——— */
  section.bloque{padding:clamp(60px,9vw,104px) 0}
  .sec-head{max-width:620px;margin-bottom:clamp(40px,5vw,60px)}
  .sec-head.centro{margin-left:auto;margin-right:auto;text-align:center}
  .eyebrow-c{color:var(--oro-prof);display:block;margin-bottom:14px}
  .titulo{color:var(--tinta)}
  .lead{color:var(--suave);font-size:1.05rem;font-weight:300;margin-top:14px}

  /* — "Lo que vas a lograr": lista editorial numerada, SIN tiles de iconos — */
  .logros{border-top:1px solid var(--linea)}
  .logro{
    display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:baseline;
    padding:30px 6px;border-bottom:1px solid var(--linea);
    transition:background .25s var(--ease),padding-left .25s var(--ease);
  }
  .logro:hover{background:linear-gradient(90deg,rgba(200,164,92,.06),transparent);padding-left:18px}
  .logro .num{font-family:'Cormorant Garamond',serif;font-size:1.4rem;font-weight:700;color:var(--oro);font-feature-settings:"lnum";min-width:42px}
  .logro .txt h3{font-size:1.55rem;color:var(--tinta);margin-bottom:4px;font-weight:600}
  .logro .txt p{color:var(--suave);font-weight:300;font-size:1rem;max-width:60ch}
  .logro .tag{font-family:'Jost',sans-serif;font-size:.66rem;letter-spacing:1.6px;text-transform:uppercase;color:var(--tenue);font-weight:500;white-space:nowrap}
  @media(max-width:640px){.logro{grid-template-columns:auto 1fr;gap:18px}.logro .tag{display:none}}

  /* — Incluye + precio — */
  .precio-bloque{
    position:relative;color:#fff;border-radius:26px;padding:clamp(38px,5vw,62px);box-shadow:var(--s-3);
    display:grid;grid-template-columns:1.18fr .82fr;gap:clamp(34px,4vw,52px);align-items:center;overflow:hidden;
    background:radial-gradient(700px 420px at 92% 8%,rgba(200,164,92,.18),transparent 60%),linear-gradient(140deg,var(--tinta-2),var(--tinta));
  }
  .precio-bloque::before{content:"";position:absolute;inset:0;border-radius:26px;box-shadow:inset 0 0 0 1px rgba(200,164,92,.22);pointer-events:none}
  .precio-bloque h2{color:#fff;margin-top:10px}
  .incluye-lista{list-style:none;margin-top:22px}
  .incluye-lista li{padding:10px 0 10px 36px;position:relative;font-size:1.04rem;font-weight:300}
  .incluye-lista li::before{content:"";position:absolute;left:0;top:13px;width:18px;height:18px;border-radius:50%;background:rgba(200,164,92,.16);border:1px solid rgba(200,164,92,.5)}
  .incluye-lista li::after{content:"";position:absolute;left:6px;top:18px;width:6px;height:3px;border-left:2px solid var(--oro-claro);border-bottom:2px solid var(--oro-claro);transform:rotate(-45deg)}
  .precio-card{background:rgba(255,255,255,.05);border:1px solid rgba(200,164,92,.38);border-radius:20px;padding:36px 30px;text-align:center;backdrop-filter:blur(6px)}
  .precio-early{font-family:'Jost',sans-serif;font-size:.72rem;text-transform:uppercase;letter-spacing:2px;color:var(--oro-claro);font-weight:600}
  .precio-num{font-family:'Cormorant Garamond',serif;font-size:4rem;font-weight:700;margin:6px 0 2px;line-height:1;color:#fff;font-feature-settings:"lnum"}
  .precio-tachado{opacity:.5;text-decoration:line-through;font-size:1rem}
  .precio-nota{font-size:.82rem;opacity:.8;margin-top:10px;font-weight:300}

  /* — Cupo — */
  .cupo{text-align:center;background:var(--papel);border:1px solid var(--linea);border-radius:24px;padding:clamp(40px,5vw,56px) 40px;box-shadow:var(--s-2);max-width:720px;margin:0 auto}
  .cupo-puntos{display:flex;justify-content:center;gap:12px;margin:28px 0;flex-wrap:wrap}
  .silla{width:46px;height:52px;border-radius:13px;display:flex;align-items:center;justify-content:center;background:var(--crema-2);border:1px solid rgba(200,164,92,.45);transition:transform .22s var(--ease),box-shadow .22s var(--ease)}
  .silla svg{width:22px;height:22px;fill:var(--oro-prof)}
  .silla:hover{transform:translateY(-4px);box-shadow:var(--s-1)}
  .silla.ocupada{background:linear-gradient(135deg,var(--azul),var(--tinta));border-color:transparent;opacity:.42}
  .silla.ocupada svg{fill:#fff}

  /* — Testimonios — */
  .grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(264px,1fr));gap:24px}
  .testi{background:var(--papel);border:1px solid var(--linea);border-radius:18px;padding:32px 30px;box-shadow:var(--s-1);position:relative;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
  .testi:hover{transform:translateY(-4px);box-shadow:var(--s-2)}
  .testi .estrellas{color:var(--oro);margin-bottom:14px;letter-spacing:3px;font-size:.9rem}
  .testi p{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.24rem;color:var(--texto);margin-bottom:18px;line-height:1.38}
  .testi .quien{font-family:'Jost',sans-serif;font-weight:500;color:var(--azul);font-size:.84rem;letter-spacing:.3px}

  /* — FAQ — */
  .faq-wrap{max-width:800px;margin:0 auto}
  details{background:var(--papel);border:1px solid var(--linea);border-radius:14px;padding:4px 26px;margin-bottom:12px;box-shadow:var(--s-1);transition:box-shadow .22s var(--ease)}
  details[open]{box-shadow:var(--s-2)}
  summary{cursor:pointer;font-family:'Cormorant Garamond',serif;font-size:1.32rem;font-weight:600;padding:18px 0;color:var(--tinta);list-style:none;position:relative;padding-right:38px}
  summary::-webkit-details-marker{display:none}
  summary::after{content:"";position:absolute;right:2px;top:50%;width:11px;height:11px;border-right:2px solid var(--oro);border-bottom:2px solid var(--oro);transform:translateY(-65%) rotate(45deg);transition:transform .25s var(--ease)}
  details[open] summary::after{transform:translateY(-35%) rotate(-135deg)}
  details p{padding:0 0 20px;color:var(--suave);font-weight:300}

  /* — CTA final — */
  .cta-final{position:relative;color:#fff;text-align:center;padding:clamp(56px,7vw,84px) 30px;border-radius:28px;overflow:hidden;box-shadow:var(--s-3);background:radial-gradient(620px 320px at 50% -12%,rgba(200,164,92,.24),transparent 60%),linear-gradient(150deg,var(--tinta-2),var(--tinta))}
  .cta-final::before{content:"";position:absolute;inset:0;border-radius:28px;box-shadow:inset 0 0 0 1px rgba(200,164,92,.2)}
  .cta-icon{width:52px;height:52px;margin-bottom:22px;filter:drop-shadow(0 6px 16px rgba(0,0,0,.3))}
  .cta-final h2{color:#fff;margin-bottom:14px}
  .cta-final p{opacity:.9;margin-bottom:32px;max-width:54ch;margin-left:auto;margin-right:auto;font-weight:300;font-size:1.08rem}

  footer{padding:48px 20px 40px;border-top:1px solid var(--linea);background:var(--crema)}
  footer .row{max-width:1160px;margin:0 auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px}
  footer .brand-f{display:flex;align-items:center;gap:11px}
  footer .brand-f .brand-f-icon{width:32px;height:32px}
  footer .brand-f .nm{font-family:'Cormorant Garamond',serif;font-weight:700;font-size:1.12rem;color:var(--tinta);letter-spacing:.5px}
  footer .meta{color:var(--suave);font-size:.84rem;font-weight:300;text-align:right}
  @media(max-width:560px){footer .row{flex-direction:column;text-align:center}footer .meta{text-align:center}}

  /* — Cuenta regresiva — */
  .countdown{display:flex;align-items:center;gap:6px;margin-bottom:28px}
  .cd-item{text-align:center;background:rgba(255,255,255,.07);border:1px solid rgba(200,164,92,.35);border-radius:12px;padding:10px 16px;min-width:62px}
  .cd-item span{display:block;font-family:'Cormorant Garamond',serif;font-size:2rem;font-weight:700;color:#fff;line-height:1;font-feature-settings:"lnum"}
  .cd-item small{display:block;font-family:'Jost',sans-serif;font-size:.58rem;letter-spacing:2px;text-transform:uppercase;color:var(--oro-claro);opacity:.8;margin-top:4px}
  .cd-sep{font-family:'Cormorant Garamond',serif;font-size:1.6rem;color:var(--oro);opacity:.6;line-height:1;padding-bottom:14px}
  @media(max-width:400px){.cd-item{min-width:52px;padding:8px 10px}.cd-item span{font-size:1.6rem}}

  /* — Logo topbar: símbolo SVG inline — */
  .brand-icon{width:34px;height:34px;flex-shrink:0}

  /* reveal — entrada suave, respeta reduced-motion */
  .reveal{opacity:0;transform:translateY(22px);transition:opacity .6s var(--ease-2),transform .6s var(--ease-2)}
  .reveal.vis{opacity:1;transform:none}
  @media(prefers-reduced-motion:reduce){
    *{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
    .reveal{opacity:1;transform:none}
  }

  @media(max-width:880px){
    .hero-grid{grid-template-columns:1fr;gap:38px}
    .hero-foto{max-width:380px;margin:0 auto;width:100%;aspect-ratio:3/4}
    .precio-bloque{grid-template-columns:1fr;text-align:center}
    .incluye-lista{text-align:left;max-width:380px;margin:0 auto}
    .incluye-lista li{padding-left:34px}
  }

  /* ——— Móvil ——— */
  @media(max-width:600px){
    .hero{padding:48px 0 64px}
    .hero-eye{width:46px;height:46px}
    .hero-wordmark{font-size:1.5rem}
    .hero h1{font-size:2.4rem}
    .hero p.sub{font-size:1rem;max-width:100%}
    .datos{max-width:100%}
    .dato{padding:12px 14px}
    .tira{gap:18px}
    .tira .it{font-size:.82rem}
    .btn-wa{font-size:.95rem;padding:14px 24px;width:100%;justify-content:center}
    .btn-oro{font-size:.95rem;padding:14px 24px;width:100%;justify-content:center}
    .nota-wa{text-align:center}
    .countdown{gap:4px;justify-content:center}
    .cd-item{min-width:56px;padding:9px 10px}
    .cd-item span{font-size:1.7rem}
    .logro{gap:14px}
    .logro .txt h3{font-size:1.3rem}
    .precio-bloque{padding:32px 24px}
    .precio-num{font-size:3.2rem}
    .cupo{padding:32px 20px}
    .cupo-puntos{gap:8px}
    .silla{width:40px;height:46px}
    .grid-3{grid-template-columns:1fr}
    .testi{padding:24px 22px}
    .cta-final{padding:48px 22px}
    details{padding:4px 18px}
    summary{font-size:1.15rem}
    .wrap{padding:0 18px}
    .faq-wrap{padding:0}
  }
