.message-wrap { max-width:780px; margin:45px auto 70px; }
.message-wrap h1 { font-size:clamp(44px,6vw,70px); margin:20px 0; }
.message-wrap > p { margin-bottom:26px; }
.message-form { border-radius:24px; padding:34px; background:var(--offwhite); }
.message-form label { display:block; margin-bottom:22px; font-size:15px; }
.message-form input:not([type="checkbox"]),.message-form select,.message-form textarea { display:block; width:100%; padding:12px; margin-top:8px; border:1px solid var(--muted); border-radius:8px; background:var(--white); color:var(--olive); font:inherit; font-size:16px; }
.message-form textarea { min-height:160px; resize:vertical; }
.message-form input:focus-visible,.message-form textarea:focus-visible,.message-form select:focus-visible { outline:3px solid var(--olive); outline-offset:3px; }
.message-form .consent { display:flex; gap:12px; align-items:flex-start; font-size:13px; }
.consent input { flex-shrink:0; width:18px; height:18px; margin-top:3px; accent-color:var(--olive); }
.message-form .website-field { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.message-form button:disabled { opacity:.6; cursor:default; transform:none; }
#message-status { margin-top:20px; font-size:14px; }
.message-options { display:flex; flex-wrap:wrap; gap:8px 22px; margin-top:24px; }
.message-privacy { font-size:13px; margin:20px 0; }
@media(max-width:540px) { .message-wrap { margin:24px 4px 40px; } .message-form { padding:22px; } }
