/* ============================================================
   RGB Hair — 产品页样式增强（Additional CSS，全局生效）
   信任条 + WooCommerce 默认元素美化 + 产品详情描述模板兜底
   ============================================================ */

:root {
  --rgb-pp-orange: #f08c2e;
  --rgb-pp-orange-dark: #d9781c;
  --rgb-pp-dark: #1a1208;
  --rgb-pp-gray: #f7f7f7;
  --rgb-pp-border: #e5e5e5;
  --rgb-pp-text: #333;
  --rgb-pp-text-light: #666;
  --rgb-pp-green: #46b450;
}

/* ===== 信任条 ===== */
.rgb-pp-trust-row {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  font-size: 12px;
  color: var(--rgb-pp-text-light);
  margin: 16px 0;
}
.rgb-pp-trust-item {
  display: flex;
  align-items: center;
  gap: 6px;
}
.rgb-pp-trust-item svg { width: 18px; height: 18px; }

/* ===== 美化 WooCommerce 默认元素（Astra 产品页）===== */

/* 价格放大 + 品牌橙 */
.single-product div.product .price {
  color: var(--rgb-pp-orange);
  font-size: 26px;
  font-weight: 800;
}
.single-product div.product .price del {
  color: var(--rgb-pp-text-light);
  font-size: 18px;
  font-weight: 500;
}

/* 加购按钮改品牌橙 */
.single-product div.product button.button.alt,
.single-product div.product .single_add_to_cart_button {
  background: var(--rgb-pp-orange);
  color: #fff;
  border-radius: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .5px;
  padding: 14px 24px;
  transition: background .2s;
}
.single-product div.product button.button.alt:hover,
.single-product div.product .single_add_to_cart_button:hover {
  background: var(--rgb-pp-orange-dark);
}

/* 变体按钮（Size）圆角化 */
.single-product div.product .variations .variable-items-wrapper .variable-item {
  border-radius: 8px;
  border: 1.5px solid var(--rgb-pp-border);
}
.single-product div.product .variations .variable-items-wrapper .variable-item.selected {
  border-color: var(--rgb-pp-orange);
  background: #fff3e6;
  color: var(--rgb-pp-orange-dark);
}

/* 图库 Sale 角标改绿 + 圆角 */
.woocommerce-product-gallery .onsale,
.single-product span.onsale {
  background: var(--rgb-pp-green);
  border-radius: 20px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  padding: 6px 12px;
}

/* 标题间距 */
.single-product div.product .product_title {
  line-height: 1.25;
  margin-bottom: 10px;
}

/* ============================================================
   产品详情描述统一模板样式（全局 Additional CSS 兜底）
   前缀 .rgb-pd- 。即使只把 HTML 粘贴进产品描述，也能保证 3×3 网格、CTA 等生效。
   ============================================================ */
.rgb-pd-wrap {
  --rgb-pd-orange: #f08c2e;
  --rgb-pd-dark: #18120c;
  --rgb-pd-line: #e7ded2;
  --rgb-pd-text: #3a322a;
  --rgb-pd-muted: #8a8076;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', 'Microsoft YaHei', sans-serif;
  color: var(--rgb-pd-text);
  line-height: 1.7;
  margin: 8px 0 0;
}
.rgb-pd-wrap *, .rgb-pd-wrap *::before, .rgb-pd-wrap *::after { box-sizing: border-box; }
.rgb-pd-wrap a { color: var(--rgb-pd-orange); text-decoration: none; }
.rgb-pd-wrap a:hover { text-decoration: underline; }
.rgb-pd-h2 {
  font-size: 20px; font-weight: 800; color: var(--rgb-pd-dark);
  margin: 30px 0 14px; padding-bottom: 8px;
  border-bottom: 2px solid var(--rgb-pd-orange);
  display: inline-block;
}

/* FEATURES 卖点：3×3 网格，强制覆盖 */
.rgb-pd-features {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 18px !important;
  margin: 0 0 6px !important;
}
.rgb-pd-feature {
  display: flex; align-items: flex-start; gap: 12px;
  background: #faf7f2; border: 1px solid var(--rgb-pd-line);
  border-radius: 12px; padding: 14px 14px;
}
.rgb-pd-feature .ic {
  position: relative;
  flex-shrink: 0; width: 42px; height: 42px;
  background: #fff; border: 1px solid var(--rgb-pd-line); border-radius: 50%;
}
/* 纯 CSS 勾号：不依赖 data-URI，彻底避免 WordPress 过滤 / base64 二次编码问题 */
.rgb-pd-feature .ic::after {
  content: "";
  position: absolute;
  left: 15px; top: 11px;
  width: 9px; height: 16px;
  border: solid var(--rgb-pd-orange);
  border-width: 0 3px 3px 0;
  transform: rotate(45deg);
  box-sizing: content-box;
}
.rgb-pd-feature .txt { flex: 1; min-width: 0; }
.rgb-pd-feature .t { font-size: 14px; font-weight: 700; color: var(--rgb-pd-dark); line-height: 1.35; }
.rgb-pd-feature .d { font-size: 13px; color: var(--rgb-pd-muted); line-height: 1.45; margin-top: 2px; }

/* 参数表 */
.rgb-pd-specs {
  display: grid; grid-template-columns: 1fr 1fr; gap: 0 28px;
  border: 1px solid var(--rgb-pd-line); border-radius: 12px; overflow: hidden;
}
.rgb-pd-spec {
  display: flex; justify-content: space-between; gap: 12px;
  padding: 11px 16px; border-bottom: 1px solid var(--rgb-pd-line);
  font-size: 14px;
}
.rgb-pd-spec:nth-child(odd) { background: #faf7f2; }
.rgb-pd-spec .k { color: var(--rgb-pd-muted); flex-shrink: 0; }
.rgb-pd-spec .v { font-weight: 600; color: var(--rgb-pd-dark); text-align: right; }

/* 适用场景 */
.rgb-pd-scenes { display: flex; flex-wrap: wrap; gap: 12px; }
.rgb-pd-scene {
  display: flex; align-items: center; gap: 10px;
  background: #faf7f2; border: 1px solid var(--rgb-pd-line);
  border-radius: 12px; padding: 14px 16px; flex: 1 1 200px;
}
.rgb-pd-scene .badge {
  font-size: 11px; font-weight: 800; letter-spacing: .5px; text-transform: uppercase;
  color: #fff; border-radius: 20px; padding: 4px 11px; flex-shrink: 0;
}
.rgb-pd-scene.primary .badge { background: var(--rgb-pd-orange); }
.rgb-pd-scene.also .badge { background: #8a8076; }
.rgb-pd-scene.care .badge { background: #d7cec4; color: #5a5046; }
.rgb-pd-scene .txt { font-size: 13.5px; color: var(--rgb-pd-text); }
.rgb-pd-scene .txt b { color: var(--rgb-pd-dark); }

/* 推荐理由 */
.rgb-pd-why {
  background: #fff8f0; border-left: 4px solid var(--rgb-pd-orange);
  border-radius: 8px; padding: 16px 18px; font-size: 15px;
}
.rgb-pd-why p { margin: 0 0 8px; }
.rgb-pd-why p:last-child { margin-bottom: 0; }
.rgb-pd-why strong { color: var(--rgb-pd-dark); }

/* 护理提示 */
.rgb-pd-care {
  background: #f3f8f3; border: 1px solid #cfe3cf; border-radius: 12px; padding: 16px 18px;
  font-size: 14px;
}
.rgb-pd-care ul { margin: 8px 0 0; padding-left: 20px; }
.rgb-pd-care li { margin-bottom: 7px; }
.rgb-pd-care .hl { color: #2f7d32; font-weight: 700; }

/* Shipping & Returns */
.rgb-pd-shipping {
  background: #faf7f2; border: 1px solid var(--rgb-pd-line);
  border-radius: 12px; padding: 16px 18px; font-size: 14px;
}
.rgb-pd-shipping ul { margin: 8px 0 0; padding-left: 20px; }
.rgb-pd-shipping li { margin-bottom: 6px; }
.rgb-pd-shipping .more { margin-top: 12px; font-size: 13.5px; }

/* CTA 引导 */
.rgb-pd-cta {
  margin-top: 26px !important; padding: 18px 20px !important; border-radius: 12px !important;
  background: var(--rgb-pd-dark); color: #e8e0d6; text-align: center; font-size: 14.5px;
}
.rgb-pd-cta p { margin: 0 0 10px; }
.rgb-pd-cta a {
  display: inline-block; margin-top: 10px; background: var(--rgb-pd-orange); color: #1a1208;
  font-weight: 700; padding: 10px 20px; border-radius: 8px; text-decoration: none;
}
.rgb-pd-cta a:hover { background: #d9781c; text-decoration: none; }

/* 响应式 */
@media (max-width: 768px) {
  .rgb-pd-features { grid-template-columns: repeat(2, 1fr) !important; }
  .rgb-pd-specs { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .rgb-pd-features { grid-template-columns: 1fr !important; }
}


/* ============================================================
   RGB HAIR - 女士接发 (Women V2) 完整样式表
   ------------------------------------------------------------
   用途：整体替换 WordPress 后台「外观 -> 自定义 -> Additional CSS」
         中的「女士接发」部分（删掉旧段落，粘贴本文件全部内容）。
   操作：在 Additional CSS 中找到女士接发相关段落（含此前 patch /
         delta / fullfix 残留），整段删除，粘贴本文件内容并发布。
   范围：仅女士接发所需样式 + 必要变量兜底 + 共用类女士化覆盖。
         完全不含男士发块任何定义，替换不影响男士 26 款页面。
   已修复：变量直接写色值（避免黑边）、Care 米色、Don't 红色、
         .ic 用字符勾（关闭旧伪元素勾，杜绝双勾）、.dot 橙点。
   ============================================================ */

/* ① 变量兜底：提升到 :root，确保女士页任何结构都能正确取色 */
:root {
  --rgb-pd-orange: #f08c2e;
  --rgb-pd-dark: #18120c;
  --rgb-pd-line: #e7ded2;
  --rgb-pd-text: #3a322a;
  --rgb-pd-muted: #8a8076;
}

/* ② 共用类女士化覆盖（覆盖男士 V3 的浅绿底，统一为女士 v2 米色 + 橙边） */
.rgb-pd-care {
  background: #faf7f2;
  border: 1px solid #f08c2e;
  border-left: 4px solid #f08c2e;
  border-radius: 12px;
  padding: 16px 18px;
  font-size: 14px;
  line-height: 1.7;
}
.rgb-pd-care ul { margin: 0; padding-left: 22px; }
.rgb-pd-care li { margin-bottom: 6px; }
.rgb-pd-care .warn { color: #c0392b; font-weight: 700; }
.rgb-pd-care .hl { color: #2f7d32; font-weight: 700; }

/* ③ 兜底：关闭任何旧补丁残留的 .ic::after 伪元素勾（防与字符勾叠加成双勾）
   用 all:unset 彻底重置伪元素：清掉 content/border/position/width/height/transform 等所有设置
   即便旧补丁定义了五花八门的伪元素样式，也会被压成空白 */
.rgb-pd-benefit .ic::before,
.rgb-pd-benefit .ic::after,
.rgb-pd-feature .ic::before,
.rgb-pd-feature .ic::after {
  all: unset !important;
  content: '' !important;
}

/* ④ Key Features 对号 + Recommended 橙点：直接色值，不依赖 var */
.rgb-pd-benefit .ic {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  background: #fff;
  border: 2px solid #f08c2e;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #f08c2e;
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
}
.rgb-pd-rec-item .dot {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #f08c2e;
  flex-shrink: 0;
  margin: 2px 6px 0 0;
}

/* ===== ⑤ 女士接发专属区块（完整，自包含，变量已内联为色值） =====
   女士接发专属区块（与男士 .rgb-pd- 体系共用视觉变量）
   ============================================================ */

/* 产品介绍 */
.rgb-pd-intro {
  background: #fff8f0; border-left: 4px solid #f08c2e;
  border-radius: 8px; padding: 16px 18px; font-size: 15px;
}
.rgb-pd-intro p { margin: 0 0 10px; }
.rgb-pd-intro p:last-of-type { margin-bottom: 0; }
.rgb-pd-intro ul { margin: 4px 0 0; padding-left: 20px; }
.rgb-pd-intro li { margin-bottom: 6px; }

/* 为何选择（Why Choose 区块：橙边提示框，自包含，变量内联为色值） */
.rgb-pd-why { background: #fff8f0; border-left: 4px solid #f08c2e; border-radius: 8px; padding: 16px 18px; font-size: 14.5px; line-height: 1.7; }
.rgb-pd-why h3 { margin: 0 0 10px; font-size: 16px; font-weight: 800; color: #18120c; }
.rgb-pd-why ul { margin: 0; padding-left: 22px; }
.rgb-pd-why li { margin-bottom: 7px; }
.rgb-pd-why strong { color: #18120c; }

/* 核心卖点卡片（女士用 2×2 / 4 个） */
.rgb-pd-benefits {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 16px !important;
  margin: 0 0 6px !important;
}
.rgb-pd-benefit {
  display: flex; align-items: flex-start; gap: 12px;
  background: #faf7f2; border: 1px solid #e7ded2;
  border-radius: 12px; padding: 14px 16px;
}
.rgb-pd-benefit .ic {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  background: #fff;
  border: 2px solid #f08c2e;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #f08c2e;
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
}
.rgb-pd-benefit .txt { flex: 1; min-width: 0; }
.rgb-pd-benefit .t { font-size: 14.5px; font-weight: 700; color: #18120c; line-height: 1.35; }
.rgb-pd-benefit .d { font-size: 13px; color: #8a8076; line-height: 1.45; margin-top: 2px; }

/* 推荐人群 */
.rgb-pd-rec { display: flex; flex-wrap: wrap; gap: 12px; }
.rgb-pd-rec-item {
  display: flex; align-items: center; gap: 10px;
  background: #faf7f2; border: 1px solid #e7ded2;
  border-radius: 12px; padding: 12px 16px; flex: 1 1 220px; font-size: 14px;
}
.rgb-pd-rec-item .dot {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #f08c2e;
  flex-shrink: 0;
  margin: 2px 6px 0 0;
}
.rgb-pd-rec-item b { color: #18120c; }

/* 发质对比 Remy vs Virgin */
.rgb-pd-compare { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 0 0 14px; }
.rgb-pd-compare-col { border: 1px solid #e7ded2; border-radius: 12px; overflow: hidden; background: #fff; }
.rgb-pd-compare-col h3 { margin: 0; padding: 12px 16px; font-size: 15px; font-weight: 800; color: #fff; background: #f08c2e; text-align: center; }
.rgb-pd-compare-col.alt h3 { background: #18120c; }
.rgb-pd-compare-col ul { margin: 0; padding: 14px 16px 14px 34px; font-size: 13.5px; }
.rgb-pd-compare-col li { margin-bottom: 7px; }
.rgb-pd-compare-note { background: #fff8f0; border-left: 4px solid #f08c2e; border-radius: 8px; padding: 14px 18px; font-size: 14.5px; margin-top: 4px; }
.rgb-pd-compare-note b { color: #18120c; }

/* 备注（颜色差异 + 退货，女士接发固化 15 天退，与男士发块一致） */
.rgb-pd-remarks { background: #faf7f2; border: 1px solid #e7ded2; border-radius: 12px; padding: 16px 18px; font-size: 14px; }
.rgb-pd-remarks h3 { margin: 0 0 8px; font-size: 15px; font-weight: 800; color: #18120c; }
.rgb-pd-remarks p { margin: 0 0 10px; }
.rgb-pd-remarks p:last-child { margin-bottom: 0; }
.rgb-pd-remarks .hl { color: #f08c2e; font-weight: 700; }
.rgb-pd-remarks .more { margin-top: 12px; font-size: 13.5px; }

/* 上手教程 / 应用步骤（参考高端接发页结构新增；按 type 参数化内容） */
.rgb-pd-steps { display: grid; gap: 14px; margin: 0 0 6px; }
.rgb-pd-step {
  display: flex; align-items: flex-start; gap: 14px;
  background: #faf7f2; border: 1px solid #e7ded2;
  border-radius: 12px; padding: 14px 16px;
}
.rgb-pd-step .num {
  flex-shrink: 0; width: 30px; height: 30px; border-radius: 50%;
  background: #f08c2e; color: #1a1208; font-weight: 800;
  display: flex; align-items: center; justify-content: center; font-size: 14px;
}
.rgb-pd-step .txt { flex: 1; min-width: 0; }
.rgb-pd-step .t { font-size: 14.5px; font-weight: 700; color: #18120c; line-height: 1.35; }
.rgb-pd-step .d { font-size: 13.5px; color: #8a8076; line-height: 1.5; margin-top: 2px; }

/* Classic Tape-In vs Injected Tape-In 对比模块（Classic Tape-In 系列专属）
   grid 内含 2 个产品卡片 + 1 个全宽选择建议 note；左右两栏顶部 4px 横条色区分 */
.rgb-pd-vs {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 16px !important;
  margin: 0 0 28px !important;
}
.rgb-pd-vs-col {
  background: #fff !important;
  border: 1px solid #e7ded2 !important;
  border-top: 4px solid #f08c2e !important;
  border-radius: 12px !important;
  padding: 18px 20px !important;
}
.rgb-pd-vs-col.alt { border-top-color: #18120c !important; }
.rgb-pd-vs-col h3 {
  margin: 0 0 12px !important;
  font-size: 17px !important;
  font-weight: 800 !important;
  color: #18120c !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
.rgb-pd-vs-col h3::before {
  content: '' !important;
  display: inline-block !important;
  width: 10px !important;
  height: 10px !important;
  border-radius: 50% !important;
  background: #f08c2e !important;
  flex-shrink: 0 !important;
}
.rgb-pd-vs-col.alt h3::before { background: #18120c !important; }
.rgb-pd-vs-tag {
  display: inline-block !important;
  margin: 0 0 12px !important;
  padding: 5px 12px !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  color: #fff !important;
  background: #f08c2e !important;
  border-radius: 4px !important;
  letter-spacing: 0.3px !important;
}
.rgb-pd-vs-col.alt .rgb-pd-vs-tag { background: #18120c !important; }
.rgb-pd-vs-col p {
  margin: 0 !important;
  font-size: 13.5px !important;
  color: #3a322a !important;
  line-height: 1.65 !important;
}
.rgb-pd-vs-note {
  grid-column: 1 / -1 !important;
  background: #fff8f0 !important;
  border-left: 4px solid #f08c2e !important;
  border-radius: 8px !important;
  padding: 14px 18px !important;
  font-size: 14.5px !important;
  color: #3a322a !important;
  line-height: 1.65 !important;
  margin: 0 !important;
}
.rgb-pd-vs-note b { color: #18120c !important; }

/* vs 模块产品图位（每栏 1 张，上传后把占位 div 替换为 <img src="...">） */
.rgb-pd-vs-img {
  margin: 0 0 14px;
  aspect-ratio: 4 / 3;
  border: 2px dashed #d9cdbb;
  border-radius: 10px;
  background: #faf7f2;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #8a8076;
  font-size: 13px;
  text-align: center;
  padding: 10px;
  overflow: hidden;
}
.rgb-pd-vs-img img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  border-radius: 6px;
  object-fit: contain;
}

/* 4 列对比（pre-bonded 家族：I-Tip / Flat Tip / MicroLink / Nano Tip） */
.rgb-pd-vs.cols-4 {
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 12px !important;
}

/* 3 列对比（Tape Weft vs Tape-In vs Weft） */
.rgb-pd-vs.cols-3 {
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 12px !important;
}

/* 响应式：窄屏 vs 改单列 */
@media (max-width: 920px) {
  .rgb-pd-vs.cols-4 { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 768px) {
  .rgb-pd-vs { grid-template-columns: 1fr !important; }
}
@media (max-width: 560px) {
  .rgb-pd-vs.cols-4 { grid-template-columns: 1fr !important; }
}

/* ============================================================
   女士接发 — 分类集合页 (Collection Pages)
   用于 Tape-In / Clip-In / Weft / Pre-Bonded / All 集合页
   复用橙色视觉系统，纯 flat 填色，无阴影/渐变。
   ============================================================ */
.rgb-coll-hero { background: #faf6ef; border-bottom: 3px solid #f08c2e; padding: 30px 20px 24px; }
.rgb-coll-tag { display: inline-block; background: #f08c2e; color: #fff; font-size: 12px; font-weight: 700; letter-spacing: .1em; padding: 4px 11px; border-radius: 3px; margin-bottom: 12px; }
.rgb-coll-hero h1 { margin: 0 0 10px; font-size: 30px; line-height: 1.18; color: #18120c; }
.rgb-coll-hero p { margin: 0 0 18px; font-size: 15px; line-height: 1.65; color: #4a4138; max-width: 760px; }
.rgb-coll-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.rgb-coll-stat { background: #fff; border: 1px solid #e7ddcf; border-radius: 8px; padding: 11px 13px; }
.rgb-coll-stat .k { font-size: 11px; color: #8a7f70; text-transform: uppercase; letter-spacing: .03em; }
.rgb-coll-stat .v { font-size: 15px; font-weight: 700; margin-top: 3px; color: #18120c; }

.rgb-coll-sec { padding: 26px 20px 0; }
.rgb-coll-sec h2 { font-size: 22px; margin: 0 0 4px; color: #18120c; }
.rgb-coll-sec .sub { font-size: 13.5px; color: #8a7f70; margin: 0 0 18px; }

.rgb-coll-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.rgb-coll-card { background: #fff; border: 1px solid #e7ddcf; border-radius: 12px; overflow: hidden; display: flex; flex-direction: column; }
.rgb-coll-card-img { height: 172px; background: #efe2d0; display: flex; align-items: center; justify-content: center; color: #9c8a6f; font-size: 13px; font-weight: 600; overflow: hidden; }
.rgb-coll-card-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.rgb-coll-card-body { padding: 15px 15px 17px; display: flex; flex-direction: column; flex: 1; }
.rgb-coll-card-body h3 { margin: 0 0 5px; font-size: 16px; color: #18120c; }
.rgb-coll-card-tag { margin: 0 0 12px; font-size: 13px; color: #6b6258; line-height: 1.5; }
.rgb-coll-spec { font-size: 13px; color: #4a4138; line-height: 1.7; margin-bottom: 14px; }
.rgb-coll-spec .ic { color: #f08c2e; font-weight: 700; margin-right: 6px; }
.rgb-coll-btn { margin-top: auto; text-align: center; background: #f08c2e; color: #fff; text-decoration: none; font-weight: 700; font-size: 14px; padding: 11px; border-radius: 8px; display: block; }
.rgb-coll-btn:hover { background: #d97b22; }

.rgb-coll-choose { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.rgb-coll-choose-card { background: #fff; border: 1px solid #e7ddcf; border-left: 4px solid #f08c2e; border-radius: 8px; padding: 13px 15px; }
.rgb-coll-choose-card h4 { margin: 0 0 5px; font-size: 15px; color: #18120c; }
.rgb-coll-choose-card p { margin: 0; font-size: 13px; color: #6b6258; line-height: 1.5; }
.rgb-coll-choose-card b { color: #18120c; }

.rgb-coll-chips { display: flex; gap: 9px; flex-wrap: wrap; padding: 22px 20px 4px; }
.rgb-coll-chip { background: #fff; border: 1px solid #e7ddcf; color: #4a4138; font-size: 13px; padding: 8px 15px; border-radius: 20px; text-decoration: none; }
.rgb-coll-chip:hover { border-color: #f08c2e; color: #f08c2e; }
.rgb-coll-chip.active { background: #f08c2e; color: #fff; border-color: #f08c2e; }

.rgb-coll-cta { margin: 18px 20px 0; background: #18120c; color: #fff; border-radius: 12px; padding: 22px 24px; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.rgb-coll-cta .t { font-size: 17px; font-weight: 700; }
.rgb-coll-cta .d { font-size: 13.5px; color: #cbb89e; margin-top: 4px; }
.rgb-coll-cta a { background: #f08c2e; color: #fff; text-decoration: none; font-weight: 700; font-size: 14px; padding: 11px 18px; border-radius: 8px; white-space: nowrap; }
.rgb-coll-cta a:hover { background: #d97b22; }

@media (max-width: 860px) {
  .rgb-coll-grid { grid-template-columns: repeat(2, 1fr); }
  .rgb-coll-stats { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 540px) {
  .rgb-coll-grid { grid-template-columns: 1fr; }
  .rgb-coll-choose { grid-template-columns: 1fr; }
  .rgb-coll-cta { flex-direction: column; align-items: flex-start; }
  .rgb-coll-cta a { width: 100%; text-align: center; }
}

/* ===== Collection page: accordion (series → all color SKUs) ===== */
.rgb-coll-acc { margin: 0 20px; }
.rgb-coll-acc-item { border: 1px solid #e7ddcf; border-radius: 12px; margin-bottom: 14px; background: #fff; overflow: hidden; }
.rgb-coll-acc-item > summary { list-style: none; cursor: pointer; display: flex; align-items: center; gap: 16px; padding: 15px 18px; }
.rgb-coll-acc-item > summary::-webkit-details-marker { display: none; }
.rgb-coll-acc-thumb { width: 62px; height: 62px; border-radius: 10px; object-fit: cover; background: #efe2d0; flex: none; }
.rgb-coll-acc-main { flex: 1; min-width: 0; }
.rgb-coll-acc-main h3 { margin: 0 0 3px; font-size: 17px; color: #18120c; }
.rgb-coll-acc-main p { margin: 0; font-size: 13px; color: #6b6258; line-height: 1.4; }
.rgb-coll-acc-meta { display: flex; flex-wrap: wrap; gap: 6px 16px; margin-top: 7px; font-size: 12px; color: #8a7f70; }
.rgb-coll-acc-meta b { color: #18120c; font-weight: 600; }
.rgb-coll-acc-toggle { flex: none; width: 30px; height: 30px; border-radius: 50%; background: #f08c2e; color: #fff; display: flex; align-items: center; justify-content: center; font-size: 18px; line-height: 1; transition: transform .2s ease; }
.rgb-coll-acc-item[open] > summary .rgb-coll-acc-toggle { transform: rotate(45deg); }
.rgb-coll-acc-body { padding: 6px 18px 22px; border-top: 1px solid #f0e6d8; }
.rgb-coll-acc-empty { padding: 14px 0; font-size: 13px; color: #8a7f70; }
/* single-link series (no color SKU grid, e.g. U-Tip / Nano Tip) */
.rgb-coll-single-note { margin: 0 0 12px; font-size: 13px; color: #8a7f70; line-height: 1.55; }
.rgb-coll-single-link { display: inline-flex; align-items: center; gap: 8px; background: #f08c2e; color: #fff; text-decoration: none; font-weight: 700; font-size: 14px; padding: 11px 20px; border-radius: 8px; }
.rgb-coll-single-link:hover { background: #d97b22; }
/* nested (method → type) accordion inside the All hub */
.rgb-coll-acc-nested { margin: 0; padding: 8px 0 0; }
.rgb-coll-acc-nested > .rgb-coll-acc-item:last-child { margin-bottom: 0; }
.rgb-coll-acc-nested .rgb-coll-acc-thumb { width: 48px; height: 48px; }
.rgb-coll-acc-nested .rgb-coll-acc-main h3 { font-size: 15px; }

@media (max-width: 540px) {
  .rgb-coll-acc { margin: 0 14px; }
  .rgb-coll-acc-thumb { width: 50px; height: 50px; }
  .rgb-coll-acc-main h3 { font-size: 15.5px; }
}

/* ===== Collection page: FAQ module (before CTA) ===== */
.rgb-coll-faq { padding: 28px 20px 0; }
.rgb-coll-faq h2 { font-size: 22px; margin: 0 0 4px; color: #18120c; }
.rgb-coll-faq .sub { font-size: 13.5px; color: #8a7f70; margin: 0 0 16px; }
.rgb-coll-faq-item { border: 1px solid #e7ddcf; border-radius: 10px; margin-bottom: 10px; background: #fff; overflow: hidden; }
.rgb-coll-faq-item > summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px 18px; font-size: 15px; font-weight: 600; color: #18120c; }
.rgb-coll-faq-item > summary::-webkit-details-marker { display: none; }
.rgb-coll-faq-toggle { flex: none; width: 26px; height: 26px; border-radius: 50%; background: #f08c2e; color: #fff; display: flex; align-items: center; justify-content: center; font-size: 16px; line-height: 1; transition: transform .2s ease; }
.rgb-coll-faq-item[open] > summary .rgb-coll-faq-toggle { transform: rotate(45deg); }
.rgb-coll-faq-body { padding: 0 18px 16px; font-size: 14px; color: #4a4138; line-height: 1.7; }
.rgb-coll-faq-body b { color: #18120c; }
@media (max-width: 540px) {
  .rgb-coll-faq { padding: 24px 14px 0; }
  .rgb-coll-faq-item > summary { font-size: 14px; padding: 13px 15px; }
}

/* ===== Collection hero centered variant (Tape-In template) ===== */
.rgb-coll-hero.is-center { text-align: center; }
.rgb-coll-hero.is-center h1 { margin: 0 0 12px; }
.rgb-coll-hero.is-center p { margin-left: auto; margin-right: auto; }
.rgb-coll-hero.is-center .rgb-coll-stats { max-width: 720px; margin: 0 auto; }

/* Best sellers module */
.rgb-coll-best { padding: 26px 20px 0; }
.rgb-coll-best h2 { font-size: 22px; margin: 0 0 4px; color: #18120c; }
.rgb-coll-best .sub { font-size: 13.5px; color: #8a7f70; margin: 0 0 16px; }

/* Series cards (flat grid) */
.rgb-coll-series { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; padding: 0 20px; }
.rgb-coll-series-card { display: block; border: 1px solid #e7ddcf; border-radius: 12px; overflow: hidden; background: #fff; text-decoration: none; color: inherit; }
.rgb-coll-series-card:hover { border-color: #f08c2e; }
.rgb-coll-series-thumb { width: 100%; height: 150px; object-fit: cover; object-position: top; background: #efe2d0; display: block; }
.rgb-coll-series-body { padding: 12px 14px 14px; }
.rgb-coll-series-body h3 { margin: 0 0 5px; font-size: 16px; color: #18120c; }
.rgb-coll-series-body p { margin: 0 0 10px; font-size: 13px; color: #6b6258; line-height: 1.45; }
.rgb-coll-series-link { font-size: 13px; font-weight: 700; color: #f08c2e; }
@media (max-width: 860px) {
  .rgb-coll-series { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 540px) {
  .rgb-coll-series { grid-template-columns: 1fr; }
  .rgb-coll-series-thumb { height: 170px; object-position: top; }
}

/* Trust bar (conversion) */
.rgb-coll-trust { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; padding: 20px 20px 0; }
.rgb-coll-trust-item { display: flex; align-items: center; gap: 12px; background: #fff; border: 1px solid #e7ddcf; border-radius: 10px; padding: 16px 18px; }
.rgb-coll-trust-item .ic { flex: none; width: 30px; height: 30px; border-radius: 50%; background: #f08c2e; color: #fff; display: flex; align-items: center; justify-content: center; font-size: 16px; font-weight: 700; line-height: 1; }
.rgb-coll-trust-item .t { font-size: 15px; color: #3a322a; font-weight: 600; line-height: 1.35; }

/* Why RGB Hair (conversion) */
.rgb-coll-why { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; padding: 0 20px; }
.rgb-coll-why-card { display: flex; align-items: flex-start; gap: 12px; background: #faf7f2; border: 1px solid #e7ded2; border-radius: 12px; padding: 15px 17px; }
.rgb-coll-why-card .ic { flex: none; width: 38px; height: 38px; border-radius: 50%; background: #fff; border: 2px solid #f08c2e; color: #f08c2e; display: flex; align-items: center; justify-content: center; font-size: 18px; font-weight: 700; line-height: 1; }
.rgb-coll-why-card .txt { flex: 1; min-width: 0; }
.rgb-coll-why-card .t { font-size: 15px; font-weight: 700; color: #18120c; line-height: 1.3; }
.rgb-coll-why-card .d { font-size: 13px; color: #8a8076; line-height: 1.5; margin-top: 3px; }
@media (max-width: 540px) {
  .rgb-coll-trust { grid-template-columns: 1fr; }
  .rgb-coll-why { grid-template-columns: 1fr; }
}

/* 全站 WooCommerce 产品网格：卡片内容底部对齐（标题行数不一时价格/按钮齐平）
   纯布局 CSS：只改 display/flex/margin-top，不碰 DOM/JS/position/z-index/hover。
   兼容 Astra 主题结构（astra-shop-thumbnail-wrap / astra-shop-summary-wrap，容器为 .ast-woocommerce-container）
   与 WooCommerce 默认结构（容器为 .woocommerce）。
   锚定 ul.products li.product（WooCommerce 独有组合类），不依赖外层容器类。 */
ul.products li.product {
  display: flex;
  flex-direction: column;
}
ul.products li.product .astra-shop-summary-wrap {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
}
ul.products li.product .astra-shop-summary-wrap .ast-loop-product__link {
  flex: 1 0 auto;
  min-height: 0;
}
ul.products li.product > a.woocommerce-loop-product__link {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
}
ul.products li.product > a.woocommerce-loop-product__link .woocommerce-loop-product__title {
  flex: 1 0 auto;
  min-height: 0;
}
ul.products li.product .button {
  margin-top: auto;
}

/* ===== Women's Hair Extensions Guide page ===== */
.rgb-guide-intro { padding: 26px 20px 0; }
.rgb-guide-intro h2 { font-size: 22px; margin: 0 0 8px; color: #18120c; }
.rgb-guide-intro p { margin: 0; font-size: 15px; line-height: 1.7; color: #4a4138; max-width: 820px; }

.rgb-guide-methods { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; padding: 0 20px; }
.rgb-guide-method { display: block; background: #fff; border: 1px solid #e7ddcf; border-left: 4px solid #f08c2e; border-radius: 12px; padding: 16px 18px; text-decoration: none; color: inherit; }
.rgb-guide-method:hover { border-color: #f08c2e; }
.rgb-guide-method-body h3 { margin: 0 0 6px; font-size: 18px; color: #18120c; }
.rgb-guide-method-desc { margin: 0 0 12px; font-size: 13.5px; color: #6b6258; line-height: 1.6; }
.rgb-guide-method-meta { display: flex; flex-direction: column; gap: 4px; font-size: 12.5px; color: #4a4138; margin-bottom: 12px; }
.rgb-guide-method-meta b { color: #18120c; }
.rgb-guide-method-link { font-size: 13px; font-weight: 700; color: #f08c2e; }

.rgb-guide-table-wrap { padding: 22px 20px 0; }
.rgb-guide-table-wrap h3 { font-size: 17px; margin: 0 0 10px; color: #18120c; }
.rgb-guide-table { width: 100%; border-collapse: collapse; background: #fff; border: 1px solid #e7ddcf; border-radius: 10px; overflow: hidden; font-size: 13px; }
.rgb-guide-table th { background: #faf7f2; text-align: left; padding: 10px 12px; font-size: 12.5px; color: #18120c; border-bottom: 1px solid #e7ddcf; }
.rgb-guide-table td { padding: 10px 12px; border-bottom: 1px solid #f0e9dd; color: #4a4138; }
.rgb-guide-table tr:last-child td { border-bottom: none; }
.rgb-guide-note { margin: 10px 0 0; font-size: 12.5px; color: #8a7f70; line-height: 1.6; }
.rgb-guide-note b { color: #18120c; }

.rgb-guide-color-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 12px; padding: 0 20px; }
.rgb-guide-color-card { display: block; background: #fff; border: 1px solid #e7ddcf; border-radius: 10px; overflow: hidden; text-decoration: none; color: inherit; text-align: center; }
.rgb-guide-color-card:hover { border-color: #f08c2e; }
.rgb-guide-color-img { width: 100%; height: 110px; object-fit: cover; object-position: top; background: #efe2d0; display: block; }
.rgb-guide-color-code { font-size: 13px; font-weight: 700; color: #18120c; padding: 8px 6px 2px; }
.rgb-guide-color-name { font-size: 12px; color: #6b6258; padding: 0 6px 10px; line-height: 1.35; }

.rgb-guide-steps { padding: 22px 20px 0; }
.rgb-guide-steps h3 { font-size: 17px; margin: 0 0 12px; color: #18120c; }
.rgb-guide-step { display: flex; align-items: flex-start; gap: 12px; background: #faf7f2; border: 1px solid #e7ded2; border-radius: 10px; padding: 13px 16px; margin-bottom: 10px; font-size: 13.5px; line-height: 1.6; color: #4a4138; }
.rgb-guide-step .num { flex: none; width: 26px; height: 26px; border-radius: 50%; background: #f08c2e; color: #fff; font-size: 13px; font-weight: 700; display: flex; align-items: center; justify-content: center; }
.rgb-guide-step b { color: #18120c; }

.rgb-guide-choices { padding: 22px 20px 0; }
.rgb-guide-choices h3 { font-size: 17px; margin: 0 0 12px; color: #18120c; }
.rgb-guide-choice-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; }
.rgb-guide-choice { background: #fff; border: 1px solid #e7ddcf; border-radius: 10px; padding: 12px 14px; display: flex; flex-direction: column; gap: 4px; }
.rgb-guide-choice b { font-size: 14px; color: #18120c; }
.rgb-guide-choice span { font-size: 12.5px; color: #6b6258; line-height: 1.45; }

.rgb-guide-len { padding: 0 20px; }
.rgb-guide-len-row { display: flex; gap: 16px; background: #fff; border: 1px solid #e7ddcf; border-radius: 10px; padding: 13px 16px; margin-bottom: 8px; }
.rgb-guide-len-k { flex: none; width: 90px; font-size: 15px; font-weight: 700; color: #f08c2e; }
.rgb-guide-len-v { font-size: 13.5px; color: #4a4138; line-height: 1.6; }

.rgb-guide-tex { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; padding: 0 20px; }
.rgb-guide-tex-card { background: #faf7f2; border: 1px solid #e7ded2; border-radius: 12px; padding: 16px 18px; }
.rgb-guide-tex-card h3 { margin: 0 0 6px; font-size: 16px; color: #18120c; }
.rgb-guide-tex-card p { margin: 0; font-size: 13px; color: #6b6258; line-height: 1.6; }

.rgb-guide-quality { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; padding: 0 20px; }
.rgb-guide-q-col { border: 1px solid #e7ded2; border-radius: 12px; overflow: hidden; background: #fff; }
.rgb-guide-q-col h3 { margin: 0; padding: 12px 16px; font-size: 15px; font-weight: 800; color: #fff; background: #f08c2e; text-align: center; }
.rgb-guide-q-col.alt h3 { background: #18120c; }
.rgb-guide-q-col ul { margin: 0; padding: 14px 16px 14px 32px; font-size: 13.5px; color: #4a4138; }
.rgb-guide-q-col li { margin-bottom: 7px; line-height: 1.55; }
.rgb-guide-q-col b { color: #18120c; }

@media (max-width: 860px) {
  .rgb-guide-methods { grid-template-columns: 1fr; }
  .rgb-guide-color-grid { grid-template-columns: repeat(4, 1fr); }
  .rgb-guide-choice-grid { grid-template-columns: repeat(3, 1fr); }
  .rgb-guide-tex { grid-template-columns: 1fr; }
  .rgb-guide-quality { grid-template-columns: 1fr; }
  .rgb-guide-table { font-size: 12px; }
  .rgb-guide-table th, .rgb-guide-table td { padding: 8px 9px; }
}
@media (max-width: 540px) {
  .rgb-guide-color-grid { grid-template-columns: repeat(2, 1fr); }
  .rgb-guide-choice-grid { grid-template-columns: repeat(2, 1fr); }
  .rgb-guide-len-row { flex-direction: column; gap: 4px; }
  .rgb-guide-len-k { width: auto; }
  .rgb-guide-table-wrap { overflow-x: auto; }
  .rgb-guide-tex { grid-template-columns: 1fr; }
  .rgb-guide-tex-types { grid-template-columns: repeat(2, 1fr); }
}

/* How it's applied box (under each method description) */
.rgb-guide-method-apply { margin: 0 0 12px; padding: 9px 12px; background: #fff8f0; border-left: 3px solid #f08c2e; border-radius: 4px; font-size: 12.5px; line-height: 1.55; color: #4a4138; }
.rgb-guide-method-apply b { color: #18120c; }

/* Colour style choice with small image */
.rgb-guide-choice { background: #fff; border: 1px solid #e7ddcf; border-radius: 10px; padding: 10px; display: flex; flex-direction: column; gap: 6px; }
.rgb-guide-choice-img { width: 100%; height: 70px; object-fit: cover; background: #efe2d0; border-radius: 6px; display: block; }
.rgb-guide-choice b { font-size: 14px; color: #18120c; }
.rgb-guide-choice span { font-size: 12.5px; color: #6b6258; line-height: 1.45; }

/* Length chart image (Step 3) */
.rgb-guide-len-chart { display: block; max-width: 100%; height: auto; margin: 14px auto 0; border-radius: 10px; background: #efe2d0; }
.rgb-guide-len-chart-cap { display: block; text-align: center; font-size: 12px; color: #8a7f70; margin: 6px 0 0; }

/* Texture reference image + 10 types list (Step 4) */
.rgb-guide-tex-ref { display: block; width: 100%; max-width: 600px !important; height: auto; margin: 14px auto 0; border-radius: 10px; background: #efe2d0; }
.rgb-guide-tex-ref-cap { display: block; text-align: center; font-size: 12px; color: #8a7f70; margin: 6px 0 14px; }
.rgb-guide-tex-types { display: grid; grid-template-columns: repeat(5, 1fr); gap: 8px; margin: 4px 0 0; }
.rgb-guide-tex-type { background: #fff; border: 1px solid #e7ddcf; border-radius: 8px; padding: 8px 10px; font-size: 12px; color: #4a4138; display: flex; gap: 8px; align-items: baseline; }
.rgb-guide-tex-type b { color: #f08c2e; font-size: 13px; min-width: 18px; }

/* ===== Home page module: 4 categories + 3 features =====
   纯 HTML/CSS，替代 Elementor 容器中的分类与特点（hero 横幅保留 Elementor 原样） */
.rgb-home-module { background: #dde8cc; padding: 22px 0; }

.rgb-home-cats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; max-width: 1200px; margin: 0 auto 24px; padding: 0 20px; }
.rgb-home-cat { position: relative; display: block; border-radius: 12px; overflow: hidden; text-decoration: none; }
.rgb-home-cat-img { width: 100%; height: 340px; object-fit: cover; object-position: center top; display: block; }
.rgb-home-cat-label { position: absolute; bottom: 14px; left: 0; right: 0; text-align: center; color: #fff; font-size: 19px; font-weight: 700; text-shadow: 0 1px 3px rgba(0,0,0,.5); }

.rgb-home-features { display: flex; justify-content: space-between; align-items: center; gap: 24px; max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.rgb-home-feat { display: flex; align-items: center; gap: 12px; flex: 0 1 auto; }
.rgb-home-feat-ic { flex: none; width: 34px; height: 34px; color: #f08c2e; }
.rgb-home-feat-text b { display: block; font-size: 15px; color: #18120c; font-weight: 700; }
.rgb-home-feat-text small { display: block; font-size: 12.5px; color: #6b6258; margin-top: 2px; }

@media (max-width: 860px) {
  .rgb-home-cats { grid-template-columns: repeat(2, 1fr); }
  .rgb-home-cat-img { height: 230px; }
  .rgb-home-features { flex-direction: column; align-items: stretch; gap: 14px; }
  .rgb-home-feat { width: 100%; }
}

