/* ==========================================================
   GLOBAL TYPOGRAPHY (CUSTOMIZER DYNAMIC FONTS)
========================================================== */

/* 1. Global Headings */
h1, h2, h3, h4, h5, h6 {
    font-family: var(--marbo-font-heading, 'Fraunces', serif) !important;
    font-weight: 400 !important;
    font-style: normal !important;
    color: #111;
    margin-top: 0;
}

h1 { font-size: var(--font-h1); }
h2 { font-size: var(--font-h2); }
h3 { font-size: var(--font-h3); }

.marbo-cover-title, .woocommerce-products-header__title.page-title {
    font-size: var(--font-h1) !important;
}

/* 2. Base Body Text */
body, p, .woocommerce-product-details__short-description, .accordion-content, .footer-about {
    font-family: var(--marbo-font-body, 'Inter', sans-serif) !important;
    font-size: var(--font-body) !important;
    line-height: 1.7 !important;
    font-weight: 300 !important;
}

/* 3. Product Names */
.woocommerce div.product .product_title {
    font-family: var(--marbo-font-heading, 'Fraunces', serif) !important;
    font-size: 17.5px !important; /* Lowered by 20% from 21.5px */
    font-weight: 400 !important;
    font-style: normal !important;
    color: #111 !important;
    line-height: 1.25 !important;
    margin-bottom: 16px !important;
}

.sticky-product-title {
    font-family: var(--marbo-font-heading, 'Fraunces', serif) !important;
    font-weight: 400 !important;
    font-style: normal !important;
    letter-spacing: -0.01em !important;
}

ul.products li.product .woocommerce-loop-product__title {
    font-family: var(--marbo-font-body, 'Inter', sans-serif) !important;
    font-size: 12.5px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    color: #111 !important;
    margin-top: 13px !important;
    margin-bottom: 4px !important;
    
    /* Safely forces 1-line lock with ellipsis WITHOUT breaking the CSS Grid */
    display: -webkit-box !important;
    -webkit-line-clamp: 1 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: normal !important;
    max-width: 100% !important;

    /* HARD CAPS the height to exactly 1 line to prevent bottom-peeking */
    line-height: 1 !important;
    height: 1.4em !important;
    max-height: 1.4em !important;
}

/* 4. Navbar & Mobile Menu */
.left-nav a, .right-nav a, .mobile-nav a {
    font-family: var(--marbo-font-body, 'Inter', sans-serif) !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    text-transform: capitalize !important;
    letter-spacing: 0.03em !important;
}

/* 5. Labels & Badges */
.marbo-cover-subtitle, .marbo-grid-category a, .lux-summary-line, .marbo-four-badges .badge-box span, .lux-item-badge {
    font-family: var(--marbo-font-body, 'Inter', sans-serif) !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
    font-size: var(--font-caption) !important;
}

.marbo-stock-status {
    text-transform: none !important;
    letter-spacing: normal !important;
    font-family: var(--marbo-font-body, 'Inter', sans-serif) !important;
    font-weight: 400 !important;
}

/* 6. Buttons */
.single_add_to_cart_button, .marbo-buy-now, .marbo-quick-buy-wrapper .button, .lux-checkout-btn, .newsletter-form button {
    font-family: var(--marbo-font-body, 'Inter', sans-serif) !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
    font-size: var(--font-button) !important;
}

/* 7. Pricing (Single & Variable Products) */
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce div.product .price,
.woocommerce div.product p.price .woocommerce-Price-amount,
.woocommerce div.product .woocommerce-variation-price .price,
.woocommerce div.product .woocommerce-variation-price span.amount,
.woocommerce div.product .woocommerce-variation-price .woocommerce-Price-amount,
.woocommerce div.product .single_variation .price,
.woocommerce div.product .single_variation span.amount,
.woocommerce div.product .single_variation .woocommerce-Price-amount,
.woocommerce div.product p.price ins,
.woocommerce div.product p.price ins .woocommerce-Price-amount {
    font-family: var(--marbo-font-body, 'Inter', sans-serif) !important;
    font-size: 14.5px !important; /* Lowered by 20% from 18px */
    font-weight: 500 !important;
    color: #111111 !important;
    text-decoration: none !important;
}

.woocommerce div.product p.price del,
.woocommerce div.product p.price del .woocommerce-Price-amount,
.woocommerce div.product .price del,
.woocommerce div.product .price del span.amount,
.woocommerce div.product .price del .woocommerce-Price-amount {
    font-family: var(--marbo-font-body, 'Inter', sans-serif) !important;
    font-size: 11px !important; /* Lowered by 20% from 13.5px */
    font-weight: 300 !important;
    color: #999999 !important;
    text-decoration: line-through !important;
}

/* Shop Grid Prices */
ul.products li.product .price, .lux-item-price { 
    font-family: var(--marbo-font-body, 'Inter', sans-serif) !important; 
    font-size: 12.5px !important; 
    color: #888 !important; 
    font-weight: 500 !important; 
}
ul.products li.product .price ins { 
    color: #888 !important; 
    font-weight: 500 !important; 
    text-decoration: none !important; 
}
ul.products li.product .price del { 
    display: none !important; 
}

/* 8. Consolidated Mobile/Tablet Typography */
@media screen and (max-width: 1024px) {
    .woocommerce div.product .product_title { font-size: 17.5px !important; }
    ul.products li.product .woocommerce-loop-product__title { font-size: 11.5px !important; }
    ul.products li.product .price, .lux-item-price { font-size: 11.5px !important; }
}

@media screen and (max-width: 768px) {
    .woocommerce div.product .product_title { font-size: 17px !important; }
    ul.products li.product .woocommerce-loop-product__title { font-size: 12px !important; }
    ul.products li.product .price, .lux-item-price { font-size: 12px !important; }
}