/* Single article reading style inspired by the Astero reference. */
body.single-post .post-hero {
  background: #3d2520;
  border-bottom: 0;
  padding-block: clamp(36px, 5vw, 64px);
}
body.single-post .post-hero__content { text-align: left; }
body.single-post .post-hero__title {
  max-width: 25ch;
  margin: 16px 0 0;
  color: #fffaf5;
  font-family: var(--bs-body-font-family);
  font-size: clamp(30px, 3.6vw, 46px);
  font-weight: 600;
  line-height: 1.16;
  letter-spacing: -0.025em;
  overflow-wrap: anywhere;
}
body.single-post .post-hero .section-eyebrow {
  display: inline-flex;
  padding: 4px 9px;
  color: #fff3e8;
  border: 1px solid #c7987f;
  border-radius: 6px;
  line-height: 1.4;
}
body.single-post .post-hero__summary,
body.single-post .post-hero__meta { color: #f3e2d7; }
body.single-post .post-hero__summary {
  max-width: 58ch;
  margin: 20px 0 0;
  font-size: clamp(16px, 1.2vw, 18px);
  line-height: 1.65;
}
body.single-post .post-hero__meta {
  justify-content: flex-start;
  margin-top: 20px;
  font-size: 13px;
}
body.single-post .post-hero__meta a { color: #fffaf5; }
body.single-post .post-prose {
  font-family: var(--bs-body-font-family);
  font-size: 16px;
  line-height: 1.8;
  overflow-wrap: anywhere;
}
body.single-post .post-prose :is(h1,h2,h3,h4) {
  max-width: none;
  font-family: var(--bs-body-font-family);
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.02em;
  text-align: left !important;
  overflow-wrap: anywhere;
  margin: 1.7em 0 0.65em;
}
body.single-post .post-prose h1 { font-size: clamp(30px, 2.8vw, 34px); }
body.single-post .post-prose h2 { font-size: clamp(26px, 2.3vw, 30px); }
body.single-post .post-prose h3 { font-size: clamp(22px, 1.9vw, 25px); }
body.single-post .post-prose h4 { font-size: clamp(19px, 1.6vw, 21px); }
body.single-post .post-prose :is(h1,h2,h3,h4) :is(span,strong,em) {
  font-size: inherit !important;
  line-height: inherit;
}
body.single-post .post-prose :is(h1,h2,h3,h4) { scroll-margin-top: 5.5rem; }
body.single-post .post-prose img { max-width: 100%; height: auto; }
@media (max-width: 575px) {
  body.single-post .post-prose { font-size: 15px; line-height: 1.75; }
  body.single-post .post-prose img.alignright,
  body.single-post .post-prose img.alignleft {
    float: none !important;
    display: block;
    margin: 0 auto 1rem !important;
  }
}