:root{--accent:#0b6efd;--bg:#f7f8fb;--card:#ffffff;--text:#222}
*{box-sizing:border-box}body{font-family:Inter,system-ui,Arial,sans-serif;margin:0;color:var(--text);background:var(--bg)}.container{max-width:1000px;margin:0 auto;padding:1rem}
.site-header{background:#fff;border-bottom:1px solid #e6e9ef}
.site-header .container{display:flex;align-items:center;justify-content:space-between}
.site-header nav a{margin-left:1rem;color:var(--text);text-decoration:none}
.logo img{height:44px}
.hero{padding:4rem 0;text-align:center;background:linear-gradient(180deg,rgba(11,110,253,0.08),transparent)}
.hero h1{font-size:2rem;margin:0 0 .5rem}
.cta{display:inline-block;margin-top:1rem;padding:.6rem 1rem;background:var(--accent);color:#fff;border-radius:6px;text-decoration:none}
.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:2rem 0}
.card{background:var(--card);padding:1rem;border-radius:8px;box-shadow:0 1px 4px rgba(16,24,40,0.04)}
.events,.join{margin:2rem 0}
.site-footer{padding:1rem 0;text-align:center;border-top:1px solid #e6e9ef;background:#fff}
.contact-page form{display:grid;gap:.75rem;max-width:520px}
.contact-page input,.contact-page textarea{width:100%;padding:.5rem;border:1px solid #d8dbe4;border-radius:6px}
button{background:var(--accent);color:#fff;border:0;padding:.6rem 1rem;border-radius:6px}
.muted{color:#6b7280}
@media (min-width:880px){.hero h1{font-size:2.4rem}}