.mea-contact-section { background: var(--cream); }
.mea-contact-form { position: relative; min-width: 0; padding: clamp(22px, 3vw, 40px); border: 1px solid #d8ccc6; background: #fff; }
.mea-contact-form > label:not(.mea-contact-agreement) { display: block; margin: 18px 0 8px; font-weight: 600; }
.mea-contact-form > input:not([type="hidden"]), .mea-contact-form > textarea { display: block; width: 100%; min-width: 0; min-height: 52px; padding: 13px 15px; border: 1px solid #cdbdb2; border-radius: 0; background: #fff; color: #2f1207; font: inherit; font-size: 18px; }
.mea-contact-form > textarea { min-height: 160px; resize: vertical; }
.mea-contact-form > input:focus-visible, .mea-contact-form > textarea:focus-visible { outline: 2px solid var(--orange); outline-offset: 2px; }
.mea-contact-agreement { display: flex; align-items: flex-start; gap: 12px; margin: 22px 0; line-height: 1.6; }
.mea-contact-agreement input { flex: 0 0 20px; width: 20px; height: 20px; margin: 5px 0 0; accent-color: var(--orange); }
.mea-contact-form a { text-decoration: underline; text-underline-offset: 3px; }
.mea-contact-form .mea-contact-error { margin: 6px 0; color: #a52f20; font-size: 14px; line-height: 1.5; }
.mea-contact-status { margin: 20px 0 0; padding: 14px 16px; border: 1px solid #cdbdb2; background: var(--cream); }
.mea-contact-status[data-state="success"] { border-color: #7c957b; color: #285328; }
.mea-contact-form .button { margin-top: 6px; }
.mea-contact-form .button:disabled { cursor: default; opacity: .65; transform: none; }
.mea-contact-honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.mea-contact-form [hidden] { display: none; }
@media (max-width: 600px) { .mea-contact-form .button { width: 100%; justify-content: space-between; } }
