/* Progressive enhancement: the complete comparison remains available without JS. */
.pricing-page { padding-top: 2rem; }
.pricing-hero { margin-bottom: 1.5rem; }
.price-card { border-radius: 1.4rem; padding: 1.5rem; }
.price-card.featured { background: linear-gradient(155deg, var(--bg-tertiary), var(--pcb-green-dark)); }
.price-card .plan-label { color: var(--link-color); letter-spacing: .08em; text-transform: uppercase; font-size: .75rem; }
.price-card .price { margin: 1rem 0 .5rem; }
.price-card .price strong { font-variant-numeric: tabular-nums; font-size: 2.8rem; }
.price-card li { padding: .45rem 0; }
.pricing-detail-dialog { background: var(--bg-secondary); color: var(--text-primary); border: 1px solid var(--border-primary); border-radius: 1.5rem; width: min(740px, 94vw); max-height: 85dvh; padding: 1.5rem; }
.pricing-detail-dialog::backdrop { background: var(--bg-primary); opacity: .85; }
.pricing-detail-dialog header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.pricing-detail-dialog h2 { font-size: 1.25rem; }
.pricing-detail-dialog .pricing-details { padding: 0; }
.pricing-detail-dialog .pricing-notes { grid-template-columns: 1fr; }
.pricing-mobile, .pricing-plan-switch, .pricing-mobile-links { display: none; }
.price-odometer { display: inline-flex; height: 1.2em; overflow: hidden; vertical-align: bottom; letter-spacing: -.035em; }
.price .price-odometer span { font-size: inherit; line-height: inherit; color: var(--text-primary) !important; }
.price-digit { width: .63em; height: 1.2em; overflow: hidden; }
.price-digit-track { display: flex; flex-direction: column; transition: transform 650ms cubic-bezier(.22,.8,.25,1); }
.price-digit-track > span { height: 1.2em; flex: 0 0 1.2em; color: inherit !important; font-size: inherit !important; }
.price-point { width: .3em; }
@media (max-width: 767px) {
  body:has(.pricing-enhanced) .site-footer { display: none; }
  .pricing-enhanced { min-height: calc(100svh - var(--pricing-header-height, 70px)); padding: .8rem 0 max(.5rem, env(safe-area-inset-bottom)); display: flex; flex-direction: column; gap: .65rem; }
  .pricing-enhanced > .pricing-grid, .pricing-enhanced > .pricing-details, .pricing-enhanced > .founder-session { display: none; }
  .pricing-enhanced .pricing-hero { margin-bottom: 0; }
  .pricing-enhanced .pricing-kicker { font-size: .65rem; margin-bottom: .35rem; }
  .pricing-enhanced .pricing-hero h1 { font-size: 1.55rem; max-width: 22rem; margin: 0 auto; }
  .pricing-enhanced .pricing-lede { display: none; }
  .pricing-enhanced .pricing-switch { margin: .65rem 0 .5rem; }
  .pricing-enhanced .pricing-switch .btn { min-height: 40px; }
  .pricing-enhanced .pricing-plan-switch { display: grid; grid-template-columns: repeat(3, 1fr); gap: .3rem; padding: .25rem; border: 1px solid var(--border-primary); border-radius: 1rem; }
  .pricing-plan-switch .btn { min-height: 40px; border-radius: .75rem; font-size: .85rem; }
  .pricing-plan-switch .active { background: var(--pcb-green); color: var(--text-primary); border-color: var(--pcb-green-light); }
  .pricing-enhanced .pricing-mobile { display: block; max-width: 560px; }
  .pricing-mobile .price-card { padding: 1.1rem 1.25rem; min-height: 360px; }
  .pricing-mobile .plan-label { margin-bottom: .35rem; }
  .pricing-mobile h2 { font-size: 1.35rem; }
  .pricing-mobile .plan-copy { min-height: 0; font-size: .78rem; }
  .pricing-mobile .price { margin: .5rem 0 .2rem; }
  .pricing-mobile .price strong { font-size: 2.7rem; }
  .pricing-mobile .billing-caption { min-height: 2.6em; margin-bottom: .6rem; }
  .pricing-mobile .price-card > .btn { min-height: 44px; border-radius: .8rem; }
  .pricing-mobile .price-card ul { margin-top: .6rem; }
  .pricing-mobile .price-card li { font-size: .78rem; padding: .25rem 0; }
  .pricing-mobile .fine-print { padding-top: .45rem; }
  .pricing-enhanced .pricing-mobile-links { display: flex; justify-content: center; align-items: center; gap: 1.5rem; font-size: .75rem; margin-top: auto; }
  .pricing-mobile-links .btn { min-height: 36px; font-size: .75rem; padding: .3rem .7rem; }
}
@media (max-width: 767px) and (max-height: 700px) {
  .pricing-enhanced { padding-top: .4rem; gap: .4rem; }
  .pricing-enhanced .pricing-kicker { display: none; }
  .pricing-enhanced .pricing-hero h1 { font-size: 1.2rem; }
  .pricing-mobile .price-card { padding: .75rem 1rem; min-height: 0; }
  .pricing-mobile .plan-copy, .pricing-mobile .plan-label { display: none; }
  .pricing-mobile .price-card li { font-size: .74rem; padding: .18rem 0; }
  .pricing-mobile .price-card li:nth-child(n+6) { display: none; }
  .pricing-mobile .price strong { font-size: 2.3rem; }
}
@media (max-width: 767px) and (max-height: 600px) {
  .pricing-enhanced .pricing-hero h1 { display: none; }
  .pricing-enhanced .pricing-kicker { display: block; margin: 0; }
  .pricing-mobile .price-card h2 { display: none; }
  .pricing-mobile .plan-label { display: block; margin: 0; }
  .pricing-enhanced .pricing-switch { margin: .35rem 0; }
  .pricing-mobile .price-card ul { margin-top: .3rem; }
  .pricing-mobile .price-card li { line-height: 1.3; }
  .pricing-mobile .billing-caption { min-height: 0; }
  .pricing-mobile .fine-print { line-height: 1.3; }
  .pricing-mobile .price strong { font-size: 2rem; }
}
@media (prefers-reduced-motion: reduce) {
  .price-digit-track { transition: none; }
}
