/* Variables de diseño */
:root{
  --bg-900: #0b0f12; /* slate-950 / neutral-900 base */
  --bg-850: #0f1720;
  --glass: rgba(255,255,255,0.03);
  --glass-border: rgba(255,255,255,0.06);
  --accent-1: #38bdf8; /* azul eléctrico suave */
  --accent-2: #7c3aed; /* violeta sutil */
  --accent-3: #10b981; /* esmeralda */
  --muted: #94a3b8;
  --glass-blur: 10px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
  background: radial-gradient(1200px 600px at 10% 10%, rgba(60,72,100,0.06), transparent),
              radial-gradient(1000px 500px at 90% 90%, rgba(124,58,237,0.04), transparent),
              var(--bg-900);
  color: #e6eef8;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:48px 24px;
}

.ambient-gradient{
  position:fixed; inset:0; pointer-events:none; z-index:0;
  background: radial-gradient(650px 300px at 10% 20%, rgba(56,189,248,0.06), transparent),
              radial-gradient(600px 260px at 80% 80%, rgba(16,185,129,0.05), transparent),
              radial-gradient(500px 220px at 50% 40%, rgba(124,58,237,0.04), transparent);
  mix-blend-mode:screen;
  filter: blur(36px) saturate(120%);
}

.stage{
  width:100%; max-width:980px; z-index:2; position:relative; text-align:center; padding:48px; border-radius:20px;
}

.top-badge{
  display:inline-flex; gap:10px; align-items:center; padding:6px 12px; border-radius:999px; margin:0 auto 28px; position:relative;
  background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
  border:1px solid var(--glass-border); backdrop-filter: blur(6px);
  box-shadow: 0 6px 30px rgba(56,189,248,0.04);
  font-weight:600; color:var(--muted); width:max-content;
}
.top-badge .pulse{
  width:10px; height:10px; border-radius:50%; background:linear-gradient(90deg,var(--accent-1),var(--accent-3));
  box-shadow:0 0 8px rgba(56,189,248,0.5), inset 0 -2px 4px rgba(255,255,255,0.06);
  position:relative; animation:badgePulse 1.8s infinite ease-in-out;
}
@keyframes badgePulse{ 0%{transform:scale(1);opacity:1}50%{transform:scale(1.6);opacity:0.7}100%{transform:scale(1);opacity:1}}

.hero h1{
  font-size:clamp(28px, 4.4vw, 48px); margin:6px 0 10px; line-height:1.02; font-weight:800; letter-spacing:-0.02em;
  color:linear-gradient(90deg,var(--accent-1),var(--accent-2));
}
.hero .subtitle{ color:var(--muted); margin:0 0 28px; max-width:760px; margin-left:auto;margin-right:auto }

.countdown{
  display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin:18px auto 28px; max-width:820px;
}
.card{
  background: var(--glass);
  border: 1px solid var(--glass-border);
  padding:18px; border-radius:14px; backdrop-filter: blur(var(--glass-blur));
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px;
  box-shadow: 0 8px 30px rgba(2,6,23,0.6), 0 0 30px rgba(56,189,248,0.03);
  transition:transform .28s ease, box-shadow .28s ease;
}
.card:hover{ transform:translateY(-6px); box-shadow: 0 18px 40px rgba(2,6,23,0.7), 0 0 60px rgba(56,189,248,0.08)}
.card .value{ font-size:28px; font-weight:800; color: #ecfeff; text-shadow:0 6px 18px rgba(56,189,248,0.06)}
.card .label{ font-size:12px; color:var(--muted); text-transform:uppercase; letter-spacing:0.12em }

.subscribe{ margin-top:6px }
.input-wrap{ display:flex; gap:8px; align-items:center; justify-content:center; margin:0 auto; max-width:680px }
.input-wrap input{
  flex:1; min-width:0; padding:14px 16px; border-radius:12px; border:1px solid rgba(255,255,255,0.06);
  background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01)); color:inherit;
  outline:none; box-shadow: inset 0 -6px 20px rgba(2,6,23,0.6);
}
.input-wrap input:focus{ border-color:var(--accent-1); box-shadow:0 6px 30px rgba(56,189,248,0.06); }

.btn{
  padding:12px 16px; border-radius:12px; border:none; cursor:pointer; font-weight:700; color:#04212b;
  background: linear-gradient(90deg, var(--accent-1), var(--accent-2));
  box-shadow: 0 8px 30px rgba(124,58,237,0.12), 0 2px 6px rgba(0,0,0,0.4);
}

.form-msg{ margin-top:10px; color:var(--muted); font-size:13px }

.site-footer{ display:flex; justify-content:space-between; gap:20px; align-items:center; margin-top:34px; padding-top:22px; border-top:1px solid rgba(255,255,255,0.02); color:var(--muted); font-size:14px }
.footer-links .link{ color:var(--muted); margin-right:18px; text-decoration:none }
.socials{ display:flex; gap:12px }
.social{ color:var(--muted); display:inline-flex; align-items:center; justify-content:center; padding:8px; border-radius:8px; transition:all .18s }
.social:hover{ color:var(--bg-900); background: linear-gradient(90deg,var(--accent-1),var(--accent-3)); transform:translateY(-4px); box-shadow:0 12px 40px rgba(56,189,248,0.08) }

.sr-only{ position:absolute!important; height:1px;width:1px; overflow:hidden; clip:rect(1px,1px,1px,1px); white-space:nowrap }

/* Responsivo */
@media (max-width:720px){
  .countdown{ grid-template-columns:repeat(2,1fr) }
  .site-footer{ flex-direction:column; align-items:center; gap:8px }
}

/* Small neon accent on specific cards */
.card[data-unit="days"]{ box-shadow:0 8px 30px rgba(16,185,129,0.03), 0 0 22px rgba(16,185,129,0.02)}
.card[data-unit="hours"]{ box-shadow:0 8px 30px rgba(56,189,248,0.03), 0 0 22px rgba(56,189,248,0.02)}
.card[data-unit="minutes"]{ box-shadow:0 8px 30px rgba(124,58,237,0.03), 0 0 22px rgba(124,58,237,0.02)}

/* Fine-tuned micro-interactions */
.btn:active{ transform:translateY(1px) }
