.contact-page{overflow:hidden}
.contact-page .wp-block-columns{margin-bottom:0}
.contact-page .wp-block-image{margin:0}
.contact-hero{position:relative;min-height:590px;display:flex;align-items:center;background:#f4f1ed;overflow:hidden}
.contact-hero__media{position:absolute;inset:0;margin:0!important}
.contact-hero__media img{width:100%;height:100%;object-fit:cover;object-position:center}
.contact-hero__inner{position:relative;z-index:1;padding-block:70px}
.contact-hero__copy{width:min(54%,790px)}
.contact-hero h1{max-width:790px;margin:0;color:var(--ink);font-size:3.72rem;line-height:1.16;letter-spacing:-.04em}
.contact-hero__lead{max-width:760px;margin:25px 0 18px;color:#2f4661;font-weight:600;line-height:1.72}
.contact-hero__phone{display:flex;align-items:center;gap:17px;width:max-content;margin:16px 0 24px;color:#123d78;font-size:3rem;font-weight:700;line-height:1.1}
.contact-hero__phone .round-icon{flex:none}
.contact-hero__actions,.contact-final__actions{display:flex;flex-wrap:wrap;gap:18px}
.contact-hero__actions .button{min-width:242px}
.contact-main{padding:78px 0 84px}
.contact-intro{max-width:1140px;margin-bottom:38px}
.contact-intro h2,.contact-form-card h2,.contact-area h2,.contact-prep h2,.contact-services h2,.contact-faq h2{margin:0 0 16px;color:var(--ink);font-size:2.35rem;line-height:1.18;letter-spacing:-.025em}
.contact-intro p{margin:0;line-height:1.78}
.contact-main__grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(540px,1.08fr);gap:52px;align-items:start}
.contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.contact-card{min-width:0;padding:23px;background:var(--light);border:1px solid #e3e8ed;border-radius:7px;box-shadow:0 3px 10px rgba(5,35,72,.06)}
.contact-card__top{display:flex;align-items:center;gap:15px;margin-bottom:13px}
.contact-card img{width:54px;height:54px;object-fit:cover;border-radius:50%}
.contact-card h3{margin:0;color:var(--ink);font-size:1.08rem}
.contact-card__value{display:block;min-height:48px;color:var(--blue);font-size:1rem;font-weight:700;line-height:1.5;overflow-wrap:anywhere}
.contact-card address{font-style:normal}
.contact-card p{margin:9px 0 0;color:#4f6277;font-size:.82rem;line-height:1.65}
.contact-card a:hover,.contact-card a:focus{text-decoration:underline}
.contact-photo-support{display:grid;grid-template-columns:190px 1fr;gap:22px;align-items:center;margin-top:20px;padding:18px;border:1px solid var(--line);border-radius:7px;background:#fff}
.contact-photo-support img{width:190px;height:134px;object-fit:cover;border-radius:5px}
.contact-photo-support h3{margin:0 0 7px;color:var(--ink);font-size:1.08rem}
.contact-photo-support p{margin:0;color:#4f6277;font-size:.82rem;line-height:1.62}
.contact-form-card{padding:34px 38px 38px;border-radius:8px;background:#f4f6f8;box-shadow:var(--shadow)}
.contact-form-card>p{margin:0 0 25px;color:#4f6277;line-height:1.7}
.contact-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.form-field{display:flex;min-width:0;flex-direction:column;gap:7px}
.form-field--wide{grid-column:1/-1}
.form-field label{color:var(--ink);font-size:.8rem;font-weight:700}
.form-field input,.form-field select,.form-field textarea{width:100%;min-height:50px;padding:11px 13px;border:1px solid #c5d0dc;border-radius:4px;background:#fff;color:#162b43}
.form-field textarea{min-height:132px;resize:vertical}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--blue);outline:3px solid rgba(7,103,237,.18);outline-offset:1px}
.form-upload input{padding:9px;background:#fff}
.form-upload small{color:#607388;font-size:.7rem;line-height:1.55}
.form-consent{display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:start}
.form-consent input{width:18px;height:18px;min-height:0;margin:2px 0 0;accent-color:var(--blue)}
.form-consent label{font-weight:500;line-height:1.55}
.form-consent a{color:var(--blue);text-decoration:underline}
.contact-form__trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.contact-form__submit{margin-top:22px;min-width:230px;border:0;cursor:pointer}
.contact-form__submit:disabled{cursor:wait;opacity:.68}
.contact-form__status{display:none;margin:18px 0 0;padding:13px 15px;border-radius:4px;font-size:.82rem;font-weight:600}
.contact-form__status.is-success,.contact-form__status.is-error{display:block}
.contact-form__status.is-success{background:#e9f8ef;color:#146331;border:1px solid #add9bd}
.contact-form__status.is-error{background:#fff0f0;color:#8a1d1d;border:1px solid #e8b8b8}
.contact-phone-cta,.contact-final{position:relative;background:var(--navy);color:#fff;overflow:hidden}
.contact-phone-cta__bg,.contact-final__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.88}
.contact-phone-cta__inner{position:relative;display:grid;grid-template-columns:1.15fr .65fr auto;gap:42px;align-items:center;min-height:225px;padding-block:40px}
.contact-phone-cta h2,.contact-final h2{margin:0 0 10px;color:#fff;font-size:2.35rem;line-height:1.14}
.contact-phone-cta p,.contact-final p{margin:0;font-weight:600;line-height:1.65}
.contact-phone-cta__phone,.contact-final__phone{display:flex;align-items:center;gap:15px;color:#fff;font-size:2.65rem;font-weight:700;white-space:nowrap}
.contact-phone-cta__phone svg,.contact-final__phone svg{width:46px;height:46px;stroke-width:2.4}
.contact-phone-cta .button{min-width:230px}
.contact-area{padding:78px 0;background:#f5f7f9}
.contact-area__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:58px;align-items:center}
.contact-area__map img{width:100%;border:1px solid var(--line);border-radius:7px;box-shadow:var(--shadow)}
.contact-area__copy>p{margin:0 0 23px;line-height:1.78}
.contact-locations,.contact-services__grid{display:grid;grid-template-columns:1fr 1fr;gap:11px 24px;margin:0;padding:0;list-style:none}
.contact-locations li,.contact-services__grid li{position:relative;padding:11px 12px 11px 39px;border-radius:4px;background:#fff;color:var(--ink);font-size:.85rem;font-weight:600}
.contact-locations li::before,.contact-services__grid li::before{content:"✓";position:absolute;left:14px;top:11px;color:var(--blue);font-weight:700}
.contact-prep{padding:76px 0}
.contact-prep__heading,.contact-services__heading,.contact-faq__heading{text-align:center;max-width:880px;margin:0 auto 34px}
.contact-prep__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.contact-prep__item{display:grid;grid-template-columns:64px 1fr;gap:18px;align-items:start;padding:24px;border:1px solid var(--line);border-radius:7px;background:#fff}
.contact-prep__item img{width:64px;height:64px;border-radius:50%}
.contact-prep__item h3{margin:2px 0 8px;color:var(--ink);font-size:1.05rem;line-height:1.3}
.contact-prep__item p{margin:0;color:#4f6277;font-size:.82rem;line-height:1.66}
.contact-services{padding:72px 0;background:#f5f7f9}
.contact-services__heading p{margin:0;line-height:1.75}
.contact-services__grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}
.contact-services__grid li{min-height:64px;display:flex;align-items:center;padding:14px 16px 14px 45px;box-shadow:0 2px 8px rgba(5,35,72,.05)}
.contact-services__grid li::before{top:50%;transform:translateY(-50%);left:18px}
.contact-services__actions{display:flex;justify-content:center;margin-top:28px}
.contact-faq{padding:76px 0}
.contact-faq__list{max-width:1100px;margin:0 auto}
.contact-faq details{border:1px solid #cbd4dd;border-radius:5px;background:#fff;margin-bottom:11px;overflow:hidden}
.contact-faq summary{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:58px;padding:15px 54px 15px 19px;color:var(--ink);font-weight:700;cursor:pointer;list-style:none}
.contact-faq summary::-webkit-details-marker{display:none}
.contact-faq summary::after{content:"+";position:absolute;right:20px;color:var(--blue);font-size:1.5rem;font-weight:400;line-height:1}
.contact-faq details[open] summary::after{transform:rotate(45deg)}
.contact-faq summary:focus{outline:3px solid rgba(7,103,237,.22);outline-offset:-3px}
.contact-faq details p{margin:0;padding:0 54px 19px 19px;color:#55697e;line-height:1.7}
.contact-final__inner{position:relative;display:grid;grid-template-columns:1.25fr .75fr;gap:50px;align-items:center;min-height:285px;padding-block:48px}
.contact-final__phone{margin-bottom:18px}
.contact-final__actions .button--outline{background:transparent;color:#fff;border-color:#fff}
.contact-final__actions .button{min-width:205px}
@media (max-width:1650px){
  .contact-hero{min-height:540px}.contact-hero h1{font-size:3.15rem}.contact-hero__phone{font-size:2.65rem}.contact-main__grid{gap:34px}.contact-phone-cta__inner{gap:28px}.contact-phone-cta__phone{font-size:2.25rem}
}
@media (max-width:1200px){
  .contact-hero{min-height:500px}.contact-hero h1{font-size:2.65rem}.contact-hero__copy{width:55%}.contact-hero__lead{font-size:.86rem}.contact-hero__phone{font-size:2.2rem}.contact-main__grid{grid-template-columns:1fr}.contact-cards{grid-template-columns:repeat(4,1fr)}.contact-card__top{align-items:flex-start}.contact-photo-support{grid-template-columns:220px 1fr}.contact-phone-cta__inner{grid-template-columns:1fr auto;min-height:250px}.contact-phone-cta__copy{grid-column:1/-1}.contact-phone-cta__phone{justify-self:start}.contact-area__grid{gap:38px}.contact-prep__item{grid-template-columns:52px 1fr;padding:20px}.contact-prep__item img{width:52px;height:52px}.contact-services__grid{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  .contact-hero{display:flex;flex-direction:column;min-height:0;background:#f7f5f2}.contact-hero__inner{order:1;padding:45px 0 34px}.contact-hero__copy{width:100%}.contact-hero h1{font-size:2.7rem}.contact-hero__lead{font-size:.95rem}.contact-hero__phone{font-size:2.4rem}.contact-hero__media{position:relative;order:2;width:100%;height:420px;overflow:hidden}.contact-hero__media img{position:absolute;width:1160px;max-width:none;height:420px;left:50%;transform:translateX(-64%);object-fit:cover}.contact-main,.contact-area,.contact-prep,.contact-services,.contact-faq{padding-block:58px}.contact-main__grid{gap:30px}.contact-cards{grid-template-columns:1fr 1fr}.contact-phone-cta__inner{grid-template-columns:1fr;text-align:center;padding-block:34px}.contact-phone-cta__phone{justify-self:center}.contact-phone-cta .button{justify-self:center}.contact-area__grid{grid-template-columns:1fr}.contact-area__copy{grid-row:1}.contact-area__map{grid-row:2}.contact-prep__grid{grid-template-columns:1fr}.contact-prep__item{grid-template-columns:64px 1fr}.contact-prep__item img{width:64px;height:64px}.contact-final__inner{grid-template-columns:1fr;text-align:center}.contact-final__phone,.contact-final__actions{justify-content:center}
}
@media (max-width:600px){
  .contact-hero__inner{padding:38px 0 28px}.contact-hero h1{font-size:2.15rem}.contact-hero__lead{font-size:.88rem}.contact-hero__phone{font-size:2rem;gap:12px}.contact-hero__phone .round-icon{width:46px;height:46px}.contact-hero__actions{display:grid;grid-template-columns:1fr 1fr;gap:11px}.contact-hero__actions .button{min-width:0;width:100%;padding-inline:12px}.contact-hero__media{height:285px}.contact-hero__media img{width:800px;height:285px;transform:translateX(-64%)}.contact-intro h2,.contact-form-card h2,.contact-area h2,.contact-prep h2,.contact-services h2,.contact-faq h2{font-size:1.8rem}.contact-intro p{font-size:.9rem}.contact-cards{grid-template-columns:1fr}.contact-card{padding:19px}.contact-card__value{min-height:0}.contact-photo-support{grid-template-columns:1fr;padding:14px}.contact-photo-support img{width:100%;height:auto;aspect-ratio:3/2}.contact-form-card{margin-inline:-6px;padding:25px 18px 28px}.contact-form__grid{grid-template-columns:1fr;gap:16px}.form-field--wide{grid-column:auto}.form-field input,.form-field select,.form-field textarea{font-size:16px}.contact-form__submit{width:100%}.contact-phone-cta h2,.contact-final h2{font-size:1.8rem}.contact-phone-cta__phone,.contact-final__phone{font-size:2rem}.contact-phone-cta .button{width:100%}.contact-locations,.contact-services__grid{grid-template-columns:1fr}.contact-area__copy>p{font-size:.9rem}.contact-prep__heading,.contact-services__heading,.contact-faq__heading{text-align:left;margin-bottom:27px}.contact-prep__item{grid-template-columns:52px 1fr;padding:18px}.contact-prep__item img{width:52px;height:52px}.contact-faq summary{min-height:56px;padding:14px 48px 14px 15px;font-size:.88rem}.contact-faq details p{padding:0 15px 17px;font-size:.83rem}.contact-final__inner{min-height:0}.contact-final__actions{display:grid;grid-template-columns:1fr 1fr;gap:11px}.contact-final__actions .button{min-width:0;padding-inline:10px}.contact-final__phone{font-size:2rem}
}
@media (max-width:390px){
  .contact-hero h1{font-size:1.95rem}.contact-hero__phone{font-size:1.8rem}.contact-hero__actions,.contact-final__actions{grid-template-columns:1fr}.contact-hero__media{height:260px}.contact-hero__media img{height:260px;width:730px}.contact-phone-cta__phone,.contact-final__phone{font-size:1.8rem}.contact-prep__item{grid-template-columns:45px 1fr;gap:13px}.contact-prep__item img{width:45px;height:45px}
}

/* Release 1.6.7 contact mobile polish */
@media (max-width:600px){
 .contact-card{text-align:center}
 .contact-card__top{flex-direction:column;align-items:center;justify-content:center;gap:10px;margin-bottom:10px;text-align:center}
 .contact-card__top figure{margin:0}
 .contact-card__value,.contact-card p{width:100%;text-align:center}
 .contact-phone-cta__bg{width:100%;height:100%;object-fit:cover;object-position:25% center}
 .contact-phone-cta__inner{text-align:center}
 .contact-phone-cta__phone{justify-self:center;justify-content:center}
 .contact-phone-cta .wp-block-buttons{justify-content:center}
 .contact-phone-cta .wp-block-button{width:auto;margin-inline:auto}
 .contact-phone-cta .button{width:auto;min-width:min(240px,100%)}
}
