/* Unified enquiry forms (v39). Keep career-specific fields unchanged. */
:root{--lead-gap:18px;--lead-radius:15px}
.lead-form:not([data-form="career"]),
.contact-dialog .lead-form[data-form="modal"]{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:var(--lead-gap);min-width:0}
.lead-form:not([data-form="career"]) .form-row,
.contact-dialog .lead-form[data-form="modal"] .form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.lead-form:not([data-form="career"]) label:not(.consent):not(.trap),
.contact-dialog .lead-form[data-form="modal"] label:not(.consent):not(.trap){margin:0;min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:8px;font-size:14px;line-height:1.4;font-weight:700}
.lead-form:not([data-form="career"]) .field-heading,
.contact-dialog .lead-form[data-form="modal"] .field-heading{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;font-size:14px;min-height:20px;line-height:1.42;font-weight:750;color:#1c3026;margin:0}
.lead-form:not([data-form="career"]) .field-optional,
.contact-dialog .lead-form[data-form="modal"] .field-optional{font-size:12px;line-height:1.45;font-weight:500;color:#738075;margin:0}
.lead-form:not([data-form="career"]) input:not([type=checkbox]):not([type=file]),
.lead-form:not([data-form="career"]) select,
.lead-form:not([data-form="career"]) textarea,
.contact-dialog .lead-form[data-form="modal"] input:not([type=checkbox]):not([type=file]),
.contact-dialog .lead-form[data-form="modal"] select,
.contact-dialog .lead-form[data-form="modal"] textarea{width:100%;min-width:0;max-width:100%;height:auto;min-height:52px;box-sizing:border-box;border:1px solid #d6ddcf;border-radius:var(--lead-radius);background:#f8f7f3;padding:13px 16px;font:500 15px/1.5 var(--f);color:#1c3026;box-shadow:none;outline:0}
.lead-form:not([data-form="career"]) textarea,
.contact-dialog .lead-form[data-form="modal"] textarea{min-height:100px;resize:vertical}
.lead-form:not([data-form="career"]) input:focus-visible,
.lead-form:not([data-form="career"]) select:focus-visible,
.lead-form:not([data-form="career"]) textarea:focus-visible{outline:2px solid #7a9f65;outline-offset:2px;background:#fff}
.lead-form:not([data-form="career"]) input::placeholder,
.lead-form:not([data-form="career"]) textarea::placeholder{color:#87918a;opacity:1}
.lead-form:not([data-form="career"]) .house-details-field[hidden],
.contact-dialog .lead-form[data-form="modal"] .house-details-field[hidden]{display:none!important}
.lead-form:not([data-form="career"]) .project-file-field{gap:9px}
.lead-form:not([data-form="career"]) .project-file-input{display:block;min-width:0}
.lead-form:not([data-form="career"]) input[type="file"]{display:block;width:100%;max-width:100%;min-width:0;box-sizing:border-box;border:1px dashed #b6c5ab;border-radius:var(--lead-radius);padding:13px 14px;background:#f2f6ed;color:#385442;font:500 12px/1.45 var(--f);cursor:pointer;overflow:hidden}
.lead-form:not([data-form="career"]) input[type="file"]::file-selector-button{padding:9px 14px;margin-right:13px;border:none;border-radius:9px;background:#244b32;color:#fff;font:750 13px/1.2 var(--f);cursor:pointer;transition:background .2s}
.lead-form:not([data-form="career"]) input[type="file"]:hover::file-selector-button{background:#3e674c}
.lead-form:not([data-form="career"]) input[type="file"]:focus-visible{outline:3px solid #92b77a;outline-offset:2px}
.lead-form:not([data-form="career"]) .file-help{font:500 11px/1.5 var(--f);color:#728075;margin:-2px 0 0}
.lead-form:not([data-form="career"]) .file-picked{color:#2b5f3e;font:650 12px/1.5 var(--f);overflow-wrap:anywhere}
.lead-form:not([data-form="career"]) .file-picked:empty{display:none}
.lead-form:not([data-form="career"]) label.consent,
.contact-dialog .lead-form[data-form="modal"] label.consent{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:11px;padding:0;margin:0;min-width:0;font:400 12px/1.6 var(--f);color:#58665c;background:transparent}
.lead-form:not([data-form="career"]) .consent input[type=checkbox],
.contact-dialog .lead-form[data-form="modal"] .consent input[type=checkbox]{width:18px;height:18px;min-width:18px;min-height:18px;margin:2px 0 0;padding:0;accent-color:#376646}
.lead-form:not([data-form="career"]) .consent span{min-width:0}
.lead-form:not([data-form="career"]) .btn[type=submit]{width:100%;min-height:54px;margin:0;padding:13px 20px;display:flex;align-items:center;justify-content:center;text-align:center;font:750 15px/1.4 var(--f)}
.lead-form:not([data-form="career"]) .form-status:empty{display:none}
.contact-dialog.quote-dialog{width:min(670px,calc(100vw - 42px));max-width:min(670px,calc(100vw - 42px));padding:clamp(24px,3.5vw,38px)}
.contact-dialog .dialog-form[data-form="modal"]{gap:17px}
.contact-dialog .request-selection:not([hidden]){display:block;margin:0;background:#eff6e9;border:1px solid #d9e6d0;border-radius:13px;padding:11px 14px;font:650 13px/1.45 var(--f);color:#2e5539}
.contact-dialog .request-selection[hidden]{display:none!important}
@media(max-width:640px){
 .lead-form:not([data-form="career"]) .form-row,.contact-dialog .lead-form[data-form="modal"] .form-row{grid-template-columns:minmax(0,1fr);gap:15px}
 .contact-dialog.quote-dialog{width:calc(100vw - 24px);max-width:calc(100vw - 24px);padding:22px 18px}
 .lead-form:not([data-form="career"]) input:not([type=checkbox]):not([type=file]),.lead-form:not([data-form="career"]) select,.lead-form:not([data-form="career"]) textarea{font-size:16px;min-height:50px}
 .lead-form:not([data-form="career"]) input[type=file]{font-size:11px;padding:10px}
 .lead-form:not([data-form="career"]) input[type=file]::file-selector-button{padding:9px 11px;margin-right:7px}
}
@media(prefers-reduced-motion:reduce){.lead-form:not([data-form="career"]) input[type=file]::file-selector-button{transition:none}}
