.plans {
  background: #f0f0f0;
}

.plan-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

.plan {
  min-height: 455px;
  display: flex;
  flex-direction: column;
  padding: 29px;
  background: var(--paper);
  border: 1px solid var(--line);
}

.plan h3 { margin: 0; font-size: 1.6rem; }
.for { margin: 7px 0 24px; color: var(--soft); font-size: .78rem; }
.price { margin: 0; }
.price strong { font: 700 1.5rem 'Playfair Display'; }
.price small { color: var(--soft); font-size: .7rem; }
.plan ul { margin: 14px 0; padding: 17px 0; border-top: 1px solid var(--line); list-style: none; font-size: .79rem; line-height: 2.25; }
.plan li::before { content: '✓'; padding-right: 8px; color: var(--accent); font-weight: bold; }
.outline { margin-top: auto; color: var(--ink); text-align: center; }

.featured { background: var(--ink); border-color: var(--ink); color: #fff; }
.featured .for, .featured .price small { color: #d0d0d0; }
.featured ul { border-color: #555; }
.featured li::before { color: #d0d0d0; }
.tag { margin: 0 0 25px; color: #d0d0d0; font: 500 .65rem 'DM Mono'; letter-spacing: .07em; text-transform: uppercase; }
.light { margin-top: auto; border-color: #fff; background: #fff; color: var(--ink); text-align: center; }

@media (max-width: 760px) {
  .plan-grid { grid-template-columns: 1fr; }
  .plan { min-height: 0; }
}
