/* Rich content keeps the site's existing typography and chapter layouts. */
.content-status { grid-column: 1 / -1; padding: 2rem; text-align: center; line-height: 1.6; }
.content-status button { min-height: 44px; padding: .5rem 1rem; font: inherit; cursor: pointer; }
.content-status a { color: inherit; text-decoration: underline; }
[hidden] { display: none !important; }
.stories-heading h3, .story-card h3, .masthead-title-wrap h1 { overflow-wrap: anywhere; }
.stories-deck { white-space: pre-line; }
.chapter-copy img, .article-intro img { max-width: 100%; height: auto; border-radius: 16px; }
.chapter-copy a, .article-intro a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.chapter-copy ul, .chapter-copy ol, .article-intro ul, .article-intro ol { padding-left: 1.5em; line-height: 1.7; }
.chapter-copy li + li { margin-top: .4em; }
.chapter-copy pre, .article-intro pre { overflow-x: auto; white-space: pre-wrap; overflow-wrap: anywhere; }
.chapter-copy table, .article-intro table { display: block; max-width: 100%; overflow-x: auto; }
.chapter-copy th, .chapter-copy td { padding: .5em; }
.chapter:not(:has(.chapter-photo)) { display: block; }
.chapter:not(:has(.chapter-photo)) .chapter-copy { max-width: 780px; margin-inline: auto; }
.article-intro:empty { display: none; }
.hero-figure figcaption:empty { display: none; }
.article-intro > p:first-child::first-letter { float: left; margin: .06em .12em 0 0; color: var(--accent, #ad321c); font: 400 3.8em/.8 var(--display, "Cormorant Garamond", Georgia, serif); }
.chapter, .chapter-copy, .article-intro { overflow-wrap: anywhere; }

/* Personalization is scoped to the current article. */
article[data-text-style="journal"] .article-intro,
article[data-text-style="journal"] .chapter-copy,
article[data-text-style="journal"] .story-conclusion { font-family: var(--display); font-size: 23px; line-height: 1.65; }
article[data-drop-cap="false"] .article-intro > p:first-child::first-letter { float: none; margin: 0; font: inherit; color: inherit; }
article[data-cover-format="landscape"] .hero-figure img { height: auto; aspect-ratio: 16 / 9; }
article[data-cover-format="natural"] .hero-figure img { height: auto; min-height: 0; object-fit: contain; }
.story-facts, .story-contents { width: min(calc(100% - 48px), 930px); margin: 40px auto; }
.story-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; border-block: 1px solid var(--line); padding-block: 22px; }
.story-facts dt { color: var(--forest-soft); font-size: 12px; }
.story-facts dd { margin: 5px 0 0; font-size: 16px; color: var(--forest); overflow-wrap: anywhere; }
.story-contents h2, .story-gallery h2, .story-conclusion h2 { color: var(--forest); font: 500 36px/1.1 var(--display); margin: 0 0 22px; }
.story-contents ol { padding-left: 24px; }
.story-contents li + li { margin-top: 8px; }
.story-contents a { text-decoration: underline; text-underline-offset: 4px; }
.chapter-copy h2 { scroll-margin-top: 100px; }
.chapter-wide { display: block; }
.chapter-wide .chapter-copy { max-width: 780px; margin-inline: auto; }
.chapter-wide .chapter-photo { margin-top: 32px; }
.chapter-photo[data-photo-format="landscape"] img { height: auto; aspect-ratio: 16 / 9; }
.chapter-photo[data-photo-format="portrait"] img { height: auto; aspect-ratio: 3 / 4; }
.chapter-photo[data-photo-format="square"] img { height: auto; aspect-ratio: 1; }
.chapter-photo[data-photo-format="natural"] img { height: auto; aspect-ratio: auto; min-height: 0; max-height: none; object-fit: contain; }
.chapter blockquote { color: var(--clay); font: italic 500 30px/1.3 var(--display); }
.story-gallery { width: min(100%, 1180px); margin-inline: auto; }
.story-gallery-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
.story-gallery figure { margin: 0; }
.story-gallery button { display: block; padding: 0; width: 100%; background: transparent; border: 0; border-radius: 12px; cursor: zoom-in; }
.story-gallery img { aspect-ratio: 4 / 3; object-fit: cover; border-radius: 12px; }
.story-conclusion { max-width: 780px; margin-inline: auto; line-height: 1.7; }
.story-conclusion a { text-decoration: underline; text-underline-offset: 4px; }
.story-conclusion img { max-width: 100%; height: auto; border-radius: 12px; }
.story-photo-viewer { width: min(calc(100% - 32px), 1100px); max-height: calc(100dvh - 32px); padding: 24px; border: 0; border-radius: 14px; background: var(--paper); color: var(--forest); }
.story-photo-viewer::backdrop { background: #182a22e6; }
.story-photo-viewer figure { margin: 18px 0; }
.story-photo-viewer img { width: 100%; height: min(66dvh, 720px); object-fit: contain; }
.story-photo-viewer button { min-height: 44px; padding: 10px 16px; background: transparent; border: 1px solid var(--forest); border-radius: 8px; color: inherit; cursor: pointer; }
.story-photo-viewer button:hover { background: var(--paper-deep); }
.photo-close { display: block; margin-left: auto; }
.photo-navigation { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
@media (max-width: 680px) {
  .story-facts, .story-contents { width: calc(100% - 36px); }
  .story-facts { grid-template-columns: 1fr; gap: 16px; }
  .story-gallery-grid { grid-template-columns: 1fr; }
  article[data-text-style="journal"] .article-intro, article[data-text-style="journal"] .chapter-copy, article[data-text-style="journal"] .story-conclusion { font-size: 21px; }
  .story-photo-viewer { padding: 16px; }
  .photo-navigation { flex-wrap: wrap; justify-content: center; }
  .photo-navigation span { order: -1; width: 100%; text-align: center; }
}
