/* Skip link: off-screen until focused, then a solid, high-contrast chip. */
.htp-skip{
  /* Visually hidden WITHOUT an off-screen offset. left:-9999px is unreachable overflow
     in LTR but SCROLLABLE overflow in RTL, so it gave every Arabic and Hebrew page
     ~10,000px of sideways scroll. Clip instead, and unclip on focus. */
  position:absolute; left:0; top:0; z-index:100000;
  width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap;
  background:#F5B301; color:#000; font-weight:800; font-size:15px;
  padding:12px 20px; border-radius:0 0 10px 0; text-decoration:none;
  font-family:inherit; line-height:1.2;
}
.htp-skip:focus,.htp-skip:focus-visible{
  width:auto; height:auto; overflow:visible; clip:auto; clip-path:none;
  left:0; outline:3px solid #fff; outline-offset:-3px;
}
[dir="rtl"] .htp-skip{border-radius:0 0 0 10px}
[dir="rtl"] .htp-skip:focus,[dir="rtl"] .htp-skip:focus-visible{left:auto; right:0}

/* A target that is scrolled to must not hide under the sticky header. */
#htp-main{scroll-margin-top:calc(var(--hd-h, 64px) + 12px)}

/* Gold text on a light background was 3.2-3.6:1 at body sizes; AA wants 4.5.
   Only the small text is darkened - large headings and gold-on-black are fine. */
html[data-htp-theme="light"] .hts-raillabel,
html[data-htp-theme="light"] .hts-stat b,
html[data-htp-theme="light"] .hts-lbl,
html[data-htp-theme="light"] .htcb-all,
html[data-htp-theme="light"] .hts-all,
html[data-htp-theme="light"] #ht-trust-sec .tr-eyebrow,
html[data-htp-theme="light"] #ht-trust-sec .tr-stat b{color:#8A6200!important}

/* Muted link text at 50-75% white failed against the page on the product page. */
.htp-crumbs a,.htpp-crumbs a{color:rgba(255,255,255,.82)}
html[data-htp-theme="light"] .htp-crumbs a,
html[data-htp-theme="light"] .htpp-crumbs a{color:#3A4454}


html[data-htp-theme="light"] body .htp-legal{color:#1C2430}
html[data-htp-theme="light"] body .htp-legal p,
html[data-htp-theme="light"] body .htp-legal li{color:#1C2430}
html[data-htp-theme="light"] body .htp-legal h1,
html[data-htp-theme="light"] body .htp-legal h2,
html[data-htp-theme="light"] body .htp-legal h4,
html[data-htp-theme="light"] body .htp-legal strong{color:#0B1220}
/* Gold at body size is 2.0:1 on the light canvas; #8A6200 is the site's accessible gold. */
html[data-htp-theme="light"] body .htp-legal h3{color:#8A6200}
html[data-htp-theme="light"] body .htp-legal a{color:#8A6200;text-decoration:underline;text-underline-offset:2px}
html[data-htp-theme="light"] body .htp-legal a:hover{color:#0B1220}
html[data-htp-theme="light"] body .htp-legal em{color:#5A6472}
html[data-htp-theme="light"] body .htp-legal .upd{color:#5A6472}
html[data-htp-theme="light"] body .htp-legal hr{border-top-color:rgba(15,23,42,.14)}

/* The same block is inlined into the checkout terms accordion. */
html[data-htp-theme="light"] body .woocommerce-terms-and-conditions .htp-legal,
html[data-htp-theme="light"] body .woocommerce-terms-and-conditions .htp-legal p,
html[data-htp-theme="light"] body .woocommerce-terms-and-conditions .htp-legal li{color:#1C2430}
/* Inside the accordion the page padding is dead space. */
body .woocommerce-terms-and-conditions .htp-legal{padding:0;max-width:none}

img#wpstats{display:none}
.woocommerce-product-gallery{ opacity: 1 !important; }
.woocommerce ul.products li.product a h2,.woocommerce ul.products li.product .woocommerce-loop-product__title{color:#fff!important}.woocommerce ul.products li.product a:hover .woocommerce-loop-product__title{color:#F5B301!important}.woocommerce ul.products li.product .button,.woocommerce ul.products li.product a.button{background:rgba(245,179,1,.12)!important;color:#F5B301!important;border:1px solid rgba(245,179,1,.3)!important;border-radius:8px!important;font-weight:600!important}.woocommerce ul.products li.product .button:hover{background:#F5B301!important;color:#000!important}.woocommerce ul.products li.product .price,.woocommerce ul.products li.product .price .amount{color:#F5B301!important}.woocommerce ul.products li.product{background:rgba(255,255,255,.03)!important;border:1px solid rgba(255,255,255,.07)!important;border-radius:16px!important;padding:16px!important;transition:all .25s!important}.woocommerce ul.products li.product:hover{border-color:rgba(245,179,1,.25)!important;transform:translateY(-3px)!important}.woocommerce div.product .product_title{color:#fff!important}.woocommerce div.product p.price,.woocommerce div.product span.price{color:#F5B301!important}.woocommerce div.product .single_add_to_cart_button{background:#F5B301!important;color:#000!important;border-radius:10px!important;font-weight:700!important;border:none!important}.woocommerce .woocommerce-breadcrumb,.woocommerce .woocommerce-breadcrumb a{color:rgba(255,255,255,.5)!important}.woocommerce .woocommerce-breadcrumb a:hover,.woocommerce div.product .product_meta a{color:#F5B301!important}.woocommerce .woocommerce-result-count{color:rgba(255,255,255,.5)!important}.woocommerce .woocommerce-ordering select{background:rgba(255,255,255,.07)!important;border:1px solid rgba(255,255,255,.15)!important;color:#fff!important;border-radius:8px!important}.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{background:rgba(255,255,255,.05)!important;border-color:rgba(255,255,255,.1)!important;color:rgba(255,255,255,.7)!important;border-radius:6px!important}.woocommerce nav.woocommerce-pagination ul li a:hover,.woocommerce nav.woocommerce-pagination ul li span.current{background:#F5B301!important;color:#000!important}.elementor-widget-form input:not([type=submit]),.elementor-widget-form textarea,.elementor-widget-form select{background:rgba(255,255,255,.07)!important;border:1px solid rgba(255,255,255,.15)!important;color:#fff!important;border-radius:10px!important}.elementor-widget-form input:focus,.elementor-widget-form textarea:focus{border-color:#F5B301!important;outline:none!important}.elementor-widget-form .elementor-field-label{color:rgba(255,255,255,.65)!important}.elementor-widget-form button[type=submit],.elementor-widget-form input[type=submit]{background:#F5B301!important;color:#000!important;border:none!important;border-radius:10px!important;font-weight:700!important}
/* Visit Us: force map iframe above PCB canvas */
.visit-us-page .elementor-widget-html,
.page-id-781 .elementor-widget-html { position: relative; z-index: 5; }
.page-id-781 iframe { position: relative; z-index: 10; }
/* Build Your Own PC gap fix */
/* ── Build Your Own PC — centered, max-width constrained ── */
#byopc-wrap {
  max-width: 1280px !important;
  margin: 0 auto !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
#byopc-hero {
  position: relative;
  z-index: 10 !important;
  background: transparent !important;
}
#byopc-tiers,
#byopc-builder,
#byopc-why {
  background: transparent !important;
}
@media (max-width: 1320px) {
  #byopc-wrap {
    max-width: 100% !important;
    padding: 0 24px !important;
  }
}
/* Single product category links */
.woocommerce div.product .product_meta,
.woocommerce div.product .product_meta a,
.woocommerce div.product .posted_in a,
.woocommerce div.product .tagged_as a { color: #F5B301 !important; }

/* Hide WP default page title (shows on shop, visit-us, build-your-own-pc etc) */
.page-title, .entry-title, h1.entry-title, .wp-block-post-title,
.helloelementor-page-title, .elementor-page-title { display: none !important; }
/* Hide WooCommerce default breadcrumb from WP (we have custom ones) */
/* WooCommerce toolbar - style it */
.woocommerce-result-count { color: rgba(255,255,255,0.4) !important; font-size: 13px !important; }
.woocommerce-ordering select {
  background: rgba(255,255,255,0.06) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  color: rgba(255,255,255,0.7) !important;
  border-radius: 8px !important;
  padding: 8px 12px !important;
  font-size: 13px !important;
}
/* Single product: fix category link color */
.woocommerce div.product .product_meta a,
.woocommerce div.product .product_meta span,
.woocommerce div.product .posted_in a { color: #F5B301 !important; }
/* Cart/checkout table cells */
.woocommerce-cart table.cart td, .woocommerce-cart table.cart th { color: rgba(255,255,255,0.8) !important; }
/* Remove any rogue background on Elementor page content */
.elementor-section-wrap, .elementor-inner, .elementor-container { position: relative; z-index: 1; }

/* Cart: product links white */
.woocommerce-cart table.cart .product-name a,
.woocommerce-cart table.cart td.product-name a,
.shop_table td.product-name a { color: #fff !important; text-decoration: none !important; }
.woocommerce-cart table.cart .product-name a:hover { color: #F5B301 !important; }
/* Cart: remove X button */
.woocommerce-cart table.cart a.remove { color: rgba(255,255,255,0.4) !important; font-size: 18px !important; }
.woocommerce-cart table.cart a.remove:hover { color: #F5B301 !important; background: transparent !important; }
/* Default sorting dropdown styled */
.woocommerce-ordering select { 
  background: rgba(255,255,255,0.06) !important; 
  border: 1px solid rgba(255,255,255,0.12) !important; 
  color: rgba(255,255,255,0.7) !important; 
  border-radius: 8px !important; 
  padding: 8px 12px !important; 
  font-size: 13px !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}
/* Visit Us page title hide */
.page-id-781 .elementor-page-title,
.page-id-781 .wp-block-post-title { display: none !important; }
/* WooCommerce coupon notice style */
.woocommerce-info a, .woocommerce-message a { color: #F5B301 !important; }

/* ===== CART PURPLE FIX — all states ===== */

/* 1. Product image/title links on shop loop — kill browser-default blue */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.woocommerce ul.products li.product a.woocommerce-loop-product__link {
  color: inherit !important;
  text-decoration: none !important;
}

/* 2. Remove-from-cart × button — was blue */
a.elementor_remove_from_cart_button,
a.remove_from_cart_button,
.elementor-widget-woocommerce-menu-cart a.remove_from_cart_button {
  color: rgba(255,255,255,0.4) !important;
  text-decoration: none !important;
  font-size: 16px !important;
  line-height: 1 !important;
}
a.elementor_remove_from_cart_button:hover,
a.remove_from_cart_button:hover {
  color: #F5B301 !important;
}

/* 3. Mini-cart "View cart" + "Checkout" Elementor buttons — were grey #696a75 */
.elementor-button--view-cart,
a.elementor-button--view-cart,
.elementor-button--checkout,
a.elementor-button--checkout {
  background: rgba(245,179,1,0.12) !important;
  color: #F5B301 !important;
  border: 1px solid rgba(245,179,1,0.35) !important;
  border-radius: 10px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}
.elementor-button--view-cart:hover,
.elementor-button--checkout:hover {
  background: #F5B301 !important;
  color: #000 !important;
}

/* 4. WooCommerce "added to cart" flash notice */
.woocommerce-message,
ul.woocommerce-message {
  background: rgba(245,179,1,0.08) !important;
  border-top: 3px solid #F5B301 !important;
  color: #fff !important;
}
.woocommerce-message a,
.woocommerce-message .button,
.woocommerce-message a.button {
  background: #F5B301 !important;
  color: #000 !important;
  border: none !important;
  border-radius: 8px !important;
  font-weight: 700 !important;
  padding: 8px 18px !important;
  text-decoration: none !important;
}
.woocommerce-notices-wrapper .woocommerce-message a.button:hover {
  background: #ffc107 !important;
  color: #000 !important;
}

/* 5. added_to_cart / View cart links that appear inline below product */
a.added_to_cart,
.added_to_cart {
  display: inline-block !important;
  background: rgba(245,179,1,0.1) !important;
  color: #F5B301 !important;
  border: 1px solid rgba(245,179,1,0.3) !important;
  border-radius: 8px !important;
  padding: 6px 14px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  margin-top: 6px !important;
}
a.added_to_cart:hover { background: #F5B301 !important; color: #000 !important; }

/* 6. Any generic <a> inside woocommerce notices */
.woocommerce-notices-wrapper a { color: #F5B301 !important; }
.woocommerce-notices-wrapper a.button { color: #000 !important; }

/* 7. WooCommerce info/error notices */
.woocommerce-info, .woocommerce-error {
  border-top-color: #F5B301 !important;
  background: rgba(245,179,1,0.06) !important;
  color: #fff !important;
}
.woocommerce-info a, .woocommerce-error a { color: #F5B301 !important; }

/* 8. Kill browser-default blue only on specific woocommerce link types */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.woocommerce ul.products li.product a.woocommerce-loop-product__link,
.woocommerce .woocommerce-loop-product__link {
  color: #fff !important;
  text-decoration: none !important;
}
.woocommerce ul.products li.product a:hover .woocommerce-loop-product__title { color: #F5B301 !important; }

/* 9. Logo links — must not be blue */
a#ht-logo, a.mob-logo,
.elementor-widget-site-logo a,
.site-branding a,
header a.custom-logo-link { color: inherit !important; }

/* 10. Default sorting + result count */
.woocommerce-ordering select,
form.woocommerce-ordering select {
  background: rgba(255,255,255,0.06) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  color: rgba(255,255,255,0.7) !important;
  border-radius: 8px !important;
}

/* === MINI-CART & REMAINING PURPLE FIXES === */

/* Mini-cart product name + image links */
.elementor-menu-cart__product-name a,
.elementor-menu-cart__product-name,
.elementor-menu-cart__product-image a,
.elementor-menu-cart__product a {
  color: #fff !important;
  text-decoration: none !important;
}
.elementor-menu-cart__product-name a:hover { color: #F5B301 !important; }

/* Mini-cart subtotal, price */
.elementor-menu-cart__subtotal,
.elementor-menu-cart .woocommerce-Price-amount { color: #F5B301 !important; }

/* Elementor logo image link (widget 190b81d3 in header 730) — kill browser blue */
.elementor-element-190b81d3 a,
.elementor-element-190b81d3 a:visited,
.elementor-location-header .elementor-widget-image a,
.elementor-location-header .elementor-widget-image a:visited,
.elementor-widget-site-logo a,
.elementor-widget-site-logo a:visited { color: transparent !important; }

/* Footer social SVG icon links */
.ht-footer-socials a,
.ht-footer-socials a:visited { color: #F5B301 !important; }

/* Mini cart product link — white */
.elementor-menu-cart__product a,
.elementor-menu-cart__product a:visited { color: #fff !important; }

/* === CART & CHECKOUT REMAINING BLUE LINKS === */

/* "Calculate shipping" link in cart */
a.shipping-calculator-button,
.shipping-calculator-button {
  color: #F5B301 !important;
  text-decoration: none !important;
}
a.shipping-calculator-button:hover { color: #fff !important; }

/* "privacy policy" link on checkout */
a.woocommerce-privacy-policy-link,
.woocommerce-privacy-policy-link {
  color: rgba(255,255,255,0.5) !important;
  text-decoration: underline !important;
}
a.woocommerce-privacy-policy-link:hover { color: #F5B301 !important; }

/* Any other WooCommerce inline links that may be blue */
.woocommerce-checkout a:not(.button):not(.elementor-button),
.woocommerce-cart a:not(.button):not(.elementor-button):not(.elementor-menu-cart__toggle_wrapper a) {
  color: rgba(255,255,255,0.65) !important;
}
.woocommerce-checkout a:not(.button):hover,
.woocommerce-cart a:not(.button):hover { color: #F5B301 !important; }

/* "Terms and conditions" on checkout */
.woocommerce-terms-and-conditions-link {
  color: rgba(255,255,255,0.5) !important;
}
.woocommerce-terms-and-conditions-link:hover { color: #F5B301 !important; }

/* Checkout "have a coupon?" notice */
.woocommerce-form-coupon-toggle .showcoupon,
.checkout_coupon .form-row a {
  color: #F5B301 !important;
}

/* Checkout: "returning customer?" login link */
.woocommerce-form-login-toggle .showlogin {
  color: #F5B301 !important;
}

/* Generic: any link inside woocommerce totals table */
.woocommerce-cart table.shop_table a,
.woocommerce-checkout table.shop_table a {
  color: rgba(255,255,255,0.75) !important;
}
.woocommerce-cart table.shop_table a:hover { color: #F5B301 !important; }

/* ============================================
   MOBILE: CART COUPON BAR — SINGLE SLEEK ROW
   ============================================ */
@media (max-width: 768px) {
  /* Coupon wrapper: single flex row */
  .woocommerce-cart-form .coupon {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    flex-wrap: nowrap !important;
  }
  /* Coupon input: flex-grow, minimal height */
  .woocommerce-cart-form .coupon input#coupon_code,
  .woocommerce-cart-form .coupon .input-text {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    width: auto !important;
    height: 44px !important;
    padding: 0 14px !important;
    font-size: 14px !important;
    background: rgba(255,255,255,0.07) !important;
    border: 1px solid rgba(255,255,255,0.15) !important;
    border-radius: 10px !important;
    color: #fff !important;
    box-sizing: border-box !important;
  }
  .woocommerce-cart-form .coupon input#coupon_code::placeholder { color: rgba(255,255,255,0.35) !important; }
  .woocommerce-cart-form .coupon input#coupon_code:focus { border-color: #F5B301 !important; outline: none !important; }
  /* Apply coupon button: compact */
  .woocommerce-cart-form .coupon button[name="apply_coupon"],
  .woocommerce-cart-form .coupon .button {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
    height: 44px !important;
    padding: 0 18px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    background: rgba(245,179,1,0.12) !important;
    color: #F5B301 !important;
    border: 1px solid rgba(245,179,1,0.3) !important;
    border-radius: 10px !important;
    cursor: pointer !important;
    transition: all .2s !important;
  }
  .woocommerce-cart-form .coupon button[name="apply_coupon"]:hover { background: #F5B301 !important; color: #000 !important; }
  /* Actions row: stack coupon above update cart on mobile */
  .woocommerce-cart-form .actions {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    padding: 16px 0 !important;
  }
  /* Update cart button full width on mobile */
  .woocommerce-cart-form .actions button[name="update_cart"],
  .woocommerce-cart-form .actions .button[name="update_cart"] {
    width: 100% !important;
    height: 44px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
  }

  /* ============================================
     MOBILE: SHOP — 2-COLUMN PRODUCT GRID
     ============================================ */
  /* Nuke WooCommerce float layout, replace with CSS Grid */
  .woocommerce ul.products.columns-4,
  .woocommerce ul.products.columns-3,
  .woocommerce ul.products.columns-2,
  .woocommerce ul.products.columns-1,
  .woocommerce ul.products {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
    padding: 0 12px !important;
    margin: 0 auto !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    clear: both !important;
  }
  /* Kill WooCommerce clearfix pseudo-elements that break CSS Grid on mobile */
  .woocommerce ul.products::before,
  .woocommerce ul.products::after,
  ul.products.columns-4::before,
  ul.products.columns-4::after {
    display: none !important;
    content: none !important;
  }
  .woocommerce ul.products li.product,
  .woocommerce ul.products.columns-4 li.product,
  .woocommerce ul.products.columns-3 li.product {
    float: none !important;
    clear: none !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 12px !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
  }
  /* Product image: fixed square ratio */
  .woocommerce ul.products li.product a.woocommerce-LoopProduct-link img {
    width: 100% !important;
    height: 140px !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 auto 10px !important;
  }
  /* Product title: compact */
  .woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 12px !important;
    line-height: 1.3 !important;
    margin-bottom: 6px !important;
    font-weight: 600 !important;
    color: #fff !important;
  }
  /* Product price */
  .woocommerce ul.products li.product .price {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #F5B301 !important;
    margin-bottom: 10px !important;
  }
  /* Add to cart button: full width, compact */
  .woocommerce ul.products li.product .button.add_to_cart_button,
  .woocommerce ul.products li.product a.button {
    width: 100% !important;
    text-align: center !important;
    padding: 9px 10px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
    background: rgba(245,179,1,0.12) !important;
    color: #F5B301 !important;
    border: 1px solid rgba(245,179,1,0.3) !important;
    margin-top: auto !important;
  }
  /* Shop result count + sorting: stack nicely */
  .woocommerce .woocommerce-result-count {
    font-size: 12px !important;
    margin-bottom: 4px !important;
  }
  .woocommerce-ordering { margin-bottom: 12px !important; }

  /* ============================================
     MOBILE: SHOP PAGINATION — GOLD STYLED
     ============================================ */
  .woocommerce nav.woocommerce-pagination {
    display: flex !important;
    justify-content: center !important;
    padding: 24px 12px !important;
  }
  .woocommerce nav.woocommerce-pagination ul {
    display: flex !important;
    gap: 6px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
  }
  .woocommerce nav.woocommerce-pagination ul li a,
  .woocommerce nav.woocommerce-pagination ul li span {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 40px !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    background: rgba(255,255,255,0.05) !important;
    border: 1px solid rgba(255,255,255,0.1) !important;
    color: rgba(255,255,255,0.7) !important;
    text-decoration: none !important;
    transition: all .2s !important;
  }
  .woocommerce nav.woocommerce-pagination ul li a:hover {
    background: rgba(245,179,1,0.15) !important;
    border-color: rgba(245,179,1,0.4) !important;
    color: #F5B301 !important;
  }
  .woocommerce nav.woocommerce-pagination ul li span.current {
    background: #F5B301 !important;
    border-color: #F5B301 !important;
    color: #000 !important;
    font-weight: 700 !important;
  }
  /* Prev/Next arrows */
  .woocommerce nav.woocommerce-pagination ul li a.prev,
  .woocommerce nav.woocommerce-pagination ul li a.next {
    width: auto !important;
    padding: 0 16px !important;
    font-size: 12px !important;
  }
}

/* ===== FAQ SECTION ACCORDION STYLING ===== */
/* Target the FAQ HTML widget section */
.elementor-element-15ab954 section {
  padding: 32px 0 !important;
}
.elementor-element-15ab954 section h2 {
  font-size: 28px !important;
  font-weight: 700 !important;
  color: #fff !important;
  margin-bottom: 28px !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid rgba(245,179,1,0.25) !important;
}
/* Each FAQ item = question P + answer P pair */
.elementor-element-15ab954 section > p:nth-child(odd) {
  /* Question (odd P = 1st, 3rd, 5th... after h2) */
  font-weight: 700 !important;
  color: #F5B301 !important;
  font-size: 15px !important;
  margin-top: 16px !important;
  margin-bottom: 4px !important;
  cursor: default !important;
}
.elementor-element-15ab954 section > p:nth-child(even) {
  /* Answer (even P = 2nd, 4th, 6th...) */
  font-weight: 400 !important;
  color: rgba(255,255,255,0.72) !important;
  font-size: 14px !important;
  margin-bottom: 12px !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid rgba(255,255,255,0.06) !important;
  line-height: 1.6 !important;
}
/* First Q is actually 2nd child (after h2), so adjust: */
.elementor-element-15ab954 section > p:nth-child(2),
.elementor-element-15ab954 section > p:nth-child(4),
.elementor-element-15ab954 section > p:nth-child(6),
.elementor-element-15ab954 section > p:nth-child(8),
.elementor-element-15ab954 section > p:nth-child(10),
.elementor-element-15ab954 section > p:nth-child(12),
.elementor-element-15ab954 section > p:nth-child(14) {
  font-weight: 700 !important;
  color: #F5B301 !important;
  font-size: 15px !important;
  margin-top: 16px !important;
  margin-bottom: 4px !important;
  padding-bottom: 0 !important;
  border-bottom: none !important;
}
.elementor-element-15ab954 section > p:nth-child(3),
.elementor-element-15ab954 section > p:nth-child(5),
.elementor-element-15ab954 section > p:nth-child(7),
.elementor-element-15ab954 section > p:nth-child(9),
.elementor-element-15ab954 section > p:nth-child(11),
.elementor-element-15ab954 section > p:nth-child(13),
.elementor-element-15ab954 section > p:nth-child(15) {
  font-weight: 400 !important;
  color: rgba(255,255,255,0.68) !important;
  font-size: 14px !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 6px 0 14px !important;
  border-bottom: 1px solid rgba(255,255,255,0.06) !important;
  line-height: 1.6 !important;
}
/* Wrap FAQ section in constrained width */
.elementor-element-15ab954 .elementor-widget-container {
  max-width: 860px !important;
  margin: 0 auto !important;
}

/* ============================================
   DESKTOP SHOP: CSS GRID (works at all widths)
   ============================================ */

/* Use CSS Grid for all screen sizes above mobile - clean, consistent */
@media (min-width: 769px) {
  /* Kill WooCommerce float pseudo-elements that eat grid slots */
  .woocommerce ul.products::before,
  .woocommerce ul.products::after {
    display: none !important;
    content: none !important;
  }
  /* CSS Grid: always exactly 4 columns on desktop */
  .woocommerce ul.products.columns-4,
  .woocommerce ul.products.columns-3,
  .woocommerce ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 24px !important;
    float: none !important;
    width: 100% !important;
    max-width: 1400px !important;
    margin: 0 auto !important;
    padding: 0 24px !important;
    box-sizing: border-box !important;
  }
  .woocommerce ul.products li.product,
  .woocommerce ul.products.columns-4 li.product {
    float: none !important;
    clear: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 20px !important;
    box-sizing: border-box !important;
  }
  /* Constrain image height so cards look uniform */
  .woocommerce ul.products li.product a.woocommerce-LoopProduct-link img {
    width: 100% !important;
    height: 220px !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 auto 12px !important;
  }
  .woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
    display: block !important;
  }
}

/* ── Mobile ── */
@media (max-width: 768px) {
  .single-product .elementor-element-2fedb40e > .e-con-inner { padding: 12px 16px 0 !important; }
  .single-product [data-id="49727b1"].e-con {
    grid-template-columns: 1fr !important; gap: 20px !important;
  }
  .single-product [data-id="213ce0a4"] { grid-row: 1 !important; position: static !important; }
  .single-product [data-id="76f91bb4"] { grid-row: 2 !important; grid-column: 1 !important; }
  .single-product [data-id="a911a25"] .woocommerce-product-gallery__image:first-child img { height: 280px !important; }
  .single-product .product_title.entry-title { font-size: 20px !important; }
  .single-product [data-id="6fbe552f"] .price { font-size: 26px !important; }
  .single-product [data-id="35915211"] { padding: 20px 16px 40px !important; }
  .single-product [data-id="71fcb617"] ul.products,
  .single-product .related.products ul.products { grid-template-columns: 1fr 1fr !important; }
}
/* The first tab-description panel contains the full page dump - hide it selectively */
/* We need the SECOND tab-description (the real one) to show */
/* Hide only the woocommerce wrapper inside tab panels */
#tab-description .woocommerce:first-child {
  display: none !important;
}
/* Show the actual description paragraphs */
#tab-description > p,
#tab-description > h2,
#tab-description > h3,
#tab-description > ul,
#tab-description > ol,
#tab-description > table,
#tab-description > div:not(.woocommerce) {
  display: block !important;
  color: rgba(255,255,255,0.72) !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
  margin-bottom: 16px !important;
}


/* ════════════════════════════════════════
   PRODUCT PAGE — FINAL POLISH
   ════════════════════════════════════════ */

/* Related product "Add to cart" — solid gold, full width */
.single-product [data-id="71fcb617"] .button,
.single-product [data-id="71fcb617"] a.button,
.single-product [data-id="71fcb617"] .add_to_cart_button {
  background: #F5B301 !important;
  color: #000 !important;
  border: none !important;
  border-radius: 10px !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  padding: 10px 16px !important;
  width: 100% !important;
  display: block !important;
  text-align: center !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  margin-top: 10px !important;
  letter-spacing: 0.03em !important;
  text-transform: uppercase !important;
  transition: background 0.15s !important;
}


/* ══════════════════════════════════════
   THREE TARGETED FIXES
   ══════════════════════════════════════ */

/* search bar sizing handled in header template 730 */

/* 2. HERO GAP: reduce padding-top on homepage hero */
.ht-hero__main {
  padding-top: 20px !important;
}
@media (max-width: 1000px) {
  .ht-hero__main {
    padding-top: 16px !important;
  }
}


/* ══════════════════════════════════════
   MOBILE FOOTER — CENTER EVERYTHING
   ══════════════════════════════════════ */
@media (max-width: 768px) {

  /* === SOCIAL ICONS === */
  .elementor-location-footer .ht-footer-socials {
    justify-content: center !important;
    display: flex !important;
  }
  .elementor-location-footer [data-id="39968479"] .elementor-widget-container {
    display: flex !important;
    justify-content: center !important;
  }

  /* === FOOTER GRID COLUMNS: stack + center === */
  .elementor-location-footer [data-id="44eca804"] {
    text-align: center !important;
    justify-items: center !important;
  }

  /* === LOGO + TAGLINE COLUMN === */
  .elementor-location-footer [data-id="2ed4ea23"] {
    align-items: center !important;
    text-align: center !important;
  }
  .elementor-location-footer [data-id="6d8c86cc"],
  .elementor-location-footer [data-id="6d8c86cc"] .elementor-widget-container,
  .elementor-location-footer [data-id="6d8c86cc"] img {
    display: block !important;
    margin: 0 auto !important;
    text-align: center !important;
  }
  .elementor-location-footer [data-id="484f7073"],
  .elementor-location-footer [data-id="484f7073"] p,
  .elementor-location-footer [data-id="484f7073"] .elementor-widget-container {
    text-align: center !important;
  }

  /* === QUICK LINKS === */
  .elementor-location-footer [data-id="a5c6a4c"] .elementor-widget-container,
  .elementor-location-footer [data-id="784da9c"] .elementor-widget-container {
    text-align: center !important;
  }
  .elementor-location-footer [data-id="a5c6a4c"] .elementor-icon-list-items,
  .elementor-location-footer [data-id="784da9c"] .elementor-icon-list-items {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }
  .elementor-location-footer [data-id="a5c6a4c"] .elementor-icon-list-item,
  .elementor-location-footer [data-id="784da9c"] .elementor-icon-list-item {
    justify-content: center !important;
    text-align: center !important;
  }

  /* === CONTACT === */
  .elementor-location-footer [data-id="3abe3b34"] .elementor-widget-container,
  .elementor-location-footer [data-id="9aaec9c"] .elementor-widget-container {
    text-align: center !important;
  }
  .elementor-location-footer [data-id="3abe3b34"] .elementor-icon-list-items,
  .elementor-location-footer [data-id="9aaec9c"] .elementor-icon-list-items {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }
  .elementor-location-footer [data-id="3abe3b34"] .elementor-icon-list-item,
  .elementor-location-footer [data-id="9aaec9c"] .elementor-icon-list-item {
    justify-content: center !important;
    width: 100% !important;
  }

  /* === HOURS === */
  .elementor-location-footer [data-id="4feebdb"] .elementor-widget-container,
  .elementor-location-footer [data-id="309b7da7"] .elementor-widget-container {
    text-align: center !important;
  }
  .elementor-location-footer [data-id="4feebdb"] p,
  .elementor-location-footer [data-id="309b7da7"] p {
    text-align: center !important;
  }

  /* === DISCORD BUTTON === */
  .elementor-location-footer .elementor-button-wrapper {
    display: flex !important;
    justify-content: center !important;
    text-align: center !important;
  }

  /* === COPYRIGHT BAR === */
  .elementor-location-footer [data-id="c59d6bc"] {
    text-align: center !important;
  }
  .elementor-location-footer [data-id="c59d6bc"] .elementor-widget-container,
  .elementor-location-footer [data-id="c59d6bc"] p,
  .elementor-location-footer [data-id="c59d6bc"] span,
  .elementor-location-footer [data-id="c59d6bc"] div {
    text-align: center !important;
    justify-content: center !important;
  }
  /* The inner flex row of copyright (left text + right text) */
  .elementor-location-footer [data-id="c59d6bc"] > .elementor-widget-container > div,
  .elementor-location-footer [data-id="c59d6bc"] .ht-footer-copy {
    justify-content: center !important;
    flex-direction: column !important;
    gap: 4px !important;
    text-align: center !important;
  }

  /* === GLOBAL FOOTER TEXT === */
  .elementor-location-footer .elementor-heading-title {
    text-align: center !important;
  }
  .elementor-location-footer .elementor-icon-list-text {
    text-align: center !important;
  }
}


/* ── BYOPC summary card — border-box so padding stays inside grid cell ── */
.byopc-summary-card {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
}
.byopc-summary-card .byopc-whatsapp-btn,
.byopc-summary-card .byopc-secondary-btn,
#byopc-wa-btn {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}


/* ── BYOPC builder grid — prevent card overflow at any viewport ── */
.byopc-builder-grid {
  overflow: hidden !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
#byopc-builder {
  box-sizing: border-box !important;
  width: 100% !important;
  overflow: hidden !important;
}


/* Hide services page sparkle/circuit canvas */
#pcb-canvas-srv { display: none !important; }

/* ── Cart & Checkout — centered, max-width constrained ── */
#cart_main_con,
#checkout_main_con,
[data-id="cart_main_con"],
[data-id="checkout_main_con"] {
  max-width: 1280px !important;
  margin: 0 auto !important;
  width: 100% !important;
  box-sizing: border-box !important;
}


/* ══════════════════════════════════════
   MY ACCOUNT PAGE — FULL REDESIGN
   ══════════════════════════════════════ */

/* Center and constrain the main container */
[data-id="acc_woo_con"],
[data-id="acc_woo_widget"] {
  max-width: 1280px !important;
  margin: 0 auto !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 0 40px !important;
}

/* Mobile: stack on small screens */
@media (max-width: 768px) {
  .woocommerce-account .woocommerce {
    grid-template-columns: 1fr !important;
  }
  [data-id="acc_woo_con"],
  [data-id="acc_woo_widget"] {
    padding: 0 20px !important;
  }
}
@media (max-width: 768px) {
  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses,
  .woocommerce-account .woocommerce-MyAccount-content .col2-set,
  .woocommerce-account .woocommerce .col2-set { grid-template-columns: 1fr !important; }
}
/* 35053 bytes of page-type-scoped rules omitted for this page type */

				.e-con.e-parent:nth-of-type(n+4):not(.e-lazyloaded):not(.e-no-lazyload),
				.e-con.e-parent:nth-of-type(n+4):not(.e-lazyloaded):not(.e-no-lazyload) * {
					background-image: none !important;
				}
				@media screen and (max-height: 1024px) {
					.e-con.e-parent:nth-of-type(n+3):not(.e-lazyloaded):not(.e-no-lazyload),
					.e-con.e-parent:nth-of-type(n+3):not(.e-lazyloaded):not(.e-no-lazyload) * {
						background-image: none !important;
					}
				}
				@media screen and (max-height: 640px) {
					.e-con.e-parent:nth-of-type(n+2):not(.e-lazyloaded):not(.e-no-lazyload),
					.e-con.e-parent:nth-of-type(n+2):not(.e-lazyloaded):not(.e-no-lazyload) * {
						background-image: none !important;
					}
				}
			
/* ============================================================
   HT+ Card Design B - edge-to-edge white product images
   Overrides htp-product-image-pop (gray frame, inner radius,
   contrast filter) + unifies image sizing everywhere.
   "body" prefix = must out-rank the old !important gray rule.
   ============================================================ */

/* --- shop grid cards --- */
body .hts-pcard .hts-thumb,
body ul.products li.product a.woocommerce-LoopProduct-link{
  background:#fff !important;
  border-radius:0 !important;
  padding:16px !important;
  aspect-ratio:1/0.92 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
}
body .hts-pcard .hts-thumb img,
body ul.products li.product a img{
  width:100% !important;
  height:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  border-radius:0 !important;
  background:transparent !important;
  filter:none !important;
  mix-blend-mode:normal !important;
  transition:transform .25s ease !important;
}
body .hts-pcard:hover .hts-thumb img{ transform:scale(1.05); }

/* --- list view keeps its width, same white treatment --- */
body .hts-grid.list .hts-thumb{ aspect-ratio:unset !important; }

/* --- single product gallery --- */
body .woocommerce-product-gallery__wrapper,
body .woocommerce-product-gallery__image{ background:#fff !important; }
body .woocommerce-product-gallery__image img{ background:#fff !important; filter:none !important; }
body .flex-control-thumbs li img{ background:#fff !important; filter:none !important; }

/* --- frequently bought together / mini items --- */
body .htp-fbt-item img{ background:#fff !important; filter:none !important; border-radius:0 !important; }


/* Make the in-shop search box the primary search: hide the global header
   search on the shop page only. */
body.woocommerce-shop #ht-search-row{display:none !important;}
/* subtle fade while results refresh (results stay visible, not blanked) */
#hts-grid{transition:opacity .12s ease;}
/* small spinner next to the results count while a search is in flight */
.hts-toolbar.hts-loading .hts-res::after{
  content:"";display:inline-block;width:12px;height:12px;
  margin-inline-start:8px;vertical-align:-2px;border-radius:50%;
  border:2px solid currentColor;border-top-color:transparent;opacity:.55;
  animation:htsspin .6s linear infinite;
}
@keyframes htsspin{to{transform:rotate(360deg);}}