/* Shared contact area: inherits Bootstrap and the site's CTA design. */
.footer-contact { padding: 1.75rem 0 2rem; margin-bottom: 1.75rem; border-bottom: 1px solid #d4deeb; background: #f3f7fc; color: #243a76; text-align: left; }
.footer-contact h2 { margin: 0 0 1rem; font-size: 2rem; line-height: 1.2; font-weight: 850; letter-spacing: -.025em; text-wrap: balance; }
.footer-contact-intro p { max-width: 36ch; margin-bottom: 1rem; color: #405575; line-height: 1.65; }
.footer-contact a { color: #215c96; text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.footer-contact a:hover { color: #243a76; }
.footer-contact .form-label { margin-bottom: .25rem; font-size: .9375rem; font-weight: 750; color: #243a76; }
.footer-contact .form-label span { font-weight: 400; color: #405575; }
.footer-contact .form-control, .footer-contact .form-select { min-height: 44px; border: 1px solid #7489ac; border-radius: 8px; background-color: #fff; color: #243a76; font-size: 1rem; caret-color: #215c96; }
.footer-contact textarea.form-control { min-height: 80px; resize: vertical; }
.footer-contact .form-control:focus, .footer-contact .form-select:focus { border-color: #326da8; box-shadow: 0 0 0 3px rgba(50,109,168,.2); }
.footer-contact .form-check-label { color: #405575; font-size: .875rem; line-height: 1.5; }
.footer-contact .form-check-input { border-color: #849dbb; }
.footer-contact .form-check-input:checked { background-color: #326da8; border-color: #326da8; }
.footer-contact .invalid-feedback { color: #a12632; }
.footer-contact .alert { margin-bottom: 0; }
.footer-contact a:focus-visible, .footer-contact .form-check-input:focus-visible, .footer-contact .alert:focus-visible { outline: 3px solid #326da8; outline-offset: 3px; }
.footer-contact ::selection { color: #fff; background: #243a76; }
@media (max-width: 991.98px) { .footer-contact { padding: 1.5rem 0; } .footer-contact-intro p { max-width: 65ch; margin-bottom: .75rem; } }
@media (max-width: 575.98px) { .footer-contact h2 { font-size: 1.625rem; } .footer-contact-submit { width: 100%; } }
/* Keep fields and the submit action visible independently of scroll reveals. */
body.site-motion-enabled .footer-contact .site-motion-item { opacity: 1; transform: none; transition: none; will-change: auto; }
