.footer-links .footer-contact{font:inherit;line-height:1.6;color:#fff;background:transparent;border:1px solid #8299aa;border-radius:8px;padding:9px 17px;min-height:44px;cursor:pointer}
.footer-links .footer-contact:hover{background:#21364c;border-color:#fff}
.footer-links .footer-contact:focus-visible,#contactDialog :focus-visible{outline:3px solid #f49c62;outline-offset:3px}
#contactDialog{width:min(640px,calc(100% - 32px));max-width:none;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);margin:auto;overflow:auto;overscroll-behavior:contain}
#contactDialog .contact-dialog-head{position:sticky;top:0;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 28px 16px;background:#f7f9fa;border-bottom:1px solid var(--line)}
#contactDialog h2{font-size:30px;line-height:1.2;letter-spacing:-.035em;margin:5px 0 0;overflow-wrap:anywhere}
#contactDialog .close-dialog{width:44px;height:44px;min-width:44px;min-height:44px;cursor:pointer}
.contact-dialog-body{padding:20px 28px 28px;min-width:0}
.contact-dialog-description{font-size:1rem;line-height:1.7;color:var(--grey);margin:0 0 22px}
#contactInputs{border:0;padding:0;margin:0;min-width:0}
.contact-form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}
.contact-field{min-width:0}
.contact-field-wide{grid-column:1/-1}
.contact-field label{display:block;font-size:1rem;line-height:1.5;font-weight:750;margin-bottom:7px}
.contact-field label span{font-size:.9375rem;font-weight:400;color:var(--grey)}
.contact-field input,.contact-field textarea{box-sizing:border-box;display:block;width:100%;min-width:0;max-width:100%;min-height:48px;padding:11px 12px;border:1px solid #b6c6d3;border-radius:7px;background:#fff;color:var(--ink);font:inherit;font-size:16px;line-height:1.5}
.contact-field textarea{resize:vertical;min-height:150px}
.contact-field [aria-invalid=true]{border:2px solid #b9400a}
.contact-field-error{font-size:.9375rem;line-height:1.6;color:#9b3000;margin:7px 0 0;overflow-wrap:anywhere}
.contact-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.contact-privacy{font-size:.9375rem;line-height:1.7;color:var(--grey);margin:20px 0 0}
.contact-privacy a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
#contactFeedback{font-size:1rem;line-height:1.7;margin:20px 0 0;padding-left:14px;border-left:3px solid var(--line);overflow-wrap:anywhere}
#contactFeedback[data-error=true]{border-color:#b9400a}
.contact-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.contact-actions .btn{font-size:1rem;line-height:1.5;min-height:48px;height:auto;white-space:normal;max-width:100%;text-align:center}
#contactSubmit{width:100%}
#contactSubmit:disabled,#contactRetry:disabled{opacity:.65;cursor:not-allowed}
#contactReceipt{font-size:1rem;line-height:1.75;overflow-wrap:anywhere}
#contactReceipt h3{font-size:1.5rem;line-height:1.3;margin-top:0}
@media(max-width:650px){
 #contactDialog{width:calc(100% - 16px);max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);border-radius:12px}
 #contactDialog .contact-dialog-head{padding:18px 16px 15px;gap:12px}
 #contactDialog h2{font-size:26px}
 .contact-dialog-body{padding:18px 16px 24px}
 .contact-form-fields{grid-template-columns:minmax(0,1fr);gap:16px}
 .contact-actions .btn{width:100%}
}
