.blog-article {
  width: min(900px, calc(100% - 3rem));
  margin: 0 auto;
  padding: 3.5rem 0 5rem;
}

.blog-article > .breadcrumbs { width: auto; margin: 0 0 2rem; }
.blog-article > h1 {
  font-size: clamp(2.35rem, 5vw, 4.25rem);
  line-height: 1.08;
  letter-spacing: -.04em;
  margin: .5rem 0 1rem;
}
.blog-article > .post-date { color: #607269; margin: 0 0 2rem; }
.blog-hero-image {
  width: 100%;
  max-height: 580px;
  object-fit: cover;
  margin: 0 0 2.5rem;
}
.blog-hero-image[src$="f4f2acdfadd198f8.webp"] {
  object-position: center top;
}
.article-body {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.08rem;
  line-height: 1.85;
  color: #263a31;
}
.article-body > p:first-child {
  font-size: 1.3rem;
  line-height: 1.65;
  color: #0e5c40;
}
.article-body h2 {
  font-family: Montserrat, Arial, sans-serif;
  font-size: clamp(1.55rem, 3vw, 2.15rem);
  line-height: 1.25;
  letter-spacing: -.02em;
  color: #142433;
  margin: 2.7rem 0 .8rem;
}
.article-body p { margin: 0 0 1.25rem; }
.article-body ul { margin: .2rem 0 1.5rem; padding-left: 1.4rem; }
.article-body li { margin: .45rem 0; }
.article-body a { color: #0e5c40; font-weight: 700; }
.article-body > :first-child { margin-top: 0; }
.article-body p:empty,
.article-body figure:empty { display: none; }
.article-body img {
  display: block;
  max-width: 100% !important;
  height: auto !important;
  margin: 2rem auto;
}
.article-body figure { max-width: 100%; margin: 2rem 0; }
.article-body figure img { margin: 0 auto; }
.article-body iframe,
.article-body video { display: block; max-width: 100%; margin: 2rem auto; }
.article-body table {
  display: block;
  width: 100% !important;
  max-width: 100%;
  overflow-x: auto;
}
.article-body::after { content: ""; display: block; clear: both; }

@media (max-width: 620px) {
  .blog-article { width: min(100% - 2rem, 900px); padding-top: 2.5rem; }
  .blog-article > h1 { font-size: 2.25rem; }
  .article-body { font-size: 1rem; }
  .article-body > p:first-child { font-size: 1.15rem; }
}
