.archive-story { padding: clamp(3rem, 6vw, 6rem) var(--gutter) 0; }
.archive-heading { max-width: 68rem; margin-bottom: 3rem; }
.archive-heading > .section-index { margin-top: 3rem; }
.archive-heading > .entry-meta { color: var(--sea); margin-top: 1.2rem; }
.archive-heading h1 { font-size: clamp(3rem, 6.2vw, 6.5rem); max-width: 65rem; }
.archive-heading .lede { max-width: 42rem; }
.archive-cover { margin: 0; max-width: 105rem; }
.archive-cover img { display: block; width: 100%; height: auto; }
.archive-cover figcaption { border-top: 1px solid var(--line); margin-top: .8rem; padding-top: .65rem; font-size: .67rem; letter-spacing: .07em; color: var(--sea); }
.archive-body { max-width: 46rem; margin: 3rem auto 4rem; font: 1.2rem/1.8 var(--serif); }
.archive-body > p:first-child { font-size: 1.45rem; line-height: 1.65; }
.archive-body p { margin: 0 0 1.8rem; }
.archive-source { font: .8rem/1.8 var(--sans); border-top: 1px solid var(--line); padding-top: 1.5rem; }
.archive-source a { text-underline-offset: .3rem; }
.archive-followup { border-block: 1px solid var(--line); padding: 2rem 0; margin: 2.5rem 0; }
.archive-followup h2 { font-size: 2.6rem; margin-bottom: 1rem; }
.archive-followup .entry-meta { font: .68rem/1.6 var(--sans); color: var(--sea); }
.archive-siblings { margin: 0 var(--gutter); padding: 2rem 0 4rem; border-top: 1px solid var(--line); display: flex; flex-direction: column; gap: 1.25rem; }
.archive-siblings a { font: clamp(1.3rem, 2vw, 1.8rem)/1.4 var(--serif); text-decoration-color: var(--brass); text-underline-offset: .3rem; }
@media (max-width: 620px) {
 .archive-body { font-size: 1.1rem; margin-top: 2rem; }
 .archive-body > p:first-child { font-size: 1.25rem; }
 .archive-heading h1 { font-size: clamp(2.7rem, 12vw, 4rem); }
}

.archive-cover .frame-gameplay { max-width: 1304px; margin-inline: auto; }
