/* Shared section introduction. Hero and card/case-study headings stay independent. */
#main .section-heading{
  --heading-ink:var(--navy);
  --heading-muted:#5b6070;
  position:relative;
  isolation:isolate;
  display:block;
  width:100%;
  max-width:960px;
  margin:0 auto 40px;
  padding:clamp(26px,2vw,42px) 0 0;
  text-align:center;
}
#main .section-heading.wrap{width:min(calc(100% - var(--gutter,24px)*2),960px)}
#main .section-heading-inverse{--heading-ink:#fff;--heading-muted:#d9dbea}
#main .section-heading .section-heading-backdrop{
  position:absolute;z-index:-1;inset:-.05em 0 auto;
  display:block;margin:0;padding:0;
  color:var(--heading-ink);opacity:.045;
  font-family:var(--fd);font-size:clamp(64px,8.5vw,164px);
  font-weight:800;line-height:.8;text-align:center;white-space:nowrap;
  pointer-events:none;user-select:none;
}
#main .section-heading-inverse .section-heading-backdrop{opacity:.065}
#main .section-heading .section-heading-eyebrow{
  position:relative;inset:auto;display:block;width:auto;max-width:none;
  margin:0 0 18px;padding:0;color:var(--heading-ink);
  font-size:16px;font-weight:700;line-height:1.4;text-align:center;
}
#main .section-heading-inverse .section-heading-eyebrow{color:var(--gold)}
#main .section-heading h2{
  position:relative;inset:auto;width:100%;max-width:28ch;
  margin:0 auto;padding:0;color:var(--heading-ink);
  font-size:clamp(32px,3.125vw,72px);font-weight:800;line-height:1.15;
  letter-spacing:normal;text-align:center;white-space:normal;text-wrap:balance;
}
#main .section-heading h2 .brand-outline{
  display:inline;color:var(--heading-ink);font-size:1em;
  -webkit-text-stroke:1px var(--gold);paint-order:stroke fill;
}
#main .section-heading-inverse h2 .brand-outline{color:var(--gold);-webkit-text-stroke:0}
#main .section-heading .section-heading-lede{
  position:relative;inset:auto;display:block;width:100%;max-width:58ch;
  margin:26px auto 0;padding:0;color:var(--heading-muted);
  font-size:clamp(16px,1.05vw,20px);font-weight:400;line-height:1.65;
  text-align:center;text-wrap:pretty;
}
#main .recognition-heading::before{content:none}
#main .recognition-heading h2{margin-top:25px}
#main .section-heading .pain-title::after{content:none}
#main .client-glass-heading.section-heading{margin-bottom:8px}
#main .dream-intro.section-heading{grid-template-columns:none;gap:0;align-items:initial}
#main .dream-intro .dream-copy-block{width:100%;margin:0 auto}
#main .dream-intro .section-cta{margin-top:28px}
.pain-narrative:not(:has(*)){display:none}
#main .pain-section>.section-heading{margin-bottom:24px}
#main .value-meter-heading{grid-column:1/-1;margin-bottom:0}
#main .time-game .value-meter-heading{--heading-ink:#fff;--heading-muted:#d9dbea}
#main .value-meter .gap-result{margin-top:0}
#main .interfaces-heading{grid-column:1/-1}
#main #interfaces .ui-shot{grid-column:1/-1;margin-inline:auto}
#main .process-sign{display:none}
#main #about>.section-heading,#main #form>.section-heading{margin-bottom:48px}
#main #form .form-wrap{grid-template-columns:minmax(0,1fr);max-width:760px;gap:0}
#main #form .form-wrap>div:first-child{display:none}
#main #morphCopy.section-heading{width:min(calc(100% - var(--gutter,24px)*2),960px)}
#main .offer>.section-heading{margin-bottom:32px}
#main #services-h,
#main #client-glass-title,
#main #ui-h,
#main #process-h,
#main #dream-h,
#main #about-h,
#main #fit-h,
#main #offer-h,
#main #faq-h,
#main #form-h{margin-top:25px}
@media(max-width:999px){
  #main .pain-section .pain-stage{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:599px){
  #main .section-heading{padding-top:22px;margin-bottom:32px}
  #main .section-heading .section-heading-backdrop{inset:.05em 0 auto;font-size:clamp(44px,15vw,80px)}
  #main .section-heading .section-heading-eyebrow{font-size:14px;margin-bottom:18px}
  #main .section-heading h2{font-size:clamp(28px,8vw,36px)}
  #main .section-heading .section-heading-lede{margin-top:24px;font-size:16px}
}
