/* Partners: uneven 3-card row, then process | benefits diptych. */
.partner-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-md); }
.partner-card {
  padding: 1.5rem;
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-line);
  background: var(--color-surface);
}
.partner-card:first-child { background: var(--color-periwinkle); border-color: transparent; }
.partner-card__title { display: flex; align-items: center; gap: 0.6rem; font-size: var(--text-xl); }
.partner-card__title .icon { color: var(--color-accent); flex: none; }
.partner-card__desc { margin-top: var(--space-sm); font-size: var(--text-sm); color: var(--color-ink-2); }

.partner-split { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-2xl); }
.partner-split__title { font-size: var(--text-2xl); margin-bottom: var(--space-lg); }
.steps { display: grid; }
.step {
  display: grid; grid-template-columns: 3rem minmax(0, 1fr); gap: var(--space-md);
  padding-block: var(--space-md);
  border-top: 1px solid var(--color-line);
}
.step:last-child { border-bottom: 1px solid var(--color-line); }
.step__num { font-family: var(--font-display); font-weight: 700; color: var(--color-accent); font-variant-numeric: tabular-nums; padding-top: 0.15rem; }
.step__title { font-size: var(--text-lg); }
.step__desc { margin-top: 0.25rem; font-size: var(--text-sm); color: var(--color-ink-2); }
.partner-benefits {
  display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-lg);
  padding: clamp(1.5rem, 3vw, 2.5rem);
  border-radius: var(--radius-xl);
  background: var(--color-paper-2);
  border: 1px solid var(--color-line);
}
.partner-benefits .partner-split__title { margin-bottom: 0; }

@media (min-width: 48rem) {
  .partner-grid { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-lg); }
}
@media (min-width: 64rem) {
  .partner-split { grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr); gap: var(--space-3xl); align-items: start; }
}
