/*
 * BN Shop UI – restyles the theme's own WooCommerce markup.
 * Selectors use WooCommerce's standard classes plus WoodMart's (.wd-*). If a theme does not use a class,
 * that rule is simply ignored.
 */

/* ---------- Header icons (WoodMart): size + cart count badge ---------- */
body.bns-icons .wd-tools-element .wd-tools-icon { color: inherit; }
body.bns-icons .wd-header-cart .wd-cart-number,
body.bns-icons .wd-tools-element .wd-tools-count {
	background: var(--bns-accent, #e0451f) !important; color: #fff !important; font-weight: 800;
}

/* ---------- Product cards in shop / category / related grids ---------- */
body.bns-cards .wd-product .product-wrapper,
body.bns-cards ul.products li.product {
	background: #fff; border: 1px solid #e6e9ef; border-radius: 18px; overflow: hidden;
	transition: box-shadow .2s ease;
}
body.bns-cards ul.products li.product { display: flex; flex-direction: column; padding: 0 0 12px !important; }
body.bns-cards .wd-product .product-wrapper:hover,
body.bns-cards ul.products li.product:hover { box-shadow: 0 12px 28px rgba(11, 27, 51, .10); }
body.bns-cards .wd-product .product-element-top,
body.bns-cards ul.products li.product > a:first-child { background: #f1f4f9; border-radius: 0; margin: 0 0 10px; }
body.bns-cards ul.products li.product img { aspect-ratio: 1 / 1; object-fit: contain; margin: 0 !important; background: #f1f4f9; width: 100%; }
body.bns-cards .wd-product .product-element-bottom,
body.bns-cards .wd-product .product-information { padding-left: 12px; padding-right: 12px; }
body.bns-cards .wd-product .wd-entities-title,
body.bns-cards ul.products li.product .woocommerce-loop-product__title {
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
	min-height: 2.6em; font-size: 15px !important; font-weight: 700 !important; line-height: 1.3 !important;
	padding: 0 12px !important; margin: 0 0 6px !important;
}
body.bns-cards .wd-product .wd-entities-title { padding: 0 !important; }
body.bns-cards .wd-product .price,
body.bns-cards ul.products li.product .price {
	display: flex !important; flex-wrap: wrap; align-items: baseline; gap: 4px 8px;
	font-size: 17px !important; font-weight: 800 !important; color: var(--bns-ink, #0b1636) !important;
}
body.bns-cards ul.products li.product .price { padding: 0 12px; margin: 0 0 10px !important; }
body.bns-cards .wd-product .price del,
body.bns-cards ul.products li.product .price del { order: 2; font-size: 13px; font-weight: 500; color: #6b7280 !important; opacity: 1; }
body.bns-cards .wd-product .price ins,
body.bns-cards ul.products li.product .price ins { order: 1; text-decoration: none; background: none; color: var(--bns-accent, #e0451f) !important; }
body.bns-cards .wd-product .product-labels .onsale,
body.bns-cards .wd-product .product-label.onsale,
body.bns-cards ul.products li.product .onsale {
	min-width: 0 !important; min-height: 0 !important; padding: 4px 10px !important; border-radius: 999px !important;
	background: var(--bns-accent, #e0451f) !important; color: #fff !important; font-size: 12px !important; font-weight: 800 !important; line-height: 1.2 !important;
}
body.bns-cards ul.products li.product .onsale { top: 8px !important; left: 8px !important; right: auto !important; margin: 0 !important; }
body.bns-cards .wd-product .wd-add-btn > a,
body.bns-cards ul.products li.product .button {
	border-radius: 10px !important; font-weight: 800 !important; text-transform: none !important; letter-spacing: 0 !important;
}
body.bns-cards ul.products li.product .button {
	display: flex !important; align-items: center; justify-content: center; min-height: 40px;
	margin: auto 12px 0 !important; padding: 0 12px !important; background: var(--bns-brand, #0025a7) !important; color: #fff !important; font-size: 14px !important;
}
body.bns-cards .wd-product .wd-add-btn > a.add_to_cart_button { background: var(--bns-brand, #0025a7); color: #fff; }

/* ---------- Checkout (classic) ---------- */
body.bns-cartui.woocommerce-checkout form.checkout input.input-text,
body.bns-cartui.woocommerce-checkout form.checkout select,
body.bns-cartui.woocommerce-checkout form.checkout textarea,
body.bns-cartui.woocommerce-checkout .select2-container .select2-selection--single {
	min-height: 48px; border-radius: 10px !important; border: 1px solid #c9cfd8 !important; font-size: 16px !important; background: #fff;
}
body.bns-cartui.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered { line-height: 46px; }
body.bns-cartui.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow { height: 46px; }
body.bns-cartui.woocommerce-checkout form.checkout textarea { min-height: 90px; padding-top: 10px; }
body.bns-cartui.woocommerce-checkout form.checkout input.input-text:focus,
body.bns-cartui.woocommerce-checkout form.checkout textarea:focus { border-color: var(--bns-brand, #0025a7) !important; box-shadow: 0 0 0 3px color-mix(in srgb, var(--bns-brand, #0025a7) 18%, transparent) !important; outline: none; }
body.bns-cartui.woocommerce-checkout form.checkout .form-row label { font-weight: 700; }
body.bns-cartui.woocommerce-checkout #order_review,
body.bns-cartui.woocommerce-checkout .woocommerce-checkout-review-order {
	border-radius: 24px; background: #fff; border: 1px solid #e3e6eb; padding: 20px;
}
body.bns-cartui.woocommerce-checkout #order_review table.shop_table { border: 0; margin: 0 0 16px; }
body.bns-cartui.woocommerce-checkout #order_review table.shop_table th,
body.bns-cartui.woocommerce-checkout #order_review table.shop_table td { border: 0; border-top: 1px solid #e3e6eb; padding: 10px 0; background: transparent; }
body.bns-cartui.woocommerce-checkout #order_review .order-total td,
body.bns-cartui.woocommerce-checkout #order_review .order-total th { font-size: 18px; font-weight: 800; }
body.bns-cartui.woocommerce-checkout #payment { background: transparent !important; border-radius: 16px; }
body.bns-cartui.woocommerce-checkout #payment ul.payment_methods { padding: 0 !important; border: 0 !important; display: flex; flex-direction: column; gap: 8px; }
body.bns-cartui.woocommerce-checkout #payment ul.payment_methods > li {
	list-style: none; margin: 0 !important; padding: 12px 14px !important; border: 1px solid #c9cfd8; border-radius: 14px; background: #fff;
}
body.bns-cartui.woocommerce-checkout #payment ul.payment_methods > li:has(input:checked) { border-color: var(--bns-brand, #0025a7); box-shadow: inset 0 0 0 1px var(--bns-brand, #0025a7); background: #f5f8ff; }
body.bns-cartui.woocommerce-checkout #payment ul.payment_methods li label { font-weight: 800; cursor: pointer; }
body.bns-cartui.woocommerce-checkout #payment div.payment_box { margin: 8px 0 0 !important; padding: 10px 12px !important; border-radius: 10px; background: #eef2fb !important; color: #26354d !important; font-size: 14px; }
body.bns-cartui.woocommerce-checkout #payment div.payment_box::before { display: none !important; }
body.bns-cartui.woocommerce-checkout #payment .place-order { padding: 16px 0 0 !important; }
body.bns-cartui.woocommerce-checkout #place_order {
	width: 100%; min-height: 54px; border-radius: 12px !important; background: var(--bns-brand, #0025a7) !important; color: #fff !important;
	font-size: 17px !important; font-weight: 800 !important; text-transform: none !important; letter-spacing: 0 !important;
}

/* ---------- My Account: navigation, forms, login ---------- */
body.bns-accountui .woocommerce-MyAccount-navigation ul {
	list-style: none; margin: 0; padding: 8px; border-radius: 20px; background: #fff; border: 1px solid #e3e6eb;
}
body.bns-accountui .woocommerce-MyAccount-navigation li { margin: 0; padding: 0; border: 0 !important; list-style: none; }
body.bns-accountui .woocommerce-MyAccount-navigation li a {
	display: flex; align-items: center; min-height: 44px; padding: 0 14px; border-radius: 12px;
	font-weight: 700; color: var(--bns-ink, #0b1636) !important; text-decoration: none !important; background: transparent;
}
body.bns-accountui .woocommerce-MyAccount-navigation li a:hover { background: #f1f4f9; }
body.bns-accountui .woocommerce-MyAccount-navigation li.is-active a { background: var(--bns-brand, #0025a7) !important; color: #fff !important; }
body.bns-accountui .woocommerce-MyAccount-content { min-width: 0; }
body.bns-accountui .woocommerce-MyAccount-content input.input-text,
body.bns-accountui .woocommerce-MyAccount-content select,
body.bns-accountui .woocommerce-form-login input.input-text,
body.bns-accountui .woocommerce-form-register input.input-text {
	min-height: 48px; border-radius: 10px !important; border: 1px solid #c9cfd8 !important; font-size: 16px !important; background: #fff;
}
body.bns-accountui .woocommerce-MyAccount-content .button,
body.bns-accountui .woocommerce-form-login .button,
body.bns-accountui .woocommerce-form-register .button {
	min-height: 48px; padding: 0 22px !important; border-radius: 12px !important; background: var(--bns-brand, #0025a7) !important; color: #fff !important;
	font-weight: 800 !important; text-transform: none !important; letter-spacing: 0 !important;
}
body.bns-accountui .woocommerce-orders-table { border: 1px solid #e3e6eb; border-radius: 16px; overflow: hidden; border-collapse: separate; border-spacing: 0; background: #fff; }
body.bns-accountui .woocommerce-orders-table th,
body.bns-accountui .woocommerce-orders-table td { padding: 12px 14px !important; border: 0 !important; border-top: 1px solid #e3e6eb !important; }
body.bns-accountui .woocommerce-orders-table thead th { border-top: 0 !important; background: #f6f7f9; }
body.bns-accountui .woocommerce-orders-table .button { min-height: 36px; padding: 0 14px !important; font-size: 13px !important; }
body.bns-accountui .woocommerce-Address { padding: 18px; border-radius: 18px; background: #fff; border: 1px solid #e3e6eb; }
/* Logged out: login / register as cards */
body.bns-accountui .woocommerce-form-login,
body.bns-accountui .woocommerce-form-register,
body.bns-accountui form.lost_reset_password {
	margin: 0 0 20px !important; padding: 24px !important; border: 1px solid #e3e6eb !important; border-radius: 24px !important; background: #fff;
}
body.bns-accountui #customer_login h2 { font-weight: 800; letter-spacing: -0.02em; }
body.bns-accountui .woocommerce-form-login .woocommerce-form-login__submit { width: 100%; margin-top: 8px; }

/* Account menu: a row of tabs above the content at every width (no sidebar), like the Vercel site. */
body.bns-accountui.woocommerce-account .woocommerce { display: block; }
body.bns-accountui .woocommerce-MyAccount-navigation { float: none !important; width: 100% !important; max-width: none !important; margin: 0 0 18px; position: static; }
body.bns-accountui .woocommerce-MyAccount-navigation ul { display: flex; flex-wrap: wrap; gap: 6px; padding: 6px; }
body.bns-accountui .woocommerce-MyAccount-navigation li a { min-height: 40px; white-space: nowrap; }
body.bns-accountui .woocommerce-MyAccount-content { float: none !important; width: 100% !important; max-width: none !important; }
@media (max-width: 768px) {
	/* Phone: account menu becomes a swipeable row of pills */
	body.bns-accountui .woocommerce-MyAccount-navigation ul { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
	body.bns-accountui .woocommerce-MyAccount-navigation ul::-webkit-scrollbar { display: none; }
	body.bns-accountui .woocommerce-MyAccount-navigation li { flex: none; }
	body.bns-cards ul.products li.product .woocommerce-loop-product__title { font-size: 14px !important; }
}
body.bns-cartui.woocommerce-checkout #order_review table.shop_table th,
body.bns-cartui.woocommerce-checkout #order_review table.shop_table td { text-align: left; font-size: 15px; }
body.bns-cartui.woocommerce-checkout #order_review table.shop_table td:last-child,
body.bns-cartui.woocommerce-checkout #order_review table.shop_table tfoot td { text-align: right; font-weight: 700; }
body.bns-cartui.woocommerce-checkout #order_review table.shop_table thead th { color: #6b7280; font-size: 13px; font-weight: 700; }

/* =====================================================================
 * 1.0.2 – premium thin-line icons + WoodMart fixes found on phone size
 * ===================================================================== */

/* Icons: one consistent thin stroke everywhere (inline SVGs in the shop sections too). */
body.bns-icons .bns-i { stroke-width: 1.6; }
body.bns-icons .wd-tools-element .wd-tools-count,
body.bns-icons .wd-header-cart .wd-cart-number {
	min-width: 17px !important; height: 17px !important; padding: 0 4px !important; border-radius: 999px !important;
	font-size: 10px !important; line-height: 17px !important; letter-spacing: 0 !important; box-shadow: 0 0 0 2px #fff;
}
body.bns-icons .wd-toolbar .wd-toolbar-label { font-size: 11px; font-weight: 600; letter-spacing: .01em; }

/* Product cards (WoodMart loop layout with icon-only buttons): proper 40px buttons instead of an 18px blob. */
body.bns-cards .wd-product .wd-add-btn.wd-style-icon > a {
	display: inline-flex !important; align-items: center; justify-content: center;
	width: 40px !important; height: 40px !important; min-width: 40px; min-height: 40px !important; padding: 0 !important;
	border-radius: 12px !important; background: var(--bns-brand, #0025a7) !important; color: #fff !important; box-shadow: none !important;
	transition: filter .15s ease;
}
body.bns-cards .wd-product .wd-add-btn.wd-style-icon > a:hover { filter: brightness(1.15); }
body.bns-cards .wd-product .wd-add-btn.wd-style-icon .wd-action-icon { display: inline-flex; align-items: center; justify-content: center; font-size: 18px; line-height: 1; color: #fff; }
body.bns-cards .wd-product .wd-add-btn.wd-style-icon .wd-action-text { display: none !important; }
body.bns-cards .wd-product .wd-add-btn.wd-style-icon .wd-action-icon::before,
body.bns-cards .wd-product .wd-add-btn.wd-style-icon .wd-action-icon::after { color: #fff !important; }
body.bns-cards .wd-product .wd-wishlist-btn .wd-action-icon,
body.bns-cards .wd-product .wd-compare-btn .wd-action-icon,
body.bns-cards .wd-product .wd-quick-view-btn .wd-action-icon { font-size: 18px; line-height: 1; }
body.bns-cards .wd-product .wd-entities-title a { color: var(--bns-ink, #0b1636); }

/* Homepage: the Elementor sections sat inside WoodMart's container AND their own 16px padding (double gutter on phones). */
.e-con:has(> .e-con-inner > [data-widget_type^="bns_"]),
.e-con:has(> [data-widget_type^="bns_"]) { --padding-left: 0px !important; --padding-right: 0px !important; }
@media (max-width: 767px) {
	body.home:has(.bns-hero) .wd-content-layout { padding-top: 14px !important; }
}

/* Cart: hidden sticky bar peeked out above the WoodMart toolbar; WoodMart headings are uppercase. */
body.bns-cartui .bns-sticky { transform: translateY(calc(100% + 90px)); }
body.bns-cartui .bns-sticky.is-visible { transform: none; }
body.bns-cartui.woocommerce-cart .scrollToTop { display: none !important; }
.bns-cartpage h2, .bns-cartpage .cart_totals h2 { text-transform: none !important; letter-spacing: -0.01em !important; }
.bns-cartpage .wd-shipping-progress-bar { margin: 0 !important; padding: 0 !important; border: 0 !important; }
.bns-cartpage .wd-free-progress-bar {
	padding: 14px 16px !important; border: 1px solid var(--bns-line, #e3e6eb) !important; border-radius: 18px !important; background: #fff !important;
}
.bns-cartpage .wd-free-progress-bar .progress-msg p { margin: 0 0 10px; font-size: 14px; }
.bns-cartpage .wd-free-progress-bar .progress-area { height: 8px !important; border-radius: 999px !important; background: #eef1f6 !important; overflow: hidden; }
.bns-cartpage .wd-free-progress-bar .progress-bar { height: 100% !important; border-radius: 999px !important; background: var(--bns-brand, #0025a7) !important; }

/* My Account: WoodMart's sidebar title (uppercase + rule) matched to the rest of the page. */
body.bns-accountui .wd-my-account-wrapper { display: block !important; }
body.bns-accountui .wd-my-account-sidebar { width: 100% !important; max-width: none !important; }
body.bns-accountui .woocommerce-MyAccount-title {
	margin: 0 0 12px !important; padding: 0 !important; border: 0 !important;
	font-size: 22px !important; font-weight: 800 !important; text-transform: none !important; letter-spacing: -0.01em !important;
}
body.bns-accountui .woocommerce-MyAccount-content { overflow-wrap: anywhere; }

/* Homepage product cards on phones: keep "Buy now" / "Choose options" on one line. */
.bns-card__actions .bns-btn { white-space: nowrap; }
@media (max-width: 480px) {
	.bns-card__actions .bns-btn { font-size: 13px; padding-left: 8px; padding-right: 8px; }
	.bns-card__actions .bns-buy .bns-i { display: none; }
}

/* WoodMart turns totals tables into display:block on phones, so rows shrink to their content. Keep them real tables. */
.bns-cartpage .cart_totals table.shop_table,
body.bns-cartui.woocommerce-checkout #order_review table.shop_table { display: table !important; width: 100% !important; }
.bns-cartpage .cart_totals table.shop_table tbody,
body.bns-cartui.woocommerce-checkout #order_review table.shop_table tbody { display: table-row-group !important; }
body.bns-cartui.woocommerce-checkout #order_review table.shop_table thead { display: table-header-group !important; }
body.bns-cartui.woocommerce-checkout #order_review table.shop_table tfoot { display: table-footer-group !important; }
.bns-cartpage .cart_totals table.shop_table th { vertical-align: middle; }

/* =====================================================================
 * 1.0.5 – Shopify-style icons, account, sign in / create account, checkout
 * ===================================================================== */

/* Icons: Shopify-like dark count bubble, calm labels */
body.bns-icons .wd-tools-element .wd-tools-count,
body.bns-icons .wd-header-cart .wd-cart-number { background: var(--bns-ink, #0b1636) !important; color: #fff !important; font-weight: 700 !important; }
body.bns-icons .wd-toolbar .wd-toolbar-label { font-weight: 500; color: #4a5568; }
body.bns-icons .wd-tools-element .wd-tools-icon { color: var(--bns-ink, #0b1636); }

/* My Account: WoodMart's big icon tiles under the dashboard duplicate our dashboard */
body.bns-accountui .woocommerce-MyAccount-content .wd-my-account-links { display: none !important; }

/* Sign in / Create account (logged out) */
body.bns-accountui .wd-registration-page,
body.bns-accountui #customer_login { max-width: 460px; margin: 0 auto 32px !important; }
body.bns-accountui #customer_login { display: block !important; }
body.bns-accountui #customer_login > .wd-col,
body.bns-accountui #customer_login > .u-column1,
body.bns-accountui #customer_login > .u-column2 { width: 100% !important; max-width: none !important; flex: none !important; margin: 0 !important; padding: 0 !important; border: 0 !important; }
body.bns-accountui #customer_login .col-register-text { display: none !important; }
body.bns-accountui #customer_login.bns-auth .col-register,
body.bns-accountui #customer_login.bns-auth.is-register .col-login { display: none !important; }
body.bns-accountui #customer_login.bns-auth.is-register .col-register { display: block !important; }
body.bns-accountui #customer_login .wd-login-title,
body.bns-accountui #customer_login h2 { margin: 0 0 4px !important; font-size: 28px !important; font-weight: 800 !important; text-transform: none !important; letter-spacing: -0.02em !important; }
.bns-auth__lead { margin: 0 0 16px; font-size: 15px; color: #4a5568; }
.bns-auth-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; margin: 0 0 20px; padding: 4px; border-radius: 14px; background: #eef1f6; }
.bns-auth-tabs button {
	min-height: 44px; margin: 0; padding: 0 12px; border: 0; border-radius: 10px; background: transparent; box-shadow: none;
	color: #4a5568; font-size: 15px; font-weight: 700; text-transform: none; letter-spacing: 0; cursor: pointer;
}
.bns-auth-tabs button[aria-selected="true"] { background: #fff; color: var(--bns-ink, #0b1636); box-shadow: 0 1px 3px rgba(11, 27, 51, .14); }
body.bns-accountui #customer_login form.woocommerce-form { margin: 0 !important; padding: 22px !important; border: 1px solid #e3e6eb !important; border-radius: 20px !important; background: #fff; box-shadow: 0 10px 30px rgba(11, 27, 51, .06); }
body.bns-accountui #customer_login .form-row { margin: 0 0 14px !important; padding: 0 !important; }
body.bns-accountui #customer_login label { margin-bottom: 6px; font-size: 13px; font-weight: 600; color: #26354d; }
body.bns-accountui #customer_login .form-row-btn { margin-top: 18px !important; }
body.bns-accountui #customer_login button.button { width: 100%; min-height: 50px; }
body.bns-accountui #customer_login .login-form-footer { display: flex; align-items: center; justify-content: space-between; gap: 8px; flex-wrap: wrap; margin: 4px 0 0 !important; font-size: 14px; }
body.bns-accountui #customer_login .lost_password { font-weight: 700; color: var(--bns-brand, #0025a7) !important; }
body.bns-accountui #customer_login .woocommerce-privacy-policy-text { font-size: 12px; line-height: 1.5; color: #6b7280; }

/* Checkout (classic): Shopify-like order summary, numbered cards, two columns on desktop */
body.bns-cartui.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
	margin: 0 0 12px !important; padding: 14px 16px !important; border: 0 !important; border-radius: 14px; background: #f4f5f7 !important; color: #26354d !important; font-size: 14px;
}
body.bns-cartui.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before { display: none !important; }
body.bns-cartui.woocommerce-checkout .woocommerce-form-coupon-toggle a { font-weight: 700; color: var(--bns-brand, #0025a7) !important; }
body.bns-cartui.woocommerce-checkout form.checkout_coupon { margin: 0 0 12px !important; padding: 14px !important; border: 1px solid #e3e6eb !important; border-radius: 14px !important; }
body.bns-cartui form.woocommerce-checkout { display: grid !important; grid-template-columns: minmax(0, 1fr); gap: 14px; counter-reset: bnsstep; }
body.bns-cartui form.woocommerce-checkout > * { min-width: 0; width: auto !important; max-width: none !important; float: none !important; margin: 0 !important; }
body.bns-cartui form.woocommerce-checkout #customer_details { display: flex !important; flex-direction: column; gap: 14px; }
body.bns-cartui form.woocommerce-checkout #customer_details > * { width: auto !important; float: none !important; margin: 0 !important; }
body.bns-cartui form.woocommerce-checkout .woocommerce-billing-fields,
body.bns-cartui form.woocommerce-checkout .woocommerce-additional-fields,
body.bns-cartui form.woocommerce-checkout .woocommerce-shipping-fields:not(:empty),
body.bns-cartui form.woocommerce-checkout .checkout-order-review {
	padding: 18px !important; border: 1px solid #e3e6eb; border-radius: 20px; background: #fff;
}
body.bns-cartui form.woocommerce-checkout .woocommerce-billing-fields > h3,
body.bns-cartui form.woocommerce-checkout .woocommerce-additional-fields > h3,
body.bns-cartui form.woocommerce-checkout #order_review_heading {
	counter-increment: bnsstep; display: flex; align-items: center; gap: 10px; margin: 0 0 16px !important; padding: 0 !important; border: 0 !important;
	font-size: 18px !important; font-weight: 800 !important; text-transform: none !important; letter-spacing: -0.01em !important;
}
body.bns-cartui form.woocommerce-checkout .woocommerce-billing-fields > h3::before,
body.bns-cartui form.woocommerce-checkout .woocommerce-additional-fields > h3::before,
body.bns-cartui form.woocommerce-checkout #order_review_heading::before {
	content: counter(bnsstep); flex: none; display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px;
	border-radius: 999px; background: var(--bns-brand, #0025a7); color: #fff; font-size: 13px; font-weight: 800;
}
body.bns-cartui form.woocommerce-checkout .woocommerce-billing-fields__field-wrapper { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; }
body.bns-cartui form.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row { grid-column: 1 / -1; width: auto !important; float: none !important; margin: 0 !important; padding: 0 !important; }
body.bns-cartui form.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-first { grid-column: 1; }
body.bns-cartui form.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-last { grid-column: 2; }
body.bns-cartui.woocommerce-checkout form.checkout .form-row label { margin-bottom: 6px; font-size: 13px; font-weight: 600 !important; color: #26354d; }
body.bns-cartui.woocommerce-checkout form.checkout .woocommerce-additional-fields .form-row { margin: 0 !important; padding: 0 !important; }
body.bns-cartui.woocommerce-checkout #customer_details .wd-shipping-progress-bar { margin: 0 !important; padding: 0 !important; border: 0 !important; }
body.bns-cartui.woocommerce-checkout .wd-free-progress-bar { padding: 14px 16px !important; border: 1px solid #e3e6eb !important; border-radius: 18px !important; background: #fff !important; }
body.bns-cartui.woocommerce-checkout .wd-free-progress-bar .progress-msg p { margin: 0 0 10px; font-size: 14px; }
body.bns-cartui.woocommerce-checkout .wd-free-progress-bar .progress-area { height: 8px !important; border-radius: 999px !important; background: #eef1f6 !important; overflow: hidden; }
body.bns-cartui.woocommerce-checkout .wd-free-progress-bar .progress-bar { height: 100% !important; border-radius: 999px !important; background: var(--bns-brand, #0025a7) !important; }
body.bns-cartui.woocommerce-checkout .checkout-order-review #order_review { padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; }
/* Order summary (built by bns.js from WooCommerce's review table) */
.bns-co-summary { border: 1px solid #e3e6eb; border-radius: 20px; background: #f6f7f9; overflow: hidden; }
.bns-co-summary > summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 58px; padding: 0 18px; cursor: pointer; list-style: none; }
.bns-co-summary > summary::-webkit-details-marker { display: none; }
.bns-co-summary__label { display: inline-flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 700; color: var(--bns-brand, #0025a7); }
.bns-co-summary__label::after { content: ""; width: 8px; height: 8px; margin-top: -4px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); transition: transform .2s ease; }
.bns-co-summary[open] .bns-co-summary__label::after { margin-top: 4px; transform: rotate(-135deg); }
.bns-co-summary__total { font-size: 18px; font-weight: 800; color: var(--bns-ink, #0b1636); }
.bns-co-summary__body { padding: 0 18px 10px; border-top: 1px solid #e3e6eb; }
.bns-co-summary table.shop_table { display: table !important; width: 100% !important; margin: 0 !important; border: 0 !important; background: transparent !important; }
.bns-co-summary table.shop_table thead { display: none !important; }
.bns-co-summary table.shop_table tbody { display: table-row-group !important; }
.bns-co-summary table.shop_table tfoot { display: table-footer-group !important; }
.bns-co-summary table.shop_table th,
.bns-co-summary table.shop_table td { padding: 12px 0 !important; border: 0 !important; border-top: 1px solid #e3e6eb !important; background: transparent !important; font-size: 14px; vertical-align: middle; }
.bns-co-summary table.shop_table tbody tr:first-child td { border-top: 0 !important; }
.bns-co-summary table.shop_table td:last-child,
.bns-co-summary table.shop_table tfoot td { text-align: right; font-weight: 700; }
.bns-co-summary table.shop_table .order-total th,
.bns-co-summary table.shop_table .order-total td { font-size: 17px; font-weight: 800; color: var(--bns-ink, #0b1636); }
.bns-co-summary .product-name img { width: 56px !important; height: 56px !important; margin: 0 10px 0 0 !important; border-radius: 12px; border: 1px solid #e3e6eb; background: #fff; object-fit: contain; }
@media (min-width: 1024px) {
	body.bns-cartui form.woocommerce-checkout { grid-template-columns: minmax(0, 1fr) 420px; grid-template-areas: "details summary" "details review"; align-items: start; column-gap: 28px; }
	body.bns-cartui form.woocommerce-checkout #customer_details { grid-area: details; grid-row: 1 / span 2; }
	body.bns-cartui form.woocommerce-checkout .bns-co-summary { grid-area: summary; }
	body.bns-cartui form.woocommerce-checkout .checkout-order-review { grid-area: review; }
	.bns-co-summary > summary { pointer-events: none; }
	.bns-co-summary__label::after { display: none; }
}

/* 1.0.7 – polish: theme list margins, checkout payment card, sign-in details */
.bns-repair__brands > li, .bns-slide__brands > li, .bns-slide__deals > li { margin: 0 !important; }
body.bns-cartui form.woocommerce-checkout .checkout-order-review { background: #fff !important; box-shadow: none !important; }
body.bns-cartui form.woocommerce-checkout .checkout-order-review::before,
body.bns-cartui form.woocommerce-checkout .checkout-order-review::after { display: none !important; }
body.bns-cartui.woocommerce-checkout #payment .woocommerce-privacy-policy-text { font-size: 13px; line-height: 1.5; color: #6b7280; }
body.bns-accountui #customer_login.bns-auth .wd-login-title,
body.bns-accountui #customer_login.bns-auth > .wd-col > h2,
body.bns-accountui #customer_login.bns-auth > .u-column1 > h2,
body.bns-accountui #customer_login.bns-auth > .u-column2 > h2 { display: none !important; }
body.bns-accountui #customer_login .bns-auth__lead { font-size: 14px; }
body.bns-accountui #customer_login button.button { font-size: 16px !important; font-weight: 800 !important; text-transform: none !important; letter-spacing: 0 !important; border-radius: 12px !important; }
body.bns-accountui #customer_login .woocommerce-form-register > p:not(.form-row) { font-size: 14px; line-height: 1.5; color: #4a5568; }
@media (min-width: 1024px) {
	body.bns-cartui form.woocommerce-checkout { grid-template-rows: auto 1fr; }
	body.bns-cartui form.woocommerce-checkout .bns-co-summary, body.bns-cartui form.woocommerce-checkout .checkout-order-review { align-self: start; }
}

/* 2.0.1 – Header icons like Jigsaw / Shopify themes: plain thin icons, no circles; count only on the cart */
body.bns-icons .whb-header .wd-tools-element .wd-tools-icon,
body.bns-icons .wd-toolbar .wd-tools-element .wd-tools-icon {
	width: auto !important; height: auto !important; min-width: 0 !important; padding: 0 !important;
	background: transparent !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
	color: var(--bns-ink, #0b1636) !important;
}
body.bns-icons .whb-header .wd-tools-element .wd-tools-icon::before { width: 24px !important; height: 24px !important; }
body.bns-icons .whb-header .wd-tools-element > a { gap: 6px; color: var(--bns-ink, #0b1636) !important; }
body.bns-icons .whb-header .wd-tools-element > a:hover .wd-tools-icon { opacity: .65; }
body.bns-icons .whb-header .wd-header-compare .wd-tools-count,
body.bns-icons .whb-header .wd-header-wishlist .wd-tools-count,
body.bns-icons .wd-toolbar .wd-toolbar-compare .wd-tools-count,
body.bns-icons .wd-toolbar .wd-toolbar-wishlist .wd-tools-count { display: none !important; }
body.bns-icons .whb-header .wd-header-cart .wd-tools-icon { position: relative; }
body.bns-icons .whb-header .wd-header-cart .wd-cart-number,
body.bns-icons .whb-header .wd-header-cart .wd-tools-count {
	position: absolute !important; top: -6px !important; right: -8px !important; left: auto !important;
	min-width: 17px !important; height: 17px !important; padding: 0 4px !important; border-radius: 999px !important;
	background: var(--bns-ink, #0b1636) !important; color: #fff !important; font-size: 10px !important; line-height: 17px !important; box-shadow: 0 0 0 2px #fff !important;
}

/* 2.0.2 – no "0" bubbles on wishlist / compare anywhere (header, mobile toolbar) */
body.bns-icons .wd-header-compare .wd-tools-count,
body.bns-icons .wd-header-wishlist .wd-tools-count { display: none !important; }

/* 2.0.3 – empty cart: only the plugin card (hide WoodMart's big empty-cart block if it still prints) */
body.bns-cartui.woocommerce-cart .wd-empty-page:not(.bns-empty),
body.bns-cartui.woocommerce-cart .wd-empty-page-text,
body.bns-cartui.woocommerce-cart p.cart-empty:not(.bns-empty),
body.bns-cartui.woocommerce-cart .return-to-shop:not(.bns *) { display: none !important; }

/* 2.0.4 – free-shipping bar: keep the fill inside the track (it was pushed below and clipped) */
body.bns-cartui .wd-free-progress-bar .progress-area { position: relative !important; display: block !important; height: 8px !important; padding: 0 !important; line-height: 0 !important; }
body.bns-cartui .wd-free-progress-bar .progress-area::before,
body.bns-cartui .wd-free-progress-bar .progress-area::after { display: none !important; }
body.bns-cartui .wd-free-progress-bar .progress-bar { position: absolute !important; top: 0 !important; left: 0 !important; bottom: 0 !important; height: auto !important; max-width: 100%; margin: 0 !important; border-radius: 999px !important; background: var(--bns-brand, #0025a7) !important; transition: width .35s ease; }

/* =====================================================================
 * 2.2.0 – Checkout in cards (order review + address | payment, coupon, totals, notes, place order)
 * ===================================================================== */
body.bns-cartui.woocommerce-checkout .main-page-wrapper,
body.bns-cartui.woocommerce-checkout .wd-page-content { background: #f4f5f7; }
body.bns-cartui.woocommerce-checkout .woocommerce-form-coupon-toggle,
body.bns-cartui.woocommerce-checkout form.checkout_coupon { display: none !important; }

.bns-co-login { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin: 0 0 16px; padding: 12px 16px; border: 1px solid #d7dce4; border-radius: 14px; background: #fff; font-size: 15px; }
.bns-co-login__btns { display: flex; gap: 8px; }
.bns-co-login a { display: inline-flex; align-items: center; min-height: 38px; padding: 0 16px; border-radius: 10px; font-size: 14px; font-weight: 700; text-decoration: none !important; }
.bns-co-login__in { border: 1.5px solid var(--bns-accent, #e0451f); color: var(--bns-accent, #e0451f) !important; background: #fff; }
.bns-co-login__reg { background: var(--bns-accent, #e0451f); color: #fff !important; }

body.bns-cartui form.woocommerce-checkout.bns-co { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; grid-template-areas: none !important; grid-template-rows: auto !important; gap: 16px; counter-reset: none; }
form.bns-co > .bns-co__main,
form.bns-co > .bns-co__side { display: flex; flex-direction: column; gap: 16px; min-width: 0; margin: 0 !important; }
form.bns-co > .bns-co__side { position: relative; }
form.bns-co #customer_details { grid-area: auto !important; grid-row: auto !important; display: block !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; }
form.bns-co #customer_details:not(:has(.wd-shipping-progress-bar)) { display: none !important; }

.bns-co-card { margin: 0 !important; padding: 18px !important; border: 1px solid #e6e9ef !important; border-radius: 18px !important; background: #fff !important; box-shadow: none !important; }
.bns-co-title,
form.bns-co .bns-co-coupon > summary {
	display: block; margin: 0 0 16px !important; padding: 0 0 0 10px !important; border: 0 !important; border-left: 3px solid var(--bns-accent, #e0451f) !important;
	font-size: 18px !important; font-weight: 700 !important; line-height: 1.25 !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--bns-ink, #0b1636);
}
form.bns-co h3::before, form.bns-co .bns-co-title::before { content: none !important; display: none !important; }

/* Order review */
form.bns-co .bns-co-review table.shop_table { display: table !important; width: 100% !important; margin: 0 !important; border: 0 !important; background: transparent !important; }
form.bns-co .bns-co-review table.shop_table thead { display: none !important; }
form.bns-co .bns-co-review table.shop_table tbody { display: table-row-group !important; }
form.bns-co .bns-co-review table.shop_table tfoot { display: table-footer-group !important; }
form.bns-co .bns-co-review table.shop_table tfoot tr:not(.bns-keep) { display: none !important; }
form.bns-co .bns-co-review table.shop_table td,
form.bns-co .bns-co-review table.shop_table th { padding: 12px 0 !important; border: 0 !important; border-top: 1px solid #eef0f4 !important; background: transparent !important; vertical-align: middle; font-size: 15px; }
form.bns-co .bns-co-review table.shop_table tbody tr:first-child td { border-top: 0 !important; padding-top: 0 !important; }
form.bns-co .bns-co-review img { width: 64px !important; height: 64px !important; object-fit: contain; border: 1px solid #e6e9ef; border-radius: 10px; background: #fff; }
form.bns-co .bns-co-review td:last-child { text-align: right; font-weight: 700; white-space: nowrap; }

/* Shipping address */
form.bns-co .bns-co-card--ship .woocommerce-billing-fields,
form.bns-co .bns-co-card--ship .woocommerce-shipping-fields { margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; }
form.bns-co .bns-co-card--ship .woocommerce-billing-fields > h3 { display: none !important; }
form.bns-co .woocommerce-billing-fields__field-wrapper { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px !important; }
form.bns-co .woocommerce-billing-fields__field-wrapper .form-row { grid-column: 1 / -1; margin: 0 !important; padding: 0 !important; width: auto !important; float: none !important; }
form.bns-co .woocommerce-billing-fields__field-wrapper .form-row-first { grid-column: 1; }
form.bns-co .woocommerce-billing-fields__field-wrapper .form-row-last { grid-column: 2; }
form.bns-co .woocommerce-billing-fields__field-wrapper .form-row > label { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }
form.bns-co .bns-hidden-field { display: none !important; }
form.bns-co .form-row select.bns-select,
form.bns-co .form-row select { width: 100%; min-height: 48px; padding: 0 12px; border: 1px solid #c9cfd8 !important; border-radius: 10px !important; background-color: #fff; font-size: 16px !important; color: var(--bns-ink, #0b1636); }
.bns-co-prefix { display: flex; align-items: stretch; width: 100%; min-height: 48px; overflow: hidden; border: 1px solid #c9cfd8; border-radius: 10px; background: #fff; }
.bns-co-prefix:focus-within { border-color: var(--bns-brand, #0025a7); box-shadow: 0 0 0 3px color-mix(in srgb, var(--bns-brand, #0025a7) 18%, transparent); }
.bns-co-prefix__cc { display: flex; align-items: center; padding: 0 12px; border-right: 1px solid #e3e6eb; background: #f4f5f7; font-weight: 700; color: #26354d; }
body.bns-cartui.woocommerce-checkout form.checkout .bns-co-prefix input.input-text { flex: 1; min-width: 0; min-height: 46px; margin: 0 !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
@media (max-width: 479px) {
	form.bns-co .woocommerce-billing-fields__field-wrapper .form-row-first,
	form.bns-co .woocommerce-billing-fields__field-wrapper .form-row-last { grid-column: 1 / -1; }
}

/* Right column: payment, coupon, totals, notes, place order */
form.bns-co .checkout-order-review,
form.bns-co #order_review,
form.bns-co #payment { display: contents !important; }
form.bns-co #order_review_heading { display: none !important; }
form.bns-co .bns-co-payhead { order: 1; margin: 0 !important; padding: 18px 18px 14px 28px !important; border: 1px solid #e6e9ef !important; border-bottom: 0 !important; border-left: 1px solid #e6e9ef !important; border-radius: 18px 18px 0 0; background: #fff; position: relative; }
form.bns-co .bns-co-payhead::after { content: ""; position: absolute; left: 18px; top: 18px; bottom: 14px; width: 3px; background: var(--bns-accent, #e0451f); }
body.bns-cartui.woocommerce-checkout form.bns-co #payment ul.payment_methods {
	order: 2; display: grid !important; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px;
	margin: -16px 0 0 !important; padding: 0 18px 18px !important; border: 1px solid #e6e9ef !important; border-top: 0 !important; border-radius: 0 0 18px 18px; background: #fff;
}
body.bns-cartui.woocommerce-checkout form.bns-co #payment ul.payment_methods > li { position: relative; margin: 0 !important; padding: 12px 40px 12px 14px !important; border: 1.5px solid #d7dce4; border-radius: 12px; background: #fff; box-shadow: none !important; }
body.bns-cartui.woocommerce-checkout form.bns-co #payment ul.payment_methods > li:has(input:checked) { border-color: var(--bns-accent, #e0451f); background: #fff6f1; box-shadow: none !important; }
body.bns-cartui.woocommerce-checkout form.bns-co #payment ul.payment_methods > li:has(input:checked)::after { content: "✓"; position: absolute; top: 12px; right: 12px; display: flex; align-items: center; justify-content: center; width: 20px; height: 20px; border-radius: 999px; background: var(--bns-accent, #e0451f); color: #fff; font-size: 12px; font-weight: 800; }
body.bns-cartui.woocommerce-checkout form.bns-co #payment ul.payment_methods > li > input.input-radio { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; z-index: 1; }
body.bns-cartui.woocommerce-checkout form.bns-co #payment ul.payment_methods > li > label { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 15px; font-weight: 700; }
body.bns-cartui.woocommerce-checkout form.bns-co #payment ul.payment_methods > li > label img { max-height: 24px; width: auto; }
body.bns-cartui.woocommerce-checkout form.bns-co #payment div.payment_box { margin: 6px 0 0 !important; padding: 0 !important; background: none !important; color: #6b7280 !important; font-size: 13px; }
body.bns-cartui.woocommerce-checkout form.bns-co #payment div.payment_box p { margin: 0; }

form.bns-co .bns-co-coupon { order: 3; padding: 0 !important; }
form.bns-co .bns-co-coupon > summary { position: relative; margin: 0 !important; padding: 18px 44px 18px 28px !important; border-left: 0 !important; list-style: none; cursor: pointer; }
form.bns-co .bns-co-coupon > summary::-webkit-details-marker { display: none; }
form.bns-co .bns-co-coupon > summary::before { content: "" !important; display: block !important; position: absolute; left: 18px; top: 18px; bottom: 18px; width: 3px; background: var(--bns-accent, #e0451f); }
form.bns-co .bns-co-coupon > summary::after { content: ""; position: absolute; right: 20px; top: 50%; width: 8px; height: 8px; margin-top: -6px; border-right: 2px solid #6b7280; border-bottom: 2px solid #6b7280; transform: rotate(45deg); transition: transform .2s ease; }
form.bns-co .bns-co-coupon[open] > summary::after { margin-top: -2px; transform: rotate(-135deg); }
.bns-co-coupon__row { display: flex; gap: 8px; margin: 0 18px 18px; padding: 6px; border: 1px solid #e6e9ef; border-radius: 12px; }
body.bns-cartui.woocommerce-checkout .bns-co-coupon__row input.input-text { flex: 1; min-width: 0; min-height: 42px !important; border: 0 !important; box-shadow: none !important; font-size: 15px !important; }
.bns-co-coupon__row .button { min-height: 42px !important; padding: 0 16px !important; border-radius: 9px !important; background: var(--bns-accent, #e0451f) !important; color: #fff !important; font-weight: 700 !important; text-transform: none !important; letter-spacing: 0 !important; }

form.bns-co .bns-co-totals { order: 4; display: flex; flex-direction: column; gap: 10px; }
.bns-co-row { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; font-size: 15px; color: #4a5568; }
.bns-co-row strong { color: var(--bns-ink, #0b1636); font-weight: 600; text-align: right; }
.bns-co-row.is-total { margin-top: 6px; padding-top: 12px; border-top: 1px solid #eef0f4; font-size: 18px; font-weight: 800; color: var(--bns-ink, #0b1636); }
.bns-co-row.is-total strong { font-weight: 800; }
.bns-co-row a.woocommerce-remove-coupon { margin-left: 6px; font-size: 12px; }

form.bns-co .bns-co-card--notes { order: 5; }
form.bns-co .bns-co-card--notes .woocommerce-additional-fields { margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; }
form.bns-co .bns-co-card--notes .woocommerce-additional-fields > h3 { display: none !important; }
form.bns-co .bns-co-card--notes label { display: block; margin: 0 0 12px !important; padding-left: 10px; border-left: 3px solid var(--bns-accent, #e0451f); font-size: 18px !important; font-weight: 700 !important; color: var(--bns-ink, #0b1636); }
form.bns-co .bns-co-card--notes label .optional { font-size: 13px; font-weight: 600; color: #6b7280; }
form.bns-co .bns-co-card--notes textarea { min-height: 90px !important; }
.bns-co-count { margin: 6px 0 0 !important; font-size: 13px; color: #6b7280; }

body.bns-cartui.woocommerce-checkout form.bns-co #payment .place-order { order: 6; display: flex; flex-direction: column; gap: 12px; margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; }
body.bns-cartui.woocommerce-checkout form.bns-co #place_order { width: 100%; min-height: 56px; border-radius: 12px !important; background: var(--bns-accent, #e0451f) !important; color: #fff !important; font-size: 17px !important; font-weight: 800 !important; letter-spacing: .04em !important; text-transform: uppercase !important; }
body.bns-cartui.woocommerce-checkout form.bns-co #place_order:hover { filter: brightness(1.06); }
body.bns-cartui.woocommerce-checkout form.bns-co .woocommerce-terms-and-conditions-wrapper { font-size: 14px; }

@media (min-width: 1024px) {
	body.bns-cartui form.woocommerce-checkout.bns-co { grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr) !important; column-gap: 24px; align-items: start; }
	form.bns-co > .bns-co__side { position: sticky; top: 110px; }
	.bns-co-card { padding: 22px !important; }
}
/* 2.2.0 – stronger resets over the 1.0.5 checkout card styles */
body.bns-cartui.woocommerce-checkout form.bns-co #payment ul.payment_methods::before,
body.bns-cartui.woocommerce-checkout form.bns-co #payment ul.payment_methods::after { content: none !important; display: none !important; }
body.bns-cartui form.woocommerce-checkout.bns-co #customer_details:not(:has(.wd-shipping-progress-bar)) { display: none !important; }
body.bns-cartui form.woocommerce-checkout.bns-co .bns-co-card .woocommerce-billing-fields,
body.bns-cartui form.woocommerce-checkout.bns-co .bns-co-card .woocommerce-shipping-fields,
body.bns-cartui form.woocommerce-checkout.bns-co .bns-co-card .woocommerce-additional-fields { margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: none !important; }
body.bns-cartui form.woocommerce-checkout.bns-co .bns-co-card .woocommerce-additional-fields > h3,
body.bns-cartui form.woocommerce-checkout.bns-co .bns-co-card .woocommerce-billing-fields > h3 { display: none !important; }
/* 2.2.2 – WoodMart order-review cell: let long product names wrap */
form.bns-co .bns-co-review table.shop_table { table-layout: fixed; }
form.bns-co .bns-co-review td.wd-checkout-prod { text-align: left; white-space: normal; font-weight: inherit; }
form.bns-co .bns-co-review .wd-checkout-prod-cont { min-width: 0 !important; }
form.bns-co .bns-co-review .wd-checkout-prod-cont,
form.bns-co .bns-co-review .wd-checkout-prod-cont .wd-checkout-prod-title,
form.bns-co .bns-co-review .wd-checkout-prod-cont a,
form.bns-co .bns-co-review .wd-checkout-prod-cont .cart-product-label { white-space: normal !important; overflow-wrap: anywhere; }
form.bns-co .bns-co-review .wd-checkout-prod-total { font-weight: 700; color: var(--bns-ink, #0b1636); }
/* Phone sits beside Full name on wider screens */
form.bns-co .woocommerce-billing-fields__field-wrapper #billing_first_name_field { order: 1; }
form.bns-co .woocommerce-billing-fields__field-wrapper #billing_phone_field { order: 2; }
form.bns-co .woocommerce-billing-fields__field-wrapper #billing_email_field { order: 3; }
form.bns-co .woocommerce-billing-fields__field-wrapper #billing_address_1_field { order: 4; }
form.bns-co .woocommerce-billing-fields__field-wrapper #billing_city_field { order: 5; }
form.bns-co .woocommerce-billing-fields__field-wrapper #billing_address_2_field { order: 6; }
/* 2.2.3 – brand colour, full-width fields and payment tiles, ship-to-different-address */
form.bns-co, .bns-co-login { --bns-accent: var(--bns-brand, #0025a7); }
body.bns-cartui.woocommerce-checkout form.bns-co #payment ul.payment_methods { grid-template-columns: minmax(0, 1fr) !important; }
body.bns-cartui.woocommerce-checkout form.bns-co #payment ul.payment_methods > li:has(input:checked) { background: color-mix(in srgb, var(--bns-brand, #0025a7) 6%, #fff); }
form.bns-co .woocommerce-billing-fields__field-wrapper,
form.bns-co .woocommerce-shipping-fields__field-wrapper { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: 12px !important; }
form.bns-co .woocommerce-billing-fields__field-wrapper .form-row,
form.bns-co .woocommerce-billing-fields__field-wrapper .form-row-first,
form.bns-co .woocommerce-billing-fields__field-wrapper .form-row-last,
form.bns-co .woocommerce-shipping-fields__field-wrapper .form-row { grid-column: 1 / -1 !important; width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
form.bns-co .woocommerce-shipping-fields__field-wrapper .form-row > label { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }
form.bns-co .form-row input.input-text, form.bns-co .form-row select, form.bns-co .form-row textarea { width: 100% !important; max-width: none !important; }
form.bns-co .woocommerce-shipping-fields__field-wrapper #shipping_first_name_field { order: 1; }
form.bns-co .woocommerce-shipping-fields__field-wrapper #shipping_address_1_field { order: 2; }
form.bns-co .woocommerce-shipping-fields__field-wrapper #shipping_city_field { order: 3; }
form.bns-co .woocommerce-shipping-fields__field-wrapper #shipping_address_2_field { order: 4; }
body.bns-cartui form.woocommerce-checkout.bns-co .bns-co-card .woocommerce-shipping-fields { margin-top: 16px !important; padding-top: 16px !important; border-top: 1px solid #eef0f4 !important; }
form.bns-co #ship-to-different-address { display: block !important; margin: 0 !important; padding: 0 !important; border: 0 !important; font-size: 15px !important; font-weight: 600 !important; text-transform: none !important; letter-spacing: 0 !important; }
form.bns-co #ship-to-different-address label { display: flex !important; align-items: center; gap: 10px; margin: 0 !important; padding: 12px 14px; border: 1.5px solid #d7dce4; border-radius: 12px; cursor: pointer; color: var(--bns-ink, #0b1636); }
form.bns-co #ship-to-different-address label:has(input:checked) { border-color: var(--bns-brand, #0025a7); background: color-mix(in srgb, var(--bns-brand, #0025a7) 6%, #fff); }
form.bns-co #ship-to-different-address input[type=checkbox] { width: 20px; height: 20px; margin: 0 !important; flex: none; accent-color: var(--bns-brand, #0025a7); }
form.bns-co .shipping_address { margin-top: 14px; }
/* 2.2.4 */
form.bns-co .woocommerce-shipping-fields__field-wrapper #shipping_phone_field { order: 2; }
form.bns-co .woocommerce-shipping-fields__field-wrapper #shipping_address_1_field { order: 3; }
form.bns-co .woocommerce-shipping-fields__field-wrapper #shipping_city_field { order: 4; }
form.bns-co .woocommerce-shipping-fields__field-wrapper #shipping_address_2_field { order: 5; }
body.bns-cartui.woocommerce-checkout form.bns-co #payment div.payment_box { border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
body.bns-cartui.woocommerce-checkout form.bns-co #payment div.payment_box::before,
body.bns-cartui.woocommerce-checkout form.bns-co #payment div.payment_box::after { content: none !important; display: none !important; }
/* 2.3.0 – coupon result message */
.bns-co-coupon__msg { display: flex; align-items: flex-start; gap: 8px; margin: -6px 18px 18px !important; padding: 10px 12px; border-radius: 10px; font-size: 14px; font-weight: 600; line-height: 1.4; }
.bns-co-coupon__msg[hidden] { display: none !important; }
.bns-co-coupon__msg::before { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 20px; height: 20px; border-radius: 999px; color: #fff; font-size: 12px; font-weight: 800; }
.bns-co-coupon__msg--ok { background: #ecfdf3; color: #067647; }
.bns-co-coupon__msg--ok::before { content: "\2713"; background: #12b76a; }
.bns-co-coupon__msg--error { background: #fef3f2; color: #b42318; }
.bns-co-coupon__msg--error::before { content: "!"; background: #f04438; }
.bns-co-coupon__row .button[disabled] { opacity: .7; cursor: wait; }
.bns-co-row a.woocommerce-remove-coupon { color: var(--bns-sale, #e11d48) !important; font-weight: 700; }
/* =====================================================================
 * 2.3.0 – One colour system for the whole site.
 * Logo blue (--bns-brand) for actions and highlights, navy (--bns-ink) for text and dark
 * strips, light blue tint for soft backgrounds, red only for discount badges.
 * Also maps WoodMart's and BN Repair's colours onto it.
 * ===================================================================== */
html body {
	--bns-sale: #e11d48;
	--bns-tint: #eef2ff;
	--bns-tint-2: #dde6ff;
	--bns-brand-deep: #001670;
	--bns-accent: var(--bns-brand, #0025a7);
	--bns-accent-soft: var(--bns-tint);
	--bns-mint: var(--bns-tint-2);
	--wd-primary-color: var(--bns-brand, #0025a7);
	--wd-alternative-color: var(--bns-brand, #0025a7);
	--btn-accented-bgcolor: var(--bns-brand, #0025a7);
	--btn-accented-bgcolor-hover: var(--bns-brand-deep);
	--btn-accented-color: #fff;
	--btn-accented-color-hover: #fff;
}
html body .bns :focus-visible { outline-color: var(--bns-brand, #0025a7); }

/* Discounts stay red so they stand out */
html body .bns-card__off { background: var(--bns-sale); }
html body .bns-hcard__price em { color: var(--bns-sale); }

/* Hero cards */
html body .bns-hcard--flash, html body .bns-slide--flash { color: #fff; background: radial-gradient(120% 90% at 100% 0%, #3d63e6 0%, var(--bns-brand, #0025a7) 48%, var(--bns-brand-deep) 100%); }
html body .bns-hcard--repair, html body .bns-slide--repair { color: var(--bns-ink, #0b1636); background: linear-gradient(160deg, #f6f8ff 0%, var(--bns-tint-2) 100%); box-shadow: inset 0 0 0 1px #d3ddff; }
html body .bns-hcard__search { box-shadow: 0 8px 20px rgba(0, 37, 167, .10); }
html body .bns-hcard__search button { background: var(--bns-brand, #0025a7) !important; }
html body .bns-slide--repair .bns-slide__kicker, html body .bns-hcard--repair .bns-slide__kicker { background: #fff; color: var(--bns-brand, #0025a7); }
html body .bns-hcard__brands a { background: #fff; }
html body .bns-hcard__brands a:hover { box-shadow: inset 0 0 0 1px var(--bns-brand, #0025a7); }

/* Repair section */
html body .bns-repair { background: linear-gradient(135deg, var(--bns-brand, #0025a7) 0%, var(--bns-brand-deep) 100%); }
html body .bns-repair__search button { background: var(--bns-ink, #0b1636); color: #fff; }
html body .bns-repair__brands a { background: rgba(255, 255, 255, .1); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .14); }
html body .bns-repair__brands a:hover { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .7); }
html body .bns-pill--mint { background: rgba(255, 255, 255, .16); color: #fff; }

/* Product cards: one button colour */
html body .bns-card .bns-btn--dark { background: var(--bns-brand, #0025a7); }

/* WoodMart pieces that had their own colours */
html body .wd-el-toggle-title, html body .wd-el-toggle-title.title { color: var(--bns-brand, #0025a7) !important; }
html body .elementor-element-d0f1604 { background-color: var(--bns-brand, #0025a7) !important; }

/* ---------- BN Repair ---------- */
html body .bnr {
	--bnr-primary: var(--bns-brand, #0025a7);
	--bnr-ink: var(--bns-ink, #0b1636);
	--bnr-ink-2: #1a3db8;
	--bnr-ink-3: rgba(255, 255, 255, .22);
	--bnr-mint: #fff;
}
html body .bnr :focus-visible { outline-color: #7aa0ff; }
html body .bnr-hero,
html body .bnr-book__aside { background: linear-gradient(135deg, var(--bns-brand, #0025a7) 0%, var(--bns-brand-deep) 100%); }
html body .bnr-hero__panel { background: rgba(255, 255, 255, .1); }
html body .bnr-grade-card.is-featured { background: var(--bns-brand, #0025a7); border-color: var(--bns-brand, #0025a7); }
html body .bnr-lead,
html body .bnr-grade-card.is-featured p { color: rgba(255, 255, 255, .85); }
html body .bnr-aside__model small, html body .bnr-aside__empty, html body .bnr-aside__total,
html body .bnr-aside__muted, html body .bnr-choice small { color: rgba(255, 255, 255, .78); }
html body .bnr-pill { background: rgba(255, 255, 255, .16); color: #fff; }
html body .bnr-btn--ghost-dark { border-color: rgba(255, 255, 255, .4); }
html body .bnr-choice { background: rgba(255, 255, 255, .08); }
html body .bnr-choice::before { border-color: rgba(255, 255, 255, .6); box-shadow: inset 0 0 0 3px var(--bns-brand, #0025a7); }
html body .bnr-choice:has(input:checked) { background: rgba(255, 255, 255, .16); }
html body .bnr-choices--light .bnr-choice { background: #fff; }
html body .bnr-choices--light .bnr-choice::before { border-color: #9aa3b2; box-shadow: inset 0 0 0 3px #fff; }
html body .bnr-choices--light .bnr-choice:has(input:checked) { background: var(--bns-tint); border-color: var(--bns-brand, #0025a7); }
html body .bnr-choices--light .bnr-choice:has(input:checked)::before { border-color: var(--bns-brand, #0025a7); background: var(--bns-brand, #0025a7); }
html body .bnr-thumb--plus, html body .bnr-success__icon, html body .bnr-services__icon,
html body .bnr-timeline em { background: var(--bns-tint); }
html body .bnr-svc:has(input:checked) { background: var(--bns-tint); }
html body .bnr .bnr-input:focus { outline-color: rgba(0, 37, 167, .18); }
/* Buttons: WoodMart's grey submit style was winning over BN Repair's */
html body .bnr .bnr-btn--primary,
html body .bnr button.bnr-btn--primary[type=submit] { background: var(--bns-brand, #0025a7) !important; color: #fff !important; border-color: transparent !important; box-shadow: none !important; }
html body .bnr .bnr-btn--primary:hover { background: var(--bns-brand-deep) !important; }
html body .bnr-hero .bnr-btn--primary,
html body .bnr-book__aside .bnr-btn--primary,
html body .bnr-book__aside button.bnr-btn--primary[type=submit],
html body .bnr .bnr-btn--mint { background: #fff !important; color: var(--bns-brand, #0025a7) !important; }
html body .bnr-hero .bnr-btn--primary:hover,
html body .bnr-book__aside .bnr-btn--primary:hover,
html body .bnr .bnr-btn--mint:hover { background: var(--bns-tint) !important; }
html body .bnr .bnr-btn--wa { background: var(--bnr-wa, #128c4a) !important; color: #fff !important; }
/* 2.3.2 */
html body .bns { --bns-accent-soft: var(--bns-tint, #eef2ff); }
html body .wd-nav-header.wd-style-bg > li > a.woodmart-nav-link { background-color: var(--bns-brand, #0025a7) !important; color: #fff !important; }
html body .wd-nav-header.wd-style-bg > li > a.woodmart-nav-link:hover { background-color: var(--bns-brand-deep, #001670) !important; }
html body .bnr .bnr-btn { border-radius: 12px !important; min-height: 50px; }
/* 2.3.3 */
body.bns-cartui.woocommerce-checkout form.checkout.bns-co .bns-co-coupon__row input.input-text { border: 0 !important; box-shadow: none !important; background: transparent !important; }

/* =====================================================================
 * 2.4.0 – Wishlist / compare: card buttons, header counts, wishlist + compare pages; booking panel fixes
 * ===================================================================== */
/* Heart + compare on product cards */
html body .bns-card__save { position: absolute; top: 8px; right: 8px; z-index: 3; display: flex; flex-direction: column; gap: 6px; }
html body .bns-card__save .bns-save { margin: 0 !important; padding: 0 !important; }
html body .bns-card__save .bns-save > a {
	position: relative; display: flex !important; align-items: center; justify-content: center; width: 34px !important; height: 34px !important; padding: 0 !important;
	border: 1px solid #e6e9ef; border-radius: 999px !important; background: rgba(255, 255, 255, .96); color: var(--bns-ink, #0b1636) !important;
	box-shadow: 0 2px 8px rgba(11, 22, 54, .10); font-size: 0 !important; transition: color .15s ease, background-color .15s ease, border-color .15s ease, transform .15s ease;
}
html body .bns-card__save .bns-save > a::before,
html body .bns-card__save .bns-save > a::after,
html body .bns-card__save .bns-save .wd-action-icon { display: none !important; content: none !important; }
html body .bns-card__save .wd-action-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }
html body .bns-card__save .bns-save__icon { display: flex; pointer-events: none; }
html body .bns-card__save .bns-save > a:hover { color: var(--bns-brand, #0025a7) !important; border-color: var(--bns-brand, #0025a7); transform: scale(1.06); }
html body .bns-card__save .bns-save > a.added { background: var(--bns-brand, #0025a7); border-color: var(--bns-brand, #0025a7); color: #fff !important; }
html body .bns-card__save .bns-save--wish > a.added svg { fill: currentColor; }
html body .bns-card__save .bns-save > a.loading { opacity: .55; pointer-events: none; }
@media (hover: hover) and (min-width: 1024px) {
	html body .bns-card .bns-card__save .bns-save--compare { opacity: 0; transform: translateX(6px); transition: opacity .15s ease, transform .15s ease; }
	html body .bns-card:hover .bns-card__save .bns-save--compare,
	html body .bns-card .bns-card__save .bns-save--compare:focus-within,
	html body .bns-card .bns-card__save .bns-save--compare:has(a.added) { opacity: 1; transform: none; }
}
html body .bns-wish-item .bns-card__save .bns-save--wish { display: none !important; }

/* Header + mobile toolbar counts (all three use the same blue badge; hidden at 0) */
html body.bns-icons .whb-header .wd-header-wishlist .wd-tools-icon,
html body.bns-icons .whb-header .wd-header-compare .wd-tools-icon,
html body.bns-icons .wd-toolbar .wd-tools-element .wd-tools-icon { position: relative !important; }
html body.bns-icons .whb-header .wd-header-cart .wd-tools-count,
html body.bns-icons .whb-header .wd-header-cart .wd-cart-number,
html body.bns-icons .whb-header .wd-header-wishlist .wd-tools-count,
html body.bns-icons .whb-header .wd-header-compare .wd-tools-count,
html body.bns-icons .wd-header-wishlist .wd-tools-count,
html body.bns-icons .wd-header-compare .wd-tools-count,
html body.bns-icons .wd-toolbar .wd-tools-element .wd-tools-count {
	display: block !important; position: absolute !important; top: -6px !important; right: -9px !important; left: auto !important; bottom: auto !important;
	min-width: 17px !important; width: auto !important; height: 17px !important; margin: 0 !important; padding: 0 4px !important; border-radius: 999px !important;
	background: var(--bns-brand, #0025a7) !important; color: #fff !important; font-size: 10px !important; font-weight: 800 !important; line-height: 17px !important; text-align: center;
	box-shadow: 0 0 0 2px #fff !important; transform: none !important;
}
html body.bns-icons .wd-tools-element .wd-tools-count.bns-zero,
html body.bns-icons .whb-header .wd-tools-element .wd-tools-count.bns-zero,
html body.bns-icons .wd-toolbar .wd-tools-element .wd-tools-count.bns-zero { display: none !important; }
html body.bns-icons .wd-tools-count.bns-bump { animation: bns-bump .35s ease; }
@keyframes bns-bump { 0% { transform: scale(1); } 40% { transform: scale(1.35); } 100% { transform: scale(1); } }

/* Wishlist page */
html body .wd-wishlist-content .wd-wishlist-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 16px; margin: 0 0 14px; padding: 0 0 14px; border-bottom: 1px solid #eef0f4; }
html body .wd-wishlist-content .wd-wishlist-head .title { margin: 0; font-size: 22px; font-weight: 800; letter-spacing: -0.01em; text-transform: none; color: var(--bns-ink, #0b1636); }
html body .wd-wishlist-content .wd-wishlist-head .social-share .wd-label { font-size: 13px; color: #6b7280; }
html body .wd-wishlist-content .wd-wishlist-bulk-action { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 16px; }
html body .wd-wishlist-content .wd-wishlist-bulk-action .wd-action-btn > a { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 0 14px; border: 1px solid #d7dce4; border-radius: 999px; background: #fff; font-size: 13px; font-weight: 700; color: var(--bns-ink, #0b1636) !important; text-transform: none; }
html body .wd-wishlist-content .wd-wishlist-bulk-action .wd-wishlist-remove-action > a { color: var(--bns-sale, #e11d48) !important; border-color: #f5c2cd; }
html body .bns-wish-item { display: flex; flex-direction: column; gap: 8px; }
html body .bns-wish-item .wd-wishlist-product-actions { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 0; padding: 0; position: static !important; opacity: 1 !important; visibility: visible !important; transform: none !important; }
html body .bns-wish-item .wd-wishlist-product-remove > a { display: inline-flex; align-items: center; gap: 4px; min-height: 32px; padding: 0 12px; border: 1px solid #e6e9ef; border-radius: 999px; background: #fff; font-size: 12px; font-weight: 700; color: #6b7280 !important; text-transform: none; }
html body .bns-wish-item .wd-wishlist-product-remove > a:hover { color: var(--bns-sale, #e11d48) !important; border-color: #f5c2cd; }
html body .bns-wish-item .wd-wishlist-product-remove { order: 2; margin-left: auto; }
html body .bns-wish-item .wd-wishlist-product-checkbox { order: 1; position: static !important; }
html body .bns-wish-item .wd-wishlist-product-checkbox input { width: 18px; height: 18px; margin: 0; accent-color: var(--bns-brand, #0025a7); }
html body .bns-wish-item.wd-current-product .bns-card { border-color: var(--bns-brand, #0025a7); box-shadow: 0 0 0 2px var(--bns-brand, #0025a7); }

/* Empty wishlist / compare */
html body .wd-empty-block { padding: 32px 16px; }
html body .wd-empty-block::before { color: var(--bns-brand, #0025a7) !important; opacity: .25; }
html body .wd-empty-block-title { font-weight: 800; color: var(--bns-ink, #0b1636); }
html body .wd-empty-block-btn { border-radius: 12px !important; text-transform: none !important; letter-spacing: 0 !important; font-weight: 800 !important; padding: 0 22px !important; min-height: 46px; }

/* Compare page */
html body .wd-compare-page .wd-compare-header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 14px; }
html body .wd-compare-page .wd-compare-select { min-height: 42px; border-radius: 10px; }
html body .wd-compare-page .wd-compare-actions .btn { border-radius: 10px !important; text-transform: none !important; letter-spacing: 0 !important; font-weight: 700 !important; }
html body .wd-compare-table { overflow: hidden; border: 1px solid #e6e9ef !important; border-radius: 18px; border-collapse: separate !important; border-spacing: 0 !important; background: #fff; }
html body .wd-compare-table th,
html body .wd-compare-table td { padding: 14px 16px !important; border: 0 !important; border-top: 1px solid #eef0f4 !important; vertical-align: top; font-size: 14px; }
html body .wd-compare-table tr:first-child th,
html body .wd-compare-table tr:first-child td { border-top: 0 !important; }
html body .wd-compare-table th.compare-field { background: #f7f8fb !important; font-size: 13px; font-weight: 700; text-transform: none; letter-spacing: 0; color: #4a5568; }
html body .wd-compare-table .compare-basic td { text-align: center; }
html body .wd-compare-table .compare-basic .product-image img { width: 120px; height: 120px; margin: 4px auto 10px; object-fit: contain; border: 1px solid #e6e9ef; border-radius: 14px; background: #fff; }
html body .wd-compare-table .compare-basic .wd-entities-title { display: block; margin-bottom: 4px; font-size: 15px; font-weight: 700; color: var(--bns-ink, #0b1636) !important; }
html body .wd-compare-table .compare-basic .price { font-weight: 800; color: var(--bns-brand, #0025a7); }
html body .wd-compare-table .compare-basic .button,
html body .wd-compare-table .compare-basic .add_to_cart_button { margin-top: 10px; min-height: 40px; padding: 0 16px !important; border-radius: 10px !important; background: var(--bns-brand, #0025a7) !important; color: #fff !important; font-size: 13px !important; font-weight: 800 !important; text-transform: none !important; letter-spacing: 0 !important; }
html body .wd-compare-table .wd-compare-remove-action { display: flex; justify-content: center; margin-bottom: 6px; }
html body .wd-compare-table .wd-compare-remove { display: inline-flex; align-items: center; gap: 4px; min-height: 30px; padding: 0 12px; border: 1px solid #e6e9ef; border-radius: 999px; font-size: 12px; font-weight: 700; color: #6b7280 !important; text-transform: none; }
html body .wd-compare-table .wd-compare-remove:hover { color: var(--bns-sale, #e11d48) !important; border-color: #f5c2cd; }
@media (max-width: 767px) {
	html body .wd-compare-table th, html body .wd-compare-table td { padding: 10px !important; font-size: 13px; }
	html body .wd-compare-table .compare-basic .product-image img { width: 88px; height: 88px; }
}

/* BN Repair booking panel */
html body .bnr .bnr-btn--ghost-dark,
html body .bnr button.bnr-btn--ghost-dark[type=submit] { background: transparent !important; color: #fff !important; border: 1.5px solid rgba(255, 255, 255, .6) !important; box-shadow: none !important; }
html body .bnr .bnr-btn--ghost-dark:hover { background: rgba(255, 255, 255, .1) !important; }
html body .bnr-choice, html body .bnr-choice strong { color: #fff !important; }
html body .bnr-choices--light .bnr-choice,
html body .bnr-choices--light .bnr-choice strong { color: var(--bns-ink, #0b1636) !important; }
html body .bnr-choices--light .bnr-choice small { color: #4a5568 !important; }
/* 2.4.3 – booking panel: the send button is always the solid main action */
html body .bnr-book__aside button.bnr-btn[type=submit] { background: #fff !important; color: var(--bns-brand, #0025a7) !important; border: 0 !important; font-weight: 800 !important; }
html body .bnr-book__aside button.bnr-btn[type=submit]:hover { background: var(--bns-tint, #eef2ff) !important; }

/* =====================================================================
 * 2.5.0 – notices, cart coupon error, checkout coupon row, account last name
 * ===================================================================== */
html body {
	--notices-success-bg: #e8f7ee;
	--notices-success-color: #0b5e33;
	--notices-warning-bg: var(--bns-tint, #eef2ff);
	--notices-warning-color: var(--bns-ink, #0b1636);
}
html body .woocommerce-message,
html body .woocommerce-info { border-radius: 14px; }
html body .woocommerce-message .button,
html body .woocommerce-info .button { float: none !important; order: 2; margin: 10px 12px 0 0 !important; border-radius: 10px !important; }
html body .woocommerce-error { border-radius: 14px; }

/* Cart page coupon box: error message inside the box */
html body .bns-coupon .coupon-error-notice { display: block; margin: 10px 0 0 !important; padding: 10px 12px; border-radius: 10px; background: #fef3f2; color: #b42318 !important; font-size: 14px; font-weight: 600; line-height: 1.4; }
html body .bns-coupon input.input-text[aria-invalid="true"] { border-color: #f04438 !important; }

/* Checkout totals: coupon line ("-$5.00" with Remove underneath, no overflow) */
html body .bns-co-row strong { display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: baseline; gap: 2px 0; min-width: 0; }
html body .bns-co-row a.woocommerce-remove-coupon { flex-basis: 100%; margin: 0 !important; text-align: right; font-size: 12px !important; font-weight: 700; }
html body .bns-co-row a.woocommerce-remove-coupon::before { content: none !important; display: none !important; }
html body .bns-co-row:has(a.woocommerce-remove-coupon) > span:first-child { color: #067647; }

/* Account details: last name is optional */
html body .woocommerce-EditAccountForm label[for="account_last_name"] .required { display: none; }
/* 2.5.1 – one-country shops: hide the fixed country row everywhere (account address forms too) */
html body .form-row.bns-hidden-field { display: none !important; }
/* 2.5.2 – cart coupon Apply button (WoodMart's grey button style was winning) */
html body .bns-coupon__row .button, html body .bns-coupon__row button[name=apply_coupon] { background: var(--bns-brand, #0025a7) !important; color: #fff !important; border: 0 !important; border-radius: 10px !important; padding: 0 18px !important; font-weight: 800 !important; text-transform: none !important; letter-spacing: 0 !important; }
html body .bns-coupon__row .button:hover { background: var(--bns-brand-deep, #001670) !important; }

/* =====================================================================
 * 2.6.0 – checkout: WooCommerce error groups no longer push the columns around
 * ===================================================================== */
body.bns-cartui form.woocommerce-checkout.bns-co > *:not(.bns-co__main):not(.bns-co__side) { grid-column: 1 / -1 !important; margin: 0 !important; }
body.bns-cartui form.woocommerce-checkout.bns-co > .woocommerce-NoticeGroup:empty { display: none !important; }
@media (min-width: 1024px) {
	body.bns-cartui form.woocommerce-checkout.bns-co > .bns-co__main { grid-column: 1 !important; }
	body.bns-cartui form.woocommerce-checkout.bns-co > .bns-co__side { grid-column: 2 !important; }
}

/* 2.6.0 – toolbar Search + full-screen search */
html body .wd-toolbar .bns-toolbar-search .wd-tools-icon::before,
html body .wd-toolbar .bns-toolbar-search .wd-tools-icon::after { content: none !important; display: none !important; }
html body .wd-toolbar .bns-toolbar-search .bns-ti { display: inline-flex !important; align-items: center; justify-content: center; color: var(--bns-ink, #0b1636); }
html.bns-search-open, html.bns-search-open body { overflow: hidden !important; }
.bns-search { position: fixed; inset: 0; z-index: 100000; display: flex; flex-direction: column; background: #fff; font-family: var(--bns-font, inherit); }
.bns-search[hidden] { display: none !important; }
.bns-search__bar { display: flex; align-items: center; gap: 10px; margin: 0; padding: 12px 14px calc(12px) 14px; padding-top: calc(12px + env(safe-area-inset-top)); border-bottom: 1px solid #e6e9ef; }
.bns-search__icon { display: flex; color: var(--bns-brand, #0025a7); }
html body .bns-search__bar input[type=search] { flex: 1; min-width: 0; height: 46px; margin: 0; padding: 0 14px; border: 1px solid #c9cfd8 !important; border-radius: 12px !important; background: #f7f8fb; font-size: 16px !important; color: var(--bns-ink, #0b1636); box-shadow: none !important; }
html body .bns-search__bar input[type=search]:focus { border-color: var(--bns-brand, #0025a7) !important; background: #fff; outline: 3px solid rgba(0, 37, 167, .14); }
html body .bns-search__close { flex: none; min-height: 44px; padding: 0 6px !important; border: 0 !important; background: none !important; box-shadow: none !important; color: var(--bns-brand, #0025a7) !important; font-size: 15px !important; font-weight: 700 !important; text-transform: none !important; letter-spacing: 0 !important; }
.bns-search__body { flex: 1; overflow-y: auto; padding: 8px 14px calc(24px + env(safe-area-inset-bottom)); -webkit-overflow-scrolling: touch; }
.bns-search__hint { margin: 14px 2px; font-size: 14px; color: #6b7280; }
.bns-search__hint[hidden] { display: none; }
ul.bns-search__list { margin: 0 !important; padding: 0 !important; list-style: none !important; }
.bns-search__list li { margin: 0 !important; border-bottom: 1px solid #eef0f4; }
html body a.bns-search__item { display: grid; grid-template-columns: 52px minmax(0, 1fr) auto; align-items: center; gap: 12px; min-height: 64px; padding: 6px 2px; color: var(--bns-ink, #0b1636) !important; text-decoration: none !important; }
.bns-search__thumb { width: 52px; height: 52px; overflow: hidden; border: 1px solid #e6e9ef; border-radius: 10px; background: #f4f5f7; }
.bns-search__thumb img { display: block; width: 100%; height: 100%; object-fit: contain; margin: 0 !important; }
.bns-search__name { overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; font-size: 14px; font-weight: 700; line-height: 1.3; }
.bns-search__price { font-size: 14px; font-weight: 800; color: var(--bns-brand, #0025a7); white-space: nowrap; text-align: right; }
.bns-search__price del { display: block; font-size: 12px; font-weight: 500; color: #6b7280; }
.bns-search__price ins { text-decoration: none; }
html body a.bns-search__all { display: flex; align-items: center; justify-content: center; min-height: 48px; margin-top: 14px; border-radius: 12px; background: var(--bns-brand, #0025a7); color: #fff !important; font-size: 15px; font-weight: 800; text-decoration: none !important; }
html body a.bns-search__all[hidden] { display: none; }

/* 2.6.0 – product page */
html body.bns-pdp .product-image-summary-wrap { margin-top: 8px; }
html body.bns-pdp .product-images .woocommerce-product-gallery__image,
html body.bns-pdp .product-images .wd-carousel-item img { border-radius: 20px; }
html body.bns-pdp .summary-inner { color: var(--bns-ink, #0b1636); }
html body.bns-pdp .summary-inner .single-breadcrumbs-wrapper { margin-bottom: 14px; font-size: 13px; }
html body.bns-pdp .summary-inner .product_title { font-family: var(--bns-display, inherit); font-size: clamp(24px, 3.2vw, 34px); line-height: 1.15; font-weight: 800; letter-spacing: -0.02em; color: var(--bns-ink, #0b1636); margin-bottom: 10px; }
html body.bns-pdp .summary-inner > .price,
html body.bns-pdp .summary-inner .woocommerce-variation-price .price { font-size: clamp(22px, 2.4vw, 28px) !important; font-weight: 800 !important; color: var(--bns-brand, #0025a7) !important; }
html body.bns-pdp .summary-inner .price del { font-size: .6em; color: #6b7280; font-weight: 500; }
html body.bns-pdp .summary-inner .woocommerce-product-details__short-description { color: #4a5568; font-size: 15px; line-height: 1.6; }
html body.bns-pdp .summary-inner .shop_attributes { border: 1px solid #e3e6eb; border-radius: 14px; overflow: hidden; border-collapse: separate; border-spacing: 0; }
html body.bns-pdp .summary-inner .shop_attributes th,
html body.bns-pdp .summary-inner .shop_attributes td { padding: 10px 14px !important; border: 0 !important; border-bottom: 1px solid #eef0f3 !important; font-size: 14px; }
html body.bns-pdp .summary-inner .shop_attributes tr:last-child th,
html body.bns-pdp .summary-inner .shop_attributes tr:last-child td { border-bottom: 0 !important; }
html body.bns-pdp .summary-inner .shop_attributes th { background: #f6f7f9; font-weight: 700; width: 40%; }
html body.bns-pdp .summary-inner .shop_attributes td p { margin: 0; }
html body.bns-pdp .summary-inner .wd-shipping-progress-bar { border-radius: 14px; }

/* buy area */
html body.bns-pdp form.cart { padding: 16px; border: 1px solid #e3e6eb; border-radius: 18px; background: #fff; box-shadow: 0 6px 24px rgba(11, 22, 54, .06); }
html body.bns-pdp form.cart table.variations { margin-bottom: 12px; }
html body.bns-pdp form.cart table.variations th label { font-weight: 700; font-size: 14px; color: var(--bns-ink, #0b1636); }
html body.bns-pdp form.cart table.variations select { min-height: 46px; border-radius: 12px !important; border: 1px solid #d5d9e0 !important; padding: 0 14px; font-size: 15px; background-color: #fff; }
html body.bns-pdp form.cart table.variations select:focus { border-color: var(--bns-brand, #0025a7) !important; outline: 2px solid color-mix(in srgb, var(--bns-brand, #0025a7) 25%, transparent); }
html body.bns-pdp form.cart .woocommerce-variation-add-to-cart,
html body.bns-pdp form.cart:not(.variations_form) { display: flex; flex-wrap: wrap; gap: 10px; align-items: stretch; }
html body.bns-pdp form.cart .quantity { margin: 0 !important; height: 50px; border: 1px solid #d5d9e0; border-radius: 12px; overflow: hidden; display: inline-flex; align-items: stretch; }
html body.bns-pdp form.cart .quantity .btn,
html body.bns-pdp form.cart .quantity input { height: 100% !important; border: 0 !important; background: #fff !important; min-height: 0 !important; }
html body.bns-pdp form.cart .quantity input { width: 44px !important; font-weight: 700; }
html body.bns-pdp form.cart .single_add_to_cart_button,
html body.bns-pdp form.cart .wd-buy-now-btn { flex: 1 1 140px; min-height: 50px !important; border-radius: 12px !important; font-size: 15px !important; font-weight: 800 !important; text-transform: none !important; letter-spacing: 0 !important; margin: 0 !important; }
html body.bns-pdp form.cart .single_add_to_cart_button { background: var(--bns-brand, #0025a7) !important; color: #fff !important; }
html body.bns-pdp form.cart .single_add_to_cart_button:hover { filter: brightness(1.1); }
html body.bns-pdp form.cart .wd-buy-now-btn { flex-basis: 100%; background: var(--bns-ink, #0b1636) !important; color: #fff !important; }
html body.bns-pdp form.cart .single_add_to_cart_button.disabled { opacity: .55; }
html body.bns-pdp .summary-inner .bns-product-wa { margin-top: 12px; min-height: 48px; border-radius: 12px; }
html body.bns-pdp .summary-inner > .wd-compare-btn,
html body.bns-pdp .summary-inner > .wd-wishlist-btn { display: inline-flex; margin: 12px 8px 0 0 !important; }
html body.bns-pdp .summary-inner > .wd-compare-btn > a,
html body.bns-pdp .summary-inner > .wd-wishlist-btn > a { display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; border: 1px solid #e3e6eb; border-radius: 999px; font-size: 13px; font-weight: 700; color: var(--bns-ink, #0b1636); }
html body.bns-pdp .summary-inner > .wd-compare-btn > a:hover,
html body.bns-pdp .summary-inner > .wd-wishlist-btn > a:hover,
html body.bns-pdp .summary-inner > .wd-compare-btn > a.added,
html body.bns-pdp .summary-inner > .wd-wishlist-btn > a.added { border-color: var(--bns-brand, #0025a7); color: var(--bns-brand, #0025a7); }
html body.bns-pdp .summary-inner .product_meta { margin-top: 18px; padding-top: 14px; border-top: 1px solid #eef0f3; font-size: 13px; color: #6b7280; }

/* description / reviews */
html body.bns-pdp .product-tabs-wrapper { background: transparent; border: 0; padding-top: 10px; }
html body.bns-pdp .woocommerce-tabs.wd-accordion .wd-accordion-item { border: 1px solid #e3e6eb !important; border-radius: 16px; margin-bottom: 12px; background: #fff; overflow: hidden; }
html body.bns-pdp .woocommerce-tabs.wd-accordion .wd-accordion-title { padding: 16px 20px !important; border: 0 !important; }
html body.bns-pdp .woocommerce-tabs.wd-accordion .wd-accordion-title-text { font-weight: 800; font-size: 16px; text-transform: none; letter-spacing: 0; color: var(--bns-ink, #0b1636); }
html body.bns-pdp .woocommerce-tabs.wd-accordion .wd-accordion-content { padding: 0 20px 20px !important; }
html body.bns-pdp .woocommerce-tabs .wd-nav-tabs-wrapper { margin-bottom: 20px; }
html body.bns-pdp .woocommerce-tabs .woocommerce-Tabs-panel { color: #374151; line-height: 1.7; }

/* you may also like */
html body.bns-pdp .related-and-upsells > :not(.bns-pdp-related) { display: none !important; }
.bns-pdp-related { margin: 24px 0 40px; }
.bns-pdp-related__title { font-size: clamp(20px, 2.4vw, 26px) !important; font-weight: 800; margin: 0 0 16px !important; }

/* sticky buy bar (phones/tablets) */

@media (min-width: 1025px) {
	html body.bns-pdp .summary.entry-summary { position: sticky; top: 90px; align-self: start; }
	html body.bns-pdp .summary-inner { padding: 4px 0 0 12px; }
}
@media (max-width: 1024px) {
	html body.bns-pdp .summary-inner { padding-top: 6px; }
	html body.bns-pdp form.cart { padding: 14px; }
}

/* 2.6.0 – own bottom menu for pages where the theme shows none (phones/tablets) */
.bns-tabbar { display: none; }
@media (max-width: 1024px) {
	.bns-tabbar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 380; display: flex; justify-content: space-around; align-items: stretch; height: calc(56px + env(safe-area-inset-bottom, 0px)); padding-bottom: env(safe-area-inset-bottom, 0px); background: #fff; border-top: 1px solid #e3e6eb; box-shadow: 0 -4px 18px rgba(11, 22, 54, .06); font-family: var(--bns-font, inherit); }
	.bns-tabbar__item { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; font-size: 11px; font-weight: 600; color: #4a5568 !important; text-decoration: none !important; }
	.bns-tabbar__item:active, .bns-tabbar__item:focus-visible { color: var(--bns-brand, #0025a7) !important; }
	.bns-tabbar__icon { position: relative; display: inline-flex; color: var(--bns-ink, #0b1636); }
	.bns-tabbar__count { position: absolute; top: -5px; right: -9px; min-width: 17px; height: 17px; padding: 0 4px; border-radius: 9px; background: var(--bns-brand, #0025a7); color: #fff; font-size: 10px; font-weight: 800; line-height: 17px; text-align: center; }
	.bns-tabbar__count[hidden] { display: none; }
	body.bns-has-tabbar { padding-bottom: calc(56px + env(safe-area-inset-bottom, 0px)); }
	body.bns-has-tabbar .bns-sticky { bottom: calc(56px + env(safe-area-inset-bottom, 0px)) !important; }
}
body.bns-cartui .bns-co-notices { margin: 0 0 16px !important; }

/* 2.6.1 – option buttons + Add to cart / Buy now side by side */
html body.bns-pdp form.cart select.bns-pills-src { position: absolute !important; width: 1px !important; height: 1px !important; min-height: 0 !important; padding: 0 !important; margin: -1px !important; overflow: hidden; clip: rect(0 0 0 0); border: 0 !important; opacity: 0; pointer-events: none; }
html body.bns-pdp form.cart table.variations td.value { position: relative; }
.bns-pills { display: flex; flex-wrap: wrap; gap: 8px; }
html body .bns-pills .bns-pill { min-height: 44px; min-width: 64px; padding: 0 16px; margin: 0; border: 1.5px solid #d5d9e0 !important; border-radius: 12px !important; background: #fff !important; color: var(--bns-ink, #0b1636) !important; font: 700 14px/1 var(--bns-font, inherit); letter-spacing: 0; text-transform: none; box-shadow: none !important; cursor: pointer; transition: border-color .15s, background-color .15s, color .15s; }
html body .bns-pills .bns-pill:hover:not(:disabled) { border-color: var(--bns-brand, #0025a7) !important; }
html body .bns-pills .bns-pill.is-on { border-color: var(--bns-brand, #0025a7) !important; background: var(--bns-brand, #0025a7) !important; color: #fff !important; }
html body .bns-pills .bns-pill:disabled { opacity: .4; text-decoration: line-through; cursor: not-allowed; }
html body .bns-pills .bns-pill:focus-visible { outline: 3px solid color-mix(in srgb, var(--bns-brand, #0025a7) 35%, transparent); outline-offset: 2px; }
html body.bns-pdp form.cart .reset_variations { display: inline-block; margin-top: 8px; font-size: 13px; color: #4a5568; }
.bns-choose { margin: 0 0 12px !important; padding: 10px 12px; border-radius: 10px; background: #fef2f2; color: #b91c1c; font-size: 14px; font-weight: 700; }

html body.bns-pdp form.cart .woocommerce-variation-add-to-cart,
html body.bns-pdp form.cart:not(.variations_form) { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 10px; align-items: stretch; }
html body.bns-pdp form.cart:not(.variations_form) > *:not(.quantity):not(.single_add_to_cart_button):not(.bns-buynow):not(.wd-buy-now-btn) { grid-column: 1 / -1; }
html body.bns-pdp form.cart .quantity { grid-column: 1 / -1; justify-self: start; }
html body.bns-pdp form.cart .woocommerce-variation-add-to-cart > input[type=hidden] { display: none; }
html body.bns-pdp form.cart .single_add_to_cart_button,
html body.bns-pdp form.cart .bns-buynow { display: inline-flex !important; align-items: center; justify-content: center; gap: 8px; width: 100% !important; min-height: 52px !important; padding: 0 12px !important; margin: 0 !important; border: 0 !important; border-radius: 12px !important; font: 800 15px/1 var(--bns-font, inherit) !important; letter-spacing: 0 !important; text-transform: none !important; white-space: nowrap; cursor: pointer; }
html body.bns-pdp form.cart .single_add_to_cart_button { background: #fff !important; color: var(--bns-brand, #0025a7) !important; box-shadow: inset 0 0 0 2px var(--bns-brand, #0025a7) !important; }
html body.bns-pdp form.cart .single_add_to_cart_button::before { content: ""; width: 20px; height: 20px; flex: none; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 8h14l-1 12H6z'/%3E%3Cpath d='M9 8V6a3 3 0 016 0v2'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 8h14l-1 12H6z'/%3E%3Cpath d='M9 8V6a3 3 0 016 0v2'/%3E%3C/svg%3E") center / contain no-repeat; }
html body.bns-pdp form.cart .single_add_to_cart_button:hover { background: color-mix(in srgb, var(--bns-brand, #0025a7) 7%, #fff) !important; filter: none; }
html body.bns-pdp form.cart .single_add_to_cart_button.loading::before { animation: bns-spin .8s linear infinite; }
html body.bns-pdp form.cart .single_add_to_cart_button.loading::after { display: none !important; }
html body.bns-pdp form.cart .bns-buynow { background: var(--bns-brand, #0025a7) !important; color: #fff !important; box-shadow: 0 6px 16px color-mix(in srgb, var(--bns-brand, #0025a7) 30%, transparent) !important; }
html body.bns-pdp form.cart .bns-buynow:hover { filter: brightness(1.12); }
html body.bns-pdp form.cart .bns-buynow svg { flex: none; }
html body.bns-pdp form.cart .bns-buynow.is-busy { opacity: .7; cursor: progress; }
html body.bns-pdp form.cart .single_add_to_cart_button.disabled { opacity: .55 !important; }
html body.bns-pdp form.cart .wd-buy-now-btn { display: none !important; }
@keyframes bns-spin { to { transform: rotate(360deg); } }
@media (max-width: 360px) { html body.bns-pdp form.cart .single_add_to_cart_button, html body.bns-pdp form.cart .bns-buynow { font-size: 14px !important; gap: 6px; } }

/* 2.6.1 – bottom menu: Shop, Wishlist, Search, Compare, Account (replaces WoodMart's toolbar on phones/tablets) */
@media (max-width: 1024px) {
	html body.bns-has-tabbar .wd-toolbar { display: none !important; }
	html body.bns-has-tabbar .bns-tabbar__item.is-current,
	html body.bns-has-tabbar .bns-tabbar__item.is-current .bns-tabbar__icon { color: var(--bns-brand, #0025a7) !important; }
	html body.bns-has-tabbar .bns-tabbar__item--search .bns-tabbar__icon { color: #fff; background: var(--bns-brand, #0025a7); width: 40px; height: 32px; border-radius: 12px; align-items: center; justify-content: center; }
	html body.bns-has-tabbar .bns-tabbar__item--search .bns-tabbar__icon svg { width: 20px; height: 20px; }
}
@media (min-width: 1025px) { .bns-tabbar { display: none !important; } }

/* 2.6.1 – buy bar stays fully out of sight (and under the bottom menu) until needed */
html body .bns-pdp2 .woocommerce-variation-price { margin: 4px 0 12px; }
html body .bns-pdp2 .woocommerce-variation-price .price { margin: 0 !important; font-family: var(--bns-display, inherit); font-size: 22px !important; font-weight: 800 !important; color: var(--bns-brand, #0025a7) !important; }
html body .bns-pdp2 .woocommerce-variation-price .price .amount { color: inherit !important; }
html body .bns-pdp2 .woocommerce-variation-availability p { margin: 0 0 10px; font-size: 13px; font-weight: 700; }

/* 2.6.3 – sticky buy bar: hidden until the page's own Add to cart / Buy now buttons scroll out of view */
html body .bns-buybar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 379; display: none; align-items: center; gap: 10px; margin: 0; padding: 10px 12px calc(10px + env(safe-area-inset-bottom, 0px)); background: #fff; border-top: 1px solid #e3e6eb; box-shadow: 0 -10px 28px rgba(11, 22, 54, .10); font-family: var(--bns-font, inherit); color: var(--bns-ink, #0b1636); }
html body .bns-buybar.is-on { display: flex; animation: bns-bar-in .22s ease-out; }
@media (max-width: 1024px) { html body.bns-has-tabbar .bns-buybar { bottom: calc(56px + env(safe-area-inset-bottom, 0px)); padding-bottom: 10px; } }
@keyframes bns-bar-in { from { transform: translateY(100%); opacity: 0; } to { transform: none; opacity: 1; } }
html body .bns-buybar .bns-buybar__img { width: 44px !important; height: 44px !important; max-width: none; object-fit: contain; border-radius: 10px; background: #f4f5f7; flex: none; margin: 0; }
html body .bns-buybar .bns-buybar__info { flex: 1; min-width: 0; display: flex; flex-direction: column; line-height: 1.25; }
html body .bns-buybar .bns-buybar__name { font-size: 13px; font-weight: 700; color: var(--bns-ink, #0b1636); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html body .bns-buybar .bns-buybar__price,
html body .bns-buybar .bns-buybar__price .amount,
html body .bns-buybar .bns-buybar__price .price { font-size: 15px !important; font-weight: 800 !important; color: var(--bns-brand, #0025a7) !important; margin: 0 !important; }
html body .bns-buybar .bns-buybar__price del { display: none; }
html body .bns-buybar .bns-buybar__price ins { text-decoration: none; }
html body .bns-buybar button { display: inline-flex !important; align-items: center; justify-content: center; gap: 6px; flex: none; height: 46px !important; min-height: 46px !important; margin: 0 !important; padding: 0 16px !important; border: 0 !important; border-radius: 12px !important; font: 800 14px/1 var(--bns-font, inherit) !important; letter-spacing: 0 !important; text-transform: none !important; cursor: pointer; box-shadow: none !important; }
html body .bns-buybar .bns-buybar__cart { width: 46px; padding: 0 !important; background: #fff !important; color: var(--bns-brand, #0025a7) !important; box-shadow: inset 0 0 0 2px var(--bns-brand, #0025a7) !important; }
html body .bns-buybar .bns-buybar__buy { background: var(--bns-brand, #0025a7) !important; color: #fff !important; }
html body .bns-buybar .bns-buybar__buy svg, html body .bns-buybar .bns-buybar__cart svg { flex: none; }
html body .bns-buybar button:disabled { opacity: .5; cursor: default; }
html body .bns-buybar button:focus-visible { outline: 3px solid color-mix(in srgb, var(--bns-brand, #0025a7) 35%, transparent); outline-offset: 2px; }

@media (prefers-reduced-motion: reduce) { html body .bns-buybar.is-on { animation: none; } }

/* 2.7.0 – product page (.bns-pdp2): gallery | details, then Specification / Description / Reviews with a sidebar */
.bns-pdp2 { --pd-ink: var(--bns-ink, #0b1636); --pd-brand: var(--bns-brand, #0025a7); --pd-tint: color-mix(in srgb, var(--bns-brand, #0025a7) 7%, #fff); --pd-line: #e3e6eb; --pd-muted: #5b6474; --pd-off: #c81e1e; color: var(--pd-ink); font-family: var(--bns-font, inherit); }
.bns-pdp2 .bns-pdp2__wrap { padding-top: 14px; }
.bns-pdp2__crumbs { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 16px; font-size: 13px; color: var(--pd-muted); }
.bns-pdp2__crumbs a { color: var(--pd-muted) !important; }
.bns-pdp2__crumbs a:hover { color: var(--pd-brand) !important; }

.bns-pdp2__hero { display: grid; grid-template-columns: 1fr; gap: 22px; align-items: start; }
html body .bns-pdp2 .bns-pdp2__stage { width: auto !important; max-width: none !important; flex: none !important; float: none !important; margin: 0 !important; padding: 16px !important; border: 1px solid var(--pd-line); border-radius: 16px; background: #fff; }
html body .bns-pdp2 .bns-pdp2__stage .woocommerce-product-gallery { margin: 0 !important; width: 100% !important; float: none !important; }
html body .bns-pdp2 .bns-pdp2__stage .flex-control-thumbs li img,
html body .bns-pdp2 .bns-pdp2__stage .wd-gallery-thumb img { border: 1px solid var(--pd-line); border-radius: 10px; }
html body .bns-pdp2 .bns-pdp2__stage .flex-control-thumbs .flex-active,
html body .bns-pdp2 .bns-pdp2__stage .wd-gallery-thumb .wd-active img { border-color: var(--pd-brand); }

html body .bns-pdp2 .bns-pdp2__buy { width: auto !important; max-width: none !important; flex: none !important; float: none !important; margin: 0 !important; padding: 0 !important; text-align: left; }
.bns-pdp2__top { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 24px; margin-bottom: 8px; }
.bns-pdp2__brand { font-size: 14px; font-weight: 800; color: var(--pd-ink) !important; }
.bns-pdp2__brand:hover { color: var(--pd-brand) !important; }
.bns-pdp2__save { display: flex; flex-wrap: wrap; gap: 14px; justify-content: flex-end; }
html body .bns-pdp2 .bns-pdp2__save .wd-action-btn { margin: 0 !important; }
html body .bns-pdp2 .bns-pdp2__save .wd-action-btn > a { display: inline-flex !important; align-items: center; gap: 6px; padding: 0 !important; font-size: 13px !important; font-weight: 700 !important; color: var(--pd-brand) !important; text-transform: none !important; }
html body .bns-pdp2 .bns-pdp2__save .wd-action-btn > a:hover { text-decoration: underline; }
html body .bns-pdp2 .bns-pdp2__title { font-family: var(--bns-display, inherit); font-size: clamp(24px, 2.6vw, 32px); line-height: 1.15; font-weight: 800; letter-spacing: -0.02em; color: var(--pd-ink); margin: 0 0 10px; }
.bns-pdp2__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; margin: 0 0 16px; font-size: 14px; color: var(--pd-muted); }
.bns-pdp2__price { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
html body .bns-pdp2 .bns-pdp2__price .price { display: inline-flex; flex-wrap: wrap; align-items: baseline; gap: 8px; margin: 0 !important; font-family: var(--bns-display, inherit); font-size: clamp(22px, 2.4vw, 26px) !important; font-weight: 800 !important; color: var(--pd-ink) !important; }
html body .bns-pdp2 .bns-pdp2__price .price .amount { color: inherit !important; }
html body .bns-pdp2 .bns-pdp2__price .price del { order: 2; font-size: 14px; font-weight: 500; color: #8a93a3 !important; }
html body .bns-pdp2 .bns-pdp2__price .price ins { order: 1; text-decoration: none; }
.bns-pdp2__off { font-size: 12px; font-weight: 800; color: var(--pd-off); background: #fdecec; padding: 4px 8px; border-radius: 6px; }
.bns-pdp2__off .amount { color: inherit !important; }
.bns-pdp2__fact strong { color: var(--pd-ink); font-weight: 700; }
.bns-pdp2__avail.is-in { color: #0f7a3d !important; }
.bns-pdp2__avail.is-low { color: #b45309 !important; }
.bns-pdp2__avail.is-out { color: var(--pd-off) !important; }
.bns-pdp2__rating { display: inline-flex; align-items: center; gap: 6px; color: var(--pd-muted) !important; }
.bns-pdp2__rating .star-rating { margin: 0 !important; }
.bns-pdp2__lede { margin: 0 0 16px; font-size: 15px; line-height: 1.6; color: #374151; }
.bns-pdp2__lede p { margin: 0 0 6px; }
.bns-pdp2__lede ul { margin: 0; padding-left: 18px; }
.bns-pdp2__lede li { margin: 0 0 4px; }

/* options: each attribute in its own box, boxes side by side */
html body .bns-pdp2 form.cart { margin: 0 0 14px !important; padding: 0 !important; border: 0 !important; background: none !important; box-shadow: none !important; }
html body .bns-pdp2 form.cart table.variations { display: block; width: 100%; margin: 0 0 14px !important; border: 0; }
html body .bns-pdp2 form.cart table.variations tbody { display: flex; flex-wrap: wrap; gap: 12px; }
html body .bns-pdp2 form.cart table.variations tr { display: block; flex: 1 1 230px; margin: 0 !important; padding: 12px 14px; border: 1px solid var(--pd-line); border-radius: 12px; background: #fff; }
html body .bns-pdp2 form.cart table.variations th,
html body .bns-pdp2 form.cart table.variations td { display: block; width: 100%; padding: 0 !important; border: 0 !important; background: none !important; text-align: left; }
html body .bns-pdp2 form.cart table.variations th { margin: 0 0 8px; }
html body .bns-pdp2 form.cart table.variations th label { margin: 0; font-size: 14px; font-weight: 700; color: var(--pd-ink); }
html body .bns-pdp2 form.cart table.variations th label::after { content: ":"; }
html body .bns-pdp2 .bns-pills { gap: 6px; }
html body .bns-pdp2 .bns-pills .bns-pill { min-height: 34px; min-width: 0; padding: 0 12px; border-width: 1px !important; border-radius: 999px !important; font-size: 13px; font-weight: 600; gap: 6px; display: inline-flex; align-items: center; }
html body .bns-pdp2 .bns-pills .bns-pill.is-on { background: var(--pd-tint) !important; color: var(--pd-brand) !important; border-color: var(--pd-brand) !important; box-shadow: inset 0 0 0 1px var(--pd-brand) !important; }
.bns-pill__dot { width: 12px; height: 12px; border-radius: 50%; border: 1px solid rgba(0, 0, 0, .15); flex: none; }
html body .bns-pdp2 form.cart .reset_variations { margin-top: 6px; }
html body .bns-pdp2 .woocommerce-variation-price { display: none; } /* the price at the top updates instead */
html body .bns-pdp2 .woocommerce-variation-availability p { margin: 0 0 10px; font-size: 13px; font-weight: 700; }

/* quantity + buttons */
.bns-qty-label { grid-column: 1 / -1; margin: 0 0 -2px; font-size: 14px; font-weight: 700; color: var(--pd-ink); }
html body .bns-pdp2 form.cart .quantity { height: 42px; border: 1px solid var(--pd-line); border-radius: 10px; }
html body .bns-pdp2 form.cart .quantity .minus,
html body .bns-pdp2 form.cart .quantity .plus,
html body .bns-pdp2 form.cart .quantity .bns-step { width: 40px; height: 100% !important; padding: 0 !important; border: 0 !important; background: #fff !important; color: var(--pd-ink) !important; font-size: 18px !important; font-weight: 600; cursor: pointer; }
html body .bns-pdp2 form.cart .quantity .minus:hover,
html body .bns-pdp2 form.cart .quantity .plus:hover,
html body .bns-pdp2 form.cart .quantity .bns-step:hover { color: var(--pd-brand) !important; }
html body .bns-pdp2 form.cart .quantity input.qty { width: 46px !important; -moz-appearance: textfield; appearance: textfield; text-align: center; }
html body .bns-pdp2 form.cart .quantity input.qty::-webkit-inner-spin-button,
html body .bns-pdp2 form.cart .quantity input.qty::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
html body .bns-pdp2 form.cart .bns-buynow { order: 1; }
html body .bns-pdp2 form.cart .single_add_to_cart_button { order: 2; }
html body .bns-pdp2 form.cart .bns-qty-label, html body .bns-pdp2 form.cart .quantity { order: 0; }
html body .bns-pdp2 form.cart .single_add_to_cart_button,
html body .bns-pdp2 form.cart .bns-buynow { min-height: 48px !important; border-radius: 10px !important; }
html body .bns-pdp2 form.cart .single_add_to_cart_button { box-shadow: inset 0 0 0 1px var(--pd-line) !important; color: var(--pd-ink) !important; }
html body .bns-pdp2 form.cart .single_add_to_cart_button:hover { box-shadow: inset 0 0 0 1px var(--pd-brand) !important; color: var(--pd-brand) !important; background: #fff !important; }
html body .bns-pdp2 form.cart .bns-buynow { box-shadow: none !important; }

/* WoodMart extras inside the details column */
html body .bns-pdp2 .bns-pdp2__actions > .wd-compare-btn,
html body .bns-pdp2 .bns-pdp2__actions > .wd-wishlist-btn,
html body .bns-pdp2 .bns-product-wa { display: none !important; }
html body .bns-pdp2 .wd-shipping-progress-bar { margin: 0 0 14px !important; border-radius: 12px; }

/* cash on delivery / WhatsApp / delivery */
.bns-pdp-assure { margin: 0; }
.bns-pdp-assure__row { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin-bottom: 10px; }
.bns-pdp-assure__tile { display: flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 14px; border-radius: 10px; font-size: 14px; font-weight: 700; text-decoration: none !important; }
.bns-pdp-assure__tile.is-cod { background: var(--pd-tint, #eef2fb); color: var(--pd-brand, #0025a7) !important; }
.bns-pdp-assure__tile.is-wa { background: #e8f8ee; color: #0f7a3d !important; }
.bns-pdp-assure__tile.is-wa:hover { background: #d7f2e2; }
.bns-pdp-assure__line { display: flex; align-items: flex-start; gap: 8px; margin: 0 !important; padding: 11px 14px; border: 1px solid var(--pd-line, #e3e6eb); border-radius: 10px; font-size: 13.5px; line-height: 1.45; color: #374151; }
.bns-pdp-assure__line svg { flex: none; margin-top: 1px; color: var(--pd-brand, #0025a7); }
.bns-pdp-assure__line strong { color: var(--pd-ink, #0b1636); }

/* lower: tabs + sections | sidebar */
.bns-pdp2__lower { display: grid; grid-template-columns: 1fr; gap: 28px; margin-top: clamp(28px, 4vw, 48px); padding-bottom: 40px; }
.bns-pdp2__tabs { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 22px; }
.bns-pdp2__tabs a { display: inline-flex; align-items: center; min-height: 36px; padding: 0 16px; border: 1px solid var(--pd-line); border-radius: 10px; background: #fff; font-size: 14px; font-weight: 700; color: var(--pd-ink) !important; }
.bns-pdp2__tabs a:hover { border-color: var(--pd-brand); color: var(--pd-brand) !important; }
.bns-pdp2__tabs a.is-on { background: var(--pd-brand); border-color: var(--pd-brand); color: #fff !important; }
.bns-pdp2__sec { margin: 0 0 36px; scroll-margin-top: 110px; }
#reviews { scroll-margin-top: 110px; }
.bns-pdp2__sec h2, .bns-pdp2__reviews .woocommerce-Reviews-title, .bns-pdp2__aside h2 { font-family: var(--bns-display, inherit); font-size: 22px !important; font-weight: 800; letter-spacing: -0.01em; color: var(--pd-ink); margin: 0 0 14px !important; }
.bns-pdp2__spec { width: 100%; margin: 0; border-collapse: separate; border-spacing: 0; border: 1px solid var(--pd-line); border-radius: 12px; overflow: hidden; }
.bns-pdp2__spec th, .bns-pdp2__spec td { padding: 12px 16px !important; border: 0 !important; border-bottom: 1px solid #eef0f3 !important; font-size: 14px; line-height: 1.5; text-align: left; vertical-align: top; }
.bns-pdp2__spec tr:last-child th, .bns-pdp2__spec tr:last-child td { border-bottom: 0 !important; }
.bns-pdp2__spec th { width: 32%; background: #f7f8fb; font-weight: 600; color: var(--pd-muted); }
.bns-pdp2__spec td { color: var(--pd-ink); }
.bns-pdp2__copy { font-size: 15.5px; line-height: 1.75; color: #374151; max-width: 75ch; }
.bns-pdp2__copy > *:first-child { margin-top: 0; }
.bns-pdp2__copy h2, .bns-pdp2__copy h3 { color: var(--pd-ink); margin: 1.4em 0 .5em; }
.bns-pdp2__copy a { color: var(--pd-brand); }
.bns-pdp2__copy img { border-radius: 12px; max-width: 100%; height: auto; }
.bns-pdp2__aside { display: flex; flex-direction: column; gap: 18px; }
.bns-pdp2__box { padding: 16px; border: 1px solid var(--pd-line); border-radius: 14px; background: #fff; }
.bns-pdp2__box[hidden] { display: none; }
.bns-pdp2__aside h2 { font-size: 18px !important; margin-bottom: 10px !important; }
.bns-mini { list-style: none; margin: 0 !important; padding: 0 !important; }
.bns-mini li { margin: 0 !important; border-bottom: 1px solid #eef0f3; }
.bns-mini li:last-child { border-bottom: 0; }
.bns-mini__item { display: flex; gap: 12px; align-items: center; padding: 10px 0; color: var(--pd-ink, #0b1636) !important; }
.bns-mini__img { flex: none; width: 60px; height: 60px; display: flex; align-items: center; justify-content: center; border-radius: 10px; background: #f6f7f9; overflow: hidden; }
.bns-mini__img img { width: 100% !important; height: 100% !important; object-fit: contain; margin: 0 !important; }
.bns-mini__body { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.bns-mini__name { font-size: 14px; font-weight: 700; line-height: 1.3; }
.bns-mini__item:hover .bns-mini__name { color: var(--pd-brand, #0025a7); }
.bns-mini__price { font-size: 14px; font-weight: 800; color: var(--pd-ink, #0b1636); }
.bns-mini__price del { font-size: 12px; font-weight: 500; color: #8a93a3; margin-left: 4px; }
.bns-mini__price ins { text-decoration: none; }
.bns-mini__price .bns-from { font-weight: 600; color: #5b6474; }
.bns-mini__off { align-self: flex-start; font-size: 11px; font-weight: 800; color: #c81e1e; background: #fdecec; padding: 2px 6px; border-radius: 5px; }
.bns-mini__off .amount { color: inherit !important; }

@media (min-width: 768px) {
	.bns-pdp2__hero { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 28px; }
}
@media (min-width: 1025px) {
	.bns-pdp2__hero { gap: 40px; }
	.bns-pdp2__lower { grid-template-columns: minmax(0, 1fr) 340px; gap: 40px; }
	.bns-pdp2__aside { position: sticky; top: 100px; align-self: start; }
	html body .bns-pdp2 .bns-pdp2__stage { position: sticky; top: 100px; }
}
.bns-pdp2 a:not(.bns-pdp2__copy a) { text-decoration: none !important; }
.bns-mini__price { display: inline-flex; flex-wrap: wrap; align-items: baseline; gap: 4px; }
.bns-mini__price ins { order: 1; } .bns-mini__price del { order: 2; margin-left: 0; }
html body .bns-pdp2 form.cart table.variations tr { flex-basis: 150px; }

/* 2.7.1 – pre-order: one full-width "Pre-order now" button and the shop's message */
html body.bns-pdp form.cart.bns-pre .single_add_to_cart_button { display: none !important; }
html body.bns-pdp form.cart.bns-pre .bns-buynow { grid-column: 1 / -1; }
html body .bns-buybar .bns-buybar__cart { }
html body.bns-is-pre .bns-buybar .bns-buybar__cart { display: none !important; }
.bns-preorder-note { grid-column: 1 / -1; order: 3; display: flex; align-items: center; gap: 8px; margin: 0 !important; padding: 10px 12px; border-radius: 10px; background: #fff7e6; color: #92400e; font-size: 13.5px; font-weight: 700; }
.bns-preorder-note[hidden] { display: none !important; }
.bns-preorder-note svg { flex: none; }

/* 2.7.1 – star ratings drawn by the plugin (the theme's star font does not load on this layout) */
html body .bns-pdp2 .star-rating,
html body #reviews .star-rating { position: relative !important; display: inline-block !important; width: 86px !important; height: 16px !important; margin: 0 !important; overflow: hidden; font-size: 0 !important; line-height: 0 !important; letter-spacing: 0 !important; float: none !important; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17.2' height='16' viewBox='0 0 24 24'%3E%3Cpath fill='%23d5d9e0' d='M12 2.5l2.9 6.1 6.6.8-4.9 4.6 1.3 6.6L12 17.3l-5.9 3.3 1.3-6.6-4.9-4.6 6.6-.8z'/%3E%3C/svg%3E") left center / 17.2px 16px repeat-x !important; }
html body .bns-pdp2 .star-rating::before, html body #reviews .star-rating::before,
html body .bns-pdp2 .star-rating span::before, html body #reviews .star-rating span::before { content: none !important; display: none !important; }
html body .bns-pdp2 .star-rating span,
html body #reviews .star-rating span { position: absolute !important; top: 0; left: 0; height: 100%; padding: 0 !important; overflow: hidden; font-size: 0 !important; color: transparent !important; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17.2' height='16' viewBox='0 0 24 24'%3E%3Cpath fill='%23f5a524' d='M12 2.5l2.9 6.1 6.6.8-4.9 4.6 1.3 6.6L12 17.3l-5.9 3.3 1.3-6.6-4.9-4.6 6.6-.8z'/%3E%3C/svg%3E") left center / 17.2px 16px repeat-x !important; }
html body #reviews .comment-form-rating label { display: block; margin: 0 0 6px; font-weight: 700; }
html body #reviews p.stars { display: block !important; margin: 0 0 14px !important; line-height: 1 !important; }
html body #reviews p.stars > span { display: inline-flex !important; gap: 4px; }
html body #reviews p.stars a { position: relative !important; display: inline-block !important; width: 30px !important; height: 30px !important; margin: 0 !important; padding: 0 !important; overflow: hidden; font-size: 0 !important; line-height: 0 !important; text-indent: -9999px; border: 0 !important; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%239aa3b2' stroke-width='1.5' stroke-linejoin='round' d='M12 2.5l2.9 6.1 6.6.8-4.9 4.6 1.3 6.6L12 17.3l-5.9 3.3 1.3-6.6-4.9-4.6 6.6-.8z'/%3E%3C/svg%3E") center / 28px 28px no-repeat !important; }
html body #reviews p.stars a::before, html body #reviews p.stars a::after { content: none !important; display: none !important; }
html body #reviews p.stars:hover a,
html body #reviews p.stars.selected a { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23f5a524' stroke='%23f5a524' stroke-width='1.5' stroke-linejoin='round' d='M12 2.5l2.9 6.1 6.6.8-4.9 4.6 1.3 6.6L12 17.3l-5.9 3.3 1.3-6.6-4.9-4.6 6.6-.8z'/%3E%3C/svg%3E") !important; }
html body #reviews p.stars a:hover ~ a,
html body #reviews p.stars.selected:not(:hover) a.active ~ a { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%239aa3b2' stroke-width='1.5' stroke-linejoin='round' d='M12 2.5l2.9 6.1 6.6.8-4.9 4.6 1.3 6.6L12 17.3l-5.9 3.3 1.3-6.6-4.9-4.6 6.6-.8z'/%3E%3C/svg%3E") !important; }
html body #reviews p.stars a:focus-visible { outline: 2px solid var(--bns-brand, #0025a7); outline-offset: 2px; border-radius: 6px; }
html body #reviews .comment-form-rating p.stars ~ select#rating { display: none !important; }
html body .bns-pdp2 .woocommerce-variation-availability { display: none !important; } /* shown at the top instead */
/* review form */
html body #reviews #review_form_wrapper { margin-top: 18px; padding: 18px; border: 1px solid #e3e6eb; border-radius: 14px; background: #fff; }
html body #reviews .comment-reply-title { display: block; margin: 0 0 6px; font-size: 18px; font-weight: 800; color: var(--bns-ink, #0b1636); }
html body #reviews .comment-notes { margin: 0 0 14px; font-size: 13px; color: #5b6474; }
html body #reviews .comment-form label { display: block; margin: 0 0 6px; font-size: 14px; font-weight: 700; color: var(--bns-ink, #0b1636); }
html body #reviews .comment-form textarea,
html body #reviews .comment-form input[type=text],
html body #reviews .comment-form input[type=email] { width: 100% !important; max-width: 100%; min-height: 44px; padding: 10px 12px !important; border: 1px solid #d5d9e0 !important; border-radius: 10px !important; background: #fff !important; font-size: 15px; box-sizing: border-box; }
html body #reviews .comment-form textarea { min-height: 110px; }
html body #reviews .comment-form textarea:focus,
html body #reviews .comment-form input:focus { border-color: var(--bns-brand, #0025a7) !important; outline: 2px solid color-mix(in srgb, var(--bns-brand, #0025a7) 22%, transparent); }
html body #reviews .comment-form .comment-form-cookies-consent label { display: inline; font-weight: 500; }
html body #reviews .comment-form .form-submit input[type=submit] { min-height: 46px; padding: 0 26px !important; border: 0 !important; border-radius: 10px !important; background: var(--bns-brand, #0025a7) !important; color: #fff !important; font-weight: 800 !important; font-size: 15px !important; text-transform: none !important; cursor: pointer; }
html body #reviews .commentlist { list-style: none; margin: 0 0 8px !important; padding: 0 !important; }
html body #reviews .commentlist li .comment_container { display: flex; gap: 12px; }
html body #reviews .commentlist li img.avatar { position: static !important; width: 40px !important; height: 40px !important; border-radius: 50% !important; padding: 0 !important; border: 0 !important; background: #eef2fb; float: none !important; }
html body #reviews .commentlist li .comment-text { flex: 1; margin: 0 !important; padding: 14px 16px !important; border: 1px solid #e3e6eb !important; border-radius: 12px !important; }
.bns-pdp2__each { font-size: 13px; font-weight: 600; color: #5b6474; }
.bns-pdp2__each[hidden], .bns-pdp2__off[hidden] { display: none !important; }

/* 2.8.0 – pre-order advance */
.bns-adv-note { display: flex; gap: 10px; align-items: flex-start; margin: 0 0 14px; padding: 12px 14px; border-radius: 12px; background: #fff7e6; color: #7c3a0a; font-size: 14px; line-height: 1.5; }
.bns-adv-note svg { flex: none; margin-top: 2px; color: #b45309; }
.bns-adv-note p { margin: 0 !important; }
.bns-adv-note strong, .bns-adv-note .amount { color: #7c2d12 !important; font-weight: 800; }
.bns-adv-note--thanks { margin: 0 0 20px; }
html body tr.bns-adv-row th, html body tr.bns-adv-row td { font-size: 14px; }
html body tr.bns-adv-row--now th, html body tr.bns-adv-row--now td, html body tr.bns-adv-row--now .amount { color: var(--bns-brand, #0025a7) !important; }

/* 2.8.1 – "You may also like" and "Recently viewed" as full-width product grids */
.bns-pdp2__lower { grid-template-columns: 1fr !important; }
.bns-pdp2__more { padding-bottom: 48px; }
.bns-pdp2__grid { margin: 0 0 40px; }
.bns-pdp2__grid[hidden] { display: none !important; }
.bns-pdp2__grid h2 { font-family: var(--bns-display, inherit); font-size: clamp(20px, 2.2vw, 24px) !important; font-weight: 800; letter-spacing: -0.01em; color: var(--bns-ink, #0b1636); margin: 0 0 16px !important; }

/* 2.8.2 – product page carousels */
.bns-pdp2__gridhead { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 16px; }
.bns-pdp2__gridhead h2 { margin: 0 !important; }
.bns-car-nav { display: flex; gap: 8px; }
.bns-car-nav[hidden] { display: none !important; }
html body .bns-car-btn { display: inline-flex !important; align-items: center; justify-content: center; width: 40px !important; height: 40px !important; min-height: 0 !important; padding: 0 !important; margin: 0 !important; border: 1px solid #e3e6eb !important; border-radius: 50% !important; background: #fff !important; color: var(--bns-ink, #0b1636) !important; box-shadow: none !important; cursor: pointer; }
html body .bns-car-btn:hover:not(:disabled) { border-color: var(--bns-brand, #0025a7) !important; color: var(--bns-brand, #0025a7) !important; }
html body .bns-car-btn:disabled { opacity: .35; cursor: default; }
html body .bns-car-btn:focus-visible { outline: 2px solid var(--bns-brand, #0025a7); outline-offset: 2px; }
html body .bns-pdp2__grid .bns-products { display: flex !important; gap: 16px; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch; padding: 2px 2px 6px; margin: 0 -2px; }
html body .bns-pdp2__grid .bns-products::-webkit-scrollbar { display: none; }
html body .bns-pdp2__grid .bns-products__item { flex: 0 0 calc((100% - 16px) / 2.15); width: auto; scroll-snap-align: start; }
@media (min-width: 768px) { html body .bns-pdp2__grid .bns-products__item { flex-basis: calc((100% - 32px) / 3); } }
@media (min-width: 1025px) { html body .bns-pdp2__grid .bns-products__item { flex-basis: calc((100% - 48px) / 4); } }
@media (prefers-reduced-motion: reduce) { html body .bns-pdp2__grid .bns-products { scroll-behavior: auto; } }

/* 2.8.3 – multi-photo gallery: grid columns may shrink below their content (stops the theme carousel growing without limit) */
.bns-pdp2__hero { grid-template-columns: minmax(0, 1fr); }
.bns-pdp2__hero > *, .bns-pdp2__lower > * { min-width: 0; }
html body .bns-pdp2 .bns-pdp2__stage { min-width: 0; max-width: 100% !important; }
.bns-pdp2__lower { grid-template-columns: minmax(0, 1fr) !important; }
@media (min-width: 768px) { .bns-pdp2__hero { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); } }

/* 2.8.4 – one sticky buy bar on every screen size: ours replaces the theme's "sticky add to cart" on the product page */
html body.bns-pdp .wd-sticky-btn { display: none !important; }
html body .bns-buybar .bns-buybar__lbl { display: none; }
@media (min-width: 1025px) {
	html body .bns-buybar { padding: 12px max(24px, calc((100vw - 1240px) / 2)); gap: 16px; }
	html body .bns-buybar .bns-buybar__img { width: 52px !important; height: 52px !important; }
	html body .bns-buybar .bns-buybar__name { font-size: 15px; }
	html body .bns-buybar .bns-buybar__price, html body .bns-buybar .bns-buybar__price .amount { font-size: 17px !important; }
	html body .bns-buybar .bns-buybar__cart { width: auto; padding: 0 20px !important; gap: 8px; }
	html body .bns-buybar .bns-buybar__lbl { display: inline; }
	html body .bns-buybar button { height: 48px !important; min-width: 150px; font-size: 15px !important; }
}

/* === 2.8.5 Mobile side menu === */
.mobile-nav.wd-side-hidden { background: #fff; }
.mobile-nav .wd-search-form { padding: 14px 14px 10px; border: 0; }
.mobile-nav .wd-search-form .searchform input[type=text] { height: 46px; border-radius: 999px; background: #f3f5fb; border: 1px solid #e3e8f5; padding-inline: 18px 48px; font-size: 14px; }
.mobile-nav .wd-search-form .searchform input[type=text]:focus { border-color: var(--bns-brand, #0025a7); background: #fff; }
.mobile-nav .wd-nav-mob-tab { display: flex; gap: 4px; margin: 4px 14px 12px; padding: 4px; background: var(--bns-tint, #eef2ff); border-radius: 12px; border: 0; }
.mobile-nav .wd-nav-mob-tab > li { flex: 1 1 0; margin: 0; }
.mobile-nav .wd-nav-mob-tab > li > a { justify-content: center; height: 40px; min-height: 40px; padding: 0 8px; border-radius: 9px; background: transparent; color: #475569; font-size: 13px; font-weight: 600; letter-spacing: .02em; text-transform: none; }
.mobile-nav .wd-nav-mob-tab > li > a:after, .mobile-nav .wd-nav-mob-tab .nav-link-text:after { display: none !important; }
.mobile-nav .wd-nav-mob-tab > li.wd-active > a { background: #fff; color: var(--bns-brand, #0025a7); box-shadow: 0 1px 3px rgba(15,23,42,.12); }
.mobile-nav .wd-nav-mobile { padding: 0 8px 24px; }
.mobile-nav .wd-nav-mobile > li { border: 0 !important; margin: 0 0 2px; border-radius: 12px; position: relative; }
.mobile-nav .wd-nav-mobile > li > a { display: flex; align-items: center; gap: 12px; min-height: 54px; padding: 8px 52px 8px 10px; border-radius: 12px; color: #0f172a; font-size: 15px; font-weight: 600; text-transform: none; letter-spacing: 0; border: 0 !important; }
.mobile-nav .wd-nav-mobile > li > a:hover, .mobile-nav .wd-nav-mobile > li.current-menu-item > a { background: #f5f7fd; color: var(--bns-brand, #0025a7); }
.mobile-nav .wd-nav-mobile > li > a:before { content: ""; flex: 0 0 38px; width: 38px; height: 38px; border-radius: 10px; background: var(--bns-tint, #eef2ff) center / 24px no-repeat; }
.mobile-nav .wd-nav-mobile > li.menu-item-has-children > a .nav-link-text:after, .mobile-nav .wd-nav-mobile > li > a:after { display: none !important; }
.mobile-nav .wd-nav-mobile .wd-nav-opener { position: absolute; top: 9px; right: 6px; width: 36px; height: 36px; border-radius: 10px; border: 0 !important; background: transparent; color: #64748b; display: flex; align-items: center; justify-content: center; transition: background .2s, color .2s; }
.mobile-nav .wd-nav-mobile .wd-nav-opener:hover { background: #f1f4fb; }
.mobile-nav .wd-nav-mobile .wd-nav-opener.wd-active { background: var(--bns-brand, #0025a7); color: #fff; }
.mobile-nav .wd-nav-mobile .wd-nav-opener:after { transition: transform .2s; }
.mobile-nav .wd-nav-mobile .wd-sub-menu { padding: 4px 6px 12px 60px !important; background: transparent; }
.mobile-nav .wd-nav-mobile .wd-sub-menu > li { display: inline-block; border: 0 !important; margin: 0 6px 8px 0; }
.mobile-nav .wd-nav-mobile .wd-sub-menu > li > a { display: inline-flex; align-items: center; min-height: 34px; padding: 6px 14px; border-radius: 999px; border: 1px solid var(--bns-tint-2, #dde6ff); background: #fff; color: #1e293b; font-size: 13px; font-weight: 500; text-transform: none; }
.mobile-nav .wd-nav-mobile .wd-sub-menu > li > a:hover { background: var(--bns-brand, #0025a7); border-color: var(--bns-brand, #0025a7); color: #fff; }
.mobile-nav .wd-nav-mobile .wd-sub-menu .wd-nav-opener { display: none; }
.mobile-nav .wd-nav-mobile > li.menu-item-2756 > a:before { background-image: url(https://jehanbn.com/wp-content/uploads/2026/10/category-phone.png); background-size: 38px; }
.mobile-nav .wd-nav-mobile > li.menu-item-2759 > a:before { background-image: url(https://jehanbn.com/wp-content/uploads/2026/10/category-headphones.png); background-size: 38px; }
.mobile-nav .wd-nav-mobile > li.menu-item-2760 > a:before { background-image: url(https://jehanbn.com/wp-content/uploads/2026/10/category-watch.png); background-size: 38px; }
.mobile-nav .wd-nav-mobile > li.menu-item-2761 > a:before { background-image: url(https://jehanbn.com/wp-content/uploads/2026/10/category-charger.png); background-size: 38px; }
.mobile-nav .wd-nav-mobile > li.menu-item-2762 > a:before { background-image: url(https://jehanbn.com/wp-content/uploads/2026/10/category-keyboard.png); background-size: 38px; }
.mobile-nav .wd-nav-mobile > li.menu-item-2763 > a:before { background-image: url(https://jehanbn.com/wp-content/uploads/2026/10/category-repair.png); background-size: 38px; }
.mobile-nav .wd-nav-mobile > li.menu-item-2766 > a:before { background-image: url(https://jehanbn.com/wp-content/uploads/2026/10/category-repair.png); background-size: 38px; }
.mobile-nav .wd-nav-mobile > li.menu-item-2766 > a:before { background-color: #fff4e5; }
.mobile-nav .wd-nav-mobile > li.menu-item-2767 > a:before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230025a7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 10.5 12 3l9 7.5'/%3E%3Cpath d='M5 9.5V21h14V9.5'/%3E%3Cpath d='M10 21v-6h4v6'/%3E%3C/svg%3E"); background-size: 20px; }
.mobile-nav .wd-nav-mobile > li.menu-item-2768 > a:before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230025a7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 7h12l1 14H5L6 7z'/%3E%3Cpath d='M9 7a3 3 0 0 1 6 0'/%3E%3C/svg%3E"); background-size: 20px; }
.mobile-nav .wd-nav-mobile > li.menu-item-2769 > a:before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230025a7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.7 6.3a4 4 0 0 0-5.4 5.4L3 18l3 3 6.3-6.3a4 4 0 0 0 5.4-5.4l-2.5 2.5-2.4-.6-.6-2.4z'/%3E%3C/svg%3E"); background-size: 20px; }
.mobile-nav .wd-nav-mobile > li.menu-item-2770 > a:before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230025a7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7h11v9H3z'/%3E%3Cpath d='M14 10h4l3 3v3h-7'/%3E%3Ccircle cx='7' cy='18' r='2'/%3E%3Ccircle cx='17' cy='18' r='2'/%3E%3C/svg%3E"); background-size: 20px; }
.mobile-nav .wd-nav-mobile > li.menu-item-2771 > a:before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230025a7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v5'/%3E%3Cpath d='M12 8h.01'/%3E%3C/svg%3E"); background-size: 20px; }
.mobile-nav .wd-nav-mobile > li.menu-item-2772 > a:before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230025a7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h4l2 5-2.5 1.5a11 11 0 0 0 5 5L15 13l5 2v4a2 2 0 0 1-2 2A16 16 0 0 1 3 6a2 2 0 0 1 2-2'/%3E%3C/svg%3E"); background-size: 20px; }
.mobile-nav .wd-nav-mobile > li.menu-item-2120 > a:before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230025a7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 3h7l5 5v13H7z'/%3E%3Cpath d='M14 3v5h5'/%3E%3Cpath d='M10 13h6M10 17h6'/%3E%3C/svg%3E"); background-size: 20px; }
.mobile-nav .bns-mnav-pop { margin: 6px 14px 28px; padding: 14px 0 14px 14px; border-radius: 16px; background: linear-gradient(160deg, var(--bns-tint, #eef2ff), #fff 70%); border: 1px solid var(--bns-tint-2, #dde6ff); }
.mobile-nav .bns-mnav-pop__head { display: flex; align-items: center; justify-content: space-between; padding-right: 10px; margin-bottom: 10px; }
.mobile-nav .bns-mnav-pop__title { font-size: 15px; font-weight: 700; color: #0f172a; }
.mobile-nav .bns-mnav-pop__nav { display: flex; gap: 6px; }
.mobile-nav .bns-mnav-pop__nav button { width: 30px; height: 30px; min-height: 30px; padding: 0; border-radius: 50%; border: 1px solid var(--bns-tint-2, #dde6ff); background: #fff; color: var(--bns-brand, #0025a7); font-size: 20px; line-height: 1; display: inline-flex; align-items: center; justify-content: center; box-shadow: none; }
.mobile-nav .bns-mnav-pop__nav button:hover { background: var(--bns-brand, #0025a7); color: #fff; }
.mobile-nav .bns-mnav-pop__track { display: flex; gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding: 2px 14px 4px 0; overscroll-behavior-x: contain; }
.mobile-nav .bns-mnav-pop__track::-webkit-scrollbar { display: none; }
.mobile-nav .bns-mnav-card { flex: 0 0 138px; scroll-snap-align: start; display: flex; flex-direction: column; gap: 4px; padding: 8px; border-radius: 12px; background: #fff; border: 1px solid #e8ecf6; color: #0f172a; text-decoration: none; }
.mobile-nav .bns-mnav-card:hover { border-color: var(--bns-brand, #0025a7); }
.mobile-nav .bns-mnav-card__img { display: block; aspect-ratio: 1; border-radius: 8px; overflow: hidden; background: #f6f7fb; }
.mobile-nav .bns-mnav-card__img img { width: 100%; height: 100%; object-fit: contain; margin: 0; }
.mobile-nav .bns-mnav-card__name { font-size: 12.5px; font-weight: 600; line-height: 1.3; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.6em; }
.mobile-nav .bns-mnav-card__price { font-size: 13px; font-weight: 700; color: var(--bns-brand, #0025a7); }
.mobile-nav .bns-mnav-card__price del { display: block; font-size: 11px; font-weight: 400; color: #94a3b8; }
.mobile-nav .bns-mnav-card__price ins { text-decoration: none; }
.mobile-nav .bns-mnav-pop__all { display: block; margin: 12px 14px 0 0; padding: 11px; border-radius: 10px; background: var(--bns-brand, #0025a7); color: #fff !important; text-align: center; font-size: 14px; font-weight: 600; }
.mobile-nav .bns-mnav-pop__all:hover { background: var(--bns-brand-deep, #001670); }

/* === 2.9.0 Quick view === */
html body .bns-card__save .bns-save--qv > a { cursor: pointer; }
@media (hover: hover) and (min-width: 1025px) {
	html body .bns-card .bns-card__save .bns-save--qv { opacity: 0; transform: translateX(6px); transition: opacity .15s ease, transform .15s ease; }
	html body .bns-card:hover .bns-card__save .bns-save--qv,
	html body .bns-card .bns-card__save .bns-save--qv:focus-within { opacity: 1; transform: none; }
}
html.bns-qv-open, html.bns-qv-open body { overflow: hidden !important; }
.bns-qv { position: fixed; inset: 0; z-index: 100010; display: flex; align-items: center; justify-content: center; padding: 24px; }
.bns-qv[hidden] { display: none !important; }
.bns-qv__backdrop { position: absolute; inset: 0; background: rgba(11, 22, 54, .55); backdrop-filter: blur(3px); opacity: 0; transition: opacity .2s ease; }
.bns-qv__dialog { position: relative; width: min(1040px, 100%); max-height: min(720px, calc(100vh - 48px)); overflow: auto; overscroll-behavior: contain; background: #fff; border-radius: 20px; box-shadow: 0 30px 80px rgba(11, 22, 54, .35); opacity: 0; transform: translateY(14px) scale(.98); transition: opacity .2s ease, transform .2s ease; outline: none; }
.bns-qv.is-in .bns-qv__backdrop { opacity: 1; }
.bns-qv.is-in .bns-qv__dialog { opacity: 1; transform: none; }
.bns-qv__grab { display: none; }
.bns-qv__close { position: sticky; float: right; top: 12px; margin: 12px 12px -52px 0; z-index: 4; width: 40px; height: 40px; min-height: 40px; padding: 0 !important; border-radius: 50%; border: 1px solid #e3e8f5 !important; background: #fff !important; color: #0b1636 !important; font-size: 26px; line-height: 1; display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 12px rgba(11,22,54,.08); cursor: pointer; }
.bns-qv__close:hover { background: var(--bns-brand, #0025a7) !important; color: #fff !important; }
.bns-qv__nav { position: fixed; top: 50%; z-index: 5; width: 46px; height: 46px; min-height: 46px; margin-top: -23px; padding: 0 !important; border-radius: 50%; border: 0 !important; background: #fff !important; color: var(--bns-brand, #0025a7) !important; font-size: 30px; line-height: 1; display: flex; align-items: center; justify-content: center; box-shadow: 0 8px 24px rgba(11,22,54,.25); cursor: pointer; }
.bns-qv__nav[hidden] { display: none !important; }
.bns-qv__nav.is-prev { left: max(12px, calc(50% - 600px)); }
.bns-qv__nav.is-next { right: max(12px, calc(50% - 600px)); }
.bns-qv__nav:hover { background: var(--bns-brand, #0025a7) !important; color: #fff !important; }
.bns-qv__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 32px; padding: 28px; }
.bns-qv__media { min-width: 0; }
.bns-qv__stage { position: relative; aspect-ratio: 1; border-radius: 16px; background: #f5f7fc; overflow: hidden; }
.bns-qv__slide { position: absolute; inset: 0; margin: 0; display: flex; align-items: center; justify-content: center; opacity: 0; transition: opacity .25s ease; }
.bns-qv__slide.is-on { opacity: 1; }
.bns-qv__slide img { width: 100%; height: 100%; object-fit: contain; padding: 18px; }
.bns-qv__off { position: absolute; top: 12px; left: 12px; padding: 4px 10px; border-radius: 999px; background: var(--bns-sale, #e11d48); color: #fff; font-size: 13px; font-weight: 700; }
.bns-qv__thumbs { display: flex; gap: 8px; margin-top: 10px; overflow-x: auto; scrollbar-width: none; }
.bns-qv__thumbs::-webkit-scrollbar { display: none; }
.bns-qv__thumb { flex: 0 0 64px; height: 64px; min-height: 64px; padding: 4px !important; border-radius: 10px; border: 2px solid transparent !important; background: #f5f7fc !important; cursor: pointer; }
.bns-qv__thumb.is-on { border-color: var(--bns-brand, #0025a7) !important; }
.bns-qv__thumb img { width: 100%; height: 100%; object-fit: contain; }
.bns-qv__info { min-width: 0; display: flex; flex-direction: column; gap: 12px; padding-right: 36px; }
.bns-qv__brand { align-self: flex-start; padding: 4px 10px; border-radius: 999px; background: var(--bns-tint, #eef2ff); color: var(--bns-brand, #0025a7); font-size: 12px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.bns-qv__title { margin: 0; font-size: 24px; line-height: 1.25; font-weight: 800; }
.bns-qv__title a { color: #0b1636; }
.bns-qv__title a:hover { color: var(--bns-brand, #0025a7); }
.bns-qv__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; font-size: 13px; color: #64748b; }
.bns-qv__rating { display: inline-flex; align-items: center; gap: 6px; color: #64748b; }
.bns-qv__rating .star-rating { margin: 0; font-size: 13px; }
.bns-qv__avail { padding: 3px 10px; border-radius: 999px; font-weight: 700; }
.bns-qv__avail.is-in { background: #e7f8ee; color: #15803d; }
.bns-qv__avail.is-pre { background: #fff4e5; color: #b45309; }
.bns-qv__avail.is-out { background: #fde8ec; color: #be123c; }
.bns-qv__price { font-size: 24px; font-weight: 800; color: var(--bns-brand, #0025a7); }
.bns-qv__price del { font-size: 16px; font-weight: 500; color: #94a3b8; margin-right: 6px; }
.bns-qv__price ins { text-decoration: none; }
.bns-qv__desc { margin: 0; font-size: 14px; line-height: 1.6; color: #475569; }
.bns-qv__specs { margin: 0; padding: 0; list-style: none; border: 1px solid #e8ecf6; border-radius: 12px; overflow: hidden; }
.bns-qv__specs li { display: flex; justify-content: space-between; gap: 16px; padding: 9px 14px; font-size: 13.5px; margin: 0; }
.bns-qv__specs li:nth-child(odd) { background: #f8faff; }
.bns-qv__specs span { color: #64748b; }
.bns-qv__specs b { color: #0b1636; font-weight: 600; text-align: right; }
.bns-qv__buy form.cart { margin: 0 !important; display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.bns-qv__buy form.variations_form { display: block; }
.bns-qv__buy table.variations { margin: 0 0 6px; border: 0; }
.bns-qv__buy table.variations th, .bns-qv__buy table.variations td { display: block; padding: 0 !important; border: 0; text-align: left; background: none; }
.bns-qv__buy table.variations th label { font-size: 13px; font-weight: 700; color: #0b1636; margin-bottom: 6px; display: block; }
.bns-qv__buy table.variations tr { display: block; margin-bottom: 10px; }
.bns-qv__buy .reset_variations { font-size: 12px; }
.bns-qv__buy .single_variation_wrap .woocommerce-variation-price { display: none; }
.bns-qv__buy .woocommerce-variation-add-to-cart, .bns-qv__buy form.cart:not(.variations_form) { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.bns-qv__buy .bns-qty-label { width: 100%; margin: 4px 0 0; font-size: 13px; font-weight: 700; color: #0b1636; }
.bns-qv__buy .quantity { margin: 0 !important; }
.bns-qv__buy .single_add_to_cart_button, .bns-qv__buy .bns-qv__buynow { flex: 1 1 140px; min-height: 48px; margin: 0 !important; border-radius: 12px !important; font-weight: 700 !important; display: inline-flex !important; align-items: center; justify-content: center; gap: 8px; }
.bns-qv__buy .single_add_to_cart_button { background: #fff !important; color: var(--bns-brand, #0025a7) !important; border: 2px solid var(--bns-brand, #0025a7) !important; }
.bns-qv__buy .bns-qv__buynow { background: var(--bns-brand, #0025a7) !important; color: #fff !important; border: 2px solid var(--bns-brand, #0025a7) !important; }
.bns-qv__buy .is-busy { opacity: .6; pointer-events: none; }
.bns-qv__buy .bns-choose { width: 100%; margin: 0; padding: 8px 12px; border-radius: 10px; background: #fde8ec; color: #be123c; font-size: 13px; font-weight: 600; }
.bns-qv__pre { display: flex; gap: 8px; align-items: flex-start; margin: 4px 0 0; padding: 10px 12px; border-radius: 10px; background: #fff8ec; color: #92400e; font-size: 13px; }
.bns-qv__pre[hidden] { display: none; }
.bns-qv__done { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; padding: 12px 14px; border-radius: 12px; background: #e7f8ee; color: #166534; font-weight: 700; font-size: 14px; }
.bns-qv__done[hidden] { display: none; }
.bns-qv__done a { margin-left: auto; font-size: 13px; color: #166534; text-decoration: underline; }
.bns-qv__done a + a { margin-left: 0; }
.bns-qv__done a.is-main { padding: 7px 14px; border-radius: 9px; background: var(--bns-brand, #0025a7); color: #fff !important; text-decoration: none; }
.bns-qv__more { display: inline-flex; align-items: center; gap: 6px; align-self: flex-start; font-weight: 700; font-size: 14px; color: var(--bns-brand, #0025a7); }
.bns-qv__more svg { transition: transform .15s; }
.bns-qv__more:hover svg { transform: translateX(3px); }
.bns-qv__skel { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; padding: 28px; }
.bns-qv__skel span { display: block; aspect-ratio: 1; border-radius: 16px; background: linear-gradient(90deg, #eef2fb 25%, #f7f9fe 50%, #eef2fb 75%); background-size: 200% 100%; animation: bns-qv-shine 1.1s linear infinite; }
.bns-qv__skel span + span { aspect-ratio: auto; height: 60%; }
@keyframes bns-qv-shine { to { background-position: -200% 0; } }
.bns-qv__err { padding: 40px 28px; text-align: center; }
@media (max-width: 1024px) {
	.bns-qv { padding: 0; align-items: flex-end; }
	.bns-qv__dialog { width: 100%; max-height: 92vh; border-radius: 20px 20px 0 0; transform: translateY(40px); padding-bottom: env(safe-area-inset-bottom); }
	.bns-qv__grab { display: block; width: 44px; height: 5px; border-radius: 5px; background: #d5dbea; margin: 10px auto 0; }
	.bns-qv__close { width: 36px; height: 36px; min-height: 36px; font-size: 22px; margin: 6px 10px -42px 0; top: 6px; }
	.bns-qv__nav { display: none !important; }
	.bns-qv__grid { grid-template-columns: 1fr; gap: 16px; padding: 12px 16px 20px; }
	.bns-qv__stage { aspect-ratio: 4 / 3; }
	.bns-qv__info { padding-right: 0; }
	.bns-qv__title { font-size: 20px; padding-right: 0; }
	.bns-qv__price { font-size: 22px; }
	.bns-qv__skel { grid-template-columns: 1fr; padding: 16px; }
	.bns-qv__buy .woocommerce-variation-add-to-cart, .bns-qv__buy form.cart:not(.variations_form) { position: sticky; bottom: 0; background: #fff; padding: 10px 0 4px; z-index: 2; }
}
@media (prefers-reduced-motion: reduce) {
	.bns-qv__backdrop, .bns-qv__dialog, .bns-qv__slide { transition: none; }
	.bns-qv__skel span { animation: none; }
}
html body .bns-qv form.cart select.bns-pills-src { position: absolute !important; width: 1px !important; height: 1px !important; min-height: 0 !important; padding: 0 !important; margin: -1px !important; overflow: hidden; clip: rect(0 0 0 0); border: 0 !important; opacity: 0; pointer-events: none; }
html body .bns-qv .bns-pills { gap: 6px; }
html body .bns-qv .bns-pills .bns-pill { min-height: 36px; min-width: 0; padding: 0 14px; border-width: 1px !important; border-radius: 999px !important; font-size: 13px; font-weight: 600; display: inline-flex; align-items: center; gap: 6px; }
html body .bns-qv .bns-pills .bns-pill.is-on { background: var(--bns-tint, #eef2ff) !important; color: var(--bns-brand, #0025a7) !important; border-color: var(--bns-brand, #0025a7) !important; box-shadow: inset 0 0 0 1px var(--bns-brand, #0025a7) !important; }
html body .bns-qv .reset_variations { display: inline-block; margin-top: 6px; color: #64748b; }
html body .bns-qv form.cart .quantity { display: inline-flex !important; align-items: stretch; height: 48px; border: 1px solid #d5dbea; border-radius: 12px; overflow: hidden; background: #fff; }
html body .bns-qv form.cart .quantity .minus,
html body .bns-qv form.cart .quantity .plus,
html body .bns-qv form.cart .quantity .bns-step { width: 40px; height: 100% !important; min-height: 0 !important; padding: 0 !important; border: 0 !important; background: #fff !important; color: #0b1636 !important; font-size: 18px !important; font-weight: 600; cursor: pointer; }
html body .bns-qv form.cart .quantity .bns-step:hover { color: var(--bns-brand, #0025a7) !important; }
html body .bns-qv form.cart .quantity input.qty { width: 44px !important; height: 100% !important; border: 0 !important; padding: 0 !important; text-align: center; -moz-appearance: textfield; appearance: textfield; font-weight: 700; }
html body .bns-qv form.cart .quantity input.qty::-webkit-inner-spin-button,
html body .bns-qv form.cart .quantity input.qty::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
html body .bns-qv .added_to_cart { display: none !important; }
html body .bns-qv .single_add_to_cart_button.added::after { display: none !important; }

/* === 2.9.4 Shop by budget (compact chips) === */
.bns-budget { --bb-brand: var(--bns-brand, #0025a7); --bb-ink: var(--bns-ink, #0b1636); --bb-tint: var(--bns-tint, #eef2ff); width: 100%; flex: 0 0 100%; min-width: 0; margin: 0 0 20px; }
.bns-budget__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
html body .bns-budget__title { margin: 0; font-size: 16px; line-height: 1.3; font-weight: 700; color: var(--bb-ink); }
html body a.bns-budget__clear { display: inline-flex; align-items: center; gap: 5px; font-size: 13px; font-weight: 600; color: var(--bb-brand); white-space: nowrap; }
html body a.bns-budget__clear:hover { text-decoration: underline; }
.bns-budget__list { display: flex; gap: 8px; margin: 0; padding: 0; list-style: none; overflow-x: auto; scrollbar-width: none; scroll-snap-type: x proximity; overscroll-behavior-x: contain; }
.bns-budget__list::-webkit-scrollbar { display: none; }
.bns-budget__list li { flex: 1 0 96px; min-width: 0; margin: 0; list-style: none; scroll-snap-align: start; }
.bns-budget__list li.is-top { flex: 1.25 0 120px; }
html body a.bns-budget__item { position: relative; display: flex; flex-direction: column; justify-content: center; gap: 1px; height: 56px; padding: 0 12px; border-radius: 12px; border: 1px solid #e3e8f5; background: #fff; color: var(--bb-ink); text-decoration: none; transition: border-color .15s ease, background-color .15s ease, box-shadow .15s ease; }
html body a.bns-budget__item:hover { border-color: var(--bb-brand); background: var(--bb-tint); }
html body a.bns-budget__item:focus-visible { outline: 3px solid rgba(0, 37, 167, .35); outline-offset: 2px; }
.bns-budget__small { display: inline-flex; align-items: center; gap: 4px; font-size: 11px; line-height: 1.2; font-weight: 600; color: #64748b; white-space: nowrap; }
.bns-budget__big { font-size: 17px; line-height: 1.2; font-weight: 800; color: var(--bb-brand); white-space: nowrap; }
.bns-budget__count { position: absolute; top: 8px; right: 8px; min-width: 20px; height: 20px; padding: 0 6px; border-radius: 999px; background: var(--bb-tint); color: var(--bb-brand); font-size: 11px; font-weight: 700; line-height: 20px; text-align: center; }
html body a.bns-budget__item.is-empty { background: #fafbfd; border-color: #eef1f6; }
html body a.bns-budget__item.is-empty .bns-budget__big { color: #a3adc2; }
html body a.bns-budget__item.is-empty:hover { border-color: #d5dbea; background: #f5f7fb; }
html body a.bns-budget__item.is-on { border-color: var(--bb-brand); background: var(--bb-tint); box-shadow: inset 0 0 0 1px var(--bb-brand); }
html body a.bns-budget__item.is-on .bns-budget__count { background: var(--bb-brand); color: #fff; }
html body a.bns-budget__item.is-top { border-color: transparent; background: linear-gradient(135deg, var(--bb-brand), var(--bns-brand-deep, #001670)); }
html body a.bns-budget__item.is-top .bns-budget__small { color: rgba(255, 255, 255, .8); }
html body a.bns-budget__item.is-top .bns-budget__small svg { color: #fbbf24; fill: #fbbf24; }
html body a.bns-budget__item.is-top .bns-budget__big { color: #fff; }
html body a.bns-budget__item.is-top .bns-budget__count { background: rgba(255, 255, 255, .18); color: #fff; }
html body a.bns-budget__item.is-top:hover { box-shadow: 0 6px 16px rgba(0, 37, 167, .25); }
html body a.bns-budget__item.is-top.is-on { box-shadow: 0 0 0 2px #fbbf24; }
@media (max-width: 767px) {
	.bns-budget { margin-bottom: 14px; }
	html body .bns-budget__title { font-size: 15px; }
	.bns-budget__head { margin-bottom: 8px; }
	.bns-budget__list { -webkit-mask-image: linear-gradient(90deg, #000 90%, transparent); mask-image: linear-gradient(90deg, #000 90%, transparent); }
	.bns-budget__list.is-end { -webkit-mask-image: none; mask-image: none; }
	.bns-budget__list li { flex: 0 0 92px; }
	.bns-budget__list li.is-top { flex: 0 0 112px; }
	html body a.bns-budget__item { height: 52px; padding: 0 10px; }
	.bns-budget__big { font-size: 16px; }
}
.bns-qv__total { margin: -6px 0 0; font-size: 13.5px; font-weight: 700; color: #475569; }
.bns-qv__total[hidden] { display: none; }

/* === 2.9.6 Product page: collapsible reviews === */
html body details.bns-rv { margin: 0 0 36px; border: 1px solid var(--pd-line, #e5e7eb); border-radius: 16px; background: #fff; overflow: hidden; }
html body details.bns-rv > summary.bns-rv__bar { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 20px; cursor: pointer; list-style: none; user-select: none; }
html body details.bns-rv > summary.bns-rv__bar::-webkit-details-marker { display: none; }
html body details.bns-rv > summary.bns-rv__bar::marker { content: ""; }
html body details.bns-rv > summary.bns-rv__bar:hover { background: #f8faff; }
html body details.bns-rv > summary.bns-rv__bar:focus-visible { outline: 3px solid rgba(0, 37, 167, .35); outline-offset: -3px; }
.bns-rv__head { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.bns-rv__title { font-family: var(--bns-display, inherit); font-size: 20px; font-weight: 800; letter-spacing: -0.01em; color: var(--pd-ink, #0b1636); line-height: 1.2; }
.bns-rv__n { color: var(--pd-muted, #64748b); font-weight: 600; }
.bns-rv__sum { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: 13.5px; color: var(--pd-muted, #64748b); }
html body .bns-rv__sum .star-rating { margin: 0 !important; float: none; font-size: 14px; }
.bns-rv__act { display: inline-flex; align-items: center; gap: 10px; flex: 0 0 auto; padding: 9px 14px; border-radius: 999px; background: var(--bns-tint, #eef2ff); color: var(--pd-brand, #0025a7); font-size: 13.5px; font-weight: 700; white-space: nowrap; }
.bns-rv__chev { width: 9px; height: 9px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-2px) rotate(45deg); transition: transform .2s ease; }
.bns-rv__close { display: none; }
html body details.bns-rv[open] .bns-rv__open { display: none; }
html body details.bns-rv[open] .bns-rv__close { display: inline; }
html body details.bns-rv[open] .bns-rv__chev { transform: translateY(2px) rotate(-135deg); }
html body details.bns-rv[open] > summary.bns-rv__bar { border-bottom: 1px solid var(--pd-line, #e5e7eb); }
.bns-rv__body { padding: 20px; }
html body .bns-rv__body .woocommerce-Reviews-title { display: none; }
html body .bns-rv__body #reviews { scroll-margin-top: 110px; }
html body details.bns-rv[open] .bns-rv__body { animation: bns-rv-in .22s ease; }
@keyframes bns-rv-in { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
@media (max-width: 767px) {
	html body details.bns-rv { border-radius: 14px; margin-bottom: 24px; }
	html body details.bns-rv > summary.bns-rv__bar { padding: 14px 16px; gap: 12px; }
	.bns-rv__title { font-size: 17px; }
	.bns-rv__sum { font-size: 12.5px; }
	.bns-rv__act { padding: 8px 11px; font-size: 12.5px; }
	.bns-rv__open, .bns-rv__close { display: none !important; }
	.bns-rv__act { width: 36px; height: 36px; padding: 0; justify-content: center; }
	.bns-rv__body { padding: 16px; }
}
@media (prefers-reduced-motion: reduce) { .bns-rv__chev { transition: none; } html body details.bns-rv[open] .bns-rv__body { animation: none; } }

/* === 2.9.7 "In cart" marks === */
html body .bns-incart { position: absolute; left: 8px; bottom: 8px; z-index: 2; display: inline-flex; align-items: center; gap: 4px; padding: 4px 9px; border-radius: 999px; background: #16a34a; color: #fff; font-size: 11.5px; font-weight: 700; line-height: 1.2; box-shadow: 0 2px 6px rgba(22, 163, 74, .3); pointer-events: none; }
html body .bns-card.is-in-cart { border-color: #bbf7d0; }
html body .bns-add.is-in { background: #f0fdf4 !important; border-color: #16a34a !important; color: #16a34a !important; }
html body .bns-add.is-in .bns-add__cart { display: none; }
html body .bns-add.is-in .bns-add__done { display: block; }
html body .bns-incart-note { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 8px; margin: 0 0 12px; padding: 10px 14px; border-radius: 12px; background: #f0fdf4; border: 1px solid #bbf7d0; color: #166534; font-size: 13.5px; font-weight: 600; }
html body .bns-incart-note svg { color: #16a34a; flex: 0 0 auto; }
html body .bns-incart-note a { margin-left: auto; color: #166534 !important; text-decoration: underline; font-weight: 700; }

/* === 2.9.8 Checkout: bank accounts in the Bank transfer option === */
html body .bns-bank { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 10px; margin: 12px 0 2px; }
html body .bns-bank__card { display: flex; flex-direction: column; gap: 6px; padding: 12px 14px; border: 1px solid #dfe5f3; border-radius: 12px; background: #fff; }
html body .bns-bank__bank { font-size: 14px; font-weight: 800; color: var(--bns-ink, #0b1636); }
html body .bns-bank__row { display: flex; align-items: center; flex-wrap: wrap; gap: 2px 8px; font-size: 13px; line-height: 1.4; }
html body .bns-bank__label { flex: 0 0 100%; font-size: 11.5px; font-weight: 600; color: #64748b; text-transform: uppercase; letter-spacing: .04em; }
html body .bns-bank__val { color: var(--bns-ink, #0b1636); font-weight: 600; word-break: break-word; }
html body .bns-bank__num { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 15px; font-weight: 700; letter-spacing: .03em; color: var(--bns-brand, #0025a7); }
html body .bns-bank__copy { min-height: 28px !important; height: 28px; padding: 0 12px !important; margin: 0 !important; border-radius: 999px !important; border: 1px solid var(--bns-brand, #0025a7) !important; background: #fff !important; color: var(--bns-brand, #0025a7) !important; font-size: 12px !important; font-weight: 700 !important; line-height: 26px !important; text-transform: none !important; box-shadow: none !important; cursor: pointer; }
html body .bns-bank__copy:hover { background: var(--bns-brand, #0025a7) !important; color: #fff !important; }
html body .bns-bank__copy.is-done { background: #16a34a !important; border-color: #16a34a !important; color: #fff !important; }
@media (max-width: 480px) { html body .bns-bank { grid-template-columns: 1fr; } }
/* The whole payment option is clickable through a stretched radio; keep the details box (copy buttons, card fields) above it. */
body.bns-cartui.woocommerce-checkout form.bns-co #payment ul.payment_methods > li > .payment_box { position: relative; z-index: 2; cursor: default; }

/* === 2.9.9 Homepage categories: swipe row with previous / next === */
html body .bns-head__end { display: inline-flex; align-items: center; gap: 12px; }
html body .bns-categories.bns-car .bns-cats--car { display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; overscroll-behavior-x: contain; padding: 2px 2px 6px; margin: 0; list-style: none; }
html body .bns-categories.bns-car .bns-cats--car::-webkit-scrollbar { display: none; }
html body .bns-categories.bns-car .bns-cats--car > li { flex: 0 0 calc((100% - 7 * 12px) / 8); min-width: 0; margin: 0; list-style: none; scroll-snap-align: start; }
html body .bns-categories.bns-car .bns-cat { height: 100%; }
html body .bns-categories.bns-car .bns-cat:hover { transform: translateY(-2px); }
@media (max-width: 1199px) { html body .bns-categories.bns-car .bns-cats--car > li { flex-basis: calc((100% - 5 * 12px) / 6); } }
@media (max-width: 767px) {
	html body .bns-categories.bns-car .bns-cats--car { gap: 8px; }
	html body .bns-categories.bns-car .bns-cats--car > li { flex-basis: calc((100% - 3 * 8px) / 3.6); }
	html body .bns-categories.bns-car .bns-car-nav { display: none !important; }
}

/* === 2.9.9 Product page reviews: clean list, form and phone layout === */
html body details.bns-rv.is-empty .wd-reviews-heading { display: none; }
html body details.bns-rv .wd-reviews-heading { display: flex; align-items: center; justify-content: flex-end; margin: 0 0 14px; }
html body details.bns-rv .wd-reviews-sorting-select { min-height: 38px; height: 38px; padding: 0 34px 0 14px; border-radius: 999px; border: 1px solid #dfe5f3; font-size: 13px; }
html body details.bns-rv .woocommerce-noreviews { display: flex; align-items: center; gap: 10px; margin: 0 0 16px; padding: 12px 14px; border-radius: 12px; background: #f6f8fd; color: #475569; font-size: 14px; }
html body details.bns-rv .woocommerce-noreviews::before { content: "\2605"; color: #f5b301; font-size: 18px; line-height: 1; }
html body details.bns-rv .commentlist { margin: 0 0 20px; padding: 0; list-style: none; display: grid; gap: 12px; }
html body details.bns-rv .commentlist > li { margin: 0; padding: 0; list-style: none; }
html body details.bns-rv .comment_container { display: flex; gap: 12px; padding: 14px; border: 1px solid #e8ecf6; border-radius: 14px; background: #fff; }
html body details.bns-rv .comment_container img.avatar { flex: 0 0 40px; width: 40px !important; height: 40px !important; border-radius: 50%; margin: 0 !important; position: static !important; padding: 0 !important; border: 0 !important; }
html body details.bns-rv .comment-text { flex: 1 1 auto; min-width: 0; margin: 0 !important; padding: 0 !important; border: 0 !important; }
html body details.bns-rv .comment-text .star-rating { float: none; margin: 0 0 6px !important; font-size: 13px; }
html body details.bns-rv .comment-text .meta { margin: 0 0 6px !important; font-size: 13px; color: #64748b; }
html body details.bns-rv .woocommerce-review__author { color: var(--pd-ink, #0b1636); font-weight: 700; }
html body details.bns-rv .comment-text .description p { margin: 0; font-size: 14.5px; line-height: 1.6; color: #334155; }
html body details.bns-rv .comment-respond { margin: 0 !important; padding: 18px !important; border: 1px solid #e8ecf6 !important; border-radius: 14px !important; background: #f8faff !important; box-shadow: none !important; }
html body details.bns-rv .comment-reply-title { display: block; margin: 0 0 6px !important; font-size: 18px !important; line-height: 1.3; font-weight: 800; color: var(--pd-ink, #0b1636); }
html body details.bns-rv .comment-notes { margin: 0 0 12px; font-size: 13px; color: #64748b; }
html body details.bns-rv .comment-form { display: flex; flex-direction: column; gap: 12px; margin: 0; }
html body details.bns-rv .comment-form > p, html body details.bns-rv .comment-form > div { margin: 0 !important; padding: 0 !important; width: 100% !important; float: none !important; }
html body details.bns-rv .comment-form label { display: block; margin: 0 0 6px; font-size: 13.5px; font-weight: 700; color: var(--pd-ink, #0b1636); }
html body details.bns-rv .comment-form input[type="text"], html body details.bns-rv .comment-form input[type="email"], html body details.bns-rv .comment-form textarea { width: 100% !important; min-height: 46px; padding: 11px 14px !important; border: 1px solid #d5dbea !important; border-radius: 12px !important; background: #fff !important; font-size: 15px !important; box-shadow: none !important; }
html body details.bns-rv .comment-form textarea { min-height: 120px; resize: vertical; }
html body details.bns-rv .comment-form input:focus, html body details.bns-rv .comment-form textarea:focus { border-color: var(--pd-brand, #0025a7) !important; outline: 3px solid rgba(0, 37, 167, .12); }
html body details.bns-rv p.stars { margin: 0 !important; }
html body details.bns-rv p.stars > span { display: inline-flex; gap: 6px; }
html body details.bns-rv p.stars a { width: 34px !important; height: 34px !important; font-size: 28px !important; }
html body details.bns-rv .comment-form-cookies-consent { display: flex !important; align-items: flex-start; gap: 8px; font-size: 13px; }
html body details.bns-rv .comment-form-cookies-consent label { margin: 0; font-weight: 500; }
html body details.bns-rv .form-submit input[type="submit"], html body details.bns-rv .form-submit button { min-height: 48px; padding: 0 28px !important; border-radius: 12px !important; font-size: 15px !important; font-weight: 700 !important; }
@media (max-width: 767px) {
	.bns-rv__body { padding: 12px !important; }
	html body details.bns-rv .comment-respond { padding: 14px !important; border-radius: 12px !important; }
	html body details.bns-rv .comment-reply-title { font-size: 16px !important; }
	html body details.bns-rv .wd-reviews-heading { justify-content: stretch; }
	html body details.bns-rv .wd-reviews-heading form, html body details.bns-rv .wd-reviews-sorting-select { width: 100%; }
	html body details.bns-rv .comment_container { padding: 12px; gap: 10px; }
	html body details.bns-rv .comment_container img.avatar { flex-basis: 34px; width: 34px !important; height: 34px !important; }
	html body details.bns-rv p.stars a { width: 40px !important; height: 40px !important; font-size: 32px !important; }
	html body details.bns-rv .form-submit input[type="submit"], html body details.bns-rv .form-submit button { width: 100% !important; }
}
/* Inside the collapsible box, older #reviews frames would nest boxes in boxes: one card per review, one tinted form box. */
html body details.bns-rv #reviews #comments { margin: 0; padding: 0; border: 0; background: none; box-shadow: none; }
html body details.bns-rv #reviews #review_form_wrapper { margin: 8px 0 0; padding: 0; border: 0; background: none; }
html body details.bns-rv #reviews .commentlist li .comment-text { padding: 0 !important; border: 0 !important; border-radius: 0 !important; }
html body details.bns-rv #reviews .commentlist li .comment_container { padding: 14px; border: 1px solid #e8ecf6; border-radius: 14px; background: #fff; }
html body details.bns-rv #reviews .comment-form .form-submit input[type=submit] { min-height: 48px; border-radius: 12px !important; }
@media (max-width: 767px) {
	html body details.bns-rv #reviews .commentlist li .comment_container { padding: 12px; gap: 10px; }
	html body details.bns-rv #reviews .comment-form .form-submit input[type=submit] { width: 100% !important; }
}

/* === 2.10.1 Category carousel on phones: swipe + auto-slide only (no arrows, no dots) === */
html body .bns-car-view { position: relative; }
html body .bns-car-side, html body .bns-car-dots { display: none !important; }
