.pn-intro { background: var(--pn-white); }
.pn-intro h1 { max-width: 16em; }

.pn-plan-title { margin-bottom: 2rem; }
.pn-plan-table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  border: var(--pn-rule);
  background: var(--pn-white);
  font-variant-numeric: tabular-nums;
}
.pn-plan-table caption { margin-bottom: 1rem; color: var(--pn-slate-soft); font-size: .92rem; text-align: left; }
.pn-plan-table th, .pn-plan-table td { padding: 1rem 1.25rem; border: var(--pn-rule); text-align: left; vertical-align: top; }
.pn-plan-table thead th, .pn-plan-table thead td { background: var(--pn-glass); vertical-align: bottom; }
.pn-plan-table tbody th { font-weight: 600; }
.pn-plan-name { display: block; font-family: var(--ui-font-heading); font-size: 1.6rem; font-weight: 500; }
.pn-plan-price { font-family: var(--ui-font-heading); font-size: 2.4rem; font-weight: 400; line-height: 1.1; }
.pn-plan-unit { color: var(--pn-slate-soft); font-size: .9rem; font-weight: 400; }

.pn-terms .pn-pane { background: var(--pn-sky); }

@media (max-width: 44rem) {
  .pn-plan-table { font-size: .88rem; }
  .pn-plan-table th, .pn-plan-table td { padding: .7rem .5rem; overflow-wrap: anywhere; }
  .pn-plan-name { font-size: 1.15rem; }
  .pn-plan-price { font-size: 1.5rem; }
}
