/* Type system (2026-09-28). Loaded last; overrides the older layered styles.
   Headings: Plus Jakarta Sans. Body and UI: Inter. Serif kept only for maths on the whiteboard and hero. */
:root{
  --font-head:'Plus Jakarta Sans',Inter,system-ui,-apple-system,'Segoe UI',sans-serif;
  --font-body:Inter,system-ui,-apple-system,'Segoe UI',sans-serif;
  --font-math:Georgia,'Times New Roman',serif;
  --fs-h1:clamp(30px,3.4vw,44px);
  --fs-h2:clamp(26px,2.6vw,34px);
  --fs-h3:clamp(18px,1.5vw,20px);
  --fs-lead:17px;
  --fs-body:16px;
  --fs-small:14px;
  --fs-eyebrow:12px;
}
body{font-family:var(--font-body)}

/* Headings */
#website h1,#website h2,#website h3{font-family:var(--font-head)!important;letter-spacing:-.015em!important;text-wrap:balance}
#website h1{font-size:var(--fs-h1)!important;font-weight:700!important;line-height:1.12!important}
#website h2{font-size:var(--fs-h2)!important;font-weight:700!important;line-height:1.16!important}
#website h3{font-size:var(--fs-h3)!important;font-weight:600!important;line-height:1.3!important}
#website h1 em,#website h2 em{font-family:var(--font-head)!important;font-style:italic;font-weight:600;letter-spacing:-.015em}
#website .wc-heading h2 span{font-weight:600}

/* Eyebrows and small labels */
#website .eyebrow,#website .platform-eyebrow,#website .book-hero .book-intro>span{font:700 var(--fs-eyebrow)/1.5 var(--font-body)!important;letter-spacing:.14em!important}

/* Lead paragraphs next to section headings */
#website .hero-sub,#website .wf-heading>p,#website .ls-heading p,#website .wc-heading p,#website .pricing-intro>p,#website .parents>div>p,#website .profile>div>p,#website .platform-section>div>p{font-size:var(--fs-lead)!important;line-height:1.6!important;font-family:var(--font-body)!important}

/* Oversized display text elsewhere */
#website .about strong{font:600 24px/1.3 var(--font-head)!important;letter-spacing:-.01em!important}
#website .report-top strong{font:600 18px/1.3 var(--font-head)!important}
#website .report-metrics strong{font-family:var(--font-head)!important;font-size:26px!important;font-weight:700!important}
#website .wf-aside p{font:italic 600 18px/1.5 var(--font-head)!important;letter-spacing:-.01em}
#website .wf-aside-mark{font-family:var(--font-head)!important;font-size:40px!important}
#website .why-compare .why-close p{font:500 20px/1.45 var(--font-head)!important;letter-spacing:-.01em}
#website .why-compare .why-close strong{font-weight:700!important}
#website .pricing-page h3{font-family:var(--font-head)!important}
#website .price-value{font-family:var(--font-head);font-weight:700;letter-spacing:-.02em}
#website .faq-item summary{font-family:var(--font-body)!important;font-size:16px!important}
#website .ls-tabs button,#website .wc-table tbody th{font-family:var(--font-body)}
#website .lumi-signature{font-family:var(--font-head)!important;font-style:italic}
#website .book-equation small{font-size:10px!important;font-family:var(--font-body)!important}

/* Keep a serif only for maths and reading passages */
#website .book-equation,#website .lb-lines li,#website .lb-passage{font-family:var(--font-math)!important}
#website .lb-lines .lb-note,#website .lb-lines .lb-check{font-family:var(--font-body)!important}

@media(max-width:760px){
  :root{--fs-lead:16px}
  #website .about strong{font-size:20px!important}
  #website .why-compare .why-close p{font-size:18px!important}
}

/* Legal pages */
.legal-shell h1,.legal-shell h2{font-family:var(--font-head)!important;letter-spacing:-.02em!important}
.legal-shell h1{font-size:clamp(30px,4vw,42px)!important;font-weight:700;line-height:1.12}
.legal-shell h2{font-size:20px!important;font-weight:700}
.legal-shell,.legal-footer{font-family:var(--font-body)}
