:root{
  --bg:#111; --panel:#161616; --muted:#b8c1cc; --text:#f4f6f8;
  --accent:#4c8dff;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  background: radial-gradient(1200px 600px at 10% -10%, #1b1b1b 0%, #121212 60%, #0e0e0e 100%);
  color:var(--text);
  font:16px/1.55 system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
}
#site-header{position:sticky;top:0;background:rgba(0,0,0,.65);backdrop-filter:saturate(120%) blur(8px);padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.05)}
.brand{display:flex;align-items:center;gap:12px;max-width:1100px;margin:0 auto}
.logo{height:36px;width:auto;display:block}
.brand-name{font-weight:700;letter-spacing:.2px}
#hero{text-align:center;padding:72px 20px 48px;max-width:1100px;margin:0 auto}
#hero h1{font-size:clamp(28px,5vw,44px);margin:0 0 10px}
#hero .tagline{color:var(--muted);font-size:clamp(15px,2.6vw,18px);margin:0 auto}
#contact{padding:24px 20px 64px;max-width:1100px;margin:0 auto;text-align:center}
#contact h2{margin:16px 0 8px;font-size:clamp(22px,4vw,30px)}
#contact .sub{color:var(--muted);margin:0 auto 22px}
form{width:min(600px,50vw);min-width:280px;margin:0 auto;background:var(--panel);border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:22px;box-shadow:0 10px 30px rgba(0,0,0,.35);text-align:left}
#gotcha{display:none!important}
.field{margin-bottom:16px}
label{display:block;font-size:13px;color:#d2dae3;margin-bottom:6px}
input,textarea{width:100%;background:#0f1012;border:1px solid #2a2c31;color:var(--text);border-radius:10px;padding:12px 14px;outline:none;transition:border .15s ease,box-shadow .15s ease}
input:focus,textarea:focus{border-color:#3b73ff;box-shadow:0 0 0 3px rgba(59,115,255,.18)}
.btn{width:100%;background:linear-gradient(180deg,var(--accent),#2f6dff);border:none;color:white;font-weight:600;padding:12px 16px;border-radius:12px;cursor:pointer;transition:transform .06s ease,box-shadow .2s ease,opacity .2s ease}
.btn:hover{box-shadow:0 8px 20px rgba(59,115,255,.35)}
.btn:active{transform:translateY(1px)}
#status{margin-top:10px;color:#cfe8ff;font-size:14px}
#site-footer{padding:22px 20px;text-align:center;color:#97a6b6;border-top:1px solid rgba(255,255,255,.06);background:#0b0b0b}
@media (max-width:720px){form{width:min(560px,90vw)}}
