/* Aeolus (episode 7) — period-newspaper setting. No invented copy: only
   the text already on the page is restyled. The standard episode header
   becomes a front-page nameplate, the all-caps interpolations become
   crossheads, and the body is set as dense justified newsprint in two
   ruled columns. Scoped by the article's data-episode attribute; theme
   tokens keep light and dark modes working. */

/* Nameplate — the regular episode header dressed as a 1900s front page:
   thin rule, small letterspaced kicker, the title huge in caps, closed
   off by a thick-thin double rule. */
[data-episode="07-aeolus"] .episode-header {
  text-align: center;
  margin-bottom: 1.6rem;
  border-top: 1px solid var(--color-ink-soft);
  border-bottom: 4px double var(--color-ink-soft);
}
[data-episode="07-aeolus"] .episode-part {
  border-bottom: 1px solid var(--color-rule);
  padding: 0.35rem 0;
  margin: 0;
  letter-spacing: 0.2em;
}
[data-episode="07-aeolus"] .episode-title {
  font-weight: 600;
  font-size: clamp(2.4rem, 8vw, 3.4rem);
  line-height: 1.1;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin: 0.8rem 0 0.5rem;
}

/* Body copy — newsprint: smaller and tighter than the reading default,
   justified and hyphenated, indents instead of paragraph spacing. */
[data-episode="07-aeolus"] .episode-body {
  font-size: 0.93em;
  line-height: 1.5;
}
[data-episode="07-aeolus"] .episode-body p {
  text-align: justify;
  hyphens: auto;
  text-indent: 1.3em;
  margin: 0;
}
/* The opening paragraph under each crosshead is set full-out, newspaper
   style. Dialogue lines keep the indent — in a dense justified column the
   dashes need it to read as separate lines. */
[data-episode="07-aeolus"] .episode-body .aeolus-headline + p {
  text-indent: 0;
}

/* Each story (headline + its prose, grouped at build time) is its own
   two-column unit: the headline spans both columns, the prose balances
   in two short columns beneath it, then the next story follows. Reading
   order stays local to a story — never a chapter-length column. The
   62ch measure splits into ~29ch columns, about real broadsheet width. */
@media (min-width: 720px) {
  [data-episode="07-aeolus"] .aeolus-story {
    columns: 2;
    column-gap: 2.4rem;
    column-rule: 1px solid var(--color-rule);
    orphans: 2;
    widows: 2;
  }
  /* Gabler page markers hang in each paragraph's right margin, which in
     a multicol layout is the column gap — they'd collide with the rule
     and the second column. Fall back to a single column while the page
     numbers toggle is on. */
  [data-pagenumbers="on"] [data-episode="07-aeolus"] .aeolus-story {
    columns: auto;
    column-rule: none;
  }
}

/* Crossheads */
[data-episode="07-aeolus"] .episode-body .aeolus-headline {
  column-span: all;
  font-weight: 600;
  font-size: 1.02rem;
  line-height: 1.3;
  letter-spacing: 0.05em;
  text-align: center;
  text-indent: 0;
  hyphens: none;
  margin: 1.7em 0 0.7em;
  color: var(--color-ink);
}
[data-episode="07-aeolus"] .episode-body .aeolus-headline::before {
  content: "";
  display: block;
  width: 4.5rem;
  border-top: 1px solid var(--color-ink-soft);
  margin: 0 auto 0.7em;
}
[data-episode="07-aeolus"] .episode-body .aeolus-story:first-of-type .aeolus-headline {
  margin-top: 0;
}
[data-episode="07-aeolus"] .episode-body .aeolus-story:first-of-type .aeolus-headline::before {
  display: none;
}
