/*
 * Shared public heading scale, based on apple.com homepage typography:
 * tile-headline 56/48/32, headline 48/40/32, promo-headline 40/32/32.
 * Reference: https://www.apple.com/v/homepage/a/styles/main.built.css
 * SF Pro is resolved locally on Apple devices; do not redistribute Apple's fonts.
 * rem values preserve the reference sizes at the default 16px root size and
 * also respect a visitor's larger default font setting.
 */
body:is(.pr-public-site, .pr-activities-page) {
  --pr-heading-font: "SF Pro Display", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, Arial, sans-serif;
  --pr-h1-size: 3.5rem;
  --pr-h1-line: 1.0714285714;
  --pr-h1-tracking: -.005em;
  --pr-h2-size: 3rem;
  --pr-h2-line: 1.0834933333;
  --pr-h2-tracking: -.002em;
  --pr-h3-size: 2.5rem;
  --pr-h3-line: 1.1;
  --pr-h3-tracking: 0em;
}

/* Only typography is overridden. Important is necessary because page-specific
 * theme styles and inline presentation rules are emitted after enqueued CSS.
 * Scope to the public main content to exclude WordPress and embedded widgets.
 */
body:is(.pr-public-site, .pr-activities-page) :is(#main-content, main) :is(h1, h2, h3, h4, h5, h6) {
  font-family: var(--pr-heading-font) !important;
  font-weight: 600 !important;
  font-style: normal !important;
  text-transform: none !important;
  text-wrap: balance;
  overflow-wrap: anywhere;
}

body:is(.pr-public-site, .pr-activities-page) :is(#main-content, main) h1 {
  font-size: var(--pr-h1-size) !important;
  line-height: var(--pr-h1-line) !important;
  letter-spacing: var(--pr-h1-tracking) !important;
}

body:is(.pr-public-site, .pr-activities-page) :is(#main-content, main) h2 {
  font-size: var(--pr-h2-size) !important;
  line-height: var(--pr-h2-line) !important;
  letter-spacing: var(--pr-h2-tracking) !important;
}

body:is(.pr-public-site, .pr-activities-page) :is(#main-content, main) h3 {
  font-size: var(--pr-h3-size) !important;
  line-height: var(--pr-h3-line) !important;
  letter-spacing: var(--pr-h3-tracking) !important;
}

/* Compact subheadings follow Apple's smaller text scale. */
body:is(.pr-public-site, .pr-activities-page) :is(#main-content, main) h4 {
  font-size: 1.5rem !important;
  line-height: 1.1666666667 !important;
  letter-spacing: .009em !important;
}

body:is(.pr-public-site, .pr-activities-page) :is(#main-content, main) h5 {
  font-size: 1.3125rem !important;
  line-height: 1.1904761905 !important;
  letter-spacing: .011em !important;
}

body:is(.pr-public-site, .pr-activities-page) :is(#main-content, main) h6 {
  font-size: 1.0625rem !important;
  line-height: 1.2353641176 !important;
  letter-spacing: -.022em !important;
}

/* Keep linked/emphasized title text in the same typeface and scale. */
body:is(.pr-public-site, .pr-activities-page) :is(#main-content, main) :is(h1, h2, h3, h4, h5, h6) :is(a, span, em, strong) {
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  font-style: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
}

/* Give Thai and non-Latin scripts their native system fonts and spacing. */
body:is(.pr-public-site, .pr-activities-page) :is(#main-content, main) :is(h1, h2, h3, h4, h5, h6):is(:lang(ar), :lang(ja), :lang(zh), :lang(th)) {
  letter-spacing: 0 !important;
}

body:is(.pr-public-site, .pr-activities-page) :is(#main-content, main) :is(h1, h2, h3, h4, h5, h6):lang(th) {
  line-height: 1.35 !important;
}

@media only screen and (max-width: 1068px) {
  body:is(.pr-public-site, .pr-activities-page) {
    --pr-h1-size: 3rem;
    --pr-h1-line: 1.0834933333;
    --pr-h1-tracking: -.002em;
    --pr-h2-size: 2.5rem;
    --pr-h2-line: 1.1;
    --pr-h2-tracking: 0em;
    --pr-h3-size: 2rem;
    --pr-h3-line: 1.125;
    --pr-h3-tracking: .002em;
  }
}

@media only screen and (max-width: 734px) {
  body:is(.pr-public-site, .pr-activities-page) {
    --pr-h1-size: 2rem;
    --pr-h1-line: 1.125;
    --pr-h1-tracking: .002em;
    --pr-h2-size: 2rem;
    --pr-h2-line: 1.125;
    --pr-h2-tracking: .002em;
  }
}
