:root{--navy:#0B1A3A;--gold:#FFD43B;--muted:#64748b}
*{box-sizing:border-box}
body{margin:0;background:#f8fafc;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:#0f172a;line-height:1.5}
.container{max-width:1100px;margin:0 auto;padding:16px 20px}
.header{border-bottom:1px solid #e2e8f0;background:#fff7;backdrop-filter:blur(8px)}
.header__inner{display:flex;align-items:center;gap:16px}
.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:#0b1220}
.logo{width:40px;height:40px;border-radius:12px;background:var(--navy);display:grid;place-items:center;color:var(--gold)}
.launch{margin-left:auto;color:#475569;font-weight:600}
.hero{padding:64px 0;display:grid;gap:28px}
@media(min-width:960px){.hero{grid-template-columns:1.05fr .95fr}}
.kicker{text-transform:uppercase;font-size:12px;color:var(--navy);font-weight:700;letter-spacing:.15em}
.h2{font-size:clamp(22px,4vw,32px)}
.lead{color:#475569;max-width:60ch}
.bullets{margin:12px 0 0;padding-left:18px}
.cta{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}
.btn{background:var(--navy);color:#fff;border:none;border-radius:14px;padding:12px 18px;font-weight:700;text-decoration:none}
.btn.alt{background:var(--gold);color:var(--navy)}
.panel{background:linear-gradient(135deg,var(--navy),#334155);color:#fff;border-radius:22px;padding:20px;text-align:center}
.countdown{display:flex;gap:14px;justify-content:center;margin-bottom:10px}
.cd{background:#ffffff22;border:1px solid #ffffff33;border-radius:12px;padding:10px}
.cd span{font-size:26px;font-weight:700}
.cards{display:grid;gap:14px;margin:24px 0}
@media(min-width:720px){.cards{grid-template-columns:repeat(3,1fr)}}
.card{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:18px}
.leadform{padding:20px 0}
.form{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:760px}
.form .full{grid-column:1/-1}
.label{font-size:12px;font-weight:700;color:#0b1220}
input,textarea{width:100%;border:1px solid #cbd5e1;border-radius:12px;padding:10px 12px;font:inherit}
textarea{resize:vertical}
.submit{grid-column:1/-1}
.footer{border-top:1px solid #e2e8f0;background:#fff;padding:14px 0}
.foot__inner{display:flex;justify-content:space-between;flex-wrap:wrap}
.muted{color:var(--muted)}
/* --- Hero alignment + spacing --- */
.hero { padding: 72px 0 48px; gap: 36px; }
@media (min-width: 980px) {
  .hero { grid-template-columns: 1.1fr .9fr; align-items: center; }
}

/* Panel: make the countdown easier to read and better centered */
.panel { display: grid; gap: 12px; align-content: center; min-height: 280px; }
.countdown { gap: 10px; flex-wrap: wrap; }
.cd { min-width: 66px; border-radius: 10px; padding: 10px 12px; }
.cd span { font-size: 24px; line-height: 1; }
.cd small { display: block; font-size: 11px; opacity: .95; }

/* Cards: consistent height and vertical rhythm */
.cards { row-gap: 20px; }
.card { height: 100%; display: grid; align-content: start; }

/* Lead section: constrain width and vertical spacing */
.leadform { padding: 36px 0 52px; }
.form { max-width: 980px; }
@media (max-width: 720px) {
  .form { grid-template-columns: 1fr; }
}

/* Buttons row on hero */
.cta .btn { transform: translateZ(0); } /* minor anti-jitter */

/* ---- Card Section Alignment Fix ---- */
.container.cards {
  max-width: 1100px;   /* match the hero section width */
  margin: 0 auto;      /* center within the page */
  padding: 0 20px;     /* keep side breathing room */
}

.cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 24px;
  justify-items: stretch;
}

.card {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  padding: 20px;
  box-shadow: 0 4px 10px rgba(11, 26, 58, 0.03);
}