.contact-hero{padding-block:35px 85px}.contact-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:75px;align-items:start}.contact-intro{padding-top:20px}.contact-intro .pill{font-size:10px;letter-spacing:1px;margin-bottom:25px}.contact-intro h1{font-size:49px;line-height:1.13;letter-spacing:-1.8px;margin-bottom:24px}.contact-intro>p:not(.eyebrow){font-size:17px;color:var(--muted);line-height:1.85;max-width:425px}.contact-steps{list-style:none;margin:32px 0;padding:0;display:flex;flex-direction:column;gap:25px}.contact-steps li{display:flex;gap:13px;align-items:start}.contact-steps li>span{display:grid;place-items:center;border:1px solid #ded0ef;color:#ac8dc3;width:27px;height:27px;border-radius:50%;flex-shrink:0;font-size:11px}.contact-steps h2{font-size:16px;line-height:1.5;font-weight:600;letter-spacing:-.2px;margin:0 0 7px}.contact-steps p{font-size:14px;color:#8a7699;line-height:1.8;margin:0;max-width:360px}.contact-intro>.text-link{font-size:14px}.contact-form-card{padding:36px;background:#f8f5fc;border:1px solid #e7dcf2;border-radius:20px;box-shadow:0 18px 40px #39234d05}.contact-form-card>h2{font-size:28px;line-height:1.2;letter-spacing:-.8px;margin-bottom:17px}.contact-form-card>p:not(.eyebrow){font-size:15px;line-height:1.8;color:var(--muted);margin-bottom:24px}.required-note{font-size:12px;color:#8c799c;margin-bottom:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:21px 17px}.field{display:flex;flex-direction:column;gap:9px;min-width:0}.field.full{grid-column:1/-1}.field label{font-size:13px;color:#675374;font-weight:550;line-height:1.5}.field label>span{font-size:11px;font-weight:400;color:#9b84aa}.field input,.field select,.field textarea{font:inherit;font-size:14px;line-height:1.5;border:1px solid #ded4e9;border-radius:8px;background:#fff;color:#33283f;padding:12px;width:100%;transition:border-color .18s,box-shadow .18s}.field textarea{resize:vertical;min-height:130px;max-height:450px}.field input::placeholder,.field textarea::placeholder{color:#a290ae;opacity:1}.field input:focus,.field textarea:focus,.field select:focus{outline:2px solid #b89ae8;outline-offset:2px;border-color:#9f78d6;box-shadow:0 0 0 4px #7144e808}.field input:user-invalid,.field textarea:user-invalid{border-color:#c37b80}.form-submit{display:flex;align-items:center;gap:17px;margin-top:25px}.form-submit>span{font-size:11px;line-height:1.8;color:#9a83a8;max-width:180px}.form-submit button:disabled{cursor:wait;opacity:.65;transform:none}.form-notice,#contact-status:not(:empty){border:1px solid #e4d7ef;background:#f0e8f8;border-radius:8px;padding:13px 15px;font-size:13px;line-height:1.8;margin:20px 0 0;color:#78558f}#contact-status.error{background:#fff5f5;border-color:#e6c8ce;color:#964e5b}#contact-status.success{background:#edf8f0;border-color:#cbe3d2;color:#376a48}#contact-status:empty{margin:0}.contact-form-card{animation:enter-up 420ms var(--motion-ease) both}
@media(max-width:1100px){.contact-layout{gap:40px;grid-template-columns:1fr 1.2fr}.contact-intro h1{font-size:43px}.contact-form-card{padding:29px}.form-grid{gap:19px 13px}.field input,.field select,.field textarea{font-size:14px;padding:11px}.form-submit{gap:13px}.form-submit button{font-size:14px;padding-inline:17px}}
@media(max-width:800px){.contact-layout{grid-template-columns:1fr;gap:35px}.contact-intro{padding:0}.contact-intro h1{font-size:44px}.contact-intro h1 br:nth-child(2){display:none}.contact-intro>p:not(.eyebrow){max-width:600px}.contact-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.contact-steps li{display:block}.contact-steps li>span{margin-bottom:13px}.contact-steps h2{font-size:15px}.contact-steps p{font-size:13px}.contact-form-card{max-width:650px;width:100%;padding:34px}.form-submit>span{max-width:none}.field input,.field select,.field textarea{font-size:16px}.field label{font-size:14px}.contact-hero{padding-bottom:55px}}
@media(max-width:580px){.contact-hero{padding-top:25px}.contact-intro .pill{font-size:10px;letter-spacing:.6px}.contact-intro h1{font-size:36px;letter-spacing:-1.3px}.contact-intro>p:not(.eyebrow){font-size:15px}.contact-steps{display:flex;gap:21px;margin:27px 0}.contact-steps li{display:flex;gap:12px}.contact-steps li>span{margin:0}.contact-steps h2{font-size:15px}.contact-steps p{font-size:14px}.contact-form-card{padding:26px 21px;border-radius:15px}.contact-form-card>h2{font-size:27px}.contact-form-card>h2 br{display:none}.contact-form-card>p:not(.eyebrow){font-size:14px}.form-grid{grid-template-columns:1fr;gap:20px}.field.full{grid-column:auto}.field label{font-size:14px}.field label>span{font-size:12px}.field input,.field select,.field textarea{padding:12px;font-size:16px}.form-submit{flex-direction:column;align-items:stretch;gap:12px}.form-submit button{font-size:15px;min-height:49px}.form-submit>span{text-align:center;font-size:12px}.required-note{font-size:12px}.contact-intro>.text-link{font-size:14px}}
@media(prefers-reduced-motion:reduce){.contact-form-card{animation:none}}
#email-handoff{margin-top:21px}#email-handoff .button{width:100%}.direct-contact{font-size:12px;color:#94819f;line-height:1.8;margin:22px 0 0}.direct-contact a{color:var(--purple);text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.contact-consent{margin-top:24px}.contact-consent label{display:flex;align-items:flex-start;gap:11px;font-size:12px;line-height:1.7;color:#554b64;cursor:pointer}.contact-consent input{flex:0 0 18px;width:18px;height:18px;margin:3px 0 0;accent-color:#7144e8;cursor:pointer}.contact-consent input:focus-visible{outline:2px solid #7144e8;outline-offset:3px}.contact-consent p{font-size:11px;line-height:1.7;color:#655c72;margin:10px 0 0 29px}.contact-consent a{color:#6233ce;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
@media(max-width:580px){.direct-contact{font-size:12px}.form-submit>span{font-size:12px;line-height:1.8}}

/* Compact mobile headings; body and form text retain their existing sizes. */
@media(max-width:800px){
 .contact-form-card{order:-1}
}
@media(max-width:580px){
 .contact-intro h1{font-size:30px;line-height:1.16;letter-spacing:-1px}
 .contact-form-card>h2{font-size:22px;line-height:1.25;letter-spacing:-.6px}
 .contact-form-card>p:not(.eyebrow),.field label{font-size:13px}
 .form-submit button{font-size:14px}
 .form-grid{gap:12px}
 .field{gap:6px}
 .field input,.field select,.field textarea{padding:7px 10px;font-size:14px;line-height:22px}
 .field input,.field select{height:38px;min-height:38px}
 .field textarea{height:88px;min-height:88px}
}
