:root { --pink:#ff77ac; --border:#e5e7eb; --focus:#eec3d5; }
* { box-sizing:border-box }
body { margin:0; font:16px/1.45 system-ui, -apple-system, Segoe UI, Roboto, Arial; color:#111 }
.wrap { max-width:720px; margin:0 auto; padding:24px }
.title { text-align:center; margin:8px 0 24px; letter-spacing:.02em }
.field { margin:0 0 16px }
.label { display:block; font-weight:600; margin:0 0 6px }
.input, .textarea { width:100%; padding:12px 14px; border:1px solid var(--border); border-radius:8px; outline:none; background:#fff }
.input::placeholder, .textarea::placeholder { color:#9aa0a6 }
.input:focus, .textarea:focus { border-color:#c8ccd4; box-shadow:0 0 0 3px var(--focus) }
.textarea { min-height:110px; resize:vertical }
.grid { display:grid; gap:10px 24px; grid-template-columns:1fr 1fr }
.check { display:flex; align-items:center; gap:10px }
.consent { display:flex; align-items:flex-start; gap:10px; font-size:14px; margin:12px 0 18px }
.consent a { color:#0ea5e9; text-decoration:underline }
.submit { width:100%; border:0; border-radius:10px; padding:14px 16px; color:#fff; background:var(--pink); font-weight:700; cursor:pointer }
.submit:hover { filter:brightness(.96) }
.hide { display:none }
.msg { margin-top:12px; font-size:14px }
@media (max-width:520px){ .grid{ grid-template-columns:1fr } }

