:root{
  --contact-ink:#163650;
  --contact-blue:#0d6fb0;
  --contact-blue-deep:#0a4d7d;
  --contact-sky:#dff2fc;
  --contact-coral:#ef806c;
  --contact-muted:#687f92;
  --contact-line:#d8e6ef;
  --contact-mist:#f2f8fc;
}
.contact-page{background:#0b527f;color:var(--contact-ink)}
.contact-page .contact-main{position:relative;z-index:2;overflow:hidden;border-radius:0 0 46px 46px;background:#fff;box-shadow:0 65px 70px #001b6640}
.contact-page h1,.contact-page h2,.contact-page h3{background:none;-webkit-text-fill-color:currentColor;color:inherit}
.contact-page .header-cta[aria-current=page]{color:#fff;background:linear-gradient(100deg,#0e6eae,#2393c8) padding-box,linear-gradient(135deg,#8ed4f6,#2e83d6) border-box;box-shadow:0 12px 26px #0a6ca52d}
.contact-breadcrumb{display:flex;align-items:center;gap:11px;padding-top:132px;color:#71879a;font-size:13px}
.contact-breadcrumb a:hover{color:var(--contact-blue)}
.contact-kicker{display:block;color:#d96b59;font-size:11px;font-weight:600;letter-spacing:.1em;line-height:1.5}

.contact-hero{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(380px,.74fr);gap:clamp(56px,7vw,116px);align-items:center;padding-top:70px;padding-bottom:clamp(110px,10vw,160px)}
.contact-hero-copy h1{max-width:830px;margin:22px 0 30px;color:#0a466f;font-size:clamp(45px,4.4vw,70px);font-weight:500;line-height:1.13;letter-spacing:-.052em}
.contact-hero-copy>p{max-width:660px;color:#5f778a;font-size:16px;line-height:1.9}
.contact-primary{display:inline-flex;align-items:center;justify-content:space-between;gap:50px;min-width:250px;min-height:56px;margin-top:35px;padding:0 23px;border-radius:999px;background:linear-gradient(90deg,#0c65a5,#178dc5);color:#fff;font-size:14px;font-weight:500;box-shadow:0 16px 32px #0d6aab29}
.contact-primary:hover{background:linear-gradient(90deg,#09578e,#0f7cb4);box-shadow:0 18px 38px #0d6aab3b}
.contact-route{display:flex;align-items:center;gap:12px;margin-top:50px;color:#60798c;font-size:11px}
.contact-route span{display:flex;align-items:center;gap:7px;white-space:nowrap}
.contact-route b{color:#0c6dac;font-size:9px;font-weight:600}
.contact-route i{width:26px;height:1px;background:linear-gradient(90deg,#7fc0e0,var(--contact-coral))}
.contact-prep{position:relative;padding:32px;border:1px solid #c9deeb;border-radius:30px;background:linear-gradient(145deg,#f9fdff,#e9f6fc 68%,#fff3ef);box-shadow:0 30px 74px #0d578518;overflow:hidden}
.contact-prep:before{content:"";position:absolute;right:-105px;top:-135px;width:310px;height:310px;border:1px solid #9dcae4;border-radius:50%;box-shadow:0 0 0 45px #c9e7f577,0 0 0 94px #e2f2f876}
.contact-prep>*{position:relative;z-index:1}
.contact-prep-top{display:flex;justify-content:space-between;padding-bottom:21px;border-bottom:1px solid #cddfe9;color:#5e788b;font-size:10px;letter-spacing:.06em}
.contact-prep-top b{font-weight:500}
.contact-prep h2{margin:28px 0 30px;font-size:clamp(27px,2.4vw,37px);font-weight:500;line-height:1.3;letter-spacing:-.035em}
.contact-prep ol{margin:0;padding:0;list-style:none}
.contact-prep li{display:grid;grid-template-columns:54px 1fr;gap:16px;align-items:center;min-height:62px;border-top:1px solid #d5e3eb}
.contact-prep li:last-child{border-bottom:1px solid #d5e3eb}
.contact-prep li span{color:#dc705d;font-size:10px;font-weight:600}
.contact-prep li p{color:#536f83;font-size:13px;line-height:1.6}

.contact-intents{padding:clamp(95px,9vw,145px) 0;background:var(--contact-mist)}
.contact-section-head{display:grid;grid-template-columns:.45fr 1.55fr;gap:42px;align-items:start;margin-bottom:58px}
.contact-section-head>.contact-kicker{padding-top:12px}
.contact-section-head>div{display:grid;grid-template-columns:1.07fr .93fr;gap:58px;align-items:end}
.contact-section-head h2{font-size:clamp(38px,3.55vw,56px);font-weight:500;line-height:1.18;letter-spacing:-.047em}
.contact-section-head p{padding-bottom:6px;color:var(--contact-muted);font-size:14px;line-height:1.85}
.intent-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.intent-grid a{position:relative;display:flex;min-height:330px;flex-direction:column;padding:27px;border:1px solid var(--contact-line);border-radius:27px;background:#fff;box-shadow:0 22px 54px #0e547e0b;overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s}
.intent-grid a:before{content:"";position:absolute;right:-55px;top:-70px;width:170px;height:170px;border:1px solid #cce4f1;border-radius:50%;box-shadow:0 0 0 24px #e7f3f9}
.intent-grid a:nth-child(2){background:linear-gradient(145deg,#fff,#e9f7fd)}
.intent-grid a:nth-child(3){background:linear-gradient(145deg,#fff,#f3f9fc)}
.intent-grid a:nth-child(4){background:linear-gradient(145deg,#fff,#fff2ed)}
.intent-grid a:hover{transform:translateY(-5px);border-color:#bad8e9;box-shadow:0 28px 65px #0e547e18}
.intent-grid span{position:relative;z-index:1;color:#df6f5c;font-size:10px;font-weight:600}
.intent-grid h3{position:relative;z-index:1;margin-top:92px;font-size:29px;font-weight:500;letter-spacing:-.03em}
.intent-grid p{position:relative;z-index:1;margin-top:17px;color:#657d90;font-size:12px;line-height:1.8}
.intent-grid b{position:relative;z-index:1;margin-top:auto;padding-top:22px;border-top:1px solid #d9e6ee;color:var(--contact-blue);font-size:11px;font-weight:500}

.inquiry-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(55px,7vw,110px);align-items:start;padding-top:clamp(105px,10vw,160px);padding-bottom:clamp(110px,10vw,165px)}
.inquiry-intro{position:sticky;top:125px}
.inquiry-intro h2{margin:22px 0 28px;font-size:clamp(38px,3.65vw,57px);font-weight:500;line-height:1.2;letter-spacing:-.05em}
.inquiry-intro>p{max-width:470px;color:var(--contact-muted);font-size:14px;line-height:1.9}
.direct-contact{margin:50px 0 0;border-top:1px solid var(--contact-line)}
.direct-contact div{display:grid;grid-template-columns:115px 1fr;gap:20px;padding:21px 0;border-bottom:1px solid var(--contact-line)}
.direct-contact dt{color:#71889a;font-size:11px}
.direct-contact dd{margin:0;color:#0b659f;font-size:14px;font-weight:500;overflow-wrap:anywhere}
.direct-contact a:hover{text-decoration:underline;text-underline-offset:4px}
.lead-panel{padding:8px}
.lead-panel-head{display:flex;justify-content:space-between;gap:20px;margin-bottom:16px;padding:0 16px;color:#677f92;font-size:10px;letter-spacing:.07em}
.lead-panel-head b{font-weight:500}
.contact-page .lead-host{display:block;min-height:590px;border:1px solid #c9dfea;border-radius:31px;background:linear-gradient(145deg,#f8fcff,#e9f6fc 70%,#fff3ef);box-shadow:0 30px 80px #0d578516;overflow:hidden}
.lead-host.is-ready{min-height:0;border-color:#d8e6ef;background:#fff}
.lead-host gt-lead-form{display:block}
.lead-fallback{display:flex;min-height:590px;flex-direction:column;justify-content:center;padding:clamp(34px,5vw,68px)}
.lead-fallback>span{color:#dd6e5a;font-size:10px;font-weight:600;letter-spacing:.1em}
.lead-fallback h3{max-width:520px;margin:28px 0 20px;font-size:clamp(28px,2.8vw,42px);font-weight:500;line-height:1.28;letter-spacing:-.04em}
.lead-fallback p{max-width:520px;color:#617a8d;font-size:14px;line-height:1.85}
.lead-fallback>div{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.lead-fallback a{display:inline-flex;align-items:center;min-height:48px;padding:0 20px;border:1px solid #bfd8e7;border-radius:999px;background:#fff;color:#0b639f;font-size:12px}
.lead-fallback a:hover{background:#ecf7fc}
.lead-fallback small{margin-top:26px;color:#7b90a1;font-size:10px;line-height:1.7}

.contact-after{padding:clamp(100px,9vw,150px) 0;background:linear-gradient(135deg,#0a4c78,#0f6c9e 64%,#188bb5);color:#fff}
.contact-section-head.light h2{color:#fff}
.contact-section-head.light p{color:#d0e5ef}
.contact-section-head.light .contact-kicker{color:#ffad9d}
.after-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;border-top:1px solid #ffffff42;list-style:none}
.after-grid li{display:flex;min-height:330px;flex-direction:column;padding:28px 25px;border-bottom:1px solid #ffffff42}
.after-grid li+li{border-left:1px solid #ffffff42}
.after-grid span{color:#ffad9d;font-size:10px;font-weight:600}
.after-grid h3{margin-top:90px;color:#fff;font-size:23px;font-weight:500;line-height:1.4}
.after-grid p{margin-top:15px;color:#c8e0eb;font-size:12px;line-height:1.85}

.contact-boundary{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(60px,8vw,130px);padding-top:clamp(105px,10vw,160px);padding-bottom:clamp(110px,10vw,165px)}
.contact-boundary h2{margin-top:20px;font-size:clamp(38px,3.7vw,58px);font-weight:500;line-height:1.2;letter-spacing:-.05em}
.boundary-list{border-top:1px solid var(--contact-line)}
.boundary-list p{display:grid;grid-template-columns:.65fr 1.35fr;gap:28px;margin:0;padding:29px 0;border-bottom:1px solid var(--contact-line)}
.boundary-list b{font-size:13px;font-weight:500}
.boundary-list span{color:#657d90;font-size:12px;line-height:1.8}

@media(max-width:1080px){
  .contact-hero{grid-template-columns:1fr 1fr;gap:40px}
  .contact-section-head>div{grid-template-columns:1fr;gap:20px}
  .intent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .inquiry-layout{grid-template-columns:.8fr 1.2fr;gap:45px}
}
@media(max-width:760px){
  .contact-page .mobile-cta{display:flex}
  .contact-page .contact-main{border-radius:0 0 28px 28px}
  .contact-breadcrumb{padding-top:105px}
  .contact-hero{grid-template-columns:1fr;gap:45px;padding-top:48px;padding-bottom:82px}
  .contact-hero-copy h1{font-size:41px}
  .contact-primary{width:100%}
  .contact-route{flex-wrap:wrap;gap:10px;margin-top:35px}
  .contact-route i{width:16px}
  .contact-prep{padding:26px 22px;border-radius:24px}
  .contact-intents{padding:72px 0}
  .contact-section-head{grid-template-columns:1fr;gap:14px;margin-bottom:38px}
  .contact-section-head>.contact-kicker{padding:0}
  .contact-section-head h2{font-size:34px}
  .intent-grid{grid-template-columns:1fr}
  .intent-grid a{min-height:260px;padding:24px}
  .intent-grid h3{margin-top:55px}
  .inquiry-layout{grid-template-columns:1fr;gap:44px;padding-top:76px;padding-bottom:82px}
  .inquiry-intro{position:static}
  .inquiry-intro h2{font-size:37px}
  .lead-panel{padding:0}
  .lead-panel-head{padding-inline:4px}
  .lead-host,.lead-fallback{min-height:520px}
  .lead-host{border-radius:24px}
  .lead-fallback{padding:30px 22px}
  .lead-fallback>div{flex-direction:column;align-items:stretch}
  .lead-fallback a{justify-content:center}
  .contact-after{padding:76px 0}
  .after-grid{grid-template-columns:1fr}
  .after-grid li,.after-grid li+li{min-height:220px;padding:26px 0;border-left:0}
  .after-grid h3{margin-top:42px}
  .contact-boundary{grid-template-columns:1fr;gap:45px;padding-top:76px;padding-bottom:82px}
  .contact-boundary h2{font-size:37px}
  .boundary-list p{grid-template-columns:1fr;gap:9px}
}
@media(max-width:430px){
  .contact-hero-copy h1{font-size:37px}
  .contact-route i{display:none}
  .contact-route span{width:calc(50% - 5px)}
  .contact-section-head h2,.inquiry-intro h2,.contact-boundary h2{font-size:33px}
}
@media(prefers-reduced-motion:reduce){.intent-grid a{transition:none}.intent-grid a:hover{transform:none}}
