:root{
  --bg:#0b1020;
  --card:#0f172a;
  --muted:#94a3b8;
  --text:#e2e8f0;
  --red:#e11d48;        /* aviator red */
  --sky:#0ea5e9;        /* sky blue */
  --glow:rgba(255,215,64,.75);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{background:var(--bg);color:var(--text);font-family:Inter,system-ui,Segoe UI,Roboto,Arial}

/* Layout helpers */
.container{max-width:1100px;margin:0 auto;padding:0 16px}

/* HERO */
.hero{
  position:relative; overflow:hidden; min-height:100vh;
  display:grid; place-items:center; padding:60px 0;
  background: radial-gradient(1000px 600px at 20% 0%, rgba(225,29,72,0.10), transparent 60%),
              radial-gradient(900px 600px at 85% 90%, rgba(14,165,233,0.10), transparent 60%);
}
.glow{position:absolute;inset:0;pointer-events:none}
.glow-red{
  background: radial-gradient(700px circle at 70% 35%, rgba(225,29,72,.85) 0%, rgba(225,29,72,.45) 34%, rgba(225,29,72,0) 62%);
}
.glow-sky{
  background: radial-gradient(480px circle at 35% 75%, rgba(14,165,233,.35) 0%, rgba(14,165,233,0) 60%);
}

.hero-grid{
  display:grid; gap:40px; align-items:center;
  grid-template-columns:1fr;
}
@media(min-width:768px){ .hero-grid{ grid-template-columns: 1fr 1fr; } }

.hero-title{font-size:52px; line-height:1.05; font-weight:900; margin:0; text-shadow:0 2px 12px rgba(0,0,0,.35)}
@media(min-width:768px){ .hero-title{font-size:64px} }
.hero-sub{margin:10px 0 0; font-size:28px; font-weight:800; color:var(--sky)}
.hero-desc{margin:18px 0 0; color:#cbd5e1; line-height:1.6; max-width:42ch}

.cta-row{display:flex; flex-wrap:wrap; gap:12px; margin-top:24px}

.btn-cta{
  display:inline-flex; align-items:center; gap:.4rem;
  font-weight:800; letter-spacing:.3px;
  padding:.9rem 1.2rem; border-radius:12px;
  background: linear-gradient(180deg, var(--red), #c81e56);
  color:#111827; text-decoration:none;
  box-shadow: 0 10px 25px rgba(225,29,72,.35);
  transition: transform .08s ease, box-shadow .2s ease, filter .2s ease;
}
.btn-cta:hover{ transform: translateY(-1px); }
.btn-cta:active{ transform: translateY(0); }
.btn-ghost{
  background: linear-gradient(180deg, var(--sky), #0284c7);
  box-shadow: 0 10px 25px rgba(14,165,233,.35);
  color:#0b1020;
}
.btn-cta.glow-click{
  box-shadow:
    0 0 0 3px rgba(255,255,255,.15),
    0 0 24px 8px var(--glow),
    0 12px 28px rgba(0,0,0,.35) !important;
}

.icon{width:18px;height:18px; display:inline-block; align-self:center}

.hero-img{display:flex; justify-content:center}
.hero-img img{
  width:min(440px, 85vw);
  filter: drop-shadow(0 20px 40px rgba(0,0,0,.45));
}

/* Mobile: image first */
@media(max-width:767px){
  .hero-grid{ grid-template-columns:1fr }
  .hero-img{ order:-1; margin-bottom:10px }
}

/* FOOTER */
.footer{margin-top:60px; background:#0c1226; border-top:1px solid #1f2937; padding:20px 0}
.footer-grid{display:grid; gap:12px; align-items:center; grid-template-columns:1fr}
@media(min-width:768px){ .footer-grid{grid-template-columns:1fr 1fr 1fr} }

.brand{display:flex; align-items:center; gap:10px; font-weight:900}
.dot{width:10px;height:10px;border-radius:50%;background:linear-gradient(180deg,var(--red),#c81e56);box-shadow:0 0 12px rgba(225,29,72,.8)}
.brand-text{letter-spacing:.3px}
.brand-accent{color:var(--sky)}

.links{display:flex; gap:12px; flex-wrap:wrap; justify-content:flex-start}
@media(min-width:768px){ .links{justify-content:flex-end} }
.footer-link{color:#cbd5e1; text-decoration:none; font-size:14px}
.footer-link:hover{text-decoration:underline}
