/* Shared type scale. Loaded after page styles to keep equivalent roles consistent. */
:root{--type-title:53px;--type-section:38px;--type-intro:19px;--type-label:12px;--type-quote:26px}
body :is(.hero,.care-hero,.about-hero,.community-hero,.mf-hero,.family-hero,.policy-hero,.thank-you,.info) h1{font-size:var(--type-title);line-height:1.05}
body :is(.story,.give,.contact,.newsletter,.care-section,.about-intro-title,.method-copy,.local-copy,.family-bridge,.data-section,.contrast,.bible,.gap,.prayer,.library-intro,.featured-copy,.resources-head,.use-section,.care-cta,.family-copy,.family-call,.mission) h2,
body .about-values .section-head h2{font-size:var(--type-section);line-height:1.05}
body .hero-text,body .care-hero p:not(.eyebrow):not(.ref),body .about-hero p.lead,body .community-hero .lead,body .mf-hero .lead,body .policy-hero p:not(.eyebrow),body .thank-you p:not(.eyebrow):not(.small),body .care-section .intro,body .section-intro,body .prayer-lead{font-size:var(--type-intro);line-height:1.4}
body .eyebrow,body .section-kicker{font-family:"Montserrat",Arial,sans-serif;font-size:var(--type-label);font-weight:600;line-height:1.4;letter-spacing:.2em}
body blockquote,body .care-hero-side blockquote,body .about-manifesto blockquote,body .mf-side blockquote,body .family-scripture blockquote{font-size:var(--type-quote);line-height:1.1}
@media(max-width:1100px){:root{--type-title:46px}}
@media(max-width:820px){:root{--type-title:44px}}
@media(max-width:480px){:root{--type-title:38px;--type-section:33px;--type-intro:18px}}

/* Modest readability increase: preserve the existing heading scale. */
body :is(.service,.story,.care-card,.step,.request-box,.care-faq,.value,.method-item,.family-bridge,.family-call,.gap-item,.use-card,.guardrail,.detail-card,.cart-item) p:not(.eyebrow),
body .resource-desc,body .spec-list,body .care-col li,body .safety p,body .safety li,body .policy-content p,body .policy-content li,body .growth-copy,body .mf-side .small,body .details .section-head p{font-size:18px;line-height:1.4}
body :is(.button,.download-link,.filter-btn,.prayer-button,.newsletter-submit,.menu-toggle,.checkout,.buy-paypal,.add-cart),
body .service a,body .policy-nav a,body .footer-legal a,body .toplinks a{font-size:12px;letter-spacing:.1em;line-height:1.4}
body .mainnav{font-size:12px;letter-spacing:.06em}
body .mainnav a{white-space:nowrap}
body .spec-note,body .size-note,body .cart-note{font-size:15px;line-height:1.4}
body .footer-legal{flex-wrap:wrap}
@media(min-width:821px){body .mainnav{gap:12px clamp(12px,1.8vw,28px);flex-wrap:wrap;justify-content:flex-end;min-width:0}body .site-header{gap:20px}}
