/* Regular reading copy remains comfortable on both phone and desktop. */
.hero-description,.section-heading>p:not(.overline),.step>p,.contexts p,.purpose-intro>p,.project-copy>p:not(.overline),.project-principles p,.faqs details p,.faq-heading p:not(.overline){font-size:1rem}
.site-header nav,.button,.demo-controls>label:not(.consent),.consent,.demo-buttons .button,.simulation-button,.demo-status,.faqs summary,.footer-links{font-size:.875rem}
.field-help,.field-error,.simulation-help,.demo-footnotes p,.demo-disclosure,.context-note,.hero-footnote,.closing-section>p:last-child,footer p,footer>span,.footer-brand p,.stage-label,.project-badge,.demo-timer{font-size:.75rem}
.section-marker,.overline,.context-caption,.eyebrow-pill,.demo-result-top .overline,.mode-badge{font-size:.75rem}
.demo-instruction p{font-size:.875rem}.demo-instruction strong{font-size:1.25rem}.demo-result-top{flex-wrap:wrap}.hero-footnote{line-height:1.8}.demo-status{min-height:52px}.mode-badge{white-space:normal}.demo-controls{overflow-wrap:anywhere}
@media(max-width:640px){.header-cta{font-size:.75rem}.hero-actions .button{font-size:.875rem}.demo-result-top .overline{font-size:.625rem}.mode-badge{font-size:.625rem}.eyebrow-pill{font-size:.6875rem}.demo-footnotes p{font-size:.75rem}.hero-description{font-size:1rem}.section-heading>p:not(.overline){font-size:1rem}.project-copy h2{font-size:2rem}}
