/*
Theme Name: BG Drinkware Astra Child
Theme URI: https://bgdrinkware.com/
Description: BG Drinkware 的 Astra 子主题，仅加载全局视觉样式与页面组件；不覆写父主题模板。
Author: BG Drinkware
Template: astra
Version: 1.0.5
Text Domain: bgdrinkware-astra-child
*/

/* 自定义 B2B 商品页由 Elementor 源码全宽接管。 */
body.bgdrinkware-b2b-product-page #content.site-content {
	padding: 0;
}

body.bgdrinkware-b2b-product-page #content > .ast-container {
	display: block;
	margin: 0;
	max-width: none;
	padding: 0;
}

body.bgdrinkware-b2b-product-page #primary,
body.bgdrinkware-b2b-product-page article.type-product,
body.bgdrinkware-b2b-product-page div.product {
	border: 0;
	float: none;
	margin: 0;
	max-width: none;
	padding: 0;
	width: 100%;
}

body.bgdrinkware-b2b-product-page div.product > .woocommerce-product-gallery,
body.bgdrinkware-b2b-product-page div.product > .summary,
body.bgdrinkware-b2b-product-page .woocommerce-tabs,
body.bgdrinkware-b2b-product-page .upsells.products {
	display: none !important;
}

body.bgdrinkware-b2b-product-page div.product::before,
body.bgdrinkware-b2b-product-page div.product::after {
	display: none;
}

/* BGD v1.0.2：清除 B2B 产品页外层上下间距。 */
html:has(body.bgdrinkware-b2b-product-page),
body.bgdrinkware-b2b-product-page,
body.bgdrinkware-b2b-product-page #page,
body.bgdrinkware-b2b-product-page #content.site-content {
	background: #f3f0e8 !important;
	margin: 0 !important;
}

body.bgdrinkware-b2b-product-page #content.site-content,
body.bgdrinkware-b2b-product-page #content > .ast-container,
body.bgdrinkware-b2b-product-page #primary,
body.bgdrinkware-b2b-product-page #main,
body.bgdrinkware-b2b-product-page article.type-product,
body.bgdrinkware-b2b-product-page .entry-content,
body.bgdrinkware-b2b-product-page .woocommerce,
body.bgdrinkware-b2b-product-page div.product {
	margin-block: 0 !important;
	padding-block: 0 !important;
}

body.bgdrinkware-b2b-product-page #masthead,
body.bgdrinkware-b2b-product-page .site-header,
body.bgdrinkware-b2b-product-page #colophon,
body.bgdrinkware-b2b-product-page .site-footer {
	margin-block: 0 !important;
}

/* BGD v1.0.3：全站 WooCommerce 相关产品模块。 */
body.single-product .related.products {
box-sizing: border-box !important;
	clear: both;
	display: block !important;
	width: min(1320px, 100%) !important;
	max-width: 100% !important;
	margin: 0 auto !important;
	padding: clamp(64px, 7vw, 96px) clamp(20px, 4vw, 56px) clamp(72px, 8vw, 112px) !important;
	background: #f3f0e8 !important;
	color: #193c34;
}

body.single-product .related.products > h2 {
	margin: 0 0 clamp(28px, 4vw, 46px) !important;
	color: #0b2f27 !important;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3.8vw, 3.5rem) !important;
	font-weight: 600 !important;
	line-height: 1.08 !important;
	letter-spacing: -0.03em;
	text-align: left;
}

body.single-product .related.products ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: clamp(20px, 2.2vw, 32px) !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

body.single-product .related.products ul.products::before,
body.single-product .related.products ul.products::after {
	content: none !important;
	display: none !important;
}

body.single-product .related.products ul.products li.product {
	float: none !important;
	display: flex !important;
	flex-direction: column;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
}

body.single-product .related.products ul.products li.product a.woocommerce-loop-product__link {
	display: block;
	color: #193c34;
	text-decoration: none;
}

body.single-product .related.products ul.products li.product img {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 1;
	margin: 0 0 18px !important;
	padding: 0 !important;
	border: 1px solid #cad4ce;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
	object-fit: contain !important;
}

body.single-product .related.products .ast-woo-product-category,
body.single-product .related.products .product-category {
	margin: 0 0 8px;
	color: #50645d !important;
	opacity: 1 !important;
	font-size: 0.72rem !important;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

body.single-product .related.products .woocommerce-loop-product__title {
	margin: 0 0 18px !important;
	padding: 0 !important;
	color: #193c34 !important;
	font-size: clamp(1rem, 1.2vw, 1.12rem) !important;
	font-weight: 720 !important;
	line-height: 1.35 !important;
	letter-spacing: -0.01em;
}

body.single-product .related.products .price,
body.single-product .related.products .star-rating {
	display: none !important;
}

body.single-product .related.products ul.products li.product .button.bgdrinkware-view-product {
	align-self: flex-start;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 0.45rem;
	min-height: 46px !important;
	margin: auto 0 0 !important;
	padding: 0.72rem 1.05rem !important;
	border: 1px solid #113f34 !important;
	border-radius: 2px !important;
	background: #113f34 !important;
	background-image: none !important;
	box-shadow: none !important;
	color: #fff !important;
	font-size: 0.84rem !important;
	font-weight: 780 !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	text-transform: none !important;
	transform: none !important;
}

body.single-product .related.products ul.products li.product .button.bgdrinkware-view-product:hover,
body.single-product .related.products ul.products li.product .button.bgdrinkware-view-product:focus-visible {
	border-color: #0b2f27 !important;
	background: #0b2f27 !important;
	color: #fff !important;
}

body.single-product .related.products ul.products li.product .button.bgdrinkware-view-product::before,
body.single-product .related.products ul.products li.product .button.bgdrinkware-view-product::after {
	content: none !important;
	display: none !important;
}

@media (max-width: 920px) {
	body.single-product .related.products ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 540px) {
	body.single-product .related.products {
box-sizing: border-box !important;
		padding-inline: 20px !important;
	}

	body.single-product .related.products ul.products {
		grid-template-columns: 1fr !important;
	}
}
