:root{ --bg:#0f0a1f; --text:#fff; --muted:#cfc7e6; --accent:#00CED1; }
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:
  radial-gradient(1100px 800px at 15% 0%,rgba(106,13,173,.35),transparent),
  radial-gradient(900px 600px at 85% 15%,rgba(0,206,209,.25),transparent),
  var(--bg);color:var(--text);font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Helvetica Neue",Arial}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.container{width:min(1120px,92%);margin:auto}

/* Header */
header{position:sticky;top:0;z-index:50;background:#120a27cc;backdrop-filter:saturate(140%) blur(8px);border-bottom:1px solid #ffffff18}
.nav{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0;gap:.5rem;flex-wrap:nowrap;position:relative}
.brand{display:flex;gap:.6rem;align-items:center}
.logo{height:48px;width:auto;max-height:48px;object-fit:contain}
.links{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap;font-size:.95rem}
.menu-toggle{display:none;align-items:center;justify-content:center;width:42px;height:42px;border-radius:10px;border:1px solid #ffffff24;background:linear-gradient(180deg,#ffffff10,#ffffff06);color:#fff;font-size:22px}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid #ffffff24;background:linear-gradient(180deg,#ffffff10,#ffffff06);padding:.6rem .9rem;border-radius:10px;font-weight:700;transition:all .15s;box-shadow:inset 0 6px 18px rgba(0,0,0,.25);font-size:.95rem}
.btn:hover{transform:translateY(-1px);border-color:#ffffff44}
.btn.primary{background:linear-gradient(180deg,var(--accent),#02b7b9);color:#051416;border-color:transparent}

/* Sections */
section{padding:clamp(1.5rem,6vw,3.5rem) 0;border-top:1px solid #ffffff12}
.section-title{font-size:clamp(1.4rem,2.4vw,2rem);margin:0 0 .6rem;text-align:center}
.muted{color:var(--muted)}

/* Hero */
.hero{padding:clamp(1.5rem,6vw,4rem) 0 1.5rem;text-align:center}
.hero h1{font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.2;margin:0 0 .6rem}
.hero p{color:var(--muted);margin:0 auto 1rem;max-width:820px;font-size:1rem}
.cta-wrap,.cta-row{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:center;margin-top:1rem}
.cta-wrap .btn,.cta-row .btn{min-width:180px}
.notice{margin:1rem auto 0;padding:.7rem 1rem;border-radius:10px;border:1px solid #ffffff28;background:#ffffff18;color:#fff;max-width:900px;text-align:center;font-size:.9rem}

/* Hero card */
.hero-card{margin-top:1.2rem;background:linear-gradient(180deg,#ffffff10,#ffffff06);border:1px solid #ffffff12;border-radius:14px;padding:.9rem;display:grid;grid-template-columns:1.05fr .95fr;gap:.8rem}
@media (max-width:980px){.hero-card{grid-template-columns:1fr}}
.mock{background:#0b0717;border:1px solid #ffffff16;border-radius:12px;min-height:240px;display:grid;place-items:center;position:relative;overflow:hidden}
.mock img{width:100%;height:100%;object-fit:contain;background:#0b0717}
.bullets{display:grid;gap:.6rem;font-size:.95rem}
.bullet{display:flex;gap:.5rem;align-items:flex-start}
.check{flex:0 0 20px;height:20px;border-radius:50%;background:linear-gradient(135deg,#00e676,#00c853);display:grid;place-items:center}
.check svg{width:12px;height:12px;fill:#042013}
.badges{margin-top:.5rem;display:flex;gap:.5rem;flex-wrap:wrap}
.badge{font-size:.8rem;padding:.35rem .6rem;border-radius:999px;border:1px solid #ffffff22;background:#ffffff14}

/* Cards & grids (restaurado) */
.grid{display:grid;gap:1rem}
.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:980px){.grid.cols-3{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.grid.cols-3{grid-template-columns:1fr}}
.card{background:linear-gradient(180deg,#ffffff10,#ffffff06);border:1px solid #ffffff12;border-radius:14px;padding:1rem}

/* Galeria */
.gallery{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));align-items:start}
@media (min-width:1200px){.gallery{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}
@media (max-width:560px){.gallery{grid-template-columns:repeat(2,1fr);gap:.6rem}}
.img{position:relative;aspect-ratio:3/4;border-radius:12px;overflow:hidden;border:1px solid #ffffff18;background:#1b1237;box-shadow:0 4px 16px rgba(0,0,0,.25);transition:transform .2s ease, box-shadow .2s ease}
.img:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.35)}
.img img{width:100%;height:100%;object-fit:contain;background:#0b0717}

/* Testimonials */
.testi-grid{display:grid;gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:980px){.testi-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.testi-grid{grid-template-columns:1fr}}
.t-card{background:linear-gradient(180deg,#ffffff10,#ffffff06);border:1px solid #ffffff12;border-radius:16px;padding:1rem;display:grid;gap:.6rem}
.t-header{display:flex;gap:.7rem;align-items:center}
.avatar{width:60px;height:60px;border-radius:50%;object-fit:cover;border:1px solid #ffffff30;box-shadow:0 4px 16px rgba(0,0,0,.35);background:#0b0717}
.t-header{gap:.8rem}
.t-name{font-weight:800}
.t-meta{color:var(--muted);font-size:.9rem}
.t-badge{font-size:.75rem;padding:.25rem .6rem;border-radius:999px;border:1px solid #ffffff22;background:#ffffff14;margin-left:auto;white-space:nowrap}
.t-quote{color:var(--muted)}

/* Pricing */
.pricing{display:grid;grid-template-columns:1.2fr .8fr;gap:1rem}
@media (max-width:980px){.pricing{grid-template-columns:1fr}}
.price-box{padding:1.2rem;border-radius:16px;background:linear-gradient(180deg,#ffffff10,#ffffff06);border:1px solid #ffffff12}
.price{font-size:2.3rem;font-weight:800;margin:.2rem 0}
.price small{font-weight:600;color:var(--muted)}
.list{display:grid;gap:.5rem;margin:.8rem 0}

details{background:linear-gradient(180deg,#ffffff08,#ffffff06);border:1px solid #ffffff12;border-radius:12px;padding:1rem}
details+details{margin-top:.6rem}

footer{padding:2rem 0;border-top:1px solid #ffffff12;color:var(--muted)}
.footgrid{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center}
@media (max-width:720px){.footgrid{grid-template-columns:1fr}}

/* Mobile */
@media (max-width:720px){
  .nav{padding:.4rem 0}
  .logo{height:48px;width:auto;max-height:48px;object-fit:contain}
  .menu-toggle{display:inline-flex}
  .links{display:none;position:absolute;left:0;right:0;top:100%;padding:.6rem .8rem;gap:.6rem;background:#120a27f0;border-bottom:1px solid #ffffff22;backdrop-filter:saturate(140%) blur(8px)}
  body.nav-open .links{display:flex;flex-direction:column;align-items:stretch}
  .links .btn{width:100%}
  .links .cta-download{display:none !important}
  .hero h1{font-size:1.4rem}
  .hero p{font-size:.92rem}
  .cta-wrap,.cta-row{gap:.5rem}
  .cta-wrap .btn,.cta-row .btn{min-width:0;width:100%}
  .notice{font-size:.85rem}
  /* barra fixa */
  .mobile-cta{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;gap:.6rem;padding:.6rem .8rem;padding-bottom:calc(.6rem + env(safe-area-inset-bottom,0px));background:#120a27ee;backdrop-filter:saturate(140%) blur(8px);border-top:1px solid #ffffff22}
  .mobile-cta .btn{flex:1}
  body{padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}
}
.mobile-cta{display:none}

/* Lightbox */
.lightbox{position:fixed;inset:0;background:rgba(5,5,12,.88);display:none;align-items:center;justify-content:center;z-index:100}
.lightbox.open{display:flex}
.lightbox img{max-width:min(92vw,1200px);max-height:86vh;border-radius:14px;box-shadow:0 18px 60px rgba(0,0,0,.55)}
.lb-btn{position:absolute;top:16px;width:44px;height:44px;border-radius:999px;border:1px solid #ffffff35;background:#0f0a1f85;color:#fff;display:grid;place-items:center;font-size:26px;cursor:pointer}
.lb-close{right:16px}
.lb-prev,.lb-next{top:50%;transform:translateY(-50%);font-size:32px}
.lb-prev{left:16px}
.lb-next{right:16px}
