:root{
  --pricing-lead-size:18px;
  --pricing-heading-width:860px;
  --pricing-copy-leading:1.9;
  --pricing-block-gap:32px;
  --pricing-section-gap:64px;
}
.pricing-opening{
  background:linear-gradient(180deg,var(--wash-top),var(--wash-bottom));
  border-bottom:1px solid var(--border);
  max-width:none;
}
.pricing-heading{
  max-width:var(--pricing-heading-width);
  margin-inline:auto;
  text-align:center;
}
.pricing-heading h1{margin:24px 0}
.pricing-lead{
  font-size:var(--pricing-lead-size);
  color:var(--muted);
  line-height:var(--pricing-copy-leading);
}
.pricing-heading .cta-row{justify-content:center}
.pricing-account-note{
  margin-top:24px;
  color:var(--muted);
  font-size:var(--fs-small);
  line-height:var(--pricing-copy-leading);
}
.pricing-overview{padding-top:var(--pricing-section-gap)}
.pricing-section{padding-top:var(--pricing-section-gap)}
.pricing-rule{display:grid;gap:16px}
.pricing-rule p{line-height:var(--pricing-copy-leading)}
.pricing-cards{margin-top:var(--pricing-block-gap);align-items:stretch}
.pricing-cards .plan-body{
  display:flex;
  flex-direction:column;
  height:calc(100% - 80px);
}
.pricing-card-copy{
  color:var(--muted);
  line-height:var(--pricing-copy-leading);
  margin-bottom:28px;
}
.pricing-cards .plan-body .btn{margin-top:auto;align-self:flex-start}
.pricing-included-list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  margin-top:var(--pricing-block-gap);
}
.pricing-included-list h3{margin:0 0 16px}
.pricing-included-list p,.pricing-wall-copy p{
  line-height:var(--pricing-copy-leading);
  color:var(--muted);
  margin-bottom:24px;
}
.pricing-included-list a{
  color:var(--accent);
  text-underline-offset:4px;
  display:inline-block;
  padding-block:4px;
}
.pricing-wall-copy h3{margin:0 0 20px}
.pricing-payment-tags{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}
.pricing-refund>h2{margin:24px 0}
.pricing-refund>p{max-width:var(--pricing-heading-width);line-height:var(--pricing-copy-leading)}
.pricing-refund .prose{max-width:none}
@media(max-width:768px){
  :root{--pricing-section-gap:48px;--pricing-block-gap:24px}
  .pricing-included-list{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:640px){
  .pricing-cards .plan-body{height:auto}
}