/* Shared quote-dialog layout. Keep controls readable; scroll only on genuinely short screens. */
#quote-modal{padding:16px;align-items:center;justify-content:center}
#quote-modal .quote-modal-box{box-sizing:border-box;width:min(760px,100%);max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);padding:22px 24px;border-radius:18px;overflow-y:auto;overscroll-behavior:contain;scroll-padding-block:16px}
#quote-modal .quote-modal-close{top:12px;right:12px;width:44px;height:44px;padding:6px;z-index:1;background:#fff;border-radius:50%}
#quote-modal .eyebrow{margin:0 48px 4px 0;font-size:12px;line-height:1.3}
#quote-modal #quote-modal-title{margin:0 42px 16px 0;font-size:clamp(22px,2.6vw,28px);line-height:1.2}
#quote-modal .quote-form{margin:0;padding:0;gap:10px 16px;border-radius:0;grid-template-columns:minmax(0,1fr)}
#quote-modal .quote-form>label:not(.honeypot){min-width:0;display:grid;align-content:start;gap:4px;font-size:14px;line-height:1.35}
#quote-modal .quote-form input:not([type="checkbox"]):not([type="hidden"]),#quote-modal .quote-form textarea{box-sizing:border-box;min-width:0;min-height:44px;padding:9px 11px;font-size:16px;line-height:1.3}
#quote-modal .quote-form textarea{height:80px;min-height:80px}
#quote-modal .quote-form .address-help{font-size:12px;line-height:1.35}
#quote-modal .quote-form>.consent{display:grid;grid-template-columns:20px minmax(0,1fr);gap:8px;font-size:13px;align-items:start}
#quote-modal .quote-form .consent input{min-height:18px;width:18px;height:18px;margin:1px 0 0}
#quote-modal .quote-form>.button{min-height:44px;padding:10px 18px}
#quote-modal .quote-form>.form-status:empty{display:none}
#quote-modal .quote-form>.form-status{margin:0;font-size:14px;line-height:1.4}
#quote-modal .quote-form>small{font-size:12px;line-height:1.35}
#quote-modal .form-error-summary{margin:0}
@media(min-width:600px){
 #quote-modal .quote-form{grid-template-columns:repeat(2,minmax(0,1fr))}
 #quote-modal .quote-form>label:has(textarea),#quote-modal .quote-form>.consent,#quote-modal .quote-form>.button,#quote-modal .quote-form>.form-status,#quote-modal .quote-form>.form-error-summary,#quote-modal .quote-form>small{grid-column:1/-1}
}
@media(max-width:599px){
 #quote-modal{padding:8px}
 #quote-modal .quote-modal-box{max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);padding:18px 16px;border-radius:14px}
 #quote-modal #quote-modal-title{font-size:22px;margin-bottom:12px}
 #quote-modal .quote-modal-close{top:8px;right:8px}
 #quote-modal .quote-form{gap:8px}
}
@media(max-height:700px) and (max-width:599px){
 #quote-modal .quote-modal-box{padding-block:12px}
 #quote-modal .eyebrow{display:none}
 #quote-modal #quote-modal-title{font-size:20px;margin-bottom:10px}
 #quote-modal .quote-form{gap:6px}
 #quote-modal .quote-form textarea{height:64px;min-height:64px}
}
