﻿.contact-form,
.contact-form * { box-sizing: border-box; }
.contact-form { max-width: 760px; margin: 0 auto; font-family: Arial, sans-serif; color: #222;}
.quick-quote-form { height: auto !important; overflow: visible; }
.contact-form h2 { margin: 0 0 1rem; }
.contact-form label { display: block; margin: .8rem 0 .3rem; font-size: .95rem; font-weight: 700; }
.contact-form input,
.contact-form select,
.contact-form textarea { width: 100%; padding: .7rem; border: 1px solid #bbb; border-radius: 4px; font: inherit; }
.contact-form textarea { resize: vertical; }
.contact-form .captcha { display: inline-block; margin: 1rem 0 .3rem; padding: .65rem 1rem; border: 1px solid #999; background: #f2f2f2; font-size: 1.25rem; letter-spacing: .15rem; }
.contact-form button { margin-top: 1rem; padding: .7rem 1.25rem; border: 0; border-radius: 4px; background: #111; color: #fff; cursor: pointer; }
.contact-form .notice { margin-bottom: 1rem; padding: .75rem; border-radius: 4px; background: #e9f7ed; color: #176b2c; }
.contact-form .error { background: #fdecec; color: #a51d1d; }
.contact-form .ggf-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.ggf-modal-backdrop,
.ggf-modal-backdrop * { box-sizing: border-box; }
.ggf-modal-open { overflow: hidden; }
.ggf-modal-backdrop { position: fixed; inset: 0; z-index: 999999; display: grid; place-items: center; padding: 1rem; background: rgba(0, 0, 0, .62); }
.ggf-modal { width: min(100%, 440px); max-height: calc(100vh - 2rem); overflow-y: auto; padding: clamp(1.25rem, 5vw, 2rem); border-radius: 12px; background: #fff; color: #222; box-shadow: 0 18px 60px rgba(0, 0, 0, .25); font-family: Arial, sans-serif; text-align: center; }
.ggf-modal-error { border-top: 4px solid #b42318; }
.ggf-modal h2 { margin: 0 0 .75rem; font-size: clamp(1.25rem, 5vw, 1.6rem); }
.ggf-modal p { margin: 0; line-height: 1.55; overflow-wrap: anywhere; }
.ggf-modal-close { min-width: 100px; margin-top: 1.25rem; padding: .75rem 1.2rem; border: 0; border-radius: 6px; background: #111; color: #fff; font: inherit; cursor: pointer; }
.ggf-modal-close:focus-visible { outline: 3px solid #5588ff; outline-offset: 3px; }
@media (max-width: 480px) { .ggf-modal-backdrop { padding: .75rem; } .ggf-modal { max-height: calc(100vh - 1.5rem); border-radius: 10px; } }