.nodes-heading{
  position:relative;
  padding-top:64px;
  padding-bottom:48px;
}
.nodes-heading h1{
  max-width:100%;
  margin:24px 0;
}
.nodes-lead{
  max-width:760px;
  color:var(--text-muted);
  font-size:var(--size-h3);
  line-height:1.7;
}
.nodes-heading-note{
  max-width:720px;
  margin:24px 0 0;
  font-size:var(--size-small);
}
.nodes-type-list{
  display:grid;
  gap:24px;
}
.nodes-type{
  display:grid;
  grid-template-columns:minmax(0,220px) minmax(0,1fr);
  gap:40px;
}
.nodes-type>*{
  min-width:0;
}
.nodes-type-label h3{
  margin:18px 0 12px;
}
.nodes-type-label p{
  font-size:var(--size-small);
}
.nodes-type .prose p:last-child{
  margin-bottom:0;
}
.nodes-advice{
  display:grid;
  gap:0;
  border-top:1px solid var(--border);
}
.nodes-advice-item{
  display:grid;
  grid-template-columns:minmax(0,280px) minmax(0,1fr);
  gap:40px;
  padding-top:32px;
  padding-bottom:32px;
  border-bottom:1px solid var(--border);
}
.nodes-advice-item>*{
  min-width:0;
}
.nodes-advice-item h3{
  margin:0;
}
.nodes-advice-item p:last-child{
  margin-bottom:0;
}
.nodes-heading + section{
  padding-top:32px;
}
#route-directory{
  scroll-margin-top:var(--anchor-offset);
}
.callout a,
.faq-item a{
  color:var(--accent-dark);
  text-decoration:underline;
  text-underline-offset:3px;
}
@media(max-width:768px){
  .nodes-heading{
    padding-top:40px;
    padding-bottom:32px;
  }
  .nodes-lead{
    font-size:var(--size-body);
  }
  .nodes-type,
  .nodes-advice-item{
    grid-template-columns:minmax(0,1fr);
    gap:20px;
  }
  .nodes-type-label p{
    margin-bottom:0;
  }
  .nodes-advice-item{
    padding-top:28px;
    padding-bottom:28px;
  }
}