/* One type system for every page. The values are the homepage's own resolved
   scale (signal.css + mercury.css); the legacy page stylesheets (styles.css,
   legacy-signal.css, blog.css) each carried their own sizes, so this file loads
   last on every page and sets the shared roles in one place. Change a size here,
   not per page.

   Families: Space Grotesk (headings), Plus Jakarta Sans (body), JetBrains Mono
   (eyebrow labels only). Nothing else, including form controls and buttons. */
:root{
  --type-display:"Space Grotesk",Arial,sans-serif;
  --type-body-font:"Plus Jakarta Sans",Arial,sans-serif;
  --type-mono:"JetBrains Mono","Courier New",monospace;
  --type-body:17px;
  --type-body-lh:1.7;
  --type-small:.875rem;
  --type-lead:clamp(1.1rem,2vw,1.35rem);
  --type-h1:clamp(3.1rem,4.7vw,3.85rem);
  --type-h2:clamp(1.8rem,3vw,2.25rem);
  --type-h3:1.55rem;
}
@media(max-width:850px){:root{--type-body:16px;--type-body-lh:1.68;--type-h1:clamp(2.5rem,10vw,3rem)}}

body{font-family:var(--type-body-font);font-size:var(--type-body);line-height:var(--type-body-lh);letter-spacing:.003em}
h1,h2,h3,h4{font-family:var(--type-display)}
/* Browsers give buttons and form controls their own font unless told otherwise. */
button,input,select,textarea{font-family:inherit}

/* Page titles */
.page-hero h1,.legal-h1,.thankyou-h1,.blog-heading,.post-title,.replay-hero h1{font-size:var(--type-h1);line-height:1.06;letter-spacing:-.025em;font-weight:600}

/* Headings inside long-form content (legal, guides, About, articles, replay) */
.legal h2,.legal-body h2,.post-body h2,.about-detail h2,.section-h2:not(h1){font-size:var(--type-h2);line-height:1.16;letter-spacing:-.02em;font-weight:600}
.legal h3,.legal-body h3,.post-body h3,.about-detail h3{font-size:var(--type-h3);line-height:1.2;letter-spacing:-.015em;font-weight:600}

/* Body copy */
.legal p,.legal li,.legal-body p,.legal-body li,.post-body,.post-body p,.post-body li,.about-detail p,.about-detail li,.thankyou-body,.section-sub{font-size:var(--type-body);line-height:var(--type-body-lh)}

/* Intro paragraphs */
.guide-lead,.post-excerpt,.blog-sub{font-size:var(--type-lead);line-height:1.65}

/* Eyebrow labels (mono) and dates and meta lines (body font, small) */
.legal-eyebrow,.section-eyebrow,.card-category,.post-category,.rel-cat{font-family:var(--type-mono);font-size:.74rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase}
.legal-meta,.post-date,.post-read-time,.card-meta{font-family:var(--type-body-font);font-size:var(--type-small);letter-spacing:0;text-transform:none}

/* Small print */
.guide-note,.guide-related,.thankyou-back{font-size:var(--type-small)!important}
.guide-table{font-size:var(--type-small)}
