/* Storefront typography. Text roles inherit through nested spans/links; icon fonts stay intact. */
:root {
    --lz-font-body: "Mulish", system-ui, -apple-system, "Segoe UI", sans-serif;
    --lz-font-ui: "Google Sans", "Mulish", system-ui, sans-serif;
    --lz-font-heading: "Epilogue", "Google Sans", system-ui, sans-serif;
    --lz-font-brand: "Caacupe One", "Google Sans", sans-serif;
    --lz-font-signature: "Allison", "Mulish", cursive;
    --lz-font-text: var(--lz-font-body);
}
body { font-family: var(--lz-font-text); font-optical-sizing: auto; }
/* Legacy theme h3/b/font shorthand rules use the same inherited text token. */
body :is(h1,h2,h3,h4,h5,h6,.box-heading) {
    --lz-font-text: var(--lz-font-heading);
    font-family: var(--lz-font-text) !important;
}
body :is(button,input,select,textarea,.btn,.mobile-menu-link,.mobile-menu-sublink,
    .mobile-menu-language,.lz-menu-fallback,.category-ancestors,.category-children,
    .category-order,.category-load-more,.category-pagination,.lz-slide-btn,
    .lz-whatsapp-btn,.btn-hero-whatsapp,.rv-login,.rv-logout,.rv-pagination,
    .footer-links,.footer-contact-info,.about-btn-whatsapp,.terms-btn,.contact-btn,
    .jGrowl-closer) {
    --lz-font-text: var(--lz-font-ui);
    font-family: var(--lz-font-text) !important;
}
body :is(.category-product h2,.card-info h2,.lz-product-name,.lz-popup-title,
    .hero-product-name,.lz-home-review-author-copy h3,.rv-author,.rv-dialog h3,
    .footer-col-title,.product-option-label) {
    --lz-font-text: var(--lz-font-ui);
    font-family: var(--lz-font-text) !important;
}
body :is(.price,.price_info,.category-product-price,.lz-product-price-wrapper,
    .lz-popup-price,.hero-price-section,.hero-product-price,.about-stat-number,
    .card-info h4,.rv-total) {
    --lz-font-text: var(--lz-font-ui);
    font-family: var(--lz-font-text) !important;
    font-variant-numeric: tabular-nums;
}
body :is(.lz-price-current,.lz-price-special,.lz-product-price,.category-product-price) { font-weight:700; }
body :is(.error-404-page,.error-404-number) { font-family: var(--lz-font-text); }
body .error-404-number svg text { font-family: var(--lz-font-ui); }
/* Decorative faces are restricted to short existing brand text, never controls or body copy. */
body .footer-modern .footer-logo {
    --lz-font-text: var(--lz-font-brand);
    font-family: var(--lz-font-text);
    font-weight:400;
    letter-spacing:0;
}
body .about-hero-copy > .info-eyebrow {
    --lz-font-text: var(--lz-font-signature);
    font-family: var(--lz-font-text);
    font-size:34px;
    font-weight:400;
    line-height:1.15;
    letter-spacing:0;
    text-transform:none;
}
