.stratum-page {
  --reading-measure: 66ch;
  --reading-gutter: calc(var(--section-label) + 2rem);
}
.stratum-home-link:hover,
.stratum-page a:hover {
  color: var(--orange);
}
.stratum-page a:focus-visible,
.stratum-home-link:focus-visible {
  outline: 1px dotted var(--orange);
  outline-offset: 5px;
}
.stratum-nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  padding: 1.5rem 0 2.5rem;
  color: var(--mute);
  font: 400 .8125rem/1.6 var(--mono);
}
.stratum-nav span {
  padding: .15rem .5rem;
  background: var(--label-paper);
  border-radius: 3px;
  font-size: .75rem;
}
.stratum-masthead {
  padding: 0 0 2.75rem var(--reading-gutter);
}
.stratum-masthead h1 {
  color: var(--ink);
  font: 400 clamp(2.5rem,5vw,3.5rem)/1.1 var(--mono);
  letter-spacing: -.055em;
}
.stratum-subtitle {
  max-width: 40ch;
  margin-top: 1rem;
  font: 400 1.375rem/1.5 var(--serif);
  color: var(--mute);
}
.stratum-section {
  display: grid;
  grid-template-columns: var(--section-label) minmax(0,1fr);
  column-gap: 2rem;
  align-items: baseline;
  padding: 2.5rem 0;
  border-top: 1px solid var(--rule);
}
.stratum-number {
  color: var(--arrow);
  font: 400 .75rem/1.6 var(--mono);
}
.stratum-prose {
  max-width: var(--reading-measure);
  min-width: 0;
  font: 400 1rem/1.85 var(--mono);
  overflow-wrap: break-word;
}
.stratum-prose h2 {
  margin: 0 0 1.5rem;
  color: var(--ink);
  font: 500 1.375rem/1.45 var(--mono);
  letter-spacing: -.035em;
  text-wrap: balance;
}
.stratum-prose p + p {
  margin-top: 1.25rem;
}
.stratum-statement {
  font-weight: 500;
}
.stratum-closing {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 2rem 0 0 var(--reading-gutter);
  border-top: 1px solid var(--rule);
  color: var(--mute);
  font: 400 .875rem/1.75 var(--mono);
}
.stratum-closing a {
  width: fit-content;
  font-size: .8125rem;
}
@media (max-width: 719px) {
  .stratum-page { --reading-gutter: 0px; }
  .stratum-nav { padding: 1.25rem 0 2rem; font-size: .75rem; }
  .stratum-masthead { padding-bottom: 2rem; }
  .stratum-subtitle { font-size: 1.25rem; }
  .stratum-section { grid-template-columns: minmax(0,1fr); gap: .75rem; padding: 1.75rem 0; }
  .stratum-prose { font-size: 1rem; line-height: 1.8; }
  .stratum-prose h2 { font-size: 1.25rem; }
}
@media print {
  html, body { background: #fff; color: #111; }
  body { max-width: none; padding: 12mm; }
  body > header, body > footer, .stratum-nav, .stratum-number, .stratum-closing a { display: none; }
  .stratum-page { --reading-gutter: 0px; --ink: #111; --mute: #444; --rule: #ccc; }
  .stratum-section { display: block; padding: 8mm 0; }
  .stratum-prose { max-width: none; font-size: 10pt; line-height: 1.6; }
  .stratum-prose h2 { break-after: avoid; }
  .stratum-prose p { orphans: 3; widows: 3; }
}
