@layer pages {
  .org {
    margin-block: var(--space-16);
    border-top: 1px solid var(--color-border-subtle);
    padding-top: var(--space-8);
  }

  .org:first-of-type {
    margin-top: var(--space-12);
  }

  .org-head {
    margin-bottom: var(--space-6);
  }

  .org-meta {
    font-family: var(--font-mono);
    font-size: var(--text-xs);
    color: var(--color-fg-subtle);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-bottom: var(--space-2);
  }

  .org-head h2 {
    font-size: var(--text-xl);
    font-weight: 600;
    letter-spacing: -0.01em;
    line-height: var(--leading-tight);
  }

  .org-sub {
    margin-top: var(--space-3);
    color: var(--color-fg-muted);
    font-size: var(--text-md);
    line-height: var(--leading-relaxed);
    max-width: 60ch;
  }

  .org > p {
    line-height: var(--leading-relaxed);
    max-width: 64ch;
    margin-block: var(--space-4);
    font-size: var(--text-md);
  }

  .org > p:last-child {
    margin-bottom: 0;
  }

  .org > p strong {
    color: var(--color-fg);
    font-weight: 600;
  }

  .org { scroll-margin-top: var(--space-8); }

  .chapter-rail {
    grid-row: 2 / -1;
    align-self: start;
    position: sticky;
    top: var(--space-12);
    padding-left: var(--space-8);
    margin: 0;
  }

  .chapter-rail ol {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: var(--space-3);
    border-left: 1px solid var(--color-border-subtle);
    padding-left: var(--space-4);
  }

  .chapter-rail a {
    display: grid;
    gap: 2px;
    color: var(--color-fg-muted);
    text-decoration: none;
    padding-block: var(--space-1);
    line-height: var(--leading-tight);
  }

  .chapter-rail a:hover { color: var(--color-fg); }

  .chapter-rail .rail-year {
    font-family: var(--font-mono);
    font-size: var(--text-xs);
    color: var(--color-fg-subtle);
    letter-spacing: 0.06em;
  }

  .chapter-rail .rail-label {
    font-size: var(--text-sm);
  }

  @media (max-width: 1100px) {
    .chapter-rail { display: none; }
  }
}
