.contact-form .contact-fields{border:0;padding:0;margin:0;min-width:0;display:grid;gap:20px}
.contact-intro h1{font-size:clamp(2rem,3.3vw,3rem);line-height:1.08;overflow-wrap:break-word}
.contact-form .contact-fields:disabled{opacity:.7}
.contact-required,.contact-field-hint{color:#5b6474;font-size:.86rem;line-height:1.55}
.contact-required{margin:0 0 20px}
.contact-field-error{display:block;color:#a31b37;font-size:.86rem;line-height:1.5;margin-top:6px}
.contact-form [aria-invalid=true]{border-color:#a31b37;box-shadow:0 0 0 1px #a31b37}
.contact-form :focus-visible{outline:3px solid #4764bf;outline-offset:4px}
.contact-form .form-error:focus,.contact-form .form-success:focus{outline:2px solid #4764bf;outline-offset:8px}
.contact-form .contact-status{min-height:1.5em;font-size:.88rem;color:#4e586e;margin:8px 0}
.contact-form .form-submit:disabled{cursor:wait;opacity:.7}
.contact-form .contact-reference{padding:12px 16px;background:#eef4ff;border-radius:10px;overflow-wrap:anywhere}
.contact-success-mark{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#e6f7ef;color:#16744b;font-size:2rem;margin-bottom:12px}
.contact-benefits{padding-left:1.25rem;line-height:1.7;margin:24px 0}
.contact-benefits li{padding:4px 0}
.contact-next-steps{margin-top:28px}
.contact-next-steps article{background:#fff;border:1px solid #e0e5ed;border-radius:18px;padding:26px}
.contact-next-steps h3{margin:16px 0 10px}
.contact-next-steps p{color:#566078;line-height:1.65}
.contact-step-number{font-size:.85rem;font-weight:800;color:#234295;letter-spacing:.08em}
.contact-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(prefers-reduced-motion:reduce){.contact-form *{scroll-behavior:auto!important;transition:none!important}}
