/* National MSA Research - Content Formatting 1.1.0.
   Accessible, responsive text rhythm for Gutenberg pages. Does not alter content.
   Donation forms, home design, embeds, navigation and footers are excluded. */
body.nmrpd-formatted-content {
  --nmr-content-ink: #281b36;
  --nmr-content-muted: #4e475b;
  --nmr-content-purple: #71318b;
  --nmr-content-green: #14895d;
  --nmr-content-rule: #e8e4ed;
}
body.nmrpd-formatted-content main :is(.entry-content, .wp-block-post-content, .page-content, .post-content) {
  overflow-wrap: anywhere;
}
/* Avoid artificially shrinking or styling form controls; limit typography to document text. */
body.nmrpd-formatted-content main :is(h1,h2,h3,h4,h5,h6) {
  color: var(--nmr-content-ink);
  font-family: inherit;
  font-weight: 750;
  line-height: 1.24;
  overflow-wrap: break-word;
  text-wrap: balance;
}
body.nmrpd-formatted-content main h1 {
  font-size: clamp(2rem, 4vw, 3.05rem);
  letter-spacing: -.025em;
  margin-block: 0 1.1rem;
}
body.nmrpd-formatted-content main h2 {
  font-size: clamp(1.43rem, 2.7vw, 2.05rem);
  letter-spacing: -.015em;
  margin-block: clamp(2rem, 3.5vw, 3rem) .8rem;
}
body.nmrpd-formatted-content main h3 {
  font-size: clamp(1.2rem, 2vw, 1.52rem);
  letter-spacing: -.01em;
  margin-block: 1.65rem .55rem;
}
body.nmrpd-formatted-content main h4 {
  font-size: 1.12rem;
  margin-block: 1.25rem .45rem;
}
body.nmrpd-formatted-content main :is(h1,h2,h3,h4) + p {
  margin-top: .35rem;
}
body.nmrpd-formatted-content main p,
body.nmrpd-formatted-content main .wp-block-paragraph {
  font-size: clamp(1rem, .95rem + .25vw, 1.105rem);
  line-height: 1.76;
  margin-block: 0 1.05rem;
  color: inherit;
  text-wrap: pretty;
}
body.nmrpd-formatted-content main p + p { margin-top: .35rem; }
body.nmrpd-formatted-content main h1 + p:has(> strong:only-child),
body.nmrpd-formatted-content main h1 + .wp-block-paragraph:has(> strong:only-child) {
  font-size: clamp(1.09rem, 1.35vw, 1.22rem);
  font-weight: 650;
  line-height: 1.56;
  color: var(--nmr-content-muted);
  margin-bottom: 1.3rem;
}
/* Keep body copy readable on wide displays without constraining columns/cards. */
body.nmrpd-formatted-content main :is(.entry-content, .wp-block-post-content, .page-content, .post-content) > p {
  max-width: 79ch;
}
body.nmrpd-formatted-content main :is(ul,ol) {
  padding-inline-start: clamp(1.3rem, 2.5vw, 2rem);
  margin-block: .65rem 1.5rem;
}
body.nmrpd-formatted-content main li {
  line-height: 1.7;
  font-size: clamp(1rem, .95rem + .25vw, 1.105rem);
  padding-block: .17rem;
}
body.nmrpd-formatted-content main li > :last-child { margin-bottom: 0; }
body.nmrpd-formatted-content main :is(ul,ol) :is(ul,ol) { margin-block: .3rem .5rem; }
body.nmrpd-formatted-content main :is(blockquote, .wp-block-quote):not(.is-style-plain) {
  border-left: 4px solid var(--nmr-content-purple);
  background-color: #f8f4fa;
  border-radius: 0 12px 12px 0;
  padding: 1rem 1.3rem;
  margin-block: 1.6rem;
}
body.nmrpd-formatted-content main .wp-block-separator,
body.nmrpd-formatted-content main hr {
  border: 0;
  border-top: 1px solid var(--nmr-content-rule);
  margin-block: 2.3rem;
}
body.nmrpd-formatted-content main :is(.wp-block-image,.wp-block-gallery,.wp-block-cover) {
  margin-block: 1.4rem 2rem;
}
body.nmrpd-formatted-content main figcaption {
  color: var(--nmr-content-muted);
  font-size: .91rem;
  line-height: 1.5;
}
body.nmrpd-formatted-content main :is(.wp-block-table,table) {
  max-width: 100%;
  overflow-x: auto;
}
body.nmrpd-formatted-content main :is(th,td) {
  line-height: 1.52;
  padding: .7em .8em;
}
body.nmrpd-formatted-content main a:not(.wp-block-button__link) {
  text-underline-offset: .17em;
}
body.nmrpd-formatted-content main a:focus-visible,
body.nmrpd-formatted-content main button:focus-visible {
  outline: 3px solid var(--nmr-content-green);
  outline-offset: 3px;
}
/* The coloured opportunity cards need compact headings rather than huge section titles. */
body.nmrpd-formatted-content.page-id-1235 main .wp-block-column :is(.wp-block-group.has-background, .wp-block-stack.has-background) :is(h2,h3) {
  font-size: clamp(1.23rem, 1.8vw, 1.48rem);
  line-height: 1.3;
  margin: 0 0 .6rem;
}
body.nmrpd-formatted-content.page-id-1235 main .wp-block-column :is(.wp-block-group.has-background, .wp-block-stack.has-background) p {
  font-size: 1rem;
  line-height: 1.64;
  margin-bottom: .65rem;
}
body.nmrpd-formatted-content.page-id-1235 main .wp-block-column :is(.wp-block-group.has-background, .wp-block-stack.has-background) {
  padding: clamp(1.2rem, 3vw, 2rem);
  border-radius: 22px;
  min-height: 0;
}
/* Long informational pages look less like uninterrupted walls of text. */
body.nmrpd-formatted-content main :is(.wp-block-group, .wp-block-column) > :is(h2,h3):first-child { margin-top: .1rem; }
body.nmrpd-formatted-content main :is(.wp-block-group, .wp-block-column) > :is(p,ul,ol):last-child { margin-bottom: 0; }
@media (max-width: 782px) {
  body.nmrpd-formatted-content main h1 { margin-bottom: .8rem; }
  body.nmrpd-formatted-content main h2 { margin-block: 1.9rem .65rem; }
  body.nmrpd-formatted-content main h3 { margin-block: 1.25rem .4rem; }
  body.nmrpd-formatted-content main :is(p,li) { line-height: 1.68; }
  body.nmrpd-formatted-content main :is(blockquote,.wp-block-quote):not(.is-style-plain) { padding: .85rem 1rem; }
}
@media print {
  body.nmrpd-formatted-content main :is(h1,h2,h3,h4) { break-after: avoid; }
  body.nmrpd-formatted-content main p { orphans: 3; widows: 3; }
}
