body {
  background: var(--st-color-background);
  color: var(--st-color-text);
  font-family: var(--st-font-body);
  font-size: 17px;
  line-height: 1.7;
}

.site-container,
.site-header-row-layout-contained,
.site-footer-row-layout-contained {
  max-width: var(--st-content-width);
}

.content-width-narrow .entry-content {
  max-width: var(--st-reading-width);
  margin-inline: auto;
}

.entry-content p {
  margin-block: 0 1.25em;
}

.entry-content h1,
.entry-content h2,
.entry-content h3 {
  color: var(--st-color-heading);
  font-family: var(--st-font-heading);
  font-weight: 700;
  line-height: 1.2;
}

.entry-content h1 {
  font-size: clamp(32px, 5vw, 46px);
}

.entry-content h2 {
  font-size: clamp(24px, 3vw, 30px);
  margin-block: 1.75em .65em;
}

.entry-content h3 {
  font-size: clamp(20px, 2.4vw, 24px);
  margin-block: 1.5em .55em;
}

.entry-content a:not(.button):not(.cta-button):not(.wp-block-button__link) {
  color: var(--st-color-link);
  text-decoration-line: underline;
  text-decoration-color: rgba(31, 92, 69, .35);
  text-underline-offset: 2px;
}

.entry-content a:not(.button):not(.cta-button):not(.wp-block-button__link):hover {
  color: var(--st-color-accent-hover);
  text-decoration-color: currentColor;
}

:focus-visible {
  outline: 2px solid var(--st-color-accent);
  outline-offset: 2px;
}

.entry-content img {
  max-width: 100%;
  height: auto;
  border-radius: var(--st-radius-sm);
}

.entry-content ul,
.entry-content ol {
  margin-block: 0 1.25em;
  padding-inline-start: 1.35em;
}

.entry-content li + li {
  margin-top: var(--st-space-2);
}

@media (max-width: 767px) {
  .entry-content h1 {
    font-size: clamp(32px, 9vw, 38px);
  }
}
