/* Shared type scale for the four service pages. Load after page-specific CSS. */
:is(.es-page,.inner-page){--service-h1:48px;--service-h2:40px;--service-lead:16px;--service-body:16px;--service-card-body:15px}
:is(.es-page .es-hero-copy h1,.inner-page .inner-hero h1){font-size:var(--service-h1);font-weight:900;line-height:1.4;letter-spacing:.012em}
:is(.es-page .es-section h2,.inner-page .inner-section-heading h2){font-size:var(--service-h2);font-weight:800;line-height:1.45;letter-spacing:.015em}
:is(.es-page .es-hero-lead,.inner-page .inner-hero p.inner-lead){font-size:var(--service-lead);font-weight:600;line-height:1.9}
:is(.es-page .es-section .es-section-intro,.es-page .es-section .training-section-intro,.es-page .es-section .sc-section-intro,.inner-page .inner-prose,.inner-page .course-knowledge-intro){font-size:var(--service-body);line-height:1.9}
:is(.es-page .es-challenge-copy p,.es-page .es-support-step p,.es-page .es-process-card p,.es-page .sc-benefit-card p,.inner-page .course-benefit-card>p:last-child,.inner-page .course-knowledge-steps p){font-size:var(--service-card-body);line-height:1.85}
@media(max-width:900px){:is(.es-page,.inner-page){--service-h1:36px;--service-h2:32px}}
@media(max-width:520px){
  :is(.es-page,.inner-page){--service-h1:30px;--service-h2:24px;--service-lead:15px;--service-body:15px}
  :is(.es-page .es-hero-copy h1,.inner-page .inner-hero h1){font-size:var(--service-h1);line-height:1.45}
  :is(.es-page .es-section h2,.inner-page .inner-section-heading h2){font-size:var(--service-h2);line-height:1.5}
}
