
:root{
  --bg:#fff; --ink:#151515; --muted:#6b7280;
  --brand:#7c3aed; --wa:#25D366; --card:#f8f7fb; --chip:#ede9fe;
  --radius:18px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);
  font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial}
img{max-width:100%;display:block}
.container{max-width:1120px;margin:0 auto;padding:0 20px}

/* Header */
.site-header{position:sticky;top:0;background:#fff;border-bottom:1px solid #eee;z-index:50}
.nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:64px}
.brand img{height:32px}
.menu{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.menu a{color:var(--ink);text-decoration:none;font-weight:600}
.btn{display:inline-flex;align-items:center;gap:.5rem;border-radius:999px;padding:.8rem 1.1rem;font-weight:700;text-decoration:none;border:1px solid transparent}
.btn.primary{background:var(--brand);color:#fff}
.btn.wa{background:var(--wa);color:#fff}
.btn.wa img{width:20px;height:20px}
.btn.small{padding:.55rem .9rem;font-size:.95rem}

/* Hero */
.hero{padding:44px 0}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:center}
.hero-copy h1{font-size:clamp(28px,4vw,40px);line-height:1.15;margin:0 0 10px}
.hero-copy p{color:var(--muted);margin:0 0 14px}
.actions{display:flex;gap:12px;flex-wrap:wrap}
.meta{color:var(--muted);font-size:.95rem;margin-top:6px}
.hero-media img{width:100%;height:520px;object-fit:cover;border-radius:var(--radius);box-shadow:0 10px 30px rgba(0,0,0,.08)}

/* Chips */
.chips{padding:8px 0}
.chip-row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.chip{background:#fff;border:1px solid #eee;border-radius:16px;padding:10px 14px;font-weight:700}

/* Planes */
.planes{padding:28px 0}
.planes h2{margin:0 0 8px}
.sub{color:var(--muted);margin:0 0 12px}
.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{background:#fff;border:2px solid #eee;border-radius:24px;padding:20px;position:relative}
.card h3{margin:0 0 6px}
.muted{color:var(--muted)}
.ticks{margin:0 0 14px;padding-left:1.2rem}
.ticks li{margin:6px 0}
.durations{display:flex;gap:10px;flex-wrap:wrap}
.chip-btn{display:inline-block;background:var(--chip);padding:.55rem .9rem;border-radius:999px;font-weight:700;color:#3b2a86;text-decoration:none;border:1px solid #ddd}
.chip-btn.primary{background:#c4b5fd;color:#372278;border-color:#bda9ff}
.recommended{border-color:#c4b5fd;box-shadow:0 8px 24px rgba(124,58,237,.08)}
.badge{position:absolute;top:-10px;right:14px;background:#ede9fe;color:#4c1d95;font-weight:800;font-size:.8rem;padding:.35rem .6rem;border-radius:999px;border:1px solid #d9d3ff}

/* Sobre mí */
.about{padding:26px 0}
.about-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:28px;align-items:center}
.about-media img{border-radius:24px;height:420px;object-fit:cover}
.about-copy h2{margin:0 0 6px}
.about-copy .subtitle{margin:0 0 8px;color:var(--muted);font-weight:600}
.about-copy p{margin:0 0 10px}

/* Pasos */
.steps{padding:10px 0 24px}
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.step{background:#fafaff;border:1px solid #eee;border-radius:16px;padding:18px}
.step .num{display:inline-grid;place-content:center;width:34px;height:34px;border-radius:50%;background:#ede9fe;color:#4c1d95;font-weight:800;margin-bottom:8px}
.quote{margin-top:18px;background:#B28CD9;color:#fff;padding:16px 18px;border-radius:16px;text-align:center}

/* Galería */
.gallery{padding:10px 0 24px}
.thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.thumbs img{border-radius:16px;height:160px;object-fit:cover}

/* FAQ */
.faq{padding:10px 0 24px}
.faq details{border:1px solid #eee;border-radius:12px;padding:14px 16px;margin:10px 0;background:#fff}
.faq summary{cursor:pointer;font-weight:700}

/* CTA */
.cta{padding:12px 0 32px}
.cta-box{background:#f5f3ff;border:1px solid #e9e6ff;border-radius:28px;padding:24px;text-align:center}
.cta .actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

/* Footer */
.site-footer{border-top:1px solid #eee;padding:16px 0;margin-top:8px}
.footer-grid{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.site-footer a{color:var(--ink)}

/* Floating WhatsApp */
.wa-float{position:fixed;right:16px;bottom:16px;z-index:50;display:inline-grid;place-items:center;width:56px;height:56px;border-radius:50%;background:#25D366;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.wa-float img{width:30px;height:30px}

/* Responsive */
@media (max-width: 920px){
  .menu{display:none}
  .hero-grid{grid-template-columns:1fr;gap:18px}
  .hero-media img{height:360px}
  .plan-grid{grid-template-columns:1fr}
  .about-grid{grid-template-columns:1fr;gap:16px}
  .about-media img{height:320px}
  .thumbs{grid-template-columns:repeat(2,1fr)}
}


/* Testimonials */
.testimonials.section{padding:24px 0}
.t-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:12px}
.t-grid .card{background:#fff;border:1px solid #e6eaf2;border-radius:16px;padding:16px}
.t-grid .card small{color:#6b7280}
@media (max-width: 920px){
  .t-grid{grid-template-columns:1fr}
}
