/* Commerce: product grid and card, shop, filters, product page, account, notices. */
ul.products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--bn-space-6) var(--bn-space-4);margin:0;padding:0;list-style:none}
@media (min-width:900px){ul.products{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--bn-space-7) var(--bn-space-5)}}
@media (min-width:1180px){ul.products{grid-template-columns:repeat(4,minmax(0,1fr))}}
.bn-shop__results ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:900px){.bn-shop__results ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:1280px){.bn-shop__layout:not(:has(.bn-drawer--filters)) .bn-shop__results ul.products{grid-template-columns:repeat(4,minmax(0,1fr))}}
ul.products::before,ul.products::after{content:none}
.bn-card{position:relative;display:flex;flex-direction:column;min-width:0}
.bn-card__media{position:relative}
.bn-card__frame{display:flex;align-items:center;justify-content:center;aspect-ratio:4/5;background:var(--bn-paper-3);border-radius:var(--bn-radius-card);overflow:hidden}
.bn-card__img{width:100%;height:100%;object-fit:contain;padding:8%;transition:transform var(--bn-t-reveal) var(--bn-ease)}
.bn-card:hover .bn-card__img{transform:scale(1.03)}
.bn-card.outofstock .bn-card__img{opacity:.55}
.bn-card__badges{position:absolute;top:10px;inset-inline-start:10px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;pointer-events:none}
.bn-card__wish{position:absolute;top:6px;inset-inline-end:6px;background:color-mix(in srgb,var(--bn-card) 88%,transparent)}
.bn-card__wish .bn-icon,.bn-product__wish .bn-icon{transition:fill var(--bn-t-micro),color var(--bn-t-micro)}
[data-bn-wishlist-toggle][aria-pressed=true] .bn-icon{fill:var(--bn-blush-deep);color:var(--bn-blush-deep)}
.bn-card__body{display:flex;flex-direction:column;gap:4px;padding-top:var(--bn-space-3);flex:1}
.bn-card__brand{margin:0;font-size:var(--bn-fs-eyebrow);font-weight:500;color:var(--bn-ink-3);letter-spacing:.02em}
:lang(en) .bn-card__brand{text-transform:uppercase;letter-spacing:.12em}
.bn-card__title{margin:0;font-family:var(--bn-font-sans);font-size:1rem;font-weight:500;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.bn-card__title a{color:var(--bn-ink);text-decoration:none}
.bn-card__title a::before{content:"";position:absolute;inset:0;z-index:0}
.bn-card__title a:focus-visible{outline:none}
.bn-card:has(.bn-card__title a:focus-visible){outline:var(--bn-focus);outline-offset:6px;border-radius:var(--bn-radius-card)}
.bn-card__wish,.bn-card__cta{position:relative;z-index:1}
.bn-card__price{margin:0;font-weight:600;font-size:1.0625rem;font-variant-numeric:tabular-nums}
.price del{color:var(--bn-ink-3);font-weight:400;margin-inline-end:6px}
.price ins{text-decoration:none;color:var(--bn-blush-deep)}
.bn-card__cta{margin-top:auto;padding-top:var(--bn-space-2)}
.bn-card__cta .button{width:100%;min-height:44px;font-size:.875rem;padding-inline:12px}
@media (max-width:519px){.bn-card__cta .button{padding-inline:6px}}
/* Rails: horizontal on phones */
@media (max-width:767px){
	.bn-rail ul.products{display:flex;gap:var(--bn-space-4);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:var(--bn-space-3);margin-inline:calc(-1 * var(--bn-gutter));padding-inline:var(--bn-gutter);scrollbar-width:thin}
	.bn-rail .bn-card{flex:0 0 62%;scroll-snap-align:start}
}
/* Shop */
.bn-shop{padding-top:var(--bn-space-5)}
.bn-shop__toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--bn-space-3);margin-bottom:var(--bn-space-5)}
.bn-shop__toolbar .woocommerce-result-count{margin:0;color:var(--bn-ink-3);font-size:var(--bn-fs-small);flex:1}
.bn-shop__toolbar .woocommerce-ordering{margin:0}
.bn-shop__toolbar select{min-width:220px}
.bn-shop__filter-btn .bn-count{position:static}
.bn-shop__layout{display:block}
.bn-filter{padding-block:4px}
.bn-filter__title{display:flex;align-items:center;justify-content:space-between;min-height:48px;cursor:pointer;font-weight:600;list-style:none}
.bn-filter__list{margin:0 0 var(--bn-space-3);padding:0;list-style:none}
.bn-filter__link{display:flex;align-items:center;gap:10px;min-height:40px;color:var(--bn-ink);text-decoration:none}
.bn-filter__box{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border:1px solid var(--bn-gold-ui);border-radius:var(--bn-radius);background:var(--bn-card)}
.bn-filter__link.is-active .bn-filter__box{background:var(--bn-ink);border-color:var(--bn-ink);color:var(--bn-paper)}
.bn-filter__box .bn-icon{width:14px;height:14px}
.bn-filter__count{margin-inline-start:auto;color:var(--bn-ink-3);font-size:var(--bn-fs-small);font-variant-numeric:tabular-nums}
@media (min-width:1024px){
	.bn-shop__layout:has(.bn-drawer--filters){display:grid;grid-template-columns:260px minmax(0,1fr);gap:var(--bn-space-7);align-items:start}
	.bn-shop__filter-btn{display:none}
	.bn-drawer--filters,.bn-drawer--filters[hidden]{position:sticky;top:calc(var(--bn-header-h) + 16px);display:block;inset:auto;z-index:auto}
	.bn-drawer--filters .bn-drawer__panel{position:static;transform:none;width:auto;padding:0;box-shadow:none;background:none;overflow:visible}
	.bn-drawer--filters .bn-drawer__head{border-bottom:0;padding:0}
	.bn-drawer--filters .bn-drawer__title{font-family:var(--bn-font-sans);font-size:var(--bn-fs-eyebrow);font-weight:600;color:var(--bn-ink-3)}
	.bn-drawer--filters .bn-drawer__close,.bn-drawer--filters .bn-scrim{display:none}
}
.woocommerce-pagination{margin-top:var(--bn-space-7)}
.woocommerce-pagination ul{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;border:0}
.woocommerce-pagination li{border:0}
.woocommerce-pagination a,.woocommerce-pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid var(--bn-gold-soft);border-radius:var(--bn-radius);color:var(--bn-ink);text-decoration:none;font-variant-numeric:tabular-nums}
.woocommerce-pagination .current{background:var(--bn-ink);color:var(--bn-paper);border-color:var(--bn-ink)}
.woocommerce-pagination .bn-icon{width:18px;height:18px}
/* Product page */
.bn-product{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,5vw,80px);align-items:start;padding-bottom:var(--bn-space-7)}
@media (max-width:899px){.bn-product{grid-template-columns:1fr}}
.bn-product__gallery{position:relative;min-width:0}
.bn-product__gallery .onsale,.bn-product__gallery>.bn-badge{position:absolute;top:14px;inset-inline-start:14px;z-index:2}
.woocommerce-product-gallery{position:relative;margin:0}
.woocommerce-product-gallery__wrapper{margin:0}
.woocommerce-product-gallery__image{background:var(--bn-paper-3);border-radius:var(--bn-radius-card);overflow:hidden}
.woocommerce-product-gallery__image a{display:flex;align-items:center;justify-content:center;aspect-ratio:1}
.woocommerce-product-gallery__image img{width:100%!important;height:100%!important;object-fit:contain;padding:6%}
.woocommerce-product-gallery .flex-control-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--bn-space-2);margin:var(--bn-space-3) 0 0;padding:0;list-style:none}
.woocommerce-product-gallery .flex-control-thumbs li{aspect-ratio:1;background:var(--bn-paper-3);border-radius:var(--bn-radius);overflow:hidden;cursor:pointer}
.woocommerce-product-gallery .flex-control-thumbs img{width:100%;height:100%;object-fit:contain;padding:8%;opacity:.7}
.woocommerce-product-gallery .flex-control-thumbs img.flex-active,.woocommerce-product-gallery .flex-control-thumbs img:hover{opacity:1;outline:1px solid var(--bn-gold-ui);outline-offset:-1px}
.woocommerce-product-gallery__trigger{position:absolute;top:12px;inset-inline-end:12px;z-index:3;width:44px;height:44px;border-radius:50%;background:var(--bn-card);display:flex;align-items:center;justify-content:center;font-size:0}
.woocommerce-product-gallery__trigger::before{content:"";width:16px;height:16px;border:1.5px solid var(--bn-ink);border-radius:50%}
.flex-viewport{border-radius:var(--bn-radius-card)}
/* Scroll-snap gallery: every image has its final 1:1 box from the first paint (no layout shift). */
.woocommerce-product-gallery{opacity:1!important}
.woocommerce-product-gallery__wrapper{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;gap:0;border-radius:var(--bn-radius-card);scrollbar-width:none}
.woocommerce-product-gallery__wrapper::-webkit-scrollbar{display:none}
.woocommerce-product-gallery__wrapper>.woocommerce-product-gallery__image{flex:0 0 100%;scroll-snap-align:start}
.bn-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--bn-space-2);margin:var(--bn-space-3) 0 0;padding:0;list-style:none}
.bn-thumbs__btn{display:block;width:100%;aspect-ratio:1;padding:0;border:1px solid transparent;border-radius:var(--bn-radius);background:var(--bn-paper-3);cursor:pointer;overflow:hidden}
.bn-thumbs__btn img{width:100%;height:100%;object-fit:contain;padding:8%;opacity:.7}
.bn-thumbs__btn[aria-current=true]{border-color:var(--bn-gold-ui)}
.bn-thumbs__btn[aria-current=true] img,.bn-thumbs__btn:hover img{opacity:1}
.bn-product__summary{position:sticky;top:calc(var(--bn-header-h) + 24px)}
@media (max-width:899px){.bn-product__summary{position:static}}
.bn-product__summary .product_title{font-size:clamp(1.5rem,1.25rem + 1vw,2.125rem);line-height:1.35;margin-bottom:var(--bn-space-3);overflow-wrap:anywhere}
.bn-product__brand a{color:var(--bn-ink-3);text-decoration:none}
.bn-product__summary .price{font-size:1.5rem;font-weight:600;font-variant-numeric:tabular-nums;margin-bottom:var(--bn-space-4)}
.bn-product__short{color:var(--bn-ink-2);margin-bottom:var(--bn-space-5)}
.bn-product__summary form.cart{display:flex;flex-wrap:wrap;gap:var(--bn-space-3);align-items:stretch;margin-bottom:var(--bn-space-4)}
.bn-product__summary form.cart .single_add_to_cart_button{flex:1;min-width:200px;min-height:52px;font-size:1rem}
.quantity{display:inline-flex}
.quantity .qty{width:84px;min-height:52px;text-align:center;font-variant-numeric:tabular-nums}
.bn-product__summary .stock{font-size:var(--bn-fs-small);font-weight:500}
.bn-product__summary .in-stock{color:var(--bn-sage-deep)}
.bn-product__summary .out-of-stock{color:var(--bn-error)}
table.variations{margin-bottom:var(--bn-space-3)}
table.variations th,table.variations td{border:0;padding:6px 0;display:block}
.reset_variations{font-size:var(--bn-fs-small)}
.bn-product__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--bn-space-2);margin-bottom:var(--bn-space-4)}
.bn-product__wish{border:1px solid var(--bn-gold-soft);min-width:52px;min-height:52px}
.bn-reassure{margin:0 0 var(--bn-space-4);padding:var(--bn-space-4) 0 0;list-style:none;border-top:1px solid var(--bn-gold-soft);display:grid;gap:8px}
.bn-reassure li{position:relative;padding-inline-start:22px;color:var(--bn-ink-2);font-size:.9375rem}
.bn-reassure li::before{content:"";position:absolute;inset-inline-start:0;top:.55em;width:10px;height:6px;border-inline-start:1.5px solid var(--bn-sage-deep);border-bottom:1.5px solid var(--bn-sage-deep);transform:rotate(-45deg)}
[dir=rtl] .bn-reassure li::before{transform:rotate(45deg) scaleX(-1)}
.bn-product__delivery ul{margin:0 0 var(--bn-space-3);padding:0;list-style:none}
.bn-product__delivery li{display:flex;justify-content:space-between;gap:12px;padding:6px 0;color:var(--bn-ink-2)}
.bn-product__pending{max-width:640px}
.bn-accordions{max-width:880px;margin:0 0 var(--bn-space-8);border-top:1px solid var(--bn-gold-soft)}
.related.products,.upsells.products{padding-top:var(--bn-space-7);border-top:1px solid var(--bn-gold-soft)}
.related.products>h2{margin-bottom:var(--bn-space-6)}
/* WooCommerce notices */
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-message,.woocommerce-info,.woocommerce-error,.wc-block-components-notice-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:0 0 var(--bn-space-5);padding:14px 16px;list-style:none;border-radius:var(--bn-radius);border-inline-start:3px solid var(--bn-sage-deep);background:var(--bn-sage-tint);color:var(--bn-ink)}
.woocommerce-info{border-color:var(--bn-gold-ui);background:var(--bn-paper-2)}
.woocommerce-error{border-color:var(--bn-error);background:var(--bn-blush-tint)}
.woocommerce-message .button,.woocommerce-info .button{order:2;min-height:40px}
/* Account */
.woocommerce-account .woocommerce{display:grid;grid-template-columns:240px minmax(0,1fr);gap:var(--bn-space-7);align-items:start}
.woocommerce-account:not(.logged-in) .woocommerce{display:block;max-width:560px;margin-inline:auto}
@media (max-width:899px){.woocommerce-account .woocommerce{grid-template-columns:1fr;gap:var(--bn-space-5)}}
.woocommerce-MyAccount-navigation ul{margin:0;padding:0;list-style:none;border-top:1px solid var(--bn-gold-soft)}
.woocommerce-MyAccount-navigation a{display:flex;align-items:center;min-height:48px;padding-inline:12px;border-bottom:1px solid var(--bn-gold-soft);color:var(--bn-ink);text-decoration:none}
.woocommerce-MyAccount-navigation .is-active a{background:var(--bn-paper-2);font-weight:600;border-inline-start:2px solid var(--bn-bronze-deep)}
@media (max-width:899px){.woocommerce-MyAccount-navigation ul{display:flex;overflow-x:auto;border:0;gap:6px}.woocommerce-MyAccount-navigation a{white-space:nowrap;border:1px solid var(--bn-gold-soft);border-radius:999px;min-height:40px}}
.woocommerce form .form-row{margin:0 0 var(--bn-space-4);padding:0}
.woocommerce form .form-row .required{color:var(--bn-error);text-decoration:none}
.woocommerce-form-login,.woocommerce-form-register,.woocommerce-EditAccountForm,.woocommerce-address-fields,.track_order{background:var(--bn-card);border:1px solid var(--bn-gold-soft);border-radius:var(--bn-radius-card);padding:var(--bn-space-6)}
.woocommerce-form-login__rememberme{display:flex;align-items:center;gap:8px;font-weight:400}
.woocommerce-orders-table,.shop_table{font-size:.9375rem}
.woocommerce-orders-table .button{min-height:40px;padding-inline:14px}
.woocommerce-order-details,.woocommerce-customer-details{margin-top:var(--bn-space-6)}
.woocommerce-order-overview{display:flex;flex-wrap:wrap;gap:var(--bn-space-3) var(--bn-space-6);margin:0 0 var(--bn-space-6);padding:var(--bn-space-5);list-style:none;background:var(--bn-paper-2);border-radius:var(--bn-radius-card)}
.woocommerce-order-overview li{font-size:var(--bn-fs-small);color:var(--bn-ink-3)}
.woocommerce-order-overview strong{display:block;color:var(--bn-ink);font-size:1rem}
address{font-style:normal;line-height:1.7}
/* Wishlist page */
.bn-wishlist[aria-busy=true]{opacity:.6}
.bn-wishlist__empty{text-align:center;color:var(--bn-ink-2);padding:var(--bn-space-7) 0}
/* Home category grid + brands */
.bn-cat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--bn-space-5) var(--bn-space-4);margin:0;padding:0;list-style:none}
@media (min-width:768px){.bn-cat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--bn-space-6)}.bn-cat-grid:is([data-count="3"],[data-count="5"],[data-count="6"],[data-count="9"]){grid-template-columns:repeat(3,minmax(0,1fr));max-width:1000px;margin-inline:auto}}
@media (min-width:768px){.bn-cat-grid[data-count="5"]{grid-template-columns:repeat(6,minmax(0,1fr))}.bn-cat-grid[data-count="5"]>li{grid-column:span 2}.bn-cat-grid[data-count="5"]>li:nth-child(4){grid-column:2/span 2}}
.bn-cat__link{display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--bn-ink);text-decoration:none;text-align:center}
.bn-cat__arch{width:100%;transition:transform var(--bn-t-reveal) var(--bn-ease)}
.bn-cat__link:hover .bn-cat__arch{transform:translateY(-4px)}
.bn-cat--type .bn-cat__arch{aspect-ratio:1/1.1;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--bn-paper-3),var(--bn-paper-2))}
.bn-cat__initial{font-family:var(--bn-font-display);font-size:clamp(3rem,2rem + 4vw,5rem);color:var(--bn-bronze);line-height:1}
.bn-cat__ornament{color:var(--bn-gold);margin-bottom:var(--bn-space-3)}
.bn-cat__name{font-family:var(--bn-font-display);font-size:1.375rem;margin-top:var(--bn-space-3)}
.bn-cat__count{font-size:var(--bn-fs-small);color:var(--bn-ink-3)}
.bn-brands{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--bn-space-3);margin:0;padding:0;list-style:none}
.bn-brand{display:flex;align-items:center;justify-content:center;min-height:96px;padding:var(--bn-space-4);border:1px solid var(--bn-gold-soft);border-radius:var(--bn-radius-card);background:var(--bn-card);color:var(--bn-ink);text-decoration:none;transition:border-color var(--bn-t-micro)}
.bn-brand:hover{border-color:var(--bn-gold-ui)}
.bn-brand__name{font-family:var(--bn-font-display);font-size:1.25rem;text-align:center}
.bn-brand__logo{max-height:56px;width:auto;object-fit:contain}

/* Reviews (only in an accordion; stars are WooCommerce's own rating input) */
.bn-reviews{max-width:880px;margin:0 0 var(--bn-space-8)}
.bn-reviews>summary{display:flex;align-items:center;justify-content:space-between;min-height:56px;cursor:pointer;list-style:none;font-weight:600;font-size:1.0625rem;border-bottom:1px solid var(--bn-gold-soft)}
.bn-reviews>summary::-webkit-details-marker{display:none}
.bn-reviews #reviews h2{font-size:1.5rem;margin-top:var(--bn-space-5)}
.bn-reviews .comment-form-rating .stars a{display:inline-block;width:32px;height:32px;overflow:hidden;text-indent:40px;white-space:nowrap;position:relative;color:var(--bn-gold-ui);text-decoration:none}
.bn-reviews .comment-form-rating .stars a::before{content:"☆";position:absolute;inset:0;text-indent:0;font-size:28px;line-height:32px;text-align:center}
.bn-reviews .comment-form-rating .stars:hover a::before,.bn-reviews .comment-form-rating .stars.selected a::before{content:"★"}
.bn-reviews .comment-form-rating .stars a:hover~a::before,.bn-reviews .comment-form-rating .stars.selected a.active~a::before{content:"☆"}
.bn-reviews .commentlist{list-style:none;padding:0}
/* WooCommerce "show password" toggle */
.password-input{position:relative;display:block}
.password-input input{padding-inline-end:52px}
.show-password-input{position:absolute;top:50%;inset-inline-end:4px;width:44px;height:44px;margin:0;padding:0;border:0;border-radius:var(--bn-radius);background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235C4A3D' stroke-width='1.5'%3E%3Cpath d='M2 12s3.6-6.5 10-6.5S22 12 22 12s-3.6 6.5-10 6.5S2 12 2 12Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center/22px no-repeat;transform:translateY(-50%);cursor:pointer}
.show-password-input.display-password{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235C4A3D' stroke-width='1.5'%3E%3Cpath d='M2 12s3.6-6.5 10-6.5S22 12 22 12s-3.6 6.5-10 6.5S2 12 2 12Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M4 4l16 16'/%3E%3C/svg%3E")}
.shipped_via{color:var(--bn-ink-3)}
