:root{
  --bpe-text:#111827;
  --bpe-muted:#667085;
  --bpe-border:#e3e8ef;
  --bpe-soft:#f7f9fc;
  --bpe-card:#fff;
  --bpe-accent:#1B3588;
  --bpe-accent-hover:#2549B8;
  --bpe-accent-soft:color-mix(in srgb,var(--bpe-accent) 6%,#fff);
  --bpe-accent-soft-strong:color-mix(in srgb,var(--bpe-accent) 10%,#fff);
  --bpe-accent-border:color-mix(in srgb,var(--bpe-accent) 20%,#fff);
  --bpe-success:#2f7d16;
  --bpe-success-bg:#eff9eb;
  --bpe-danger:#c1122f;
  --bpe-danger-bg:#fdebed;
  --bpe-radius:16px;
}

html{scroll-behavior:smooth}
body.bpe-modal-open{overflow:hidden}
.bpe-product{color:var(--bpe-text);font-size:16px;line-height:1.55;background:#fff}
.bpe-product *{box-sizing:border-box}
.bpe-inner{width:min(100%,1240px);margin:0 auto;padding-left:24px;padding-right:24px}
.bpe-section{position:relative;padding:44px 0;border-top:1px solid var(--bpe-border);background:#fff}
.bpe-section-title{font-size:clamp(20px,1.6vw,24px);line-height:1.25;margin:0 0 22px;font-weight:780;color:var(--bpe-text);letter-spacing:-.01em}
.bpe-section-title:after{content:"";display:block;width:34px;height:2px;border-radius:99px;background:var(--bpe-accent);margin-top:9px;opacity:.8}
.bpe-section-subtitle{margin:-11px 0 22px;color:var(--bpe-muted)}
.bpe-brand,.bpe-glance-label{font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:var(--bpe-muted);font-weight:700}
.bpe-muted{color:var(--bpe-muted)}
.bpe-text-link,.bpe-card-link,.bpe-compare-view{font-weight:700;text-decoration:none;color:var(--bpe-accent)!important;background:transparent!important}
.bpe-text-link:hover,.bpe-card-link:hover,.bpe-compare-view:hover{text-decoration:underline;background:transparent!important}
.bpe-product a:focus-visible,.bpe-product button:focus-visible,.bpe-product input:focus-visible,.bpe-product textarea:focus-visible{outline:2px solid var(--bpe-accent);outline-offset:2px}
.bpe-product .screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Breadcrumb */
.bpe-breadcrumb{padding:16px 0 4px;background:#fff;color:var(--bpe-muted);font-size:13px}
.bpe-breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:7px;list-style:none;margin:0;padding:0}
.bpe-breadcrumb li{display:flex;align-items:center;min-width:0}
.bpe-breadcrumb li:not(:last-child)::after{content:"/";margin-left:7px;color:#98a2b3}
.bpe-breadcrumb a{color:var(--bpe-muted);text-decoration:none}
.bpe-breadcrumb a:hover{color:var(--bpe-text);text-decoration:underline;background:transparent!important}
.bpe-breadcrumb [aria-current="page"]{color:#344054}

/* Buy box */
.bpe-buybox{padding:26px 0 46px;background:#fff}
.bpe-buybox-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);gap:58px;align-items:start}
.bpe-gallery,.bpe-summary{min-width:0}
.bpe-summary{position:sticky;top:24px}
.bpe-brand{margin-bottom:8px}
.bpe-brand a{color:inherit;text-decoration:none}
.bpe-brand a:hover{color:var(--bpe-text);text-decoration:underline;background:transparent!important}
.bpe-summary .product_title{font-size:clamp(31px,3vw,44px);line-height:1.08;margin:0;color:var(--bpe-text);font-weight:780;letter-spacing:-.02em}

.bpe-product-meta-line{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:10px;color:var(--bpe-muted);font-size:13px;font-weight:650}
.bpe-product-meta-line a{color:var(--bpe-accent);text-decoration:none}
.bpe-product-meta-line a:hover{text-decoration:underline;background:transparent!important}
.bpe-meta-dot{color:#c0c7d1}
.bpe-rating-row{margin:13px 0 0;min-height:24px}
.bpe-rating-link{display:inline-flex;align-items:center;gap:8px;color:var(--bpe-text);text-decoration:none;font-size:14px;font-weight:650}
.bpe-rating-link:hover{text-decoration:underline;color:var(--bpe-accent);background:transparent!important}
.bpe-rating-link .star-rating{margin:0!important;float:none!important}
.bpe-review-count{color:var(--bpe-muted);font-weight:500}
.bpe-price-stock{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:24px}
.bpe-price .price,.bpe-price p.price{font-size:clamp(25px,2.5vw,34px)!important;line-height:1.2;margin:0!important;font-weight:780;color:var(--bpe-text)!important}
.bpe-stock .stock{margin:0;padding:5px 11px;border:1px solid var(--bpe-border);border-radius:999px;font-size:13px;background:#fff;color:var(--bpe-text)!important}
.bpe-short-description{margin-top:20px;color:#344054;font-size:17px;line-height:1.7}
.bpe-short-description .woocommerce-product-details__short-description{margin:0}
.bpe-short-description p:last-child{margin-bottom:0}
.bpe-gallery .woocommerce-product-gallery{width:100%!important;float:none!important;margin:0!important}
.bpe-gallery .woocommerce-product-gallery__wrapper{margin:0}
.bpe-gallery img{border-radius:14px}

/* Quick star rating */
.bpe-quick-rating{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;font-size:13px}
.bpe-quick-rating-label{font-weight:700;color:#344054}
.bpe-quick-stars{display:inline-flex;gap:2px}
.bpe-quick-star{appearance:none;border:0;background:transparent!important;padding:0 1px;color:#f2b01e;font-size:22px;line-height:1;cursor:pointer}
.bpe-quick-star:hover,.bpe-quick-star:focus,.bpe-quick-star.is-active{background:transparent!important;color:#f2b01e}
.bpe-quick-rating-guest{flex-basis:100%;display:grid;grid-template-columns:1fr 1fr auto;gap:8px;margin-top:7px}
.bpe-quick-rating-guest[hidden]{display:none!important}
.bpe-quick-rating-guest input{min-height:40px;border:1px solid var(--bpe-border);border-radius:8px;padding:8px 10px;font-size:14px}
.bpe-rating-save{border:1px solid var(--bpe-accent);border-radius:8px;background:#fff!important;color:var(--bpe-accent)!important;font-weight:700;padding:8px 12px;cursor:pointer}
.bpe-rating-save:hover{text-decoration:underline;background:#fff!important}
.bpe-quick-rating-status{flex-basis:100%;color:var(--bpe-muted);font-size:13px}
.bpe-quick-rating-status a{color:var(--bpe-accent);text-decoration:none;font-weight:700;background:transparent!important}.bpe-quick-rating-status a:hover{text-decoration:underline;background:transparent!important}

/* Variation/cart */
.bpe-cart-area{margin-top:28px}
.bpe-cart-area form.cart{margin:0!important}
.bpe-cart-area .variations{width:100%;margin:0 0 8px!important;border:0!important}
.bpe-cart-area .variations tr{display:block;margin:0 0 18px}
.bpe-cart-area .variations th,.bpe-cart-area .variations td{display:block;width:100%;text-align:left;padding:0!important;border:0!important;background:transparent!important}
.bpe-cart-area .variations th{margin-bottom:9px}
.bpe-cart-area .variations label{font-weight:750;color:var(--bpe-text);font-size:15px}
.bpe-native-variation-select{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;overflow:hidden!important;pointer-events:none!important}
.bpe-variation-options{display:flex;flex-wrap:wrap;gap:10px}
.bpe-variation-option{appearance:none;border:1px solid #d8dde5!important;background:#fff!important;color:var(--bpe-text)!important;min-height:43px;padding:9px 16px;border-radius:10px;font-size:15px;font-weight:650;line-height:1;cursor:pointer;box-shadow:none!important;transition:border-color .15s ease,box-shadow .15s ease}
.bpe-variation-option:hover{border-color:#aeb7c5!important;background:#fff!important;color:var(--bpe-text)!important}
.bpe-variation-option.is-selected{border-color:var(--bpe-accent)!important;box-shadow:0 0 0 1px var(--bpe-accent)!important;background:#fff!important;color:var(--bpe-text)!important}
.bpe-variation-option.is-disabled{opacity:1!important;cursor:not-allowed;color:#98a2b3!important;border-style:dashed!important;background:#fafafa!important;text-decoration:none!important}
.bpe-variation-options.is-color{gap:12px;align-items:center}
.bpe-variation-option.is-color-swatch{width:40px;height:40px;min-height:40px;border-radius:50%;padding:4px;display:inline-flex;align-items:center;justify-content:center;background:#fff!important}
.bpe-variation-option.is-color-swatch.is-selected{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--bpe-accent)!important}
.bpe-swatch-dot{width:100%;height:100%;display:block;border-radius:50%;border:1px solid #ccd3dc;background:#fff}
.bpe-cart-area .reset_variations{display:inline-block;margin-top:10px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--bpe-muted)!important}
.bpe-cart-area .single_variation{margin:4px 0 10px!important}
.bpe-cart-area .woocommerce-variation-price{display:none!important}
.bpe-cart-area .woocommerce-variation-availability .stock{font-size:13px;margin:0 0 8px}
.bpe-cart-area .woocommerce-variation-add-to-cart,.bpe-cart-area form.cart:not(.variations_form){display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;width:100%;align-items:stretch}
.bpe-cart-area .single_add_to_cart_button{display:block!important;width:100%!important;min-height:54px;border-radius:10px!important;font-weight:750!important;padding:14px 24px!important;background:var(--bpe-accent)!important;color:#fff!important;font-size:17px!important;line-height:1.2!important;float:none!important;margin:0!important;border:1px solid var(--bpe-accent)!important}
.bpe-cart-area .bpe-buy-now-button{display:block!important;width:100%!important;min-height:54px;border-radius:10px!important;font-weight:750!important;padding:14px 24px!important;background:#fff!important;color:var(--bpe-accent)!important;font-size:17px!important;line-height:1.2!important;float:none!important;margin:0!important;border:1px solid var(--bpe-accent)!important;box-shadow:none!important}
.bpe-cart-area .bpe-buy-now-button:hover{background:#fff!important;text-decoration:underline}
.bpe-cart-area .variations_button .single_variation{grid-column:1/-1}
.bpe-cart-area .single_add_to_cart_button.disabled{opacity:.55}

/* Delivery + warranty */
.bpe-trust-strip{margin-top:22px;padding-top:18px;border-top:1px solid var(--bpe-border);display:grid;grid-template-columns:1.3fr .7fr;gap:22px}
.bpe-trust-item{min-width:0;position:relative}
.bpe-trust-item strong{display:block;font-size:13px;color:var(--bpe-text);margin-bottom:3px}
.bpe-trust-item span{display:block;color:var(--bpe-muted);font-size:13px;line-height:1.5}
.bpe-trust-title-line{display:flex;align-items:center;gap:7px}
.bpe-trust-title-line strong{margin:0}
.bpe-warranty-info{position:relative;display:inline-block}
.bpe-warranty-info summary{list-style:none;display:grid;place-items:center;width:18px;height:18px;border:1px solid #cfd5dd;border-radius:50%;font-size:11px;font-weight:800;color:var(--bpe-muted);cursor:pointer;background:#fff}
.bpe-warranty-info summary::-webkit-details-marker{display:none}
.bpe-warranty-popover{position:absolute;right:0;top:26px;z-index:20;width:min(340px,80vw);padding:13px 14px;border:1px solid var(--bpe-border);border-radius:10px;background:#fff;box-shadow:0 12px 28px rgba(16,24,40,.14);font-size:13px;line-height:1.5;color:#344054}

/* At a glance */
.bpe-at-a-glance{background:#fbfcfe}
.bpe-glance-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--bpe-border);border-radius:var(--bpe-radius);overflow:hidden;background:var(--bpe-border);gap:1px}
.bpe-glance-item{background:#fff;padding:19px;min-height:102px}
.bpe-glance-value{font-size:16px;line-height:1.42;font-weight:680;margin-top:7px;color:var(--bpe-text)}
.bpe-glance-footer{margin-top:15px;text-align:right}

/* Description */
.bpe-richtext{width:100%;max-width:none;color:#344054;font-size:16px;line-height:1.75}
.bpe-richtext>:first-child{margin-top:0}.bpe-richtext>:last-child{margin-bottom:0}
.bpe-richtext h2,.bpe-richtext h3,.bpe-richtext h4{color:var(--bpe-text)}
.bpe-description-toggle{margin-top:12px;border:0;background:transparent!important;color:var(--bpe-accent)!important;font-weight:750;padding:5px 0;cursor:pointer}
.bpe-description-toggle:hover{text-decoration:underline;background:transparent!important}

/* Key features */
.bpe-highlight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.bpe-highlight-card{border:1px solid var(--bpe-border);border-radius:var(--bpe-radius);padding:22px;background:#fff;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.bpe-highlight-card h4{font-size:18px;margin:0 0 8px;color:var(--bpe-text)}
.bpe-highlight-card p{margin:0;color:var(--bpe-muted)}

/* Pros & Cons */
.bpe-pros-cons-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;width:100%}
.bpe-pros-cons-column{border:1px solid var(--bpe-border);border-radius:var(--bpe-radius);padding:22px;background:#fff;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.bpe-pros-cons-column h4{font-size:18px;margin:0 0 14px;color:var(--bpe-text)}
.bpe-pros-list,.bpe-cons-list{list-style:none;margin:0;padding:0;display:grid;gap:11px}
.bpe-pros-list li,.bpe-cons-list li{display:flex;gap:10px;align-items:flex-start;color:#344054}
.bpe-procon-icon{display:inline-grid;place-items:center;flex:0 0 22px;width:22px;height:22px;border-radius:50%;font-weight:800;font-size:13px;margin-top:1px}
.bpe-procon-icon.is-pro{background:var(--bpe-success-bg);color:var(--bpe-success)}
.bpe-procon-icon.is-con{background:var(--bpe-danger-bg);color:var(--bpe-danger)}

/* Compatible accessories */
.bpe-frequently-bought{background:#f6f7f9}
.bpe-accessory-group{margin-top:22px}
.bpe-accessory-group:first-of-type{margin-top:0}
.bpe-accessory-group-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:9px}
.bpe-accessory-group-head h4{margin:0;font-size:15px;color:#344054}
.bpe-accessory-rail{position:relative}
.bpe-accessory-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(190px,230px);gap:14px;overflow-x:auto;scroll-snap-type:x proximity;padding:10px 2px 12px;background:#fff;border:1px solid var(--bpe-border);border-radius:10px;scrollbar-width:thin}
.bpe-accessory-scroll{position:absolute;top:50%;z-index:4;width:40px;height:40px;margin-top:-20px;border:1px solid #d7dde6;border-radius:50%;background:#fff!important;color:var(--bpe-text)!important;font-size:25px;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 4px 14px rgba(16,24,40,.08)}
.bpe-accessory-scroll:hover,.bpe-accessory-scroll:focus{background:#fff!important;color:var(--bpe-text)!important;border-color:#b9c1cc}
.bpe-accessory-prev{left:8px}.bpe-accessory-next{right:8px}
.bpe-accessory-card{scroll-snap-align:start;display:flex;flex-direction:column;min-width:0;padding:10px 12px;background:#fff}
.bpe-accessory-image{height:150px;display:block;margin-bottom:9px}
.bpe-accessory-image img{width:100%;height:100%;object-fit:contain}
.bpe-accessory-name{font-weight:700;color:var(--bpe-text);text-decoration:none;line-height:1.35;min-height:42px}
.bpe-accessory-name:hover{color:var(--bpe-accent);text-decoration:underline;background:transparent!important}
.bpe-accessory-price{font-weight:750;margin:7px 0 9px}
.bpe-accessory-card .bpe-card-button{align-self:flex-start;margin-top:auto}

/* Product videos */
.bpe-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.bpe-video-card{min-width:0}
.bpe-video{appearance:none;position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:var(--bpe-radius);background:#000!important;border:1px solid var(--bpe-border);padding:0;cursor:pointer}
.bpe-video>img{width:100%;height:100%;object-fit:cover;display:block;opacity:.95}
.bpe-video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:62px;height:62px;border-radius:50%;background:rgba(255,255,255,.94);color:var(--bpe-text);display:grid;place-items:center;font-size:22px;padding-left:3px;box-shadow:0 6px 24px rgba(0,0,0,.18)}
.bpe-video-title{font-size:15px;margin:10px 2px 0;color:var(--bpe-text)}
.bpe-video-modal[hidden]{display:none!important}
.bpe-video-modal{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:22px}
.bpe-video-modal-backdrop{position:absolute;inset:0;background:rgba(5,10,20,.74)}
.bpe-video-modal-dialog{position:relative;width:min(100%,1000px);aspect-ratio:16/9;background:#000;border-radius:16px;overflow:visible;z-index:1;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.bpe-video-modal-frame,.bpe-video-modal-frame iframe{width:100%;height:100%;border:0;display:block;border-radius:16px}
.bpe-video-modal-close{position:absolute;right:-12px;top:-12px;width:40px;height:40px;border:0;border-radius:50%;background:#fff!important;color:#111!important;font-size:27px;line-height:1;cursor:pointer;box-shadow:0 6px 20px rgba(0,0,0,.2)}

/* Specifications */
.bpe-spec-groups{display:grid;grid-template-columns:1fr;gap:24px}
.bpe-spec-group{width:100%}
.bpe-spec-group h4{font-size:17px;margin:0 0 7px;color:var(--bpe-text)}
.bpe-spec-group dl{margin:0;border-top:1px solid var(--bpe-border)}
.bpe-spec-row{display:grid;grid-template-columns:minmax(180px,31%) minmax(0,1fr);gap:28px;padding:11px 0;border-bottom:1px solid var(--bpe-border)}
.bpe-spec-row dt{color:var(--bpe-muted);font-weight:500}.bpe-spec-row dd{margin:0;color:var(--bpe-text);font-weight:600}
.bpe-spec-groups.is-collapsed .bpe-spec-group[data-spec-index="4"],.bpe-spec-groups.is-collapsed .bpe-spec-group[data-spec-index="5"],.bpe-spec-groups.is-collapsed .bpe-spec-group[data-spec-index="6"],.bpe-spec-groups.is-collapsed .bpe-spec-group[data-spec-index="7"],.bpe-spec-groups.is-collapsed .bpe-spec-group[data-spec-index="8"],.bpe-spec-groups.is-collapsed .bpe-spec-group[data-spec-index="9"],.bpe-spec-groups.is-collapsed .bpe-spec-group[data-spec-index="10"],.bpe-spec-groups.is-collapsed .bpe-spec-group[data-spec-index="11"]{display:none}
.bpe-spec-toggle{margin-top:8px;border:0;background:transparent!important;padding:8px 0;color:var(--bpe-accent)!important;font-weight:750;cursor:pointer;font-size:15px}
.bpe-spec-toggle:hover{text-decoration:underline;background:transparent!important}

/* In the box */
.bpe-box-list{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0}
.bpe-box-list li{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--bpe-border);border-radius:999px;padding:8px 13px 8px 9px;background:#fff;box-shadow:0 3px 10px rgba(16,24,40,.04);font-size:14px}
.bpe-box-mark{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--bpe-success-bg);color:var(--bpe-success);font-size:12px;font-weight:800}

/* Compare similar products */
.bpe-compare{background:#fbfcfe}
.bpe-compare-scroll{overflow-x:auto;border:1px solid var(--bpe-border);border-radius:var(--bpe-radius);scrollbar-width:thin;background:#fff}
.bpe-compare-table{border-collapse:collapse;width:100%;min-width:940px;margin:0!important;background:#fff;table-layout:fixed}
.bpe-compare-table th,.bpe-compare-table td{border-bottom:1px solid var(--bpe-border);padding:12px 14px;vertical-align:top;text-align:left;font-size:14px}
.bpe-compare-table thead th{background:#fff;width:27%;padding-top:14px}
.bpe-compare-table thead .bpe-compare-label{width:19%;background:var(--bpe-soft)}
.bpe-compare-table tbody th{position:sticky;left:0;z-index:2;background:var(--bpe-soft);font-weight:680;width:19%}
.bpe-compare-control{height:74px;display:flex;align-items:flex-start;justify-content:center;margin-bottom:8px}
.bpe-compare-current-label{display:flex;align-items:center;justify-content:center;width:100%;min-height:42px;border:1px solid var(--bpe-border);border-radius:8px;background:var(--bpe-soft);font-size:12px;font-weight:750;color:#475467}
.bpe-compare-product{display:grid;grid-template-rows:175px minmax(46px,auto) minmax(32px,auto) 30px;align-items:center;justify-items:center;text-align:center;gap:8px;min-height:325px}
.bpe-compare-image{display:flex;align-items:center;justify-content:center;width:175px;height:175px;margin:0 auto}
.bpe-compare-image img{width:100%;height:100%;object-fit:contain}
.bpe-compare-name{font-weight:750;color:var(--bpe-text);text-decoration:none;line-height:1.35;display:flex;align-items:flex-start;justify-content:center;min-height:46px}
.bpe-compare-name:hover{color:var(--bpe-accent);text-decoration:underline;background:transparent!important}
.bpe-compare-price{font-weight:750;color:var(--bpe-text);display:flex;align-items:center;justify-content:center;min-height:32px}
.bpe-compare-view{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:2px 0;font-size:13px}
.bpe-compare-empty{display:flex;min-height:270px;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:10px}
.bpe-compare-empty-image{width:120px;height:120px;border:1px dashed #cbd5e1;border-radius:14px;display:grid;place-items:center;color:#94a3b8;font-size:36px;background:var(--bpe-soft)}
.bpe-compare-inline-search{position:relative;text-align:left;margin:0;width:100%}
.bpe-compare-inline-search label{display:block;font-size:12px;font-weight:700;color:#344054;margin-bottom:6px;text-transform:none;letter-spacing:0}
.bpe-compare-inline-input{width:100%;min-height:42px;border:1px solid #cfd5dd;border-radius:7px;padding:8px 10px;background:#fff;color:var(--bpe-text);font-size:15px;box-shadow:none}
.bpe-compare-inline-input:focus{outline:2px solid color-mix(in srgb,var(--bpe-accent) 28%,transparent);border-color:var(--bpe-accent)}
.bpe-compare-inline-results{position:absolute;left:0;right:0;top:calc(100% + 5px);z-index:30;background:#fff;border:1px solid var(--bpe-border);border-radius:10px;box-shadow:0 12px 28px rgba(16,24,40,.14);max-height:330px;overflow:auto}
.bpe-compare-result{width:100%;display:flex;gap:11px;align-items:center;text-align:left;background:#fff!important;border:0;border-bottom:1px solid var(--bpe-border);padding:10px;cursor:pointer;color:var(--bpe-text)!important}
.bpe-compare-result:last-child{border-bottom:0}
.bpe-compare-result:hover,.bpe-compare-result:focus{background:#fff!important;color:var(--bpe-text)!important}
.bpe-compare-result:hover strong,.bpe-compare-result:focus strong{color:var(--bpe-accent);text-decoration:underline}
.bpe-compare-result img{width:52px;height:52px;object-fit:contain;flex:0 0 52px}
.bpe-compare-result-copy{display:flex!important;flex-direction:column!important;min-width:0;visibility:visible!important;opacity:1!important;color:var(--bpe-text)!important}
.bpe-compare-result-copy strong{display:block!important;color:var(--bpe-text)!important;font-size:13px;line-height:1.3;white-space:normal;font-weight:750}
.bpe-compare-result-copy small{display:block!important;color:var(--bpe-muted)!important;margin-top:3px;font-size:12px}
.bpe-compare-result-status{padding:12px;color:var(--bpe-muted)}
.bpe-compare-boolean{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;font-weight:800}
.bpe-compare-boolean.is-yes{background:var(--bpe-success-bg);color:var(--bpe-success)}
.bpe-compare-boolean.is-no{background:var(--bpe-danger-bg);color:var(--bpe-danger)}
.bpe-compare-table td.is-match{background:#f4fbf1}
.bpe-compare-table tr.is-all-same td{background:#eef9ea}
.bpe-same-badge,.bpe-match-note{display:inline-flex;align-items:center;margin-left:7px;padding:2px 6px;border-radius:999px;background:#eaf7e6;color:var(--bpe-success);font-size:10px;font-weight:750;vertical-align:middle;white-space:nowrap}
.bpe-match-note{display:block;width:max-content;margin:5px 0 0}

/* Reviews */
.bpe-reviews .woocommerce-Reviews{margin:0}.bpe-reviews .woocommerce-Reviews-title{display:none}.bpe-reviews #comments{margin-bottom:28px}
.bpe-reviews .comment-form-comment .optional{font-weight:400;color:var(--bpe-muted)}

/* Product strips */
.bpe-product-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,260px);gap:16px;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x proximity;scrollbar-width:thin}
.bpe-product-card{scroll-snap-align:start;border:1px solid var(--bpe-border);border-radius:var(--bpe-radius);padding:16px;background:#fff;display:flex;flex-direction:column;min-width:0;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.bpe-product-card-image{display:block;height:180px;margin-bottom:12px}.bpe-product-card-image img{width:100%;height:100%;object-fit:contain}
.bpe-product-card-name{font-weight:700;color:var(--bpe-text);text-decoration:none;line-height:1.35;min-height:44px;background:transparent!important}.bpe-product-card-name:hover{color:var(--bpe-accent);text-decoration:underline;background:transparent!important}
.bpe-product-card-rating{margin-top:8px}.bpe-product-card-price{font-weight:750;font-size:18px;margin:9px 0 12px}.bpe-product-card .bpe-card-button{margin-top:auto}
.bpe-card-button{display:inline-flex!important;align-items:center;justify-content:center;min-height:38px!important;border:1px solid var(--bpe-accent)!important;border-radius:8px!important;padding:7px 12px!important;background:#fff!important;color:var(--bpe-accent)!important;font-size:13px!important;font-weight:700!important;text-decoration:none!important;width:auto!important}
.bpe-card-button:hover{background:#fff!important;text-decoration:underline!important}
.bpe-product-strip-compact{grid-auto-columns:minmax(180px,210px)}

/* Sticky mobile add-to-cart */
.bpe-sticky-cart{display:none}

/* Subtle life, without colored hover fills */
@media (hover:hover) and (pointer:fine){
  .bpe-highlight-card:hover,.bpe-pros-cons-column:hover,.bpe-product-card:hover{transform:translateY(-2px);border-color:#d2d8e0;box-shadow:0 10px 24px rgba(16,24,40,.06)}
}

/* Woo/Astra cleanup */
.single-product .site-main>.product:not(.bpe-product){display:none!important}
.bpe-product .woocommerce-tabs,.bpe-product .related.products,.bpe-product .upsells.products{display:none!important}

@media (max-width:900px){
  .bpe-inner{padding-left:18px;padding-right:18px}
  .bpe-buybox-grid{grid-template-columns:1fr;gap:28px}
  .bpe-summary{position:static}
  .bpe-glance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  
  .bpe-sticky-cart{position:fixed;left:0;right:0;bottom:0;z-index:99990;background:rgba(255,255,255,.97);border-top:1px solid var(--bpe-border);box-shadow:0 -10px 28px rgba(16,24,40,.10);padding:10px 14px;transform:translateY(120%);transition:transform .2s ease;display:block;pointer-events:none}
  .bpe-sticky-cart.is-visible{transform:translateY(0);pointer-events:auto}
  .bpe-sticky-cart-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:1240px;margin:0 auto}
  .bpe-sticky-product-copy{display:flex;flex-direction:column;min-width:0}.bpe-sticky-product-copy strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bpe-sticky-price{font-size:13px;font-weight:750}
  .bpe-sticky-add{flex:0 0 auto;border:1px solid var(--bpe-accent);border-radius:9px;background:var(--bpe-accent)!important;color:#fff!important;padding:10px 15px;font-weight:750;cursor:pointer}
}

@media (max-width:640px){
  .bpe-section{padding:34px 0}
  .bpe-buybox{padding:16px 0 34px}
  .bpe-inner{padding-left:14px;padding-right:14px}
  .bpe-summary .product_title{font-size:30px}
  .bpe-short-description{font-size:16px}
  .bpe-trust-strip{grid-template-columns:1fr;gap:12px}
  .bpe-highlight-grid,.bpe-video-grid,.bpe-form-grid,.bpe-pros-cons-grid{grid-template-columns:1fr}
  .bpe-glance-item{padding:15px;min-height:90px}
  .bpe-glance-footer{text-align:left}
  .bpe-spec-row{grid-template-columns:38% minmax(0,1fr);gap:12px;font-size:14px}
  .bpe-product-strip{grid-auto-columns:minmax(180px,76vw)}
  .bpe-accessory-strip{grid-auto-columns:minmax(170px,68vw)}
  .bpe-accessory-scroll{display:none}
  .bpe-variation-option{min-height:40px;padding:8px 13px}
  .bpe-cart-area .woocommerce-variation-add-to-cart,.bpe-cart-area form.cart:not(.variations_form){grid-template-columns:1fr}
  .bpe-breadcrumb{padding-top:10px}
  .bpe-quick-rating-guest{grid-template-columns:1fr}
  
  
  
  .bpe-warranty-popover{left:0;right:auto}
  .bpe-video-modal{padding:12px}.bpe-video-modal-close{right:4px;top:-48px}
}

/* v0.6 refinements */
.bpe-summary{z-index:30}
.bpe-review-empty-link{display:inline-flex;align-items:center;gap:6px;color:var(--bpe-text);font-size:14px;font-weight:650;text-decoration:none;background:transparent!important}
.bpe-review-empty-link:hover{color:var(--bpe-accent);text-decoration:underline;background:transparent!important}

/* Variation tiles must remain readable even when unavailable. */
.bpe-variation-option:disabled,.bpe-variation-option.is-disabled{opacity:.58!important;color:#667085!important;-webkit-text-fill-color:#667085!important;background:#fff!important;border-color:#d8dde5!important}
.bpe-variation-option.is-selected:disabled,.bpe-variation-option.is-selected.is-disabled{border-color:var(--bpe-accent)!important;box-shadow:0 0 0 1px var(--bpe-accent)!important;color:#475467!important;-webkit-text-fill-color:#475467!important}

/* Warranty popover stays above the following page sections. */
.bpe-warranty-item,.bpe-warranty-info{z-index:60}
.bpe-warranty-info[open]{z-index:999999}
.bpe-warranty-popover{z-index:999999;width:min(390px,calc(100vw - 32px));padding:16px 17px;box-shadow:0 18px 50px rgba(16,24,40,.18)}

/* What's in the Box uses its own package glyph rather than the Pros checkmark language. */
.bpe-box-mark{display:inline-grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border-radius:8px;background:#f3f6fa;color:#475467}
.bpe-box-mark svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

/* Compatible accessories: three calm items per category, no carousel arrows. */
.bpe-accessory-rail{position:relative}
.bpe-accessory-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;overflow:visible;padding:12px;background:#fff;border:1px solid var(--bpe-border);border-radius:12px}
.bpe-accessory-card{padding:14px;border-radius:10px}
.bpe-accessory-image{height:180px}
.bpe-accessory-scroll{display:none!important}

/* Compare: matches are informative but intentionally quiet. */
.bpe-compare{background:#fff}
.bpe-compare-table td.is-match,.bpe-compare-table tr.is-all-same td{background:#fff}
.bpe-compare-table tr.is-all-same{background:#fbfcfa}
.bpe-same-badge,.bpe-match-note{display:inline-flex;align-items:center;margin-left:7px;padding:0;border:0;border-radius:0;background:transparent;color:#667085;font-size:10px;font-weight:650;vertical-align:middle;white-space:nowrap}
.bpe-same-badge:before,.bpe-match-note:before{content:"";width:5px;height:5px;border-radius:50%;background:#7aa56c;margin-right:5px}
.bpe-match-note{display:flex;width:max-content;margin:4px 0 0;color:#7a8493}
.bpe-compare-inline-search{text-align:center}
.bpe-compare-inline-search label{text-align:center;margin-bottom:7px;color:#667085;font-size:11px;letter-spacing:.02em}
.bpe-compare-inline-input{text-align:left}
.bpe-compare-result{appearance:none!important;display:flex!important;justify-content:flex-start!important;align-items:center!important;width:100%!important;min-height:70px!important;text-indent:0!important;font-family:inherit!important;font-size:14px!important;white-space:normal!important;line-height:1.35!important}
.bpe-compare-result-copy{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;align-items:flex-start!important;text-align:left!important;min-width:0!important}
.bpe-compare-result-copy strong,.bpe-compare-result-copy small{display:block!important;visibility:visible!important;opacity:1!important;text-indent:0!important;white-space:normal!important}


/* Product video modal close control. */
.bpe-video-modal-dialog{overflow:hidden;border-radius:16px}
.bpe-video-modal-close{right:12px;top:12px;width:36px;height:36px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.35);background:rgba(17,24,39,.72)!important;color:#fff!important;backdrop-filter:blur(8px);box-shadow:none;z-index:4}
.bpe-video-modal-close:hover{background:rgba(17,24,39,.9)!important}
.bpe-video-modal-close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}

/* Reviews: smaller, calmer, progressive write -> rating flow. */
.bpe-reviews .woocommerce-Reviews{font-size:15px}
.bpe-reviews .woocommerce-Reviews #comments{margin-bottom:22px}
.bpe-reviews .woocommerce-noreviews{color:var(--bpe-muted);margin:0 0 18px;font-size:14px}
.bpe-reviews #review_form_wrapper{max-width:820px}
.bpe-reviews #review_form{border:1px solid var(--bpe-border);border-radius:14px;padding:20px;background:#fff}
.bpe-reviews #reply-title{display:block;font-size:18px!important;line-height:1.35!important;font-weight:750!important;margin:0 0 15px!important;color:var(--bpe-text)!important}
.bpe-reviews .comment-form{margin:0!important}
.bpe-reviews .comment-form label{font-size:14px;font-weight:650;color:#344054}
.bpe-reviews .comment-form textarea{min-height:120px!important;border:1px solid var(--bpe-border)!important;border-radius:10px!important;padding:12px!important;font-size:16px!important;line-height:1.55!important;background:#fff!important}
.bpe-review-continue{margin-top:11px;border:0;background:transparent!important;color:var(--bpe-accent)!important;padding:3px 0;font-weight:700;cursor:pointer}
.bpe-review-continue:hover{text-decoration:underline}
.bpe-review-step-rating{margin-top:18px;padding-top:16px;border-top:1px solid var(--bpe-border)}
.bpe-review-rating-label{display:block;font-size:14px;font-weight:700;color:#344054;margin-bottom:9px}
.bpe-review-rating-stars{display:flex;gap:5px;align-items:center}
.bpe-review-rating-stars button{appearance:none;border:0;background:transparent!important;padding:2px;color:#d7dbe2;font-size:27px;line-height:1;cursor:pointer}
.bpe-review-rating-stars button.is-active{color:#f3a71b}
.bpe-review-enhanced .form-submit{display:none!important}
.bpe-review-enhanced.is-rating-ready .form-submit{display:block!important;margin:16px 0 0!important}
.bpe-reviews .form-submit .submit{min-height:42px;border-radius:9px;padding:10px 18px;font-size:14px;font-weight:700}

/* Sticky purchase bar on desktop and mobile. */
.bpe-sticky-cart{position:fixed;left:0;right:0;bottom:0;z-index:99990;background:rgba(255,255,255,.97);border-top:1px solid var(--bpe-border);box-shadow:0 -8px 28px rgba(16,24,40,.08);padding:9px 18px;transform:translateY(120%);transition:transform .2s ease;display:block;pointer-events:none;backdrop-filter:blur(10px)}
.bpe-sticky-cart.is-visible{transform:translateY(0);pointer-events:auto}
.bpe-sticky-cart-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;max-width:1240px;margin:0 auto}
.bpe-sticky-product-copy{display:flex;align-items:baseline;gap:12px;min-width:0}.bpe-sticky-product-copy strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bpe-sticky-price{font-size:14px;font-weight:750;white-space:nowrap}
.bpe-sticky-add{flex:0 0 auto;border:1px solid var(--bpe-accent);border-radius:9px;background:var(--bpe-accent)!important;color:#fff!important;padding:10px 18px;font-weight:750;cursor:pointer}

@media (max-width:900px){
  .bpe-accessory-strip{grid-template-columns:repeat(3,minmax(190px,1fr));overflow-x:auto;scroll-snap-type:x proximity}
  .bpe-accessory-card{scroll-snap-align:start}
  .bpe-warranty-popover{right:auto;left:0}
}
@media (max-width:640px){
  .bpe-accessory-strip{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(210px,76vw);overflow-x:auto}
  .bpe-sticky-cart{padding:9px 12px}
  .bpe-sticky-product-copy{display:flex;flex-direction:column;gap:0}.bpe-sticky-product-copy strong{max-width:52vw;font-size:12px}.bpe-sticky-price{font-size:12px}
  .bpe-sticky-add{padding:9px 13px}
  .bpe-warranty-popover{position:fixed;left:16px!important;right:16px!important;top:auto!important;bottom:76px;width:auto;max-height:52vh;overflow:auto}
  .bpe-video-modal{padding:10px}.bpe-video-modal-close{right:9px;top:9px}
  .bpe-reviews #review_form{padding:16px}
  .bpe-reviews #reply-title{font-size:17px!important}
}


/* v0.7 refinements */
.bpe-description .bpe-section-title{font-size:clamp(23px,1.9vw,29px)}
.bpe-section:not(.bpe-description) .bpe-section-title{font-size:clamp(19px,1.45vw,23px)}

.bpe-delivery-payment{display:inline-block;margin-top:3px;color:#475467}

/* Compact top-of-page star-only rating. */
.bpe-quick-rating{display:flex;align-items:center;flex-wrap:wrap;gap:7px 10px;margin-top:1px}
.bpe-quick-rating-label{font-size:13px;font-weight:680;color:#344054}
.bpe-quick-stars{display:flex;align-items:center;gap:2px}
.bpe-quick-star{appearance:none;border:0!important;background:transparent!important;padding:1px!important;width:24px;height:24px;display:grid;place-items:center;cursor:pointer;color:#cfd5de}
.bpe-quick-star svg{width:20px;height:20px;fill:transparent;stroke:currentColor;stroke-width:1.55;stroke-linejoin:round;transition:fill .12s ease,color .12s ease,transform .12s ease}
.bpe-quick-star.is-active{color:#f3a71b}
.bpe-quick-star.is-active svg{fill:#f3a71b}
.bpe-quick-star:hover svg,.bpe-quick-star:focus-visible svg{transform:scale(1.08)}
.bpe-quick-rating-status{flex-basis:auto;min-width:0;font-size:12px}
.bpe-quick-rating-guest{flex-basis:100%;max-width:560px}
.bpe-existing-rating-note{margin:9px 0 0;color:var(--bpe-muted);font-size:13px}
.bpe-review-enhanced.has-bpe-saved-rating .form-submit{display:block!important;margin:14px 0 0!important}

/* Product videos: compact, touch-scrollable cards; 3 visible on desktop and 2 on mobile. */
.bpe-video-grid{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 28px)/3);gap:14px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scrollbar-width:thin;padding:2px 0 9px;overscroll-behavior-inline:contain}
.bpe-video-grid.bpe-video-count-1{grid-auto-columns:minmax(0,420px)}
.bpe-video-grid.bpe-video-count-2{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;overflow:visible}
.bpe-video-card{scroll-snap-align:start;min-width:0}
.bpe-video{border-radius:12px;aspect-ratio:16/9}
.bpe-video-play{width:42px;height:42px;display:grid;place-items:center;background:transparent}
.bpe-video-play svg{width:42px;height:42px}.bpe-video-play circle{fill:rgba(10,16,28,.72);stroke:rgba(255,255,255,.8);stroke-width:1}.bpe-video-play path{fill:#fff}
.bpe-video-copy{padding-top:9px}
.bpe-video-title{font-size:14px!important;line-height:1.35!important;margin:0 0 4px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.bpe-video-channel{font-size:12px;line-height:1.35;color:var(--bpe-muted);margin:0}.bpe-video-channel span{font-weight:650;color:#475467}
.bpe-video-modal{cursor:default}.bpe-video-modal-backdrop{cursor:zoom-out}
.bpe-video-modal-dialog{border-radius:14px}
.bpe-video-modal-close{right:10px!important;top:10px!important;width:30px!important;height:30px!important;border:0!important;background:rgba(0,0,0,.48)!important;color:#fff!important;box-shadow:none!important;backdrop-filter:blur(6px);opacity:.9}
.bpe-video-modal-close:hover{background:rgba(0,0,0,.72)!important;opacity:1}.bpe-video-modal-close svg{width:15px!important;height:15px!important;stroke-width:1.8!important}

/* Comparison matches: visible at a glance without becoming loud. */
.bpe-compare-table td.is-match{background:#f5fbf2!important}
.bpe-compare-table tr.is-all-same td{background:#edf8e9!important}
.bpe-compare-table tr.is-all-same>th{box-shadow:inset 3px 0 0 #7cab68}
.bpe-same-badge{margin-left:8px;padding:2px 7px;border-radius:999px;background:#e8f5e2;color:#3f6f31;font-size:10px;font-weight:750}
.bpe-same-badge:before{display:none}
.bpe-match-note{display:inline-flex;margin:5px 0 0;padding:1px 6px;border-radius:999px;background:#eef6ea;color:#557947;font-size:10px;font-weight:700}
.bpe-match-note:before{width:5px;height:5px;background:#6e9d5e}

/* Sticky cart carries the chosen variation as a readable second line. */
.bpe-sticky-product-copy{display:grid;grid-template-columns:auto auto;align-items:baseline;column-gap:7px;row-gap:0;min-width:0}
.bpe-sticky-product-copy strong{grid-column:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bpe-sticky-variation{grid-column:2;color:#475467;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:42vw}
.bpe-sticky-price{grid-column:1 / -1;font-weight:800}

@media (max-width:900px){
  .bpe-video-grid,.bpe-video-grid.bpe-video-count-2{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 12px)/2);gap:12px;overflow-x:auto}
  .bpe-video-grid.bpe-video-count-1{grid-auto-columns:minmax(0,72vw)}
}
@media (max-width:640px){
  .bpe-video-grid,.bpe-video-grid.bpe-video-count-2{grid-auto-columns:calc((100% - 10px)/2);gap:10px}
  .bpe-video-title{font-size:13px!important}.bpe-video-channel{font-size:11px}
  .bpe-sticky-product-copy{column-gap:5px}.bpe-sticky-variation{max-width:36vw;font-size:11px}
}


/* === BPE v0.8.0 refinement layer === */
/* Product videos: always use a true horizontal rail. Three visible on desktop, two on mobile. */
.bpe-video-grid,
.bpe-video-grid.bpe-video-count-1,
.bpe-video-grid.bpe-video-count-2,
.bpe-video-grid.bpe-video-count-3,
.bpe-video-grid.bpe-video-count-4{
  display:flex!important;
  gap:14px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x proximity;
  scrollbar-width:thin;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-inline:contain;
  padding:2px 0 10px!important;
}
.bpe-video-card{flex:0 0 calc((100% - 28px)/3);scroll-snap-align:start;min-width:0}
.bpe-video-grid.bpe-video-count-1 .bpe-video-card{flex-basis:min(31%,360px)}
.bpe-video-grid.bpe-video-count-2 .bpe-video-card{flex-basis:calc((100% - 14px)/2)}
.bpe-video-courtesy{font-weight:700;color:var(--bpe-accent)!important;text-decoration:none!important}
.bpe-video-courtesy:hover,.bpe-video-courtesy:focus{text-decoration:underline!important;background:transparent!important}

/* Delivery and warranty info use the same attached popover language. */
.bpe-trust-item{position:relative;overflow:visible}
.bpe-info-details{position:relative;display:inline-block;z-index:80}
.bpe-info-details[open]{z-index:999999}
.bpe-info-details summary{list-style:none;display:grid;place-items:center;width:18px;height:18px;border:1px solid #cfd5dd;border-radius:50%;font-size:11px;font-weight:800;color:var(--bpe-muted);cursor:pointer;background:#fff}
.bpe-info-details summary::-webkit-details-marker{display:none}
.bpe-info-popover{position:absolute;top:26px;z-index:999999;width:min(360px,calc(100vw - 32px));padding:14px 15px;border:1px solid var(--bpe-border);border-radius:11px;background:#fff;box-shadow:0 16px 40px rgba(16,24,40,.17);font-size:13px;line-height:1.55;color:#344054;text-align:left}
.bpe-delivery-popover{left:0;right:auto}
.bpe-warranty-popover{right:0;left:auto}
.bpe-delivery-payment{display:none!important}

/* Compare: touch/mouse scroll from anywhere, and keep product identities visible while reading specs. */
.bpe-compare-scroll{overflow-x:auto!important;overflow-y:visible!important;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;overscroll-behavior-inline:contain;cursor:grab}
.bpe-compare-scroll:active{cursor:grabbing}
.bpe-compare-table thead th{position:sticky;top:0;z-index:8;background:#fff;box-shadow:0 1px 0 var(--bpe-border)}
.bpe-compare-table thead .bpe-compare-label{z-index:9;background:var(--bpe-soft)}
.bpe-compare-table tbody th{z-index:7}
.bpe-compare-table tr.is-all-same>th{background:#f4faef!important;box-shadow:inset 4px 0 0 #6f9d5f}
.bpe-compare-table tr.is-all-same td{background:#f3faef!important}
.bpe-compare-table td.is-match{background:#f7fbf4!important;box-shadow:inset 0 2px 0 rgba(83,130,68,.15)}
.bpe-same-badge{border:1px solid #b8d7ad;background:#edf8e8;color:#376c2e;padding:2px 7px;font-size:10px}
.bpe-same-badge:before{content:'✓';display:inline!important;margin-right:4px;font-weight:800}
.bpe-match-note{border:1px solid #c5ddbd;background:#f0f8ed;color:#47743d;padding:2px 7px}
.bpe-match-note:before{content:'✓';display:inline!important;width:auto!important;height:auto!important;background:transparent!important;margin-right:4px;font-weight:800}

/* One button language for primary Bwonjo actions. */

@media (max-width:900px){
  .bpe-video-card,.bpe-video-grid.bpe-video-count-1 .bpe-video-card,.bpe-video-grid.bpe-video-count-2 .bpe-video-card{flex:0 0 calc((100% - 12px)/2)}
  .bpe-compare-scroll{margin-left:-2px;margin-right:-2px}
}
@media (max-width:640px){
  .bpe-video-grid{gap:10px!important}
  .bpe-video-card,.bpe-video-grid.bpe-video-count-1 .bpe-video-card,.bpe-video-grid.bpe-video-count-2 .bpe-video-card{flex-basis:calc((100% - 10px)/2)}
  /* Anchor both info cards to the full trust row, not the tiny info icon. This
     keeps Warranty and Delivery completely inside the mobile viewport. */
  .bpe-info-details{position:static!important}
  .bpe-info-popover{position:absolute!important;top:27px!important;bottom:auto!important;left:0!important;right:auto!important;width:min(360px,100%)!important;max-width:100%!important;max-height:46vh;overflow:auto;padding:13px 14px}
  .bpe-delivery-popover,.bpe-warranty-popover{left:0!important;right:auto!important}
  .bpe-compare-table thead th{top:0}
}

/* === BPE v0.9.0 refinement layer === */
/* Product metadata: release year, linked series, and deepest useful category. */
.bpe-product-meta-line{display:flex;align-items:center;flex-wrap:wrap;gap:7px;color:var(--bpe-muted);font-size:13px;font-weight:650;margin:12px 0 15px}
.bpe-product-meta-line a{color:var(--bpe-accent)!important;text-decoration:none!important;background:transparent!important}
.bpe-product-meta-line a:hover,.bpe-product-meta-line a:focus{text-decoration:underline!important;background:transparent!important}
.bpe-meta-dot{color:#c4cad3}

/* Full-width WhatsApp order action underneath Add to cart / Buy Now. */
.bpe-whatsapp-order-wrap{margin-top:10px}
.bpe-whatsapp-order{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:52px;padding:11px 16px;border:1px solid var(--bpe-accent);border-radius:10px;background:#fff!important;color:var(--bpe-accent)!important;text-decoration:none!important;font-weight:750;box-shadow:none;transition:border-color .15s ease,box-shadow .15s ease}
.bpe-whatsapp-order:hover,.bpe-whatsapp-order:focus{background:#fff!important;color:var(--bpe-accent)!important;text-decoration:underline!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--bpe-accent) 10%,transparent)}
.bpe-whatsapp-order.needs-selection{opacity:.72}
.bpe-whatsapp-order>span:last-child{display:flex;align-items:baseline;gap:7px}
.bpe-whatsapp-order small{font-size:12px;font-weight:600;color:var(--bpe-muted)}
.bpe-whatsapp-icon{display:grid;place-items:center;width:21px;height:21px;flex:0 0 21px}
.bpe-whatsapp-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}

/* Warranty is reiterated in-page from the exact same product-level warranty data. */
.bpe-warranty-section{background:#fff}
.bpe-warranty-copy{max-width:920px;border-left:3px solid var(--bpe-accent);padding:4px 0 4px 18px}
.bpe-warranty-copy p{margin:0;color:#344054;font-size:15px;line-height:1.7}
.bpe-warranty-copy strong{color:var(--bpe-text)}

/* Compare: large product header remains normal; compact product names stick while reading specs. */
.bpe-compare-table thead th{position:static!important;box-shadow:none!important}
.bpe-compare-sticky-products th{position:sticky!important;top:0;z-index:18!important;background:rgba(255,255,255,.97)!important;backdrop-filter:blur(10px);border-top:1px solid var(--bpe-border);border-bottom:1px solid var(--bpe-border)!important;padding:9px 12px!important;text-align:center!important;color:#344054;font-size:12px!important;font-weight:750!important;line-height:1.3}
.bpe-compare-sticky-products th:first-child{left:0;z-index:19!important;background:var(--bpe-soft)!important}
.bpe-compare-table tbody tr:not(.bpe-compare-sticky-products)>th{position:sticky;left:0;z-index:7}
.bpe-compare-value-wrap{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap;vertical-align:middle}
.bpe-compare-value{display:inline-flex;align-items:center;min-width:0}
.bpe-same-badge,.bpe-match-note{display:inline-flex!important;align-items:center!important;gap:4px!important;margin:0 0 0 7px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#5f8056!important;font-size:10px!important;font-weight:700!important;line-height:1.2!important;vertical-align:middle!important}
.bpe-match-note{margin-left:0!important}
.bpe-same-badge:before,.bpe-match-note:before{display:none!important;content:none!important}
.bpe-same-badge>span,.bpe-match-note>span{font-size:13px;line-height:1;color:#74a164}
.bpe-compare-table tr.is-all-same>th{box-shadow:inset 3px 0 0 #8bb37c!important}

/* Customer review incentive: visible but not louder than the actual reviews. */
.bpe-review-incentive{display:flex;flex-direction:column;gap:2px;margin:-2px 0 18px;padding:11px 13px;border:1px solid #dfe7f2;border-radius:10px;background:var(--bpe-accent-soft);max-width:820px}
.bpe-review-incentive strong{font-size:14px;color:var(--bpe-text)}
.bpe-review-incentive span{font-size:12px;color:var(--bpe-muted)}

/* More to Consider: cards read as one centered recommendation set. */
.bpe-more-consider .bpe-product-card{text-align:center;align-items:center}
.bpe-more-consider .bpe-product-card-image{width:100%}
.bpe-more-consider .bpe-product-card-name{justify-content:center;text-align:center}
.bpe-more-consider .bpe-product-card-rating{display:flex;justify-content:center}
.bpe-more-consider .bpe-product-card-price{text-align:center}
.bpe-more-consider .bpe-card-link{align-self:center}

@media (max-width:640px){
  .bpe-whatsapp-order>span:last-child{flex-direction:column;align-items:center;gap:0}
  .bpe-whatsapp-order small{font-size:11px}
  .bpe-compare-sticky-products th{font-size:11px!important;padding:8px!important}
  .bpe-warranty-copy{padding-left:14px}
}

/* === BPE v0.10.0 refinement layer === */
/* Small editorial links should read like links, not mini-buttons. */
.bpe-glance-footer .bpe-text-link,
.bpe-description-toggle,
.bpe-spec-toggle{
  font-size:13px!important;
  font-weight:500!important;
  color:var(--bpe-accent)!important;
  text-decoration:underline!important;
  text-underline-offset:2px;
  padding:2px 0!important;
  background:transparent!important;
}

/* Protect Plus+ purchase option. */
.bpe-protect-plus{grid-column:1/-1;margin:2px 0 4px;padding:0}
.bpe-protect-plus-label{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;width:100%;padding:13px 14px;border:1px solid var(--bpe-border);border-radius:10px;background:#fff;cursor:pointer}
.bpe-protect-plus-label:hover{border-color:#b8c1ce}
.bpe-protect-plus input{position:absolute;opacity:0;pointer-events:none}
.bpe-protect-plus-check{width:20px;height:20px;border:1.5px solid #b8c1ce;border-radius:5px;background:#fff;display:grid;place-items:center}
.bpe-protect-plus input:checked+.bpe-protect-plus-check{background:var(--bpe-accent);border-color:var(--bpe-accent)}
.bpe-protect-plus input:checked+.bpe-protect-plus-check:after{content:'✓';color:#fff;font-size:13px;font-weight:800;line-height:1}
.bpe-protect-plus-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.bpe-protect-plus-copy strong{font-size:14px;color:var(--bpe-text)}
.bpe-protect-plus-copy span{font-size:12px;color:var(--bpe-muted);line-height:1.35}
.bpe-protect-plus-price{font-size:13px;font-weight:750;color:var(--bpe-text);white-space:nowrap}
.bpe-protect-warranty-note{margin-top:13px;padding-top:13px;border-top:1px solid var(--bpe-border);display:flex;flex-direction:column;gap:3px}
.bpe-protect-warranty-note strong{font-size:14px}
.bpe-protect-warranty-note span{font-size:13px;color:var(--bpe-muted);line-height:1.5}

/* WhatsApp gets its own brand language while staying within Bwonjo spacing. */
.bpe-whatsapp-order{border-color:#20b957!important;background:#25D366!important;color:#fff!important;box-shadow:0 5px 14px rgba(37,211,102,.16)!important}
.bpe-whatsapp-order:hover,.bpe-whatsapp-order:focus{background:#20c55d!important;color:#fff!important;text-decoration:none!important;box-shadow:0 7px 18px rgba(37,211,102,.22)!important}
.bpe-whatsapp-order small{color:rgba(255,255,255,.86)!important}
.bpe-whatsapp-icon{width:24px;height:24px;flex-basis:24px}
.bpe-whatsapp-icon svg{width:24px;height:24px;fill:currentColor!important;stroke:none!important}

/* Compare: compact names appear only when the main product header has scrolled away. */
.bpe-compare-sticky-products{display:none!important}
.bpe-compare-sticky-shell{position:sticky;top:0;z-index:30;height:0;overflow:visible;opacity:0;pointer-events:none;transition:opacity .12s ease}
.bpe-compare-wrap.is-compare-sticky-active .bpe-compare-sticky-shell{opacity:1}
.bpe-compare-sticky-grid{display:grid;grid-template-columns:19% 27% 27% 27%;min-width:940px;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-bottom:1px solid var(--bpe-border);box-shadow:0 5px 14px rgba(16,24,40,.06)}
.bpe-compare-sticky-grid>*{padding:9px 12px;text-align:center;border-right:1px solid var(--bpe-border);font-size:12px;line-height:1.25;color:#344054;white-space:normal}
.bpe-compare-sticky-grid>*:first-child{background:var(--bpe-soft)}
.bpe-compare-sticky-grid>*:last-child{border-right:0}
body.admin-bar .bpe-compare-sticky-shell{top:32px}

/* Matching specs: visible at a glance, still restrained. */
.bpe-compare-value-wrap{display:inline-flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important;vertical-align:middle!important}
.bpe-compare-value{display:inline-flex!important;align-items:center!important;line-height:1.35}
.bpe-same-badge,.bpe-match-note{
  display:inline-flex!important;align-items:center!important;gap:5px!important;
  margin:0 0 0 7px!important;padding:2px 7px!important;border:1px solid #bdd9b4!important;border-radius:999px!important;
  background:#eef8ea!important;color:#47753d!important;font-size:10px!important;font-weight:800!important;line-height:1.2!important;white-space:nowrap!important
}
.bpe-match-note{margin-left:0!important}
.bpe-same-badge:before,.bpe-match-note:before{content:none!important;display:none!important}
.bpe-same-badge>span,.bpe-match-note>span{font-size:12px!important;color:#69955b!important;line-height:1!important}
.bpe-compare-table tr.is-all-same td{background:#f5fbf2!important}
.bpe-compare-table tr.is-all-same>th{background:#f5fbf2!important;box-shadow:inset 3px 0 0 #7cae6b!important}
.bpe-compare-table td.is-match{background:#f8fcf6!important}
.bpe-compare-recommendation{display:inline-flex;align-items:center;justify-content:center;padding:3px 7px;border-radius:999px;background:var(--bpe-accent-soft);color:var(--bpe-accent);font-size:10px;font-weight:750;line-height:1.2;margin-top:-2px}

/* More to Consider remains centered as a recommendation rail. */
.bpe-more-consider .bpe-product-card{align-items:center!important;text-align:center!important}
.bpe-more-consider .bpe-product-card-name,.bpe-more-consider .bpe-product-card-price,.bpe-more-consider .bpe-product-card-rating{width:100%;text-align:center;justify-content:center}

@media (max-width:782px){body.admin-bar .bpe-compare-sticky-shell{top:46px}}
@media (max-width:640px){
  .bpe-protect-plus-label{grid-template-columns:auto minmax(0,1fr);align-items:start}
  .bpe-protect-plus-price{grid-column:2;margin-top:2px}
  .bpe-compare-sticky-grid>*{padding:8px 7px;font-size:11px}
}
/* v0.10.0 fixed comparison identity bar: activated by JS only after the large header leaves view. */
.bpe-compare-sticky-shell{position:fixed!important;top:0;left:0;width:0;height:auto!important;z-index:99980;overflow:hidden!important;opacity:0!important;pointer-events:none!important;background:transparent!important}
.bpe-compare-wrap.is-compare-sticky-active .bpe-compare-sticky-shell{opacity:1!important}
.bpe-compare-sticky-grid{min-width:940px;width:940px;will-change:transform}


/* v0.11.0 polish: slightly calmer title, stronger rating CTA, centered recommendation cards, Astra scroll-top clearance. */
.bpe-summary .product_title{font-size:clamp(29px,2.8vw,41px)}
.bpe-rating-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px}
.bpe-quick-rating{padding:6px 9px;border:1px solid #ead9ad;border-radius:10px;background:#fffcf3}
.bpe-quick-rating-label{font-size:14px;font-weight:760;color:var(--bpe-text)}
.bpe-quick-stars{gap:1px}
.bpe-quick-star{width:27px;height:27px;color:#d49a16}
.bpe-quick-star svg{width:22px;height:22px;stroke-width:1.7}
.bpe-more-brand .bpe-product-card{text-align:center;align-items:center}
.bpe-more-brand .bpe-product-card-image{width:100%}
.bpe-more-brand .bpe-product-card-name{width:100%;justify-content:center;text-align:center}
.bpe-more-brand .bpe-product-card-rating{width:100%;display:flex;justify-content:center}
.bpe-more-brand .bpe-product-card-price{width:100%;text-align:center}
.bpe-more-brand .bpe-card-link{align-self:center}
body.single-product.bpe-sticky-cart-visible #ast-scroll-top,
body.single-product.bpe-sticky-cart-visible .ast-scroll-to-top-right{bottom:78px!important}
@media (max-width:768px){
  .bpe-summary .product_title{font-size:28px}
  body.single-product.bpe-sticky-cart-visible #ast-scroll-top,
  body.single-product.bpe-sticky-cart-visible .ast-scroll-to-top-right{bottom:84px!important}
}


/* === BPE v0.12.0 consistency + ecosystem refinement layer === */
/* One quiet link language for navigation, expansion and secondary discovery actions. */
.bpe-product .bpe-ui-link,
.bpe-product .bpe-text-link,
.bpe-product .bpe-card-link,
.bpe-product .bpe-compare-view,
.bpe-product .bpe-description-toggle,
.bpe-product .bpe-spec-toggle,
.bpe-product .bpe-review-continue,
.bpe-product
.bpe-product-meta-line a,
.bpe-quick-rating-status a{
  appearance:none!important;
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:2px 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--bpe-accent)!important;
  font:inherit!important;
  font-size:13px!important;
  font-weight:500!important;
  line-height:1.35!important;
  text-decoration:underline!important;
  text-decoration-thickness:1px!important;
  text-underline-offset:2px!important;
  cursor:pointer;
}
.bpe-product .bpe-ui-link:hover,
.bpe-product .bpe-ui-link:focus,
.bpe-product .bpe-text-link:hover,
.bpe-product .bpe-card-link:hover,
.bpe-product .bpe-compare-view:hover,
.bpe-product .bpe-description-toggle:hover,
.bpe-product .bpe-spec-toggle:hover,
.bpe-product .bpe-review-continue:hover,
.bpe-product 
.bpe-product-meta-line a{font-weight:600!important}

/* Rate this product: compact, neutral capsule with a clear star interaction. */
.bpe-rating-row{gap:9px 12px}
.bpe-quick-rating{
  display:inline-flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px 9px;
  width:auto;
  padding:6px 8px 6px 11px;
  border:1px solid var(--bpe-border);
  border-radius:999px;
  background:#fff;
  box-shadow:0 1px 2px rgba(16,24,40,.04);
}
.bpe-quick-rating-label{font-size:13px!important;font-weight:700!important;color:var(--bpe-text)!important;white-space:nowrap}
.bpe-quick-stars{gap:1px;padding-left:8px;border-left:1px solid #e8ebf0}
.bpe-quick-star{
  width:29px!important;height:29px!important;padding:3px!important;border-radius:50%!important;
  color:#d49a16!important;transition:background .12s ease,transform .12s ease
}
.bpe-quick-star svg{width:21px!important;height:21px!important;stroke-width:1.65!important}
.bpe-quick-star:hover,.bpe-quick-star:focus-visible{background:#fff8e7!important;transform:translateY(-1px)}
.bpe-quick-star.is-active{background:#fff8e7!important}
.bpe-quick-rating-guest{flex-basis:100%;margin:4px 2px 2px;max-width:520px}
.bpe-rating-save{
  min-height:38px!important;padding:8px 13px!important;border-radius:8px!important;
  font-size:13px!important;font-weight:700!important;box-shadow:none!important
}

/* Compatible accessories: fullest category rows first and all card content centered. */
.bpe-accessory-card{align-items:center!important;text-align:center!important}
.bpe-accessory-image{width:100%}
.bpe-accessory-name{width:100%;text-align:center;min-height:42px;display:flex;align-items:flex-start;justify-content:center}
.bpe-accessory-price{width:100%;text-align:center;margin:7px 0 8px}
.bpe-accessory-card .bpe-card-link{align-self:center!important;margin-top:auto!important}

/* Recommendation cards use the same centered visual rhythm everywhere. */
.bpe-more-consider .bpe-product-card,
.bpe-more-brand .bpe-product-card{align-items:center!important;text-align:center!important}
.bpe-more-consider .bpe-product-card-name,
.bpe-more-brand .bpe-product-card-name{width:100%;justify-content:center;text-align:center}
.bpe-more-consider .bpe-product-card-rating,
.bpe-more-brand .bpe-product-card-rating{width:100%;display:flex;justify-content:center}
.bpe-more-consider .bpe-product-card-price,
.bpe-more-brand .bpe-product-card-price{width:100%;text-align:center}
.bpe-more-consider .bpe-card-link,
.bpe-more-brand .bpe-card-link{align-self:center!important}

/* Section form actions stay actionable without looking like oversized hero CTAs. */

@media (max-width:640px){
  .bpe-quick-rating{border-radius:12px;max-width:100%}
  .bpe-quick-stars{padding-left:7px}
  .bpe-quick-star{width:27px!important;height:27px!important}
}


/* === BPE v0.13.0 catalogue-fill + interaction corrections === */
/* Horizontal product rails clip transformed children; keep cards stationary on hover. */
@media (hover:hover) and (pointer:fine){
  .bpe-product-strip .bpe-product-card:hover{transform:none!important}
}
.bpe-product-strip{padding-top:4px}
.bpe-product-card-name{overflow:visible!important;padding-bottom:2px}

/* Protect Plus changes the displayed purchase price and restores it when removed. */
.bpe-price,.bpe-sticky-price{transition:opacity .12s ease}
.bpe-price[data-protect-included="1"] .price:after{content:" · incl. Protect Plus+";font-size:12px;font-weight:600;color:var(--bpe-muted);white-space:nowrap}
@media (max-width:640px){
  .bpe-price[data-protect-included="1"] .price:after{display:block;margin-top:4px}
}
/* Never line-clamp recommendation titles; long names may wrap naturally. */
.bpe-product-card-name,
.bpe-accessory-name{
  height:auto!important;
  max-height:none!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  -webkit-line-clamp:unset!important;
  line-clamp:unset!important;
  overflow-wrap:anywhere;
}

/* === BPE v0.15.0 compatible-accessory family + progressive disclosure === */
.bpe-accessory-more-groups[hidden]{display:none!important}
.bpe-accessory-more-toggle{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:inline-flex!important;
  margin:14px 0 0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  font:inherit!important;
  cursor:pointer!important;
}

/* === BPE v0.17.0 discovery, comparison, gallery and price-history refinements === */
/* Product gallery: keep four thumbnails visible and scroll horizontally for the rest. */
.bpe-gallery .flex-control-nav.flex-control-thumbs{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:8px!important;
  width:100%!important;
  max-width:100%!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  margin:12px 0 0!important;
  padding:0 0 7px!important;
  list-style:none!important;
  scroll-snap-type:x proximity;
  scrollbar-width:thin;
  overscroll-behavior-inline:contain;
}
.bpe-gallery .flex-control-nav.flex-control-thumbs li{
  float:none!important;
  width:auto!important;
  flex:0 0 calc((100% - 24px)/4)!important;
  min-width:0!important;
  margin:0!important;
  scroll-snap-align:start;
}
.bpe-gallery .flex-control-nav.flex-control-thumbs img{display:block;width:100%!important;height:auto!important;object-fit:contain}

/* Compatible accessories: horizontal category rail; v0.20 caps output to three products per category. */
.bpe-accessory-strip{
  display:grid!important;
  grid-template-columns:none!important;
  grid-auto-flow:column!important;
  grid-auto-columns:calc((100% - 32px)/3)!important;
  gap:16px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:12px!important;
  scroll-snap-type:x proximity!important;
  scrollbar-width:thin!important;
  overscroll-behavior-inline:contain;
}
.bpe-accessory-card{scroll-snap-align:start!important}
@media (max-width:760px){
  .bpe-accessory-strip{grid-auto-columns:minmax(210px,82%)!important;gap:12px!important}
}

/* Compare booleans distinguish an explicit No from missing catalogue data. */
.bpe-compare-boolean-wrap{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.bpe-compare-boolean-label{font-size:12px;font-weight:650;color:#667085}
.bpe-compare-missing{font-size:12px;color:#98a2b3;font-style:italic;white-space:nowrap}

/* Make the sticky compare identity bar only a touch more legible without turning it into a banner. */
.bpe-compare-wrap.is-compare-sticky-active .bpe-compare-sticky-grid{
  background:rgba(255,255,255,.99)!important;
  border-bottom-color:#d8dee8!important;
  box-shadow:0 5px 18px rgba(16,24,40,.09)!important;
}
.bpe-compare-wrap.is-compare-sticky-active .bpe-compare-sticky-grid>*{
  color:#2f3a4c!important;
  font-weight:780!important;
}

/* Price history appears only after at least one real listed-price change has been recorded. */
.bpe-price-history{background:#fff}
.bpe-price-history-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}
.bpe-price-history-summary>div{border:1px solid var(--bpe-border);border-radius:12px;padding:14px 16px;background:#fff;display:flex;flex-direction:column;gap:4px}
.bpe-price-history-summary span{font-size:12px;color:var(--bpe-muted)}
.bpe-price-history-summary strong{font-size:17px;color:var(--bpe-text)}
.bpe-price-history-chart{border:1px solid var(--bpe-border);border-radius:12px;padding:14px 14px 9px;background:#fff;overflow:hidden}
.bpe-price-history-chart svg{display:block;width:100%;height:220px;overflow:visible}
.bpe-price-gridline{stroke:#e8ebf0;stroke-width:1;vector-effect:non-scaling-stroke}
.bpe-price-line{fill:none;stroke:var(--bpe-accent);stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.bpe-price-point{fill:#fff;stroke:var(--bpe-accent);stroke-width:2;vector-effect:non-scaling-stroke}
.bpe-price-history-dates{display:flex;justify-content:space-between;gap:16px;margin-top:3px;font-size:12px;color:var(--bpe-muted)}
.bpe-price-history-note{margin:9px 0 0;color:var(--bpe-muted);font-size:12px;line-height:1.5}
@media (max-width:640px){
  .bpe-price-history-summary{grid-template-columns:1fr}
  .bpe-price-history-chart svg{height:180px}
}


/* === BPE v0.18.0 compact discovery + polish === */
/* Compatible accessories: compact horizontal commerce cards. */
@media (min-width:761px){
  .bpe-accessory-strip{
    grid-auto-columns:minmax(315px,360px)!important;
    gap:10px!important;
    padding:10px!important;
    align-items:stretch;
  }
  .bpe-accessory-card{
    display:grid!important;
    grid-template-columns:112px minmax(0,1fr)!important;
    grid-template-rows:auto auto auto 1fr!important;
    column-gap:13px!important;
    row-gap:4px!important;
    align-items:start!important;
    text-align:left!important;
    min-height:156px!important;
    padding:12px!important;
    border:1px solid #e0e5ec!important;
    border-radius:11px!important;
    background:#fff!important;
  }
  .bpe-accessory-image{
    grid-column:1!important;
    grid-row:1 / 5!important;
    width:112px!important;
    height:128px!important;
    margin:0!important;
    align-self:center!important;
  }
  .bpe-accessory-name{
    grid-column:2!important;grid-row:1!important;
    width:100%!important;min-height:0!important;
    display:block!important;text-align:left!important;
    font-size:13px!important;line-height:1.32!important;font-weight:700!important;
    overflow:hidden!important;
    display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;line-clamp:2!important;
  }
  .bpe-accessory-rating{grid-column:2!important;grid-row:2!important;display:flex!important;align-items:center!important;min-height:18px!important}
  .bpe-accessory-rating .star-rating{font-size:12px!important;margin:0!important}
  .bpe-accessory-price{
    grid-column:2!important;grid-row:3!important;
    width:100%!important;text-align:left!important;margin:2px 0 0!important;
    font-size:17px!important;line-height:1.2!important;font-weight:800!important;
  }
  .bpe-accessory-card .bpe-card-link{
    grid-column:2!important;grid-row:4!important;
    align-self:end!important;justify-self:start!important;
    margin-top:4px!important;font-size:12px!important;
  }
}
@media (max-width:760px){
  .bpe-accessory-card{padding:12px!important}
  .bpe-accessory-rating{display:flex;justify-content:center;min-height:18px}
}

/* Rate this product: cleaner control with separate label and star surface. */
.bpe-quick-rating{
  display:inline-grid!important;
  grid-template-columns:auto auto!important;
  align-items:center!important;
  gap:0!important;
  padding:0!important;
  border:1px solid #e1e6ed!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 2px 8px rgba(16,24,40,.045)!important;
  overflow:hidden!important;
}
.bpe-quick-rating-label{
  padding:9px 12px!important;
  font-size:12px!important;font-weight:750!important;
  letter-spacing:.005em!important;
  background:#fafbfc!important;
}
.bpe-quick-stars{
  padding:5px 7px!important;
  border-left:1px solid #e6eaf0!important;
  gap:2px!important;
  background:#fff!important;
}
.bpe-quick-star{
  width:31px!important;height:31px!important;padding:4px!important;
  border-radius:8px!important;
}
.bpe-quick-star svg{width:22px!important;height:22px!important;stroke-width:1.7!important}
.bpe-quick-star:hover,.bpe-quick-star:focus-visible,.bpe-quick-star.is-active{background:#fff7e6!important}
.bpe-quick-rating-guest,.bpe-quick-rating-status{grid-column:1 / -1!important}
.bpe-quick-rating-guest{margin:7px 9px 9px!important}
.bpe-quick-rating-status{padding:0 10px 8px!important}
@media (max-width:520px){
  .bpe-quick-rating{grid-template-columns:1fr!important;width:100%!important;max-width:340px!important}
  .bpe-quick-rating-label{text-align:center!important;border-bottom:1px solid #e6eaf0!important}
  .bpe-quick-stars{justify-content:center!important;border-left:0!important}
}

/* Compare: product identity must remain unmistakable while the specs scroll underneath. */
.bpe-compare-wrap.is-compare-sticky-active .bpe-compare-sticky-grid strong{
  color:#101828!important;
  font-size:13.5px!important;
  font-weight:850!important;
  line-height:1.3!important;
  letter-spacing:-.01em!important;
}
@media (max-width:640px){
  .bpe-compare-wrap.is-compare-sticky-active .bpe-compare-sticky-grid strong{font-size:12.5px!important}
}


/* === BPE v0.19.0 purchase-ready accessories + mobile compare + clearer price history === */

/* Breadcrumb ownership is external to Product Engine. */
.bpe-breadcrumb{display:none!important}

/* Sticky Add to Cart is intentionally removed for now. */
.bpe-sticky-cart{display:none!important}

/* Purchase-ready accessory actions. */
.bpe-accessory-card .bpe-accessory-add{
  align-self:start!important;
  justify-self:start!important;
  margin-top:4px!important;
  font-size:12px!important;
  font-weight:700!important;
  white-space:nowrap!important;
}

/* Compact desktop accessory cards: less empty space, more products visible. */
@media (min-width:761px){
  .bpe-accessory-strip{
    grid-auto-columns:minmax(300px,340px)!important;
    gap:10px!important;
  }
  .bpe-accessory-card{
    grid-template-columns:104px minmax(0,1fr)!important;
    grid-template-rows:auto auto auto auto!important;
    min-height:142px!important;
    padding:10px!important;
    column-gap:12px!important;
    row-gap:3px!important;
  }
  .bpe-accessory-image{
    width:104px!important;
    height:118px!important;
    grid-row:1 / 5!important;
  }
  .bpe-accessory-card .bpe-card-link{
    grid-row:4!important;
    margin-top:2px!important;
  }
}

/* Two accessories visible at once on mobile. */
@media (max-width:760px){
  .bpe-accessory-strip{
    grid-auto-columns:calc((100% - 10px)/2)!important;
    gap:10px!important;
    padding:10px!important;
  }
  .bpe-accessory-card{
    padding:9px!important;
    min-width:0!important;
  }
  .bpe-accessory-image{
    height:104px!important;
    margin-bottom:7px!important;
  }
  .bpe-accessory-name{
    min-height:34px!important;
    font-size:12px!important;
    line-height:1.3!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    overflow:hidden!important;
  }
  .bpe-accessory-rating{
    min-height:0!important;
    margin-top:3px!important;
  }
  .bpe-accessory-price{
    font-size:14px!important;
    margin:5px 0 3px!important;
  }
  .bpe-accessory-card .bpe-accessory-add{
    font-size:11.5px!important;
    margin-top:auto!important;
  }
}

/* Credible lower-price comparison badge: readable, not microscopic. */
.bpe-compare-recommendation{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  max-width:170px!important;
  min-height:30px!important;
  padding:6px 9px!important;
  margin:1px auto 2px!important;
  border:1px solid var(--bpe-accent-border)!important;
  border-radius:8px!important;
  background:var(--bpe-accent-soft)!important;
  color:var(--bpe-accent)!important;
  font-size:11.5px!important;
  font-weight:780!important;
  line-height:1.25!important;
  text-align:center!important;
  white-space:normal!important;
}

/* Mobile Compare: attribute-name cells scroll normally and no longer cover specs. */
@media (max-width:760px){
  .bpe-compare-table{
    min-width:720px!important;
  }
  .bpe-compare-table thead .bpe-compare-label,
  .bpe-compare-table tbody th,
  .bpe-compare-table tbody tr:not(.bpe-compare-sticky-products)>th{
    position:static!important;
    left:auto!important;
    z-index:1!important;
  }
  .bpe-compare-table thead .bpe-compare-label,
  .bpe-compare-table tbody th{
    width:130px!important;
  }
  .bpe-compare-table thead th{
    width:calc((720px - 130px)/3)!important;
  }
  .bpe-compare-sticky-grid{
    min-width:720px!important;
    width:720px;
    grid-template-columns:130px repeat(3,calc((720px - 130px)/3))!important;
  }
  .bpe-compare-scroll{
    cursor:auto!important;
  }
}

/* Discover related products uses the same card sizing as More to Consider. */
.bpe-more-brand .bpe-product-strip{
  grid-auto-columns:minmax(220px,260px)!important;
}

/* Price History now explains and labels the actual recorded data. */
.bpe-price-history-intro{
  margin:-10px 0 18px!important;
  max-width:820px;
  color:var(--bpe-muted);
  font-size:13px;
  line-height:1.55;
}
.bpe-price-history-summary strong.is-up{color:#a54b1f}
.bpe-price-history-summary strong.is-down{color:#2f7d16}
.bpe-price-history-graph{
  display:grid;
  grid-template-columns:max-content minmax(0,1fr);
  gap:12px;
  align-items:stretch;
}
.bpe-price-history-yaxis{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:7px 0 25px;
  color:var(--bpe-muted);
  font-size:11px;
  line-height:1;
  text-align:right;
  white-space:nowrap;
}
.bpe-price-history-plot{min-width:0}
.bpe-price-history-points{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin-top:14px;
}
.bpe-price-history-row{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
  padding:9px 10px;
  border:1px solid #edf0f4;
  border-radius:8px;
  background:#fafbfc;
}
.bpe-price-history-row time{
  color:var(--bpe-muted);
  font-size:11px;
}
.bpe-price-history-row strong{
  color:var(--bpe-text);
  font-size:13px;
  line-height:1.25;
}
@media (max-width:760px){
  .bpe-price-history-graph{gap:7px}
  .bpe-price-history-yaxis{font-size:10px;padding-bottom:23px}
  .bpe-price-history-points{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* === BPE v0.20.0 rating, protection, accessory density and price-history polish === */

/* External breadcrumb already provides vertical separation; do not add a second large gap. */
.bpe-buybox{padding-top:8px!important}
@media (max-width:640px){
  .bpe-buybox{padding-top:10px!important}
}

/* Once a star rating has been saved, only the confirmation + review link remains. */
.bpe-quick-rating.is-saved{
  display:inline-flex!important;
  width:auto!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.bpe-quick-rating.is-saved .bpe-quick-rating-status{
  grid-column:auto!important;
  flex-basis:auto!important;
  padding:0!important;
  margin:0!important;
  color:var(--bpe-muted)!important;
  font-size:12px!important;
  line-height:1.45!important;
}
.bpe-quick-rating.is-saved .bpe-quick-rating-status a{font-weight:700!important}

/* Compatible accessories: exactly three maximum per category.
 * Desktop shows all three together; mobile shows two and scrolls to the third. */
@media (min-width:761px){
  .bpe-accessory-strip{
    grid-auto-columns:calc((100% - 20px)/3)!important;
    gap:10px!important;
    overflow-x:hidden!important;
  }
  .bpe-accessory-card{min-width:0!important}
}
@media (max-width:760px){
  .bpe-accessory-strip{
    grid-auto-columns:calc((100% - 10px)/2)!important;
    gap:10px!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory!important;
  }
  .bpe-accessory-card{scroll-snap-align:start!important}
}

/* Price History: compact data-first presentation with a discrete step chart. */
.bpe-price-history-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin:-9px 0 18px;
}
.bpe-price-history-intro{
  margin:0!important;
  max-width:780px!important;
}
.bpe-price-history-count{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 9px;
  border:1px solid var(--bpe-border);
  border-radius:999px;
  color:var(--bpe-muted);
  background:#fff;
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}
.bpe-price-history-summary{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  margin-bottom:14px!important;
}
.bpe-price-history-summary>div{
  min-height:78px;
  padding:12px 14px!important;
  border-radius:10px!important;
  justify-content:center;
}
.bpe-price-history-summary strong{font-size:16px!important}
.bpe-price-history-chart{
  padding:0!important;
  border-radius:13px!important;
  overflow:hidden!important;
  background:#fff!important;
}
.bpe-price-history-chart-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:13px 15px 10px;
  border-bottom:1px solid #edf0f4;
}
.bpe-price-history-chart-head strong{
  color:var(--bpe-text);
  font-size:13px;
}
.bpe-price-history-chart-head span{
  color:var(--bpe-muted);
  font-size:11px;
  text-align:right;
}
.bpe-price-history-plot{
  min-width:0;
  padding:7px 12px 10px;
  color:var(--bpe-accent);
}
.bpe-price-history-chart svg{
  height:184px!important;
}
.bpe-price-area{pointer-events:none}
.bpe-price-line{
  fill:none!important;
  stroke:var(--bpe-accent)!important;
  stroke-width:2.35!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  vector-effect:non-scaling-stroke;
}
.bpe-price-point{
  fill:#fff!important;
  stroke:var(--bpe-accent)!important;
  stroke-width:2.2!important;
  vector-effect:non-scaling-stroke;
}
.bpe-price-history-dates{
  margin:1px 4px 0!important;
}
.bpe-price-history-log-head{
  margin:16px 0 8px;
  color:var(--bpe-text);
  font-size:13px;
}
.bpe-price-history-points{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  margin-top:0!important;
}
.bpe-price-history-row{
  gap:3px!important;
  padding:10px 11px!important;
  background:#fff!important;
}
.bpe-price-history-row.is-current{
  border-color:var(--bpe-accent-border)!important;
  background:var(--bpe-accent-soft)!important;
}
.bpe-price-history-row>div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.bpe-price-current-badge{
  display:inline-flex;
  align-items:center;
  padding:2px 6px;
  border-radius:999px;
  background:var(--bpe-accent-soft-strong);
  color:var(--bpe-accent);
  font-size:9px;
  font-weight:800;
  line-height:1.35;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.bpe-price-delta{
  color:var(--bpe-muted);
  font-size:10.5px;
  line-height:1.3;
}
.bpe-price-delta.is-up{color:#a54b1f}
.bpe-price-delta.is-down{color:#2f7d16}
.bpe-price-history-note{margin-top:10px!important}

@media (max-width:900px){
  .bpe-price-history-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .bpe-price-history-points{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:640px){
  .bpe-price-history-head{display:block;margin-bottom:14px}
  .bpe-price-history-count{margin-top:9px}
  .bpe-price-history-summary{gap:8px!important}
  .bpe-price-history-summary>div{min-height:70px;padding:10px 11px!important}
  .bpe-price-history-summary strong{font-size:14px!important}
  .bpe-price-history-chart-head{align-items:flex-start;padding:12px 12px 9px}
  .bpe-price-history-chart-head span{max-width:58%}
  .bpe-price-history-chart svg{height:150px!important}
  .bpe-price-history-plot{padding:5px 8px 9px}
  .bpe-price-history-points{grid-template-columns:1fr 1fr!important;gap:7px!important}
}


/* === BPE v0.21.0 refinements === */

/* Quick star-rating privacy reassurance. */
.bpe-rating-privacy{
  grid-column:1/-1;
  margin:1px 0 0!important;
  color:var(--bpe-muted);
  font-size:11px;
  line-height:1.45;
}
.bpe-rating-privacy strong{color:#475467;font-weight:750}

/* Compatible accessories: three at once on desktop, two at once on mobile. */
@media (min-width:761px){
  .bpe-accessory-strip{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-auto-flow:row!important;
    gap:12px!important;
    overflow:visible!important;
  }
}
@media (max-width:760px){
  .bpe-accessory-strip{
    grid-template-columns:none!important;
    grid-auto-flow:column!important;
    grid-auto-columns:calc((100% - 10px)/2)!important;
    gap:10px!important;
    overflow-x:auto!important;
    scrollbar-width:none!important;
    -ms-overflow-style:none;
  }
  .bpe-accessory-strip::-webkit-scrollbar{display:none}
}
.bpe-accessory-card{position:relative!important}
.bpe-accessory-same-brand{
  position:absolute;
  top:18px;
  left:18px;
  z-index:3;
  display:inline-flex;
  align-items:center;
  min-height:22px;
  margin:0;
  padding:3px 7px;
  border:1px solid var(--bpe-accent-border);
  border-radius:999px;
  background:var(--bpe-accent-soft);
  color:var(--bpe-accent);
  font-size:10.5px;
  font-weight:800;
  line-height:1;
  letter-spacing:.01em;
}

/* Price history: clean retail-style graph with visible axes and real data only. */
.bpe-price-history{background:#f7f8fa}
.bpe-price-history-subtitle{
  margin:-10px 0 17px!important;
  color:#475467;
  font-size:14px;
  line-height:1.45;
}
.bpe-ph-overview{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-bottom:14px;
}
.bpe-ph-overview>div{
  min-width:0;
  padding:0 2px;
}
.bpe-ph-overview span{
  display:block;
  margin-bottom:3px;
  color:var(--bpe-muted);
  font-size:11px;
  line-height:1.3;
}
.bpe-ph-overview strong{
  display:block;
  color:var(--bpe-text);
  font-size:15px;
  line-height:1.3;
  font-weight:800;
}
.bpe-ph-overview strong.is-up{color:#a54b1f}
.bpe-ph-overview strong.is-down{color:#237a46}
.bpe-ph-card{
  overflow:hidden;
  border:1px solid #dfe4ea;
  border-radius:12px;
  background:#fff;
}
.bpe-ph-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:15px 17px 10px;
}
.bpe-ph-card-head>div{display:flex;flex-direction:column;gap:2px}
.bpe-ph-card-head strong{color:var(--bpe-text);font-size:13px;font-weight:800}
.bpe-ph-card-head span{color:var(--bpe-muted);font-size:11px;line-height:1.35}
.bpe-ph-range{white-space:nowrap;text-align:right}
.bpe-ph-chart-grid{
  display:grid;
  grid-template-columns:82px minmax(0,1fr);
  gap:10px;
  padding:6px 18px 18px 8px;
}
.bpe-ph-yaxis{
  height:240px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:0 0 0 2px;
  color:#667085;
  font-size:10px;
  line-height:1;
  text-align:right;
  white-space:nowrap;
}
.bpe-ph-plot{
  position:relative;
  min-width:0;
  height:270px;
  color:var(--bpe-accent);
}
.bpe-ph-plot svg{
  display:block;
  width:100%;
  height:240px!important;
  overflow:visible;
}
.bpe-ph-gridline{
  stroke:#e4e8ee;
  stroke-width:1;
  vector-effect:non-scaling-stroke;
}
.bpe-ph-area{pointer-events:none}
.bpe-ph-line{
  fill:none;
  stroke:var(--bpe-accent);
  stroke-width:2.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}
.bpe-ph-dot{
  position:absolute;
  z-index:2;
  width:10px;
  height:10px;
  border:2px solid var(--bpe-accent);
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 2px rgba(6,117,232,.08);
  transform:translate(-50%,-50%);
}
.bpe-ph-xaxis{
  position:absolute;
  left:0;
  right:0;
  top:248px;
  height:20px;
  color:#667085;
  font-size:10px;
  line-height:1;
  pointer-events:none;
}
.bpe-ph-xaxis span{
  position:absolute;
  top:0;
  transform:translateX(-50%);
  white-space:nowrap;
}
.bpe-ph-xaxis span.is-first{transform:none}
.bpe-ph-xaxis span.is-last{transform:translateX(-100%)}
.bpe-ph-footer{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-top:10px;
  color:var(--bpe-muted);
  font-size:11px;
  line-height:1.45;
}
.bpe-ph-log{flex:0 0 auto;text-align:right}
.bpe-ph-log summary{
  cursor:pointer;
  color:var(--bpe-accent);
  font-weight:750;
  list-style:none;
}
.bpe-ph-log summary::-webkit-details-marker{display:none}
.bpe-ph-log-list{
  width:min(520px,82vw);
  margin-top:8px;
  padding:8px;
  border:1px solid var(--bpe-border);
  border-radius:10px;
  background:#fff;
  box-shadow:0 10px 28px rgba(16,24,40,.08);
  text-align:left;
}
.bpe-ph-log-row{
  display:grid;
  grid-template-columns:minmax(90px,1fr) auto auto;
  align-items:center;
  gap:12px;
  padding:7px 5px;
  border-bottom:1px solid #eef1f4;
}
.bpe-ph-log-row:last-child{border-bottom:0}
.bpe-ph-log-row time{color:#667085;font-size:10.5px}
.bpe-ph-log-row strong{color:var(--bpe-text);font-size:12px}
.bpe-ph-log-row small{color:#667085;font-size:10.5px}
.bpe-ph-log-row small.is-up{color:#a54b1f}
.bpe-ph-log-row small.is-down{color:#237a46}

/* More to Consider + Discover related products: five-up desktop rails with clean arrows. */
.bpe-product-rail{position:relative;overflow:visible}
.bpe-more-consider .bpe-product-strip,
.bpe-more-brand .bpe-product-strip{
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none;
  scroll-behavior:smooth;
  overscroll-behavior-inline:contain;
  padding:4px 2px 10px!important;
}
.bpe-more-consider .bpe-product-strip::-webkit-scrollbar,
.bpe-more-brand .bpe-product-strip::-webkit-scrollbar{display:none}
.bpe-product-rail-arrow{
  appearance:none;
  position:absolute;
  top:43%;
  z-index:12;
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  padding:0!important;
  border:1px solid #d6dee8!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.97)!important;
  color:var(--bpe-accent)!important;
  box-shadow:0 8px 22px rgba(16,24,40,.14)!important;
  cursor:pointer;
  transform:translateY(-50%);
  transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,opacity .15s ease;
}
.bpe-product-rail-arrow svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.bpe-product-rail-arrow:hover:not(:disabled),
.bpe-product-rail-arrow:focus-visible:not(:disabled){
  border-color:var(--bpe-accent-border)!important;
  box-shadow:0 10px 28px rgba(16,24,40,.18)!important;
  transform:translateY(-50%) scale(1.045);
}
.bpe-product-rail-prev{left:-20px}
.bpe-product-rail-next{right:-20px}
.bpe-product-rail-arrow:disabled{
  opacity:0;
  pointer-events:none;
}
.bpe-product-rail.is-static .bpe-product-rail-arrow{display:none!important}

@media (min-width:1181px){
  .bpe-more-consider .bpe-product-strip,
  .bpe-more-brand .bpe-product-strip{
    grid-auto-columns:calc((100% - 64px)/5)!important;
    gap:16px!important;
  }
}
@media (min-width:901px) and (max-width:1180px){
  .bpe-more-consider .bpe-product-strip,
  .bpe-more-brand .bpe-product-strip{
    grid-auto-columns:calc((100% - 48px)/4)!important;
    gap:16px!important;
  }
}
@media (min-width:761px) and (max-width:900px){
  .bpe-more-consider .bpe-product-strip,
  .bpe-more-brand .bpe-product-strip{
    grid-auto-columns:calc((100% - 32px)/3)!important;
    gap:16px!important;
  }
}
@media (max-width:760px){
  .bpe-ph-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}
  .bpe-ph-overview strong{font-size:14px}
  .bpe-ph-card-head{padding:13px 12px 8px}
  .bpe-ph-range{display:none}
  .bpe-ph-chart-grid{grid-template-columns:66px minmax(0,1fr);gap:7px;padding:5px 10px 14px 4px}
  .bpe-ph-yaxis{font-size:9px}
  .bpe-ph-xaxis{font-size:9px}
  .bpe-ph-dot{width:9px;height:9px}
  .bpe-ph-footer{display:block}
  .bpe-ph-log{margin-top:7px;text-align:left}
  .bpe-ph-log-list{width:100%}

  .bpe-more-consider .bpe-product-strip,
  .bpe-more-brand .bpe-product-strip{
    grid-auto-columns:calc((100% - 12px)/2)!important;
    gap:12px!important;
  }
  .bpe-product-rail-arrow{
    top:42%;
    width:38px;
    height:38px;
    box-shadow:0 5px 16px rgba(16,24,40,.14)!important;
  }
  .bpe-product-rail-prev{left:6px}
  .bpe-product-rail-next{right:6px}
  .bpe-product-rail-arrow svg{width:17px;height:17px}
}


/* === BPE v0.22.0 product-page refinement layer === */

/* At a Glance: attribute labels carry the emphasis; values are calmer. */
.bpe-at-a-glance .bpe-glance-label{
  font-weight:800!important;
  color:#475467!important;
}
.bpe-at-a-glance .bpe-glance-value{
  font-weight:520!important;
}

/* Compatible accessories: better breathing room and clearer hierarchy. */
.bpe-accessory-see-all{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  color:var(--bpe-accent)!important;
  font-size:13px!important;
  font-weight:700!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
.bpe-accessory-see-all:hover,
.bpe-accessory-see-all:focus{background:transparent!important}
.bpe-accessory-see-all-text{text-decoration:underline;text-underline-offset:2px}
.bpe-accessory-see-all-arrow{
  display:inline-block;
  text-decoration:none!important;
  font-size:14px;
  line-height:1;
  transform:translateY(-.5px);
}

.bpe-accessory-card{
  position:relative!important;
  align-items:center!important;
  text-align:center!important;
}
.bpe-accessory-name{
  width:100%!important;
  min-height:0!important;
  font-size:14px!important;
  font-weight:760!important;
  line-height:1.32!important;
  text-align:center!important;
  justify-content:center!important;
}
.bpe-accessory-same-brand{
  position:static!important;
  z-index:auto!important;
  align-self:center!important;
  width:max-content!important;
  min-height:22px!important;
  margin:6px auto 2px!important;
  padding:4px 8px!important;
  border:1px solid #b7e1c8!important;
  border-radius:999px!important;
  background:#eefaf3!important;
  color:#176b3a!important;
  font-size:10.5px!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:.01em!important;
}
.bpe-accessory-price{
  width:100%!important;
  text-align:center!important;
}
.bpe-accessory-card .bpe-accessory-add{
  align-self:center!important;
  justify-self:center!important;
  width:max-content!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}

/* Secondary products can use slightly larger names now that leading brands are removed. */
.bpe-product-card-name,
.bpe-compare-name{
  font-size:14.5px!important;
  font-weight:760!important;
  line-height:1.35!important;
}

/* Product Videos: same polished arrow language as product recommendation rails. */
.bpe-video-rail{
  position:relative;
  overflow:visible;
}
.bpe-video-grid{
  scrollbar-width:none!important;
  -ms-overflow-style:none;
  scroll-behavior:smooth;
  padding-left:2px!important;
  padding-right:2px!important;
}
.bpe-video-grid::-webkit-scrollbar{display:none!important}
.bpe-video-rail-prev{left:-20px!important}
.bpe-video-rail-next{right:-20px!important}
.bpe-video-rail.is-static .bpe-video-rail-arrow{display:none!important}

/* One-point Price History baseline after the one-time reset. */
.bpe-ph-awaiting-change{
  position:absolute;
  left:50%;
  bottom:37px;
  transform:translateX(-50%);
  width:max-content;
  max-width:80%;
  padding:5px 9px;
  border-radius:999px;
  background:#f7f9fc;
  color:#667085;
  font-size:10.5px;
  line-height:1.35;
  text-align:center;
}
.bpe-price-history .bpe-ph-log summary{
  text-decoration:none!important;
}
.bpe-price-history .bpe-ph-log summary:hover{
  text-decoration:underline!important;
}

/* Customer Reviews intentionally follows Price History in the page order. */

@media (min-width:761px){
  .bpe-accessory-card{
    display:grid!important;
    grid-template-columns:112px minmax(0,1fr)!important;
    grid-template-rows:auto auto auto auto 1fr!important;
    column-gap:14px!important;
    row-gap:5px!important;
    min-height:172px!important;
    padding:14px!important;
    align-items:start!important;
  }
  .bpe-accessory-image{
    grid-column:1!important;
    grid-row:1 / 6!important;
    width:112px!important;
    height:138px!important;
    margin:0!important;
    align-self:center!important;
  }
  .bpe-accessory-name{
    grid-column:2!important;
    grid-row:1!important;
    align-self:start!important;
    font-size:14.5px!important;
    text-align:center!important;
  }
  .bpe-accessory-same-brand{
    grid-column:2!important;
    grid-row:2!important;
    justify-self:center!important;
  }
  .bpe-accessory-rating{
    grid-column:2!important;
    grid-row:3!important;
    justify-self:center!important;
  }
  .bpe-accessory-price{
    grid-column:2!important;
    grid-row:4!important;
    justify-self:center!important;
    margin:6px 0 2px!important;
    text-align:center!important;
  }
  .bpe-accessory-card .bpe-accessory-add{
    grid-column:2!important;
    grid-row:5!important;
    align-self:end!important;
    justify-self:center!important;
    margin-top:5px!important;
  }
}

@media (max-width:760px){
  .bpe-accessory-strip{
    grid-auto-columns:calc((100% - 14px)/2)!important;
    gap:14px!important;
    padding:12px 2px 14px!important;
  }
  .bpe-accessory-card{
    padding:13px 11px 15px!important;
    row-gap:5px!important;
  }
  .bpe-accessory-image{
    height:118px!important;
    margin-bottom:9px!important;
  }
  .bpe-accessory-name{
    min-height:38px!important;
    font-size:13.25px!important;
    line-height:1.34!important;
    -webkit-line-clamp:2!important;
  }
  .bpe-accessory-same-brand{
    margin-top:7px!important;
    margin-bottom:3px!important;
  }
  .bpe-accessory-price{
    margin:8px 0 5px!important;
    font-size:14.5px!important;
  }
  .bpe-accessory-card .bpe-accessory-add{
    margin-top:4px!important;
    font-size:12px!important;
  }

  .bpe-video-rail-prev{left:6px!important}
  .bpe-video-rail-next{right:6px!important}
  .bpe-ph-awaiting-change{
    bottom:34px;
    max-width:88%;
    font-size:9.5px;
  }
}


/* === BPE v0.23.0 final product-page typography + CTA refinement === */

/*
 * At a Glance
 * Attribute name is the scan anchor; the actual specification reads in the
 * normal Bwonjo body type instead of competing with the label.
 */
.bpe-at-a-glance .bpe-glance-label{
  font-size:14px!important;
  line-height:1.35!important;
  font-weight:760!important;
  text-transform:none!important;
  letter-spacing:0!important;
  color:var(--bpe-text)!important;
}
.bpe-at-a-glance .bpe-glance-value{
  margin-top:5px!important;
  font-size:16px!important;
  line-height:1.5!important;
  font-weight:400!important;
  color:var(--bpe-text)!important;
}

/*
 * Full Specifications
 * Category headings are quiet uppercase dividers. Row labels are bold and
 * values return to normal body weight, matching the comparison-table logic.
 */
.bpe-spec-group h4{
  margin:0 0 8px!important;
  font-size:12px!important;
  line-height:1.35!important;
  font-weight:800!important;
  text-transform:uppercase!important;
  letter-spacing:.085em!important;
  color:#667085!important;
}
.bpe-spec-row dt{
  color:var(--bpe-text)!important;
  font-weight:750!important;
}
.bpe-spec-row dd{
  margin:0!important;
  color:#344054!important;
  font-weight:400!important;
}

/* Buy Now: subtle Bwonjo-blue interaction, analogous to the WhatsApp hover. */
.bpe-cart-area .bpe-buy-now-button{
  transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease,color .15s ease!important;
}
.bpe-cart-area .bpe-buy-now-button:hover,
.bpe-cart-area .bpe-buy-now-button:focus{
  background:color-mix(in srgb,var(--bpe-accent) 7%,#fff)!important;
  color:var(--bpe-accent)!important;
  border-color:var(--bpe-accent)!important;
  text-decoration:none!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--bpe-accent) 10%,transparent)!important;
}

@media (max-width:760px){
  .bpe-at-a-glance .bpe-glance-label{font-size:13.5px!important}
  .bpe-at-a-glance .bpe-glance-value{font-size:15px!important}
  .bpe-spec-row{grid-template-columns:minmax(120px,38%) minmax(0,1fr)!important;gap:18px!important}
  .bpe-spec-row dt,.bpe-spec-row dd{font-size:14px!important}
}


/* === BPE v0.24.0 final visual polish === */

/* At a Glance: make the bold attribute label a touch larger for faster scanning. */
.bpe-at-a-glance .bpe-glance-label{
  font-size:15px!important;
  line-height:1.32!important;
  font-weight:780!important;
}

/*
 * Compatible accessories
 * Same-brand items retain the green relationship cue. Other-brand items get
 * their actual brand in a calm neutral badge so every card has a balanced
 * identity line without turning every badge blue.
 */
.bpe-accessory-brand-badge{
  position:static!important;
  z-index:auto!important;
  align-self:center!important;
  justify-self:center!important;
  width:max-content!important;
  max-width:100%!important;
  min-height:22px!important;
  margin:6px auto 2px!important;
  padding:4px 8px!important;
  border-radius:999px!important;
  font-size:10.5px!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:.01em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.bpe-accessory-same-brand{
  border:1px solid #b7e1c8!important;
  background:#eefaf3!important;
  color:#176b3a!important;
}
.bpe-accessory-other-brand{
  border:1px solid #d7d2c9!important;
  background:#f5f3ef!important;
  color:#5f574c!important;
}

/*
 * See all →
 * Never underline the arrow. The words use a border underline instead of
 * text-decoration so parent link styles cannot propagate a line under →.
 */
.bpe-accessory-see-all,
.bpe-accessory-see-all:hover,
.bpe-accessory-see-all:focus,
.bpe-accessory-see-all *{
  text-decoration:none!important;
}
.bpe-accessory-see-all-text{
  display:inline-block!important;
  border-bottom:1px solid currentColor!important;
  line-height:1.08!important;
  padding-bottom:1px!important;
}
.bpe-accessory-see-all-arrow{
  display:inline-block!important;
  border:0!important;
  text-decoration:none!important;
  line-height:1!important;
}

@media (min-width:761px){
  .bpe-accessory-brand-badge{
    grid-column:2!important;
    grid-row:2!important;
  }
}

/*
 * Product Videos
 * Desktop: max three videos, therefore show the full set with no arrows and
 * no horizontal scrolling.
 * Mobile: two cards at a time with the same quiet scroll affordance as Q&A.
 */
.bpe-video-rail-arrow{
  display:none!important;
}
@media (min-width:761px){
  .bpe-video-grid,
  .bpe-video-grid.bpe-video-count-1,
  .bpe-video-grid.bpe-video-count-2,
  .bpe-video-grid.bpe-video-count-3{
    display:grid!important;
    grid-auto-flow:row!important;
    grid-auto-columns:auto!important;
    gap:14px!important;
    overflow:visible!important;
    padding:2px 0 0!important;
    scrollbar-width:none!important;
  }
  .bpe-video-grid.bpe-video-count-1{
    grid-template-columns:minmax(0,360px)!important;
  }
  .bpe-video-grid.bpe-video-count-2{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .bpe-video-grid.bpe-video-count-3{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .bpe-video-card{
    flex:none!important;
    width:auto!important;
    min-width:0!important;
  }
}

/* Mobile video rails use a deliberately subtle scrollbar. */
.bpe-video-grid{
  scrollbar-color:#cbd2dc transparent!important;
}
.bpe-video-grid::-webkit-scrollbar{
  height:3px!important;
}
.bpe-video-grid::-webkit-scrollbar-track{
  background:transparent!important;
}
.bpe-video-grid::-webkit-scrollbar-thumb{
  background:#d7dde6!important;
  border-radius:999px!important;
}
.bpe-video-grid::-webkit-scrollbar-thumb:hover{
  background:#c2cad5!important;
}

@media (max-width:760px){
  .bpe-at-a-glance .bpe-glance-label{
    font-size:14.5px!important;
  }
  .bpe-video-grid,
  .bpe-video-grid.bpe-video-count-1,
  .bpe-video-grid.bpe-video-count-2,
  .bpe-video-grid.bpe-video-count-3{
    display:flex!important;
    gap:12px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x proximity!important;
    scrollbar-width:thin!important;
    padding:2px 0 7px!important;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-inline:contain;
  }
  .bpe-video-card,
  .bpe-video-grid.bpe-video-count-1 .bpe-video-card,
  .bpe-video-grid.bpe-video-count-2 .bpe-video-card,
  .bpe-video-grid.bpe-video-count-3 .bpe-video-card{
    flex:0 0 calc((100% - 12px)/2)!important;
    min-width:0!important;
    scroll-snap-align:start!important;
  }
  
}

/* Compare product search: slightly softer corners, still crisp and compact. */
.bpe-compare-inline-input{
  border-radius:10px!important;
}


/* === BPE v0.24.1 At a Glance label size correction === */
/*
 * Make labels such as Display / Processor visibly larger than before, while
 * keeping the actual values at normal website size and weight.
 */
.bpe-at-a-glance .bpe-glance-label{
  font-size:17px!important;
  line-height:1.28!important;
  font-weight:780!important;
}
@media (max-width:760px){
  .bpe-at-a-glance .bpe-glance-label{
    font-size:16px!important;
  }
}


/* === BPE v0.24.3 — one underline on words only ===
 * Reset every possible underline/border/background decoration on the clickable
 * wrapper, then underline ONLY the words span. The arrow is a separate sibling
 * and can never inherit that underline.
 */
.bpe-arrow-link-wrap,
.bpe-accessory-see-all-wrap{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
}

.bpe-words-only-link,
.bpe-words-only-link:hover,
.bpe-words-only-link:focus,
.bpe-accessory-see-all,
.bpe-accessory-see-all:hover,
.bpe-accessory-see-all:focus,
.bpe-spec-toggle,
.bpe-spec-toggle:hover,
.bpe-spec-toggle:focus{
  text-decoration:none!important;
  border-bottom:0!important;
  box-shadow:none!important;
  background-image:none!important;
  background-color:transparent!important;
}

.bpe-link-words,
.bpe-accessory-see-all-text,
.bpe-spec-toggle-text{
  display:inline-block!important;
  border:0!important;
  box-shadow:none!important;
  background-image:none!important;
  padding-bottom:0!important;
  text-decoration-line:underline!important;
  text-decoration-style:solid!important;
  text-decoration-thickness:1px!important;
  text-underline-offset:2px!important;
}

.bpe-link-arrow,
.bpe-accessory-see-all-arrow,
.bpe-spec-toggle-arrow{
  display:inline-block!important;
  text-decoration:none!important;
  border:0!important;
  box-shadow:none!important;
  background-image:none!important;
  line-height:1!important;
  padding:0!important;
  margin:0!important;
}

.bpe-spec-toggle,
.bpe-spec-toggle *{
  text-decoration-skip-ink:auto!important;
}
.bpe-spec-toggle{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
}


/* === BPE v0.24.4 selected color + accessory AJAX feedback === */
.bpe-cart-area .variations label .bpe-selected-color-name{
  display:inline!important;
  margin-left:2px!important;
  color:#667085!important;
  font-size:14px!important;
  font-weight:520!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

/* Woo's generic AJAX \"View cart\" link is replaced by a clear local success state. */
.bpe-accessory-card .added_to_cart.wc-forward{
  display:none!important;
}
.bpe-accessory-cart-status{
  display:block!important;
  width:100%!important;
  margin-top:5px!important;
  color:#176b3a!important;
  font-size:12px!important;
  font-weight:750!important;
  line-height:1.25!important;
  text-align:center!important;
}
.bpe-accessory-cart-status[hidden]{display:none!important}

/* Short, quiet forward chevron beside See all; the chevron is never underlined. */
.bpe-accessory-see-all-wrap{gap:4px!important}
.bpe-accessory-see-all-arrow{
  font-size:17px!important;
  line-height:.9!important;
  transform:translateY(-.5px)!important;
}

/* === BPE v0.25.0 variation availability matrix === */
.bpe-variation-row-empty{display:none!important}
.bpe-variation-option.is-bpe-hidden{display:none!important}
.bpe-variation-option:not(.is-color-swatch){
  display:inline-flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  line-height:1.15!important;
}
.bpe-variation-option.has-note:not(.is-color-swatch){min-height:54px!important;padding-top:8px!important;padding-bottom:8px!important}
.bpe-option-label{display:block;line-height:1.15}
.bpe-option-note{display:block;color:#667085;font-size:11px;font-weight:600;line-height:1.15;white-space:normal;text-align:center}
.bpe-option-note[hidden]{display:none!important}
.bpe-variation-option:disabled,.bpe-variation-option.is-disabled{
  opacity:1!important;
  color:#667085!important;
  -webkit-text-fill-color:#667085!important;
  background:#f8fafc!important;
  border-color:#d8dde5!important;
  border-style:dashed!important;
}
.bpe-variation-option:disabled .bpe-option-note,.bpe-variation-option.is-disabled .bpe-option-note{color:#98a2b3!important;-webkit-text-fill-color:#98a2b3!important}
.bpe-variation-option.is-selected:disabled,.bpe-variation-option.is-selected.is-disabled{
  border-color:var(--bpe-accent)!important;
  box-shadow:0 0 0 1px var(--bpe-accent)!important;
  background:#f8fafc!important;
  color:#475467!important;
  -webkit-text-fill-color:#475467!important;
}


/* === BPE v0.25.1 cleaner variation availability + star-only rating === */
/* Price-less variation values are hidden by JS. Priced but unavailable values
 * may remain visible as disabled choices, without extra copy inside the tile. */
.bpe-variation-option:not(.is-color-swatch){
  min-height:43px!important;
  padding-top:9px!important;
  padding-bottom:9px!important;
  gap:0!important;
}
.bpe-option-note{display:none!important}

/* A colour can exist for the product family but not for the selected storage /
 * configuration. Keep the swatch visible and mark that combination with a clean X. */
.bpe-variation-option.is-color-swatch.is-unavailable-combination{
  position:relative!important;
  opacity:.72!important;
  background:#fff!important;
  border-style:solid!important;
}
.bpe-variation-option.is-color-swatch.is-unavailable-combination::before,
.bpe-variation-option.is-color-swatch.is-unavailable-combination::after{
  content:"";
  position:absolute;
  z-index:3;
  left:7px;
  right:7px;
  top:50%;
  height:1.5px;
  border-radius:999px;
  background:#98a2b3;
  transform-origin:center;
  pointer-events:none;
}
.bpe-variation-option.is-color-swatch.is-unavailable-combination::before{transform:rotate(45deg)}
.bpe-variation-option.is-color-swatch.is-unavailable-combination::after{transform:rotate(-45deg)}
.bpe-variation-option.is-color-swatch.is-unavailable-combination .bpe-swatch-dot{filter:saturate(.72);opacity:.72}
.bpe-variation-option.is-color-swatch.is-unavailable-combination.is-selected{
  box-shadow:none!important;
  border-color:#d8dde5!important;
}

/* Quick rating is intentionally only the five stars: no capsule, label, divider
 * or per-star boxes. The radiogroup keeps the accessible label in markup. */
.bpe-quick-rating:not(.is-saved){
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.bpe-quick-rating-label{display:none!important}
.bpe-quick-stars{
  display:flex!important;
  align-items:center!important;
  gap:3px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
.bpe-quick-star{
  width:28px!important;
  height:28px!important;
  padding:2px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.bpe-quick-star:hover,.bpe-quick-star:focus-visible,.bpe-quick-star.is-active{
  background:transparent!important;
}
.bpe-quick-star:hover svg,.bpe-quick-star:focus-visible svg{transform:scale(1.08)}
.bpe-quick-rating-guest{flex-basis:100%!important}
@media (max-width:520px){
  .bpe-quick-rating:not(.is-saved){width:auto!important;max-width:none!important}
  .bpe-quick-stars{justify-content:flex-start!important}
}


/* === BPE v0.25.2 contextual variation filtering + inline rating label === */
/* Non-colour values that are not purchasable for the currently selected colour
 * are hidden by JS instead of being rendered as grey / dashed choices. */
.bpe-variation-option:not(.is-color-swatch).is-disabled,
.bpe-variation-option:not(.is-color-swatch):disabled{
  display:none!important;
}

/* Rating stays visually unboxed, but the prompt sits naturally beside the stars. */
.bpe-quick-rating:not(.is-saved){
  display:inline-flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
.bpe-quick-rating-label{
  display:inline-block!important;
  font-size:14px!important;
  font-weight:700!important;
  line-height:1.25!important;
  color:var(--bpe-text)!important;
  white-space:nowrap!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
}
.bpe-quick-stars{gap:3px!important}
.bpe-quick-rating-guest,
.bpe-quick-rating-status{
  flex-basis:100%!important;
}

/* === BPE v0.25.3 global configuration availability ===
 * Configuration/storage tiles are no longer tied to the currently selected colour.
 * JS shows a value whenever at least one exact variation for that value is both priced
 * and in stock. After selection, unsupported colours remain visible with the X treatment. */



/* === BPE v0.25.6 authoritative variation hiding ===
 * Earlier non-colour display:inline-flex!important rules could override the
 * hidden state and visually resurrect unavailable configuration/storage tiles.
 * Keep this final, more-specific rule after every variation display rule. */
.bpe-variation-options .bpe-variation-option.is-bpe-hidden,
.bpe-variation-options .bpe-variation-option[hidden]{
  display:none!important;
}


/* === BPE v0.25.8 mobile info + compare visibility refinement === */
/* The sticky compare identity row is intentionally more visible than the table
   body: a soft blue surface, clearer separator and slightly larger labels. */
.bpe-compare-wrap.is-compare-sticky-active .bpe-compare-sticky-grid{
  background:var(--bpe-accent-soft)!important;
  border-top:1px solid var(--bpe-accent-border)!important;
  border-bottom:1px solid var(--bpe-accent-border)!important;
  box-shadow:0 7px 22px rgba(27,53,136,.14)!important;
}
.bpe-compare-wrap.is-compare-sticky-active .bpe-compare-sticky-grid>*{
  min-height:48px!important;
  padding:11px 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
}
.bpe-compare-wrap.is-compare-sticky-active .bpe-compare-sticky-label{
  background:var(--bpe-accent-soft-strong)!important;
  color:var(--bpe-accent)!important;
  font-size:12px!important;
  font-weight:820!important;
  letter-spacing:.01em!important;
}
.bpe-compare-wrap.is-compare-sticky-active .bpe-compare-sticky-grid strong{
  font-size:14px!important;
  line-height:1.3!important;
}
@media (max-width:760px){
  .bpe-compare-wrap.is-compare-sticky-active .bpe-compare-sticky-grid>*{
    min-height:52px!important;
    padding:10px 8px!important;
  }
  .bpe-compare-wrap.is-compare-sticky-active .bpe-compare-sticky-label{font-size:11.5px!important}
  .bpe-compare-wrap.is-compare-sticky-active .bpe-compare-sticky-grid strong{font-size:13.5px!important}
}


/* === BPE v0.25.11 recommendation rails + compact metadata === */
/* Give the first/last card breathing room inside the horizontal scroller so
   rounded borders and focus rings never look clipped at the rail edge. */
.bpe-more-consider .bpe-product-strip,
.bpe-more-brand .bpe-product-strip{
  padding:8px 10px 12px!important;
  scroll-padding-inline:10px!important;
}
.bpe-more-consider .bpe-section-subtitle,
.bpe-more-brand .bpe-section-subtitle{
  max-width:720px;
  margin-top:-12px!important;
  margin-bottom:20px!important;
  font-size:14px;
  line-height:1.5;
}

/* === BPE v0.28.0 SEO variation links === */
a.bpe-variation-option.bpe-seo-variation-link{text-decoration:none!important}
a.bpe-variation-option.bpe-seo-variation-link.is-disabled{pointer-events:none}

/* v0.28.8 — calmer page rhythm + clearer availability badges */
.bpe-product{background:#f6f7f9}
.bpe-breadcrumb{background:#f6f7f9}
.bpe-buybox{background:#f6f7f9;padding-top:22px}
.bpe-buybox-grid{background:#fff;border:1px solid #e6e9ef;border-radius:24px;padding:34px 38px;box-shadow:0 10px 34px rgba(16,24,40,.045)}
.bpe-section{border-top:0}
.bpe-description,.bpe-videos,.bpe-in-box,.bpe-warranty-section,.bpe-reviews,.bpe-frequently-bought{background:#fff}
.bpe-at-a-glance,.bpe-highlights,.bpe-pros-cons,.bpe-compare,.bpe-specifications,.bpe-price-history,.bpe-more-brand,.bpe-more-consider{background:#f6f7f9}
.bpe-section + .bpe-section{border-top:1px solid #e8ebf0}

.bpe-price-stock{gap:11px}
.bpe-stock .stock{display:inline-flex;align-items:center;gap:4px;margin:0;padding:0;border:0;border-radius:0;background:transparent!important;box-shadow:none;font-family:inherit;font-size:12px;font-weight:700;line-height:1.15;letter-spacing:0;white-space:nowrap}
.bpe-stock .stock.in-stock{background:transparent!important;color:#07833d!important;border:0}
.bpe-stock .stock.out-of-stock{background:transparent!important;color:#b42318!important;border:0}
.bpe-stock-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:auto;height:auto;border-radius:0;background:transparent!important;font-family:Arial,sans-serif;font-size:12px;font-weight:800;line-height:1}
.bpe-stock .in-stock .bpe-stock-icon{background:transparent!important;color:#07833d}
.bpe-stock .out-of-stock .bpe-stock-icon{background:transparent!important;color:#b42318}
.bpe-stock-label{display:block;transform:none}
.bpe-cart-area .woocommerce-variation-availability .stock{display:none!important}

@media (max-width:921px){
  .bpe-buybox{padding-top:12px}
  .bpe-buybox-grid{border-radius:18px;padding:20px 18px;box-shadow:none}
}

@media (max-width:767px){
  .bpe-stock .stock{font-size:11px}
  .bpe-stock-icon{font-size:11px}
}


/* === BPE v0.29.7 continuous configuration title + commercial selector polish === */
.bpe-summary .product_title{
  font-size:clamp(26px,2.2vw,35px)!important;
  line-height:1.10!important;
  letter-spacing:-.018em!important;
}
@media (max-width:768px){
  .bpe-summary .product_title{font-size:25px!important;line-height:1.12!important}
}

/* Keep the clicked commercial variation looking selected immediately.
 * The product area only soft-fades while the replacement page is fetched;
 * there is deliberately no spinner, dotted state or disabled-looking tile. */
.bpe-product.is-bpe-soft-loading .bpe-buybox-grid{
  opacity:.90;
  transition:opacity .12s ease;
}
@media (prefers-reduced-motion:reduce){
  .bpe-product.is-bpe-soft-loading .bpe-buybox-grid{transition:none}
}


/* === BPE v0.30.1 — compact pill purchase CTAs ===
 * Product purchase actions only.
 */
.bpe-cart-area .woocommerce-variation-add-to-cart,
.bpe-cart-area form.cart:not(.variations_form){
  gap:12px!important;
}

.bpe-cart-area .single_add_to_cart_button,
.bpe-cart-area .bpe-buy-now-button{
  min-height:48px!important;
  padding:10px 22px!important;
  border-radius:999px!important;
  font-size:16px!important;
  font-weight:750!important;
  line-height:1.15!important;
  box-shadow:none!important;
  transform:none!important;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease!important;
}

.bpe-cart-area .single_add_to_cart_button{
  background:#2549B8!important;
  border-color:#2549B8!important;
  color:#fff!important;
}
.bpe-cart-area .single_add_to_cart_button:hover,
.bpe-cart-area .single_add_to_cart_button:focus{
  background:#2549B8!important;
  border-color:#2549B8!important;
  color:#fff!important;
  box-shadow:none!important;
}

.bpe-cart-area .bpe-buy-now-button{
  background:#fff!important;
  border-color:#2549B8!important;
  color:#2549B8!important;
}
.bpe-cart-area .bpe-buy-now-button:hover,
.bpe-cart-area .bpe-buy-now-button:focus{
  background:#f4f8fd!important;
  border-color:#2549B8!important;
  color:#2549B8!important;
  text-decoration:none!important;
  box-shadow:none!important;
}

.bpe-whatsapp-order-wrap{
  margin-top:12px!important;
}
.bpe-whatsapp-order{
  min-height:48px!important;
  padding:10px 18px!important;
  border-radius:999px!important;
  border-color:#128c4a!important;
  background:#128c4a!important;
  color:#fff!important;
  font-size:16px!important;
  font-weight:750!important;
  box-shadow:none!important;
  transform:none!important;
  transition:background-color .16s ease,border-color .16s ease!important;
}
.bpe-whatsapp-order:hover,
.bpe-whatsapp-order:focus{
  background:#0d703b!important;
  border-color:#0d703b!important;
  color:#fff!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
.bpe-whatsapp-icon{
  width:21px!important;
  height:21px!important;
  flex-basis:21px!important;
}
.bpe-whatsapp-icon svg{
  width:21px!important;
  height:21px!important;
}

@media (max-width:767px){
  .bpe-cart-area .single_add_to_cart_button,
  .bpe-cart-area .bpe-buy-now-button,
  .bpe-whatsapp-order{
    min-height:46px!important;
    font-size:15px!important;
  }
}


/* === BPE v0.30.2 — one pill language for product-page CTAs ===
 * Every true CTA/action button on the Bwonjo product detail page uses the
 * same compact, fully-rounded geometry as the purchase pills.
 *
 * IMPORTANT:
 * - This block controls SHAPE / SIZE / FEEL only.
 * - It deliberately does NOT assign CTA colours.
 * - Existing blue, green, outlined, etc. colour treatments remain intact.
 * - Small utility controls (swatches, stars, carousel arrows, modal close,
 *   video cards) are intentionally excluded.
 */
.bpe-product .bpe-sticky-add,
.bpe-product
.bpe-product 

/* Compact secondary disclosure CTAs keep their natural width but use the
 * same rounded button language. */
.bpe-product .bpe-accessory-more-toggle {
  min-height:42px!important;
  padding:8px 18px!important;
  border-radius:999px!important;
  box-shadow:none!important;
  transform:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease!important;
}

@media (max-width:767px){
  .bpe-product .bpe-sticky-add,
  .bpe-product
  .bpe-product 
}

/* === BPE v0.30.4 — Add to cart + quantity only ===
 * Buy Now has been removed. Keep WooCommerce quantity controls visible and
 * place the compact quantity selector beside the primary Add to cart CTA.
 */
.bpe-cart-area .woocommerce-variation-add-to-cart,
.bpe-cart-area form.cart:not(.variations_form){
  display:grid!important;
  grid-template-columns:max-content minmax(0,1fr)!important;
  gap:12px!important;
  width:100%!important;
  align-items:center!important;
}

.bpe-cart-area .quantity{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  float:none!important;
  margin:0!important;
  min-height:48px!important;
  border:1px solid #d8dde5!important;
  border-radius:999px!important;
  background:#fff!important;
  overflow:hidden!important;
  box-shadow:none!important;
}

.bpe-cart-area .quantity .qty{
  width:48px!important;
  min-width:48px!important;
  height:46px!important;
  min-height:46px!important;
  padding:0 4px!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  color:var(--bpe-text)!important;
  text-align:center!important;
  font-weight:700!important;
  box-shadow:none!important;
  -moz-appearance:textfield;
}
.bpe-cart-area .quantity .qty::-webkit-outer-spin-button,
.bpe-cart-area .quantity .qty::-webkit-inner-spin-button{
  -webkit-appearance:none;
  margin:0;
}

/* Astra/WooCommerce +/- controls, when provided by the active theme. */
.bpe-cart-area .quantity .minus,
.bpe-cart-area .quantity .plus{
  width:42px!important;
  min-width:42px!important;
  height:46px!important;
  min-height:46px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:#fff!important;
  color:var(--bpe-text)!important;
  font-size:20px!important;
  font-weight:500!important;
  line-height:46px!important;
  box-shadow:none!important;
}
.bpe-cart-area .quantity .minus:hover,
.bpe-cart-area .quantity .plus:hover,
.bpe-cart-area .quantity .minus:focus,
.bpe-cart-area .quantity .plus:focus{
  background:#f7f8fa!important;
  color:var(--bpe-text)!important;
}

.bpe-cart-area .single_add_to_cart_button{
  min-width:0!important;
}

@media (max-width:640px){
  .bpe-cart-area .woocommerce-variation-add-to-cart,
  .bpe-cart-area form.cart:not(.variations_form){
    grid-template-columns:max-content minmax(0,1fr)!important;
  }
  .bpe-cart-area .quantity{
    min-height:46px!important;
  }
  .bpe-cart-area .quantity .qty,
  .bpe-cart-area .quantity .minus,
  .bpe-cart-area .quantity .plus{
    height:44px!important;
    min-height:44px!important;
  }
}



/* === BPE v0.30.5 — requested cart control order + proper quantity pill ===
 * Keep the CTA first, then the quantity selector, and force visible − / +
 * controls that match the requested pill layout.
 */
.bpe-cart-area .woocommerce-variation-add-to-cart,
.bpe-cart-area form.cart:not(.variations_form){
  display:grid!important;
  grid-template-columns:minmax(0,1fr) max-content!important;
  gap:12px!important;
  width:100%!important;
  align-items:center!important;
}

.bpe-cart-area .bpe-protect-plus{
  grid-column:1/-1!important;
}

.bpe-cart-area .single_add_to_cart_button{
  grid-column:1!important;
  min-width:0!important;
  width:100%!important;
  margin:0!important;
}

.bpe-cart-area .quantity{
  grid-column:2!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  float:none!important;
  margin:0!important;
  min-height:48px!important;
  border:1px solid #d8dde5!important;
  border-radius:999px!important;
  background:#fff!important;
  overflow:hidden!important;
  box-shadow:none!important;
  white-space:nowrap!important;
}

.bpe-cart-area .quantity .qty{
  order:2!important;
  width:46px!important;
  min-width:46px!important;
  height:46px!important;
  min-height:46px!important;
  padding:0 2px!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  color:var(--bpe-text)!important;
  text-align:center!important;
  font-weight:700!important;
  font-size:16px!important;
  box-shadow:none!important;
  -moz-appearance:textfield;
}

.bpe-cart-area .quantity .minus,
.bpe-cart-area .quantity .plus,
.bpe-cart-area .quantity .bpe-qty-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:40px!important;
  min-width:40px!important;
  height:46px!important;
  min-height:46px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:#fff!important;
  color:var(--bpe-text)!important;
  font-size:22px!important;
  font-weight:500!important;
  line-height:1!important;
  box-shadow:none!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}

.bpe-cart-area .quantity .minus,
.bpe-cart-area .quantity .bpe-qty-btn.minus{
  order:1!important;
}

.bpe-cart-area .quantity .plus,
.bpe-cart-area .quantity .bpe-qty-btn.plus{
  order:3!important;
}

.bpe-cart-area .quantity .minus:hover,
.bpe-cart-area .quantity .plus:hover,
.bpe-cart-area .quantity .bpe-qty-btn:hover,
.bpe-cart-area .quantity .minus:focus,
.bpe-cart-area .quantity .plus:focus,
.bpe-cart-area .quantity .bpe-qty-btn:focus{
  background:#f7f8fa!important;
  color:var(--bpe-text)!important;
}

.bpe-whatsapp-order{
  border-color:#25D366!important;
  background:#25D366!important;
}
.bpe-whatsapp-order:hover,
.bpe-whatsapp-order:focus{
  background:#1ebe5d!important;
  border-color:#1ebe5d!important;
}

@media (max-width:640px){
  .bpe-cart-area .woocommerce-variation-add-to-cart,
  .bpe-cart-area form.cart:not(.variations_form){
    grid-template-columns:minmax(0,1fr) max-content!important;
    gap:10px!important;
  }
  .bpe-cart-area .quantity{
    min-height:46px!important;
  }
  .bpe-cart-area .quantity .qty,
  .bpe-cart-area .quantity .minus,
  .bpe-cart-area .quantity .plus,
  .bpe-cart-area .quantity .bpe-qty-btn{
    height:44px!important;
    min-height:44px!important;
  }
  .bpe-cart-area .quantity .qty{
    width:42px!important;
    min-width:42px!important;
  }
  .bpe-cart-area .quantity .minus,
  .bpe-cart-area .quantity .plus,
  .bpe-cart-area .quantity .bpe-qty-btn{
    width:36px!important;
    min-width:36px!important;
    font-size:20px!important;
  }
}


/* === BPE v0.30.6 — definitive purchase-row repair === */
.bpe-cart-area .woocommerce-variation-add-to-cart,
.bpe-cart-area form.cart:not(.variations_form){
  display:block!important;
  width:100%!important;
}

.bpe-cart-area .bpe-cart-actions-row{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  width:100%!important;
  margin:0!important;
}

.bpe-cart-area .bpe-cart-actions-row .single_add_to_cart_button{
  order:1!important;
  flex:1 1 auto!important;
  width:auto!important;
  min-width:0!important;
  margin:0!important;
}

.bpe-cart-area .bpe-cart-actions-row .quantity,
.bpe-cart-area .bpe-cart-actions-row .bpe-quantity{
  order:2!important;
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:124px!important;
  height:48px!important;
  min-height:48px!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  border:1px solid #d8dde5!important;
  border-radius:999px!important;
  background:#fff!important;
  overflow:hidden!important;
  box-shadow:none!important;
  visibility:visible!important;
  opacity:1!important;
}

.bpe-cart-area .bpe-cart-actions-row .quantity .qty{
  order:2!important;
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:44px!important;
  min-width:44px!important;
  height:46px!important;
  min-height:46px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:#fff!important;
  color:var(--bpe-text)!important;
  text-align:center!important;
  font-size:16px!important;
  font-weight:700!important;
  line-height:46px!important;
  box-shadow:none!important;
  -moz-appearance:textfield!important;
  appearance:textfield!important;
}

.bpe-cart-area .bpe-cart-actions-row .quantity .qty::-webkit-outer-spin-button,
.bpe-cart-area .bpe-cart-actions-row .quantity .qty::-webkit-inner-spin-button{
  -webkit-appearance:none!important;
  margin:0!important;
}

.bpe-cart-area .bpe-cart-actions-row .quantity .minus,
.bpe-cart-area .bpe-cart-actions-row .quantity .plus,
.bpe-cart-area .bpe-cart-actions-row .quantity .bpe-qty-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 39px!important;
  width:39px!important;
  min-width:39px!important;
  height:46px!important;
  min-height:46px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  color:#111827!important;
  font-size:20px!important;
  font-weight:500!important;
  line-height:1!important;
  box-shadow:none!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
.bpe-cart-area .bpe-cart-actions-row .quantity .minus{order:1!important}
.bpe-cart-area .bpe-cart-actions-row .quantity .plus{order:3!important}

.bpe-whatsapp-order{
  background:#25D366!important;
  border-color:#25D366!important;
}
.bpe-whatsapp-order:hover,
.bpe-whatsapp-order:focus{
  background:#20bd5a!important;
  border-color:#20bd5a!important;
}

@media (max-width:640px){
  .bpe-cart-area .bpe-cart-actions-row{gap:10px!important}
  .bpe-cart-area .bpe-cart-actions-row .quantity,
  .bpe-cart-area .bpe-cart-actions-row .bpe-quantity{
    min-width:118px!important;
    height:46px!important;
    min-height:46px!important;
  }
  .bpe-cart-area .bpe-cart-actions-row .quantity .qty,
  .bpe-cart-area .bpe-cart-actions-row .quantity .minus,
  .bpe-cart-area .bpe-cart-actions-row .quantity .plus,
  .bpe-cart-area .bpe-cart-actions-row .quantity .bpe-qty-btn{
    height:44px!important;
    min-height:44px!important;
  }
  .bpe-cart-area .bpe-cart-actions-row .quantity .qty{width:42px!important;min-width:42px!important}
  .bpe-cart-area .bpe-cart-actions-row .quantity .minus,
  .bpe-cart-area .bpe-cart-actions-row .quantity .plus,
  .bpe-cart-area .bpe-cart-actions-row .quantity .bpe-qty-btn{width:38px!important;min-width:38px!important;flex-basis:38px!important}
}


/* v0.30.19 — top-only review submission; lower section is published written reviews only. */
.bpe-quick-write-review{flex:1 1 100%;width:100%;max-width:520px;margin-top:8px}
.bpe-quick-write-review[hidden]{display:none!important}
.bpe-quick-write-review label{display:block;font-size:12px;font-weight:700;color:#344054}
.bpe-quick-write-review textarea{display:block;width:100%;min-height:92px;margin-top:6px;border:1px solid #dfe4ed;border-radius:10px;background:#fff;padding:10px 12px;font:inherit;font-size:14px;line-height:1.5;color:#172033;resize:vertical}
.bpe-quick-review-save{margin-top:8px;border:1px solid var(--bpe-accent);border-radius:9px;background:var(--bpe-accent)!important;color:#fff!important;font-weight:700;padding:9px 13px;cursor:pointer}
.bpe-quick-review-save:hover,.bpe-quick-review-save:focus{filter:brightness(.94)}
.bpe-quick-review-save:disabled{opacity:.55;cursor:not-allowed}
.bpe-written-reviews #comments{margin:0}
.bpe-written-reviews .commentlist{margin:0;padding:0;list-style:none}

/* v0.30.19 — whole-product Back in Stock waitlist. */
.bpe-back-in-stock{background:#fff;border:1px solid #e1e6f0;border-radius:14px;padding:16px;margin:14px 0;box-shadow:0 3px 14px rgba(17,24,39,.025);position:relative}
.bpe-back-in-stock h3{font-size:16px;line-height:1.3;font-weight:750;color:#1f2937;margin:0 0 6px}
.bpe-back-in-stock>p{color:#607083;font-size:13px;line-height:1.6;margin:0 0 12px}
.bpe-bis-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px}
.bpe-bis-form label{margin:0;min-width:0}
.bpe-bis-form input{width:100%;min-height:43px;border:1px solid #dfe4ed;border-radius:9px;background:#fff;padding:9px 11px;font-size:13px;color:#1f2937}
.bpe-bis-form button{grid-column:1/-1;background:var(--bpe-accent)!important;color:#fff!important;border:1px solid var(--bpe-accent)!important;border-radius:9px;min-height:43px;padding:10px 15px;font-size:13px;font-weight:700;cursor:pointer}
.bpe-bis-form button:hover{filter:brightness(.94)}
.bpe-bis-message{border:1px solid var(--bpe-accent-border);background:var(--bpe-accent-soft);padding:9px 11px;border-radius:8px;color:var(--bpe-accent)!important}
.bpe-bis-message.is-success{border-color:#bbedd6;background:#f0fbf5;color:#14794d!important}
.bpe-bis-honeypot{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;overflow:hidden!important;pointer-events:none!important;left:-10000px!important}
@media(max-width:520px){.bpe-bis-form{grid-template-columns:1fr}}


/* v0.30.21 — NextBuy v1.0.73 rating UI imported 1:1.
 * Keep Bwonjo data/AJAX underneath; the visible top rating component mirrors
 * NextBuy's sizing, spacing, star SVG treatment and progressive guest/review form.
 */
body.single-product div.product .summary .bpe-rating-row.nbpfeat-toprating{
  display:flex!important;flex-direction:row!important;align-items:flex-start!important;justify-content:flex-start!important;
  flex-wrap:wrap!important;gap:9px 18px!important;margin:8px 0 17px!important;width:100%!important;max-width:100%!important;min-width:0!important;
}
body.single-product div.product .summary .bpe-rating-row.nbpfeat-toprating.has-existing-ratings{align-items:center!important}
body.single-product div.product .summary .bpe-rating-link.nbpfeat-review-summary{
  display:inline-flex!important;float:none!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;
  flex-wrap:wrap!important;gap:9px!important;min-height:24px!important;margin:0!important;color:#566173!important;
  text-decoration:none!important;font-size:13px!important;font-weight:700!important;line-height:1.2!important;background:transparent!important;
}
body.single-product div.product .summary .bpe-rating-link.nbpfeat-review-summary:hover{text-decoration:none!important;background:transparent!important}
body.single-product div.product .summary .bpe-rating-link.nbpfeat-review-summary .star-rating{
  float:none!important;display:inline-block!important;flex:0 0 auto!important;margin:0!important;font-size:14px!important;line-height:1!important;
}
body.single-product div.product .summary .bpe-review-count{color:#566173!important;font-size:13px!important;font-weight:700!important}
body.single-product div.product .summary .bpe-quick-rating.nbpfeat-quick-rating{
  display:flex!important;align-items:center!important;justify-content:flex-start!important;flex-wrap:wrap!important;
  width:auto!important;max-width:100%!important;min-width:0!important;flex:0 1 auto!important;gap:8px!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;position:relative!important;
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-rating-label{
  display:inline-block!important;font-size:14px!important;font-weight:700!important;color:#111827!important;margin:0!important;line-height:1.25!important;white-space:nowrap!important;
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-stars.nbpfeat-stars{display:flex!important;align-items:center!important;gap:3px!important;min-width:0!important}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-star{
  appearance:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;
  display:grid!important;place-items:center!important;padding:2px!important;margin:0!important;width:28px!important;min-width:28px!important;height:28px!important;
  color:#cfd5de!important;cursor:pointer!important;
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-star svg{
  display:block!important;width:22px!important;height:22px!important;fill:transparent!important;stroke:currentColor!important;stroke-width:1.65!important;stroke-linejoin:round!important;
  transition:fill .12s ease,transform .12s ease,color .12s ease!important;
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-star.is-active{color:#f3a71b!important}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-star.is-active svg{fill:#f3a71b!important}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-star:focus-visible{outline:2px solid #2549B8!important;outline-offset:2px!important}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-star:hover svg{transform:scale(1.08)!important}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-rating-guest.nbpfeat-rating-guest{
  flex:1 1 100%!important;width:100%!important;max-width:480px!important;display:flex!important;flex-wrap:wrap!important;gap:10px!important;align-items:end!important;margin:7px 0 0!important;
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-rating-guest.nbpfeat-rating-guest[hidden]{display:none!important}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-rating-guest.nbpfeat-rating-guest label{
  font-size:11px!important;display:block!important;flex:1 1 125px!important;color:#5d6672!important;font-weight:400!important;line-height:1.35!important;margin:0!important;
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-rating-guest.nbpfeat-rating-guest input{
  display:block!important;width:100%!important;max-width:225px!important;min-height:0!important;height:auto!important;border:1px solid #d7dce5!important;border-radius:9px!important;
  padding:9px 10px!important;margin:4px 0 0!important;font-size:12px!important;line-height:1.35!important;background:#fff!important;box-shadow:none!important;
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating button.bpe-rating-save.nbpfeat-rating-submit{
  min-height:0!important;height:auto!important;background:var(--bpe-accent)!important;border:1px solid var(--bpe-accent)!important;border-radius:9px!important;color:#fff!important;
  font-size:12px!important;font-weight:700!important;line-height:1.2!important;padding:10px 14px!important;margin:0!important;box-shadow:none!important;
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-rating-status.nbpfeat-rating-status{
  flex:1 1 100%!important;width:100%!important;min-width:0!important;font-size:12px!important;line-height:1.4!important;color:#566173!important;margin:0!important;
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-write-review.nbpfeat-write-review{
  flex:1 1 100%!important;width:100%!important;max-width:380px!important;margin-top:8px!important;
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-write-review.nbpfeat-write-review[hidden]{display:none!important}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-write-review.nbpfeat-write-review label{font-size:12px!important;font-weight:700!important;color:#111827!important}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-review-message.nbpfeat-review-message{
  display:block!important;width:100%!important;min-height:72px!important;height:auto!important;margin:6px 0!important;border-radius:8px!important;border:1px solid #d7dce5!important;
  padding:9px!important;font-size:13px!important;line-height:1.45!important;background:#fff!important;box-shadow:none!important;
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating button.bpe-quick-review-save.nbpfeat-review-save{
  min-height:0!important;height:auto!important;background:var(--bpe-accent)!important;border:1px solid var(--bpe-accent)!important;border-radius:7px!important;color:#fff!important;font-size:12px!important;font-weight:700!important;padding:9px 13px!important;margin:0!important;box-shadow:none!important;
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating button.bpe-rating-save.nbpfeat-rating-submit:hover,
body.single-product .bpe-quick-rating.nbpfeat-quick-rating button.bpe-rating-save.nbpfeat-rating-submit:focus,
body.single-product .bpe-quick-rating.nbpfeat-quick-rating button.bpe-quick-review-save.nbpfeat-review-save:hover,
body.single-product .bpe-quick-rating.nbpfeat-quick-rating button.bpe-quick-review-save.nbpfeat-review-save:focus{
  background:var(--bpe-accent-hover)!important;border-color:var(--bpe-accent-hover)!important;color:#fff!important;text-decoration:none!important;box-shadow:none!important;
}
@media(max-width:600px){
  body.single-product div.product .summary .bpe-rating-row.nbpfeat-toprating{gap:7px 14px!important}
  body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-rating-guest.nbpfeat-rating-guest{max-width:100%!important}
}


/* v0.30.21 — review composer containment + clear placeholder treatment. */
body.single-product .bpe-quick-rating.nbpfeat-quick-rating,
body.single-product .bpe-quick-rating.nbpfeat-quick-rating *,
body.single-product .bpe-quick-rating.nbpfeat-quick-rating *::before,
body.single-product .bpe-quick-rating.nbpfeat-quick-rating *::after{box-sizing:border-box!important}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-write-review.nbpfeat-write-review{
  width:100%!important;max-width:380px!important;min-width:0!important;overflow:hidden!important
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-write-review.nbpfeat-write-review label{
  display:block!important;width:100%!important;min-width:0!important
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-review-message.nbpfeat-review-message{
  display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow:auto!important
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-review-message.nbpfeat-review-message::placeholder{
  color:#98a2b3!important;opacity:1!important;font-weight:400!important
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating button.bpe-rating-save.nbpfeat-rating-submit:disabled{
  opacity:.68!important;cursor:wait!important
}
@media(max-width:600px){
  body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-write-review.nbpfeat-write-review{max-width:100%!important}
}


/* v0.30.22 — rating latency + composer containment hard fix. */
body.single-product div.product .summary .bpe-rating-row.nbpfeat-toprating{
  min-width:0!important;max-width:100%!important;overflow:hidden!important
}
body.single-product div.product .summary .bpe-quick-rating.nbpfeat-quick-rating{
  min-width:0!important;max-width:100%!important;overflow:hidden!important
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-write-review.nbpfeat-write-review{
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;
  width:min(380px,100%)!important;max-width:100%!important;min-width:0!important;
  overflow:hidden!important;contain:layout paint!important
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-write-review.nbpfeat-write-review[hidden]{display:none!important}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-write-review.nbpfeat-write-review label{
  display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating textarea.bpe-quick-review-message.nbpfeat-review-message{
  display:block!important;box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;
  min-height:72px!important;margin:6px 0!important;padding:9px!important;resize:vertical!important;overflow:auto!important;
  outline:0!important;box-shadow:none!important;color:#111827!important;font-weight:400!important
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating textarea.bpe-quick-review-message.nbpfeat-review-message:focus{
  border-color:#2549B8!important;box-shadow:inset 0 0 0 1px #2549B8!important
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating textarea.bpe-quick-review-message.nbpfeat-review-message::placeholder{
  color:#a3adba!important;opacity:1!important;font-weight:400!important;font-style:normal!important
}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-rating-hp{display:none!important}


/* v0.30.23 — Bwonjo product-page accent unification.
 * All Product Engine interactive accent states now use Bwonjo Royal Blue #2549B8:
 * primary/secondary CTAs, text links, selected options, focus states,
 * rating/review actions, Back in Stock, price-history accents and compare UI.
 */


/* v0.30.24 — Product-page Ocean Blue accent overhaul.
 * Royal Blue (#2549B8) is the single Bwonjo commerce accent for product-page
 * links, primary CTAs, selected states, focus rings, review actions,
 * Back-in-Stock actions, compare actions and price-history controls.
 * Semantic status colors remain semantic: WhatsApp green, stock green,
 * warnings/errors and star gold are intentionally unchanged.
 */
.bpe-product{--bpe-accent:#1B3588;--bpe-accent-hover:#2549B8}
.bpe-product a:not(.bpe-whatsapp-order):not(.bpe-stock-link){accent-color:var(--bpe-accent)}
.bpe-product .bpe-text-link,
.bpe-product .bpe-card-link,
.bpe-product .bpe-compare-view,
.bpe-product .bpe-product-meta-line a,
.bpe-product .bpe-quick-rating-status a,
.bpe-product .bpe-rating-link:hover,
.bpe-product .bpe-review-empty-link:hover{color:var(--bpe-accent)!important}
.bpe-product .single_add_to_cart_button,
.bpe-product .bpe-rating-save,
.bpe-product .bpe-quick-review-save,
.bpe-product .bpe-bis-submit,
.bpe-product .bpe-primary-button,
.bpe-product .button.bpe-primary-button{background:var(--bpe-accent)!important;border-color:var(--bpe-accent)!important;color:#fff!important}
.bpe-product .single_add_to_cart_button:hover,
.bpe-product .single_add_to_cart_button:focus,
.bpe-product .bpe-rating-save:hover,
.bpe-product .bpe-rating-save:focus,
.bpe-product .bpe-quick-review-save:hover,
.bpe-product .bpe-quick-review-save:focus,
.bpe-product .bpe-bis-submit:hover,
.bpe-product .bpe-bis-submit:focus,
.bpe-product .bpe-primary-button:hover,
.bpe-product .bpe-primary-button:focus{background:var(--bpe-accent-hover)!important;border-color:var(--bpe-accent-hover)!important;color:#fff!important;text-decoration:none!important}
.bpe-product .bpe-buy-now-button,
.bpe-product .bpe-card-button{border-color:var(--bpe-accent)!important;color:var(--bpe-accent)!important}
.bpe-product .bpe-buy-now-button:hover,
.bpe-product .bpe-buy-now-button:focus,
.bpe-product .bpe-card-button:hover,
.bpe-product .bpe-card-button:focus{border-color:var(--bpe-accent-hover)!important;color:var(--bpe-accent-hover)!important;background:var(--bpe-accent-soft)!important}
.bpe-product .bpe-variation-option.is-selected{border-color:var(--bpe-accent)!important;box-shadow:0 0 0 1px var(--bpe-accent)!important}
.bpe-product .bpe-variation-option.is-color-swatch.is-selected{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--bpe-accent)!important}
.bpe-product a:focus-visible,
.bpe-product button:focus-visible,
.bpe-product input:focus-visible,
.bpe-product textarea:focus-visible{outline-color:var(--bpe-accent)!important}
body.single-product .bpe-quick-rating.nbpfeat-quick-rating textarea.bpe-quick-review-message.nbpfeat-review-message:focus{border-color:var(--bpe-accent)!important;box-shadow:inset 0 0 0 1px var(--bpe-accent)!important}

:root{--bpe-accent:#1B3588;--bpe-accent-hover:#2549B8;}

/* === BPE v0.30.30 — slimmer purchase CTAs + compact quantity pill === */
.bpe-product .bpe-cart-area .single_add_to_cart_button{
  min-height:44px!important;
  height:44px!important;
  padding:8px 18px!important;
  font-size:16px!important;
  line-height:1!important;
}

.bpe-product .bpe-whatsapp-order{
  min-height:44px!important;
  height:44px!important;
  padding:8px 16px!important;
  font-size:16px!important;
  line-height:1!important;
}

.bpe-product .bpe-whatsapp-icon,
.bpe-product .bpe-whatsapp-icon svg{
  width:19px!important;
  height:19px!important;
  flex-basis:19px!important;
}

.bpe-product .bpe-cart-area .bpe-cart-actions-row .quantity,
.bpe-product .bpe-cart-area .bpe-cart-actions-row .bpe-quantity{
  flex:0 0 106px!important;
  width:106px!important;
  min-width:106px!important;
  max-width:106px!important;
  height:44px!important;
  min-height:44px!important;
}

.bpe-product .bpe-cart-area .bpe-cart-actions-row .quantity .qty{
  width:40px!important;
  min-width:40px!important;
  height:42px!important;
  min-height:42px!important;
  line-height:42px!important;
  font-size:15px!important;
}

.bpe-product .bpe-cart-area .bpe-cart-actions-row .quantity .minus,
.bpe-product .bpe-cart-area .bpe-cart-actions-row .quantity .plus,
.bpe-product .bpe-cart-area .bpe-cart-actions-row .quantity .bpe-qty-btn{
  flex:0 0 32px!important;
  width:32px!important;
  min-width:32px!important;
  height:42px!important;
  min-height:42px!important;
  font-size:20px!important;
}

@media (max-width:640px){
  .bpe-product .bpe-cart-area .single_add_to_cart_button,
  .bpe-product .bpe-whatsapp-order{
    min-height:43px!important;
    height:43px!important;
  }

  .bpe-product .bpe-cart-area .bpe-cart-actions-row .quantity,
  .bpe-product .bpe-cart-area .bpe-cart-actions-row .bpe-quantity{
    flex-basis:102px!important;
    width:102px!important;
    min-width:102px!important;
    max-width:102px!important;
    height:43px!important;
    min-height:43px!important;
  }

  .bpe-product .bpe-cart-area .bpe-cart-actions-row .quantity .qty{
    width:38px!important;
    min-width:38px!important;
    height:41px!important;
    min-height:41px!important;
    line-height:41px!important;
  }

  .bpe-product .bpe-cart-area .bpe-cart-actions-row .quantity .minus,
  .bpe-product .bpe-cart-area .bpe-cart-actions-row .quantity .plus,
  .bpe-product .bpe-cart-area .bpe-cart-actions-row .quantity .bpe-qty-btn{
    flex-basis:31px!important;
    width:31px!important;
    min-width:31px!important;
    height:41px!important;
    min-height:41px!important;
  }
}

/* === BPE v0.30.31 — shorter quantity selector === */
.bpe-product .bpe-cart-area .bpe-cart-actions-row .quantity,
.bpe-product .bpe-cart-area .bpe-cart-actions-row .bpe-quantity{
  flex:0 0 88px!important;
  width:88px!important;
  min-width:88px!important;
  max-width:88px!important;
}

.bpe-product .bpe-cart-area .bpe-cart-actions-row .quantity .qty{
  width:30px!important;
  min-width:30px!important;
  padding-left:0!important;
  padding-right:0!important;
}

.bpe-product .bpe-cart-area .bpe-cart-actions-row .quantity .minus,
.bpe-product .bpe-cart-area .bpe-cart-actions-row .quantity .plus,
.bpe-product .bpe-cart-area .bpe-cart-actions-row .quantity .bpe-qty-btn{
  flex:0 0 29px!important;
  width:29px!important;
  min-width:29px!important;
}

@media (max-width:640px){
  .bpe-product .bpe-cart-area .bpe-cart-actions-row .quantity,
  .bpe-product .bpe-cart-area .bpe-cart-actions-row .bpe-quantity{
    flex-basis:84px!important;
    width:84px!important;
    min-width:84px!important;
    max-width:84px!important;
  }

  .bpe-product .bpe-cart-area .bpe-cart-actions-row .quantity .qty{
    width:28px!important;
    min-width:28px!important;
  }

  .bpe-product .bpe-cart-area .bpe-cart-actions-row .quantity .minus,
  .bpe-product .bpe-cart-area .bpe-cart-actions-row .quantity .plus,
  .bpe-product .bpe-cart-area .bpe-cart-actions-row .quantity .bpe-qty-btn{
    flex-basis:28px!important;
    width:28px!important;
    min-width:28px!important;
  }
}

/* === BPE v0.30.32 — review star cropping fix === */
body.single-product div.product .summary .bpe-rating-row.nbpfeat-toprating,
body.single-product div.product .summary .bpe-rating-link.nbpfeat-review-summary,
body.single-product .bpe-quick-rating.nbpfeat-quick-rating,
body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-stars.nbpfeat-stars{
  overflow:visible!important;
}

body.single-product div.product .summary .bpe-rating-link.nbpfeat-review-summary .star-rating{
  display:inline-block!important;
  height:auto!important;
  min-height:18px!important;
  line-height:1.18!important;
  overflow:visible!important;
  vertical-align:middle!important;
}

body.single-product div.product .summary .bpe-rating-link.nbpfeat-review-summary .star-rating::before,
body.single-product div.product .summary .bpe-rating-link.nbpfeat-review-summary .star-rating span::before{
  line-height:1.18!important;
  top:auto!important;
}

body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-star{
  overflow:visible!important;
  width:30px!important;
  min-width:30px!important;
  height:30px!important;
  min-height:30px!important;
  padding:3px!important;
}

body.single-product .bpe-quick-rating.nbpfeat-quick-rating .bpe-quick-star svg{
  width:22px!important;
  height:22px!important;
  overflow:visible!important;
}

/* === BPE v0.30.33 — NextBuy selector-card styling, adapted to Bwonjo ===
 * Borrow the exact premium configuration/storage card treatment from NextBuy,
 * while keeping Bwonjo's circular colour swatches and Bwonjo blue accent.
 */

/* Non-colour commercial selectors become the same clean two-column card grid. */
.bpe-product .bpe-variation-options:not(.is-color){
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px!important;
  margin:0!important;
}

/* Single option spans the full selector width, matching NextBuy. */
.bpe-product .bpe-variation-options:not(.is-color) .bpe-variation-option:only-child{
  grid-column:1/-1!important;
}

/* NextBuy-style premium option card. */
.bpe-product .bpe-variation-option:not(.is-color-swatch){
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:46px!important;
  padding:11px 12px!important;
  margin:0!important;
  border:1px solid #d6dce5!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#20252c!important;
  box-shadow:0 2px 9px rgba(15,23,42,.06)!important;
  font-size:12.5px!important;
  font-weight:710!important;
  line-height:1.3!important;
  letter-spacing:-.008em!important;
  text-align:center!important;
  white-space:normal!important;
  text-decoration:none!important;
  cursor:pointer!important;
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease!important;
}

/* Calm lift on hover, without changing Bwonjo's selected state. */
.bpe-product .bpe-variation-option:not(.is-color-swatch):hover:not(:disabled):not(.is-disabled):not(.is-selected){
  border-color:#9baecc!important;
  background:#fff!important;
  color:#20252c!important;
  box-shadow:0 5px 16px rgba(15,23,42,.10)!important;
}

/* Selected card: Bwonjo primary blue + subtle blue depth. */
.bpe-product .bpe-variation-option:not(.is-color-swatch).is-selected{
  border-color:var(--bpe-accent)!important;
  background:#fff!important;
  color:#20252c!important;
  box-shadow:0 0 0 1px rgba(27,53,136,.10),0 5px 15px rgba(27,53,136,.10)!important;
}

/* Bwonjo blue circular checkmark, using the same NextBuy check geometry. */
.bpe-product .bpe-variation-option:not(.is-color-swatch).is-selected::after{
  content:""!important;
  display:inline-block!important;
  flex:0 0 17px!important;
  width:17px!important;
  height:17px!important;
  margin-left:8px!important;
  border-radius:50%!important;
  background-color:var(--bpe-accent)!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 4 4L19 6'/%3E%3C/svg%3E")!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:12px 12px!important;
}

/* Accessible keyboard focus follows Bwonjo blue. */
.bpe-product .bpe-variation-option:not(.is-color-swatch):focus-visible{
  outline:2px solid var(--bpe-accent)!important;
  outline-offset:3px!important;
}

/* Preserve the existing Bwonjo colour-swatch circles/rings completely. */
.bpe-product .bpe-variation-options.is-color{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:12px!important;
  align-items:center!important;
}
.bpe-product .bpe-variation-option.is-color-swatch::after{
  content:none!important;
}

/* If an unavailable non-colour choice is ever intentionally shown, keep it quiet. */
.bpe-product .bpe-variation-option:not(.is-color-swatch):disabled,
.bpe-product .bpe-variation-option:not(.is-color-swatch).is-disabled{
  opacity:.4!important;
  cursor:not-allowed!important;
  text-decoration:line-through!important;
}

/* Mobile density follows NextBuy's compact selector sizing. */
@media(max-width:640px){
  .bpe-product .bpe-variation-option:not(.is-color-swatch){
    min-height:43px!important;
    padding:9px 10px!important;
    font-size:12px!important;
    line-height:1.26!important;
    border-radius:11px!important;
  }
  .bpe-product .bpe-variation-option:not(.is-color-swatch).is-selected::after{
    margin-left:6px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .bpe-product .bpe-variation-option:not(.is-color-swatch){
    transition:none!important;
  }
}

/* === BPE v0.30.34 — exact NextBuy-style COLOR selector cards ===
 * Full white two-column cards with a real colour dot, visible colour name,
 * and Bwonjo blue selected checkmark. This replaces the old round-only swatches.
 */

/* NextBuy keeps the label itself clean; the chosen name is visible in the card. */
.bpe-product .bpe-cart-area .variations label .bpe-selected-color-name{
  display:none!important;
}

/* Same two-column card grid NextBuy uses for its colour selector. */
.bpe-product .bpe-variation-options.is-color{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px!important;
  align-items:stretch!important;
  width:100%!important;
  margin:0!important;
}

/* Exact card geometry: dot + name on the left, selected check pushed right. */
.bpe-product .bpe-variation-option.is-color-swatch{
  position:relative!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:9px!important;
  width:100%!important;
  height:auto!important;
  min-height:49px!important;
  padding:10px 13px!important;
  margin:0!important;
  border:1px solid #d6dce5!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#20252c!important;
  box-shadow:0 2px 9px rgba(15,23,42,.06)!important;
  font-size:12.5px!important;
  font-weight:710!important;
  line-height:1.3!important;
  letter-spacing:-.008em!important;
  text-align:left!important;
  cursor:pointer!important;
  overflow:visible!important;
  transition:border-color .18s ease,box-shadow .18s ease!important;
}

/* True colour dot. Existing Bwonjo colour mappings continue to style this node. */
.bpe-product .bpe-variation-option.is-color-swatch .bpe-swatch-dot{
  display:block!important;
  flex:0 0 20px!important;
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  min-height:20px!important;
  border-radius:50%!important;
  border:1px solid #cbd3de!important;
  box-shadow:0 0 0 1px rgba(15,23,42,.025)!important;
}

/* Visible colour name, as in NextBuy. */
.bpe-product .bpe-variation-option.is-color-swatch .bpe-color-name{
  display:block!important;
  min-width:0!important;
  flex:1 1 auto!important;
  overflow-wrap:anywhere!important;
  color:#20252c!important;
  font:inherit!important;
  font-weight:inherit!important;
  line-height:1.3!important;
}

/* Hover: same restrained floating-card behavior. */
@media(hover:hover) and (pointer:fine){
  .bpe-product .bpe-variation-option.is-color-swatch:hover:not(:disabled):not(.is-disabled):not(.is-selected):not(.is-unavailable-combination){
    border-color:rgba(27,53,136,.35)!important;
    background:#fff!important;
    box-shadow:0 4px 13px rgba(27,53,136,.085)!important;
  }
}

/* Selected card: Bwonjo primary blue border + soft depth. */
.bpe-product .bpe-variation-option.is-color-swatch.is-selected{
  border-color:var(--bpe-accent)!important;
  background:#fff!important;
  box-shadow:0 0 0 1px rgba(27,53,136,.10),0 5px 15px rgba(27,53,136,.10)!important;
}

/* Bwonjo blue checkmark on the far right. */
.bpe-product .bpe-variation-option.is-color-swatch.is-selected::after{
  content:""!important;
  position:static!important;
  display:inline-block!important;
  flex:0 0 17px!important;
  width:17px!important;
  height:17px!important;
  margin-left:auto!important;
  border-radius:50%!important;
  background-color:var(--bpe-accent)!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 4 4L19 6'/%3E%3C/svg%3E")!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:12px 12px!important;
  transform:none!important;
  pointer-events:none!important;
}

/* Remove the old circular selected halo. */
.bpe-product .bpe-variation-option.is-color-swatch.is-selected{
  outline:0!important;
}

/* Bwonjo still exposes a colour that belongs to the model but not to the
 * currently selected configuration. Keep the full card, but make it quiet. */
.bpe-product .bpe-variation-option.is-color-swatch.is-unavailable-combination{
  opacity:.58!important;
  border-style:dashed!important;
  border-color:#d6dce5!important;
  box-shadow:none!important;
  background:#fcfcfd!important;
  cursor:not-allowed!important;
}
.bpe-product .bpe-variation-option.is-color-swatch.is-unavailable-combination .bpe-swatch-dot{
  filter:saturate(.72)!important;
  opacity:.72!important;
}
.bpe-product .bpe-variation-option.is-color-swatch.is-unavailable-combination .bpe-color-name{
  color:#737b84!important;
}

/* Replace the old full-swatch X overlay with a small right-side × marker. */
.bpe-product .bpe-variation-option.is-color-swatch.is-unavailable-combination::before{
  content:"×"!important;
  position:static!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 17px!important;
  width:17px!important;
  height:17px!important;
  margin-left:auto!important;
  border:0!important;
  border-radius:50%!important;
  background:#eef1f5!important;
  color:#7c8796!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1!important;
  transform:none!important;
  pointer-events:none!important;
}
.bpe-product .bpe-variation-option.is-color-swatch.is-unavailable-combination::after{
  content:none!important;
}

/* Focus follows the current Bwonjo blue. */
.bpe-product .bpe-variation-option.is-color-swatch:focus-visible{
  outline:2px solid var(--bpe-accent)!important;
  outline-offset:3px!important;
}

/* NextBuy stays two-column on normal mobile and drops to one only on very
 * narrow screens. */
@media(max-width:767px){
  .bpe-product .bpe-variation-options.is-color{gap:8px!important}
  .bpe-product .bpe-variation-option.is-color-swatch{
    min-height:44px!important;
    padding:8px 11px!important;
    gap:7px!important;
    font-size:12px!important;
    border-radius:11px!important;
  }
  .bpe-product .bpe-variation-option.is-color-swatch .bpe-swatch-dot{
    flex-basis:18px!important;
    width:18px!important;
    height:18px!important;
    min-width:18px!important;
    min-height:18px!important;
  }
}
@media(max-width:380px){
  .bpe-product .bpe-variation-options.is-color{
    grid-template-columns:1fr!important;
  }
}

/* === BPE v0.30.35 — NextBuy-style selected checkmark pinned to RHS ===
 * Non-colour selector cards should mirror NextBuy exactly:
 * copy aligned naturally, selected check always pinned to the far right.
 */
.bpe-product .bpe-variation-option:not(.is-color-swatch){
  justify-content:flex-start!important;
  text-align:left!important;
}

.bpe-product .bpe-variation-option:not(.is-color-swatch).is-selected::after{
  margin-left:auto!important;
  margin-right:0!important;
  flex:0 0 17px!important;
}

.bpe-product .bpe-variation-option:not(.is-color-swatch) > *:first-child{
  min-width:0!important;
}

/* If the button text is a direct text node, left padding/flow still holds.
 * If the theme/plugin wraps the label in a span, keep that span flexible.
 */
.bpe-product .bpe-variation-option:not(.is-color-swatch) .bpe-option-label,
.bpe-product .bpe-variation-option:not(.is-color-swatch) .bpe-variation-label,
.bpe-product .bpe-variation-option:not(.is-color-swatch) .label,
.bpe-product .bpe-variation-option:not(.is-color-swatch) span{
  flex:1 1 auto!important;
  min-width:0!important;
  text-align:left!important;
}

/* === BPE v0.30.36 — exact NextBuy selector alignment ===
 * Configuration/storage cards: centered label, checkmark pinned to far RHS.
 * Color cards: swatch + name left, checkmark pinned to far RHS.
 */

/* NON-COLOR CARDS */
.bpe-product .bpe-variation-option:not(.is-color-swatch){
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  padding-left:38px!important;
  padding-right:38px!important;
}

/* undo previous forced left alignment on any wrapped label */
.bpe-product .bpe-variation-option:not(.is-color-swatch) .bpe-option-label,
.bpe-product .bpe-variation-option:not(.is-color-swatch) .bpe-variation-label,
.bpe-product .bpe-variation-option:not(.is-color-swatch) .label,
.bpe-product .bpe-variation-option:not(.is-color-swatch) span{
  flex:0 1 auto!important;
  text-align:center!important;
}

/* selected check is visually independent of centered label */
.bpe-product .bpe-variation-option:not(.is-color-swatch).is-selected::after{
  position:absolute!important;
  right:12px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  margin:0!important;
  width:17px!important;
  height:17px!important;
  flex:none!important;
}

/* COLOR CARDS */
.bpe-product .bpe-variation-option.is-color-swatch{
  position:relative!important;
  justify-content:flex-start!important;
  text-align:left!important;
  padding-right:40px!important;
}
.bpe-product .bpe-variation-option.is-color-swatch .bpe-color-name{
  text-align:left!important;
}
.bpe-product .bpe-variation-option.is-color-swatch.is-selected::after{
  position:absolute!important;
  right:12px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  margin:0!important;
  width:17px!important;
  height:17px!important;
  flex:none!important;
}

/* unavailable color x also aligns on the same RHS axis */
.bpe-product .bpe-variation-option.is-color-swatch.is-unavailable-combination::before{
  position:absolute!important;
  right:12px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  margin:0!important;
}

/* consistent RHS gutter on mobile */
@media(max-width:640px){
  .bpe-product .bpe-variation-option:not(.is-color-swatch){
    padding-left:34px!important;
    padding-right:34px!important;
  }
  .bpe-product .bpe-variation-option:not(.is-color-swatch).is-selected::after,
  .bpe-product .bpe-variation-option.is-color-swatch.is-selected::after,
  .bpe-product .bpe-variation-option.is-color-swatch.is-unavailable-combination::before{
    right:10px!important;
  }
  .bpe-product .bpe-variation-option.is-color-swatch{
    padding-right:36px!important;
  }
}

/* === BPE v0.30.37 — NextBuy selector check placement correction ===
 * Match the actual NextBuy behavior:
 * - configuration/storage selectors: centered text with the selected check immediately after the label
 * - color selectors: swatch + label left, check pinned on the far RHS
 */

/* NON-COLOR SELECTORS */
.bpe-product .bpe-variation-option:not(.is-color-swatch){
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  gap:8px!important;
  padding-left:14px!important;
  padding-right:14px!important;
}

.bpe-product .bpe-variation-option:not(.is-color-swatch) .bpe-option-label,
.bpe-product .bpe-variation-option:not(.is-color-swatch) .bpe-variation-label,
.bpe-product .bpe-variation-option:not(.is-color-swatch) .label,
.bpe-product .bpe-variation-option:not(.is-color-swatch) span{
  flex:0 1 auto!important;
  text-align:center!important;
}

/* selected check sits immediately after the text, not on the far RHS */
.bpe-product .bpe-variation-option:not(.is-color-swatch).is-selected::after{
  position:static!important;
  right:auto!important;
  top:auto!important;
  transform:none!important;
  margin-left:0!important;
  margin-right:0!important;
  width:17px!important;
  height:17px!important;
  flex:0 0 17px!important;
}

/* COLOR SELECTORS remain true NextBuy style: swatch/name left, check on far RHS */
.bpe-product .bpe-variation-option.is-color-swatch{
  position:relative!important;
  justify-content:flex-start!important;
  text-align:left!important;
  padding-right:40px!important;
}
.bpe-product .bpe-variation-option.is-color-swatch .bpe-color-name{
  text-align:left!important;
}
.bpe-product .bpe-variation-option.is-color-swatch.is-selected::after{
  position:absolute!important;
  right:12px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  margin:0!important;
  width:17px!important;
  height:17px!important;
  flex:none!important;
}
.bpe-product .bpe-variation-option.is-color-swatch.is-unavailable-combination::before{
  position:absolute!important;
  right:12px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  margin:0!important;
}

@media(max-width:640px){
  .bpe-product .bpe-variation-option:not(.is-color-swatch){
    padding-left:12px!important;
    padding-right:12px!important;
    gap:7px!important;
  }
  .bpe-product .bpe-variation-option.is-color-swatch{
    padding-right:36px!important;
  }
  .bpe-product .bpe-variation-option.is-color-swatch.is-selected::after,
  .bpe-product .bpe-variation-option.is-color-swatch.is-unavailable-combination::before{
    right:10px!important;
  }
}

/* === BPE v0.30.38 — force non-color check inline with label ===
 * Exact target:
 *   256GB  [check]
 * on ONE horizontal line.
 * Color cards keep their check pinned to the far RHS.
 */

/* Non-color selector cards must stay one horizontal flex row. */
.bpe-product .bpe-variation-option:not(.is-color-swatch){
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  text-align:center!important;
  white-space:nowrap!important;
  padding-left:12px!important;
  padding-right:12px!important;
}

/* Kill any inherited full-width/flex rules on wrapped label spans. */
.bpe-product .bpe-variation-option:not(.is-color-swatch) > span,
.bpe-product .bpe-variation-option:not(.is-color-swatch) .bpe-option-label,
.bpe-product .bpe-variation-option:not(.is-color-swatch) .bpe-variation-label,
.bpe-product .bpe-variation-option:not(.is-color-swatch) .label{
  display:inline!important;
  flex:0 0 auto!important;
  width:auto!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  text-align:center!important;
  white-space:nowrap!important;
}

/* Check is a normal inline flex sibling immediately after the label. */
.bpe-product .bpe-variation-option:not(.is-color-swatch).is-selected::after{
  content:""!important;
  position:static!important;
  display:inline-block!important;
  flex:0 0 17px!important;
  width:17px!important;
  height:17px!important;
  min-width:17px!important;
  min-height:17px!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  vertical-align:middle!important;
  align-self:center!important;
}

/* COLOR stays different by design: swatch/name left + check far RHS. */
.bpe-product .bpe-variation-option.is-color-swatch.is-selected::after{
  position:absolute!important;
  right:12px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  margin:0!important;
}

@media(max-width:640px){
  .bpe-product .bpe-variation-option:not(.is-color-swatch){
    gap:7px!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }
  .bpe-product .bpe-variation-option.is-color-swatch.is-selected::after{
    right:10px!important;
  }
}

/* === BPE v0.30.39 — unavailable color X placed on the actual swatch circle === */

/* Make the swatch circle the positioning context. */
.bpe-product .bpe-variation-option.is-color-swatch .bpe-swatch-dot{
  position:relative!important;
  overflow:visible!important;
}

/* Remove the old separate RHS unavailable marker. */
.bpe-product .bpe-variation-option.is-color-swatch.is-unavailable-combination::before{
  content:none!important;
}

/* Put the X directly on the color circle. */
.bpe-product .bpe-variation-option.is-color-swatch.is-unavailable-combination .bpe-swatch-dot::after{
  content:"×"!important;
  position:absolute!important;
  inset:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:100%!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.62)!important;
  color:#6b7280!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1!important;
  pointer-events:none!important;
}

/* Keep the selected check on the far right for available selected colors. */
.bpe-product .bpe-variation-option.is-color-swatch.is-selected::after{
  content:""!important;
}

body.single-product .bpe-buybox-grid{
    min-height:0!important;
  }
}

}

/* LHS full gallery column is the sticky element. */
  body.single-product .bpe-buybox-grid > .bpe-gallery{
    position:-webkit-sticky!important;
    position:sticky!important;
    top:var(--bpe-sticky-top,108px)!important;
    align-self:start!important;
    z-index:1!important;
    transform:none!important;
    will-change:auto!important;
  }

  /* RHS must remain normal-flow content. */
  body.single-product .bpe-buybox-grid > .bpe-summary{
    position:relative!important;
    top:auto!important;
    z-index:auto!important;
    transform:none!important;
  }

  /* Exact NextBuy lesson: keep the main photograph fully visible on laptop
     screens, otherwise the whole gallery can become too tall to visibly stick. */
  body.single-product .bpe-gallery .woocommerce-product-gallery__image img:not(.zoomImg){
    max-height:min(530px,calc(100dvh - 300px))!important;
    width:auto!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
    object-fit:contain!important;
  }
}

@media (max-width:980px){
  body.single-product .bpe-buybox-grid > .bpe-gallery{
    position:relative!important;
    top:auto!important;
    z-index:auto!important;
  }

  body.single-product .bpe-buybox-grid{
    min-height:0!important;
  }
}

/* === BPE v0.30.43 — split-scroll product hero ===
 * Desktop:
 * - LHS gallery lives in its own fixed-height hero column.
 * - RHS details live in their own internally-scrollable column.
 * - Wheel/trackpad scroll is consumed by the RHS while it has more content.
 * - Once RHS reaches its end, normal page scrolling resumes so BOTH columns
 *   move away together and Quick Specs follows naturally.
 */
@media (min-width:981px){
  body.single-product .bpe-buybox{
    overflow:visible!important;
  }

  body.single-product .bpe-buybox-grid{
    align-items:start!important;
    overflow:visible!important;
  }

  body.single-product .bpe-buybox-grid > .bpe-gallery,
  body.single-product .bpe-buybox-grid > .bpe-summary{
    position:relative!important;
    top:auto!important;
    transform:none!important;
  }

  body.single-product .bpe-buybox-grid > .bpe-gallery{
    align-self:start!important;
    overflow:hidden!important;
  }

  body.single-product .bpe-buybox-grid > .bpe-summary{
    max-height:var(--bpe-split-scroll-height,calc(100dvh - 150px))!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:auto!important;
    scrollbar-gutter:stable!important;
    padding-right:8px!important;
    scroll-behavior:auto!important;
  }

  /* Keep the main product image contained in the visible LHS hero area. */
  body.single-product .bpe-gallery .woocommerce-product-gallery__image img:not(.zoomImg){
    max-height:min(560px,calc(100dvh - 245px))!important;
    width:auto!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
    object-fit:contain!important;
  }

  /* Thin, quiet scrollbar only when the RHS actually needs scrolling. */
  body.single-product .bpe-summary{
    scrollbar-width:thin;
    scrollbar-color:#c8cfda transparent;
  }
  body.single-product .bpe-summary::-webkit-scrollbar{width:6px}
  body.single-product .bpe-summary::-webkit-scrollbar-track{background:transparent}
  body.single-product .bpe-summary::-webkit-scrollbar-thumb{
    background:#c8cfda;
    border-radius:999px;
  }
}

@media (max-width:980px){
  body.single-product .bpe-buybox-grid > .bpe-summary{
    max-height:none!important;
    overflow:visible!important;
    padding-right:0!important;
    scrollbar-gutter:auto!important;
  }

  body.single-product .bpe-buybox-grid > .bpe-gallery{
    overflow:visible!important;
  }
}

/* === BPE v0.30.44 — TRUE SEPARATED PRODUCT HERO ===
 *
 * The shared white card around BOTH columns is removed.
 * LHS and RHS are now separate structural containers in the PHP markup.
 *
 * Desktop flow:
 * - RHS is its own white card and remains normal page-flow content.
 * - LHS whole gallery column is sticky.
 * - RHS can be as long as it needs to be.
 * - The RHS natural height defines the hero height.
 * - When RHS ends, the sticky LHS releases with the hero.
 * - Quick Specs is immediately after the hero, so both leave together before it.
 */

/* Remove the old combined hero card completely. */
body.single-product .bpe-buybox-grid{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:0!important;
  min-height:0!important;
  height:auto!important;
}

/* Explicit independent columns. */
body.single-product .bpe-gallery-column,
body.single-product .bpe-summary-column{
  width:100%!important;
  min-width:0!important;
  height:auto!important;
}

/* RHS IS NOW ITS OWN CONTAINER. */
body.single-product .bpe-summary-column{
  background:#fff!important;
  border:1px solid #e6e9ef!important;
  border-radius:24px!important;
  box-shadow:0 10px 34px rgba(16,24,40,.045)!important;
  padding:34px 38px!important;
}

/* RHS scrolls with the PAGE — never internally. */
body.single-product .bpe-summary{
  position:static!important;
  top:auto!important;
  width:100%!important;
  max-height:none!important;
  height:auto!important;
  min-height:0!important;
  overflow:visible!important;
  overflow-x:visible!important;
  overflow-y:visible!important;
  scrollbar-gutter:auto!important;
  padding:0!important;
  z-index:auto!important;
  transform:none!important;
}

/* LHS is visually separate. */
body.single-product .bpe-gallery-column{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:0!important;
}

@media (min-width:981px){
  /* No clipping ancestor may break sticky. */
  body.single-product .site-content,
  body.single-product .site-content > .ast-container,
  body.single-product .site-content #primary,
  body.single-product .site-content .ast-woocommerce-container,
  body.single-product .bpe-product,
  body.single-product .bpe-buybox,
  body.single-product .bpe-inner,
  body.single-product .bpe-buybox-grid,
  body.single-product .bpe-gallery-column,
  body.single-product .bpe-summary-column{
    overflow:visible!important;
  }

  body.single-product .bpe-buybox-grid{
    display:grid!important;
    grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr)!important;
    gap:38px!important;
    align-items:start!important;
  }

  /* WHOLE LHS container sticks. */
  body.single-product .bpe-gallery-column{
    position:-webkit-sticky!important;
    position:sticky!important;
    top:var(--bpe-gallery-sticky-top,96px)!important;
    align-self:start!important;
    z-index:5!important;
  }

  body.single-product .bpe-gallery{
    position:relative!important;
    top:auto!important;
    overflow:visible!important;
  }

  /* Keep the sticky LHS comfortably inside a laptop viewport. */
  body.single-product .bpe-gallery .woocommerce-product-gallery__image img:not(.zoomImg){
    max-height:min(570px,calc(100dvh - 220px))!important;
    width:auto!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
    object-fit:contain!important;
  }
}

@media (max-width:980px){
  body.single-product .bpe-buybox-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:22px!important;
  }

  body.single-product .bpe-gallery-column{
    position:relative!important;
    top:auto!important;
  }

  body.single-product .bpe-summary-column{
    border-radius:18px!important;
    padding:20px 18px!important;
    box-shadow:none!important;
  }
}

/* === BPE v0.30.45 — LHS white / RHS soft-grey panel ===
 * Product imagery already uses white backgrounds, so the entire gallery side
 * stays white and visually disappears into the images.
 * The independent RHS details container uses a soft neutral grey to create the
 * separation between browsing imagery and product controls/details.
 */
body.single-product .bpe-gallery-column{
  background:#ffffff!important;
  border-radius:24px!important;
}

body.single-product .bpe-gallery{
  background:#ffffff!important;
}

/* Soft grey RHS card. Keep controls/inputs themselves white. */
body.single-product .bpe-summary-column{
  background:#F5F6F8!important;
  border-color:#E3E7ED!important;
}

body.single-product .bpe-summary-column .bpe-variation-option,
body.single-product .bpe-summary-column textarea,
body.single-product .bpe-summary-column input,
body.single-product .bpe-summary-column select,
body.single-product .bpe-summary-column .bpe-protect-plus,
body.single-product .bpe-summary-column .bpe-trust-strip{
  background-color:#ffffff!important;
}

@media (max-width:980px){
  body.single-product .bpe-gallery-column{
    border-radius:18px!important;
  }
}

/* === BPE v0.30.46 — dynamic Bwonjo warranty profile display === */
body.single-product .bpe-warranty-item > span{
  font-weight:600!important;
  color:#475467!important;
}
body.single-product .bpe-warranty-popover{
  max-width:390px!important;
}



/* === BPE v0.30.47 — replace delivery/warranty strip with exact NextBuy-style warranty block === */
.bpe-trust-strip,.bpe-warranty-section{display:none!important}
body.single-product .bpe-summary .nbp-warranty-inline{display:block!important;margin:17px 0 0!important;padding:15px 16px!important;background:#f8fafc!important;border:1px solid #e5eaf0!important;border-radius:12px!important;box-shadow:none!important;max-width:100%!important;overflow-wrap:anywhere!important}
body.single-product .bpe-summary .nbp-warranty-inline h3{font-size:13px!important;line-height:1.35!important;font-weight:800!important;color:#171b22!important;letter-spacing:0!important;margin:0 0 8px!important}
body.single-product .bpe-summary .nbp-warranty-inline .nbpfeat-warranty{padding:0!important;margin:0!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important}
body.single-product .bpe-summary .nbp-warranty-inline .nbpfeat-warranty strong{display:block!important;font-size:12px!important;line-height:1.5!important;font-weight:750!important;color:#171b22!important}
body.single-product .bpe-summary .nbp-warranty-inline .nbpfeat-warranty p{margin:9px 0 0!important;font-size:12px!important;line-height:1.6!important;color:#556170!important}
body.single-product .bpe-summary .nbp-warranty-inline .nbpfeat-warranty-brand{display:block!important;font-size:11px!important;margin:4px 0 0!important;color:#687487!important}
@media(max-width:767px){body.single-product .bpe-summary .nbp-warranty-inline{padding:13px!important}}

/* === BPE v0.30.49 — Bwonjo-native Warranty & Support styling ===
 * Keeps the full imported warranty logic/content, but visually integrates the
 * block into Bwonjo's product-page language instead of looking like NextBuy.
 */
body.single-product .bpe-summary .nbp-warranty-inline{
  position:relative!important;
  display:block!important;
  margin:18px 0 0!important;
  padding:16px 17px 16px 19px!important;
  background:#ffffff!important;
  border:1px solid #dfe4ec!important;
  border-radius:14px!important;
  box-shadow:0 4px 14px rgba(15,23,42,.035)!important;
  overflow:hidden!important;
}

/* Bwonjo accent rail. */
body.single-product .bpe-summary .nbp-warranty-inline::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:14px!important;
  bottom:14px!important;
  width:3px!important;
  border-radius:0 999px 999px 0!important;
  background:var(--bpe-accent)!important;
}

body.single-product .bpe-summary .nbp-warranty-inline h3{
  margin:0 0 9px!important;
  color:#111827!important;
  font-size:13px!important;
  line-height:1.35!important;
  font-weight:800!important;
  letter-spacing:-.01em!important;
}

body.single-product .bpe-summary .nbp-warranty-inline .nbpfeat-warranty{
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

body.single-product .bpe-summary .nbp-warranty-inline .nbpfeat-warranty strong{
  display:block!important;
  margin:0!important;
  color:#172033!important;
  font-size:12.5px!important;
  line-height:1.45!important;
  font-weight:760!important;
}

body.single-product .bpe-summary .nbp-warranty-inline .nbpfeat-warranty-brand{
  display:inline-block!important;
  margin:5px 0 0!important;
  color:var(--bpe-accent)!important;
  font-size:11px!important;
  line-height:1.35!important;
  font-weight:700!important;
}

body.single-product .bpe-summary .nbp-warranty-inline .nbpfeat-warranty p{
  margin:9px 0 0!important;
  color:#667085!important;
  font-size:12px!important;
  line-height:1.62!important;
  max-width:62ch!important;
}

@media(max-width:767px){
  body.single-product .bpe-summary .nbp-warranty-inline{
    margin-top:16px!important;
    padding:14px 14px 14px 17px!important;
    border-radius:12px!important;
  }

  body.single-product .bpe-summary .nbp-warranty-inline::before{
    top:12px!important;
    bottom:12px!important;
  }
}

/* === BPE v0.30.50 — Bwonjo-native Protect Plus+ add-on strip ===
 * Make protection feel like part of the purchase controls, not a detached card.
 */
body.single-product .bpe-summary .bpe-protect-plus{
  margin:12px 0 8px!important;
  padding:0!important;
}

body.single-product .bpe-summary .bpe-protect-plus-label{
  position:relative!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:11px!important;
  width:100%!important;
  min-height:56px!important;
  padding:10px 13px!important;
  border:1px solid rgba(27,53,136,.14)!important;
  border-radius:12px!important;
  background:rgba(27,53,136,.045)!important;
  box-shadow:none!important;
  cursor:pointer!important;
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}

@media(hover:hover) and (pointer:fine){
  body.single-product .bpe-summary .bpe-protect-plus-label:hover{
    background:rgba(27,53,136,.065)!important;
    border-color:rgba(27,53,136,.28)!important;
  }
}

body.single-product .bpe-summary .bpe-protect-plus-check{
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  border:1.5px solid rgba(27,53,136,.35)!important;
  border-radius:6px!important;
  background:#fff!important;
  box-shadow:0 1px 2px rgba(15,23,42,.04)!important;
}

body.single-product .bpe-summary .bpe-protect-plus input:checked + .bpe-protect-plus-check{
  background:var(--bpe-accent)!important;
  border-color:var(--bpe-accent)!important;
}

body.single-product .bpe-summary .bpe-protect-plus input:checked + .bpe-protect-plus-check::after{
  content:"✓"!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:850!important;
  line-height:1!important;
}

body.single-product .bpe-summary .bpe-protect-plus-label:has(input:checked){
  background:rgba(27,53,136,.075)!important;
  border-color:var(--bpe-accent)!important;
  box-shadow:0 0 0 1px rgba(27,53,136,.06)!important;
}

body.single-product .bpe-summary .bpe-protect-plus-copy{
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
  min-width:0!important;
}

body.single-product .bpe-summary .bpe-protect-plus-copy strong{
  color:#172033!important;
  font-size:13.5px!important;
  line-height:1.3!important;
  font-weight:780!important;
  letter-spacing:-.01em!important;
}

body.single-product .bpe-summary .bpe-protect-plus-copy span{
  color:#667085!important;
  font-size:11.5px!important;
  line-height:1.35!important;
}

body.single-product .bpe-summary .bpe-protect-plus-price{
  color:var(--bpe-accent)!important;
  font-size:12.5px!important;
  line-height:1.3!important;
  font-weight:800!important;
  white-space:nowrap!important;
}

body.single-product .bpe-summary .bpe-protect-plus input:focus-visible + .bpe-protect-plus-check{
  outline:2px solid var(--bpe-accent)!important;
  outline-offset:3px!important;
}

@media(max-width:640px){
  body.single-product .bpe-summary .bpe-protect-plus{
    margin:10px 0 7px!important;
  }

  body.single-product .bpe-summary .bpe-protect-plus-label{
    grid-template-columns:auto minmax(0,1fr) auto!important;
    gap:9px!important;
    min-height:52px!important;
    padding:9px 11px!important;
  }

  body.single-product .bpe-summary .bpe-protect-plus-copy strong{
    font-size:13px!important;
  }

  body.single-product .bpe-summary .bpe-protect-plus-copy span{
    font-size:11px!important;
  }

  body.single-product .bpe-summary .bpe-protect-plus-price{
    grid-column:auto!important;
    margin-top:0!important;
    font-size:12px!important;
  }
}

/* === BPE v0.30.51 — cleaner Bwonjo warranty hierarchy ===
 * Presentation only; warranty rules/settings remain unchanged.
 */
body.single-product .bpe-summary .nbp-warranty-inline{
  padding:15px 16px 15px 18px!important;
  background:#fff!important;
  border:1px solid #dfe4ec!important;
  border-radius:14px!important;
  box-shadow:0 3px 12px rgba(15,23,42,.035)!important;
}

body.single-product .bpe-summary .nbp-warranty-inline::before{
  width:2px!important;
  top:15px!important;
  bottom:15px!important;
}

body.single-product .bpe-summary .nbp-warranty-inline h3{
  margin:0 0 10px!important;
  font-size:13px!important;
  line-height:1.35!important;
  font-weight:800!important;
  color:#111827!important;
}

body.single-product .bpe-summary .nbp-warranty-inline .bpe-warranty-primary{
  display:flex!important;
  align-items:flex-start!important;
  gap:9px!important;
  min-width:0!important;
}

body.single-product .bpe-summary .nbp-warranty-inline .bpe-warranty-shield{
  display:grid!important;
  place-items:center!important;
  flex:0 0 18px!important;
  width:18px!important;
  height:18px!important;
  margin-top:1px!important;
  color:var(--bpe-accent)!important;
}

body.single-product .bpe-summary .nbp-warranty-inline .bpe-warranty-shield svg{
  width:18px!important;
  height:18px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

body.single-product .bpe-summary .nbp-warranty-inline .bpe-warranty-primary-copy{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:baseline!important;
  gap:5px!important;
  min-width:0!important;
}

body.single-product .bpe-summary .nbp-warranty-inline .bpe-warranty-primary-copy strong{
  margin:0!important;
  color:#172033!important;
  font-size:12.5px!important;
  line-height:1.45!important;
  font-weight:780!important;
}

body.single-product .bpe-summary .nbp-warranty-inline .bpe-warranty-brand-inline{
  color:#667085!important;
  font-size:11.5px!important;
  line-height:1.4!important;
  font-weight:600!important;
}

body.single-product .bpe-summary .nbp-warranty-inline .bpe-warranty-note{
  margin:9px 0 0 27px!important;
  color:#667085!important;
  font-size:11.8px!important;
  line-height:1.58!important;
  max-width:60ch!important;
}

body.single-product .bpe-summary .nbp-warranty-inline .nbpfeat-warranty-brand{
  display:none!important;
}

@media(max-width:767px){
  body.single-product .bpe-summary .nbp-warranty-inline{
    padding:14px 14px 14px 16px!important;
  }
  body.single-product .bpe-summary .nbp-warranty-inline .bpe-warranty-note{
    margin-left:27px!important;
  }
}

/* === BPE v0.30.52 — subtle Price in Kenya context === */
body.single-product .bpe-price-context{
  background:transparent!important;
  padding:0!important;
}

body.single-product .bpe-price-context .bpe-inner{
  padding-top:14px!important;
  padding-bottom:6px!important;
}

body.single-product .bpe-price-context-bar{
  padding:14px 16px!important;
  background:#fff!important;
  border:1px solid #e5e9ef!important;
  border-radius:14px!important;
  box-shadow:none!important;
}

body.single-product .bpe-price-context-copy{
  display:flex!important;
  align-items:baseline!important;
  justify-content:space-between!important;
  gap:16px!important;
}

body.single-product .bpe-price-context-title{
  margin:0!important;
  color:#172033!important;
  font-size:15px!important;
  line-height:1.45!important;
  font-weight:760!important;
  letter-spacing:-.01em!important;
}

body.single-product .bpe-price-context-meta{
  display:flex!important;
  align-items:baseline!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:5px 9px!important;
  white-space:nowrap!important;
}

body.single-product .bpe-price-context-prefix{
  color:#667085!important;
  font-size:11px!important;
  font-weight:600!important;
}

body.single-product .bpe-price-context-price,
body.single-product .bpe-price-context-price .amount{
  color:#172033!important;
  font-size:16px!important;
  line-height:1.35!important;
  font-weight:820!important;
}

body.single-product .bpe-price-context-stock{
  position:relative!important;
  padding-left:9px!important;
  color:#667085!important;
  font-size:10.5px!important;
  line-height:1.35!important;
  font-weight:650!important;
}

body.single-product .bpe-price-context-stock::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:50%!important;
  width:5px!important;
  height:5px!important;
  border-radius:50%!important;
  transform:translateY(-50%)!important;
  background:#98a2b3!important;
}

body.single-product .bpe-price-context-stock.is-in-stock::before{
  background:#16a34a!important;
}

body.single-product .bpe-price-context-stock.is-out-of-stock::before{
  background:#c2413a!important;
}

body.single-product .bpe-price-context-details{
  margin-top:11px!important;
  padding-top:10px!important;
  border-top:1px solid #edf0f4!important;
}

body.single-product .bpe-price-context-details summary{
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  width:max-content!important;
  max-width:100%!important;
  list-style:none!important;
  cursor:pointer!important;
  color:var(--bpe-accent)!important;
  font-size:11.5px!important;
  line-height:1.4!important;
  font-weight:720!important;
  user-select:none!important;
}

body.single-product .bpe-price-context-details summary::-webkit-details-marker{
  display:none!important;
}

body.single-product .bpe-price-context-details summary::after{
  content:"+"!important;
  margin-left:2px!important;
  color:#98a2b3!important;
  font-size:13px!important;
  font-weight:700!important;
}

body.single-product .bpe-price-context-details[open] summary::after{
  content:"−"!important;
}

body.single-product .bpe-price-context-count{
  color:#98a2b3!important;
  font-weight:600!important;
}

body.single-product .bpe-price-context-list{
  margin-top:8px!important;
}

body.single-product .bpe-price-context-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:14px!important;
  min-height:38px!important;
  padding:7px 0!important;
  border-bottom:1px solid #f0f2f5!important;
}

body.single-product .bpe-price-context-row:last-child{
  border-bottom:0!important;
  padding-bottom:0!important;
}

body.single-product .bpe-price-context-row.is-active{
  font-weight:700!important;
}

body.single-product .bpe-price-context-row.is-active .bpe-price-context-row-name::before{
  content:""!important;
  display:inline-block!important;
  width:5px!important;
  height:5px!important;
  margin-right:7px!important;
  border-radius:50%!important;
  background:var(--bpe-accent)!important;
  vertical-align:middle!important;
}

body.single-product .bpe-price-context-row-name{
  min-width:0!important;
  color:#344054!important;
  font-size:11.5px!important;
  line-height:1.45!important;
}

body.single-product .bpe-price-context-row-name a{
  color:inherit!important;
  text-decoration:none!important;
}

body.single-product .bpe-price-context-row-name a:hover{
  color:var(--bpe-accent)!important;
  text-decoration:underline!important;
  text-underline-offset:2px!important;
}

body.single-product .bpe-price-context-row-meta{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:9px!important;
  white-space:nowrap!important;
}

body.single-product .bpe-price-context-row-meta strong,
body.single-product .bpe-price-context-row-meta strong .amount{
  color:#344054!important;
  font-size:11.5px!important;
  line-height:1.4!important;
  font-weight:750!important;
}

body.single-product .bpe-price-context-row-meta span{
  color:#667085!important;
  font-size:9.5px!important;
  line-height:1.3!important;
  font-weight:650!important;
}

body.single-product .bpe-price-context-row-meta .is-in-stock{
  color:#15803d!important;
}

body.single-product .bpe-price-context-row-meta .is-out-of-stock{
  color:#98a2b3!important;
}

body.single-product .bpe-price-context-row.is-unavailable{
  opacity:.62!important;
}

@media(max-width:767px){
  body.single-product .bpe-price-context .bpe-inner{
    padding-top:10px!important;
    padding-bottom:4px!important;
  }

  body.single-product .bpe-price-context-bar{
    padding:13px 14px!important;
    border-radius:12px!important;
  }

  body.single-product .bpe-price-context-copy{
    display:block!important;
  }

  body.single-product .bpe-price-context-title{
    font-size:14px!important;
  }

  body.single-product .bpe-price-context-meta{
    justify-content:flex-start!important;
    margin-top:5px!important;
  }

  body.single-product .bpe-price-context-row{
    gap:10px!important;
  }

  body.single-product .bpe-price-context-row-meta{
    display:grid!important;
    justify-items:end!important;
    gap:1px!important;
  }
}

/* === BPE v0.30.53 — Price in Kenya, less-is-more refinement === */
body.single-product .bpe-price-context{
  background:transparent!important;
  padding:0!important;
}

body.single-product .bpe-price-context .bpe-inner{
  padding-top:0!important;
  padding-bottom:26px!important;
}

body.single-product .bpe-price-context-line{
  padding:0 0 16px!important;
  background:transparent!important;
  border:0!important;
  border-bottom:1px solid #e8ebf0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

body.single-product .bpe-price-context-copy{
  display:block!important;
}

body.single-product .bpe-price-context-title{
  margin:0 0 6px!important;
  color:#172033!important;
  font-size:13px!important;
  line-height:1.4!important;
  font-weight:800!important;
  letter-spacing:0!important;
}

body.single-product .bpe-price-context-sentence{
  margin:0!important;
  color:#667085!important;
  font-size:13px!important;
  line-height:1.6!important;
}

body.single-product .bpe-price-context-product{
  color:#344054!important;
  font-weight:650!important;
}

body.single-product .bpe-price-context-price,
body.single-product .bpe-price-context-price .amount{
  color:#172033!important;
  font-size:13.5px!important;
  line-height:1.45!important;
  font-weight:800!important;
}

body.single-product .bpe-price-context-details{
  margin:9px 0 0!important;
  padding:0!important;
  border:0!important;
}

body.single-product .bpe-price-context-details summary{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  list-style:none!important;
  cursor:pointer!important;
  color:var(--bpe-accent)!important;
  font-size:11.5px!important;
  line-height:1.4!important;
  font-weight:700!important;
  user-select:none!important;
}

body.single-product .bpe-price-context-details summary::-webkit-details-marker{
  display:none!important;
}

body.single-product .bpe-price-context-details summary::after{
  content:"+"!important;
  color:#98a2b3!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:700!important;
}

body.single-product .bpe-price-context-details[open] summary::after{
  content:"−"!important;
}

body.single-product .bpe-price-context-count{
  display:inline-grid!important;
  place-items:center!important;
  min-width:17px!important;
  height:17px!important;
  padding:0 5px!important;
  border-radius:999px!important;
  background:#f2f4f7!important;
  color:#667085!important;
  font-size:9.5px!important;
  font-weight:700!important;
}

body.single-product .bpe-price-context-list{
  margin-top:9px!important;
  max-width:680px!important;
}

body.single-product .bpe-price-context-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:18px!important;
  min-height:34px!important;
  padding:7px 0!important;
  border-bottom:1px solid #f0f2f5!important;
}

body.single-product .bpe-price-context-row:last-child{
  border-bottom:0!important;
}

body.single-product .bpe-price-context-row-name{
  min-width:0!important;
  color:#475467!important;
  font-size:11.5px!important;
  line-height:1.45!important;
}

body.single-product .bpe-price-context-row-name a{
  color:inherit!important;
  text-decoration:none!important;
}

body.single-product .bpe-price-context-row-name a:hover{
  color:var(--bpe-accent)!important;
  text-decoration:underline!important;
  text-underline-offset:2px!important;
}

body.single-product .bpe-price-context-row-meta{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  white-space:nowrap!important;
}

body.single-product .bpe-price-context-row-meta strong,
body.single-product .bpe-price-context-row-meta strong .amount{
  color:#344054!important;
  font-size:11.5px!important;
  line-height:1.4!important;
  font-weight:750!important;
}

body.single-product .bpe-price-context-row-meta span{
  color:#98a2b3!important;
  font-size:9.5px!important;
  line-height:1.3!important;
  font-weight:650!important;
}

body.single-product .bpe-price-context-row.is-active .bpe-price-context-row-name::before,
body.single-product .bpe-price-context-stock,
body.single-product .bpe-price-context-meta,
body.single-product .bpe-price-context-prefix{
  display:none!important;
}

body.single-product .bpe-price-context-row.is-unavailable{
  opacity:.56!important;
}

@media(max-width:767px){
  body.single-product .bpe-price-context .bpe-inner{
    padding-bottom:20px!important;
  }

  body.single-product .bpe-price-context-line{
    padding-bottom:14px!important;
  }

  body.single-product .bpe-price-context-title{
    font-size:12.5px!important;
  }

  body.single-product .bpe-price-context-sentence{
    font-size:12.5px!important;
  }

  body.single-product .bpe-price-context-row{
    gap:10px!important;
  }
}

/* === BPE v0.30.54 — all selections pricing grid === */
body.single-product .bpe-price-options{
  background:transparent!important;
  padding:0!important;
}

body.single-product .bpe-price-options .bpe-inner{
  padding-top:0!important;
  padding-bottom:28px!important;
}

body.single-product .bpe-price-options-head{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:18px!important;
  margin-bottom:14px!important;
}

body.single-product .bpe-price-options-head h2{
  margin:0 0 5px!important;
  color:#172033!important;
  font-size:18px!important;
  line-height:1.35!important;
  font-weight:800!important;
  letter-spacing:-.012em!important;
}

body.single-product .bpe-price-options-head p{
  margin:0!important;
  color:#667085!important;
  font-size:12.5px!important;
  line-height:1.55!important;
}

body.single-product .bpe-price-options-head p strong{
  color:#344054!important;
  font-weight:700!important;
}

body.single-product .bpe-price-options-head p span,
body.single-product .bpe-price-options-head p .amount{
  color:#172033!important;
  font-weight:800!important;
}

body.single-product .bpe-price-options-count{
  flex:0 0 auto!important;
  color:#98a2b3!important;
  font-size:10.5px!important;
  line-height:1.3!important;
  font-weight:700!important;
}

body.single-product .bpe-price-options-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px!important;
}

body.single-product .bpe-price-option-card{
  min-width:0!important;
  padding:12px 13px!important;
  background:#fff!important;
  border:1px solid #e2e7ed!important;
  border-radius:12px!important;
  box-shadow:0 2px 8px rgba(15,23,42,.025)!important;
}

body.single-product .bpe-price-option-main{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:14px!important;
}

body.single-product .bpe-price-option-copy{
  min-width:0!important;
}

body.single-product .bpe-price-option-config{
  color:#273142!important;
  font-size:12px!important;
  line-height:1.4!important;
  font-weight:720!important;
}

body.single-product .bpe-price-option-config a{
  color:inherit!important;
  text-decoration:none!important;
}

body.single-product .bpe-price-option-config a:hover{
  color:var(--bpe-accent)!important;
}

body.single-product .bpe-price-option-color{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  min-width:0!important;
  margin-top:7px!important;
}

body.single-product .bpe-price-option-dot{
  display:block!important;
  flex:0 0 16px!important;
  width:16px!important;
  height:16px!important;
  border-radius:50%!important;
  border:1px solid rgba(15,23,42,.13)!important;
  background:#f2f4f7;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.28)!important;
}

body.single-product .bpe-price-option-color-name{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#667085!important;
  font-size:10.5px!important;
  line-height:1.35!important;
  font-weight:650!important;
}

body.single-product .bpe-price-option-hex{
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#98a2b3!important;
  font-family:inherit!important;
  font-size:9.5px!important;
  line-height:1.3!important;
  font-weight:600!important;
}

body.single-product .bpe-price-option-meta{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  gap:3px!important;
  text-align:right!important;
  white-space:nowrap!important;
}

body.single-product .bpe-price-option-meta strong,
body.single-product .bpe-price-option-meta strong .amount{
  color:#172033!important;
  font-size:12px!important;
  line-height:1.35!important;
  font-weight:800!important;
}

body.single-product .bpe-price-option-meta span{
  position:relative!important;
  padding-left:8px!important;
  color:#667085!important;
  font-size:9.5px!important;
  line-height:1.3!important;
  font-weight:650!important;
}

body.single-product .bpe-price-option-meta span::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:50%!important;
  width:4px!important;
  height:4px!important;
  border-radius:50%!important;
  transform:translateY(-50%)!important;
  background:#98a2b3!important;
}

body.single-product .bpe-price-option-meta .is-in-stock{
  color:#15803d!important;
}

body.single-product .bpe-price-option-meta .is-in-stock::before{
  background:#16a34a!important;
}

body.single-product .bpe-price-option-meta .is-out-of-stock{
  color:#98a2b3!important;
}

body.single-product .bpe-price-option-card.is-unavailable{
  background:#fbfcfd!important;
  opacity:.68!important;
}

@media(max-width:767px){
  body.single-product .bpe-price-options .bpe-inner{
    padding-bottom:22px!important;
  }

  body.single-product .bpe-price-options-head{
    align-items:flex-start!important;
    margin-bottom:11px!important;
  }

  body.single-product .bpe-price-options-head h2{
    font-size:16px!important;
  }

  body.single-product .bpe-price-options-count{
    margin-top:3px!important;
  }

  body.single-product .bpe-price-options-grid{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }

  body.single-product .bpe-price-option-card{
    padding:11px 12px!important;
  }
}

/* === BPE v0.30.55 — natural pricing copy + future-option states === */

/* Natural heading sentence. */
body.single-product .bpe-price-options-intro{
  max-width:880px!important;
}

/* No decorative bullets/dots around the price/status meta. */
body.single-product .bpe-price-option-meta::before,
body.single-product .bpe-price-option-meta::after,
body.single-product .bpe-price-option-meta strong::before,
body.single-product .bpe-price-option-meta strong::after,
body.single-product .bpe-price-option-meta .amount::before,
body.single-product .bpe-price-option-meta .amount::after,
body.single-product .bpe-price-option-meta span::before,
body.single-product .bpe-price-option-meta span::after{
  content:none!important;
  display:none!important;
}

/* Keep status text clean; no dot marker. */
body.single-product .bpe-price-option-meta span{
  padding-left:0!important;
}

/* Future selections remain real visible options rather than looking disabled. */
body.single-product .bpe-price-option-card.is-future-option{
  opacity:1!important;
  background:#fbfcfe!important;
  border-color:#e4e8ef!important;
  box-shadow:none!important;
}

body.single-product .bpe-price-option-card.is-future-option .bpe-price-option-config{
  color:#475467!important;
}

body.single-product .bpe-price-option-coming-price{
  color:#667085!important;
  font-size:10.5px!important;
  font-weight:700!important;
}

body.single-product .bpe-price-option-meta .is-future{
  color:#7c8798!important;
  font-size:9.5px!important;
  font-weight:700!important;
}

body.single-product .bpe-price-option-meta .is-in-stock{
  color:#15803d!important;
}

/* Retire previous unavailable treatment so future options stay legible. */
body.single-product .bpe-price-option-card.is-unavailable{
  opacity:1!important;
  background:#fbfcfe!important;
}

/* === BPE v0.30.56 — richer Kenya pricing context + 6-option disclosure === */
body.single-product .bpe-price-options-intro{
  max-width:980px!important;
  color:#667085!important;
  font-size:12.7px!important;
  line-height:1.72!important;
}

body.single-product .bpe-price-options-intro strong{
  color:#344054!important;
  font-weight:760!important;
}

body.single-product .bpe-price-options-intro span,
body.single-product .bpe-price-options-intro .amount{
  color:#172033!important;
  font-weight:820!important;
}

/* Keep the page short by default when the catalogue has many combinations. */
body.single-product .bpe-price-option-card.is-extra-option{
  display:none!important;
}

body.single-product .bpe-price-options.is-expanded .bpe-price-option-card.is-extra-option{
  display:block!important;
}

body.single-product .bpe-price-options-toggle{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  margin:11px 0 0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--bpe-accent)!important;
  box-shadow:none!important;
  font-size:11.5px!important;
  line-height:1.4!important;
  font-weight:750!important;
  cursor:pointer!important;
}

body.single-product .bpe-price-options-toggle:hover{
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}

body.single-product .bpe-price-options-toggle svg{
  width:14px!important;
  height:14px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  transition:transform .16s ease!important;
}

body.single-product .bpe-price-options-toggle[aria-expanded="true"] svg{
  transform:rotate(180deg)!important;
}

@media(max-width:767px){
  body.single-product .bpe-price-options-intro{
    font-size:12.3px!important;
    line-height:1.68!important;
  }
}

/* === BPE v0.30.57 — catalogue-varied Price in Kenya copy === */
body.single-product .bpe-price-options-intro{
  max-width:960px!important;
}

body.single-product .bpe-price-options-update-note{
  color:#98a2b3!important;
  font-size:11px!important;
  white-space:normal!important;
}

body.single-product .bpe-price-options-update-note::before{
  content:" "!important;
}

/* === BPE v0.30.58 — product hero stock-display cleanup ===
 * Bwonjo does not show WooCommerce stock badges/messages in the hero.
 * Availability is communicated by purchase controls, Back in Stock, and the
 * Price in Kenya options section.
 */
body.single-product .bpe-summary > .stock,
body.single-product .bpe-summary > p.stock,
body.single-product .bpe-cart-area > .stock,
body.single-product .bpe-cart-area p.stock,
body.single-product .bpe-cart-area .woocommerce-variation-availability,
body.single-product .bpe-cart-area .woocommerce-variation-availability .stock,
body.single-product .bpe-cart-area .woocommerce-info,
body.single-product .bpe-cart-area .woocommerce-error,
body.single-product .bpe-cart-area .woocommerce-message{
  display:none!important;
}

/* Retire the old custom hero stock container completely. */
body.single-product .bpe-stock{
  display:none!important;
}

/* When a product has no purchasable option, there is no empty cart-area gap. */
body.single-product .bpe-cart-area:empty{
  display:none!important;
}

/* === BPE v0.30.59 — option ranking + useful pricing insight labels === */

/* Useful micro-labels, not promotional badges. */
body.single-product .bpe-price-option-badges{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:5px!important;
  margin-top:8px!important;
}

body.single-product .bpe-price-option-badge{
  display:inline-flex!important;
  align-items:center!important;
  min-height:20px!important;
  padding:3px 7px!important;
  border:1px solid #e3e7ed!important;
  border-radius:999px!important;
  background:#f8fafc!important;
  color:#667085!important;
  font-size:9.5px!important;
  line-height:1.25!important;
  font-weight:700!important;
  white-space:nowrap!important;
}

body.single-product .bpe-price-option-badge.is-affordable{
  border-color:rgba(27,53,136,.16)!important;
  background:rgba(27,53,136,.055)!important;
  color:var(--bpe-accent)!important;
}

body.single-product .bpe-price-option-badge.is-lowest,
body.single-product .bpe-price-option-badge.is-price-down{
  border-color:rgba(21,128,61,.16)!important;
  background:rgba(21,128,61,.055)!important;
  color:#15803d!important;
}

body.single-product .bpe-price-option-badge.is-price-up{
  border-color:rgba(180,83,9,.16)!important;
  background:rgba(180,83,9,.055)!important;
  color:#a04f0b!important;
}

/* The sort is server-side; this simply makes the leading in-stock options feel
   slightly more definite without turning them into loud cards. */
body.single-product .bpe-price-option-card:not(.is-future-option){
  border-color:#dce3eb!important;
}

@media(max-width:767px){
  body.single-product .bpe-price-option-badges{
    margin-top:7px!important;
  }
}


/* ========================================================================
   BPE v0.30.60 — Premium Product Page Visual System
   Visual-only refresh. Existing Bwonjo structure, content and behavior stay
   intact; this layer improves hierarchy, depth, polish and interaction.
   ======================================================================== */

body.single-product .bpe-product{
  --bpe-premium-blue:#2549B8;
  --bpe-premium-blue-deep:#1B3588;
  --bpe-premium-ink:#111827;
  --bpe-premium-copy:#475467;
  --bpe-premium-line:#E7EAF0;
  --bpe-premium-surface:#FFFFFF;
  --bpe-premium-soft:#F7F8FB;
  --bpe-premium-soft-blue:#F4F7FF;
  --bpe-premium-shadow:0 18px 48px rgba(17,24,39,.075);
  --bpe-premium-shadow-soft:0 8px 28px rgba(17,24,39,.055);
}

/* ---------- Overall page rhythm ---------- */
body.single-product .bpe-section{
  position:relative!important;
  padding:72px 0!important;
  border-top:0!important;
  overflow:clip;
}

body.single-product .bpe-section + .bpe-section{
  border-top:1px solid rgba(17,24,39,.055)!important;
}

body.single-product .bpe-inner{
  position:relative;
  z-index:1;
}

body.single-product .bpe-section-title{
  position:relative;
  margin:0 0 30px!important;
  padding-left:18px!important;
  color:var(--bpe-premium-ink)!important;
  font-size:clamp(24px,2vw,31px)!important;
  line-height:1.12!important;
  font-weight:820!important;
  letter-spacing:-.035em!important;
}

body.single-product .bpe-section-title::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:.08em!important;
  width:4px!important;
  height:.92em!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,var(--bpe-premium-blue),var(--bpe-premium-blue-deep))!important;
  box-shadow:0 6px 16px rgba(37,73,184,.24)!important;
}

body.single-product .bpe-section-title::after{
  display:none!important;
}

body.single-product .bpe-section-subtitle{
  margin:-18px 0 28px!important;
  padding-left:18px!important;
  color:#7B8494!important;
  font-size:13px!important;
  line-height:1.65!important;
}

/* ---------- Hero / buying area ---------- */
body.single-product .bpe-buybox{
  position:relative!important;
  padding:34px 0 70px!important;
  background:
    radial-gradient(circle at 76% 9%,rgba(37,73,184,.075),transparent 27%),
    linear-gradient(180deg,#fff 0%,#fbfcff 100%)!important;
}

body.single-product .bpe-buybox::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(37,73,184,.18),transparent);
}

body.single-product .bpe-buybox-grid{
  gap:64px!important;
}

body.single-product .bpe-gallery-column{
  position:relative;
}

body.single-product .bpe-gallery{
  border:1px solid rgba(17,24,39,.06)!important;
  border-radius:26px!important;
  background:
    radial-gradient(circle at 50% 34%,#fff 0%,#fff 48%,#f8faff 100%)!important;
  box-shadow:0 22px 64px rgba(17,24,39,.055)!important;
  overflow:hidden!important;
}

body.single-product .bpe-summary-column{
  border:1px solid rgba(17,24,39,.075)!important;
  border-radius:26px!important;
  background:rgba(255,255,255,.92)!important;
  box-shadow:var(--bpe-premium-shadow)!important;
  backdrop-filter:saturate(1.06) blur(6px);
}

body.single-product .bpe-summary{
  padding:30px!important;
}

body.single-product .bpe-summary .product_title{
  color:#0E1525!important;
  font-size:clamp(30px,3.1vw,46px)!important;
  line-height:1.04!important;
  letter-spacing:-.043em!important;
  font-weight:830!important;
}

body.single-product .bpe-brand{
  margin-bottom:10px!important;
  color:var(--bpe-premium-blue)!important;
  font-size:11px!important;
  letter-spacing:.14em!important;
}

body.single-product .bpe-product-meta-line{
  margin-top:13px!important;
  color:#7D8797!important;
  font-size:12.5px!important;
}

body.single-product .bpe-price-stock{
  margin-top:23px!important;
  padding-top:21px!important;
  border-top:1px solid var(--bpe-premium-line)!important;
}

body.single-product .bpe-price .price,
body.single-product .bpe-price .amount{
  color:#111827!important;
  font-weight:850!important;
  letter-spacing:-.025em!important;
}

body.single-product .bpe-short-description{
  color:#667085!important;
  font-size:13.5px!important;
  line-height:1.72!important;
}

/* Make the purchase controls feel deliberately designed rather than default HTML */
body.single-product .bpe-summary button,
body.single-product .bpe-summary .button{
  transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease!important;
}

body.single-product .bpe-summary button:hover,
body.single-product .bpe-summary .button:hover{
  transform:translateY(-1px);
}

body.single-product .bpe-summary .single_add_to_cart_button{
  box-shadow:0 10px 24px rgba(37,73,184,.18)!important;
}

/* ---------- Quick Specs ---------- */
body.single-product .bpe-at-a-glance{
  background:
    radial-gradient(circle at 8% 0%,rgba(37,73,184,.055),transparent 26%),
    #F8FAFD!important;
}

body.single-product .bpe-glance-grid{
  gap:12px!important;
  border:0!important;
  border-radius:0!important;
  overflow:visible!important;
  background:transparent!important;
}

body.single-product .bpe-glance-item{
  position:relative!important;
  min-height:118px!important;
  padding:22px 21px!important;
  border:1px solid #E6EAF0!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 8px 24px rgba(17,24,39,.035)!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
}

body.single-product .bpe-glance-item::before{
  content:"";
  position:absolute;
  left:20px;
  top:0;
  width:30px;
  height:3px;
  border-radius:0 0 999px 999px;
  background:rgba(37,73,184,.78);
}

body.single-product .bpe-glance-item:hover{
  transform:translateY(-3px);
  border-color:rgba(37,73,184,.18)!important;
  box-shadow:0 14px 36px rgba(17,24,39,.075)!important;
}

body.single-product .bpe-glance-label{
  color:#8A94A4!important;
  font-size:10px!important;
  letter-spacing:.12em!important;
}

body.single-product .bpe-glance-value{
  margin-top:9px!important;
  color:#172033!important;
  font-size:16.5px!important;
  line-height:1.42!important;
  font-weight:740!important;
}

/* ---------- Price in Kenya ---------- */
body.single-product .bpe-price-options{
  position:relative!important;
  padding:64px 0!important;
  background:
    linear-gradient(135deg,#F7F9FE 0%,#FFFFFF 52%,#F8FAFD 100%)!important;
  border-top:1px solid rgba(17,24,39,.05)!important;
  border-bottom:1px solid rgba(17,24,39,.05)!important;
}

body.single-product .bpe-price-options .bpe-inner{
  padding-top:0!important;
  padding-bottom:0!important;
}

body.single-product .bpe-price-options-head{
  margin-bottom:25px!important;
}

body.single-product .bpe-price-options-head h2{
  color:#101828!important;
  font-size:clamp(24px,2vw,30px)!important;
  letter-spacing:-.035em!important;
}

body.single-product .bpe-price-options-intro{
  max-width:880px!important;
  color:#697386!important;
  font-size:13px!important;
  line-height:1.78!important;
}

body.single-product .bpe-price-options-grid{
  gap:14px!important;
}

body.single-product .bpe-price-option-card{
  position:relative!important;
  overflow:hidden!important;
  border:1px solid #E4E8EF!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 7px 24px rgba(17,24,39,.035)!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}

body.single-product .bpe-price-option-card::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  background:transparent;
  transition:background .18s ease;
}

body.single-product .bpe-price-option-card:not(.is-future-option)::before{
  background:linear-gradient(180deg,#315CCC,#2549B8);
}

body.single-product .bpe-price-option-card:hover{
  transform:translateY(-2px);
  border-color:rgba(37,73,184,.2)!important;
  box-shadow:0 14px 38px rgba(17,24,39,.07)!important;
}

body.single-product .bpe-price-option-config{
  color:#172033!important;
  font-weight:760!important;
}

body.single-product .bpe-price-option-meta .amount{
  font-weight:850!important;
  color:#111827!important;
}

body.single-product .bpe-price-option-badge{
  min-height:21px!important;
  padding:3px 8px!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.45)!important;
}

/* ---------- Overview ---------- */
body.single-product .bpe-description{
  background:#FFFFFF!important;
}

body.single-product .bpe-description .bpe-inner{
  max-width:1180px;
}

body.single-product .bpe-description .bpe-richtext{
  position:relative!important;
  padding:34px 38px!important;
  border:1px solid #E7EAF0!important;
  border-radius:22px!important;
  background:
    linear-gradient(180deg,#FFFFFF 0%,#FCFCFD 100%)!important;
  box-shadow:0 12px 34px rgba(17,24,39,.045)!important;
  color:#465166!important;
  font-size:16px!important;
  line-height:1.85!important;
}

body.single-product .bpe-description .bpe-richtext::before{
  content:"";
  position:absolute;
  left:0;
  top:28px;
  bottom:28px;
  width:3px;
  border-radius:0 999px 999px 0;
  background:linear-gradient(180deg,var(--bpe-premium-blue),rgba(37,73,184,.15));
}

body.single-product .bpe-description .bpe-richtext h2,
body.single-product .bpe-description .bpe-richtext h3,
body.single-product .bpe-description .bpe-richtext h4{
  color:#111827!important;
  letter-spacing:-.02em!important;
}

/* ---------- Highlights ---------- */
body.single-product .bpe-highlights{
  background:
    radial-gradient(circle at 100% 0%,rgba(37,73,184,.055),transparent 28%),
    #F7F8FB!important;
}

body.single-product .bpe-highlight-grid{
  gap:18px!important;
}

body.single-product .bpe-highlight-card{
  position:relative!important;
  min-height:150px!important;
  padding:26px!important;
  overflow:hidden!important;
  border:1px solid #E3E7EE!important;
  border-radius:20px!important;
  background:#FFFFFF!important;
  box-shadow:0 8px 28px rgba(17,24,39,.035)!important;
}

body.single-product .bpe-highlight-card::after{
  content:"";
  position:absolute;
  right:-42px;
  bottom:-52px;
  width:112px;
  height:112px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(37,73,184,.09),rgba(37,73,184,0) 68%);
  pointer-events:none;
}

body.single-product .bpe-highlight-card:hover{
  transform:translateY(-4px)!important;
  border-color:rgba(37,73,184,.2)!important;
  box-shadow:0 16px 40px rgba(17,24,39,.075)!important;
}

body.single-product .bpe-highlight-card h4{
  color:#162033!important;
  font-size:18px!important;
  line-height:1.3!important;
  letter-spacing:-.015em!important;
}

body.single-product .bpe-highlight-card p{
  color:#667085!important;
  line-height:1.68!important;
}

/* ---------- Product videos ---------- */
body.single-product .bpe-videos{
  background:#FFFFFF!important;
}

body.single-product .bpe-video-card{
  overflow:hidden!important;
  border:1px solid #E4E8EF!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:0 8px 28px rgba(17,24,39,.045)!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
}

body.single-product .bpe-video-card:hover{
  transform:translateY(-4px)!important;
  border-color:rgba(37,73,184,.22)!important;
  box-shadow:0 18px 46px rgba(17,24,39,.09)!important;
}

body.single-product .bpe-video-copy{
  padding:17px 18px 18px!important;
}

body.single-product .bpe-video-title{
  color:#172033!important;
  font-weight:760!important;
  letter-spacing:-.01em!important;
}

/* ---------- Pros & Cons ---------- */
body.single-product .bpe-pros-cons{
  background:#F7F8FB!important;
}

body.single-product .bpe-pros-cons-grid{
  gap:20px!important;
}

body.single-product .bpe-pros-cons-column{
  position:relative!important;
  padding:27px!important;
  border:1px solid #E3E7ED!important;
  border-radius:21px!important;
  background:#FFFFFF!important;
  box-shadow:0 9px 30px rgba(17,24,39,.04)!important;
}

body.single-product .bpe-pros-cons-column:first-child{
  background:linear-gradient(180deg,#FFFFFF 0%,#FAFFFC 100%)!important;
}

body.single-product .bpe-pros-cons-column:last-child{
  background:linear-gradient(180deg,#FFFFFF 0%,#FFFCFC 100%)!important;
}

body.single-product .bpe-pros-cons-column h4{
  margin-bottom:18px!important;
  color:#172033!important;
  font-size:19px!important;
  letter-spacing:-.018em!important;
}

body.single-product .bpe-pros-list,
body.single-product .bpe-cons-list{
  gap:13px!important;
}

body.single-product .bpe-procon-icon{
  width:24px!important;
  height:24px!important;
  flex-basis:24px!important;
  box-shadow:inset 0 0 0 1px rgba(17,24,39,.04)!important;
}

/* ---------- What's in the Box ---------- */
body.single-product .bpe-in-box{
  background:#FFFFFF!important;
}

body.single-product .bpe-box-list{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  margin:0!important;
}

body.single-product .bpe-box-list li{
  min-height:56px!important;
  padding:15px 16px!important;
  border:1px solid #E7EAF0!important;
  border-radius:15px!important;
  background:#FAFBFC!important;
  color:#344054!important;
  font-weight:620!important;
  transition:border-color .18s ease,background .18s ease,transform .18s ease!important;
}

body.single-product .bpe-box-list li:hover{
  transform:translateY(-1px);
  border-color:rgba(37,73,184,.18)!important;
  background:#F7F9FF!important;
}

body.single-product .bpe-box-mark{
  box-shadow:0 4px 12px rgba(37,73,184,.12)!important;
}

/* ---------- Full Specifications ---------- */
body.single-product .bpe-specifications{
  background:
    radial-gradient(circle at 4% 4%,rgba(37,73,184,.045),transparent 22%),
    #F7F8FB!important;
}

body.single-product .bpe-spec-groups{
  gap:16px!important;
}

body.single-product .bpe-spec-group{
  overflow:hidden!important;
  border:1px solid #E3E7ED!important;
  border-radius:19px!important;
  background:#FFFFFF!important;
  box-shadow:0 7px 24px rgba(17,24,39,.03)!important;
}

body.single-product .bpe-spec-group h4{
  margin:0!important;
  padding:18px 20px!important;
  border-bottom:1px solid #E7EAF0!important;
  background:linear-gradient(180deg,#FCFCFD 0%,#F9FAFB 100%)!important;
  color:#182230!important;
  font-size:16px!important;
  font-weight:780!important;
  letter-spacing:-.012em!important;
}

body.single-product .bpe-spec-group dl{
  border-top:0!important;
}

body.single-product .bpe-spec-row{
  gap:34px!important;
  padding:13px 20px!important;
  border-bottom:1px solid #EEF0F3!important;
}

body.single-product .bpe-spec-row:last-child{
  border-bottom:0!important;
}

body.single-product .bpe-spec-row:nth-child(even){
  background:#FCFCFD!important;
}

body.single-product .bpe-spec-row dt{
  color:#7B8494!important;
  font-weight:560!important;
}

body.single-product .bpe-spec-row dd{
  color:#253044!important;
  font-weight:650!important;
}

/* ---------- Compare / history / reviews / accessories / more ---------- */
body.single-product .bpe-compare,
body.single-product .bpe-price-history,
body.single-product .bpe-more-brand,
body.single-product .bpe-more-consider{
  background:#F7F8FB!important;
}

body.single-product .bpe-compare-wrap,
body.single-product .bpe-ph-overview{
  border-radius:20px!important;
}

body.single-product .bpe-written-reviews,
body.single-product .bpe-frequently-bought{
  background:#FFFFFF!important;
}

/* ---------- Fine interaction polish ---------- */
body.single-product .bpe-product a{
  text-underline-offset:3px;
}

body.single-product .bpe-ui-link,
body.single-product .bpe-text-link{
  transition:color .15s ease,opacity .15s ease!important;
}

@media (prefers-reduced-motion:reduce){
  body.single-product .bpe-product *,
  body.single-product .bpe-product *::before,
  body.single-product .bpe-product *::after{
    scroll-behavior:auto!important;
    transition:none!important;
    animation:none!important;
  }
}

/* ---------- Tablet / mobile ---------- */
@media(max-width:1024px){
  body.single-product .bpe-section{
    padding:58px 0!important;
  }

  body.single-product .bpe-buybox-grid{
    gap:34px!important;
  }

  body.single-product .bpe-summary{
    padding:24px!important;
  }
}

@media(max-width:767px){
  body.single-product .bpe-buybox{
    padding:18px 0 46px!important;
    background:#FFFFFF!important;
  }

  body.single-product .bpe-section{
    padding:46px 0!important;
  }

  body.single-product .bpe-section-title{
    margin-bottom:22px!important;
    padding-left:14px!important;
    font-size:24px!important;
  }

  body.single-product .bpe-section-title::before{
    width:3px!important;
  }

  body.single-product .bpe-summary-column{
    border-radius:20px!important;
    box-shadow:0 12px 34px rgba(17,24,39,.07)!important;
  }

  body.single-product .bpe-summary{
    padding:20px!important;
  }

  body.single-product .bpe-gallery{
    border-radius:20px!important;
    box-shadow:0 10px 30px rgba(17,24,39,.045)!important;
  }

  body.single-product .bpe-summary .product_title{
    font-size:30px!important;
    line-height:1.08!important;
  }

  body.single-product .bpe-glance-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }

  body.single-product .bpe-glance-item{
    min-height:100px!important;
    padding:18px 16px!important;
    border-radius:15px!important;
  }

  body.single-product .bpe-price-options{
    padding:48px 0!important;
  }

  body.single-product .bpe-price-option-card{
    border-radius:15px!important;
  }

  body.single-product .bpe-description .bpe-richtext{
    padding:25px 21px!important;
    border-radius:17px!important;
    font-size:15px!important;
    line-height:1.78!important;
  }

  body.single-product .bpe-highlight-grid,
  body.single-product .bpe-pros-cons-grid{
    gap:12px!important;
  }

  body.single-product .bpe-highlight-card,
  body.single-product .bpe-pros-cons-column{
    padding:21px!important;
    border-radius:17px!important;
  }

  body.single-product .bpe-box-list{
    grid-template-columns:1fr!important;
  }

  body.single-product .bpe-spec-group{
    border-radius:16px!important;
  }

  body.single-product .bpe-spec-row{
    grid-template-columns:minmax(112px,38%) minmax(0,1fr)!important;
    gap:16px!important;
    padding:12px 15px!important;
  }

  body.single-product .bpe-spec-group h4{
    padding:16px!important;
  }
}


/* ========================================================================
   BPE v0.30.61 — Premium density pass + decision-first comparison
   ======================================================================== */

/* ---- Less dead white space across the whole product page ---- */
body.single-product .bpe-section{
  padding:46px 0!important;
}

body.single-product .bpe-section-title{
  margin-bottom:22px!important;
}

body.single-product .bpe-section-subtitle{
  margin:-12px 0 20px!important;
}

body.single-product .bpe-buybox{
  padding:24px 0 48px!important;
}

body.single-product .bpe-buybox-grid{
  gap:42px!important;
}

body.single-product .bpe-price-options{
  padding:44px 0!important;
}

body.single-product .bpe-price-options-head{
  margin-bottom:18px!important;
}

body.single-product .bpe-description .bpe-richtext{
  padding:28px 32px!important;
}

body.single-product .bpe-highlight-grid,
body.single-product .bpe-pros-cons-grid{
  gap:14px!important;
}

body.single-product .bpe-highlight-card{
  min-height:132px!important;
  padding:22px!important;
}

body.single-product .bpe-pros-cons-column{
  padding:23px!important;
}

body.single-product .bpe-spec-groups{
  gap:12px!important;
}

/* ---- Compare Similar Products: decision-first, not spreadsheet-first ---- */
body.single-product .bpe-compare{
  background:
    radial-gradient(circle at 86% 4%,rgba(37,73,184,.055),transparent 28%),
    #F7F8FB!important;
}

body.single-product .bpe-compare-wrap{
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

body.single-product .bpe-compare-decision-bar{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  margin-bottom:14px!important;
  padding:16px 18px!important;
  border:1px solid #E2E7EF!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#FFFFFF 0%,#F7F9FF 100%)!important;
  box-shadow:0 8px 24px rgba(17,24,39,.035)!important;
}

body.single-product .bpe-compare-decision-bar > div{
  min-width:0!important;
}

body.single-product .bpe-compare-eyebrow{
  display:block!important;
  margin-bottom:3px!important;
  color:var(--bpe-premium-blue)!important;
  font-size:9.5px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}

body.single-product .bpe-compare-decision-bar strong{
  display:block!important;
  color:#172033!important;
  font-size:17px!important;
  line-height:1.25!important;
  font-weight:800!important;
  letter-spacing:-.018em!important;
}

body.single-product .bpe-compare-decision-bar small{
  display:block!important;
  max-width:700px!important;
  margin-top:3px!important;
  color:#7A8495!important;
  font-size:11.5px!important;
  line-height:1.5!important;
}

body.single-product .bpe-compare-shared-toggle{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  flex:0 0 auto!important;
  min-height:36px!important;
  padding:0 12px!important;
  border:1px solid rgba(37,73,184,.18)!important;
  border-radius:999px!important;
  background:#FFFFFF!important;
  color:var(--bpe-premium-blue)!important;
  box-shadow:0 4px 12px rgba(17,24,39,.035)!important;
  font-size:11px!important;
  font-weight:760!important;
  cursor:pointer!important;
}

body.single-product .bpe-compare-shared-toggle svg{
  width:13px!important;
  height:13px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  transition:transform .16s ease!important;
}

body.single-product .bpe-compare-shared-toggle[aria-expanded="true"] svg{
  transform:rotate(180deg)!important;
}

body.single-product .bpe-compare-scroll{
  overflow-x:auto!important;
  border:1px solid #DEE4ED!important;
  border-radius:20px!important;
  background:#FFFFFF!important;
  box-shadow:0 14px 40px rgba(17,24,39,.055)!important;
}

body.single-product .bpe-compare-table{
  min-width:900px!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  background:#FFFFFF!important;
}

body.single-product .bpe-compare-table thead th{
  position:relative!important;
  padding:16px!important;
  background:#FFFFFF!important;
  border-bottom:1px solid #E8EBF0!important;
}

body.single-product .bpe-compare-table thead .bpe-compare-label{
  width:17%!important;
  background:#F8F9FB!important;
}

body.single-product .bpe-compare-table thead th:not(.bpe-compare-label)::before{
  content:"";
  position:absolute;
  top:0;
  left:16px;
  right:16px;
  height:3px;
  border-radius:0 0 999px 999px;
  background:linear-gradient(90deg,#315CCC,#2549B8);
  opacity:.82;
}

body.single-product .bpe-compare-control{
  height:auto!important;
  min-height:44px!important;
  margin-bottom:10px!important;
  align-items:center!important;
}

body.single-product .bpe-compare-current-label{
  min-height:34px!important;
  width:auto!important;
  padding:0 11px!important;
  border:1px solid rgba(37,73,184,.14)!important;
  border-radius:999px!important;
  background:#F5F7FF!important;
  color:var(--bpe-premium-blue)!important;
  font-size:10px!important;
  font-weight:780!important;
}

body.single-product .bpe-compare-inline-search label{
  margin-bottom:4px!important;
  font-size:9.5px!important;
  color:#8A94A4!important;
}

body.single-product .bpe-compare-inline-input{
  min-height:36px!important;
  border-radius:10px!important;
  font-size:12px!important;
  background:#FBFCFE!important;
}

body.single-product .bpe-compare-product{
  grid-template-rows:128px auto auto auto 24px!important;
  min-height:270px!important;
  gap:6px!important;
}

body.single-product .bpe-compare-image{
  width:128px!important;
  height:128px!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,#FFFFFF,#FAFBFD)!important;
}

body.single-product .bpe-compare-name{
  min-height:38px!important;
  max-width:220px!important;
  color:#172033!important;
  font-size:13px!important;
  line-height:1.35!important;
  font-weight:780!important;
}

body.single-product .bpe-compare-price{
  min-height:26px!important;
  color:#111827!important;
  font-size:15px!important;
  font-weight:850!important;
  letter-spacing:-.015em!important;
}

body.single-product .bpe-compare-recommendation{
  margin:0 auto!important;
  padding:3px 7px!important;
  border-radius:999px!important;
  background:#EEF7F0!important;
  color:#17753A!important;
  font-size:9px!important;
  font-weight:760!important;
}

body.single-product .bpe-compare-price-delta{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:max-content!important;
  min-height:20px!important;
  margin:0 auto!important;
  padding:2px 7px!important;
  border-radius:999px!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:760!important;
}

body.single-product .bpe-compare-price-delta.is-current{
  background:#F2F4F7!important;
  color:#667085!important;
}

body.single-product .bpe-compare-price-delta.is-lower{
  background:#EDF8F1!important;
  color:#15803D!important;
}

body.single-product .bpe-compare-price-delta.is-higher{
  background:#FFF7ED!important;
  color:#A04F0B!important;
}

body.single-product .bpe-compare-price-delta.is-same-price{
  background:#F4F6FA!important;
  color:#667085!important;
}

body.single-product .bpe-compare-view{
  min-height:24px!important;
  font-size:10.5px!important;
  font-weight:760!important;
}

/* The first view is deliberately about differences, not repeated data. */
body.single-product .bpe-compare-table tbody tr.is-shared-spec{
  display:none!important;
}

body.single-product .bpe-compare-wrap.is-showing-shared .bpe-compare-table tbody tr.is-shared-spec{
  display:table-row!important;
}

body.single-product .bpe-compare-table tbody th,
body.single-product .bpe-compare-table tbody td{
  padding:10px 14px!important;
  border-bottom:1px solid #EEF0F3!important;
  vertical-align:middle!important;
  font-size:12px!important;
  line-height:1.4!important;
}

body.single-product .bpe-compare-table tbody th{
  width:17%!important;
  background:#F8F9FB!important;
  color:#667085!important;
  font-size:10.5px!important;
  font-weight:720!important;
  letter-spacing:.01em!important;
}

body.single-product .bpe-compare-table tbody td{
  background:#FFFFFF!important;
  color:#344054!important;
  font-weight:620!important;
}

body.single-product .bpe-compare-table tbody tr.is-difference-spec:hover td{
  background:#F8FAFF!important;
}

body.single-product .bpe-compare-table tbody tr.is-difference-spec:hover th{
  background:#F3F6FC!important;
  color:#344054!important;
}

body.single-product .bpe-match-note,
body.single-product .bpe-same-badge{
  margin-left:5px!important;
  padding:2px 5px!important;
  border-radius:999px!important;
  background:#F2F4F7!important;
  color:#98A2B3!important;
  font-size:8px!important;
  font-weight:720!important;
}

body.single-product .bpe-compare-boolean{
  width:20px!important;
  height:20px!important;
  font-size:10px!important;
}

body.single-product .bpe-compare-sticky-shell{
  border-radius:13px!important;
  box-shadow:0 8px 22px rgba(17,24,39,.08)!important;
}

/* tighter transition between comparison and following content */
body.single-product .bpe-compare + .bpe-section{
  border-top-color:rgba(17,24,39,.035)!important;
}

@media(max-width:1024px){
  body.single-product .bpe-section{
    padding:40px 0!important;
  }

  body.single-product .bpe-buybox-grid{
    gap:30px!important;
  }
}

@media(max-width:767px){
  body.single-product .bpe-section{
    padding:34px 0!important;
  }

  body.single-product .bpe-buybox{
    padding:14px 0 34px!important;
  }

  body.single-product .bpe-section-title{
    margin-bottom:18px!important;
  }

  body.single-product .bpe-price-options{
    padding:36px 0!important;
  }

  body.single-product .bpe-description .bpe-richtext{
    padding:22px 18px!important;
  }

  body.single-product .bpe-compare-decision-bar{
    align-items:flex-start!important;
    gap:12px!important;
    padding:14px!important;
  }

  body.single-product .bpe-compare-decision-bar small{
    display:none!important;
  }

  body.single-product .bpe-compare-shared-toggle{
    min-height:32px!important;
    padding:0 9px!important;
    white-space:nowrap!important;
  }

  body.single-product .bpe-compare-scroll{
    border-radius:16px!important;
  }
}


/* ========================================================================
   BPE v0.30.62 — USD fallback + dual-currency display
   ======================================================================== */

body.single-product .bpe-dual-price{
  display:inline-flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:2px!important;
  vertical-align:middle!important;
}

body.single-product .bpe-usd-companion{
  display:block!important;
  margin-top:2px!important;
  color:#8A94A4!important;
  font-size:.66em!important;
  line-height:1.25!important;
  font-weight:650!important;
  letter-spacing:0!important;
  white-space:nowrap!important;
}

/* WooCommerce price HTML can append the USD companion directly. */
body.single-product .price > .bpe-usd-companion,
body.single-product .bpe-compare-price > .bpe-usd-companion,
body.single-product .bpe-product-card-price > .bpe-usd-companion{
  margin-top:3px!important;
}

/* Price in Kenya cards remain compact with KES visually dominant. */
body.single-product .bpe-price-option-meta .bpe-dual-price{
  align-items:flex-end!important;
}

body.single-product .bpe-price-option-meta .bpe-usd-companion{
  font-size:10px!important;
}

/* Price history summary remains readable even with the secondary currency. */
body.single-product .bpe-ph-overview .bpe-dual-price,
body.single-product .bpe-ph-log-row .bpe-dual-price{
  gap:1px!important;
}

body.single-product .bpe-ph-overview .bpe-usd-companion,
body.single-product .bpe-ph-log-row .bpe-usd-companion{
  font-size:9.5px!important;
}

@media(max-width:767px){
  body.single-product .bpe-usd-companion{
    font-size:.64em!important;
  }
}


/* ========================================================================
   BPE v0.30.63 — compact inline USD equivalent
   ======================================================================== */

body.single-product .bpe-dual-price{
  display:inline-flex!important;
  flex-direction:row!important;
  align-items:baseline!important;
  gap:8px!important;
  vertical-align:baseline!important;
}

body.single-product .bpe-usd-companion{
  display:inline-flex!important;
  align-items:baseline!important;
  gap:4px!important;
  margin:0!important;
  color:#98A2B3!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:600!important;
  letter-spacing:0!important;
  white-space:nowrap!important;
}

body.single-product .bpe-usd-label{
  color:#B0B7C3!important;
  font-size:9px!important;
  font-weight:700!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
}

body.single-product .price > .bpe-usd-companion,
body.single-product .bpe-compare-price > .bpe-usd-companion,
body.single-product .bpe-product-card-price > .bpe-usd-companion{
  display:inline-flex!important;
  margin-left:8px!important;
  margin-top:0!important;
  vertical-align:baseline!important;
}

body.single-product .bpe-price-option-meta .bpe-dual-price{
  align-items:baseline!important;
}

body.single-product .bpe-price-option-meta .bpe-usd-companion{
  font-size:9.5px!important;
}

body.single-product .bpe-price-option-meta .bpe-usd-label{
  display:none!important;
}

body.single-product .bpe-ph-overview .bpe-dual-price,
body.single-product .bpe-ph-log-row .bpe-dual-price{
  flex-wrap:wrap!important;
  gap:5px!important;
}

body.single-product .bpe-ph-overview .bpe-usd-companion,
body.single-product .bpe-ph-log-row .bpe-usd-companion{
  font-size:9px!important;
}

@media(max-width:767px){
  body.single-product .bpe-dual-price{
    gap:6px!important;
  }

  body.single-product .bpe-usd-companion{
    font-size:10px!important;
  }

  body.single-product .bpe-usd-label{
    font-size:8px!important;
  }
}


/* ========================================================================
   BPE v0.30.64 — refined USD companion
   Desktop: KES 129,800 · ≈ $1,000
   Mobile:  KES 129,800
            ≈ $1,000
   ======================================================================== */

body.single-product .bpe-dual-price{
  display:inline-flex!important;
  flex-direction:row!important;
  align-items:baseline!important;
  gap:7px!important;
  vertical-align:baseline!important;
}

body.single-product .bpe-usd-companion{
  display:inline-flex!important;
  align-items:baseline!important;
  gap:6px!important;
  margin:0!important;
  color:#98A2B3!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:600!important;
  letter-spacing:0!important;
  white-space:nowrap!important;
  text-transform:none!important;
}

body.single-product .bpe-usd-sep{
  color:#D0D5DD!important;
  font-size:11px!important;
  font-weight:700!important;
}

body.single-product .bpe-usd-value{
  color:#8A94A4!important;
  font-size:11px!important;
  font-weight:650!important;
  letter-spacing:0!important;
}

body.single-product .bpe-usd-label{
  display:none!important;
}

/* Woo price HTML may append the companion directly after the KES price. */
body.single-product .price > .bpe-usd-companion,
body.single-product .bpe-compare-price > .bpe-usd-companion,
body.single-product .bpe-product-card-price > .bpe-usd-companion{
  display:inline-flex!important;
  margin-left:7px!important;
  margin-top:0!important;
  vertical-align:baseline!important;
}

/* Keep compact option cards even quieter. */
body.single-product .bpe-price-option-meta .bpe-usd-companion{
  font-size:9.5px!important;
  gap:4px!important;
}

body.single-product .bpe-price-option-meta .bpe-usd-sep,
body.single-product .bpe-price-option-meta .bpe-usd-value{
  font-size:9.5px!important;
}

/* On mobile, put the estimate beneath the KES price to prevent awkward wraps. */
@media(max-width:767px){
  body.single-product .bpe-dual-price{
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:2px!important;
  }

  body.single-product .bpe-dual-price .bpe-usd-sep{
    display:none!important;
  }

  body.single-product .bpe-usd-companion{
    font-size:10px!important;
    margin-left:0!important;
  }

  body.single-product .bpe-usd-value{
    font-size:10px!important;
  }

  body.single-product .price > .bpe-usd-companion,
  body.single-product .bpe-compare-price > .bpe-usd-companion,
  body.single-product .bpe-product-card-price > .bpe-usd-companion{
    display:block!important;
    margin-left:0!important;
    margin-top:3px!important;
  }

  body.single-product .price > .bpe-usd-companion .bpe-usd-sep,
  body.single-product .bpe-compare-price > .bpe-usd-companion .bpe-usd-sep,
  body.single-product .bpe-product-card-price > .bpe-usd-companion .bpe-usd-sep{
    display:none!important;
  }
}


/* ========================================================================
   BPE v0.30.65 — visible-but-secondary USD reference pill
   Desktop: KES 129,800   [≈ $1,000 USD]
   Mobile:  KES 129,800
            [≈ $1,000 USD]
   ======================================================================== */

body.single-product .bpe-dual-price{
  display:inline-flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:10px!important;
  vertical-align:middle!important;
}

body.single-product .bpe-usd-companion{
  display:inline-flex!important;
  align-items:center!important;
  gap:0!important;
  margin:0!important;
  padding:5px 9px!important;
  border:1px solid rgba(37,73,184,.14)!important;
  border-radius:999px!important;
  background:#F5F7FF!important;
  color:#5368A6!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:0!important;
  white-space:nowrap!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72)!important;
  text-transform:none!important;
}

body.single-product .bpe-usd-sep{
  display:none!important;
}

body.single-product .bpe-usd-value{
  color:#5368A6!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:720!important;
  letter-spacing:0!important;
}

body.single-product .price > .bpe-usd-companion,
body.single-product .bpe-compare-price > .bpe-usd-companion,
body.single-product .bpe-product-card-price > .bpe-usd-companion{
  display:inline-flex!important;
  margin-left:10px!important;
  margin-top:0!important;
  vertical-align:middle!important;
}

/* Price in Kenya option rows: smaller pill so cards stay clean. */
body.single-product .bpe-price-option-meta .bpe-usd-companion{
  padding:4px 7px!important;
  font-size:9.5px!important;
}

body.single-product .bpe-price-option-meta .bpe-usd-value{
  font-size:9.5px!important;
}

/* History/comparison stay restrained. */
body.single-product .bpe-ph-overview .bpe-usd-companion,
body.single-product .bpe-ph-log-row .bpe-usd-companion{
  padding:3px 6px!important;
  font-size:9px!important;
}

body.single-product .bpe-ph-overview .bpe-usd-value,
body.single-product .bpe-ph-log-row .bpe-usd-value{
  font-size:9px!important;
}

@media(max-width:767px){
  body.single-product .bpe-dual-price{
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:5px!important;
  }

  body.single-product .bpe-usd-companion{
    padding:5px 8px!important;
    font-size:10px!important;
  }

  body.single-product .bpe-usd-value{
    font-size:10px!important;
  }

  body.single-product .price > .bpe-usd-companion,
  body.single-product .bpe-compare-price > .bpe-usd-companion,
  body.single-product .bpe-product-card-price > .bpe-usd-companion{
    display:inline-flex!important;
    margin-left:0!important;
    margin-top:5px!important;
  }
}


/* ========================================================================
   BPE v0.30.66 — mobile USD spacing fix
   Desktop unchanged. Prevent the USD pill from "kissing" the KES price.
   ======================================================================== */

@media(max-width:767px){
  body.single-product .bpe-dual-price{
    gap:7px!important;
  }

  body.single-product .bpe-dual-price > .bpe-usd-companion{
    margin-top:1px!important;
  }

  body.single-product .price > .bpe-usd-companion,
  body.single-product .bpe-compare-price > .bpe-usd-companion,
  body.single-product .bpe-product-card-price > .bpe-usd-companion{
    margin-top:7px!important;
  }

  /* Compact sections keep a little less space, but never touch. */
  body.single-product .bpe-price-option-meta .bpe-dual-price{
    gap:5px!important;
  }

  body.single-product .bpe-price-option-meta .bpe-usd-companion{
    margin-top:1px!important;
  }
}


/* ========================================================================
   BPE v0.30.67 — iPhone 12 Pro / 390px mobile hardening
   ======================================================================== */

/* USD Option 1 — minimal parentheses. */
body.single-product .bpe-dual-price{
  display:inline-flex!important;
  flex-direction:row!important;
  align-items:baseline!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  vertical-align:baseline!important;
}

body.single-product .bpe-usd-companion{
  display:inline!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#8A94A4!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:600!important;
  white-space:nowrap!important;
  text-transform:none!important;
}

body.single-product .bpe-usd-value{
  color:#8A94A4!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:600!important;
}

body.single-product .price > .bpe-usd-companion,
body.single-product .bpe-compare-price > .bpe-usd-companion,
body.single-product .bpe-product-card-price > .bpe-usd-companion{
  display:inline!important;
  margin-left:6px!important;
  margin-top:0!important;
}

/* Desktop comparison remains the richer table. */
body.single-product .bpe-compare-mobile{
  display:none!important;
}

@media(max-width:430px){
  /* ---------- HERO / RHS ---------- */

  /* The outer RHS card already has padding. Remove the second inner padding
     that was stealing ~40px from a 390px iPhone viewport. */
  body.single-product .bpe-summary-column{
    width:100%!important;
    min-width:0!important;
    padding:18px 16px!important;
    border-radius:18px!important;
    overflow:hidden!important;
  }

  body.single-product .bpe-summary{
    width:100%!important;
    min-width:0!important;
    padding:0!important;
    overflow:visible!important;
  }

  body.single-product .bpe-summary .product_title{
    max-width:100%!important;
    margin-bottom:10px!important;
    font-size:27px!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
    overflow-wrap:anywhere!important;
  }

  body.single-product .bpe-product-meta-line{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:4px 6px!important;
    max-width:100%!important;
    line-height:1.45!important;
  }

  body.single-product div.product .summary .bpe-rating-row.nbpfeat-toprating{
    width:100%!important;
    max-width:100%!important;
    margin-top:12px!important;
  }

  body.single-product div.product .summary .bpe-quick-rating.nbpfeat-quick-rating{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
  }

  body.single-product .bpe-price-stock{
    margin-top:18px!important;
    padding-top:18px!important;
  }

  body.single-product .bpe-price .price{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:baseline!important;
    gap:5px 6px!important;
    max-width:100%!important;
  }

  body.single-product .bpe-price .price .amount{
    font-size:30px!important;
    line-height:1.05!important;
  }

  body.single-product .bpe-usd-companion,
  body.single-product .bpe-usd-value{
    font-size:10.5px!important;
  }

  body.single-product .price > .bpe-usd-companion,
  body.single-product .bpe-compare-price > .bpe-usd-companion,
  body.single-product .bpe-product-card-price > .bpe-usd-companion{
    margin-left:0!important;
    margin-top:0!important;
  }

  body.single-product .bpe-cart-area{
    margin-top:20px!important;
    width:100%!important;
    min-width:0!important;
  }

  body.single-product .bpe-cart-area .variations tr{
    margin-bottom:15px!important;
  }

  body.single-product .bpe-cart-area .variations label{
    font-size:14px!important;
  }

  /* One full-width choice per row on 390px prevents configuration/color cards
     from becoming tiny little columns. */
  body.single-product .bpe-variation-options:not(.is-color),
  body.single-product .bpe-variation-options.is-color{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }

  body.single-product .bpe-variation-option:not(.is-color-swatch),
  body.single-product .bpe-variation-option.is-color-swatch{
    width:100%!important;
    min-width:0!important;
    min-height:46px!important;
  }

  /* Protection add-on gets two clean columns instead of squeezing the price
     against the long copy. */
  body.single-product .bpe-summary .bpe-protect-plus-label{
    grid-template-columns:auto minmax(0,1fr)!important;
    gap:9px 10px!important;
    align-items:start!important;
  }

  body.single-product .bpe-summary .bpe-protect-plus-price{
    grid-column:2!important;
    justify-self:start!important;
    margin-top:1px!important;
  }

  /* Primary CTA gets its own row; quantity becomes a compact second row.
     Much safer than forcing both into a narrow 390px line. */
  body.single-product .bpe-cart-area .bpe-cart-actions-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
  }

  body.single-product .bpe-cart-area .bpe-cart-actions-row .single_add_to_cart_button{
    width:100%!important;
    min-height:48px!important;
  }

  body.single-product .bpe-cart-area .bpe-cart-actions-row .quantity,
  body.single-product .bpe-cart-area .bpe-cart-actions-row .bpe-quantity{
    justify-self:start!important;
    min-width:104px!important;
    height:42px!important;
    min-height:42px!important;
  }

  body.single-product .bpe-cart-area .bpe-cart-actions-row .quantity .qty,
  body.single-product .bpe-cart-area .bpe-cart-actions-row .quantity .minus,
  body.single-product .bpe-cart-area .bpe-cart-actions-row .quantity .plus,
  body.single-product .bpe-cart-area .bpe-cart-actions-row .quantity .bpe-qty-btn{
    height:40px!important;
    min-height:40px!important;
  }

  body.single-product .bpe-cart-area .bpe-cart-actions-row .quantity .qty{
    width:38px!important;
    min-width:38px!important;
  }

  body.single-product .bpe-cart-area .bpe-cart-actions-row .quantity .minus,
  body.single-product .bpe-cart-area .bpe-cart-actions-row .quantity .plus,
  body.single-product .bpe-cart-area .bpe-cart-actions-row .quantity .bpe-qty-btn{
    width:32px!important;
    min-width:32px!important;
    flex-basis:32px!important;
  }

  body.single-product .bpe-whatsapp-order{
    min-height:48px!important;
  }

  body.single-product .bpe-summary .nbp-warranty-inline{
    margin-top:14px!important;
    padding:13px 12px!important;
  }

  /* ---------- COMPARE SIMILAR PRODUCTS ---------- */

  body.single-product .bpe-compare-decision-bar{
    display:none!important;
  }

  body.single-product .bpe-compare-sticky-shell,
  body.single-product .bpe-compare-scroll{
    display:none!important;
  }

  body.single-product .bpe-compare-mobile{
    display:grid!important;
    gap:12px!important;
    width:100%!important;
    min-width:0!important;
  }

  body.single-product .bpe-compare-mobile-current,
  body.single-product .bpe-compare-mobile-card{
    width:100%!important;
    min-width:0!important;
    padding:14px!important;
    border:1px solid #E2E7EF!important;
    border-radius:17px!important;
    background:#FFFFFF!important;
    box-shadow:0 8px 24px rgba(17,24,39,.045)!important;
  }

  body.single-product .bpe-compare-mobile-current{
    background:linear-gradient(135deg,#F8FAFF 0%,#FFFFFF 100%)!important;
    border-color:rgba(37,73,184,.15)!important;
  }

  body.single-product .bpe-compare-mobile-kicker{
    display:block!important;
    margin-bottom:10px!important;
    color:#6B78A0!important;
    font-size:9.5px!important;
    line-height:1!important;
    font-weight:800!important;
    letter-spacing:.1em!important;
    text-transform:uppercase!important;
  }

  body.single-product .bpe-compare-mobile-product{
    display:grid!important;
    grid-template-columns:78px minmax(0,1fr)!important;
    gap:12px!important;
    align-items:center!important;
    min-width:0!important;
  }

  body.single-product .bpe-compare-mobile-image{
    display:grid!important;
    place-items:center!important;
    width:78px!important;
    height:78px!important;
    border:1px solid #EDF0F4!important;
    border-radius:12px!important;
    background:#FFFFFF!important;
    overflow:hidden!important;
  }

  body.single-product .bpe-compare-mobile-image img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
  }

  body.single-product .bpe-compare-mobile-copy{
    min-width:0!important;
  }

  body.single-product .bpe-compare-mobile-name{
    display:block!important;
    color:#172033!important;
    font-size:13.5px!important;
    line-height:1.35!important;
    font-weight:790!important;
    text-decoration:none!important;
    overflow-wrap:anywhere!important;
  }

  body.single-product .bpe-compare-mobile-price{
    margin-top:6px!important;
    color:#111827!important;
    font-size:14px!important;
    font-weight:850!important;
  }

  body.single-product .bpe-compare-mobile-price .bpe-usd-companion,
  body.single-product .bpe-compare-mobile-price .bpe-usd-value{
    font-size:9.5px!important;
  }

  body.single-product .bpe-compare-mobile-delta{
    display:inline-flex!important;
    margin-top:6px!important;
    padding:3px 7px!important;
    border-radius:999px!important;
    font-size:9.5px!important;
    line-height:1.2!important;
    font-weight:760!important;
  }

  body.single-product .bpe-compare-mobile-delta.is-lower{
    background:#EDF8F1!important;
    color:#15803D!important;
  }

  body.single-product .bpe-compare-mobile-delta.is-higher{
    background:#FFF7ED!important;
    color:#A04F0B!important;
  }

  body.single-product .bpe-compare-mobile-card-head{
    margin-bottom:12px!important;
  }

  body.single-product .bpe-compare-mobile-search{
    width:100%!important;
    max-width:none!important;
  }

  body.single-product .bpe-compare-mobile-search label{
    display:block!important;
    margin-bottom:5px!important;
    color:#7A8495!important;
    font-size:9.5px!important;
    font-weight:700!important;
  }

  body.single-product .bpe-compare-mobile-search .bpe-compare-inline-input{
    width:100%!important;
    min-height:38px!important;
    border-radius:10px!important;
  }

  body.single-product .bpe-compare-mobile-differences{
    margin-top:14px!important;
    padding-top:13px!important;
    border-top:1px solid #EBEEF2!important;
  }

  body.single-product .bpe-compare-mobile-diff{
    display:grid!important;
    grid-template-columns:minmax(88px,.8fr) minmax(0,1fr) minmax(0,1fr)!important;
    gap:8px!important;
    padding:9px 0!important;
    border-bottom:1px solid #F0F2F5!important;
    align-items:start!important;
  }

  body.single-product .bpe-compare-mobile-diff:last-child{
    border-bottom:0!important;
  }

  body.single-product .bpe-compare-mobile-diff-label{
    color:#667085!important;
    font-size:10px!important;
    line-height:1.35!important;
    font-weight:720!important;
    overflow-wrap:anywhere!important;
  }

  body.single-product .bpe-compare-mobile-diff > div{
    min-width:0!important;
  }

  body.single-product .bpe-compare-mobile-diff small{
    display:block!important;
    margin-bottom:2px!important;
    color:#98A2B3!important;
    font-size:8.5px!important;
    line-height:1.2!important;
    font-weight:700!important;
    text-transform:uppercase!important;
  }

  body.single-product .bpe-compare-mobile-diff span,
  body.single-product .bpe-compare-mobile-diff strong{
    display:block!important;
    color:#344054!important;
    font-size:10px!important;
    line-height:1.4!important;
    font-weight:620!important;
    overflow-wrap:anywhere!important;
  }

  body.single-product .bpe-compare-mobile-diff strong{
    color:#172033!important;
    font-weight:760!important;
  }

  body.single-product .bpe-compare-mobile-more{
    margin-top:7px!important;
  }

  body.single-product .bpe-compare-mobile-more summary{
    cursor:pointer!important;
    color:var(--bpe-accent)!important;
    font-size:10.5px!important;
    font-weight:760!important;
    list-style:none!important;
  }

  body.single-product .bpe-compare-mobile-more summary::-webkit-details-marker{
    display:none!important;
  }

  body.single-product .bpe-compare-mobile-more-body{
    margin-top:6px!important;
  }

  body.single-product .bpe-compare-mobile-view{
    display:inline-flex!important;
    margin-top:12px!important;
    color:var(--bpe-accent)!important;
    font-size:11px!important;
    font-weight:780!important;
    text-decoration:none!important;
  }
}


/* ========================================================================
   BPE v0.30.68 — Product information tabs
   Overview / Highlights / Videos / Pros & Cons / In the Box / Full Specs
   ======================================================================== */

body.single-product .bpe-product-info-tabs{
  padding:42px 0 48px!important;
  background:#FFFFFF!important;
  overflow:visible!important;
}

body.single-product .bpe-product-tabs-nav-wrap{
  position:relative!important;
  width:100%!important;
  margin:0 0 18px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  scrollbar-width:none!important;
}

body.single-product .bpe-product-tabs-nav-wrap::-webkit-scrollbar{
  display:none!important;
}

body.single-product .bpe-product-tabs-nav{
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  width:max-content!important;
  min-width:100%!important;
  padding:7px!important;
  border:1px solid #E3E7ED!important;
  border-radius:17px!important;
  background:#F8F9FB!important;
  box-shadow:0 6px 18px rgba(17,24,39,.035)!important;
}

body.single-product .bpe-product-tab{
  appearance:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:0 17px!important;
  border:0!important;
  border-radius:11px!important;
  background:transparent!important;
  color:#515A6B!important;
  box-shadow:none!important;
  font:inherit!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:740!important;
  white-space:nowrap!important;
  cursor:pointer!important;
  transition:background .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease!important;
}

body.single-product .bpe-product-tab:hover{
  color:#1B3588!important;
  background:#F0F3FA!important;
}

body.single-product .bpe-product-tab.is-active,
body.single-product .bpe-product-tab[aria-selected="true"]{
  color:#FFFFFF!important;
  background:#1B3588!important;
  box-shadow:0 7px 16px rgba(27,53,136,.18)!important;
}

body.single-product .bpe-product-tab:focus-visible{
  outline:2px solid #2549B8!important;
  outline-offset:2px!important;
}

body.single-product .bpe-product-tabs-panels{
  position:relative!important;
  width:100%!important;
  min-width:0!important;
}

body.single-product .bpe-product-tab-panel{
  width:100%!important;
  min-width:0!important;
  padding:26px!important;
  border:1px solid #E4E8EF!important;
  border-radius:19px!important;
  background:#FFFFFF!important;
  box-shadow:0 10px 30px rgba(17,24,39,.04)!important;
}

body.single-product .bpe-product-tab-panel[hidden]{
  display:none!important;
}

/* These used to be whole sections; inside tabs they become pure content panels. */
body.single-product .bpe-product-tab-panel.bpe-description,
body.single-product .bpe-product-tab-panel.bpe-highlights,
body.single-product .bpe-product-tab-panel.bpe-videos,
body.single-product .bpe-product-tab-panel.bpe-pros-cons,
body.single-product .bpe-product-tab-panel.bpe-in-box,
body.single-product .bpe-product-tab-panel.bpe-specifications{
  padding:26px!important;
  background:#FFFFFF!important;
}

/* Prevent nested section-era styling from adding fake outer spacing. */
body.single-product .bpe-product-tab-panel .bpe-richtext{
  margin:0!important;
}

body.single-product .bpe-product-tab-panel.bpe-description .bpe-richtext{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

body.single-product .bpe-product-tab-panel.bpe-description .bpe-richtext::before{
  display:none!important;
}

body.single-product .bpe-product-tab-panel .bpe-highlight-grid,
body.single-product .bpe-product-tab-panel .bpe-pros-cons-grid{
  margin:0!important;
}

body.single-product .bpe-product-tab-panel .bpe-box-list{
  margin:0!important;
}

body.single-product .bpe-product-tab-panel .bpe-spec-groups{
  margin-top:0!important;
}

body.single-product .bpe-product-tab-panel .bpe-video-rail{
  margin-top:0!important;
}

@media(max-width:767px){
  body.single-product .bpe-product-info-tabs{
    padding:32px 0 36px!important;
  }

  body.single-product .bpe-product-tabs-nav-wrap{
    margin-bottom:12px!important;
    overflow-x:auto!important;
  }

  body.single-product .bpe-product-tabs-nav{
    min-width:max-content!important;
    gap:4px!important;
    padding:5px!important;
    border-radius:14px!important;
  }

  body.single-product .bpe-product-tab{
    min-height:40px!important;
    padding:0 14px!important;
    font-size:11.5px!important;
    border-radius:10px!important;
  }

  body.single-product .bpe-product-tab-panel,
  body.single-product .bpe-product-tab-panel.bpe-description,
  body.single-product .bpe-product-tab-panel.bpe-highlights,
  body.single-product .bpe-product-tab-panel.bpe-videos,
  body.single-product .bpe-product-tab-panel.bpe-pros-cons,
  body.single-product .bpe-product-tab-panel.bpe-in-box,
  body.single-product .bpe-product-tab-panel.bpe-specifications{
    padding:18px!important;
    border-radius:16px!important;
  }

  /* Inside the tab panel, content grids should use the full available phone width. */
  body.single-product .bpe-product-tab-panel .bpe-highlight-grid,
  body.single-product .bpe-product-tab-panel .bpe-pros-cons-grid{
    grid-template-columns:1fr!important;
  }
}


/* ========================================================================
   BPE v0.30.70 — compact Compatible Accessories
   ======================================================================== */

body.single-product .bpe-accessories-compact{
  padding-top:30px!important;
  padding-bottom:30px!important;
}

body.single-product .bpe-accessories-compact .bpe-section-head{
  margin-bottom:12px!important;
}

body.single-product .bpe-accessories-compact .bpe-section-head h3{
  font-size:18px!important;
  line-height:1.2!important;
}

body.single-product .bpe-accessory-compact-strip{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
}

body.single-product .bpe-accessory-compact-card{
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr)!important;
  gap:11px!important;
  align-items:center!important;
  min-width:0!important;
  padding:10px!important;
  border:1px solid #E5E9F0!important;
  border-radius:14px!important;
  background:#FFFFFF!important;
  box-shadow:none!important;
}

body.single-product .bpe-accessory-compact-image{
  display:grid!important;
  place-items:center!important;
  width:72px!important;
  height:72px!important;
  border-radius:10px!important;
  background:#F8F9FB!important;
  overflow:hidden!important;
}

body.single-product .bpe-accessory-compact-image img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}

body.single-product .bpe-accessory-compact-copy{
  min-width:0!important;
}

body.single-product .bpe-accessory-compact-name{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
  color:#172033!important;
  font-size:11.5px!important;
  line-height:1.35!important;
  font-weight:730!important;
  text-decoration:none!important;
}

body.single-product .bpe-accessory-compact-bottom{
  display:flex!important;
  align-items:baseline!important;
  justify-content:space-between!important;
  gap:8px!important;
  margin-top:7px!important;
  min-width:0!important;
}

body.single-product .bpe-accessory-compact-price{
  min-width:0!important;
  color:#111827!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:800!important;
  white-space:nowrap!important;
}

body.single-product .bpe-accessory-compact-price .bpe-usd-companion{
  display:none!important;
}

body.single-product .bpe-accessory-compact-view{
  flex:0 0 auto!important;
  color:#1B3588!important;
  font-size:10.5px!important;
  line-height:1.2!important;
  font-weight:760!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}

@media(max-width:900px){
  body.single-product .bpe-accessory-compact-strip{
    display:flex!important;
    gap:9px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding-bottom:3px!important;
    scroll-snap-type:x proximity!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;
  }

  body.single-product .bpe-accessory-compact-strip::-webkit-scrollbar{
    display:none!important;
  }

  body.single-product .bpe-accessory-compact-card{
    flex:0 0 260px!important;
    scroll-snap-align:start!important;
  }
}

@media(max-width:430px){
  body.single-product .bpe-accessories-compact{
    padding-top:24px!important;
    padding-bottom:24px!important;
  }

  body.single-product .bpe-accessories-compact .bpe-section-head{
    margin-bottom:10px!important;
  }

  body.single-product .bpe-accessories-compact .bpe-section-head h3{
    font-size:16px!important;
  }

  body.single-product .bpe-accessory-compact-card{
    flex-basis:236px!important;
    grid-template-columns:64px minmax(0,1fr)!important;
    padding:9px!important;
  }

  body.single-product .bpe-accessory-compact-image{
    width:64px!important;
    height:64px!important;
  }

  body.single-product .bpe-accessory-compact-name{
    font-size:11px!important;
  }

  body.single-product .bpe-accessory-compact-price{
    font-size:10.5px!important;
  }
}


/* ========================================================================
   BPE v0.30.71 — denser Quick Specs + Price History tab
   ======================================================================== */

/* Quick Specs should read like a fast scan, not a feature-card wall. */
body.single-product .bpe-at-a-glance{
  padding-top:30px!important;
  padding-bottom:30px!important;
}

body.single-product .bpe-at-a-glance .bpe-section-head{
  margin-bottom:14px!important;
}

body.single-product .bpe-at-a-glance .bpe-section-head h3{
  font-size:22px!important;
  line-height:1.15!important;
}

body.single-product .bpe-glance-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:9px!important;
}

body.single-product .bpe-glance-item{
  min-height:0!important;
  padding:13px 14px!important;
  border-radius:13px!important;
}

body.single-product .bpe-glance-item::before{
  width:30px!important;
  height:2px!important;
}

body.single-product .bpe-glance-label{
  margin-bottom:6px!important;
  font-size:9px!important;
  line-height:1.1!important;
  letter-spacing:.1em!important;
}

body.single-product .bpe-glance-value{
  font-size:12.5px!important;
  line-height:1.38!important;
  font-weight:730!important;
}

/* Price History now lives inside the shared tab workspace. */
body.single-product .bpe-product-tab-panel.bpe-price-history-tab{
  padding:20px!important;
}

body.single-product .bpe-product-tab-panel .bpe-price-history-content.is-embedded{
  margin:0!important;
  padding:0!important;
}

body.single-product .bpe-product-tab-panel .bpe-price-history-subtitle{
  margin-top:0!important;
}

body.single-product .bpe-product-tab-panel .bpe-ph-card{
  margin-bottom:0!important;
}

@media(max-width:767px){
  body.single-product .bpe-at-a-glance{
    padding-top:24px!important;
    padding-bottom:24px!important;
  }

  body.single-product .bpe-at-a-glance .bpe-section-head{
    margin-bottom:10px!important;
  }

  body.single-product .bpe-at-a-glance .bpe-section-head h3{
    font-size:19px!important;
  }

  body.single-product .bpe-glance-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }

  body.single-product .bpe-glance-item{
    padding:11px 12px!important;
    border-radius:12px!important;
  }

  body.single-product .bpe-glance-label{
    margin-bottom:5px!important;
    font-size:8.5px!important;
  }

  body.single-product .bpe-glance-value{
    font-size:11.5px!important;
    line-height:1.35!important;
  }

  body.single-product .bpe-product-tab-panel.bpe-price-history-tab{
    padding:14px!important;
    overflow:hidden!important;
  }

  body.single-product .bpe-product-tab-panel.bpe-price-history-tab .bpe-ph-chart-grid{
    min-width:0!important;
  }
}


/* ========================================================================
   BPE v0.30.72 — cleaner Price in Kenya option cards
   ======================================================================== */

body.single-product .bpe-price-option-card::before{
  display:none!important;
  content:none!important;
}

body.single-product .bpe-price-option-card:not(.is-future-option)::before{
  background:none!important;
}

body.single-product .bpe-price-option-card:hover{
  border-color:#DCE2E9!important;
  box-shadow:0 8px 24px rgba(17,24,39,.055)!important;
}

body.single-product .bpe-price-option-badges{
  display:none!important;
}


/* ========================================================================
   BPE v0.30.73 — readability + purchase polish
   ======================================================================== */

/* Explore More: keep prices in a predictable lower card zone instead of
   floating midway through cards with different title heights. */
body.single-product .bpe-more-brand .bpe-product-card{
  display:flex!important;
  flex-direction:column!important;
}

body.single-product .bpe-more-brand .bpe-product-card-price{
  margin-top:auto!important;
  margin-bottom:8px!important;
  min-height:42px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  align-items:flex-start!important;
}

body.single-product .bpe-more-brand .bpe-card-link{
  margin-top:0!important;
}

/* Compatible Accessories: still compact, but actually purchasable. */
body.single-product .bpe-accessory-compact-copy{
  display:flex!important;
  flex-direction:column!important;
  gap:5px!important;
}

body.single-product .bpe-accessory-compact-price{
  margin-top:1px!important;
}

body.single-product .bpe-accessory-compact-add{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:max-content!important;
  min-height:30px!important;
  margin-top:2px!important;
  padding:5px 9px!important;
  border:1px solid #D7DDE7!important;
  border-radius:8px!important;
  background:#FFFFFF!important;
  color:#1B3588!important;
  font-size:10.5px!important;
  line-height:1!important;
  font-weight:760!important;
  text-decoration:none!important;
  cursor:pointer!important;
}

body.single-product .bpe-accessory-compact-add:hover{
  border-color:#BCC6D6!important;
  text-decoration:underline!important;
}

body.single-product .bpe-accessory-compact-add.is-loading{
  opacity:.6!important;
  cursor:wait!important;
}

body.single-product .bpe-accessory-quickbuy{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:6px!important;
  align-items:center!important;
  margin-top:1px!important;
}

body.single-product .bpe-accessory-variation-select{
  width:100%!important;
  min-width:0!important;
  height:30px!important;
  min-height:30px!important;
  padding:4px 26px 4px 8px!important;
  border:1px solid #DDE3EA!important;
  border-radius:8px!important;
  background:#FFFFFF!important;
  color:#344054!important;
  font-size:10px!important;
  line-height:1.2!important;
}

body.single-product .bpe-accessory-quickbuy .bpe-accessory-compact-add{
  margin:0!important;
  white-space:nowrap!important;
}

body.single-product .bpe-accessory-compact-card .bpe-accessory-cart-status{
  grid-column:1 / -1!important;
  color:#15803D!important;
  font-size:9.5px!important;
  font-weight:700!important;
}

/* Price in Kenya: intro copy uses the full content width; small metadata is
   promoted to normal readable sizes. */
body.single-product .bpe-price-options-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  column-gap:18px!important;
  row-gap:7px!important;
  align-items:end!important;
}

body.single-product .bpe-price-options-head > div{
  display:contents!important;
}

body.single-product .bpe-price-options-head h2{
  grid-column:1!important;
  grid-row:1!important;
  margin:0!important;
}

body.single-product .bpe-price-options-count{
  grid-column:2!important;
  grid-row:1!important;
  align-self:end!important;
  font-size:12px!important;
  line-height:1.35!important;
}

body.single-product .bpe-price-options-intro{
  grid-column:1 / -1!important;
  grid-row:2!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  font-size:14.5px!important;
  line-height:1.65!important;
}

body.single-product .bpe-price-options-update-note{
  font-size:inherit!important;
}

body.single-product .bpe-price-option-config{
  font-size:13px!important;
}

body.single-product .bpe-price-option-color-name{
  font-size:11.5px!important;
}

body.single-product .bpe-price-option-hex{
  font-size:10.5px!important;
}

body.single-product .bpe-price-option-meta strong,
body.single-product .bpe-price-option-meta strong .amount{
  font-size:13px!important;
}

body.single-product .bpe-price-option-meta span,
body.single-product .bpe-price-option-meta .is-in-stock,
body.single-product .bpe-price-option-meta .is-future,
body.single-product .bpe-price-option-coming-price{
  font-size:10.5px!important;
}

body.single-product .bpe-price-option-meta .bpe-usd-companion,
body.single-product .bpe-price-option-meta .bpe-usd-value{
  font-size:10.5px!important;
}

/* Quick Specs: the little top stroke is only a subtle accent now. */
body.single-product .bpe-glance-item::before{
  width:22px!important;
  height:2px!important;
  background:rgba(37,73,184,.28)!important;
}

body.single-product .bpe-glance-item:hover::before{
  background:rgba(37,73,184,.38)!important;
}

@media(max-width:767px){
  body.single-product .bpe-price-options-head{
    grid-template-columns:minmax(0,1fr) auto!important;
    column-gap:10px!important;
    row-gap:6px!important;
  }

  body.single-product .bpe-price-options-intro{
    font-size:13.5px!important;
    line-height:1.6!important;
  }

  body.single-product .bpe-price-options-count{
    font-size:11px!important;
  }

  body.single-product .bpe-price-option-config{
    font-size:12.5px!important;
  }

  body.single-product .bpe-price-option-color-name{
    font-size:11px!important;
  }

  body.single-product .bpe-price-option-hex{
    font-size:10px!important;
  }

  body.single-product .bpe-price-option-meta strong,
  body.single-product .bpe-price-option-meta strong .amount{
    font-size:12.5px!important;
  }

  body.single-product .bpe-price-option-meta span,
  body.single-product .bpe-price-option-meta .is-in-stock,
  body.single-product .bpe-price-option-meta .is-future,
  body.single-product .bpe-price-option-coming-price,
  body.single-product .bpe-price-option-meta .bpe-usd-companion,
  body.single-product .bpe-price-option-meta .bpe-usd-value{
    font-size:10px!important;
  }

  body.single-product .bpe-accessory-quickbuy{
    grid-template-columns:1fr!important;
  }

  body.single-product .bpe-accessory-quickbuy .bpe-accessory-compact-add{
    width:100%!important;
  }
}


/* ========================================================================
   BPE v0.30.74 — frictionless Compatible Accessories
   ======================================================================== */

body.single-product .bpe-accessory-compact-card{
  grid-template-columns:78px minmax(0,1fr)!important;
  padding:11px!important;
}

body.single-product .bpe-accessory-compact-image{
  width:78px!important;
  height:78px!important;
}

body.single-product .bpe-accessory-compact-name{
  font-size:12px!important;
  font-weight:760!important;
}

body.single-product .bpe-accessory-compact-price{
  font-size:11.5px!important;
}

body.single-product .bpe-accessory-options{
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  margin-top:1px!important;
}

body.single-product .bpe-accessory-option-group{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  min-width:0!important;
}

body.single-product .bpe-accessory-option-label{
  flex:0 0 auto!important;
  color:#7A8495!important;
  font-size:9px!important;
  line-height:1.2!important;
  font-weight:700!important;
}

body.single-product .bpe-accessory-option-values{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:5px!important;
  min-width:0!important;
}

body.single-product .bpe-accessory-option-swatch{
  appearance:none!important;
  display:grid!important;
  place-items:center!important;
  width:24px!important;
  height:24px!important;
  padding:3px!important;
  border:1px solid #D7DDE6!important;
  border-radius:50%!important;
  background:#FFFFFF!important;
  cursor:pointer!important;
}

body.single-product .bpe-accessory-option-swatch.is-selected{
  border-color:#1B3588!important;
  box-shadow:0 0 0 1px #1B3588!important;
}

body.single-product .bpe-accessory-option-swatch-dot{
  display:block!important;
  width:16px!important;
  height:16px!important;
  border-radius:50%!important;
  border:1px solid rgba(17,24,39,.10)!important;
}

body.single-product .bpe-accessory-option-pill{
  appearance:none!important;
  min-height:26px!important;
  padding:4px 8px!important;
  border:1px solid #DCE2E9!important;
  border-radius:999px!important;
  background:#FFFFFF!important;
  color:#475467!important;
  font-size:9.5px!important;
  line-height:1!important;
  font-weight:700!important;
  cursor:pointer!important;
}

body.single-product .bpe-accessory-option-pill.is-selected{
  border-color:#B8C4D8!important;
  background:#F5F7FB!important;
  color:#172033!important;
}

body.single-product .bpe-accessory-compact-add.is-text-link{
  appearance:none!important;
  display:inline!important;
  width:auto!important;
  min-height:0!important;
  margin-top:2px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#1B3588!important;
  font-size:10.5px!important;
  line-height:1.35!important;
  font-weight:760!important;
  text-decoration:none!important;
  cursor:pointer!important;
  text-align:left!important;
}

body.single-product .bpe-accessory-compact-add.is-text-link:hover{
  text-decoration:underline!important;
}

body.single-product .bpe-accessory-compact-add.is-text-link.is-added{
  color:#15803D!important;
  text-decoration:none!important;
}

body.single-product .bpe-accessory-compact-add.is-text-link.is-loading{
  opacity:.55!important;
}

@media(max-width:767px){
  body.single-product .bpe-accessory-compact-card{
    grid-template-columns:70px minmax(0,1fr)!important;
  }

  body.single-product .bpe-accessory-compact-image{
    width:70px!important;
    height:70px!important;
  }

  body.single-product .bpe-accessory-option-group{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:4px!important;
  }
}


/* ========================================================================
   BPE v0.30.75 — tighter 3-up Compatible Accessories
   ======================================================================== */

body.single-product .bpe-accessories-compact{
  padding-top:22px!important;
  padding-bottom:22px!important;
}

body.single-product .bpe-accessories-compact .bpe-section-head{
  margin-bottom:9px!important;
}

body.single-product .bpe-accessory-compact-strip{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  overflow:visible!important;
  padding-bottom:0!important;
}

body.single-product .bpe-accessory-compact-card{
  width:100%!important;
  min-height:0!important;
  grid-template-columns:86px minmax(0,1fr)!important;
  gap:10px!important;
  padding:10px 12px!important;
  border-radius:13px!important;
}

body.single-product .bpe-accessory-compact-image{
  width:86px!important;
  height:86px!important;
}

body.single-product .bpe-accessory-compact-copy{
  gap:4px!important;
}

body.single-product .bpe-accessory-recommended{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  margin-bottom:4px!important;
  padding:5px 9px!important;
  border:1px solid #F4C96A!important;
  border-radius:999px!important;
  background:#FFF2CC!important;
  color:#A65A00!important;
  font-size:8.5px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
}

body.single-product .bpe-accessory-option-swatch{
  width:23px!important;
  height:23px!important;
  padding:2px!important;
}

body.single-product .bpe-accessory-option-swatch-dot{
  width:17px!important;
  height:17px!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.55)!important;
}

@media(max-width:900px){
  body.single-product .bpe-accessory-compact-strip{
    display:flex!important;
    gap:9px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x proximity!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;
  }

  body.single-product .bpe-accessory-compact-strip::-webkit-scrollbar{
    display:none!important;
  }

  body.single-product .bpe-accessory-compact-card{
    flex:0 0 280px!important;
    scroll-snap-align:start!important;
  }
}

@media(max-width:430px){
  body.single-product .bpe-accessories-compact{
    padding-top:18px!important;
    padding-bottom:18px!important;
  }

  body.single-product .bpe-accessory-compact-card{
    flex-basis:252px!important;
    grid-template-columns:72px minmax(0,1fr)!important;
    padding:9px 10px!important;
  }

  body.single-product .bpe-accessory-compact-image{
    width:72px!important;
    height:72px!important;
  }
}


/* ========================================================================
   BPE v0.30.76 — mobile accessory selection + Explore More price alignment
   ======================================================================== */

/* Explore More: center the complete dual-price block, not only the card text. */
body.single-product .bpe-more-brand .bpe-product-card-price{
  width:100%!important;
  align-items:center!important;
  justify-content:flex-end!important;
  text-align:center!important;
}

body.single-product .bpe-more-brand .bpe-product-card-price .bpe-dual-price{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  width:100%!important;
  text-align:center!important;
}

body.single-product .bpe-more-brand .bpe-product-card-price .bpe-usd-companion{
  margin-left:0!important;
  margin-top:0!important;
}

/* Make accessory option controls easier to hit without turning the cards bulky. */
body.single-product .bpe-accessory-option-swatch{
  width:28px!important;
  height:28px!important;
  padding:3px!important;
}

body.single-product .bpe-accessory-option-swatch-dot{
  width:20px!important;
  height:20px!important;
}

body.single-product .bpe-accessory-option-pill{
  min-height:30px!important;
  padding:6px 10px!important;
  font-size:10px!important;
}

body.single-product .bpe-accessory-option-values{
  gap:7px!important;
}

@media(max-width:430px){
  /* Larger mobile card gives swatches/pills enough room to breathe and tap. */
  body.single-product .bpe-accessory-compact-card{
    flex-basis:310px!important;
    grid-template-columns:82px minmax(0,1fr)!important;
    gap:12px!important;
    padding:11px 12px!important;
  }

  body.single-product .bpe-accessory-compact-image{
    width:82px!important;
    height:82px!important;
  }

  body.single-product .bpe-accessory-compact-name{
    font-size:12.5px!important;
  }

  body.single-product .bpe-accessory-compact-price{
    font-size:12px!important;
  }

  body.single-product .bpe-accessory-option-group{
    gap:5px!important;
  }

  body.single-product .bpe-accessory-option-label{
    font-size:9.5px!important;
  }

  body.single-product .bpe-accessory-option-swatch{
    width:32px!important;
    height:32px!important;
    padding:4px!important;
  }

  body.single-product .bpe-accessory-option-swatch-dot{
    width:22px!important;
    height:22px!important;
  }

  body.single-product .bpe-accessory-option-pill{
    min-height:34px!important;
    padding:7px 11px!important;
    font-size:10.5px!important;
  }

  body.single-product .bpe-accessory-compact-add.is-text-link{
    font-size:11px!important;
    line-height:1.4!important;
  }
}


/* ========================================================================
   BPE v0.30.77 — spacious accessories + calmer hero
   ======================================================================== */

/* Compatible Accessories: deliberately roomy. Max three cards means use the space. */
body.single-product .bpe-accessories-compact{
  padding-top:28px!important;
  padding-bottom:28px!important;
}

body.single-product .bpe-accessory-compact-strip{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
}

body.single-product .bpe-accessory-compact-card.is-exact-variation{
  grid-template-columns:118px minmax(0,1fr)!important;
  gap:18px!important;
  min-height:168px!important;
  padding:18px 20px!important;
  align-items:center!important;
}

body.single-product .bpe-accessory-compact-card.is-exact-variation .bpe-accessory-compact-image{
  width:118px!important;
  height:118px!important;
  background:#FAFBFC!important;
}

body.single-product .bpe-accessory-compact-card.is-exact-variation .bpe-accessory-compact-copy{
  gap:6px!important;
}

body.single-product .bpe-accessory-compact-card.is-exact-variation .bpe-accessory-compact-name{
  font-size:13.5px!important;
  line-height:1.35!important;
  font-weight:780!important;
}

body.single-product .bpe-accessory-exact-variation{
  color:#667085!important;
  font-size:10.5px!important;
  line-height:1.45!important;
  font-weight:650!important;
}

body.single-product .bpe-accessory-compact-card.is-exact-variation .bpe-accessory-compact-price{
  margin-top:1px!important;
  font-size:12.5px!important;
}

body.single-product .bpe-accessory-compact-card.is-exact-variation .bpe-accessory-compact-price .bpe-usd-companion{
  display:none!important;
}

/* Old mini-configurator controls are intentionally retired. */
body.single-product .bpe-accessories-compact .bpe-accessory-options,
body.single-product .bpe-accessories-compact .bpe-accessory-option-group,
body.single-product .bpe-accessories-compact .bpe-accessory-option-values{
  display:none!important;
}

/* Hero: disable WooCommerce hover-zoom layer entirely. */
body.single-product .bpe-gallery .zoomImg,
body.single-product .woocommerce-product-gallery .zoomImg{
  display:none!important;
  opacity:0!important;
  pointer-events:none!important;
}

/* Pull the content higher inside the RHS card. */
@media(min-width:981px){
  body.single-product .bpe-summary-column{
    padding-top:20px!important;
  }

  body.single-product .bpe-brand{
    margin-top:0!important;
    padding-top:0!important;
  }
}

@media(max-width:900px){
  body.single-product .bpe-accessory-compact-strip{
    gap:12px!important;
  }

  body.single-product .bpe-accessory-compact-card.is-exact-variation{
    flex:0 0 min(360px,calc(100vw - 44px))!important;
    grid-template-columns:104px minmax(0,1fr)!important;
    gap:16px!important;
    min-height:154px!important;
    padding:16px 17px!important;
  }

  body.single-product .bpe-accessory-compact-card.is-exact-variation .bpe-accessory-compact-image{
    width:104px!important;
    height:104px!important;
  }
}

@media(max-width:430px){
  body.single-product .bpe-accessories-compact{
    padding-top:22px!important;
    padding-bottom:22px!important;
  }

  body.single-product .bpe-accessory-compact-card.is-exact-variation{
    flex-basis:calc(100vw - 42px)!important;
    grid-template-columns:96px minmax(0,1fr)!important;
    gap:15px!important;
    min-height:150px!important;
    padding:15px 16px!important;
  }

  body.single-product .bpe-accessory-compact-card.is-exact-variation .bpe-accessory-compact-image{
    width:96px!important;
    height:96px!important;
  }

  body.single-product .bpe-accessory-compact-card.is-exact-variation .bpe-accessory-compact-name{
    font-size:13px!important;
  }

  body.single-product .bpe-accessory-exact-variation{
    font-size:10.5px!important;
  }

  body.single-product .bpe-accessory-compact-add.is-text-link{
    font-size:11.5px!important;
  }
}


/* ========================================================================
   BPE v0.30.78 — Configurations tab
   ======================================================================== */

body.single-product .bpe-product-tab-panel.bpe-configurations-tab{
  padding:20px!important;
}

body.single-product .bpe-product-tab-panel .bpe-price-options.is-embedded{
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
}

body.single-product .bpe-product-tab-panel .bpe-price-options.is-embedded .bpe-price-options-head{
  margin-bottom:16px!important;
}

body.single-product .bpe-product-tab-panel .bpe-price-options.is-embedded .bpe-price-options-intro{
  max-width:none!important;
  width:100%!important;
  margin:0!important;
}

body.single-product .bpe-product-tab-panel .bpe-price-options.is-embedded .bpe-price-options-grid{
  margin-top:0!important;
}

@media(max-width:767px){
  body.single-product .bpe-product-tab-panel.bpe-configurations-tab{
    padding:14px!important;
  }
}


/* ========================================================================
   BPE v0.30.80 — stronger, smoother, content-sized tab bar
   ======================================================================== */

body.single-product .bpe-product-tabs-nav-wrap{
  width:100%!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
  scrollbar-width:none!important;
  -webkit-overflow-scrolling:touch!important;
}

body.single-product .bpe-product-tabs-nav{
  width:max-content!important;
  min-width:0!important;
  max-width:none!important;
  padding:6px!important;
  gap:4px!important;
  border:1px solid #DDE3EC!important;
  border-radius:15px!important;
  background:#F7F8FB!important;
  box-shadow:0 5px 16px rgba(17,24,39,.05)!important;
}

body.single-product .bpe-product-tab{
  min-height:42px!important;
  padding:0 18px!important;
  border-radius:10px!important;
  color:#4B5565!important;
  font-size:12px!important;
  font-weight:760!important;
  letter-spacing:-.005em!important;
  transition:
    background-color .22s cubic-bezier(.2,.8,.2,1),
    color .22s cubic-bezier(.2,.8,.2,1),
    box-shadow .22s cubic-bezier(.2,.8,.2,1),
    transform .22s cubic-bezier(.2,.8,.2,1)!important;
}

body.single-product .bpe-product-tab:hover{
  color:#1B3588!important;
  background:#EEF2FA!important;
}

body.single-product .bpe-product-tab.is-active,
body.single-product .bpe-product-tab[aria-selected="true"]{
  background:#1B3588!important;
  color:#FFFFFF!important;
  box-shadow:
    0 7px 18px rgba(27,53,136,.24),
    inset 0 1px 0 rgba(255,255,255,.16)!important;
  transform:translateY(-1px)!important;
}

body.single-product .bpe-product-tabs-panels{
  position:relative!important;
}

body.single-product .bpe-product-tab-panel{
  transform-origin:top center!important;
}

body.single-product .bpe-product-tab-panel.is-active{
  animation:bpeTabPanelIn .24s cubic-bezier(.2,.8,.2,1) both;
}

@keyframes bpeTabPanelIn{
  from{
    opacity:0;
    transform:translateY(5px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

/* Semantic Product Description wrapper must not change the visual layout. */
body.single-product .bpe-product-description-semantic{
  display:contents!important;
}

@media(max-width:767px){
  body.single-product .bpe-product-tabs-nav{
    min-width:max-content!important;
    padding:5px!important;
    gap:3px!important;
  }

  body.single-product .bpe-product-tab{
    min-height:40px!important;
    padding:0 14px!important;
    font-size:11.5px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  body.single-product .bpe-product-tab,
  body.single-product .bpe-product-tab-panel.is-active{
    transition:none!important;
    animation:none!important;
  }
}


/* ========================================================================
   BPE v0.30.81 — tighter hero + stronger tabs + quiet hover affordances
   ======================================================================== */

/* Hero columns were visually drifting apart on wide desktop layouts. */
@media(min-width:981px){
  body.single-product .bpe-buybox-grid{
    grid-template-columns:minmax(0,1.04fr) minmax(390px,.96fr)!important;
    gap:24px!important;
  }
}

/* Stronger information tabs without making the strip bulky. */
body.single-product .bpe-product-tabs-nav{
  padding:6px!important;
  gap:4px!important;
  border-color:#D4DBE6!important;
  background:#F5F7FA!important;
  box-shadow:0 7px 20px rgba(17,24,39,.07)!important;
}

body.single-product .bpe-product-tab{
  min-height:44px!important;
  padding:0 20px!important;
  color:#3F495A!important;
  font-size:13px!important;
  font-weight:800!important;
  letter-spacing:-.01em!important;
}

body.single-product .bpe-product-tab:hover{
  color:#1B3588!important;
  background:#EAF0FA!important;
}

body.single-product .bpe-product-tab.is-active,
body.single-product .bpe-product-tab[aria-selected="true"]{
  background:#1B3588!important;
  color:#FFFFFF!important;
  box-shadow:
    0 8px 20px rgba(27,53,136,.28),
    inset 0 1px 0 rgba(255,255,255,.22)!important;
  transform:translateY(-1px)!important;
}

/* Product/accessory titles behave like links only when the user points at them. */
body.single-product .bpe-accessory-compact-name:hover,
body.single-product .bpe-accessory-compact-name:focus-visible{
  text-decoration:underline!important;
  text-decoration-thickness:1px!important;
  text-underline-offset:3px!important;
}

/* Same subtle affordance for the hero's variation choices.
   No permanent underline, and selected state remains clean. */
@media(hover:hover) and (pointer:fine){
  body.single-product .bpe-variation-option:not(.is-color-swatch):hover .bpe-option-label,
  body.single-product .bpe-variation-option:not(.is-color-swatch):focus-visible .bpe-option-label,
  body.single-product .bpe-variation-option.is-color-swatch:hover .bpe-color-name,
  body.single-product .bpe-variation-option.is-color-swatch:focus-visible .bpe-color-name{
    text-decoration:underline!important;
    text-decoration-thickness:1px!important;
    text-underline-offset:3px!important;
  }
}

@media(max-width:767px){
  body.single-product .bpe-product-tab{
    min-height:41px!important;
    padding:0 15px!important;
    font-size:12px!important;
  }
}


/* ========================================================================
   BPE v0.30.83 — variation hover cleanup
   ======================================================================== */

/* Variation selectors should never underline their labels on hover/focus. */
body.single-product .bpe-variation-option:not(.is-color-swatch):hover .bpe-option-label,
body.single-product .bpe-variation-option:not(.is-color-swatch):focus-visible .bpe-option-label,
body.single-product .bpe-variation-option.is-color-swatch:hover .bpe-color-name,
body.single-product .bpe-variation-option.is-color-swatch:focus-visible .bpe-color-name{
  text-decoration:none!important;
}


/* ========================================================================
   BPE v0.30.84 — configuration option internal links
   ======================================================================== */

body.single-product a.bpe-price-option-card.is-linked-option{
  display:block!important;
  color:inherit!important;
  text-decoration:none!important;
  cursor:pointer!important;
}

body.single-product a.bpe-price-option-card.is-linked-option:hover,
body.single-product a.bpe-price-option-card.is-linked-option:focus{
  color:inherit!important;
  text-decoration:none!important;
}

body.single-product a.bpe-price-option-card.is-linked-option:focus-visible{
  outline:2px solid #2549B8!important;
  outline-offset:2px!important;
}


/* ========================================================================
   BPE v0.30.86 — immediate hero gallery visibility
   ======================================================================== */

/* WooCommerce can keep the gallery at opacity:0 until its JS initialises.
   Never let the hero look blank while waiting for that bootstrap. */
body.single-product .bpe-gallery .woocommerce-product-gallery,
body.single-product .bpe-gallery .woocommerce-product-gallery[style],
body.single-product .bpe-gallery .woocommerce-product-gallery__wrapper,
body.single-product .bpe-gallery .woocommerce-product-gallery__image:first-child{
  opacity:1!important;
  visibility:visible!important;
}

/* Before FlexSlider is ready, paint the first frame only so secondary images
   cannot briefly stack over it. */
body.single-product .bpe-gallery .woocommerce-product-gallery:not(.flexslider) .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:not(:first-child){
  display:none!important;
}


/* ========================================================================
   BPE v0.30.88 — gallery recovery across image formats/lazy loaders
   ======================================================================== */

body.single-product .bpe-gallery,
body.single-product .bpe-gallery .woocommerce-product-gallery,
body.single-product .bpe-gallery .woocommerce-product-gallery__wrapper,
body.single-product .bpe-gallery .woocommerce-product-gallery__image:first-child,
body.single-product .bpe-gallery .woocommerce-product-gallery__image:first-child > a,
body.single-product .bpe-gallery .woocommerce-product-gallery__image:first-child picture,
body.single-product .bpe-gallery .woocommerce-product-gallery__image:first-child img{
  opacity:1!important;
  visibility:visible!important;
}

body.single-product .bpe-gallery .woocommerce-product-gallery__image:first-child,
body.single-product .bpe-gallery .woocommerce-product-gallery__image:first-child > a,
body.single-product .bpe-gallery .woocommerce-product-gallery__image:first-child picture,
body.single-product .bpe-gallery .woocommerce-product-gallery__image:first-child img{
  display:block!important;
}

body.single-product .bpe-gallery .woocommerce-product-gallery__image:first-child img{
  width:100%!important;
  height:auto!important;
  object-fit:contain!important;
}

/* Supports JPG/JPEG/PNG/WebP/AVIF/GIF/SVG and <picture> delivery transparently.
   The browser chooses the supported source; BPE does not whitelist file extensions. */
body.single-product .bpe-gallery picture{
  width:100%!important;
}


/* ========================================================================
   BPE v0.30.94 — hero gallery state guard
   ======================================================================== */

body.single-product .bpe-gallery .woocommerce-product-gallery__image.flex-active-slide,
body.single-product .bpe-gallery .woocommerce-product-gallery__image.flex-active-slide > a,
body.single-product .bpe-gallery .woocommerce-product-gallery__image.flex-active-slide picture,
body.single-product .bpe-gallery .woocommerce-product-gallery__image.flex-active-slide img{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
}


/* ========================================================================
   BPE v0.30.97 — lighter Full Specs visual weight
   ======================================================================== */

body.single-product .bpe-spec-group{
  border-color:#E5E9F0!important;
  box-shadow:none!important;
}

body.single-product .bpe-spec-group h4{
  padding:14px 18px!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:700!important;
  letter-spacing:.01em!important;
  color:#273142!important;
  background:#FAFBFC!important;
}

body.single-product .bpe-spec-row{
  min-height:44px!important;
  padding:10px 18px!important;
  border-top-color:#EEF1F5!important;
}

body.single-product .bpe-spec-row dt{
  color:#7A8699!important;
  font-size:11.5px!important;
  line-height:1.35!important;
  font-weight:500!important;
}

body.single-product .bpe-spec-row dd{
  color:#2F3949!important;
  font-size:11.75px!important;
  line-height:1.4!important;
  font-weight:600!important;
}

@media(max-width:767px){
  body.single-product .bpe-spec-group h4{
    padding:12px 14px!important;
    font-size:11.5px!important;
  }

  body.single-product .bpe-spec-row{
    min-height:42px!important;
    padding:9px 14px!important;
  }

  body.single-product .bpe-spec-row dt{
    font-size:11px!important;
  }

  body.single-product .bpe-spec-row dd{
    font-size:11.25px!important;
  }
}

