/* Shared by public pricing and authenticated package selection. */
.plan-price-amounts { display: flex; flex-wrap: wrap; align-items: baseline; gap: .35rem .75rem; }
.plan-original-price { color: #69756f; font-size: .9rem; font-weight: 400; text-decoration-thickness: 1px; white-space: nowrap; }
.plan-original-price[hidden] { display: none; }
.plan-comparison {
  color: #24372c;
  margin-top: 4.5rem;
  scroll-margin-top: 2rem;
}
.plan-comparison:focus-visible { outline: 2px solid #285d48; outline-offset: 8px; border-radius: 1rem; }
.marketing-shell .plan-comparison { scroll-margin-top: 7rem; }
.plan-comparison__heading { margin-bottom: 1.75rem; max-width: 38rem; }
.plan-comparison__eyebrow { color: #52705d; font-size: .72rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; margin: 0 0 .75rem; }
.plan-comparison__heading h2 { font-family: "Fraunces", Georgia, serif; font-size: clamp(1.9rem, 4vw, 2.7rem); font-weight: 500; letter-spacing: -.035em; line-height: 1.15; margin: 0; }
.plan-comparison__heading > p:last-child { color: #637068; font-size: .95rem; line-height: 1.65; margin: .85rem 0 0; }
.plan-comparison__surface { border: 1px solid #dce4db; border-radius: 1.25rem; background: #fff; overflow: clip; }
.plan-comparison table { width: 100%; border-collapse: collapse; table-layout: fixed; font-size: .9rem; }
.plan-comparison__feature-column { width: 49%; }
.plan-comparison__pro-column { background: #f4f8f0; }
.plan-comparison thead th { background: #fff; border-bottom: 1px solid #dce4db; font-size: .95rem; font-weight: 700; padding: 1.5rem 1rem; text-align: center; }
.plan-comparison thead th:first-child { color: #637068; font-size: .8rem; font-weight: 500; text-align: left; padding-left: 1.75rem; }
.plan-comparison thead .plan-comparison__pro { color: #285d48; background: #eaf2e3; }
.plan-comparison tbody th[scope="row"] { font-weight: 500; line-height: 1.5; text-align: left; padding: 1rem 1.75rem; }
.plan-comparison tbody th small { display: block; max-width: 32rem; color: #69756c; font-size: .78rem; font-weight: 400; line-height: 1.6; margin-top: .25rem; }
.plan-comparison tbody td { padding: 1rem .75rem; text-align: center; vertical-align: middle; }
.plan-comparison tbody tr:not(:last-child):not(.plan-comparison__group) > * { border-bottom: 1px solid #edf0ea; }
.plan-comparison .plan-comparison__group th { background: #f1f4ee; color: #4e6455; border-top: 1px solid #dce4db; border-bottom: 1px solid #dce4db; font-size: .7rem; font-weight: 700; letter-spacing: .07em; line-height: 1.5; padding: .85rem 1.75rem; text-align: left; text-transform: uppercase; }
.plan-comparison tbody:first-of-type .plan-comparison__group th { border-top: 0; }
.plan-comparison__check { color: #326e55; display: inline-block; width: 1.15rem; height: 1.15rem; vertical-align: middle; }
.plan-comparison__dash { color: #89958b; }
.plan-comparison__value { color: #24372c; font-size: .9rem; font-weight: 650; }
.plan-comparison__notes { display: grid; gap: .75rem 2rem; grid-template-columns: 1fr 1fr; border-top: 1px solid #dce4db; padding: 1.5rem 1.75rem; background: #fafbf8; }
.plan-comparison__notes p { color: #69756c; font-size: .78rem; line-height: 1.65; margin: 0; }
.plan-comparison__notes strong { color: #4e6455; font-weight: 600; }
.plan-comparison__sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.plan-comparison-link { display: inline-flex; align-items: center; gap: .5rem; min-height: 44px; color: #285d48; font-size: .85rem; font-weight: 600; text-decoration: underline; text-decoration-color: #b8cbb8; text-underline-offset: .25rem; }
.plan-comparison-link:hover { color: #163c2b; text-decoration-color: currentColor; }
.plan-comparison-link:focus-visible { outline: 2px solid #285d48; outline-offset: 4px; border-radius: 3px; }
.marketing-pricing-controls:has(.plan-comparison-link) { justify-content: space-between; }
.locli-plan-toolbar__intro { display: grid; gap: .2rem; }
.locli-plan-toolbar__intro > p { color: #637068; font-size: .9rem; line-height: 1.6; margin: 0; }
.locli-plan-picker > .plan-comparison { margin-top: 2.5rem; }
@media (max-width: 640px) {
  .plan-comparison { margin-top: 3rem; }
  .plan-comparison__heading { margin-bottom: 1.25rem; }
  .plan-comparison__heading > p:last-child { font-size: .88rem; }
  .plan-comparison__surface { border-radius: 1rem; }
  .plan-comparison__feature-column { width: 46%; }
  .plan-comparison table { font-size: .78rem; }
  .plan-comparison thead th { font-size: .72rem; padding: 1rem .15rem; }
  .plan-comparison thead th:first-child { font-size: .7rem; padding-left: .85rem; }
  .plan-comparison tbody th[scope="row"] { padding: .85rem .75rem .85rem .85rem; }
  .plan-comparison tbody th small { font-size: .69rem; line-height: 1.5; }
  .plan-comparison tbody td { padding: .85rem .15rem; }
  .plan-comparison .plan-comparison__group th { font-size: .65rem; padding: .7rem .85rem; }
  .plan-comparison__value { font-size: .74rem; }
  .plan-comparison__check { height: 1rem; width: 1rem; }
  .plan-comparison__notes { grid-template-columns: 1fr; padding: 1.1rem .85rem; }
  .marketing-pricing-controls:has(.plan-comparison-link) { align-items: flex-start; flex-direction: column; gap: .5rem; margin-bottom: 1.5rem; }
}
@media (max-width: 360px) {
  .plan-comparison__feature-column { width: 42%; }
  .plan-comparison thead th:not(:first-child) { font-size: .7rem; padding-left: .05rem; padding-right: .05rem; }
}
