/* Store typography (R21, 07.10.2026), after .agents/context/DESIGN.md: Hebrew display headings in Bellefair (one weight, 400, never faux-bold),
   numbers and English display in Bodoni Moda, body in Assistant (served as 'Kostilatas Sans', storefont.css / brandfont.css).
   Loaded by every store page AFTER shop.css (shop, product, cart, checkout, order, pay, account, standing, quote, track, in four languages).
   Files: assets/fonts/bellefair-400-hebrew.woff2 and bellefair-400-latin.woff2 (SIL OFL, self-hosted, ONLY the one weight the store uses;
   the Bodoni Moda 700 file is the one displayfonts.css already ships). Until the Bellefair files are in place the stack falls through to Frank Ruhl
   Libre (what the store showed before), so a missing file changes nothing but the face.
   Arabic and Russian pages keep their language stacks (the inline <style id="ar-fonts"|"ru-fonts"> of each page): Bellefair has no Arabic or
   Cyrillic, so nothing here touches them. English display moves to Bodoni Moda. The site's header, menu and footer keep the site's headings. */

/* ---------- headings: tokens per language ---------- */
html[lang="he"] .page-store{
  --serif:'Frank Ruhl Libre','Kostilatas Sans',system-ui,'Segoe UI',serif;   /* 07.10.2026 (owner): one face everywhere, the site's Frank Ruhl Libre */
  --display:'Frank Ruhl Libre','Kostilatas Sans',system-ui,'Segoe UI',serif;   /* figures: Frank Ruhl Libre (owner 07.10) */
}
html[lang="en"] .page-store{--serif:'Frank Ruhl Libre','Kostilatas Sans',system-ui,'Segoe UI',serif;--display:'Frank Ruhl Libre','Kostilatas Sans',system-ui,'Segoe UI',serif}   /* English headings and figures: Frank Ruhl Libre too (owner 07.10) */
/* never a faux bold: Bellefair and Bodoni have no other weights, a heading that asks for 600 gets the real face it has */
html[lang="he"] .page-store,html[lang="en"] .page-store{font-synthesis:none}   /* Frank Ruhl Libre ships 500-700, Bodoni 700: never a synthetic bold */
/* the site's own header, menu and footer keep the site's headings, so a click from the home page changes nothing there */
html[lang="he"] .page-store .nav,html[lang="he"] .page-store .m-nav,html[lang="he"] .page-store .ft,
html[lang="en"] .page-store .nav,html[lang="en"] .page-store .m-nav,html[lang="en"] .page-store .ft{
  --serif:'Frank Ruhl Libre','Kostilatas Sans',system-ui,'Segoe UI',serif;
  --display:'Frank Ruhl Libre','Kostilatas Sans',system-ui,'Segoe UI',serif;   /* the site's own figures */
}

/* ---------- numbers ---------- */
/* small functional numbers (quantities, phones, dates, input fields, tables, step counters, codes, bank details): Assistant, tabular and lining,
   so columns line up and every digit is clear at 15 px */
.page-store input,.page-store select,.page-store textarea,.page-store table,.page-store time,.page-store .money,.page-store .mono,
.page-store .st-input,.page-store .cart-count,.page-store .qty-calc,.page-store .sum-row dd,.page-store .price-sub,.page-store .price-dep,.page-store .price-tiers,
.page-store .facts-table td,.page-store .copy-row dd,.page-store .acc-code,.page-store .q-table td,.page-store .how li::before,.page-store .zo-fee,
.page-store a[href^="tel:"],.page-store .trk-eta-w,.page-store .kos-msg-code input{
  font-variant-numeric:tabular-nums lining-nums;
}
.page-store .facts-table td.num,.page-store .copy-row:first-child dd,.page-store .acc-code,.page-store .trk-eta-w{font-family:var(--sans);font-weight:700}
.page-store .acc-code{font-weight:600}
.page-store .trk-eta-w{font-weight:600}
/* big figures (a product's price, the cart and order totals, the free-delivery amount, the size numerals, the KPI numbers): Frank Ruhl Libre, lining (07.10.2026; was Bodoni Moda) */
.page-store .price-main,.page-store .cl-total,.page-store .sum-row.total dd,.page-store .pc-size .num,.page-store .facts-strip b,.page-store .pdp-facts b,
.page-store .pe-num b,.page-store .acc-total .money,.page-store .kf-total,.page-store .cp-price,.page-store .bb-price,.page-store .cp-txt .money{
  font-family:var(--display);font-variant-numeric:lining-nums;font-feature-settings:"lnum" 1;
}
.page-store .price-main .per{font-family:var(--sans);font-variant-numeric:tabular-nums lining-nums}
/* a figure that sits inside a sentence of the body text is not "big": the free-delivery line is Assistant except its amount */
.page-store .cp-txt{font-variant-numeric:lining-nums}
