:root{
  --bg:#060812;
  --bg2:#0b1022;
  --text:#f8fafc;
  --muted:#aab2c8;

  --primary:#7c5cff;
  --pink:#ff2d78;
  --blue:#4f7cff;

  --glass:rgba(255,255,255,.06);
  --stroke:rgba(255,255,255,.12);

  --radius-xl:32px;
  --radius-lg:22px;

  --shadow:0 20px 60px rgba(0,0,0,.45);
}

*{box-sizing:border-box}
body{
  margin:0;
  font-family:Inter,system-ui;
  color:var(--text);
  background:
    radial-gradient(circle at top left, rgba(124,92,255,.2), transparent 30%),
    radial-gradient(circle at bottom right, rgba(255,45,120,.15), transparent 30%),
    linear-gradient(180deg,#050811,#070b14);
}

/* ===== HEADER ===== */

.header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:18px 32px;
}

.logo{
  font-weight:800;
  font-size:18px;
}

.nav{
  display:flex;
  gap:20px;
  font-size:14px;
  color:var(--muted);
}

/* ===== HERO ===== */

.hero{
  max-width:1200px;
  margin:60px auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:40px;
  align-items:center;
  padding:0 20px;
}

.hero-left h1{
  font-size:56px;
  line-height:1.05;
  margin:0 0 20px;
}

.hero-left p{
  color:var(--muted);
  margin-bottom:30px;
}

.cta{
  display:flex;
  gap:12px;
}

.btn{
  padding:14px 20px;
  border-radius:14px;
  border:none;
  cursor:pointer;
  font-weight:600;
}

.btn.primary{
  background:linear-gradient(135deg,var(--primary),var(--pink));
  color:white;
}

.btn.ghost{
  background:rgba(255,255,255,.08);
  color:white;
}

/* ===== HERO CARD ===== */

.hero-card{
  border-radius:var(--radius-xl);
  overflow:hidden;
  background:#000;
  box-shadow:var(--shadow);
  position:relative;
  height:520px;
}

.hero-card img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.hero-overlay{
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  padding:20px;
  background:linear-gradient(180deg,transparent,rgba(0,0,0,.8));
}

.hero-name{
  font-size:22px;
  font-weight:700;
}

/* ===== ONBOARDING BLOCK ===== */

.onboarding{
  margin-top:30px;
  display:grid;
  gap:12px;
}

.select{
  padding:14px;
  border-radius:14px;
  background:rgba(255,255,255,.08);
  border:1px solid var(--stroke);
  color:white;
}

/* ===== MOBILE ===== */

@media(max-width:900px){
  .hero{
    grid-template-columns:1fr;
  }

  .hero-left h1{
    font-size:38px;
  }

  .hero-card{
    height:420px;
  }
}