/* Shared contact fields: home and wedding landing. */
.contact-form .contact-form-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 21px 18px; }
.contact-form .contact-form-grid > * { min-width: 0; margin-bottom: 0; }
.contact-form .contact-full { grid-column: 1 / -1; }
.contact-form label { margin-bottom: 0; font-size: .82rem; font-weight: 600; text-transform: none; letter-spacing: normal; }
.contact-form label small { font-size: .76rem; font-weight: 400; color: var(--muted, #75695f); }
.contact-form .contact-field-help { margin: 8px 0 0; color: var(--muted, #75695f); font-size: .76rem; font-weight: 400; line-height: 1.6; letter-spacing: normal; text-transform: none; }
.contact-form .contact-inline-check { display: flex; align-items: center; gap: 8px; margin-top: 8px; font-size: .76rem; font-weight: 400; color: var(--muted, #75695f); cursor: pointer; }
.contact-form .contact-inline-check input { flex: 0 0 18px; width: 18px; height: 18px; min-height: 18px; margin: 0; padding: 0; accent-color: var(--accent, #8a624a); }
.contact-form input:disabled { opacity: .5; }
.contact-form .contact-proposal-details { min-width: 0; margin: 0; padding: 18px 0 0; border: 0; border-top: 1px solid var(--line, #d7c7b8); }
.contact-form .contact-proposal-details legend { padding: 0 8px 0 0; font-size: .82rem; font-weight: 600; color: var(--accent, #8a624a); }
.contact-form [hidden] { display: none !important; }
@media (max-width: 700px) {
  .contact-form .contact-form-grid { grid-template-columns: minmax(0, 1fr); gap: 17px; }
}
