#inquiry-form {width:min(620px,94vw);max-height:90vh;overflow:auto;border:0;padding:28px}
#inquiry-form::backdrop {background:#0009}
#inquiry-form .dialog-close {float:right}
.contact-map {padding:24px 0;min-height:180px}
.checklist-form .row {display:block}
.checklist-form input[type=checkbox] {width:auto;margin-right:8px}
.checklist-form .wpcf7-list-item {display:inline-block;margin:4px 15px 4px 0}
.checklist-form .wpcf7-list-item label {display:inline-flex;align-items:center}
.checklist-form input:not([type=checkbox]):not([type=submit]),.checklist-form textarea {width:100%}
.checklist-login {max-width:480px;margin:32px auto}

/* Cookie consent banner (replaces the WordPress WPConsent plugin). */
.consent-banner{position:fixed;left:0;right:0;bottom:0;z-index:900000;background:#123;color:#fff;padding:16px 20px;display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:center;font-size:15px;line-height:1.45}
.consent-banner p{margin:0;max-width:760px}
.consent-banner a{color:#ffcd2a;text-decoration:underline}
.consent-actions{display:flex;gap:10px;flex-shrink:0}
.consent-btn{cursor:pointer;border:1px solid #fff;border-radius:3px;padding:10px 18px;font:inherit;min-height:44px}
.consent-secondary{background:transparent;color:#fff}
.consent-primary{background:#ffcd2a;border-color:#ffcd2a;color:#000;font-weight:600}
.consent-btn:focus-visible,.consent-banner a:focus-visible{outline:3px solid #ffcd2a;outline-offset:2px}
@media (max-width:640px){.consent-banner{flex-direction:column;align-items:stretch;text-align:center}.consent-actions{justify-content:center}}

/* Inquiry dialog */
#inquiry-form{width:min(720px,94vw);max-height:90vh;overflow:auto;border:0;border-radius:4px;padding:32px;background:#fff}
#inquiry-form::backdrop{background:rgba(0,0,0,.6)}
#inquiry-form .dialog-close{position:absolute;top:8px;right:12px;background:none;border:0;font-size:30px;line-height:1;cursor:pointer;color:#555}
#inquiry-form h2{margin-top:0}
#inquiry-form .row{display:flex;flex-wrap:wrap;gap:0 20px}
#inquiry-form .row>div{flex:1 1 240px;margin-bottom:16px}
#inquiry-form label{display:block;margin-bottom:5px;font-weight:600}
#inquiry-form input[type=text],#inquiry-form input[type=email],#inquiry-form input[type=tel],#inquiry-form textarea{width:100%;padding:9px 11px;border:1px solid #ccc;border-radius:3px;font:inherit;box-sizing:border-box}
#inquiry-form .honeypot{position:absolute;left:-9999px}
#inquiry-form fieldset.inquiry-services{border:0;padding:0;margin:0 0 16px}
#inquiry-form fieldset.inquiry-services legend{font-weight:600;margin-bottom:6px}
#inquiry-form fieldset.inquiry-services label{display:inline-flex;align-items:center;gap:7px;font-weight:400;margin:0 22px 6px 0}
#inquiry-form button[type=submit]{background:#6aa84f;color:#fff;border:0;padding:12px 26px;font:inherit;cursor:pointer;min-height:44px}
#inquiry-form button[type=submit]:disabled{opacity:.6;cursor:default}
#inquiry-form .form-status:empty{display:none}
#inquiry-form .form-status{margin:12px 0 0}

/* Map (Leaflet + OpenStreetMap tiles). The pin opens the Google listing. */
.osm-map{max-width:640px;height:390px;margin-top:10px;z-index:0}
.osm-map .leaflet-marker-icon{cursor:pointer}
.map-links{margin-top:10px;font-size:14px}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
