:root {
  --bg: #0d0713;
  --bg-soft: #160d21;
  --card: #1b1029;
  --line: #37224c;
  --text: #fff7ff;
  --muted: #c9b7d9;
  --primary: #ff4fa3;
  --primary-2: #ff7cc2;
  --accent: #b983ff;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:'Plus Jakarta Sans',sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at 10% 10%, rgba(255,79,163,.18), transparent 35%),
    radial-gradient(circle at 90% 0%, rgba(185,131,255,.14), transparent 40%),
    linear-gradient(165deg, var(--bg), var(--bg-soft));
}

.container{max-width:1140px;margin:0 auto;padding:0 1rem}
.navbar{position:sticky;top:12px;z-index:40;max-width:1140px;margin:1rem auto 0;display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-radius:999px;background:rgba(20,12,32,.75);backdrop-filter:blur(12px);border:1px solid var(--line)}
.logo{text-decoration:none;color:var(--text);font-weight:800}
.menu{list-style:none;display:flex;gap:1rem;margin:0;padding:0}
.menu a{text-decoration:none;color:var(--text);font-weight:600;padding:.35rem .6rem;border-radius:999px;transition:.2s}
.menu a:hover{background:rgba(255,79,163,.14);color:#ffd2eb}
.menu-toggle{display:none;background:transparent;border:0;color:var(--text);font-size:1.3rem}

.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:1rem;padding-top:2.3rem;align-items:center}
.kicker{color:#ffbadf;font-weight:700}
h1{font-size:clamp(2rem,4vw,3.6rem);line-height:1.05;margin:.4rem 0 .9rem}
.lead{color:var(--muted);max-width:58ch}
.hero-actions{display:flex;gap:.65rem;margin-top:1rem}
.hero-media{position:relative;display:flex;justify-content:center;align-items:center;min-height:400px}
.hero-glow{position:absolute;width:90%;height:90%;border-radius:28px;background:radial-gradient(circle, rgba(255,79,163,.45), rgba(185,131,255,.24) 45%, rgba(255,79,163,0) 72%);filter:blur(18px)}
.hero-image{position:relative;width:100%;max-width:350px;aspect-ratio:3/4;object-fit:cover;border-radius:24px;border:1px solid #6b3a90;box-shadow:0 25px 60px rgba(0,0,0,.42),0 0 40px rgba(255,124,194,.22);transition:transform .25s ease}
.hero-image:hover{transform:scale(1.02)}

.card,.form{background:linear-gradient(160deg, rgba(27,16,41,.95), rgba(21,12,33,.9));border:1px solid var(--line);border-radius:18px}

.section{padding:2.7rem 0}
.section-head p{color:var(--muted);max-width:68ch}
.grid-three{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.card{padding:1rem;transition:transform .2s,border-color .2s}
.card:hover{transform:translateY(-5px);border-color:#654286}
.card img{width:100%;height:220px;object-fit:cover;border-radius:12px}
.plan{position:relative}
.plan ul{padding-left:1rem;color:var(--muted)}
.price{font-size:2rem;font-weight:800;color:#ffc3e5;margin:.3rem 0}
.featured{border-color:#a065d8}
.badge{position:absolute;top:12px;right:12px;display:inline-block;background:#3a2454;color:#f4d9ff;border:1px solid #7e4cad;border-radius:999px;padding:.2rem .55rem;font-size:.8rem}

.form{max-width:760px;padding:1rem;display:grid;gap:.8rem}
.form input,.form select,.form textarea{width:100%;padding:.78rem;border-radius:10px;border:1px solid var(--line);background:#140c1f;color:var(--text);font:inherit}

.btn{display:inline-block;text-decoration:none;font-weight:700;border-radius:999px;padding:.76rem 1.12rem;border:1px solid transparent;transition:transform .2s}
.btn:hover{transform:scale(1.04)}
.btn-primary{background:linear-gradient(90deg,var(--primary),var(--primary-2));color:#2a0820}
.btn-secondary{background:transparent;color:var(--text);border-color:var(--line)}

.footer{border-top:1px solid var(--line);text-align:center;color:var(--muted);padding:1.2rem 1rem 5rem}
.whatsapp{position:fixed;right:16px;bottom:16px;background:#25d366;color:#062812;text-decoration:none;font-weight:800;border-radius:999px;padding:.8rem 1rem}

@media (max-width:900px){
  .hero{grid-template-columns:1fr}
  .hero-media{order:2;min-height:320px}
  .grid-three{grid-template-columns:1fr 1fr}
}
@media (max-width:680px){
  .menu-toggle{display:block}
  .menu{position:absolute;top:58px;right:1rem;display:none;flex-direction:column;background:#1a1127;border:1px solid var(--line);padding:.8rem;border-radius:12px;width:min(250px,82vw)}
  .menu.open{display:flex}
  .grid-three{grid-template-columns:1fr}
}

.checkbox-line{display:flex;gap:.6rem;align-items:center;color:var(--muted);font-size:.95rem;line-height:1.35}
.checkbox-line input{margin:0;inline-size:16px;block-size:16px;accent-color:var(--primary);flex:0 0 auto}
