.enquiry-layout{display:grid;grid-template-columns:minmax(250px,.75fr) minmax(0,1.55fr);gap:56px;align-items:start;padding-top:8px;padding-bottom:56px}
.enquiry-intro h2{font-size:32px;max-width:14ch}.enquiry-intro>p{max-width:42ch}.enquiry-promise{display:flex;gap:12px;padding:20px 0;margin:24px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);font-size:15px}.enquiry-promise .icon{margin-top:2px;color:var(--action)}.enquiry-email{margin-top:30px}.enquiry-email h3{font-size:18px}.enquiry-email>a{font-weight:600;overflow-wrap:anywhere}.enquiry-response{font-size:13px;color:var(--text-muted);margin-top:20px;max-width:38ch}
.enquiry-form{padding:32px;background:var(--surface-raised);border:1px solid var(--border);border-radius:6px;min-width:0}.enquiry-form-heading{border-bottom:1px solid var(--border);padding-bottom:22px;margin-bottom:24px}.enquiry-form-heading .eyebrow{margin-bottom:10px;font-size:11px}.enquiry-form-heading h2{font-size:29px;margin-bottom:8px}.enquiry-form fieldset{border:0;padding:0;margin:0 0 28px;min-width:0}.enquiry-form legend{font:650 18px/1.4 var(--font-display);letter-spacing:-.02em;margin-bottom:14px;padding:0}.enquiry-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px 18px}.enquiry-field{min-width:0}.enquiry-field>label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}.optional-label{font-size:12px;font-weight:400;color:var(--text-muted);margin-left:4px}.required-mark{color:var(--action)}.enquiry-field input,.enquiry-field textarea{display:block;box-sizing:border-box;width:100%;min-height:48px;padding:11px 13px;border:1px solid var(--input-border);border-radius:4px;background:var(--surface);color:var(--text);font:inherit;font-size:16px;line-height:1.5}.enquiry-field textarea{resize:vertical;min-height:130px}.enquiry-field input[aria-invalid=true],.enquiry-field textarea[aria-invalid=true]{border-color:var(--error)}.enquiry-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.enquiry-option{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid var(--border);border-radius:4px;cursor:pointer;line-height:1.45;font-size:13px;min-height:48px}.enquiry-option:has(input:checked){background:var(--surface-soft);border-color:var(--action)}.enquiry-option input{width:17px;height:17px;flex-shrink:0;margin:2px 0 0;accent-color:var(--action)}.enquiry-option span{min-width:0}.enquiry-child{padding:18px;background:var(--surface-soft);border-radius:4px;margin-bottom:26px}.field-help{font-size:13px;line-height:1.5;color:var(--text-muted);margin:0 0 12px}.field-error{color:var(--error);font-size:13px;margin:7px 0 0}.enquiry-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.enquiry-submit{padding-top:24px;margin-top:24px;border-top:1px solid var(--border)}.enquiry-submit p{max-width:55ch;font-size:13px}.enquiry-submit .btn{min-width:192px}.enquiry-error-summary{padding:18px;background:var(--error-bg);border:1px solid var(--error);color:var(--error);border-radius:4px;margin-bottom:24px;font-size:14px}.enquiry-error-summary ul{margin:8px 0 0;padding-left:20px}.enquiry-result{margin-top:24px;padding:22px;background:var(--surface-soft);border-radius:4px;overflow-wrap:anywhere}.enquiry-result h3{font-size:23px}.enquiry-result .actions{gap:16px}.enquiry-result .text-link{cursor:pointer}.enquiry-location{padding-block:36px}.enquiry-location>div{max-width:65ch}.enquiry-location h2{font-size:28px}
@media(max-width:1000px){.enquiry-layout{gap:30px;grid-template-columns:.75fr 1.4fr}.enquiry-form{padding:24px}.enquiry-options{grid-template-columns:1fr}}
@media(max-width:700px){.enquiry-layout{grid-template-columns:1fr;gap:28px;padding-bottom:32px}.enquiry-intro h2{max-width:none;font-size:29px}.enquiry-intro>p{max-width:none}.enquiry-promise{margin:18px 0;padding:16px 0}.enquiry-email{margin-top:18px}.enquiry-response{max-width:none}.enquiry-form{padding:22px 18px}.enquiry-form-heading h2{font-size:27px}.enquiry-fields{grid-template-columns:1fr;gap:18px}.enquiry-option{font-size:14px}.enquiry-submit .btn{width:100%}.enquiry-result{padding:18px}.enquiry-result .actions{align-items:flex-start;flex-direction:column}.enquiry-location{padding-block:28px}}

/* Keep the introduction before the form in both visual and reading order. */
.enquiry-option:hover{background:var(--surface-soft);border-color:var(--action)}
@media(max-width:700px){.service-intake .enquiry-intro h2{font-size:25px}.service-intake .enquiry-intro .small{margin-block:8px}}
