/* ============================================================
   Ryno Optimization — Homepage Design Fixes
   Prepared by 24x7wpsupport.com  |  Scoped to body.home
   Loaded after Elementor (mu-plugin, priority 999)
   ============================================================ */

/* ============ 1) HEADER: visible cart + bottom border ============ */
body.home .elementor-1728 .elementor-menu-cart__toggle_button,
body.home .elementor-1728 .elementor-menu-cart__toggle_button .elementor-button-text,
body.home .elementor-1728 .elementor-menu-cart__toggle_button .woocommerce-Price-amount,
body.home .elementor-1728 .elementor-menu-cart__toggle_button .woocommerce-Price-currencySymbol,
body.home .elementor-1728 .elementor-menu-cart__toggle_button .elementor-button-icon-qty {
    color: #111111 !important;
}
body.home .elementor-1728 .elementor-menu-cart__toggle_button svg { fill: #111111 !important; }
body.home .elementor-1728 .elementor-element-c02ac78 {
    border-bottom: 1px solid #e6e6e6;
    box-shadow: 0 1px 8px rgba(0,0,0,.05);
}

/* ============ 2) BUTTONS: colorful hover (bg + text invert) ============ */
body.home .elementor-widget-button .elementor-button {
    transition: background-color .25s ease, color .25s ease, border-color .25s ease, transform .15s ease;
}
body.home .elementor-widget-button .elementor-button:hover {
    background-color: #111111 !important;
    color: #A4FF80 !important;
    border-color: #111111 !important;
    transform: translateY(-2px);
}
body.home .elementor-1291 .e-loop-add-to-cart-form .button {
    transition: background-color .25s ease, color .25s ease, border-color .25s ease;
}
body.home .elementor-1291 .e-loop-add-to-cart-form .button:hover {
    background-color: #111111 !important;
    color: #A4FF80 !important;
    border-color: #111111 !important;
}

/* ============ HERO headline readable ============ */
body.home .elementor-element-443a409 .elementor-heading-title,
body.home .elementor-element-1a7b1e3 .elementor-heading-title { color: #111111 !important; }

/* ============ 4) SECTION HEADINGS: centered + spaced ============ */
body.home .elementor-element-eb72ca4,
body.home .elementor-element-2632223,
body.home .elementor-element-05b025b,
body.home .elementor-element-db43916 { text-align: center; align-items: center; }
body.home .elementor-element-eb72ca4 .elementor-heading-title,
body.home .elementor-element-2632223 .elementor-heading-title,
body.home .elementor-element-05b025b .elementor-heading-title,
body.home .elementor-element-db43916 .elementor-heading-title,
body.home .elementor-element-eb72ca4 .elementor-widget-text-editor,
body.home .elementor-element-2632223 .elementor-widget-text-editor,
body.home .elementor-element-05b025b .elementor-widget-text-editor,
body.home .elementor-element-db43916 .elementor-widget-text-editor { text-align: center !important; }
body.home .elementor-element-12d75e5,
body.home .elementor-element-61cfe05,
body.home .elementor-element-183ab89,
body.home .elementor-element-03c9e06 { letter-spacing: .18em; margin-top: 18px; }

/* ============ 5) PRODUCT CARD: center content ============ */
body.home .elementor-1291 .elementor-element-3d08fa9 .elementor-heading-title,
body.home .elementor-1291 .elementor-element-6f54921,
body.home .elementor-1291 .elementor-element-79bcc51,
body.home .elementor-1291 .elementor-element-79bcc51 .woocommerce-product-details__short-description,
body.home .elementor-1291 .elementor-element-37f40e1 .elementor-shortcode {
    text-align: center !important;
    width: 100%;
}
body.home .elementor-1291 .elementor-element-0f413e3 { align-items: center; }
body.home .elementor-1291 .elementor-element-46363e2 { justify-content: center; }

/* ============ 6) HOW IT WORKS: readable text on green ============ */
body.home .elementor-element-12133bf .elementor-widget-text-editor,
body.home .elementor-element-12133bf .elementor-widget-text-editor p,
body.home .elementor-element-12133bf .elementor-icon-box-description { color: #14210c !important; }

/* ============ 7) QUALITY ASSURANCE: readable sub-headings ============ */
body.home .elementor-element-c61ef7c .elementor-heading-title,
body.home .elementor-element-eca152f .elementor-heading-title { color: #111111 !important; }
body.home .elementor-element-60234f2 .elementor-heading-title,
body.home .elementor-element-60234f2 .elementor-heading-title a { color: #ffffff !important; }
body.home .elementor-element-7402462 { margin-top: 10px; }

/* ============ 8) ABOUT: tidy cards + spacing ============ */
body.home .elementor-element-aa863c2 { padding-bottom: 24px; }
body.home .elementor-element-ff79df0 > .e-con-inner {
    display: flex; flex-direction: column; gap: 16px; align-items: stretch;
    max-width: 820px; margin: 0 auto;
}
body.home .elementor-element-54561b5,
body.home .elementor-element-a7f2ccc,
body.home .elementor-element-c627ff8 { transform: none !important; margin: 0 !important; }

/* ============ 9) FOOTER + above-footer ============ */
body.home .elementor-element-6fb16e00 .elementor-heading-title { color: #111111 !important; }
body.home .elementor-10 .elementor-heading-title { color: #111111 !important; }
body.home .elementor-10 .elementor-icon-list-text { color: #3a3a3a !important; transition: color .2s ease; }
body.home .elementor-10 .elementor-icon-list-item a:hover .elementor-icon-list-text { color: #5a8f27 !important; }
body.home .elementor-10 .elementor-element-eeed4e6,
body.home .elementor-10 .elementor-element-fe02ba6 .elementor-heading-title { color: #555555 !important; }

/* ============================================================
   PROFESSIONAL POLISH PASS
   ============================================================ */

/* P1) Tighter, consistent vertical spacing on content sections */
body.home .elementor-530 > .elementor-element-a4beb1e,
body.home .elementor-530 > .elementor-element-7a5a943,
body.home .elementor-530 > .elementor-element-aa863c2,
body.home .elementor-530 > .elementor-element-2e6bf5b {
    padding-top: 64px !important;
    padding-bottom: 64px !important;
}
/* pull the About "floating cards" up toward the text, less dead space */
body.home .elementor-530 > .elementor-element-a1a1f13 {
    padding-top: 0 !important;
    margin-top: -8px !important;
}
/* trim the gap under the How-it-works block */
body.home .elementor-element-12133bf { padding-bottom: 8px !important; }

/* P4) Product cards: defined container + hover lift */
body.home .elementor-1291 .elementor-element-3d08fa9 {
    background: #ffffff;
    border: 1px solid #ececec;
    border-radius: 16px;
    box-shadow: 0 2px 16px rgba(0,0,0,.05);
    padding: 18px !important;
    transition: box-shadow .25s ease, transform .2s ease;
}
body.home .elementor-1291 .swiper-slide:hover .elementor-element-3d08fa9 {
    box-shadow: 0 10px 28px rgba(0,0,0,.10);
    transform: translateY(-3px);
}
body.home .elementor-1291 .elementor-element-1a60a7d img {
    border-radius: 12px;
    width: 100%;
    height: auto;
}

/* P6) Trust strip: brand-green icons + darker, weightier text */
body.home .elementor-element-d4c6bf4 svg path,
body.home .elementor-element-d4c6bf4 svg line { stroke: #5a8f27; }
body.home .elementor-element-d4c6bf4 svg path { fill: #5a8f27 !important; }
body.home .elementor-element-d4c6bf4 .elementor-icon-list-text { color: #333333 !important; font-weight: 500; }

/* small rhythm tidy under section subtitles */
body.home .elementor-element-9690aef,
body.home .elementor-element-33e8ddc { margin-bottom: 8px; }

/* ============================================================
   SECTION REWORK v2  (higher specificity to beat post-530.css)
   ============================================================ */

/* ---- ABOUT: turn the 3 scattered statements into a clean card row ---- */
body.home .elementor-530 .elementor-element.elementor-element-aa863c2 { padding-bottom: 14px !important; }
body.home .elementor-530 .elementor-element.elementor-element-a1a1f13 {
    padding-top: 6px !important;
    padding-bottom: 56px !important;
    margin-top: 0 !important;
}
body.home .elementor-530 .elementor-element.elementor-element-ff79df0 {
    max-width: 1160px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
}
body.home .elementor-530 .elementor-element.elementor-element-ff79df0 > .e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 20px !important;
    justify-content: center !important;
    align-items: stretch !important;
}
body.home .elementor-530 .elementor-element.elementor-element-54561b5,
body.home .elementor-530 .elementor-element.elementor-element-a7f2ccc,
body.home .elementor-530 .elementor-element.elementor-element-c627ff8 {
    position: relative !important;
    left: auto !important; right: auto !important; top: auto !important; bottom: auto !important;
    transform: none !important;
    margin: 0 !important;
    flex: 1 1 300px !important;
    max-width: 360px !important;
    background: #ffffff !important;
    border: 1px solid #e6e6e6 !important;
    border-radius: 16px !important;
    box-shadow: 0 3px 16px rgba(0,0,0,.06) !important;
    padding: 26px 24px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
body.home .elementor-530 .elementor-element.elementor-element-54561b5 .elementor-heading-title,
body.home .elementor-530 .elementor-element.elementor-element-a7f2ccc .elementor-heading-title,
body.home .elementor-530 .elementor-element.elementor-element-c627ff8 .elementor-heading-title {
    text-align: center !important;
    font-size: 18px !important;
    line-height: 1.45 !important;
    color: #111111 !important;
    margin: 0 !important;
}

/* ---- QUALITY ASSURANCE: tighten whitespace + balance the two columns ---- */
body.home .elementor-530 .elementor-element.elementor-element-7a5a943 {
    padding-top: 54px !important;
    padding-bottom: 54px !important;
}
body.home .elementor-530 .elementor-element.elementor-element-7402462 {
    align-items: center !important;
    gap: 48px !important;
    margin-top: 22px !important;
}
body.home .elementor-530 .elementor-element.elementor-element-60234f2 {
    gap: 10px !important;
    padding: 26px 30px !important;
    border-radius: 18px !important;
}
/* the compound names inside the pill: keep evenly spaced but a touch tighter */
body.home .elementor-530 .elementor-element.elementor-element-60234f2 .elementor-heading-title { font-size: 20px !important; }

/* ============================================================
   PRODUCTS / SHOP ARCHIVE — match homepage product card design
   Loop template 813 (used on /products/ and category pages)
   ============================================================ */

/* equal-height grid items */
.elementor-813.e-loop-item { height: 100%; }
.elementor-813 .elementor-element-d5d6e49 { height: 100%; }
.elementor-813 .elementor-element-d5d6e49 > .e-con-inner {
    display: flex;
    flex-direction: column;
    height: 100%;
}

/* card container styling + hover lift */
.elementor-813 .elementor-element-d5d6e49 {
    background: #ffffff;
    border: 1px solid #ececec;
    border-radius: 16px;
    box-shadow: 0 2px 16px rgba(0,0,0,.05);
    padding: 18px !important;
    transition: box-shadow .25s ease, transform .2s ease;
}
.elementor-813.e-loop-item:hover .elementor-element-d5d6e49 {
    box-shadow: 0 10px 28px rgba(0,0,0,.10);
    transform: translateY(-3px);
}

/* rounded product image */
.elementor-813 .elementor-element-8bf3180 img {
    border-radius: 12px;
    width: 100%;
    height: auto;
}

/* center title + price + purity under the image */
.elementor-813 .elementor-element-348967e,
.elementor-813 .elementor-element-348967e .elementor-heading-title,
.elementor-813 .elementor-element-fae28d3 .elementor-shortcode {
    text-align: center !important;
    width: 100%;
}
.elementor-813 .elementor-element-85cbdbe { align-items: center; }
.elementor-813 .elementor-element-6faa605 { justify-content: center; }

/* stack price/purity above a full-width button pinned to the bottom */
.elementor-813 .elementor-element-d603502 {
    margin-top: auto;
    --e-con-grid-template-columns: 1fr;
    --align-items: stretch;
    --justify-items: stretch;
    width: 100%;
}
.elementor-813 .elementor-element-1ae52f1,
.elementor-813 .elementor-element-1ae52f1 .elementor-add-to-cart,
.elementor-813 .elementor-element-1ae52f1 .e-loop-add-to-cart-form-container,
.elementor-813 .elementor-element-1ae52f1 .cart { width: 100%; }
.elementor-813 .elementor-element-1ae52f1 .cart .button {
    display: block;
    width: 100%;
    text-align: center;
    margin-top: 10px;
    transition: background-color .25s ease, color .25s ease, border-color .25s ease;
}
.elementor-813 .elementor-element-1ae52f1 .cart .button:hover {
    background-color: #111111 !important;
    color: #A4FF80 !important;
    border-color: #111111 !important;
}

/* ---- Shop-page header (template 39): visible cart + divider + button hover ---- */
.elementor-39 .elementor-menu-cart__toggle_button,
.elementor-39 .elementor-menu-cart__toggle_button .elementor-button-text,
.elementor-39 .elementor-menu-cart__toggle_button .woocommerce-Price-amount,
.elementor-39 .elementor-menu-cart__toggle_button .woocommerce-Price-currencySymbol,
.elementor-39 .elementor-menu-cart__toggle_button .elementor-button-icon-qty { color: #111111 !important; }
.elementor-39 .elementor-menu-cart__toggle_button svg { fill: #111111 !important; }
.elementor-39 .elementor-element-74112b2a {
    border-bottom: 1px solid #e6e6e6;
    box-shadow: 0 1px 8px rgba(0,0,0,.05);
}
.elementor-39 .elementor-widget-button .elementor-button {
    transition: background-color .25s ease, color .25s ease, border-color .25s ease, transform .15s ease;
}
.elementor-39 .elementor-widget-button .elementor-button:hover {
    background-color: #111111 !important;
    color: #A4FF80 !important;
    border-color: #111111 !important;
    transform: translateY(-2px);
}

/* archive title centered to match site rhythm */
body.post-type-archive-product .elementor-element-2d46de7 .elementor-heading-title,
body.post-type-archive-product .elementor-element-2d46de7 .elementor-widget-text-editor { text-align: center !important; }

/* ============================================================
   PRODUCTS/SHOP CARD FIX v2  — force over Elementor loop-813 inline styles
   (body.woocommerce + double-class + !important beats the inline block)
   Applies to /products/ AND all product category archives (both use 813)
   ============================================================ */
body.woocommerce .elementor-813 .elementor-element.elementor-element-d5d6e49 {
    background:#ffffff !important;
    border:1px solid #ececec !important;
    border-radius:16px !important;
    box-shadow:0 2px 16px rgba(0,0,0,.05) !important;
    padding:18px !important;
    height:100% !important;
    transition:box-shadow .25s ease, transform .2s ease !important;
}
body.woocommerce .elementor-813 .elementor-element.elementor-element-d5d6e49 > .e-con-inner {
    display:flex !important;
    flex-direction:column !important;
    height:100% !important;
}
body.woocommerce .elementor-813.e-loop-item:hover .elementor-element.elementor-element-d5d6e49 {
    box-shadow:0 10px 28px rgba(0,0,0,.10) !important;
    transform:translateY(-3px) !important;
}
body.woocommerce .elementor-813 .elementor-element.elementor-element-8bf3180 img {
    border-radius:12px !important; width:100% !important; height:auto !important;
}
body.woocommerce .elementor-813 .elementor-element.elementor-element-348967e,
body.woocommerce .elementor-813 .elementor-element.elementor-element-348967e .elementor-heading-title,
body.woocommerce .elementor-813 .elementor-element.elementor-element-fae28d3 .elementor-shortcode {
    text-align:center !important; width:100% !important;
}
body.woocommerce .elementor-813 .elementor-element.elementor-element-85cbdbe { align-items:center !important; }
body.woocommerce .elementor-813 .elementor-element.elementor-element-6faa605 { justify-content:center !important; }
body.woocommerce .elementor-813 .elementor-element.elementor-element-d603502 {
    margin-top:auto !important;
    --e-con-grid-template-columns:1fr !important;
    --align-items:stretch !important;
    --justify-items:stretch !important;
    width:100% !important;
}
body.woocommerce .elementor-813 .elementor-element.elementor-element-1ae52f1 { width:100% !important; max-width:100% !important; }
body.woocommerce .elementor-813 .elementor-element.elementor-element-1ae52f1 .cart,
body.woocommerce .elementor-813 .elementor-element.elementor-element-1ae52f1 .e-loop-add-to-cart-form-container,
body.woocommerce .elementor-813 .elementor-element.elementor-element-1ae52f1 .elementor-add-to-cart { width:100% !important; }
body.woocommerce .elementor-813 .elementor-element.elementor-element-1ae52f1 .cart .button {
    display:block !important; width:100% !important; text-align:center !important; margin-top:10px !important;
    transition:background-color .25s ease, color .25s ease, border-color .25s ease !important;
}
body.woocommerce .elementor-813 .elementor-element.elementor-element-1ae52f1 .cart .button:hover {
    background-color:#111111 !important; color:#A4FF80 !important; border-color:#111111 !important;
}

/* ---- SINGLE PRODUCT related-products loop (template 1825): same card look ---- */
body.single-product .elementor-1825 .elementor-element.elementor-element-30756e2 img {
    border-radius:12px !important; width:100% !important; height:auto !important;
}
body.single-product .elementor-1825 .e-loop-item > .e-con.e-parent {
    background:#ffffff !important;
    border:1px solid #ececec !important;
    border-radius:16px !important;
    box-shadow:0 2px 16px rgba(0,0,0,.05) !important;
    padding:18px !important;
    transition:box-shadow .25s ease, transform .2s ease !important;
}
body.single-product .elementor-1825 .e-loop-item:hover > .e-con.e-parent {
    box-shadow:0 10px 28px rgba(0,0,0,.10) !important;
    transform:translateY(-3px) !important;
}
body.single-product .elementor-1825 .elementor-element.elementor-element-5f9071d .cart .button {
    display:block !important; width:100% !important; text-align:center !important; margin-top:10px !important;
    transition:background-color .25s ease, color .25s ease, border-color .25s ease !important;
}
body.single-product .elementor-1825 .elementor-element.elementor-element-5f9071d .cart .button:hover {
    background-color:#111111 !important; color:#A4FF80 !important; border-color:#111111 !important;
}

/* =====================================================================
   WOOCOMMERCE PAGES READABILITY  (Cart / Checkout / My Account)
   Theme is dark-built; WooCommerce text + inputs collide with the white
   background. Force readable dark text and light inputs on these pages.
   Prepared by 24x7wpsupport.com
   ===================================================================== */

/* --- 1) Force dark, readable text inside the Woo widgets --- */
body.woocommerce-cart .elementor-widget-woocommerce-cart,
body.woocommerce-cart .elementor-widget-woocommerce-cart *,
body.woocommerce-checkout .elementor-widget-woocommerce-checkout-page,
body.woocommerce-checkout .elementor-widget-woocommerce-checkout-page *,
body.woocommerce-account .elementor-widget-woocommerce-my-account,
body.woocommerce-account .elementor-widget-woocommerce-my-account * {
    color: #1a1a1a !important;
}

/* --- 2) Content links: dark + underlined so they read on white --- */
body.woocommerce-cart .elementor-widget-woocommerce-cart a:not(.button):not(.checkout-button):not(.wc-forward),
body.woocommerce-checkout .elementor-widget-woocommerce-checkout-page a:not(.button):not(.checkout-button),
body.woocommerce-account .elementor-widget-woocommerce-my-account a:not(.button):not(.checkout-button) {
    text-decoration: underline !important;
}

/* --- 3) Form fields: white boxes, light border, dark text --- */
body.woocommerce-cart .elementor-widget-woocommerce-cart input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
body.woocommerce-cart .elementor-widget-woocommerce-cart textarea,
body.woocommerce-cart .elementor-widget-woocommerce-cart select,
body.woocommerce-checkout .elementor-widget-woocommerce-checkout-page input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
body.woocommerce-checkout .elementor-widget-woocommerce-checkout-page textarea,
body.woocommerce-checkout .elementor-widget-woocommerce-checkout-page select,
body.woocommerce-account .elementor-widget-woocommerce-my-account input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
body.woocommerce-account .elementor-widget-woocommerce-my-account textarea,
body.woocommerce-account .elementor-widget-woocommerce-my-account select,
body.woocommerce-checkout .select2-container--default .select2-selection--single,
body.woocommerce-cart .select2-container--default .select2-selection--single {
    background-color: #ffffff !important;
    border: 1px solid #d5d5d5 !important;
    color: #1a1a1a !important;
    border-radius: 8px !important;
}
body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #1a1a1a !important;
    line-height: 40px !important;
}
/* placeholders legible (mid-grey, not near-white) */
body.woocommerce-cart .elementor-widget-woocommerce-cart input::placeholder,
body.woocommerce-cart .elementor-widget-woocommerce-cart textarea::placeholder,
body.woocommerce-checkout .elementor-widget-woocommerce-checkout-page input::placeholder,
body.woocommerce-checkout .elementor-widget-woocommerce-checkout-page textarea::placeholder,
body.woocommerce-account .elementor-widget-woocommerce-my-account input::placeholder,
body.woocommerce-account .elementor-widget-woocommerce-my-account textarea::placeholder {
    color: #767676 !important;
}

/* --- 4) Buttons: unify to brand lime with dark, readable label --- */
body.woocommerce-cart .elementor-widget-woocommerce-cart .button,
body.woocommerce-cart .elementor-widget-woocommerce-cart .checkout-button,
body.woocommerce-checkout .elementor-widget-woocommerce-checkout-page .button,
body.woocommerce-checkout .elementor-widget-woocommerce-checkout-page #place_order,
body.woocommerce-account .elementor-widget-woocommerce-my-account .button,
body.woocommerce-account .elementor-widget-woocommerce-my-account .woocommerce-button {
    background-color: #A4FF80 !important;
    color: #111111 !important;
    border: 1px solid #A4FF80 !important;
}
body.woocommerce-cart .elementor-widget-woocommerce-cart .button:hover,
body.woocommerce-checkout .elementor-widget-woocommerce-checkout-page .button:hover,
body.woocommerce-checkout .elementor-widget-woocommerce-checkout-page #place_order:hover,
body.woocommerce-account .elementor-widget-woocommerce-my-account .button:hover {
    background-color: #111111 !important;
    color: #A4FF80 !important;
    border-color: #111111 !important;
}

/* --- 5) My Account left nav: active pill keeps lime, links read dark --- */
body.woocommerce-account .woocommerce-MyAccount-navigation-link.is-active a {
    color: #111111 !important;
}

/* =====================================================================
   ABOUT + shared CTA template (532) — used site-wide
   ===================================================================== */
.elementor-532 .elementor-element-6fb16e00 .elementor-heading-title { color: #111111 !important; }
.elementor-532 .elementor-element-28e55ed4,
.elementor-532 .elementor-element-28e55ed4 p { color: #444444 !important; }

/* About "Our Story" lime pull-quote — darken to a readable green */
body.page-id-41 .elementor-element-6c2629c h4,
body.page-id-41 .elementor-element-6c2629c h4 span { color: #2f8f16 !important; }

/* =====================================================================
   CONTACT page (48) — darken faint eyebrows + helper line
   ===================================================================== */
body.page-id-48 .elementor-element-d9efc81 .elementor-heading-title,
body.page-id-48 .elementor-element-22a617f .elementor-heading-title { color: #333333 !important; }
body.page-id-48 .elementor-element-6d68939,
body.page-id-48 .elementor-element-6d68939 p { color: #555555 !important; }


/* =====================================================================
   SINGLE PRODUCT PAGE — summary readability
   (theme + a page inline-style set these near-white; override w/ higher
    specificity + !important so the inline #eaeaea loses)
   Prepared by 24x7wpsupport.com
   ===================================================================== */

/* price: current/sale dark, struck-through muted grey */
body.single-product .woocommerce-Price-amount,
body.single-product .woocommerce-Price-currencySymbol,
body.single-product ins .woocommerce-Price-amount,
body.single-product .price ins { color:#111111 !important; text-decoration:none !important; }
body.single-product del .woocommerce-Price-amount,
body.single-product .price del { color:#8a8a8a !important; }

/* quantity selector: white box, dark digits, +/- readable */
body.single-product .quantity input.qty,
body.single-product input.qty,
body.single-product .qib-button {
    background:#ffffff !important; color:#111111 !important; border:1px solid #d5d5d5 !important;
}

/* Add to cart + Buy Now: keep lime, dark readable label + dark hover */
body.single-product .cart .button,
body.single-product .single_add_to_cart_button,
body.single-product .e-loop-add-to-cart-form .button,
body.single-product [class*="buy-now"],
body.single-product .wbnb-buy-now-button { color:#111111 !important; }
body.single-product .cart .button:hover,
body.single-product .single_add_to_cart_button:hover,
body.single-product [class*="buy-now"]:hover {
    color:#A4FF80 !important; background-color:#111111 !important; border-color:#111111 !important;
}

/* near-white inline-styled bits: variation label, "— ... selected" pill,
   swatch titles/prices — beat the page's #eaeaea inline !important */
body.single-product .variations th.label label { color:#333333 !important; }
body.single-product .woo-selected-variation-item-name { color:#333333 !important; }
body.single-product li.variable-item .swatch-title { color:#111111 !important; }
body.single-product li.variable-item .swatch-price { color:#2f8f16 !important; }


/* --- Checkout: payment-method info box was a dark panel (text hid in it) --- */
body.woocommerce-checkout .elementor-widget-woocommerce-checkout-page .payment_box,
body.woocommerce-checkout .wc_payment_method .payment_box {
    background: #f4f5f4 !important;
    color: #1a1a1a !important;
    border: 1px solid #e2e2e2 !important;
}
body.woocommerce-checkout .wc_payment_method .payment_box::before {
    border-bottom-color: #f4f5f4 !important;
}
body.woocommerce-checkout .wc_payment_method .payment_box p { color: #1a1a1a !important; }


/* --- Contact page: center the "Contact Us" heading + intro line --- */
body.page-id-48 .elementor-element-c190525,
body.page-id-48 .elementor-element-c190525 .elementor-heading-title,
body.page-id-48 .elementor-element-a57dccc,
body.page-id-48 .elementor-element-a57dccc p {
    text-align: center !important;
}

/* Contact FAQ "Still have a question?" card heading was near-invisible */
body.page-id-48 .elementor-element-4545690 .elementor-heading-title { color:#111111 !important; }


/* =====================================================================
   PLAIN CONTENT / LEGAL PAGES (Shipping, Privacy, Terms, Refund,
   Disclaimer, etc.) — theme renders headings/text near-white on white.
   Force dark, readable text on all simple pages, while EXCLUDING the
   designed pages (home/about/contact) and every commerce page so no
   dark-background section is affected. Scoped to page content only
   (header/footer untouched).
   ===================================================================== */
body:not(.home):not(.page-id-41):not(.page-id-48):not(.woocommerce-page):not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account):not(.single-product) [data-elementor-type="wp-page"] .elementor-widget-heading .elementor-heading-title,
body:not(.home):not(.page-id-41):not(.page-id-48):not(.woocommerce-page):not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account):not(.single-product) [data-elementor-type="wp-page"] .elementor-widget-text-editor,
body:not(.home):not(.page-id-41):not(.page-id-48):not(.woocommerce-page):not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account):not(.single-product) [data-elementor-type="wp-page"] .elementor-widget-text-editor * {
    color: #1a1a1a !important;
}


/* --- WooCommerce notice boxes (cart/checkout/account) were dark panels;
       give them a light background so the dark text reads --- */
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-error,
body.woocommerce-account .woocommerce-notice,
body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .woocommerce-error,
body.woocommerce-cart .woocommerce-notice,
body.woocommerce-checkout .woocommerce-message,
body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-error,
body.woocommerce-checkout .woocommerce-notice {
    background-color: #f4f5f4 !important;
    color: #1a1a1a !important;
    border: 1px solid #e2e2e2 !important;
}
body.woocommerce-account .woocommerce-message *,
body.woocommerce-account .woocommerce-info *,
body.woocommerce-cart .woocommerce-message *,
body.woocommerce-checkout .woocommerce-message * {
    color: #1a1a1a !important;
}
/* keep the action buttons inside notices lime + dark label */
body.woocommerce-account .woocommerce-message .button,
body.woocommerce-account .woocommerce-info .button,
body.woocommerce-cart .woocommerce-message .button,
body.woocommerce-checkout .woocommerce-message .button {
    background-color: #A4FF80 !important; color: #111111 !important; border-color:#A4FF80 !important;
}


/* --- Cart: keep "Update Cart" label readable even in disabled state --- */
body.woocommerce-cart .elementor-widget-woocommerce-cart button[name="update_cart"],
body.woocommerce-cart .elementor-widget-woocommerce-cart button[name="update_cart"]:disabled {
    color: #2c3a20 !important;
    opacity: 1 !important;
}
/* --- Cart Totals: match the left table's dark text --- */
body.woocommerce-cart .cart_totals th,
body.woocommerce-cart .cart_totals td,
body.woocommerce-cart .cart_totals h2,
body.woocommerce-cart .cart_totals .woocommerce-Price-amount,
body.woocommerce-cart .cart_totals .woocommerce-Price-currencySymbol {
    color: #1a1a1a !important;
}


/* --- Single product: broaden quantity control coverage (digits + +/-) --- */
body.single-product .quantity input,
body.single-product .quantity .qty,
body.single-product .quantity button,
body.single-product .quantity .plus,
body.single-product .quantity .minus,
body.single-product .qib-button,
body.single-product .wqpmb_quantity input,
body.single-product .elementor-widget-woocommerce-product-add-to-cart input,
body.single-product .e-loop-add-to-cart-form .quantity input {
    color: #111111 !important;
    background: #ffffff !important;
}
/* --- Single product: force the "— ... " variation/ships pill dark (win over inline #eaeaea) --- */
body.single-product span.woo-selected-variation-item-name,
body.single-product .woo-selected-variation-item-name,
body.single-product .variations_form .woo-selected-variation-item-name,
body.single-product .woo-selected-variation-items .woo-selected-variation-item-name {
    color: #333333 !important;
}
