.contact-grid > div { min-width: 0; }
.contact-form { display: grid; gap: 20px; margin: 32px 0 20px; position: relative; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.contact-form label { display: grid; gap: 8px; font-size: 14px; min-width: 0; }
.contact-form label span { font-size: 12px; }
.contact-form input, .contact-form textarea { width: 100%; min-width: 0; padding: 13px 14px; border: 1px solid #d9beaa; border-radius: 2px; font: inherit; font-size: 16px; color: var(--ink); background: var(--paper); }
.contact-form textarea { resize: vertical; min-height: 140px; }
.contact-form input:focus-visible, .contact-form textarea:focus-visible, .contact-form button:focus-visible { outline: 3px solid var(--navy); outline-offset: 3px; }
.contact-form .honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.contact-form button { display: flex; align-items: center; justify-content: space-between; gap: 20px; width: 100%; min-height: 54px; padding: 14px 20px; background: var(--navy); color: white; border: 1px solid var(--navy); font: 500 16px Manrope, sans-serif; cursor: pointer; }
.contact-form button:disabled { opacity: .65; cursor: not-allowed; }
#contact-status { margin: 0; min-height: 26px; font-size: 14px; overflow-wrap: anywhere; }
.contact-form small { display: block; font-size: 12px; line-height: 1.6; }
@media(max-width: 560px) { .form-row { grid-template-columns: 1fr; } }
