#contact-dialog{max-height:calc(100dvh - 32px);overflow-y:auto}
#contact-dialog h2{margin-top:0}
#contact-form fieldset{border:0;padding:0;margin:0;min-width:0}
#contact-form label{display:block;font-size:14px;margin:14px 0 6px}
#contact-form input:not([type=checkbox]),#contact-form textarea{width:100%;font:inherit;font-size:16px;padding:10px;border:1px solid #aaa;border-radius:2px;background:#fff;color:#171717}
#contact-form textarea{resize:vertical}
#contact-form input:focus-visible,#contact-form textarea:focus-visible{outline:2px solid #f20d20;outline-offset:2px}
#contact-form .contact-small{font-size:12px;line-height:1.5;color:#555;margin:12px 0}
#contact-form a{text-decoration:underline;text-underline-offset:3px}
#contact-form .contact-privacy{display:flex;align-items:start;gap:10px;margin:16px 0}
#contact-form .contact-privacy input{width:18px;height:18px;flex-shrink:0;margin:2px 0}
#contact-form .contact-privacy label{font-size:12px;line-height:1.5;margin:0}
#contact-form .contact-honeypot{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#contact-status:empty{display:none}
#contact-status{font-size:14px;line-height:1.5}
#contact-form button:disabled{opacity:.65;cursor:wait}
@media(max-width:600px){#contact-dialog{padding:24px;width:calc(100% - 28px)}}

#contact-dialog h2{padding-right:25px}
#contact-dialog .contact-close{position:absolute;top:8px;right:8px;width:44px;height:44px;margin:0;border:0;background:transparent;color:inherit;font-size:28px;cursor:pointer;line-height:1}

#contact-dialog [hidden]{display:none!important}
#contact-success{min-height:280px;display:grid;place-items:center;padding:36px 8px;background:#fff;color:#171717;text-align:center}
#contact-success p{margin:0;font-size:clamp(28px,5vw,42px);line-height:1.2}
