.home-platform-title {
  display: inline-flex;
  align-items: center;
  gap: var(--s3);
  min-height: var(--touch);
}
.home-platform-title svg {
  width: var(--s6);
  height: var(--s6);
}
.home-scope {
  margin-top: var(--s8);
}
.home-scope > p {
  margin-top: var(--s3);
  margin-bottom: var(--s6);
}
.home-steps {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: var(--rule) solid var(--border);
}
.home-steps > li {
  display: grid;
  grid-template-columns: var(--s10) minmax(0, 1fr);
  gap: var(--s7);
  padding-top: var(--s7);
  padding-bottom: var(--s7);
  border-bottom: var(--rule) solid var(--border);
}
.home-step-number {
  color: var(--blue);
  font-family: var(--mono);
  font-size: var(--section);
  line-height: var(--heading-line);
}
.home-steps p {
  max-width: var(--reading);
  line-height: var(--wide);
}
.home-ecology {
  display: grid;
  grid-template-columns: minmax(0, .65fr) minmax(0, 1.5fr);
  align-items: start;
  gap: var(--s8);
}
.home-roles {
  margin: 0;
}
.home-roles dt {
  margin-top: var(--s6);
  color: var(--blue);
  font-weight: var(--bold);
}
.home-roles dd {
  margin: var(--s2) 0 0;
  color: var(--muted);
  line-height: var(--wide);
}
.home-ecology .prose > h3:first-child {
  margin-top: 0;
}
@media (max-width: 900px) {
  .home-ecology {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 640px) {
  .home-steps > li {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--s3);
  }
}