/* Shared public-site reading floor. Device chrome stays visually subordinate. */
html { scroll-padding-top: 108px; }
.kicker, .hero-category, .learning-horizon__eyebrow { font-size: 14px; }
.card p, .card-body, .num-card p, .method-row p,
.format-teaser__copy p, .story-faq details p, .lesson-caption p,
.model-card ul, .screen-body, .option, .step { font-size: 16px; }
.hero-tease, .story-faq__note, .footer-line, .cta-note,
.last-updated, .band-foot, .method-foot, .hp-disclosure,
.format-teasers__foot, .learning-horizon__foot, .ms-story__foot,
.ms-story__channels, .lm-story .lm-figure figcaption { font-size: 15px; line-height: 1.65; }
.format-teasers__heading p { max-width: 760px; font-size: 17px; }
.format-teasers__heading p + p { margin-top: 10px; }
.format-teaser__status, .horizon-status, .model-badge, .card-status,
.num-card > span { font-size: 13px; letter-spacing: .035em; }
.format-preview__label { font-size: 12px; letter-spacing: .07em; }
.compound-preview__assumption, .compound-preview__row { font-size: 14px; }
.compound-preview__reason { font-size: 15px; }
.hp-label, .ms-phone-figure__label, .ms-platform-switch legend,
.ms-platform-option { font-size: 15px; }
.hp-response__body > p, .hp-offer p, .hp-offer__action,
.hp-question, .hp-composer, .hp-trail__text { font-size: 14px; }
.hp-trail__text small { font-size: 12px; }
.hp-offer { padding-inline: 11px; }
.hp-conversation { padding-inline: 11px; }
.lm-region-label { font-size: 14px; }
.lm-region-label strong { letter-spacing: .025em; }
.lm-node p, .lm-node--nearby p, .lm-node--question p { font-size: 14px; }
.lm-node__role, .lm-node--nearby .lm-node__role { font-size: 12px; letter-spacing: .025em; }
.lm-map__beyond { font-size: 14px; }
.ms-bubble p, .ms-practice-feedback p, .ms-concept-action { font-size: 15px; }
.ms-written-answer p { font-size: 16px; }
.ms-small-label, .ms-saved, .ms-followup__time, .ms-app-context,
.ms-quiet-choice, .ms-wa-choice, .ms-continue > span { font-size: 12px; }
.ms-continue b { font-size: 14px; }
.ms-wa-contact > span, .ms-im-contact > span, .ms-wa-day { font-size: 11px; }
.ms-wa-thread { gap: 10px; }
.content p, .content li { font-size: 17px; }
.content { overflow-wrap: break-word; }
.content .last-updated, .content .footer { font-size: 14px; }
@media (max-width: 380px) {
    .ms-bubble p, .ms-practice-feedback p, .ms-concept-action { font-size: 14px; }
    .ms-written-answer p { font-size: 15px; }
    .ms-continue b { font-size: 13px; }
    .lm-region-label { gap: 4px; }
}
.format-teaser__top { flex-wrap: wrap; }
