.vx-contact-banner { margin-block: 0; }
.vx-contact-banner img { width: 100%; height: auto; aspect-ratio: 1440/510; object-fit: cover; display: block; }
.vx-contact-design { margin-block: 0; padding: 100px max(44px,calc((100% - 1260px)/2)); background: radial-gradient(ellipse 29% 68% at 22% 15%,#bce5fb 0%,#d1edfc 38%,transparent 78%),radial-gradient(ellipse 32% 54% at 88% 94%,#bce5fb 0%,#d1edfc 38%,transparent 80%),#fafafa; }
.vx-contact-design > .vx-container { display: grid; grid-template-columns: .72fr 1.28fr; gap: 100px; max-width: none; padding: 0; align-items: start; }
.vx-contact-heading h1 { font-size: 40px; font-weight: 600; letter-spacing: -.025em; line-height: 1.3; margin: 0 0 12px; }
.vx-contact-heading .vx-subheading { font-size: 15px; line-height: 1.6; margin: 0; }
.vx-contact-design .vx-contact-info-grid { display: grid; grid-template-columns: 1fr; gap: 28px; margin: 36px 0 0; }
.vx-contact-design .vx-contact-info-card { position: relative; display: grid; grid-template-columns: 56px 1fr; column-gap: 20px; text-align: left; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; }
.vx-contact-design .vx-contact-info-icon { grid-column: 1; grid-row: 1 / span 3; width: 56px; height: 56px; display: grid; place-items: center; background: #0656db; color: white; border-radius: 8px; margin: 0; }
.vx-contact-design .vx-contact-info-title { grid-column: 2; font-size: 14px; font-weight: 500; margin: 0 0 6px; color: #667481; }
.vx-contact-design .vx-contact-info-val { grid-column: 2; font-size: 16px; color: #273440; line-height: 1.5; margin: 0; overflow-wrap: anywhere; }
.vx-contact-design .vx-contact-info-card > span { grid-column: 2; font-size: 12px; line-height: 1.5; margin-top: 6px; }
.vx-contact-design .vx-form-card { max-width: none; margin: 0; padding: 44px; border-radius: 6px; border: 0; background: #eaf3ff; box-shadow: none; }
.vx-contact-design .vx-form-title { font-size: 40px; font-weight: 600; letter-spacing: -.025em; margin: 0 0 28px; }
.vx-contact-design .vx-form-grid { gap: 18px 20px; }
.vx-contact-design .vx-form-label { font-size: 13px; font-weight: 500; color: #455361; margin-bottom: 6px; }
.vx-contact-design .vx-form-input,.vx-contact-design .vx-form-select,.vx-contact-design .vx-form-textarea { background: white; border: 1px solid #c4ceda; border-radius: 3px; font-size: 14px; padding: 10px 12px; min-height: 42px; box-shadow: none; }
.vx-contact-design .vx-form-textarea { min-height: 130px; }
.vx-contact-design .vx-form-checkbox-label { font-size: 12px; line-height: 1.5; color: #526170; }
.vx-contact-design .vx-form-col-full:has(.vx-form-checkbox-wrap) { order: 1; }
.vx-contact-design .vx-form-col-full:has(.vx-submit-btn) { order: 2; margin-top: 0 !important; }
.vx-contact-design .vx-submit-btn { width: auto; border-radius: 4px; padding: 12px 24px; font-size: 14px; box-shadow: none; }
.vx-contact-design a:focus-visible,.vx-contact-design button:focus-visible { outline: 3px solid #0755d9; outline-offset: 4px; }
body:has(.vx-contact-design) .vx-footer { background: linear-gradient(#e3efff,#fff); border: 0; }
body:has(.vx-contact-design) .vx-footer-title,body:has(.vx-contact-design) .vx-footer-link,body:has(.vx-contact-design) .vx-footer-brand p,body:has(.vx-contact-design) .vx-footer-bottom { color: #475461; }
body:has(.vx-contact-design) .vx-footer-bottom { border-color: #d5e1ef; }
body:has(.vx-contact-design) .vx-footer-brand > a img { filter: none !important; }
body:has(.vx-contact-design) .wp-site-blocks > footer { margin-block-start: 0; }
@media(max-width:1100px) { .vx-contact-design > .vx-container { gap: 40px; grid-template-columns: .85fr 1.15fr; } .vx-contact-design .vx-form-card { padding: 28px; } }
@media(max-width:760px) { .vx-contact-design { padding: 44px 20px; } .vx-contact-design > .vx-container { grid-template-columns: 1fr; gap: 40px; } .vx-contact-heading h1,.vx-contact-design .vx-form-title { font-size: 30px; } .vx-contact-design .vx-form-card { padding: 24px 20px; } .vx-contact-design .vx-form-grid { grid-template-columns: 1fr; } .vx-contact-design .vx-form-col-full { grid-column: 1; } }
