/* Contact page shares the masthead, typography and palette with Apex's other pages. */
body{background:#fff;font-family:Arial,sans-serif;-webkit-font-smoothing:antialiased}
button,input,textarea{font:inherit}
.contact-page{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,5vw,80px);max-width:1440px;margin:0 auto;padding:128px calc(var(--film-frame) + 20px) 80px;align-items:start}
.contact-intro{position:sticky;top:142px;padding-top:28px}
.contact-eyebrow{font-size:.8rem;letter-spacing:.07em;text-transform:uppercase;margin:0 0 24px;font-weight:400;color:#3f494b}
.contact-intro h1{font-size:clamp(2.5rem,4vw,4.6rem);line-height:1.08;letter-spacing:-.045em;font-weight:400}
.contact-intro h1 em{color:#111}
.contact-intro__lead{font-size:1.0625rem;line-height:1.65;max-width:36ch;margin-top:26px}
.contact-form{padding:clamp(24px,3vw,44px);border:0;border-radius:var(--film-radius);box-shadow:none;background:#f5f4f0;min-width:0}
.contact-form__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}
.field{display:grid;gap:8px;min-width:0}.field--full{grid-column:1/-1}
.field label,.contact-services__legend{font-size:.875rem;font-weight:400;letter-spacing:0;text-transform:none}
.field input,.field textarea{width:100%;min-height:46px;padding:11px 13px;border:1px solid #b4b9ba;border-radius:6px;background:#fff;color:#111;outline:none;transition:border-color .2s,box-shadow .2s}
.field textarea{min-height:132px;resize:vertical}.field input:focus,.field textarea:focus{border-color:#60858e;box-shadow:0 0 0 3px #baccd066}
.contact-services{border:0;padding:0;margin:30px 0 0;min-width:0}.contact-services__legend{font-size:1.125rem;margin-bottom:8px}
.contact-services__help,.contact-prefill,.contact-form__note{font-size:.875rem;line-height:1.5;color:#3f494b}.contact-services__help{margin:0 0 16px}.contact-prefill{margin:0 0 20px;padding:10px 12px;background:#baccd0;border-radius:6px}.contact-prefill:empty{display:none}
.contact-services__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.contact-services__group{min-width:0;padding:12px 14px;margin:0;background:#e9efef;border:1px solid #c7cfd0;border-radius:8px}.contact-services__group:nth-child(2){background:#e0e4e4}.contact-services__group legend{font-size:.75rem;font-weight:400;letter-spacing:.06em;text-transform:uppercase;padding:0 5px}
.choice{display:flex;gap:10px;align-items:center;min-height:38px;padding:7px 0;font-size:.875rem;line-height:1.4;cursor:pointer}.choice input{width:17px;height:17px;flex:0 0 17px;margin:0;accent-color:#263b40}.choice input:focus-visible{outline:2px solid #60858e;outline-offset:4px}
.contact-form__actions{display:flex;gap:20px;justify-content:space-between;align-items:center;margin-top:28px}.contact-form__note{max-width:25ch;margin:0}.contact-submit.apex-button{--button-height:44px;--button-padding:10px 24px;background:#baccd0!important;border-color:#baccd0!important}.contact-submit.apex-button:hover{background:#aebfc3!important;border-color:#aebfc3!important}
.contact-footer{padding:28px calc(var(--film-frame) + 20px);background:#111;color:#fff;margin:0}.contact-footer p,.contact-footer a{color:#fff;font-size:.875rem}.contact-footer p{margin-right:auto}
@media(max-width:1000px){.contact-page{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:28px}.contact-services__grid{grid-template-columns:1fr}.contact-form__actions{flex-direction:column;align-items:flex-start}}
@media(max-width:760px){.contact-page{grid-template-columns:1fr;padding:108px 24px 48px;gap:32px}.contact-intro{position:static;padding:0}.contact-intro h1{font-size:clamp(2.5rem,9vw,3.5rem)}.contact-intro__lead{max-width:46ch;margin-top:20px}.contact-form{padding:24px 20px}.contact-services__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-footer{padding-inline:24px}}
@media(max-width:520px){.contact-form__fields,.contact-services__grid{grid-template-columns:1fr}.contact-page{padding-inline:var(--film-frame)}.contact-intro{padding-inline:12px}.contact-form__actions{align-items:stretch}.contact-form__note{max-width:none}.contact-footer{flex-wrap:wrap;gap:14px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
