/* BuildBarn: enqueued CSS (inline was stripped by cache/optimizer). */
/* Scheme A — single source: 换肤只改本块 token（见 reports/scheme-a-token-mapping.md） */
html {
	color-scheme: only light;
	--bb-brand-primary: #7a5b3f;
	--bb-brand-secondary: #9a7657;
	--bb-brand-accent: #a07a58;
	--bb-brand-accent-strong: #6c4f36;
	--bb-text-primary: #2e2118;
	--bb-text-secondary: #6c5645;
	--bb-text-muted: #8b7462;
	--bb-bg-page: #f3efe6;
	--bb-bg-card: #fbf8f1;
	--bb-bg-soft: #ece4d7;
	--bb-border-soft: #d8cbbf;
	--bb-border-strong: #c7b4a3;
	--bb-footer-bg: #5f4632;
	--bb-footer-text: #f7f0e8;
	--bb-footer-link: #f3e6d8;
	--bb-footer-link-hover: #ffffff;
	--bb-footer-muted: rgba(245, 245, 243, 0.78);
	--bb-footer-accent: #d2b293;
	--bb-footer-divider: rgba(255, 255, 255, 0.14);
	--bb-success: #3f6a50;
	--bb-warning: #8a6a3d;
	--bb-danger: #7d2626;
	--porto-primary-color: var(--bb-brand-primary);
	--porto-secondary-color: var(--bb-brand-secondary);
}

/*
 * Porto 页脚：采用"咖啡奶油"深色页脚（--bb-footer-bg 深咖啡 + 奶油文字）形成与
 * 页面主体 (--bb-bg-page) 的明暗对比；覆盖所有断点与 Porto 主题常用的冷蓝灰/渐变。
 * 原先 footer 与 body 使用同一色（--bb-bg-page），视觉上看不出 footer 边界，用户反馈
 * 「footer 没有变化」。切换到 footer 专用 token 后：
 *   - 背景：--bb-footer-bg (#5f4632 深咖啡)
 *   - 文字：--bb-footer-text (#f7f0e8 奶油)
 *   - 链接：--bb-footer-link (#f3e6d8) / hover --bb-footer-link-hover (#ffffff)
 *   - 静默文字：--bb-footer-muted
 *   - 强调/标题：--bb-footer-accent (#d2b293 暖金)
 */
html body #footer,
html body #footer .footer,
html body #footer .footer-main,
html body #footer .footer-top,
html body #footer .footer-bottom,
html body #footer .footer-middle,
html body footer#footer {
	background-color: var(--bb-footer-bg, #5f4632) !important;
	background-image: none !important;
	color: var(--bb-footer-text, #f7f0e8) !important;
	border-top: 1px solid var(--bb-footer-divider, rgba(255, 255, 255, 0.14)) !important;
}

html body #footer a,
html body #footer .footer-main a,
html body #footer .footer-bottom a,
html body #footer .footer-middle a {
	color: var(--bb-footer-link, #f3e6d8) !important;
}

html body #footer a:hover,
html body #footer .footer-main a:hover,
html body #footer .footer-bottom a:hover,
html body #footer .footer-middle a:hover {
	color: var(--bb-footer-link-hover, #ffffff) !important;
}

html body #footer .widget-title,
html body #footer .widget > h3,
html body #footer h3,
html body #footer h4 {
	color: var(--bb-footer-accent, #d2b293) !important;
}

html body #footer .form-control,
html body #footer input[type="email"],
html body #footer input[type="text"] {
	border-color: var(--bb-footer-divider, rgba(255, 255, 255, 0.22)) !important;
	background: rgba(255, 255, 255, 0.08) !important;
	color: var(--bb-footer-text, #f7f0e8) !important;
}

html body #footer .form-control::placeholder,
html body #footer input[type="email"]::placeholder,
html body #footer input[type="text"]::placeholder {
	color: var(--bb-footer-muted, rgba(247, 240, 232, 0.66)) !important;
}

/* Porto dynamic_style.css sets .footer p/.footer li to gray (#777). Hard-override to footer 奶油文字。 */
html body #footer p,
html body #footer li,
html body #footer span,
html body #footer .widget > div > ul li,
html body #footer .widget > ul li,
html body #footer .footer p,
html body #footer .footer li {
	color: var(--bb-footer-text, #f7f0e8) !important;
}

/* 页脚静默文字（版权、注释、时间戳等）走 muted token，避免与主文字同亮度。 */
html body #footer small,
html body #footer .text-muted,
html body #footer .copyright,
html body #footer .footer-bottom,
html body #footer .footer-bottom p,
html body #footer .footer-bottom span {
	color: var(--bb-footer-muted, rgba(247, 240, 232, 0.78)) !important;
}

/* Footer icon/text harmonization：图标使用 footer accent，避免孤立深灰 icon 出现在深底色上。 */
html body #footer .porto-just-icon-wrapper,
html body #footer .porto-icon,
html body #footer .porto-sicon-default,
html body #footer .porto-sicon-header,
html body #footer .porto-sicon-box,
html body #footer .widget,
html body #footer .textwidget {
	color: var(--bb-footer-text, #f7f0e8) !important;
}

html body #footer .porto-just-icon-wrapper i,
html body #footer .porto-icon i,
html body #footer .porto-sicon-default i,
html body #footer .porto-sicon-header i,
html body #footer .porto-sicon-box i {
	color: var(--bb-footer-accent, #d2b293) !important;
}

/* 分隔线/细描边按 footer divider token，保持与 footer bg 对比度一致。 */
html body #footer hr,
html body #footer .divider,
html body #footer .footer-middle,
html body #footer .footer-bottom {
	border-color: var(--bb-footer-divider, rgba(255, 255, 255, 0.14)) !important;
}

/* === bb-ai-visibility-styles — retail-forward (timber/building supplies) === */
.bb-ai-visibility-drawer {
	--bb-av-accent: var(--porto-primary-color, #7a5b3f);
	--bb-av-accent-2: var(--porto-secondary-color, #6b6560);
	--bb-av-ink: #1a1a1a;
	--bb-av-muted: #525252;
	margin: 1.75rem 0 2.25rem;
}

.bb-ai-visibility-drawer__details {
	border: 1px solid rgba(122, 91, 63, 0.16);
	border-radius: 16px;
	background: #fff;
	overflow: hidden;
	box-shadow:
		0 18px 48px rgba(95, 70, 50, 0.12),
		0 0 0 1px rgba(255, 255, 255, 0.65) inset;
}

.bb-ai-visibility-drawer__summary {
	display: grid;
	grid-template-columns: 1fr auto;
	grid-template-rows: auto auto;
	align-items: start;
	gap: 0.35rem 1rem;
	padding: 1.15rem 1.2rem 1.15rem 1.25rem;
	cursor: pointer;
	list-style: none;
	background: linear-gradient(118deg, rgba(122, 91, 63, 0.07) 0%, #fff 42%, #f5f5f3 100%);
	border-bottom: 1px solid rgba(122, 91, 63, 0.12);
	transition: background 0.2s ease, box-shadow 0.2s ease;
}

.bb-ai-visibility-drawer__summary::-webkit-details-marker {
	display: none;
}

.bb-ai-visibility-drawer__summary:hover {
	background: linear-gradient(118deg, rgba(122, 91, 63, 0.1) 0%, #fff 45%, #efefed 100%);
}

.bb-ai-visibility-drawer__details[open] > .bb-ai-visibility-drawer__summary {
	background: linear-gradient(118deg, rgba(122, 91, 63, 0.11) 0%, #f3f3f1 100%);
	box-shadow: 0 8px 24px rgba(95, 70, 50, 0.06);
}

.bb-ai-visibility-drawer__summary:focus-visible {
	outline: none;
}

.bb-ai-visibility-drawer__summary:focus-visible {
	outline: 3px solid rgba(122, 91, 63, 0.35);
	outline-offset: 2px;
}

.bb-ai-visibility-drawer__summary-title {
	grid-column: 1;
	grid-row: 1;
	margin: 0;
	font-size: 0.72rem;
	font-weight: 800;
	line-height: 1.35;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--bb-av-accent);
}

.bb-ai-visibility-drawer__summary-text {
	grid-column: 1;
	grid-row: 2;
	margin: 0;
	padding-right: 0;
	font-size: 1.02rem;
	font-weight: 700;
	line-height: 1.45;
	color: var(--bb-av-ink);
}

.bb-ai-visibility-drawer__summary::after {
	content: "";
	grid-column: 2;
	grid-row: 1 / span 2;
	align-self: center;
	width: 0.55rem;
	height: 0.55rem;
	margin-top: 2px;
	border-right: 3px solid var(--bb-av-accent);
	border-bottom: 3px solid var(--bb-av-accent);
	transform: rotate(45deg);
	transition: transform 0.22s ease, border-color 0.2s ease;
	opacity: 0.9;
}

.bb-ai-visibility-drawer__details[open] > .bb-ai-visibility-drawer__summary::after {
	transform: rotate(-135deg);
}

.bb-ai-visibility-drawer__panel {
	padding: 0 1.15rem 1.15rem;
	background: linear-gradient(180deg, #fafaf9 0%, #fff 28%);
}

.bb-ai-visibility-block {
	padding: 1.05rem 0 0;
}

.bb-ai-visibility-block__title {
	margin: 0 0 0.85rem;
	padding-bottom: 0.55rem;
	font-size: 1.06rem;
	font-weight: 800;
	line-height: 1.35;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--bb-av-accent);
	border-bottom: 3px solid var(--bb-av-accent);
}

.bb-ai-visibility-block__faq-title,
.bb-ai-visibility-block__facts-title,
.bb-ai-visibility-block__links-title,
.bb-ai-visibility-block__specs-title,
.bb-ai-visibility-block__highlight-title,
.bb-ai-visibility-block__guide-title,
.bb-ai-visibility-block__use-cases-title,
.bb-ai-visibility-block__decision-title,
.bb-ai-visibility-block__aliases-title,
.bb-ai-visibility-block__intents-title {
	margin: 0 0 0.65rem;
	font-size: 0.7rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--bb-av-accent-2);
}

.bb-ai-visibility-block__summary,
.bb-ai-visibility-block__highlight-text {
	margin: 0 0 0.9rem;
	line-height: 1.75;
	color: var(--bb-av-muted);
	font-size: 0.98rem;
}

.bb-ai-visibility-block__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 1rem;
	margin-top: 0.85rem;
}

.bb-ai-visibility-block__panel {
	margin: 0;
	padding: 1rem 1rem 1rem 1.05rem;
	border: 1px solid rgba(122, 91, 63, 0.12);
	border-radius: 14px;
	border-left: 4px solid var(--bb-av-accent);
	background: #fff;
	box-shadow: 0 6px 20px rgba(95, 70, 50, 0.07);
}

.bb-ai-visibility-block__panel--wide {
	grid-column: 1 / -1;
}

.bb-ai-visibility-block__aliases-list,
.bb-ai-visibility-block__intents-list,
.bb-ai-visibility-block__use-cases-list,
.bb-ai-visibility-block__decision-list,
.bb-ai-visibility-block__guide-list,
.bb-ai-visibility-block__facts-list,
.bb-ai-visibility-block__links-list,
.bb-ai-visibility-block__specs-list {
	margin: 0;
	padding-left: 1.15rem;
}

.bb-ai-visibility-block__alias-item,
.bb-ai-visibility-block__intent-item,
.bb-ai-visibility-block__use-case-item,
.bb-ai-visibility-block__decision-item,
.bb-ai-visibility-block__guide-item,
.bb-ai-visibility-block__fact,
.bb-ai-visibility-block__link,
.bb-ai-visibility-block__spec {
	margin: 0 0 0.45rem;
	line-height: 1.68;
	color: var(--bb-av-ink);
	font-size: 0.95rem;
}

.bb-ai-visibility-block__link a {
	color: var(--bb-av-accent);
	font-weight: 700;
	text-decoration: none;
	border-bottom: 2px solid rgba(122, 91, 63, 0.28);
	transition: color 0.15s ease, border-color 0.15s ease;
}

.bb-ai-visibility-block__link a:hover {
	color: #1e2832;
	border-bottom-color: var(--bb-av-accent);
}

.bb-ai-visibility-block__faq {
	margin-top: 0.25rem;
}

.bb-ai-visibility-block__item {
	padding: 0.85rem 0;
	border-top: 1px solid rgba(122, 91, 63, 0.1);
}

.bb-ai-visibility-block__item:first-of-type {
	border-top: 0;
	padding-top: 0;
}

.bb-ai-visibility-block__question {
	cursor: pointer;
	font-weight: 800;
	line-height: 1.55;
	color: var(--bb-av-ink);
	transition: color 0.15s ease;
}

.bb-ai-visibility-block__question:hover {
	color: var(--bb-av-accent);
}

.bb-ai-visibility-block__answer {
	margin: 0.55rem 0 0;
	padding-left: 0.65rem;
	border-left: 3px solid rgba(122, 91, 63, 0.2);
	line-height: 1.75;
	color: var(--bb-av-muted);
	font-size: 0.96rem;
}

@media (max-width: 767px) {
	.bb-ai-visibility-drawer__summary {
		padding: 1rem 1rem 1rem 1.05rem;
	}

	.bb-ai-visibility-drawer__panel {
		padding: 0 1rem 1rem;
	}

	.bb-ai-visibility-block__grid {
		grid-template-columns: 1fr;
	}
}

/* Unified BuildBarn desktop navigation */
#header {
	background: #fff;
}

#header .porto-block > .container-fluid {
	background: transparent;
}

@media (min-width:992px) {
	.header-wrapper {
		position: relative !important;
		box-shadow: none !important;
		background: transparent !important;
	}

	/* 与下方两行内容区同色，避免顶栏白底 + 中间灰盒「两段宽度/颜色」割裂 */
	html body #header.header-builder {
		position: sticky !important;
		top: 0 !important;
		z-index: 1300 !important;
		background: var(--bb-bg-page, #f4f1ed) !important;
		border-bottom: 1px solid var(--bb-border-soft, #d8d0c7) !important;
		box-shadow: 0 1px 0 rgba(0, 0, 0, 0.04) !important;
	}

	body #header .custom-header-top {
		background: transparent !important;
		color: var(--bb-text-secondary, #6a5d51) !important;
		border-bottom: 0 !important;
		padding: 6px 0 !important;
	}

	body #header .custom-header-top a,
	body #header .top-links > li.menu-item > a {
		color: var(--bb-text-secondary, #6a5d51) !important;
		font-size: 10.5px !important;
		font-weight: 500 !important;
		letter-spacing: .015em !important;
		line-height: 26px !important;
		text-transform: none !important;
	}

	body #header .top-links > li.menu-item > a:hover,
	body #header .custom-header-top a:hover {
		color: var(--bb-brand-primary, #4f463d) !important;
	}

	body #header .logo img {
		max-height: 68px !important;
		width: auto !important;
		filter: saturate(.92) contrast(1.02);
	}

	/* Header Builder：保持 Logo 原色，避免与品牌规范冲突 */
	html body #header.header-builder .logo img {
		filter: none !important;
	}

	body #header form.searchform.search-layout-advanced.searchform-cats .searchform-fields {
		display: flex;
		align-items: stretch;
		min-height: 62px !important;
		border: 1px solid var(--bb-border-soft, #d8d0c7) !important;
		border-radius: 20px !important;
		background: var(--bb-bg-card, #fffdfb) !important;
		box-shadow: 0 12px 26px rgba(95, 70, 50, .09) !important;
		overflow: hidden;
	}

	/* Header Builder：避免裁切联想层，且与 porto-812 搜索 z-index 栈一致 */
	html body #header.header-builder .buildbarn-header-main-row form.searchform.search-layout-advanced.searchform-cats .searchform-fields {
		overflow: visible !important;
	}

	body #header form.searchform.search-layout-advanced.searchform-cats .text {
		flex: 1;
	}

	body #header form.searchform.search-layout-advanced.searchform-cats .text input {
		height: 62px !important;
		padding: 0 20px !important;
		font-size: 16px !important;
		color: #241f1a !important;
		background: transparent !important;
	}

	body #header form.searchform.search-layout-advanced.searchform-cats .text input::placeholder {
		color: #8a7a68 !important;
	}

	body #header form.searchform.search-layout-advanced.searchform-cats .cat,
	body #header form.searchform.search-layout-advanced.searchform-cats .selectric-cat {
		min-width: 220px !important;
		border-left: 1px solid var(--bb-border-soft, #d8d0c7) !important;
		background: var(--bb-bg-card, #fffdfb) !important;
	}

	body #header form.searchform.search-layout-advanced.searchform-cats select.cat {
		height: 62px !important;
		padding: 0 18px !important;
		font-size: 13px !important;
		font-weight: 700 !important;
		letter-spacing: .03em !important;
		text-transform: none !important;
		color: var(--bb-text-primary, #2d241d) !important;
		background: transparent !important;
	}

	body #header form.searchform.search-layout-advanced.searchform-cats .btn.btn-special {
		height: 62px !important;
		min-width: 146px !important;
		border: 0 !important;
		background: var(--bb-brand-primary, #4f463d) !important;
		color: #ffffff !important;
		font-size: 14px !important;
		font-weight: 800 !important;
		letter-spacing: .05em !important;
		text-transform: uppercase !important;
		box-shadow: inset 0 -1px 0 rgba(255, 255, 255, .06) !important;
	}

	body #header form.searchform.search-layout-advanced.searchform-cats .btn.btn-special:hover {
		background: var(--bb-brand-accent-strong, #63564a) !important;
		color: #ffffff !important;
	}

	/*
	 * 横向主导航：ul#menu-main-menu-1 与最后一列 hb_menu 内 ul.main-menu（不要求带 .mega-menu，避免首页 DOM 缺类时不生效）。
	 * All Categories 侧栏：#menu-main-menu 与 #main-toggle-menu ul.sidebar-menu。
	 */
	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item,
	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item {
		margin: 0 !important;
	}

	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item-has-children,
	body #header #menu-main-menu.sidebar-menu > li.menu-item-has-children,
	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item-has-children,
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu ul.sidebar-menu > li.menu-item-has-children {
		position: relative;
	}

	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item-has-children > .popup,
	body #header #menu-main-menu.sidebar-menu > li.menu-item-has-children > .popup,
	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item-has-children > .popup,
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu ul.sidebar-menu > li.menu-item-has-children > .popup {
		padding-top: 24px;
	}

	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item-has-children.has-sub > a:after,
	body #header #menu-main-menu.sidebar-menu > li.menu-item-has-children.has-sub > a:after,
	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item-has-children.has-sub > a:after,
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu ul.sidebar-menu > li.menu-item-has-children.has-sub > a:after {
		content: "";
		display: inline-block;
		width: 7px;
		height: 7px;
		margin-left: 12px;
		border-right: 2px solid currentColor;
		border-bottom: 2px solid currentColor;
		transform: rotate(45deg) translateY(-1px);
		opacity: .65;
	}

	/* submenu layout is now maintained in porto_builder 812 template CSS */

	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item,
	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item {
		--bb-accent: #5f5348;
		--bb-accent-rgb: 95, 83, 72;
	}

	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item:nth-child(1),
	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item:nth-child(1) { --bb-accent: #5a4f44; --bb-accent-rgb: 90, 79, 68; } /* Decking */
	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item:nth-child(2),
	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item:nth-child(2) { --bb-accent: #625549; --bb-accent-rgb: 98, 85, 73; } /* Cladding */
	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item:nth-child(3),
	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item:nth-child(3) { --bb-accent: #584d42; --bb-accent-rgb: 88, 77, 66; } /* Fencing */
	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item:nth-child(4),
	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item:nth-child(4) { --bb-accent: #6a5c4f; --bb-accent-rgb: 106, 92, 79; } /* Timber */
	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item:nth-child(5),
	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item:nth-child(5) { --bb-accent: #715f50; --bb-accent-rgb: 113, 95, 80; } /* Sleepers */
	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item:nth-child(6),
	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item:nth-child(6) { --bb-accent: #66584b; --bb-accent-rgb: 102, 88, 75; } /* Landscape */
	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item:nth-child(7),
	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item:nth-child(7) { --bb-accent: #605246; --bb-accent-rgb: 96, 82, 70; } /* Grass */
	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item:nth-child(8),
	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item:nth-child(8) { --bb-accent: #564a40; --bb-accent-rgb: 86, 74, 64; } /* Steel */

	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu,
	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu {
		gap: 4px 10px !important;
		padding: 8px 0 !important;
	}

	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item > a,
	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item > a {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		min-height: 48px !important;
		padding: 0 15px !important;
		border-radius: 10px !important;
		font-size: 14px !important;
		font-weight: 600 !important;
		letter-spacing: .02em !important;
		line-height: 1.3 !important;
		color: var(--bb-text-primary, #2d241d) !important;
		background: transparent !important;
		box-shadow: inset 0 -1px 0 rgba(79, 70, 61, .1) !important;
		white-space: nowrap !important;
		transition: background-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease !important;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}

	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item.current-menu-item > a,
	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item.active > a,
	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item > a.current,
	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item:hover > a,
	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item.current-menu-item > a,
	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item.active > a,
	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item > a.current,
	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item:hover > a {
		background: rgba(var(--bb-accent-rgb), .08) !important;
		color: var(--bb-accent) !important;
		box-shadow: inset 0 -1.5px 0 var(--bb-accent) !important;
	}

	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item-has-children.has-sub > a:after,
	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item-has-children.has-sub > a:after {
		border-right-color: var(--bb-accent) !important;
		border-bottom-color: var(--bb-accent) !important;
		opacity: .56 !important;
	}

	/*
	 * 首页：Porto / builder 内联常用 .home #header … 且横向菜单可能无 .mega-menu 类。
	 * body.home 提高特异性，与详情页主导航同字号与同点击高度。
	 */
	html body.home #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item > a,
	html body.home #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item > a {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		min-height: 48px !important;
		padding: 0 15px !important;
		border-radius: 10px !important;
		font-size: 14px !important;
		font-weight: 600 !important;
		letter-spacing: .02em !important;
		line-height: 1.3 !important;
		color: var(--bb-text-primary, #2d241d) !important;
		background: transparent !important;
		box-shadow: inset 0 -1px 0 rgba(79, 70, 61, .1) !important;
		white-space: nowrap !important;
		transition: background-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease !important;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}

	html body.home #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item.current-menu-item > a,
	html body.home #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item.active > a,
	html body.home #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item > a.current,
	html body.home #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item:hover > a,
	html body.home #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item.current-menu-item > a,
	html body.home #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item.active > a,
	html body.home #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item > a.current,
	html body.home #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item:hover > a {
		background: rgba(var(--bb-accent-rgb), .08) !important;
		color: var(--bb-accent) !important;
		box-shadow: inset 0 -1.5px 0 var(--bb-accent) !important;
	}

	/* 全站：All Categories 下拉容器勿裁切飞层、勿做过渡动画（body 前缀：压过 Porto 按页面写的内联） */
	html body #header.header-builder #main-toggle-menu .toggle-menu-wrap {
		overflow: visible !important;
		transition: none !important;
		animation: none !important;
	}

	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu {
		width: auto !important;
		min-width: 0 !important;
		max-width: 100% !important;
		flex: 0 0 auto !important;
		flex-basis: auto !important;
	}

	/* 全站统一 All Categories / 顶栏导航视觉（与首页、分类、单品一致；特异性高于 .home / .archive 内联） */
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .menu-title {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		min-height: 48px !important;
		padding: 0 18px !important;
		border: 1px solid var(--bb-border-soft, #d8d0c7) !important;
		border-radius: 10px !important;
		background: var(--bb-bg-card, #fffdfb) !important;
		color: var(--bb-text-primary, #2d241d) !important;
		font-size: 13px !important;
		font-weight: 700 !important;
		letter-spacing: .04em !important;
		line-height: 1.25 !important;
		text-transform: uppercase !important;
		box-shadow: none !important;
		text-shadow: none !important;
		transition: none !important;
		animation: none !important;
		cursor: pointer !important;
		white-space: nowrap !important;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}

	/* 与主导航统一观感：无按压/悬停变色 */
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .menu-title:hover,
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .menu-title:active,
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .menu-title:focus-visible {
		background: var(--bb-bg-card, #fffdfb) !important;
		color: var(--bb-text-primary, #2d241d) !important;
		border-color: var(--bb-border-soft, #d8d0c7) !important;
		outline: none !important;
	}

	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .menu-title:focus-visible {
		outline: 2px solid var(--bb-brand-primary, #7a5b3f) !important;
		outline-offset: 2px !important;
	}

	html body #header.header-builder .buildbarn-header-nav-row .vc_porto_hb_menu:last-child ul.main-menu > li.menu-item > a:focus-visible,
	html body #header.header-builder .buildbarn-header-nav-row ul#menu-main-menu-1.main-menu > li.menu-item > a:focus-visible {
		outline: 2px solid var(--bb-brand-primary, #7a5b3f) !important;
		outline-offset: 2px !important;
	}

	/* All Categories 下拉外层：全站一致（勿 margin-top 留缝，避免移入时丢 hover） */
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .toggle-menu-wrap {
		margin-top: 0 !important;
		padding-top: 12px !important;
		border: 1px solid #e7e7e7 !important;
		border-top: 0 !important;
		border-radius: 16px !important;
		overflow: visible !important;
		background: #ffffff !important;
		box-shadow: 0 12px 28px rgba(0, 0, 0, 0.08) !important;
		transition: none !important;
		animation: none !important;
	}

	body #header #menu-main-menu.sidebar-menu > li > a,
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu ul.sidebar-menu > li > a {
		color: var(--bb-text-primary) !important;
		font-size: 12.5px !important;
		font-weight: 500 !important;
		border-radius: 6px !important;
		line-height: 1.45 !important;
		transition: background-color 0.12s ease, color 0.12s ease !important;
		animation: none !important;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}

	body #header #menu-main-menu.sidebar-menu > li:hover > a,
	body #header #menu-main-menu.sidebar-menu > li.active > a,
	body #header #menu-main-menu.sidebar-menu > li.current-menu-item > a {
		background: var(--bb-bg-page, #f4f1ed) !important;
		color: var(--bb-brand-primary, #4f463d) !important;
		transition: background-color 0.12s ease, color 0.12s ease !important;
	}

	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu ul.sidebar-menu > li:hover > a,
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu ul.sidebar-menu > li.active > a,
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu ul.sidebar-menu > li.current-menu-item > a {
		background: var(--bb-bg-page, #f4f1ed) !important;
		color: var(--bb-brand-primary, #4f463d) !important;
		transition: background-color 0.12s ease, color 0.12s ease !important;
	}

	/* 与上条同一套白底/灰线：显式覆盖 .menu-title.closed，避免 Porto 内联按页面换色 */
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .menu-title.closed {
		background: var(--bb-bg-card, #fffdfb) !important;
		color: var(--bb-text-primary, #2d241d) !important;
		border: 1px solid var(--bb-border-soft, #d8d0c7) !important;
		box-shadow: none !important;
	}

	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .sidebar-menu > li.menu-item + li.menu-item > a {
		border-top-color: rgba(79, 70, 61, 0.1) !important;
	}

	/* Mega markup仍带 skeleton-body：服务端已输出菜单，取消骨架闪动 */
	html body #header.header-builder .sub-menu.skeleton-body,
	html body #header.header-builder #main-toggle-menu .sub-menu.skeleton-body,
	html body #header.header-builder #menu-main-menu-1 .sub-menu.skeleton-body {
		background: transparent !important;
		animation: none !important;
	}

	html body #header.header-builder .sub-menu.skeleton-body > li,
	html body #header.header-builder #main-toggle-menu .sub-menu.skeleton-body > li,
	html body #header.header-builder #menu-main-menu-1 .sub-menu.skeleton-body > li {
		background: transparent !important;
		animation: none !important;
		min-height: 0 !important;
		box-shadow: none !important;
	}

	/* dropdown expansion layout is maintained in porto_builder 812 template CSS */

	.page-top {
		background: var(--bb-bg-page) !important;
		border-bottom: 1px solid var(--bb-border-soft) !important;
		padding: 14px 0 !important;
	}

	.page-top .page-title {
		color: var(--bb-text-primary) !important;
		font-weight: 600 !important;
		letter-spacing: 0 !important;
		white-space: nowrap !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
		max-width: 100% !important;
	}

	.page-top .breadcrumbs-wrap,
	.page-top .breadcrumbs-wrap a {
		color: var(--bb-text-secondary) !important;
	}

	/* Woo product-category pages: lighten heavy product list typography */
	body.tax-product_cat .page-top .page-title,
	body.post-type-archive-product .page-top .page-title {
		font-weight: 600 !important;
		letter-spacing: 0 !important;
	}

	body.tax-product_cat ul.products li.product .post-title,
	body.post-type-archive-product ul.products li.product .post-title {
		font-size: 28px !important;
		font-weight: 600 !important;
		line-height: 1.22 !important;
		letter-spacing: -.005em !important;
	}

	body.tax-product_cat ul.products li.product .post-title a,
	body.post-type-archive-product ul.products li.product .post-title a {
		font-weight: inherit !important;
		color: var(--bb-text-primary) !important;
	}

	body.tax-product_cat ul.products li.product .porto-tb-meta,
	body.post-type-archive-product ul.products li.product .porto-tb-meta {
		font-size: 14px !important;
		font-weight: 400 !important;
		line-height: 1.45 !important;
		color: var(--bb-text-secondary) !important;
	}

	body.tax-product_cat ul.products li.product .price,
	body.post-type-archive-product ul.products li.product .price {
		font-weight: 600 !important;
		letter-spacing: 0 !important;
	}

	body.tax-product_cat ul.products li.product .price .amount,
	body.post-type-archive-product ul.products li.product .price .amount {
		font-weight: inherit !important;
		color: var(--bb-text-primary) !important;
	}

	/* Product/listing surfaces: align cards + actions with same system（整卡勿 overflow:hidden，会裁掉类目标题/徽章） */
	.archive .archive-products .porto-tb-item.product,
	.home .porto-products .porto-tb-item.product,
	.home .porto-products li.product-col {
		background: var(--bb-bg-card) !important;
		border: 1px solid var(--bb-border-soft) !important;
		border-radius: 14px !important;
		box-shadow: 0 6px 16px rgba(95, 70, 50, .06) !important;
		overflow: visible !important;
	}

	.home .porto-products li.product-category .thumb-info-wrapper,
	.home .porto-products li.product-col .thumb-info-wrapper {
		overflow: hidden !important;
		border-radius: 14px 14px 0 0 !important;
	}

	.archive .archive-products .porto-tb-item.product .thumb-info,
	.archive .archive-products .porto-tb-item.product .product-image-wrap,
	.home .porto-products .porto-tb-item.product .thumb-info,
	.home .porto-products .porto-tb-item.product .product-image-wrap {
		overflow: hidden !important;
		border-radius: 14px 14px 0 0 !important;
	}

	.archive .archive-products .porto-tb-item.product:hover,
	.home .porto-products .porto-tb-item.product:hover,
	.home .porto-products li.product-col:hover {
		border-color: rgba(122, 91, 63, .24) !important;
		box-shadow: var(--bb-elev-soft) !important;
	}

	.archive .archive-products .porto-tb-item.product .post-title a,
	.home .porto-products .porto-tb-item.product .post-title a {
		color: var(--bb-text-primary) !important;
	}

	.archive .archive-products .porto-tb-item.product .tb-meta-product_cat,
	.archive .archive-products .porto-tb-item.product .tb-meta-product_cat a,
	.home .porto-products .porto-tb-item.product .tb-meta-product_cat,
	.home .porto-products .porto-tb-item.product .tb-meta-product_cat a {
		color: var(--bb-text-secondary) !important;
	}

	.archive .archive-products .porto-tb-item.product .price,
	.archive .archive-products .porto-tb-item.product .price .amount,
	.home .porto-products .porto-tb-item.product .price,
	.home .porto-products .porto-tb-item.product .price .amount {
		color: var(--bb-text-primary) !important;
		font-weight: 600 !important;
	}

	.archive .archive-products .porto-tb-item.product a.add_to_cart_button,
	.home .porto-products .porto-tb-item.product a.add_to_cart_button,
	.archive .archive-products .porto-tb-item.product .porto-tb-addcart,
	.home .porto-products .porto-tb-item.product .porto-tb-addcart {
		border-radius: 10px !important;
		border: 1px solid rgba(122, 91, 63, .2) !important;
		background: var(--bb-brand-primary) !important;
		color: #ffffff !important;
		box-shadow: none !important;
	}

	.archive .archive-products .porto-tb-item.product a.add_to_cart_button:hover,
	.home .porto-products .porto-tb-item.product a.add_to_cart_button:hover,
	.archive .archive-products .porto-tb-item.product .porto-tb-addcart:hover,
	.home .porto-products .porto-tb-item.product .porto-tb-addcart:hover {
		background: #3a3a3a !important;
		border-color: #3a3a3a !important;
		color: #ffffff !important;
	}

	/* Footer：见文件顶部 html body #footer 全断点覆盖（此处不再用冷灰蓝 #f4f7fa） */

	/*
	 * 全站导航飞层：body 前缀统一压过 Porto 按 .home / .tax-* 写的内联。
	 */
	html body #header.header-builder .buildbarn-header-nav-row .wide .popup > .inner,
	html body #header.header-builder .buildbarn-header-nav-row .narrow ul.sub-menu,
	html body #header.header-builder .buildbarn-header-nav-row .porto-popup-menu .sub-menu,
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .wide .popup > .inner,
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .narrow ul.sub-menu {
		border-radius: 16px !important;
		border: 1px solid var(--bb-border-soft, #d8d0c7) !important;
		background: var(--bb-bg-card, #fffdfb) !important;
		box-shadow: 0 12px 28px rgba(0, 0, 0, 0.08) !important;
	}

	html body #header.header-builder .buildbarn-header-nav-row .wide li.sub + li.sub,
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .wide li.sub + li.sub {
		border-left: 1px solid var(--bb-border-soft, #d8d0c7) !important;
	}

	html body #header.header-builder .buildbarn-header-nav-row .menu-sub-title > a,
	html body #header.header-builder .buildbarn-header-nav-row .wide li.sub > a,
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .menu-sub-title > a,
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .wide li.sub > a {
		color: var(--bb-text-primary, #2d241d) !important;
	}

	html body #header.header-builder .buildbarn-header-nav-row .wide li.menu-item li.menu-item > a,
	html body #header.header-builder .buildbarn-header-nav-row .narrow ul.sub-menu li.menu-item > a,
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .wide li.menu-item li.menu-item > a,
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .narrow ul.sub-menu li.menu-item > a {
		color: var(--bb-text-primary, #2d241d) !important;
	}

	html body #header.header-builder .buildbarn-header-nav-row .wide li.menu-item li.menu-item > a:hover,
	html body #header.header-builder .buildbarn-header-nav-row .narrow ul.sub-menu li.menu-item:hover > a,
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .wide li.menu-item li.menu-item > a:hover,
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .narrow ul.sub-menu li.menu-item:hover > a {
		background: var(--bb-bg-page, #f4f1ed) !important;
		color: var(--bb-brand-primary, #4f463d) !important;
		text-decoration: none !important;
		transition: background-color 0.12s ease, color 0.12s ease !important;
	}

	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .sidebar-menu > li.menu-item + li.menu-item > a {
		border-top: 1px solid var(--bb-border-soft, #d8d0c7) !important;
	}

	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .sidebar-menu > li.has-sub > a:after {
		color: var(--bb-text-muted, #86796d) !important;
	}

	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .sidebar-menu .popup,
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu .sidebar-menu li.menu-item-has-children > .popup {
		transition: none !important;
		animation: none !important;
	}
}

@media (min-width: 992px) and (max-width: 1199px) {
	html body #header.header-builder .buildbarn-header-nav-row #main-toggle-menu {
		width: auto !important;
		flex-basis: auto !important;
	}
}

@media (max-width:991px) {
	/*
	 * 2026-04-19：手机顶栏 toggle 的全部尺寸/颜色/边框/背景 统一由
	 * buildbarn-header-porto-812.css 的「手机顶栏全站统一版」规则管理（裸图标样式）。
	 * 此处仅保留最低限度的可见性保证，不再声明任何视觉装饰。
	 */
	body #header .buildbarn-header-main-row .mobile-toggle,
	html body #header.header-builder .buildbarn-header-main-row .mobile-toggle {
		visibility: visible !important;
		opacity: 1 !important;
		z-index: 1405 !important;
	}

	body #header .buildbarn-header-main-row .mobile-toggle i,
	html body #header.header-builder .buildbarn-header-main-row .mobile-toggle i {
		display: inline-block !important;
		visibility: visible !important;
		opacity: 1 !important;
	}

	body #header .custom-header-top {
		background: var(--bb-bg-page, #f4f1ed) !important;
		color: var(--bb-text-secondary, #6a5d51) !important;
	}

	body #header .custom-header-top a {
		color: var(--bb-text-secondary, #6a5d51) !important;
	}

	body #header form.searchform.search-layout-advanced.searchform-cats .searchform-fields {
		background: var(--bb-bg-card, #fffdfb) !important;
		border: 1px solid var(--bb-border-soft, #d8d0c7) !important;
	}

	body #header form.searchform.search-layout-advanced.searchform-cats .btn.btn-special {
		background: var(--bb-brand-primary, #4f463d) !important;
		color: #ffffff !important;
	}

	/* Mobile explicit warm-brown lock: override theme inline gray pills/text. */
	html body #header #main-toggle-menu .menu-title,
	html body #header.header-builder #main-toggle-menu .menu-title,
	html body #header #main-toggle-menu .menu-title.closed,
	html body #header.header-builder #main-toggle-menu .menu-title.closed {
		background: var(--bb-bg-card, #fffdfb) !important;
		color: var(--bb-text-primary, #2d241d) !important;
		border: 1px solid var(--bb-border-soft, #d8d0c7) !important;
	}

	html body #header #main-toggle-menu .menu-title:hover,
	html body #header.header-builder #main-toggle-menu .menu-title:hover,
	html body #header #main-toggle-menu .menu-title:focus-visible,
	html body #header.header-builder #main-toggle-menu .menu-title:focus-visible {
		background: var(--bb-bg-card, #fffdfb) !important;
		color: var(--bb-brand-primary, #4f463d) !important;
		border-color: var(--bb-border-soft, #d8d0c7) !important;
	}

	html body #header #main-toggle-menu ul.sidebar-menu > li > a,
	html body #header.header-builder #main-toggle-menu ul.sidebar-menu > li > a,
	html body #header ul.main-menu > li.menu-item > a {
		color: var(--bb-text-primary, #2d241d) !important;
	}

	body.tax-product_cat ul.products li.product .post-title,
	body.post-type-archive-product ul.products li.product .post-title {
		font-size: 24px !important;
		line-height: 1.24 !important;
	}

	body.tax-product_cat ul.products li.product .porto-tb-meta,
	body.post-type-archive-product ul.products li.product .porto-tb-meta {
		font-size: 13px !important;
	}

	.archive .archive-products .porto-tb-item.product,
	.home .porto-products .porto-tb-item.product,
	.home .porto-products li.product-col {
		border-radius: 12px !important;
	}
}

@keyframes bb-submenu-skel {
	0% {
		background-position: 130% 0;
	}

	100% {
		background-position: -130% 0;
	}
}

/* === bb-pdp: single product — Porto 父主题 + WooCommerce（站点主题为 Porto / buildbarn-porto-child，非 HiEasy）=== */
.single-product {
	--bb-pdp-accent: var(--bb-brand-primary, #4f463d);
	--bb-pdp-accent-2: var(--bb-brand-secondary, #6b5f53);
	--bb-pdp-ink: var(--bb-text-primary, #2d241d);
	--bb-pdp-muted: var(--bb-text-secondary, #6a5d51);
	--bb-pdp-tab-line: var(--bb-border-soft, #d8d0c7);
	--bb-pdp-surface: var(--bb-bg-page, #f4f1ed);
	--bb-pdp-border: var(--bb-border-soft, #d8d0c7);
	--bb-pdp-cta-top: var(--bb-brand-secondary, #6b5f53);
	--bb-pdp-cta-bottom: var(--bb-brand-primary, #4f463d);
	--bb-pdp-cta-hover: var(--bb-brand-accent-strong, #63564a);
	--bb-pdp-radius: 16px;
	--bb-pdp-radius-sm: 10px;
}

.single-product div.product {
	margin-bottom: clamp(2rem, 4vw, 2.75rem);
}

/* 图库：Porto 常用 .product-images 包一层，避免与内层 .woocommerce-product-gallery 重复描边 */
.single-product div.product .product-images {
	margin-bottom: 1.5rem;
	padding: 0.5rem;
	border-radius: calc(var(--bb-pdp-radius) + 4px);
	border: 1px solid var(--bb-pdp-border);
	background: linear-gradient(165deg, #ffffff 0%, var(--bb-pdp-surface) 100%);
	box-shadow:
		0 2px 4px rgba(95, 70, 50, 0.04),
		0 16px 40px rgba(95, 70, 50, 0.07),
		inset 0 1px 0 rgba(255, 255, 255, 0.95);
}

.single-product div.product .product-images .woocommerce-product-gallery {
	margin-bottom: 0;
	padding: 0;
	border: none;
	background: transparent;
	box-shadow: none;
}

.single-product div.product > .woocommerce-product-gallery {
	margin-bottom: 1.5rem;
	padding: 0.5rem;
	border-radius: calc(var(--bb-pdp-radius) + 4px);
	border: 1px solid var(--bb-pdp-border);
	background: linear-gradient(165deg, #ffffff 0%, var(--bb-pdp-surface) 100%);
	box-shadow:
		0 2px 4px rgba(95, 70, 50, 0.04),
		0 16px 40px rgba(95, 70, 50, 0.07),
		inset 0 1px 0 rgba(255, 255, 255, 0.95);
}

.single-product div.product .woocommerce-product-gallery .flex-viewport,
.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper {
	border-radius: var(--bb-pdp-radius);
	overflow: hidden;
}

/* 右侧购买区：Porto 常用 .product-summary-wrap 包一层 .summary */
.single-product div.product .summary.entry-summary,
.single-product div.product .summary:not(.woocommerce-error),
.single-product .product-summary-wrap .summary.entry-summary,
.single-product .product-summary-wrap .summary:not(.woocommerce-error) {
	margin-bottom: 1.5rem;
	padding: clamp(1.15rem, 2.2vw, 1.5rem);
	border-radius: var(--bb-pdp-radius);
	border: 1px solid var(--bb-pdp-border);
	background: linear-gradient(180deg, #ffffff 0%, #f7f7f5 100%);
	box-shadow: 0 4px 24px rgba(95, 70, 50, 0.05);
}

.single-product .product_title,
.single-product h1.product_title {
	margin: 0 0 0.6rem;
	font-size: clamp(1.35rem, 2.2vw, 1.6rem);
	font-weight: 600;
	letter-spacing: -0.03em;
	line-height: 1.2;
	color: var(--bb-pdp-ink);
}

.single-product .summary .price,
.single-product .summary p.price {
	margin: 0 0 1rem;
	padding-bottom: 0.85rem;
	border-bottom: 1px solid var(--bb-pdp-border);
	font-size: clamp(1.25rem, 2vw, 1.45rem);
	font-weight: 600;
	letter-spacing: -0.02em;
	color: var(--bb-pdp-ink);
}

.single-product .summary .woocommerce-product-rating {
	margin-bottom: 0.85rem;
}

.single-product .summary p.stock {
	margin: 0 0 0.65rem !important;
	font-size: 0.8125rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.02em !important;
}

.single-product div.product .woocommerce-product-details__short-description {
	margin: 0 0 1.15rem;
	padding: 0.95rem 1rem 1rem;
	border-radius: var(--bb-pdp-radius-sm);
	border: 1px solid var(--bb-pdp-border);
	border-top: 2px solid var(--bb-pdp-accent);
	background: rgba(255, 255, 255, 0.85);
	line-height: 1.7;
	color: var(--bb-pdp-muted);
	font-size: 0.9375rem;
}

/* 变体：选项区像表单，不松散 */
.single-product form.cart .variations {
	margin: 0 0 0.25rem;
}

.single-product form.cart .variations tr {
	border: 0;
}

.single-product form.cart .variations td,
.single-product form.cart .variations th {
	padding: 0.4rem 0;
	vertical-align: middle;
}

.single-product form.cart .variations label {
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--bb-pdp-accent-2);
}

.single-product form.cart .variations select {
	width: 100%;
	min-height: 44px;
	margin-top: 0.25rem;
	padding: 0.45rem 2rem 0.45rem 0.75rem;
	border: 1px solid var(--bb-pdp-border);
	border-radius: var(--bb-pdp-radius-sm);
	background-color: #fff;
	font-size: 0.9375rem;
	color: var(--bb-pdp-ink);
	box-shadow: inset 0 1px 2px rgba(95, 70, 50, 0.04);
}

.single-product form.cart .reset_variations {
	display: inline-block;
	margin-top: 0.35rem;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: var(--bb-pdp-muted) !important;
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* 数量 */
.single-product form.cart .quantity {
	display: inline-flex;
	align-items: center;
	margin-right: 0;
	margin-bottom: 0.25rem;
}

.single-product form.cart .quantity .qty {
	width: 4.25rem !important;
	min-height: 48px !important;
	padding: 0.35rem 0.5rem !important;
	border: 1px solid var(--bb-pdp-border) !important;
	border-radius: var(--bb-pdp-radius-sm) !important;
	font-size: 1rem !important;
	font-weight: 600 !important;
	text-align: center !important;
	color: var(--bb-pdp-ink) !important;
	background: #fff !important;
	box-shadow: none !important;
}

/* 数量 +/-：与输入框一致，避免主题默认凸起按钮 */
.single-product form.cart .quantity .minus,
.single-product form.cart .quantity .plus {
	border: 1px solid var(--bb-pdp-border) !important;
	background: #fff !important;
	box-shadow: none !important;
}

/* 主 CTA：加入购物车 — 全宽、扁平实心（无渐变/强投影） */
.single-product div.product form.cart {
	margin-bottom: 0.75rem;
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.single-product form.cart .single_add_to_cart_button,
.single-product form.cart button.single_add_to_cart_button,
.single-product form.cart button.button.alt,
.single-product form.cart button[type="submit"].button,
.single-product form.cart button.btn,
.single-product form.cart .btn.single_add_to_cart_button,
.single-product form.cart .button.alt.btn {
	width: 100% !important;
	min-height: 52px !important;
	margin-top: 0.15rem !important;
	padding: 0 1.5rem !important;
	border: 1px solid rgba(0, 0, 0, 0.18) !important;
	border-radius: 10px !important;
	background: var(--bb-pdp-cta-bottom) !important;
	color: #f8f8f7 !important;
	font-size: 0.8125rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.16em !important;
	text-transform: uppercase !important;
	line-height: 1.2 !important;
	cursor: pointer !important;
	box-shadow: none !important;
	transition: background-color 0.18s ease, border-color 0.18s ease, opacity 0.18s ease !important;
	-webkit-font-smoothing: antialiased;
}

.single-product form.cart .single_add_to_cart_button:hover,
.single-product form.cart button.single_add_to_cart_button:hover,
.single-product form.cart button.button.alt:hover,
.single-product form.cart button[type="submit"].button:hover,
.single-product form.cart button.btn:hover,
.single-product form.cart .btn.single_add_to_cart_button:hover,
.single-product form.cart .button.alt.btn:hover {
	background: var(--bb-pdp-cta-hover) !important;
	border-color: rgba(0, 0, 0, 0.22) !important;
	color: #fff !important;
}

.single-product form.cart .single_add_to_cart_button:active,
.single-product form.cart button.single_add_to_cart_button:active {
	background: #1f1f1f !important;
}

.single-product form.cart .single_add_to_cart_button.disabled,
.single-product form.cart button:disabled {
	opacity: 0.55 !important;
	cursor: not-allowed !important;
	background: var(--bb-pdp-cta-bottom) !important;
	border-color: rgba(0, 0, 0, 0.1) !important;
	box-shadow: none !important;
}

.single-product .bb-pdp-fulfillment-notice {
	margin: 0 0 1.25rem;
	padding: 1rem 1.15rem;
	border-radius: var(--bb-pdp-radius-sm);
	border: 1px solid var(--bb-pdp-border);
	border-left: 4px solid var(--bb-pdp-accent);
	background: linear-gradient(135deg, var(--bb-bg-page, #f4f1ed) 0%, var(--bb-bg-card, #fffdfb) 60%);
	box-shadow: 0 6px 20px rgba(95, 70, 50, 0.06);
}

.single-product .bb-pdp-fulfillment-notice__text {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.65;
	color: var(--bb-pdp-ink);
	font-weight: 600;
}

.single-product .bb-pdp-fulfillment-notice__link {
	display: inline-block;
	margin-top: 0.4rem;
	font-weight: 700;
	font-size: 0.75rem;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	text-decoration: none;
	color: var(--bb-action-secondary-text, var(--bb-pdp-ink));
	background: var(--bb-action-secondary-bg, var(--bb-bg-card, #fffdfb));
	padding: 0.45rem 1rem;
	border-radius: 999px;
	border: 1px solid var(--bb-action-secondary-border, var(--bb-pdp-border));
	box-shadow: none;
	transition: background 0.2s ease, opacity 0.15s ease;
}

.single-product .bb-pdp-fulfillment-notice__link:hover {
	background: var(--bb-hover-soft, rgba(79, 70, 61, 0.08));
	color: var(--bb-brand-primary, #4f463d);
}

/* 标签区：大模块，与摘要区同一套圆角/边线语言 */
.single-product .woocommerce-tabs {
	margin-top: 1.75rem;
	padding: 1.35rem 1.4rem 1.55rem;
	border: 1px solid var(--bb-pdp-tab-line);
	border-radius: var(--bb-pdp-radius);
	background: linear-gradient(180deg, #ffffff 0%, var(--bb-pdp-surface) 100%);
	box-shadow:
		0 4px 16px rgba(95, 70, 50, 0.05),
		inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

.single-product .woocommerce-tabs ul.tabs,
.single-product .wc-tabs {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 0.2rem;
	margin: 0 0 0 !important;
	padding: 0 0 0.35rem !important;
	list-style: none !important;
	border-bottom: 1px solid var(--bb-pdp-tab-line) !important;
	background: transparent !important;
}

.single-product .woocommerce-tabs ul.tabs::before,
.single-product .wc-tabs::before {
	display: none !important;
}

.single-product .woocommerce-tabs ul.tabs li,
.single-product .wc-tabs li {
	float: none !important;
	margin: 0 !important;
	border: none !important;
	background: transparent !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

.single-product .woocommerce-tabs ul.tabs li a,
.single-product .wc-tabs li a {
	display: block;
	padding: 0.85rem 1.1rem 0.75rem;
	font-weight: 600;
	font-size: 0.8125rem;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	color: var(--bb-pdp-muted) !important;
	border: none !important;
	background: transparent !important;
	position: relative;
	transition: color 0.2s ease;
}

.single-product .woocommerce-tabs ul.tabs li.active a,
.single-product .woocommerce-tabs ul.tabs li a:hover,
.single-product .wc-tabs li.active a,
.single-product .wc-tabs li a:hover {
	color: var(--bb-pdp-ink) !important;
}

.single-product .woocommerce-tabs ul.tabs li.active a::after,
.single-product .wc-tabs li.active a::after {
	content: "";
	position: absolute;
	left: 0.65rem;
	right: 0.65rem;
	bottom: -1px;
	height: 3px;
	border-radius: 3px 3px 0 0;
	background: var(--bb-pdp-accent);
}

.single-product .woocommerce-tabs .panel,
.single-product .woocommerce-Tabs-panel {
	padding: 1.35rem 0 0.2rem;
	font-size: 0.96875rem;
	line-height: 1.75;
	color: var(--bb-pdp-muted);
}

.single-product .woocommerce-tabs .panel h2,
.single-product .woocommerce-Tabs-panel h2 {
	font-size: 0.9375rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	margin: 0 0 1rem;
	padding-bottom: 0.5rem;
	border-bottom: 1px solid var(--bb-pdp-border);
	color: var(--bb-pdp-ink);
}

.single-product .woocommerce-tabs #tab-description.panel,
.single-product .woocommerce-tabs #tab-description.woocommerce-Tabs-panel {
	max-width: 58rem;
}

.single-product .woocommerce-tabs #tab-description.panel p,
.single-product .woocommerce-tabs #tab-description.woocommerce-Tabs-panel p {
	margin: 0 0 1rem;
}

.single-product .woocommerce-tabs #tab-description.panel ul,
.single-product .woocommerce-tabs #tab-description.woocommerce-Tabs-panel ul {
	margin: 0 0 1rem 1.1rem;
	padding: 0;
}

.single-product .woocommerce-tabs #reviews #comments,
.single-product .woocommerce-tabs #reviews .commentlist {
	margin-top: 0.5rem;
}

.single-product .woocommerce-tabs #reviews .star-rating {
	color: var(--bb-pdp-accent);
}

.single-product section.related.products {
	margin-top: 2.25rem;
	padding-top: 1.75rem;
	border-top: 1px solid var(--bb-pdp-border);
}

.single-product section.related.products > h2 {
	font-size: 1.125rem;
	font-weight: 600;
	letter-spacing: -0.02em;
	margin: 0 0 1.25rem;
	color: var(--bb-pdp-ink);
}

.single-product .woocommerce-tabs table.shop_attributes,
.single-product .woocommerce-tabs .woocommerce-product-attributes {
	width: 100%;
	border-collapse: collapse;
	margin: 0.35rem 0 0;
	font-size: 0.95rem;
	line-height: 1.55;
	border: 1px solid rgba(122, 91, 63, 0.12);
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 8px 24px rgba(95, 70, 50, 0.06);
	background: #fff;
}

.single-product .woocommerce-tabs table.shop_attributes th,
.single-product .woocommerce-tabs table.shop_attributes td,
.single-product .woocommerce-tabs .woocommerce-product-attributes-item {
	padding: 0.75rem 1rem;
	border-bottom: 1px solid rgba(122, 91, 63, 0.09);
	vertical-align: top;
}

.single-product .woocommerce-tabs table.shop_attributes tr:last-child th,
.single-product .woocommerce-tabs table.shop_attributes tr:last-child td,
.single-product .woocommerce-tabs .woocommerce-product-attributes-item:last-child {
	border-bottom: 0;
}

.single-product .woocommerce-tabs table.shop_attributes th,
.single-product .woocommerce-tabs .woocommerce-product-attributes-item__label {
	font-weight: 800;
	font-size: 0.72rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--bb-pdp-accent-2);
	width: 38%;
	text-align: left;
	background: rgba(122, 91, 63, 0.04);
}

.single-product .woocommerce-tabs table.shop_attributes td,
.single-product .woocommerce-tabs .woocommerce-product-attributes-item__value {
	color: var(--bb-pdp-ink);
	font-weight: 600;
}

.single-product .woocommerce-tabs table.shop_attributes tr:nth-child(even) td {
	background: rgba(122, 91, 63, 0.025);
}

.single-product .woocommerce-tabs table.shop_attributes tr:nth-child(even) th {
	background: rgba(122, 91, 63, 0.06);
}

.single-product .bb-ai-visibility-drawer {
	margin-top: 1.35rem;
}

@media (max-width: 767px) {
	.single-product div.product .product-images,
	.single-product div.product > .woocommerce-product-gallery {
		padding: 0.35rem;
	}

	.single-product div.product .summary.entry-summary,
	.single-product div.product .summary:not(.woocommerce-error),
	.single-product .product-summary-wrap .summary.entry-summary,
	.single-product .product-summary-wrap .summary:not(.woocommerce-error) {
		padding: 1rem 1.05rem;
	}

	.single-product form.cart .single_add_to_cart_button,
	.single-product form.cart button.single_add_to_cart_button {
		min-height: 50px !important;
		letter-spacing: 0.12em !important;
	}

	.single-product .woocommerce-tabs {
		padding: 1rem 1rem 1.25rem;
	}

	.single-product .woocommerce-tabs ul.tabs li a,
	.single-product .wc-tabs li a {
		padding: 0.65rem 0.75rem 0.55rem;
		font-size: 0.75rem;
	}

	.single-product .woocommerce-tabs table.shop_attributes {
		display: block;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
}

/*
 * PDP: extra specificity + !important so Porto / Woo blocks do not flatten our retail styling.
 */
body.woocommerce.single-product #main .product .summary .woocommerce-product-details__short-description,
body.single-product #main .product .summary .woocommerce-product-details__short-description {
	margin: 0 0 1.15rem !important;
	padding: 0.95rem 1rem 1rem !important;
	border-radius: 10px !important;
	border: 1px solid var(--bb-pdp-border, var(--bb-border-soft, #d8d0c7)) !important;
	border-top: 2px solid var(--bb-pdp-accent, var(--bb-brand-primary, #4f463d)) !important;
	background: var(--bb-bg-card, #fffdfb) !important;
	line-height: 1.7 !important;
	font-size: 0.9375rem !important;
	color: var(--bb-pdp-muted, var(--bb-text-secondary, #6a5d51)) !important;
}

body.woocommerce.single-product form.cart .single_add_to_cart_button,
body.single-product form.cart .single_add_to_cart_button,
body.woocommerce.single-product form.cart button.single_add_to_cart_button,
body.single-product form.cart button.single_add_to_cart_button,
body.woocommerce.single-product form.cart button.button.alt,
body.single-product form.cart button.button.alt,
body.woocommerce.single-product form.cart button.btn,
body.single-product form.cart button.btn,
body.woocommerce.single-product form.cart .btn.single_add_to_cart_button,
body.single-product form.cart .btn.single_add_to_cart_button,
body.woocommerce.single-product form.cart .button.alt.btn,
body.single-product form.cart .button.alt.btn {
	width: 100% !important;
	min-height: 52px !important;
	padding: 0 1.5rem !important;
	border: 1px solid var(--bb-action-primary-border, var(--bb-pdp-border, #d8d0c7)) !important;
	border-radius: 10px !important;
	background: var(--bb-action-primary-bg, linear-gradient(135deg, #695a4d 0%, #4f463d 100%)) !important;
	color: var(--bb-action-primary-text, #f8f8f7) !important;
	font-size: 0.8125rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.16em !important;
	text-transform: uppercase !important;
	box-shadow: none !important;
}

body.woocommerce.single-product .bb-pdp-fulfillment-notice,
body.single-product .bb-pdp-fulfillment-notice {
	margin: 0 0 1.35rem !important;
	padding: 1rem 1.15rem 1rem 1.2rem !important;
	border: 1px solid var(--bb-pdp-border, var(--bb-border-soft, #d8d0c7)) !important;
	border-radius: 14px !important;
	border-left: 5px solid var(--bb-pdp-accent, var(--bb-brand-primary, #4f463d)) !important;
	background: linear-gradient(135deg, var(--bb-bg-page, #f4f1ed) 0%, var(--bb-bg-card, #fffdfb) 55%, #fafaf9 100%) !important;
	box-shadow: 0 10px 28px rgba(95, 70, 50, 0.09) !important;
}

body.woocommerce.single-product .bb-pdp-fulfillment-notice__text,
body.single-product .bb-pdp-fulfillment-notice__text {
	color: var(--bb-pdp-ink, var(--bb-text-primary, #2d241d)) !important;
	font-weight: 600 !important;
	font-size: 0.95rem !important;
	line-height: 1.65 !important;
}

body.woocommerce.single-product .bb-pdp-fulfillment-notice__link,
body.single-product .bb-pdp-fulfillment-notice__link {
	display: inline-block !important;
	margin-top: 0.35rem !important;
	font-weight: 800 !important;
	font-size: 0.82rem !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	color: var(--bb-action-secondary-text, var(--bb-pdp-ink, #2d241d)) !important;
	background: var(--bb-action-secondary-bg, var(--bb-bg-card, #fffdfb)) !important;
	padding: 0.45rem 0.95rem !important;
	border-radius: 8px !important;
	border: 1px solid var(--bb-action-secondary-border, var(--bb-pdp-border, #d8d0c7)) !important;
	box-shadow: none !important;
}

body.woocommerce.single-product .bb-ai-visibility-drawer__details,
body.single-product .bb-ai-visibility-drawer__details {
	border-radius: 16px !important;
	border: 1px solid rgba(122, 91, 63, 0.16) !important;
	box-shadow:
		0 18px 48px rgba(95, 70, 50, 0.12),
		0 0 0 1px rgba(255, 255, 255, 0.65) inset !important;
}

body.woocommerce.single-product .woocommerce-tabs table.shop_attributes,
body.single-product .woocommerce-tabs table.shop_attributes {
	border-radius: 14px !important;
	overflow: hidden !important;
	box-shadow: 0 8px 24px rgba(95, 70, 50, 0.06) !important;
	border: 1px solid rgba(122, 91, 63, 0.12) !important;
	background: #fff !important;
}

/* Porto 覆盖：标签卡片区 */
body.woocommerce.single-product .woocommerce-tabs,
body.single-product .woocommerce-tabs {
	padding: 1.25rem 1.35rem 1.5rem !important;
	border: 1px solid rgba(122, 91, 63, 0.12) !important;
	border-radius: 18px !important;
	background: linear-gradient(180deg, #ffffff 0%, #fafaf9 100%) !important;
	box-shadow: 0 8px 32px rgba(95, 70, 50, 0.06), inset 0 1px 0 rgba(255, 255, 255, 0.9) !important;
}

/* --------------------------------------------------------------------------
 * TrustIndex 谷歌评价（首页 What Our Customers Say 下方）— 滑动/轮播样式
 * -------------------------------------------------------------------------- */
body.home .ti-widget.ti-goog {
	--bb-ti-slide-ease: cubic-bezier(0.33, 1, 0.68, 1);
	--bb-ti-slide-ms: 480ms;
}

/* 轮播轨道：圆角裁切、避免横向溢出露边 */
body.home .ti-widget.ti-goog .ti-reviews-container {
	overflow: hidden !important;
	border-radius: 16px !important;
}

body.home .ti-widget.ti-goog .ti-reviews-container-wrapper {
	transition: transform var(--bb-ti-slide-ms, 480ms) var(--bb-ti-slide-ease, cubic-bezier(0.33, 1, 0.68, 1)) !important;
	will-change: transform;
}

/* 单条评价卡片：卡片感 + 轻微分隔 */
body.home .ti-widget.ti-goog .ti-review-item .ti-inner {
	border-radius: 14px !important;
	border: 1px solid rgba(122, 91, 63, 0.1) !important;
	background: linear-gradient(165deg, #ffffff 0%, #fafaf9 100%) !important;
	box-shadow: 0 10px 36px rgba(95, 70, 50, 0.08) !important;
	padding: 1.1rem 1.15rem 1.25rem !important;
	margin: 0.35rem 0.5rem !important;
	transition:
		box-shadow 0.35s var(--bb-ti-slide-ease, cubic-bezier(0.33, 1, 0.68, 1)),
		border-color 0.35s ease,
		transform 0.35s var(--bb-ti-slide-ease, cubic-bezier(0.33, 1, 0.68, 1)) !important;
}

@media (hover: hover) {
	body.home .ti-widget.ti-goog .ti-review-item .ti-inner:hover {
		box-shadow: 0 16px 44px rgba(95, 70, 50, 0.12) !important;
		border-color: rgba(122, 91, 63, 0.16) !important;
		transform: translateY(-2px);
	}
}

/* 上一张 / 下一张：更大可点区域、与站点灰主色一致 */
body.home .ti-widget.ti-goog .ti-controls .ti-next,
body.home .ti-widget.ti-goog .ti-controls .ti-prev {
	width: 44px !important;
	height: 44px !important;
	border-radius: 50% !important;
	background: rgba(255, 255, 255, 0.95) !important;
	border: 1px solid rgba(122, 91, 63, 0.18) !important;
	box-shadow: 0 6px 20px rgba(95, 70, 50, 0.1) !important;
	transition:
		background 0.25s ease,
		border-color 0.25s ease,
		box-shadow 0.25s ease,
		transform 0.25s ease !important;
}

body.home .ti-widget.ti-goog .ti-controls .ti-next:hover,
body.home .ti-widget.ti-goog .ti-controls .ti-prev:hover {
	border-color: var(--porto-primary-color, #7a5b3f) !important;
	box-shadow: 0 10px 28px rgba(95, 70, 50, 0.16) !important;
	transform: scale(1.06);
}

/* 底部分页点：更明显 active、过渡（不同版本 class 可能为 .active / .ti-active） */
body.home .ti-widget.ti-goog .ti-controls-line .dot {
	transition:
		background 0.35s ease,
		transform 0.35s ease,
		opacity 0.35s ease !important;
}

body.home .ti-widget.ti-goog .ti-controls-line .dot.active,
body.home .ti-widget.ti-goog .ti-controls-line .dot.ti-active {
	background: var(--porto-primary-color, #7a5b3f) !important;
	transform: scale(1.15);
}

/* 触摸滑动时减少误选文字 */
body.home .ti-widget.ti-goog .ti-reviews-container-wrapper {
	-webkit-overflow-scrolling: touch;
	user-select: none;
}

body.home .ti-widget.ti-goog .ti-review-text-container {
	user-select: text;
}

@media (prefers-reduced-motion: reduce) {
	body.home .ti-widget.ti-goog .ti-reviews-container-wrapper,
	body.home .ti-widget.ti-goog .ti-review-item .ti-inner {
		transition: none !important;
	}
}

/* --------------------------------------------------------------------------
 * 首页「Special Offers」侧栏（Collection 区块右侧）：手机/平板显示不全修复
 * 1) Bootstrap/Porto 在 <md 时两列可能并排约 50% —— 强制整行堆叠为 100%
 * 2) <lg 时 col-lg-3 仅 25% 宽 —— 倒计时与商品被裁成「半屏」感
 * 3) ms-4、左侧边框、overflow 等细节
 * 选择器用 #main / #bb-home-layout-root，不依赖 body.home（避免 class 缺失）
 * -------------------------------------------------------------------------- */
@media (max-width: 1199.98px) {
	html body #main .porto-wrap-container > .row:has(.vc_column_container.vc_custom_1596505418234),
	html body #bb-home-layout-root .porto-wrap-container > .row:has(.vc_column_container.vc_custom_1596505418234) {
		flex-wrap: wrap !important;
		overflow: visible !important;
	}

	html body #main .porto-wrap-container > .row:has(.vc_column_container.vc_custom_1596505418234) > .vc_column_container,
	html body #bb-home-layout-root .porto-wrap-container > .row:has(.vc_column_container.vc_custom_1596505418234) > .vc_column_container {
		flex: 0 0 100% !important;
		max-width: 100% !important;
		width: 100% !important;
		min-width: 0 !important;
	}
}

/* :has() 不可用时仍强制同一对 VC 列堆叠（与上段类名一致） */
@media (max-width: 1199.98px) {
	html body #main .vc_column_container.background-color-light.p-t-lg.p-l-xl.p-r-xl.col-md-12.col-lg-9,
	html body #main .vc_column_container.vc_custom_1596505418234,
	html body #bb-home-layout-root .vc_column_container.background-color-light.p-t-lg.p-l-xl.p-r-xl.col-md-12.col-lg-9,
	html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 {
		flex: 0 0 100% !important;
		max-width: 100% !important;
		width: 100% !important;
		min-width: 0 !important;
	}
}

/*
 * Porto 小工具常见 has-ccols / ccols-sm-2：在窄侧栏仍按 2 列排版 → 单卡约 50% 宽。
 * 此处不限断点：该侧栏内商品列表始终单列占满（覆盖 flex-basis / 主题 50% 规则）。
 */
html body #main .vc_column_container.vc_custom_1596505418234 .vc_widget_woo_products .woocommerce,
html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .vc_widget_woo_products .woocommerce {
	width: 100% !important;
	max-width: 100% !important;
}

html body #main .vc_column_container.vc_custom_1596505418234 .vc_widget_woo_products ul.products,
html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .vc_widget_woo_products ul.products {
	display: flex !important;
	flex-direction: column !important;
	flex-wrap: nowrap !important;
	width: 100% !important;
	max-width: 100% !important;
}

html body #main .vc_column_container.vc_custom_1596505418234 .vc_widget_woo_products ul.products > li.product,
html body #main .vc_column_container.vc_custom_1596505418234 .vc_widget_woo_products ul.products > li.product.product-col,
html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .vc_widget_woo_products ul.products > li.product,
html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .vc_widget_woo_products ul.products > li.product.product-col {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	flex: 0 0 auto !important;
	flex-basis: 100% !important;
	-webkit-flex: 0 0 100% !important;
	float: none !important;
	clear: both !important;
}

html body #main .vc_column_container.vc_custom_1596505418234 .vc_widget_woo_products ul.products > li.product .product-inner,
html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .vc_widget_woo_products ul.products > li.product .product-inner {
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

/* 首页 Special Offers：列表全宽（含大屏，避免 ccols 两列各 50%）+ outimage 改为上图下文 */
html body #main .porto-products.top-sale-product .woocommerce ul.products,
html body #bb-home-layout-root .porto-products.top-sale-product .woocommerce ul.products,
html body #main .porto-products.top-sale-product ul.products,
html body #bb-home-layout-root .porto-products.top-sale-product ul.products {
	display: flex !important;
	flex-direction: column !important;
	flex-wrap: nowrap !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}

html body #main .porto-products.top-sale-product ul.products > li.product,
html body #main .porto-products.top-sale-product ul.products > li.product-col,
html body #bb-home-layout-root .porto-products.top-sale-product ul.products > li.product,
html body #bb-home-layout-root .porto-products.top-sale-product ul.products > li.product-col {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	flex: 0 0 100% !important;
	flex-basis: 100% !important;
	float: none !important;
	clear: both !important;
	box-sizing: border-box !important;
}

html body #main .porto-products.top-sale-product li.product .product-inner,
html body #bb-home-layout-root .porto-products.top-sale-product li.product .product-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	flex-wrap: nowrap !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	overflow: visible !important;
}

html body #main .porto-products.top-sale-product .product-inner .product-image,
html body #bb-home-layout-root .porto-products.top-sale-product .product-inner .product-image {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	flex: 0 0 auto !important;
	position: relative !important;
}

html body #main .porto-products.top-sale-product .product-content,
html body #bb-home-layout-root .porto-products.top-sale-product .product-content,
html body #main .porto-products.top-sale-product .product-details,
html body #bb-home-layout-root .porto-products.top-sale-product .product-details {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	flex: 1 1 auto !important;
	min-width: 0 !important;
	clear: both !important;
}

@media (max-width: 991.98px) {
	html body #main .vc_column_container.vc_custom_1596505418234,
	html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 {
		border-left: none !important;
		border-top: 1px solid #eeeeee !important;
		padding-left: 1rem !important;
		padding-right: 1rem !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
		overflow: visible !important;
	}

	html body #main .vc_column_container.vc_custom_1596505418234 .vc_column-inner,
	html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .vc_column-inner {
		min-width: 0 !important;
		overflow: visible !important;
	}

	html body #main .vc_column_container.vc_custom_1596505418234 .ms-1,
	html body #main .vc_column_container.vc_custom_1596505418234 .ms-2,
	html body #main .vc_column_container.vc_custom_1596505418234 .ms-3,
	html body #main .vc_column_container.vc_custom_1596505418234 .ms-4,
	html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .ms-1,
	html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .ms-2,
	html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .ms-3,
	html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .ms-4 {
		margin-inline-start: 0 !important;
	}

	html body #main .vc_column_container.vc_custom_1596505418234 .m-r-n,
	html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .m-r-n {
		margin-right: 0 !important;
	}

	html body #main .vc_column_container.vc_custom_1596505418234 h6.d-inline-block.align-left,
	html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 h6.d-inline-block.align-left {
		display: block !important;
		margin-bottom: 0.45rem !important;
	}

	html body #main .vc_column_container.vc_custom_1596505418234 .porto_countdown.d-inline-block,
	html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .porto_countdown.d-inline-block {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		margin-inline-start: 0 !important;
	}

	html body #main .vc_column_container.vc_custom_1596505418234 .porto_countdown-row,
	html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .porto_countdown-row {
		display: flex !important;
		flex-wrap: wrap !important;
		justify-content: flex-start !important;
		align-items: center !important;
		gap: 0.2rem 0.45rem !important;
	}

	html body #main .vc_column_container.vc_custom_1596505418234 .porto_countdown-section,
	html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .porto_countdown-section {
		flex: 0 0 auto !important;
		min-width: 0 !important;
	}

	html body #main .vc_column_container.vc_custom_1596505418234 .porto_countdown-amount,
	html body #main .vc_column_container.vc_custom_1596505418234 .porto_countdown-period,
	html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .porto_countdown-amount,
	html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .porto_countdown-period {
		font-size: clamp(0.72rem, 2.8vw, 0.9rem) !important;
	}

	html body #main .vc_column_container.vc_custom_1596505418234 .vc_widget_woo_products,
	html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .vc_widget_woo_products {
		max-width: 100% !important;
		overflow: visible !important;
	}

	html body #main .vc_column_container.vc_custom_1596505418234 .vc_widget_woo_products ul.products,
	html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .vc_widget_woo_products ul.products {
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	html body #main .vc_column_container.vc_custom_1596505418234 .vc_widget_woo_products li.product,
	html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .vc_widget_woo_products li.product {
		min-width: 0 !important;
		max-width: 100% !important;
	}

	html body #main .vc_column_container.vc_custom_1596505418234 .vc_widget_woo_products li.product img,
	html body #main .vc_column_container.vc_custom_1596505418234 .vc_widget_woo_products .product-image img,
	html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .vc_widget_woo_products li.product img,
	html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .vc_widget_woo_products .product-image img {
		max-width: 100% !important;
		height: auto !important;
	}

	html body #main .vc_column_container.vc_custom_1596505418234 .porto-sicon-box.d-inline-block,
	html body #bb-home-layout-root .vc_column_container.vc_custom_1596505418234 .porto-sicon-box.d-inline-block {
		display: inline-flex !important;
		align-items: center !important;
		margin-left: 0 !important;
	}
}

/* --------------------------------------------------------------------------
 * TrustIndex（含右下角浮层 / 弹窗）：隐藏评价日期与相对时间
 * 数月前的日期易显得陈旧；完整评价仍以 Google 为准。后台可将排序设为「最新优先」并同步新评价。
 * -------------------------------------------------------------------------- */
html body .ti-widget .ti-date,
html body .ti-widget .ti-time,
html body .ti-widget .ti-review-date,
html body .ti-widget .ti-date-wrapper,
html body .ti-widget .ti-profile-details .ti-date,
html body .ti-widget .ti-popup .ti-date,
html body .ti-widget .ti-slide .ti-date,
html body .ti-widget .ti-review-item .ti-date {
	display: none !important;
}

/* --------------------------------------------------------------------------
 * Mobile visual consistency (home header rhythm + home card system)
 * -------------------------------------------------------------------------- */
@media (max-width: 991px) {
	body #header .custom-header-top {
		padding: 6px 0 !important;
		min-height: 0 !important;
	}

	body #header .custom-header-top a,
	body #header .top-links > li.menu-item > a {
		font-size: 11px !important;
		line-height: 1.4 !important;
	}

	html body.home.bb-home-layout-v2 .bb-home-hero,
	html body.home.bb-home-layout-v2 .bb-home-section,
	html body.home.bb-home-layout-v2 .bb-home-trustbar {
		padding-top: 1.1rem !important;
		padding-bottom: 1.1rem !important;
	}

	html body.home.bb-home-layout-v2 .bb-home-info-card,
	html body.home.bb-home-layout-v2 .bb-home-category-card,
	html body.home.bb-home-layout-v2 .bb-home-product-card,
	html body.home.bb-home-layout-v2 .bb-home-mini-panel,
	html body.home.bb-home-layout-v2 .bb-home-delivery-card,
	html body.home.bb-home-layout-v2 .bb-home-review-card {
		border-radius: 16px !important;
		box-shadow: 0 6px 16px rgba(95, 70, 50, 0.08) !important;
	}

	html body.home.bb-home-layout-v2 .bb-home-category-card__body,
	html body.home.bb-home-layout-v2 .bb-home-product-card__body,
	html body.home.bb-home-layout-v2 .bb-home-mini-panel,
	html body.home.bb-home-layout-v2 .bb-home-delivery-card,
	html body.home.bb-home-layout-v2 .bb-home-review-card {
		padding: 0.95rem !important;
	}
}

@media print {
	.single-product .bb-ai-visibility-drawer__details {
		border: 1px solid #ccc;
	}

	.single-product .bb-ai-visibility-drawer__panel,
	.single-product .bb-ai-visibility-block__item {
		display: block !important;
	}

	.single-product .bb-ai-visibility-block__answer {
		display: block !important;
}
}

/* =========================================================================
   Porto social share buttons — warm-brown override
   -------------------------------------------------------------------------
   Porto 在 theme.css / theme_shop.css / theme_member.css / dynamic_style.css
   里把 .share-links 的 hover 态切回社交品牌彩色（Facebook #3b5a9a、Twitter
   #1aa9e1、Pinterest #cc2127、Email #dd4b39、LinkedIn #0073b2 等），这一坨
   蓝红杂色和本站 coffee-cream 暖棕主题严重打架。这里把所有 .share-links
   统一到品牌色：
     · 默认态：透明底 + 1px 暖棕半透明边框 + 暖棕图标
     · hover/focus：实心暖棕底 + 白色图标
     · 所有分支（product-share / post-share / entry-footer / header-builder）
       一并覆盖，避免某条上游选择器漏网。
   同时隐藏 Google+（2019-04 已下线，点击会 404），避免视觉脏点 + 死链。
   不改 HTML、不改 FontAwesome glyph、不改尺寸 —— 只换颜色。
   ========================================================================= */
html body .share-links a,
html body .share-links > a,
html body .product-share .share-links a,
html body .post-share .share-links a,
html body .entry-footer .share-links a,
html body .header-builder .share-links a {
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	color: var(--bb-brand-primary, #7a5b3f) !important;
	border: 1px solid rgba(122, 91, 63, 0.35) !important;
	opacity: 1 !important;
	transition:
		background-color 0.2s ease,
		color 0.2s ease,
		border-color 0.2s ease;
}

html body .share-links a:hover,
html body .share-links a:focus,
html body .share-links a:focus-visible,
html body .share-links > a:hover,
html body .product-share .share-links a:hover,
html body .post-share .share-links a:hover,
html body .entry-footer .share-links a:hover,
html body .header-builder .share-links a:hover {
	background: var(--bb-brand-primary, #7a5b3f) !important;
	background-color: var(--bb-brand-primary, #7a5b3f) !important;
	color: #ffffff !important;
	border-color: var(--bb-brand-primary, #7a5b3f) !important;
	opacity: 1 !important;
}

html body .share-links a::before,
html body .share-links > a::before {
	color: inherit !important;
}

html body .share-links .share-googleplus,
html body .share-links > .share-googleplus,
html body .product-share .share-googleplus,
html body .post-share .share-googleplus {
	display: none !important;
}
