.enquiry{padding:76px 0 84px;background:#fff;border-top:1px solid var(--line)}

.enquiry-head{display:grid;grid-template-columns:minmax(0,.8fr) minmax(360px,1.2fr);gap:64px;align-items:end;margin-bottom:38px}

.enquiry h2{margin:0;font-size:clamp(35px,3.5vw,46px);font-weight:700;line-height:1.06;letter-spacing:-.035em}

.enquiry h2 span{display:block;color:var(--red)}

.enquiry-intro{max-width:590px;margin:0;color:var(--muted);font-size:18px;line-height:1.55}

.enquiry-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:32px;background:#fff;border:1px solid var(--line)}

.form-field{display:grid;align-content:start;gap:8px;min-width:0}

.form-field-wide{grid-column:1/-1}

.form-field label,.form-legend{color:var(--ink);font-size:14px;font-weight:700}

.form-field input,.form-field select,.form-field textarea{display:block;width:100%;margin:0;padding:12px 14px;border:1px solid #b9cad5;border-radius:5px;background:#fff;color:var(--ink);font:inherit;line-height:1.35;transition:border-color .18s ease,box-shadow .18s ease}

.form-field input:not([type="file"]),.form-field select{height:54px;min-height:54px;max-height:54px}

.form-field textarea{min-height:150px;resize:vertical}

.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--blue);outline:0;box-shadow:0 0 0 3px rgba(84,168,223,.18)}

.file-note{margin:0;color:#617482;font-size:13px}

.consent-row{grid-column:1/-1;display:flex;align-items:flex-start;gap:11px;color:var(--muted);font-size:14px;line-height:1.45}

.consent-row input{flex:0 0 auto;width:18px;height:18px;margin-top:1px;accent-color:var(--red)}

.consent-row a{text-decoration:underline;text-underline-offset:2px}

.form-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}

.form-footer{grid-column:1/-1;display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:4px}

.submit-enquiry{min-height:54px;padding:13px 30px;border-radius:7px;cursor:pointer;font-family:Arial,Helvetica,sans-serif;font-size:16px;font-weight:700;line-height:1.45}

.submit-enquiry[disabled]{cursor:wait;opacity:.62;transform:none!important}

.form-status{min-height:24px;margin:0;color:var(--muted);font-size:14px}

.form-status.is-success{color:#16713a;font-weight:700}

.form-status.is-error{color:#ed1c24;font-weight:700}

.contact-map{position:relative}

.contact-map:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 55% 52%,rgba(237,28,36,.22),transparent 38%);opacity:0}

.service-area-map{opacity:.68;transform:scale(.975);filter:grayscale(.72) saturate(.35) contrast(.94);transition:opacity 1s ease,transform 1.1s cubic-bezier(.2,.65,.25,1),filter 1.05s ease}

.contact-map.map-visible .service-area-map{opacity:1;transform:scale(1);filter:grayscale(0) saturate(1) contrast(1)}

.contact-map.map-visible:after{animation:map-soft-glow 1.7s ease-out .35s 1}

@keyframes map-soft-glow{0%,100%{opacity:0}
42%{opacity:1}
72%{opacity:.18}
}

@media(hover:hover) and (pointer:fine){.contact-map:hover .service-area-map{transform:scale(1.012)}
}

@media(max-width:900px){.enquiry{padding:60px 0 68px}
.enquiry-head{grid-template-columns:1fr;gap:18px}
.enquiry-form{grid-template-columns:1fr 1fr}
.form-field:first-child,.form-field-wide{grid-column:1/-1}
}

@media(max-width:600px){.enquiry{padding:52px 0 58px}
.enquiry-head{margin-bottom:28px}
.enquiry h2{font-size:31px}
.enquiry-intro{font-size:16px}
.enquiry-form{grid-template-columns:1fr;gap:16px;padding:22px 18px}
.form-field,.form-field:first-child,.form-field-wide{grid-column:1}
.form-footer{align-items:stretch}
.submit-enquiry{width:100%}
}

@media(prefers-reduced-motion:reduce){.service-area-map{opacity:1;transform:none;filter:none;animation:none!important}
}
