.nodes-document {
  min-width:0;
}
.nodes-intro {
  position:relative;
  padding-top:12px;
  padding-bottom:32px;
  border-bottom:1px solid var(--border);
}
.nodes-intro h1 {
  max-width:16em;
  margin-top:24px;
}
.nodes-lead {
  max-width:46em;
  font-size:18px;
  line-height:1.8;
  color:var(--text-muted);
}
.nodes-fact-row {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}
.nodes-intro-note {
  max-width:50em;
  margin-top:20px;
  margin-bottom:0;
}
.nodes-section-copy {
  max-width:var(--reading-w);
}
.nodes-section-copy p,
.nodes-route-notes p,
.nodes-use-list p {
  line-height:1.85;
}
.nodes-section-copy p {
  color:var(--text-muted);
}
.nodes-document > section[id] {
  border-bottom:1px solid var(--border);
}
.nodes-document > section[id]:last-child {
  border-bottom:0;
  padding-bottom:16px;
}
.nodes-table-hint {
  margin-top:24px;
  font-size:14px;
  line-height:1.7;
}
.nodes-route-notes {
  display:grid;
  gap:24px;
  margin-top:28px;
}
.nodes-route-notes .panel {
  display:grid;
  grid-template-columns:minmax(140px,180px) minmax(0,1fr);
  column-gap:32px;
  align-items:start;
}
.nodes-route-notes .tag {
  justify-self:start;
  grid-column:1;
}
.nodes-route-notes h3 {
  grid-column:1;
  grid-row:2;
  margin-top:16px;
}
.nodes-route-notes p {
  grid-column:2;
  min-width:0;
}
.nodes-route-notes .tag + h3 + p {
  grid-row:1 / span 2;
}
.nodes-route-notes p:last-child {
  margin-bottom:0;
}
.nodes-use-list {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
  margin-top:28px;
}
.nodes-use-list > * {
  min-width:0;
}
.nodes-use-list article:last-child {
  grid-column:1 / -1;
}
.nodes-use-list p {
  margin-bottom:0;
  color:var(--text-muted);
}
.nodes-use-list a,
.nodes-section-copy a {
  color:var(--accent-dark);
}
.nodes-link-row {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:28px;
}
@media (max-width:768px) {
  .nodes-route-notes .panel {
    grid-template-columns:minmax(0,1fr);
  }
  .nodes-route-notes .tag,
  .nodes-route-notes h3,
  .nodes-route-notes p,
  .nodes-route-notes .tag + h3 + p {
    grid-column:auto;
    grid-row:auto;
  }
  .nodes-use-list {
    grid-template-columns:minmax(0,1fr);
  }
  .nodes-use-list article:last-child {
    grid-column:auto;
  }
}
@media (max-width:640px) {
  .nodes-intro {
    padding-top:0;
    padding-bottom:24px;
  }
  .nodes-lead {
    font-size:17px;
  }
  .nodes-route-notes,
  .nodes-use-list {
    gap:16px;
  }
  .nodes-link-row {
    gap:10px;
  }
}