/* Contact UI only. The approved page layout and artwork are unchanged. */
.contact-dialog{padding:30px;width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;overscroll-behavior:contain;scrollbar-gutter:stable;border-radius:10px}
.contact-dialog::backdrop{background:rgb(12 20 32 / 44%)}
.contact-dialog .dialog-top{align-items:center;margin-bottom:20px}.contact-dialog .close{min-width:64px;min-height:44px;font-size:16px}
.contact-form{display:block}.contact-form label{display:block;font-size:16px;font-weight:500;line-height:1.5;margin:16px 0 7px}.contact-form label:first-child{margin-top:0}
.contact-form input,.contact-form textarea{display:block;width:100%;font:inherit;font-size:16px;line-height:1.5;padding:11px 12px;border:1px solid #7b8591;background:white;color:#151b24;border-radius:4px;scroll-margin:24px}
.contact-form textarea{min-height:130px;resize:vertical}.contact-form input{min-height:48px}
.contact-form [aria-invalid=true]{border:2px solid #294acc;padding:10px 11px}
.contact-form .field-error{font-size:15px;line-height:1.45;color:#151b24;margin:7px 0 0}.contact-form .field-error:empty{display:none}
.contact-form .primary{margin-top:22px;min-height:52px;width:100%;justify-content:center;font-size:16px}
.contact-form .primary:disabled{cursor:wait;background:#505965;color:white}
.form-feedback{font-size:16px;line-height:1.5;color:#151b24;margin:18px 0 0;padding:14px 16px;background:#f4f6f8;border-radius:4px}
.contact-success{padding:24px 0 16px}.contact-success:focus{outline:none}
.contact-success p{font-size:26px;line-height:1.35;letter-spacing:-.4px;color:#151b24}
.contact-trap{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;white-space:nowrap!important}
[hidden]{display:none!important}
@keyframes modal-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes modal-out{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(6px)}}
@keyframes backdrop-in{from{background:rgb(12 20 32 / 0%)}to{background:rgb(12 20 32 / 44%)}}
@keyframes backdrop-out{from{background:rgb(12 20 32 / 44%)}to{background:rgb(12 20 32 / 0%)}}
.contact-dialog.is-opening{animation:modal-in 180ms cubic-bezier(.2,.65,.3,1) both}.contact-dialog.is-opening::backdrop{animation:backdrop-in 180ms ease both}
.contact-dialog.is-closing{animation:modal-out 140ms ease both}.contact-dialog.is-closing::backdrop{animation:backdrop-out 140ms ease both}
@media(max-width:760px){.contact-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:22px;margin:auto}.contact-dialog h2{font-size:30px}.contact-dialog .dialog-top{margin-bottom:18px}.contact-form textarea{min-height:120px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* The normal form and server response use the same local visual vocabulary. */
.form-page{margin:0;background:#f4f6f8;color:#151b24;font:16px/1.5 Arial,Helvetica,sans-serif}
.form-page *{box-sizing:border-box}.form-shell{width:min(560px,calc(100% - 32px));margin:48px auto;padding:32px;background:white;border-radius:10px}
.form-page h1{font-weight:500;font-size:36px;letter-spacing:-1.2px;line-height:1.15;margin:30px 0 18px}.form-page p{margin-top:0}.form-page a{color:#294acc}.fallback-brand{display:inline-flex;min-height:44px}.fallback-brand img{display:block;width:166px;height:42px}
.form-page .primary{display:flex;align-items:center;border:0;border-radius:4px;background:#151b24;color:white;padding:12px 20px;cursor:pointer;font:inherit}
.return-link{display:inline-flex;min-height:44px;align-items:center;margin-top:22px}.form-page :focus-visible{outline:3px solid #294acc;outline-offset:4px}.form-page .form-intro{line-height:1.5}
@media(max-width:760px){.form-shell{margin:12px auto;padding:24px}}
