/* ==========================================================================
   家纺智能工作台 — 官网首页（产品介绍 / 产品体验 双 Tab）
   极简 / 扁平化 / 苹果风，与 demo/css/style.css 共用同一套品牌色
   ========================================================================== */

:root {
  --color-primary: #FF2442;
  --color-primary-dark: #D81B3A;
  --color-primary-tint: #FFE7EB;
  --color-bg: #FFFFFF;
  --color-bg-secondary: #F7F7F8;
  --color-border: #EDEDEF;
  --color-text: #1D1D1F;
  --color-text-secondary: #6E6E73;
  --color-gold: #B9750A;
  --color-gold-tint: #FFF1DA;
}

* { box-sizing: border-box; margin: 0; padding: 0; }

html, body {
  height: 100%;
  background: var(--color-bg);
  color: var(--color-text);
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "PingFang SC",
    "Noto Sans SC", "Microsoft YaHei", sans-serif;
  -webkit-font-smoothing: antialiased;
}

/* ---- 装饰背景：右上角算盘意象，固定贴在浏览器右上角。
   首屏清晰不透明，往下滚动逐渐模糊、透明度同步降到50%（由 JS 按滚动距离控制） ---- */
.bg-mesh {
  position: fixed;
  inset: 0;
  z-index: 0;
  background-color: #FFFFFF;
  background-image: url("../img/hero-bg.jpg");
  background-repeat: no-repeat;
  background-position: top right;
  background-size: min(768px, 90vw) auto;
  opacity: 1;
  filter: blur(0px);
  transition: filter 0.15s ease-out, opacity 0.15s ease-out;
}

.content {
  position: fixed;
  top: 0; left: 0; right: 0;
  bottom: 58px;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  z-index: 1;
}

.tab-pane { display: none; padding: 20px 20px 40px; max-width: 520px; margin: 0 auto; }
.tab-pane.active { display: block; }

/* ---- 排版层级 ---- */
.eyebrow {
  display: inline-flex;
  align-items: center;
  font-size: 12px; font-weight: 700; color: var(--color-primary-dark);
  letter-spacing: 0.5px;
  background: var(--color-primary-tint);
  padding: 5px 13px;
  border-radius: 999px;
}
h1 { font-size: 32px; font-weight: 800; line-height: 1.22; letter-spacing: -0.3px; margin-top: 12px; }
h2.section-title { font-size: 23px; font-weight: 800; line-height: 1.28; letter-spacing: -0.2px; margin: 6px 0 14px; }
h3 { font-size: 18.5px; font-weight: 800; margin: 4px 0 6px; letter-spacing: -0.1px; }
.hero-sub { font-size: 16.5px; font-weight: 600; color: var(--color-primary); line-height: 1.6; margin-top: 12px; }
.hero-desc { font-size: 14px; color: var(--color-text-secondary); line-height: 1.7; margin-top: 10px; }
p.lead { font-size: 14px; color: var(--color-text-secondary); line-height: 1.72; }
.fine-print { font-size: 11.5px; color: #a8a8ac; margin-top: 12px; line-height: 1.6; }
.fine-print.center { text-align: center; }
.section-label { font-size: 11.5px; font-weight: 700; color: var(--color-primary); letter-spacing: 1px; text-transform: uppercase; margin-top: 8px; }

.hero { padding: 6px 0 28px; }

.rule { height: 1px; background: var(--color-border); margin: 30px 0; }

/* ---- 按钮 ---- */
.btn-primary {
  display: inline-block;
  background: var(--color-primary);
  color: #fff;
  font-size: 14.5px; font-weight: 700;
  padding: 13px 26px;
  border-radius: 999px;
  text-decoration: none;
  margin-top: 22px;
  box-shadow: 0 10px 24px -10px rgba(255,36,66,0.45);
}
.btn-block { display: block; text-align: center; margin-top: 26px; }

/* ---- 网格：一排三 / 一排二 ---- */
.grid3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 16px; }
.grid2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin-top: 14px; }

.tile {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 16px;
  padding: 16px 8px;
  text-align: center;
  box-shadow: 0 1px 2px rgba(0,0,0,0.03);
}
.tile .ic { color: var(--color-primary); margin: 0 auto 8px; width: 22px; height: 22px; }
.tile .ic svg { width: 22px; height: 22px; display: block; }
.tile .tt { font-size: 12.5px; font-weight: 700; color: var(--color-text); line-height: 1.4; }
.tile .dd { font-size: 10.5px; color: var(--color-text-secondary); margin-top: 3px; }

.tile2 {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 18px;
  padding: 18px 14px;
  text-align: center;
  box-shadow: 0 1px 2px rgba(0,0,0,0.03);
}
.tile2 .ic { color: var(--color-primary); margin: 0 auto 8px; width: 26px; height: 26px; }
.tile2 .ic svg { width: 26px; height: 26px; display: block; }
.tile2 .tt { font-size: 13.5px; font-weight: 700; }
.tile2 .dd { font-size: 11.5px; color: var(--color-text-secondary); margin-top: 4px; line-height: 1.5; }
.badge-mini {
  display: inline-block; font-size: 10px; font-weight: 700; color: var(--color-gold);
  background: var(--color-gold-tint); padding: 2px 9px; border-radius: 10px; margin-bottom: 8px;
}

.feature-block { margin-top: 24px; }

/* ---- 价格卡片 ---- */
.pricing { align-items: stretch; }
.price-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 20px;
  padding: 20px 16px;
  box-shadow: 0 1px 2px rgba(0,0,0,0.03);
}
.price-card.highlight {
  background: var(--color-primary-tint);
  border: 1.5px solid var(--color-primary);
  box-shadow: 0 8px 20px -12px rgba(255,36,66,0.35);
}
.price-name { font-size: 12.5px; font-weight: 700; color: var(--color-text-secondary); }
.price-num { font-size: 25px; font-weight: 800; color: var(--color-text); margin: 6px 0 12px; letter-spacing: -0.5px; }
.price-num span { font-size: 12.5px; font-weight: 500; color: var(--color-text-secondary); }
.check-list { list-style: none; }
.check-list li {
  font-size: 12px; color: var(--color-text-secondary); line-height: 1.9;
  padding-left: 18px; position: relative;
}
.check-list li::before { content: "✓"; position: absolute; left: 0; color: var(--color-primary); font-weight: 800; }

/* ---- 企业介绍 ---- */
.company-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 20px;
  padding: 20px 16px;
  box-shadow: 0 1px 2px rgba(0,0,0,0.03);
}
.company-stats { margin-top: 16px; }
.company-stats .tile { background: var(--color-bg-secondary); border: none; box-shadow: none; }

/* ---- 常见疑惑 ---- */
.qa { margin-top: 18px; }
.qa .q { font-size: 14px; font-weight: 700; margin-bottom: 4px; }
.qa .a { font-size: 12.5px; color: var(--color-text-secondary); line-height: 1.65; }

/* ---- 联系方式 ---- */
.contact-block { text-align: center; padding: 12px 0 20px; }
.brand-mark {
  width: 44px; height: 44px; margin: 0 auto;
  background: var(--color-primary);
  color: #fff; font-size: 20px; font-weight: 800;
  border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
}
.qr-box {
  width: 100px; height: 100px; margin: 16px auto 0;
  border: 1.5px dashed var(--color-border);
  border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  color: #b0b0b4; font-size: 12px; line-height: 1.5;
}

/* ---- 产品体验 Tab ---- */
.hero-compact { padding: 0 0 8px; }
.hero-compact .hero-desc { margin-top: 6px; }
.exp-steps { margin-top: 20px; }
.exp-steps-compact { margin-top: 6px; }
.exp-steps-compact .exp-step { padding: 7px 4px; }
.exp-step {
  display: flex; align-items: center; gap: 14px;
  padding: 12px 4px;
  border-bottom: 1px solid var(--color-border);
}
.exp-step:last-child { border-bottom: none; }
.exp-num {
  width: 28px; height: 28px; flex-shrink: 0;
  background: var(--color-primary-tint); color: var(--color-primary-dark);
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 13px; font-weight: 800;
}
.exp-step .tt { font-size: 14px; font-weight: 700; }
.exp-step .dd { font-size: 12px; color: var(--color-text-secondary); margin-top: 2px; }

/* ---- 底部 Tab 栏（全局） ---- */
.bottom-tabbar {
  position: fixed; left: 0; right: 0; bottom: 0;
  height: 58px;
  background: rgba(255,255,255,0.85);
  backdrop-filter: saturate(180%) blur(16px);
  -webkit-backdrop-filter: saturate(180%) blur(16px);
  border-top: 1px solid var(--color-border);
  display: flex;
  z-index: 100;
}
.tab-btn {
  flex: 1;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 3px;
  background: none; border: none;
  font-family: inherit;
  font-size: 10.5px; font-weight: 600;
  color: var(--color-text-secondary);
}
.tab-btn .tb-icon { width: 20px; height: 20px; }
.tab-btn .tb-icon svg { width: 20px; height: 20px; display: block; }
.tab-btn.active { color: var(--color-primary); }

@media (min-width: 640px) {
  .tab-pane { padding-left: 40px; padding-right: 40px; }
}
