/* Device-local typography: no text-font downloads. */
:where(body.ft-store) {
  --ft-font-body: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  --ft-font-display: var(--ft-font-body);
}
body.ft-store,
.ft-store .ft-home,
.ft-store .ft-site-header,
.ft-store .ft-site-footer,
.ft-store .ft-gh,
.ft-store #content .dsp-card .name a,
.ft-store #content .dsp-card .price,
.ft-store .ft-stock-notice p,
.ft-store .ft-stock-notice a,
.ft-store .ft-gh .ft-gh-kicker,
.ft-store .ft-gh .ft-gh-cat,
.ft-store .ft-gh a.ft-gh-btn,
.ft-store .ft-gh .ft-gh-combo span {
  font-family: var(--ft-font-body);
}
body.ft-store a:is(:hover, :focus, :active),
html.no-touchevents body.ft-store a:hover {
  font-family: inherit;
}
.ft-store .ft-home h1,
.ft-store .ft-home h2,
.ft-store .ft-home h3,
.ft-store #content h1,
.ft-store #content h2,
.ft-store #content h3,
.ft-store #content h4,
.ft-store .ft-gh .ft-gh-title,
.ft-store .ft-footer-grid h2 {
  font-family: var(--ft-font-display);
  font-weight: 700;
}
.ft-store .ft-home h1 { letter-spacing: -.025em; }
.ft-store .ft-home h2 { letter-spacing: -.015em; }
.ft-store .ft-gh .ft-gh-title { letter-spacing: .01em; }

/* Override native important text fonts without replacing icon glyph faces. */
body.ft-store :is(div, p, a, span, input, select, textarea, button, label, li, dt, dd, td, th, strong, b, small, em, address, legend, option, h1, h2, h3, h4, h5, h6):not(.fa):not(.icon) {
  font-family: var(--ft-font-body) !important;
}
body.ft-store #product-product :is(input, select, textarea, button),
body.ft-store #product-product #button-cart,
body.ft-store #product-product [data-quick-buy] {
  font-family: var(--ft-font-body) !important;
}
body.ft-store :is(h1, h2, h3, h4, h5, h6, .ft-gh-title):not(.fa):not(.icon),
body.ft-store :is(h1, h2, h3, h4, h5, h6, .ft-gh-title) :is(a, span, strong, em):not(.fa):not(.icon) {
  font-family: var(--ft-font-display) !important;
}
