/* Shared reading roles for the five subpages only. INDEX and navigation are excluded. */
:is(.page-about, .page-service, .page-contact, .page-privacy, .page-thanks) {
  --subpage-body-size: 1rem;
  --subpage-body-leading: 1.9;
  --subpage-label-size: .9375rem;
  --subpage-note-size: .875rem;
  --subpage-support-color: #4b5d76;
}

:is(.page-about, .page-service, .page-contact, .page-privacy, .page-thanks) .subpage-hero__lead {
  font-size: clamp(1rem, 1.25vw, 1.08rem);
  line-height: 1.85;
  color: rgba(255, 255, 255, .86);
}

:is(.page-about, .page-service, .page-contact, .page-privacy, .page-thanks) .section-heading > p:not(.section-kicker) {
  max-width: 44em;
  font-size: var(--subpage-body-size);
  line-height: var(--subpage-body-leading);
  color: var(--ink-soft);
}

:is(.page-about, .page-service, .page-contact, .page-privacy, .page-thanks) .contact-band p:not(.section-kicker) {
  font-size: var(--subpage-body-size);
  line-height: 1.85;
  color: rgba(255, 255, 255, .84);
}

:is(.page-about, .page-service, .page-contact, .page-privacy, .page-thanks) .line-button {
  font-size: var(--subpage-note-size);
  line-height: 1.45;
  letter-spacing: .08em;
}

:is(.page-about, .page-service, .page-contact, .page-privacy, .page-thanks) #main :is(a, button, input, select, textarea):focus-visible {
  outline: 3px solid #0960c6;
  outline-offset: 4px;
}

:is(.page-about, .page-service, .page-contact, .page-privacy, .page-thanks) #main .contact-band .line-button:focus-visible {
  outline-color: #a4e9ff;
}

:is(.page-about, .page-service, .page-contact, .page-privacy, .page-thanks) .contact-band .line-button::after {
  color: #8adeff;
}

:is(.page-about, .page-service, .page-contact, .page-privacy, .page-thanks) .contact-band .line-button:hover::after {
  color: #fff;
}
