/* Shared type system. Product label SVGs and brand artwork remain independent. */
@font-face{
 font-family:"Manrope";
 src:url('/assets/Manrope-Variable.ttf') format('truetype');
 font-style:normal;
 font-weight:200 800;
 font-display:swap;
}
:root{
 --font-body:"Manrope",Arial,sans-serif;
 --weight-body:400;
 --weight-ui:500;
 --weight-heading:600;
 --weight-product:650;
 --weight-emphasis:700;
 --type-body:1rem;
 --type-h1:clamp(2.125rem,4.6vw,4.5rem);
 --type-h2:clamp(1.875rem,3.2vw,2.875rem);
 --type-h3:clamp(1.25rem,2vw,1.625rem);
 --leading-body:1.7;
 --leading-heading:1.14;
 --tracking-heading:-.03em;
}
html{font-family:var(--font-body);font-size:16px;font-weight:var(--weight-body);font-synthesis:none}
body{font-family:var(--font-body);font-size:var(--type-body);font-weight:var(--weight-body);line-height:var(--leading-body);letter-spacing:0}
button,input,select,textarea{font-family:var(--font-body);font-synthesis:none}
button,select{font-weight:var(--weight-ui);line-height:1.45}
input,textarea{font-weight:var(--weight-body);line-height:1.6}
p{font-weight:var(--weight-body);line-height:var(--leading-body)}
h1,h2,h3,h4,h5,h6{font-family:var(--font-body);font-style:normal;line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);text-wrap:balance;overflow-wrap:break-word}
h1,h2{font-weight:var(--weight-heading)}
h1{font-size:var(--type-h1)}
h2{font-size:var(--type-h2)}
h3,h4,h5,h6{font-weight:var(--weight-product)}
h3{font-size:var(--type-h3);line-height:1.25;letter-spacing:-.02em}
strong,b,.weight,.stats strong,.hero-pack-size,.product-key-facts dd,.protein-summary strong{font-weight:var(--weight-emphasis)}
/* Textual emphasis uses the real weight axis; no faux italic or faux bold. */
em{font-style:normal;font-weight:var(--weight-emphasis)}
.eyebrow{font-weight:var(--weight-heading);letter-spacing:.1em;line-height:1.5}
nav,.button,.text-link,.family-link,.family-cta,label,legend,summary,caption,.filter-reset,.product-characteristics a,.product-section-links a,.presentation-option,.refined-variants a,.product-retailer-links a>span{font-weight:var(--weight-ui)}
.button,summary,.refined-variants legend,.visual-filters legend,thead th,.editor-field,.editor-controls summary{font-weight:var(--weight-heading)}
nav [aria-current],.refined-variants a[aria-current],.visual-filters .type-option:has(input:checked),.feature-option:has(input:checked){font-weight:var(--weight-heading)}
.visual-filters .type-option,.visual-filters .feature-option{font-weight:var(--weight-ui)}
.visual-filters .filter-search-row input,
.refined-variants small,.editor-field output,.retailer-credits,.retailer-credits summary,tbody th{font-weight:var(--weight-body)}
td{font-weight:var(--weight-heading)}
.allergen{font-weight:var(--weight-body)}
.lede,.brand-hero-copy>p,.product-detail-refined .detail-intro{font-weight:var(--weight-body);line-height:var(--leading-body)}
.brand-hero h1,.hero h1,.cero-hero h1,.cero-hero .hero-copy h1{font-size:clamp(2.625rem,5.2vw,5rem);font-weight:var(--weight-heading);line-height:1.08;letter-spacing:-.035em}
.intro h1,.intro:has(+ .catalog-section) h1{font-size:var(--type-h1);font-weight:var(--weight-heading);line-height:var(--leading-heading);letter-spacing:var(--tracking-heading)}
.product-summary h1,.product-detail-refined .product-summary h1{font-size:clamp(2rem,3.5vw,3.25rem);font-weight:var(--weight-product);line-height:1.16;letter-spacing:-.025em}
.grouped-product h3,.card-copy h3{font-size:clamp(1.25rem,1.9vw,1.5rem);font-weight:var(--weight-product);line-height:1.28;letter-spacing:-.02em;text-wrap:balance}
.section-heading h2,.home-table h2,.history-heading h2,.contact-copy h2,.audience-layout h2{font-size:var(--type-h2);line-height:var(--leading-heading);letter-spacing:var(--tracking-heading)}
.home-story h3,.family-copy h3,.editorial-card h3,.topic-grid h3,.product-recipe-card h3{font-size:clamp(1.375rem,2.2vw,1.75rem);font-weight:var(--weight-product);line-height:1.25;letter-spacing:-.02em}
.product-information h3,.audience-cards h3{font-weight:var(--weight-product);line-height:1.3;letter-spacing:-.02em}
.family-copy p,.card-copy>p:not(.eyebrow),.home-story article>p:not(.eyebrow),.audience-layout p,.product-recipe-card>p:not(.eyebrow),.product-recipe-card ol,.brand-timeline p,.timeline-enhanced .brand-timeline p{font-size:1rem;line-height:var(--leading-body)}
.product-key-facts dd{line-height:1.25;letter-spacing:-.025em;font-variant-numeric:tabular-nums}
.product-key-facts dd span{font-weight:var(--weight-ui)}
.timeline-year,.timeline-enhanced .timeline-year{font-weight:var(--weight-emphasis);line-height:1.1;letter-spacing:-.035em;font-variant-numeric:tabular-nums}
.timeline-navigation button{font-weight:var(--weight-ui)}
.timeline-navigation button[aria-pressed=true]{font-weight:var(--weight-emphasis)}
.brand-timeline h3,.timeline-enhanced .brand-timeline h3{font-weight:var(--weight-product);line-height:1.25;letter-spacing:-.02em}
.product-retailers h2{font-size:1.125rem;font-weight:var(--weight-heading);line-height:1.4;letter-spacing:-.015em}
.prompt-board textarea{font-family:var(--font-body);font-size:1rem;font-weight:var(--weight-body);line-height:var(--leading-body)}
.prose h2{font-weight:var(--weight-heading);line-height:1.2;letter-spacing:-.025em}
.prose p,.ingredient-panel>p:not(.data-status),.recipe-context{line-height:1.75}
.label-editor-page{font-family:var(--font-body)}
.label-editor-page button,.label-editor-page select{font-family:var(--font-body);font-weight:var(--weight-ui)}
.label-editor-page .editor-handle{font-weight:var(--weight-emphasis)}
.editor-header h1,.layers-header h1{font-weight:var(--weight-heading)}
.editor-controls h2,.layer-controls h2,.image-review-copy h2{font-weight:var(--weight-product)}
@media(max-width:600px){
 .brand-hero h1,.hero h1,.cero-hero h1,.cero-hero .hero-copy h1{font-size:clamp(2.5rem,9vw,3.375rem);line-height:1.12}
 .brand-hero-copy>p,.hero .lede,.cero-hero .hero-copy .lede,.intro .lede,.arch-copy .lede{font-size:1rem;line-height:var(--leading-body)}
 .product-detail-refined .detail-intro{font-size:1rem}
 .site-header nav{font-weight:var(--weight-ui)}
 .editor-header h1{font-size:1.25rem;line-height:1.25}
}

.site-header nav a,.site-header .menu-toggle{font-size:.875rem;line-height:1.45;font-weight:var(--weight-ui);letter-spacing:0}
.site-header nav a[aria-current=page]{font-weight:var(--weight-heading)}
@media(max-width:960px){.site-header nav a{font-size:1rem}}

.logo-comparison-card h2{font-size:clamp(1.375rem,2.4vw,1.875rem);font-weight:var(--weight-product);line-height:1.25;text-wrap:balance}
.logo-small-preview span{font-size:.8125rem}
