/* ARRIIVAL sitewide type scale — unify H1/H2/H3 across marketing + content pages.
   Reference: polished SuperRate hierarchy, tempered so heroes aren't oversized.
   Loaded last via <link href="/_in/type_scale.css"> so it wins over page styles. */

:root{
  --type-h1-hero:clamp(36px,4.2vw,56px);
  --type-h1-page:clamp(28px,3vw,40px);
  --type-h2:clamp(26px,2.8vw,36px);
  --type-h2-sm:clamp(22px,2.2vw,28px);
  --type-h3:clamp(17px,1.35vw,22px);
  --type-lede:clamp(15px,1.15vw,18px);
  --type-body:16px;
  --type-lh-hero:1.05;
  --type-lh-page:1.12;
  --type-lh-h2:1.12;
}

/* —— Content / utility page H1 (Help, Legal, Contact, Quote, Track, …) —— */
.page-hero h1,
article.page-hero h1,
.section.page-hero h1{
  font-size:var(--type-h1-page)!important;
  line-height:var(--type-lh-page)!important;
  letter-spacing:-.03em!important;
  font-weight:800!important;
}

/* —— Marketing / product hero H1 —— */
.hero h1,
main:has(.hero) .hero h1,
html body main:has(.hero) .hero h1,
.sr-hero h1,
.ab-hero h1,
.pt-hero h1,
.allsvc-hero h1,
.thub-hero h1,
.whp-hero h1{
  font-size:var(--type-h1-hero)!important;
  line-height:var(--type-lh-hero)!important;
  letter-spacing:-.035em!important;
  font-weight:800!important;
}

/* —— Section H2 (common bands; keep footer tiny) —— */
.section h2,
.sr h2.sr-h2,
.sr-diff h2,
.sr-plans h2.sr-h2,
.sr-how h2.sr-h2,
.ab-h2,
.pt-h2,
.pt-join h2,
.allsvc-group h2,
.allsvc-block h2,
.thub-block h2,
.thub-band h2,
.whp-block h2,
.whp-band h2,
.tele h2,
main:has(.hero) .tele h2,
html body main:has(.hero) .tele h2,
#sending h2,
main:has(.hero) #sending h2,
.land-banner h2,
.wh-banner h2,
.plans h2,
.people h2,
.bottom-about h2,
.wes-copy h2,
.lb2 h2,
.legal-panel-title{
  font-size:var(--type-h2)!important;
  line-height:var(--type-lh-h2)!important;
  letter-spacing:-.03em!important;
}

/* Smaller H2: FAQ heads, CTA bands, compact sections */
.sr-faq h2.sr-h2,
.sr-cta h2,
.ab-cta h2,
.allsvc-cta h2,
.cta-inner h2,
main:has(.hero) .cta-inner h2,
.bottom-how h2,
.bottom-faq h2,
main:has(.hero) .bottom-how h2,
main:has(.hero) .bottom-faq h2,
.whp-band h2 span{
  font-size:var(--type-h2-sm)!important;
  line-height:1.12!important;
}

/* —— Card / step H3 —— */
.feature h3,
.usp h3,
.card h3,
.svc h3,
.send-card h3,
#sending .send-card h3,
.tele-card h3,
.plan h3,
#plans .plan h3,
.sr-who-body h3,
.sr-plan h3,
.sr-step h3,
.sr-rate h3,
.allsvc-card h3,
.allsvc-addons h3,
.thub-feats h3,
.thub-why h3,
.thub-sol h3,
.thub-steps h3,
.whp-flow h3,
.whp-steps h3,
.whp-services h3,
.whp-benefits h3,
.whp-perfect h3,
.how-step h3,
.step h3{
  font-size:var(--type-h3)!important;
  line-height:1.2!important;
}

/* Lede under heroes — keep readable, not competing with H1 */
.page-hero .lede,
.hero .lede,
.sr-hero-lede,
.ab-hero .lede,
.pt-hero .lede,
.allsvc-hero .lede,
.thub-hero .lede,
.whp-hero .lede{
  font-size:var(--type-lede)!important;
  line-height:1.4!important;
}

/* Mobile: slightly tighter heroes already handled by clamp; ensure no page lock overrides */
@media (max-width:860px){
  .sr-hero h1,
  .ab-hero h1,
  .pt-hero h1,
  .hero h1,
  .allsvc-hero h1,
  .thub-hero h1,
  .whp-hero h1{
    font-size:clamp(32px,8vw,40px)!important;
  }
  .page-hero h1{
    font-size:clamp(26px,7vw,34px)!important;
  }
}

/* Never enlarge footer column titles */
.site-footer h2,
footer.site-footer h2{
  font-size:13px!important;
  letter-spacing:.04em!important;
  line-height:1.3!important;
  font-weight:700!important;
}
