/*
Theme Name: Biopepers Core
Theme URI: https://biopepers.com/
Author: Internal
Description: Lightweight native WooCommerce theme for Biopepers. Built to work with CommerceOps and without Elementor.
Version: 0.2.64.3-rc1
Text Domain: biopepers-core
*/

:root{
  --bp-blue:#0b3b97;
  --bp-blue-2:#164fc5;
  --bp-text:#1b2434;
  --bp-muted:#6b778c;
  --bp-bg:#ffffff;
  --bp-soft:#f6f8fc;
  --bp-border:#e6ebf3;
  --bp-radius:12px;
  --bp-container:1240px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bp-bg);
  color:var(--bp-text);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  line-height:1.5;
}
img{max-width:100%;height:auto}
a{color:var(--bp-blue);text-decoration:none}
a:hover{color:var(--bp-blue-2)}

.bp-container{
  width:min(calc(100% - 32px),var(--bp-container));
  margin:0 auto;
}

.site-main{min-height:55vh}

/* HEADER */
.bp-header{
  position:sticky;
  top:0;
  z-index:9999;
  background:#fff;
  border-bottom:1px solid var(--bp-border);
}
.bp-header__row{
  min-height:84px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:28px;
}
.bp-logo img{display:block;max-height:50px;width:auto}
.bp-logo__text{font-size:24px;font-weight:800;color:var(--bp-blue)}
.bp-nav{justify-self:center}
.bp-nav ul{display:flex;gap:24px;list-style:none;margin:0;padding:0}
.bp-nav a{font-weight:700;color:var(--bp-blue)}
.bp-actions{display:flex;align-items:center;gap:8px}
.bp-action{
  width:42px;height:42px;border:0;background:transparent;
  display:inline-flex;align-items:center;justify-content:center;
  color:var(--bp-blue);position:relative;cursor:pointer;
}
.bp-action svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bp-badge{
  position:absolute;right:-1px;top:-1px;min-width:18px;height:18px;padding:0 4px;
  border-radius:999px;background:var(--bp-blue);color:#fff;
  font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;
}
.bp-toggle{display:none}

/* MOBILE NAV */
.bp-mobile-nav{display:none}

/* SEARCH */
.bp-search{
  position:fixed;inset:0;z-index:100000;
  visibility:hidden;pointer-events:none;
}
.bp-search.is-open{visibility:visible;pointer-events:auto}
.bp-search__backdrop{position:absolute;inset:0;background:rgba(15,23,42,.46);border:0}
.bp-search__panel{
  position:relative;width:min(calc(100% - 28px),720px);margin:10vh auto 0;background:#fff;
  border-radius:16px;padding:22px;box-shadow:0 25px 70px rgba(15,23,42,.24)
}
.bp-search__close{
  position:absolute;right:12px;top:10px;border:0;background:#f2f5fa;
  width:38px;height:38px;border-radius:50%;font-size:24px;cursor:pointer
}
.bp-search__form{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:32px}
.bp-search__input{height:52px;border:1px solid var(--bp-border);border-radius:9px;padding:0 14px;font:inherit}
.bp-search__submit{border:0;background:var(--bp-blue);color:#fff;border-radius:9px;padding:0 20px;font-weight:800;cursor:pointer}

/* ARCHIVE */
.bp-shop-shell{
  display:grid;
  grid-template-columns:220px minmax(0,1fr);
  gap:36px;
  padding:34px 0 48px;
}
.bp-shop-sidebar{min-width:0}
.bp-shop-content{min-width:0}
.bp-shop-head{
  display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px
}
.bp-shop-title{margin:0;font-size:34px;line-height:1.1;color:#17233b}
.bp-shop-description{color:var(--bp-muted);margin-top:8px}

/* Woo grid */
.woocommerce ul.products,
.woocommerce-page ul.products{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px !important;
  margin:0 !important;
}
.woocommerce ul.products::before,
.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  width:auto !important;
  margin:0 !important;
  float:none !important;
  background:#fff;
  border:1px solid var(--bp-border);
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 6px 20px rgba(23,44,83,.06);
  padding:0 0 18px;
  position:relative;
}
.woocommerce ul.products li.product a img{
  width:100%;margin:0 0 14px!important;display:block;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  color:var(--bp-blue)!important;
  font-size:16px!important;
  line-height:1.35!important;
  font-weight:750!important;
  padding:0 16px!important;
}
.woocommerce ul.products li.product .price{
  color:var(--bp-blue)!important;
  font-weight:800!important;
  padding:0 16px;
}
.woocommerce ul.products li.product .button{
  margin:10px 16px 0!important;
  background:var(--bp-blue)!important;
  color:#fff!important;
  border-radius:7px!important;
  padding:11px 14px!important;
  font-weight:800!important;
}
.woocommerce ul.products li.product .button:hover{background:var(--bp-blue-2)!important}

/* Pagination */
.woocommerce nav.woocommerce-pagination ul{
  border:0!important;display:flex;justify-content:center;gap:6px;margin-top:30px!important
}
.woocommerce nav.woocommerce-pagination ul li{border:0!important}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  min-width:40px;height:40px;display:flex!important;align-items:center;justify-content:center;
  border:1px solid var(--bp-border)!important;background:#fff!important;color:var(--bp-blue)!important;
  border-radius:7px;padding:0 10px!important
}
.woocommerce nav.woocommerce-pagination ul li span.current{
  background:var(--bp-blue)!important;color:#fff!important
}

/* Single product / generic Woo */
.woocommerce div.product{padding:34px 0 48px}
.woocommerce div.product .product_title{color:#17233b}
.woocommerce div.product p.price,
.woocommerce div.product span.price{color:var(--bp-blue)!important}
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button{
  background:var(--bp-blue)!important;color:#fff!important;border-radius:7px!important
}
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce input.button:hover{background:var(--bp-blue-2)!important}

/* Notices */
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  border-radius:8px;border-top-color:var(--bp-blue)!important
}

/* FOOTER */
.bp-footer{margin-top:48px;background:#0f2f73;color:#fff}
.bp-footer__top{padding:42px 0;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:34px}
.bp-footer h3{margin:0 0 12px;font-size:16px}
.bp-footer p,.bp-footer a{color:rgba(255,255,255,.82)}
.bp-footer__bottom{border-top:1px solid rgba(255,255,255,.12);padding:18px 0;color:rgba(255,255,255,.65);font-size:13px}

/* BACK TO TOP */
.bp-top{
  position:fixed;right:20px;bottom:20px;width:44px;height:44px;border:0;border-radius:50%;
  background:var(--bp-blue);color:#fff;display:flex;align-items:center;justify-content:center;
  box-shadow:0 8px 24px rgba(15,23,42,.18);opacity:0;visibility:hidden;transform:translateY(8px);
  transition:.18s;z-index:9998;cursor:pointer
}
.bp-top.is-visible{opacity:1;visibility:visible;transform:none}

/* MOBILE */
@media(max-width:900px){
  .bp-header__row{grid-template-columns:1fr auto;min-height:72px}
  .bp-nav,.bp-actions{display:none}
  .bp-toggle{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border:0;background:transparent;color:var(--bp-blue);font-size:26px;cursor:pointer}
  .bp-mobile-actions{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--bp-border);padding:6px 0 8px}
  .bp-mobile-actions .bp-action{justify-self:center}
  .bp-mobile-nav{display:block;max-height:0;overflow:hidden;border-top:0 solid var(--bp-border);transition:.2s}
  .bp-mobile-nav.is-open{max-height:220px;border-top-width:1px;padding:8px 0 12px}
  .bp-mobile-nav ul{list-style:none;margin:0;padding:0}
  .bp-mobile-nav a{display:block;padding:10px 0;font-weight:750}
  .bp-shop-shell{grid-template-columns:1fr;gap:16px;padding-top:20px}
  .bp-shop-sidebar{order:0}
  .bp-shop-content{order:1}
  .woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bp-shop-title{font-size:28px}
  .bp-footer__top{grid-template-columns:1fr}
}
@media(max-width:560px){
  .bp-container{width:min(calc(100% - 22px),var(--bp-container))}
  .woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important}
  .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:14px!important;padding:0 10px!important}
  .woocommerce ul.products li.product .price{padding:0 10px}
  .woocommerce ul.products li.product .button{margin:8px 10px 0!important;padding:9px 10px!important;font-size:13px!important}
  .bp-search__form{grid-template-columns:1fr}
  .bp-search__submit{height:46px}
}


/* 0.1.1 fixes */
.bp-mobile-actions{display:none}

.woocommerce ul.products li.product .button.bp-adding{
  opacity:.65;
  pointer-events:none;
}
.woocommerce ul.products li.product .button.added{
  background:var(--bp-blue)!important;
}
.bp-cart-notice{
  position:fixed;
  right:20px;
  top:105px;
  z-index:10001;
  background:#fff;
  border:1px solid var(--bp-border);
  border-radius:10px;
  box-shadow:0 12px 35px rgba(15,23,42,.15);
  padding:12px 16px;
  color:var(--bp-text);
  font-weight:700;
}
@media(max-width:900px){
  .bp-mobile-actions{display:grid}
  .bp-cart-notice{right:12px;left:12px;top:145px;text-align:center}
}


/* =========================================================
   0.1.2 HEADER HARDENING
   - force one action row only
   - make sticky reliable
========================================================= */

.bp-header{
  position:-webkit-sticky !important;
  position:sticky !important;
  top:0 !important;
  z-index:99999 !important;
  width:100% !important;
  background:#fff !important;
}

/* WordPress admin bar offset while logged in */
body.admin-bar .bp-header{
  top:32px !important;
}

@media screen and (max-width:782px){
  body.admin-bar .bp-header{
    top:46px !important;
  }
}

/* Desktop: ONLY desktop actions are visible */
.bp-header .bp-actions{
  display:flex !important;
}

.bp-header .bp-mobile-actions{
  display:none !important;
}

/* Mobile/tablet: ONLY mobile actions are visible */
@media(max-width:900px){
  .bp-header .bp-actions{
    display:none !important;
  }

  .bp-header .bp-mobile-actions{
    display:grid !important;
    grid-template-columns:repeat(4,1fr);
    align-items:center;
    width:100%;
  }
}

/* Prevent a legacy/CommerceOps header accidentally embedded in page content
   from creating a second visible header when Biopepers Core theme is active. */
body .site-main > .bpm-site-header,
body .site-main .bpm-site-header{
  display:none !important;
}


/* =========================================================
   0.1.4 NATIVE / CLASSIC WOOCOMMERCE CART
========================================================= */

.bp-classic-cart-wrap{padding:40px 0 56px}
.bp-classic-cart-wrap .woocommerce{width:100%}

.bp-classic-cart-wrap .shop_table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  border:1px solid var(--bp-border);
  border-radius:12px;
  overflow:hidden;
  background:#fff;
}
.bp-classic-cart-wrap .shop_table th,
.bp-classic-cart-wrap .shop_table td{
  padding:16px 14px;
  border-bottom:1px solid var(--bp-border);
  vertical-align:middle;
}
.bp-classic-cart-wrap .shop_table tr:last-child td{border-bottom:0}

.bp-classic-cart-wrap .product-thumbnail img{
  width:82px;height:82px;object-fit:cover;border-radius:8px
}
.bp-classic-cart-wrap .product-name a{
  color:var(--bp-blue);
  font-weight:750;
}
.bp-classic-cart-wrap input.qty{
  width:72px;
  min-height:42px;
  border:1px solid var(--bp-border);
  border-radius:7px;
  text-align:center;
}
.bp-classic-cart-wrap .actions{background:var(--bp-soft)}
.bp-classic-cart-wrap .coupon{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
}
.bp-classic-cart-wrap .coupon input.input-text{
  min-width:210px;
  min-height:44px;
  border:1px solid var(--bp-border);
  border-radius:7px;
  padding:0 12px;
}
.bp-classic-cart-wrap .cart-collaterals{
  margin-top:28px;
  display:flex;
  justify-content:flex-end;
}
.bp-classic-cart-wrap .cart_totals{
  width:min(100%,440px);
  background:#fff;
  border:1px solid var(--bp-border);
  border-radius:12px;
  padding:22px;
}
.bp-classic-cart-wrap .cart_totals h2{margin-top:0}
.bp-classic-cart-wrap .cart_totals table{
  width:100%;
  border-collapse:collapse;
}
.bp-classic-cart-wrap .cart_totals th,
.bp-classic-cart-wrap .cart_totals td{
  padding:12px 0;
  border-bottom:1px solid var(--bp-border);
}
.bp-classic-cart-wrap .wc-proceed-to-checkout .checkout-button{
  display:block !important;
  width:100%;
  text-align:center;
  padding:14px 18px !important;
  margin-top:18px !important;
  font-size:16px !important;
  border-radius:8px !important;
}

@media(max-width:767px){
  .bp-classic-cart-wrap{padding-top:22px}
  .bp-classic-cart-wrap .shop_table.shop_table_responsive tr{
    display:block;
    margin-bottom:14px;
    border:1px solid var(--bp-border);
    border-radius:10px;
    overflow:hidden;
  }
  .bp-classic-cart-wrap .shop_table.shop_table_responsive td{
    display:flex;
    justify-content:space-between;
    gap:14px;
    text-align:right !important;
    border-bottom:1px solid var(--bp-border);
  }
  .bp-classic-cart-wrap .shop_table.shop_table_responsive td.product-thumbnail{display:none}
  .bp-classic-cart-wrap .shop_table.shop_table_responsive td::before{
    font-weight:700;
    text-align:left;
  }
  .bp-classic-cart-wrap .cart-collaterals{display:block}
  .bp-classic-cart-wrap .cart_totals{width:100%}
}


/* =========================================================
   0.1.5 LAYOUT / HEADER / ARCHIVE / FOOTER POLISH
========================================================= */

/* Sticky header must work independently from Elementor */
html, body{overflow-x:hidden}
.bp-header{
  position:sticky !important;
  top:0 !important;
  z-index:99999 !important;
  width:100% !important;
  background:#fff !important;
  box-shadow:0 1px 0 rgba(15,23,42,.05);
}
body.admin-bar .bp-header{top:32px !important}
@media(max-width:782px){
  body.admin-bar .bp-header{top:46px !important}
}

/* Remove duplicate action rows decisively */
.bp-mobile-actions{display:none !important}
@media(max-width:900px){
  .bp-actions{display:none !important}
  .bp-mobile-actions{
    display:grid !important;
    grid-template-columns:repeat(4,1fr);
    align-items:center;
    width:100%;
  }
}

/* Main header proportions */
.bp-header__row{
  min-height:78px;
}
.bp-logo img{
  max-height:46px;
}
.bp-nav a{
  font-size:15px;
}
.bp-action{
  width:40px;
  height:40px;
}

/* Archive layout */
.bp-shop-shell{
  grid-template-columns:210px minmax(0,1fr);
  gap:34px;
  padding:32px 0 54px;
}
.bp-shop-sidebar{
  align-self:start;
  position:sticky;
  top:108px;
}
.bp-shop-content{
  width:100%;
}
.bp-shop-head{
  align-items:center;
  margin-bottom:24px;
}
.bp-shop-title{
  font-size:32px;
}
.woocommerce .woocommerce-ordering{
  margin:0 !important;
}
.woocommerce .woocommerce-ordering select{
  min-height:42px;
  border:1px solid var(--bp-border);
  border-radius:8px;
  padding:0 38px 0 12px;
  background:#fff;
  color:var(--bp-text);
}

/* Product cards */
.woocommerce ul.products,
.woocommerce-page ul.products{
  align-items:stretch;
}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link{
  display:flex;
  flex-direction:column;
  flex:1 1 auto;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  min-height:44px;
}
.woocommerce ul.products li.product .price{
  margin-top:auto !important;
}
.woocommerce ul.products li.product .button{
  align-self:flex-start;
}

/* Footer - constrained and calmer */
.bp-footer{
  margin-top:56px;
}
.bp-footer__top{
  padding:38px 0 34px;
}
.bp-footer__bottom{
  padding:16px 0;
}

/* Mobile archive */
@media(max-width:900px){
  .bp-shop-shell{
    grid-template-columns:1fr;
    gap:18px;
    padding-top:20px;
  }
  .bp-shop-sidebar{
    position:static;
    top:auto;
  }
  .bp-shop-head{
    align-items:flex-start;
    flex-direction:column;
    gap:12px;
  }
  .bp-shop-title{
    font-size:28px;
  }
}

@media(max-width:560px){
  .bp-header__row{min-height:66px}
  .bp-logo img{max-height:40px;max-width:190px}
  .bp-shop-shell{padding-bottom:36px}
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    min-height:38px;
  }
}


/* =========================================================
   BIOPEPERS CORE 0.2.0 — DESIGN SYSTEM
========================================================= */

:root{
  --bp-blue:#0b3b97;
  --bp-blue-dark:#082e79;
  --bp-blue-2:#1e5ad4;
  --bp-text:#152238;
  --bp-muted:#68758a;
  --bp-soft:#f6f8fc;
  --bp-soft-2:#eef3fb;
  --bp-border:#e4eaf3;
  --bp-card:#ffffff;
  --bp-radius:16px;
  --bp-radius-sm:10px;
  --bp-shadow:0 12px 32px rgba(20,48,96,.08);
  --bp-shadow-hover:0 18px 40px rgba(20,48,96,.13);
  --bp-container:1240px;
  --bp-gap:24px;
}

body{
  color:var(--bp-text);
  background:#fff;
}

.bp-container{
  width:min(calc(100% - 40px),var(--bp-container));
  margin-inline:auto;
}

.site-main{
  min-height:60vh;
}

/* Unified surfaces */
.bp-surface{
  background:#fff;
  border:1px solid var(--bp-border);
  border-radius:var(--bp-radius);
  box-shadow:var(--bp-shadow);
}

/* =========================================================
   HEADER — SAME WIDTH AS ENTIRE SITE
========================================================= */

.bp-header{
  border-bottom:1px solid rgba(11,59,151,.08) !important;
  box-shadow:0 8px 24px rgba(18,45,90,.04) !important;
}

.bp-header__row{
  min-height:80px;
  gap:28px;
}

.bp-logo img{
  max-height:48px;
  max-width:220px;
}

.bp-nav a{
  color:var(--bp-blue);
  font-size:15px;
  font-weight:800;
  letter-spacing:-.01em;
}

.bp-action{
  border-radius:10px;
  transition:background .15s ease, transform .15s ease;
}
.bp-action:hover{
  background:#f3f6fb;
  transform:translateY(-1px);
}
.bp-badge{
  background:var(--bp-blue);
  box-shadow:0 0 0 2px #fff;
}

/* Remove ugly legacy "Meniu" block if any old menu markup remains */
.menu-toggle,
button.menu-toggle,
.site-header .menu-toggle,
.elementor-menu-toggle{
  display:none !important;
}

/* =========================================================
   HOMEPAGE
========================================================= */

.bp-home{
  padding:32px 0 58px;
}

.bp-home-hero{
  margin-bottom:26px;
}
.bp-home-hero img{
  display:block;
  width:100%;
  border-radius:22px;
  box-shadow:var(--bp-shadow);
}

.bp-home-section{
  margin-top:34px;
}

.bp-section-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
}

.bp-section-head h2{
  margin:0;
  font-size:28px;
  line-height:1.15;
  color:var(--bp-text);
}

.bp-section-head p{
  margin:6px 0 0;
  color:var(--bp-muted);
}

.bp-section-link{
  white-space:nowrap;
  font-weight:800;
  color:var(--bp-blue);
}

.bp-home-product-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:20px;
}

.bp-home-product-card{
  background:#fff;
  border:1px solid var(--bp-border);
  border-radius:16px;
  overflow:hidden;
  box-shadow:var(--bp-shadow);
  transition:transform .18s ease, box-shadow .18s ease;
}
.bp-home-product-card:hover{
  transform:translateY(-2px);
  box-shadow:var(--bp-shadow-hover);
}

.bp-home-product-card__image{
  position:relative;
  aspect-ratio:1 / 1;
  background:#fafbfd;
  overflow:hidden;
}
.bp-home-product-card__image img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.bp-home-product-card__body{
  padding:14px 15px 16px;
}
.bp-home-product-card__title{
  margin:0 0 6px;
  min-height:42px;
  font-size:15px;
  line-height:1.35;
  font-weight:800;
  color:var(--bp-blue);
}
.bp-home-product-card__price{
  margin-bottom:12px;
  color:var(--bp-blue);
  font-weight:800;
}
.bp-home-product-card__button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:0 14px;
  border-radius:8px;
  background:var(--bp-blue);
  color:#fff !important;
  font-size:14px;
  font-weight:800;
}
.bp-home-product-card__button:hover{
  background:var(--bp-blue-dark);
}

.bp-manufacturer-strip{
  margin-top:38px;
  padding:14px 18px;
  border-radius:12px;
  background:linear-gradient(90deg,var(--bp-blue-dark),var(--bp-blue));
  color:#fff;
  font-size:18px;
  font-weight:800;
}

.bp-home-bottom-banner{
  margin-top:46px;
}
.bp-home-bottom-banner img{
  display:block;
  width:100%;
  border-radius:22px;
  box-shadow:var(--bp-shadow);
}

/* =========================================================
   PRODUCT ARCHIVE / SHOP
========================================================= */

.bp-shop-shell{
  width:100%;
}

.bp-shop-sidebar{
  background:#fff;
  border:1px solid var(--bp-border);
  border-radius:14px;
  padding:18px;
  box-shadow:0 8px 22px rgba(18,45,90,.05);
}

.bp-shop-head{
  min-height:58px;
  margin-bottom:20px;
}
.bp-shop-title{
  font-size:34px;
  letter-spacing:-.025em;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  border:1px solid var(--bp-border) !important;
  border-radius:16px !important;
  box-shadow:var(--bp-shadow) !important;
  transition:transform .18s ease,box-shadow .18s ease !important;
}
.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover{
  transform:translateY(-2px);
  box-shadow:var(--bp-shadow-hover) !important;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-size:15px !important;
  line-height:1.35 !important;
  min-height:42px !important;
}
.woocommerce ul.products li.product .button{
  border-radius:8px !important;
  min-height:40px;
  display:inline-flex !important;
  align-items:center;
}

/* =========================================================
   SINGLE PRODUCT
========================================================= */

.woocommerce div.product{
  padding:42px 0 56px;
}

.woocommerce div.product div.images,
.woocommerce div.product div.summary{
  margin-bottom:0;
}

.woocommerce div.product div.images{
  padding:18px;
  border:1px solid var(--bp-border);
  border-radius:16px;
  background:#fff;
  box-shadow:var(--bp-shadow);
}

.woocommerce div.product .summary{
  padding:12px 8px 0 30px;
}

.woocommerce div.product .product_title{
  font-size:34px;
  line-height:1.15;
  letter-spacing:-.025em;
}

.woocommerce div.product p.price{
  font-size:24px !important;
  font-weight:800;
  margin:14px 0 20px;
}

.woocommerce div.product form.cart{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin-top:24px;
}

.woocommerce div.product form.cart .quantity input.qty{
  min-height:46px;
  width:76px;
  border:1px solid var(--bp-border);
  border-radius:8px;
}

.woocommerce div.product form.cart .single_add_to_cart_button{
  min-height:46px;
  padding-inline:22px !important;
}

/* =========================================================
   CART — COMPLETE REDESIGN
========================================================= */

.bp-classic-cart-wrap{
  padding:44px 0 64px;
}

.bp-classic-cart-wrap .woocommerce{
  display:grid;
  grid-template-columns:minmax(0,1.65fr) minmax(320px,.75fr);
  gap:28px;
  align-items:start;
}

.bp-classic-cart-wrap .woocommerce-notices-wrapper{
  grid-column:1/-1;
}

.bp-classic-cart-wrap form.woocommerce-cart-form{
  min-width:0;
}

.bp-classic-cart-wrap .shop_table{
  border:1px solid var(--bp-border) !important;
  border-radius:16px !important;
  box-shadow:var(--bp-shadow);
  overflow:hidden;
}

.bp-classic-cart-wrap .shop_table thead{
  background:#f8faff;
}

.bp-classic-cart-wrap .shop_table th{
  color:var(--bp-text);
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.035em;
}

.bp-classic-cart-wrap .product-remove a{
  width:32px;height:32px;
  display:inline-flex !important;
  align-items:center;justify-content:center;
  border-radius:50%;
  background:#f3f5f9;
  color:#667085 !important;
}

.bp-classic-cart-wrap .product-thumbnail img{
  width:88px;height:88px;
  object-fit:contain;
  background:#fafbfd;
  border-radius:10px;
}

.bp-classic-cart-wrap .product-name a{
  font-size:15px;
  font-weight:800;
}

.bp-classic-cart-wrap .cart-collaterals{
  margin:0;
  display:block;
}

.bp-classic-cart-wrap .cart_totals{
  width:100%;
  padding:24px;
  border:1px solid var(--bp-border);
  border-radius:16px;
  box-shadow:var(--bp-shadow);
  position:sticky;
  top:110px;
}

.bp-classic-cart-wrap .cart_totals h2{
  font-size:22px;
  margin:0 0 14px;
}

.bp-classic-cart-wrap .wc-proceed-to-checkout .checkout-button{
  min-height:50px;
  display:flex !important;
  align-items:center;
  justify-content:center;
  border-radius:10px !important;
  font-size:16px !important;
  font-weight:800 !important;
}

/* =========================================================
   CHECKOUT — 2 COLUMN PREMIUM LAYOUT
========================================================= */

.woocommerce-checkout .woocommerce{
  width:min(calc(100% - 40px),var(--bp-container));
  margin:0 auto;
  padding:42px 0 64px;
}

.woocommerce-checkout form.checkout{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);
  gap:30px;
  align-items:start;
}

.woocommerce-checkout #customer_details{
  grid-column:1;
  display:block;
  background:#fff;
  border:1px solid var(--bp-border);
  border-radius:16px;
  box-shadow:var(--bp-shadow);
  padding:24px;
}

.woocommerce-checkout #order_review_heading,
.woocommerce-checkout #order_review{
  grid-column:2;
}

.woocommerce-checkout #order_review_heading{
  margin:0 0 10px;
  font-size:22px;
}

.woocommerce-checkout #order_review{
  background:#fff;
  border:1px solid var(--bp-border);
  border-radius:16px;
  box-shadow:var(--bp-shadow);
  padding:22px;
  position:sticky;
  top:110px;
}

.woocommerce-checkout input.input-text,
.woocommerce-checkout select,
.woocommerce-checkout textarea{
  min-height:46px;
  border:1px solid var(--bp-border);
  border-radius:8px;
  padding:10px 12px;
  background:#fff;
}

.woocommerce-checkout .form-row label{
  margin-bottom:6px;
  font-weight:700;
  color:var(--bp-text);
}

.woocommerce-checkout #payment{
  background:#f8faff;
  border-radius:12px;
}

.woocommerce-checkout #place_order{
  width:100%;
  min-height:52px;
  border-radius:10px !important;
  font-size:16px;
  font-weight:800;
}

/* =========================================================
   FOOTER — SAME WIDTH / SAME SYSTEM
========================================================= */

.bp-footer{
  margin-top:58px;
  background:linear-gradient(180deg,#0f387f 0%,#0b2f70 100%);
}

.bp-footer__top,
.bp-footer__bottom{
  width:min(calc(100% - 40px),var(--bp-container));
  margin-inline:auto;
}

.bp-footer__top{
  padding:44px 0 36px;
}

.bp-footer h3{
  font-size:15px;
  letter-spacing:.01em;
}

.bp-footer__bottom{
  padding:17px 0;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:1020px){
  .bp-home-product-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .bp-classic-cart-wrap .woocommerce,
  .woocommerce-checkout form.checkout{
    grid-template-columns:1fr;
  }

  .bp-classic-cart-wrap .cart_totals,
  .woocommerce-checkout #order_review{
    position:static;
  }

  .woocommerce-checkout #customer_details,
  .woocommerce-checkout #order_review_heading,
  .woocommerce-checkout #order_review{
    grid-column:1;
  }
}

@media(max-width:760px){
  .bp-container,
  .bp-footer__top,
  .bp-footer__bottom,
  .woocommerce-checkout .woocommerce{
    width:min(calc(100% - 24px),var(--bp-container));
  }

  .bp-home{
    padding-top:18px;
  }

  .bp-home-hero img,
  .bp-home-bottom-banner img{
    border-radius:14px;
  }

  .bp-home-product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
  }

  .bp-section-head{
    align-items:flex-start;
    flex-direction:column;
    gap:8px;
  }

  .bp-section-head h2{
    font-size:24px;
  }

  .bp-manufacturer-strip{
    font-size:16px;
    border-radius:10px;
  }

  .woocommerce div.product .summary{
    padding:18px 0 0;
  }

  .woocommerce div.product .product_title{
    font-size:28px;
  }

  .bp-classic-cart-wrap{
    padding-top:24px;
  }

  .woocommerce-checkout .woocommerce{
    padding-top:24px;
  }

  .bp-footer{
    margin-top:40px;
  }
}

@media(max-width:480px){
  .bp-home-product-card__body{
    padding:11px 11px 13px;
  }
  .bp-home-product-card__title{
    font-size:14px;
    min-height:38px;
  }
}


/* =========================================================
   BIOPEPERS CORE 0.2.1 — CART / CHECKOUT REBUILD
========================================================= */

/* ---------------------------------------------------------
   Kill leftover menu widgets / text blocks outside our header
--------------------------------------------------------- */
body > .menu-toggle,
.site-main > .menu-toggle,
.site-main .menu-toggle,
.site-main .menu,
.site-main .main-navigation,
.site-main .elementor-menu-toggle{
  display:none !important;
}

/* ---------------------------------------------------------
   CART — true 2-column desktop layout
--------------------------------------------------------- */
.bp-classic-cart-wrap{
  width:min(calc(100% - 40px),var(--bp-container));
  margin:0 auto;
  padding:38px 0 64px;
}

.bp-classic-cart-wrap .woocommerce{
  width:100% !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 360px !important;
  gap:30px !important;
  align-items:start !important;
}

.bp-classic-cart-wrap .woocommerce-notices-wrapper{
  grid-column:1 / -1 !important;
}

.bp-classic-cart-wrap form.woocommerce-cart-form{
  width:100% !important;
  float:none !important;
  margin:0 !important;
  min-width:0 !important;
}

.bp-classic-cart-wrap .cart-collaterals{
  width:100% !important;
  float:none !important;
  margin:0 !important;
  display:block !important;
}

.bp-classic-cart-wrap .cart_totals{
  width:100% !important;
  float:none !important;
  clear:none !important;
  margin:0 !important;
  padding:24px !important;
  border:1px solid var(--bp-border) !important;
  border-radius:16px !important;
  background:#fff !important;
  box-shadow:var(--bp-shadow) !important;
  position:sticky;
  top:112px;
}

.bp-classic-cart-wrap .shop_table{
  width:100% !important;
  table-layout:auto !important;
  background:#fff !important;
}

.bp-classic-cart-wrap .shop_table th,
.bp-classic-cart-wrap .shop_table td{
  padding:16px 14px !important;
}

.bp-classic-cart-wrap .shop_table th.product-remove,
.bp-classic-cart-wrap .shop_table td.product-remove{
  width:42px;
}

.bp-classic-cart-wrap .shop_table th.product-thumbnail,
.bp-classic-cart-wrap .shop_table td.product-thumbnail{
  width:105px;
}

.bp-classic-cart-wrap .shop_table th.product-quantity,
.bp-classic-cart-wrap .shop_table td.product-quantity{
  width:115px;
}

.bp-classic-cart-wrap .shop_table th.product-price,
.bp-classic-cart-wrap .shop_table td.product-price,
.bp-classic-cart-wrap .shop_table th.product-subtotal,
.bp-classic-cart-wrap .shop_table td.product-subtotal{
  width:120px;
  white-space:nowrap;
}

.bp-classic-cart-wrap .product-thumbnail img{
  width:76px !important;
  height:76px !important;
  object-fit:contain !important;
  background:#f8faff;
  border-radius:10px;
}

.bp-classic-cart-wrap .product-name{
  min-width:190px;
}

.bp-classic-cart-wrap .product-name a{
  font-size:15px;
  line-height:1.35;
  font-weight:800;
  color:var(--bp-blue) !important;
}

.bp-classic-cart-wrap .quantity .qty{
  width:64px !important;
  min-height:42px !important;
  border:1px solid var(--bp-border) !important;
  border-radius:8px !important;
  background:#fff !important;
}

.bp-classic-cart-wrap td.actions{
  padding:14px !important;
  background:#f8faff !important;
}

.bp-classic-cart-wrap td.actions .coupon{
  float:left !important;
}

.bp-classic-cart-wrap td.actions > .button{
  float:right !important;
}

.bp-classic-cart-wrap .coupon input.input-text{
  width:200px !important;
  min-height:42px !important;
}

.bp-classic-cart-wrap .coupon .button,
.bp-classic-cart-wrap td.actions > .button{
  min-height:42px !important;
  padding:0 16px !important;
}

.bp-classic-cart-wrap .cart_totals h2{
  font-size:22px !important;
  line-height:1.2;
  margin:0 0 18px !important;
}

.bp-classic-cart-wrap .cart_totals table{
  width:100% !important;
  margin:0 !important;
  border-collapse:collapse !important;
}

.bp-classic-cart-wrap .cart_totals th{
  width:38%;
  color:var(--bp-muted);
  font-size:13px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.025em;
}

.bp-classic-cart-wrap .cart_totals td{
  text-align:right;
  color:var(--bp-text);
}

.bp-classic-cart-wrap .cart_totals .order-total th,
.bp-classic-cart-wrap .cart_totals .order-total td{
  padding-top:18px !important;
  font-size:17px;
  color:var(--bp-text);
}

.bp-classic-cart-wrap .woocommerce-shipping-methods{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
  text-align:left !important;
}

.bp-classic-cart-wrap .woocommerce-shipping-methods li{
  margin:0 0 10px !important;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:8px;
  align-items:start;
}

.bp-classic-cart-wrap .woocommerce-shipping-destination{
  margin:12px 0 6px !important;
  color:var(--bp-muted);
  font-size:13px;
  line-height:1.5;
}

.bp-classic-cart-wrap .shipping-calculator-button{
  display:inline-block;
  margin-top:8px;
  font-weight:800;
  font-size:13px;
}

.bp-classic-cart-wrap .wc-proceed-to-checkout{
  padding:0 !important;
}

.bp-classic-cart-wrap .wc-proceed-to-checkout .checkout-button{
  width:100% !important;
  min-height:52px !important;
  margin:18px 0 0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:10px !important;
  background:var(--bp-blue) !important;
  color:#fff !important;
  font-size:16px !important;
  font-weight:800 !important;
}

/* ---------------------------------------------------------
   CHECKOUT — stable native Woo 2-column layout
--------------------------------------------------------- */
body.woocommerce-checkout .site-main{
  background:#f7f9fd;
}

body.woocommerce-checkout .woocommerce{
  width:min(calc(100% - 40px),var(--bp-container)) !important;
  margin:0 auto !important;
  padding:38px 0 64px !important;
}

body.woocommerce-checkout .woocommerce > .woocommerce-notices-wrapper,
body.woocommerce-checkout .woocommerce > .woocommerce-form-login-toggle,
body.woocommerce-checkout .woocommerce > .woocommerce-form-coupon-toggle{
  max-width:none !important;
}

body.woocommerce-checkout form.checkout{
  width:100% !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 390px !important;
  gap:30px !important;
  align-items:start !important;
}

body.woocommerce-checkout #customer_details{
  width:100% !important;
  float:none !important;
  grid-column:1 !important;
  display:block !important;
  margin:0 !important;
  padding:26px !important;
  background:#fff;
  border:1px solid var(--bp-border);
  border-radius:16px;
  box-shadow:var(--bp-shadow);
}

body.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout #customer_details .col-2{
  width:100% !important;
  float:none !important;
  margin:0 !important;
}

body.woocommerce-checkout #customer_details .col-2{
  margin-top:18px !important;
}

body.woocommerce-checkout #customer_details h3,
body.woocommerce-checkout #order_review_heading{
  margin:0 0 18px !important;
  font-size:22px !important;
  line-height:1.2;
  color:var(--bp-text);
}

body.woocommerce-checkout #order_review_heading{
  grid-column:2 !important;
  grid-row:1 !important;
  align-self:start;
  padding:0 4px;
}

body.woocommerce-checkout #order_review{
  width:100% !important;
  float:none !important;
  grid-column:2 !important;
  grid-row:1 !important;
  margin:42px 0 0 !important;
  padding:24px !important;
  background:#fff !important;
  border:1px solid var(--bp-border) !important;
  border-radius:16px !important;
  box-shadow:var(--bp-shadow) !important;
  position:sticky;
  top:112px;
}

body.woocommerce-checkout .form-row{
  margin:0 0 14px !important;
}

body.woocommerce-checkout .form-row-first,
body.woocommerce-checkout .form-row-last{
  width:calc(50% - 7px) !important;
}

body.woocommerce-checkout input.input-text,
body.woocommerce-checkout select,
body.woocommerce-checkout textarea,
body.woocommerce-checkout .select2-selection{
  width:100% !important;
  min-height:46px !important;
  border:1px solid var(--bp-border) !important;
  border-radius:8px !important;
  background:#fff !important;
  box-shadow:none !important;
}

body.woocommerce-checkout textarea{
  min-height:110px !important;
}

body.woocommerce-checkout .select2-container .select2-selection--single{
  height:46px !important;
}
body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered{
  line-height:44px !important;
  padding-left:12px !important;
}
body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow{
  height:44px !important;
}

body.woocommerce-checkout #order_review table.shop_table{
  border:0 !important;
  margin:0 0 18px !important;
}

body.woocommerce-checkout #order_review table.shop_table th,
body.woocommerce-checkout #order_review table.shop_table td{
  padding:12px 0 !important;
  border-bottom:1px solid var(--bp-border) !important;
}

body.woocommerce-checkout #payment{
  margin-top:18px !important;
  padding:16px !important;
  background:#f8faff !important;
  border-radius:12px !important;
}

body.woocommerce-checkout #payment ul.payment_methods{
  padding:0 !important;
  border:0 !important;
}

body.woocommerce-checkout #payment .payment_box{
  border-radius:8px !important;
}

body.woocommerce-checkout #place_order{
  width:100% !important;
  min-height:52px !important;
  margin-top:10px !important;
  border-radius:10px !important;
  background:var(--bp-blue) !important;
  font-size:16px !important;
  font-weight:800 !important;
}

/* ---------------------------------------------------------
   Responsive
--------------------------------------------------------- */
@media(max-width:980px){
  .bp-classic-cart-wrap .woocommerce,
  body.woocommerce-checkout form.checkout{
    grid-template-columns:1fr !important;
  }

  .bp-classic-cart-wrap .cart_totals,
  body.woocommerce-checkout #order_review{
    position:static !important;
    top:auto !important;
  }

  body.woocommerce-checkout #order_review_heading,
  body.woocommerce-checkout #order_review{
    grid-column:1 !important;
    grid-row:auto !important;
  }

  body.woocommerce-checkout #order_review{
    margin-top:0 !important;
  }
}

@media(max-width:767px){
  .bp-classic-cart-wrap,
  body.woocommerce-checkout .woocommerce{
    width:min(calc(100% - 24px),var(--bp-container)) !important;
    padding-top:22px !important;
  }

  .bp-classic-cart-wrap .shop_table.shop_table_responsive{
    border:0 !important;
    box-shadow:none !important;
    background:transparent !important;
  }

  .bp-classic-cart-wrap .shop_table.shop_table_responsive thead{
    display:none !important;
  }

  .bp-classic-cart-wrap .shop_table.shop_table_responsive tr.cart_item{
    display:block !important;
    padding:10px 14px !important;
    margin-bottom:14px !important;
    background:#fff;
    border:1px solid var(--bp-border);
    border-radius:14px;
    box-shadow:0 8px 22px rgba(18,45,90,.05);
  }

  .bp-classic-cart-wrap .shop_table.shop_table_responsive td{
    width:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:12px;
    padding:10px 0 !important;
    border-bottom:1px solid var(--bp-border) !important;
  }

  .bp-classic-cart-wrap .shop_table.shop_table_responsive td:last-child{
    border-bottom:0 !important;
  }

  .bp-classic-cart-wrap td.actions{
    display:block !important;
    padding:14px !important;
    border-radius:12px;
  }

  .bp-classic-cart-wrap td.actions .coupon,
  .bp-classic-cart-wrap td.actions > .button{
    width:100% !important;
    float:none !important;
  }

  .bp-classic-cart-wrap .coupon input.input-text{
    width:100% !important;
    margin-bottom:8px !important;
  }

  .bp-classic-cart-wrap .coupon .button,
  .bp-classic-cart-wrap td.actions > .button{
    width:100% !important;
    margin-top:8px !important;
  }

  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #order_review{
    padding:18px !important;
    border-radius:14px !important;
  }

  body.woocommerce-checkout .form-row-first,
  body.woocommerce-checkout .form-row-last{
    width:100% !important;
    float:none !important;
  }
}


/* =========================================================
   BIOPEPERS CORE 0.2.2 — PROFESSIONAL NATIVE UI PASS
========================================================= */

/* -------------------- HOMEPAGE -------------------- */
.bp-home{
  padding:28px 0 64px !important;
}

.bp-home-hero{
  margin:0 0 34px !important;
}
.bp-home-hero img,
.bp-home-bottom-banner img{
  width:100% !important;
  display:block !important;
  border-radius:20px !important;
  box-shadow:0 12px 34px rgba(20,48,96,.08) !important;
}

.bp-manufacturer-strip{
  width:100% !important;
  min-height:48px;
  display:flex !important;
  align-items:center !important;
  margin:34px 0 18px !important;
  padding:0 20px !important;
  border-radius:10px !important;
  background:linear-gradient(90deg,#0a347f,#0b43a8) !important;
  color:#fff !important;
  box-shadow:0 8px 20px rgba(11,59,151,.12);
}
.bp-manufacturer-strip span{
  color:#fff !important;
  font-size:17px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
}

.bp-home-section{
  margin:0 !important;
}
.bp-home-section--manufacturer{
  margin-bottom:10px !important;
}

.bp-home-product-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:18px !important;
}

.bp-home-product-grid--falcon{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

.bp-home-product-card{
  display:flex !important;
  flex-direction:column !important;
  min-width:0 !important;
  background:#fff !important;
  border:1px solid #e5ebf4 !important;
  border-radius:14px !important;
  overflow:hidden !important;
  box-shadow:0 8px 25px rgba(20,48,96,.06) !important;
}

.bp-home-product-card__image{
  width:100% !important;
  aspect-ratio:1 / 1 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#fafbfd !important;
  overflow:hidden !important;
}
.bp-home-product-card__image img{
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:contain !important;
  margin:0 !important;
}

.bp-home-product-card__body{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  padding:14px 15px 16px !important;
  visibility:visible !important;
  opacity:1 !important;
  background:#fff !important;
}
.bp-home-product-card__title{
  display:block !important;
  min-height:42px !important;
  margin:0 0 7px !important;
  color:#0b3b97 !important;
  font-size:15px !important;
  line-height:1.35 !important;
  font-weight:800 !important;
}
.bp-home-product-card__title a{
  color:#0b3b97 !important;
}
.bp-home-product-card__price{
  display:block !important;
  margin:0 0 12px !important;
  color:#0b3b97 !important;
  font-size:15px !important;
  font-weight:800 !important;
}
.bp-home-product-card__button{
  margin-top:auto !important;
  align-self:flex-start !important;
  min-height:39px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 14px !important;
  border-radius:7px !important;
  background:#0b3b97 !important;
  color:#fff !important;
  font-weight:800 !important;
}

.bp-section-action{
  display:flex !important;
  justify-content:flex-end !important;
  margin:16px 0 4px !important;
}
.bp-section-action__button{
  min-height:42px;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 17px !important;
  border:1px solid #dce5f2 !important;
  border-radius:8px !important;
  background:#fff !important;
  color:#0b3b97 !important;
  font-size:14px !important;
  font-weight:800 !important;
  box-shadow:0 5px 16px rgba(20,48,96,.04);
}
.bp-section-action__button:hover{
  background:#f5f8fd !important;
}

.bp-home-bottom-banner{
  margin:46px 0 0 !important;
}

/* -------------------- CART -------------------- */
body.woocommerce-cart .site-main{
  background:#f7f9fd !important;
}

.bp-classic-cart-wrap{
  width:min(calc(100% - 40px),1240px) !important;
  max-width:1240px !important;
  margin:0 auto !important;
  padding:42px 0 68px !important;
}

.bp-classic-cart-wrap .woocommerce{
  width:100% !important;
  max-width:none !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 390px !important;
  gap:30px !important;
  align-items:start !important;
}

.bp-classic-cart-wrap form.woocommerce-cart-form{
  width:100% !important;
  max-width:none !important;
  float:none !important;
}

.bp-classic-cart-wrap .shop_table{
  width:100% !important;
  max-width:none !important;
  border:1px solid #e3e9f2 !important;
  border-radius:16px !important;
  overflow:hidden !important;
  background:#fff !important;
  box-shadow:0 10px 30px rgba(20,48,96,.07) !important;
}

.bp-classic-cart-wrap .shop_table thead{
  background:#f3f6fb !important;
}
.bp-classic-cart-wrap .shop_table th{
  padding:15px 14px !important;
  color:#536177 !important;
  font-size:12px !important;
  font-weight:800 !important;
  letter-spacing:.04em !important;
}
.bp-classic-cart-wrap .shop_table td{
  padding:18px 14px !important;
  vertical-align:middle !important;
}

.bp-classic-cart-wrap .product-thumbnail img{
  width:84px !important;
  height:84px !important;
  padding:4px;
  object-fit:contain !important;
  border-radius:10px !important;
  background:#f9fbfe !important;
}
.bp-classic-cart-wrap .product-name a{
  color:#0b3b97 !important;
  font-size:15px !important;
  line-height:1.35 !important;
  font-weight:800 !important;
}
.bp-classic-cart-wrap .product-price,
.bp-classic-cart-wrap .product-subtotal{
  color:#17243a !important;
  font-weight:750 !important;
}

.bp-classic-cart-wrap td.actions{
  padding:16px !important;
  background:#f8faff !important;
}
.bp-classic-cart-wrap td.actions .coupon{
  display:flex !important;
  gap:8px !important;
  float:left !important;
  align-items:center !important;
}
.bp-classic-cart-wrap .coupon input.input-text{
  width:210px !important;
  min-height:44px !important;
  margin:0 !important;
}
.bp-classic-cart-wrap .coupon .button,
.bp-classic-cart-wrap td.actions > .button{
  min-height:44px !important;
  margin:0 !important;
  padding:0 17px !important;
  border-radius:8px !important;
}

.bp-classic-cart-wrap .cart-collaterals{
  width:100% !important;
  max-width:none !important;
  float:none !important;
  display:block !important;
}

.bp-classic-cart-wrap .cart_totals{
  width:100% !important;
  max-width:none !important;
  float:none !important;
  padding:25px !important;
  border:1px solid #e3e9f2 !important;
  border-radius:16px !important;
  background:#fff !important;
  box-shadow:0 10px 30px rgba(20,48,96,.07) !important;
}
.bp-classic-cart-wrap .cart_totals h2{
  margin:0 0 18px !important;
  color:#17243a !important;
  font-size:22px !important;
  font-weight:850 !important;
}
.bp-classic-cart-wrap .cart_totals table{
  width:100% !important;
  border:0 !important;
}
.bp-classic-cart-wrap .cart_totals th,
.bp-classic-cart-wrap .cart_totals td{
  padding:13px 0 !important;
  border-bottom:1px solid #edf1f6 !important;
}
.bp-classic-cart-wrap .cart_totals th{
  width:35% !important;
  color:#6b778c !important;
  font-size:12px !important;
  text-transform:uppercase !important;
  letter-spacing:.035em !important;
}
.bp-classic-cart-wrap .cart_totals td{
  color:#17243a !important;
  text-align:right !important;
}
.bp-classic-cart-wrap .wc-proceed-to-checkout .checkout-button{
  min-height:52px !important;
  margin:20px 0 0 !important;
  border-radius:9px !important;
}

/* -------------------- CHECKOUT -------------------- */
body.woocommerce-checkout .site-main{
  background:#f7f9fd !important;
}

body.woocommerce-checkout .site-main > .bp-container,
body.woocommerce-checkout .site-main > div.bp-container{
  width:min(calc(100% - 40px),1240px) !important;
  max-width:1240px !important;
  margin:0 auto !important;
  padding:40px 0 68px !important;
}

body.woocommerce-checkout .woocommerce{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

body.woocommerce-checkout form.checkout{
  width:100% !important;
  max-width:none !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 430px !important;
  column-gap:30px !important;
  row-gap:16px !important;
  align-items:start !important;
  margin:0 !important;
}

body.woocommerce-checkout #customer_details{
  grid-column:1 !important;
  width:100% !important;
  max-width:none !important;
  float:none !important;
  margin:0 !important;
  padding:26px !important;
  display:block !important;
  background:#fff !important;
  border:1px solid #e3e9f2 !important;
  border-radius:16px !important;
  box-shadow:0 10px 30px rgba(20,48,96,.07) !important;
}

body.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout #customer_details .col-2{
  width:100% !important;
  max-width:none !important;
  float:none !important;
  margin:0 !important;
  padding:0 !important;
}

body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
body.woocommerce-checkout .shipping_address .woocommerce-shipping-fields__field-wrapper{
  width:100% !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:16px !important;
}

body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper > .form-row,
body.woocommerce-checkout .shipping_address .woocommerce-shipping-fields__field-wrapper > .form-row{
  width:100% !important;
  max-width:none !important;
  float:none !important;
  clear:none !important;
  margin:0 !important;
}

body.woocommerce-checkout #billing_country_field,
body.woocommerce-checkout #billing_address_1_field,
body.woocommerce-checkout #billing_address_2_field,
body.woocommerce-checkout #shipping_country_field,
body.woocommerce-checkout #shipping_address_1_field,
body.woocommerce-checkout #shipping_address_2_field{
  grid-column:1 / -1 !important;
}

body.woocommerce-checkout .woocommerce-additional-fields{
  margin-top:20px !important;
}
body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper{
  width:100% !important;
}

body.woocommerce-checkout input.input-text,
body.woocommerce-checkout select,
body.woocommerce-checkout textarea,
body.woocommerce-checkout .select2-container{
  width:100% !important;
  max-width:none !important;
}
body.woocommerce-checkout input.input-text,
body.woocommerce-checkout select,
body.woocommerce-checkout .select2-selection{
  min-height:46px !important;
  border:1px solid #dfe6f0 !important;
  border-radius:8px !important;
  background:#fff !important;
}

body.woocommerce-checkout #order_review_heading{
  grid-column:2 !important;
  grid-row:1 !important;
  margin:0 !important;
  padding:0 0 12px !important;
  color:#17243a !important;
  font-size:22px !important;
  font-weight:850 !important;
}

body.woocommerce-checkout #order_review{
  grid-column:2 !important;
  grid-row:1 !important;
  width:100% !important;
  max-width:none !important;
  float:none !important;
  margin:42px 0 0 !important;
  padding:24px !important;
  background:#fff !important;
  border:1px solid #e3e9f2 !important;
  border-radius:16px !important;
  box-shadow:0 10px 30px rgba(20,48,96,.07) !important;
}

body.woocommerce-checkout #order_review table{
  width:100% !important;
}
body.woocommerce-checkout #order_review th,
body.woocommerce-checkout #order_review td{
  padding:12px 0 !important;
}
body.woocommerce-checkout #payment{
  margin-top:18px !important;
  padding:17px !important;
  border-radius:12px !important;
  background:#f7f9fd !important;
}
body.woocommerce-checkout #place_order{
  min-height:52px !important;
  border-radius:9px !important;
}

/* Coupon notice bar */
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{
  width:100% !important;
  margin:0 0 20px !important;
  padding:14px 16px !important;
  border:1px solid #dfe6f0 !important;
  border-top:3px solid #0b3b97 !important;
  border-radius:10px !important;
  background:#fff !important;
}

/* -------------------- RESPONSIVE -------------------- */
@media(max-width:980px){
  .bp-home-product-grid,
  .bp-home-product-grid--falcon{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }

  .bp-classic-cart-wrap .woocommerce,
  body.woocommerce-checkout form.checkout{
    grid-template-columns:1fr !important;
  }

  body.woocommerce-checkout #order_review_heading,
  body.woocommerce-checkout #order_review{
    grid-column:1 !important;
    grid-row:auto !important;
  }
  body.woocommerce-checkout #order_review{
    margin-top:0 !important;
  }
}

@media(max-width:700px){
  .bp-home-product-grid,
  .bp-home-product-grid--falcon{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px !important;
  }

  .bp-manufacturer-strip{
    margin-top:26px !important;
    min-height:44px !important;
    padding:0 14px !important;
    border-radius:9px !important;
  }

  .bp-section-action{
    justify-content:stretch !important;
  }
  .bp-section-action__button{
    width:100% !important;
  }

  .bp-classic-cart-wrap,
  body.woocommerce-checkout .site-main > .bp-container,
  body.woocommerce-checkout .site-main > div.bp-container{
    width:min(calc(100% - 24px),1240px) !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  body.woocommerce-checkout .shipping_address .woocommerce-shipping-fields__field-wrapper{
    grid-template-columns:1fr !important;
  }

  body.woocommerce-checkout #billing_country_field,
  body.woocommerce-checkout #billing_address_1_field,
  body.woocommerce-checkout #billing_address_2_field,
  body.woocommerce-checkout #shipping_country_field,
  body.woocommerce-checkout #shipping_address_1_field,
  body.woocommerce-checkout #shipping_address_2_field{
    grid-column:1 !important;
  }
}


/* =========================================================
   0.2.3 CART: SHIPPING ONLY AT CHECKOUT
========================================================= */

body.woocommerce-cart .woocommerce-shipping-totals,
body.woocommerce-cart tr.shipping,
body.woocommerce-cart .shipping-calculator-button,
body.woocommerce-cart .shipping-calculator-form,
body.woocommerce-cart .woocommerce-shipping-methods,
body.woocommerce-cart .woocommerce-shipping-destination{
  display:none !important;
}

/* Keep totals card compact when shipping is intentionally deferred */
body.woocommerce-cart .bp-classic-cart-wrap .cart_totals table tr.cart-subtotal th,
body.woocommerce-cart .bp-classic-cart-wrap .cart_totals table tr.cart-subtotal td{
  border-bottom:1px solid #edf1f6 !important;
}


/* =========================================================
   0.2.4 CART POLISH
========================================================= */

/* Woo injects a secondary "View cart / Krepšelis" link after AJAX add-to-cart.
   We already have the cart icon in the header, so keep cards clean. */
a.added_to_cart.wc-forward,
.woocommerce a.added_to_cart{
  display:none !important;
}

/* One clean totals card — no "box inside a box" look. */
body.woocommerce-cart .bp-classic-cart-wrap .cart_totals{
  padding:26px 28px !important;
}

body.woocommerce-cart .bp-classic-cart-wrap .cart_totals table,
body.woocommerce-cart .bp-classic-cart-wrap .cart_totals .shop_table,
body.woocommerce-cart .bp-classic-cart-wrap .cart_totals .shop_table tbody,
body.woocommerce-cart .bp-classic-cart-wrap .cart_totals .shop_table tr,
body.woocommerce-cart .bp-classic-cart-wrap .cart_totals .shop_table th,
body.woocommerce-cart .bp-classic-cart-wrap .cart_totals .shop_table td{
  background:transparent !important;
  box-shadow:none !important;
  border-left:0 !important;
  border-right:0 !important;
}

body.woocommerce-cart .bp-classic-cart-wrap .cart_totals .shop_table{
  border:0 !important;
  border-radius:0 !important;
  overflow:visible !important;
}

body.woocommerce-cart .bp-classic-cart-wrap .cart_totals .shop_table tr{
  border-bottom:1px solid #edf1f6 !important;
}

body.woocommerce-cart .bp-classic-cart-wrap .cart_totals .shop_table tr:last-child{
  border-bottom:0 !important;
}

body.woocommerce-cart .bp-classic-cart-wrap .cart_totals .shop_table th,
body.woocommerce-cart .bp-classic-cart-wrap .cart_totals .shop_table td{
  padding:14px 0 !important;
  border-bottom:0 !important;
}

/* When no coupon/fee/tax changes the amount, subtotal = total.
   Show only the meaningful final total instead of duplicating the same number. */
body.bp-cart-total-simple.woocommerce-cart .cart_totals .cart-subtotal{
  display:none !important;
}

/* A cleaner final total */
body.woocommerce-cart .bp-classic-cart-wrap .cart_totals .order-total th,
body.woocommerce-cart .bp-classic-cart-wrap .cart_totals .order-total td{
  padding-top:4px !important;
  padding-bottom:4px !important;
  font-size:18px !important;
  font-weight:850 !important;
}

body.woocommerce-cart .bp-classic-cart-wrap .cart_totals .order-total th{
  color:#536177 !important;
  font-size:13px !important;
  letter-spacing:.04em !important;
}

/* Checkout CTA: centred and deliberately smaller than the card width. */
body.woocommerce-cart .bp-classic-cart-wrap .wc-proceed-to-checkout{
  display:flex !important;
  justify-content:center !important;
  padding:0 !important;
}

body.woocommerce-cart .bp-classic-cart-wrap .wc-proceed-to-checkout .checkout-button{
  width:auto !important;
  min-width:260px !important;
  max-width:300px !important;
  min-height:50px !important;
  margin:22px auto 0 !important;
  padding:0 26px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}

/* No extra explanatory shipping text on Cart. */
body.woocommerce-cart .bp-classic-cart-wrap .cart_totals::after{
  content:none !important;
  display:none !important;
}

@media(max-width:767px){
  body.woocommerce-cart .bp-classic-cart-wrap .wc-proceed-to-checkout .checkout-button{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
  }
}


/* =========================================================
   0.2.5 HEADER / HOMEPAGE / CHECKOUT POLISH
========================================================= */

/* Sticky was being broken by legacy overflow rules. */
html{
  overflow-x:clip !important;
}
body{
  overflow-x:visible !important;
}
.bp-header{
  position:-webkit-sticky !important;
  position:sticky !important;
  top:0 !important;
  z-index:999999 !important;
  transform:none !important;
  overflow:visible !important;
}
body.admin-bar .bp-header{
  top:32px !important;
}
@media(max-width:782px){
  body.admin-bar .bp-header{top:46px !important}
}

/* Remove the odd white strip / keep homepage breathing room intentional. */
.bp-home{
  padding-top:26px !important;
}
.bp-home-hero{
  margin-top:0 !important;
  margin-bottom:34px !important;
}
.bp-home-hero img{
  border-radius:20px !important;
}

/* Lower banner — same width and rounded geometry as hero. */
.bp-home-bottom-banner{
  width:100% !important;
  margin-top:48px !important;
  margin-bottom:0 !important;
}
.bp-home-bottom-banner img{
  width:100% !important;
  display:block !important;
  border-radius:20px !important;
  box-shadow:0 12px 34px rgba(20,48,96,.08) !important;
}

/* ---------------- CHECKOUT TRUST STRIP ---------------- */
.bp-checkout-trust{
  width:100% !important;
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
  margin:0 0 18px !important;
}
.bp-checkout-trust__item{
  min-height:74px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:14px 16px;
  background:#fff;
  border:1px solid #e2e8f1;
  border-radius:12px;
  box-shadow:0 6px 18px rgba(20,48,96,.045);
}
.bp-checkout-trust__icon{
  flex:0 0 36px;
  width:36px;
  height:36px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:10px;
  background:#eef4ff;
  color:#0b3b97;
  font-size:18px;
  font-weight:900;
}
.bp-checkout-trust__item strong{
  display:block;
  color:#17243a;
  font-size:14px;
  line-height:1.25;
}
.bp-checkout-trust__item small{
  display:block;
  margin-top:3px;
  color:#7a879a;
  font-size:12px;
  line-height:1.3;
}

/* Hide old legacy trust widgets if they still get injected. */
body.woocommerce-checkout .checkout-trust,
body.woocommerce-checkout .checkout-trust-badges,
body.woocommerce-checkout .bpm-checkout-trust,
body.woocommerce-checkout .bpm-trust-row{
  display:none !important;
}

/* Checkout background and main width */
body.woocommerce-checkout .site-main{
  background:#f7f9fd !important;
}
body.woocommerce-checkout .site-main > .bp-container,
body.woocommerce-checkout .site-main > div.bp-container{
  width:min(calc(100% - 40px),1240px) !important;
  max-width:1240px !important;
  margin:0 auto !important;
  padding:30px 0 66px !important;
}
body.woocommerce-checkout .woocommerce{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

/* Coupon strip cleaner */
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{
  margin:0 0 18px !important;
  padding:14px 16px !important;
  border:1px solid #dfe6f0 !important;
  border-top:2px solid #0b3b97 !important;
  border-radius:10px !important;
  background:#fff !important;
  box-shadow:none !important;
}

/* Main checkout proportions */
body.woocommerce-checkout form.checkout{
  width:100% !important;
  max-width:none !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 440px !important;
  gap:28px !important;
  align-items:start !important;
}

/* Left billing card */
body.woocommerce-checkout #customer_details{
  grid-column:1 !important;
  width:100% !important;
  padding:28px !important;
  background:#fff !important;
  border:1px solid #e2e8f1 !important;
  border-radius:16px !important;
  box-shadow:0 10px 30px rgba(20,48,96,.06) !important;
}
body.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout #customer_details .col-2{
  width:100% !important;
  float:none !important;
  margin:0 !important;
  padding:0 !important;
}

body.woocommerce-checkout #customer_details h3,
body.woocommerce-checkout #order_review_heading{
  color:#17243a !important;
  font-size:22px !important;
  line-height:1.2 !important;
  font-weight:850 !important;
}

/* Remove hidden field wrappers from layout completely */
body.woocommerce-checkout #billing_country_field,
body.woocommerce-checkout #billing_state_field,
body.woocommerce-checkout #shipping_country_field,
body.woocommerce-checkout #shipping_state_field{
  display:none !important;
}

/* Predictable billing layout: first/last, email/phone, then full address rows */
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px 18px !important;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row{
  width:100% !important;
  float:none !important;
  clear:none !important;
  margin:0 !important;
}
body.woocommerce-checkout #billing_address_1_field,
body.woocommerce-checkout #billing_address_2_field{
  grid-column:1 / -1 !important;
}
body.woocommerce-checkout #billing_city_field,
body.woocommerce-checkout #billing_postcode_field,
body.woocommerce-checkout #billing_first_name_field,
body.woocommerce-checkout #billing_last_name_field,
body.woocommerce-checkout #billing_email_field,
body.woocommerce-checkout #billing_phone_field{
  grid-column:auto !important;
}

body.woocommerce-checkout .form-row label{
  display:block !important;
  margin-bottom:7px !important;
  color:#29364b !important;
  font-size:13px !important;
  font-weight:800 !important;
}
body.woocommerce-checkout input.input-text,
body.woocommerce-checkout select,
body.woocommerce-checkout textarea,
body.woocommerce-checkout .select2-selection{
  width:100% !important;
  min-height:48px !important;
  padding:0 13px !important;
  border:1px solid #dce4ee !important;
  border-radius:8px !important;
  background:#fff !important;
  color:#17243a !important;
  font-size:14px !important;
}
body.woocommerce-checkout textarea{
  min-height:110px !important;
  padding-top:11px !important;
}

/* Right order card */
body.woocommerce-checkout #order_review_heading{
  grid-column:2 !important;
  grid-row:1 !important;
  margin:0 !important;
  padding:0 0 12px !important;
}
body.woocommerce-checkout #order_review{
  grid-column:2 !important;
  grid-row:1 !important;
  width:100% !important;
  margin:40px 0 0 !important;
  padding:25px !important;
  background:#fff !important;
  border:1px solid #e2e8f1 !important;
  border-radius:16px !important;
  box-shadow:0 10px 30px rgba(20,48,96,.06) !important;
  position:sticky !important;
  top:112px !important;
}
body.woocommerce-checkout #order_review table.shop_table{
  width:100% !important;
  margin:0 0 18px !important;
  border:0 !important;
}
body.woocommerce-checkout #order_review table.shop_table th,
body.woocommerce-checkout #order_review table.shop_table td{
  padding:12px 0 !important;
  border-bottom:1px solid #edf1f6 !important;
}

/* Venipak: clean rows, full-width pickup selector, no cramped layout */
body.woocommerce-checkout #order_review .woocommerce-shipping-methods{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
}
body.woocommerce-checkout #order_review .woocommerce-shipping-methods li{
  display:block !important;
  margin:0 0 12px !important;
  padding:0 !important;
  line-height:1.45 !important;
}
body.woocommerce-checkout #order_review .woocommerce-shipping-methods input[type="radio"]{
  margin:2px 8px 0 0 !important;
  vertical-align:top !important;
}
body.woocommerce-checkout #order_review .woocommerce-shipping-methods label{
  display:inline !important;
  color:#26354c !important;
  font-size:14px !important;
  font-weight:700 !important;
}
body.woocommerce-checkout #order_review select,
body.woocommerce-checkout #order_review .select2-container{
  width:100% !important;
  max-width:100% !important;
}
body.woocommerce-checkout #order_review .select2-selection{
  width:100% !important;
  min-height:46px !important;
}
body.woocommerce-checkout #order_review label[for*="venipak"],
body.woocommerce-checkout #order_review [class*="venipak"] label{
  line-height:1.35 !important;
}

/* Payment */
body.woocommerce-checkout #payment{
  margin-top:18px !important;
  padding:17px !important;
  background:#f7f9fd !important;
  border-radius:12px !important;
}
body.woocommerce-checkout #place_order{
  width:100% !important;
  min-height:52px !important;
  border-radius:9px !important;
  font-size:15px !important;
  font-weight:850 !important;
}

/* Responsive */
@media(max-width:980px){
  body.woocommerce-checkout form.checkout{
    grid-template-columns:1fr !important;
  }
  body.woocommerce-checkout #order_review_heading,
  body.woocommerce-checkout #order_review{
    grid-column:1 !important;
    grid-row:auto !important;
  }
  body.woocommerce-checkout #order_review{
    margin-top:0 !important;
    position:static !important;
  }
}

@media(max-width:700px){
  .bp-checkout-trust{
    grid-template-columns:1fr !important;
    gap:8px !important;
  }
  .bp-checkout-trust__item{
    min-height:64px;
  }
  body.woocommerce-checkout .site-main > .bp-container,
  body.woocommerce-checkout .site-main > div.bp-container{
    width:min(calc(100% - 24px),1240px) !important;
  }
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper{
    grid-template-columns:1fr !important;
  }
  body.woocommerce-checkout #billing_address_1_field,
  body.woocommerce-checkout #billing_address_2_field{
    grid-column:1 !important;
  }
}


/* =========================================================
   0.2.6 CART / CHECKOUT UX POLISH
========================================================= */

/* ---------------- CART QUANTITY STEPPER ---------------- */
.bp-qty-stepper{
  display:inline-grid !important;
  grid-template-columns:36px 54px 36px !important;
  align-items:center !important;
  gap:0 !important;
  border:1px solid #dce4ee !important;
  border-radius:9px !important;
  overflow:hidden !important;
  background:#fff !important;
}

.bp-qty-stepper .bp-qty-btn{
  width:36px !important;
  height:42px !important;
  border:0 !important;
  background:#f5f8fd !important;
  color:#0b3b97 !important;
  font-size:20px !important;
  font-weight:800 !important;
  cursor:pointer !important;
  line-height:1 !important;
}

.bp-qty-stepper .bp-qty-btn:hover{
  background:#eaf1fb !important;
}

.bp-qty-stepper .bp-qty-input{
  width:54px !important;
  height:42px !important;
  min-height:42px !important;
  border:0 !important;
  border-left:1px solid #e6ebf3 !important;
  border-right:1px solid #e6ebf3 !important;
  border-radius:0 !important;
  text-align:center !important;
  padding:0 !important;
  appearance:textfield !important;
  -moz-appearance:textfield !important;
}
.bp-qty-stepper .bp-qty-input::-webkit-inner-spin-button,
.bp-qty-stepper .bp-qty-input::-webkit-outer-spin-button{
  -webkit-appearance:none !important;
  margin:0 !important;
}

/* ---------------- CHECKOUT TRUST STRIP ICONS ---------------- */
.bp-checkout-trust__icon{
  font-family:Arial,sans-serif !important;
  font-size:19px !important;
}

/* Remove any legacy tiny trust text row that still appears under the new cards */
body.woocommerce-checkout .site-main .bpm-checkout-icons,
body.woocommerce-checkout .site-main .bpm-checkout-safe-row,
body.woocommerce-checkout .site-main .checkout-icons-row,
body.woocommerce-checkout .site-main .checkout-benefits-old{
  display:none !important;
}

/* Coupon bar clean-up: remove the odd inline icon/marker before the sentence */
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before{
  display:none !important;
  content:none !important;
}
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{
  padding-left:16px !important;
}

/* Hide malformed / legacy pseudo-icons inside coupon notice */
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info > svg,
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info > i{
  display:none !important;
}

/* Billing order/widths */
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px 18px !important;
}

body.woocommerce-checkout #billing_first_name_field{grid-column:1 !important;grid-row:1 !important}
body.woocommerce-checkout #billing_last_name_field{grid-column:2 !important;grid-row:1 !important}
body.woocommerce-checkout #billing_email_field{grid-column:1 !important;grid-row:2 !important}
body.woocommerce-checkout #billing_phone_field{grid-column:2 !important;grid-row:2 !important}
body.woocommerce-checkout #billing_address_1_field{grid-column:1 !important;grid-row:3 !important}
body.woocommerce-checkout #billing_address_2_field{grid-column:2 !important;grid-row:3 !important}
body.woocommerce-checkout #billing_city_field{grid-column:1 !important;grid-row:4 !important}
body.woocommerce-checkout #billing_postcode_field{grid-column:2 !important;grid-row:4 !important}

/* Hide empty address-2 label/field if merchant doesn't want it visually prominent */
body.woocommerce-checkout #billing_address_2_field label{
  display:block !important;
}

/* Right order card button alignment */
body.woocommerce-checkout #place_order{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}

/* Mobile */
@media(max-width:700px){
  .bp-qty-stepper{
    grid-template-columns:34px 50px 34px !important;
  }

  .bp-qty-stepper .bp-qty-btn{
    width:34px !important;
  }

  .bp-qty-stepper .bp-qty-input{
    width:50px !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper{
    grid-template-columns:1fr !important;
  }

  body.woocommerce-checkout #billing_first_name_field,
  body.woocommerce-checkout #billing_last_name_field,
  body.woocommerce-checkout #billing_email_field,
  body.woocommerce-checkout #billing_phone_field,
  body.woocommerce-checkout #billing_address_1_field,
  body.woocommerce-checkout #billing_address_2_field,
  body.woocommerce-checkout #billing_city_field,
  body.woocommerce-checkout #billing_postcode_field{
    grid-column:1 !important;
    grid-row:auto !important;
  }
}

/* =========================================================
   BIOPEPERS CORE 0.2.9 — ARCHIVE / SINGLE / CART FIXES
========================================================= */

/* ---------------------------------------------------------
   SHOP / CATEGORY
   The old woocommerce.php catch-all was removed so this
   archive layout now actually renders.
--------------------------------------------------------- */
.bp-shop-shell{
  grid-template-columns:210px minmax(0,1fr) !important;
  gap:26px !important;
  padding-top:34px !important;
}

.bp-shop-sidebar{
  display:block !important;
  visibility:visible !important;
  align-self:start !important;
  position:sticky !important;
  top:104px !important;
}

.bp-shop-content{
  min-width:0 !important;
  width:100% !important;
}

.bp-shop-loop-meta{
  margin:0 0 14px !important;
  color:#44536a !important;
  font-size:14px !important;
}

.bp-shop-loop-meta .woocommerce-result-count{
  float:none !important;
  margin:0 !important;
}

.bp-shop-content ul.products,
.woocommerce-page .bp-shop-content ul.products{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:16px !important;
}

.bp-shop-content ul.products li.product{
  min-width:0 !important;
}

/* Native styling for CommerceOps manufacturer filter now that
   storefront CSS ownership belongs to the theme. */
.bp-shop-sidebar .bpm-mf{
  width:100% !important;
}
.bp-shop-sidebar .bpm-mf-desktop{
  display:block !important;
}
.bp-shop-sidebar .bpm-mf-title{
  margin:0 0 16px !important;
  color:#17243a !important;
  font-size:18px !important;
  font-weight:850 !important;
}
.bp-shop-sidebar .bpm-mf-form{
  display:flex !important;
  flex-direction:column !important;
  gap:11px !important;
}
.bp-shop-sidebar .bpm-mf-option{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  cursor:pointer !important;
  color:#66758a !important;
  font-size:14px !important;
  line-height:1.3 !important;
}
.bp-shop-sidebar .bpm-mf-option input{
  position:absolute !important;
  opacity:0 !important;
  pointer-events:none !important;
}
.bp-shop-sidebar .bpm-mf-box{
  width:20px !important;
  height:20px !important;
  flex:0 0 20px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1.5px solid #a1abb8 !important;
  border-radius:4px !important;
  background:#fff !important;
}
.bp-shop-sidebar .bpm-mf-option input:checked + .bpm-mf-box{
  border-color:#0b3b97 !important;
  background:#0b3b97 !important;
}
.bp-shop-sidebar .bpm-mf-option input:checked + .bpm-mf-box::after{
  content:"✓" !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:900 !important;
}
.bp-shop-sidebar .bpm-mf-option input:checked ~ .bpm-mf-name{
  color:#0b3b97 !important;
  font-weight:800 !important;
}
.bp-shop-sidebar .bpm-mf-clear{
  display:inline-flex !important;
  align-self:flex-start !important;
  margin-top:12px !important;
  padding:9px 11px !important;
  border-radius:7px !important;
  background:#f2f5fa !important;
  color:#66758a !important;
  font-size:12px !important;
  font-weight:850 !important;
  text-decoration:none !important;
}

/* ---------------------------------------------------------
   CART TOTALS — compact card / truly centred CTA.
--------------------------------------------------------- */
body.woocommerce-cart .bp-classic-cart-wrap .cart_totals{
  padding:24px 28px 26px !important;
}

body.woocommerce-cart .bp-classic-cart-wrap .cart_totals h2{
  margin:0 0 12px !important;
}

body.woocommerce-cart .bp-classic-cart-wrap .cart_totals .shop_table th,
body.woocommerce-cart .bp-classic-cart-wrap .cart_totals .shop_table td{
  padding-top:10px !important;
  padding-bottom:10px !important;
}

body.woocommerce-cart .bp-classic-cart-wrap .wc-proceed-to-checkout{
  display:flex !important;
  width:100% !important;
  justify-content:center !important;
  align-items:center !important;
  margin:18px 0 0 !important;
}

body.woocommerce-cart .bp-classic-cart-wrap .wc-proceed-to-checkout .checkout-button{
  display:inline-flex !important;
  width:220px !important;
  min-width:220px !important;
  max-width:220px !important;
  height:48px !important;
  min-height:48px !important;
  margin:0 auto !important;
  padding:0 18px !important;
  align-items:center !important;
  justify-content:center !important;
  float:none !important;
  text-align:center !important;
  line-height:1 !important;
}

/* ---------------------------------------------------------
   SINGLE PRODUCT — no stock count, compact - / qty / +.
--------------------------------------------------------- */
.single-product .stock{
  display:none !important;
}

.single-product div.product form.cart .quantity{
  display:inline-flex !important;
  align-items:stretch !important;
  width:auto !important;
  height:46px !important;
  margin:0 !important;
  padding:0 !important;
  border:1px solid #dce4ee !important;
  border-radius:9px !important;
  overflow:hidden !important;
  background:#fff !important;
}

.single-product div.product form.cart .quantity .bp-single-qty-btn{
  flex:0 0 38px !important;
  width:38px !important;
  min-width:38px !important;
  height:44px !important;
  min-height:44px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#f4f7fc !important;
  color:#0b3b97 !important;
  font-size:20px !important;
  font-weight:900 !important;
  cursor:pointer !important;
}

.single-product div.product form.cart .quantity input.qty{
  flex:0 0 54px !important;
  width:54px !important;
  min-width:54px !important;
  max-width:54px !important;
  height:44px !important;
  min-height:44px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-left:1px solid #e5eaf2 !important;
  border-right:1px solid #e5eaf2 !important;
  border-radius:0 !important;
  text-align:center !important;
  appearance:textfield !important;
  -moz-appearance:textfield !important;
}

.single-product div.product form.cart .quantity input.qty::-webkit-inner-spin-button,
.single-product div.product form.cart .quantity input.qty::-webkit-outer-spin-button{
  -webkit-appearance:none !important;
  margin:0 !important;
}

/* ---------------------------------------------------------
   MOBILE SHOP
--------------------------------------------------------- */
@media(max-width:900px){
  .bp-shop-shell{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }

  .bp-shop-sidebar{
    position:static !important;
    top:auto !important;
    padding:0 !important;
    border:0 !important;
    box-shadow:none !important;
    background:transparent !important;
  }

  .bp-shop-sidebar .bpm-mf-desktop{
    display:none !important;
  }

  .bp-shop-sidebar .bpm-mf-mobile-open{
    display:flex !important;
  }

  .bp-shop-content ul.products,
  .woocommerce-page .bp-shop-content ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media(max-width:700px){
  .bp-shop-content ul.products,
  .woocommerce-page .bp-shop-content ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }

  .bp-shop-head{
    flex-direction:column !important;
    align-items:stretch !important;
  }

  .bp-shop-ordering,
  .bp-shop-ordering .woocommerce-ordering,
  .bp-shop-ordering select{
    width:100% !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .wc-proceed-to-checkout .checkout-button{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
  }

  .single-product div.product form.cart{
    flex-wrap:nowrap !important;
  }
}

/* =========================================================
   0.2.11 CHECKOUT FUNCTIONAL UX RESTORE
========================================================= */

/* Functional state classes owned by CommerceOps JS */
body.woocommerce-checkout .bpm-field-hidden,
body.woocommerce-checkout .bpm-no-layout-space{
  display:none !important;
}

/* Allow CommerceOps to reorder fields based on selected delivery method. */
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .shipping_address .woocommerce-shipping-fields__field-wrapper{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px 18px !important;
}

body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row,
body.woocommerce-checkout .shipping_address .woocommerce-shipping-fields__field-wrapper > .form-row{
  grid-column:auto !important;
  grid-row:auto !important;
  width:100% !important;
  float:none !important;
  clear:none !important;
  margin:0 !important;
}

/* Full-width address rows when they are actually visible. */
body.woocommerce-checkout #billing_address_1_field,
body.woocommerce-checkout #shipping_address_1_field{
  grid-column:1 / -1 !important;
}

/* Address 2 sits next to city/postcode logic naturally after JS ordering. */
body.woocommerce-checkout #billing_address_2_field,
body.woocommerce-checkout #shipping_address_2_field{
  grid-column:auto !important;
}

/* Ship to a different address */
body.woocommerce-checkout #ship-to-different-address{
  margin:18px 0 10px !important;
  font-size:15px !important;
}
body.woocommerce-checkout #ship-to-different-address label{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  cursor:pointer !important;
}
body.woocommerce-checkout .shipping_address{
  margin-top:16px !important;
  padding-top:18px !important;
  border-top:1px solid #e6ebf3 !important;
}

/* Notes toggle */
body.woocommerce-checkout .bpm-notes-toggle{
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
  min-height:38px !important;
  margin:16px 0 8px !important;
  padding:0 12px !important;
  border:1px solid #dce4ee !important;
  border-radius:8px !important;
  background:#f7f9fd !important;
  color:#0b3b97 !important;
  font-size:13px !important;
  font-weight:800 !important;
  cursor:pointer !important;
}
body.woocommerce-checkout .bpm-notes-collapsed{
  display:none !important;
}

/* Company order toggle + fields */
body.woocommerce-checkout .bpm-company-purchase{
  margin:18px 0 0 !important;
  padding-top:18px !important;
  border-top:1px solid #e6ebf3 !important;
}
body.woocommerce-checkout .bpm-company-toggle-row{
  margin:0 0 10px !important;
}
body.woocommerce-checkout .bpm-company-toggle-row label{
  display:flex !important;
  align-items:center !important;
  gap:9px !important;
  color:#17243a !important;
  font-weight:800 !important;
  cursor:pointer !important;
}
body.woocommerce-checkout .bpm-company-fields{
  display:none;
  margin-top:12px !important;
  padding:16px !important;
  border:1px solid #e1e7f0 !important;
  border-radius:10px !important;
  background:#f8faff !important;
}
body.woocommerce-checkout .bpm-company-fields .form-row{
  margin-bottom:12px !important;
}

/* Venipak shipping card and pickup selector */
body.woocommerce-checkout #order_review tr.bpm-shipping-row th{
  display:none !important;
}
body.woocommerce-checkout #order_review tr.bpm-shipping-row td{
  width:100% !important;
  padding:14px 0 !important;
  overflow:visible !important;
}
body.woocommerce-checkout #order_review tr.bpm-shipping-row .woocommerce-shipping-methods{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}
body.woocommerce-checkout #order_review tr.bpm-shipping-row .woocommerce-shipping-methods li{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:flex-start !important;
  gap:8px !important;
  width:100% !important;
  margin:0 !important;
  padding:11px 0 !important;
  border-top:1px solid #edf1f6 !important;
}
body.woocommerce-checkout #order_review tr.bpm-shipping-row .woocommerce-shipping-methods li:first-child{
  border-top:0 !important;
}
body.woocommerce-checkout #order_review tr.bpm-shipping-row input[type="radio"]{
  flex:0 0 auto !important;
  margin-top:3px !important;
}
body.woocommerce-checkout #order_review tr.bpm-shipping-row label{
  flex:1 1 0 !important;
  min-width:0 !important;
  margin:0 !important;
  color:#20304a !important;
  font-size:14px !important;
  line-height:1.45 !important;
  font-weight:750 !important;
}
body.woocommerce-checkout #order_review .wc-venipak-shipping-logo{
  display:inline-block !important;
  width:auto !important;
  max-width:58px !important;
  height:auto !important;
  margin:0 5px 0 0 !important;
  vertical-align:middle !important;
}

body.woocommerce-checkout #order_review .bpm-venipak-pickup-ui{
  flex:0 0 100% !important;
  width:100% !important;
  max-width:none !important;
  margin:10px 0 0 !important;
  padding:12px 0 0 !important;
  border-top:1px solid #e1e8f2 !important;
}
body.woocommerce-checkout #order_review .bpm-venipak-pickup-ui label{
  display:block !important;
  width:100% !important;
  margin:0 0 7px !important;
  color:#65738a !important;
  font-size:12px !important;
  font-weight:800 !important;
}
body.woocommerce-checkout #order_review .bpm-venipak-pickup-ui select,
body.woocommerce-checkout #order_review .bpm-venipak-pickup-ui .select2-container,
body.woocommerce-checkout #order_review .bpm-venipak-pickup-ui .select2-selection{
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
}
body.woocommerce-checkout #order_review tr.bpm-venipak-pickup-row{
  display:none !important;
}

/* Venipak loading UX */
body.woocommerce-checkout .bpm-checkout-loading{
  display:block !important;
  width:100% !important;
  margin:8px 0 0 !important;
  padding:10px 12px !important;
  border:1px solid #dbe5f3 !important;
  border-radius:8px !important;
  background:#f7faff !important;
  color:#40516a !important;
  font-size:12px !important;
  font-weight:700 !important;
}

/* Product / shipping / total labels inserted by CommerceOps */
body.woocommerce-checkout #order_review tr.bpm-shipping-label-row th,
body.woocommerce-checkout #order_review tr.bpm-total-label-row th{
  padding:16px 0 8px !important;
  color:#17243a !important;
  font-size:15px !important;
  font-weight:850 !important;
  text-align:left !important;
}

/* Keep payment/compliance layout clean */
body.woocommerce-checkout #payment.bpm-payment-card{
  margin-top:0 !important;
  overflow:hidden !important;
}
body.woocommerce-checkout .bpm-compliance-confirmation{
  margin:14px 0 !important;
  padding:13px 14px !important;
  border:1px solid #d8e1ef !important;
  border-left:3px solid #0b3b97 !important;
  border-radius:9px !important;
  background:#f8faff !important;
}

/* Mobile checkout */
@media(max-width:700px){
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .shipping_address .woocommerce-shipping-fields__field-wrapper{
    grid-template-columns:1fr !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row,
  body.woocommerce-checkout .shipping_address .woocommerce-shipping-fields__field-wrapper > .form-row,
  body.woocommerce-checkout #billing_address_1_field,
  body.woocommerce-checkout #shipping_address_1_field{
    grid-column:1 !important;
  }
}


/* =========================================================
   0.2.12 COMPACT PRODUCT CARD FOOTER
========================================================= */

/* ---------------- Native homepage cards ---------------- */
.bp-home-product-card__body{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  grid-template-areas:
    "title title"
    "price button" !important;
  column-gap:10px !important;
  row-gap:10px !important;
  align-items:center !important;
  padding:13px 14px 14px !important;
}

.bp-home-product-card__title{
  grid-area:title !important;
  min-height:0 !important;
  margin:0 !important;
}

.bp-home-product-card__price{
  grid-area:price !important;
  justify-self:start !important;
  display:inline-flex !important;
  align-items:center !important;
  min-height:38px !important;
  margin:0 !important;
  padding:0 13px !important;
  border-radius:8px !important;
  background:#0b3b97 !important;
  color:#fff !important;
  font-size:15px !important;
  line-height:1 !important;
  font-weight:850 !important;
  white-space:nowrap !important;
}

.bp-home-product-card__price *,
.bp-home-product-card__price .woocommerce-Price-amount,
.bp-home-product-card__price .woocommerce-Price-currencySymbol{
  color:#fff !important;
}

.bp-home-product-card__button{
  grid-area:button !important;
  justify-self:end !important;
  align-self:center !important;
  min-height:38px !important;
  height:38px !important;
  margin:0 !important;
  padding:0 13px !important;
  white-space:nowrap !important;
}

/* ---------------- WooCommerce archive / related cards ---------------- */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  position:relative !important;
  padding-bottom:62px !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title{
  min-height:0 !important;
  margin-bottom:10px !important;
}

.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price{
  position:absolute !important;
  left:14px !important;
  bottom:14px !important;
  display:inline-flex !important;
  align-items:center !important;
  min-height:38px !important;
  margin:0 !important;
  padding:0 13px !important;
  border-radius:8px !important;
  background:#0b3b97 !important;
  color:#fff !important;
  font-size:15px !important;
  line-height:1 !important;
  font-weight:850 !important;
  white-space:nowrap !important;
  z-index:2 !important;
}

.woocommerce ul.products li.product .price *,
.woocommerce-page ul.products li.product .price *,
.woocommerce ul.products li.product .price .woocommerce-Price-amount,
.woocommerce-page ul.products li.product .price .woocommerce-Price-amount,
.woocommerce ul.products li.product .price .woocommerce-Price-currencySymbol,
.woocommerce-page ul.products li.product .price .woocommerce-Price-currencySymbol{
  color:#fff !important;
}

.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button{
  position:absolute !important;
  right:14px !important;
  bottom:14px !important;
  min-height:38px !important;
  height:38px !important;
  margin:0 !important;
  padding:0 13px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:8px !important;
  white-space:nowrap !important;
}

/* Keep AJAX "added" state from creating extra height. */
.woocommerce ul.products li.product a.added_to_cart,
.woocommerce-page ul.products li.product a.added_to_cart{
  display:none !important;
}

/* Compact mobile spacing while retaining 2-column cards. */
@media(max-width:700px){
  .bp-home-product-card__body{
    grid-template-columns:1fr auto !important;
    column-gap:7px !important;
    padding:10px !important;
  }

  .bp-home-product-card__price{
    min-height:34px !important;
    height:34px !important;
    padding:0 9px !important;
    font-size:13px !important;
    border-radius:7px !important;
  }

  .bp-home-product-card__button{
    min-height:34px !important;
    height:34px !important;
    padding:0 9px !important;
    font-size:12px !important;
    border-radius:7px !important;
  }

  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product{
    padding-bottom:56px !important;
  }

  .woocommerce ul.products li.product .price,
  .woocommerce-page ul.products li.product .price{
    left:10px !important;
    bottom:10px !important;
    min-height:34px !important;
    height:34px !important;
    padding:0 9px !important;
    font-size:13px !important;
  }

  .woocommerce ul.products li.product .button,
  .woocommerce-page ul.products li.product .button{
    right:10px !important;
    bottom:10px !important;
    min-height:34px !important;
    height:34px !important;
    padding:0 9px !important;
    font-size:12px !important;
  }
}


/* =========================================================
   0.2.13 PRODUCT CARD INTERACTION / COA / NOTICE POLISH
========================================================= */

/* Slightly shorter image area — keeps cards compact without cropping products. */
.bp-home-product-card__image{
  aspect-ratio:1.12 / 1 !important;
  padding:6px !important;
}

.bp-home-product-card__image img{
  object-fit:contain !important;
}

.woocommerce ul.products li.product a.woocommerce-LoopProduct-link img,
.woocommerce-page ul.products li.product a.woocommerce-LoopProduct-link img{
  aspect-ratio:1.12 / 1 !important;
  object-fit:contain !important;
  width:100% !important;
  height:auto !important;
  padding:6px !important;
  box-sizing:border-box !important;
}

/* Card hover — subtle enough to feel premium rather than animated. */
.bp-home-product-card,
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  transition:
    transform .18s ease,
    box-shadow .18s ease,
    border-color .18s ease !important;
}

.bp-home-product-card:hover,
.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover{
  transform:translateY(-3px) !important;
  border-color:#cad8ec !important;
  box-shadow:0 16px 34px rgba(20,48,96,.11) !important;
}

/* Add to cart interaction. */
.bp-home-product-card__button,
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button{
  gap:7px !important;
  transition:
    background .16s ease,
    transform .16s ease,
    box-shadow .16s ease !important;
}

.bp-home-product-card__button:hover,
.woocommerce ul.products li.product .button:hover,
.woocommerce-page ul.products li.product .button:hover{
  background:#082f7d !important;
  color:#fff !important;
  transform:translateY(-1px) !important;
  box-shadow:0 6px 14px rgba(11,59,151,.24) !important;
}

.bp-home-product-card__button:active,
.woocommerce ul.products li.product .button:active,
.woocommerce-page ul.products li.product .button:active{
  transform:translateY(0) scale(.98) !important;
}

/* Loading state must be immediately obvious after click. */
.bp-home-product-card__button.bp-adding,
.woocommerce ul.products li.product .button.bp-adding,
.woocommerce-page ul.products li.product .button.bp-adding{
  pointer-events:none !important;
  cursor:wait !important;
  background:#315fae !important;
  opacity:.88 !important;
  box-shadow:none !important;
}

.bp-btn-spinner{
  width:14px !important;
  height:14px !important;
  flex:0 0 14px !important;
  display:inline-block !important;
  border:2px solid rgba(255,255,255,.42) !important;
  border-top-color:#fff !important;
  border-radius:50% !important;
  animation:bpButtonSpin .65s linear infinite !important;
}

@keyframes bpButtonSpin{
  to{transform:rotate(360deg)}
}

.bp-btn-check{
  display:inline-grid !important;
  place-items:center !important;
  width:16px !important;
  height:16px !important;
  border-radius:50% !important;
  background:#fff !important;
  color:#0b3b97 !important;
  font-size:11px !important;
  font-weight:900 !important;
}

/* CommerceOps COA badge — ensure native cards never hide it. */
.bp-home-product-card{
  position:relative !important;
}

.bp-home-product-card .bpm-product-badge,
.woocommerce ul.products li.product .bpm-product-badge,
.woocommerce-page ul.products li.product .bpm-product-badge{
  display:inline-flex !important;
  visibility:visible !important;
  opacity:1 !important;
  top:12px !important;
  right:12px !important;
  left:auto !important;
  z-index:20 !important;
}

.bp-home-product-card .bpm-product-badge-coa,
.woocommerce ul.products li.product .bpm-product-badge-coa,
.woocommerce-page ul.products li.product .bpm-product-badge-coa{
  background:#0b45b5 !important;
  border-color:#08368f !important;
  color:#fff !important;
  box-shadow:0 4px 12px rgba(11,69,181,.20) !important;
}

/* Strong, visible AJAX confirmation toast. */
.bp-cart-notice{
  position:fixed !important;
  top:96px !important;
  left:50% !important;
  z-index:1000000 !important;

  width:min(calc(100% - 32px),620px) !important;
  display:grid !important;
  grid-template-columns:42px minmax(0,1fr) auto 32px !important;
  align-items:center !important;
  gap:12px !important;

  padding:14px 14px 14px 16px !important;
  border:1px solid #b8cae7 !important;
  border-radius:13px !important;
  background:#fff !important;
  color:#17243a !important;
  box-shadow:0 18px 44px rgba(12,38,84,.20) !important;

  opacity:0 !important;
  transform:translate(-50%,-12px) !important;
  transition:opacity .20s ease,transform .20s ease !important;
}

.bp-cart-notice.is-visible{
  opacity:1 !important;
  transform:translate(-50%,0) !important;
}

.bp-cart-notice__icon{
  width:38px !important;
  height:38px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:50% !important;
  background:#eaf2ff !important;
  color:#0b45b5 !important;
  font-size:20px !important;
  font-weight:900 !important;
}

.bp-cart-notice__text{
  min-width:0 !important;
  display:block !important;
}

.bp-cart-notice__text strong{
  display:block !important;
  margin:0 0 2px !important;
  color:#17243a !important;
  font-size:14px !important;
  line-height:1.25 !important;
}

.bp-cart-notice__text span{
  display:block !important;
  color:#718096 !important;
  font-size:12px !important;
  line-height:1.35 !important;
}

.bp-cart-notice__link{
  min-height:38px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 13px !important;
  border-radius:8px !important;
  background:#0b3b97 !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:850 !important;
  white-space:nowrap !important;
  text-decoration:none !important;
}

.bp-cart-notice__link:hover{
  background:#082f7d !important;
  color:#fff !important;
}

.bp-cart-notice__close{
  width:30px !important;
  height:30px !important;
  display:grid !important;
  place-items:center !important;
  padding:0 !important;
  border:0 !important;
  border-radius:8px !important;
  background:transparent !important;
  color:#77849a !important;
  font-size:22px !important;
  line-height:1 !important;
  cursor:pointer !important;
}

.bp-cart-notice__close:hover{
  background:#f1f4f8 !important;
  color:#26354c !important;
}

@media(max-width:700px){
  .bp-home-product-card__image,
  .woocommerce ul.products li.product a.woocommerce-LoopProduct-link img,
  .woocommerce-page ul.products li.product a.woocommerce-LoopProduct-link img{
    aspect-ratio:1.04 / 1 !important;
  }

  .bp-home-product-card .bpm-product-badge,
  .woocommerce ul.products li.product .bpm-product-badge,
  .woocommerce-page ul.products li.product .bpm-product-badge{
    top:7px !important;
    right:7px !important;
  }

  .bp-cart-notice{
    top:76px !important;
    grid-template-columns:36px minmax(0,1fr) 28px !important;
    gap:9px !important;
    padding:11px !important;
  }

  .bp-cart-notice__icon{
    width:34px !important;
    height:34px !important;
    font-size:17px !important;
  }

  .bp-cart-notice__link{
    grid-column:2 / 4 !important;
    width:100% !important;
    margin-top:2px !important;
  }

  .bp-cart-notice__close{
    grid-column:3 !important;
    grid-row:1 !important;
  }
}

/* =========================================================
   0.2.18 CANONICAL CART UI
   One source of truth for Cart layout / quantity / CTA.
========================================================= */

/* Automatic quantity UI */
body.woocommerce-cart button[name="update_cart"],
body.woocommerce-cart input[name="update_cart"]{
  display:none !important;
}

.bp-classic-cart-wrap .bp-qty-stepper{
  display:inline-flex !important;
  flex-flow:row nowrap !important;
  align-items:stretch !important;
  justify-content:center !important;
  width:112px !important;
  height:40px !important;
  margin:0 auto !important;
  padding:0 !important;
  overflow:hidden !important;
  border:1px solid #dce4ee !important;
  border-radius:9px !important;
  background:#fff !important;
}

.bp-classic-cart-wrap .bp-qty-stepper .bp-qty-btn{
  flex:0 0 34px !important;
  width:34px !important;
  height:38px !important;
  min-height:38px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:#f5f8fd !important;
  color:#0b3b97 !important;
  font-size:20px !important;
  line-height:1 !important;
  font-weight:850 !important;
  cursor:pointer !important;
}

.bp-classic-cart-wrap .bp-qty-stepper .bp-qty-input{
  flex:0 0 44px !important;
  width:44px !important;
  height:38px !important;
  min-height:38px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-left:1px solid #e6ebf3 !important;
  border-right:1px solid #e6ebf3 !important;
  border-radius:0 !important;
  background:#fff !important;
  text-align:center !important;
  line-height:38px !important;
  appearance:textfield !important;
  -moz-appearance:textfield !important;
}

.bp-classic-cart-wrap .bp-qty-stepper .bp-qty-input::-webkit-inner-spin-button,
.bp-classic-cart-wrap .bp-qty-stepper .bp-qty-input::-webkit-outer-spin-button{
  -webkit-appearance:none !important;
  margin:0 !important;
}

.bp-qty-stepper.is-loading{
  opacity:.55 !important;
  pointer-events:none !important;
}

/* One canonical checkout CTA rule.
   Real Woo markup contains p > a and an injected br. */
body.woocommerce-cart .bp-classic-cart-wrap .cart_totals .wc-proceed-to-checkout{
  width:100% !important;
  margin:18px 0 0 !important;
  padding:0 !important;
  float:none !important;
  clear:both !important;
}

body.woocommerce-cart .bp-classic-cart-wrap .cart_totals .wc-proceed-to-checkout > p{
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  float:none !important;
  text-align:center !important;
}

body.woocommerce-cart .bp-classic-cart-wrap .cart_totals .wc-proceed-to-checkout .checkout-button{
  position:static !important;
  inset:auto !important;
  transform:none !important;
  float:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:220px !important;
  min-width:220px !important;
  max-width:220px !important;
  height:48px !important;
  min-height:48px !important;
  max-height:48px !important;
  margin:0 !important;
  padding:0 18px !important;
  box-sizing:border-box !important;
  text-align:center !important;
  line-height:1 !important;
  white-space:nowrap !important;
}

body.woocommerce-cart .wc-proceed-to-checkout .checkout-button > br{
  display:none !important;
}

/* Responsive Cart: cards instead of a squeezed desktop table */
@media(max-width:767px){
  body.woocommerce-cart .bp-classic-cart-wrap{
    width:calc(100% - 20px) !important;
    padding:16px 0 34px !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .woocommerce,
  body.woocommerce-cart .bp-classic-cart-wrap form.woocommerce-cart-form,
  body.woocommerce-cart .bp-classic-cart-wrap table.shop_table_responsive,
  body.woocommerce-cart .bp-classic-cart-wrap table.shop_table_responsive tbody{
    display:block !important;
    width:100% !important;
    overflow:visible !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap table.shop_table_responsive thead{
    display:none !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap table.shop_table_responsive tr.cart_item{
    display:grid !important;
    grid-template-columns:34px 68px minmax(0,1fr) !important;
    grid-template-areas:
      "remove image name"
      "remove image price"
      "remove image qty"
      "remove image subtotal" !important;
    column-gap:10px !important;
    row-gap:7px !important;
    width:100% !important;
    margin:0 0 12px !important;
    padding:13px !important;
    box-sizing:border-box !important;
    background:#fff !important;
    border:1px solid #e3e9f2 !important;
    border-radius:14px !important;
    box-shadow:0 7px 20px rgba(20,48,96,.05) !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap tr.cart_item td{
    display:block !important;
    width:auto !important;
    padding:0 !important;
    border:0 !important;
    text-align:left !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap td.product-remove{grid-area:remove !important;align-self:center !important}
  body.woocommerce-cart .bp-classic-cart-wrap td.product-thumbnail{grid-area:image !important}
  body.woocommerce-cart .bp-classic-cart-wrap td.product-name{grid-area:name !important;align-self:end !important}
  body.woocommerce-cart .bp-classic-cart-wrap td.product-price{grid-area:price !important}
  body.woocommerce-cart .bp-classic-cart-wrap td.product-quantity{grid-area:qty !important;display:flex !important;justify-content:flex-start !important}
  body.woocommerce-cart .bp-classic-cart-wrap td.product-subtotal{grid-area:subtotal !important;font-weight:850 !important}

  body.woocommerce-cart .bp-classic-cart-wrap td.product-thumbnail img{
    width:64px !important;
    height:64px !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .bp-qty-stepper{
    margin:0 !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap td.actions{
    display:block !important;
    width:100% !important;
    padding:13px !important;
    box-sizing:border-box !important;
    border-radius:14px !important;
    background:#fff !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap td.actions .coupon{
    width:100% !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    gap:8px !important;
    float:none !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .coupon input.input-text{
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .cart-collaterals,
  body.woocommerce-cart .bp-classic-cart-wrap .cart_totals{
    width:100% !important;
    max-width:none !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .cart_totals{
    position:static !important;
    margin-top:14px !important;
    padding:18px !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .cart_totals .wc-proceed-to-checkout .checkout-button{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
  }
}



/* =========================================================
   0.2.19 CART COUPON / RESPONSIVE POLISH
========================================================= */

/* Success message — compact, clear, visually separate from cart content. */
body.woocommerce-cart .woocommerce-message{
  width:100% !important;
  margin:0 0 22px !important;
  padding:16px 18px 16px 52px !important;
  border:1px solid #c8d7ec !important;
  border-top:3px solid #0b3b97 !important;
  border-radius:12px !important;
  background:#fff !important;
  color:#29364b !important;
  box-shadow:0 6px 18px rgba(20,48,96,.04) !important;
  font-size:14px !important;
  line-height:1.4 !important;
}

body.woocommerce-cart .woocommerce-message::before{
  content:"✓" !important;
  width:24px !important;
  height:24px !important;
  display:grid !important;
  place-items:center !important;
  top:50% !important;
  left:16px !important;
  transform:translateY(-50%) !important;
  border-radius:50% !important;
  background:#78a915 !important;
  color:#fff !important;
  font-size:14px !important;
  font-weight:900 !important;
}

/* Once a coupon is applied, don't keep showing the coupon input.
   The totals card becomes the single source of truth for the applied discount. */
body.bp-cart-has-coupon.woocommerce-cart .coupon{
  display:none !important;
}

/* Applied discount row */
body.woocommerce-cart .cart_totals .cart-discount th{
  color:#5f6f86 !important;
  font-size:12px !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
  letter-spacing:.035em !important;
}

body.woocommerce-cart .cart_totals .cart-discount td{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:10px !important;
  flex-wrap:wrap !important;
}

body.woocommerce-cart .cart_totals .bp-discount-amount{
  color:#0b3b97 !important;
  font-size:16px !important;
  font-weight:850 !important;
  white-space:nowrap !important;
}

body.woocommerce-cart .cart_totals .bp-remove-coupon{
  color:#748198 !important;
  font-size:12px !important;
  font-weight:750 !important;
  text-decoration:underline !important;
  text-underline-offset:2px !important;
  white-space:nowrap !important;
}

body.woocommerce-cart .cart_totals .bp-remove-coupon:hover{
  color:#b42318 !important;
}

/* Coupon form when no coupon is active */
body.woocommerce-cart:not(.bp-cart-has-coupon) td.actions .coupon{
  display:grid !important;
  grid-template-columns:minmax(180px,1fr) auto !important;
  gap:8px !important;
  align-items:center !important;
  max-width:480px !important;
}

body.woocommerce-cart:not(.bp-cart-has-coupon) td.actions .coupon input.input-text{
  width:100% !important;
  min-width:0 !important;
}

/* Mobile sanity */
@media(max-width:767px){
  body.woocommerce-cart .woocommerce-message{
    margin-bottom:14px !important;
    padding:14px 14px 14px 46px !important;
    border-radius:10px !important;
    font-size:13px !important;
  }

  body.woocommerce-cart .woocommerce-message::before{
    left:13px !important;
  }

  body.woocommerce-cart:not(.bp-cart-has-coupon) td.actions .coupon{
    grid-template-columns:1fr !important;
    max-width:none !important;
  }

  body.woocommerce-cart:not(.bp-cart-has-coupon) td.actions .coupon .button{
    width:100% !important;
  }

  body.woocommerce-cart .cart_totals .cart-discount td{
    align-items:flex-end !important;
    flex-direction:column !important;
    gap:4px !important;
  }

  body.woocommerce-cart .cart_totals .bp-discount-amount{
    font-size:15px !important;
  }
}

/* Tablet / narrow desktop */
@media(min-width:768px) and (max-width:1100px){
  body.woocommerce-cart .bp-classic-cart-wrap .woocommerce{
    grid-template-columns:minmax(0,1fr) 320px !important;
    gap:18px !important;
  }

  body.woocommerce-cart .cart_totals .cart-discount td{
    gap:6px !important;
  }

  body.woocommerce-cart .cart_totals .bp-remove-coupon{
    font-size:11px !important;
  }
}


/* =========================================================
   0.2.20 CART CROSS-SELLS
========================================================= */
.bp-cart-cross-sells{
  width:min(calc(100% - 40px),1240px) !important;
  margin:0 auto 58px !important;
}

.bp-cart-cross-sells__head{
  margin:0 0 16px !important;
}

.bp-cart-cross-sells__head h2{
  margin:0 0 4px !important;
  color:#17243a !important;
  font-size:22px !important;
  line-height:1.2 !important;
  font-weight:850 !important;
}

.bp-cart-cross-sells__head p{
  margin:0 !important;
  color:#7a879a !important;
  font-size:13px !important;
}

.bp-cart-cross-sells__grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:14px !important;
}

.bp-cart-cross-sell{
  min-width:0 !important;
  overflow:hidden !important;
  background:#fff !important;
  border:1px solid #e3e9f2 !important;
  border-radius:13px !important;
  box-shadow:0 7px 22px rgba(20,48,96,.05) !important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease !important;
}

.bp-cart-cross-sell:hover{
  transform:translateY(-2px) !important;
  border-color:#cad8ec !important;
  box-shadow:0 13px 28px rgba(20,48,96,.09) !important;
}

.bp-cart-cross-sell__image{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  aspect-ratio:1.18 / 1 !important;
  padding:7px !important;
  background:#fafbfd !important;
  overflow:hidden !important;
}

.bp-cart-cross-sell__image img{
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  object-fit:contain !important;
}

.bp-cart-cross-sell__body{
  padding:12px !important;
}

.bp-cart-cross-sell__title{
  display:block !important;
  min-height:38px !important;
  margin:0 0 9px !important;
  color:#0b3b97 !important;
  font-size:14px !important;
  line-height:1.35 !important;
  font-weight:800 !important;
  text-decoration:none !important;
}

.bp-cart-cross-sell__footer{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:8px !important;
}

.bp-cart-cross-sell__price{
  min-height:34px !important;
  display:inline-flex !important;
  align-items:center !important;
  padding:0 10px !important;
  border-radius:7px !important;
  background:#0b3b97 !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:850 !important;
  white-space:nowrap !important;
}

.bp-cart-cross-sell__price *,
.bp-cart-cross-sell__price .woocommerce-Price-amount,
.bp-cart-cross-sell__price .woocommerce-Price-currencySymbol{
  color:#fff !important;
}

.bp-cart-cross-sell__button{
  min-height:34px !important;
  height:34px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  padding:0 10px !important;
  border-radius:7px !important;
  background:#0b3b97 !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:800 !important;
  white-space:nowrap !important;
}

@media(max-width:900px){
  .bp-cart-cross-sells__grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:767px){
  .bp-cart-cross-sells{
    width:calc(100% - 20px) !important;
    margin-bottom:36px !important;
  }

  .bp-cart-cross-sells__head h2{
    font-size:19px !important;
  }

  .bp-cart-cross-sells__grid{
    gap:10px !important;
  }

  .bp-cart-cross-sell__body{
    padding:9px !important;
  }

  .bp-cart-cross-sell__title{
    min-height:34px !important;
    font-size:12px !important;
  }

  .bp-cart-cross-sell__footer{
    gap:5px !important;
  }

  .bp-cart-cross-sell__price,
  .bp-cart-cross-sell__button{
    min-height:32px !important;
    height:32px !important;
    padding-left:7px !important;
    padding-right:7px !important;
    font-size:11px !important;
  }
}


/* =========================================================
   0.2.21 FREE SHIPPING PROGRESS
========================================================= */
.bp-free-shipping-progress{
  width:100% !important;
  margin:0 0 18px !important;
  padding:14px 16px !important;
  border:1px solid #d8e2f0 !important;
  border-radius:12px !important;
  background:#fff !important;
  box-shadow:0 6px 18px rgba(20,48,96,.045) !important;
}

.bp-free-shipping-progress__top{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:10px !important;
  margin-bottom:10px !important;
}

.bp-free-shipping-progress__icon{
  width:28px !important;
  height:28px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:8px !important;
  background:#eef4ff !important;
  color:#0b3b97 !important;
  font-size:15px !important;
  line-height:1 !important;
}

.bp-free-shipping-progress__text{
  min-width:0 !important;
  color:#44536a !important;
  font-size:13px !important;
  line-height:1.35 !important;
}

.bp-free-shipping-progress__text strong{
  color:#0b3b97 !important;
  font-weight:850 !important;
}

.bp-free-shipping-progress__goal{
  color:#7b889a !important;
  font-size:12px !important;
  font-weight:800 !important;
  white-space:nowrap !important;
}

.bp-free-shipping-progress__track{
  width:100% !important;
  height:8px !important;
  overflow:hidden !important;
  border-radius:999px !important;
  background:#eaf0f8 !important;
}

.bp-free-shipping-progress__bar{
  display:block !important;
  height:100% !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,#0b3b97,#2366d1) !important;
  transition:width .25s ease !important;
}

.bp-free-shipping-progress.is-complete{
  border-color:#bedbc6 !important;
  background:#fbfffc !important;
}

.bp-free-shipping-progress.is-complete .bp-free-shipping-progress__icon{
  background:#e9f7ed !important;
  color:#278044 !important;
}

.bp-free-shipping-progress.is-complete .bp-free-shipping-progress__bar{
  background:#2f8b4d !important;
}

/* Cart placement: progress should span the totals column cleanly. */
body.woocommerce-cart .bp-classic-cart-wrap .cart-collaterals > .bp-free-shipping-progress{
  margin-bottom:14px !important;
}

/* Checkout version is intentionally compact and aligned with checkout width. */
body.woocommerce-checkout .bp-free-shipping-progress{
  margin-bottom:16px !important;
}

/* When shipping becomes free, make zero-price shipping feel intentional. */
body.woocommerce-checkout .woocommerce-shipping-methods .amount:empty::after,
body.woocommerce-cart .woocommerce-shipping-methods .amount:empty::after{
  content:"Nemokamai";
  color:#278044;
  font-weight:850;
}

@media(max-width:767px){
  .bp-free-shipping-progress{
    padding:12px !important;
    margin-bottom:12px !important;
  }

  .bp-free-shipping-progress__top{
    grid-template-columns:auto minmax(0,1fr) !important;
    gap:8px !important;
  }

  .bp-free-shipping-progress__goal{
    grid-column:2 !important;
    justify-self:start !important;
    margin-top:-2px !important;
  }

  .bp-free-shipping-progress__text{
    font-size:12px !important;
  }

  .bp-free-shipping-progress__track{
    height:7px !important;
  }
}

/* =========================================================
   0.2.23 CART FREE SHIPPING PLACEMENT
   Full-width progress bar above product table + totals.
========================================================= */

/* Cart page outer container: progress spans the full content width */
body.woocommerce-cart .bp-classic-cart-wrap > .bp-free-shipping-progress,
body.woocommerce-cart .bp-classic-cart-wrap .woocommerce > .bp-free-shipping-progress{
  width:100% !important;
  max-width:none !important;
  margin:0 0 18px !important;
  box-sizing:border-box !important;
}

/* Keep the original desktop 2-column cart structure:
   products left, totals right. */
@media(min-width:768px){
  body.woocommerce-cart .bp-classic-cart-wrap .woocommerce{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 360px !important;
    grid-template-areas:
      "progress progress"
      "notices notices"
      "form totals" !important;
    gap:18px 28px !important;
    align-items:start !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .woocommerce > .bp-free-shipping-progress{
    grid-area:progress !important;
    margin:0 !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .woocommerce-notices-wrapper{
    grid-area:notices !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .woocommerce-cart-form{
    grid-area:form !important;
    width:100% !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .cart-collaterals{
    grid-area:totals !important;
    width:100% !important;
    margin:0 !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .cart_totals{
    width:100% !important;
    margin:0 !important;
  }
}

/* Mobile: progress first, then cart, then totals. */
@media(max-width:767px){
  body.woocommerce-cart .bp-classic-cart-wrap .woocommerce{
    display:block !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .woocommerce > .bp-free-shipping-progress{
    margin-bottom:12px !important;
  }
}

/* =========================================================
   0.2.25 MY ACCOUNT
========================================================= */
body.woocommerce-account .site-main{
  background:#f4f7fb !important;
  min-height:calc(100vh - 160px) !important;
}

body.woocommerce-account .site-main > .bp-container,
body.woocommerce-account .woocommerce{
  width:min(calc(100% - 32px),1180px) !important;
  margin:0 auto !important;
}

body.woocommerce-account .woocommerce{
  display:grid !important;
  grid-template-columns:250px minmax(0,1fr) !important;
  gap:24px !important;
  padding:42px 0 60px !important;
}

body.woocommerce-account .woocommerce > h2{
  grid-column:1 / -1 !important;
  margin:0 0 -4px !important;
  color:#17243a !important;
  font-size:30px !important;
  font-weight:850 !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation{
  width:100% !important;
  float:none !important;
  align-self:start !important;
  overflow:hidden !important;
  border:1px solid #e0e7f1 !important;
  border-radius:14px !important;
  background:#fff !important;
  box-shadow:0 8px 24px rgba(20,48,96,.05) !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul{
  list-style:none !important;
  margin:0 !important;
  padding:8px !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li{
  margin:0 !important;
  padding:0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li::marker{
  content:"" !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation a{
  display:flex !important;
  align-items:center !important;
  min-height:44px !important;
  margin:2px 0 !important;
  padding:0 13px !important;
  border-radius:9px !important;
  color:#526176 !important;
  font-size:14px !important;
  font-weight:750 !important;
  text-decoration:none !important;
  transition:background .15s ease,color .15s ease !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation a:hover{
  background:#f1f5fb !important;
  color:#0b3b97 !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{
  background:#0b3b97 !important;
  color:#fff !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout{
  margin-top:8px !important;
  border-top:1px solid #e8edf4 !important;
  padding-top:7px !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a{
  color:#a32929 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content{
  width:100% !important;
  float:none !important;
  min-width:0 !important;
  padding:26px 28px !important;
  box-sizing:border-box !important;
  border:1px solid #e0e7f1 !important;
  border-radius:14px !important;
  background:#fff !important;
  box-shadow:0 8px 24px rgba(20,48,96,.05) !important;
  color:#425069 !important;
  font-size:15px !important;
  line-height:1.65 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content > p:first-child{
  margin-top:0 !important;
  font-size:16px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content a{
  color:#0b3b97 !important;
  font-weight:700 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table,
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table{
  overflow:hidden !important;
  border:1px solid #e3e9f2 !important;
  border-radius:10px !important;
  background:#fff !important;
}

body.woocommerce-account .woocommerce-MyAccount-content input,
body.woocommerce-account .woocommerce-MyAccount-content select,
body.woocommerce-account .woocommerce-MyAccount-content textarea{
  min-height:46px !important;
  border:1px solid #dce4ee !important;
  border-radius:9px !important;
  background:#fff !important;
}

body.woocommerce-account .woocommerce-MyAccount-content button,
body.woocommerce-account .woocommerce-MyAccount-content .button{
  min-height:42px !important;
  padding:0 16px !important;
  border-radius:8px !important;
  background:#0b3b97 !important;
  color:#fff !important;
  font-weight:800 !important;
}

/* =========================================================
   0.2.27 CHECKOUT — CANONICAL NATIVE LAYOUT
========================================================= */

/* CommerceOps controls visibility/logic; theme owns layout only. */
body.woocommerce-checkout .bpm-field-hidden,
body.woocommerce-checkout .bpm-no-layout-space{
  display:none !important;
}

body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .shipping_address .woocommerce-shipping-fields__field-wrapper{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:15px 18px !important;
}

body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row,
body.woocommerce-checkout .shipping_address .woocommerce-shipping-fields__field-wrapper > .form-row{
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  float:none !important;
  clear:none !important;
  grid-column:auto !important;
  grid-row:auto !important;
}

/* Billing pairs */
body.woocommerce-checkout #billing_first_name_field{order:10 !important;grid-column:1 !important}
body.woocommerce-checkout #billing_last_name_field{order:20 !important;grid-column:2 !important}
body.woocommerce-checkout #billing_email_field{order:30 !important;grid-column:1 !important}
body.woocommerce-checkout #billing_phone_field{order:40 !important;grid-column:2 !important}
body.woocommerce-checkout #billing_address_1_field{order:50 !important;grid-column:1 !important}
body.woocommerce-checkout #billing_address_2_field{order:60 !important;grid-column:2 !important}
body.woocommerce-checkout #billing_city_field{order:70 !important;grid-column:1 !important}
body.woocommerce-checkout #billing_postcode_field{order:80 !important;grid-column:2 !important}

/* Different shipping address:
   Vardas | Pavardė
   Gatvė  | Buto/bloko nr.
   Miestas| Pašto kodas */
body.woocommerce-checkout #shipping_first_name_field{order:10 !important;grid-column:1 !important}
body.woocommerce-checkout #shipping_last_name_field{order:20 !important;grid-column:2 !important}
body.woocommerce-checkout #shipping_address_1_field{order:30 !important;grid-column:1 !important}
body.woocommerce-checkout #shipping_address_2_field{order:40 !important;grid-column:2 !important}
body.woocommerce-checkout #shipping_city_field{order:50 !important;grid-column:1 !important}
body.woocommerce-checkout #shipping_postcode_field{order:60 !important;grid-column:2 !important}

/* Unsupported/duplicate shipping fields are never allowed to occupy grid cells. */
body.woocommerce-checkout #shipping_phone_field,
body.woocommerce-checkout #shipping_company_field,
body.woocommerce-checkout #shipping_country_field,
body.woocommerce-checkout #shipping_state_field{
  display:none !important;
}

/* Address 2 must have a real visible label. */
body.woocommerce-checkout #billing_address_2_field > label,
body.woocommerce-checkout #shipping_address_2_field > label{
  display:block !important;
  width:100% !important;
  height:auto !important;
  position:static !important;
  overflow:visible !important;
  clip:auto !important;
  clip-path:none !important;
  margin:0 0 7px !important;
}

/* Different-address control */
body.woocommerce-checkout #ship-to-different-address{
  margin:22px 0 0 !important;
  padding:18px 0 0 !important;
  border-top:1px solid #e5ebf3 !important;
}

body.woocommerce-checkout #ship-to-different-address label{
  display:inline-flex !important;
  align-items:center !important;
  gap:10px !important;
  margin:0 !important;
  color:#17243a !important;
  font-size:16px !important;
  line-height:1.3 !important;
  font-weight:850 !important;
  cursor:pointer !important;
}

body.woocommerce-checkout #ship-to-different-address-checkbox{
  width:18px !important;
  height:18px !important;
  flex:0 0 18px !important;
  margin:0 !important;
}

body.woocommerce-checkout .shipping_address{
  margin-top:14px !important;
  padding:18px !important;
  border:1px solid #e1e7f0 !important;
  border-radius:12px !important;
  background:#f9fbfe !important;
}

/* Venipak shipping choices */
body.woocommerce-checkout #order_review tr.bpm-shipping-row > td{
  width:100% !important;
  padding:10px 0 14px !important;
}

body.woocommerce-checkout #order_review .woocommerce-shipping-methods,
body.woocommerce-checkout #order_review .woocommerce-shipping-methods > li{
  width:100% !important;
  max-width:none !important;
  box-sizing:border-box !important;
}

body.woocommerce-checkout #order_review .woocommerce-shipping-methods > li{
  display:grid !important;
  grid-template-columns:18px minmax(0,1fr) !important;
  column-gap:8px !important;
  row-gap:8px !important;
  align-items:start !important;
}

body.woocommerce-checkout #order_review .woocommerce-shipping-methods > li > input[type="radio"]{
  grid-column:1 !important;
  grid-row:1 !important;
  margin-top:3px !important;
}

body.woocommerce-checkout #order_review .woocommerce-shipping-methods > li > label{
  grid-column:2 !important;
  grid-row:1 !important;
  width:100% !important;
  min-width:0 !important;
}

body.woocommerce-checkout #order_review .bpm-venipak-pickup-ui{
  grid-column:1 / -1 !important;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  margin:6px 0 0 !important;
  padding:10px 0 0 !important;
  box-sizing:border-box !important;
}

body.woocommerce-checkout #order_review .bpm-venipak-pickup-ui,
body.woocommerce-checkout #order_review .bpm-venipak-pickup-ui > *,
body.woocommerce-checkout #order_review .bpm-venipak-pickup-ui select,
body.woocommerce-checkout #order_review .bpm-venipak-pickup-ui .select2-container,
body.woocommerce-checkout #order_review .bpm-venipak-pickup-ui .select2-selection{
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  box-sizing:border-box !important;
}

/* Single payment method: no generic Woo explanation bubble. */
body.woocommerce-checkout #payment li.bpm-single-payment-method .payment_box{
  display:none !important;
}
body.woocommerce-checkout #payment li.bpm-single-payment-method{
  margin:0 !important;
  padding:0 !important;
}
body.woocommerce-checkout #payment li.bpm-single-payment-method > input[type="radio"]{
  display:none !important;
}
body.woocommerce-checkout #payment li.bpm-single-payment-method > label{
  display:block !important;
  margin:0 0 12px !important;
  padding:0 !important;
  color:#17243a !important;
  font-size:14px !important;
  font-weight:850 !important;
}

/* Generic Woo privacy/terms remain intentionally omitted. */
body.woocommerce-checkout .woocommerce-privacy-policy-text,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{
  display:none !important;
}

/* Research-use confirmation — dedicated compact card */
body.woocommerce-checkout .bpm-compliance-confirmation{
  display:block !important;
  margin:14px 0 16px !important;
  padding:15px !important;
  border:1px solid #dce5f1 !important;
  border-radius:12px !important;
  background:#fff !important;
  box-shadow:0 6px 16px rgba(20,48,96,.045) !important;
}

body.woocommerce-checkout .bpm-compliance-head{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  margin:0 0 13px !important;
  padding-bottom:12px !important;
  border-bottom:1px solid #e8edf4 !important;
}

body.woocommerce-checkout .bpm-compliance-icon{
  flex:0 0 32px !important;
  width:32px !important;
  height:32px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:9px !important;
  background:#eaf2ff !important;
  color:#0b3b97 !important;
  font-size:17px !important;
  font-weight:900 !important;
}

body.woocommerce-checkout .bpm-compliance-title{
  color:#17243a !important;
  font-size:14px !important;
  line-height:1.25 !important;
  font-weight:900 !important;
}

body.woocommerce-checkout .bpm-compliance-subtitle{
  margin-top:2px !important;
  color:#7b8799 !important;
  font-size:11px !important;
  line-height:1.3 !important;
  font-weight:650 !important;
}

body.woocommerce-checkout .bpm-compliance-label{
  display:grid !important;
  grid-template-columns:20px minmax(0,1fr) !important;
  gap:10px !important;
  align-items:start !important;
  margin:0 !important;
  cursor:pointer !important;
}

body.woocommerce-checkout .bpm-compliance-label input{
  width:18px !important;
  height:18px !important;
  margin:2px 0 0 !important;
}

body.woocommerce-checkout .bpm-compliance-text{
  color:#45536a !important;
  font-size:12px !important;
  line-height:1.5 !important;
  font-weight:650 !important;
}

body.woocommerce-checkout .bpm-compliance-text a{
  display:inline-block !important;
  margin-left:4px !important;
  color:#0b3b97 !important;
  font-weight:800 !important;
  text-decoration:underline !important;
  text-underline-offset:2px !important;
}

body.woocommerce-checkout .bpm-compliance-error{
  display:none !important;
  margin:9px 0 0 30px !important;
  color:#b42318 !important;
  font-size:11px !important;
  line-height:1.35 !important;
  font-weight:800 !important;
}

body.woocommerce-checkout .bpm-compliance-confirmation.bpm-compliance-invalid{
  border-color:#e6aaa5 !important;
  background:#fffafa !important;
}

body.woocommerce-checkout .bpm-compliance-confirmation.bpm-compliance-invalid .bpm-compliance-error{
  display:block !important;
}

/* Company + notes */
body.woocommerce-checkout .bpm-company-purchase,
body.woocommerce-checkout .bpm-notes-toggle{
  position:relative !important;
  z-index:2 !important;
}

/* Contact shortcode retained here as part of native storefront UI. */
.bpm-contact-form{
  max-width:760px !important;
  margin:0 auto !important;
}
.bpm-contact-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px !important;
}
.bpm-contact-grid p{
  margin:0 !important;
}
.bpm-contact-grid label{
  display:block !important;
  margin-bottom:7px !important;
  font-weight:750 !important;
}
.bpm-contact-wide{
  grid-column:1 / -1 !important;
}
.bpm-contact-form input,
.bpm-contact-form textarea{
  width:100% !important;
  box-sizing:border-box !important;
  border:1px solid #dce4ee !important;
  border-radius:9px !important;
  padding:12px !important;
}
.bpm-contact-form button{
  margin-top:16px !important;
  min-height:44px !important;
  padding:0 18px !important;
  border:0 !important;
  border-radius:8px !important;
  background:#0b3b97 !important;
  color:#fff !important;
  font-weight:800 !important;
}
.bpm-hp{
  position:absolute !important;
  left:-9999px !important;
}

@media(max-width:767px){
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .shipping_address .woocommerce-shipping-fields__field-wrapper,
  .bpm-contact-grid{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row,
  body.woocommerce-checkout .shipping_address .woocommerce-shipping-fields__field-wrapper > .form-row,
  body.woocommerce-checkout #billing_first_name_field,
  body.woocommerce-checkout #billing_last_name_field,
  body.woocommerce-checkout #billing_email_field,
  body.woocommerce-checkout #billing_phone_field,
  body.woocommerce-checkout #billing_address_1_field,
  body.woocommerce-checkout #billing_address_2_field,
  body.woocommerce-checkout #billing_city_field,
  body.woocommerce-checkout #billing_postcode_field,
  body.woocommerce-checkout #shipping_first_name_field,
  body.woocommerce-checkout #shipping_last_name_field,
  body.woocommerce-checkout #shipping_address_1_field,
  body.woocommerce-checkout #shipping_address_2_field,
  body.woocommerce-checkout #shipping_city_field,
  body.woocommerce-checkout #shipping_postcode_field,
  .bpm-contact-wide{
    grid-column:1 !important;
    grid-row:auto !important;
  }

  body.woocommerce-checkout .shipping_address{
    padding:13px !important;
  }

  body.woocommerce-checkout .bpm-compliance-confirmation{
    padding:13px !important;
  }
}

/* =========================================================
   0.2.28 ISOLATED THANK YOU PAGE
========================================================= */
body.bp-order-received-page,
body.woocommerce-order-received{
  background:#f4f7fb !important;
}

body.bp-order-received-page .site-main,
body.woocommerce-order-received .site-main{
  min-height:70vh !important;
  background:#f4f7fb !important;
}

/* Kill every checkout-only fragment if another extension tries to inject it. */
body.bp-order-received-page form.checkout,
body.bp-order-received-page .woocommerce-checkout,
body.bp-order-received-page .bp-checkout-trust,
body.bp-order-received-page .bpm-mobile-trust-bar,
body.bp-order-received-page .bp-free-shipping-progress,
body.bp-order-received-page #customer_details,
body.bp-order-received-page #order_review,
body.bp-order-received-page #order_review_heading,
body.woocommerce-order-received form.checkout,
body.woocommerce-order-received .bp-checkout-trust,
body.woocommerce-order-received .bpm-mobile-trust-bar,
body.woocommerce-order-received .bp-free-shipping-progress{
  display:none !important;
}

.bp-order-received-shell{
  width:min(calc(100% - 32px),980px) !important;
  margin:0 auto !important;
  padding:40px 0 62px !important;
}

.bp-order-received-shell .bpm-thankyou-box{
  width:100% !important;
  margin:0 0 18px !important;
  padding:28px !important;
  box-sizing:border-box !important;
  border:1px solid #dce5f1 !important;
  border-radius:18px !important;
  background:#fff !important;
  box-shadow:0 14px 38px rgba(20,48,96,.07) !important;
}

.bp-order-received-shell .bpm-thankyou-title{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  margin:0 0 8px !important;
  color:#17243a !important;
  font-size:28px !important;
  line-height:1.2 !important;
  font-weight:900 !important;
}

.bp-order-received-shell .bpm-thankyou-check{
  flex:0 0 32px !important;
  width:32px !important;
  height:32px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:50% !important;
  background:#eaf8ef !important;
  color:#268444 !important;
  font-size:18px !important;
  font-weight:900 !important;
}

.bp-order-received-shell .bpm-order-status{
  display:inline-flex !important;
  align-items:center !important;
  min-height:34px !important;
  margin:4px 0 13px !important;
  padding:0 11px !important;
  border:1px solid #cce2d2 !important;
  border-radius:999px !important;
  background:#f0faf3 !important;
  color:#2f6940 !important;
  font-size:12px !important;
  font-weight:850 !important;
}

.bp-order-received-shell .bpm-awaiting{
  margin:0 0 12px !important;
  padding:13px 15px !important;
  border-left:4px solid #0b3b97 !important;
  border-radius:9px !important;
  background:#f3f7fd !important;
  color:#35455e !important;
  font-size:13px !important;
  line-height:1.5 !important;
}

.bp-order-received-shell .bpm-thankyou-subtitle{
  margin:0 0 20px !important;
  color:#65748a !important;
  font-size:14px !important;
  line-height:1.5 !important;
}

.bp-order-received-shell .bpm-bank-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
  margin:0 0 18px !important;
}

.bp-order-received-shell .bpm-bank-card{
  min-width:0 !important;
  padding:15px !important;
  border:1px solid #e0e7f0 !important;
  border-radius:12px !important;
  background:#f8faff !important;
}

.bp-order-received-shell .bpm-bank-card.bpm-wide{
  grid-column:1 / -1 !important;
}

.bp-order-received-shell .bpm-bank-label{
  margin:0 0 6px !important;
  color:#7c889a !important;
  font-size:11px !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:.05em !important;
}

.bp-order-received-shell .bpm-bank-value{
  color:#17243a !important;
  font-size:18px !important;
  line-height:1.35 !important;
  font-weight:900 !important;
  overflow-wrap:anywhere !important;
}

.bp-order-received-shell .bpm-copy-btn{
  min-height:36px !important;
  margin-top:9px !important;
  padding:0 12px !important;
  border:0 !important;
  border-radius:8px !important;
  background:#0b3b97 !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:850 !important;
  cursor:pointer !important;
}

.bp-order-received-shell .bpm-important,
.bp-order-received-shell .bpm-fee-warning,
.bp-order-received-shell .bpm-shipping-info,
.bp-order-received-shell .bpm-help-box{
  margin:11px 0 !important;
  padding:13px 14px !important;
  border:1px solid #e1e7f0 !important;
  border-left:4px solid #0b3b97 !important;
  border-radius:10px !important;
  background:#f8faff !important;
  color:#46556d !important;
  font-size:13px !important;
  line-height:1.55 !important;
}

.bp-order-received-shell .bpm-fee-warning{
  border-left-color:#d3a000 !important;
  background:#fff9e9 !important;
}

.bp-order-received-shell .bpm-next-steps{
  margin-top:18px !important;
  padding-top:16px !important;
  border-top:1px solid #e7edf5 !important;
}

.bp-order-received-shell .bpm-next-steps h3{
  margin:0 0 10px !important;
  color:#17243a !important;
  font-size:18px !important;
  font-weight:900 !important;
}

.bp-order-received-shell .bpm-next-step{
  margin:6px 0 !important;
  color:#526177 !important;
  font-size:13px !important;
  line-height:1.45 !important;
}

.bp-order-received-shell .woocommerce-order-details,
.bp-order-received-shell .woocommerce-customer-details{
  width:100% !important;
  margin:18px 0 0 !important;
  padding:22px !important;
  box-sizing:border-box !important;
  border:1px solid #dfe6f0 !important;
  border-radius:16px !important;
  background:#fff !important;
  box-shadow:0 10px 28px rgba(20,48,96,.05) !important;
}

.bp-order-received-shell table.shop_table{
  width:100% !important;
  border:0 !important;
}

.bp-order-received-shell table.shop_table th,
.bp-order-received-shell table.shop_table td{
  padding:11px 8px !important;
  border:0 !important;
  border-bottom:1px solid #e9eef5 !important;
  font-size:13px !important;
}

/* Emoji replacement images can never expand on order received. */
.bp-order-received-shell img.emoji,
.bp-order-received-shell img.wp-smiley,
body.woocommerce-order-received img.emoji,
body.woocommerce-order-received img.wp-smiley{
  display:inline !important;
  width:1em !important;
  height:1em !important;
  min-width:0 !important;
  max-width:1em !important;
  min-height:0 !important;
  max-height:1em !important;
  margin:0 .08em !important;
  object-fit:contain !important;
  vertical-align:-.1em !important;
}

@media(max-width:767px){
  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review_heading{
    padding:18px 16px 6px !important;
    font-size:19px !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review{
    padding:7px 16px 18px !important;
  }

  .bp-order-received-shell{
    width:calc(100% - 20px) !important;
    padding:20px 0 38px !important;
  }

  .bp-order-received-shell .bpm-thankyou-box,
  .bp-order-received-shell .woocommerce-order-details,
  .bp-order-received-shell .woocommerce-customer-details{
    padding:16px !important;
    border-radius:13px !important;
  }

  .bp-order-received-shell .bpm-thankyou-title{
    font-size:22px !important;
  }

  .bp-order-received-shell .bpm-bank-grid{
    grid-template-columns:1fr !important;
  }

  .bp-order-received-shell .bpm-bank-card.bpm-wide{
    grid-column:auto !important;
  }

  .bp-order-received-shell .bpm-copy-btn{
    width:100% !important;
  }
}

/* =========================================================
   0.2.32 CHECKOUT + THANK YOU — CANONICAL
========================================================= */

/* Preserve checkout fixes from previous build */
@media(max-width:782px){
  body.admin-bar .bp-header{top:46px !important}
  #wpadminbar .ab-sub-wrapper{max-width:100vw !important}
}

body.woocommerce-checkout:not(.woocommerce-order-received) .shipping_address{
  margin:10px 0 0 !important;
  padding:16px !important;
  border:1px solid #e1e7f0 !important;
  border-radius:12px !important;
  background:#f9fbfe !important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) .shipping_address .woocommerce-shipping-fields__field-wrapper{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:15px 18px !important;
  margin:0 !important;
  padding:0 !important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #shipping_country_field,
body.woocommerce-checkout:not(.woocommerce-order-received) #shipping_state_field,
body.woocommerce-checkout:not(.woocommerce-order-received) #shipping_company_field,
body.woocommerce-checkout:not(.woocommerce-order-received) #shipping_phone_field{
  display:none !important;position:absolute !important;width:0 !important;height:0 !important;
  min-height:0 !important;margin:0 !important;padding:0 !important;overflow:hidden !important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #shipping_first_name_field{grid-column:1 !important;order:10 !important}
body.woocommerce-checkout:not(.woocommerce-order-received) #shipping_last_name_field{grid-column:2 !important;order:20 !important}
body.woocommerce-checkout:not(.woocommerce-order-received) #shipping_address_1_field{grid-column:1 !important;order:30 !important}
body.woocommerce-checkout:not(.woocommerce-order-received) #shipping_address_2_field{grid-column:2 !important;order:40 !important}
body.woocommerce-checkout:not(.woocommerce-order-received) #shipping_city_field{grid-column:1 !important;order:50 !important}
body.woocommerce-checkout:not(.woocommerce-order-received) #shipping_postcode_field{grid-column:2 !important;order:60 !important}

body.woocommerce-checkout:not(.woocommerce-order-received) #order_review_heading{
  margin:0 !important;padding:20px 22px 8px !important;
  border:1px solid #e0e7f1 !important;border-bottom:0 !important;
  border-radius:14px 14px 0 0 !important;background:#fff !important;
  color:#17243a !important;font-size:21px !important;font-weight:900 !important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review{
  min-width:0 !important;margin:0 !important;padding:6px 22px 20px !important;
  overflow:hidden !important;border:1px solid #e0e7f1 !important;border-top:0 !important;
  border-radius:0 0 14px 14px !important;background:#fff !important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review table.shop_table td,
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review table.shop_table th{
  border-top:0 !important;border-bottom:0 !important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review .bpm-venipak-pickup-ui,
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review .bpm-venipak-pickup-ui > *,
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review .bpm-venipak-pickup-ui select,
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review .bpm-venipak-pickup-ui .select2-container,
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review .bpm-venipak-pickup-ui .select2-selection{
  width:100% !important;min-width:0 !important;max-width:100% !important;box-sizing:border-box !important;
}
body.woocommerce-checkout .bpm-venipak-pickup-ui.bpm-venipak-invalid{
  margin-top:8px !important;padding:10px !important;border:1px solid #e2493e !important;
  border-radius:10px !important;background:#fff8f7 !important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #payment li.bpm-single-payment-method > input[type="radio"],
body.woocommerce-checkout:not(.woocommerce-order-received) #payment li.bpm-single-payment-method > label,
body.woocommerce-checkout:not(.woocommerce-order-received) #payment li.bpm-single-payment-method .payment_box{
  display:none !important;
}

/* ---------- Thank You ---------- */
body.bp-order-received-page,
body.woocommerce-order-received{background:#f3f6fb !important}
.bp-order-received-main{background:#f3f6fb !important;min-height:70vh !important}
.bp-order-received-shell{
  width:min(calc(100% - 32px),1160px) !important;
  margin:0 auto !important;
  padding:40px 0 70px !important;
}

.bp-order-received-shell .bpm-thankyou-box{
  position:relative !important;
  overflow:hidden !important;
  margin:0 0 22px !important;
  padding:38px !important;
  border:1px solid #dce5f1 !important;
  border-radius:22px !important;
  background:#fff !important;
  box-shadow:0 18px 48px rgba(25,52,96,.08) !important;
}
.bp-order-received-shell .bpm-thankyou-box::before{
  content:"" !important;
  position:absolute !important;
  inset:0 auto 0 0 !important;
  width:6px !important;
  background:linear-gradient(180deg,#0b3b97,#2f6edb) !important;
}

/* Status left, main title right */
.bp-order-received-shell .bpm-thankyou-hero{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
  margin-bottom:18px !important;
}
.bp-order-received-shell .bpm-order-status{
  order:1 !important;
  display:inline-flex !important;
  padding:9px 13px !important;
  border:1px solid #cce2d2 !important;
  border-radius:999px !important;
  background:#eef9f1 !important;
  color:#2d7042 !important;
  font-size:13px !important;
  font-weight:850 !important;
  white-space:nowrap !important;
}
.bp-order-received-shell .bpm-thankyou-title{
  order:2 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:10px !important;
  margin:0 !important;
  color:#14233a !important;
  font-size:34px !important;
  line-height:1.15 !important;
  font-weight:900 !important;
  text-align:right !important;
}
.bp-order-received-shell .bpm-thankyou-check{
  width:40px !important;height:40px !important;flex:0 0 40px !important;
  display:grid !important;place-items:center !important;
  border-radius:50% !important;
  background:#eaf8ef !important;color:#268444 !important;
  font-size:22px !important;font-weight:900 !important;
}

/* One full-width blue information strip */
.bp-order-received-shell .bpm-awaiting{
  max-width:none !important;
  width:100% !important;
  box-sizing:border-box !important;
  margin:0 0 28px !important;
  padding:16px 20px !important;
  border:1px solid #cdddf5 !important;
  border-radius:12px !important;
  background:#edf4ff !important;
  color:#314768 !important;
  font-size:14px !important;
  line-height:1.55 !important;
  text-align:center !important;
}

/* Payment details */
.bp-order-received-shell .bpm-payment-section-title{
  display:flex !important;
  align-items:flex-end !important;
  justify-content:space-between !important;
  gap:16px !important;
  margin:0 0 13px !important;
}
.bp-order-received-shell .bpm-payment-section-title span{
  color:#17243a !important;font-size:21px !important;font-weight:900 !important;
}
.bp-order-received-shell .bpm-payment-section-title small{
  color:#7c889a !important;font-size:12px !important;
}
.bp-order-received-shell .bpm-bank-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
  margin:0 0 14px !important;
}
.bp-order-received-shell .bpm-bank-card{
  min-width:0 !important;
  padding:18px !important;
  border:1px solid #e0e7f0 !important;
  border-radius:14px !important;
  background:#f8faff !important;
}
.bp-order-received-shell .bpm-bank-label{
  margin:0 0 8px !important;
  color:#7c889a !important;
  font-size:11px !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:.055em !important;
}
.bp-order-received-shell .bpm-bank-value{
  color:#17243a !important;
  font-size:20px !important;
  line-height:1.35 !important;
  font-weight:900 !important;
  overflow-wrap:anywhere !important;
}
.bp-order-received-shell .bpm-bank-value--mono{
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace !important;
}
.bp-order-received-shell .bpm-copy-btn{
  min-height:38px !important;
  margin-top:12px !important;
  padding:0 14px !important;
  border:0 !important;
  border-radius:9px !important;
  background:#0b3b97 !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:850 !important;
  cursor:pointer !important;
}
.bp-order-received-shell .bpm-copy-btn:hover{background:#082f7d !important;transform:translateY(-1px) !important}
.bp-order-received-shell .bpm-copy-btn.is-copied{background:#287d45 !important}

.bp-order-received-shell .bpm-bank-meta{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
  margin:0 0 14px !important;
}
.bp-order-received-shell .bpm-bank-meta > div{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px !important;
  padding:12px 15px !important;
  border:1px solid #e6ebf2 !important;
  border-radius:11px !important;
  background:#fff !important;
}
.bp-order-received-shell .bpm-bank-meta span{color:#7b8798 !important;font-size:12px !important}
.bp-order-received-shell .bpm-bank-meta strong{color:#17243a !important;font-size:14px !important}

/* Amount due: same visual language as blue payment cards, not red */
.bp-order-received-shell .bpm-payment-total{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
  margin:0 0 16px !important;
  padding:22px !important;
  border:1px solid #cbdcf5 !important;
  border-radius:14px !important;
  background:#eef4ff !important;
}
.bp-order-received-shell .bpm-payment-total > div{
  display:flex !important;
  align-items:baseline !important;
  gap:18px !important;
}
.bp-order-received-shell .bpm-payment-total span{
  color:#49617f !important;
  font-size:13px !important;
  font-weight:850 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
}
.bp-order-received-shell .bpm-payment-total strong{
  color:#0b3b97 !important;
  font-size:34px !important;
  line-height:1 !important;
  font-weight:950 !important;
}
.bp-order-received-shell .bpm-copy-btn--light{
  margin:0 !important;
  background:#0b3b97 !important;
  color:#fff !important;
  border:1px solid #0b3b97 !important;
}
.bp-order-received-shell .bpm-copy-btn--light:hover{background:#082f7d !important}

/* Important warning: compact, single-line capable */
.bp-order-received-shell .bpm-important,
.bp-order-received-shell .bpm-fee-warning{
  display:grid !important;
  grid-template-columns:38px minmax(0,1fr) !important;
  gap:12px !important;
  align-items:center !important;
  margin:12px 0 !important;
  padding:14px 16px !important;
  border-radius:12px !important;
}
.bp-order-received-shell .bpm-important{
  border:1px solid #efb4ae !important;
  background:#fff8f7 !important;
}
.bp-order-received-shell .bpm-fee-warning{
  border:1px solid #ead79a !important;
  background:#fff9e8 !important;
}
.bp-order-received-shell .bpm-callout-icon{
  width:34px !important;height:34px !important;
  display:grid !important;place-items:center !important;
  border-radius:10px !important;
  font-size:18px !important;font-weight:950 !important;
}
.bp-order-received-shell .bpm-important .bpm-callout-icon{
  background:#fde6e3 !important;color:#b42318 !important;
}
.bp-order-received-shell .bpm-fee-warning .bpm-callout-icon{
  background:#fff0b8 !important;color:#916b00 !important;
}
.bp-order-received-shell .bpm-important strong,
.bp-order-received-shell .bpm-fee-warning strong{
  display:inline !important;
  margin:0 8px 0 0 !important;
  color:#17243a !important;
  font-size:14px !important;
}
.bp-order-received-shell .bpm-important p,
.bp-order-received-shell .bpm-fee-warning p{
  display:inline !important;
  margin:0 !important;
  color:#536176 !important;
  font-size:13px !important;
  line-height:1.45 !important;
}

/* Shipping info remains compact */
.bp-order-received-shell .bpm-shipping-info{
  margin:12px 0 !important;
  padding:15px 17px !important;
  border:1px solid #dfe7f2 !important;
  border-radius:12px !important;
  background:#f7faff !important;
}
.bp-order-received-shell .bpm-shipping-info strong{color:#17243a !important;font-size:14px !important}
.bp-order-received-shell .bpm-shipping-info p{margin:7px 0 0 !important;color:#5b697e !important;font-size:13px !important;line-height:1.45 !important}

/* Support */
.bp-order-received-shell .bpm-help-box{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:20px !important;
  margin-top:16px !important;
  padding:14px 16px !important;
  border:1px solid #e2e8f0 !important;
  border-radius:12px !important;
  background:#f8faff !important;
  color:#536176 !important;
  font-size:12px !important;
}
.bp-order-received-shell .bpm-help-box > div:last-child{text-align:right !important}
.bp-order-received-shell .bpm-help-box span{
  display:block !important;color:#8490a1 !important;font-size:10px !important;text-transform:uppercase !important;
}
.bp-order-received-shell .bpm-help-box strong{color:#17243a !important}

/* Remove any stale next-steps markup visually if cached by an older plugin build */
.bp-order-received-shell .bpm-next-steps{display:none !important}

/* Secondary order summary */
.bp-order-summary-card,
.bp-customer-info-card{
  margin:18px 0 0 !important;
  padding:28px !important;
  border:1px solid #dfe6f0 !important;
  border-radius:18px !important;
  background:#fff !important;
  box-shadow:0 12px 32px rgba(20,48,96,.055) !important;
}
.bp-summary-heading{
  display:flex !important;
  align-items:flex-end !important;
  justify-content:space-between !important;
  gap:18px !important;
  margin-bottom:18px !important;
}
.bp-summary-eyebrow{
  display:block !important;
  margin-bottom:3px !important;
  color:#7e8999 !important;
  font-size:11px !important;
  font-weight:850 !important;
  text-transform:uppercase !important;
  letter-spacing:.05em !important;
}
.bp-summary-heading h2{
  margin:0 !important;
  color:#17243a !important;
  font-size:25px !important;
  font-weight:900 !important;
}
.bp-summary-total{text-align:right !important}
.bp-summary-total span{display:block !important;color:#7d8999 !important;font-size:11px !important}
.bp-summary-total strong{
  display:block !important;
  color:#0b3b97 !important;
  font-size:26px !important;
  line-height:1.1 !important;
  white-space:nowrap !important;
}

.bp-order-items{
  overflow:hidden !important;
  border:1px solid #e5eaf1 !important;
  border-radius:12px !important;
}
.bp-order-item{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:20px !important;
  padding:14px 16px !important;
  border-bottom:1px solid #edf1f5 !important;
}
.bp-order-item:last-child{border-bottom:0 !important}
.bp-order-item__product{
  display:flex !important;
  align-items:center !important;
  gap:13px !important;
  min-width:0 !important;
}
.bp-order-item__thumb{
  width:58px !important;height:58px !important;flex:0 0 58px !important;
  overflow:hidden !important;border-radius:9px !important;background:#f5f7fa !important;
}
.bp-order-item__thumb img{width:100% !important;height:100% !important;object-fit:cover !important}
.bp-order-item__product strong{display:block !important;color:#17243a !important;font-size:14px !important}
.bp-order-item__product span{display:block !important;margin-top:3px !important;color:#7d8999 !important;font-size:11px !important}
.bp-order-item__total{white-space:nowrap !important;color:#17243a !important;font-size:15px !important}

.bp-order-totals{
  width:min(100%,520px) !important;
  margin:16px 0 0 auto !important;
}
.bp-order-total-row{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
  padding:9px 0 !important;
  color:#667488 !important;
  font-size:13px !important;
}
.bp-order-total-row.is-total{
  margin-top:4px !important;
  padding-top:13px !important;
  border-top:1px solid #e4eaf1 !important;
  color:#17243a !important;
  font-size:16px !important;
}
.bp-order-total-row.is-total strong{font-size:19px !important}

.bp-customer-info-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
}
.bp-info-panel{
  padding:18px !important;
  border:1px solid #e3e9f1 !important;
  border-radius:12px !important;
  background:#f8faff !important;
}
.bp-info-panel__label{
  display:block !important;
  margin-bottom:10px !important;
  color:#7c889a !important;
  font-size:11px !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:.05em !important;
}
.bp-info-panel address{
  margin:0 0 12px !important;
  color:#34435a !important;
  font-style:normal !important;
  font-size:14px !important;
  line-height:1.6 !important;
}
.bp-info-panel a{
  display:block !important;
  margin-top:5px !important;
  color:#0b3b97 !important;
  font-size:13px !important;
  font-weight:700 !important;
}
.bp-info-panel--delivery{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}
.bp-info-panel--delivery strong{color:#17243a !important;font-size:15px !important}
.bp-info-panel--delivery p{margin:5px 0 0 !important;color:#6d7a8d !important;font-size:12px !important;line-height:1.45 !important}

/* ---------- Mobile ---------- */
@media(max-width:767px){
  body.woocommerce-checkout:not(.woocommerce-order-received) .shipping_address .woocommerce-shipping-fields__field-wrapper{
    grid-template-columns:1fr !important;
  }
  body.woocommerce-checkout:not(.woocommerce-order-received) .shipping_address .form-row{
    grid-column:1 !important;
  }

  .bp-order-received-shell{
    width:calc(100% - 20px) !important;
    padding:18px 0 36px !important;
  }
  .bp-order-received-shell .bpm-thankyou-box,
  .bp-order-summary-card,
  .bp-customer-info-card{
    padding:17px !important;
    border-radius:15px !important;
  }

  .bp-order-received-shell .bpm-thankyou-hero{
    display:flex !important;
    flex-direction:column-reverse !important;
    align-items:flex-start !important;
    gap:10px !important;
  }
  .bp-order-received-shell .bpm-thankyou-title{
    justify-content:flex-start !important;
    font-size:23px !important;
    text-align:left !important;
  }
  .bp-order-received-shell .bpm-thankyou-check{
    width:34px !important;height:34px !important;flex-basis:34px !important;
    font-size:19px !important;
  }
  .bp-order-received-shell .bpm-order-status{
    white-space:normal !important;
    font-size:12px !important;
  }

  .bp-order-received-shell .bpm-awaiting{
    margin-bottom:20px !important;
    padding:14px !important;
    text-align:left !important;
  }

  .bp-order-received-shell .bpm-payment-section-title{
    display:block !important;
  }
  .bp-order-received-shell .bpm-payment-section-title small{
    display:block !important;
    margin-top:4px !important;
  }

  .bp-order-received-shell .bpm-bank-grid,
  .bp-order-received-shell .bpm-bank-meta,
  .bp-customer-info-grid{
    grid-template-columns:1fr !important;
  }

  .bp-order-received-shell .bpm-payment-total{
    display:block !important;
    padding:18px !important;
  }
  .bp-order-received-shell .bpm-payment-total > div{
    display:flex !important;
    justify-content:space-between !important;
    gap:12px !important;
  }
  .bp-order-received-shell .bpm-payment-total strong{
    font-size:30px !important;
  }
  .bp-order-received-shell .bpm-copy-btn--light{
    width:100% !important;
    margin-top:14px !important;
  }

  .bp-order-received-shell .bpm-important,
  .bp-order-received-shell .bpm-fee-warning{
    grid-template-columns:34px minmax(0,1fr) !important;
    align-items:start !important;
    padding:13px !important;
  }
  .bp-order-received-shell .bpm-important strong,
  .bp-order-received-shell .bpm-fee-warning strong,
  .bp-order-received-shell .bpm-important p,
  .bp-order-received-shell .bpm-fee-warning p{
    display:block !important;
    margin:0 !important;
  }
  .bp-order-received-shell .bpm-important strong,
  .bp-order-received-shell .bpm-fee-warning strong{
    margin-bottom:4px !important;
  }

  .bp-order-received-shell .bpm-help-box{
    display:block !important;
  }
  .bp-order-received-shell .bpm-help-box > div:last-child{
    margin-top:10px !important;
    text-align:left !important;
  }

  .bp-summary-heading{
    display:block !important;
  }
  .bp-summary-total{
    margin-top:10px !important;
    text-align:left !important;
  }
  .bp-order-item{
    gap:12px !important;
    padding:12px !important;
  }
  .bp-order-item__thumb{
    width:50px !important;height:50px !important;flex-basis:50px !important;
  }
  .bp-order-item__product strong{
    font-size:13px !important;
  }
  .bp-order-item__total{
    font-size:14px !important;
  }
}

/* =========================================================
   0.2.34 ADMIN BAR — REMOVE SITE-NAME HOVER FLYOUT
========================================================= */

/*
 * Front-end only nuisance:
 * WordPress opens a dark submenu under the site-name item on hover
 * (e.g. "Meniu"). Keep the admin bar itself and all other controls.
 */
body:not(.wp-admin) #wpadminbar #wp-admin-bar-site-name > .ab-sub-wrapper{
  display:none !important;
}

/* =========================================================
   0.2.35 SINGLE PRODUCT — CANONICAL
========================================================= */

.bp-single-product-page{
  background:#f6f8fc;
  padding:0 0 56px;
}

.bp-single-product-page > .bp-container{
  padding-top:18px;
}

/* Breadcrumbs */
.bp-single-product-breadcrumbs{
  margin:0 0 16px;
}
.bp-single-product-breadcrumbs .woocommerce-breadcrumb{
  margin:0 !important;
  color:#8995a8 !important;
  font-size:12px !important;
  line-height:1.4 !important;
}
.bp-single-product-breadcrumbs .woocommerce-breadcrumb a{
  color:#60708a !important;
  text-decoration:none !important;
}
.bp-single-product-breadcrumbs .woocommerce-breadcrumb a:hover{
  color:#0b3b97 !important;
}

/* No legacy sidebar/widgets on product pages */
body.single-product #secondary,
body.single-product .widget-area,
body.single-product .woocommerce-sidebar{
  display:none !important;
}

/* Main product hero */
.bp-single-product-page div.product{
  display:grid !important;
  grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr) !important;
  column-gap:52px !important;
  row-gap:0 !important;
  align-items:start !important;
  margin:0 !important;
  padding:28px !important;
  border:1px solid #e0e7f1 !important;
  border-radius:20px !important;
  background:#fff !important;
  box-shadow:0 14px 36px rgba(20,48,96,.055) !important;
}

.bp-single-product-page div.product::before,
.bp-single-product-page div.product::after{
  display:none !important;
}

/* Gallery */
.bp-single-product-page div.product .woocommerce-product-gallery{
  float:none !important;
  width:100% !important;
  margin:0 !important;
  min-width:0 !important;
}

.bp-single-product-page .woocommerce-product-gallery__wrapper{
  margin:0 !important;
}

.bp-single-product-page .woocommerce-product-gallery__image{
  overflow:hidden !important;
  border:1px solid #e5eaf1 !important;
  border-radius:16px !important;
  background:#f9fafc !important;
}

.bp-single-product-page .woocommerce-product-gallery__image a{
  display:block !important;
}

.bp-single-product-page .woocommerce-product-gallery__image img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-height:650px !important;
  padding:18px !important;
  box-sizing:border-box !important;
  object-fit:contain !important;
  background:#f9fafc !important;
}

.bp-single-product-page .woocommerce-product-gallery .flex-control-thumbs{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:9px !important;
  margin:12px 0 0 !important;
}

.bp-single-product-page .woocommerce-product-gallery .flex-control-thumbs li{
  float:none !important;
  width:auto !important;
  margin:0 !important;
}

.bp-single-product-page .woocommerce-product-gallery .flex-control-thumbs img{
  width:100% !important;
  aspect-ratio:1 / 1 !important;
  object-fit:contain !important;
  padding:6px !important;
  box-sizing:border-box !important;
  border:1px solid #e2e8f0 !important;
  border-radius:9px !important;
  background:#fff !important;
  opacity:.72 !important;
}

.bp-single-product-page .woocommerce-product-gallery .flex-control-thumbs img.flex-active,
.bp-single-product-page .woocommerce-product-gallery .flex-control-thumbs img:hover{
  border-color:#0b3b97 !important;
  opacity:1 !important;
}

/* Summary */
.bp-single-product-page div.product .summary{
  float:none !important;
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  padding:10px 0 0 !important;
}

.bp-single-product-page div.product .product_title{
  margin:0 0 10px !important;
  color:#14233a !important;
  font-size:36px !important;
  line-height:1.12 !important;
  font-weight:900 !important;
  letter-spacing:-.025em !important;
}

.bp-single-product-page .bpm-coa-single{
  margin:0 0 18px !important;
}

.bp-single-product-page .bpm-coa-button{
  min-height:34px !important;
  padding:0 12px !important;
  border-radius:8px !important;
  font-size:11px !important;
}

.bp-single-product-page div.product p.price,
.bp-single-product-page div.product span.price{
  margin:0 0 18px !important;
  color:#0b3b97 !important;
  font-size:27px !important;
  line-height:1 !important;
  font-weight:950 !important;
}

.bp-single-product-page .woocommerce-product-details__short-description{
  margin:0 0 20px !important;
  padding:16px 18px !important;
  border:1px solid #e3e9f1 !important;
  border-radius:12px !important;
  background:#f8faff !important;
  color:#46556d !important;
  font-size:14px !important;
  line-height:1.6 !important;
}

.bp-single-product-page .woocommerce-product-details__short-description > *:first-child{
  margin-top:0 !important;
}
.bp-single-product-page .woocommerce-product-details__short-description > *:last-child{
  margin-bottom:0 !important;
}
.bp-single-product-page .woocommerce-product-details__short-description ul{
  margin:7px 0 !important;
  padding-left:20px !important;
}
.bp-single-product-page .woocommerce-product-details__short-description li{
  margin:5px 0 !important;
}

/* Cart action */
.bp-single-product-page div.product form.cart{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  margin:0 0 20px !important;
  padding:15px !important;
  border:1px solid #e1e7f0 !important;
  border-radius:12px !important;
  background:#fff !important;
  box-shadow:0 8px 22px rgba(20,48,96,.045) !important;
}

.bp-single-product-page div.product form.cart .quantity{
  flex:0 0 auto !important;
}

.bp-single-product-page div.product form.cart .single_add_to_cart_button{
  min-height:46px !important;
  margin:0 !important;
  padding:0 24px !important;
  border-radius:9px !important;
  font-size:14px !important;
  font-weight:850 !important;
}

.bp-single-product-page div.product form.cart .single_add_to_cart_button:hover{
  transform:translateY(-1px) !important;
  box-shadow:0 7px 18px rgba(11,59,151,.17) !important;
}

/* Product meta */
.bp-single-product-page .product_meta{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px 14px !important;
  margin:0 !important;
  padding:14px 0 0 !important;
  border-top:1px solid #e7ecf3 !important;
  color:#7c8898 !important;
  font-size:12px !important;
  line-height:1.5 !important;
}

.bp-single-product-page .product_meta > span{
  display:inline-flex !important;
  align-items:center !important;
  gap:4px !important;
}

.bp-single-product-page .product_meta a{
  color:#0b3b97 !important;
  font-weight:750 !important;
  text-decoration:none !important;
}

/* Tabs/description becomes its own clean card spanning both columns */
.bp-single-product-page div.product .woocommerce-tabs{
  grid-column:1 / -1 !important;
  width:100% !important;
  margin:30px 0 0 !important;
  padding:0 !important;
  border:1px solid #e0e7f1 !important;
  border-radius:16px !important;
  overflow:hidden !important;
  background:#fff !important;
}

.bp-single-product-page div.product .woocommerce-tabs ul.tabs{
  display:flex !important;
  gap:4px !important;
  margin:0 !important;
  padding:10px 12px 0 !important;
  border-bottom:1px solid #e8edf4 !important;
  background:#f8faff !important;
}

.bp-single-product-page div.product .woocommerce-tabs ul.tabs::before{
  display:none !important;
}

.bp-single-product-page div.product .woocommerce-tabs ul.tabs li{
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:8px 8px 0 0 !important;
  background:transparent !important;
}

.bp-single-product-page div.product .woocommerce-tabs ul.tabs li::before,
.bp-single-product-page div.product .woocommerce-tabs ul.tabs li::after{
  display:none !important;
}

.bp-single-product-page div.product .woocommerce-tabs ul.tabs li a{
  padding:11px 14px !important;
  color:#627189 !important;
  font-size:13px !important;
  font-weight:800 !important;
}

.bp-single-product-page div.product .woocommerce-tabs ul.tabs li.active a{
  background:#fff !important;
  color:#0b3b97 !important;
  border-radius:8px 8px 0 0 !important;
}

.bp-single-product-page div.product .woocommerce-Tabs-panel{
  margin:0 !important;
  padding:28px 30px 30px !important;
  color:#3f4e64 !important;
  font-size:14px !important;
  line-height:1.72 !important;
}

.bp-single-product-page div.product .woocommerce-Tabs-panel h2{
  margin:0 0 16px !important;
  color:#17243a !important;
  font-size:24px !important;
  font-weight:900 !important;
}

.bp-single-product-page div.product .woocommerce-Tabs-panel h3{
  margin:24px 0 8px !important;
  color:#17243a !important;
  font-size:17px !important;
  font-weight:850 !important;
}

.bp-single-product-page div.product .woocommerce-Tabs-panel p{
  margin:0 0 14px !important;
}
.bp-single-product-page div.product .woocommerce-Tabs-panel ul,
.bp-single-product-page div.product .woocommerce-Tabs-panel ol{
  margin:8px 0 16px !important;
  padding-left:22px !important;
}
.bp-single-product-page div.product .woocommerce-Tabs-panel li{
  margin:5px 0 !important;
}

/* Related products */
.bp-single-product-page div.product .related.products{
  grid-column:1 / -1 !important;
  width:100% !important;
  margin:30px 0 0 !important;
  padding:0 !important;
}

.bp-single-product-page div.product .related.products > h2{
  margin:0 0 15px !important;
  color:#17243a !important;
  font-size:24px !important;
  font-weight:900 !important;
}

.bp-single-product-page div.product .related.products ul.products{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:16px !important;
  margin:0 !important;
}

.bp-single-product-page div.product .related.products ul.products::before,
.bp-single-product-page div.product .related.products ul.products::after{
  display:none !important;
}

.bp-single-product-page div.product .related.products ul.products li.product{
  float:none !important;
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  border-radius:14px !important;
  background:#fff !important;
}

/* Added-to-cart notice */
.bp-single-product-page .woocommerce-notices-wrapper{
  margin:0 0 14px !important;
}
.bp-single-product-page .woocommerce-message,
.bp-single-product-page .woocommerce-info,
.bp-single-product-page .woocommerce-error{
  margin:0 !important;
  padding:14px 18px 14px 48px !important;
  border:1px solid #dbe5f2 !important;
  border-top:0 !important;
  border-radius:11px !important;
  background:#fff !important;
  box-shadow:0 8px 20px rgba(20,48,96,.05) !important;
  font-size:13px !important;
}

/* Tablet */
@media(max-width:1024px){
  .bp-single-product-page div.product{
    grid-template-columns:minmax(0,1fr) minmax(320px,.88fr) !important;
    gap:30px !important;
    padding:22px !important;
  }
  .bp-single-product-page div.product .product_title{
    font-size:31px !important;
  }
  .bp-single-product-page div.product .related.products ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

/* Mobile */
@media(max-width:767px){
  .bp-single-product-page{
    padding-bottom:34px !important;
  }

  .bp-single-product-page > .bp-container{
    padding-top:10px !important;
  }

  .bp-single-product-breadcrumbs{
    margin-bottom:10px !important;
    overflow:hidden !important;
  }

  .bp-single-product-breadcrumbs .woocommerce-breadcrumb{
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    font-size:11px !important;
  }

  .bp-single-product-page div.product{
    display:block !important;
    padding:13px !important;
    border-radius:15px !important;
  }

  .bp-single-product-page .woocommerce-product-gallery__image img{
    max-height:none !important;
    padding:8px !important;
  }

  .bp-single-product-page .woocommerce-product-gallery .flex-control-thumbs{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:6px !important;
  }

  .bp-single-product-page div.product .summary{
    padding-top:20px !important;
  }

  .bp-single-product-page div.product .product_title{
    font-size:27px !important;
    line-height:1.15 !important;
  }

  .bp-single-product-page div.product p.price,
  .bp-single-product-page div.product span.price{
    font-size:24px !important;
  }

  .bp-single-product-page .woocommerce-product-details__short-description{
    padding:13px !important;
    font-size:13px !important;
  }

  .bp-single-product-page div.product form.cart{
    gap:8px !important;
    padding:11px !important;
  }

  .bp-single-product-page div.product form.cart .single_add_to_cart_button{
    flex:1 1 auto !important;
    min-width:0 !important;
    padding:0 14px !important;
  }

  .bp-single-product-page div.product .woocommerce-tabs{
    margin-top:22px !important;
    border-radius:13px !important;
  }

  .bp-single-product-page div.product .woocommerce-tabs ul.tabs{
    overflow-x:auto !important;
    white-space:nowrap !important;
    padding:8px 8px 0 !important;
  }

  .bp-single-product-page div.product .woocommerce-Tabs-panel{
    padding:19px 16px 21px !important;
    font-size:13px !important;
  }

  .bp-single-product-page div.product .woocommerce-Tabs-panel h2{
    font-size:21px !important;
  }

  .bp-single-product-page div.product .related.products{
    margin-top:22px !important;
  }

  .bp-single-product-page div.product .related.products > h2{
    font-size:21px !important;
  }

  .bp-single-product-page div.product .related.products ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }
}

@media(max-width:420px){
  .bp-single-product-page div.product .related.products ul.products{
    grid-template-columns:1fr !important;
  }
}

/* =========================================================
   0.2.36 SINGLE PRODUCT — GALLERY / TIERS / TRUST
========================================================= */

/* Desktop product layout: keep WooCommerce/FlexSlider gallery native. */
@media(min-width:768px){
  .bp-single-product-page div.product .woocommerce-product-gallery{
    grid-column:1 !important;
    grid-row:1 !important;
    display:block !important;
    min-width:0 !important;
  }
}

/* Quantity pricing */
.bp-buy-more{
  margin:0 0 14px !important;
  padding:16px !important;
  border:1px solid #dce5f1 !important;
  border-radius:13px !important;
  background:linear-gradient(180deg,#fbfdff,#f6f9ff) !important;
}
.bp-buy-more__head{
  display:flex !important;
  align-items:flex-end !important;
  justify-content:space-between !important;
  gap:12px !important;
  margin-bottom:12px !important;
}
.bp-buy-more__eyebrow{
  display:block !important;
  margin-bottom:2px !important;
  color:#7b8798 !important;
  font-size:10px !important;
  font-weight:850 !important;
  text-transform:uppercase !important;
  letter-spacing:.06em !important;
}
.bp-buy-more__head strong{
  display:block !important;
  color:#17243a !important;
  font-size:15px !important;
  line-height:1.25 !important;
  font-weight:900 !important;
}
.bp-buy-more__auto{
  flex:0 0 auto !important;
  padding:5px 8px !important;
  border-radius:999px !important;
  background:#eaf2ff !important;
  color:#0b3b97 !important;
  font-size:9px !important;
  font-weight:850 !important;
  white-space:nowrap !important;
}

.bp-tier-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:8px !important;
}
.bp-tier{
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  min-width:0 !important;
  min-height:90px !important;
  padding:12px !important;
  border:1px solid #dbe4f0 !important;
  border-radius:11px !important;
  background:#fff !important;
  color:#17243a !important;
  text-align:left !important;
  cursor:pointer !important;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease !important;
}
.bp-tier:hover{
  transform:translateY(-2px) !important;
  border-color:#88a9e5 !important;
  box-shadow:0 8px 18px rgba(11,59,151,.08) !important;
}
.bp-tier.is-selected{
  border-color:#0b3b97 !important;
  box-shadow:0 0 0 2px rgba(11,59,151,.08) !important;
  background:#f7faff !important;
}
.bp-tier__qty{
  color:#5e6c80 !important;
  font-size:11px !important;
  font-weight:800 !important;
}
.bp-tier strong{
  margin-top:4px !important;
  color:#0b3b97 !important;
  font-size:22px !important;
  line-height:1 !important;
  font-weight:950 !important;
}
.bp-tier small{
  margin-top:3px !important;
  color:#8a96a7 !important;
  font-size:10px !important;
}
.bp-tier--best{
  border-color:#afc4ea !important;
  background:linear-gradient(180deg,#f7faff,#eef4ff) !important;
}
.bp-tier__flag{
  position:absolute !important;
  top:7px !important;
  right:7px !important;
  padding:3px 6px !important;
  border-radius:999px !important;
  background:#0b3b97 !important;
  color:#fff !important;
  font-size:8px !important;
  line-height:1 !important;
  font-weight:850 !important;
  text-transform:uppercase !important;
}

/* Trust row */
.bp-product-trust{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:8px !important;
  margin:0 0 18px !important;
}
.bp-trust-item{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  gap:9px !important;
  min-width:0 !important;
  padding:11px !important;
  border:1px solid #e1e7ef !important;
  border-radius:11px !important;
  background:#fff !important;
}
.bp-trust-icon{
  flex:0 0 30px !important;
  width:30px !important;
  height:30px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:9px !important;
  background:#edf4ff !important;
  color:#0b3b97 !important;
  font-size:14px !important;
  font-weight:950 !important;
}
.bp-trust-item strong{
  display:block !important;
  color:#17243a !important;
  font-size:11px !important;
  line-height:1.2 !important;
  font-weight:850 !important;
}
.bp-trust-item small{
  display:block !important;
  margin-top:2px !important;
  color:#8994a4 !important;
  font-size:9px !important;
  line-height:1.25 !important;
}

.bp-delivery-help{
  flex:0 0 24px !important;
  width:24px !important;
  height:24px !important;
  margin-left:auto !important;
  padding:0 !important;
  border:1px solid #cdd9eb !important;
  border-radius:50% !important;
  background:#f8faff !important;
  color:#0b3b97 !important;
  font-size:12px !important;
  font-weight:950 !important;
  cursor:pointer !important;
}
.bp-delivery-help:hover{
  background:#eaf2ff !important;
  border-color:#94afe0 !important;
}

.bp-delivery-tooltip{
  position:absolute !important;
  z-index:20 !important;
  left:0 !important;
  right:0 !important;
  top:calc(100% + 8px) !important;
  display:none !important;
  padding:11px 12px !important;
  border:1px solid #d9e3f0 !important;
  border-radius:10px !important;
  background:#17243a !important;
  color:#fff !important;
  box-shadow:0 12px 28px rgba(18,36,67,.18) !important;
  font-size:10px !important;
  line-height:1.45 !important;
}
.bp-delivery-tooltip::before{
  content:"" !important;
  position:absolute !important;
  right:18px !important;
  top:-6px !important;
  width:10px !important;
  height:10px !important;
  background:#17243a !important;
  transform:rotate(45deg) !important;
}
.bp-trust-item--delivery.is-open .bp-delivery-tooltip{
  display:block !important;
}

/* Keep the cart box visually tied to tiers */
.bp-buy-more + form.cart{
  margin-top:0 !important;
}

/* Tablet */
@media(max-width:1024px){
  .bp-product-trust{
    grid-template-columns:1fr !important;
  }
}

/* Mobile */
@media(max-width:767px){
  .bp-single-product-page div.product .woocommerce-product-gallery{
    display:block !important;
  }

  .bp-tier-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:6px !important;
  }
  .bp-tier{
    min-height:82px !important;
    padding:10px 8px !important;
  }
  .bp-tier strong{
    font-size:19px !important;
  }
  .bp-tier__flag{
    display:none !important;
  }

  .bp-product-trust{
    grid-template-columns:1fr !important;
    gap:7px !important;
  }
}

@media(max-width:420px){
  .bp-buy-more__head{
    display:block !important;
  }
  .bp-buy-more__auto{
    display:inline-flex !important;
    margin-top:7px !important;
  }
}

/* =========================================================
   0.2.37 SINGLE PRODUCT — GALLERY STATE / TRUST / SAVINGS
========================================================= */

/* Preserve the stable two-column product layout while leaving FlexSlider track sizing native. */
@media(min-width:768px){
  .bp-single-product-page div.product .woocommerce-product-gallery{
    grid-column:1 !important;
    grid-row:1 !important;
    display:block !important;
    min-width:0 !important;
  }
  .bp-single-product-page div.product .bp-product-trust--desktop{
    grid-column:1 !important;
    grid-row:2 !important;
    margin:14px 0 0 !important;
  }
  .bp-single-product-page div.product .summary{
    grid-column:2 !important;
    grid-row:1 / span 2 !important;
  }
  .bp-single-product-page div.product .woocommerce-tabs{
    grid-column:1 / -1 !important;
    grid-row:3 !important;
  }
  .bp-single-product-page div.product .related.products{
    grid-column:1 / -1 !important;
    grid-row:4 !important;
  }
  .bp-product-trust--mobile{display:none !important;}
  .bp-single-product-page .woocommerce-product-gallery .flex-control-thumbs{
    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    gap:9px !important;
    margin:12px 0 0 !important;
    max-height:none !important;
    overflow:visible !important;
    padding:0 !important;
  }
  .bp-single-product-page .woocommerce-product-gallery .flex-control-thumbs li{
    width:auto !important;
    min-width:0 !important;
    margin:0 !important;
    float:none !important;
  }
}

/* More compact image presentation so thumbnails do not waste page height. */
.bp-single-product-page .woocommerce-product-gallery__image img{
  max-height:580px !important;
}

/* Tier cards: show real unit price and saving. */
.bp-tier{
  min-height:116px !important;
}
.bp-tier__unit{
  display:block !important;
  margin-top:6px !important;
  color:#3c4d65 !important;
  font-size:11px !important;
  font-weight:800 !important;
  line-height:1.25 !important;
}
.bp-tier small{
  margin-top:3px !important;
  color:#2e7d4d !important;
  font-size:10px !important;
  font-weight:800 !important;
}
.bp-tier.is-selected{
  border-color:#0b3b97 !important;
  background:linear-gradient(180deg,#f8fbff,#edf4ff) !important;
  box-shadow:0 0 0 2px rgba(11,59,151,.08),0 10px 22px rgba(11,59,151,.08) !important;
}

.bp-tier-summary{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px !important;
  margin-top:10px !important;
  padding:11px 13px !important;
  border:1px solid #bed2f2 !important;
  border-radius:10px !important;
  background:#edf4ff !important;
}
.bp-tier-summary[hidden]{
  display:none !important;
}
.bp-tier-summary__label{
  display:block !important;
  margin-bottom:2px !important;
  color:#74829a !important;
  font-size:9px !important;
  font-weight:850 !important;
  text-transform:uppercase !important;
  letter-spacing:.055em !important;
}
.bp-tier-summary__main{
  display:block !important;
  color:#17345f !important;
  font-size:12px !important;
  font-weight:900 !important;
}
.bp-tier-summary__save{
  flex:0 0 auto !important;
  padding:6px 9px !important;
  border-radius:999px !important;
  background:#dff4e6 !important;
  color:#267747 !important;
  font-size:10px !important;
  font-weight:900 !important;
  white-space:nowrap !important;
}

/* Trust strip under gallery on desktop: denser and cleaner. */
.bp-product-trust--desktop{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}
.bp-product-trust--desktop .bp-trust-item{
  min-height:72px !important;
}
.bp-trust-item--research .bp-trust-icon{
  background:#f1f4f8 !important;
  color:#526176 !important;
}

/* Mobile keeps trust items after purchase controls, not between gallery and summary. */
@media(max-width:767px){
  .bp-product-trust--desktop{
    display:none !important;
  }
  .bp-product-trust--mobile{
    display:grid !important;
    grid-template-columns:1fr !important;
  }

  .bp-tier{
    min-height:105px !important;
  }

  .bp-tier-summary{
    align-items:flex-start !important;
    flex-direction:column !important;
  }

  .bp-tier-summary__save{
    white-space:normal !important;
  }
}

/* =========================================================
   0.2.38 CART AJAX + VENIPAK VALIDATION
========================================================= */

.bp-classic-cart-wrap .bp-qty-stepper.is-loading{
  opacity:.62 !important;
  pointer-events:none !important;
}
.bp-classic-cart-wrap .bp-qty-stepper.is-loading::after{
  content:"" !important;
  width:14px !important;
  height:14px !important;
  margin-left:7px !important;
  border:2px solid #c8d5e8 !important;
  border-top-color:#0b3b97 !important;
  border-radius:50% !important;
  animation:bp-cart-qty-spin .65s linear infinite !important;
}
@keyframes bp-cart-qty-spin{
  to{transform:rotate(360deg)}
}

.bp-quantity-discount-live{
  margin-top:5px !important;
  color:#0b3b97 !important;
  font-size:12px !important;
  font-weight:800 !important;
}

/* Venipak missing-selection state must be impossible to miss. */
body.woocommerce-checkout .bpm-venipak-pickup-ui.bpm-venipak-invalid,
body.woocommerce-checkout .bpm-venipak-invalid{
  border:1px solid #dc3d35 !important;
  background:#fff7f6 !important;
  box-shadow:0 0 0 3px rgba(220,61,53,.08) !important;
}

body.woocommerce-checkout select.bpm-venipak-select-invalid,
body.woocommerce-checkout .bpm-venipak-select-invalid .select2-selection,
body.woocommerce-checkout .select2-container.bpm-venipak-select-invalid .select2-selection{
  border-color:#dc3d35 !important;
  box-shadow:0 0 0 3px rgba(220,61,53,.08) !important;
  background:#fffafa !important;
}

body.woocommerce-checkout #bpm-venipak-status.is-error{
  margin-top:8px !important;
  padding:10px 12px !important;
  border:1px solid #dc3d35 !important;
  border-radius:9px !important;
  background:#fff2f1 !important;
  color:#a92720 !important;
  font-size:12px !important;
  font-weight:800 !important;
}



/* =========================================================
   0.2.39 WISHLIST + MY ACCOUNT — CANONICAL
========================================================= */

/* ---------- Wishlist controls ---------- */
.woocommerce ul.products li.product,
.biopepers-wishlist-grid li.product{position:relative !important}

.bp-wishlist-btn{
  border:0 !important;
  cursor:pointer !important;
  transition:transform .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease !important;
}
.bp-wishlist-btn--loop{
  position:absolute !important;
  z-index:8 !important;
  top:12px !important;
  left:12px !important;
  width:38px !important;
  height:38px !important;
  display:grid !important;
  place-items:center !important;
  padding:0 !important;
  border:1px solid #dbe4f0 !important;
  border-radius:50% !important;
  background:rgba(255,255,255,.94) !important;
  color:#0b3b97 !important;
  box-shadow:0 5px 16px rgba(23,36,58,.09) !important;
}
.bp-wishlist-btn--loop:hover{transform:translateY(-1px) scale(1.04) !important;background:#f3f7ff !important}
.bp-wishlist-btn--loop.active{background:#0b3b97 !important;color:#fff !important;border-color:#0b3b97 !important}
.bp-wishlist-btn .heart-icon{font-size:20px !important;line-height:1 !important}
.bp-wishlist-btn .heart-spinner{
  display:none;width:16px;height:16px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:bp-wishlist-spin .65s linear infinite
}
.bp-wishlist-btn.is-loading .heart-spinner{display:block}
@keyframes bp-wishlist-spin{to{transform:rotate(360deg)}}

.bp-wishlist-btn--single{
  display:inline-flex !important;align-items:center !important;gap:8px !important;
  min-height:38px !important;margin:0 0 14px !important;padding:0 12px !important;
  border:1px solid #dce5f0 !important;border-radius:9px !important;background:#fff !important;color:#0b3b97 !important;
  font-size:12px !important;font-weight:850 !important;
}
.bp-wishlist-btn--single:hover{background:#f4f7fd !important;border-color:#9bb6e6 !important}
.bp-wishlist-btn--single.active{background:#edf4ff !important;border-color:#8dacdf !important}

/* ---------- Wishlist page ---------- */
.bpm-wishlist-page{
  width:min(calc(100% - 32px),1180px) !important;
  margin:0 auto !important;
  padding:42px 0 64px !important;
}
.bpm-wishlist-hero{
  display:flex !important;align-items:flex-end !important;justify-content:space-between !important;gap:20px !important;
  margin:0 0 24px !important;padding:26px 28px !important;
  border:1px solid #dfe7f1 !important;border-radius:16px !important;background:#fff !important;
  box-shadow:0 10px 28px rgba(20,48,96,.05) !important;
}
.bpm-wishlist-eyebrow{display:block !important;margin-bottom:5px !important;color:#738198 !important;font-size:11px !important;font-weight:900 !important;text-transform:uppercase !important;letter-spacing:.06em !important}
.bpm-wishlist-hero h1{margin:0 !important;color:#17243a !important;font-size:30px !important;line-height:1.1 !important;font-weight:900 !important}
.bpm-wishlist-hero p{margin:8px 0 0 !important;color:#6c788b !important;font-size:14px !important}
.bpm-wishlist-count-label{flex:0 0 auto !important;padding:8px 12px !important;border-radius:999px !important;background:#edf4ff !important;color:#0b3b97 !important;font-size:12px !important;font-weight:850 !important}
.bpm-wishlist-page ul.products.biopepers-wishlist-grid{
  display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:16px !important;margin:0 !important;
}
.bpm-wishlist-page ul.products.biopepers-wishlist-grid::before,.bpm-wishlist-page ul.products.biopepers-wishlist-grid::after{display:none !important}
.bpm-wishlist-page ul.products.biopepers-wishlist-grid li.product{float:none !important;width:100% !important;margin:0 !important;transition:opacity .22s ease !important}
.bpm-wishlist-empty{
  width:100% !important;box-sizing:border-box !important;padding:48px 24px !important;text-align:center !important;
  border:1px dashed #cfd9e8 !important;border-radius:16px !important;background:#fff !important;color:#66758a !important;
}
.bpm-wishlist-empty__icon{display:grid !important;place-items:center !important;width:62px !important;height:62px !important;margin:0 auto 15px !important;border-radius:50% !important;background:#edf4ff !important;color:#0b3b97 !important;font-size:32px !important}
.bpm-wishlist-empty h2{margin:0 0 7px !important;color:#17243a !important;font-size:22px !important}
.bpm-wishlist-empty p{margin:0 0 18px !important}
.bpm-wishlist-empty .button{min-height:42px !important;padding:0 18px !important;display:inline-flex !important;align-items:center !important;border-radius:8px !important;background:#0b3b97 !important;color:#fff !important;text-decoration:none !important;font-weight:850 !important}

/* ---------- My Account: selectors intentionally do NOT depend on body.woocommerce-account. ---------- */
.woocommerce:has(.woocommerce-MyAccount-navigation){
  width:min(calc(100% - 32px),1180px) !important;
  margin:0 auto !important;
  padding:38px 0 64px !important;
  display:grid !important;
  grid-template-columns:250px minmax(0,1fr) !important;
  gap:22px !important;
  align-items:start !important;
}
.bp-account-heading{
  grid-column:1 / -1 !important;
  margin:0 !important;padding:0 0 2px !important;
}
.bp-account-heading span,.bp-account-eyebrow{display:block !important;margin-bottom:5px !important;color:#7b8798 !important;font-size:10px !important;font-weight:900 !important;text-transform:uppercase !important;letter-spacing:.07em !important}
.bp-account-heading h1{margin:0 !important;color:#17243a !important;font-size:31px !important;line-height:1.1 !important;font-weight:900 !important}
.bp-account-heading p{margin:7px 0 0 !important;color:#6c788b !important;font-size:14px !important}

.woocommerce-MyAccount-navigation{
  width:100% !important;float:none !important;margin:0 !important;padding:8px !important;box-sizing:border-box !important;
  border:1px solid #dfe7f1 !important;border-radius:14px !important;background:#fff !important;box-shadow:0 8px 24px rgba(20,48,96,.05) !important;
}
.woocommerce-MyAccount-navigation ul{list-style:none !important;margin:0 !important;padding:0 !important}
.woocommerce-MyAccount-navigation li{list-style:none !important;margin:2px 0 !important;padding:0 !important}
.woocommerce-MyAccount-navigation li::marker{content:"" !important}
.woocommerce-MyAccount-navigation a{
  display:flex !important;align-items:center !important;min-height:45px !important;padding:0 13px !important;border-radius:9px !important;
  color:#536176 !important;text-decoration:none !important;font-size:13px !important;font-weight:800 !important;
}
.woocommerce-MyAccount-navigation a:hover{background:#f2f6fc !important;color:#0b3b97 !important}
.woocommerce-MyAccount-navigation .is-active a{background:#0b3b97 !important;color:#fff !important}
.woocommerce-MyAccount-navigation-link--customer-logout{margin-top:7px !important;padding-top:7px !important;border-top:1px solid #e7edf4 !important}
.woocommerce-MyAccount-navigation-link--customer-logout a{color:#a32d2d !important}

.woocommerce-MyAccount-content{
  width:100% !important;float:none !important;min-width:0 !important;box-sizing:border-box !important;
  padding:26px !important;border:1px solid #dfe7f1 !important;border-radius:14px !important;background:#fff !important;
  box-shadow:0 8px 24px rgba(20,48,96,.05) !important;color:#435169 !important;
}
.woocommerce-MyAccount-content h2,.woocommerce-MyAccount-content h3{color:#17243a !important;font-weight:900 !important}
.woocommerce-MyAccount-content a{color:#0b3b97 !important;font-weight:750 !important}

.bp-account-welcome{
  display:flex !important;align-items:center !important;justify-content:space-between !important;gap:20px !important;
  padding:20px !important;border:1px solid #dce5f1 !important;border-radius:13px !important;background:linear-gradient(135deg,#f8fbff,#eef4ff) !important;
}
.bp-account-welcome h2{margin:0 !important;font-size:24px !important}
.bp-account-welcome p{margin:6px 0 0 !important;max-width:650px !important;color:#66758a !important;font-size:13px !important}
.bp-account-shop-btn{flex:0 0 auto !important;display:inline-flex !important;align-items:center !important;min-height:40px !important;padding:0 14px !important;border-radius:8px !important;background:#0b3b97 !important;color:#fff !important;text-decoration:none !important;font-size:12px !important;font-weight:850 !important}

.bp-account-stats{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:10px !important;margin:14px 0 22px !important}
.bp-account-stat{display:flex !important;align-items:center !important;gap:11px !important;min-width:0 !important;padding:14px !important;border:1px solid #e1e7f0 !important;border-radius:11px !important;background:#fff !important;text-decoration:none !important}
.bp-account-stat:hover{border-color:#a6bee7 !important;background:#f8faff !important}
.bp-account-stat__icon{flex:0 0 34px !important;width:34px !important;height:34px !important;display:grid !important;place-items:center !important;border-radius:9px !important;background:#edf4ff !important;color:#0b3b97 !important;font-size:17px !important;font-weight:900 !important}
.bp-account-stat strong{display:block !important;color:#17243a !important;font-size:15px !important;line-height:1.2 !important}
.bp-account-stat small{display:block !important;margin-top:2px !important;color:#8994a4 !important;font-size:10px !important}

.bp-account-section{margin-top:4px !important}
.bp-account-section__head{display:flex !important;align-items:flex-end !important;justify-content:space-between !important;gap:12px !important;margin-bottom:11px !important}
.bp-account-section__head span{display:block !important;color:#7c8898 !important;font-size:10px !important;text-transform:uppercase !important;font-weight:850 !important}
.bp-account-section__head h3{margin:1px 0 0 !important;font-size:19px !important}
.bp-account-section__head a{font-size:11px !important;text-decoration:none !important}
.bp-account-order-list{overflow:hidden !important;border:1px solid #e2e8f0 !important;border-radius:11px !important}
.bp-account-order{display:grid !important;grid-template-columns:minmax(110px,1fr) auto auto 22px !important;align-items:center !important;gap:14px !important;padding:12px 14px !important;border-bottom:1px solid #edf1f5 !important;text-decoration:none !important}
.bp-account-order:last-child{border-bottom:0 !important}
.bp-account-order:hover{background:#f8faff !important}
.bp-account-order > div strong{display:block !important;color:#17243a !important;font-size:13px !important}
.bp-account-order > div span{display:block !important;margin-top:2px !important;color:#8a96a6 !important;font-size:10px !important}
.bp-account-order__status{padding:5px 8px !important;border-radius:999px !important;background:#edf4ff !important;color:#0b3b97 !important;font-size:10px !important;font-weight:850 !important;white-space:nowrap !important}
.bp-account-order__total{color:#17243a !important;font-size:13px !important;white-space:nowrap !important}
.bp-account-order__arrow{color:#0b3b97 !important;font-size:18px !important}
.bp-account-empty{padding:25px !important;text-align:center !important;border:1px dashed #d4deea !important;border-radius:11px !important;background:#fafcff !important}

/* Native account endpoint tables/forms */
.woocommerce-MyAccount-content table.shop_table{width:100% !important;border-collapse:separate !important;border-spacing:0 !important;overflow:hidden !important;border:1px solid #e2e8f0 !important;border-radius:11px !important;background:#fff !important}
.woocommerce-MyAccount-content table.shop_table th{padding:12px !important;background:#f5f8fc !important;color:#536176 !important;font-size:10px !important;text-transform:uppercase !important;letter-spacing:.045em !important}
.woocommerce-MyAccount-content table.shop_table td{padding:13px 12px !important;border-top:1px solid #edf1f5 !important;color:#425069 !important;font-size:12px !important}
.woocommerce-MyAccount-content .button{display:inline-flex !important;align-items:center !important;justify-content:center !important;min-height:38px !important;padding:0 13px !important;border:0 !important;border-radius:8px !important;background:#0b3b97 !important;color:#fff !important;text-decoration:none !important;font-size:11px !important;font-weight:850 !important}
.woocommerce-MyAccount-content input,.woocommerce-MyAccount-content select,.woocommerce-MyAccount-content textarea{width:100% !important;box-sizing:border-box !important;min-height:44px !important;padding:9px 11px !important;border:1px solid #dce4ee !important;border-radius:8px !important;background:#fff !important}
.woocommerce-MyAccount-content .form-row{margin-bottom:12px !important}
.woocommerce-MyAccount-content fieldset{margin:20px 0 0 !important;padding:18px !important;border:1px solid #e3e9f1 !important;border-radius:11px !important}
.woocommerce-MyAccount-content legend{padding:0 7px !important;color:#17243a !important;font-weight:850 !important}
.woocommerce-Address{padding:18px !important;border:1px solid #e2e8f0 !important;border-radius:11px !important;background:#fafcff !important}
.woocommerce-Address-title{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:10px !important}
.woocommerce-Address-title h3{margin:0 !important}

@media(max-width:1024px){
  .bpm-wishlist-page ul.products.biopepers-wishlist-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
}
@media(max-width:767px){
  .bpm-wishlist-page{width:calc(100% - 20px) !important;padding:20px 0 36px !important}
  .bpm-wishlist-hero{display:block !important;padding:18px !important}
  .bpm-wishlist-count-label{display:inline-flex !important;margin-top:13px !important}
  .bpm-wishlist-page ul.products.biopepers-wishlist-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important}

  .woocommerce:has(.woocommerce-MyAccount-navigation){width:calc(100% - 20px) !important;padding:20px 0 36px !important;display:block !important}
  .bp-account-heading{margin-bottom:14px !important}
  .woocommerce-MyAccount-navigation{margin-bottom:12px !important;overflow-x:auto !important}
  .woocommerce-MyAccount-navigation ul{display:flex !important;gap:5px !important;min-width:max-content !important}
  .woocommerce-MyAccount-navigation li{margin:0 !important}
  .woocommerce-MyAccount-navigation-link--customer-logout{margin:0 0 0 6px !important;padding:0 0 0 6px !important;border-top:0 !important;border-left:1px solid #e7edf4 !important}
  .woocommerce-MyAccount-navigation a{min-height:38px !important;padding:0 11px !important;font-size:11px !important;white-space:nowrap !important}
  .woocommerce-MyAccount-content{padding:16px !important}
  .bp-account-welcome{display:block !important;padding:16px !important}
  .bp-account-shop-btn{margin-top:13px !important}
  .bp-account-stats{grid-template-columns:1fr !important}
  .bp-account-order{grid-template-columns:1fr auto !important;gap:8px !important}
  .bp-account-order__status{justify-self:end !important}
  .bp-account-order__total{grid-column:1 !important}
  .bp-account-order__arrow{grid-column:2 !important;grid-row:2 !important;justify-self:end !important}
}
@media(max-width:420px){
  .bpm-wishlist-page ul.products.biopepers-wishlist-grid{grid-template-columns:1fr !important}
}


/* =========================================================
   0.2.40 HOMEPAGE CTA + CHECKOUT COUPON
========================================================= */

/* Checkout coupon form stays directly under its notice and never creates
   the oversized empty field/row shown by old Woo styles. */
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout_coupon{
  margin:10px 0 18px !important;
  padding:14px !important;
  border:1px solid #dce5f1 !important;
  border-radius:12px !important;
  background:#fff !important;
  box-shadow:0 8px 20px rgba(20,48,96,.04) !important;
  box-sizing:border-box !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout_coupon::before,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout_coupon::after{
  display:none !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout_coupon p{
  margin:0 !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout_coupon .form-row{
  float:none !important;
  width:auto !important;
  padding:0 !important;
  margin:0 !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout_coupon .form-row-first{
  display:inline-block !important;
  width:min(520px,calc(100% - 145px)) !important;
  vertical-align:middle !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout_coupon .form-row-last{
  display:inline-block !important;
  width:auto !important;
  margin-left:8px !important;
  vertical-align:middle !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout_coupon input.input-text{
  display:block !important;
  width:100% !important;
  height:46px !important;
  min-height:46px !important;
  padding:0 14px !important;
  border:1px solid #ccd7e6 !important;
  border-radius:9px !important;
  outline:0 !important;
  background:#fff !important;
  color:#17243a !important;
  box-sizing:border-box !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout_coupon input.input-text:focus{
  border-color:#0b3b97 !important;
  box-shadow:0 0 0 3px rgba(11,59,151,.08) !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout_coupon button.button{
  height:46px !important;
  min-height:46px !important;
  padding:0 20px !important;
  border:0 !important;
  border-radius:9px !important;
  background:#0b3b97 !important;
  color:#fff !important;
  font-weight:850 !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout_coupon button.button:hover{
  background:#082f7d !important;
}

@media(max-width:767px){
  body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout_coupon .form-row-first,
  body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout_coupon .form-row-last{
    display:block !important;
    width:100% !important;
    margin:0 !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout_coupon .form-row-last{
    margin-top:8px !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout_coupon button.button{
    width:100% !important;
  }
}

/* =========================================================
   0.2.41 WISHLIST + ACCOUNT CANONICAL FIX
========================================================= */

/* Homepage cards use custom markup, so keep the loop heart aligned exactly
   like the shop cards. */
.bp-home-product-card{
  position:relative !important;
}
.bp-home-product-card > .bp-wishlist-btn--loop{
  top:12px !important;
  left:12px !important;
}

/* Product summary: COA + wishlist must look like one control group. */
.single-product .bpm-coa-single,
.single-product .bp-wishlist-btn--single{
  vertical-align:middle !important;
}
.single-product .bpm-coa-single{
  display:inline-flex !important;
  margin:0 8px 16px 0 !important;
}
.single-product .bpm-coa-button,
.single-product .bp-wishlist-btn--single{
  box-sizing:border-box !important;
  min-height:42px !important;
  height:42px !important;
  padding:0 14px !important;
  border-radius:9px !important;
  align-items:center !important;
  justify-content:center !important;
  line-height:1 !important;
  font-size:12px !important;
  font-weight:850 !important;
}
.single-product .bp-wishlist-btn--single{
  display:inline-flex !important;
  margin:0 0 16px !important;
}
.single-product .bp-wishlist-btn--single .heart-icon{
  font-size:18px !important;
}

/* ---------- Canonical My Account shell ---------- */
.bp-account-page{
  width:min(calc(100% - 32px),1180px) !important;
  margin:0 auto !important;
  padding:38px 0 64px !important;
  color:#17243a !important;
}
.bp-account-page *{
  box-sizing:border-box !important;
}
.bp-account-page__hero{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:24px !important;
  margin-bottom:20px !important;
  padding:24px 26px !important;
  border:1px solid #dfe7f1 !important;
  border-radius:16px !important;
  background:linear-gradient(135deg,#ffffff 0%,#f6f9ff 100%) !important;
  box-shadow:0 10px 28px rgba(20,48,96,.055) !important;
}
.bp-account-page__eyebrow{
  display:block !important;
  margin-bottom:5px !important;
  color:#0b3b97 !important;
  font-size:10px !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:.075em !important;
}
.bp-account-page__hero h1{
  margin:0 !important;
  color:#17243a !important;
  font-size:32px !important;
  line-height:1.08 !important;
  font-weight:950 !important;
  letter-spacing:-.02em !important;
}
.bp-account-page__hero p{
  margin:7px 0 0 !important;
  max-width:690px !important;
  color:#6c788b !important;
  font-size:13px !important;
  line-height:1.5 !important;
}
.bp-account-page__user{
  flex:0 0 auto !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  min-width:190px !important;
  padding:10px 12px !important;
  border:1px solid #dce5f1 !important;
  border-radius:11px !important;
  background:#fff !important;
}
.bp-account-page__avatar{
  flex:0 0 38px !important;
  width:38px !important;
  height:38px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:10px !important;
  background:#0b3b97 !important;
  color:#fff !important;
  font-size:15px !important;
  font-weight:950 !important;
}
.bp-account-page__user small{
  display:block !important;
  color:#8994a4 !important;
  font-size:9px !important;
}
.bp-account-page__user strong{
  display:block !important;
  margin-top:1px !important;
  color:#17243a !important;
  font-size:12px !important;
}

.bp-account-layout{
  display:grid !important;
  grid-template-columns:245px minmax(0,1fr) !important;
  gap:20px !important;
  align-items:start !important;
}
.bp-account-sidebar{
  min-width:0 !important;
}
.bp-account-main{
  min-width:0 !important;
  padding:24px !important;
  border:1px solid #dfe7f1 !important;
  border-radius:15px !important;
  background:#fff !important;
  box-shadow:0 8px 24px rgba(20,48,96,.045) !important;
}

/* Reset Woo floats completely inside the canonical shell. */
.bp-account-page .woocommerce-MyAccount-navigation,
.bp-account-page .woocommerce-MyAccount-content{
  float:none !important;
  width:100% !important;
  margin:0 !important;
}
.bp-account-page .woocommerce-MyAccount-content{
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

/* Navigation */
.bp-account-nav{
  padding:8px !important;
  border:1px solid #dfe7f1 !important;
  border-radius:14px !important;
  background:#fff !important;
  box-shadow:0 8px 24px rgba(20,48,96,.045) !important;
}
.bp-account-nav ul{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
}
.bp-account-nav li{
  list-style:none !important;
  margin:2px 0 !important;
  padding:0 !important;
}
.bp-account-nav li::marker{
  content:"" !important;
  display:none !important;
}
.bp-account-nav a{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  min-height:46px !important;
  padding:0 12px !important;
  border-radius:9px !important;
  color:#56647a !important;
  text-decoration:none !important;
  font-size:12px !important;
  font-weight:820 !important;
  transition:background .16s ease,color .16s ease,transform .16s ease !important;
}
.bp-account-nav a:hover{
  background:#f2f6fc !important;
  color:#0b3b97 !important;
  transform:translateX(2px) !important;
}
.bp-account-nav .is-active a{
  background:#0b3b97 !important;
  color:#fff !important;
}
.bp-account-nav__icon{
  flex:0 0 30px !important;
  width:30px !important;
  height:30px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:8px !important;
  background:#edf4ff !important;
  color:#0b3b97 !important;
  font-size:14px !important;
  font-weight:900 !important;
}
.bp-account-nav .is-active .bp-account-nav__icon{
  background:rgba(255,255,255,.15) !important;
  color:#fff !important;
}
.bp-account-nav .woocommerce-MyAccount-navigation-link--customer-logout{
  margin-top:7px !important;
  padding-top:7px !important;
  border-top:1px solid #e8edf4 !important;
}
.bp-account-nav .woocommerce-MyAccount-navigation-link--customer-logout a{
  color:#9d3131 !important;
}

/* Dashboard/content cleanup */
.bp-account-main > p:first-child{
  margin-top:0 !important;
}
.bp-account-dashboard{
  margin:0 !important;
}
.bp-account-main h2,
.bp-account-main h3{
  color:#17243a !important;
}
.bp-account-main a{
  color:#0b3b97 !important;
}
.bp-account-main .woocommerce-notices-wrapper:empty{
  display:none !important;
}

/* Orders and forms remain readable across endpoints. */
.bp-account-main table.shop_table{
  width:100% !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  overflow:hidden !important;
  border:1px solid #e2e8f0 !important;
  border-radius:11px !important;
  background:#fff !important;
}
.bp-account-main table.shop_table th{
  padding:11px 12px !important;
  background:#f5f8fc !important;
  color:#56647a !important;
  font-size:10px !important;
  text-transform:uppercase !important;
  letter-spacing:.045em !important;
}
.bp-account-main table.shop_table td{
  padding:12px !important;
  border-top:1px solid #edf1f5 !important;
  color:#425069 !important;
  font-size:12px !important;
}
.bp-account-main .button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:38px !important;
  padding:0 13px !important;
  border:0 !important;
  border-radius:8px !important;
  background:#0b3b97 !important;
  color:#fff !important;
  text-decoration:none !important;
  font-size:11px !important;
  font-weight:850 !important;
}
.bp-account-main input,
.bp-account-main select,
.bp-account-main textarea{
  width:100% !important;
  min-height:44px !important;
  padding:9px 11px !important;
  border:1px solid #dce4ee !important;
  border-radius:8px !important;
  background:#fff !important;
}
.bp-account-main .form-row{
  margin-bottom:12px !important;
}
.bp-account-main fieldset{
  margin:20px 0 0 !important;
  padding:18px !important;
  border:1px solid #e3e9f1 !important;
  border-radius:11px !important;
}
.bp-account-main legend{
  padding:0 7px !important;
  color:#17243a !important;
  font-weight:850 !important;
}

/* Responsive from the same canonical shell. */
@media(max-width:900px){
  .bp-account-layout{
    grid-template-columns:210px minmax(0,1fr) !important;
    gap:14px !important;
  }
  .bp-account-page__hero{
    padding:20px !important;
  }
}
@media(max-width:767px){
  .bp-account-page{
    width:calc(100% - 20px) !important;
    padding:18px 0 38px !important;
  }
  .bp-account-page__hero{
    display:block !important;
    padding:17px !important;
  }
  .bp-account-page__hero h1{
    font-size:27px !important;
  }
  .bp-account-page__user{
    width:100% !important;
    margin-top:14px !important;
  }
  .bp-account-layout{
    display:block !important;
  }
  .bp-account-sidebar{
    margin-bottom:12px !important;
    overflow-x:auto !important;
  }
  .bp-account-nav{
    padding:6px !important;
  }
  .bp-account-nav ul{
    display:flex !important;
    gap:5px !important;
    min-width:max-content !important;
  }
  .bp-account-nav li{
    margin:0 !important;
  }
  .bp-account-nav a{
    min-height:40px !important;
    padding:0 10px !important;
    white-space:nowrap !important;
  }
  .bp-account-nav__icon{
    width:27px !important;
    height:27px !important;
    flex-basis:27px !important;
  }
  .bp-account-nav .woocommerce-MyAccount-navigation-link--customer-logout{
    margin:0 0 0 5px !important;
    padding:0 0 0 5px !important;
    border-top:0 !important;
    border-left:1px solid #e8edf4 !important;
  }
  .bp-account-main{
    padding:15px !important;
  }
  .bp-account-stats{
    grid-template-columns:1fr !important;
  }
  .bp-account-order{
    grid-template-columns:1fr auto !important;
    gap:8px !important;
  }
  .bp-account-order__status{
    grid-column:1 !important;
  }
  .bp-account-order__total{
    grid-column:2 !important;
    grid-row:1 !important;
  }
  .bp-account-order__arrow{
    display:none !important;
  }
}

@media(max-width:480px){
  .bp-home-product-card > .bp-wishlist-btn--loop{
    top:8px !important;
    left:8px !important;
  }
}


/* =========================================================
   0.2.42 MY ACCOUNT — FORCED CANONICAL ROUTER
========================================================= */

.bp-account-page--forced{
  width:min(calc(100% - 32px),1180px) !important;
  margin:0 auto !important;
  padding:36px 0 64px !important;
}

.bp-account-page--forced .bp-account-main{
  min-height:420px !important;
}

/* Dashboard */
.bp-account-welcome{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:20px !important;
  padding:22px !important;
  border:1px solid #e1e8f2 !important;
  border-radius:13px !important;
  background:linear-gradient(135deg,#f9fbff,#f3f7ff) !important;
}

.bp-account-eyebrow{
  display:block !important;
  margin-bottom:5px !important;
  color:#0b3b97 !important;
  font-size:9px !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:.075em !important;
}

.bp-account-welcome h2{
  margin:0 !important;
  font-size:25px !important;
  line-height:1.1 !important;
  font-weight:950 !important;
}

.bp-account-welcome p{
  margin:7px 0 0 !important;
  color:#6f7d91 !important;
  font-size:12px !important;
}

.bp-account-shop-btn{
  flex:0 0 auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:42px !important;
  padding:0 16px !important;
  border-radius:9px !important;
  background:#0b3b97 !important;
  color:#fff !important;
  text-decoration:none !important;
  font-size:11px !important;
  font-weight:850 !important;
}

.bp-account-stats{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
  margin:12px 0 !important;
}

.bp-account-stat{
  display:flex !important;
  align-items:center !important;
  gap:11px !important;
  min-height:84px !important;
  padding:14px !important;
  border:1px solid #e0e7f0 !important;
  border-radius:12px !important;
  background:#fff !important;
  text-decoration:none !important;
  transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease !important;
}

.bp-account-stat:hover{
  transform:translateY(-2px) !important;
  border-color:#aac0e8 !important;
  box-shadow:0 8px 18px rgba(11,59,151,.07) !important;
}

.bp-account-stat__icon{
  flex:0 0 40px !important;
  width:40px !important;
  height:40px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:10px !important;
  background:#edf4ff !important;
  color:#0b3b97 !important;
  font-size:17px !important;
  font-weight:900 !important;
}

.bp-account-stat strong{
  display:block !important;
  color:#17243a !important;
  font-size:19px !important;
  line-height:1.1 !important;
  font-weight:950 !important;
}

.bp-account-stat small{
  display:block !important;
  margin-top:3px !important;
  color:#8793a3 !important;
  font-size:10px !important;
}

.bp-account-section{
  margin-top:12px !important;
  padding:18px !important;
  border:1px solid #e0e7f0 !important;
  border-radius:12px !important;
  background:#fff !important;
}

.bp-account-section__head{
  display:flex !important;
  align-items:flex-end !important;
  justify-content:space-between !important;
  gap:12px !important;
  margin-bottom:12px !important;
}

.bp-account-section__head span{
  color:#8a95a5 !important;
  font-size:9px !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
  letter-spacing:.06em !important;
}

.bp-account-section__head h3{
  margin:2px 0 0 !important;
  font-size:18px !important;
  font-weight:900 !important;
}

.bp-account-section__head a{
  font-size:10px !important;
  font-weight:850 !important;
  text-decoration:none !important;
}

.bp-account-order-list{
  display:grid !important;
  gap:7px !important;
}

.bp-account-order{
  display:grid !important;
  grid-template-columns:minmax(150px,1fr) auto auto 22px !important;
  align-items:center !important;
  gap:12px !important;
  min-height:58px !important;
  padding:10px 12px !important;
  border:1px solid #e7ecf3 !important;
  border-radius:9px !important;
  color:#17243a !important;
  text-decoration:none !important;
}

.bp-account-order:hover{
  border-color:#aec2e7 !important;
  background:#f8fbff !important;
}

.bp-account-order > div strong{
  display:block !important;
  font-size:12px !important;
}

.bp-account-order > div span{
  display:block !important;
  margin-top:2px !important;
  color:#8a95a5 !important;
  font-size:9px !important;
}

.bp-account-order__status{
  padding:5px 8px !important;
  border-radius:999px !important;
  background:#edf4ff !important;
  color:#0b3b97 !important;
  font-size:9px !important;
  font-weight:850 !important;
}

.bp-account-order__total{
  white-space:nowrap !important;
  font-size:12px !important;
}

.bp-account-order__arrow{
  color:#0b3b97 !important;
  font-size:16px !important;
}

.bp-account-empty{
  padding:24px !important;
  border:1px dashed #d7e0ec !important;
  border-radius:10px !important;
  text-align:center !important;
  background:#fafcff !important;
}

.bp-account-empty strong{
  display:block !important;
  font-size:15px !important;
}

.bp-account-empty p{
  margin:6px 0 12px !important;
  color:#7b8797 !important;
  font-size:11px !important;
}

.bp-account-empty a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:38px !important;
  padding:0 13px !important;
  border-radius:8px !important;
  background:#0b3b97 !important;
  color:#fff !important;
  text-decoration:none !important;
  font-size:10px !important;
  font-weight:850 !important;
}

/* Native Woo endpoint content inside our card */
.bp-account-main .woocommerce-Address-title,
.bp-account-main .woocommerce-address-fields,
.bp-account-main .woocommerce-EditAccountForm,
.bp-account-main .woocommerce-orders-table{
  width:100% !important;
}

.bp-account-main .woocommerce-Addresses{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
}

.bp-account-main .woocommerce-Address{
  float:none !important;
  width:100% !important;
  margin:0 !important;
  padding:18px !important;
  border:1px solid #e1e8f1 !important;
  border-radius:11px !important;
  background:#fafcff !important;
}

.bp-account-main .woocommerce-Address-title{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  margin-bottom:10px !important;
}

.bp-account-main .woocommerce-Address-title h2{
  margin:0 !important;
  font-size:17px !important;
}

.bp-account-main .woocommerce-Address-title .edit{
  float:none !important;
  font-size:10px !important;
  font-weight:850 !important;
}

.bp-account-main address{
  color:#5d697c !important;
  font-size:12px !important;
  line-height:1.65 !important;
}

.bp-account-main .woocommerce-form-row,
.bp-account-main .form-row{
  float:none !important;
  width:100% !important;
}

.bp-account-main .form-row-first,
.bp-account-main .form-row-last{
  width:calc(50% - 6px) !important;
  display:inline-block !important;
  vertical-align:top !important;
}

.bp-account-main .form-row-first{
  margin-right:8px !important;
}

.bp-account-main label{
  display:block !important;
  margin-bottom:5px !important;
  color:#3d4a5f !important;
  font-size:11px !important;
  font-weight:800 !important;
}

.bp-account-main input.input-text,
.bp-account-main select,
.bp-account-main textarea{
  min-height:44px !important;
  border:1px solid #d5dfeb !important;
  border-radius:8px !important;
  background:#fff !important;
}

@media(max-width:767px){
  .bp-account-page--forced{
    width:calc(100% - 20px) !important;
    padding:18px 0 38px !important;
  }

  .bp-account-stats{
    grid-template-columns:1fr !important;
  }

  .bp-account-welcome{
    display:block !important;
  }

  .bp-account-shop-btn{
    margin-top:12px !important;
  }

  .bp-account-order{
    grid-template-columns:1fr auto !important;
  }

  .bp-account-order__status{
    grid-column:1 !important;
  }

  .bp-account-order__total{
    grid-column:2 !important;
    grid-row:1 !important;
  }

  .bp-account-order__arrow{
    display:none !important;
  }

  .bp-account-main .woocommerce-Addresses{
    grid-template-columns:1fr !important;
  }

  .bp-account-main .form-row-first,
  .bp-account-main .form-row-last{
    display:block !important;
    width:100% !important;
    margin-right:0 !important;
  }
}


/* =========================================================
   0.2.43 ACCOUNT VISUAL POLISH
========================================================= */

/* The dashboard CTA was visible only as a blue rectangle because a generic
   link rule was overriding its text color. Keep the text explicitly white. */
.bp-account-page .bp-account-shop-btn,
.bp-account-page .bp-account-shop-btn:visited,
.bp-account-page .bp-account-shop-btn:hover,
.bp-account-page .bp-account-shop-btn:focus{
  color:#fff !important;
  text-decoration:none !important;
}

/* Billing + shipping cards stay on one horizontal row on desktop. */
.bp-account-main .woocommerce-Addresses{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  align-items:stretch !important;
  gap:14px !important;
}

.bp-account-main .woocommerce-Address{
  float:none !important;
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  display:flex !important;
  flex-direction:column !important;
}

.bp-account-main .woocommerce-Address address{
  margin-top:auto !important;
}

/* Keep the two address cards aligned from the top instead of staggered. */
.bp-account-main .woocommerce-Addresses .woocommerce-Address:nth-child(1),
.bp-account-main .woocommerce-Addresses .woocommerce-Address:nth-child(2){
  grid-row:1 !important;
}

/* Orders endpoint notice/button alignment. */
.bp-account-main .woocommerce-info,
.bp-account-main .woocommerce-message,
.bp-account-main .woocommerce-error{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
  min-height:68px !important;
  padding:14px 16px !important;
  border:1px solid #dfe7f1 !important;
  border-top:3px solid #0b3b97 !important;
  border-radius:11px !important;
  background:#f8fbff !important;
  color:#3f4d62 !important;
}

.bp-account-main .woocommerce-info::before,
.bp-account-main .woocommerce-message::before,
.bp-account-main .woocommerce-error::before{
  position:static !important;
  flex:0 0 auto !important;
}

.bp-account-main .woocommerce-info .button,
.bp-account-main .woocommerce-message .button,
.bp-account-main .woocommerce-error .button{
  float:none !important;
  flex:0 0 auto !important;
  white-space:nowrap !important;
}

@media(max-width:767px){
  .bp-account-main .woocommerce-Addresses{
    grid-template-columns:1fr !important;
  }

  .bp-account-main .woocommerce-Addresses .woocommerce-Address:nth-child(1),
  .bp-account-main .woocommerce-Addresses .woocommerce-Address:nth-child(2){
    grid-row:auto !important;
  }

  .bp-account-main .woocommerce-info,
  .bp-account-main .woocommerce-message,
  .bp-account-main .woocommerce-error{
    align-items:flex-start !important;
    flex-direction:column !important;
  }

  .bp-account-main .woocommerce-info .button,
  .bp-account-main .woocommerce-message .button,
  .bp-account-main .woocommerce-error .button{
    width:100% !important;
  }
}


/* =========================================================
   0.2.44 MOBILE QA — SEARCH / ACCOUNT / CART / CHECKOUT
========================================================= */

/* ---------- Search modal: always above sticky header ---------- */
html.bp-search-active,
body.bp-search-active{
  overflow:hidden !important;
}

.bp-search{
  z-index:2147483000 !important;
}

@media(max-width:767px){
  .bp-search{
    display:flex !important;
    align-items:flex-start !important;
    justify-content:center !important;
    padding:
      max(10px,env(safe-area-inset-top))
      10px
      max(10px,env(safe-area-inset-bottom)) !important;
    box-sizing:border-box !important;
  }

  .bp-search__panel{
    position:relative !important;
    width:100% !important;
    max-width:none !important;
    max-height:calc(100dvh - 20px - env(safe-area-inset-top) - env(safe-area-inset-bottom)) !important;
    margin:0 !important;
    padding:18px 14px 14px !important;
    overflow:auto !important;
    -webkit-overflow-scrolling:touch !important;
    border-radius:16px !important;
  }

  .bp-search__form{
    margin-top:34px !important;
    gap:8px !important;
  }

  .bp-search__input,
  .bp-search__submit{
    width:100% !important;
  }

  /* iOS Safari zooms inputs below 16px. */
  .bp-search__input{
    font-size:16px !important;
  }
}

/* ---------- Mobile My Account fallback ----------
   This also styles the legacy Woo markup if a cached/mobile response bypasses
   our canonical account shell. */
@media(max-width:767px){
  body.woocommerce-account .site-main{
    background:#f4f7fb !important;
  }

  body.woocommerce-account .site-main > .bp-container,
  body.woocommerce-account .woocommerce{
    width:calc(100% - 20px) !important;
    max-width:none !important;
    margin:0 auto !important;
  }

  body.woocommerce-account .woocommerce{
    display:block !important;
    padding:18px 0 38px !important;
  }

  body.woocommerce-account .woocommerce > h2{
    margin:0 0 12px !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    font-size:27px !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation{
    float:none !important;
    width:100% !important;
    margin:0 0 12px !important;
    padding:6px !important;
    overflow-x:auto !important;
    border:1px solid #dfe7f1 !important;
    border-radius:13px !important;
    background:#fff !important;
    box-shadow:0 8px 22px rgba(20,48,96,.045) !important;
    -webkit-overflow-scrolling:touch !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    display:flex !important;
    gap:5px !important;
    width:max-content !important;
    min-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation li{
    flex:0 0 auto !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation li::marker{
    content:"" !important;
    display:none !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation a{
    display:flex !important;
    align-items:center !important;
    min-height:40px !important;
    padding:0 11px !important;
    border-radius:8px !important;
    white-space:nowrap !important;
    color:#56647a !important;
    text-decoration:none !important;
    font-size:12px !important;
    font-weight:800 !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{
    background:#0b3b97 !important;
    color:#fff !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content{
    float:none !important;
    width:100% !important;
    min-height:320px !important;
    margin:0 !important;
    padding:16px !important;
    border:1px solid #dfe7f1 !important;
    border-radius:14px !important;
    background:#fff !important;
    box-shadow:0 8px 24px rgba(20,48,96,.045) !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content input,
  body.woocommerce-account .woocommerce-MyAccount-content select,
  body.woocommerce-account .woocommerce-MyAccount-content textarea{
    font-size:16px !important;
  }
}

/* ---------- Cart mobile cards ---------- */
@media(max-width:767px){
  /* Woo adds data-title labels through ::before on responsive tables.
     Our mobile card already has its own visual hierarchy, so those generated
     labels were the stray dots/colons visible in the screenshots. */
  body.woocommerce-cart .bp-classic-cart-wrap table.shop_table_responsive tr.cart_item td::before,
  body.woocommerce-cart .bp-classic-cart-wrap table.shop_table_responsive tr.cart_item td::after{
    content:none !important;
    display:none !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap table.shop_table_responsive tr.cart_item{
    grid-template-columns:40px 74px minmax(0,1fr) !important;
    column-gap:12px !important;
    row-gap:9px !important;
    padding:14px !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap td.product-remove{
    align-self:center !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap td.product-remove a.remove{
    display:grid !important;
    place-items:center !important;
    width:36px !important;
    height:36px !important;
    margin:0 !important;
    border-radius:50% !important;
    background:#f1f4f8 !important;
    color:#66748a !important;
    text-decoration:none !important;
    box-shadow:none !important;
    outline:0 !important;
    -webkit-tap-highlight-color:transparent !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap td.product-remove a.remove:hover,
  body.woocommerce-cart .bp-classic-cart-wrap td.product-remove a.remove:focus,
  body.woocommerce-cart .bp-classic-cart-wrap td.product-remove a.remove:active{
    background:#f1f4f8 !important;
    color:#66748a !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap td.product-name,
  body.woocommerce-cart .bp-classic-cart-wrap td.product-price,
  body.woocommerce-cart .bp-classic-cart-wrap td.product-subtotal{
    line-height:1.35 !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap td.product-quantity{
    margin-top:2px !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .bp-qty-stepper{
    display:inline-grid !important;
    grid-template-columns:42px 52px 42px !important;
    align-items:center !important;
    width:auto !important;
    min-width:136px !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .bp-qty-stepper.is-loading::after{
    position:absolute !important;
    right:-21px !important;
    margin:0 !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .bp-qty-stepper{
    position:relative !important;
  }

  /* Avoid a second visual loading layer from Woo's generic blockUI while our
     quantity control already shows its own loader. */
  body.woocommerce-cart .bp-classic-cart-wrap .woocommerce-cart-form .blockUI.blockOverlay{
    background:transparent !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
}

/* ---------- Checkout: compact top section on phones ---------- */
@media(max-width:700px){
  body.woocommerce-checkout .site-main > .bp-container,
  body.woocommerce-checkout .site-main > div.bp-container{
    width:calc(100% - 20px) !important;
    padding-top:14px !important;
  }

  .bp-checkout-trust{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:6px !important;
    margin-bottom:10px !important;
  }

  .bp-checkout-trust__item{
    min-height:76px !important;
    display:block !important;
    padding:9px 7px !important;
    text-align:center !important;
    border-radius:10px !important;
  }

  .bp-checkout-trust__icon{
    width:30px !important;
    height:30px !important;
    margin:0 auto 6px !important;
    font-size:15px !important;
    border-radius:8px !important;
  }

  .bp-checkout-trust__item strong{
    font-size:10px !important;
    line-height:1.2 !important;
  }

  .bp-checkout-trust__item small{
    display:none !important;
  }

  body.woocommerce-checkout .bp-free-shipping-progress{
    margin-bottom:10px !important;
    padding:10px 11px !important;
    border-radius:11px !important;
  }

  body.woocommerce-checkout .bp-free-shipping-progress__top{
    grid-template-columns:auto minmax(0,1fr) auto !important;
    gap:7px !important;
    align-items:center !important;
  }

  body.woocommerce-checkout .bp-free-shipping-progress__goal{
    grid-column:3 !important;
    grid-row:1 !important;
    justify-self:end !important;
    margin:0 !important;
    font-size:11px !important;
  }

  body.woocommerce-checkout .bp-free-shipping-progress__text{
    font-size:11px !important;
    line-height:1.25 !important;
  }

  body.woocommerce-checkout .bp-free-shipping-progress__track{
    grid-column:1 / -1 !important;
    height:6px !important;
    margin-top:5px !important;
  }

  body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{
    margin-bottom:10px !important;
    padding:10px 12px !important;
    border-radius:10px !important;
    font-size:13px !important;
    line-height:1.35 !important;
  }
}

/* ---------- iPhone input zoom prevention ---------- */
@media(max-width:767px){
  body.woocommerce-checkout input,
  body.woocommerce-checkout select,
  body.woocommerce-checkout textarea,
  body.woocommerce-cart input,
  body.woocommerce-account input,
  body.woocommerce-account select,
  body.woocommerce-account textarea{
    font-size:16px !important;
  }
}

/* ---------- Venipak mobile overflow hardening ---------- */
@media(max-width:767px){
  body.woocommerce-checkout,
  body.woocommerce-checkout .site-main,
  body.woocommerce-checkout .woocommerce,
  body.woocommerce-checkout form.checkout,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout #order_review table,
  body.woocommerce-checkout #order_review tbody,
  body.woocommerce-checkout #order_review tr,
  body.woocommerce-checkout #order_review td{
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  body.woocommerce-checkout{
    overflow-x:hidden !important;
  }

  body.woocommerce-checkout #order_review .woocommerce-shipping-methods,
  body.woocommerce-checkout #order_review .woocommerce-shipping-methods > li,
  body.woocommerce-checkout #order_review .woocommerce-shipping-methods > li > label{
    max-width:100% !important;
    min-width:0 !important;
    overflow-wrap:anywhere !important;
    word-break:normal !important;
  }

  body.woocommerce-checkout #order_review .bpm-venipak-pickup-ui,
  body.woocommerce-checkout #order_review .bpm-venipak-pickup-ui > *,
  body.woocommerce-checkout #order_review .bpm-venipak-pickup-ui select,
  body.woocommerce-checkout #order_review .bpm-venipak-pickup-ui .select2-container,
  body.woocommerce-checkout #order_review .bpm-venipak-pickup-ui .select2-selection{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  body.woocommerce-checkout #order_review .bpm-venipak-pickup-ui select{
    text-overflow:ellipsis !important;
    overflow:hidden !important;
    white-space:nowrap !important;
  }

  body.woocommerce-checkout .select2-container--open{
    max-width:calc(100vw - 28px) !important;
  }

  body.woocommerce-checkout .select2-dropdown{
    max-width:calc(100vw - 28px) !important;
    box-sizing:border-box !important;
  }
}


/* =========================================================
   0.2.45 MOBILE QA ROUND 2 — CART STEPPER / CHECKOUT WRAP
========================================================= */

@media(max-width:767px){

  /* CART — make the quantity stepper deterministic on iOS.
     Flex is safer here than the previous grid override because Woo/table
     responsive rules can alter intrinsic widths of number inputs. */
  body.woocommerce-cart .bp-classic-cart-wrap .bp-qty-stepper{
    display:flex !important;
    flex-flow:row nowrap !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    width:132px !important;
    min-width:132px !important;
    max-width:132px !important;
    height:42px !important;
    min-height:42px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    border:1px solid #dce4ee !important;
    border-radius:10px !important;
    background:#fff !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .bp-qty-stepper .bp-qty-minus,
  body.woocommerce-cart .bp-classic-cart-wrap .bp-qty-stepper .bp-qty-plus{
    position:static !important;
    inset:auto !important;
    transform:none !important;
    float:none !important;
    display:grid !important;
    place-items:center !important;
    flex:0 0 40px !important;
    width:40px !important;
    min-width:40px !important;
    max-width:40px !important;
    height:40px !important;
    min-height:40px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:#f4f7fc !important;
    color:#0b3b97 !important;
    font-size:20px !important;
    line-height:1 !important;
    font-weight:900 !important;
    opacity:1 !important;
    visibility:visible !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .bp-qty-stepper .bp-qty-minus{
    order:1 !important;
    border-right:1px solid #e4eaf2 !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .bp-qty-stepper .bp-qty-input{
    order:2 !important;
    display:block !important;
    flex:0 0 50px !important;
    width:50px !important;
    min-width:50px !important;
    max-width:50px !important;
    height:40px !important;
    min-height:40px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:#fff !important;
    color:#17243a !important;
    text-align:center !important;
    line-height:40px !important;
    font-size:16px !important;
    font-weight:650 !important;
    opacity:1 !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .bp-qty-stepper .bp-qty-plus{
    order:3 !important;
    border-left:1px solid #e4eaf2 !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap td.product-quantity{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    min-width:0 !important;
    overflow:visible !important;
  }

  /* Keep loader outside the control without masking + / −. */
  body.woocommerce-cart .bp-classic-cart-wrap .bp-qty-stepper.is-loading{
    opacity:.62 !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap .bp-qty-stepper.is-loading::after{
    right:-18px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
  }

  /* Slightly cleaner product card spacing. */
  body.woocommerce-cart .bp-classic-cart-wrap tr.cart_item{
    grid-template-columns:38px 72px minmax(0,1fr) !important;
    column-gap:11px !important;
    row-gap:8px !important;
  }

  body.woocommerce-cart .bp-classic-cart-wrap td.product-name{
    padding-right:2px !important;
    overflow-wrap:anywhere !important;
  }

  /* Free-shipping goal stays visually attached to the message on mobile. */
  body.woocommerce-cart .bp-free-shipping-progress__top{
    grid-template-columns:auto minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:7px !important;
  }

  body.woocommerce-cart .bp-free-shipping-progress__goal{
    grid-column:3 !important;
    grid-row:1 !important;
    align-self:center !important;
    justify-self:end !important;
    margin:0 !important;
    white-space:nowrap !important;
  }

  /* CHECKOUT — long Venipak method names must wrap inside the card,
     never expand the document horizontally. */
  body.woocommerce-checkout #order_review .woocommerce-shipping-methods > li{
    display:grid !important;
    grid-template-columns:24px minmax(0,1fr) !important;
    align-items:start !important;
    column-gap:8px !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow:hidden !important;
  }

  body.woocommerce-checkout #order_review .woocommerce-shipping-methods > li > input{
    grid-column:1 !important;
    margin:4px 0 0 !important;
  }

  body.woocommerce-checkout #order_review .woocommerce-shipping-methods > li > label{
    grid-column:2 !important;
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    word-break:normal !important;
    line-height:1.35 !important;
  }

  body.woocommerce-checkout #order_review{
    overflow:hidden !important;
  }

  body.woocommerce-checkout #order_review .bpm-venipak-pickup-ui{
    overflow:hidden !important;
  }

  body.woocommerce-checkout #order_review .bpm-venipak-pickup-ui select{
    width:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }
}


/* =========================================================
   0.2.46 MOBILE ACCOUNT — HARD RESET + CANONICAL LAYOUT
========================================================= */

@media(max-width:767px){

  body.woocommerce-account,
  body.woocommerce-account .site-main{
    background:#f4f7fb !important;
  }

  body.woocommerce-account .site-main{
    overflow-x:hidden !important;
  }

  /* Canonical shell */
  body.woocommerce-account .bp-account-page,
  body.woocommerce-account .bp-account-page--forced{
    width:calc(100% - 20px) !important;
    max-width:none !important;
    margin:0 auto !important;
    padding:18px 0 38px !important;
  }

  body.woocommerce-account .bp-account-page__hero{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:12px !important;
    margin:0 0 12px !important;
    padding:16px !important;
    border:1px solid #dfe7f1 !important;
    border-radius:14px !important;
    background:#fff !important;
    box-shadow:0 8px 24px rgba(20,48,96,.045) !important;
  }

  body.woocommerce-account .bp-account-page__hero h1{
    margin:2px 0 0 !important;
    font-size:24px !important;
    line-height:1.08 !important;
    color:#17243a !important;
  }

  body.woocommerce-account .bp-account-page__hero p{
    margin:6px 0 0 !important;
    color:#728096 !important;
    font-size:11px !important;
    line-height:1.45 !important;
  }

  body.woocommerce-account .bp-account-page__eyebrow{
    display:block !important;
    color:#0b3b97 !important;
    font-size:8px !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
    letter-spacing:.07em !important;
  }

  body.woocommerce-account .bp-account-page__user{
    flex:0 0 auto !important;
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    padding:7px 9px !important;
    border:1px solid #dfe7f1 !important;
    border-radius:10px !important;
    background:#fafcff !important;
  }

  body.woocommerce-account .bp-account-page__avatar{
    width:34px !important;
    height:34px !important;
    display:grid !important;
    place-items:center !important;
    border-radius:9px !important;
    background:#0b3b97 !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:900 !important;
  }

  body.woocommerce-account .bp-account-page__user small{
    display:block !important;
    color:#8995a5 !important;
    font-size:8px !important;
  }

  body.woocommerce-account .bp-account-page__user strong{
    display:block !important;
    max-width:84px !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
    color:#17243a !important;
    font-size:10px !important;
  }

  body.woocommerce-account .bp-account-layout{
    display:block !important;
    width:100% !important;
  }

  body.woocommerce-account .bp-account-sidebar{
    width:100% !important;
    margin:0 0 10px !important;
    padding:0 !important;
  }

  body.woocommerce-account .bp-account-nav{
    width:100% !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    padding:6px !important;
    border:1px solid #dfe7f1 !important;
    border-radius:13px !important;
    background:#fff !important;
    box-shadow:0 8px 22px rgba(20,48,96,.04) !important;
    -webkit-overflow-scrolling:touch !important;
    scrollbar-width:none !important;
  }

  body.woocommerce-account .bp-account-nav::-webkit-scrollbar{
    display:none !important;
  }

  body.woocommerce-account .bp-account-nav ul{
    display:flex !important;
    flex-flow:row nowrap !important;
    gap:5px !important;
    width:max-content !important;
    min-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
  }

  body.woocommerce-account .bp-account-nav li{
    flex:0 0 auto !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
  }

  body.woocommerce-account .bp-account-nav li::before,
  body.woocommerce-account .bp-account-nav li::after,
  body.woocommerce-account .bp-account-nav li::marker{
    content:none !important;
    display:none !important;
  }

  body.woocommerce-account .bp-account-nav a{
    display:flex !important;
    align-items:center !important;
    gap:6px !important;
    min-height:40px !important;
    padding:0 10px !important;
    border-radius:9px !important;
    color:#526178 !important;
    text-decoration:none !important;
    white-space:nowrap !important;
    font-size:11px !important;
    font-weight:800 !important;
  }

  body.woocommerce-account .bp-account-nav__icon{
    width:26px !important;
    height:26px !important;
    display:grid !important;
    place-items:center !important;
    border-radius:8px !important;
    background:#edf4ff !important;
    color:#0b3b97 !important;
    font-size:12px !important;
    line-height:1 !important;
  }

  body.woocommerce-account .bp-account-nav li.is-active a{
    background:#0b3b97 !important;
    color:#fff !important;
  }

  body.woocommerce-account .bp-account-nav li.is-active .bp-account-nav__icon{
    background:rgba(255,255,255,.14) !important;
    color:#fff !important;
  }

  body.woocommerce-account .bp-account-main{
    width:100% !important;
    min-height:360px !important;
    margin:0 !important;
    padding:14px !important;
    overflow:hidden !important;
    border:1px solid #dfe7f1 !important;
    border-radius:14px !important;
    background:#fff !important;
    box-shadow:0 10px 28px rgba(20,48,96,.045) !important;
  }

  /* Dashboard content */
  body.woocommerce-account .bp-account-welcome{
    display:block !important;
    margin:0 0 10px !important;
    padding:15px !important;
    border:1px solid #e1e8f2 !important;
    border-radius:12px !important;
    background:linear-gradient(135deg,#f9fbff,#f3f7ff) !important;
  }

  body.woocommerce-account .bp-account-welcome h2{
    margin:2px 0 0 !important;
    font-size:22px !important;
  }

  body.woocommerce-account .bp-account-welcome p{
    margin:6px 0 0 !important;
    font-size:11px !important;
    line-height:1.45 !important;
  }

  body.woocommerce-account .bp-account-shop-btn{
    display:inline-flex !important;
    width:auto !important;
    min-width:0 !important;
    min-height:38px !important;
    margin-top:11px !important;
    padding:0 13px !important;
    border-radius:8px !important;
    background:#0b3b97 !important;
    color:#fff !important;
    font-size:10px !important;
  }

  body.woocommerce-account .bp-account-stats{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
    margin:0 0 10px !important;
  }

  body.woocommerce-account .bp-account-stat{
    min-height:66px !important;
    padding:11px 12px !important;
    border-radius:11px !important;
  }

  body.woocommerce-account .bp-account-stat__icon{
    flex:0 0 36px !important;
    width:36px !important;
    height:36px !important;
  }

  body.woocommerce-account .bp-account-stat strong{
    font-size:16px !important;
  }

  body.woocommerce-account .bp-account-section{
    margin:0 !important;
    padding:14px !important;
    border-radius:11px !important;
  }

  body.woocommerce-account .bp-account-order{
    grid-template-columns:minmax(0,1fr) auto !important;
    gap:8px !important;
    padding:10px !important;
  }

  body.woocommerce-account .bp-account-order__status{
    grid-column:1 !important;
  }

  body.woocommerce-account .bp-account-order__total{
    grid-column:2 !important;
    grid-row:1 !important;
  }

  body.woocommerce-account .bp-account-order__arrow{
    display:none !important;
  }

  /* Native endpoint forms/tables */
  body.woocommerce-account .bp-account-main .woocommerce-Addresses{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  body.woocommerce-account .bp-account-main .woocommerce-Address{
    grid-row:auto !important;
    width:100% !important;
    min-width:0 !important;
    padding:14px !important;
    border-radius:10px !important;
  }

  body.woocommerce-account .bp-account-main .woocommerce-Address-title{
    align-items:flex-start !important;
  }

  body.woocommerce-account .bp-account-main .woocommerce-Address-title h2{
    font-size:15px !important;
  }

  body.woocommerce-account .bp-account-main .woocommerce-orders-table,
  body.woocommerce-account .bp-account-main .woocommerce-orders-table tbody,
  body.woocommerce-account .bp-account-main .woocommerce-orders-table tr,
  body.woocommerce-account .bp-account-main .woocommerce-orders-table td{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }

  body.woocommerce-account .bp-account-main .woocommerce-orders-table thead{
    display:none !important;
  }

  body.woocommerce-account .bp-account-main .woocommerce-orders-table tr{
    display:block !important;
    margin:0 0 9px !important;
    padding:10px !important;
    border:1px solid #e3e9f1 !important;
    border-radius:10px !important;
    background:#fafcff !important;
  }

  body.woocommerce-account .bp-account-main .woocommerce-orders-table td{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
    padding:7px 0 !important;
    border:0 !important;
    border-bottom:1px solid #edf1f5 !important;
    text-align:right !important;
  }

  body.woocommerce-account .bp-account-main .woocommerce-orders-table td:last-child{
    border-bottom:0 !important;
  }

  body.woocommerce-account .bp-account-main .woocommerce-orders-table td::before{
    content:attr(data-title) !important;
    flex:1 1 auto !important;
    color:#6f7d91 !important;
    text-align:left !important;
    font-size:10px !important;
    font-weight:800 !important;
  }

  body.woocommerce-account .bp-account-main input,
  body.woocommerce-account .bp-account-main select,
  body.woocommerce-account .bp-account-main textarea{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    font-size:16px !important;
  }

  body.woocommerce-account .bp-account-main .form-row-first,
  body.woocommerce-account .bp-account-main .form-row-last{
    display:block !important;
    width:100% !important;
    margin-right:0 !important;
  }

  body.woocommerce-account .bp-account-main button,
  body.woocommerce-account .bp-account-main .button{
    max-width:100% !important;
    white-space:normal !important;
  }

  /* Native/legacy Woo fallback — hard reset to same visual language */
  body.woocommerce-account .woocommerce:not(.bp-account-page){
    width:calc(100% - 20px) !important;
    max-width:none !important;
    margin:0 auto !important;
    padding:18px 0 38px !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation{
    float:none !important;
    width:100% !important;
    margin:0 0 10px !important;
    padding:6px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    border:1px solid #dfe7f1 !important;
    border-radius:13px !important;
    background:#fff !important;
    box-shadow:0 8px 22px rgba(20,48,96,.04) !important;
    -webkit-overflow-scrolling:touch !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    display:flex !important;
    flex-flow:row nowrap !important;
    gap:5px !important;
    width:max-content !important;
    min-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation li{
    flex:0 0 auto !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation li::before,
  body.woocommerce-account .woocommerce-MyAccount-navigation li::after,
  body.woocommerce-account .woocommerce-MyAccount-navigation li::marker{
    content:none !important;
    display:none !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation a{
    display:flex !important;
    align-items:center !important;
    min-height:40px !important;
    padding:0 11px !important;
    border-radius:8px !important;
    white-space:nowrap !important;
    color:#56647a !important;
    text-decoration:none !important;
    font-size:11px !important;
    font-weight:800 !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{
    background:#0b3b97 !important;
    color:#fff !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content{
    float:none !important;
    width:100% !important;
    min-height:360px !important;
    margin:0 !important;
    padding:14px !important;
    border:1px solid #dfe7f1 !important;
    border-radius:14px !important;
    background:#fff !important;
    box-shadow:0 10px 28px rgba(20,48,96,.045) !important;
  }
}



/* =========================================================
   0.2.47 ACCOUNT STANDALONE MOBILE
========================================================= */
.bp-account-standalone-main{
  min-height:70vh !important;
  background:#f4f7fb !important;
}

@media(max-width:767px){
  .bp-account-standalone-main .bp-account-page{
    width:calc(100% - 20px) !important;
    margin:0 auto !important;
    padding:16px 0 36px !important;
  }

  .bp-account-standalone-main .bp-account-page__hero{
    display:block !important;
    margin:0 0 10px !important;
    padding:16px !important;
    border:1px solid #dfe7f1 !important;
    border-radius:14px !important;
    background:#fff !important;
    box-shadow:0 8px 22px rgba(20,48,96,.045) !important;
  }

  .bp-account-standalone-main .bp-account-page__hero h1{
    margin:2px 0 0 !important;
    font-size:25px !important;
    color:#17243a !important;
  }

  .bp-account-standalone-main .bp-account-page__hero p{
    margin:6px 0 0 !important;
    color:#728096 !important;
    font-size:11px !important;
    line-height:1.45 !important;
  }

  .bp-account-standalone-main .bp-account-page__user{
    width:100% !important;
    margin-top:12px !important;
  }

  .bp-account-standalone-main .bp-account-layout{
    display:block !important;
  }

  .bp-account-standalone-main .bp-account-sidebar{
    margin-bottom:10px !important;
    overflow:hidden !important;
  }

  .bp-account-standalone-main .bp-account-nav{
    width:100% !important;
    overflow-x:auto !important;
    padding:6px !important;
    border:1px solid #dfe7f1 !important;
    border-radius:13px !important;
    background:#fff !important;
    -webkit-overflow-scrolling:touch !important;
  }

  .bp-account-standalone-main .bp-account-nav ul{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:5px !important;
    width:max-content !important;
    min-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
  }

  .bp-account-standalone-main .bp-account-nav li{
    flex:0 0 auto !important;
    margin:0 !important;
    list-style:none !important;
  }

  .bp-account-standalone-main .bp-account-nav a{
    display:flex !important;
    align-items:center !important;
    gap:6px !important;
    min-height:40px !important;
    padding:0 10px !important;
    border-radius:8px !important;
    color:#56647a !important;
    text-decoration:none !important;
    white-space:nowrap !important;
    font-size:11px !important;
    font-weight:800 !important;
  }

  .bp-account-standalone-main .bp-account-nav .is-active a{
    background:#0b3b97 !important;
    color:#fff !important;
  }

  .bp-account-standalone-main .bp-account-main{
    width:100% !important;
    min-height:340px !important;
    padding:14px !important;
    border:1px solid #dfe7f1 !important;
    border-radius:14px !important;
    background:#fff !important;
    box-shadow:0 8px 24px rgba(20,48,96,.045) !important;
  }

  .bp-account-standalone-main .bp-account-stats,
  .bp-account-standalone-main .bp-customer-info-grid,
  .bp-account-standalone-main .woocommerce-Addresses{
    grid-template-columns:1fr !important;
  }

  .bp-account-standalone-main input,
  .bp-account-standalone-main select,
  .bp-account-standalone-main textarea{
    max-width:100% !important;
    font-size:16px !important;
    box-sizing:border-box !important;
  }
}


/* =========================================================
   0.2.48 ACCOUNT STANDALONE — CLASS-INDEPENDENT MOBILE
========================================================= */
@media(max-width:767px){
  .bp-account-standalone-main{
    display:block !important;
    width:100% !important;
    min-height:70vh !important;
    padding:0 !important;
    background:#f4f7fb !important;
  }

  .bp-account-standalone-main > .bp-account-page{
    display:block !important;
    width:calc(100% - 20px) !important;
    max-width:none !important;
    margin:0 auto !important;
    padding:16px 0 36px !important;
  }

  .bp-account-standalone-main .bp-account-layout{
    display:flex !important;
    flex-direction:column !important;
    width:100% !important;
    gap:10px !important;
  }

  .bp-account-standalone-main .bp-account-sidebar,
  .bp-account-standalone-main .bp-account-main{
    display:block !important;
    float:none !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
  }

  .bp-account-standalone-main .bp-account-main{
    padding:14px !important;
    overflow:hidden !important;
    border:1px solid #dfe7f1 !important;
    border-radius:14px !important;
    background:#fff !important;
    box-shadow:0 8px 24px rgba(20,48,96,.045) !important;
  }

  .bp-account-standalone-main .bp-account-nav{
    display:block !important;
    width:100% !important;
    overflow-x:auto !important;
    border:1px solid #dfe7f1 !important;
    border-radius:13px !important;
    background:#fff !important;
  }

  .bp-account-standalone-main .bp-account-nav ul{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    width:max-content !important;
    min-width:100% !important;
    margin:0 !important;
    padding:6px !important;
    gap:5px !important;
    list-style:none !important;
  }

  .bp-account-standalone-main .bp-account-nav li{
    display:block !important;
    flex:0 0 auto !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
  }

  .bp-account-standalone-main .bp-account-nav li::marker,
  .bp-account-standalone-main .bp-account-nav li::before{
    content:none !important;
    display:none !important;
  }
}


/* =========================================================
   0.2.49 ATOMIC CART SYNC
========================================================= */
.bp-classic-cart-wrap{
  position:relative;
}
.bp-classic-cart-wrap.bp-cart-syncing::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:25;
  border-radius:inherit;
  background:rgba(244,247,251,.38);
  pointer-events:all;
}
.bp-classic-cart-wrap.bp-cart-syncing::before{
  content:"";
  position:absolute;
  z-index:26;
  top:22px;
  left:50%;
  width:22px;
  height:22px;
  margin-left:-11px;
  border:3px solid rgba(11,59,151,.16);
  border-top-color:#0b3b97;
  border-radius:50%;
  animation:bp-cart-sync-spin .7s linear infinite;
}
@keyframes bp-cart-sync-spin{to{transform:rotate(360deg)}}

@media(max-width:767px){
  .bp-classic-cart-wrap.bp-cart-syncing::before{
    position:fixed;
    top:50%;
    left:50%;
    margin:-13px 0 0 -13px;
    width:26px;
    height:26px;
    z-index:10002;
  }
  .bp-classic-cart-wrap.bp-cart-syncing::after{
    position:fixed;
    inset:0;
    z-index:10001;
    border-radius:0;
    background:rgba(244,247,251,.55);
    backdrop-filter:blur(1px);
  }
}


/* =========================================================
   0.2.50 ACCOUNT AUTH STATE + CACHE-SAFE SHELL
========================================================= */
.bp-account-guest{
  width:min(1180px,calc(100% - 48px));
  margin:0 auto;
  padding:48px 0 72px;
}
.bp-account-guest__intro{
  margin-bottom:18px;
  padding:28px 30px;
  border:1px solid #dfe7f1;
  border-radius:18px;
  background:#fff;
  box-shadow:0 12px 34px rgba(20,48,96,.055);
}
.bp-account-guest__intro h1{
  margin:5px 0 7px;
  color:#17243a;
  font-size:34px;
  line-height:1.12;
}
.bp-account-guest__intro p{
  margin:0;
  color:#728096;
}
.bp-account-guest__form{
  padding:28px 30px;
  border:1px solid #dfe7f1;
  border-radius:18px;
  background:#fff;
  box-shadow:0 12px 34px rgba(20,48,96,.055);
}
.bp-account-guest__form .woocommerce{
  width:100%;
}
.bp-account-guest__form .woocommerce-form-login{
  max-width:620px;
  margin:0 auto !important;
  padding:0 !important;
  border:0 !important;
}
.bp-account-guest__form input.input-text{
  width:100% !important;
  min-height:52px;
  padding:0 15px !important;
  border:1px solid #d8e1ed !important;
  border-radius:10px !important;
  background:#fff !important;
}
.bp-account-guest__form .woocommerce-button{
  min-height:48px !important;
  padding:0 24px !important;
  border-radius:10px !important;
  background:#0b3b97 !important;
  color:#fff !important;
  font-weight:800 !important;
}
.bp-account-guest__form .woocommerce-LostPassword{
  margin-top:14px !important;
}

@media(max-width:767px){
  .bp-account-guest{
    width:calc(100% - 20px) !important;
    padding:18px 0 36px !important;
  }
  .bp-account-guest__intro,
  .bp-account-guest__form{
    padding:18px !important;
    border-radius:14px !important;
  }
  .bp-account-guest__intro h1{
    font-size:27px !important;
  }
  .bp-account-guest__form input.input-text{
    font-size:16px !important;
  }
}


/* =========================================================
   0.2.51 LOGIN + REGISTRATION UI
========================================================= */
.bp-auth-card{
  width:min(820px,100%);
  margin:0 auto;
  overflow:hidden;
  border:1px solid #dfe7f1;
  border-radius:18px;
  background:#fff;
  box-shadow:0 14px 38px rgba(20,48,96,.065);
}
.bp-auth-tabs{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:6px;
  padding:8px;
  border-bottom:1px solid #e4eaf2;
  background:#f6f8fc;
}
.bp-auth-tab{
  min-height:48px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:#59687e;
  font-size:15px;
  font-weight:800;
  cursor:pointer;
}
.bp-auth-tab.is-active{
  background:#0b3b97;
  color:#fff;
  box-shadow:0 6px 18px rgba(11,59,151,.18);
}
.bp-auth-panel{
  padding:28px 30px 30px;
}
.bp-auth-panel[hidden]{display:none !important}
.bp-auth-panel h2{
  margin:0 0 5px;
  color:#17243a;
  font-size:25px;
}
.bp-auth-lead{
  margin:0 0 22px;
  color:#728096;
}
.bp-auth-panel label{
  display:block;
  margin:0 0 7px;
  color:#27364e;
  font-weight:750;
}
.bp-auth-panel input[type="text"],
.bp-auth-panel input[type="email"],
.bp-auth-panel input[type="password"]{
  width:100% !important;
  min-height:52px;
  padding:0 14px !important;
  border:1px solid #d8e1ed !important;
  border-radius:10px !important;
  background:#fff !important;
  box-sizing:border-box !important;
}
.bp-register-passwords{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.bp-register-passwords small{
  display:block;
  margin-top:6px;
  color:#8591a4;
}
.bp-register-submit,
.bp-auth-panel .woocommerce-button{
  min-height:50px !important;
  padding:0 24px !important;
  border:0 !important;
  border-radius:10px !important;
  background:#0b3b97 !important;
  color:#fff !important;
  font-weight:800 !important;
  cursor:pointer;
}
.bp-register-submit{
  width:100%;
  margin-top:5px;
}
.bp-register-note{
  margin:12px 0 0;
  text-align:center;
  color:#7c899d;
  font-size:13px;
}
.bp-auth-panel .woocommerce-form-login{
  max-width:none !important;
}
.bp-auth-panel .woocommerce-form-login__rememberme{
  display:inline-flex;
  align-items:center;
  gap:7px;
}
.bp-auth-panel .woocommerce-LostPassword{
  margin-top:14px !important;
}

@media(max-width:767px){
  .bp-auth-card{border-radius:14px}
  .bp-auth-tabs{gap:4px;padding:6px}
  .bp-auth-tab{
    min-height:44px;
    padding:0 8px;
    font-size:13px;
  }
  .bp-auth-panel{padding:20px 16px 22px}
  .bp-auth-panel h2{font-size:22px}
  .bp-register-passwords{
    grid-template-columns:1fr;
    gap:0;
  }
  .bp-auth-panel input[type="text"],
  .bp-auth-panel input[type="email"],
  .bp-auth-panel input[type="password"]{
    font-size:16px !important;
  }
}


/* =========================================================
   v0.2.53 — Sale UI polish
   Visual-only; no JS or additional frontend asset requests.
========================================================= */
.bp-sale-badge,
.woocommerce span.onsale.bp-sale-badge{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-width:0!important;
  min-height:0!important;
  width:auto!important;
  height:auto!important;
  padding:6px 10px!important;
  border:1px solid #efb3b3!important;
  border-radius:8px!important;
  background:#fff1f1!important;
  color:#a61b1b!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:850!important;
  letter-spacing:.01em!important;
  text-transform:uppercase;
  box-shadow:0 3px 10px rgba(166,27,27,.08);
  margin:0!important;
}
.bp-home-product-card{position:relative}
.bp-home-product-card > .bp-sale-badge--home{
  position:absolute;
  z-index:7;
  top:58px;
  right:14px;
}
.woocommerce ul.products li.product{position:relative}
.woocommerce ul.products li.product .bp-sale-badge--woo{
  position:absolute!important;
  z-index:7!important;
  top:56px!important;
  right:12px!important;
  left:auto!important;
}
/* Single product: sale lives in the summary control row, not on top of the gallery. */
.single-product .bp-sale-badge--single-summary{
  display:inline-flex!important;
  vertical-align:middle!important;
  min-height:42px!important;
  height:42px!important;
  padding:0 13px!important;
  margin:0 0 16px 8px!important;
  border-radius:9px!important;
  box-sizing:border-box!important;
}
.bp-home-product-card__price del,
.woocommerce ul.products li.product .price del,
.bp-single-product-page div.product p.price del{
  opacity:.55!important;
  font-weight:600!important;
  margin-right:7px;
}
.bp-home-product-card__price ins,
.woocommerce ul.products li.product .price ins,
.bp-single-product-page div.product p.price ins{
  color:var(--bp-blue)!important;
  text-decoration:none!important;
  font-weight:850!important;
}
/* Best-value is informational only. The active quantity is the only strongly selected card. */
.bp-tier--best{
  border-color:#dbe4f0!important;
  background:#fff!important;
  box-shadow:none!important;
}
.bp-tier--best:hover{
  border-color:#88a9e5!important;
  background:#fff!important;
}
.bp-tier.is-selected{
  border-color:#0b3b97!important;
  background:#edf4ff!important;
  box-shadow:0 0 0 2px rgba(11,59,151,.12),0 8px 18px rgba(11,59,151,.08)!important;
}
.bp-tier__flag{
  background:#eaf2ff!important;
  color:#0b3b97!important;
  border:1px solid #bfd2f2!important;
}
.bp-tier.is-selected .bp-tier__flag{
  background:#0b3b97!important;
  color:#fff!important;
  border-color:#0b3b97!important;
}
@media(max-width:767px){
  .bp-sale-badge,.woocommerce span.onsale.bp-sale-badge{padding:5px 8px!important;font-size:10px!important;border-radius:7px!important}
  .bp-home-product-card > .bp-sale-badge--home{top:48px;right:10px}
  .woocommerce ul.products li.product .bp-sale-badge--woo{top:46px!important;right:9px!important}
  .single-product .bp-sale-badge--single-summary{height:38px!important;min-height:38px!important;padding:0 10px!important;margin-left:6px!important}
}


/* =========================================================
   v0.2.54 — Sale badge + stock-aware quantity tier polish
   CSS only; no additional frontend requests.
========================================================= */

/* Sale badge: percentage is a small supporting signal, never a hero overlay. */
.bp-sale-badge,
.woocommerce span.onsale.bp-sale-badge{
  padding:4px 7px!important;
  border-radius:999px!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.015em!important;
  box-shadow:none!important;
}

/* Home: render badge in the card footer, directly under the title. */
.bp-home-product-card__body{
  grid-template-areas:
    "title title"
    "sale sale"
    "price button" !important;
}
.bp-home-product-card > .bp-sale-badge--home,
.bp-home-product-card .bp-sale-badge--home{
  position:static!important;
  grid-area:sale!important;
  justify-self:start!important;
  align-self:center!important;
  margin:-2px 0 0!important;
}

/* Woo shop/archive: badge is rendered in the text area before price. */
.woocommerce ul.products li.product .bp-sale-badge--woo,
.woocommerce-page ul.products li.product .bp-sale-badge--woo{
  position:static!important;
  display:inline-flex!important;
  align-self:flex-start!important;
  margin:0 0 7px!important;
}

/* Single product: keep the compact percentage badge beside COA / wishlist. */
.single-product .bp-sale-badge--single-summary{
  height:38px!important;
  min-height:38px!important;
  padding:0 10px!important;
  margin:0 0 16px 7px!important;
  border-radius:9px!important;
  font-size:10px!important;
}

/* Best-value is informational, not a second selected state. */
.bp-tier__flag{
  position:absolute!important;
  top:auto!important;
  right:10px!important;
  bottom:8px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#708097!important;
  font-size:7.5px!important;
  font-weight:850!important;
  letter-spacing:.035em!important;
  box-shadow:none!important;
}
.bp-tier.is-selected .bp-tier__flag{
  background:transparent!important;
  color:#5a6d8b!important;
  border:0!important;
}
.bp-tier--best{
  padding-bottom:26px!important;
}

/* Unreachable tiers caused by finite stock are visibly unavailable. */
.bp-tier.bp-tier--disabled,
.bp-tier.bp-tier--disabled:hover{
  transform:none!important;
  cursor:not-allowed!important;
  border-color:#e1e6ee!important;
  background:#f6f7f9!important;
  box-shadow:none!important;
  opacity:.62!important;
}
.bp-tier--disabled strong,
.bp-tier--disabled .bp-tier__qty,
.bp-tier--disabled .bp-tier__unit,
.bp-tier--disabled small,
.bp-tier--disabled .bp-tier__flag{
  color:#7e8896!important;
}
.bp-tier--disabled .bp-tier__stock-note{
  color:#667085!important;
  font-weight:800!important;
}
.bp-tier--disabled.is-selected{
  border-color:#e1e6ee!important;
  background:#f6f7f9!important;
  box-shadow:none!important;
}

@media(max-width:767px){
  .single-product .bp-sale-badge--single-summary{
    height:36px!important;
    min-height:36px!important;
    padding:0 9px!important;
    font-size:9px!important;
  }
  .bp-tier--best{padding-bottom:24px!important}
  .bp-tier__flag{right:8px!important;bottom:7px!important;font-size:7px!important}
}


/* =========================================================
   v0.2.55 — Biopepers card badges / tier value / pre-footer
   Visual-only except shared footer banner markup. No new JS.
========================================================= */

/* Product cards: compact COA + sale percentage pair in the image corner. */
.bp-home-product-card .bpm-product-badge,
.woocommerce ul.products li.product .bpm-product-badge,
.woocommerce-page ul.products li.product .bpm-product-badge{
  top:12px!important;
  right:12px!important;
  min-height:30px!important;
  padding:6px 9px!important;
  border-radius:8px!important;
  gap:5px!important;
  font-size:10px!important;
  box-shadow:0 4px 12px rgba(11,69,181,.16)!important;
}
.bp-home-product-card .bpm-product-badge-icon,
.woocommerce ul.products li.product .bpm-product-badge-icon,
.woocommerce-page ul.products li.product .bpm-product-badge-icon{
  width:15px!important;
  height:15px!important;
  font-size:9px!important;
}

.bp-home-product-card > .bp-sale-badge--home,
.bp-home-product-card .bp-sale-badge--home,
.woocommerce ul.products li.product .bp-sale-badge--woo,
.woocommerce-page ul.products li.product .bp-sale-badge--woo{
  position:absolute!important;
  z-index:21!important;
  top:12px!important;
  right:74px!important;
  left:auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:30px!important;
  height:30px!important;
  padding:0 9px!important;
  margin:0!important;
  border:1px solid #efaaaa!important;
  border-radius:8px!important;
  background:#fff5f5!important;
  color:#b42318!important;
  font-size:10px!important;
  font-weight:900!important;
  line-height:1!important;
  box-shadow:0 4px 10px rgba(180,35,24,.08)!important;
}
/* Remove the temporary sale row reserved by v0.2.54. */
.bp-home-product-card__body{
  grid-template-areas:"title title" "price button"!important;
}

/* Single product: match the COA control proportions without looking like a bubble. */
.single-product .bp-sale-badge--single-summary{
  height:42px!important;
  min-height:42px!important;
  padding:0 14px!important;
  margin:0 0 16px 8px!important;
  border-radius:8px!important;
  border:1px solid #efaaaa!important;
  background:#fff5f5!important;
  color:#b42318!important;
  font-size:11px!important;
  font-weight:900!important;
  box-shadow:0 3px 10px rgba(180,35,24,.07)!important;
}

/* Best value remains clearly special, but only the actual quantity tier is selected. */
.bp-tier--best{
  position:relative!important;
  border-color:#9bbaf0!important;
  background:linear-gradient(180deg,#fbfdff 0%,#f5f9ff 100%)!important;
  padding-bottom:42px!important;
  box-shadow:inset 0 0 0 1px rgba(11,69,181,.03)!important;
}
.bp-tier--best:hover{
  border-color:#6f9be8!important;
  background:#f7faff!important;
}
.bp-tier__flag{
  position:absolute!important;
  left:14px!important;
  right:auto!important;
  top:auto!important;
  bottom:11px!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:24px!important;
  padding:0 9px!important;
  border:1px solid #0b45b5!important;
  border-radius:7px!important;
  background:#0b45b5!important;
  color:#fff!important;
  font-size:8px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.035em!important;
  box-shadow:0 3px 8px rgba(11,69,181,.15)!important;
}
.bp-tier.is-selected{
  border-color:#0b3b97!important;
  background:#edf4ff!important;
  box-shadow:0 0 0 2px rgba(11,59,151,.12),0 8px 18px rgba(11,59,151,.08)!important;
}
.bp-tier.is-selected .bp-tier__flag{
  background:#0b45b5!important;
  color:#fff!important;
  border-color:#0b45b5!important;
}
.bp-tier--disabled .bp-tier__flag{
  background:#e5e9ef!important;
  border-color:#d7dde6!important;
  color:#7e8896!important;
  box-shadow:none!important;
}

/* Shared pre-footer campaign banner. */
.bp-prefooter-banner{
  margin:46px 0 0;
}
.bp-prefooter-banner .bp-container{
  display:block;
}
.bp-prefooter-banner a{
  display:block;
}
.bp-prefooter-banner__image{
  display:block;
  width:100%;
  height:auto;
  border-radius:20px;
  box-shadow:var(--bp-shadow);
}

/* Stronger ecommerce footer without adding external assets. */
.bp-footer{
  margin-top:42px;
  background:linear-gradient(135deg,#0b337b 0%,#123f8f 58%,#0a2b69 100%);
}
.bp-footer__trust{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  padding:30px 0 0;
}
.bp-footer__trust-item{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  grid-template-rows:auto auto;
  column-gap:10px;
  align-items:center;
  padding:14px 16px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:12px;
  background:rgba(255,255,255,.055);
}
.bp-footer__trust-item>span{
  grid-row:1 / 3;
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border-radius:10px;
  background:rgba(255,255,255,.10);
  color:#fff;
  font-size:17px;
  font-weight:900;
}
.bp-footer__trust-item strong{
  color:#fff;
  font-size:13px;
}
.bp-footer__trust-item small{
  margin-top:2px;
  color:rgba(255,255,255,.66);
  font-size:11px;
}
.bp-footer__top{
  grid-template-columns:minmax(0,1.45fr) repeat(3,minmax(150px,.75fr));
  gap:42px;
  padding:34px 0 32px;
}
.bp-footer__brand p{max-width:460px;line-height:1.7}
.bp-footer__links{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.bp-footer__links li{margin:0;padding:0}
.bp-footer__links a{display:inline-block;text-decoration:none}
.bp-footer__links a:hover,.bp-footer__contact a:hover{color:#fff!important;text-decoration:underline}
.bp-footer__contact-note{max-width:250px;font-size:12px;line-height:1.55;color:rgba(255,255,255,.62)!important}
.bp-footer__bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}

@media(max-width:900px){
  .bp-footer__top{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
}
@media(max-width:767px){
  .bp-home-product-card .bpm-product-badge,
  .woocommerce ul.products li.product .bpm-product-badge,
  .woocommerce-page ul.products li.product .bpm-product-badge{
    top:8px!important;
    right:8px!important;
    min-height:27px!important;
    padding:5px 7px!important;
    font-size:9px!important;
  }
  .bp-home-product-card > .bp-sale-badge--home,
  .bp-home-product-card .bp-sale-badge--home,
  .woocommerce ul.products li.product .bp-sale-badge--woo,
  .woocommerce-page ul.products li.product .bp-sale-badge--woo{
    top:8px!important;
    right:64px!important;
    min-height:27px!important;
    height:27px!important;
    padding:0 7px!important;
    border-radius:7px!important;
    font-size:9px!important;
  }
  .single-product .bp-sale-badge--single-summary{
    height:38px!important;
    min-height:38px!important;
    padding:0 10px!important;
    margin-left:6px!important;
    font-size:10px!important;
  }
  .bp-tier--best{padding-bottom:40px!important}
  .bp-tier__flag{left:10px!important;bottom:9px!important;min-height:22px!important;padding:0 7px!important;font-size:7px!important}
  .bp-prefooter-banner{margin-top:34px}
  .bp-prefooter-banner__image{border-radius:14px}
  .bp-footer__trust{grid-template-columns:1fr;gap:8px;padding-top:22px}
  .bp-footer__top{grid-template-columns:1fr;gap:22px;padding:28px 0}
  .bp-footer__bottom{align-items:flex-start;flex-direction:column;gap:6px}
}


/* =========================================================
   v0.2.56 — Card badge order / spacing polish
   COA first, sale percentage second. Visual-only.
========================================================= */
.bp-home-product-card .bpm-product-badge,
.woocommerce ul.products li.product .bpm-product-badge,
.woocommerce-page ul.products li.product .bpm-product-badge{
  right:76px!important;
}
.bp-home-product-card > .bp-sale-badge--home,
.bp-home-product-card .bp-sale-badge--home,
.woocommerce ul.products li.product .bp-sale-badge--woo,
.woocommerce-page ul.products li.product .bp-sale-badge--woo{
  right:12px!important;
}
@media(max-width:767px){
  .bp-home-product-card .bpm-product-badge,
  .woocommerce ul.products li.product .bpm-product-badge,
  .woocommerce-page ul.products li.product .bpm-product-badge{
    right:61px!important;
  }
  .bp-home-product-card > .bp-sale-badge--home,
  .bp-home-product-card .bp-sale-badge--home,
  .woocommerce ul.products li.product .bp-sale-badge--woo,
  .woocommerce-page ul.products li.product .bp-sale-badge--woo{
    right:8px!important;
  }
}


/* =========================================================
   v0.2.57 — Adaptive COA / sale badge spacing
   COA uses the normal top-right position when no sale exists.
   Space is reserved only on cards that actually have a sale badge.
========================================================= */
.bp-home-product-card .bpm-product-badge,
.woocommerce ul.products li.product .bpm-product-badge,
.woocommerce-page ul.products li.product .bpm-product-badge{
  right:12px!important;
}
.bp-home-product-card.bp-card-has-sale .bpm-product-badge,
.woocommerce ul.products li.product.bp-card-has-sale .bpm-product-badge,
.woocommerce-page ul.products li.product.bp-card-has-sale .bpm-product-badge{
  right:72px!important;
}
.bp-home-product-card > .bp-sale-badge--home,
.bp-home-product-card .bp-sale-badge--home,
.woocommerce ul.products li.product .bp-sale-badge--woo,
.woocommerce-page ul.products li.product .bp-sale-badge--woo{
  right:12px!important;
}
@media(max-width:767px){
  .bp-home-product-card .bpm-product-badge,
  .woocommerce ul.products li.product .bpm-product-badge,
  .woocommerce-page ul.products li.product .bpm-product-badge{
    right:8px!important;
  }
  .bp-home-product-card.bp-card-has-sale .bpm-product-badge,
  .woocommerce ul.products li.product.bp-card-has-sale .bpm-product-badge,
  .woocommerce-page ul.products li.product.bp-card-has-sale .bpm-product-badge{
    right:58px!important;
  }
  .bp-home-product-card > .bp-sale-badge--home,
  .bp-home-product-card .bp-sale-badge--home,
  .woocommerce ul.products li.product .bp-sale-badge--woo,
  .woocommerce-page ul.products li.product .bp-sale-badge--woo{
    right:8px!important;
  }
}


/* 0.2.61 Out-of-stock UI */
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product,.bp-home-product-card,.bp-home-product-card__image{position:relative}
.bp-stock-badge{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 11px;border:1px solid #c8d0dd;border-radius:8px;background:#f1f3f6;color:#4b5565;font-size:12px;font-weight:850;letter-spacing:.035em;line-height:1;text-transform:uppercase;box-shadow:0 5px 14px rgba(17,24,39,.06);z-index:8}
.bp-stock-badge--woo,.bp-stock-badge--home{position:absolute;left:50%;top:12px;bottom:auto;transform:translateX(-50%)}
.bp-stock-badge--single{margin:0 0 12px;min-height:36px;padding:0 14px;background:#fff1f2;border-color:#fecdd3;color:#b42318;font-size:13px;box-shadow:none}
.bp-card-is-outofstock .bp-home-product-card__image img,.woocommerce ul.products li.product.outofstock img{opacity:.84}
@media(max-width:767px){.bp-stock-badge--woo,.bp-stock-badge--home{left:50%;top:9px;bottom:auto}.bp-stock-badge{min-height:27px;padding:0 9px;font-size:11px}}


/* 0.2.62 — sale products do not stack quantity discounts */
.bp-buy-more--sale-locked .bp-tier,
.bp-buy-more--sale-locked .bp-tier:hover{
  background:#f5f7fa!important;
  border-color:#dce3ec!important;
  box-shadow:none!important;
  cursor:not-allowed!important;
}
.bp-buy-more--sale-locked .bp-tier strong,
.bp-buy-more--sale-locked .bp-tier__qty,
.bp-buy-more--sale-locked .bp-tier__unit,
.bp-buy-more--sale-locked .bp-tier small,
.bp-buy-more--sale-locked .bp-tier__flag{
  color:#9ca8b8!important;
}
.bp-buy-more--sale-locked .bp-tier__flag{
  background:#eef1f5!important;
  border-color:#dce3ec!important;
}
.bp-buy-more--sale-locked .bp-buy-more__auto{
  background:#fff3f3!important;
  color:#b42323!important;
  border:1px solid #f1caca!important;
}
.bp-buy-more__sale-note{
  margin:12px 0 0;
  padding:10px 12px;
  border-radius:10px;
  background:#f7f9fc;
  color:#66758a;
  font-size:13px;
  line-height:1.45;
}

/* =========================================================
   0.2.63 — LAB+ laboratory document UI
   Supplementary microbiology + heavy metals document badge.
========================================================= */
/* Card LAB+ badge lives on a second compact row whenever COA or sale occupies row 1. */
.bp-home-product-card .bpm-product-badge-labplus,
.woocommerce ul.products li.product .bpm-product-badge-labplus,
.woocommerce-page ul.products li.product .bpm-product-badge-labplus{
  top:48px!important;
  right:12px!important;
  left:auto!important;
}
.bp-home-product-card .bpm-product-badge-labplus--primary-row,
.woocommerce ul.products li.product .bpm-product-badge-labplus--primary-row,
.woocommerce-page ul.products li.product .bpm-product-badge-labplus--primary-row{
  top:12px!important;
  right:12px!important;
}

/* Single-product document controls share one visual control family. */
.single-product .bpm-document-actions{
  display:inline-flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:0!important;
  vertical-align:middle!important;
}
.single-product .bpm-document-actions .bpm-coa-single,
.single-product .bpm-document-actions .bpm-labplus-single{
  display:inline-flex!important;
  vertical-align:middle!important;
  margin:0 0 16px 0!important;
}
.single-product .bpm-labplus-button{
  box-sizing:border-box!important;
  min-height:42px!important;
  height:42px!important;
  padding:0 14px!important;
  border-radius:9px!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
  font-size:12px!important;
  font-weight:850!important;
}
.single-product .bpm-labplus-description{
  clear:both!important;
  margin:-4px 0 14px!important;
  color:#63718a!important;
  font-size:12px!important;
}

@media(max-width:767px){
  .bp-home-product-card .bpm-product-badge-labplus,
  .woocommerce ul.products li.product .bpm-product-badge-labplus,
  .woocommerce-page ul.products li.product .bpm-product-badge-labplus{
    top:41px!important;
    right:8px!important;
  }
  .bp-home-product-card .bpm-product-badge-labplus--primary-row,
  .woocommerce ul.products li.product .bpm-product-badge-labplus--primary-row,
  .woocommerce-page ul.products li.product .bpm-product-badge-labplus--primary-row{
    top:8px!important;
    right:8px!important;
  }
  .single-product .bpm-document-actions{
    gap:6px!important;
  }
  .single-product .bpm-labplus-button{
    min-height:38px!important;
    height:38px!important;
    padding:0 10px!important;
    font-size:10px!important;
  }
  .single-product .bpm-labplus-description{
    margin:-2px 0 12px!important;
    font-size:10px!important;
    line-height:1.35!important;
  }
}

/* 0.2.64.3: only the password-recovery form; no checkout/product overrides. */
.bp-password-recovery{max-width:640px!important;margin:0 auto!important;padding:40px 16px 56px!important;box-sizing:border-box}
.bp-password-recovery .bp-account-guest__intro{padding:0!important;margin:0 0 22px!important;background:transparent!important;box-shadow:none!important;border:0!important}
.bp-password-recovery .bp-account-guest__intro h1{font-size:clamp(25px,3vw,34px)!important;margin:0!important;line-height:1.2!important}
.bp-password-recovery .bp-auth-card{max-width:none!important;width:100%!important;margin:0!important}
.bp-password-recovery .bp-auth-panel{padding:28px!important}
.bp-password-recovery .lost_reset_password{max-width:none!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;background:transparent!important}
.bp-password-recovery .lost_reset_password p{margin:0 0 20px!important;line-height:1.65}
.bp-password-recovery .lost_reset_password .form-row{float:none!important;width:100%!important;padding:0!important;box-sizing:border-box}
.bp-password-recovery .lost_reset_password input.input-text{font-size:16px!important}
.bp-password-recovery .lost_reset_password button.button{display:block!important;width:100%!important;min-height:50px!important;padding:12px 20px!important;background:#123ea8!important;border:1px solid #123ea8!important;border-radius:10px!important;color:#fff!important;font:inherit!important;font-weight:700!important;line-height:1.4!important;cursor:pointer}
.bp-password-recovery .lost_reset_password button.button:focus-visible{outline:3px solid #9bb6ef;outline-offset:3px}
.bp-password-recovery .woocommerce-error,.bp-password-recovery .woocommerce-message,.bp-password-recovery .woocommerce-info{box-sizing:border-box!important;max-width:100%!important;margin:0 0 20px!important;padding:16px!important;border:1px solid #d8e1ed!important;border-radius:10px!important;box-shadow:none!important;line-height:1.6!important;overflow-wrap:anywhere}
.bp-password-recovery .woocommerce-error::before,.bp-password-recovery .woocommerce-message::before,.bp-password-recovery .woocommerce-info::before{display:none!important}
.bp-password-recovery .woocommerce-error{background:#fff6f6!important;border-color:#ecc9c9!important;color:#6b2929!important}
.bp-password-recovery .woocommerce-message{background:#f1faf4!important;border-color:#c1dfce!important;color:#24513a!important}
@media(max-width:600px){.bp-password-recovery{padding:26px 12px 40px!important}.bp-password-recovery .bp-auth-panel{padding:22px 18px!important}}
