/* Pricing and comparison pages. */
.pricing-hero {
  grid-template-columns: minmax(0, 760px);
}
.pricing-hero .small-note {
  margin-top: 24px;
}
.pricing-plans {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
  gap: 24px;
  padding-bottom: 0;
}
.plan-card {
  display: flex;
  flex-direction: column;
  padding: 36px 32px;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 8px;
}
.plan-card h2 {
  font-size: clamp(1.75rem, 2.4vw, 2.25rem);
}
.plan-summary {
  margin: 12px 0 28px;
  font-size: var(--text-support);
  line-height: 1.6;
  color: var(--muted);
}
.plan-price {
  margin: 0;
  font-size: var(--text-support);
  color: var(--muted);
}
.plan-price b {
  font-family: Manrope, sans-serif;
  font-size: clamp(2.5rem, 3.4vw, 3.25rem);
  font-weight: 650;
  letter-spacing: -0.04em;
  color: var(--ink);
}
.plan-yearly {
  margin: 8px 0 24px;
  font-size: var(--text-support);
}
.plan-card ul {
  margin: auto 0 0;
  padding: 24px 0 0 20px;
  border-top: 1px solid var(--line);
  font-size: var(--text-support);
  line-height: 1.9;
}
.pricing-table-section h2 {
  font-size: clamp(1.75rem, 2.8vw, 2.5rem);
  margin-bottom: 32px;
}
.table-scroll {
  overflow-x: auto;
}
.pricing-table {
  width: 100%;
  min-width: 560px;
  border-collapse: collapse;
  font-size: var(--text-support);
}
.pricing-table caption {
  text-align: left;
  color: var(--muted);
  font-size: var(--text-caption);
  padding-bottom: 12px;
}
.pricing-table th,
.pricing-table td {
  text-align: left;
  padding: 16px 16px 16px 0;
  border-top: 1px solid var(--line);
}
.pricing-table thead th {
  font-weight: 600;
  color: var(--muted);
}
.pricing-table-section .small-note {
  margin-top: 24px;
}
