/* Compact plan cards and a scrollable comparison share the same desktop row. */
.pr-page-links{display:flex;flex-wrap:wrap;gap:14px 28px;margin-top:24px;font-size:15px}
.pr-page-links a{color:var(--on-dark-lead);text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--hairline)}
.pr-page-links a:hover,.pr-page-links a:focus-visible{color:#fff;text-decoration-color:currentColor}
.pricing-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;align-items:stretch;padding:64px var(--gutter) 0}
.pricing-layout>.editions,.pricing-layout>.compare{padding:0;max-width:none;min-width:0;min-height:0}
.pricing-layout>.compare{display:grid;grid-template-rows:minmax(0,1fr)}
.pricing-layout .plan-cards{display:grid;grid-template-rows:repeat(4,1fr);gap:12px;min-width:0}
.pricing-layout .ed-row--plan{grid-template-columns:minmax(0,1fr) 112px 80px;column-gap:20px;row-gap:10px;align-items:start;align-content:center;padding:16px 20px;margin:0}
.pricing-layout .ed-name{grid-column:1;grid-row:1;font-size:23px;line-height:1.1}
.pricing-layout .ed-price,.pricing-layout .ed-cap{display:flex;flex-direction:column;align-items:flex-start;align-self:center;gap:6px;grid-row:1 / span 2}
.pricing-layout .ed-price{grid-column:2}
.pricing-layout .ed-cap{grid-column:3;border-left:1px solid rgb(255 255 255 / 40%);padding-left:16px;min-height:64px;justify-content:center}
.pricing-layout .ed-price b,.pricing-layout .ed-cap b{font-size:36px;line-height:1;font-variant-numeric:tabular-nums}
.pricing-layout .ed-cap b{font-size:26px}
.pricing-layout .ed-price span,.pricing-layout .ed-cap span{font-family:var(--sans);font-size:14px;line-height:1.3;letter-spacing:0;text-transform:none;color:inherit}
.pricing-layout .ed-for{grid-column:1;grid-row:2;font-size:14px;line-height:1.5;max-width:60ch}
.pricing-layout .ctable{margin-top:0;min-height:0;max-height:none;contain:size;align-self:stretch;overflow:auto;scrollbar-width:thin;scrollbar-color:#8b857c #e6e2dc;overscroll-behavior-y:contain}
.pricing-layout .ctable:focus-visible{outline:3px solid var(--peach);outline-offset:4px}
.pricing-layout .ctable__head,.pricing-layout .crow{grid-template-columns:minmax(168px,1fr) repeat(4,104px);column-gap:6px;padding:14px 16px;min-width:640px}
.pricing-layout .ctable__head{position:sticky;top:0;z-index:2;align-items:center;padding-top:8px;padding-bottom:8px}
.pricing-layout .cplan{padding:6px;margin:0;text-align:center;gap:2px;border-radius:6px;font-family:var(--sans);text-transform:none;box-shadow:inset 0 0 0 1000px rgb(0 0 0 / 9%)}
.pricing-layout .cplan b{font-size:13px;line-height:1.3;white-space:nowrap}
.pricing-layout .cplan span{font-size:13px;letter-spacing:0;line-height:1.35;white-space:nowrap;opacity:1;margin-top:0}
.pricing-layout .cplan .cplan__rate{display:flex;align-items:baseline;justify-content:center;gap:2px}
.pricing-layout .cplan .cplan__price{font-size:20px;font-weight:600;line-height:1;letter-spacing:-.025em}
.pricing-layout .cplan .cplan__period{font-size:12px}
.pricing-layout .ed-row--plan.is-light,.pricing-layout .cplan.is-light{color:#fff}
.pricing-layout .ed-row--plan.is-light .ed-price span,.pricing-layout .ed-row--plan.is-light .ed-cap span,.pricing-layout .ed-row--plan.is-light .ed-for{color:inherit}
.pricing-layout .crow__t{padding-right:10px}
.pricing-layout .crow__t b{font-size:13px;line-height:1.35}
.pricing-layout .crow__t span{display:block;font-size:12px;line-height:1.45}
.pricing-layout .crow__v{text-align:center;font-size:13px}
.pricing-layout .crow--text .crow__v{font-size:11px;line-height:1.4}
.pricing-layout .crow--group{padding-top:22px;padding-bottom:10px}
.pr-cta{padding:56px var(--gutter)}
.faq{margin-top:48px;padding-top:64px;padding-bottom:64px}
.faq__cols{margin-top:40px}
#plans,#questions,#compare,[id^="faq-"]{scroll-margin-top:90px}
/* One column until the comparison table (640px wide) has room beside the plan cards. */
@media(max-width:1431px){
  .pricing-layout{grid-template-columns:minmax(0,1fr);gap:40px}
  .pricing-layout>.editions,.pricing-layout>.compare{display:block}
  .pricing-layout .ctable{contain:none;height:min(600px,65dvh)}
}
@media(max-width:760px){
  .pricing-layout{padding-top:40px;gap:40px}
  .pricing-layout .plan-cards{grid-template-rows:none;grid-auto-rows:auto}
  .pricing-layout .ed-row--plan{padding:20px;column-gap:16px;grid-template-columns:112px 80px;justify-content:space-between}
  .pricing-layout .ed-name{font-size:21px;grid-column:1/-1;grid-row:1}
  .pricing-layout .ed-price,.pricing-layout .ed-cap{grid-row:2}
  .pricing-layout .ed-price{grid-column:1}
  .pricing-layout .ed-cap{grid-column:2}
  .pricing-layout .ed-price b{font-size:32px}
  .pricing-layout .ed-for{grid-column:1/-1;grid-row:3}
  .pr-cta{padding:40px var(--gutter)}
  .pricing-layout .crow{padding-top:12px;padding-bottom:12px}
  /* On phones keep each feature and all four plan results visible together. */
  .pricing-layout .ctable{overflow-x:hidden;touch-action:pan-y pinch-zoom}
  .pricing-layout .ctable__head,.pricing-layout .crow{min-width:0;width:100%;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:4px;padding-left:8px;padding-right:8px}
  .pricing-layout .ctable__head>span:first-child{display:none}
  .pricing-layout .ctable__head{align-items:stretch}
  .pricing-layout .cplan{min-width:0;padding:4px 2px}
  .pricing-layout .cplan .cplan__name{display:flex;align-items:center;justify-content:center;min-height:28px;font-size:12px;line-height:14px;white-space:normal}
  .pricing-layout .cplan .cplan__price{font-size:18px}
  .pricing-layout .cplan .cplan__period{font-size:11px}
  .pricing-layout .crow{row-gap:12px}
  .pricing-layout .crow__t{grid-column:1/-1;min-width:0;padding:0 4px}
  .pricing-layout .crow__t b{font-size:14px}
  .pricing-layout .crow__t span{font-size:13px}
  .pricing-layout .crow__v{min-width:0;padding:6px 0;border-top:1px solid #e6e2dc;font-size:16px;line-height:1.3}
  .pricing-layout .crow--text .crow__v{font-size:12px;overflow-wrap:anywhere}
  .pricing-layout .crow--group{padding-top:16px;padding-bottom:12px;row-gap:0}
  .pricing-layout .crow--group>span:not(:first-child){display:none}
  .faq{margin-top:32px;padding-top:40px;padding-bottom:40px}
  .faq__cols{margin-top:28px}
}
@media(min-width:601px) and (max-width:760px){
  .pricing-layout .crow__t span{max-width:40em}
}
