/* One scale for editorial subpages; the homepage's physical scenes keep their sizing. */
:root {
  --studio-title: 88px;
  --studio-section: 44px;
  --studio-subtitle: 30px;
  --studio-feature: 40px;
  --studio-copy: 22px;
  --studio-intro: 26px;
}
body:is(.studio-page,.studio-case,.studio-document) main :is(h1,h2,h3,h4,h5,h6) {
  font-family: var(--font-display) !important;
  font-weight: 700 !important;
}
body:is(.studio-page,.studio-case,.studio-document) main h1,
body.studio-page main .hero h1 { font-size: var(--studio-title) !important; }
body:is(.studio-page,.studio-case) main h2 { font-size: var(--studio-section) !important; }
body:is(.studio-page,.studio-case,.studio-document) main h3 { font-size: var(--studio-subtitle) !important; }
body.studio-page main .service-heading h3,
body.process-refined main .stage h3 { font-size: var(--studio-feature) !important; }
body.process-refined main .stage-index { font: 700 32px/1.2 var(--font-display); }
body:is(.studio-page,.studio-case,.studio-document) main p {
  font-family: var(--font-body);
  font-size: var(--studio-copy) !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
}
body:is(.studio-page,.studio-case) main :is(.hero,.case-hero,.page-hero) :is(.hero-copy,.hero-intro,.hero-description,.lead) {
  font-size: var(--studio-intro) !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}
body.studio-document main .policy-section p,
body.studio-page main :is(.form-note,.field-hint,.status,.hero-note,.stage-result p),
body.studio-case main :is(.case-meta p,.metric p) { font-size: 18px !important; }
body:is(.studio-page,.studio-case,.studio-document) main :is(.small-label,.scope-title,.output-title,.choice-title,.price-tag) {
  font-family: var(--font-ui) !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
}
body:is(.studio-page,.studio-case,.studio-document) .footer :is(p,a) { font-family: var(--font-ui); font-weight: 400; }
body:is(.studio-page,.studio-case,.studio-document) .footer .footer-wordmark,
body:is(.studio-page,.studio-case,.studio-document) .footer .footer-wordmark span {
  color: #fffefa;
  font-family: var(--font-display) !important;
  font-weight: 700 !important;
  -webkit-text-stroke: 0;
}
body:is(.studio-page,.studio-case,.studio-document) main :is(.cta,.next-project,.final-cta) :is(.section-number,.section-index,.case-label,.kicker,.eyebrow,.cta-kicker) { color: #080807; }
body.studio-page main .cta .kicker.cta-kicker-light { color: #fff; }
@media (max-width: 1023px) {
  :root { --studio-title: 72px; --studio-section: 36px; }
}
@media (max-width: 680px) {
  :root { --studio-title: 48px; --studio-section: 32px; --studio-subtitle: 26px; --studio-feature: 32px; --studio-copy: 20px; --studio-intro: 22px; }
  body.process-refined main .stage-index { font-size: 24px; }
}
