/**
 * Site typography
 *
 * Why this file existed as a hard override:
 * Compiled theme CSS and the Elementor kit still named leftover faces
 * (Manrope, Inter, mr-eaves-modern). We loaded this last with !important so
 * DDEV / Canvas / kit pages all rendered Fellix. That also blocked Elementor
 * Global Fonts and widget typography (classic Heading / Text Editor).
 *
 * Split:
 * - Theme-coded pages (Timber products, shop, cart, taxonomy): Fellix.
 * - Elementor-built pages (body.elementor-page) and the editor: Site Settings
 *   Global Fonts + widget typography. Do not force kit CSS variables or
 *   widget selectors here.
 *
 * Theme chrome (.m-*, WooCommerce, Product Explorer) stays Fellix even when
 * an Elementor header/footer is present on a Timber page.
 */

:root {
    --font-body: "Fellix", sans-serif;
    --font-heading: "Fellix", sans-serif;
    --font-page-title: "Fellix", sans-serif;
}

/* Timber pages load style.css (antialiased). Elementor Canvas skips it. */
html,
body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-synthesis: none;
}

*,
*::before,
*::after {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/*
 * Theme-coded documents only. Elementor pages use kit / widget CSS instead.
 * Specificity beats a bare `body { font-family: var(--e-global-…) }` from the kit.
 */
body:not(.elementor-page):not(.elementor-editor-active):not(.elementor-editor-preview),
body:not(.elementor-page):not(.elementor-editor-active):not(.elementor-editor-preview) button,
body:not(.elementor-page):not(.elementor-editor-active):not(.elementor-editor-preview) input,
body:not(.elementor-page):not(.elementor-editor-active):not(.elementor-editor-preview) select,
body:not(.elementor-page):not(.elementor-editor-active):not(.elementor-editor-preview) textarea {
    font-family: var(--font-body);
    font-weight: 400;
}

body:not(.elementor-page):not(.elementor-editor-active):not(.elementor-editor-preview) h1,
body:not(.elementor-page):not(.elementor-editor-active):not(.elementor-editor-preview) h2,
body:not(.elementor-page):not(.elementor-editor-active):not(.elementor-editor-preview) h3,
body:not(.elementor-page):not(.elementor-editor-active):not(.elementor-editor-preview) h4,
body:not(.elementor-page):not(.elementor-editor-active):not(.elementor-editor-preview) h5,
body:not(.elementor-page):not(.elementor-editor-active):not(.elementor-editor-preview) h6 {
    font-family: var(--font-heading);
}

.m-header,
.m-header__nav,
.m-header__nav-block,
.m-header__nav a,
.m-header__nav-block a,
.m-cta,
.m-wyswyg,
.m-wyswyg p,
.m-filters,
.m-filters__wrap,
.m-filters__counter,
.m-filters__reset,
.m-accordion,
.m-accordion__list,
.m-carousel__pagination,
.m-cart-totals,
.m-cart__header-breadcrumbs,
.m-cart__item-name,
.m-cart__item-price,
.m-cart__item-sku,
.m-checkout-totals,
.m-circle-list__item,
.m-editorial-content__main-content,
.m-faq-content__main-content,
.m-faq-content__sidebar nav,
.m-finish-content__main-content,
.m-finish-content__sidebar nav,
.m-grid-gallery__card span,
.m-hp-carousel__cta a,
.m-hp-carousel__pags,
.m-input--text label,
.m-input--email label,
.m-input--tel label,
.m-input--textarea label,
.m-input--select label,
.m-media-text__caption,
.m-media-text__cta,
.m-media-text__text,
.m-order,
.m-pointer__tooltip span,
.m-product-controls__form .price,
.m-product-grid__header,
.m-product-grid__sq,
.m-product-video-trigger,
.m-qty__btn,
.m-small-footer,
.m-square-material__wrapper span,
.m-table table,
.m-tease__sku,
.m-tease__title em,
.m-timeline__item,
.m-tooltip,
.woocommerce,
.woocommerce p,
.woocommerce .m-checkout__form .form-row label,
.woocommerce .m-checkout__form .form-row input,
.woocommerce .m-checkout__form .form-row textarea,
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-privacy-policy-text,
.select2-container,
.bpe-explorer,
.bpe-toolbar,
.bpe-filters,
.bpe-filters__tab,
.bpe-filters__tab-label,
.bpe-filters__panel,
.bpe-filters__panel .facetwp-checkbox,
.bpe-search,
.m-category-intro__summary p,
.m-category-intro__more p,
.m-category-outro p,
.m-faq__panel {
    font-family: var(--font-body) !important;
    font-weight: 400;
}

.m-wyswyg strong,
.m-wyswyg b {
    font-family: var(--font-body) !important;
}

.yith-wcwl-add-to-wishlist {
    margin-top: 0 !important;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt.disabled,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt.disabled:hover {
    opacity: 0.3;
    border-radius: 4px;
    background-color: #151515;
}

.m-product-grid__title.-label,
.m-product-grid__title span,
.m-product-grid__title small,
.m-product-grid__title:not(.-label),
.m-product-grid__title:not(.-label) > div,
.m-category-intro__eyebrow,
.m-category-intro__title,
.m-faq__eyebrow,
.m-faq__title,
.m-footer__title,
.m-footer__overline,
.m-footer__box-title,
.m-media-text__title,
.m-tease__title,
.m-tease__subtitle,
.m-collections-card__title,
.m-filters__title,
.m-faq-question__title,
.m-faq-content__single h1,
.m-faq-content__single h2,
.m-faq-content__sidebar strong,
.m-editorial-content__title,
.m-editorial-content__sub-title,
.m-contacts-head__title,
.m-contacts-head__subtitle,
.m-contacts-form__title,
.m-contacts-form__ml__title,
.m-header__nav-block > strong,
.m-timeline__item span,
.m-circle-list__item span,
.m-prev-next__title span,
.m-prev-next__title strong,
.m-finish-content__sidebar strong,
.m-finish-content__single h1,
.m-cart__header-title,
.m-cart__items-title,
.m-billing__title,
.m-shipping__title,
.m-cart-totals__title,
.m-pointer__tooltip strong,
.m-accordion__title,
.m-table__title,
.m-order__title,
.m-inner-hero__title,
.m-inner-hero__title--1,
.m-inner-hero__title--2,
.m-inner-hero__title--3,
.m-inner-hero__title--4,
.m-hp-carousel__title,
.m-product-container__sidebar-head h1,
.bpe-card__title,
.bpe-hero__eyebrow {
    font-family: var(--font-heading) !important;
}
