/* Shared flat heroes and section headings. */
.flat-page { --flat-width: 1200px; }
.hardware-page { --flat-width: 1280px; }
.flat-page .flat-hero { padding: calc(var(--gap) + 24px) var(--gap) 12px; }
.flat-page .flat-hero__inner,
.flat-page .band__inner,
.flat-page .emu-intro {
  width: 100%;
  max-width: var(--flat-width);
  margin-inline: auto;
}
.flat-hero__eyebrow { font-size: var(--fs-small); text-transform: uppercase; letter-spacing: 2px; }
.flat-hero h1 { font-size: clamp(64px, 8vw, 100px); line-height: 1; margin: 12px 0; }
.flat-hero__tagline { font: 30px/1.2 var(--font-px); margin: 0 0 12px; text-wrap: pretty; }
.flat-hero__actions { display: flex; gap: 24px; align-items: center; flex-wrap: wrap; margin-top: 24px; }
.flat-page .band { border-bottom: 0; }
.flat-page .band__inner > h2:not(.visually-hidden),
.flat-page .emu-intro > h2,
.flat-page .rel-tl__tag {
  width: fit-content;
  max-width: 100%;
  margin: 0 0 16px;
  font-size: 32px;
  text-align: left;
}
.flat-page .rel-tl { max-width: none; }
/* A directory tree: one root, with a branch to each section link. */
.flat-page .run-toc {
  display: block;
  width: fit-content;
  max-width: 100%;
  margin-top: 24px;
  padding: 0;
  border: 0;
  background: none;
}
.run-page .run-toc__label { display: block; margin-bottom: 12px; }
.run-page .run-toc__root { display: block; font-weight: 600; }
.run-page .run-toc ol {
  display: block;
  width: auto;
  margin: 0 0 0 8px;
}
.run-page .run-toc li { position: relative; padding: 8px 0 8px 28px; }
.run-page .run-toc li::before,
.run-page .run-toc li::after { content: ""; position: absolute; left: 0; }
.run-page .run-toc li::before { top: 0; bottom: 0; border-left: var(--hair) solid var(--ink); }
.run-page .run-toc li:last-child::before { bottom: auto; height: 20px; }
.run-page .run-toc li::after { top: 20px; width: 20px; border-top: var(--hair) solid var(--ink); }
.run-page .run-toc a { display: inline-block; line-height: 24px; }
@media (max-width: 720px) {
  .flat-page .flat-hero { padding: 24px 20px 12px; }
  .flat-page .band { padding-inline: 20px; }
}
