.lwd-contact-form { width:100%; min-width:0; display:flex; flex-direction:column; gap:20px; color:var(--sa4h-ink,#29352a); font:inherit; }
.lwd-contact-field { display:flex; flex-direction:column; gap:8px; min-width:0; }
.lwd-contact-field label { font-size:1rem; font-weight:600; }
.lwd-contact-field input, .lwd-contact-field textarea { box-sizing:border-box; width:100%; min-width:0; border:1px solid var(--sa4h-muted,#5e665e); border-radius:4px; padding:12px 14px; font:inherit; font-size:1rem; line-height:1.5; color:var(--sa4h-ink,#29352a); background:#fff; }
.lwd-contact-field textarea { resize:vertical; min-height:160px; }
.lwd-contact-field input:focus-visible, .lwd-contact-field textarea:focus-visible, .lwd-contact-submit:focus-visible { outline:3px solid var(--sa4h-green,#465847); outline-offset:3px; }
.lwd-contact-hint { margin:0; font-size:.875rem; line-height:1.6; }
.lwd-contact-hint a { color:var(--sa4h-green,#465847); text-decoration:underline; text-underline-offset:3px; }
.lwd-contact-submit { align-self:flex-start; max-width:100%; padding:13px 22px; border:1px solid var(--sa4h-green,#465847); border-radius:4px; background:var(--sa4h-green,#465847); color:#fff; font:inherit; font-weight:600; cursor:pointer; }
.lwd-contact-submit:hover { background:#29352a; }
.lwd-contact-submit:disabled { opacity:.65; cursor:wait; }
.lwd-contact-feedback { margin:0; font-size:1rem; line-height:1.6; }
.lwd-contact-feedback:empty { display:none; }
.lwd-contact-feedback[data-state="error"] { color:#9b2222; }
.lwd-contact-feedback[data-state="success"] { color:#29352a; }
.lwd-contact-trap { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
