/* sst-site-font-20261021: ONE font for the whole site.
   Canonical family = the theme token --sst-font (style.css :root, "Figtree" stack). The header, footer, menus, cart
   drawer, cart / checkout / account pages, policy pages and the product page body text already use it; this file makes
   every place that named its own family follow the same token:
     product pages    Fraunces serif on the title, "Description" / "Additional information" / "Reviews" headings and the
                      "Related products" heading (mu-plugins/sst-product-arc-accents.php, printed in wp_footer)
     blog posts       Fraunces on the article h1 / h2 / h3 (same plugin)
     card list pages  Helvetica Now + Fraunces skin (sst-cardlist-dark-skin.php, sst-cardlist-other-sets.php) - this
                      replaces cardlist-font.css (which put those pages on Inter)
     rankings         /pages/best-*-cards (sst-card-rankings.php: Helvetica Neue + Fraunces numbers)
     collections      sibling chips / top 5 block (sst-collection-seo-blocks.php: system stack + Fraunces numbers)
     Quick Order      Inter on .sst-qo, its modals, the PSA10 sidebar / back order cards / price bar / sort box, and the
                      NO SHRINK guide; Archivo + IBM Plex Mono on the TOP tab (top-tab.css)
     product insights "Quick Order" eyebrow (IBM Plex Mono); FAQ page (its own Inter rule); checkout variant B token
   Font family only (plus the theme's own heading weights where the serif pass had thinned them to 400). No markup,
   text, colour, size or layout change. Machine codes keep monospace on purpose: tracking numbers (.sst-opt-tracking),
   address-change / claim codes.
   Whole site on Inter instead? Change the ONE :root line below (the Inter alternative is in the comment under it). */
:root{--sst-font:"Figtree",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
/* :root{--sst-font:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif} */
/* the referral UI css reads --sst-font-body (falls back to Arial where it is undefined): same token */
:root{--sst-font-body:var(--sst-font);--sst-font-display:var(--sst-font)}
html body{font-family:var(--sst-font)!important}
/* form controls do not inherit the page font by default (Chrome draws them in Arial): the Quick Order -/+ steppers,
   "Clear cart", the cart drawer "x", card list chips, blog filter buttons, newsletter "Subscribe", sort / filter boxes */
button,input,select,textarea,optgroup,option{font-family:inherit!important}

/* --- product pages (every /products/ page) --- */
.woocommerce div.product .product_title{font-family:var(--sst-font)!important;font-weight:700!important;letter-spacing:0!important}
.woocommerce div.product .related.products>h2,
.woocommerce div.product .upsells.products>h2,
.woocommerce div.product .related.products.sst-fbt>.sst-fbt__head>h2,
.woocommerce div.product .related.products.sst-pi-recent>.sst-fbt__head>h2,
.woocommerce-Tabs-panel h2,
.woocommerce-Reviews-title{font-family:var(--sst-font)!important;font-weight:700!important}
/* the description text itself, whatever markup a product's text carries (pasted styles included) */
.woocommerce-Tabs-panel,
.woocommerce-Tabs-panel :not(code):not(pre):not(kbd):not(svg):not(svg *){font-family:var(--sst-font)!important}
.sst-pi-qocta__eyebrow{font-family:var(--sst-font)!important}

/* --- blog posts --- */
.sst-article-header h1{font-family:var(--sst-font)!important;font-weight:800!important}
.sst-article-content h2,
.sst-article-content h3{font-family:var(--sst-font)!important;font-weight:700!important}

/* --- card list pages (hub, *-card-list, best-*-cards); same selectors as cardlist-font.css, token instead of Inter --- */
html body .sst-page-content,
.sst-card-search-hub,.sst-card-search-hub__title,
.entry-title,.entry-content h1,.entry-content h2,.entry-content h3,
.m5-title-row h1,.m5-title-row h2,.m6-page .m6-title-row h2,.sst-op16-hero h1,
.sst-card-search-hub__results-title,.sst-arc-mid-title,.sst-card-search-hub__games .sst-card-search-game__title,
.sst-game-set-hub__title,.sst-game-set-hub__section-title,
.sst-pl-h,.sst-clj-h,.sst-clj-title,.sst-cln-title,.sst-arc-display,
.sst-other-sets,.sst-other-sets h2{font-family:var(--sst-font)!important}

/* --- rankings + collection pages --- */
.sst-rank,.sst-rank-no,.sst-rank-soldhead,
.sst-col-siblings,.sst-col-top5,.sst-col-top5__no{font-family:var(--sst-font)!important}

/* --- FAQ page (inline rule in the page content prefers Inter) --- */
.sst-faq-page{font-family:var(--sst-font)!important}

/* --- Quick Order: the block itself and its overlays (quick-order*.css hardcode Inter) --- */
.sst-qo,.sst-qo__cart h3,.sst-qo__modal-card,.sst-qo-desc-modal,.sst-qo__details-gate{font-family:var(--sst-font)!important}
/* every descendant too: several Quick Order pieces set the family through the `font:` shorthand (back order badges
   "Out of stock (Back order)", Add / Show more buttons, loading line, toast, lightbox counter, modal nav) */
.sst-qo *,.sst-qo__modal-card *,.sst-qo-desc-modal *,.sst-qo__details-gate *,
.sst-qo__lightbox,.sst-qo__lightbox *,.sst-psa-bo-toast,.sst-qo-toast,.sst-qo-toast *{font-family:var(--sst-font)!important}
/* PSA10 sidebar, stock boxes, back order cards + cart box, price bar (sst-qo-psa-sidebar css) */
.sst-psa-side,.sst-psa-stock__opt,.sst-psa-bo,.sst-psa-bo *,.sst-psa-bo__more,.sst-psa-bocart,.sst-psa-bocart *,.sst-psa-price,
.sst-psa-bo__badges .sst-qo__badge,.sst-qo__badges .sst-psa-bo-badge,.sst-psa-bo__loading{font-family:var(--sst-font)!important}
/* home slider countdown box (inc/sst-op-magazine2-banner.php: Arial) */
.sst-opmag2-label,.sst-opmag2-timer,.sst-opmag2-start{font-family:var(--sst-font)!important}
/* the sort box rule in that css is !important itself: id-level specificity so this one wins whatever the load order */
html body .sst-qo .sst-qo__group.sst-psa-stock-on .sst-qo__filters .sst-qo__sort:not(#sst-never){font-family:var(--sst-font)!important}
/* NO SHRINK guide (qo-noshrink.css: Inter kickers / chips / buttons, Georgia "i" mark) */
.sst-qons,.sst-qons-kicker,.sst-qons-chip,.sst-qons-vgrid>.sst-qons-vhead,.sst-qons-trust span,.sst-qons-btn,
.sst-qo__offer--noshrink .sst-qo__offer-label::after{font-family:var(--sst-font)!important}
/* TOP tab: Archivo display + IBM Plex Mono eyebrows, prices, badges, stock lines, notify bell (top-tab.css) */
.sst-top,.sst-top *{font-family:var(--sst-font)!important}
/* COUPONS tab + coupon wallet (sst-qo-coupon-tab: own --sst-qct-font token = Inter; wallet rank overlay in Impact) and the
   favorites tab / panel (sst-qo-favorites: --sst-qof-font = Inter): point the tokens at the site font */
html body .sst-qct-tab,html body .sst-qct-panel,html body .sst-qcw{--sst-qct-font:var(--sst-font)!important}
.sst-qct-tab,.sst-qct-panel,.sst-qcw,.sst-qo button.sst-qct-back,.sst-qcw .sst-qcw-designer-rank{font-family:var(--sst-font)!important}
html body .sst-qof-panel,html body .sst-qof-tab,html body .sst-qo button.sst-qof-tab{--sst-qof-font:var(--sst-font)!important}
.sst-qof-panel,.sst-qof-tab{font-family:var(--sst-font)!important}

/* --- set-code / date chips drawn in monospace (home guide + set list bands, release calendar): same font as the
       words around them. Real machine identifiers stay monospace: tracking numbers, address-change / claim codes,
       the TCG Index data ids and version strings, points codes. --- */
.sst-home-guide__code,.sst-home-sets__link .code,.sst-datechip,.sst-today-label,.sst-code{font-family:var(--sst-font)!important}
/* the release calendar page keeps its chip font in a --sst-mono variable (.sst-cal .sst-code / .sst-datechip /
   .sst-today-label / .cal-log b): point the variable at the site font, above the page's own inline definition */
html body .sst-cal{--sst-mono:var(--sst-font)!important}

/* --- checkout variant B defines its own type token (literal Figtree): follow the site token --- */
body.sst-co-ab.sst-co-v-b{--co-font:var(--sst-font)!important}
