:root { --bg:#0b0d12; --card:#111621; --text:#eaeef7; --muted:#9fb0c2; --brand:#5cc3ff; --line:#1c2534; }
* { box-sizing: border-box; }
body { margin:0; font-family: system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji"; background:var(--bg); color:var(--text);}
.wrap { max-width: 860px; margin: 0 auto; padding: 24px; }
.site-header, .site-footer { border-bottom:1px solid var(--line); background:#0e1420; }
.site-footer { border-top:1px solid var(--line); border-bottom:none; }
.brand { color:var(--text); font-weight:700; text-decoration:none; margin-right:24px; }
nav a { color:var(--muted); margin-right:16px; text-decoration:none; }
nav a:hover { color:var(--text); }
h1 { margin:24px 0; }
.card { background:var(--card); border:1px solid var(--line); border-radius:12px; padding:20px; }
label { display:block; margin:12px 0; color:var(--muted); }
input[type=text], input[type=tel], textarea {
  width:100%; padding:12px 14px; border:1px solid var(--line); border-radius:10px; background:#0c121c; color:var(--text);
}
textarea { resize: vertical; }
button {
  background:var(--brand); color:#04121d; border:none; padding:12px 18px; border-radius:10px; font-weight:700; margin-top:12px; cursor:pointer;
}
button:hover { filter:brightness(1.05); }
.small { color:var(--muted); font-size:0.9rem; }
.consent { margin-top:8px; }
.checkbox { display:flex; align-items:flex-start; gap:10px; }
.checkbox input { margin-top:3px; }
.flash .msg { background:#402014; border:1px solid #8f3d2e; color:#ffd7cf; padding:10px 12px; border-radius:8px; margin:10px 0; }