.contact-section{border-top:1px solid var(--line)}
.contact-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,6vw,6rem);align-items:start}
.contact-intro h2{max-width:11em}
.contact-intro p{max-width:27rem!important}
.contact-form{max-width:48rem;margin:2rem 0;color:var(--navy)}
.contact-layout .contact-form{margin:0}
.contact-form fieldset{padding:0;margin:0;border:0;min-width:0}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem 1.5rem}
.contact-field{display:flex;flex-direction:column;gap:.5rem;min-width:0;font-size:.9375rem;font-weight:500}
.contact-field--wide{grid-column:1/-1}
.contact-field input,.contact-field select,.contact-field textarea{width:100%;min-width:0;border:1px solid #aeb5bf;border-radius:3px;background:white;color:var(--navy);font:400 1rem/1.5 'DM Sans',Arial,sans-serif;padding:.9rem 1rem;min-height:50px}
.contact-field textarea{resize:vertical;min-height:150px}
.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{outline:2px solid var(--navy);outline-offset:2px;border-color:var(--navy)}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:#707984;opacity:1}
.contact-consent{display:flex;align-items:flex-start;gap:.75rem;font-size:.875rem;line-height:1.6;font-weight:400;margin:1.25rem 0}
.contact-consent input{width:20px;height:20px;flex:0 0 20px;margin:.13rem 0 0;accent-color:var(--navy)}
.contact-form .contact-caption{font-size:.875rem;line-height:1.6;margin:.8rem 0 1.25rem;color:var(--muted)}
.contact-form .button{border:1px solid var(--navy);border-radius:3px;font-family:inherit;cursor:pointer;min-height:52px;justify-content:center;min-width:180px}
.contact-form .button:disabled{opacity:.55;cursor:not-allowed}
.contact-form .button[hidden]{display:none}
.contact-form [data-turnstile]{margin:1rem 0;max-width:100%;min-width:0}
.contact-form [data-form-status]{font-size:1rem;line-height:1.6;max-width:100%!important;margin:1rem 0;min-height:1.6em;overflow-wrap:anywhere;color:var(--navy)}
.contact-form [data-form-status][data-state=error]{color:#8d2731}
.contact-trap{position:absolute!important;left:-10000px!important;top:auto!important;width:1px;height:1px;overflow:hidden}
.contact-form [hidden]{display:none!important}
@media(max-width:800px){.contact-layout{grid-template-columns:1fr;gap:2rem}.contact-intro h2{max-width:100%}.contact-form{width:100%}.contact-grid{grid-template-columns:1fr}.contact-form .button{width:100%}.contact-field--wide{grid-column:auto}}
