/* ==========================================================================
   BUSTA GRIMES — DARK IG-STYLE OVERRIDE (child theme)
   Black + acid-green, Kairos Sans. Loads after WoodMart to override.
   ========================================================================== */

/* ---- Brand fonts ---- */
@font-face{font-family:'Kairos';src:url('fonts/KairosSansW1G-Black.ttf') format('truetype');font-weight:900;font-display:swap;}
@font-face{font-family:'KairosCn';src:url('fonts/KairosSansW1G-CnBold.ttf') format('truetype');font-weight:700;font-display:swap;}
@font-face{font-family:'KairosB';src:url('fonts/KairosSansW1G-Bold.ttf') format('truetype');font-weight:700;font-display:swap;}

:root{
  --bg:#0a0c08; --bg2:#0f1209; --panel:#12160e; --panel2:#191f11;
  --line:#2a341d; --green:#8ff02a; --green2:#b6ff5c; --greendk:#5c9a14;
  --ink:#eef3e6; --mut:#9aa889; --dim:#727e63;
}

/* ---- Global surfaces ---- */
html, body,
#wrapper, .website-wrapper, .wd-page-content, .site-content, main#main,
.content-area, .container, article.post, .wd-section-wrapper,
body.woocommerce, body.woocommerce-page{
  background-color:var(--bg) !important;
  color:var(--ink) !important;
}
body{font-family:'Inter','Segoe UI',Arial,sans-serif;}
p, li, td, span.wd-el-text, .wd-single-text, dd, dt{color:var(--ink);}
.entry-content p, .woocommerce-tabs p, .description p{color:#cdd8c2 !important;}

/* ---- Typography ---- */
h1,h2,h3,h4,h5,h6,
.title, .section-title, .wd-entities-title, .product_title, .widget-title, .liner-title{
  font-family:'Kairos', Impact, sans-serif !important;
  color:var(--ink) !important;
  text-transform:uppercase; letter-spacing:.5px;
}
.wd-nav > li > a, .whb-general-header, .mobile-nav a,
.woocommerce-breadcrumb, .breadcrumbs, .price, .amount, .btn, .button{
  font-family:'KairosCn','Segoe UI',sans-serif;
}
a{color:var(--ink);}
a:hover{color:var(--green);}

/* ---- Header ---- */
.whb-header, .whb-general-header, .whb-main-header, .whb-top-bar,
header.wd-header-woo, .site-header, .whb-row, .whb-general-header-inner,
.whb-sticky-shadow, .whb-flex-row, .whb-column{
  background-color:var(--bg2) !important;
  border-color:var(--line) !important;
}
.whb-header a, .wd-nav a, .header-links a, .whb-header .wd-tools-element,
.wd-header-my-account a, .wd-header-search .wd-tools-icon{color:var(--ink) !important;}
.whb-header a:hover, .wd-nav > li:hover > a, .wd-nav > li.current-menu-item > a{color:var(--green) !important;}
.wd-nav-mobile, .mobile-nav, .wd-close-side, .wd-side-hidden-close{background:var(--bg2) !important;}
.whb-general-header{border-bottom:1px solid var(--line) !important;}

/* ---- Footer ---- */
.site-footer, footer.footer-container, .wd-footer, .footer-container,
.copyrights-wrapper, .footer-bottom, .wd-footer-container{
  background-color:var(--bg2) !important; color:var(--mut) !important;
  border-top:1px solid var(--line) !important;
}
.wd-prefooter, .wd-prefooter-inner, .footer-widgets, .widget-area-footer{
  background-color:var(--bg2) !important; border:0 !important;
}
.site-footer a, .copyrights-wrapper a{color:var(--mut) !important;}
.site-footer a:hover{color:var(--green) !important;}

/* Footer video background — looping hero drift clip under a dark overlay (no controls).
   The footer + its inner wrappers go transparent so the video shows; the overlay keeps text readable. */
.bg-footer-hasvideo{position:relative !important; overflow:hidden !important;
  background-color:#05060a !important; border-top:2px solid var(--green) !important;}
.bg-footer-hasvideo .footer-container, .bg-footer-hasvideo .wd-footer-container,
.bg-footer-hasvideo .footer-widgets, .bg-footer-hasvideo .widget-area-footer,
.bg-footer-hasvideo .copyrights-wrapper, .bg-footer-hasvideo .footer-bottom,
.bg-footer-hasvideo .wd-prefooter, .bg-footer-hasvideo .wd-prefooter-inner,
.bg-footer-hasvideo .main-footer, .bg-footer-hasvideo .wd-grid-g,
.bg-footer-hasvideo .container, .bg-footer-hasvideo .row, .bg-footer-hasvideo .footer-inner{
  background-color:transparent !important; border-top:0 !important;}
.bg-footer-video{position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
  z-index:0; pointer-events:none; opacity:.6;}
.bg-footer-overlay{position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(180deg, rgba(5,6,10,.80), rgba(5,6,10,.90));}
.bg-footer-hasvideo > *:not(.bg-footer-video):not(.bg-footer-overlay){position:relative; z-index:2;}

/* ---- Page title / breadcrumb ---- */
.page-title, .wd-page-title, .title-design-default, .breadcrumbs, .woocommerce-breadcrumb{
  background-color:var(--bg2) !important; color:var(--mut) !important;
}
.page-title .entry-title, .wd-page-title .entry-title{color:var(--ink) !important;}

/* ---- Product cards (shop + related) ---- */
.products li.product, .wd-product, .product-grid-item, ul.products .product{
  background:linear-gradient(180deg,var(--panel),#0d1009) !important;
  border:1px solid var(--line) !important; border-radius:12px !important;
  overflow:hidden; transition:.25s;
}
.wd-product .product-wrapper, .product-grid-item .product-wrapper{background:transparent !important;}
.wd-product:hover, .products li.product:hover{
  transform:translateY(-5px); border-color:#8ff02a55 !important;
  box-shadow:0 18px 45px rgba(0,0,0,.55) !important;
}
.wd-product .wd-entities-title a, .product-grid-item .wd-entities-title a,
.products .product h3, .products .product .woocommerce-loop-product__title{color:var(--ink) !important;}
.wd-product .wd-entities-title a:hover{color:var(--green) !important;}
.product-grid-item .hover-content, .wd-product .product-element-bottom{background:transparent !important;}
mark.count, .wd-product .category-wrap a, .wd-product-cats a{color:var(--mut) !important;}

/* ---- Prices ---- */
.price, .woocommerce-Price-amount, .amount, .wd-price, span.price ins .amount,
.summary .price, .product .price{color:var(--green) !important; font-weight:700 !important;}
.price del, del .amount{color:var(--dim) !important;}
.onsale, .wd-badge, .product-labels .out-of-stock, .price-label{
  background:var(--green) !important; color:#0a0d06 !important; border:none !important;
}

/* ---- Buttons / CTAs ---- */
.button, a.button, button:not(.wd-close):not(.mfp-close), .btn,
.single_add_to_cart_button, input[type="submit"],
.wd-buttons .wd-add-btn, .added_to_cart, .wd-buy-now-btn,
.wc-block-components-button, .checkout-button{
  background:var(--green) !important; color:#0a0d06 !important;
  border:none !important; border-radius:4px !important;
  font-family:'KairosCn',sans-serif !important; text-transform:uppercase !important;
  letter-spacing:.08em !important; font-weight:700 !important;
}
.button:hover, a.button:hover, .btn:hover, .single_add_to_cart_button:hover, input[type="submit"]:hover{
  background:var(--green2) !important; color:#0a0d06 !important;
}
.btn-style-bordered, .button.wd-buy-now-btn.btn-style-link, a.wd-buy-now-btn{
  background:transparent !important; color:var(--green) !important;
  border:1px solid var(--greendk) !important;
}

/* ---- Forms / search / inputs ---- */
input[type="text"], input[type="email"], input[type="search"], input[type="password"],
input[type="tel"], input[type="number"], input[type="url"], textarea, select, .select2-selection,
.wd-search-inline input, .form-row input, .wc-block-components-text-input input,
.wpcf7-form input, .wpcf7-form textarea, .wpcf7-form select{
  background-color:#2a331d !important; color:var(--ink) !important;
  border:1px solid rgba(143,240,42,.30) !important; border-radius:6px !important;
}
input:focus, textarea:focus, select:focus,
.wpcf7-form input:focus, .wpcf7-form textarea:focus, .wpcf7-form select:focus{
  background-color:#313b22 !important; border-color:var(--green) !important;
  box-shadow:0 0 0 2px rgba(143,240,42,.18) !important; outline:none !important;
}
::placeholder{color:#93a37f !important; opacity:1 !important;}

/* ---- Sections / rows / widgets on non-Elementor pages ---- */
.wd-section, .wd-negative-gap, section.wd-parallax, .widget, .wd-widget,
.woocommerce-tabs, .wc-tabs-wrapper, .related.products, .up-sells,
.cross-sells, .cart-collaterals, table.shop_table, .woocommerce-info,
.woocommerce-message, .wd-single-tabs{
  background-color:transparent !important; color:var(--ink) !important; border-color:var(--line) !important;
}
.widget-title, .wd-widget-title, .wc-tab h2{color:var(--ink) !important;}
.woocommerce-tabs .tabs li a, .wc-tabs li a{color:var(--mut) !important;}
.woocommerce-tabs .tabs li.active a, .wc-tabs li.active a{color:var(--green) !important;}
table.shop_table, table.shop_table th, table.shop_table td, .cart_totals table{
  background:var(--panel) !important; color:var(--ink) !important; border-color:var(--line) !important;
}
hr, .wd-hr, .divider{border-color:var(--line) !important;}

/* ---- Notices ---- */
.woocommerce-message, .woocommerce-info, .woocommerce-error{
  background:var(--panel) !important; color:var(--ink) !important;
  border-top:3px solid var(--green) !important;
}

/* ---- Product single ---- */
.single-product div.product .product_title{color:var(--ink) !important;}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{border-color:var(--line) !important;}
.wd-single-meta, .product_meta, .posted_in, .sku_wrapper{color:var(--mut) !important;}
.wd-single-meta a, .product_meta a{color:var(--green) !important;}
.wd-scroll-content, .wd-nav-arrows, .thumbnails{background:transparent !important;}

/* ---- Sale/new-arrivals headings, dividers ---- */
.title-divider, .liner-continue{background:var(--green) !important;}

/* ---- Elementor / builder pages -> force dark (fixes contact + about white sections, invisible text/icons) ---- */
.elementor-section, .elementor-top-section, .elementor-inner-section, .e-con, .e-con-inner,
.elementor-column, .elementor-column-wrap, .elementor-widget-wrap, .elementor-widget-container,
.elementor-element, .wd-negative-gap, .info-box-wrapper, .info-box-inner,
.wd-info-box, .elementor-icon-box-wrapper{background-color:transparent !important;}
.elementor h1,.elementor h2,.elementor h3,.elementor h4,.elementor h5,.elementor h6,
.elementor .elementor-heading-title,.info-box-title,.wd-info-box .title,
.elementor .elementor-icon-box-title,.elementor .elementor-icon-list-text{color:var(--ink) !important;}
.elementor p,.elementor li,.elementor .elementor-text-editor,.elementor .elementor-widget-text-editor,
.info-box-inner,.info-box-inner *,.elementor span,.elementor strong{color:#cdd8c2 !important;}
.elementor a{color:var(--green) !important;}
/* builder icons -> green (were black, invisible on dark) */
.elementor-icon, .elementor-icon svg, .elementor-icon i, .elementor-icon-box-icon svg,
.elementor-icon-box-icon i, .wd-info-box .box-icon svg, .info-box-icon svg, .info-box-icon i,
.elementor-icon-list-icon svg, .elementor-icon-list-icon i{color:var(--green) !important;fill:var(--green) !important;stroke:var(--green) !important;}
/* accordions / toggles / tabs -> dark panels, light text */
.wd-accordion-item, .elementor-accordion .elementor-accordion-item, .elementor-toggle-item,
.elementor-tab-title, .elementor-tab-content{background-color:var(--panel) !important;border-color:var(--line) !important;}
.wd-accordion-title, .wd-accordion-title-text, .elementor-accordion .elementor-tab-title,
.elementor-toggle-title, .elementor-tab-title a{color:var(--ink) !important;}
.wd-accordion-inner, .wd-accordion-inner *, .elementor-tab-content, .elementor-tab-content *{color:#cdd8c2 !important;}
/* google-map info + inner-page title bar */
.wd-google-map-content{background-color:var(--panel) !important;color:var(--ink) !important;border:1px solid var(--line) !important;border-radius:10px;}
.wd-page-title, .page-title-default, .title-size-default{background-color:var(--bg2) !important;}
.wd-page-title .entry-title, .wd-page-title .breadcrumbs{color:var(--ink) !important;}

/* ---- Gravity Forms (wholesale / contact) dark ---- */
.gform_wrapper label, .gform_wrapper .gfield_label, .gform_wrapper legend, .gform-field-label{color:var(--ink) !important;}
.gform_wrapper .gform_description, .gform_wrapper .gfield_description, .gform_required_legend{color:var(--mut) !important;}
.gform_wrapper input, .gform_wrapper select, .gform_wrapper textarea{background:var(--panel2) !important;color:var(--ink) !important;border:1px solid var(--line) !important;}
.gform_wrapper .gform_button, .gform_wrapper input[type="submit"], .gform_footer input{background:var(--green) !important;color:#0a0d06 !important;border:none !important;font-family:'KairosCn',sans-serif !important;text-transform:uppercase;letter-spacing:.08em;}

/* ---- Product description tab: stack uneven Elementor columns (kills the empty void) ---- */
.wc-tab .elementor-column, .woocommerce-Tabs-panel .elementor-column, .wd-single-tabs .elementor-column,
.wc-tab .elementor-widget-wrap{width:100% !important;max-width:100% !important;flex:0 0 100% !important;}
.wc-tab .elementor-container, .woocommerce-Tabs-panel .elementor-container{flex-wrap:wrap !important;}
.wc-tab .wd-entry-content, .woocommerce-Tabs-panel .wd-entry-content{max-width:920px;}
.wc-tab .elementor-widget-heading{margin-top:8px;}

/* ---- Modern footer ---- */
.site-footer, footer.footer-container, .wd-footer{
  background:linear-gradient(180deg,rgba(17,20,12,.96),rgba(8,10,6,.99)) !important;
  border-top:2px solid var(--greendk) !important;}
.site-footer .widget-title, footer .widget-title, .wd-footer .widget-title{
  color:var(--green) !important;font-family:'KairosCn',sans-serif !important;letter-spacing:.16em !important;font-size:13px !important;}
.site-footer a, .wd-footer a{color:#adba9c !important;transition:color .2s;}
.site-footer a:hover, .wd-footer a:hover{color:var(--green) !important;}
.site-footer .wd-widget-separator, .site-footer hr{border-color:#ffffff12 !important;}

/* ---- Product-page 360 spin video ---- */
.bg-spinwrap{position:relative;border-radius:16px !important;overflow:hidden;border:1px solid var(--line) !important;
 background:#000 !important;box-shadow:0 20px 60px rgba(0,0,0,.5),inset 0 0 110px rgba(143,240,42,.07);aspect-ratio:1/1;}
.bg-spinwrap .bg-spin{width:100%;height:100%;object-fit:cover;display:block;}

/* ---- Scrollbar accent (webkit) ---- */
::-webkit-scrollbar{width:12px;height:12px;}
::-webkit-scrollbar-track{background:var(--bg);}
::-webkit-scrollbar-thumb{background:#26301c;border-radius:6px;}
::-webkit-scrollbar-thumb:hover{background:var(--greendk);}
