.pricing-intro {
  background: linear-gradient(180deg, var(--hero-top), var(--hero-bottom));
}
.pricing-intro-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
  align-items: center;
  gap: 64px;
}
.pricing-intro h1 {
  margin-top: 24px;
}
.pricing-rule-window {
  padding: 0 24px 24px;
  background: var(--glass);
  border-color: var(--glass-line);
  box-shadow: 6px 6px 0 var(--glass-edge), var(--panel-shadow);
}
.pricing-rule-window .win-bar {
  margin-inline: -24px;
  gap: 20px;
  padding-inline: 24px;
  height: auto;
  min-height: 48px;
  font-size: var(--small-size);
}
.pricing-rule-list {
  margin: 8px 0 24px;
}
.pricing-rule-list > div {
  padding-block: 16px;
  border-bottom: 1px solid var(--line);
}
.pricing-rule-list dt {
  font-weight: var(--weight-bold);
}
.pricing-rule-list dd {
  margin: 4px 0 0;
  color: var(--muted);
}
.pricing-table-note,
.pricing-help-link {
  margin-top: 24px;
  color: var(--muted);
  max-width: 900px;
}
.pricing-tabs > [role="tabpanel"] {
  padding: 28px 0 0;
}
.pricing-tabs > .tab-list {
  width: fit-content;
  max-width: 100%;
  margin-inline: auto;
}
.pricing-choice-intro {
  max-width: 820px;
  margin: 0 auto 32px;
  text-align: center;
}
.pricing-choice-intro p {
  color: var(--muted);
}
.pricing-fit {
  line-height: 1.85;
}
.pricing-card-note {
  color: var(--muted);
  font-size: var(--small-size);
  padding-top: 16px;
  border-top: 1px solid var(--line);
}
.pricing-editorial {
  display: grid;
  grid-template-columns: minmax(0, .75fr) minmax(0, 1.25fr);
  gap: 64px;
}
.pricing-editorial > *,
.pricing-refund > * {
  min-width: 0;
}
.pricing-editorial h2,
.pricing-refund h2 {
  margin-top: 20px;
}
.pricing-editorial-copy {
  overflow-wrap: anywhere;
}
.pricing-editorial-copy p {
  line-height: 1.85;
}
.pricing-editorial-copy p + p {
  margin-top: 20px;
}
.pricing-editorial-copy h3 {
  margin-top: 32px;
}
.pricing-editorial-copy a,
.pricing-included a,
.pricing-help-link a {
  color: var(--accent-dark);
  text-decoration: underline;
  text-underline-offset: 4px;
}
.pricing-included {
  background: var(--panel-2);
}
.pricing-included dl {
  margin: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 40px;
}
.pricing-included dl > div {
  min-width: 0;
  padding-block: 24px;
  border-bottom: 1px solid var(--line);
}
.pricing-included dt {
  font-weight: var(--weight-bold);
  margin-bottom: 10px;
}
.pricing-included dd {
  margin: 0;
  color: var(--muted);
  line-height: 1.85;
}
.pricing-refund {
  display: grid;
  grid-template-columns: minmax(0, .75fr) minmax(0, 1.25fr);
  gap: 48px;
}
.pricing-faq {
  max-width: 980px;
  margin-inline: auto;
}
.pricing-help-link {
  margin-inline: auto;
}
#price-ledger {
  scroll-margin-top: var(--anchor-gap);
}
@media (max-width: 960px) {
  .pricing-intro-grid,
  .pricing-editorial {
    gap: 32px;
  }
  .pricing-refund {
    gap: 28px;
  }
}
@media (max-width: 768px) {
  .pricing-intro-grid,
  .pricing-editorial,
  .pricing-refund {
    grid-template-columns: minmax(0, 1fr);
  }
  .pricing-rule-window {
    margin-right: 6px;
  }
  .pricing-included dl {
    grid-template-columns: minmax(0, 1fr);
  }
  .pricing-tabs > [role="tabpanel"] {
    padding-top: 24px;
  }
  .pricing-choice-intro {
    text-align: left;
  }
}
@media (max-width: 640px) {
  .pricing-rule-window {
    padding: 0 20px 20px;
  }
  .pricing-rule-window .win-bar {
    margin-inline: -20px;
    padding-inline: 20px;
    gap: 12px;
  }
}