.contact-intro{padding-bottom:44px}
.contact-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);gap:64px;align-items:start;padding-top:52px;background:var(--paper)}
.contact-aside{padding-top:10px;min-width:0}
.contact-aside h2{font-size:clamp(1.9rem,2.6vw,2.6rem);line-height:1.3}
.contact-aside>p:not(.eyebrow){color:var(--muted)}
.contact-direct{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin:34px 0 26px;border-top:1px solid var(--line);padding-top:26px}
.contact-direct-label{font-size:.875rem;color:var(--muted);margin:0}
.contact-direct a{font-weight:600;color:var(--petrol);line-height:1.5;overflow-wrap:anywhere;padding:6px 0;border-bottom:1px solid currentColor}
.contact-direct a:hover{text-decoration:underline;text-underline-offset:4px}
.contact-locations{font-size:.875rem;letter-spacing:.3px}
.contact-form-card{background:white;border:1px solid var(--line);border-radius:4px;padding:34px;min-width:0}
.contact-form-heading h2{font-size:1.65rem;margin-bottom:10px}
.contact-form-heading>p{font-size:.875rem;color:var(--muted);margin-bottom:28px}
.contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 20px}
.contact-field{min-width:0}
.contact-field-wide{grid-column:1/-1}
.contact-field label{display:block;font-size:.9375rem;font-weight:600;line-height:1.5;margin-bottom:8px}
.contact-field label>span{font-size:.8125rem;font-weight:400;color:var(--muted)}
.contact-field input,.contact-field select,.contact-field textarea{display:block;width:100%;font:inherit;font-size:1rem;line-height:1.5;color:var(--ink);background:white;border:1px solid #A7B9C0;border-radius:3px;padding:12px 13px;min-height:48px}
.contact-field textarea{resize:vertical;min-height:175px}
.contact-field textarea::placeholder{color:#657C86;opacity:1}
.contact-field input:focus-visible,.contact-field select:focus-visible,.contact-field textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-color:var(--petrol)}
.contact-field [aria-invalid=true]{border-color:#A23F35}
.field-help{color:var(--muted);font-size:.8125rem;line-height:1.5;margin:8px 0 0}
.field-error{color:#963A32;font-size:.875rem;line-height:1.6;margin:8px 0 0}
.contact-privacy{font-size:.875rem;color:var(--muted);line-height:1.7;margin:26px 0 24px}
.contact-privacy a{color:var(--petrol);text-decoration:underline;text-underline-offset:3px}
.contact-submit{cursor:pointer;min-height:50px}
.contact-submit:disabled{cursor:wait;opacity:.65}
.contact-status{padding:16px 18px;border:1px solid var(--line);border-left-width:3px;border-radius:3px;line-height:1.7;margin-bottom:24px;font-size:.9375rem}
.contact-status.is-success{background:#EFF7F3;border-color:#4D8067;color:#244F3D}
.contact-status.is-error{background:#FFF5F3;border-color:#B66759;color:#81382E}
.contact-status:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.contact-honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
[hidden]{display:none!important}
@media(max-width:1000px){.contact-layout{gap:36px;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}.contact-form-card{padding:26px}}
@media(max-width:760px){.contact-layout{grid-template-columns:1fr;gap:30px;padding-top:34px}.contact-aside h2 br{display:none}.contact-direct{margin-top:24px}.contact-aside .contact-locations{margin-bottom:0}.contact-form-card{padding:25px}.contact-intro{padding-bottom:30px}}
@media(max-width:460px){.contact-fields{grid-template-columns:1fr;gap:20px}.contact-form-card{padding:22px 18px}.contact-submit{width:100%}.contact-layout{padding-left:5%;padding-right:5%}}
