.nodes-document{
  min-width:0;
}
.nodes-intro{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);
  gap:var(--space-8);
  align-items:center;
  background:linear-gradient(180deg,var(--paper-top),var(--bg));
}
.nodes-intro-copy{
  min-width:0;
}
.nodes-intro h1{
  margin-top:var(--space-3);
  color:var(--accent);
}
.nodes-lead{
  margin-top:var(--space-3);
  max-width:48ch;
  font-size:var(--size-h3);
  color:var(--text-muted);
}
.nodes-facts{
  min-width:0;
}
.nodes-facts dl{
  margin:var(--space-3) 0;
}
.nodes-facts dl>div{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  justify-content:space-between;
  gap:var(--space-1) var(--space-2);
  padding-block:var(--space-2);
  border-bottom:1px solid var(--border);
}
.nodes-facts dt{
  color:var(--text-muted);
  font-size:var(--size-small);
}
.nodes-facts dd{
  margin:0;
  font-family:var(--font-mono);
}
.nodes-facts>p:last-child{
  font-size:var(--size-small);
}
.nodes-reading-notes{
  margin-top:var(--space-3);
}
.nodes-followup{
  margin-top:var(--space-3);
  max-width:85ch;
}
.nodes-type-list{
  display:grid;
  gap:var(--space-3);
}
.nodes-type{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,3fr);
  gap:var(--space-5);
  padding:var(--space-4);
}
.nodes-type-heading{
  min-width:0;
}
.nodes-type-heading h3{
  margin-top:var(--space-2);
}
.nodes-type .stack{
  min-width:0;
  max-width:88ch;
}
.nodes-use-list{
  border-top:1px solid var(--border);
}
.nodes-use{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,3fr);
  gap:var(--space-5);
  padding-block:var(--space-4);
  border-bottom:1px solid var(--border);
}
.nodes-use h3{
  color:var(--accent);
}
.nodes-use .stack{
  min-width:0;
  max-width:88ch;
}
.nodes-closing{
  margin-top:var(--space-4);
}
.nodes-closing p{
  margin-top:var(--space-2);
  max-width:100ch;
}
.nodes-closing>a{
  display:inline-flex;
  align-items:center;
  gap:var(--space-2);
  min-height:var(--space-4);
  margin-top:var(--space-2);
}
@media(max-width:1024px){
  .nodes-intro{
    grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);
    gap:var(--space-4);
  }
  .nodes-type,.nodes-use{
    grid-template-columns:minmax(0,1fr) minmax(0,2.5fr);
    gap:var(--space-3);
  }
}
@media(max-width:768px){
  .nodes-intro{
    grid-template-columns:minmax(0,1fr);
  }
  .nodes-lead{
    font-size:var(--size-body);
  }
  .nodes-type,.nodes-use{
    grid-template-columns:minmax(0,1fr);
    gap:var(--space-3);
  }
  .nodes-type{
    padding:var(--space-3);
  }
}