/* Shared public-site typography. Component sizing remains responsive, while the
   typeface, weight and rhythm stay consistent from page to page. */
:is(h1, h2, h3, h4, h5, h6) {
  font-family: "Inter Display", Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-weight: 500;
  letter-spacing: -.045em;
}

:is(h1, h2) { font-weight: 400; }

main p:not(.eyebrow):not([class*="kicker"]),
.site-footer p {
  font-size: 14px !important;
}

/* One content rail across the homepage. Nested grid columns must begin at the
   section boundary instead of centering their copy inside the column. */
body:not(.inner-page) .hero-inner {
  width: min(var(--site-max), calc(100% - 48px));
}

body:not(.inner-page) :is(.about-copy, .contact-copy) {
  width: 100%;
  justify-self: start;
}

/* Reuse the same 1440px content rail on specialist and detail pages. */
:is(.mad-shell, .cw-shell, .vc-shell, .process-shell, .brand-guide-shell,
    .case-shell, .article-shell, .contact-new-wrap, .legal-layout,
    .dc-footer-main) {
  width: min(var(--site-max), calc(100% - 48px));
  margin-inline: auto;
}

html[dir="rtl"] :is(h1, h2, h3, h4, h5, h6) {
  font-family: Tahoma, Arial, "Segoe UI", sans-serif !important;
  letter-spacing: 0;
}

@media (max-width: 760px) {
  body:not(.inner-page) .hero-inner,
  :is(.mad-shell, .cw-shell, .vc-shell, .process-shell, .brand-guide-shell,
      .case-shell, .article-shell, .contact-new-wrap, .legal-layout,
      .dc-footer-main) {
    width: calc(100% - 32px);
  }
}
