/* contact.css - contact page + enquiry form. */
.contact-hero { max-width: 760px; margin: 0 auto; padding: 48px 0 36px; text-align: center; }
.contact-hero h1 { margin-bottom: 8px; }
.contact-hero > p { color: var(--muted); font-size: 1.15rem; margin-bottom: 24px; }

.contact-form {
  position: relative; display: grid; gap: 16px; max-width: 720px; margin: 0 auto;
  padding: 48px 20px 24px; text-align: left;
  /* white card with a teal bar across the top, matching askenact.com */
  background: linear-gradient(var(--primary), var(--primary)) top / 100% 10px no-repeat, var(--surface);
  border-radius: 20px; box-shadow: 0 28px 40px rgba(0, 0, 0, .1);
}
.required-note { margin: 0; color: var(--coral); font-size: .9rem; }

.contact-field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.contact-field { display: grid; gap: 6px; font-weight: 600; color: var(--ink); }
.contact-field em { color: var(--coral); font-style: normal; }
/* input / select / textarea styling is shared from main.css */

.contact-consent { display: grid; grid-template-columns: auto 1fr; align-items: start; gap: 10px; font-size: .95rem; color: var(--muted); }
.contact-consent input { width: 18px; height: 18px; margin-top: 3px; accent-color: var(--primary); }
.contact-consent em { color: var(--coral); font-style: normal; }

.contact-submit { justify-self: start; margin-top: 4px; }
.contact-submit:disabled { cursor: progress; opacity: .7; }

.contact-status { min-height: 1.4em; margin: 0; font-weight: 600; }
.contact-status[data-status="success"] { color: var(--primary-dark); }
.contact-status[data-status="error"] { color: var(--coral); }

@media (max-width: 600px) {
  .contact-field-grid { grid-template-columns: 1fr; }
  .contact-submit { width: 100%; text-align: center; }
}
