.ai-directory {
  padding-top:48px;
  padding-bottom:48px;
}
.ai-intro {
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);
  align-items:center;
  gap:56px;
  padding-top:24px;
  padding-bottom:48px;
}
.ai-intro > *,
.ai-section > * {
  min-width:0;
}
.ai-intro h1 {
  margin-top:20px;
}
.ai-intro__lede {
  max-width:640px;
  margin-top:24px;
  color:var(--ink-soft);
  font-size:var(--text-lede);
}
.ai-intro__actions {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:28px;
}
.ai-checklist {
  background:linear-gradient(145deg,var(--panel),var(--peach));
}
.ai-checklist__bar {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  font-size:var(--text-small);
}
.ai-checklist dl {
  margin-top:24px;
  margin-bottom:24px;
}
.ai-checklist dl > div {
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:20px;
  padding-top:16px;
  padding-bottom:16px;
  border-bottom:1px solid var(--line);
}
.ai-checklist dt {
  color:var(--accent-deep);
  font-weight:var(--weight-bold);
}
.ai-checklist dd {
  min-width:0;
  overflow-wrap:anywhere;
}
.ai-checklist > p:first-of-type {
  font-family:var(--font-mono);
  font-weight:var(--weight-semibold);
}
.ai-checklist > p + p {
  margin-top:8px;
  font-size:var(--text-small);
}
.ai-section {
  display:grid;
  grid-template-columns:minmax(0,.65fr) minmax(0,1.65fr);
  align-items:start;
  gap:48px;
  padding-top:56px;
  padding-bottom:56px;
  border-top:1px solid var(--line);
}
.ai-section__head h2 {
  margin-top:16px;
}
.ai-section__head > p {
  margin-top:16px;
  color:var(--ink-soft);
}
.ai-section__body > :first-child {
  margin-top:0;
}
.ai-section__body > :last-child {
  margin-bottom:0;
}
.ai-section__body .table-note a {
  text-decoration:underline;
  text-underline-offset:.2em;
}
.ai-section__body .callout {
  margin-top:28px;
}
.ai-section__body .callout p {
  margin-block:0;
}
.ai-next {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.ai-next a {
  text-decoration:none;
}
@media (max-width:980px) {
  .ai-intro {
    gap:28px;
    grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);
  }
  .ai-section {
    grid-template-columns:minmax(0,.7fr) minmax(0,1.6fr);
    gap:28px;
  }
}
@media (max-width:768px) {
  .ai-directory {
    padding-top:24px;
    padding-bottom:24px;
  }
  .ai-intro {
    grid-template-columns:minmax(0,1fr);
    padding-top:12px;
    padding-bottom:32px;
  }
  .ai-checklist {
    margin-top:8px;
  }
  .ai-section {
    grid-template-columns:minmax(0,1fr);
    gap:24px;
    padding-top:36px;
    padding-bottom:36px;
  }
  .ai-section__head {
    max-width:600px;
  }
}