/* Accessibility type scale: all displayed copy is 20px or larger. */
body { font-size: 20px; }

.nav-links > a,
.eyebrow,
.eyebrow.dark span,
.hero-text,
.button,
.text-button,
.trust-row,
.hero-marquee,
.proof-grid > p,
.metric span,
.split-heading > p:last-child,
.pain-card p,
.pain-card a,
.transform-copy > p:not(.eyebrow),
.transform-copy li,
.service-number,
.service-row p,
.pricing-heading > p:last-child,
.plan-label,
.plan-for,
.price-card ul,
.price-card a,
.popular,
.pricing-note,
.insight-card p,
.cta-inner > p:last-of-type,
.contact p:not(.eyebrow),
.contact-options small,
.contact-options strong,
.footer p,
.back-top {
  font-size: 20px;
}

.pain-card h3,
.service-row h3,
.price-card h3,
.insight-card h3 { font-size: 24px; }

/* Growth-plan hierarchy: benefits read as a concise package, not a dense list. */
.pricing-heading .pricing-accent { color: var(--yellow); font-weight: 800; }
.pricing-heading .pricing-plain { color: inherit; font-weight: inherit; }
.plan-title {
  align-items: flex-end;
  border-bottom: 2px solid #ffffff2b;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  line-height: 1;
  margin: 0 0 20px;
  padding: 0 0 19px;
}
.plan-title > span { color: #fff; font-size: 28px; font-weight: 800; letter-spacing: -1.3px; }
.plan-title > strong { color: var(--yellow); font-size: 34px; font-weight: 800; letter-spacing: -1.8px; white-space: nowrap; }
.plan-title small { color: #d8dbd1; font-size: 20px; font-weight: 700; letter-spacing: 0; }
.featured .plan-title { border-color: #4c7d54; }
.featured .plan-title > span { color: var(--ink); }
.featured .plan-title > strong { color: #356b42; }
.featured .plan-title small { color: #426447; }
.plan-includes { color: var(--mint); font-size: 20px; font-weight: 800; margin: 24px 0 0; }
.plan-outcome { color: #e7e9df; font-size: 20px; line-height: 1.7; margin: 0 0 22px; }
.featured .plan-includes { color: #356b42; }
.featured .plan-outcome { color: #334a37; }
.price-card { min-height: 550px; }
.price-card ul { margin: 8px 0 18px; padding-top: 14px; }

.metric strong { font-size: 34px; }
.icon-box { font-size: 20px; height: 50px; width: 50px; }
.service-row { grid-template-columns: 110px 1fr 56px; padding: 36px 18px; }
.service-icon { font-size: 24px; height: 48px; width: 48px; }

/* The miniature phone illustration remains decorative; remove its tiny faux text. */
.viewer-count,
.chat-lines { display: none; }
.compare-label { font-size: 20px; }
.compare-label span { font-size: 20px; }

.card-live strong,
.card-live small,
.activity-card small,
.activity-card strong { font-size: 20px; }

.avatars b { font-size: 20px; height: 38px; width: 38px; }

@media (max-width: 850px) {
  .nav-links > a { font-size: 20px; }
  .service-row { grid-template-columns: 56px 1fr 50px; padding: 30px 4px; }
}

@media (max-width: 560px) {
  .plan-title { align-items: flex-start; flex-direction: column; gap: 10px; }
  .plan-title > span { font-size: 27px; }
  .plan-title > strong { font-size: 33px; }

  .hero-text,
  .split-heading > p:last-child,
  .pain-card p,
  .service-row p,
  .transform-copy > p:not(.eyebrow),
  .transform-copy li,
  .plan-for,
  .price-card ul,
  .insight-card p,
  .contact p:not(.eyebrow) { font-size: 20px; }

  .pain-card h3,
  .service-row h3,
  .price-card h3,
  .insight-card h3 { font-size: 23px; }
}
