/* One type scale for every storefront page (2026-10-13, owner). Loaded after every other stylesheet.
   Clear steps: page title > section heading > subhead > card title. The home banner keeps its own size. See DESIGN.md. */
:root{
 --t-headline:clamp(30px,3.4vw,48px);             /* page H1 */
 --t-section:clamp(24px,2.5vw,36px);              /* section H2 */
 --t-article:clamp(30px,3.2vw,44px);              /* blog article title */
 --t-subhead:clamp(20px,1.8vw,24px);             /* heading inside content: article, legal, research, feature blocks */
 --t-card:20px;                                   /* card and panel titles */
 --t-lead:clamp(16px,1.4vw,18px);                 /* intro paragraph under a headline */
 --t-body:16px;
 --t-small:13px;
}
@media (max-width:767px){:root{--t-card:18px}}

/* Page H1: all templates share one size (the home banner keeps its own fold rules). */
body .cx .cx-h1:not(.cx-hero__fold .cx-h1),
body .cx .cx-h1--page,
body .cx .cx-h1--product,
body .cx-buy .cx-h1--product,
body .cx .cx-sec--shop .cx-head--left .cx-h1,
body .cx .cx-kb-head__title,
body .cx .cx-lhero__title,
body .cx-pt-hero .cx-h1,
body .cx-contact h1,
body .cx .cx-contact-hero h1{font-size:var(--t-headline);line-height:1.04;letter-spacing:-.04em;font-weight:700}

/* Section H2: one step below the page title. */
body .cx .cx-h2,
body .cx-page-landing .cx-head--left .cx-h2{font-size:var(--t-section);line-height:1.1;letter-spacing:-.035em}

/* Article title: one size for every post. */
body .cx-post__title{font-size:var(--t-article);line-height:1.06;letter-spacing:-.035em;font-weight:700}

/* Headings inside content. */
body .cx-prose h2,
body .cx .cx-legal h2,
body .cx .cx-kb-h2,
body .cx .cx-land__h2,
body .cx .cx-catguide__block .cx-h2,
body .cx-post__ctabox h2,
body .cx .cx-land h2,
body .cx .cx-blog-label,
body .cx .cx-coa__copy h3{font-size:var(--t-subhead);line-height:1.2;letter-spacing:-.03em;font-weight:700}

/* Card and panel titles. */
body .cx .cx-h3,
body .cx-prose h3,
body .cx .cx-prose h3,
body .cx .cx-lcard__h,
body .cx .cx-lcard h3,
body .cx .cx-related-guides h3,
body .cx-format__body h3,
body .cx .cx-cold__box h3,
body .cx .cx-kb-card__name,
body .cx .cx-pdp-knowledge__title,
body .cx .cx-honest__col h3,
body .cx-exit h2,
body .cx-contact-card h2,
body .cx-pt-who__name h3,
body .cx-pt-pain h3,
body .cx-pt-prog h3,
body .cx-pt-tiers h3,
body .cx-pt-form__ok h3{font-size:var(--t-card);line-height:1.3;letter-spacing:-.02em}

/* Lead paragraph. */
body .cx .cx-lead:not(.cx-hero__fold .cx-lead),
body .cx .cx-lhero__lead,
body .cx .cx-land__lead,
body .cx .cx-kb-head__lead{font-size:var(--t-lead);line-height:1.65}
