/* Product 15523 only. Semantic type scale; existing layout and purchase UI stay intact. */
.f-product {
 --type-h2:27px;
 --type-h3:18px;
 --type-body:15px;
 --type-secondary:13px;
 --type-micro:11px;
}
.f-product .f-section h2 {
 font-size:var(--type-h2);
 line-height:1.3;
 font-weight:750;
 letter-spacing:-.55px;
}
.f-product .f-section h3,
.f-product .f-section .f-faq-item summary {
 font-size:var(--type-h3)!important;
 line-height:1.4;
 font-weight:750;
 letter-spacing:-.25px;
}
.f-product .f-section :is(
 .f-editorial p:not(.f-eyebrow),.f-prose p,.f-audience-grid p,
 .f-symptoms-panel p:not(.f-eyebrow),.f-symptoms-panel li,
 .f-ingredient-grid p,.f-formula-copy>p,.f-experience-list li,.f-routine-panel p,
 .f-dose-card p,.f-dose-times li,.f-children-grid p,.f-steps p,
 .f-composition-intro p,.f-difference>p,.f-faq-item p,.f-review-card blockquote,
 .f-final-panel p:not(.f-eyebrow)
) {
 font-size:var(--type-body);
 line-height:1.8;
 font-weight:400;
}
.f-product .f-section :is(.f-dose-follow,.f-dose-total) {
 font-size:var(--type-body)!important;
 line-height:1.8;
}
.f-product .f-section .f-dose-total {font-weight:650}
.f-product .f-section :is(
 .f-section-aside,.f-section-aside>p,.f-source-note p,.f-source-note ol,
 .f-warning p,.f-experience-note,.f-table-foot,.f-compare-foot,
 .f-carousel-footer p,.f-origin-note,.f-context-facts p,
 .f-review-author strong,.f-compare-toggle
) {
 font-size:var(--type-secondary);
 line-height:1.7;
}
.f-product .f-section :is(.f-age-label,.f-context-facts p>b,.f-warning>strong) {
 font-size:var(--type-secondary);
 line-height:1.7;
 font-weight:750;
}
.f-product .f-section :is(
 .f-eyebrow,.f-card-index,.f-ingredient-grid article>span,
 .f-review-card-top time,.f-review-author div>span,.f-review-summary p,
 .f-composition-facts span,.f-table-heading>span,.f-difference>span,
 .f-ingredient-controls,.f-ingredient-controls button,.f-review-controls,
 .f-review-controls button
) {
 font-size:var(--type-micro);
 line-height:1.6;
}
.f-product .f-section :is(.f-text-link,.f-routine-panel a,.f-children-grid a,.f-compare-link,.f-source-note summary) {
 font-size:var(--type-secondary);
 line-height:1.7;
}
.f-product .f-section .f-composition-table {font-size:var(--type-secondary);line-height:1.7}
.f-product .f-section :is(.f-composition-table tbody th,.f-composition-table td) {font-size:var(--type-secondary)}
.f-product .f-section .f-composition-table thead th,
.f-product .f-section .f-composition-table td::before {font-size:var(--type-micro)}
.f-product .f-origin-note {margin-top:12px;text-align:left}
.f-product button.f-hero-help {
 width:100%;height:auto;min-height:0;padding:0;border:0;border-radius:0;
 background:none;box-shadow:none;font-family:inherit;font-weight:400;
 font-size:12px!important;line-height:1.8;
 letter-spacing:normal;text-transform:none;text-decoration:underline;
 white-space:normal;cursor:pointer;
}
.f-product .f-green .f-source-note,
.f-product .f-green .f-source-note :is(summary,a) {color:var(--body-copy)}
@media(max-width:680px) {
 .f-product button.f-hero-help {font-size:11px!important}
 .f-product {--type-h2:24px}
 .f-product .f-section :is(h2,h3) {text-wrap:balance}
}
