/*
 * HB HUGO Storefront Final v3.1.0
 * Component-scoped typography layer built from:
 * - current HUGO BOSS UK semantic font tokens / computed PLP captures
 * - supplied staging-site computed-style audit
 * This file changes typography only. It does not own layout or icon rendering.
 */

:root {
    --hb-hugo-font: "AvertaPE", Arial, Helvetica, sans-serif;
}

/* Family normalization only. Size/weight remain component-scoped below. */
.main-page-wrapper,
.whb-header,
.footer-container,
footer,
.woocommerce,
.woocommerce-page,
button,
input,
select,
textarea {
    font-family: var(--hb-hugo-font) !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.elementor-heading-title,
.wd-title,
.wd-entities-title,
.widget-title,
.woocommerce legend {
    font-family: var(--hb-hugo-font) !important;
}

.elementor-widget-text-editor,
.wd-text-block,
.woocommerce,
.woocommerce-page {
    font-family: var(--hb-hugo-font) !important;
}

/* ================================================================
   DESKTOP HEADER — source-proven primary navigation token
   ================================================================ */
@media (min-width: 1025px) {
    .whb-header .wd-nav-main > li > a,
    .wd-header-nav > .wd-nav > li > a,
    .wd-nav-main > li > a {
        font-family: var(--hb-hugo-font) !important;
        font-size: 14px !important;
        font-weight: 700 !important;
        font-style: normal !important;
        line-height: 17.5px !important;
        letter-spacing: normal !important;
        word-spacing: 0 !important;
        text-transform: none !important;
    }

    .whb-header .wd-tools-text,
    .whb-header .wd-header-text,
    .wd-tools-element .wd-tools-text {
        font-family: var(--hb-hugo-font) !important;
        font-size: 12px !important;
        font-weight: 400 !important;
        font-style: normal !important;
        line-height: 15px !important;
        letter-spacing: normal !important;
        text-transform: none !important;
    }

    /* Mega-menu geometry/state remains owned by the existing working menu. */
    .wd-dropdown-menu .widget-title,
    .wd-dropdown-menu .elementor-heading-title,
    .wd-dropdown-menu .wd-heading {
        font-family: var(--hb-hugo-font) !important;
        font-size: 14px !important;
        font-weight: 400 !important;
        font-style: normal !important;
        line-height: 17.5px !important;
        letter-spacing: normal !important;
        word-spacing: 0 !important;
        text-transform: none !important;
    }

    .wd-dropdown-menu .wd-sub-menu a,
    .wd-dropdown-menu .menu-item > a,
    .wd-dropdown-menu .elementor-widget-text-editor a {
        font-family: var(--hb-hugo-font) !important;
        font-size: 14px !important;
        font-weight: 400 !important;
        font-style: normal !important;
        line-height: 17.5px !important;
        letter-spacing: normal !important;
        text-transform: none !important;
    }
}

/* ================================================================
   EDITORIAL / CONTENT COPY
   ================================================================ */
.home .main-page-wrapper .elementor-widget-text-editor p,
.home .main-page-wrapper .wd-text-block p,
.hb-editorial-copy,
.hb-editorial-copy p {
    font-family: var(--hb-hugo-font) !important;
    font-size: 15px !important;
    font-weight: 100 !important;
    font-style: normal !important;
    line-height: 24px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

.home .main-page-wrapper .elementor-heading-title,
.home .main-page-wrapper .wd-title,
.hb-editorial-title,
.hb-section-title {
    font-family: var(--hb-hugo-font) !important;
    font-style: normal !important;
    letter-spacing: normal !important;
}

.home .main-page-wrapper .wd-button-wrapper a.btn-style-link,
.home .main-page-wrapper a.btn-style-link,
.hb-editorial-cta {
    font-family: var(--hb-hugo-font) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 20px !important;
    letter-spacing: normal !important;
}

/* ================================================================
   PRODUCT CARD / GRID / CAROUSEL / LOOP BUILDER
   ================================================================ */
.product-grid-item .wd-entities-title,
.product-grid-item .wd-entities-title a,
.wd-product .wd-entities-title,
.wd-product .wd-entities-title a,
.wd-product-loop .wd-entities-title,
.wd-product-loop .wd-entities-title a,
ul.products li.product .woocommerce-loop-product__title,
.elementor-widget-wd_products .wd-entities-title,
.elementor-widget-wd_products .wd-entities-title a,
.elementor-widget-wd_products_tabs .wd-entities-title,
.elementor-widget-wd_products_tabs .wd-entities-title a {
    font-family: var(--hb-hugo-font) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 17.5px !important;
    letter-spacing: normal !important;
    word-spacing: 0 !important;
    text-transform: uppercase !important;
}

.product-grid-item .price,
.product-grid-item .price > *,
.wd-product .price,
.wd-product .price > *,
.wd-product-loop .price,
.wd-product-loop .price > *,
ul.products li.product .price,
ul.products li.product .price > * {
    font-family: var(--hb-hugo-font) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 17.5px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

.product-grid-item .wd-product-cats,
.product-grid-item .wd-product-brands,
.wd-product .wd-product-cats,
.wd-product .wd-product-brands,
.wd-product-loop .wd-product-cats,
.wd-product-loop .wd-product-brands,
.wd-product .wd-product-stock,
.wd-product .wd-product-sku {
    font-family: var(--hb-hugo-font) !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 15px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

.product-labels .product-label,
.wd-product .onsale,
ul.products li.product .onsale {
    font-family: var(--hb-hugo-font) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 15px !important;
    letter-spacing: normal !important;
}

.wd-product .wd-swatch-text,
.wd-product .wd-swatches-product .wd-swatch-text,
.wd-product .wd-more-colors,
.wd-product .wd-swatches-product .wd-more-colors,
.product-grid-item .wd-more-colors {
    font-family: var(--hb-hugo-font) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 15px !important;
    letter-spacing: normal !important;
}

/* ================================================================
   CATEGORY / PLP TOOLS
   ================================================================ */
body.tax-product_cat .wd-filter-list a,
body.tax-product_cat .widget_layered_nav a,
body.tax-product_cat .woocommerce-widget-layered-nav-list a,
body.post-type-archive-product .wd-filter-list a,
body.post-type-archive-product .widget_layered_nav a,
body.post-type-archive-product .woocommerce-widget-layered-nav-list a {
    font-family: var(--hb-hugo-font) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 17.5px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

body.tax-product_cat .woocommerce-ordering,
body.tax-product_cat .woocommerce-ordering select,
body.tax-product_cat .wd-sort-dropdown a,
body.tax-product_cat .wd-dropdown-sort a,
body.tax-product_cat .wd-shop-tools a,
body.post-type-archive-product .woocommerce-ordering,
body.post-type-archive-product .woocommerce-ordering select,
body.post-type-archive-product .wd-sort-dropdown a,
body.post-type-archive-product .wd-dropdown-sort a,
body.post-type-archive-product .wd-shop-tools a {
    font-family: var(--hb-hugo-font) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 17.5px !important;
    letter-spacing: normal !important;
}

body.tax-product_cat .woocommerce-result-count,
body.tax-product_cat .wd-shop-result-count,
body.tax-product_cat .woocommerce-breadcrumb,
body.tax-product_cat .breadcrumbs,
body.tax-product_cat .wd-breadcrumbs,
body.post-type-archive-product .woocommerce-result-count,
body.post-type-archive-product .wd-shop-result-count,
body.post-type-archive-product .woocommerce-breadcrumb,
body.post-type-archive-product .breadcrumbs,
body.post-type-archive-product .wd-breadcrumbs {
    font-family: var(--hb-hugo-font) !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 15px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

/* ================================================================
   SINGLE PRODUCT / PDP
   ================================================================ */
.single-product .wd-single-title .product_title,
.single-product .elementor-widget-wd_single_product_title .product_title,
.single-product .summary .product_title,
.single-product h1.product_title {
    font-family: var(--hb-hugo-font) !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 25px !important;
    letter-spacing: normal !important;
    word-spacing: 0 !important;
    text-transform: uppercase !important;
}

.single-product .wd-single-price .price,
.single-product .wd-single-price .price > *,
.single-product .elementor-widget-wd_single_product_price .price,
.single-product .elementor-widget-wd_single_product_price .price > *,
.single-product .product-image-summary .price,
.single-product .product-image-summary .price > *,
.single-product .summary-inner > .price,
.single-product .summary-inner > .price > * {
    font-family: var(--hb-hugo-font) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 20px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

.single-product .wd-single-short-desc,
.single-product .wd-single-short-desc p,
.single-product .woocommerce-product-details__short-description,
.single-product .woocommerce-product-details__short-description p,
.single-product .woocommerce-Tabs-panel p,
.single-product .wd-accordion-content p {
    font-family: var(--hb-hugo-font) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 17.5px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

.single-product table.variations label,
.single-product .variations label,
.single-product .wd-swatches-product .wd-label,
.single-product .wd-swatches-name {
    font-family: var(--hb-hugo-font) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 17.5px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

.single-product .variations select,
.single-product .wd-swatches-product .wd-swatch-text,
.single-product .wd-swatch-text,
.single-product .reset_variations,
.single-product .wd-sizeguide-btn,
.single-product .wd-sizeguide-btn a {
    font-family: var(--hb-hugo-font) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 17.5px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

.single-product .single_add_to_cart_button {
    font-family: var(--hb-hugo-font) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 17.5px !important;
    letter-spacing: normal !important;
    text-transform: uppercase !important;
}

.single-product .woocommerce-tabs .tabs li a,
.single-product .wd-accordion-title-text,
.single-product .product-tabs-wrapper .tabs li a {
    font-family: var(--hb-hugo-font) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 17.5px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

.single-product .product_meta,
.single-product .product_meta a,
.single-product .sku_wrapper,
.single-product .posted_in,
.single-product .tagged_as {
    font-family: var(--hb-hugo-font) !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 15px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

.single-product .related > h2,
.single-product .upsells > h2,
.single-product .wd-products-element-title {
    font-family: var(--hb-hugo-font) !important;
    font-size: 24px !important;
    font-weight: 800 !important;
    font-style: normal !important;
    line-height: 30px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

/* ================================================================
   CART — classic + Woo blocks
   ================================================================ */
.woocommerce-cart .entry-title,
.woocommerce-cart .cart-totals-inner h2,
.woocommerce-cart .wc-block-cart__totals-title {
    font-family: var(--hb-hugo-font) !important;
    font-size: 24px !important;
    font-weight: 800 !important;
    font-style: normal !important;
    line-height: 30px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

.woocommerce-cart .woocommerce-cart-form,
.woocommerce-cart .cart-totals-inner,
.woocommerce-cart .wc-block-cart,
.woocommerce-cart .wc-block-cart table,
.woocommerce-cart .wc-block-cart p {
    font-family: var(--hb-hugo-font) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 17.5px !important;
    letter-spacing: normal !important;
}

.woocommerce-cart .checkout-button,
.woocommerce-cart .woocommerce-cart-form button.button,
.woocommerce-cart .cart-actions button,
.woocommerce-cart .wc-block-cart__submit-button {
    font-family: var(--hb-hugo-font) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 17.5px !important;
    letter-spacing: normal !important;
    text-transform: uppercase !important;
}

/* ================================================================
   CHECKOUT — classic + Woo blocks
   ================================================================ */
.woocommerce-checkout h3,
.woocommerce-checkout .entry-title,
.woocommerce-checkout .wc-block-checkout h2,
.woocommerce-checkout .wc-block-checkout h3 {
    font-family: var(--hb-hugo-font) !important;
    font-size: 24px !important;
    font-weight: 800 !important;
    font-style: normal !important;
    line-height: 30px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

.woocommerce-checkout .form-row label,
.woocommerce-checkout .wc-block-components-text-input label,
.woocommerce-checkout .wc-block-components-checkbox__label {
    font-family: var(--hb-hugo-font) !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 15px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

.woocommerce-checkout input,
.woocommerce-checkout select,
.woocommerce-checkout textarea,
.woocommerce-checkout .wc-block-checkout input,
.woocommerce-checkout .wc-block-checkout select,
.woocommerce-checkout .wc-block-checkout textarea {
    font-family: var(--hb-hugo-font) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 17.5px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

.woocommerce-checkout #place_order,
.woocommerce-checkout button.button,
.woocommerce-checkout .wc-block-components-checkout-place-order-button {
    font-family: var(--hb-hugo-font) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 17.5px !important;
    letter-spacing: normal !important;
    text-transform: uppercase !important;
}

/* ================================================================
   ACCOUNT / AUTH FORMS
   ================================================================ */
.woocommerce-account .entry-title,
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3 {
    font-family: var(--hb-hugo-font) !important;
    font-size: 24px !important;
    font-weight: 800 !important;
    font-style: normal !important;
    line-height: 30px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
    font-family: var(--hb-hugo-font) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 17.5px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

.woocommerce-account label,
.woocommerce-account .woocommerce-form-row label {
    font-family: var(--hb-hugo-font) !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 15px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

.woocommerce-account input,
.woocommerce-account select,
.woocommerce-account textarea {
    font-family: var(--hb-hugo-font) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 17.5px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

.woocommerce-account button.button,
.woocommerce-account .woocommerce-form-login__submit,
.woocommerce-account .woocommerce-form-register__submit {
    font-family: var(--hb-hugo-font) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 17.5px !important;
    letter-spacing: normal !important;
    text-transform: uppercase !important;
}

/* ================================================================
   FOOTER
   ================================================================ */
.footer-container,
.footer-container .widget,
footer {
    font-family: var(--hb-hugo-font) !important;
}

.footer-container .widget-title,
footer .widget-title,
footer h4,
footer h5 {
    font-family: var(--hb-hugo-font) !important;
    font-style: normal !important;
    letter-spacing: normal !important;
}

.footer-container .widget_text,
.footer-container .textwidget,
.footer-container .elementor-widget-text-editor,
.footer-container .elementor-widget-text-editor p,
footer .elementor-widget-text-editor,
footer .elementor-widget-text-editor p {
    font-family: var(--hb-hugo-font) !important;
    font-size: 14px !important;
    font-weight: 100 !important;
    font-style: normal !important;
    line-height: 22px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

.footer-container .widget_nav_menu a,
.footer-container .menu a,
footer .menu a,
footer .elementor-widget-text-editor a {
    font-family: var(--hb-hugo-font) !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 14px !important;
    letter-spacing: 1px !important;
    text-transform: none !important;
}

.copyrights-wrapper,
.copyrights-wrapper a,
.min-footer,
.min-footer a {
    font-family: var(--hb-hugo-font) !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 15px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

/* ================================================================
   RESPONSIVE SOURCE TOKENS
   ================================================================ */
@media (max-width: 767px) {
    .product-grid-item .wd-entities-title,
    .product-grid-item .wd-entities-title a,
    .wd-product .wd-entities-title,
    .wd-product .wd-entities-title a,
    .wd-product-loop .wd-entities-title,
    .wd-product-loop .wd-entities-title a,
    ul.products li.product .woocommerce-loop-product__title,
    .elementor-widget-wd_products .wd-entities-title,
    .elementor-widget-wd_products .wd-entities-title a,
    .elementor-widget-wd_products_tabs .wd-entities-title,
    .elementor-widget-wd_products_tabs .wd-entities-title a {
        font-size: 12px !important;
        line-height: 15px !important;
    }

    .product-labels .product-label,
    .wd-product .onsale,
    ul.products li.product .onsale {
        font-size: 10px !important;
        line-height: 12.5px !important;
    }

    .home .main-page-wrapper .elementor-widget-text-editor p,
    .home .main-page-wrapper .wd-text-block p,
    .hb-editorial-copy,
    .hb-editorial-copy p {
        font-size: 14px !important;
        line-height: 22px !important;
    }

    .home .main-page-wrapper .wd-button-wrapper a.btn-style-link,
    .home .main-page-wrapper a.btn-style-link,
    .hb-editorial-cta {
        font-size: 14px !important;
        line-height: 17.5px !important;
    }

    .single-product .wd-single-title .product_title,
    .single-product .elementor-widget-wd_single_product_title .product_title,
    .single-product .summary .product_title,
    .single-product h1.product_title {
        font-size: 16px !important;
        line-height: 20px !important;
    }

    .woocommerce-account .entry-title,
    .woocommerce-account .woocommerce-MyAccount-content h2,
    .woocommerce-account .woocommerce-MyAccount-content h3 {
        font-size: 24px !important;
        line-height: 30px !important;
    }
}


/* ================================================================
   FINAL SOURCE-VERIFIED FOOTER / MEGA CORRECTIONS
   ================================================================ */
@media (min-width: 1025px) {
    .whb-header .wd-dropdown-menu .widget-title,
    .whb-header .wd-dropdown-menu .elementor-heading-title,
    .whb-header .wd-dropdown-menu .wd-heading {
        font-family: var(--hb-hugo-font) !important;
        font-size: 14px !important;
        font-weight: 400 !important;
        font-style: normal !important;
        line-height: 17.5px !important;
        letter-spacing: normal !important;
        text-transform: none !important;
    }
}

.footer-container .widget-title,
.footer-container .elementor-heading-title,
footer .widget-title,
footer .elementor-heading-title,
footer h4,
footer h5 {
    font-family: var(--hb-hugo-font) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 17.5px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

.footer-container a:not(.wd-tools-element):not(.btn):not(.button),
.footer-container .elementor-widget-text-editor a,
.footer-container .elementor-widget-text-editor p a,
.footer-container .widget_text a,
.footer-container .textwidget a,
footer .menu a,
footer .elementor-widget-text-editor a {
    font-family: var(--hb-hugo-font) !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 14px !important;
    letter-spacing: 1px !important;
    text-transform: none !important;
}

/* WoodMart shop-toolbar controls that the previous audit selectors missed. */
body.tax-product_cat .shop-loop-head .wd-shop-tools > *,
body.tax-product_cat .wd-shop-tools .wd-action-btn > a,
body.tax-product_cat .wd-shop-tools .wd-filter-buttons > a,
body.tax-product_cat .wd-shop-tools .wd-show-sidebar-btn,
body.post-type-archive-product .shop-loop-head .wd-shop-tools > *,
body.post-type-archive-product .wd-shop-tools .wd-action-btn > a,
body.post-type-archive-product .wd-shop-tools .wd-filter-buttons > a,
body.post-type-archive-product .wd-shop-tools .wd-show-sidebar-btn {
    font-family: var(--hb-hugo-font) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 17.5px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

/* PDP detail/accordion headings across classic and WoodMart single-product layouts. */
.single-product .wd-accordion-title,
.single-product .wd-accordion-title-text,
.single-product .woocommerce-tabs .tabs li a,
.single-product .wd-single-accordion .wd-accordion-title,
.single-product .wd-single-tabs .tabs li a {
    font-family: var(--hb-hugo-font) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 17.5px !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}
