body { font-family: system-ui, -apple-system, Segoe UI, Roboto, sans-serif; margin:0; color:#222; }
header { border-bottom: 1px solid #eee; }
nav { display:flex; gap:1rem; align-items:center; padding: 1rem 2rem; }
nav .spacer { flex:1; }
nav a { text-decoration:none; color:#111; }
nav a.btn { background:#111; color:#fff; padding:.5rem 1rem; border-radius:.5rem; }
.hero { padding: 3rem 2rem; text-align:center; }
.pricing { display:grid; grid-template-columns: repeat(3, 1fr); gap:1.5rem; padding: 1rem 2rem 3rem; max-width:1000px; margin:0 auto; }
.card { border:1px solid #eee; border-radius:1rem; padding:1.5rem; background:#fff; box-shadow:0 2px 8px rgba(0,0,0,0.03); text-align:center; }
.card.featured { border-color:#111; }
.price { font-size:2rem; margin:.5rem 0 0.5rem; }
.price span { font-size:1rem; color:#666; }
.desc { margin: 0.75rem 0 1rem; color:#444; line-height: 1.35; }
button, .btn { cursor:pointer; border:none; background:#111; color:#fff; padding:.75rem 1.25rem; border-radius:.5rem; }
form { display:grid; gap:.75rem; max-width:360px; margin: 1rem; }
label { display:grid; gap:.25rem; font-size:.9rem; }
.flash { max-width:800px; margin:1rem auto; padding:0 1rem; }
.flash > div { padding:.5rem .75rem; border-radius:.5rem; margin-bottom:.5rem; }
.flash-success { background:#e7f9ed; }
.flash-danger { background:#fde8e8; }
.flash-warning { background:#fff6e0; }
.flash-info { background:#eaf3ff; }
footer { padding:2rem; text-align:center; border-top:1px solid #eee; }
