.article-prose { overflow-wrap: anywhere; font-size: 18px; line-height: 2; }
.article-prose > :first-child { margin-block-start: 0; }
.article-prose p { margin: 0 0 1em; }
.article-prose :is(h2, h3, h4, h5, h6) {
  font: 700 1.35em/1.4 var(--display);
  color: #16392e;
  margin: 1.4em 0 .45em;
}
.article-prose h2 { font-size: 1.65em; }
.article-prose :is(ul, ol) { padding-inline-start: 1.6em; margin: .6em 0 1em; }
.article-prose li > :is(ul, ol) { margin-block: .15em .4em; }
.article-prose a { color: #16392e; text-decoration: underline; text-underline-offset: 4px; }
.article-prose blockquote {
  border-inline-start: 3px solid #986038;
  background: #efe6d4;
  padding: .55em 1em;
  margin: 1.25em 0;
}
.article-prose blockquote > :last-child { margin-block-end: 0; }
.article-prose pre { background: #e7ece1; padding: .85em 1em; overflow: auto; line-height: 1.6; }
.article-prose code { font: .84em ui-monospace, Consolas, monospace; background: #e7ece1; padding: .15em .25em; }
.article-prose pre code { padding: 0; }
.article-prose hr { border: 0; border-top: 1px solid #d2ccbd; margin: 1.4em 0; }
.article-table { overflow-x: auto; margin-block: 1.2em; }
.article-table table { width: 100%; min-width: 16rem; border-collapse: collapse; text-align: start; }
.article-table :is(th, td) { text-align: start; border: 1px solid #d2ccbd; padding: .32em .65em; }
.article-table th { background: #e7ece1; font-weight: 700; }
.article-table [data-align="right"] { text-align: right; }
.article-table [data-align="center"] { text-align: center; }
.article-table [data-align="left"] { text-align: left; }
.article-media { margin: 1.4em 0; }
.article-media img { display: block; width: 100%; max-height: 640px; object-fit: contain; }
.article-download a { display: inline-block; padding: 8px 14px; border: 1px solid #16392e; font-weight: 600; }
