/* ==========================================================================
   WooCommerce brand styling.
   Loaded only when WooCommerce is active (see bowa_enqueue_assets()).
   Targets WooCommerce's own markup/classes — no WooCommerce templates are
   duplicated here beyond the light overrides in /woocommerce.
   ========================================================================== */

.woocommerce-page-wrap { padding-top: 0; }

/* Notices */
.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-noreviews {
	background: var(--bowa-light-blue-50);
	border: 1px solid var(--bowa-light-blue);
	border-radius: var(--bowa-radius-sm);
	padding: 1rem 1.5rem;
	list-style: none;
	margin-bottom: 1.5rem;
	color: var(--bowa-navy);
}
.woocommerce-error { background: #fbeceb; border-color: var(--bowa-expired); color: var(--bowa-expired); }
.woocommerce-message::before, .woocommerce-info::before, .woocommerce-error::before { display: none; }

/* Shop grid */
ul.products {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: var(--bowa-gap);
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}
ul.products li.product { margin: 0 !important; }

.product-card {
	background: var(--bowa-white);
	border: 1px solid var(--bowa-border);
	border-radius: var(--bowa-radius-md);
	overflow: hidden;
	transition: box-shadow var(--bowa-transition), transform var(--bowa-transition);
}
.product-card:hover { box-shadow: var(--bowa-shadow-md); transform: translateY(-2px); }
.product-card__image-link { display: block; aspect-ratio: 1/1; overflow: hidden; background: var(--bowa-surface); }
.product-card__image-link img { width: 100%; height: 100%; object-fit: cover; }
.product-card__body { padding: 1.25rem; }
.product-card .woocommerce-loop-product__title { font-size: 1rem; margin: 0 0 0.5rem; color: var(--bowa-navy); }
.product-card__price .price { color: var(--bowa-navy); font-weight: 700; }
.product-card .star-rating { margin-bottom: 0.5rem; }
.product-card .button { margin-top: 0.85rem; width: 100%; text-align: center; }

/* Onsale badge */
.onsale {
	background: var(--bowa-gold) !important;
	color: var(--bowa-dark) !important;
	border-radius: var(--bowa-radius-pill) !important;
	font-weight: 700 !important;
	font-size: 0.7rem !important;
	padding: 0.3rem 0.7rem !important;
	position: absolute;
	top: 0.75rem; left: 0.75rem;
}

/* Single product */
.woocommerce div.product .woocommerce-product-gallery { border-radius: var(--bowa-radius-md); overflow: hidden; }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--bowa-navy); font-size: 1.4rem; font-weight: 700; }
.woocommerce div.product .product_title { color: var(--bowa-navy); }
.woocommerce div.product form.cart .button { padding: 0.9rem 2rem; border-radius: var(--bowa-radius-sm); }
.woocommerce-tabs ul.tabs { border-bottom: 1px solid var(--bowa-border); display: flex; gap: 0.5rem; list-style: none; padding: 0; margin-bottom: 1.5rem; }
.woocommerce-tabs ul.tabs li { padding: 0.75rem 1.25rem; font-weight: 600; cursor: pointer; }
.woocommerce-tabs ul.tabs li.active { color: var(--bowa-navy); border-bottom: 2px solid var(--bowa-gold); }

/* Buttons */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit {
	background: var(--bowa-navy);
	color: var(--bowa-white);
	border-radius: var(--bowa-radius-sm);
	padding: 0.85rem 1.6rem;
	font-weight: 600;
	border: none;
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover {
	background: var(--bowa-navy-800);
}
.woocommerce a.button.alt, .woocommerce #respond input#submit.alt, .woocommerce button.button.alt {
	background: var(--bowa-gold);
	color: var(--bowa-dark);
}
.woocommerce a.button.alt:hover { background: var(--bowa-gold-dark); }

/* Cart & Checkout tables */
.woocommerce table.shop_table {
	border: 1px solid var(--bowa-border);
	border-radius: var(--bowa-radius-md);
	border-collapse: separate;
	overflow: hidden;
}
.woocommerce table.shop_table th { background: var(--bowa-surface); color: var(--bowa-navy); font-weight: 700; }
.woocommerce table.shop_table th, .woocommerce table.shop_table td { padding: 1rem; border-color: var(--bowa-border); }

.woocommerce-checkout #payment { background: var(--bowa-surface); border-radius: var(--bowa-radius-md); }
.woocommerce-checkout #payment ul.payment_methods { border-bottom: 1px solid var(--bowa-border); }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row select, .woocommerce form .form-row textarea {
	border: 1px solid var(--bowa-border);
	border-radius: var(--bowa-radius-sm);
	padding: 0.75rem 1rem;
}
.woocommerce-additional-fields, .woocommerce-billing-fields { margin-top: 2rem; }

/* My Account */
.bowa-account-shell { }
.woocommerce-MyAccount-content {
	background: var(--bowa-white);
	border: 1px solid var(--bowa-border);
	border-radius: var(--bowa-radius-md);
	padding: 2rem;
}
.woocommerce-MyAccount-navigation { margin-bottom: 1.5rem; }
@media (min-width: 900px) {
	.woocommerce-account .woocommerce { display: grid; grid-template-columns: 260px 1fr; gap: 2rem; align-items: start; }
	.woocommerce-MyAccount-navigation { margin-bottom: 0; }
}

/* Order received / confirmation */
.woocommerce-order {
	background: var(--bowa-surface);
	border-radius: var(--bowa-radius-md);
	padding: 2rem;
}
.woocommerce-order .woocommerce-thankyou-order-received {
	color: var(--bowa-navy);
	font-weight: 700;
	font-size: 1.15rem;
}

/* Membership-only checkout branch — merchandise checkout remains untouched. */
.bowa-membership-checkout .woocommerce-page-wrap,
.bowa-membership-checkout main { background: linear-gradient(180deg, rgba(30,143,224,.045), transparent 420px); }
.bowa-membership-checkout-intro {
	max-width: 900px;
	margin: 0 auto 1.5rem;
	padding: 1.35rem 1.5rem;
	background: #fff;
	border: 1px solid var(--bowa-border);
	border-left: 4px solid var(--bowa-gold);
	border-radius: var(--bowa-radius-md);
	box-shadow: var(--bowa-shadow-sm);
}
.bowa-membership-checkout-intro h2 { margin: .15rem 0 .45rem; color: var(--bowa-navy); }
.bowa-membership-checkout-intro p:last-child { margin-bottom: 0; }
.bowa-membership-checkout .wc-block-checkout,
.bowa-membership-checkout .wp-block-woocommerce-checkout { max-width: 1220px; margin-inline: auto; }
.bowa-membership-checkout .wc-block-components-checkout-step,
.bowa-membership-checkout .wc-block-components-order-summary {
	border-color: var(--bowa-border);
	border-radius: var(--bowa-radius-md);
}
.bowa-membership-checkout .wc-block-components-button,
.bowa-membership-checkout .wc-block-components-checkout-place-order-button {
	border-radius: 999px;
	font-weight: 700;
}
.bowa-membership-thankyou-action { margin-top: 1.25rem; }

/* ==========================================================================
   v1.7.49 — BOWestAfrica Limited Editions Shop
   ========================================================================== */
.bowa-shop-hero {
	margin: 0 0 2.5rem;
	padding: clamp(1.5rem, 4vw, 3rem);
	border-radius: var(--bowa-radius-lg);
	background:
		radial-gradient(circle at 85% 18%, rgba(200,150,47,.28), transparent 28%),
		linear-gradient(135deg, var(--bowa-navy), #061d3d);
	color: #fff;
	box-shadow: var(--bowa-shadow-md);
}
.bowa-shop-hero .eyebrow { color: #f2d58d; }
.bowa-shop-hero h1 { margin: .15rem 0 .7rem; color: #fff; font-size: clamp(2rem, 5vw, 3.6rem); }
.bowa-shop-hero > p { max-width: 760px; font-size: 1.08rem; color: rgba(255,255,255,.9); }
.bowa-shop-hero__note {
	max-width: 850px;
	margin-top: 1.25rem;
	padding: .85rem 1rem;
	border: 1px solid rgba(255,255,255,.17);
	border-radius: var(--bowa-radius-sm);
	background: rgba(255,255,255,.07);
	color: rgba(255,255,255,.9);
}
.bowa-shop-hero__note strong { color: #f2d58d; }
.bowa-shop-section-heading { margin: 0 0 1.35rem; max-width: 760px; }
.bowa-shop-section-heading h2 { margin: .1rem 0 .4rem; color: var(--bowa-navy); }
.bowa-shop-coming-soon {
	display: grid;
	grid-template-columns: 120px minmax(0,1fr);
	gap: 1.5rem;
	align-items: center;
	margin: 0 0 2.5rem;
	padding: clamp(1.5rem, 4vw, 2.5rem);
	border: 1px solid var(--bowa-border);
	border-radius: var(--bowa-radius-lg);
	background: var(--bowa-surface);
}
.bowa-shop-coming-soon__mark {
	display: grid;
	place-items: center;
	aspect-ratio: 1;
	border-radius: 50%;
	background: var(--bowa-navy);
	color: var(--bowa-gold);
	font-weight: 800;
	letter-spacing: .08em;
}
.bowa-shop-coming-soon h2 { margin: .1rem 0 .5rem; color: var(--bowa-navy); }
.bowa-shop-past-drops { margin-top: 3rem; padding-top: 2.25rem; border-top: 1px solid var(--bowa-border); }
.bowa-drop-badge {
	display: inline-flex;
	align-items: center;
	width: fit-content;
	margin: 0 0 .65rem;
	padding: .32rem .68rem;
	border-radius: 999px;
	background: rgba(200,150,47,.14);
	border: 1px solid rgba(200,150,47,.45);
	color: var(--bowa-navy);
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: .04em;
	text-transform: uppercase;
}
.single-product .bowa-drop-badge { margin-bottom: 1rem; }
@media (max-width: 640px) {
	.bowa-shop-coming-soon { grid-template-columns: 1fr; }
	.bowa-shop-coming-soon__mark { width: 82px; }
	.bowa-shop-hero { border-radius: var(--bowa-radius-md); }
}

/* v1.7.51 — Limited Editions drop identity + scheduled countdown */
.bowa-shop-coming-soon__mark {
	width: 132px;
	aspect-ratio: 1 / 1;
	border-radius: 22px;
	overflow: hidden;
	background: #fff;
	box-shadow: 0 12px 30px rgba(10,47,99,.14);
}
.bowa-shop-coming-soon__mark img { display:block; width:100%; height:100%; object-fit:cover; }
.bowa-shop-coming-soon__content { min-width:0; max-width:820px; }
.bowa-shop-drop-date { margin:.4rem 0 1rem; color:var(--bowa-navy); }
.bowa-shop-countdown { display:grid; grid-template-columns:repeat(4,minmax(72px,1fr)); gap:.65rem; max-width:520px; margin:1rem 0 1.2rem; }
.bowa-shop-countdown > div { padding:.75rem .6rem; text-align:center; border:1px solid rgba(200,150,47,.38); border-radius:var(--bowa-radius-sm); background:rgba(200,150,47,.08); }
.bowa-shop-countdown strong { display:block; color:var(--bowa-navy); font-size:1.35rem; line-height:1; }
.bowa-shop-countdown span { display:block; margin-top:.3rem; font-size:.7rem; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--bowa-text-muted); }
@media (max-width:640px) {
	.bowa-shop-coming-soon__mark { width:96px; border-radius:18px; }
	.bowa-shop-countdown { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* v1.7.52 — scheduled Limited Drop release control */
.bowa-drop-locked{margin:.75rem 0 1rem;padding:.8rem 1rem;border:1px solid rgba(200,150,47,.42);border-radius:10px;background:rgba(200,150,47,.08);color:#0a2f63;line-height:1.45}
.bowa-drop-locked strong{display:block;color:#0a2f63;font-weight:800}
.bowa-drop-locked span{font-size:.9rem;color:#4d5d72}

/* ==========================================================================
   v1.7.53 — Limited Edition Product Experience
   ========================================================================== */
.bowa-limited-product-page .woocommerce-page-wrap{padding-top:clamp(1.5rem,4vw,3rem)}
.bowa-product-detail{max-width:1180px;margin-inline:auto}
.bowa-product-detail__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:clamp(2rem,5vw,4.5rem);align-items:start}
.bowa-product-detail__media,.bowa-product-detail__summary{min-width:0}
.bowa-product-detail__media .woocommerce-product-gallery{width:100%!important;float:none!important;margin:0!important;border:1px solid var(--bowa-border);background:#fff;box-shadow:var(--bowa-shadow-sm)}
.bowa-product-detail__media .woocommerce-product-gallery__image img{width:100%;height:auto;display:block}
.bowa-product-detail__summary.summary{width:auto!important;float:none!important;margin:0!important;padding:clamp(1.25rem,3vw,2rem);border:1px solid var(--bowa-border);border-radius:var(--bowa-radius-lg);background:#fff;box-shadow:var(--bowa-shadow-sm)}
.bowa-product-detail__summary .product_title{margin:.15rem 0 .65rem;font-size:clamp(1.8rem,4vw,2.7rem);line-height:1.08;color:var(--bowa-navy)}
.bowa-product-detail__price{margin:0 0 1.1rem;font-size:1.5rem;font-weight:800;color:var(--bowa-navy)}
.bowa-product-detail__price del{font-size:.85em;color:var(--bowa-text-muted);font-weight:600;margin-right:.35rem}
.bowa-product-detail__price ins{text-decoration:none;color:var(--bowa-navy)}
.bowa-product-detail__summary .woocommerce-product-details__short-description{margin:0 0 1.25rem;color:var(--bowa-text);line-height:1.7}
.bowa-edition-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1.2rem 0}
.bowa-edition-facts>div{padding:.9rem 1rem;border:1px solid var(--bowa-border);border-radius:var(--bowa-radius-sm);background:var(--bowa-surface)}
.bowa-edition-facts span{display:block;margin-bottom:.25rem;font-size:.72rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--bowa-text-muted)}
.bowa-edition-facts strong{display:block;color:var(--bowa-navy);font-size:.98rem}
.bowa-product-detail__summary .bowa-drop-locked{margin:1.25rem 0 .6rem;padding:1rem 1.1rem}
.bowa-product-lock-note{margin:.5rem 0 1.25rem;color:var(--bowa-text-muted);font-size:.92rem;line-height:1.55}
.bowa-product-detail__summary form.cart{display:flex;gap:.75rem;align-items:stretch;margin:1.35rem 0}
.bowa-product-detail__summary form.cart .quantity .qty{min-height:48px;border:1px solid var(--bowa-border);border-radius:var(--bowa-radius-sm);padding:.7rem;width:78px}
.bowa-product-detail__summary form.cart .single_add_to_cart_button{min-height:48px;flex:1}
.bowa-product-detail__meta{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--bowa-border);font-size:.88rem;color:var(--bowa-text-muted)}
.bowa-product-detail__meta .product_meta{display:grid;gap:.35rem}
.bowa-product-detail__description{margin:clamp(2.25rem,5vw,4rem) 0 0;padding:clamp(1.4rem,3vw,2.25rem);border:1px solid var(--bowa-border);border-radius:var(--bowa-radius-lg);background:#fff}
.bowa-product-detail__description h2{margin:.1rem 0 .85rem;color:var(--bowa-navy)}
.bowa-product-description-copy{max-width:850px;line-height:1.75}
.bowa-product-detail~.related.products{margin-top:clamp(2.5rem,6vw,4.5rem);padding-top:2rem;border-top:1px solid var(--bowa-border)}
.bowa-product-detail~.related.products>h2{color:var(--bowa-navy);margin-bottom:1.25rem}
.bowa-limited-product-page .related.products .bowa-drop-locked{font-size:.82rem;padding:.7rem .8rem}
@media(max-width:860px){
 .bowa-product-detail__grid{grid-template-columns:1fr;gap:1.5rem}
 .bowa-product-detail__summary.summary{padding:1.25rem}
}
@media(max-width:560px){
 .bowa-limited-product-page .woocommerce-page-wrap{padding-inline:16px}
 .bowa-edition-facts{grid-template-columns:1fr}
 .bowa-product-detail__summary form.cart{flex-direction:column}
 .bowa-product-detail__summary form.cart .quantity .qty,.bowa-product-detail__summary form.cart .single_add_to_cart_button{width:100%}
 .bowa-product-detail__description{padding:1.2rem}
}

/* ==========================================================================
   v1.7.54 — Shop landing-page alignment and theme integration
   ========================================================================== */
.woocommerce-shop .woocommerce-page-wrap {
	padding-top: clamp(1.25rem, 3vw, 2rem);
	padding-bottom: clamp(3rem, 6vw, 5rem);
}
.woocommerce-shop .woocommerce-content {
	width: 100%;
	min-width: 0;
}
.woocommerce-shop .bowa-shop-hero,
.woocommerce-shop .bowa-shop-drop-panel,
.woocommerce-shop .bowa-shop-section-heading,
.woocommerce-shop ul.products,
.woocommerce-shop .woocommerce-result-count,
.woocommerce-shop .woocommerce-ordering {
	min-width: 0;
}
.woocommerce-shop .bowa-shop-hero {
	margin-bottom: clamp(1.5rem, 3vw, 2rem);
}
.bowa-shop-drop-panel {
	display: grid;
	grid-template-columns: 132px minmax(0, 1fr);
	gap: clamp(1.25rem, 3vw, 2rem);
	align-items: center;
	margin: 0 0 clamp(2rem, 4vw, 3rem);
	padding: clamp(1.25rem, 3vw, 2rem);
	border: 1px solid var(--bowa-border);
	border-left: 4px solid var(--bowa-gold);
	border-radius: var(--bowa-radius-lg);
	background: linear-gradient(135deg, #fff 0%, rgba(30,143,224,.045) 100%);
	box-shadow: var(--bowa-shadow-sm);
}
.bowa-shop-drop-panel__mark {
	width: 132px;
	aspect-ratio: 1 / 1;
	border-radius: 22px;
	overflow: hidden;
	background: #fff;
	box-shadow: 0 10px 28px rgba(10,47,99,.14);
}
.bowa-shop-drop-panel__mark img { width:100%; height:100%; object-fit:cover; display:block; }
.bowa-shop-drop-panel__content { min-width:0; max-width:820px; }
.bowa-shop-drop-panel__content h2 { margin:.1rem 0 .45rem; color:var(--bowa-navy); }
.bowa-shop-drop-panel__content > p:last-child { margin-bottom:0; color:var(--bowa-text-muted); }

/* Keep the collection heading, result count and sort control on the same rhythm. */
.woocommerce-shop .bowa-shop-section-heading {
	margin-bottom: 1.25rem;
}
.woocommerce-shop .woocommerce-result-count,
.woocommerce-shop .woocommerce-ordering {
	float: none !important;
	margin: 0 !important;
}
.woocommerce-shop .woocommerce-result-count {
	font-size: .9rem;
	font-weight: 600;
	color: var(--bowa-text-muted);
}
.woocommerce-shop .woocommerce-ordering select {
	width: 100%;
	min-height: 44px;
	padding: .65rem 2.4rem .65rem .9rem;
	border: 1px solid var(--bowa-border);
	border-radius: var(--bowa-radius-sm);
	background: #fff;
	color: var(--bowa-navy);
	font: inherit;
}
.woocommerce-shop .woocommerce-result-count + .woocommerce-ordering,
.woocommerce-shop .woocommerce-ordering {
	max-width: 280px;
}
.woocommerce-shop .woocommerce-result-count,
.woocommerce-shop .woocommerce-ordering {
	display: inline-flex;
	align-items: center;
	vertical-align: middle;
}
.woocommerce-shop .woocommerce-ordering { float:right !important; }
.woocommerce-shop .woocommerce-result-count { min-height:44px; }

/* Product cards: equal-height, clearly separated, and fully aligned with the theme. */
.woocommerce-shop ul.products {
	clear: both;
	padding-top: 1.5rem !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(1rem, 2.5vw, 1.6rem);
}
.woocommerce-shop ul.products li.product.product-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	height: 100%;
	border-radius: var(--bowa-radius-lg);
	box-shadow: var(--bowa-shadow-sm);
}
.woocommerce-shop .product-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	align-items: stretch;
	padding: 1.15rem 1.15rem 1.25rem;
}
.woocommerce-shop .product-card .woocommerce-loop-product__title {
	font-size: 1.08rem;
	line-height: 1.35;
	margin: .1rem 0 .65rem;
}
.woocommerce-shop .product-card__price { display:block; margin-bottom:.2rem; }
.woocommerce-shop .product-card .price {
	display:flex;
	flex-wrap:wrap;
	align-items:baseline;
	gap:.45rem;
	margin:.15rem 0 .45rem;
	font-size:1.05rem;
}
.woocommerce-shop .product-card .price del { color:var(--bowa-text-muted); opacity:.8; }
.woocommerce-shop .product-card .price ins { color:var(--bowa-navy); text-decoration:none; font-weight:800; }
.woocommerce-shop .product-card .bowa-drop-locked { margin:.65rem 0 .8rem; }
.woocommerce-shop .product-card .button {
	margin-top:auto;
	min-height:44px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	border-radius:999px;
}
.woocommerce-shop .product-card__image-link { position:relative; }
.woocommerce-shop .onsale { z-index:2; }

@media (max-width: 900px) {
	.woocommerce-shop ul.products { grid-template-columns: repeat(2, minmax(0,1fr)); }
	.bowa-shop-drop-panel { grid-template-columns: 105px minmax(0,1fr); }
	.bowa-shop-drop-panel__mark { width:105px; border-radius:18px; }
}
@media (max-width: 640px) {
	.woocommerce-shop .woocommerce-page-wrap { padding-top:1rem; }
	.woocommerce-shop .bowa-shop-hero { padding:1.35rem; }
	.bowa-shop-drop-panel { grid-template-columns:1fr; padding:1.25rem; }
	.bowa-shop-drop-panel__mark { width:88px; }
	.woocommerce-shop .woocommerce-result-count,
	.woocommerce-shop .woocommerce-ordering {
		display:flex;
		float:none !important;
		width:100%;
		max-width:none;
	}
	.woocommerce-shop .woocommerce-result-count { margin-bottom:.65rem !important; }
	.woocommerce-shop ul.products { grid-template-columns:1fr; padding-top:1.25rem !important; }
	.woocommerce-shop .product-card__body { padding:1rem 1rem 1.15rem; }
}

/* ==========================================================================
   v1.7.55 — Shop preview layout stabilization
   ========================================================================== */
/* WooCommerce's classic column rules float product <li> elements and assign
   percentage widths. The BOWestAfrica Shop uses CSS Grid, so explicitly reset
   those legacy rules to prevent cards dropping/stacking at the end of the page. */
.woocommerce-shop ul.products,
.woocommerce-page.woocommerce-shop ul.products {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: clamp(1rem, 2.4vw, 1.6rem) !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
.woocommerce-shop ul.products::before,
.woocommerce-shop ul.products::after { display: none !important; content: none !important; }
.woocommerce-shop ul.products li.product,
.woocommerce-page.woocommerce-shop ul.products li.product,
.woocommerce-shop ul.products.columns-2 li.product,
.woocommerce-shop ul.products.columns-3 li.product,
.woocommerce-shop ul.products.columns-4 li.product,
.woocommerce-shop ul.products.columns-5 li.product,
.woocommerce-shop ul.products.columns-6 li.product {
	float: none !important;
	clear: none !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	min-width: 0 !important;
}

/* Make each Shop card a self-contained theme card with aligned actions. */
.woocommerce-shop ul.products li.product.product-card {
	display: flex !important;
	flex-direction: column;
	height: 100%;
	background: var(--bowa-white);
	border: 1px solid var(--bowa-border);
	border-radius: var(--bowa-radius-lg);
	overflow: hidden;
	box-shadow: var(--bowa-shadow-sm);
}
.woocommerce-shop .product-card__image-link {
	display: block;
	position: relative;
	width: 100%;
	aspect-ratio: 1 / 1;
	background: var(--bowa-surface);
	overflow: hidden;
}
.woocommerce-shop .product-card__image-link img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	margin: 0 !important;
}
.woocommerce-shop .product-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	min-width: 0;
	padding: 1.15rem 1.15rem 1.25rem;
}
.woocommerce-shop .product-card .woocommerce-loop-product__title {
	margin: 0 0 .65rem !important;
	font-size: 1.08rem !important;
	line-height: 1.35;
	color: var(--bowa-navy);
}
.woocommerce-shop .product-card .price {
	display: flex !important;
	flex-wrap: wrap;
	align-items: baseline;
	gap: .45rem;
	margin: 0 0 .55rem !important;
	line-height: 1.35;
}
.woocommerce-shop .product-card .price del,
.woocommerce-shop .product-card .price ins { display: inline-flex; align-items: baseline; }
.woocommerce-shop .product-card .price del .woocommerce-Price-amount {
	font-size: .9rem;
	font-weight: 600;
	color: var(--bowa-text-muted);
}
.woocommerce-shop .product-card .price ins .woocommerce-Price-amount {
	font-size: 1.1rem;
	font-weight: 800;
	color: var(--bowa-navy);
}
.woocommerce-shop .product-card .bowa-drop-locked {
	margin: .7rem 0 .9rem;
	padding: .75rem .8rem;
	border: 1px solid rgba(200,150,47,.35);
	border-radius: var(--bowa-radius-sm);
	background: rgba(200,150,47,.08);
	color: var(--bowa-navy);
	line-height: 1.45;
}
.woocommerce-shop .product-card .button {
	margin-top: auto !important;
	width: 100%;
	min-height: 46px;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	text-align: center;
}

/* Give countdown values and labels breathing room; prevent 47Days-style joins. */
.woocommerce-shop .bowa-shop-countdown {
	display: grid;
	grid-template-columns: repeat(4, minmax(92px, 1fr));
	gap: .8rem;
	width: 100%;
	max-width: 600px;
	margin: 1.1rem 0 1.25rem;
}
.woocommerce-shop .bowa-shop-countdown > div {
	display: flex;
	min-height: 86px;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: .9rem .7rem;
}
.woocommerce-shop .bowa-shop-countdown strong {
	display: block;
	font-size: clamp(1.55rem, 3vw, 2rem);
	line-height: 1;
}
.woocommerce-shop .bowa-shop-countdown span {
	display: block;
	margin-top: .45rem;
	line-height: 1.2;
}

/* Treat result count + sorter as one compact catalogue toolbar. */
.woocommerce-shop .woocommerce-result-count {
	display: flex !important;
	align-items: center;
	float: left !important;
	margin: 0 0 1.25rem !important;
	min-height: 46px;
}
.woocommerce-shop .woocommerce-ordering {
	display: block !important;
	float: right !important;
	margin: 0 0 1.25rem !important;
	width: min(100%, 300px);
	max-width: 300px;
}
.woocommerce-shop .woocommerce-ordering select { width: 100%; }

@media (max-width: 900px) {
	.woocommerce-shop ul.products,
	.woocommerce-page.woocommerce-shop ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}
@media (max-width: 640px) {
	.woocommerce-shop .bowa-shop-countdown {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: .65rem;
	}
	.woocommerce-shop .woocommerce-result-count,
	.woocommerce-shop .woocommerce-ordering {
		float: none !important;
		width: 100%;
		max-width: none;
	}
	.woocommerce-shop .woocommerce-result-count { margin-bottom: .65rem !important; }
	.woocommerce-shop ul.products,
	.woocommerce-page.woocommerce-shop ul.products {
		grid-template-columns: 1fr !important;
		clear: both;
	}
}


/* ==========================================================================\n   v1.7.56 — Shop width containment + related products grid stabilization\n   ========================================================================== */
/* Keep the curated Shop comfortably inside the browser and theme rhythm.
   The global theme container remains unchanged for the rest of the site. */
.woocommerce-shop .woocommerce-page-wrap {
    width: 100%;
    max-width: 1160px;
    box-sizing: border-box;
    margin-inline: auto;
    padding-inline: clamp(1rem, 2.5vw, 1.5rem);
    overflow-x: clip;
}
.woocommerce-shop .woocommerce-content,
.woocommerce-shop .bowa-shop-hero,
.woocommerce-shop .bowa-shop-drop-panel,
.woocommerce-shop .bowa-shop-section-heading,
.woocommerce-shop ul.products {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

/* Single limited-edition product pages: Related Products are rendered inside
   .bowa-product-detail by WooCommerce's after-single-product-summary hook.
   Reset WooCommerce's legacy floated columns here just like the main Shop. */
.bowa-limited-product-page .bowa-product-detail .related.products {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-top: clamp(2.5rem, 6vw, 4.5rem);
    padding-top: 2rem;
    border-top: 1px solid var(--bowa-border);
    box-sizing: border-box;
    clear: both;
}
.bowa-limited-product-page .bowa-product-detail .related.products > h2 {
    margin: 0 0 1.25rem;
    color: var(--bowa-navy);
}
.bowa-limited-product-page .bowa-product-detail .related.products ul.products,
.bowa-limited-product-page .bowa-product-detail .related.products ul.products.columns-2,
.bowa-limited-product-page .bowa-product-detail .related.products ul.products.columns-3,
.bowa-limited-product-page .bowa-product-detail .related.products ul.products.columns-4 {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: clamp(1rem, 2.2vw, 1.5rem) !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    box-sizing: border-box;
}
.bowa-limited-product-page .bowa-product-detail .related.products ul.products::before,
.bowa-limited-product-page .bowa-product-detail .related.products ul.products::after {
    display: none !important;
    content: none !important;
}
.bowa-limited-product-page .bowa-product-detail .related.products ul.products li.product,
.bowa-limited-product-page .bowa-product-detail .related.products ul.products.columns-2 li.product,
.bowa-limited-product-page .bowa-product-detail .related.products ul.products.columns-3 li.product,
.bowa-limited-product-page .bowa-product-detail .related.products ul.products.columns-4 li.product {
    float: none !important;
    clear: none !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    border: 1px solid var(--bowa-border);
    border-radius: var(--bowa-radius-lg);
    background: var(--bowa-white);
    box-shadow: var(--bowa-shadow-sm);
    box-sizing: border-box;
}
.bowa-limited-product-page .related.products .product-card__image-link {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: var(--bowa-surface);
}
.bowa-limited-product-page .related.products .product-card__image-link img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    margin: 0 !important;
}
.bowa-limited-product-page .related.products .product-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    min-width: 0;
    padding: 1rem 1rem 1.15rem;
}
.bowa-limited-product-page .related.products .woocommerce-loop-product__title {
    margin: 0 0 .6rem !important;
    color: var(--bowa-navy);
    font-size: 1rem !important;
    line-height: 1.35;
}
.bowa-limited-product-page .related.products .price {
    display: flex !important;
    flex-wrap: wrap;
    align-items: baseline;
    gap: .4rem;
    margin: 0 0 .55rem !important;
}
.bowa-limited-product-page .related.products .button {
    margin-top: auto !important;
    width: 100%;
    min-height: 44px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    text-align: center;
}

@media (max-width: 900px) {
    .bowa-limited-product-page .bowa-product-detail .related.products ul.products,
    .bowa-limited-product-page .bowa-product-detail .related.products ul.products.columns-2,
    .bowa-limited-product-page .bowa-product-detail .related.products ul.products.columns-3,
    .bowa-limited-product-page .bowa-product-detail .related.products ul.products.columns-4 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 640px) {
    .woocommerce-shop .woocommerce-page-wrap {
        max-width: 100%;
        padding-inline: 16px;
    }
    .bowa-limited-product-page .bowa-product-detail .related.products ul.products,
    .bowa-limited-product-page .bowa-product-detail .related.products ul.products.columns-2,
    .bowa-limited-product-page .bowa-product-detail .related.products ul.products.columns-3,
    .bowa-limited-product-page .bowa-product-detail .related.products ul.products.columns-4 {
        grid-template-columns: 1fr !important;
    }
}


/* ==========================================================================\n   v1.7.57 — Shop uses the exact main-site/header container measurement\n   ========================================================================== */
/* The WooCommerce wrapper already carries .container. Keep the Shop on the
   exact same 1220px content rail and 1.5rem gutters as the site header and
   standard theme sections. Do not introduce a separate Shop width. */
body.woocommerce-shop .woocommerce-page-wrap.container {
    width: 100%;
    max-width: var(--bowa-container) !important;
    margin-inline: auto !important;
    padding-inline: 1.5rem !important;
    box-sizing: border-box;
    overflow-x: visible;
}
body.woocommerce-shop .woocommerce-content {
    width: 100%;
    max-width: none;
    min-width: 0;
    margin: 0;
}
body.woocommerce-shop .bowa-shop-hero,
body.woocommerce-shop .bowa-shop-drop-panel,
body.woocommerce-shop .bowa-shop-section-heading,
body.woocommerce-shop .woocommerce-notices-wrapper,
body.woocommerce-shop ul.products {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0;
    margin-left: 0;
    margin-right: 0;
    box-sizing: border-box;
}
body.woocommerce-shop ul.products > li.product {
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}
@media (max-width: 640px) {
    body.woocommerce-shop .woocommerce-page-wrap.container {
        padding-inline: 1rem !important;
    }
}


/* ==========================================================================
   v1.7.58 — Compact Shop intro aligned with the single-product experience
   ========================================================================== */
body.woocommerce-shop .bowa-shop-hero {
    margin: 0 0 clamp(1.25rem, 2.5vw, 1.75rem);
    padding: clamp(1.15rem, 2.2vw, 1.65rem) clamp(1.2rem, 2.8vw, 2rem);
    border: 1px solid var(--bowa-border);
    border-radius: var(--bowa-radius-lg);
    background: var(--bowa-white);
    color: var(--bowa-text);
    box-shadow: var(--bowa-shadow-sm);
}
body.woocommerce-shop .bowa-shop-hero .eyebrow {
    margin: 0 0 .3rem;
    color: var(--bowa-gold);
    font-size: .76rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}
body.woocommerce-shop .bowa-shop-hero h1 {
    margin: 0 0 .55rem;
    color: var(--bowa-navy);
    font-size: clamp(1.75rem, 3.2vw, 2.45rem);
    line-height: 1.08;
}
body.woocommerce-shop .bowa-shop-hero > p {
    max-width: 850px;
    margin: 0;
    color: var(--bowa-text);
    font-size: 1rem;
    line-height: 1.65;
}
body.woocommerce-shop .bowa-shop-hero__note {
    display: flex;
    flex-wrap: wrap;
    gap: .3rem;
    align-items: baseline;
    max-width: 900px;
    margin: .85rem 0 0;
    padding: .7rem .85rem;
    border: 1px solid rgba(200,150,47,.32);
    border-radius: var(--bowa-radius-sm);
    background: rgba(200,150,47,.07);
    color: var(--bowa-text-muted);
    font-size: .9rem;
    line-height: 1.5;
}
body.woocommerce-shop .bowa-shop-hero__note strong {
    color: var(--bowa-navy);
}
/* Keep the drop/collection blocks visually subordinate to the product catalog. */
body.woocommerce-shop .bowa-shop-drop-panel {
    margin-bottom: clamp(1.25rem, 2.5vw, 1.75rem);
}
body.woocommerce-shop .bowa-shop-section-heading {
    margin-bottom: 1rem;
}
body.woocommerce-shop .bowa-shop-section-heading h2 {
    font-size: clamp(1.4rem, 2.5vw, 1.85rem);
}
@media (max-width: 640px) {
    body.woocommerce-shop .bowa-shop-hero {
        padding: 1rem;
        border-radius: var(--bowa-radius-md);
    }
    body.woocommerce-shop .bowa-shop-hero h1 {
        font-size: 1.7rem;
    }
    body.woocommerce-shop .bowa-shop-hero > p {
        font-size: .94rem;
        line-height: 1.55;
    }
    body.woocommerce-shop .bowa-shop-hero__note {
        margin-top: .7rem;
        padding: .65rem .75rem;
        font-size: .84rem;
    }
}

/* ========================================================================== 
   v1.7.60 — First-party Shop page architecture
   ========================================================================== */
body.woocommerce-shop .bowa-shop-page {
    width: 100%;
    min-width: 0;
    overflow: clip;
}
body.woocommerce-shop .bowa-shop-catalogue-section {
    padding-block: clamp(2.5rem, 5vw, 4.5rem);
    background: var(--bowa-white);
}
body.woocommerce-shop .bowa-shop-catalogue-section > .woocommerce-page-wrap.container {
    width: 100%;
    max-width: var(--bowa-container) !important;
    margin-inline: auto !important;
    padding-inline: 1.5rem !important;
}
body.woocommerce-shop .bowa-shop-catalogue-section .woocommerce-content {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}
/* Shop hero is now the same shared .page-hero component used by About.
   The old bowa-shop-hero remains only as the compact information panel at
   the bottom of the catalogue, before the footer. */
body.woocommerce-shop .bowa-shop-catalogue-section .bowa-shop-hero {
    margin-top: clamp(2.5rem, 5vw, 4rem);
    margin-bottom: 0;
}
body.woocommerce-shop .bowa-shop-drop-panel,
body.woocommerce-shop .bowa-shop-section-heading,
body.woocommerce-shop .woocommerce-notices-wrapper,
body.woocommerce-shop .woocommerce-result-count,
body.woocommerce-shop .woocommerce-ordering,
body.woocommerce-shop ul.products,
body.woocommerce-shop .woocommerce-pagination,
body.woocommerce-shop .bowa-shop-past-drops,
body.woocommerce-shop .bowa-shop-coming-soon {
    box-sizing: border-box;
    max-width: 100% !important;
}
body.woocommerce-shop ul.products {
    clear: both;
}
@media (max-width: 640px) {
    body.woocommerce-shop .bowa-shop-catalogue-section {
        padding-block: 2rem 2.75rem;
    }
    body.woocommerce-shop .bowa-shop-catalogue-section > .woocommerce-page-wrap.container {
        padding-inline: 1rem !important;
    }
}


/* ========================================================================== 
   v1.7.61 — Shop flow alignment stabilization
   Keep the WooCommerce archive on the exact same horizontal grid as the
   theme header/About page and prevent catalogue children escaping it.
   ========================================================================== */
body.woocommerce-shop .bowa-shop-catalogue-section {
    width: 100%;
    padding: clamp(2rem, 4vw, 3.5rem) 0 clamp(3rem, 5vw, 4.5rem);
    margin: 0;
}
body.woocommerce-shop .bowa-shop-catalogue-section > .woocommerce-page-wrap.container {
    width: min(calc(100% - 3rem), var(--bowa-container)) !important;
    max-width: var(--bowa-container) !important;
    margin: 0 auto !important;
    padding: 0 !important;
}
body.woocommerce-shop .bowa-shop-catalogue-section .woocommerce-content,
body.woocommerce-shop .bowa-shop-flow {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin: 0;
}
body.woocommerce-shop .bowa-shop-flow > * {
    max-width: 100%;
    box-sizing: border-box;
}
body.woocommerce-shop .bowa-shop-section-heading {
    margin: 0 0 1.5rem;
}
body.woocommerce-shop .woocommerce-result-count {
    margin: .25rem 0 1.25rem;
}
body.woocommerce-shop .woocommerce-ordering {
    margin: 0 0 1.25rem;
}
body.woocommerce-shop ul.products {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
body.woocommerce-shop .bowa-shop-hero {
    width: 100%;
    margin: clamp(2.5rem, 5vw, 4rem) 0 0;
}
@media (max-width: 640px) {
    body.woocommerce-shop .bowa-shop-catalogue-section > .woocommerce-page-wrap.container {
        width: min(calc(100% - 2rem), var(--bowa-container)) !important;
    }
    body.woocommerce-shop .woocommerce-ordering,
    body.woocommerce-shop .woocommerce-ordering select {
        width: 100%;
        max-width: 100%;
    }
}

/* ========================================================================== 
   v1.7.62 — Shop archive hard reset / true theme-container layout
   WooCommerce's archive used to inherit legacy float/column rules from the
   plugin even after the theme grid was applied. The Shop archive now owns its
   page shell, so reset the catalogue controls and cards inside that shell.
   ========================================================================== */
body.woocommerce-shop .bowa-shop-catalogue-section {
    width: 100%;
    margin: 0;
    padding: clamp(2rem, 4vw, 3.5rem) 0 clamp(3rem, 6vw, 5rem);
    overflow: hidden;
}
body.woocommerce-shop .bowa-shop-container {
    width: 100%;
    max-width: var(--bowa-container);
    margin-inline: auto;
    padding-inline: 1.5rem;
    box-sizing: border-box;
}
body.woocommerce-shop .bowa-shop-flow {
    width: 100%;
    min-width: 0;
    max-width: none;
}
body.woocommerce-shop .bowa-shop-flow::after,
body.woocommerce-shop .bowa-shop-flow::before {
    content: none !important;
}

/* Catalogue toolbar — no floats, no inherited WooCommerce widths. */
body.woocommerce-shop .bowa-shop-flow .woocommerce-result-count,
body.woocommerce-shop .bowa-shop-flow .woocommerce-ordering {
    float: none !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
}
body.woocommerce-shop .bowa-shop-flow .woocommerce-result-count {
    display: block;
    color: var(--bowa-text-muted);
    font-size: .9rem;
    font-weight: 600;
}
body.woocommerce-shop .bowa-shop-flow .woocommerce-ordering {
    display: block;
}
body.woocommerce-shop .bowa-shop-flow .woocommerce-ordering select {
    width: min(100%, 290px);
    min-height: 44px;
}
body.woocommerce-shop .bowa-shop-flow .woocommerce-result-count + .woocommerce-ordering {
    margin-top: .75rem !important;
}
@media (min-width: 720px) {
    body.woocommerce-shop .bowa-shop-flow .woocommerce-result-count {
        float: left !important;
        display: flex;
        align-items: center;
        min-height: 44px;
        margin-bottom: 1rem !important;
    }
    body.woocommerce-shop .bowa-shop-flow .woocommerce-ordering {
        float: right !important;
        margin-bottom: 1rem !important;
    }
}

/* Product loop — override every legacy WooCommerce float/width calculation. */
body.woocommerce-shop .bowa-shop-flow ul.products,
body.woocommerce-shop .bowa-shop-flow ul.products.columns-2,
body.woocommerce-shop .bowa-shop-flow ul.products.columns-3,
body.woocommerce-shop .bowa-shop-flow ul.products.columns-4,
body.woocommerce-shop .bowa-shop-flow ul.products.columns-5,
body.woocommerce-shop .bowa-shop-flow ul.products.columns-6 {
    clear: both !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: clamp(1rem, 2.2vw, 1.5rem) !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 1.25rem 0 0 !important;
    list-style: none !important;
    box-sizing: border-box;
}
body.woocommerce-shop .bowa-shop-flow ul.products::before,
body.woocommerce-shop .bowa-shop-flow ul.products::after {
    display: none !important;
    content: none !important;
}
body.woocommerce-shop .bowa-shop-flow ul.products li.product,
body.woocommerce-shop .bowa-shop-flow ul.products li.product.first,
body.woocommerce-shop .bowa-shop-flow ul.products li.product.last,
body.woocommerce-shop .bowa-shop-flow ul.products[class*="columns-"] li.product {
    float: none !important;
    clear: none !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box;
}
body.woocommerce-shop .bowa-shop-flow .product-card {
    display: flex !important;
    flex-direction: column;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
body.woocommerce-shop .bowa-shop-flow .product-card__image-link {
    width: 100%;
    flex: 0 0 auto;
}
body.woocommerce-shop .bowa-shop-flow .product-card__body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-width: 0;
}
body.woocommerce-shop .bowa-shop-flow .product-card__body > .button,
body.woocommerce-shop .bowa-shop-flow .product-card__body > a.button {
    margin-top: auto;
}

/* Preserve useful whitespace and guarantee all first-party Shop blocks fit. */
body.woocommerce-shop .bowa-shop-drop-panel,
body.woocommerce-shop .bowa-shop-section-heading,
body.woocommerce-shop .bowa-shop-past-drops,
body.woocommerce-shop .bowa-shop-coming-soon,
body.woocommerce-shop .bowa-shop-hero,
body.woocommerce-shop .woocommerce-pagination {
    width: 100%;
    max-width: 100% !important;
    box-sizing: border-box;
}

@media (max-width: 980px) {
    body.woocommerce-shop .bowa-shop-flow ul.products,
    body.woocommerce-shop .bowa-shop-flow ul.products[class*="columns-"] {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 640px) {
    body.woocommerce-shop .bowa-shop-container {
        padding-inline: 1rem;
    }
    body.woocommerce-shop .bowa-shop-flow ul.products,
    body.woocommerce-shop .bowa-shop-flow ul.products[class*="columns-"] {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 1rem !important;
    }
    body.woocommerce-shop .bowa-shop-flow .woocommerce-ordering,
    body.woocommerce-shop .bowa-shop-flow .woocommerce-ordering select {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* ========================================================================== 
   v1.7.64 — Restore navy Limited Editions closing panel
   The Shop information block stays compact at the bottom of the catalogue,
   but returns to the BOWestAfrica navy/gold visual treatment.
   ========================================================================== */
body.woocommerce-shop .bowa-shop-flow .bowa-shop-hero {
    margin: clamp(2rem, 4vw, 3rem) 0 0;
    padding: clamp(1.35rem, 2.5vw, 2rem) clamp(1.35rem, 3vw, 2.25rem);
    border: 1px solid rgba(200, 150, 47, .42);
    border-radius: var(--bowa-radius-lg);
    background:
        radial-gradient(circle at 88% 12%, rgba(30, 143, 224, .16), transparent 30%),
        linear-gradient(135deg, var(--bowa-navy), #061d3d);
    color: #fff;
    box-shadow: var(--bowa-shadow-md);
}
body.woocommerce-shop .bowa-shop-flow .bowa-shop-hero .eyebrow {
    margin: 0 0 .35rem;
    color: #f2d58d;
}
body.woocommerce-shop .bowa-shop-flow .bowa-shop-hero h1 {
    margin: 0 0 .65rem;
    color: #fff;
    font-size: clamp(1.8rem, 3.1vw, 2.5rem);
}
body.woocommerce-shop .bowa-shop-flow .bowa-shop-hero > p {
    max-width: 850px;
    margin: 0;
    color: rgba(255,255,255,.9);
    font-size: 1rem;
    line-height: 1.65;
}
body.woocommerce-shop .bowa-shop-flow .bowa-shop-hero__note {
    max-width: 900px;
    margin: 1rem 0 0;
    padding: .8rem 1rem;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: var(--bowa-radius-sm);
    background: rgba(255,255,255,.07);
    color: rgba(255,255,255,.9);
}
body.woocommerce-shop .bowa-shop-flow .bowa-shop-hero__note strong {
    color: #f2d58d;
}
@media (max-width: 640px) {
    body.woocommerce-shop .bowa-shop-flow .bowa-shop-hero {
        margin-top: 1.5rem;
        padding: 1.2rem;
        border-radius: var(--bowa-radius-md);
    }
}

/* ==========================================================================
   v1.7.84 — Shop + Silver Membership Community Bundle
   ========================================================================== */
.bowa-community-bundle{margin:clamp(2rem,5vw,4rem) 0 0;padding:clamp(1.25rem,3vw,2rem);border:1px solid var(--bowa-border);border-radius:var(--bowa-radius-lg);background:#fff;box-shadow:var(--bowa-shadow-sm)}
.bowa-community-bundle__heading{max-width:820px;margin-bottom:1.35rem}
.bowa-community-bundle__heading h2{margin:.15rem 0 .65rem;color:var(--bowa-navy);font-size:clamp(1.45rem,3vw,2rem);line-height:1.15}
.bowa-community-bundle__heading>p:last-child{margin:0;color:var(--bowa-text-muted);line-height:1.65}
.bowa-community-bundle__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:stretch}
.bowa-bundle-choice{position:relative;display:flex;flex-direction:column;min-width:0;padding:1.25rem;border:1px solid var(--bowa-border);border-radius:var(--bowa-radius-md);background:var(--bowa-surface)}
.bowa-bundle-choice--community{border:2px solid var(--bowa-gold);background:linear-gradient(180deg,rgba(200,150,47,.09),#fff 38%)}
.bowa-bundle-choice__kicker,.bowa-bundle-choice__badge{display:inline-flex;align-self:flex-start;margin-bottom:.7rem;font-size:.72rem;line-height:1.2;font-weight:800;letter-spacing:.055em;text-transform:uppercase}
.bowa-bundle-choice__kicker{color:var(--bowa-navy)}
.bowa-bundle-choice__badge{padding:.42rem .65rem;border-radius:999px;background:var(--bowa-gold);color:var(--bowa-navy)}
.bowa-bundle-choice h3{margin:0 0 .55rem;color:var(--bowa-navy);font-size:1.18rem;line-height:1.3}
.bowa-bundle-choice__price{margin:.15rem 0 .65rem;color:var(--bowa-navy);font-size:1.7rem;font-weight:900;line-height:1.1}
.bowa-bundle-choice__value{margin:0 0 .35rem;color:var(--bowa-text-muted);font-size:.93rem}
.bowa-bundle-choice__value strong{margin-left:.35rem;color:#17633b}
.bowa-bundle-choice__benefits{display:grid;gap:.45rem;margin:.5rem 0 1rem;padding:0;list-style:none}
.bowa-bundle-choice__benefits li{position:relative;padding-left:1.35rem;color:var(--bowa-text);line-height:1.45}
.bowa-bundle-choice__benefits li::before{content:'✓';position:absolute;left:0;top:0;color:var(--bowa-gold);font-weight:900}
.bowa-bundle-choice__activation{margin:auto 0 1rem;padding:.85rem;border-radius:var(--bowa-radius-sm);background:rgba(10,47,99,.06);color:var(--bowa-text);font-size:.9rem;line-height:1.55}
.bowa-bundle-choice .btn{justify-content:center;text-align:center;min-height:48px;margin-top:auto}
.bowa-bundle-choice .btn.is-disabled{opacity:.72;cursor:not-allowed;pointer-events:none}
.bowa-community-bundle__fineprint{margin:1rem 0 0;color:var(--bowa-text-muted);font-size:.82rem;line-height:1.55}
.bowa-bundle-checkout-intro{border-left:4px solid var(--bowa-gold)}
.woocommerce-cart .variation-Offer,.woocommerce-checkout .variation-Offer{font-weight:700;color:var(--bowa-navy)}
@media(max-width:760px){
 .bowa-community-bundle__grid{grid-template-columns:1fr}
 .bowa-community-bundle{padding:1rem}
 .bowa-bundle-choice{padding:1.05rem}
}


/* ==========================================================================
   v1.7.86 — Shop welcome notice centered
   ========================================================================== */
.bowa-shop-preview-plan{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:1rem;margin-top:1rem;padding:1rem;border:1px solid rgba(200,150,47,.34);border-radius:var(--bowa-radius-md);background:linear-gradient(135deg,rgba(200,150,47,.08),rgba(30,143,224,.05))}
.bowa-shop-preview-plan p{margin:.35rem 0 0;line-height:1.58;color:var(--bowa-text)}
.bowa-shop-preview-plan__label{display:inline-flex;font-size:.73rem;font-weight:900;letter-spacing:.055em;text-transform:uppercase;color:var(--bowa-navy)}
.bowa-shop-preview-plan__tip{padding-left:1rem;border-left:1px solid rgba(10,47,99,.12)}
.bowa-community-bundle-badge{display:inline-flex;align-items:center;width:max-content;max-width:100%;padding:.4rem .62rem;border-radius:999px;background:var(--bowa-gold);color:var(--bowa-navy);font-size:.71rem;line-height:1.2;font-weight:900;letter-spacing:.035em;text-transform:uppercase}
.bowa-community-bundle-badge--card{margin:.18rem 0 .55rem}

.bowa-shop-welcome[hidden]{display:none!important}
.bowa-shop-welcome{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:clamp(14px,3vw,28px);pointer-events:none}
.bowa-shop-welcome__backdrop{position:absolute;inset:0;background:rgba(5,22,47,.46);backdrop-filter:blur(2px);opacity:0;transition:opacity .2s ease;pointer-events:auto}
.bowa-shop-welcome__panel{position:relative;width:min(680px,100%);max-height:min(82vh,690px);overflow:auto;padding:clamp(1.15rem,3vw,1.65rem);border:1px solid rgba(200,150,47,.42);border-radius:22px;background:#fff;box-shadow:0 24px 70px rgba(5,22,47,.28);transform:translateY(18px);opacity:0;transition:transform .22s ease,opacity .22s ease;pointer-events:auto}
.bowa-shop-welcome.is-open .bowa-shop-welcome__backdrop{opacity:1}
.bowa-shop-welcome.is-open .bowa-shop-welcome__panel{transform:translateY(0);opacity:1}
.bowa-shop-welcome__panel h2{margin:.15rem 2.2rem .65rem 0;color:var(--bowa-navy);font-size:clamp(1.45rem,3vw,2rem);line-height:1.14}
.bowa-shop-welcome__panel>p{margin:.5rem 0;color:var(--bowa-text);line-height:1.62}
.bowa-shop-welcome__close{position:absolute;right:.75rem;top:.7rem;display:grid;place-items:center;width:38px;height:38px;border:0;border-radius:50%;background:rgba(10,47,99,.07);color:var(--bowa-navy);font-size:1.55rem;line-height:1;cursor:pointer}
.bowa-shop-welcome__close:hover,.bowa-shop-welcome__close:focus-visible{background:rgba(200,150,47,.22);outline:2px solid var(--bowa-gold);outline-offset:2px}
.bowa-shop-welcome__bundle{margin:1rem 0;padding:.9rem 1rem;border-radius:14px;background:rgba(10,47,99,.055)}
.bowa-shop-welcome__bundle p{margin:.55rem 0 0;line-height:1.55;color:var(--bowa-text)}
.bowa-shop-welcome__actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1rem}
.bowa-shop-welcome__actions .btn{justify-content:center;text-align:center}
html.bowa-shop-welcome-open{overflow:hidden}
@media(max-width:760px){
 .bowa-shop-preview-plan{grid-template-columns:1fr;padding:.85rem}
 .bowa-shop-preview-plan__tip{padding:0;border-left:0;border-top:1px solid rgba(10,47,99,.12);padding-top:.85rem}
 .bowa-shop-welcome{place-items:center;padding:10px}
 .bowa-shop-welcome__panel{border-radius:18px;padding:1.05rem;max-height:78vh}
 .bowa-shop-welcome__actions{display:grid;grid-template-columns:1fr}
 .bowa-shop-welcome__actions .btn{width:100%}
}

/* v1.8.8 transaction readiness */
.bowa-commerce-status{border:1px solid rgba(10,47,99,.16);border-left:4px solid #c8962f;border-radius:10px;background:#fff;padding:18px 20px;margin:0 0 24px;box-shadow:0 8px 24px rgba(10,47,99,.06)}
.bowa-commerce-status strong,.bowa-commerce-status h2{color:#0a2f63}.bowa-commerce-status h2{margin:.2rem 0 .55rem}.bowa-commerce-status p{margin:.45rem 0 0}.bowa-commerce-status .btn{margin-top:12px}.bowa-commerce-disabled{opacity:.72;cursor:not-allowed!important;pointer-events:none}.bowa-membership-coming-soon{padding-bottom:0}.bowa-membership-coming-soon .bowa-commerce-status{text-align:center}.bowa-membership-coming-soon .bowa-commerce-status p{max-width:720px;margin-left:auto;margin-right:auto}.membership-plan-card__unavailable{display:block;margin-top:8px;font-size:.88rem;color:#5d6470}
