body {margin:0;font-family:system-ui,Arial,sans-serif;color:#111;line-height:1.6}
.container{max-width:1100px;margin:auto;width:92%}
.narrow{max-width:720px}

.header{background:#0f172a;color:#fff}
.nav{display:flex;justify-content:space-between;align-items:center;padding:16px 0}
.nav a{color:#cbd5f1;text-decoration:none;margin-left:18px;font-size:14px}
.logo{font-weight:700}

.hero{background:#0f172a;color:white;padding:90px 0}
.hero h1{font-size:40px;margin:0 0 16px}
.hero p{color:#cbd5f1;font-size:18px}

.section{padding:70px 0}
.alt{background:#f8fafc}

.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}
.card{background:white;border:1px solid #e5e7eb;padding:22px;border-radius:10px}

.btn{background:#2563eb;color:white;padding:12px 18px;border-radius:8px;text-decoration:none;font-weight:600;display:inline-block}
.btn-outline{border:2px solid #2563eb;color:#2563eb;padding:12px 18px;border-radius:8px;text-decoration:none;margin-left:10px}
.btn-small{border:1px solid #334155;padding:6px 10px;border-radius:6px}

.footer{background:#0f172a;color:#94a3b8;padding:30px 0;text-align:center}
.footer-links a{color:#94a3b8;margin:0 10px;text-decoration:none}

.cta-box{margin-top:24px}

@media(max-width:700px){
.hero h1{font-size:30px}
}
html, body {
  height: 100%;
  margin: 0;
}

.page-wrapper {
  min-height: 100%;
  display: flex;
  flex-direction: column;
}

main {
  flex: 1;
}