/*
Theme Name: woodmart-child-cosmavyn
Theme URI: https://yassia.example.com/
Template: woodmart
Description: YASSIA Hyundai Truck Parts — Woodmart 子主题。包含定制的 front-page.php 与 .ys-* 样式系统。
Version: 1.0.0
Author: hclmgroupllc
License: GNU General Public License version 3.0
License URI: http://www.gnu.org/licenses/gpl-3.0.html
Text Domain: woodmart-child-cosmavyn
*/

/* ════════════════════════════════════════════════════════════
   YASSIA Front Page v1
   所有类名前缀:  .ys-*
   设计 token:    :root 里的 CSS 变量
   ════════════════════════════════════════════════════════════ */

:root {
	--ys-primary:      #15314D;
	--ys-primary-dark: #0E2438;
	--ys-primary-soft: #1E436A;
	--ys-accent:       #E50050;
	--ys-accent-dark:  #B8003F;
	--ys-text:         #1A1A1A;
	--ys-text-muted:   #6B7280;
	--ys-text-light:   rgba(255,255,255,.78);
	--ys-bg:           #FFFFFF;
	--ys-bg-soft:      #F5F7FA;
	--ys-border:       #E5E7EB;
	--ys-border-dark:  rgba(255,255,255,.12);
	--ys-radius:       8px;
	--ys-radius-lg:    14px;
	--ys-shadow:       0 8px 32px rgba(15, 36, 56, .08);
	--ys-shadow-lg:    0 20px 60px rgba(15, 36, 56, .15);
	--ys-container:    1240px;
}

/* ─── 全局基础 ─── */
.ys-front { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif; color: var(--ys-text); line-height: 1.6; }
.ys-front *, .ys-front *::before, .ys-front *::after { box-sizing: border-box; }
.ys-container { max-width: var(--ys-container); margin: 0 auto; padding: 0 24px; }

.ys-eyebrow { font-size: 11px; font-weight: 600; letter-spacing: 0.25em; text-transform: uppercase; color: var(--ys-accent); margin: 0 0 12px; }
.ys-eyebrow--light { color: rgba(255,255,255,.7); }

.ys-h2 { font-size: clamp(28px, 3.2vw, 40px); font-weight: 700; line-height: 1.2; margin: 0 0 16px; color: var(--ys-text); }
.ys-h2--light { color: #fff; }
.ys-h2--center { text-align: center; }

.ys-lead { font-size: 16px; color: var(--ys-text-muted); max-width: 720px; margin: 0 0 48px; }
.ys-lead--light { color: var(--ys-text-light); }

.ys-section { padding: 88px 0; background: var(--ys-bg); }
.ys-section--soft { background: var(--ys-bg-soft); }
.ys-section--dark { background: var(--ys-primary); color: #fff; }
.ys-section--dark .ys-h2 { color: #fff; }
.ys-section--dark .ys-lead { color: var(--ys-text-light); }

.ys-link { color: var(--ys-primary); font-weight: 600; text-decoration: none; font-size: 14px; }
.ys-link:hover { color: var(--ys-accent); }

/* ─── 按钮 ─── */
.ys-btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 14px 28px; font-size: 14px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; text-decoration: none; border: none; border-radius: var(--ys-radius); cursor: pointer; transition: all .2s ease; line-height: 1; }
.ys-btn--sm     { padding: 10px 18px; font-size: 12px; }
.ys-btn--block  { width: 100%; }
.ys-btn--accent { background: var(--ys-accent); color: #fff; }
.ys-btn--accent:hover { background: var(--ys-accent-dark); transform: translateY(-1px); }
.ys-btn--ghost  { background: transparent; color: #fff; border: 2px solid rgba(255,255,255,.4); }
.ys-btn--ghost:hover { background: rgba(255,255,255,.1); border-color: #fff; }
.ys-btn--dark   { background: var(--ys-primary); color: #fff; }
.ys-btn--dark:hover { background: var(--ys-primary-dark); }

/* ════════════ 1. HERO ════════════ */
.ys-hero { background: linear-gradient(135deg, var(--ys-primary) 0%, var(--ys-primary-dark) 100%); color: #fff; padding: 100px 0 160px; position: relative; overflow: hidden; }
.ys-hero::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 80% 50%, rgba(255,255,255,.05) 0%, transparent 50%); pointer-events: none; }
.ys-hero__inner { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; position: relative; }
.ys-hero__title { font-size: clamp(32px, 4.2vw, 52px); font-weight: 700; line-height: 1.15; margin: 0 0 24px; }
.ys-hero__bullets { list-style: none; padding: 0; margin: 0 0 32px; }
.ys-hero__bullets li { padding: 6px 0 6px 24px; position: relative; color: var(--ys-text-light); font-size: 15px; }
.ys-hero__bullets li::before { content: "▸"; position: absolute; left: 0; color: var(--ys-accent); font-weight: bold; }
.ys-hero__actions { display: flex; gap: 16px; flex-wrap: wrap; }
.ys-hero__image img { width: 100%; height: auto; border-radius: var(--ys-radius-lg); box-shadow: var(--ys-shadow-lg); display: block; }

/* ════════════ 2. FILTER (悬浮卡片) ════════════ */
.ys-filter-wrap { margin-top: -90px; position: relative; z-index: 2; padding: 0 0 88px; }
.ys-filter-card { background: #fff; border-radius: var(--ys-radius-lg); box-shadow: var(--ys-shadow-lg); padding: 32px; }
.ys-filter-card__head { display: flex; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; gap: 16px; margin-bottom: 8px; }
.ys-filter-card__title { font-size: 18px; font-weight: 700; margin: 0; color: var(--ys-text); letter-spacing: 0.04em; }
.ys-filter-card__sub { font-size: 13px; color: var(--ys-text-muted); margin: 4px 0 0; }
.ys-filter-card__form { display: grid; grid-template-columns: repeat(4, 1fr) auto; gap: 12px; margin-top: 20px; }
.ys-filter-card__form select { padding: 12px 14px; border: 1px solid var(--ys-border); border-radius: var(--ys-radius); font-size: 13px; color: var(--ys-text); background: #fff; cursor: pointer; appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 12px center; padding-right: 32px; }

/* ════════════ 3. CATEGORIES ════════════ */
.ys-cat-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.ys-cat-card { background: #fff; border: 1px solid var(--ys-border); border-radius: var(--ys-radius-lg); overflow: hidden; transition: all .25s ease; }
.ys-cat-card:hover { transform: translateY(-4px); box-shadow: var(--ys-shadow-lg); border-color: var(--ys-primary); }
.ys-cat-card__img { aspect-ratio: 5/3; overflow: hidden; background: var(--ys-bg-soft); }
.ys-cat-card__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.ys-cat-card:hover .ys-cat-card__img img { transform: scale(1.05); }
.ys-cat-card__body { padding: 24px; }
.ys-cat-card__body h3 { font-size: 18px; font-weight: 700; margin: 0 0 12px; letter-spacing: 0.05em; }
.ys-cat-card__body ul { list-style: none; padding: 0; margin: 0 0 16px; }
.ys-cat-card__body li { font-size: 13px; color: var(--ys-text-muted); padding: 4px 0; border-bottom: 1px dashed var(--ys-border); }
.ys-cat-card__body li:last-child { border: 0; }

/* ════════════ 4. COMPLIANCE ════════════ */
.ys-cert-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 16px; }
.ys-cert-card { background: var(--ys-primary-soft); border-radius: var(--ys-radius); padding: 24px 18px; text-align: center; transition: transform .2s; }
.ys-cert-card:hover { transform: translateY(-3px); }
.ys-cert-card__icon { width: 54px; height: 54px; border-radius: 12px; display: inline-flex; align-items: center; justify-content: center; margin-bottom: 12px; }
.ys-cert-card__icon svg { width: 28px; height: 28px; }
.ys-cert-card h4 { font-size: 14px; font-weight: 700; color: #fff; margin: 0 0 6px; }
.ys-cert-card p { font-size: 12px; color: rgba(255,255,255,.65); margin: 0; line-height: 1.5; }

/* ════════════ 5. FEATURED PRODUCTS ════════════ */
.ys-tabs { display: flex; gap: 32px; border-bottom: 1px solid var(--ys-border); margin-bottom: 32px; }
.ys-tab { padding: 12px 0; font-size: 14px; font-weight: 600; color: var(--ys-text-muted); text-decoration: none; border-bottom: 2px solid transparent; margin-bottom: -1px; }
.ys-tab--active, .ys-tab:hover { color: var(--ys-primary); border-bottom-color: var(--ys-accent); }
.ys-prod-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; }
.ys-prod-card { background: #fff; border: 1px solid var(--ys-border); border-radius: var(--ys-radius); padding: 12px; transition: all .2s; }
.ys-prod-card:hover { box-shadow: var(--ys-shadow); border-color: var(--ys-primary); }
.ys-prod-card__img { aspect-ratio: 1/1; background: var(--ys-bg-soft); border-radius: var(--ys-radius); overflow: hidden; margin-bottom: 10px; }
.ys-prod-card__img img { width: 100%; height: 100%; object-fit: cover; }
.ys-prod-card h5 { font-size: 12px; font-weight: 500; margin: 0; color: var(--ys-text); line-height: 1.4; }

/* ════════════ 6. WHY CHOOSE US ════════════ */
.ys-why-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.ys-why-card { background: #fff; border: 1px solid var(--ys-border); border-radius: var(--ys-radius-lg); padding: 28px; position: relative; }
.ys-why-card__num { position: absolute; top: 18px; right: 22px; font-size: 36px; font-weight: 800; color: var(--ys-border); line-height: 1; font-family: Georgia, serif; }
.ys-why-card h4 { font-size: 16px; font-weight: 700; margin: 0 0 10px; padding-right: 50px; color: var(--ys-primary); }
.ys-why-card p { font-size: 13px; color: var(--ys-text-muted); margin: 0; }

/* ════════════ 7. ABOUT YASSIA ════════════ */
.ys-about { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center; }
.ys-about__image img { width: 100%; height: auto; border-radius: var(--ys-radius-lg); box-shadow: var(--ys-shadow); display: block; }
.ys-about__content p { margin: 0 0 16px; color: var(--ys-text-muted); }
.ys-stats { display: flex; gap: 32px; margin: 28px 0; padding: 20px 0; border-top: 1px solid var(--ys-border); border-bottom: 1px solid var(--ys-border); }
.ys-stats div { text-align: center; flex: 1; }
.ys-stats strong { display: block; font-size: 32px; font-weight: 800; color: var(--ys-primary); line-height: 1; margin-bottom: 4px; }
.ys-stats span { font-size: 12px; color: var(--ys-text-muted); text-transform: uppercase; letter-spacing: 0.08em; }

/* ════════════ 8. REVIEWS ════════════ */
.ys-review-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-top: 40px; }
.ys-review { background: #fff; border-radius: var(--ys-radius-lg); padding: 28px; box-shadow: var(--ys-shadow); }
.ys-review__head { display: flex; gap: 14px; align-items: center; margin-bottom: 16px; }
.ys-review__head img { width: 52px; height: 52px; border-radius: 50%; }
.ys-review__head strong { display: block; font-size: 14px; }
.ys-stars { color: #FFB400; font-size: 13px; letter-spacing: 1px; }
.ys-review p { font-size: 14px; color: var(--ys-text-muted); margin: 0; line-height: 1.7; }

/* ════════════ 9. FACTORY ════════════ */
.ys-factory-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 40px; }
.ys-factory-item { aspect-ratio: 4/3; overflow: hidden; border-radius: var(--ys-radius-lg); }
.ys-factory-item img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.ys-factory-item:hover img { transform: scale(1.08); }

/* ════════════ 10. CONTACT ════════════ */
.ys-contact { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; }
.ys-contact__info h2 { color: #fff; }
.ys-contact__photo { width: 100%; border-radius: var(--ys-radius-lg); margin: 24px 0; }
.ys-contact__list { list-style: none; padding: 0; margin: 0; }
.ys-contact__list li { padding: 10px 0; color: var(--ys-text-light); font-size: 14px; border-bottom: 1px solid var(--ys-border-dark); }
.ys-contact__list strong { color: #fff; margin-right: 8px; }
.ys-contact__form { background: #fff; border-radius: var(--ys-radius-lg); padding: 36px; color: var(--ys-text); }
.ys-contact__form h3 { font-size: 22px; margin: 0 0 8px; }
.ys-contact__form > p { color: var(--ys-text-muted); margin: 0 0 24px; font-size: 14px; }
.ys-contact__form label { display: block; margin-bottom: 14px; font-size: 13px; font-weight: 600; color: var(--ys-text); }
.ys-contact__form input, .ys-contact__form textarea { width: 100%; padding: 12px 14px; border: 1px solid var(--ys-border); border-radius: var(--ys-radius); font-size: 14px; margin-top: 6px; font-family: inherit; }
.ys-contact__form input:focus, .ys-contact__form textarea:focus { outline: none; border-color: var(--ys-primary); }

/* ════════════ 11. FAQ ════════════ */
.ys-faq-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 32px; margin-top: 40px; }
.ys-faq-item { background: var(--ys-bg-soft); border-radius: var(--ys-radius); padding: 18px 22px; }
.ys-faq-item summary { font-size: 14px; font-weight: 600; cursor: pointer; list-style: none; position: relative; padding-right: 24px; }
.ys-faq-item summary::after { content: "+"; position: absolute; right: 0; top: 50%; transform: translateY(-50%); color: var(--ys-accent); font-size: 22px; font-weight: 300; }
.ys-faq-item[open] summary::after { content: "−"; }
.ys-faq-item p { margin: 12px 0 0; color: var(--ys-text-muted); font-size: 13px; }

/* ════════════ 12. NEWS ════════════ */
.ys-news-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-top: 40px; }
.ys-news-card { background: #fff; border-radius: var(--ys-radius-lg); overflow: hidden; box-shadow: var(--ys-shadow); transition: transform .25s; }
.ys-news-card:hover { transform: translateY(-4px); }
.ys-news-card__img { aspect-ratio: 5/3; overflow: hidden; }
.ys-news-card__img img { width: 100%; height: 100%; object-fit: cover; }
.ys-news-card__body { padding: 24px; }
.ys-tag { display: inline-block; background: var(--ys-primary); color: #fff; font-size: 10px; letter-spacing: 0.1em; padding: 4px 10px; border-radius: 4px; margin-bottom: 12px; }
.ys-news-card__body h4 { font-size: 17px; font-weight: 700; margin: 0 0 10px; line-height: 1.3; }
.ys-news-card__body p { font-size: 13px; color: var(--ys-text-muted); margin: 0 0 16px; }

/* ════════════════════════════════════════════════════════════
   响应式
   ════════════════════════════════════════════════════════════ */
@media (max-width: 1024px) {
	.ys-hero__inner,
	.ys-about,
	.ys-contact { grid-template-columns: 1fr; }
	.ys-cat-grid,
	.ys-why-grid,
	.ys-review-grid,
	.ys-news-grid,
	.ys-factory-grid { grid-template-columns: repeat(2, 1fr); }
	.ys-cert-grid { grid-template-columns: repeat(3, 1fr); }
	.ys-prod-grid { grid-template-columns: repeat(3, 1fr); }
	.ys-filter-card__form { grid-template-columns: repeat(2, 1fr); }
	.ys-filter-card__form .ys-btn { grid-column: 1 / -1; }
}

@media (max-width: 600px) {
	.ys-section { padding: 56px 0; }
	.ys-hero { padding: 64px 0 120px; }
	.ys-cat-grid,
	.ys-why-grid,
	.ys-review-grid,
	.ys-news-grid,
	.ys-factory-grid,
	.ys-cert-grid,
	.ys-faq-grid { grid-template-columns: 1fr; }
	.ys-prod-grid { grid-template-columns: repeat(2, 1fr); }
	.ys-filter-card__form { grid-template-columns: 1fr; }
	.ys-hero__title { font-size: 32px; }
}

/* ════════════════════════════════════════════════════════════
   wd_products 卡片 ADD TO QUOTE 按钮对齐修复 v2
   基于 staging 实际 HTML 结构（dump 后修正）:
     .wd-product (卡片外层)
       └── .product-wrapper (唯一内层)
           ├── .product-element-top (图片区)
           ├── h3.wd-entities-title (标题)
           ├── .yith-ywraq-add-to-quote  ← 按钮容器
           └── .clear
   策略: 外层 flex column → wrapper flex column 撑满 → 按钮 margin-top:auto
   ════════════════════════════════════════════════════════════ */

/* 1. 外层卡片改 flex column（虽然 Woodmart .wd-grid-g 已用 CSS Grid 让行同高,
      但内部 .product-wrapper 不会自动撑满外层高度，要靠 flex 链路传递） */
.wd-products-element .wd-product,
.elementor-widget-wd_products .wd-product,
.wd-products-element .product-grid-item,
.elementor-widget-wd_products .product-grid-item {
	display: flex !important;
	flex-direction: column;
}

/* 2. .product-wrapper 撑满外层 + 自身 flex column，让内部子能用 margin-top:auto */
.wd-products-element .product-wrapper,
.elementor-widget-wd_products .product-wrapper {
	display: flex !important;
	flex-direction: column;
	flex: 1 1 auto;
}

/* 3. YITH Quote 按钮容器（h3 的兄弟）顶到底 */
.wd-products-element .yith-ywraq-add-to-quote,
.elementor-widget-wd_products .yith-ywraq-add-to-quote {
	margin-top: auto !important;
}


/* ════════════════════════════════════════════════════════════
   产品/分类页 (Woodmart shop archive) 精致化 — 2026-06-03
   仅作用 WooCommerce 商店/分类页: 作用域 .woocommerce-page / #menu-products /
   .sidebar-widget。首页 wd_products(.wd-products-element, body 非 woocommerce-page) 不受影响。
   真实 DOM 已 dump 确认 (nav#menu-products / .sidebar-widget.widget_block 内 .elementor-form /
   .wd-product>.product-wrapper>.product-element-bottom>.add-request-quote-button)。
   ════════════════════════════════════════════════════════════ */

/* ── 1. 左侧 PRODUCTS 分类 → 多级: 顶级浅灰卡片 + 二级缩进子项 ── */
#menu-products { list-style: none; margin: 0; padding: 0; }
#menu-products > li.menu-item { margin: 0 0 8px; padding: 0; }
/* 顶级分类 = 卡片 */
#menu-products > li.menu-item > a {
	display: flex; align-items: center; justify-content: space-between;
	padding: 12px 16px;
	background: #F5F7FA;
	border: 1px solid #E5E9F0;
	border-left: 3px solid transparent;          /* 预留竖线位, 当前项变蓝 */
	border-radius: 8px;
	color: #1B2D4F; font-weight: 600; font-size: 15px; line-height: 1.2;
	text-decoration: none;
	transition: background .15s ease, border-color .15s ease, color .15s ease;
}
/* 顶级有子级 → 下箭头(展开态) */
#menu-products > li.menu-item.menu-item-has-children > a::after {
	content: ""; flex: 0 0 auto; width: 8px; height: 8px; margin-left: 10px;
	border-right: 2px solid #9CA3AF; border-bottom: 2px solid #9CA3AF;
	transform: rotate(45deg);
	transition: border-color .15s ease;
}
#menu-products > li.menu-item > a:hover { background: #EAF1FB; border-color: #C7D5EC; }
#menu-products > li.menu-item > a:hover::after { border-color: #1B2D4F; }
/* 当前所在的顶级 (祖先/父/自身) 蓝色高亮 + 左蓝竖线 */
#menu-products > li.current-menu-item > a,
#menu-products > li.current_page_item > a,
#menu-products > li.current-menu-parent > a,
#menu-products > li.current-menu-ancestor > a {
	background: #EAF1FB;
	border-color: #C7D5EC;
	border-left: 3px solid #1B2D4F;
	color: #1B2D4F; font-weight: 700;
}
/* 二级 = 缩进子项列表(竖线引导线) */
#menu-products .sub-menu {
	list-style: none; margin: 6px 0 2px; padding: 0 0 0 14px;
	border-left: 1px solid #E5E9F0;
}
#menu-products .sub-menu li.menu-item { margin: 0; }
#menu-products .sub-menu li.menu-item > a {
	display: block; padding: 7px 12px; border-radius: 6px;
	color: #5A6A82; font-size: 13.5px; font-weight: 500; line-height: 1.35;
	text-decoration: none;
	transition: background .15s ease, color .15s ease;
}
#menu-products .sub-menu li.menu-item > a:hover { background: #F3F6FB; color: #1B2D4F; }
/* 当前子分类高亮 */
#menu-products .sub-menu li.current-menu-item > a {
	background: #EAF1FB; color: #1B2D4F; font-weight: 700;
}

/* ── 2. 左侧询价表单 → 浅色卡片 (仅含 Elementor form 的侧栏 block widget) ── */
.sidebar-widget.widget_block:has(.elementor-form) {
	background: #F8FAFC;
	border: 1px solid #E5E9F0;
	border-radius: 12px;
	padding: 20px 18px;
}
.sidebar-widget .elementor-form .elementor-field-group { margin-bottom: 12px; }
.sidebar-widget .elementor-form .elementor-field-label {
	font-size: 13px; font-weight: 600; color: #1B2D4F; margin-bottom: 6px;
}
.sidebar-widget .elementor-form .elementor-field-textual {
	height: 44px;
	border: 1px solid #D9E0EA !important;
	border-radius: 8px !important;
	background: #fff !important;
	padding: 0 14px !important;
	font-size: 14px; color: #1B2D4F;
	box-shadow: none !important;
	transition: border-color .15s ease;
}
.sidebar-widget .elementor-form .elementor-field-textual:focus {
	border-color: #1B2D4F !important;
}
.sidebar-widget .elementor-form textarea.elementor-field-textual {
	height: 120px;                                /* Message 文本框加高 */
	padding: 12px 14px !important;
	line-height: 1.5; resize: vertical;
}
/* Request a Quote 按钮: 深蓝实心 + 占满 + 发送图标 */
.sidebar-widget .elementor-form .elementor-button {
	width: 100%;
	display: flex; align-items: center; justify-content: center;
	background-color: #1B2D4F !important;
	border: none !important; border-radius: 8px !important;
	min-height: 48px;
	font-weight: 700; font-size: 14px; letter-spacing: .4px;
	transition: background-color .15s ease, transform .1s ease;
}
.sidebar-widget .elementor-form .elementor-button .elementor-button-content-wrapper::before {
	content: ""; display: inline-block; width: 16px; height: 16px; margin-right: 8px;
	background: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23ffffff'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cline%20x1%3D'22'%20y1%3D'2'%20x2%3D'11'%20y2%3D'13'%2F%3E%3Cpolygon%20points%3D'22%202%2015%2022%2011%2013%202%209%2022%202'%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
}
.sidebar-widget .elementor-form .elementor-button:hover {
	background-color: #142544 !important; transform: translateY(-1px);
}

/* ── 3. 右侧商品展示区 ── */
/* 分类标题 BONGO: 蓝色大写 + 更清晰字号/间距 */
.woocommerce-page .woocommerce-products-header__title,
.woocommerce-page .wd-page-title .title,
.woocommerce-page .wd-page-title .entry-title {
	color: #1B2D4F !important;
	font-size: 34px !important;
	letter-spacing: 1px;
	text-transform: uppercase;
	margin-bottom: 18px;
}
/* 排序下拉框: 浅灰边框小型框 */
.woocommerce-page .woocommerce-ordering { margin-bottom: 18px; }
.woocommerce-page .woocommerce-ordering select.orderby,
.woocommerce-page select.orderby,
.woocommerce-page .wd-ordering .orderby {
	border: 1px solid #D9E0EA !important;
	border-radius: 8px !important;
	padding: 8px 30px 8px 12px !important;
	font-size: 13px; color: #1B2D4F;
	background-color: #F8FAFC;
	height: auto;
}
/* 商品卡片: 白底 + 浅灰边 + 圆角 + 内边距 */
.woocommerce-page .wd-product .product-wrapper {
	background: #fff;
	border: 1px solid #E5E9F0;
	border-radius: 12px;
	padding: 14px;
	height: 100%;
	display: flex; flex-direction: column;
	transition: box-shadow .15s ease, border-color .15s ease;
}
.woocommerce-page .wd-product:hover .product-wrapper {
	border-color: #C7D5EC;
	box-shadow: 0 6px 20px rgba(27, 45, 79, .08);
}
/* 图片居中 */
.woocommerce-page .wd-product .product-element-top { text-align: center; }
.woocommerce-page .wd-product .product-element-top .product-image-link img { margin: 0 auto; }
/* 名称 + 型号 (型号已含在名称中) 放图片下方 */
.woocommerce-page .wd-product .product-element-bottom { display: flex; flex-direction: column; flex: 1 1 auto; }
.woocommerce-page .wd-product .wd-entities-title { font-size: 15px; line-height: 1.4; margin: 12px 0 10px; }
.woocommerce-page .wd-product .wd-entities-title a { color: #1B2D4F; }
/* ADD TO LIST (YITH 询价) 按钮: 深蓝实心 + 占满 + 购物车图标, 顶到底对齐 */
/* 作用域含商店/分类页 (.woocommerce-page) + 首页 wd_products 组件 (.wd-products-element / .elementor-widget-wd_products) */
.woocommerce-page .wd-product .yith-ywraq-add-to-quote,
.wd-products-element .wd-product .yith-ywraq-add-to-quote,
.elementor-widget-wd_products .wd-product .yith-ywraq-add-to-quote { margin-top: auto; }
.woocommerce-page .wd-product .yith-ywraq-add-to-quote .add-request-quote-button,
.wd-products-element .wd-product .yith-ywraq-add-to-quote .add-request-quote-button,
.elementor-widget-wd_products .wd-product .yith-ywraq-add-to-quote .add-request-quote-button {
	display: flex !important; align-items: center; justify-content: center;
	width: 100%;
	background-color: #1B2D4F !important; color: #fff !important;
	border: none !important; border-radius: 8px !important;
	padding: 12px 14px !important;
	font-weight: 700; font-size: 13px; letter-spacing: .4px; text-transform: uppercase;
	transition: background-color .15s ease;
}
.woocommerce-page .wd-product .yith-ywraq-add-to-quote .add-request-quote-button::before,
.wd-products-element .wd-product .yith-ywraq-add-to-quote .add-request-quote-button::before,
.elementor-widget-wd_products .wd-product .yith-ywraq-add-to-quote .add-request-quote-button::before {
	content: ""; display: inline-block; width: 16px; height: 16px; margin-right: 8px;
	background: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23ffffff'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Ccircle%20cx%3D'9'%20cy%3D'21'%20r%3D'1'%2F%3E%3Ccircle%20cx%3D'20'%20cy%3D'21'%20r%3D'1'%2F%3E%3Cpath%20d%3D'M1%201h4l2.68%2013.39a2%202%200%200%200%202%201.61h9.72a2%202%200%200%200%202-1.61L23%206H6'%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
}
.woocommerce-page .wd-product .yith-ywraq-add-to-quote .add-request-quote-button:hover,
.wd-products-element .wd-product .yith-ywraq-add-to-quote .add-request-quote-button:hover,
.elementor-widget-wd_products .wd-product .yith-ywraq-add-to-quote .add-request-quote-button:hover {
	background-color: #142544 !important;
}

/* ── YITH "已在清单"状态修复 (2026-06-07) ──
   加入清单后 YITH 渲染 .yith_ywraq_add_item_response_message (提示文字) +
   .yith_ywraq_add_item_browse_message > a (Browse 按钮)，原本无任何布局 CSS → 与按钮重叠错位。
   作用域 .yith-ywraq-add-to-quote，首页 wd_products 与商店/分类页通用。 */
.yith-ywraq-add-to-quote {
	display: flex !important; flex-direction: column; align-items: stretch; gap: 8px; margin-top: auto;
}
.yith-ywraq-add-to-quote .yith_ywraq_add_item_response_message {
	position: static !important; top: auto !important; left: auto !important; float: none !important;
	width: auto; margin: 0; padding: 0;
	font-size: 13px; line-height: 1.4; text-align: center; color: #6B7280;
}
.yith-ywraq-add-to-quote .yith_ywraq_add_item_browse_message {
	position: static !important; top: auto !important; left: auto !important; float: none !important;
	width: auto; margin: 0; padding: 0;
}
/* 隐藏空的重复 <a>(YITH 模板把 label 包进 <a> 时若 label 含 <a> 会拆出一个空 <a>);源头已改纯文字 label, 此为兜底 */
.yith-ywraq-add-to-quote .yith_ywraq_add_item_browse_message a:empty { display: none !important; }
/* Browse the list 按钮 = 和 ADD TO QUOTE 同款 navy (强制覆盖 YITH #0066b4 内联/生成样式) */
.yith-ywraq-add-to-quote .yith_ywraq_add_item_browse_message a {
	display: flex !important; align-items: center; justify-content: center; width: 100%;
	background: #1B2D4F !important; background-color: #1B2D4F !important; color: #fff !important;
	border: none !important; border-radius: 8px !important; padding: 12px 14px !important;
	font-weight: 700; font-size: 13px; letter-spacing: .4px; text-transform: uppercase;
	text-decoration: none !important; line-height: 1.2;
}
.yith-ywraq-add-to-quote .yith_ywraq_add_item_browse_message a:hover { background: #142544 !important; background-color: #142544 !important; }
/* 已在清单状态: 强制隐藏残留的原 ADD TO QUOTE 按钮。
   AJAX 加入后 YITH 用内联 display:none(无 !important)隐藏它, 但上面的 navy 按钮规则带 !important 会把它强制显示成空灰条。
   出现 已在清单提示/Browse 时 → 隐藏整个 .yith-ywraq-add-button 容器。 */
.yith-ywraq-add-to-quote:has(.yith_ywraq_add_item_browse_message) .yith-ywraq-add-button,
.yith-ywraq-add-to-quote:has(.yith_ywraq_add_item_response_message) .yith-ywraq-add-button { display: none !important; }


/* ════════════════════════════════════════════════════════════
   单品页 (Woodmart single product) 现代企业风改造 — 2026-06-03
   作用域: .single-product (body) + .elementor-29133 (ABOUT/CONTACT/SEND 共享 CMS block)
   配套 functions.php: 注入 .ys-spec-table + .ys-single-quote, 纯询价隐藏价格/加购。
   色系: 深蓝 #1B2D4F 主色, 红 #D81E27 强调, 白/浅灰背景。详见 templates/single-product-css/。
   真实 DOM 已 dump (gallery .wd-gallery-thumb thumbs-position-left / tabs .wd-nav-tabs /
   block 29133 两列 col-50: 左 58e1701c 公司介绍, 右 4ba3eed8 表单)。
   ════════════════════════════════════════════════════════════ */

/* ── A. 顶部三栏: 竖向缩略图 + 主图 + 右信息 ── */
.single-product .wd-gallery-thumb .wd-carousel-item img {
	border: 1px solid #E5E9F0; border-radius: 8px; padding: 4px; background: #fff;
	transition: border-color .15s ease;
}
.single-product .wd-gallery-thumb .wd-carousel-item.wd-active img,
.single-product .wd-gallery-thumb .wd-carousel-item:hover img { border-color: #1B2D4F; }
.single-product .wd-gallery-images figure.woocommerce-product-gallery__wrapper {
	background: #fff; border: 1px solid #EDF1F6; border-radius: 12px;
}
.single-product .wd-gallery-images .woocommerce-product-gallery__image img { margin: 0 auto; }

/* ── B. 产品标题: 深蓝 + 大字号 + 间距 ── */
.single-product .product_title.entry-title {
	color: #1B2D4F !important; font-size: 28px !important; font-weight: 700;
	line-height: 1.25; letter-spacing: .3px; margin-bottom: 18px;
}

/* ── C. 产品参数表 (functions.php 注入) ── */
.single-product .ys-spec-table {
	width: 100%; border-collapse: separate; border-spacing: 0;
	border: 1px solid #E5E9F0; border-radius: 10px; overflow: hidden;
	margin: 0 0 20px; font-size: 13px;
}
.single-product .ys-spec-table tr:not(:last-child) th,
.single-product .ys-spec-table tr:not(:last-child) td { border-bottom: 1px solid #EDF1F6; }
.single-product .ys-spec-table th {
	text-align: left; width: 38%; white-space: nowrap;
	background: #F5F7FA; color: #5B6675; font-weight: 600;
	padding: 10px 14px; border-right: 1px solid #EDF1F6;
}
.single-product .ys-spec-table td { padding: 10px 14px; color: #1B2D4F; font-weight: 600; }

/* ── C2. ADD TO QUOTE 主按钮 (参数表下方, 深蓝实心 + 购物车图标 + 占满) ── */
.single-product .ys-single-quote { margin: 0 0 10px; }
.single-product .ys-single-quote .add-request-quote-button {
	display: flex !important; align-items: center; justify-content: center; width: 100%;
	background-color: #1B2D4F !important; color: #fff !important;
	border: none !important; border-radius: 10px !important; padding: 15px 20px !important;
	font-weight: 700; font-size: 15px; letter-spacing: .5px; text-transform: uppercase;
	transition: background-color .15s ease, transform .1s ease;
}
.single-product .ys-single-quote .add-request-quote-button::before {
	content: ""; display: inline-block; width: 18px; height: 18px; margin-right: 10px;
	background: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23ffffff'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Ccircle%20cx%3D'9'%20cy%3D'21'%20r%3D'1'%2F%3E%3Ccircle%20cx%3D'20'%20cy%3D'21'%20r%3D'1'%2F%3E%3Cpath%20d%3D'M1%201h4l2.68%2013.39a2%202%200%200%200%202%201.61h9.72a2%202%200%200%200%202-1.61L23%206H6'%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
}
.single-product .ys-single-quote .add-request-quote-button:hover { background-color: #142544 !important; transform: translateY(-1px); }
/* 纯询价: 兜底隐藏可能残留的价格/加购空壳 */
.single-product .summary .price,
.single-product .summary > form.cart,
.single-product .summary .wd-add-btn:empty { display: none !important; }

/* ── D. DESCRIPTION 选项卡: 居中标题 + 蓝色短下划线 + 限宽居中正文 ── */
.single-product .woocommerce-tabs .wd-nav-tabs { justify-content: center; border: none; }
.single-product .woocommerce-tabs .wd-nav-tabs .wd-nav-link {
	text-transform: uppercase; font-weight: 700; color: #1B2D4F !important;
	font-size: 18px; letter-spacing: .5px; position: relative;
}
.single-product .woocommerce-tabs .wd-nav-tabs li.active .wd-nav-link::after {
	content: ""; position: absolute; left: 50%; bottom: -8px; transform: translateX(-50%);
	width: 48px; height: 3px; background: #1B2D4F; border-radius: 2px;
}
.single-product .woocommerce-Tabs-panel--description .wc-tab-inner {
	max-width: 860px; margin: 26px auto 0; text-align: center;
}
.single-product .woocommerce-Tabs-panel--description .wc-tab-inner p { font-size: 14px; line-height: 1.8; color: #44505F; }
.single-product .woocommerce-Tabs-panel--description .wc-tab-inner h2 { color: #1B2D4F; font-size: 20px; }

/* ── E. ABOUT/CONTACT/SEND → 深蓝大卡片 (block 29133) ── */
.elementor-29133 .elementor-element-6f2f8983 {
	background: linear-gradient(135deg, #1B2D4F 0%, #16243F 100%);
	border-radius: 16px; padding: 44px 40px; margin: 40px 0;
}
/* 左列文字转白 */
.elementor-29133 .elementor-element-58e1701c .title-wrapper .title,
.elementor-29133 .elementor-element-58e1701c p,
.elementor-29133 .elementor-element-58e1701c .wd-infobox,
.elementor-29133 .elementor-element-58e1701c .wd-infobox * { color: #fff !important; }
/* bordered 标题下划线 → 红色强调 */
.elementor-29133 .elementor-element-58e1701c .wd-title-style-bordered .title::after,
.elementor-29133 .elementor-element-58e1701c .wd-title-style-bordered .title::before { background-color: #D81E27 !important; border-color: #D81E27 !important; }
/* 右列: 白色表单卡片 */
.elementor-29133 .elementor-element-4ba3eed8 {
	background: #fff; border-radius: 14px; padding: 28px 26px;
}
.elementor-29133 .elementor-element-4ba3eed8 .title-wrapper .title { color: #1B2D4F !important; }
/* 表单: 浅灰输入 + 深蓝按钮 + 纸飞机 */
.elementor-29133 .elementor-form .elementor-field-textual {
	background: #F5F7FA !important; border: 1px solid #E5E9F0 !important; border-radius: 8px !important;
	min-height: 44px; box-shadow: none !important;
}
.elementor-29133 .elementor-form textarea.elementor-field-textual { min-height: 120px; }
.elementor-29133 .elementor-form .elementor-button {
	width: 100%; display: flex; align-items: center; justify-content: center;
	background-color: #1B2D4F !important; border: none !important; border-radius: 8px !important;
	min-height: 48px; font-weight: 700; letter-spacing: .4px;
}
.elementor-29133 .elementor-form .elementor-button .elementor-button-content-wrapper::before {
	content: ""; display: inline-block; width: 16px; height: 16px; margin-right: 8px;
	background: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23ffffff'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cline%20x1%3D'22'%20y1%3D'2'%20x2%3D'11'%20y2%3D'13'%2F%3E%3Cpolygon%20points%3D'22%202%2015%2022%2011%2013%202%209%2022%202'%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
}
.elementor-29133 .elementor-form .elementor-button:hover { background-color: #142544 !important; }

/* ── F. RELATED PRODUCTS / UPSELLS: 标题左侧红短线 (卡片样式复用 .woocommerce-page .wd-product) ── */
.single-product .related.products > h2,
.single-product .up-sells > h2 {
	position: relative; text-transform: uppercase; color: #1B2D4F;
	font-size: 22px; letter-spacing: .5px; padding-left: 52px;
}
.single-product .related.products > h2::before,
.single-product .up-sells > h2::before {
	content: ""; position: absolute; left: 0; top: 50%; transform: translateY(-50%);
	width: 40px; height: 3px; background: #D81E27; border-radius: 2px;
}

/* ── G. 2026-06-06 修复 ──
   G1: 单品页 summary 里如果出现 .ys-single-quote 之外的 yith-ywraq-add-to-quote (YITH 动态注册的 p=35 兜底),
       全部 display:none, 只保留 .ys-single-quote 包裹的那一个 (functions.php 已用 remove_action 处理,
       此处 CSS 兜底防止漏网, e.g. YITH plugin 升级后改变 hook 注册方式)
   G2: block 29133 左列 wd_infobox 内的 <span style="color: #333333"><strong>Email/Phone/Address</strong></span>
       inline style 写死了深灰, 在深蓝底上看不清, 强力覆盖成白色 */
.single-product .summary > .yith-ywraq-add-to-quote,
.single-product .summary .ys-single-quote ~ .yith-ywraq-add-to-quote {
	display: none !important;
}
.elementor-29133 .elementor-element-58e1701c [style*="333"],
.elementor-29133 .elementor-element-58e1701c [style*="#333"],
.elementor-29133 .elementor-element-58e1701c .wd-infobox span,
.elementor-29133 .elementor-element-58e1701c .wd-infobox strong,
.elementor-29133 .elementor-element-58e1701c .info-box-content *,
.elementor-29133 .elementor-element-58e1701c .info-box-text * {
	color: #fff !important;
}

/* ════════════════════════════════════════════════════════════
   单品页 描述 tab (#tab-description) 美化 — 2026-06-09
   内容是统一 HTML(h2 + p + ul)。覆盖默认居中 → 左对齐 + 红竖条小标题。
   Specifications 是唯一"紧跟 h2 的 ul"(其它列表前面都有 <p>),
   用 #tab-description h2 + ul 精准命中 → 隔行细线规格表(label 左 / 值 右)。
   纯 CSS, 所有产品统一生效。
   ════════════════════════════════════════════════════════════ */
#tab-description { max-width: 900px; margin: 0 auto; }
#tab-description,
#tab-description p,
#tab-description li,
#tab-description h2,
#tab-description h3 { text-align: left !important; }
#tab-description h2 {
	color: #15314D; font-size: 20px; font-weight: 700; text-transform: none;
	margin: 30px 0 14px; padding-left: 14px; border-left: 4px solid #E63946; line-height: 1.3;
}
#tab-description h2:first-child { margin-top: 6px; }
#tab-description p { color: #4A5568; font-size: 15px; line-height: 1.8; margin: 0 0 14px; }
#tab-description a { color: #E63946; text-decoration: underline; }
#tab-description a:hover { color: #B8003F; }
/* 普通列表 (Compatible Vehicles / Shipping) → 红点缩进 */
#tab-description ul { list-style: disc; padding-left: 22px; margin: 0 0 20px; max-width: 760px; }
#tab-description ul li { color: #4A5568; font-size: 15px; line-height: 1.75; margin: 5px 0; }
#tab-description ul li::marker { color: #E63946; }
#tab-description ul li strong { color: #15314D; font-weight: 700; }
/* Specifications = h2 紧跟的 ul → 隔行细线规格表 */
#tab-description h2 + ul {
	list-style: none; padding: 0; margin: 4px 0 22px; max-width: 640px;
	border: 1px solid #E5E9F0; border-radius: 10px; overflow: hidden;
}
#tab-description h2 + ul li {
	display: flex; justify-content: space-between; align-items: baseline; gap: 24px;
	padding: 11px 16px; margin: 0; border-bottom: 1px solid #EEF1F6;
	color: #4A5568; font-size: 14.5px; line-height: 1.5;
}
#tab-description h2 + ul li:nth-child(even) { background: #F8FAFC; }
#tab-description h2 + ul li:last-child { border-bottom: none; }
#tab-description h2 + ul li::marker { content: ""; }
#tab-description h2 + ul li strong { color: #15314D; font-weight: 700; flex: 0 0 auto; }
