.ai-intro{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);
  align-items:center;
  gap:56px;
  padding-bottom:64px;
}
.ai-intro>*{min-width:0}
.ai-intro h1{margin-top:16px}
.ai-entry-note{
  margin-top:20px;
  margin-bottom:0;
  max-width:560px;
  font-size:var(--fs-sm);
}
.ai-route>p{font-size:var(--fs-sm)}
.ai-stops{
  list-style:none;
  padding:0;
  margin:28px 0;
}
.ai-stops li{
  position:relative;
  padding-left:28px;
  padding-bottom:24px;
}
.ai-stops li:last-child{padding-bottom:0}
.ai-stops li::before{
  content:"";
  position:absolute;
  left:0;
  top:9px;
  width:9px;
  height:9px;
  border-radius:var(--r-circle);
  background:var(--accent);
  box-shadow:0 0 0 4px var(--tint-10);
}
.ai-stops li:not(:last-child)::after{
  content:"";
  position:absolute;
  left:4px;
  top:22px;
  bottom:4px;
  width:1px;
  background:linear-gradient(var(--accent),var(--lilac));
}
.ai-stops strong,.ai-stops span{display:block}
.ai-stops strong{font-weight:var(--weight-semibold)}
.ai-stops span{color:var(--text-muted);font-size:var(--fs-sm)}
.ai-page>.section{padding-top:40px;padding-bottom:40px}
.ai-page>.prose>h2:first-child{margin-top:0}
@media(max-width:900px){
  .ai-intro{grid-template-columns:minmax(0,1fr);gap:32px}
}
@media(max-width:640px){
  .ai-intro{padding-bottom:40px}
  .ai-page>.section{padding-top:28px;padding-bottom:28px}
}