:root{
  --nodes-lead-space:72px;
  --nodes-copy-width:760px;
  --nodes-chapter-space:64px;
  --nodes-heading-width:260px;
  --nodes-use-gap:40px;
}
.nodes-lead{
  padding-top:var(--nodes-lead-space);
  padding-bottom:var(--nodes-lead-space);
  text-align:center;
  background:linear-gradient(180deg,var(--fir-wash),var(--groove-soft)),linear-gradient(180deg,var(--wash-top),var(--wash-bottom));
  border-bottom:1px solid var(--border);
}
.nodes-lead h1{
  margin:24px auto;
  max-width:var(--nodes-copy-width);
}
.nodes-summary{
  max-width:var(--nodes-copy-width);
  margin-inline:auto;
  color:var(--muted);
  line-height:1.9;
}
.nodes-facts{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:12px;
  margin-top:24px;
}
.nodes-lead .cta-row{
  justify-content:center;
}
.nodes-account{
  max-width:var(--nodes-copy-width);
  margin:24px auto 0;
  font-size:var(--fs-small);
  line-height:1.9;
}
.nodes-document{
  min-width:0;
}
.nodes-chapter{
  padding-top:var(--nodes-chapter-space);
}
.nodes-table-tip{
  margin-bottom:16px;
  font-size:var(--fs-small);
  line-height:1.8;
}
.nodes-caption{
  padding:16px 20px;
  text-align:left;
  font-family:var(--f-mono);
  font-size:var(--fs-small);
  color:var(--muted);
  background:var(--panel);
}
.nodes-reading{
  margin-top:32px;
}
.nodes-type-heading{
  margin-bottom:20px;
}
.nodes-type-heading h3{
  margin:16px 0 0;
}
.nodes-type .prose{
  max-width:none;
}
.nodes-type .prose p:last-child{
  margin-bottom:0;
}
.nodes-use-list{
  display:grid;
  gap:var(--nodes-use-gap);
}
.nodes-use{
  display:grid;
  grid-template-columns:minmax(0,var(--nodes-heading-width)) minmax(0,1fr);
  gap:var(--nodes-use-gap);
  padding-top:28px;
  border-top:1px solid var(--border);
}
.nodes-use>*{
  min-width:0;
}
.nodes-use h3{
  margin:0;
  color:var(--accent);
}
.nodes-use .prose p:first-child{
  margin-top:0;
}
.nodes-use .prose p:last-child{
  margin-bottom:0;
}
.nodes-chapter .callout a{
  color:var(--accent);
  text-underline-offset:4px;
}
@media(max-width:768px){
  :root{
    --nodes-lead-space:48px;
    --nodes-chapter-space:48px;
    --nodes-use-gap:24px;
  }
  .nodes-use{
    grid-template-columns:minmax(0,1fr);
  }
}
@media(max-width:640px){
  .nodes-caption{
    padding-inline:16px;
  }
  .nodes-lead .cta-row{
    gap:10px;
  }
  .nodes-lead .btn{
    padding-inline:20px;
  }
}