/* Enquiry form. Scoped to the enquiry card, so other Contact Form 7 forms are unaffected. */
.enquiry-card { --form-line: #8490a3; --form-error: #a4000f; padding: clamp(24px, 3.4vw, 36px); box-shadow: 0 28px 64px -28px rgba(0, 0, 0, .6); }
.enquiry-card h3 { margin-bottom: 8px; font-family: var(--font-head); font-size: clamp(1.375rem, 2.4vw, 1.75rem); font-weight: 800; line-height: 1.2; letter-spacing: -.015em; }
.enquiry-card .enquiry-intro { margin: 0; color: var(--slate-600); }
.enquiry-card .enquiry-legend { margin: 10px 0 18px; color: var(--slate-600); font-size: var(--fs-xs); }

.enquiry-card .wpcf7-form { gap: 16px; }
.enquiry-card .wpcf7-form label { align-content: start; gap: 6px; color: var(--navy-900); }
.enquiry-card .wpcf7-form input:not([type="submit"]), .enquiry-card .wpcf7-form textarea { display: block; min-height: 48px; border: 1px solid var(--form-line); border-radius: var(--r-sm); background: #fbfcfd; color: var(--navy-900); transition: border-color .14s ease, background-color .14s ease; }
.enquiry-card .wpcf7-form textarea { min-height: 124px; max-height: 260px; resize: vertical; }
.enquiry-card .wpcf7-form input:not([type="submit"]):hover, .enquiry-card .wpcf7-form textarea:hover { border-color: var(--navy-900); }
.enquiry-card .wpcf7-form input:not([type="submit"]):focus, .enquiry-card .wpcf7-form textarea:focus { border-color: var(--blue-700); background: var(--white); outline: 3px solid var(--blue-700); outline-offset: 1px; }

.enquiry-card .wpcf7-form [aria-invalid="true"] { border-color: var(--form-error); background: #fff8f7; }
.enquiry-card .wpcf7-not-valid-tip { margin-top: 5px; color: var(--form-error); font-size: var(--fs-xs); font-weight: 600; }

.enquiry-card .wpcf7-form .wide:has(.wpcf7-submit) { position: relative; }
.enquiry-card .wpcf7-form input[type="submit"] { min-height: 54px; padding-inline: 44px; background-color: var(--gold-400); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' stroke='%2307172f' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 10h14M11 4l6 6-6 6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: calc(50% + 72px) 50%; font-family: var(--font-head); font-size: var(--fs-base); font-weight: 800; transition: background-color .14s ease; }
.enquiry-card .wpcf7-form input[type="submit"]:hover { background-color: var(--gold-300); }
.enquiry-card .wpcf7-form input[type="submit"]:focus-visible { outline: 3px solid var(--blue-700); outline-offset: 3px; }
.enquiry-card .wpcf7-form[data-status="submitting"] input[type="submit"] { background-image: none; color: rgba(7, 23, 47, .72); pointer-events: none; cursor: progress; }
.enquiry-card .wpcf7-spinner { display: block; position: absolute; top: 50%; left: calc(50% + 62px); margin: -12px 0 0; }

.enquiry-card .wpcf7 form .wpcf7-response-output { padding: 12px 14px; border: 1px solid; border-radius: var(--r-sm); font-weight: 600; }
.enquiry-card .wpcf7 form.sent .wpcf7-response-output { border-color: #12643a; background: #e9f6ef; color: #0d4f2d; }
.enquiry-card .wpcf7 form.invalid .wpcf7-response-output, .enquiry-card .wpcf7 form.unaccepted .wpcf7-response-output { border-color: #8a5a00; background: #fff6e0; color: #5f3e00; }
.enquiry-card .wpcf7 form.failed .wpcf7-response-output, .enquiry-card .wpcf7 form.aborted .wpcf7-response-output, .enquiry-card .wpcf7 form.spam .wpcf7-response-output { border-color: var(--form-error); background: #fff0ef; color: #7d000b; }

@media (max-width: 599px) {
  .enquiry-card { padding: 20px; }
  .enquiry-card .wpcf7-form { gap: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  .enquiry-card .wpcf7-form input, .enquiry-card .wpcf7-form textarea { transition: none; }
}
