.business-grid {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-auto-rows: 1fr;
  gap: 18px;
}

.business-card {
  min-height: 350px;
  padding: 22px;
  border-radius: 30px;
}

/* Four cards above three wider cards, with both rows filling the same width. */
.business-card:nth-child(-n+4) { grid-column: span 3; }
.business-card:nth-child(n+5) { grid-column: span 4; }
.business-card:nth-child(7) { animation-delay: 580ms; }
.business-card.is-xixi { --card-accent: #16483f; }

.business-card .card-number {
  font-size: 10px;
  line-height: 1.4;
  letter-spacing: 0.12em;
}

.business-card .logo-stage {
  height: 60px;
  margin: 14px 0 16px;
}

.business-card .logo-stage img { max-height: 58px; }
.business-card.is-qingyi .logo-stage img { width: 50px; height: 50px; }
.business-card.is-engineseek .logo-stage img { max-height: 50px; }
.business-card.is-xixi .logo-stage img { width: 58px; height: 58px; }

.business-card h3 { font-size: 22px; line-height: 1.3; }
.business-card p { margin: 12px 0 20px; font-size: 14px; line-height: 1.65; }
.business-card .card-action {
  min-height: 46px;
  padding: 7px 14px;
  border-radius: 16px;
  font-size: 13px;
  line-height: 1.4;
}
.business-card .card-action::after { flex-shrink: 0; margin-left: 8px; font-size: 17px; }

@media (max-width: 1179px) and (min-width: 761px) {
  .business-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .business-grid > .business-card:nth-child(n) { grid-column: span 2; }
}

@media (max-width: 760px) {
  .business-grid { grid-template-columns: minmax(0, 1fr); grid-auto-rows: auto; gap: 16px; }
  .business-grid > .business-card:nth-child(n) {
    grid-column: auto;
    min-height: 320px;
    padding: 24px;
    border-radius: 28px;
  }
}
