/* =========================================================
   Blaze Control — front-end polish
   (footer styling, drawer z-index, product grid tidy-ups)
   Loaded from the plugin so it survives theme-file edits.
========================================================= */

:root{
    --bz-navy:#0d162b;
    --bz-navy-2:#111c33;
    --bz-orange:#ff5a00;
    --bz-line:rgba(255,255,255,.12);
    --bz-muted:#9aa6b8;
}

/* =========================================================
   00. KILL HORIZONTAL SCROLL
   Off-canvas drawers (cart / wishlist) sit past the right
   edge in their closed state and were widening the page.
   Clip horizontally + pin the fixed overlays/drawers to the
   real viewport width.
========================================================= */
/* `clip` (not `hidden`) so it does NOT create a scroll container
   and `position:sticky` on the nav keeps working. */
html{ overflow-x:clip; }
body{ overflow-x:clip; max-width:100%; }

/* The theme sets `body{display:grid}` with an implicit `auto` column,
   which grows to the widest child (a long search field / breadcrumb)
   and drags the whole page wider than the screen. Pin the column. */
body{ grid-template-columns:minmax(0,1fr) !important; }
body > *{ min-width:0 !important; max-width:100% !important; }
.blaze-cart-overlay,
.blaze-wishlist-overlay{
    width:100vw !important; max-width:100vw !important;
    left:0 !important; right:auto !important;
}
.blaze-cart-drawer,
.blaze-wishlist-drawer{
    width:min(430px, 100vw) !important;
    max-width:min(430px, 100vw) !important;
    right:0 !important; left:auto !important;
}
.blaze-cart-drawer:not(.is-open),
.blaze-wishlist-drawer:not(.is-open){
    transform:translateX(110%) !important;
    visibility:hidden;
}

/* Grid/flex children whose text can't wrap were forcing tracks wider
   than the viewport. Let them shrink + wrap. */
.blaze-footer-features-grid > *,
.blaze-ff-item,
.blaze-ff-content,
.blaze-wp-grid > *,
.blaze-wp-item > *,
.blaze-pillars-grid > *,
.blaze-process-steps > *,
.blaze-roadmap-grid > *,
.blaze-pl-cat-grid > *,
.blaze-lab-grid > *,
.blaze-product-grid > *,
.blaze-wholesale-grid > *,
.blaze-wb-preview-grid > *,
.blaze-rfq-box-grid > *,
.blaze-fc-row,
.blaze-rfqh-item,
.blaze-wb-perks > *{ min-width:0 !important; }
.blaze-main-footer,
main#primary,
.site-main,
.blaze-native-shop,
.woocommerce-products-header{ min-width:0 !important; max-width:100% !important; }
.blaze-ff-content h4,.blaze-ff-content p,
.blaze-wp-item strong,.blaze-wp-item p{ overflow-wrap:anywhere; }

/* --- Hard width containment on mobile (≤820px) --- */
@media (max-width:820px){
    #primary,
    #primary > .site-main,
    .site-main > *,
    .blaze-main-footer > *{
        max-width:100vw !important;
        overflow-x:clip;
    }
    .site-main,
    .blaze-native-shop,
    .woocommerce-products-header,
    .woocommerce-breadcrumb,
    .blaze-page,
    main#primary{ max-width:100vw !important; }
    /* long WooCommerce breadcrumb trails must wrap, not push the page wide */
    .woocommerce-breadcrumb{
        white-space:normal !important;
        word-break:break-word;
        font-size:11px !important; line-height:1.5;
    }
    /* shop / archive product grid */
    .woocommerce ul.products{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        width:100% !important; margin-left:0 !important; margin-right:0 !important;
    }
    .woocommerce ul.products > li.product{ min-width:0 !important; max-width:100% !important; margin:0 !important; }
    .blaze-native-shop-results,.blaze-native-shop{ overflow-x:clip; }
    img{ max-width:100% !important; height:auto; }
}

/* =========================================================
   0. ADAPTIVE PRIORITY NAVIGATION  (light bar, ⋮ overflow)
========================================================= */
.blaze-navigation.blaze-nav-light{
    background:#fff !important;
    border-bottom:1px solid #eef0f3;
    color:var(--bz-navy) !important;
}
.blaze-navigation.blaze-nav-light .blaze-nav-inner{
    min-height:52px;
    gap:14px;
}
.blaze-navigation.blaze-nav-light .blaze-nav-items{ gap:clamp(14px,2.4vw,38px); }
.blaze-navigation.blaze-nav-light .blaze-nav-link{
    color:var(--bz-navy) !important;
    font-size:14.5px;font-weight:800;
    padding:16px 0;position:relative;
}
.blaze-navigation.blaze-nav-light .blaze-nav-link:hover{ color:var(--bz-orange) !important; }
.blaze-navigation.blaze-nav-light .blaze-nav-link.is-active{ color:var(--bz-orange) !important; }
.blaze-navigation.blaze-nav-light .blaze-nav-link.is-active::after{
    content:"";position:absolute;left:0;right:0;bottom:8px;height:2px;background:var(--bz-orange);border-radius:2px;
}
.blaze-navigation.blaze-nav-light .blaze-dots span{ background:var(--bz-navy); }
.blaze-navigation.blaze-nav-light .blaze-menu-button:hover .blaze-dots span{ background:var(--bz-orange); }
/* Hide the ⋮ button until something actually overflows */
.blaze-navigation:not(.has-overflow) .blaze-overflow-wrap{ display:none; }
.blaze-navigation.has-overflow .blaze-overflow-wrap{ display:flex; }
.blaze-navigation.blaze-nav-light .blaze-overflow-menu{ border-color:#e6e8ec; }
/* keep the inline "Get Bulk Quote" out of the nav on small screens
   (it already exists in the main header bar) */
@media (max-width:1024px){
    .blaze-navigation .blaze-inquire-button{ display:none !important; }
    .blaze-navigation.blaze-nav-light .blaze-nav-inner{ min-height:46px; }
    .blaze-navigation.blaze-nav-light .blaze-nav-link{ font-size:13.5px;padding:13px 0; }
}

/* ---------------------------------------------------------
   1. DRAWERS — must sit above the sticky header (z 99999)
--------------------------------------------------------- */
.blaze-cart-overlay,
.blaze-wishlist-overlay{ z-index:100000 !important; }
.blaze-cart-drawer,
.blaze-wishlist-drawer{ z-index:100001 !important; }
#blaze-toast-host{ z-index:100002 !important; }
body.blaze-cart-open .blaze-sticky-header,
body.blaze-wishlist-open .blaze-sticky-header{ z-index:99990; }

/* Wishlist drawer inner layout (theme ships CSS for the cart drawer only) */
.blaze-wishlist-drawer{
    background:#fff;
    display:flex;flex-direction:column;
}
.blaze-wishlist-drawer-header{
    display:flex;align-items:center;justify-content:space-between;
    gap:12px;padding:18px 20px;border-bottom:1px solid #eef0f3;
    font-weight:800;color:var(--bz-navy);font-size:16px;flex:0 0 auto;
}
.blaze-wishlist-close{
    border:0;background:#f3f4f6;width:34px;height:34px;border-radius:9px;
    font-size:20px;line-height:1;cursor:pointer;color:#444;
}
.blaze-wishlist-close:hover{ background:var(--bz-orange);color:#fff; }
.blaze-wishlist-content{ flex:1 1 auto;overflow:auto;padding:16px 20px; }
.blaze-wishlist-grid{ display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px; }
.blaze-wishlist-tile{ position:relative;border:1px solid #eef0f3;border-radius:12px;overflow:hidden;aspect-ratio:1/1;background:#f7f8fa; }
.blaze-wishlist-tile-image{ display:block;width:100%;height:100%; }
.blaze-wishlist-tile-image img{ width:100%;height:100%;object-fit:cover;display:block; }
.blaze-wishlist-tile-remove{
    position:absolute;top:6px;right:6px;width:24px;height:24px;border:0;border-radius:50%;
    background:rgba(13,22,43,.75);color:#fff;font-size:14px;line-height:1;cursor:pointer;
}
.blaze-wishlist-empty{ text-align:center;padding:48px 16px;color:var(--bz-muted); }
.blaze-wishlist-empty-icon{ font-size:40px;margin-bottom:10px; }
.blaze-wishlist-footer{
    flex:0 0 auto;display:flex;gap:10px;padding:16px 20px;border-top:1px solid #eef0f3;
}
.blaze-wishlist-footer .blaze-wishlist-clear{
    border:1px solid #d9dce1;background:#fff;border-radius:10px;padding:10px 14px;cursor:pointer;font-weight:600;color:#444;
}
.blaze-wishlist-footer .blaze-btn{ flex:1 1 auto;text-align:center; }

/* ---------------------------------------------------------
   2. FOOTER  (theme ships markup but no styles)
--------------------------------------------------------- */
.blaze-main-footer{
    background:var(--bz-navy);
    color:#c9d2e0;
    font-size:14px;
    margin-top:40px;
}
.blaze-main-footer a{ color:#c9d2e0;text-decoration:none;transition:color .15s ease; }
.blaze-main-footer a:hover{ color:#fff; }

/* Value-props bar */
.blaze-footer-features{
    background:var(--bz-navy-2);
    border-bottom:1px solid var(--bz-line);
    padding:26px 0;
}
.blaze-footer-features-grid{
    display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;
}
.blaze-ff-item{ display:flex;gap:12px;align-items:flex-start; }
.blaze-ff-icon{
    font-size:20px;line-height:1;flex:0 0 auto;
    width:42px;height:42px;display:flex;align-items:center;justify-content:center;
    background:rgba(255,90,0,.12);border-radius:11px;
}
.blaze-ff-content h4{ margin:2px 0 4px;color:#fff;font-size:14px;font-weight:700; }
.blaze-ff-content p{ margin:0;color:var(--bz-muted);font-size:12.5px;line-height:1.5; }

/* Body / link columns */
.blaze-footer-body{ padding:44px 0 36px; }
.blaze-footer-grid{
    display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:34px;
}
.blaze-footer-col{ min-width:0; }
.blaze-footer-logo{ display:inline-block;margin-bottom:14px; }
.blaze-footer-logo img{ max-height:44px;width:auto; }
.blaze-footer-desc{ margin:0 0 16px;color:var(--bz-muted);line-height:1.65;max-width:34ch; }
.blaze-footer-contact-info{ display:flex;flex-direction:column;gap:9px; }
.blaze-fc-row{ display:flex;gap:9px;align-items:flex-start;font-size:13px;color:#c9d2e0; }
.blaze-fc-icon{ flex:0 0 auto;opacity:.85; }
.blaze-footer-heading{
    margin:0 0 15px;color:#fff;font-size:14px;font-weight:800;
    letter-spacing:.04em;text-transform:uppercase;
}
.blaze-footer-menu{ list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px; }
.blaze-footer-menu a{ font-size:13px;color:#b9c2d2; }
.blaze-footer-menu a:hover{ color:var(--bz-orange); }

/* Newsletter */
.blaze-footer-newsletter{ margin-top:18px; }
.blaze-footer-newsletter h4{ margin:0 0 4px;color:#fff;font-size:14px;font-weight:700; }
.blaze-footer-newsletter p{ margin:0 0 10px;color:var(--bz-muted);font-size:12.5px; }
.blaze-fn-form{ display:flex;gap:8px; }
.blaze-fn-form input[type=email]{
    flex:1 1 auto;min-width:0;border:1px solid var(--bz-line);background:rgba(255,255,255,.06);
    color:#fff;border-radius:9px;padding:10px 12px;font-size:13px;
}
.blaze-fn-form input[type=email]::placeholder{ color:#7f8ba1; }
.blaze-fn-form button{
    flex:0 0 auto;border:0;background:var(--bz-orange);color:#fff;border-radius:9px;
    padding:0 16px;font-size:16px;font-weight:700;cursor:pointer;
}
.blaze-fn-form button:hover{ filter:brightness(1.08); }
.blaze-fn-msg{ margin:8px 0 0; }

/* Bottom bar */
.blaze-footer-bottom{ border-top:1px solid var(--bz-line);padding:18px 0; }
.blaze-footer-bottom-inner{
    display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
}
.blaze-f-copy{ color:var(--bz-muted);font-size:12.5px; }
.blaze-f-copy strong{ color:#fff;font-weight:700; }
.blaze-f-badges{ display:flex;gap:16px;flex-wrap:wrap; }
.blaze-badge-tag{ color:var(--bz-muted);font-size:12px; }
.blaze-footer-social a:hover{ background:var(--bz-orange) !important;border-color:var(--bz-orange) !important; }

@media (max-width:1024px){
    .blaze-footer-grid{ grid-template-columns:1fr 1fr;row-gap:30px; }
    .blaze-footer-features-grid{ grid-template-columns:1fr 1fr;gap:18px; }
}
@media (max-width:640px){
    .blaze-footer-grid{ grid-template-columns:1fr; }
    .blaze-footer-features-grid{ grid-template-columns:1fr; }
    .blaze-footer-bottom-inner{ flex-direction:column;text-align:center;align-items:center; }
    .blaze-wishlist-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* ---------------------------------------------------------
   3. HOMEPAGE B2B WHOLESALE SECTION
   blaze.css ships an old light-cream `.blaze-wholesale-banner`
   that bleeds through the newer dark blaze-b2b.css rules and
   makes the white heading invisible. Neutralise it.
--------------------------------------------------------- */
.blaze-wholesale-section .blaze-wholesale-banner{
    background:transparent !important;
    border:0 !important;
    padding:0 !important;
    margin-top:8px !important;
    border-radius:0 !important;
}
.blaze-wholesale-section .blaze-wholesale-banner strong{ color:#fff; }
.blaze-wholesale-section .blaze-wholesale-banner span{ color:#cbd5e1; }
.blaze-wholesale-section .blaze-wb-content h2{ color:#fff; }
.blaze-wholesale-section .blaze-wb-preview-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    align-content:start;
}
.blaze-wholesale-section .blaze-wb-item-body{ padding:10px 12px; }
.blaze-wholesale-section .blaze-wb-item-body h4{ color:#fff;font-size:12.5px;margin:0 0 4px; }
.blaze-wholesale-section .blaze-moq-tag{ color:#cbd5e1; }
.blaze-wholesale-section .blaze-tier-price{ color:var(--bz-orange);font-weight:700; }
@media (max-width:900px){
    .blaze-wholesale-section .blaze-wholesale-banner{ grid-template-columns:1fr !important; }
    .blaze-wholesale-section .blaze-wb-preview-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* ---------------------------------------------------------
   4. Product grid tidy-ups (moved here from inline)
--------------------------------------------------------- */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.blaze-native-shop-results ul.products li.product .woocommerce-loop-product__title,
.blaze-product-card .blaze-prod-title,
.blaze-product-card .blaze-prod-title a,
.blaze-wb-item-body h4{
    display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;
}
.blaze-product-card .blaze-prod-title{ min-height:0; }
.blaze-product-grid{ align-items:stretch; }
.blaze-product-card{ display:flex;flex-direction:column;height:100%; }
.blaze-product-card .blaze-prod-info{ display:flex;flex-direction:column;flex:1 1 auto; }
.blaze-product-card .blaze-prod-price-row{ margin-top:auto; }

@media (max-width:600px){ #blaze-toast-host{ bottom:16px; } }

/* ---------------------------------------------------------
   7. Shop / related product cards — see section 14 for the
   full unified card design (kept there so it beats the
   theme's #primary-scoped loop rules).
--------------------------------------------------------- */

/* ---------------------------------------------------------
   8. MOBILE — product page action row + misc polish
--------------------------------------------------------- */
@media (max-width:600px){
    body.single-product .blaze-native-product form.cart{
        display:flex;flex-wrap:wrap;gap:8px;align-items:center;
    }
    body.single-product .blaze-native-product form.cart .quantity{ flex:0 0 auto; }
    body.single-product .blaze-native-product form.cart .single_add_to_cart_button{
        flex:1 1 140px;min-width:0;font-size:14px;padding:12px 10px;
    }
    body.single-product .blaze-native-product .blaze-native-buy-now{
        flex:1 1 120px;min-width:0;font-size:14px;padding:12px 10px;
    }
    /* keep the WhatsApp float from covering section headings */
    .blaze-floating-wa{ transform:scale(.85);transform-origin:bottom right; }
}

/* ---------------------------------------------------------
   5a. SINGLE PRODUCT — colour / size options in ONE
   horizontally-scrollable row (no wrapping to 2+ lines)
--------------------------------------------------------- */
/* High specificity — the theme forces `flex-wrap:wrap !important` with a
   long selector, so match/beat it. */
body.single-product div.product.blaze-native-product .blaze-variation-control .blaze-variation-options{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:8px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    padding-bottom:6px;
    scrollbar-width:thin;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
}
body.single-product div.product.blaze-native-product .blaze-variation-control .blaze-variation-options .blaze-variation-option{
    flex:0 0 auto !important;
    scroll-snap-align:start;
    white-space:nowrap;
}
body.single-product div.product.blaze-native-product .blaze-variation-options::-webkit-scrollbar{ height:5px; }
body.single-product div.product.blaze-native-product .blaze-variation-options::-webkit-scrollbar-thumb{ background:#cbd2dc;border-radius:6px; }
body.single-product div.product.blaze-native-product .blaze-variation-options::-webkit-scrollbar-track{ background:transparent; }

/* ---------------------------------------------------------
   5b. SINGLE PRODUCT — gallery thumbnails as one scrollable row
--------------------------------------------------------- */
.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:8px;
    margin:12px 0 0 !important;
    padding:2px;
    overflow-x:auto;
    overflow-y:hidden;
    scrollbar-width:thin;
    -webkit-overflow-scrolling:touch;
}
.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs li{
    flex:0 0 72px !important;
    width:72px !important;
    margin:0 !important;
    list-style:none;
}
.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs li img{
    width:72px;height:72px;object-fit:cover;border-radius:8px;
    border:2px solid transparent;opacity:.75;transition:opacity .15s ease,border-color .15s ease;
}
.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active,
.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs li img:hover{
    opacity:1;border-color:var(--bz-orange);
}
.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar{ height:6px; }
.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar-thumb{ background:#cbd2dc;border-radius:6px; }

/* ---------------------------------------------------------
   6. Hide any now-empty helper wrappers left by disabled
   shop-loop actions / quantity buttons
--------------------------------------------------------- */
.blaze-shop-extra-actions:empty{ display:none; }
.woocommerce ul.products li.product .blaze-shop-extra-actions:empty{ display:none; }
/* Quantity +/- buttons removed via settings — tidy the row spacing */
.blaze-native-product form.cart .quantity{ margin-right:10px; }

/* =========================================================
   9. MOBILE DESIGN SYSTEM  (≤ 820px)
   One coherent set of rules: consistent gutters, type scale,
   section rhythm and card padding across the whole site.
========================================================= */
@media (max-width:820px){

    /* ---- 9.1  Uniform page gutter (18px everywhere) ---- */
    .blaze-container,
    .blaze-nav-inner,
    .blaze-hero-slide .blaze-container,
    .blaze-slide-content{
        padding-left:18px !important;
        padding-right:18px !important;
        max-width:100% !important;
        width:100% !important;
        box-sizing:border-box !important;
    }

    /* ---- 9.2  Type scale ---- */
    .blaze-hero-title{ font-size:23px !important; line-height:1.24 !important; margin-bottom:12px !important; }
    .blaze-hero-title br{ display:none; }
    .blaze-hero-desc{ font-size:13px !important; line-height:1.55 !important; margin-bottom:18px !important; max-width:100% !important; }
    .blaze-heading,
    .blaze-heading-light,
    .blaze-page-title,
    .blaze-wholesale-banner h2,
    .blaze-wb-content h2,
    .blaze-rfq-info-col h2,
    .blaze-section-header h2,
    main#primary h2,
    .blaze-page .blaze-container h2{
        font-size:20px !important;
        line-height:1.3 !important;
        margin-bottom:10px !important;
    }
    main#primary h1,
    .blaze-page .blaze-container h1{ font-size:26px !important; line-height:1.25 !important; margin-bottom:14px !important; }
    main#primary h3,
    .blaze-page .blaze-container h3{ font-size:17px !important; }
    /* plain content pages (About / Contact / Blogs / policy) */
    .blaze-page .blaze-container{ font-size:15px; }
    .blaze-page .blaze-container p,
    .blaze-page .blaze-container li{ font-size:15px !important; line-height:1.6 !important; }
    .blaze-page.blaze-main,.blaze-main.blaze-page{ padding:26px 0 40px !important; }
    .blaze-subheading,.blaze-subheading-light{ font-size:11px !important; letter-spacing:.12em !important; }
    .blaze-subtext,.blaze-section-header p,.blaze-page-subtitle{ font-size:13px !important; line-height:1.55 !important; }
    .blaze-pc-title,.blaze-w-card-title,.blaze-wb-item-body h4,
    .blaze-step-card h4,.blaze-rm-step h4,.blaze-pl-cat-card h3,.blaze-lab-item h4,
    .blaze-ff-content h4,.blaze-footer-heading{ font-size:15px !important; }
    .blaze-pc-desc,.blaze-step-card p,.blaze-rm-step p,.blaze-pl-cat-card p,
    .blaze-lab-item p,.blaze-ff-content p{ font-size:12.5px !important; line-height:1.5 !important; }

    /* ---- 9.3  Section rhythm ---- */
    main#primary > section{ padding-top:40px !important; padding-bottom:40px !important; }
    .blaze-hero-slider-section{ padding:0 !important; }   /* hero is full-bleed */
    .blaze-section-header,
    .blaze-section-header-row{ margin-bottom:22px !important; }
    .blaze-section-header-row{ flex-direction:column !important; align-items:flex-start !important; gap:10px !important; }

    /* ---- 9.4  Cards: consistent, compact padding ---- */
    .blaze-pillar-card,
    .blaze-step-card,
    .blaze-rm-step,
    .blaze-pl-cat-card,
    .blaze-lab-item,
    .blaze-wp-item,
    .blaze-rfq-box-grid,
    .blaze-wholesale-product-tier-card,
    .blaze-product-detail-card{
        padding:18px 16px !important;
    }
    .blaze-pc-icon,.blaze-step-icon,.blaze-rm-num{ font-size:28px !important; margin-bottom:10px !important; }
    .blaze-pc-features{ margin-bottom:16px !important; }
    .blaze-pc-features li{ font-size:12.5px !important; }

    /* ---- 9.5  Buttons: full-width, consistent height ---- */
    .blaze-hero-actions,
    .blaze-page-quick-actions,
    .blaze-wb-actions,
    .blaze-manufacturing-cta-row{
        display:flex !important; flex-direction:column !important; gap:10px !important; width:100%;
    }
    .blaze-hero-actions .blaze-btn,
    .blaze-page-quick-actions .blaze-btn,
    .blaze-wb-actions .blaze-btn,
    .blaze-manufacturing-cta-row .blaze-btn,
    .blaze-pc-link,.blaze-view-all-btn{
        width:100% !important; justify-content:center !important; text-align:center !important;
        min-height:46px; font-size:14px !important;
    }

    /* ---- 9.6  Grids stack / halve ---- */
    .blaze-pillars-grid,
    .blaze-process-steps,
    .blaze-roadmap-grid,
    .blaze-pl-cat-grid,
    .blaze-lab-grid,
    .blaze-footer-grid{ grid-template-columns:1fr !important; gap:14px !important; }
    .blaze-wholesale-banner{ grid-template-columns:1fr !important; gap:24px !important; }
    .blaze-rfq-box-grid{ grid-template-columns:1fr !important; gap:22px !important; }
    .blaze-product-grid,
    .blaze-wp-grid,
    .blaze-wholesale-grid,
    .blaze-wholesale-catalog-container .blaze-wholesale-grid,
    .blaze-wb-preview-grid,
    .blaze-footer-features-grid{ grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:12px !important; }

    /* ---- 9.7  HEADER: logo left · icons right · search full-width below ---- */
    .blaze-header-centered .blaze-header-row{
        display:flex !important; flex-wrap:wrap; align-items:center; gap:10px; padding:10px 0;
    }
    .blaze-header-centered .blaze-header-col.blaze-header-center{ order:1; flex:1 1 auto; justify-content:flex-start !important; min-width:0; }
    .blaze-header-centered .blaze-header-col.blaze-header-right{ order:2; flex:0 0 auto; gap:8px; }
    .blaze-header-centered .blaze-header-col.blaze-header-left{ order:3; flex:1 1 100%; width:100%; }
    .blaze-header-centered .blaze-search-pill{
        display:flex !important; width:100% !important; max-width:100% !important;
        min-width:0 !important; box-sizing:border-box !important;
    }
    .blaze-header-centered .blaze-search-pill input[type="search"],
    .blaze-header-centered .blaze-search-pill input{
        min-width:0 !important; width:100% !important; flex:1 1 0 !important; size:1;
    }
    .blaze-header-centered .blaze-search-pill .blaze-search-btn{ flex:0 0 auto; }
    .blaze-header-centered .blaze-header-row > *{ min-width:0 !important; }
    .blaze-header-centered .blaze-brand-centered{ justify-content:flex-start; }
    .blaze-main-logo-img{ max-height:36px !important; width:auto !important; }
    .blaze-header-centered .blaze-header-cta{ display:none !important; }
    .blaze-action-icon{ width:38px;height:38px; }
    .blaze-navigation.blaze-nav-light .blaze-nav-inner{ gap:10px; min-height:44px; }
    .blaze-navigation.blaze-nav-light .blaze-nav-link{ font-size:13px !important; padding:12px 0 !important; }

    /* ---- 9.8  HERO  (only the ACTIVE slide is shown by the theme) ---- */
    .blaze-slider-container,
    #blaze-hero-slider,
    .blaze-hero-slide{ min-height:420px !important; }
    .blaze-hero-slider-section .blaze-hero-slide{ overflow:hidden; padding:0 !important; }
    /* dark wash so busy background images stay in the background */
    .blaze-hero-slider-section .blaze-hero-slide::after{
        content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
        background:linear-gradient(180deg, rgba(9,13,22,.42) 0%, rgba(9,13,22,.78) 58%, rgba(9,13,22,.94) 100%);
    }
    .blaze-hero-slider-section .blaze-hero-slide .blaze-container{ position:relative; z-index:2; }
    .blaze-hero-slide .blaze-slide-content{ padding-top:22px !important; padding-bottom:30px !important; }
    .blaze-hero-badge{ font-size:10px !important; padding:6px 12px !important; }
    .blaze-hero-slider-section .blaze-slider-arrow{ display:none !important; }
    .blaze-slider-stats-bar{ margin-top:0 !important; }
    .blaze-hero-stats{ grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:2px !important; }
    .blaze-hero-stats .blaze-stat-item{ width:auto !important; padding:12px 2px !important; text-align:center; }
    .blaze-hero-stats .blaze-stat-val{ font-size:15px !important; line-height:1.15 !important; }
    .blaze-hero-stats .blaze-stat-lbl{ font-size:8.5px !important; letter-spacing:.2px; }

    /* ---- 9.9  Value-prop / preview cards ---- */
    .blaze-wp-item{ height:auto !important; width:auto !important; }
    .blaze-wp-item p{ font-size:11px !important; line-height:1.45; }
    .blaze-wp-item strong{ font-size:12.5px !important; }
    /* homepage b2b preview mini-cards */
    .blaze-wb-item-body{ padding:12px !important; }
    .blaze-wb-item-body h4{ font-size:12.5px !important; margin:0 0 8px !important; white-space:normal !important; }
    .blaze-wb-specs-row{ flex-direction:column !important; align-items:flex-start !important; gap:6px !important; }
    .blaze-wb-specs-row .blaze-moq-tag{ font-size:9px !important; }
    .blaze-wb-specs-row .blaze-tier-price{ width:auto !important; font-size:12px !important; font-weight:700; white-space:nowrap; color:var(--bz-orange); }
    .blaze-wholesale-card .blaze-w-card-body{ padding:12px !important; }
    .blaze-wholesale-card .blaze-w-card-specs span{ font-size:10.5px !important; }
    .blaze-wholesale-card .blaze-w-card-price-row{ flex-direction:column !important; align-items:flex-start !important; gap:6px !important; }
    .blaze-wholesale-card .blaze-btn-inquire{ width:100%; text-align:center; }

    /* ---- 9.10  Forms (RFQ / inquiry) ---- */
    .blaze-rfq-box-grid{ gap:16px !important; }
    .blaze-rfq-info-col,.blaze-rfq-form-col{ width:100% !important; }
    .blaze-rfq-wa-card{
        display:flex !important; flex-direction:column !important; align-items:flex-start !important;
        gap:12px !important; text-align:left;
    }
    .blaze-rfq-wa-card .blaze-wa-btn-white{ width:100% !important; text-align:center !important; }
    .blaze-rfq-highlights{ margin-bottom:16px !important; }
    .blaze-rfq-form-col form,
    .blaze-inquiry-form,
    .blaze-b2b-inquiry-form{ padding:0 !important; margin-top:0 !important; }
    .blaze-inquiry-form .form-row,
    .blaze-form-grid,
    .blaze-rfq-form-col .form-grid{ grid-template-columns:1fr !important; gap:12px !important; }
    .blaze-inquiry-form input,
    .blaze-inquiry-form select,
    .blaze-inquiry-form textarea{ font-size:14px !important; }

    /* ---- 9.11  WhatsApp FAB ---- */
    .blaze-floating-wa .blaze-wa-bubble-text{ display:none !important; }
    .blaze-floating-wa{ transform:none; bottom:14px !important; right:14px !important; }
    .blaze-floating-wa a{ padding:0 !important; box-shadow:0 8px 22px rgba(0,0,0,.28); border-radius:50%; }
    .blaze-floating-wa .blaze-wa-icon-btn{ width:52px !important; height:52px !important; font-size:24px; }

    /* ---- 9.12  Footer ---- */
    .blaze-footer-body{ padding:32px 0 26px !important; }
    .blaze-footer-features{ padding:20px 0 !important; }
    .blaze-footer-bottom-inner{ flex-direction:column !important; gap:10px; text-align:center; align-items:center; }
    .blaze-f-badges{ justify-content:center; }
}

/* ---- 9.13  Very small phones ---- */
@media (max-width:380px){
    .blaze-hero-title{ font-size:21px !important; }
    .blaze-heading,.blaze-page-title,main#primary h2{ font-size:20px !important; }
    .blaze-main-logo-img{ max-height:33px !important; }
    .blaze-navigation.blaze-nav-light .blaze-nav-link{ font-size:12px !important; }
    .blaze-wholesale-grid,
    .blaze-wholesale-catalog-container .blaze-wholesale-grid,
    .blaze-wb-preview-grid{ grid-template-columns:1fr !important; }
}

/* =========================================================
   10. MOBILE — single product page (≤ 860px)
========================================================= */
@media (max-width:860px){
    .woocommerce div.product,
    body.single-product div.product.blaze-native-product{
        display:block !important;
        grid-template-columns:1fr !important;
    }
    .woocommerce div.product .woocommerce-product-gallery,
    .woocommerce div.product .summary,
    .woocommerce div.product .entry-summary,
    body.single-product div.product .woocommerce-product-gallery,
    body.single-product div.product .summary{
        width:100% !important; max-width:100% !important; float:none !important; margin:0 0 16px !important;
    }
    .woocommerce div.product .woocommerce-product-gallery{ margin-bottom:22px !important; }
    .woocommerce div.product .product_title,
    body.single-product div.product .product_title{
        font-size:19px !important; line-height:1.3 !important; margin-bottom:8px !important;
    }
    .woocommerce div.product p.price,
    .woocommerce div.product .price{ font-size:19px !important; }
    .yay-currency-single-page-switcher{ margin:10px 0 !important; max-width:100%; }
    .yay-currency-custom-select-wrapper,
    .yay-currency-custom-select__trigger{ width:100% !important; }
    .blaze-wholesale-product-tier-card{ margin:16px 0 !important; }
    .woocommerce div.product .woocommerce-tabs ul.tabs{ display:flex; flex-wrap:wrap; gap:6px; padding:0 !important; }
    .woocommerce div.product .woocommerce-tabs ul.tabs li{ margin:0 !important; }
    .woocommerce #reviews,
    .woocommerce div.product .related.products ul.products{ grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
    /* action row */
    html body.single-product div.product.blaze-native-product form.cart .woocommerce-variation-add-to-cart{ display:flex !important; flex-wrap:wrap !important; gap:8px !important; align-items:stretch !important; }
    html body.single-product div.product.blaze-native-product form.cart .woocommerce-variation-add-to-cart .quantity{ flex:0 0 62px !important; }
    html body.single-product div.product.blaze-native-product form.cart .woocommerce-variation-add-to-cart .single_add_to_cart_button{ flex:1 1 130px !important; min-width:0; font-size:13px; padding:12px 8px; }
    html body.single-product div.product.blaze-native-product form.cart .woocommerce-variation-add-to-cart .blaze-native-buy-now{ flex:1 1 120px !important; min-width:0; font-size:13px; padding:12px 8px; }
}

/* =========================================================
   11. SINGLE PRODUCT — gallery prev/next overlay arrows
   Big, tappable, left + right ON the image. Confined to the
   main-image area via --blaze-thumbs-h set by blaze.js.
========================================================= */
.woocommerce div.product .woocommerce-product-gallery{ position:relative !important; }
.woocommerce div.product .woocommerce-product-gallery .blaze-gallery-arrow{
    position:absolute;
    top:0;
    bottom:var(--blaze-thumbs-h,0px);
    width:58px;
    display:flex;
    align-items:center;
    z-index:30;
    margin:0;
    padding:0;
    border:0;
    background:transparent;
    cursor:pointer;
    -webkit-tap-highlight-color:transparent;
    -webkit-appearance:none;
    appearance:none;
}
.woocommerce div.product .woocommerce-product-gallery .blaze-gallery-arrow.blaze-gallery-prev{ left:0; justify-content:flex-start; padding-left:8px; }
.woocommerce div.product .woocommerce-product-gallery .blaze-gallery-arrow.blaze-gallery-next{ right:0; justify-content:flex-end; padding-right:8px; }
.woocommerce div.product .woocommerce-product-gallery .blaze-gallery-arrow__ico{
    display:flex;
    align-items:center;
    justify-content:center;
    width:42px;
    height:42px;
    border-radius:50%;
    background:rgba(255,255,255,.96);
    box-shadow:0 4px 14px rgba(10,20,40,.22);
    color:#12203a;
    font-size:26px;
    font-weight:700;
    line-height:1;
    padding-bottom:3px;
    transition:background .15s ease, transform .15s ease;
}
.woocommerce div.product .woocommerce-product-gallery .blaze-gallery-arrow:hover .blaze-gallery-arrow__ico{ background:#fff; transform:scale(1.06); }
.woocommerce div.product .woocommerce-product-gallery .blaze-gallery-arrow:active .blaze-gallery-arrow__ico{ transform:scale(.96); }
/* keep WooCommerce's own zoom/lightbox trigger from sitting under the arrows */
.woocommerce div.product .woocommerce-product-gallery .blaze-gallery-arrow + .woocommerce-product-gallery__trigger,
.woocommerce div.product .woocommerce-product-gallery__trigger{ z-index:31; }

@media (max-width:600px){
    .woocommerce div.product .woocommerce-product-gallery .blaze-gallery-arrow{ width:48px; }
    .woocommerce div.product .woocommerce-product-gallery .blaze-gallery-arrow__ico{ width:38px; height:38px; font-size:23px; }
}

/* =========================================================
   12. SINGLE PRODUCT — variation options + action buttons
   Clear, obvious colour / size pickers, then Add to Cart +
   Buy Now that never look "half broken".
========================================================= */
body.single-product div.product.blaze-native-product .blaze-variation-heading{
    margin:14px 0 7px;
    font-size:14px;
}
body.single-product div.product.blaze-native-product .blaze-variation-heading strong{ font-weight:800; color:#12203a; }
body.single-product div.product.blaze-native-product .blaze-variation-selected{ color:var(--bz-orange,#f2661f); font-weight:700; margin-left:4px; }

body.single-product div.product.blaze-native-product .blaze-variation-option{
    display:flex;
    align-items:center;
    gap:7px;
    min-height:42px;
    padding:6px 12px;
    border:1.5px solid #d7dce4 !important;
    border-radius:10px;
    background:#fff;
    font-size:13px;
    font-weight:600;
    color:#28313f;
    line-height:1.1;
    transition:border-color .15s ease, background .15s ease, color .15s ease;
}
body.single-product div.product.blaze-native-product .blaze-variation-option .blaze-variation-image img{
    width:26px; height:26px; border-radius:6px; object-fit:cover; display:block;
}
body.single-product div.product.blaze-native-product .blaze-variation-option.is-selected{
    border-color:var(--bz-orange,#f2661f) !important;
    background:var(--bz-orange,#f2661f);
    color:#fff;
    box-shadow:0 3px 10px rgba(242,102,31,.28);
}
/* beat the theme's pale-peach .is-selected (it uses body.single-product +
   !important, and #primary-scoped variants) */
html body.single-product #primary div.product.blaze-native-product .blaze-variation-option.is-selected,
html body.single-product div.product.blaze-native-product .blaze-variation-option.is-selected{
    background:var(--bz-orange,#f2661f) !important;
    background-color:var(--bz-orange,#f2661f) !important;
    border-color:var(--bz-orange,#f2661f) !important;
    color:#fff !important;
    box-shadow:0 3px 10px rgba(242,102,31,.28) !important;
}
html body.single-product #primary div.product.blaze-native-product .blaze-variation-option.is-selected .blaze-variation-text,
html body.single-product div.product.blaze-native-product .blaze-variation-option.is-selected .blaze-variation-text{ color:#fff !important; }
body.single-product div.product.blaze-native-product .blaze-variation-option.is-disabled{
    opacity:.4;
    text-decoration:line-through;
    cursor:not-allowed;
}
/* The native WooCommerce variations <table> only exists to feed the hidden
   <select>s — flatten it so it adds no vertical space; the pills above are
   the real UI and carry their own "Plan Color:" / "Size:" headings. */
body.single-product div.product.blaze-native-product form.cart table.variations,
body.single-product div.product.blaze-native-product form.cart table.variations tbody,
body.single-product div.product.blaze-native-product form.cart table.variations tr,
body.single-product div.product.blaze-native-product form.cart table.variations td{
    display:block !important;
    width:auto !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
}
body.single-product div.product.blaze-native-product form.cart table.variations td.label{ display:none !important; }
body.single-product div.product.blaze-native-product form.cart table.variations td.value{ padding:0 !important; }
/* native <select> + reset link kept in DOM (JS reads them) but visually gone */
body.single-product div.product.blaze-native-product .blaze-native-select-wrap,
body.single-product div.product.blaze-native-product form.cart table.variations td.value > select,
body.single-product div.product.blaze-native-product form.cart .reset_variations{
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    overflow:hidden !important;
    clip:rect(0 0 0 0) !important;
    margin:-1px !important;
    padding:0 !important;
    border:0 !important;
}

/* hint shown until a full colour+size combo is chosen */
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart.woocommerce-variation-add-to-cart-disabled::before{
    content:"Select colour and size above to continue";
    display:block;
    width:100%;
    margin:2px 0 9px;
    font-size:12.5px;
    font-weight:700;
    color:#c2410c;
}

/* Hide the raw native <select>s left inside each .blaze-variation-control
   (the pills drive them). Kept in the DOM so blaze.js can still read/write
   the chosen value. */
html body.single-product div.product.blaze-native-product form.cart table.variations select,
html body.single-product div.product.blaze-native-product .blaze-variation-control select,
html body.single-product div.product.blaze-native-product .blaze-native-select-wrap{
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    min-height:0 !important;
    padding:0 !important;
    margin:-1px !important;
    border:0 !important;
    opacity:0 !important;
    overflow:hidden !important;
    clip:rect(0 0 0 0) !important;
    pointer-events:none !important;
}

/* tighten the vertical rhythm around the flattened variations table */
html body.single-product div.product.blaze-native-product form.cart table.variations{ margin:0 !important; }
html body.single-product div.product.blaze-native-product .blaze-variation-control{ margin:2px 0 6px !important; }
html body.single-product div.product.blaze-native-product .blaze-variation-heading{ margin:10px 0 7px !important; }
html body.single-product div.product.blaze-native-product .single_variation_wrap{ margin-top:2px !important; }
html body.single-product div.product.blaze-native-product .woocommerce-variation-add-to-cart{ margin-top:8px !important; }

/* action buttons — always look intentional */
body.single-product .blaze-native-product form.cart{ align-items:stretch; }
html body.single-product div.product.blaze-native-product form.cart .woocommerce-variation-add-to-cart{
    display:flex !important; flex-wrap:wrap !important; gap:10px !important; align-items:stretch !important;
}
html body.single-product #primary div.product.blaze-native-product form.cart .single_add_to_cart_button,
html body.single-product div.product.blaze-native-product form.cart .single_add_to_cart_button{
    background:var(--bz-orange,#f2661f) !important;
    background-color:var(--bz-orange,#f2661f) !important;
    color:#fff !important;
    border:0 !important;
    border-radius:10px !important;
    font-weight:800 !important;
    letter-spacing:.02em;
    min-height:48px !important;
    opacity:1 !important;
    text-shadow:none !important;
}
html body.single-product #primary div.product.blaze-native-product .blaze-native-buy-now,
html body.single-product div.product.blaze-native-product .blaze-native-buy-now{
    background:#12203a !important;
    background-color:#12203a !important;
    color:#fff !important;
    border:0 !important;
    border-radius:10px !important;
    font-weight:800 !important;
    letter-spacing:.02em;
    min-height:48px !important;
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    gap:6px;
    cursor:pointer;
}
html body.single-product #primary div.product.blaze-native-product form.cart .single_add_to_cart_button.disabled,
html body.single-product #primary div.product.blaze-native-product form.cart .single_add_to_cart_button:disabled,
html body.single-product #primary div.product.blaze-native-product form.cart .single_add_to_cart_button.wc-variation-selection-needed,
html body.single-product #primary div.product.blaze-native-product .blaze-native-buy-now[disabled],
html body.single-product div.product.blaze-native-product form.cart .single_add_to_cart_button.disabled,
html body.single-product div.product.blaze-native-product form.cart .single_add_to_cart_button:disabled,
html body.single-product div.product.blaze-native-product form.cart .single_add_to_cart_button.wc-variation-selection-needed,
html body.single-product div.product.blaze-native-product .blaze-native-buy-now[disabled]{
    background:#e6e8ec !important;
    background-color:#e6e8ec !important;
    color:#98a0ad !important;
    box-shadow:none !important;
    cursor:not-allowed;
}

/* ---------------------------------------------------------
   12b. MOBILE — kill the excess vertical spacing on the
   product page so image → wishlist → colour → size → Buy Now
   all sit inside the first screen.
--------------------------------------------------------- */
@media (max-width:860px){
    /* NOTE: the theme scopes many rules through the #primary ID, so every
       selector here also carries #primary to win the cascade. */

    /* header/breadcrumb → gallery */
    html body.single-product #primary .woocommerce-breadcrumb,
    html body.single-product #primary nav.woocommerce-breadcrumb{ margin:0 0 4px !important; padding:0 !important; font-size:10.5px !important; line-height:1.35 !important; opacity:.7; }
    html body.single-product #primary .woocommerce-notices-wrapper:empty{ display:none !important; margin:0 !important; }
    html body.single-product main#primary{ padding-top:6px !important; }
    html body.single-product #primary div.product.blaze-native-product{ margin-top:0 !important; }
    /* trim the main image so wishlist + colour + size + buttons reach the
       first screen (studio shots are square, a touch smaller reads fine) */
    html body.single-product #primary div.product.blaze-native-product .woocommerce-product-gallery{ max-width:300px !important; margin:0 auto 8px !important; }

    /* title / price / currency / wishlist */
    html body.single-product #primary div.product.blaze-native-product .product_title{ font-size:17px !important; line-height:1.25 !important; margin:0 0 4px !important; }
    html body.single-product #primary div.product.blaze-native-product p.price,
    html body.single-product #primary div.product.blaze-native-product .price{ margin:0 0 5px !important; }
    html body.single-product #primary div.product.blaze-native-product .yay-currency-single-page-switcher{ margin:3px 0 !important; }
    html body.single-product #primary div.product.blaze-native-product .yay-currency-custom-select__trigger{ padding-top:6px !important; padding-bottom:6px !important; }
    html body.single-product #primary div.product.blaze-native-product .blaze-product-wishlist-row,
    html body.single-product #primary div.product.blaze-native-product .blaze-product-wishlist-actions,
    html body.single-product #primary div.product.blaze-native-product .blaze-wishlist-row{ margin:2px 0 4px !important; }

    /* the variations form + its flattened table */
    html body.single-product #primary div.product.blaze-native-product form.cart{ margin:4px 0 0 !important; }
    html body.single-product #primary div.product.blaze-native-product form.cart table.variations,
    html body.single-product #primary div.product.blaze-native-product form.cart table.variations tbody{ margin:0 !important; }
    html body.single-product #primary div.product.blaze-native-product .blaze-variation-control{ margin:0 0 4px !important; }
    html body.single-product #primary div.product.blaze-native-product .blaze-variation-heading{ margin:6px 0 5px !important; font-size:13.5px !important; }
    html body.single-product #primary div.product.blaze-native-product .blaze-variation-options{ padding-bottom:3px !important; }
    html body.single-product #primary div.product.blaze-native-product .single_variation_wrap{ margin:0 !important; }
    html body.single-product #primary div.product.blaze-native-product .single_variation{ margin:0 !important; min-height:0 !important; padding:0 !important; }
    html body.single-product #primary div.product.blaze-native-product .single_variation:empty{ display:none !important; }
    html body.single-product #primary div.product.blaze-native-product .woocommerce-variation-add-to-cart{ margin-top:6px !important; }
    html body.single-product #primary div.product.blaze-native-product form.cart .reset_variations{ display:none !important; }
}

@media (max-width:600px){
    /* qty + Add to Cart share row 1, Buy Now full-width on row 2.
       The real flex container is .woocommerce-variation-add-to-cart. */
    html body.single-product div.product.blaze-native-product form.cart .woocommerce-variation-add-to-cart{
        display:flex !important; flex-wrap:wrap !important; gap:9px !important; align-items:stretch !important;
    }
    html body.single-product div.product.blaze-native-product form.cart .woocommerce-variation-add-to-cart .quantity{ flex:0 0 58px !important; }
    html body.single-product div.product.blaze-native-product form.cart .woocommerce-variation-add-to-cart .quantity input.qty{ height:48px !important; width:100% !important; text-align:center; }
    html body.single-product div.product.blaze-native-product form.cart .woocommerce-variation-add-to-cart .single_add_to_cart_button{
        flex:1 1 140px !important; font-size:14px !important; padding:13px 10px !important; white-space:nowrap;
    }
    html body.single-product div.product.blaze-native-product form.cart .woocommerce-variation-add-to-cart .blaze-native-buy-now{
        flex:1 1 100% !important; font-size:14px !important; padding:13px 10px !important; white-space:nowrap;
    }
}

/* =========================================================
   13. CLASSIC CHECKOUT  (body.blaze-classic-checkout)
   Professional, trustable two-column layout with a sticky
   order-summary card. Fully responsive.
========================================================= */
body.blaze-classic-checkout{ --bzc-line:#e4e7ec; --bzc-navy:#12203a; --bzc-orange:var(--bz-orange,#f2661f); }

body.blaze-classic-checkout .entry-header,
body.blaze-classic-checkout .page-title,
body.blaze-classic-checkout h1.entry-title{ text-align:center; margin-bottom:6px; }

body.blaze-classic-checkout .woocommerce{ max-width:1180px; margin:0 auto; padding:8px 20px 60px; }

/* secure banner above the form */
body.blaze-classic-checkout .blaze-checkout-secure{
    max-width:1180px; margin:0 auto 22px; padding:12px 16px;
    background:#f1f6ff; border:1px solid #d9e6ff; border-radius:12px;
    font-size:13.5px; color:#26324a; display:flex; align-items:center; gap:8px;
}
body.blaze-classic-checkout .blaze-checkout-secure .blaze-cs-lock{ font-size:16px; }

/* progress-ish trust strip under the CTA */
body.blaze-classic-checkout .blaze-checkout-trust{
    list-style:none; margin:16px 0 0; padding:14px 0 0; border-top:1px solid var(--bzc-line);
    display:grid; grid-template-columns:1fr 1fr; gap:10px 14px;
}
body.blaze-classic-checkout .blaze-checkout-trust li{
    font-size:12.5px; color:#54607a; display:flex; align-items:center; gap:7px; line-height:1.3;
}
body.blaze-classic-checkout .blaze-checkout-trust li span{ font-size:15px; }

/* two-column grid */
body.blaze-classic-checkout form.checkout.woocommerce-checkout{
    display:grid;
    grid-template-columns:minmax(0,1.5fr) minmax(330px,1fr);
    grid-template-areas:
        "secure  secure"
        "details review-head"
        "details review";
    grid-template-rows:auto auto 1fr;
    column-gap:42px;
    align-items:start;
}
body.blaze-classic-checkout form.checkout.woocommerce-checkout > input,
body.blaze-classic-checkout form.checkout.woocommerce-checkout > .woocommerce-additional-fields:empty{ display:none; }
body.blaze-classic-checkout .blaze-checkout-secure{ grid-area:secure; margin:0 0 20px; }
body.blaze-classic-checkout #customer_details{ grid-area:details; width:auto; float:none; }
body.blaze-classic-checkout #order_review_heading{ grid-area:review-head; align-self:start; margin:0 0 12px; font-size:18px; }
body.blaze-classic-checkout #order_review{ grid-area:review; align-self:start; position:sticky; top:18px; }

/* section cards on the left */
body.blaze-classic-checkout #customer_details .col-1,
body.blaze-classic-checkout #customer_details .col-2,
body.blaze-classic-checkout .woocommerce-billing-fields,
body.blaze-classic-checkout .woocommerce-additional-fields{
    width:100% !important; float:none !important; padding:0 !important;
}
body.blaze-classic-checkout #customer_details .col2-set{ display:block; }
body.blaze-classic-checkout .woocommerce-billing-fields > h3,
body.blaze-classic-checkout .woocommerce-additional-fields > h3{
    font-size:16px; margin:0 0 14px; padding-bottom:10px; border-bottom:1px solid var(--bzc-line);
}
body.blaze-classic-checkout .woocommerce-billing-fields{
    background:#fff; border:1px solid var(--bzc-line); border-radius:14px; padding:20px !important; margin-bottom:18px;
}
body.blaze-classic-checkout .woocommerce-additional-fields{
    background:#fff; border:1px solid var(--bzc-line); border-radius:14px; padding:20px !important;
}

/* one address only – kill the "ship to a different address" toggle + company */
body.blaze-classic-checkout #ship-to-different-address{ display:none !important; }
body.blaze-classic-checkout .shipping_address{ display:none !important; }
body.blaze-classic-checkout .blaze-hidden-field,
body.blaze-classic-checkout #billing_company_field{ display:none !important; }

/* form rows */
body.blaze-classic-checkout .form-row{ margin:0 0 14px; padding:0; }
body.blaze-classic-checkout .form-row-first,
body.blaze-classic-checkout .form-row-last{ width:calc(50% - 7px); float:none; display:inline-block; vertical-align:top; }
body.blaze-classic-checkout .form-row-first{ margin-right:12px; }
@supports (display:grid){
    body.blaze-classic-checkout .woocommerce-billing-fields__field-wrapper{ display:grid; grid-template-columns:1fr 1fr; gap:0 14px; }
    body.blaze-classic-checkout .woocommerce-billing-fields__field-wrapper .form-row-wide,
    body.blaze-classic-checkout .woocommerce-billing-fields__field-wrapper #billing_country_field,
    body.blaze-classic-checkout .woocommerce-billing-fields__field-wrapper #billing_address_1_field,
    body.blaze-classic-checkout .woocommerce-billing-fields__field-wrapper #billing_address_2_field{ grid-column:1 / -1; }
    body.blaze-classic-checkout .form-row-first,
    body.blaze-classic-checkout .form-row-last{ width:auto; margin-right:0; }
}
body.blaze-classic-checkout .form-row label{
    display:block; font-size:12.5px; font-weight:600; color:#3a4457; margin-bottom:6px;
}
body.blaze-classic-checkout .form-row label .required{ color:var(--bzc-orange); text-decoration:none; border:0; }
body.blaze-classic-checkout .form-row .optional{ color:#98a1b3; font-weight:500; }

body.blaze-classic-checkout .input-text,
body.blaze-classic-checkout .select2-container .select2-selection--single,
body.blaze-classic-checkout select.state_select,
body.blaze-classic-checkout .form-row select{
    width:100% !important; min-height:46px; height:46px; line-height:46px;
    border:1.5px solid #d7dce4 !important; border-radius:10px !important;
    padding:0 14px !important; font-size:14px; color:#1f2733; background:#fff;
    box-shadow:none !important; transition:border-color .15s ease, box-shadow .15s ease;
}
body.blaze-classic-checkout textarea.input-text{ height:auto; min-height:92px; line-height:1.5; padding:12px 14px !important; }
body.blaze-classic-checkout .input-text:focus,
body.blaze-classic-checkout .form-row select:focus,
body.blaze-classic-checkout .select2-container--focus .select2-selection--single{
    border-color:var(--bzc-orange) !important;
    box-shadow:0 0 0 3px rgba(242,102,31,.15) !important;
    outline:none;
}
body.blaze-classic-checkout .select2-container .select2-selection--single .select2-selection__rendered{ line-height:44px; padding:0; color:#1f2733; }
body.blaze-classic-checkout .select2-container .select2-selection--single .select2-selection__arrow{ height:44px; }
body.blaze-classic-checkout .woocommerce-input-wrapper{ display:block; width:100%; }

/* order review card */
body.blaze-classic-checkout #order_review{
    background:#fff; border:1px solid var(--bzc-line); border-radius:16px;
    padding:20px; box-shadow:0 12px 34px rgba(16,25,45,.07);
}
body.blaze-classic-checkout .woocommerce-checkout-review-order-table{ width:100%; border:0; margin:0 0 4px; font-size:13.5px; }
body.blaze-classic-checkout .woocommerce-checkout-review-order-table th,
body.blaze-classic-checkout .woocommerce-checkout-review-order-table td{ padding:9px 0 !important; border:0 !important; border-bottom:1px solid #f0f2f5 !important; }
body.blaze-classic-checkout .woocommerce-checkout-review-order-table .product-name{ color:#2b3648; font-weight:600; }
body.blaze-classic-checkout .woocommerce-checkout-review-order-table .product-total{ text-align:right; white-space:nowrap; }
body.blaze-classic-checkout .woocommerce-checkout-review-order-table tfoot th{ font-weight:600; color:#3a4457; }
body.blaze-classic-checkout .woocommerce-checkout-review-order-table tfoot .order-total th,
body.blaze-classic-checkout .woocommerce-checkout-review-order-table tfoot .order-total td{
    border-bottom:0 !important; padding-top:14px !important; font-size:16px; color:var(--bzc-navy); font-weight:800;
}
body.blaze-classic-checkout .cart-subtotal td,
body.blaze-classic-checkout .woocommerce-shipping-totals td{ text-align:right; }

/* payment box */
body.blaze-classic-checkout #payment{ background:transparent; border-radius:0; margin-top:6px; }
body.blaze-classic-checkout #payment ul.payment_methods{
    border:1px solid var(--bzc-line); border-radius:12px; padding:6px 14px; margin:12px 0 0; background:#fbfcfe;
}
body.blaze-classic-checkout #payment ul.payment_methods li{ list-style:none; padding:10px 0; }
body.blaze-classic-checkout #payment div.payment_box{
    background:#f4f7fb; border-radius:10px; font-size:12.5px; color:#4b5568; margin:8px 0 4px;
}
body.blaze-classic-checkout #payment div.payment_box::before{ display:none; }

/* place order button */
body.blaze-classic-checkout #payment .place-order{ padding:16px 0 0; }
body.blaze-classic-checkout #place_order,
body.blaze-classic-checkout button#place_order{
    width:100% !important; float:none !important; display:block;
    min-height:54px; padding:15px 20px !important;
    background:var(--bzc-orange) !important; color:#fff !important;
    border:0 !important; border-radius:12px !important;
    font-size:16px !important; font-weight:800 !important; letter-spacing:.02em;
    box-shadow:0 10px 24px rgba(242,102,31,.28) !important; cursor:pointer;
    transition:transform .12s ease, box-shadow .15s ease, background .15s ease;
}
body.blaze-classic-checkout #place_order:hover{ background:#e15a15 !important; transform:translateY(-1px); }
body.blaze-classic-checkout #place_order:active{ transform:translateY(0); }

body.blaze-classic-checkout .woocommerce-terms-and-conditions-wrapper{ font-size:12px; color:#6b7486; margin-top:10px; }

/* coupon / login toggles kept subtle */
body.blaze-classic-checkout .woocommerce-form-login-toggle,
body.blaze-classic-checkout .woocommerce-form-coupon-toggle{ margin-bottom:16px; }
body.blaze-classic-checkout .woocommerce-form-login-toggle .woocommerce-info,
body.blaze-classic-checkout .woocommerce-form-coupon-toggle .woocommerce-info{
    background:#f6f8fb; border-top:0; border-radius:10px; font-size:13px; color:#465065;
    padding:12px 14px 12px 40px;
}

/* ---- checkout mobile ---- */
@media (max-width:900px){
    body.blaze-classic-checkout .woocommerce{ padding:6px 16px 48px; }
    body.blaze-classic-checkout form.checkout.woocommerce-checkout{
        display:block;
    }
    body.blaze-classic-checkout #order_review_heading{ margin:22px 0 12px; }
    body.blaze-classic-checkout #order_review{ position:static; }
    body.blaze-classic-checkout .blaze-checkout-secure{ font-size:12.5px; margin-bottom:16px; }
    body.blaze-classic-checkout .woocommerce-billing-fields,
    body.blaze-classic-checkout .woocommerce-additional-fields{ padding:16px !important; }
    body.blaze-classic-checkout .woocommerce-billing-fields__field-wrapper{ display:block; }
    body.blaze-classic-checkout .form-row-first,
    body.blaze-classic-checkout .form-row-last{ width:100%; margin:0 0 14px; display:block; }
    body.blaze-classic-checkout #place_order,
    body.blaze-classic-checkout button#place_order{ min-height:52px; font-size:15.5px !important; }
    body.blaze-classic-checkout .blaze-checkout-trust{ grid-template-columns:1fr; }
}


/* =========================================================
   14. UNIFIED PRODUCT CARD  (shop grid + related products)
   The theme's loop CSS collapses the title/price to ~8px
   (line-height:0) so text spills over the image. This is a
   full, self-contained card that wins with !important and a
   high-specificity prefix, on every screen size.
========================================================= */
html body.woocommerce ul.products,
html body .blaze-native-shop-results ul.products,
html body #primary .related.products ul.products,
html body .woocommerce div.product .related.products ul.products{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:22px !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
}

html body.woocommerce ul.products li.product,
html body .blaze-native-shop-results ul.products li.product,
html body #primary .related.products ul.products li.product,
html body .woocommerce div.product .related.products ul.products li.product{
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    float:none !important;
    display:flex !important;
    flex-direction:column !important;
    position:relative !important;
    background:#fff !important;
    border:1px solid #e6e8ec !important;
    border-radius:14px !important;
    overflow:hidden !important;
    box-shadow:0 1px 3px rgba(16,25,45,.05) !important;
    transition:box-shadow .18s ease, transform .18s ease, border-color .18s ease;
}
html body.woocommerce ul.products li.product:hover,
html body .blaze-native-shop-results ul.products li.product:hover,
html body #primary .related.products ul.products li.product:hover{
    box-shadow:0 14px 30px rgba(16,25,45,.12) !important;
    border-color:#d7dce4 !important;
    transform:translateY(-3px);
}

html body .woocommerce ul.products li.product > a.woocommerce-loop-product__link,
html body .woocommerce ul.products li.product > a.woocommerce-LoopProduct-link,
html body .blaze-native-shop-results ul.products li.product > a{
    display:block !important;
    position:relative !important;
    container-type:inline-size;
    line-height:normal !important;
    overflow:visible !important;
    text-decoration:none !important;
}
html body .woocommerce ul.products li.product img,
html body .blaze-native-shop-results ul.products li.product img{
    width:100% !important;
    aspect-ratio:1 / 1 !important;
    height:auto !important;
    object-fit:cover !important;
    display:block !important;
    margin:0 !important;
    border-radius:0 !important;
    background:#f3f4f6;
}

html body .woocommerce ul.products li.product .woocommerce-loop-product__title,
html body .blaze-native-shop-results ul.products li.product .woocommerce-loop-product__title,
html body #primary .related.products ul.products li.product .woocommerce-loop-product__title,
html body .woocommerce ul.products li.product h2{
    display:-webkit-box !important;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden !important;
    white-space:normal !important;
    text-overflow:ellipsis;
    height:auto !important;
    min-height:2.55em !important;
    max-height:none !important;
    margin:0 !important;
    padding:10px 12px 0 !important;
    font-size:13px !important;
    font-weight:600 !important;
    line-height:1.3 !important;
    letter-spacing:0 !important;
    color:#20293a !important;
    text-align:left !important;
    text-transform:none !important;
}

html body .woocommerce ul.products li.product .price,
html body .blaze-native-shop-results ul.products li.product .price,
html body #primary .related.products ul.products li.product .price{
    display:block !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
    margin:0 !important;
    padding:5px 12px 12px !important;
    font-size:14.5px !important;
    font-weight:800 !important;
    line-height:1.25 !important;
    color:var(--bz-orange,#f2661f) !important;
    text-align:left !important;
}
html body .woocommerce ul.products li.product .price .amount,
html body #primary .related.products ul.products li.product .price .amount{
    display:inline !important;
    font-size:inherit !important;
    line-height:inherit !important;
    color:inherit !important;
}
html body .woocommerce ul.products li.product .price del,
html body #primary .related.products ul.products li.product .price del{
    display:inline !important;
    color:#9aa2b1 !important;
    font-weight:600 !important;
    font-size:12px !important;
    margin-right:6px !important;
    opacity:1 !important;
}
html body .woocommerce ul.products li.product .price del .amount{ font-size:12px !important; }
html body .woocommerce ul.products li.product .price ins,
html body #primary .related.products ul.products li.product .price ins{
    display:inline !important;
    text-decoration:none !important;
    font-weight:800 !important;
}

/* SALE tag — outlined chip pinned to the BOTTOM-left of the image.
   The link is a size container, image is square, so its bottom edge
   is 100cqw from the top. */
html body .woocommerce ul.products li.product .onsale,
html body .blaze-native-shop-results ul.products li.product .onsale,
html body #primary .related.products ul.products li.product .onsale{
    position:absolute !important;
    top:calc(100cqw - 34px) !important;
    left:10px !important; right:auto !important; bottom:auto !important;
    margin:0 !important;
    min-width:0 !important; min-height:0 !important;
    width:auto !important; height:auto !important;
    padding:3px 9px !important;
    border-radius:6px !important;
    background:transparent !important;
    color:#0d0d0d !important;
    border:1.5px solid #0d0d0d !important;
    box-shadow:0 0 0 1px rgba(255,255,255,.45) !important;
    text-shadow:0 1px 2px rgba(255,255,255,.55) !important;
    font-size:10px !important;
    font-weight:800 !important;
    line-height:1.1 !important;
    letter-spacing:.05em !important;
    text-transform:uppercase;
    z-index:4 !important;
}

html body .woocommerce ul.products li.product .blaze-wishlist-toggle,
html body .blaze-native-shop-results ul.products li.product .blaze-wishlist-toggle{
    position:absolute !important;
    top:10px !important; right:10px !important; left:auto !important;
    width:32px !important; height:32px !important;
    padding:0 !important; margin:0 !important;
    border:0 !important; border-radius:50% !important;
    background:rgba(255,255,255,.95) !important;
    box-shadow:0 2px 8px rgba(0,0,0,.14) !important;
    display:flex !important; align-items:center !important; justify-content:center !important;
    z-index:4 !important;
}

html body .woocommerce ul.products li.product .button,
html body .woocommerce ul.products li.product .add_to_cart_button,
html body .woocommerce ul.products li.product .blaze-shop-buy-link,
html body .blaze-native-shop-results ul.products li.product .button,
html body .blaze-native-shop-results ul.products li.product .blaze-shop-buy-link,
html body #primary .related.products ul.products li.product .button{
    display:block !important;
    width:calc(100% - 24px) !important;
    margin:0 12px 6px !important;
    padding:11px 8px !important;
    text-align:center !important;
    font-size:12.5px !important;
    font-weight:700 !important;
    line-height:1.2 !important;
    border:0 !important;
    border-radius:10px !important;
    min-height:0 !important;
    box-shadow:none !important;
    white-space:nowrap;
    text-overflow:ellipsis;
    overflow:hidden;
}
html body .woocommerce ul.products li.product .button,
html body .woocommerce ul.products li.product .add_to_cart_button,
html body .blaze-native-shop-results ul.products li.product .button,
html body .blaze-native-shop-results ul.products li.product .add_to_cart_button,
html body #primary .related.products ul.products li.product .button{
    background:var(--bz-orange,#f2661f) !important;
    color:#fff !important;
}
html body .woocommerce ul.products li.product .button:hover,
html body #primary .related.products ul.products li.product .button:hover{ background:#e15a15 !important; }
html body .woocommerce ul.products li.product .blaze-shop-buy-link,
html body .blaze-native-shop-results ul.products li.product .blaze-shop-buy-link{
    background:#12203a !important;
    color:#fff !important;
    margin:0 12px 12px !important;
}
html body .woocommerce ul.products li.product .blaze-shop-extra-actions,
html body .blaze-native-shop-results ul.products li.product .blaze-shop-extra-actions{
    display:block !important; width:100% !important; margin:0 !important; padding:0 !important;
}
html body .woocommerce ul.products li.product .price,
html body .blaze-native-shop-results ul.products li.product .price{ margin-top:auto !important; }

html body #primary .related.products > h2,
html body .woocommerce div.product .related.products > h2{
    font-size:20px !important; margin:0 0 18px !important;
}

@media (max-width:1024px){
    html body.woocommerce ul.products,
    html body .blaze-native-shop-results ul.products,
    html body #primary .related.products ul.products,
    html body .woocommerce div.product .related.products ul.products{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
        gap:16px !important;
    }
}
@media (max-width:820px){
    html body.woocommerce ul.products,
    html body .blaze-native-shop-results ul.products,
    html body #primary .related.products ul.products,
    html body .woocommerce div.product .related.products ul.products{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:12px !important;
    }
    html body .woocommerce ul.products li.product .woocommerce-loop-product__title,
    html body #primary .related.products ul.products li.product .woocommerce-loop-product__title{
        font-size:12.5px !important; padding:9px 10px 0 !important;
    }
    html body .woocommerce ul.products li.product .price,
    html body #primary .related.products ul.products li.product .price{
        font-size:13.5px !important; padding:4px 10px 10px !important;
    }
    html body .woocommerce ul.products li.product .button,
    html body .woocommerce ul.products li.product .add_to_cart_button,
    html body .woocommerce ul.products li.product .blaze-shop-buy-link,
    html body #primary .related.products ul.products li.product .button{
        width:calc(100% - 20px) !important;
        margin:0 10px 8px !important;
        font-size:12px !important;
        padding:10px 6px !important;
    }
    html body .woocommerce ul.products li.product .blaze-shop-buy-link{ margin-bottom:10px !important; }
    html body .woocommerce ul.products li.product .onsale,
    html body #primary .related.products ul.products li.product .onsale{ font-size:9px !important; padding:2px 6px !important; top:calc(100cqw - 28px) !important; left:8px !important; }
    html body .woocommerce ul.products li.product .blaze-wishlist-toggle{ top:8px !important; right:8px !important; width:30px !important; height:30px !important; }
}
@media (max-width:360px){
    html body.woocommerce ul.products,
    html body .blaze-native-shop-results ul.products,
    html body #primary .related.products ul.products,
    html body .woocommerce div.product .related.products ul.products{ gap:10px !important; }
}

/* =========================================================
   15. MOBILE — product page header NOT sticky
   On phones the single-product page lets the header scroll
   away (everywhere else it stays sticky).
========================================================= */
@media (max-width:820px){
    html body.single-product .blaze-sticky-header,
    html body.single-product #blaze-sticky-header{
        position:static !important;
        top:auto !important;
    }
}

/* =========================================================
   16. CART / WISHLIST DRAWERS — compact floating card
   Height hugs the content (footer sits right under the last
   item); only scrolls when it would pass the viewport.
   Narrower, rounded, lighter blurred backdrop.
========================================================= */
html body .blaze-cart-drawer,
html body .blaze-wishlist-drawer{
    top:14px !important;
    right:14px !important;
    left:auto !important;
    bottom:auto !important;
    height:auto !important;
    max-height:calc(100dvh - 28px) !important;
    width:min(340px, calc(100vw - 28px)) !important;
    max-width:min(340px, calc(100vw - 28px)) !important;
    border-radius:18px !important;
    overflow:hidden !important;
    box-shadow:0 24px 64px rgba(13,22,43,.30) !important;
    display:flex !important;
    flex-direction:column !important;
}
html body .blaze-cart-drawer:not(.is-open),
html body .blaze-wishlist-drawer:not(.is-open){
    transform:translateX(calc(100% + 20px)) !important;
    visibility:hidden;
}

/* middle area: natural height (footer hugs the last item);
   only scrolls once the whole panel would pass the viewport cap */
html body .blaze-cart-drawer .blaze-cart-drawer-body,
html body .blaze-wishlist-drawer .blaze-wishlist-content{
    flex:1 1 auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow-y:auto !important;
    overscroll-behavior:contain;
}
html body .blaze-cart-drawer .blaze-cart-drawer-header,
html body .blaze-cart-drawer .blaze-cart-drawer-footer,
html body .blaze-wishlist-drawer .blaze-wishlist-drawer-header,
html body .blaze-wishlist-drawer .blaze-wishlist-footer{
    flex:0 0 auto !important;
}

/* lighter, blurred backdrop */
html body .blaze-cart-overlay,
html body .blaze-wishlist-overlay{
    background:rgba(13,22,43,.22) !important;
    -webkit-backdrop-filter:blur(3px) !important;
    backdrop-filter:blur(3px) !important;
}

/* tighter header / footer */
html body .blaze-cart-drawer .blaze-cart-drawer-header,
html body .blaze-wishlist-drawer .blaze-wishlist-drawer-header{
    padding:14px 16px !important;
    font-size:15px !important;
    border-bottom:1px solid #eef0f3 !important;
}
html body .blaze-cart-drawer .blaze-cart-drawer-body{ padding:6px 14px 12px !important; }
html body .blaze-wishlist-drawer .blaze-wishlist-content{ padding:12px 14px !important; }
html body .blaze-cart-drawer .blaze-cart-drawer-footer{ padding:12px 14px 14px !important; }
html body .blaze-wishlist-drawer .blaze-wishlist-footer{ padding:12px 14px !important; gap:8px !important; }

/* smaller wishlist tiles (4 across) */
html body .blaze-wishlist-drawer .blaze-wishlist-grid{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:8px !important;
}
html body .blaze-wishlist-drawer .blaze-wishlist-tile{ border-radius:10px !important; }
html body .blaze-wishlist-drawer .blaze-wishlist-tile-remove{
    width:20px !important; height:20px !important; font-size:12px !important; top:4px !important; right:4px !important;
}

/* smaller cart line items */
html body .blaze-cart-drawer .blaze-cart-content .woocommerce-mini-cart-item{
    padding:10px 0 !important;
    gap:10px !important;
}
html body .blaze-cart-drawer .blaze-cart-content .woocommerce-mini-cart-item img{
    width:48px !important; height:48px !important; border-radius:8px !important;
}
html body .blaze-cart-drawer .blaze-cart-content .woocommerce-mini-cart-item a:not(.remove){
    font-size:12.5px !important; line-height:1.35 !important;
}
html body .blaze-cart-drawer .blaze-cart-content .quantity{ font-size:12px !important; }

/* empty states: no huge padding that stretches the panel */
html body .blaze-wishlist-drawer .blaze-wishlist-empty{ padding:26px 16px !important; }
html body .blaze-wishlist-drawer .blaze-wishlist-empty-icon{ font-size:32px !important; margin-bottom:8px !important; }
html body .blaze-cart-drawer .blaze-cart-content .woocommerce-mini-cart__empty-message{ padding:24px 10px !important; }

/* footer buttons: full width, consistent */
html body .blaze-cart-drawer .blaze-cart-drawer-footer .blaze-btn,
html body .blaze-wishlist-drawer .blaze-wishlist-footer .blaze-btn{
    display:block !important; width:100% !important; text-align:center !important;
    padding:12px 10px !important; border-radius:10px !important; font-weight:700 !important; font-size:13.5px !important;
}
html body .blaze-cart-drawer .blaze-cart-drawer-footer{ display:flex !important; flex-direction:column !important; gap:8px !important; }
html body .blaze-cart-drawer .blaze-cart-drawer-footer .blaze-cart-subtotal{ margin-bottom:2px !important; font-size:13.5px !important; }

@media (max-width:420px){
    html body .blaze-cart-drawer,
    html body .blaze-wishlist-drawer{
        top:10px !important; right:10px !important;
        width:calc(100vw - 20px) !important; max-width:calc(100vw - 20px) !important;
        max-height:calc(100dvh - 20px) !important;
    }
    html body .blaze-wishlist-drawer .blaze-wishlist-grid{ grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
}

/* drawer: the WC mini-cart widget prints its own subtotal + buttons —
   hide them, the styled .blaze-cart-drawer-footer is the single source */
html body .blaze-cart-drawer .blaze-cart-content .woocommerce-mini-cart__total,
html body .blaze-cart-drawer .blaze-cart-content .woocommerce-mini-cart__buttons,
html body .blaze-cart-drawer .blaze-cart-content p.buttons,
html body .blaze-cart-drawer .blaze-cart-content p.total{ display:none !important; }
html body .blaze-cart-drawer .blaze-cart-content .woocommerce-mini-cart-item .variation{
    margin:4px 0 0 !important; font-size:11px !important; color:#7a8394 !important;
}
html body .blaze-cart-drawer .blaze-cart-content .woocommerce-mini-cart-item .variation dt,
html body .blaze-cart-drawer .blaze-cart-content .woocommerce-mini-cart-item .variation dd{
    display:inline !important; margin:0 4px 0 0 !important; font-weight:500 !important;
}
html body .blaze-cart-drawer .blaze-cart-content .woocommerce-mini-cart-item .variation p{ display:inline !important; margin:0 !important; }

/* =========================================================
   16b. CART DRAWER — clean line item + footer
========================================================= */
html body .blaze-cart-drawer,
html body .blaze-wishlist-drawer{
    width:min(330px, calc(100vw - 34px)) !important;
    max-width:min(330px, calc(100vw - 34px)) !important;
}

/* header */
html body .blaze-cart-drawer .blaze-cart-drawer-header,
html body .blaze-wishlist-drawer .blaze-wishlist-drawer-header{
    background:#12203a !important; color:#fff !important; gap:10px !important;
}
html body .blaze-cart-drawer .blaze-cart-drawer-header *{ color:#fff !important; }
html body .blaze-cart-drawer .blaze-drawer-count,
html body .blaze-wishlist-drawer .blaze-wishlist-drawer-count{ color:var(--bz-orange,#f2661f) !important; font-weight:800 !important; }
html body .blaze-cart-drawer .blaze-cart-close,
html body .blaze-wishlist-drawer .blaze-wishlist-close{
    background:rgba(255,255,255,.14) !important; color:#fff !important;
    width:30px !important; height:30px !important; border-radius:8px !important; font-size:18px !important; flex-shrink:0;
}
html body .blaze-cart-drawer .blaze-cart-close:hover,
html body .blaze-wishlist-drawer .blaze-wishlist-close:hover{ background:var(--bz-orange,#f2661f) !important; }

/* line item: image + name row, then variation + qty under the name */
html body .blaze-cart-drawer .blaze-cart-content .woocommerce-mini-cart-item{
    display:flex !important; flex-wrap:wrap !important; align-items:flex-start !important;
    gap:3px 10px !important; padding:12px 0 !important; min-height:0 !important; position:relative !important;
    border-bottom:1px solid #eef0f3 !important;
}
html body .blaze-cart-drawer .blaze-cart-content .woocommerce-mini-cart-item > a:not(.remove){
    flex:1 1 100% !important; display:flex !important; gap:10px !important; align-items:flex-start !important;
    padding-right:26px !important;
    font-size:12.5px !important; font-weight:600 !important; line-height:1.35 !important; color:#20293a !important;
}
html body .blaze-cart-drawer .blaze-cart-content .woocommerce-mini-cart-item > a:not(.remove) img{
    width:52px !important; height:52px !important; object-fit:cover !important;
    border-radius:8px !important; border:1px solid #eef0f3 !important; flex-shrink:0 !important;
}
html body .blaze-cart-drawer .blaze-cart-content .woocommerce-mini-cart-item .variation{
    flex:1 1 100% !important; margin:2px 0 0 62px !important; font-size:11px !important; color:#7a8394 !important;
}
html body .blaze-cart-drawer .blaze-cart-content .woocommerce-mini-cart-item .variation dt,
html body .blaze-cart-drawer .blaze-cart-content .woocommerce-mini-cart-item .variation dd,
html body .blaze-cart-drawer .blaze-cart-content .woocommerce-mini-cart-item .variation p{
    display:inline !important; margin:0 3px 0 0 !important; font-weight:400 !important;
}
html body .blaze-cart-drawer .blaze-cart-content .woocommerce-mini-cart-item .quantity{
    flex:1 1 100% !important; display:block !important; margin:3px 0 0 62px !important;
    font-size:11.5px !important; font-weight:700 !important; color:#5a6474 !important;
}
html body .blaze-cart-drawer .blaze-cart-content .woocommerce-mini-cart-item .remove{
    position:absolute !important; top:10px !important; right:0 !important; left:auto !important;
    order:0 !important; width:22px !important; height:22px !important; font-size:14px !important;
    background:#f3f4f6 !important; color:#888 !important;
}

/* footer buttons */
html body .blaze-cart-drawer .blaze-cart-drawer-footer{
    display:flex !important; flex-direction:column !important; gap:8px !important;
    padding:12px 14px 14px !important; box-shadow:none !important;
}
html body .blaze-cart-drawer .blaze-cart-drawer-footer .blaze-cart-subtotal{
    margin:0 0 3px !important; font-size:13.5px !important;
}
html body .blaze-cart-drawer .blaze-cart-drawer-footer .blaze-cart-subtotal-value{ font-weight:800 !important; color:#12203a !important; }
html body .blaze-cart-drawer .blaze-cart-drawer-footer .blaze-btn{
    display:block !important; width:100% !important; text-align:center !important; margin:0 !important;
    padding:12px 10px !important; border-radius:10px !important; font-weight:700 !important; font-size:13.5px !important;
    min-height:0 !important;
}
html body .blaze-cart-drawer .blaze-cart-drawer-footer .blaze-btn-primary{
    order:1 !important; background:var(--bz-orange,#f2661f) !important; color:#fff !important; border:0 !important;
}
html body .blaze-cart-drawer .blaze-cart-drawer-footer .blaze-btn-outline{
    order:2 !important; background:#fff !important; color:#12203a !important; border:1.5px solid #d7dce4 !important;
}

/* =========================================================
   17. ADD-TO-CART GUARD (variable product, nothing chosen)
   Make the button un-clickable until a variation is picked
   so WooCommerce never throws the big red "choose options"
   notice. A brief flash points at the pickers instead.
========================================================= */
html body.single-product .woocommerce-variation-add-to-cart.woocommerce-variation-add-to-cart-disabled .single_add_to_cart_button,
html body.single-product form.cart.variations_form .single_add_to_cart_button.disabled,
html body.single-product form.cart.variations_form .single_add_to_cart_button.wc-variation-selection-needed{
    pointer-events:none !important;
    cursor:not-allowed !important;
}
@keyframes blazeVarFlash{
    0%,100%{ box-shadow:0 0 0 0 rgba(242,102,31,0); }
    30%{ box-shadow:0 0 0 4px rgba(242,102,31,.35); }
}
html body .blaze-variation-flash,
html body .blaze-variation-flash .blaze-variation-control{
    animation:blazeVarFlash .7s ease 2;
    border-radius:12px;
}

/* cart drawer header: keep the count line on one tidy row */
html body .blaze-cart-drawer .blaze-cart-drawer-title{
    font-size:14.5px !important; white-space:nowrap !important; display:flex !important; align-items:baseline !important; gap:5px !important;
}
html body .blaze-cart-drawer .blaze-cart-drawer-title .blaze-drawer-item-word{ font-weight:500 !important; opacity:.85; }

/* =========================================================
   18. CONTENT PAGES  (.blaze-page — About, Contact, Refund,
   Track Order, Blogs intro …). The template only outputs raw
   Gutenberg blocks, so this turns them into a designed page.
========================================================= */
html body.page main.blaze-page{ background:#fff; padding:0 0 64px; }
html body.page main.blaze-page > .blaze-container{
    max-width:920px !important;
    margin:0 auto !important;
    padding:0 24px !important;
}

/* ---- lead / hero: first H1 + the paragraph right after it ---- */
html body.page main.blaze-page > .blaze-container > h1:first-child,
html body.page main.blaze-page > .blaze-container > .wp-block-heading:first-child{
    margin:44px 0 14px !important;
    font-size:40px !important;
    line-height:1.15 !important;
    font-weight:800 !important;
    letter-spacing:-.01em;
    color:#12203a !important;
    text-align:center;
}
html body.page main.blaze-page > .blaze-container > h1:first-child + p{
    max-width:680px;
    margin:0 auto 10px !important;
    text-align:center;
    font-size:17px !important;
    line-height:1.7 !important;
    color:#54607a !important;
}
html body.page main.blaze-page > .blaze-container > h1:first-child::after{
    content:"";
    display:block;
    width:64px; height:4px;
    margin:18px auto 0;
    border-radius:3px;
    background:var(--bz-orange,#f2661f);
}

/* ---- section headings (H2 only — never the lead H1) ---- */
html body.page main.blaze-page .blaze-container h2,
html body.page main.blaze-page .blaze-container h3{
    margin:44px 0 16px !important;
    font-size:24px !important;
    line-height:1.25 !important;
    font-weight:800 !important;
    color:#12203a !important;
    padding-left:14px;
    border-left:4px solid var(--bz-orange,#f2661f);
}
html body.page main.blaze-page .blaze-container h3{ font-size:19px !important; margin-top:30px !important; }
html body.page main.blaze-page .blaze-container h1{ border-left:0 !important; padding-left:0 !important; }

/* ---- body copy ---- */
html body.page main.blaze-page .blaze-container p{
    font-size:15.5px !important;
    line-height:1.75 !important;
    color:#3c4658 !important;
    margin:0 0 16px !important;
}
html body.page main.blaze-page .blaze-container a:not(.blaze-btn):not(.button){
    color:var(--bz-orange,#f2661f);
    text-decoration:none;
    font-weight:600;
    border-bottom:1px solid rgba(242,102,31,.35);
}
html body.page main.blaze-page .blaze-container a:not(.blaze-btn):not(.button):hover{ border-bottom-color:var(--bz-orange,#f2661f); }

/* ---- lists → checklist cards ---- */
html body.page main.blaze-page .blaze-container ul.wp-block-list,
html body.page main.blaze-page .blaze-container > ul{
    list-style:none !important;
    margin:0 0 8px !important;
    padding:0 !important;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}
html body.page main.blaze-page .blaze-container ul.wp-block-list > li,
html body.page main.blaze-page .blaze-container > ul > li{
    position:relative;
    margin:0 !important;
    padding:16px 16px 16px 44px !important;
    background:#fff;
    border:1px solid #e6e8ec;
    border-radius:12px;
    font-size:14.5px !important;
    line-height:1.6 !important;
    color:#3c4658 !important;
    box-shadow:0 1px 3px rgba(16,25,45,.04);
}
html body.page main.blaze-page .blaze-container ul.wp-block-list > li::before,
html body.page main.blaze-page .blaze-container > ul > li::before{
    content:"✓";
    position:absolute;
    left:14px; top:15px;
    width:20px; height:20px;
    display:flex; align-items:center; justify-content:center;
    border-radius:50%;
    background:rgba(242,102,31,.12);
    color:var(--bz-orange,#f2661f);
    font-size:12px; font-weight:800;
}
html body.page main.blaze-page .blaze-container ul.wp-block-list > li strong,
html body.page main.blaze-page .blaze-container > ul > li strong{
    display:block;
    margin-bottom:3px;
    color:#12203a !important;
    font-weight:800;
}

/* ---- contact detail cards (shortcode) ---- */
html body.page .blaze-contact-details{
    grid-template-columns:repeat(auto-fit,minmax(210px,1fr)) !important;
    gap:14px !important;
    margin:26px 0 !important;
}
html body.page .blaze-contact-details .blaze-cd-card{
    border:1px solid #e6e8ec !important;
    border-radius:14px !important;
    padding:18px !important;
    background:#fff !important;
    box-shadow:0 1px 3px rgba(16,25,45,.04) !important;
    transition:box-shadow .18s ease, transform .18s ease, border-color .18s ease;
}
html body.page .blaze-contact-details .blaze-cd-card:hover{
    box-shadow:0 12px 28px rgba(16,25,45,.10) !important;
    border-color:#d7dce4 !important;
    transform:translateY(-2px);
}
html body.page .blaze-contact-details .blaze-cd-card strong{
    display:block; margin-bottom:6px;
    font-size:13px; font-weight:800; color:#12203a; letter-spacing:.01em;
}
html body.page .blaze-contact-details .blaze-cd-card p{ margin:0 !important; font-size:14px !important; color:#3c4658 !important; line-height:1.55 !important; }
html body.page .blaze-contact-details .blaze-cd-card a{ border:0 !important; }
html body.page .blaze-cd-map{ border:1px solid #e6e8ec; border-radius:14px !important; }
html body.page .blaze-cd-map iframe{ display:block; width:100%; min-height:280px; border:0; }
html body.page .blaze-cd-social a{
    display:inline-block; padding:7px 14px; border-radius:999px;
    background:#12203a; color:#fff !important; border:0 !important; font-size:12.5px; font-weight:700;
}

/* ---- embedded inquiry / RFQ form as a card ---- */
html body.page main.blaze-page .blaze-b2b-inquiry-form,
html body.page main.blaze-page .blaze-inquiry-form,
html body.page main.blaze-page form.blaze-rfq-form,
html body.page main.blaze-page .blaze-rfq-container{
    background:#f8fafc !important;
    border:1px solid #e6e8ec !important;
    border-radius:18px !important;
    padding:26px !important;
    margin:22px 0 0 !important;
    box-shadow:0 12px 34px rgba(16,25,45,.06) !important;
}
html body.page main.blaze-page .blaze-inquiry-form input,
html body.page main.blaze-page .blaze-inquiry-form select,
html body.page main.blaze-page .blaze-inquiry-form textarea,
html body.page main.blaze-page .blaze-b2b-inquiry-form input,
html body.page main.blaze-page .blaze-b2b-inquiry-form select,
html body.page main.blaze-page .blaze-b2b-inquiry-form textarea,
html body.page main.blaze-page .blaze-rfq-field input,
html body.page main.blaze-page .blaze-rfq-field select,
html body.page main.blaze-page .blaze-rfq-field textarea{
    width:100% !important;
    min-height:46px;
    border:1.5px solid #d7dce4 !important;
    border-radius:10px !important;
    padding:0 14px !important;
    font-size:14px !important;
    background:#fff !important;
    transition:border-color .15s ease, box-shadow .15s ease;
}
html body.page main.blaze-page .blaze-inquiry-form textarea,
html body.page main.blaze-page .blaze-b2b-inquiry-form textarea,
html body.page main.blaze-page .blaze-rfq-field textarea{ min-height:110px; padding:12px 14px !important; line-height:1.5; }
html body.page main.blaze-page .blaze-inquiry-form input:focus,
html body.page main.blaze-page .blaze-inquiry-form textarea:focus,
html body.page main.blaze-page .blaze-inquiry-form select:focus,
html body.page main.blaze-page .blaze-b2b-inquiry-form input:focus,
html body.page main.blaze-page .blaze-b2b-inquiry-form textarea:focus,
html body.page main.blaze-page .blaze-b2b-inquiry-form select:focus,
html body.page main.blaze-page .blaze-rfq-field input:focus,
html body.page main.blaze-page .blaze-rfq-field textarea:focus{
    border-color:var(--bz-orange,#f2661f) !important;
    box-shadow:0 0 0 3px rgba(242,102,31,.15) !important;
    outline:none;
}
html body.page main.blaze-page .blaze-inquiry-form button[type=submit],
html body.page main.blaze-page .blaze-b2b-inquiry-form button[type=submit],
html body.page main.blaze-page .blaze-rfq-submit-wrap button{
    background:var(--bz-orange,#f2661f) !important;
    color:#fff !important;
    border:0 !important;
    border-radius:11px !important;
    padding:14px 26px !important;
    font-weight:800 !important;
    font-size:15px !important;
    min-height:50px;
    box-shadow:0 10px 24px rgba(242,102,31,.26) !important;
    cursor:pointer;
}

/* ---- tablet / mobile ---- */
@media (max-width:820px){
    html body.page main.blaze-page > .blaze-container{ padding:0 18px !important; }
    html body.page main.blaze-page > .blaze-container > h1:first-child,
    html body.page main.blaze-page > .blaze-container > .wp-block-heading:first-child{ font-size:28px !important; margin:30px 0 12px !important; }
    html body.page main.blaze-page > .blaze-container > h1:first-child + p{ font-size:15px !important; }
    html body.page main.blaze-page .blaze-container h2,
    html body.page main.blaze-page .blaze-container .wp-block-heading{ font-size:20px !important; margin:34px 0 14px !important; }
    html body.page main.blaze-page .blaze-container ul.wp-block-list,
    html body.page main.blaze-page .blaze-container > ul{ grid-template-columns:1fr; gap:10px; }
    html body.page .blaze-contact-details{ grid-template-columns:1fr 1fr !important; }
    html body.page main.blaze-page .blaze-b2b-inquiry-form,
    html body.page main.blaze-page .blaze-inquiry-form,
    html body.page main.blaze-page .blaze-rfq-container{ padding:18px !important; }
}
@media (max-width:480px){
    html body.page .blaze-contact-details{ grid-template-columns:1fr !important; }
}

/* =========================================================
   19. PRIVATE-LABEL PAGE CARDS  (never had any CSS)
   .blaze-pl-cat-card / .blaze-lab-item / .blaze-rm-step
========================================================= */
html body .blaze-pl-capabilities-section,
html body .blaze-roadmap-section{ padding:56px 0; }
html body .blaze-roadmap-section{ background:#f7f9fc; }

/* --- section grids --- */
html body .blaze-pl-cat-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
    margin-top:30px;
}
html body .blaze-lab-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    margin-top:28px;
}
html body .blaze-roadmap-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:16px;
    margin-top:30px;
}

/* --- capability cards --- */
html body .blaze-pl-cat-card{
    background:#fff;
    border:1px solid #e6e8ec;
    border-radius:16px;
    padding:24px 22px;
    box-shadow:0 1px 3px rgba(16,25,45,.05);
    transition:box-shadow .2s ease, transform .2s ease, border-color .2s ease;
    display:flex;
    flex-direction:column;
}
html body .blaze-pl-cat-card:hover{
    box-shadow:0 16px 36px rgba(16,25,45,.12);
    border-color:#d7dce4;
    transform:translateY(-3px);
}
html body .blaze-pl-cat-icon{
    width:52px; height:52px;
    display:flex; align-items:center; justify-content:center;
    font-size:26px; line-height:1;
    border-radius:14px;
    background:linear-gradient(135deg,rgba(242,102,31,.14),rgba(242,102,31,.06));
    margin-bottom:16px;
}
html body .blaze-pl-cat-card h3{
    margin:0 0 8px;
    font-size:17px;
    font-weight:800;
    color:#12203a;
    line-height:1.3;
}
html body .blaze-pl-cat-card p{
    margin:0 0 16px;
    font-size:13.5px;
    line-height:1.65;
    color:#54607a;
    flex:1 1 auto;
}
html body .blaze-spec-pill{
    align-self:flex-start;
    display:inline-block;
    padding:5px 12px;
    border-radius:999px;
    background:rgba(242,102,31,.1);
    color:var(--bz-orange,#f2661f);
    font-size:11.5px;
    font-weight:800;
    letter-spacing:.02em;
    white-space:nowrap;
}

/* --- embellishment lab items --- */
html body .blaze-lab-item{
    background:#fff;
    border:1px solid #e6e8ec;
    border-radius:14px;
    padding:20px 20px;
    box-shadow:0 1px 3px rgba(16,25,45,.05);
    transition:box-shadow .2s ease, transform .2s ease;
}
html body .blaze-lab-item:hover{ box-shadow:0 12px 30px rgba(16,25,45,.10); transform:translateY(-2px); }
html body .blaze-lab-item h4{
    margin:0 0 8px;
    font-size:15px;
    font-weight:800;
    color:#12203a;
    line-height:1.35;
}
html body .blaze-lab-item p{
    margin:0;
    font-size:13px;
    line-height:1.6;
    color:#54607a;
}

/* --- roadmap steps --- */
html body .blaze-rm-step{
    position:relative;
    background:#fff;
    border:1px solid #e6e8ec;
    border-radius:14px;
    padding:22px 18px 20px;
    box-shadow:0 1px 3px rgba(16,25,45,.05);
}
html body .blaze-rm-num{
    width:38px; height:38px;
    display:flex; align-items:center; justify-content:center;
    border-radius:50%;
    background:var(--bz-orange,#f2661f);
    color:#fff;
    font-size:16px; font-weight:800;
    margin-bottom:14px;
    box-shadow:0 6px 16px rgba(242,102,31,.3);
}
html body .blaze-rm-step h4{
    margin:0 0 7px;
    font-size:14.5px;
    font-weight:800;
    color:#12203a;
    line-height:1.3;
}
html body .blaze-rm-step p{
    margin:0;
    font-size:12.5px;
    line-height:1.6;
    color:#54607a;
}

/* --- private-label RFQ form gets the card treatment too --- */
html body main.blaze-privatelabel-page .blaze-b2b-inquiry-form,
html body main.blaze-privatelabel-page .blaze-inquiry-form,
html body main.blaze-privatelabel-page .blaze-rfq-page-section form,
html body main.blaze-wholesale-page .blaze-b2b-inquiry-form,
html body main.blaze-wholesale-page .blaze-inquiry-form,
html body main.blaze-wholesale-page .blaze-rfq-page-section form{
    background:#fff !important;
    border:1px solid #e6e8ec !important;
    border-radius:18px !important;
    padding:26px !important;
    box-shadow:0 12px 34px rgba(16,25,45,.08) !important;
}

/* --- tablet / mobile --- */
@media (max-width:1024px){
    html body .blaze-pl-cat-grid,
    html body .blaze-lab-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
    html body .blaze-roadmap-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:820px){
    html body .blaze-pl-capabilities-section,
    html body .blaze-roadmap-section{ padding:38px 0; }
    html body .blaze-pl-cat-grid,
    html body .blaze-lab-grid,
    html body .blaze-roadmap-grid{ grid-template-columns:1fr; gap:12px; margin-top:22px; }
    html body .blaze-pl-cat-card{ padding:20px 18px; }
    html body .blaze-pl-cat-icon{ width:46px; height:46px; font-size:23px; margin-bottom:12px; }
    html body .blaze-pl-cat-card h3{ font-size:16px; }
    html body .blaze-lab-item{ padding:16px; }
    html body .blaze-rm-step{ padding:18px 16px; }
    html body main.blaze-privatelabel-page .blaze-rfq-page-section form,
    html body main.blaze-wholesale-page .blaze-rfq-page-section form{ padding:18px !important; }
}

/* =========================================================
   20. RFQ MODAL  (#blaze-rfq-modal / .blaze-modal-overlay)
   Had zero CSS — clicking "Get Quote" set display:flex on an
   unstyled div at the page bottom, so nothing visibly opened.
========================================================= */
html body #blaze-rfq-modal.blaze-modal-overlay{
    position:fixed !important;
    inset:0 !important;
    z-index:100050 !important;
    background:rgba(11,17,32,.62) !important;
    -webkit-backdrop-filter:blur(4px);
    backdrop-filter:blur(4px);
    align-items:flex-start;
    justify-content:center;
    padding:5vh 16px;
    overflow-y:auto;
    overscroll-behavior:contain;
}
html body #blaze-rfq-modal.blaze-modal-overlay .blaze-modal-inner{
    position:relative;
    width:min(560px, 100%);
    margin:auto;
    background:#fff;
    border-radius:18px;
    box-shadow:0 30px 80px rgba(6,12,28,.45);
    padding:30px 28px 26px;
    animation:blazeModalIn .22s ease;
}
@keyframes blazeModalIn{ from{ opacity:0; transform:translateY(14px) scale(.98); } to{ opacity:1; transform:none; } }
html body #blaze-rfq-modal .blaze-modal-close{
    position:absolute;
    top:12px; right:12px;
    width:36px; height:36px;
    display:flex; align-items:center; justify-content:center;
    border:0; border-radius:10px;
    background:#f3f4f6; color:#3a4457;
    font-size:22px; line-height:1; cursor:pointer;
    transition:background .15s ease, color .15s ease;
}
html body #blaze-rfq-modal .blaze-modal-close:hover{ background:var(--bz-orange,#f2661f); color:#fff; }
html body #blaze-rfq-modal .blaze-rfq-container{
    background:transparent !important; border:0 !important; box-shadow:none !important; padding:0 !important; margin:0 !important; max-width:none !important;
}
html body #blaze-rfq-modal h2,
html body #blaze-rfq-modal h3{ margin:0 4px 6px 0; font-size:20px; font-weight:800; color:#12203a; }
html body #blaze-rfq-modal p{ margin:0 0 16px; font-size:13.5px; color:#54607a; line-height:1.55; }
html body #blaze-rfq-modal .blaze-rfq-row{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
html body #blaze-rfq-modal .blaze-rfq-field{ margin:0 0 12px; }
html body #blaze-rfq-modal label{ display:block; font-size:12px; font-weight:700; color:#3a4457; margin-bottom:5px; }
html body #blaze-rfq-modal input,
html body #blaze-rfq-modal select,
html body #blaze-rfq-modal textarea{
    width:100% !important; min-height:44px;
    border:1.5px solid #d7dce4 !important; border-radius:10px !important;
    padding:0 13px !important; font-size:14px; background:#fff;
    transition:border-color .15s ease, box-shadow .15s ease;
}
html body #blaze-rfq-modal textarea{ min-height:96px; padding:11px 13px !important; line-height:1.5; }
html body #blaze-rfq-modal input:focus,
html body #blaze-rfq-modal select:focus,
html body #blaze-rfq-modal textarea:focus{
    border-color:var(--bz-orange,#f2661f) !important;
    box-shadow:0 0 0 3px rgba(242,102,31,.15) !important; outline:none;
}
html body #blaze-rfq-modal button[type="submit"],
html body #blaze-rfq-modal .blaze-rfq-submit-wrap button,
html body #blaze-rfq-modal .blaze-btn-primary{
    width:100%; min-height:50px; margin-top:4px;
    background:var(--bz-orange,#f2661f) !important; color:#fff !important;
    border:0 !important; border-radius:11px !important;
    font-size:15px !important; font-weight:800 !important; cursor:pointer;
    box-shadow:0 10px 24px rgba(242,102,31,.26) !important;
}
html body #blaze-rfq-modal .blaze-rfq-msg{ margin-top:12px; font-size:13px; border-radius:10px; }

@media (max-width:600px){
    html body #blaze-rfq-modal.blaze-modal-overlay{ padding:3vh 10px; }
    html body #blaze-rfq-modal.blaze-modal-overlay .blaze-modal-inner{ padding:24px 18px 20px; border-radius:16px; }
    html body #blaze-rfq-modal .blaze-rfq-row{ grid-template-columns:1fr; gap:0; }
    html body #blaze-rfq-modal h2, html body #blaze-rfq-modal h3{ font-size:18px; padding-right:34px; }
}

/* =========================================================
   21. HOMEPAGE "Trending Retail Arrivals" cards
   (.blaze-product-card — theme markup, own CSS, breaks on
   mobile: price + "View Item" cram into one flex row.)
========================================================= */
html body .blaze-collection-section .blaze-prod-title{
    display:-webkit-box !important;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden !important;
    white-space:normal !important;
    min-height:2.7em;
    font-size:14px !important;
    line-height:1.35 !important;
    margin:0 0 8px !important;
}
html body .blaze-collection-section .blaze-badge-sale{
    top:auto !important;
    bottom:10px !important;
    left:10px !important;
    background:transparent !important;
    color:#0d0d0d !important;
    border:1.5px solid #0d0d0d !important;
    box-shadow:0 0 0 1px rgba(255,255,255,.45) !important;
    text-shadow:0 1px 2px rgba(255,255,255,.55) !important;
    padding:3px 8px !important;
    border-radius:6px !important;
}

@media (max-width:820px){
    html body .blaze-collection-section .blaze-product-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:12px !important;
    }
    html body .blaze-collection-section .blaze-product-card{ border-radius:14px !important; }
    html body .blaze-collection-section .blaze-prod-img-wrap{
        height:auto !important;
        aspect-ratio:1 / 1 !important;
    }
    html body .blaze-collection-section .blaze-prod-info{ padding:12px 12px 14px !important; }
    html body .blaze-collection-section .blaze-prod-title{ font-size:12.5px !important; min-height:2.5em; margin-bottom:6px !important; }

    /* the fix: stack price then a full-width button */
    html body .blaze-collection-section .blaze-prod-price-row{
        flex-direction:column !important;
        align-items:stretch !important;
        gap:8px !important;
        padding-top:8px !important;
        margin-top:auto !important;
    }
    html body .blaze-collection-section .blaze-prod-price{
        font-size:14px !important;
        line-height:1.25 !important;
        white-space:normal !important;
    }
    html body .blaze-collection-section .blaze-prod-price del{ font-size:11.5px !important; opacity:.65; margin-right:5px; }
    html body .blaze-collection-section .blaze-prod-price ins{ text-decoration:none !important; font-weight:850; }
    html body .blaze-collection-section .blaze-quick-buy-btn{
        display:block !important;
        width:100% !important;
        text-align:center !important;
        padding:10px 8px !important;
        font-size:12px !important;
        border-radius:9px !important;
        background:var(--bz-orange,#f2661f) !important;
        box-shadow:none !important;
    }
    /* section header row: stack the "View Entire Shop" link */
    html body .blaze-collection-section .blaze-section-header-row{
        flex-direction:column !important;
        align-items:flex-start !important;
        gap:6px !important;
    }
    html body .blaze-collection-section .blaze-view-all-btn{ font-size:13px !important; }
}
@media (max-width:360px){
    html body .blaze-collection-section .blaze-product-grid{ gap:10px !important; }
}

/* =========================================================
   22. HOMEPAGE B2B WHOLESALE SPOTLIGHT (.blaze-wholesale-section)
   Mobile: "Browse Catalog" button lost its fill; tier price
   wrapped character-by-character in a narrow column.
========================================================= */
html body .blaze-wholesale-section .blaze-wb-actions .blaze-btn-primary,
html body .blaze-wholesale-section .blaze-wb-actions a.blaze-btn-primary{
    background:var(--bz-orange,#f2661f) !important;
    color:#fff !important;
    border:0 !important;
    box-shadow:0 8px 22px rgba(242,102,31,.3) !important;
}
html body .blaze-wholesale-section .blaze-wb-actions .blaze-btn-outline-white{
    background:transparent !important;
    color:#fff !important;
    border:1.5px solid rgba(255,255,255,.6) !important;
}
html body .blaze-wholesale-section .blaze-tier-price,
html body .blaze-wholesale-section .blaze-tier-price *{
    white-space:nowrap !important;
    word-break:keep-all !important;
    overflow-wrap:normal !important;
}
html body .blaze-wholesale-section .blaze-tier-price .woocommerce-Price-amount{ display:inline !important; }
html body .blaze-wholesale-section .blaze-wb-specs-row{
    display:flex !important; flex-direction:column !important; align-items:flex-start !important;
    gap:6px !important; flex-wrap:nowrap !important;
}
html body .blaze-wholesale-section .blaze-wb-specs-row > *{ flex:0 0 auto !important; }

@media (max-width:820px){
    html body .blaze-wholesale-section .blaze-wb-actions{
        display:flex !important; flex-direction:column !important; gap:10px !important;
    }
    html body .blaze-wholesale-section .blaze-wb-actions .blaze-btn{
        width:100% !important; text-align:center !important; justify-content:center !important;
        padding:13px 12px !important; font-size:13.5px !important; border-radius:11px !important;
    }
    html body .blaze-wholesale-section .blaze-wb-preview-grid{
        grid-template-columns:1fr !important; gap:12px !important;
    }
    html body .blaze-wholesale-section .blaze-wb-item-card{
        display:grid !important;
        grid-template-columns:88px 1fr !important;
        gap:12px !important;
        align-items:center !important;
        background:rgba(255,255,255,.06) !important;
        border:1px solid rgba(255,255,255,.12) !important;
        border-radius:12px !important;
        overflow:hidden !important;
        padding:0 !important;
    }
    html body .blaze-wholesale-section .blaze-wb-item-card img{
        width:88px !important; height:88px !important; object-fit:cover !important; display:block !important;
    }
    html body .blaze-wholesale-section .blaze-wb-item-body{ padding:10px 12px 10px 0 !important; }
    html body .blaze-wholesale-section .blaze-wb-item-body h4{
        font-size:12.5px !important; line-height:1.3 !important; margin:0 0 6px !important;
        display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
    }
    html body .blaze-wholesale-section .blaze-wb-specs-row{
        flex-direction:row !important; flex-wrap:wrap !important;
        align-items:center !important; gap:6px 10px !important;
    }
    html body .blaze-wholesale-section .blaze-moq-tag{ font-size:10.5px !important; padding:3px 8px !important; }
    html body .blaze-wholesale-section .blaze-tier-price{ font-size:12.5px !important; font-weight:800 !important; }
}
