.contact-intro{padding:48px}
.contact-intro-grid{gap:48px;align-items:center}
.contact-intro-copy{padding-block:8px;min-width:0}
.contact-intro-copy>span{padding:9px 16px;line-height:1.7}
.contact-intro-copy h1{margin-top:24px;font-size:clamp(20px,2vw,25px);line-height:1.7;font-weight:700;letter-spacing:-.4px}
.contact-intro-copy h1>span{margin-top:6px}
@media(min-width:640px){.contact-intro-copy h1{white-space:nowrap}}
.contact-intro-copy>p{margin-top:24px;font-size:16px;line-height:2.1;max-width:62ch}
.contact-intro-actions{margin-top:32px;gap:16px;justify-content:flex-start;align-items:center}
.contact-intro-actions>a{min-height:52px;padding:13px 24px;gap:10px;line-height:1.6}
.contact-intro-grid>div:last-child{gap:20px}
.contact-intro-grid>div:last-child>div{padding:24px}
.contact-layout{align-items:start;margin-top:48px}
@media(max-width:1023px){.contact-intro{padding:36px}.contact-intro-grid{gap:36px}.contact-intro-copy h1{font-size:25px}.contact-intro-copy>p{max-width:68ch}}
@media(max-width:639px){.contact-intro{padding:28px 20px}.contact-intro-grid{gap:32px}.contact-intro-copy{padding-block:0}.contact-intro-copy h1{font-size:20px;line-height:1.7;margin-top:20px}.contact-intro-copy>p{margin-top:20px;font-size:15px;line-height:2}.contact-intro-actions{margin-top:26px;gap:12px}.contact-intro-actions>a{padding:12px 18px;min-height:48px}.contact-intro-grid>div:last-child{gap:16px}.contact-intro-grid>div:last-child>div{padding:20px}.contact-layout{margin-top:32px}}
#contact-form{background:#fff;border:1px solid #e5ebf0;border-radius:24px;box-shadow:0 8px 28px -22px #26384a30;overflow:hidden}
.contact-form-heading{padding:32px 32px 0;background:#fff;color:#26384a}
.contact-form-heading>span{font-size:13px;color:#65839a;font-weight:500}
.contact-form-heading h2{margin:8px 0;font-size:28px;font-weight:600;line-height:1.5}
.contact-form-heading p{margin:0;color:#758493;font-size:14px;line-height:1.9}
.contact-form-body{padding:28px 32px 32px}
#contactForm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px}
.contact-field{display:block;min-width:0}
.contact-field>span:first-child{display:block;margin-bottom:9px;font-size:14px;font-weight:500;color:#3f5162}
.contact-field small{font-size:12px;font-weight:400;color:#7c8895;margin-inline-start:6px}
.contact-field input,.contact-field select,.contact-field textarea{display:block;width:100%;border:1px solid #dfe6ed;border-radius:10px;background:#fafcfe;color:#26384a;font-family:inherit;font-size:15px;font-weight:400;padding:12px 14px;min-height:48px;outline:none;transition:border-color .15s,box-shadow .15s}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:#94a0ad;font-size:14px}
.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:#5b8fb9;box-shadow:0 0 0 3px #5b8fb912;background:white}
.contact-field textarea{min-height:150px;resize:vertical;line-height:1.9}
.contact-field-wide,.contact-form-footer{grid-column:1/-1}
.contact-form-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:4px}
.contact-form-footer p{font-size:12px;line-height:1.8;color:#7c8895;margin:0;max-width:240px}
#contactSubmitBtn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;border:1px solid #d5e5ef;border-radius:10px;background:#edf5fb;color:#285576;padding:12px 22px;font-size:14px;font-weight:600;font-family:inherit;box-shadow:none;cursor:pointer;transition:background .15s}
#contactSubmitBtn:hover{background:#dfedf7}#contactSubmitBtn:focus-visible{outline:3px solid #5b8fb94d;outline-offset:3px}#contactSubmitBtn:disabled{cursor:wait}
.contact-layout>aside>div{background:#fff;box-shadow:none;border-color:#e9edf2}
.contact-layout>aside h2{font-size:21px;font-weight:600}
@media(min-width:1024px){.contact-layout{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:36px}}
@media(max-width:1023px){.contact-layout>aside{order:2}#contact-form{order:1}}
@media(max-width:639px){.contact-form-heading{padding:24px 20px 0}.contact-form-heading h2{font-size:25px}.contact-form-body{padding:24px 20px}#contactForm{grid-template-columns:1fr;gap:21px}.contact-form-footer{flex-direction:column;align-items:stretch;gap:14px}.contact-form-footer p{max-width:none}#contactSubmitBtn{width:100%}}
@media(prefers-reduced-motion:reduce){.contact-field input,.contact-field select,.contact-field textarea,#contactSubmitBtn{transition:none}}
