/* Scoped to Stories; shared typography, colours and navigation remain unchanged. */
.stories-list { margin-bottom: 5rem; }
.story-card { display: block; padding: 2rem 2.2rem 2.3rem; border: 1px solid var(--hairline); background: rgba(249,246,238,.72); }
.story-card-meta, .story-meta { display: flex; flex-wrap: wrap; gap: .35rem 1.25rem; color: var(--muted); font-size: .85rem; }
.story-card-meta { margin: 0 0 1rem; }
.story-card h2 { margin: 0 0 1rem; font-family: var(--hand); font-weight: 400; font-size: clamp(1.6rem, 3.4vw, 2.5rem); line-height: 1.5; }
.story-card > p:not(.story-card-meta) { margin: 0 0 1.5rem; color: var(--muted); max-width: 48rem; }
.story-card:hover h2 { color: var(--clay); }
.story-card:focus-visible { outline: 2px solid var(--clay); outline-offset: 4px; }
.story-article h1 { font-size: clamp(2rem, 4.8vw, 3.5rem); line-height: 1.4; margin-bottom: 1rem; }
.story-heading { padding-bottom: 1.6rem; margin-bottom: 2.5rem; border-bottom: 1px solid var(--hairline); }
.story-subtitle { color: var(--muted); font-size: 1.05rem; margin: 0 0 1.2rem; }
.story-meta { margin: 0; }
.story-prose { line-height: 1.95; overflow-wrap: break-word; }
.story-prose p { margin-bottom: 1.35rem; }
.story-prose h2 { line-height: 1.5; margin-top: 3rem; }
.story-signature { font-family: var(--hand); font-size: 1.4rem; margin-top: 2rem; text-align: right; }
.story-signature strong { font-weight: 400; }
.story-person-note { border-top: 1px solid var(--hairline); padding: 1.5rem 0 0; margin-top: 2.5rem; color: var(--muted); font-size: .92rem; line-height: 1.85; }
.story-person-note h2 { margin: 0 0 .7rem; font-family: var(--hand); font-weight: 400; font-size: 1.3rem; }
.story-person-note p { margin: 0; }
.story-person-note em { font-style: normal; }
.story-return { margin-top: 2.5rem; }
.story-return .back-link { margin-bottom: 0; }
.story-photo { margin: 2rem 0; }
.story-photo img { width: 100%; height: auto; }
.story-photo figcaption { margin-top: .65rem; font-size: .85rem; color: var(--muted); }
@media (max-width: 580px) {
  .story-card { padding: 1.5rem 1.3rem 1.8rem; }
  .story-article { padding-top: 2.8rem; }
  .story-article h1 { font-size: clamp(1.8rem, 7.8vw, 2.4rem); }
  .story-heading { margin-bottom: 2rem; }
}
