/* P001-03–10: opt-in headings below the P001-02 section heading. */
.content-heading {
  margin: 0 0 24px;
  color: var(--color-text-primary, #0b1f1a);
  font-family: inherit;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
.content-heading--a { border-inline-start: 4px solid var(--color-brand-green-dark, #008455); padding-inline-start: 14px; }
.content-heading--b { border-block-end: 2px solid var(--color-border-default, #dce5e0); padding-block-end: 12px; }
.content-heading--c { padding: 12px 16px; background: var(--color-surface-mint, #eff8f3); color: var(--color-brand-green-darker, #006b45); }
.content-heading--d { font-size: 24px; letter-spacing: .025em; }
.detail-heading {
  margin: 0 0 10px;
  color: var(--color-text-primary, #0b1f1a);
  font-family: inherit;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.7;
  overflow-wrap: anywhere;
}
.detail-heading--a, .detail-heading--d { color: var(--color-brand-green-dark, #008455); }
.detail-heading--b { position: relative; padding-inline-start: 16px; }
.detail-heading--b::before { position: absolute; inset-inline-start: 0; inset-block-start: .65em; width: 7px; height: 7px; background: var(--color-brand-green-dark, #008455); content: ""; }
.detail-heading--c { border-block-end: 1px solid var(--color-border-default, #dce5e0); padding-block-end: 9px; }

/* H1: extracted from the established company/office page heading. */
.page-heading { margin: 0 0 var(--space-lg); color: var(--color-text-primary, #0b1f1a); font-family: inherit; font-size: clamp(2.125rem, calc(1.5rem + 1vw), 2.75rem); font-weight: 700; line-height: 1.4; overflow-wrap: anywhere; }

/* P001-11: P001-05 band treatment at the common H4 size. */
.detail-heading--band { width: fit-content; max-width: 100%; border-radius: var(--radius-small, 8px); padding: 8px 12px; background: var(--color-surface-mint, #eff8f3); color: var(--color-brand-green-darker, #006b45); }

/* F009-01: give the regional introduction its natural width on desktop. */
@media (min-width:960px) {
  .area-section-heading.section-heading--split { display:flex; flex-wrap:wrap; justify-content:space-between; }
  .area-section-heading > .section-heading__title { flex:0 0 auto; }
  .area-section-heading > .section-heading__support { flex:0 0 auto; max-width:100%; }
}
