/* Shared form appearance for Home, Contact and Agencies. */
.inquiry-email-card > p:not(.form-note) { color: var(--color-text-secondary); line-height: 1.65; margin-bottom: 1.5rem; }
.inquiry-form { padding: 2.25rem; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: 24px; box-shadow: 0 20px 50px rgb(28 25 23 / .05); }
.form-heading { display: flex; align-items: center; gap: 1rem; margin-bottom: 1.75rem; padding-bottom: 1.5rem; border-bottom: 1px solid var(--color-border); }
.form-heading h3 { margin: 0; font: 600 1.0625rem/1.3 var(--font-body); letter-spacing: -.02em; }
.form-heading p { margin: .25rem 0 0; font-size: .8125rem; color: var(--color-text-secondary); }
.form-mark { display: flex; align-items: center; justify-content: center; flex-shrink: 0; width: 44px; height: 44px; border-radius: 50%; background: var(--color-action-tint); color: var(--color-link); font-size: 1.25rem; }
.field { margin-bottom: 1.25rem; }
.field label { display: block; margin-bottom: .5rem; font-size: .9375rem; font-weight: 500; line-height: 1.5; }
.field input, .field textarea { display: block; width: 100%; min-width: 0; min-height: 50px; padding: .875rem 1rem; background: var(--color-bg); color: var(--color-text-primary); border: 1px solid var(--color-input-border); border-radius: 10px; font: 400 1.0625rem/1.5 var(--font-body); transition: border-color .2s, background .2s; }
.field input:focus, .field textarea:focus { background: var(--color-surface); border-color: var(--color-focus); }
.field input::placeholder { color: var(--color-text-secondary); opacity: 1; }
.field textarea { min-height: 136px; resize: vertical; }
.field-hint { margin-top: 0; font-size: .8125rem; color: var(--color-text-secondary); line-height: 1.5; margin-bottom: .625rem; }
.inquiry-form .button { width: 100%; cursor: pointer; }
.inquiry-form .button:disabled { cursor: wait; opacity: .7; transform: none; }
.form-note { font-size: .75rem; line-height: 1.5; color: var(--color-text-secondary); margin: .875rem 0 0; }
.form-status { font-size: .9375rem; line-height: 1.5; color: var(--color-error); margin: 1rem 0 0; }

@media (max-width: 37.5rem) {
  .inquiry-form { padding: 1.5rem; }
  .form-heading { align-items: flex-start; }
  .form-heading h3 { font-size: 1rem; }
}
@media (prefers-reduced-motion: reduce) { .inquiry-form * { transition: none !important; } }
