/* Contact page panels. Form controls retain the shared #bz-quote-modal source. */
.bz-contact-page{background:#fff}
.bz-contact-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:64px;padding-block:60px}
.bz-contact-copy{position:relative;isolation:isolate;overflow:hidden;min-width:0;padding:44px;border:1px solid #dfe5eb;border-radius:18px;background:#eff4f8;box-shadow:0 12px 36px rgb(32 52 70 / 5%)}
.bz-contact-background{position:absolute;inset:0;z-index:-1;pointer-events:none}
.bz-contact-background img{display:block;width:100%;height:100%;object-fit:cover;object-position:60% center;opacity:.17}
.bz-contact-background:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#eff4f8 0%,rgb(239 244 248 / 95%) 22%,rgb(239 244 248 / 38%) 66%,rgb(239 244 248 / 12%) 100%)}
.bz-contact-copy>h2{font-size:clamp(22px,1.6vw,30px);font-weight:600;line-height:1.3;letter-spacing:-.8px;margin:0 0 18px;padding-left:20px;border-left:3px solid var(--theme-palette-color-1);color:#222}
.bz-contact-intro{font-size:15px;line-height:1.85;color:#4f5c68;max-width:480px}
.bz-contact-intro p{margin:0 0 16px}
.bz-contact-intro>:last-child{margin-bottom:0}
.bz-contact-information{margin-top:26px}
.bz-contact-information h3{font-size:19px;font-weight:600;line-height:1.5;margin:0;padding-left:16px;border-left:3px solid var(--theme-palette-color-1);color:#222}
.bz-contact-details{margin:0;font-style:normal}
.bz-contact-detail{display:flex;align-items:flex-start;gap:18px;padding-block:12px;border-top:1px solid rgb(104 127 146 / 20%)}
.bz-contact-detail svg{width:24px;height:24px;flex-shrink:0;margin-top:3px;fill:none;stroke:var(--theme-palette-color-1);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.bz-contact-detail>div{min-width:0;flex:1}
.bz-contact-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,215px),1fr));gap:6px 20px}
.bz-contact-detail span{display:block;font-size:12px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--theme-palette-color-1);margin-bottom:4px}
.bz-contact-detail :is(a,p){display:block;font-size:17px;font-weight:500;line-height:1.75;color:#344656;overflow-wrap:anywhere;margin:0}
.bz-contact-detail a:hover{color:var(--theme-palette-color-1)}
.bz-contact-information-heading{height:28px;display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}
.bz-contact-social{display:flex;flex-shrink:0;gap:7px}
.bz-contact-social a{--bz-social-cutout:#fff;display:grid;place-items:center;width:34px;height:34px;border:1px solid #d2dce4;border-radius:50%;background:#fff;color:#344656;transition:color .2s ease,background-color .2s ease,border-color .2s ease}
.bz-contact-social a:is(:hover,:focus-visible){--bz-social-cutout:var(--theme-palette-color-1);background:var(--theme-palette-color-1);border-color:var(--theme-palette-color-1);color:#fff}
.bz-contact-social a:focus-visible{outline:2px solid var(--theme-palette-color-1);outline-offset:4px}
.bz-contact-social svg{width:18px;height:18px}
.bz-contact-form-panel{min-width:0;border:1px solid #dfe5eb;border-top:4px solid var(--theme-palette-color-1);border-radius:18px;background:#fff;padding:44px;scroll-margin-top:110px;box-shadow:0 12px 36px rgb(32 52 70 / 5%)}
.bz-contact-form-panel>h2{font-size:34px;font-weight:600;line-height:1.3;letter-spacing:-.8px;color:#222;margin:0 0 18px}
.bz-contact-form-panel>h2:after{content:"";display:block;width:54px;height:3px;margin-top:20px;background:var(--theme-palette-color-1)}
.bz-contact-form-text{font-size:14px;color:#65707d;line-height:1.8;margin:0 0 28px}
@media(max-width:999px){
 .bz-contact-layout{gap:28px;padding-block:44px}
 .bz-contact-copy,.bz-contact-form-panel{padding:28px}
 .bz-contact-copy>h2{font-size:28px;padding-left:16px}
 .bz-contact-form-panel>h2{font-size:28px}
 .bz-contact-detail{gap:12px}
 .bz-contact-detail :is(a,p){font-size:16px}
}
@media(max-width:689px){
 .bz-contact-layout{grid-template-columns:minmax(0,1fr);gap:26px;padding-block:36px}
 .bz-contact-copy,.bz-contact-form-panel{padding:28px 22px;border-radius:14px}
 .bz-contact-copy>h2{font-size:26px;letter-spacing:-.6px}
 .bz-contact-intro{font-size:14px}
 .bz-contact-information{margin-top:24px}
 .bz-contact-information h3{font-size:16px;padding-left:10px}
 .bz-contact-social{gap:5px}
 .bz-contact-social a{width:30px;height:30px}
 .bz-contact-detail{padding-block:14px}
 .bz-contact-form-panel{scroll-margin-top:96px}
 .bz-contact-form-panel>h2{font-size:28px}
}

@media(prefers-reduced-motion:reduce){.bz-contact-social a{transition:none}}
