/* Shared secondary-page hero, based on the homepage grid and soft bottom wash. */
.secondary-page .secondary-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:0;
  padding:clamp(72px,7vw,104px) 0 clamp(64px,7vw,96px);
  border:0;
  background:#fff;
}
.secondary-page .secondary-hero::before{
  content:"";
  display:block;
  position:absolute;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background-image:linear-gradient(rgb(73 85 101 / 18%) 1px,transparent 1px),linear-gradient(90deg,rgb(73 85 101 / 18%) 1px,transparent 1px);
  background-size:56px 56px;
  -webkit-mask-image:linear-gradient(135deg,#000 0%,rgb(0 0 0 / 70%) 28%,transparent 74%);
  mask-image:linear-gradient(135deg,#000 0%,rgb(0 0 0 / 70%) 28%,transparent 74%);
}
.secondary-page .secondary-hero .secondary-hero-gradient{
  display:block;
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(to bottom,transparent 0%,transparent 55%,rgb(239 246 255 / 48%) 76%,#fff 100%);
}
/* The Services hero and credibility section share one continuous lower wash. */
.services-page .secondary-hero .secondary-hero-gradient{
  background:linear-gradient(to bottom,transparent 0%,transparent 48%,rgb(245 247 250 / 60%) 76%,#f5f7fa 100%);
}
.secondary-page .secondary-hero :is(.intro-grid,.careers-hero-grid,.secondary-hero-inner){
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:0;
  width:100%;
  max-width:980px;
  margin-inline:auto;
  text-align:center;
}
.secondary-page .secondary-hero h1{
  width:100%;
  max-width:950px;
  margin:0 auto 22px;
  font-size:clamp(44px,5.8vw,76px);
  line-height:1.08;
  letter-spacing:-.032em;
  text-wrap:balance;
}
.secondary-page .secondary-hero h1 .blue{color:#175ddc}
.secondary-page .secondary-hero :is(.kicker,.careers-kicker){width:max-content;max-width:100%;margin:0 auto 16px;text-align:center}
.secondary-page .secondary-hero :is(.intro-side,.intro-copy,.careers-hero-side){
  display:flex;
  flex-direction:column;
  align-items:center;
  width:100%;
  max-width:650px;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  text-align:center;
}
.secondary-page .secondary-hero :is(.intro-side,.careers-hero-side) p,
.secondary-page .secondary-hero .hero-summary{
  max-width:52ch;
  margin:0 0 20px;
  color:#555b64;
  font-size:16px;
  line-height:1.6;
}
.secondary-page .secondary-hero .intro-copy .intro-side{max-width:52ch;margin:0 0 20px}
.secondary-page .secondary-hero .services-hero-actions{justify-content:center}
.secondary-page .secondary-hero .careers-hero-side a,
.secondary-page .secondary-hero .contact-hero-email{color:#174f9f;font-weight:700;text-decoration:none}
.secondary-page .secondary-hero .careers-hero-side a:hover,
.secondary-page .secondary-hero .contact-hero-email:hover{text-decoration:underline;text-underline-offset:4px}
.services-page .engagement.section,
.about-page .process.section{padding-top:clamp(32px,4vw,50px)}
.careers-page .roles-section.wrap{margin-top:clamp(28px,3.5vw,44px)}
.contact-page .contact-compose{padding:clamp(28px,3.5vw,44px) 0 clamp(40px,5vw,64px)}
.contact-page .compose-grid{display:block;max-width:760px;margin-inline:auto}

@media(max-width:650px){
  .secondary-page .secondary-hero{padding:58px 0 64px}
  .secondary-page .secondary-hero :is(.intro-grid,.careers-hero-grid,.secondary-hero-inner){width:calc(100% - 28px)}
  .secondary-page .secondary-hero h1{max-width:100%;margin-bottom:18px;font-size:clamp(39px,10vw,56px)}
  .secondary-page .secondary-hero :is(.intro-side,.careers-hero-side) p,
  .secondary-page .secondary-hero .hero-summary{font-size:14px}
  .secondary-page .secondary-hero .services-hero-actions{flex-direction:column;gap:8px}
  .services-page .engagement.section,
  .about-page .process.section{padding-top:28px}
  .careers-page .roles-section.wrap{margin-top:24px}
  .contact-page .contact-compose{padding:24px 0 42px}
}
@media(forced-colors:active){.secondary-page .secondary-hero::before,.secondary-page .secondary-hero .secondary-hero-gradient{display:none}}
