* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
  background: #0d1117;
  color: #f0f6fc;
  line-height: 1.6;
}
a { color: inherit; }
.container { width: min(920px, 90%); margin: 0 auto; }
.narrow { width: min(720px, 90%); }
.section { padding: 88px 0; }
.hero { padding-top: 110px; }
.eyebrow {
  letter-spacing: .16em;
  font-size: .78rem;
  font-weight: 700;
  opacity: .65;
  margin: 0 0 14px;
}
h1, h2 { letter-spacing: -.03em; }
h1 {
  font-size: clamp(2.8rem, 8vw, 5.8rem);
  line-height: .96;
  margin: 0 0 24px;
  max-width: 900px;
}
h2 {
  font-size: clamp(2rem, 5vw, 3.4rem);
  line-height: 1.05;
  margin: 0 0 20px;
}
p { max-width: 70ch; }
.lead {
  font-size: 1.25rem;
  line-height: 1.6;
  max-width: 680px;
  color: #b1bac4;
}
.button {
  display: inline-block;
  margin-top: 24px;
  padding: 14px 20px;
  background: #f0f6fc;
  color: #0d1117;
  text-decoration: none;
  font-weight: 700;
  border-radius: 8px;
}
.button:hover, .button:focus-visible { transform: translateY(-1px); }
.card {
  padding: 32px;
  border: 1px solid #30363d;
  border-radius: 14px;
  background: #161b22;
}
.status { margin-bottom: 0; color: #8c959f; font-size: .95rem; }
.final-cta { text-align: center; }
.final-cta h2 { margin-left: auto; margin-right: auto; }
.footer {
  border-top: 1px solid #21262d;
  padding: 28px 0 48px;
  color: #8c959f;
  font-size: .9rem;
}
@media (max-width: 640px) {
  .section { padding: 64px 0; }
  .hero { padding-top: 76px; }
  .card { padding: 24px; }
}
