/*
 * BuildBarn product page system.
 * Single product keeps Porto/Woo structure, but surfaces and content modules
 * are elevated into the same warm, card-led language as the homepage.
 */

html body.bb-page-family-product #main {
	background: var(--bb-bg-page, #f5f5f3) !important;
}

html body.bb-page-family-product .page-top {
	background: transparent !important;
	border-bottom: 0 !important;
	padding-bottom: 0 !important;
}

html body.bb-page-family-product #main .main-content,
html body.bb-page-family-product div.product,
html body.bb-page-family-product .related.products,
html body.bb-page-family-product .upsells.products {
	position: relative;
}

html body.bb-page-family-product .share-links,
html body.bb-page-family-product .share-this-post,
html body.bb-page-family-product .share-post,
html body.bb-page-family-product .page-share {
	display: none !important;
}

html body.bb-page-family-product div.product {
	padding: clamp(1rem, 2.2vw, 1.5rem) !important;
	border-radius: var(--bb-radius-hero, 28px) !important;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.92) 0%, #fafaf8 100%) !important;
	border: 1px solid var(--bb-border-soft, rgba(69, 69, 69, 0.12)) !important;
	box-shadow: var(--bb-shadow-lg, 0 26px 56px rgba(42, 42, 42, 0.11)) !important;
}

html body.bb-page-family-product div.product::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 5px;
	border-radius: 28px 0 0 28px;
	background: linear-gradient(180deg, var(--bb-brand-primary, #454545) 0%, var(--bb-brand-secondary, #6b6560) 100%);
}

html body.bb-page-family-product div.product .product-images,
html body.bb-page-family-product div.product > .woocommerce-product-gallery,
html body.bb-page-family-product .product-summary-wrap .summary.entry-summary,
html body.bb-page-family-product div.product .summary.entry-summary {
	border-radius: var(--bb-radius-xl, 22px) !important;
}

html body.bb-page-family-product .product-summary-wrap .summary.entry-summary,
html body.bb-page-family-product div.product .summary.entry-summary {
	position: relative;
	overflow: hidden;
}

html body.bb-page-family-product .product-summary-wrap {
	display: grid;
	gap: 0.95rem;
	padding: clamp(1rem, 2vw, 1.2rem);
	border-radius: var(--bb-radius-xl, 22px);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, #faf8f5 100%);
	border: 1px solid rgba(69, 69, 69, 0.1);
	box-shadow: 0 16px 34px rgba(42, 42, 42, 0.06);
}

html body.bb-page-family-product .product-summary-wrap .summary.entry-summary::before,
html body.bb-page-family-product div.product .summary.entry-summary::before {
	content: "BuildBarn Pick";
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 0.85rem;
	padding: 0.35rem 0.7rem;
	border-radius: 999px;
	background: rgba(122, 109, 97, 0.1);
	color: var(--bb-brand-accent-strong, #6f6358);
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

html body.bb-page-family-product .product_title,
html body.bb-page-family-product h1.product_title {
	color: var(--bb-text-primary, #221d18) !important;
	font-size: clamp(1.7rem, 3vw, 2.45rem) !important;
	line-height: 1.08 !important;
	letter-spacing: -0.03em !important;
}

html body.bb-page-family-product .woocommerce-product-rating,
html body.bb-page-family-product .product_meta,
html body.bb-page-family-product .woocommerce-product-details__short-description {
	color: var(--bb-text-secondary, #66594b) !important;
}

html body.bb-page-family-product .summary .price,
html body.bb-page-family-product .summary .price .amount,
html body.bb-page-family-product .product-info .price,
html body.bb-page-family-product .product-info .price .amount,
html body.bb-page-family-product p.price,
html body.bb-page-family-product p.price .amount {
	color: var(--bb-text-primary, #221d18) !important;
	font-weight: 800 !important;
	font-size: clamp(1.35rem, 2.3vw, 1.9rem) !important;
	line-height: 1.08 !important;
}

html body.bb-page-family-product form.cart {
	margin-top: 1rem !important;
	padding-top: 1rem !important;
	border-top: 1px solid rgba(69, 69, 69, 0.1) !important;
	display: grid;
	gap: 0.9rem;
}

html body.bb-page-family-product form.cart > table.variations,
html body.bb-page-family-product form.cart > .variations {
	order: 1;
}

html body.bb-page-family-product form.cart > .single_variation_wrap,
html body.bb-page-family-product form.cart > .variations_button,
html body.bb-page-family-product form.cart > .woocommerce-variation-add-to-cart {
	order: 2;
}

html body.bb-page-family-product form.cart > .wpb-sp-wishlist {
	order: 3;
}

html body.bb-page-family-product .product_meta {
	margin-top: 1rem !important;
	padding-top: 1rem !important;
	border-top: 1px solid rgba(69, 69, 69, 0.1) !important;
	display: grid;
	gap: 0.35rem;
	font-size: 0.9rem;
}

html body.bb-page-family-product .variations_form .variations,
html body.bb-page-family-product .variations_form .variations tbody {
	display: grid;
	gap: 0.7rem;
	width: 100%;
}

html body.bb-page-family-product .variations_form .variations tr {
	display: grid;
	gap: 0.3rem;
}

html body.bb-page-family-product .variations_form .variations label {
	color: var(--bb-text-muted, #7a6d61);
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

html body.bb-page-family-product .variations_form .filter-item-list {
	display: none !important;
}

html body.bb-page-family-product .variations_form .selectric-wrapper,
html body.bb-page-family-product .variations_form .selectBox,
html body.bb-page-family-product .variations_form .selectBox-dropdown,
html body.bb-page-family-product .variations_form .selectBox-inline,
html body.bb-page-family-product .variations_form .select2,
html body.bb-page-family-product .variations_form .select2-container,
html body.bb-page-family-product .variations_form .selectWoo,
html body.bb-page-family-product .variations_form .selectWoo-container {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

html body.bb-page-family-product .variations_form .variations select {
	position: static !important;
	width: 100% !important;
	height: auto !important;
	min-height: 48px;
	margin: 0.2rem 0 0 !important;
	padding: 0.85rem 3rem 0.85rem 1rem !important;
	border-radius: 14px;
	border: 1px solid rgba(111, 69, 33, 0.18) !important;
	background-color: #ffffff !important;
	background-image: linear-gradient(45deg, transparent 50%, rgba(111, 69, 33, 0.92) 50%), linear-gradient(135deg, rgba(111, 69, 33, 0.92) 50%, transparent 50%);
	background-position: calc(100% - 1.15rem) calc(50% - 0.12rem), calc(100% - 0.8rem) calc(50% - 0.12rem);
	background-size: 0.42rem 0.42rem, 0.42rem 0.42rem;
	background-repeat: no-repeat;
	appearance: none !important;
	-webkit-appearance: none !important;
	cursor: pointer;
	font-weight: 700;
	color: var(--bb-text-primary, #221d18) !important;
	box-shadow: 0 8px 18px rgba(42, 42, 42, 0.05) !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

html body.bb-page-family-product .variations_form td.value > select,
html body.bb-page-family-product .variations_form .value select {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
}

html body.bb-page-family-product .variations_form .variations select:hover {
	border-color: rgba(111, 69, 33, 0.32) !important;
	box-shadow: 0 10px 24px rgba(111, 69, 33, 0.08) !important;
}

html body.bb-page-family-product .variations_form .variations select:focus {
	border-color: rgba(111, 69, 33, 0.52) !important;
	box-shadow: 0 0 0 3px rgba(143, 95, 53, 0.12) !important;
	outline: 0;
}

html body.bb-page-family-product .single_variation_wrap {
	display: grid;
	gap: 0.85rem;
}

html body.bb-page-family-product .single_variation_wrap > .woocommerce-variation-add-to-cart,
html body.bb-page-family-product .single_variation_wrap > .variations_button {
	order: 1;
}

html body.bb-page-family-product .single_variation_wrap > .wpb-sp-wishlist {
	order: 2;
}

html body.bb-page-family-product .single_variation_wrap > .bb-pdp-fulfillment-notice {
	order: 3;
}

html body.bb-page-family-product .woocommerce-variation-add-to-cart,
html body.bb-page-family-product .variations_button {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 0.75rem;
	align-items: center;
}

html body.bb-page-family-product .quantity.buttons_added {
	display: inline-grid;
	grid-template-columns: 42px minmax(54px, auto) 42px;
	align-items: center;
	min-height: 50px;
	border-radius: 16px;
	border: 1px solid rgba(69, 69, 69, 0.12);
	background: #ffffff;
	overflow: hidden;
	box-shadow: 0 6px 16px rgba(42, 42, 42, 0.04);
}

html body.bb-page-family-product .quantity.buttons_added .minus,
html body.bb-page-family-product .quantity.buttons_added .plus {
	height: 100%;
	border: 0;
	background: rgba(69, 69, 69, 0.04);
	color: var(--bb-text-primary, #221d18);
	font-size: 1.05rem;
	font-weight: 700;
}

html body.bb-page-family-product .quantity.buttons_added .qty {
	height: 100%;
	border: 0;
	text-align: center;
	font-weight: 700;
	background: #ffffff;
}

html body.bb-page-family-product .single_add_to_cart_button.button.alt {
	min-height: 52px;
	border-radius: 16px;
	border: 1px solid transparent;
	background: linear-gradient(180deg, var(--bb-brand-accent, #8f5f35) 0%, var(--bb-brand-accent-strong, #6f4521) 100%) !important;
	color: #fff8f0 !important;
	box-shadow: 0 14px 26px rgba(111, 69, 33, 0.22);
	font-size: 0.95rem;
	font-weight: 800;
	letter-spacing: 0.02em;
}

html body.bb-page-family-product form.cart + .wpb-sp-wishlist,
html body.bb-page-family-product form.cart .wpb-sp-wishlist,
html body.bb-page-family-product .single_variation_wrap + .wpb-sp-wishlist,
html body.bb-page-family-product .product-summary-wrap .wpb-sp-wishlist {
	display: inline-flex !important;
	align-items: center;
	margin-top: 0.75rem !important;
	padding-top: 0 !important;
	vertical-align: middle;
}

html body.bb-page-family-product .product-summary-wrap .wpb-sp-wishlist .yith-wcwl-add-to-wishlist {
	margin: 0 !important;
}

html body.bb-page-family-product form.cart .wpb-sp-wishlist .yith-wcwl-add-to-wishlist,
html body.bb-page-family-product .product-summary-wrap .wpb-sp-wishlist .yith-wcwl-add-button a,
html body.bb-page-family-product .product-summary-wrap .wpb-sp-wishlist .yith-wcwl-wishlistaddedbrowse a,
html body.bb-page-family-product .product-summary-wrap .wpb-sp-wishlist .yith-wcwl-wishlistexistsbrowse a {
	display: inline-flex !important;
	align-items: center;
	gap: 0.45rem;
	min-height: 44px;
	padding: 0.65rem 0.95rem;
	border-radius: 16px;
	border: 1px solid rgba(111, 69, 33, 0.14);
	background: #ffffff;
	box-shadow: 0 8px 18px rgba(42, 42, 42, 0.05);
}

html body.bb-page-family-product form.cart .wpb-sp-wishlist .yith-wcwl-add-button a,
html body.bb-page-family-product form.cart .wpb-sp-wishlist .yith-wcwl-wishlistaddedbrowse a,
html body.bb-page-family-product form.cart .wpb-sp-wishlist .yith-wcwl-wishlistexistsbrowse a {
	display: inline-flex !important;
	align-items: center;
	gap: 0.45rem;
	min-height: 44px;
	padding: 0.65rem 0.95rem;
	border-radius: 16px;
	border: 1px solid rgba(111, 69, 33, 0.14);
	background: #ffffff;
	box-shadow: 0 8px 18px rgba(42, 42, 42, 0.05);
}

html body.bb-page-family-product .bb-tb-wrap {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.7rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

html body.bb-page-family-product .bb-tb-wrap li {
	display: grid;
	grid-template-columns: 36px minmax(0, 1fr);
	column-gap: 0.7rem;
	row-gap: 0.12rem;
	align-items: start;
	padding: 0.9rem;
	border-radius: 18px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, #f8f7f4 100%);
	border: 1px solid rgba(69, 69, 69, 0.08);
	box-shadow: 0 10px 24px rgba(42, 42, 42, 0.05);
}

html body.bb-page-family-product .bb-tb-wrap .bb-tb-ic {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 12px;
	background: rgba(122, 109, 97, 0.08);
	color: var(--bb-brand-accent-strong, #6f6358);
}

html body.bb-page-family-product .bb-tb-wrap .bb-tb-title {
	grid-column: 2;
	color: var(--bb-text-primary, #221d18);
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1.2;
}

html body.bb-page-family-product .bb-tb-wrap .bb-tb-sub {
	grid-column: 2;
	color: var(--bb-text-secondary, #66594b);
	font-size: 0.82rem;
	line-height: 1.45;
}

html body.bb-page-family-product .bb-pdp-fulfillment-notice {
	padding: 0.95rem 1rem;
	border-radius: 18px;
	background: linear-gradient(180deg, rgba(143, 95, 53, 0.08) 0%, rgba(255, 255, 255, 0.98) 100%);
	border: 1px solid rgba(143, 95, 53, 0.12);
	box-shadow: 0 10px 24px rgba(42, 42, 42, 0.05);
}

html body.bb-page-family-product .bb-pdp-fulfillment-notice__text {
	margin: 0;
	color: var(--bb-text-primary, #221d18);
	font-size: 0.9rem;
	line-height: 1.6;
}

html body.bb-page-family-product .bb-pdp-fulfillment-notice__link {
	display: inline-flex;
	align-items: center;
	margin-left: 0.45rem;
	color: var(--bb-brand-accent-strong, #6f4521);
	font-weight: 800;
	text-decoration: none;
}

html body.bb-page-family-product .woocommerce-product-gallery {
	overflow: hidden;
	border-radius: var(--bb-radius-xl, 22px);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, #faf8f5 100%);
	border: 1px solid rgba(69, 69, 69, 0.08);
	box-shadow: 0 14px 34px rgba(42, 42, 42, 0.06);
	padding: 0.8rem;
}

html body.bb-page-family-product .woocommerce-tabs,
html body.bb-page-family-product .related.products,
html body.bb-page-family-product .upsells.products,
html body.bb-page-family-product .woocommerce-Reviews,
html body.bb-page-family-product .product-after-summary {
	margin-top: 1.4rem !important;
	padding: clamp(1rem, 2.2vw, 1.45rem) !important;
	border-radius: var(--bb-radius-xl, 22px) !important;
	background: var(--bb-bg-section, linear-gradient(180deg, #ffffff 0%, #fafaf8 100%)) !important;
	border: 1px solid var(--bb-border-soft, rgba(69, 69, 69, 0.12)) !important;
	box-shadow: var(--bb-shadow-md, 0 18px 48px rgba(42, 42, 42, 0.08)) !important;
}

html body.bb-page-family-product .product-summary-wrap + .wpb-sp-wishlist {
	margin-top: 0.75rem !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

html body.bb-page-family-product .woocommerce-tabs::before,
html body.bb-page-family-product .related.products::before,
html body.bb-page-family-product .upsells.products::before {
	content: "";
	display: block;
	width: 64px;
	height: 4px;
	margin-bottom: 1rem;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--bb-brand-accent, #8f5f35) 0%, rgba(143, 95, 53, 0.1) 100%);
}

html body.bb-page-family-product .woocommerce-tabs h2,
html body.bb-page-family-product .related.products > h2,
html body.bb-page-family-product .upsells.products > h2 {
	margin: 0 0 1rem !important;
	color: var(--bb-text-primary, #221d18) !important;
	font-size: clamp(1.35rem, 2.3vw, 1.8rem) !important;
	line-height: 1.15 !important;
	letter-spacing: -0.03em !important;
}

html body.bb-page-family-product .related.products ul.products li.product .product-inner,
html body.bb-page-family-product .upsells.products ul.products li.product .product-inner {
	border-radius: var(--bb-radius-lg, 18px) !important;
	border: 1px solid var(--bb-border-soft, rgba(69, 69, 69, 0.12)) !important;
	background: var(--bb-bg-elevated, linear-gradient(165deg, #ffffff 0%, #fafaf9 56%, #f0f0ee 100%)) !important;
	box-shadow: var(--bb-shadow-sm, 0 12px 30px rgba(42, 42, 42, 0.06)) !important;
	transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease !important;
}

html body.bb-page-family-product .related.products ul.products li.product:hover .product-inner,
html body.bb-page-family-product .upsells.products ul.products li.product:hover .product-inner {
	transform: translateY(-4px) !important;
	box-shadow: var(--bb-shadow-md, 0 18px 48px rgba(42, 42, 42, 0.08)) !important;
}

@media (min-width: 768px) and (max-width: 991px) {
	html body.bb-page-family-product div.product > .porto-block > .vc_row:first-of-type .porto-wrap-container.container > .row {
		display: block !important;
	}

	html body.bb-page-family-product div.product > .porto-block > .vc_row:first-of-type .porto-wrap-container.container > .row > .vc_column_container {
		width: 100% !important;
		max-width: 100% !important;
		flex: 0 0 100% !important;
	}

	html body.bb-page-family-product div.product > .porto-block > .vc_row:first-of-type .porto-wrap-container.container > .row > .vc_column_container + .vc_column_container {
		margin-top: 1rem;
	}

	html body.bb-page-family-product .woocommerce-product-gallery,
	html body.bb-page-family-product .product-summary-wrap {
		width: 100% !important;
		max-width: none !important;
	}

	html body.bb-page-family-product .product-summary-wrap {
		padding: 1rem;
	}
}

@media (max-width: 991px) {
	html body.bb-page-family-product div.product {
		padding: 0.9rem !important;
		border-radius: var(--bb-radius-xl, 22px) !important;
	}

	html body.bb-page-family-product div.product::before {
		width: 100%;
		height: 4px;
		top: 0;
		bottom: auto;
		border-radius: 28px 28px 0 0;
	}

	html body.bb-page-family-product .product-summary-wrap {
		padding: 0.9rem;
		border-radius: 20px;
	}

	html body.bb-page-family-product .woocommerce-variation-add-to-cart,
	html body.bb-page-family-product .variations_button {
		grid-template-columns: 1fr;
	}

	html body.bb-page-family-product .quantity.buttons_added {
		width: 100%;
		max-width: 180px;
	}

	html body.bb-page-family-product .single_add_to_cart_button.button.alt {
		width: 100%;
	}

	html body.bb-page-family-product .bb-tb-wrap {
		grid-template-columns: 1fr;
	}

	html body.bb-page-family-product .bb-pdp-fulfillment-notice {
		padding: 0.85rem 0.9rem;
		border-radius: 16px;
	}

	html body.bb-page-family-product .woocommerce-product-gallery {
		padding: 0.6rem;
		border-radius: 18px;
	}
}

/* --------------------------------------------------------------------------
 * Brand unification layer (PDP)
 * -------------------------------------------------------------------------- */
html body.bb-page-family-product {
	--bb-pdp-accent: var(--bb-brand-primary, #454545);
	--bb-pdp-accent-2: var(--bb-brand-secondary, #6b6560);
	--bb-pdp-highlight: var(--bb-brand-accent, #8a7a6a);
	--bb-pdp-highlight-strong: var(--bb-brand-accent-strong, #6f6358);
}

html body.bb-page-family-product .product_title,
html body.bb-page-family-product h1.product_title,
html body.bb-page-family-product .summary h2,
html body.bb-page-family-product .summary h3 {
	font-family: var(--bb-font-heading, inherit) !important;
	color: var(--bb-text-primary, #221d18) !important;
}

html body.bb-page-family-product .summary .price,
html body.bb-page-family-product .summary .price .amount,
html body.bb-page-family-product p.price,
html body.bb-page-family-product p.price .amount {
	color: var(--bb-pdp-highlight-strong) !important;
	letter-spacing: -0.01em;
}

html body.bb-page-family-product .woocommerce-product-details__short-description,
html body.bb-page-family-product .product_meta,
html body.bb-page-family-product .woocommerce-product-rating {
	color: var(--bb-text-secondary, #66594b) !important;
}

html body.bb-page-family-product .single_add_to_cart_button.button.alt,
html body.bb-page-family-product button.single_add_to_cart_button,
html body.bb-page-family-product .button.alt {
	border-radius: 16px !important;
	border: 1px solid transparent !important;
	background: linear-gradient(180deg, var(--bb-pdp-highlight) 0%, var(--bb-pdp-highlight-strong) 100%) !important;
	color: #fffaf3 !important;
	box-shadow: 0 14px 28px rgba(95, 84, 74, 0.22) !important;
	font-weight: 700 !important;
}

html body.bb-page-family-product .single_add_to_cart_button.button.alt:hover,
html body.bb-page-family-product button.single_add_to_cart_button:hover,
html body.bb-page-family-product .button.alt:hover {
	filter: brightness(1.03) !important;
	transform: translateY(-1px);
}

html body.bb-page-family-product .quantity.buttons_added {
	border-color: rgba(69, 69, 69, 0.22) !important;
	background: #ffffff !important;
}

html body.bb-page-family-product .quantity.buttons_added .qty,
html body.bb-page-family-product .quantity.buttons_added input {
	color: var(--bb-text-primary, #221d18) !important;
}

html body.bb-page-family-product .woocommerce-tabs,
html body.bb-page-family-product .woocommerce-tabs .panel,
html body.bb-page-family-product .woocommerce-tabs ul.tabs {
	border-color: rgba(69, 69, 69, 0.16) !important;
}

html body.bb-page-family-product .woocommerce-tabs ul.tabs li a {
	color: var(--bb-text-secondary, #66594b) !important;
	font-weight: 600 !important;
}

html body.bb-page-family-product .woocommerce-tabs ul.tabs li.active a,
html body.bb-page-family-product .woocommerce-tabs ul.tabs li:hover a {
	color: var(--bb-pdp-accent) !important;
}

html body.bb-page-family-product .product_meta a,
html body.bb-page-family-product .woocommerce-review-link {
	color: var(--bb-pdp-accent) !important;
}

html body.bb-page-family-product .product_meta a:hover,
html body.bb-page-family-product .woocommerce-review-link:hover {
	color: var(--bb-pdp-highlight-strong) !important;
}

/* Final polish: normalize legacy brown borders/shadows in PDP controls. */
html body.bb-page-family-product .variations_form .variations select {
	border-color: rgba(69, 69, 69, 0.24) !important;
	background-image: linear-gradient(45deg, transparent 50%, rgba(69, 69, 69, 0.86) 50%), linear-gradient(135deg, rgba(69, 69, 69, 0.86) 50%, transparent 50%) !important;
}

html body.bb-page-family-product .variations_form .variations select:hover {
	border-color: rgba(69, 69, 69, 0.36) !important;
	box-shadow: 0 10px 24px rgba(69, 69, 69, 0.1) !important;
}

html body.bb-page-family-product .variations_form .variations select:focus {
	border-color: rgba(69, 69, 69, 0.56) !important;
	box-shadow: 0 0 0 3px rgba(69, 69, 69, 0.14) !important;
}

/* --------------------------------------------------------------------------
 * Phase 3: page shell alignment to footer tone
 * -------------------------------------------------------------------------- */
html body.bb-page-family-product #main {
	background: linear-gradient(180deg, var(--bb-shell-bg, #1f1a16) 0%, var(--bb-shell-bg-2, #18130f) 100%) !important;
}

html body.bb-page-family-product .page-top {
	background: rgba(255, 255, 255, 0.03) !important;
	border-bottom: 1px solid var(--bb-shell-border-soft, rgba(255, 255, 255, 0.1)) !important;
}

html body.bb-page-family-product div.product,
html body.bb-page-family-product .woocommerce-tabs,
html body.bb-page-family-product .related.products,
html body.bb-page-family-product .upsells.products {
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.055) 0%, rgba(255, 255, 255, 0.03) 100%) !important;
	border-color: var(--bb-shell-border, rgba(255, 255, 255, 0.12)) !important;
}

html body.bb-page-family-product .product_title,
html body.bb-page-family-product h1.product_title,
html body.bb-page-family-product .summary h2,
html body.bb-page-family-product .summary h3 {
	color: var(--bb-shell-text-strong, #fff8f0) !important;
}

html body.bb-page-family-product .woocommerce-product-details__short-description,
html body.bb-page-family-product .product_meta,
html body.bb-page-family-product .woocommerce-product-rating {
	color: var(--bb-shell-text-muted, rgba(247, 239, 231, 0.76)) !important;
}

/* --------------------------------------------------------------------------
 * Phase 4: component-level convergence to footer tone
 * -------------------------------------------------------------------------- */
html body.bb-page-family-product .variations_form .variations select,
html body.bb-page-family-product .quantity.buttons_added,
html body.bb-page-family-product .quantity.buttons_added .qty,
html body.bb-page-family-product .product-summary-wrap .wpb-sp-wishlist .yith-wcwl-add-button a,
html body.bb-page-family-product .product-summary-wrap .wpb-sp-wishlist .yith-wcwl-wishlistaddedbrowse a,
html body.bb-page-family-product .product-summary-wrap .wpb-sp-wishlist .yith-wcwl-wishlistexistsbrowse a,
html body.bb-page-family-product form.cart .wpb-sp-wishlist .yith-wcwl-add-button a,
html body.bb-page-family-product form.cart .wpb-sp-wishlist .yith-wcwl-wishlistaddedbrowse a,
html body.bb-page-family-product form.cart .wpb-sp-wishlist .yith-wcwl-wishlistexistsbrowse a {
	background-color: rgba(255, 255, 255, 0.05) !important;
	color: var(--bb-shell-text-strong, #fff8f0) !important;
	border-color: var(--bb-shell-border, rgba(255, 255, 255, 0.12)) !important;
}

html body.bb-page-family-product .quantity.buttons_added .minus,
html body.bb-page-family-product .quantity.buttons_added .plus {
	background: rgba(255, 255, 255, 0.08) !important;
	color: var(--bb-shell-text-strong, #fff8f0) !important;
}

html body.bb-page-family-product .woocommerce-product-gallery,
html body.bb-page-family-product .bb-tb-wrap li,
html body.bb-page-family-product .bb-pdp-fulfillment-notice,
html body.bb-page-family-product .related.products ul.products li.product .product-inner,
html body.bb-page-family-product .upsells.products ul.products li.product .product-inner {
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.055) 0%, rgba(255, 255, 255, 0.03) 100%) !important;
	border-color: var(--bb-shell-border, rgba(255, 255, 255, 0.12)) !important;
}

html body.bb-page-family-product .woocommerce-tabs ul.tabs li a,
html body.bb-page-family-product .product_meta a,
html body.bb-page-family-product .woocommerce-review-link {
	color: var(--bb-shell-text-muted-strong, rgba(247, 239, 231, 0.82)) !important;
}
