/* Shared reading rhythm for editorial articles. */
.single-post .article-body.prose {
    --lcs-reading-ink: #293b38;
    font-size: 18px;
    line-height: 1.7;
}
.single-post .article-body.prose > p,
.single-post .article-body.prose > ul > li,
.single-post .article-body.prose > ol > li,
.single-post .article-body.prose > section > p:not([class]),
.single-post .article-body.prose > section > ul > li,
.single-post .article-body.prose > section > ol > li {
    color: var(--lcs-reading-ink);
    font-size: 18px;
    line-height: 1.7;
}
.single-post .article-body.prose > p { margin-block: 0 20px; }
.single-post .article-body.prose > .lcs-article-lead {
    font: 500 20px/1.65 var(--sans) !important;
    color: var(--lcs-reading-ink) !important;
    margin-bottom: 30px;
}
.single-post .article-body.prose > h2 {
    font: 600 clamp(30px, 3.5vw, 40px)/1.2 Georgia, serif;
    color: #194a40;
    margin-block: 48px 18px;
}
.single-post .article-body.prose > h3 {
    font: 600 clamp(25px, 2.8vw, 30px)/1.25 Georgia, serif;
    color: #194a40;
    margin-block: 30px 16px;
}
.single-post .article-body.prose > p.eyebrow {
    width: fit-content;
    font: italic 700 clamp(22px, 2.3vw, 26px)/1.3 Georgia, serif;
    text-transform: none;
    letter-spacing: -.025em;
    color: #782638;
}

/* Justify prose on desktop, where lines have enough room. */
@media (min-width: 901px) {
    .single-post .article-body.prose > p:not(.eyebrow),
    .single-post .article-body.prose > section > p:not([class]) {
        text-align: justify;
        text-align-last: left;
        hyphens: auto;
        -webkit-hyphens: auto;
        overflow-wrap: break-word;
    }
}

/* Use the hero's outer edges as the desktop article grid. */
@media (min-width: 901px) {
    .single-post .article-shell > .article-hero.container,
    .single-post .article-shell > .article-body.prose {
        width: var(--container);
        max-width: 1180px;
        margin-inline: auto;
    }
    .single-post .article-shell > .article-body.prose > :is(section, nav, aside, div, figure, blockquote) {
        box-sizing: border-box;
        width: 100%;
        max-width: none;
        margin-inline: 0;
    }
}
