/* === BioChain USA mobile fix for product pages — applied 2026-05-12 === */
@media (max-width: 768px) {
  .woocommerce div.product .woocommerce-product-gallery,
  .woocommerce div.product div.summary,
  .woocommerce-page div.product .woocommerce-product-gallery,
  .woocommerce-page div.product div.summary {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 1.5rem 0 !important;
  }
  .woocommerce-product-gallery__wrapper,
  .woocommerce-product-gallery__image,
  .woocommerce-product-gallery__image a,
  .woocommerce-product-gallery img,
  .woocommerce div.product .woocommerce-product-gallery .wp-post-image {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }
  .zoomImg { display: none !important; }
  .woocommerce div.product .woocommerce-tabs ul.tabs,
  .woocommerce-tabs .tabs {
    flex-wrap: wrap !important;
    padding-left: 0 !important;
  }
  .woocommerce div.product .woocommerce-tabs ul.tabs li {
    width: 100% !important;
    margin: 0 0 4px 0 !important;
    border-radius: 0 !important;
  }
  .woocommerce-Tabs-panel table,
  .single-product table {
    display: block !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    max-width: 100% !important;
  }
  body.single-product,
  body.woocommerce-page {
    overflow-x: hidden !important;
  }
  .single-product .single_add_to_cart_button,
  .single-product .button {
    min-height: 48px;
    width: 100%;
  }
}

/* === Patch: tabs wrapper still 600 wide; force to viewport === */
@media (max-width: 768px) {
  .woocommerce div.product .woocommerce-tabs,
  .woocommerce-tabs.wc-tabs-wrapper,
  .woocommerce-tabs {
    width: 100% !important;
    max-width: 100% !important;
  }
  .woocommerce div.product .woocommerce-tabs ul.tabs li a,
  .woocommerce-tabs ul.tabs li a {
    display: block !important;
    width: 100% !important;
    padding: 12px 14px !important;
    white-space: normal !important;
  }
  /* Related products + upsells row */
  .woocommerce .related,
  .woocommerce .upsells,
  .woocommerce .related ul.products,
  .woocommerce .upsells ul.products {
    width: 100% !important;
    max-width: 100% !important;
  }
  .woocommerce .related ul.products li.product,
  .woocommerce .upsells ul.products li.product,
  .woocommerce ul.products li.product {
    width: 100% !important;
    margin-right: 0 !important;
    float: none !important;
  }
}

/* === BIOCHAIN CHECKOUT FIXES (2026-05-17) === */
/* 1) Unify radio option padding-left across shipping and payment.            */
/*    Stock WC ships 48px on shipping vs 20px on payment, creating uneven    */
/*    spacing between the dot and the label text.                            */
.wp-block-woocommerce-checkout .wc-block-components-radio-control__option {
  padding-left: 36px !important;
}

/* 2) Vertically center the dot with the first line of the option title,    */
/*    and pull it inward 12px from the option left edge.                    */
.wp-block-woocommerce-checkout .wc-block-components-radio-control__option > .wc-block-components-radio-control__input[type="radio"] {
  top: calc(16px + 0.7em) !important;
  left: 12px !important;
  transform: translateY(-50%) !important;
}

/* 3) Cancel the 20px margin-left that the payment accordion variant adds   */
/*    to its inner label. Without this, the payment option box sits 20px    */
/*    further right than the shipping option box, so the two dots do not    */
/*    line up vertically as a column.                                        */
.wp-block-woocommerce-checkout .wc-block-components-radio-control-accordion-option > .wc-block-components-radio-control__option {
  margin-left: 0 !important;
}

/* 4) Make policy hyperlinks in the terms checkbox visibly clickable */
.wc-block-checkout__terms .wc-block-components-checkbox__label a,
.wc-block-components-checkbox__label a {
  color: #ff5833 !important;
  text-decoration: underline !important;
  text-underline-offset: 2px;
}
.wc-block-checkout__terms .wc-block-components-checkbox__label a:hover,
.wc-block-components-checkbox__label a:hover {
  color: #e64a2a !important;
}
/* === END BIOCHAIN CHECKOUT FIXES === */

/* === BIOCHAIN HEADER FIXES (2026-05-17) === */
/* Mini-cart icon: stock theme renders the SVG with fill:white on a white  */
/* header background, making the cart icon invisible. Inherit the button   */
/* color so the icon shape shows up as the same near-black as other header */
/* text/icons.                                                              */
.wc-block-mini-cart__icon,
.wc-block-mini-cart__icon * {
  fill: currentColor !important;
}
/* === END BIOCHAIN HEADER FIXES === */


/* === BioChain product image sizing fix — applied 2026-05-18 === */
.wc-block-grid__product-image img,
.wc-block-product-template img,
.wp-block-woocommerce-product-image img,
.wp-block-post-template .wp-block-post-featured-image img,
ul.products li.product img,
.woocommerce ul.products li.product .attachment-woocommerce_thumbnail {
  aspect-ratio: 4 / 5;
  object-fit: contain;
  width: 100%;
  max-width: 320px;
  height: auto;
  max-height: 400px;
  margin: 0 auto;
  display: block;
  background: #ffffff;
}
.wc-block-grid__product,
.wc-block-product-template > li,
.wp-block-post-template > li,
ul.products > li.product {
  max-width: 360px;
}


/* === BioChain USA mini-cart drawer contrast fix - applied 2026-05-19 === */
/* Theme rule "a:not(.wp-block-button__link):not(.header-button) { color: #111 }"
   overrides the white text on WooCommerce mini-cart action buttons because they
   carry .wp-element-button, not .wp-block-button__link. Force the right colors
   inside the cart drawer. */
.wc-block-mini-cart__drawer a.wc-block-mini-cart__shopping-button,
.wc-block-mini-cart__drawer a.wc-block-mini-cart__footer-checkout {
  color: #ffffff !important;
  background-color: #32373c !important;
  border: 1px solid #32373c !important;
}
.wc-block-mini-cart__drawer a.wc-block-mini-cart__shopping-button:hover,
.wc-block-mini-cart__drawer a.wc-block-mini-cart__footer-checkout:hover,
.wc-block-mini-cart__drawer a.wc-block-mini-cart__shopping-button:focus,
.wc-block-mini-cart__drawer a.wc-block-mini-cart__footer-checkout:focus {
  color: #ffffff !important;
  background-color: #111111 !important;
  border-color: #111111 !important;
}
.wc-block-mini-cart__drawer a.wc-block-mini-cart__footer-cart {
  color: #111111 !important;
  background-color: #ffffff !important;
  border: 1px solid #32373c !important;
}
.wc-block-mini-cart__drawer a.wc-block-mini-cart__footer-cart:hover,
.wc-block-mini-cart__drawer a.wc-block-mini-cart__footer-cart:focus {
  color: #ffffff !important;
  background-color: #32373c !important;
  border-color: #32373c !important;
}


/* === BioChain homepage hero text-shadow for readability === */
.home .wp-block-cover h1 {
	text-shadow: 0 2px 8px rgba(0,0,0,0.85), 0 0 16px rgba(0,0,0,0.5);
}
}

/* === BioChain header mobile: keep columns inline, hide search on mobile === */
@media (max-width: 781px) {
  .wp-block-template-part .wp-block-columns.gizmo-header {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 12px !important;
  }
  .wp-block-template-part .wp-block-columns.gizmo-header > .wp-block-column {
    flex-basis: auto !important;
    margin-block-start: 0 !important;
    width: auto !important;
  }
  .wp-block-template-part .wp-block-columns.gizmo-header > .wp-block-column.gizmo-search,
  .wp-block-template-part .gizmo-search {
    display: none !important;
  }
  .wp-block-template-part .wp-block-columns.gizmo-header > .wp-block-column:first-child {
    margin-right: auto;
  }
}

/* === BioChain mobile search column visibility === */
/* Hide the mobile search icon on desktop */
@media (min-width: 782px) {
  .wp-block-template-part .gizmo-mobile-search {
    display: none !important;
  }
}
/* On mobile, ensure mobile search column is visible and sized small */
@media (max-width: 781px) {
  .wp-block-template-part .gizmo-mobile-search {
    flex: 0 0 auto !important;
    width: auto !important;
    margin-block-start: 0 !important;
  }
}

/* === BioChain sticky USA banner + tighter header === */
/* Fixed thin top bar with flag */
.wp-block-group.gizmo-top-bar {
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  padding-top: 6px !important;
  padding-bottom: 6px !important;
}
/* Offset the page content for the fixed banner */
body.home, body { padding-top: 36px; }
/* When WP admin bar is visible, push the banner below it */
body.admin-bar .wp-block-group.gizmo-top-bar { top: 32px; }
@media (max-width: 782px) {
  body.admin-bar .wp-block-group.gizmo-top-bar { top: 46px; }
}
/* Make sure flag emoji renders inline crisply */
.wp-block-group.gizmo-top-bar p {
  margin: 0;
  letter-spacing: 0.02em;
}
/* Reduce padding around the main header (logo / nav / search / cart row) */
.wp-block-template-part .wp-block-columns.gizmo-header {
  margin-block-start: 0 !important;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}
.wp-block-template-part .gizmo-header .wp-block-column .wp-block-group {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}