.pricing-page{
  padding-top:56px;
}
.pricing-heading{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(240px,300px);
  align-items:center;
  gap:40px;
  margin-bottom:48px;
}
.pricing-heading>*{
  min-width:0;
}
.pricing-heading-copy>.badge{
  margin-bottom:20px;
}
.pricing-heading-copy h1{
  letter-spacing:-.02em;
}
.pricing-heading-copy .lead{
  max-width:640px;
  margin-bottom:0;
}
.pricing-entry{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:16px;
  padding:28px;
  border-radius:var(--r-card);
  background:linear-gradient(145deg,rgba(var(--c-pink),.13),var(--bg-panel));
  box-shadow:var(--shadow-card);
}
.pricing-entry p{
  margin:0;
  font-size:var(--fs-sm);
  font-weight:650;
}
.pricing-entry .muted{
  font-weight:400;
}
.pricing-overview>p{
  max-width:900px;
}
.pricing-table-note{
  margin-top:20px;
  margin-bottom:0;
  font-size:var(--fs-sm);
}
.pricing-section{
  padding-top:72px;
}
.pricing-section-heading{
  margin-bottom:28px;
}
.pricing-section-heading p{
  margin-bottom:0;
}
.pricing-panel-intro{
  max-width:880px;
  margin-bottom:32px;
}
.pricing-plan-grid{
  align-items:stretch;
  row-gap:36px;
}
.pricing-plan-grid .plan-card{
  gap:20px;
}
.pricing-plan-grid .plan-card>.muted{
  font-size:var(--fs-sm);
  line-height:1.85;
}
.pricing-card-note{
  color:var(--text-muted);
  font-size:var(--fs-xs);
}
.pricing-upgrade{
  margin-top:28px;
}
.pricing-upgrade p{
  margin-bottom:0;
}
.pricing-inclusions h3{
  margin-top:20px;
}
.pricing-inclusions p{
  color:var(--text-muted);
}
.pricing-text-link{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  color:var(--accent-dark);
  font-weight:650;
  text-decoration:underline;
  text-underline-offset:4px;
}
.pricing-text-link:hover{
  color:var(--accent);
}
.pricing-reading-pair{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:40px;
  margin-top:36px;
}
.pricing-reading-pair>*{
  min-width:0;
}
.pricing-reading-pair p{
  margin-bottom:0;
  color:var(--text-muted);
}
.pricing-reading-pair p .pricing-text-link{
  display:inline;
  min-height:0;
}
.pricing-payment-layout{
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);
  align-items:start;
  gap:40px;
}
.pricing-payment-layout>*{
  min-width:0;
}
.pricing-payment-tags{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:24px;
}
.pricing-payment-tags .badge{
  background:var(--bg-panel);
}
.pricing-payment-copy h3:not(:first-child){
  margin-top:28px;
}
.pricing-payment-copy p{
  color:var(--text-muted);
}
.pricing-payment-copy p:last-child{
  margin-bottom:0;
}
.pricing-refund{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:40px;
}
.pricing-refund>*{
  min-width:0;
}
.pricing-refund h2{
  margin-top:20px;
}
.pricing-refund p{
  color:var(--text-muted);
}
.pricing-refund-links{
  display:flex;
  flex-wrap:wrap;
  gap:12px 24px;
}
.pricing-faq{
  max-width:900px;
  margin-inline:auto;
}
.pricing-faq>.pricing-text-link{
  margin-top:12px;
}
@media(max-width:900px){
  .pricing-heading{
    grid-template-columns:minmax(0,1fr);
    gap:28px;
  }
  .pricing-entry{
    flex-direction:row;
    align-items:center;
    flex-wrap:wrap;
  }
  .pricing-entry .btn{
    margin-left:auto;
  }
  .pricing-plan-grid{
    grid-template-columns:minmax(0,1fr);
  }
  .pricing-payment-layout{
    grid-template-columns:minmax(0,1fr);
    gap:32px;
  }
}
@media(max-width:768px){
  .pricing-page{
    padding-top:36px;
  }
  .pricing-heading{
    margin-bottom:36px;
  }
  .pricing-section{
    padding-top:48px;
  }
  .pricing-reading-pair,
  .pricing-refund{
    grid-template-columns:minmax(0,1fr);
    gap:28px;
  }
}
@media(max-width:640px){
  .pricing-entry{
    padding:24px;
  }
  .pricing-entry .btn{
    margin-left:0;
  }
  .pricing-entry p{
    flex:1 1 160px;
  }
  .pricing-inclusions{
    gap:20px;
  }
}