/* Canonical contacts first screen: shared header, then the editable expertise block. */
.contact-about--first{padding:74px 0 88px;background:#fff}
.contact-about--first .contact-heading{margin-bottom:46px}
.contact-about--first .contact-heading--split{align-items:end;grid-template-columns:minmax(0,1.22fr) minmax(390px,.78fr);gap:86px}
.contact-about--first .contact-heading h2{max-width:980px;margin:0;font-size:clamp(52px,4.4vw,84px);font-weight:800;line-height:1.04;letter-spacing:-.052em}
.contact-about--first .contact-heading h2 span{color:var(--contact-orange)}
.contact-about--first .contact-heading--split>p{max-width:600px;margin:0 0 6px;color:var(--contact-muted);font-size:22px;line-height:1.6}
.contact-about--first .contact-about__grid{grid-template-columns:.58fr 1fr 1fr;gap:20px}
.contact-about--first .contact-stat,.contact-about--first .contact-expert{height:620px;min-height:620px;border-radius:16px}
.contact-about--first .contact-stat{display:flex;flex-direction:column;padding:52px 44px}
.contact-about--first .contact-stat strong{font-size:96px}
.contact-about--first .contact-stat h3{max-width:300px;margin:18px 0 38px;font-size:34px;line-height:1.35}
.contact-about--first .contact-stat p{max-width:300px;margin-top:auto;font-size:18px}
.contact-about--first .contact-expert>div{left:40px;right:40px;bottom:40px}
.contact-about--first .contact-expert h3{max-width:600px;font-size:34px}
@media(max-width:1350px) and (min-width:1101px){.contact-about--first .contact-about__grid{grid-template-columns:.72fr 1.22fr 1.22fr;gap:18px}.contact-about--first .contact-stat{padding:42px 32px}.contact-about--first .contact-stat strong{font-size:82px}.contact-about--first .contact-stat h3{font-size:28px;line-height:1.28}.contact-about--first .contact-stat p{font-size:17px;line-height:1.55}.contact-about--first .contact-expert>div{left:32px;right:32px;bottom:34px}.contact-about--first .contact-expert h3{font-size:30px}}
@media(max-width:1100px){.contact-about--first .contact-heading--split{grid-template-columns:1fr;gap:28px}.contact-about--first .contact-about__grid{grid-template-columns:1fr 1fr}.contact-about--first .contact-stat{grid-column:1/-1;height:auto;min-height:300px}.contact-about--first .contact-expert{height:520px;min-height:520px}}
@media(max-width:700px){.contact-about--first{padding:54px 0 64px}.contact-about--first .contact-heading h2{font-size:44px}.contact-about--first .contact-heading--split>p{font-size:18px}.contact-about--first .contact-about__grid{grid-template-columns:1fr}.contact-about--first .contact-stat{grid-column:auto}.contact-about--first .contact-expert{height:460px;min-height:460px}}

/* Canonical contacts layout: one site width and the restrained hero palette. */
.contacts-body{
  --contact-layout-max:1550px;
  --contact-layout-gutter:72px;
  --contact-hero-accent:#ee916e;
}
.contacts-body .contact-shell{
  width:min(var(--contact-layout-max),calc(100% - var(--contact-layout-gutter)));
}
.contacts-body .contact-hero__layout{
  grid-template-columns:minmax(0,1.35fr) minmax(390px,.65fr);
  gap:70px;
  padding-block:72px;
}
.contacts-body .contact-hero .contact-kicker,
.contacts-body .contact-hero h1 span{
  color:var(--contact-hero-accent);
}
.contacts-body .contact-about--first{
  background:#edf3f6;
}
.contacts-body .contact-about--first .contact-kicker{
  color:#d86f43;
}
.contacts-body .contact-about--first .contact-heading h2 span,
.contacts-body .contact-about--first .contact-stat strong,
.contacts-body .contact-about--first .contact-expert small{
  color:var(--contact-hero-accent);
}
.contacts-body .contacts-source-shell .section,
.contacts-body .contacts-source-shell .cta-section,
.contacts-body .contacts-source-shell footer{
  padding-left:max(36px,calc((100vw - var(--contact-layout-max))/2));
  padding-right:max(36px,calc((100vw - var(--contact-layout-max))/2));
}
@media(max-width:1100px){
  .contacts-body{--contact-layout-gutter:40px}
  .contacts-body .contact-hero__layout{grid-template-columns:1fr;gap:38px}
}
@media(max-width:700px){
  .contacts-body{--contact-layout-gutter:28px}
  .contacts-body .contacts-source-shell .section,
  .contacts-body .contacts-source-shell .cta-section,
  .contacts-body .contacts-source-shell footer{padding-left:20px;padding-right:20px}
}

/* Match the expertise heading to the contact hero title. */
.contacts-body #contact-title{
  font-size:clamp(42px,4.5vw,72px)!important;
  line-height:.99!important;
  letter-spacing:-.045em!important;
}
/* Contacts footer: use the same compact dark treatment as the home page. */
.contacts-body .contacts-source-shell .contacts-site-footer{
  padding-top:28px;
  padding-bottom:28px;
  color:rgba(255,255,255,.78);
  background:#101820;
}
.contacts-body .contacts-source-shell .contacts-site-footer .wrap{
  width:100%;
  max-width:var(--contact-layout-max);
  margin:0 auto;
  padding:0;
  display:flex;
  align-items:center;
  flex-direction:row;
  justify-content:space-between;
  gap:24px;
}
.contacts-body .contacts-source-shell .contacts-site-footer__copy{
  min-width:0;
  display:grid;
  gap:6px;
}
.contacts-body .contacts-source-shell .contacts-site-footer__copy strong{
  color:#fff;
  font-size:14px;
  font-weight:900;
  line-height:1.35;
}
.contacts-body .contacts-source-shell .contacts-site-footer__copy small{
  color:rgba(255,255,255,.62);
  font-size:12px;
  line-height:1.4;
}
.contacts-body .contacts-source-shell .contacts-site-footer a{
  flex:0 0 auto;
  color:rgba(255,255,255,.78);
  text-decoration:none;
}
@media(max-width:700px){
  .contacts-body .contacts-source-shell .contacts-site-footer .wrap{
    align-items:flex-start;
    flex-direction:column;
  }
}
