/* ============================================================
   信宇门窗 - 案例详情页专用样式
   适用: cases/case-*.html
   说明: 继承 css/styles.css 全局样式，本文件仅放案例页特有样式
   ============================================================ */

/* ============================================================
   案例正文通用排版
   ============================================================ */
.case-detail .case-body { line-height: 1.85; color: #3a3a38; font-size: 16px; }
.case-detail .case-body h2 {
  font-size: 24px;
  font-weight: 700;
  color: #2c2c2a;
  margin: 40px 0 16px;
  padding-left: 14px;
  border-left: 4px solid var(--primary, #EC5412);
}
.case-detail .case-body h3 {
  font-size: 19px;
  font-weight: 700;
  color: #2c2c2a;
  margin: 28px 0 14px;
}
.case-detail .case-body p { margin: 12px 0; }

/* ============================================================
   项目信息条 (case-binlan 风格横向 flex)
   ============================================================ */
.case-meta-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  padding: 18px 22px;
  background: #f6f6f4;
  border-radius: 10px;
  margin: 24px 0 32px;
  font-size: 14px;
  color: #555;
}
.case-meta-bar span { display: inline-flex; align-items: center; gap: 6px; }
.case-meta-bar .meta-label { color: #8a8a85; }
.case-meta-bar .meta-value { color: #2c2c2a; font-weight: 600; }

/* ============================================================
   设计师点评 & 客户感言 双列布局
   ============================================================ */
.voice-row {
  display: flex;
  gap: 20px;
  margin: 28px 0;
}
.voice-col {
  flex: 1;
  border-radius: 12px;
  padding: 28px;
}
.voice-col.designer {
  background: #f6f8fa;
  border-left: 4px solid #2c3e50;
}
.voice-col.client {
  background: #fff7f3;
  border-left: 4px solid var(--primary, #EC5412);
}
.voice-col .voice-label {
  display: inline-block;
  font-size: 12px;
  font-weight: 600;
  padding: 5px 14px;
  border-radius: 20px;
  margin-bottom: 16px;
  letter-spacing: 1px;
}
.voice-col.designer .voice-label { background: #2c3e50; color: #fff; }
.voice-col.client .voice-label { background: var(--primary, #EC5412); color: #fff; }
.voice-col p {
  font-size: 15px;
  line-height: 1.85;
  color: #3a3a38;
  margin: 0 0 10px;
}
.voice-col p:last-child { margin-bottom: 0; }
.voice-col .voice-author {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  margin-top: 20px;
}
.voice-col .voice-avatar {
  width: 100px !important;
  height: 100px !important;
  border-radius: 50% !important;
  object-fit: cover;
  flex-shrink: 0;
  display: block;
  overflow: hidden;
  background: #e0e0e0;
  border: 1.5px solid var(--primary, #EC5412);
}
.voice-col .voice-name {
  font-size: 15px;
  color: var(--text-muted, #8a8a85);
  text-align: center;
}
.voice-col .voice-source {
  text-align: right;
  margin-top: 6px;
}
.voice-col .voice-source a {
  font-size: 13px;
  color: var(--primary, #EC5412);
  text-decoration: none;
  font-weight: 500;
}
.voice-col .voice-source a:hover { text-decoration: underline; }

/* ============================================================
   通用打勾列表 (用于选窗逻辑/工艺亮点等)
   ============================================================ */
.check-list {
  list-style: none;
  padding: 0;
  margin: 20px 0 28px;
}
.check-list li {
  position: relative;
  padding-left: 28px;
  margin-bottom: 12px;
  font-size: 15px;
  line-height: 1.85;
  color: var(--text-body, #555);
}
.check-list li::before {
  content: '✓';
  position: absolute;
  left: 0;
  top: 1px;
  width: 20px;
  height: 20px;
  background: var(--primary, #EC5412);
  color: #fff;
  border-radius: 50%;
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
}

/* ============================================================
   双列对比图区 (前后对比/选窗对比/改造对比)
   - .before-after 容器
   - .ba-col 列 (含图片容器 + 标签)
   - .ba-item 图片容器 (带悬浮动效)
   - .ba-tag 标签 (容器外居中显示)
   ============================================================ */
.before-after {
  display: flex;
  gap: 16px;
  margin: 20px 0 28px;
}
.before-after .ba-col {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
.before-after .ba-item {
  border-radius: 10px;
  overflow: hidden;
  background: #000000;
  border: 1px solid #e8e8e8;
  transition: all 0.4s ease;
  cursor: pointer;
  width: 100%;
  height: 400px;
}
.before-after .ba-item:hover {
  border-color: var(--primary, #EC5412);
  box-shadow: 0 12px 32px rgba(236, 84, 18, 0.18);
  transform: translateY(-4px);
}
.before-after .ba-item img {
  width: calc(100% + 6px);
  height: calc(100% + 6px);
  margin: -3px;
  object-fit: cover;
  object-position: center 70%;
  display: block;
  transition: transform 0.6s ease;
}
.before-after .ba-item:hover img { transform: scale(1.06); }
.before-after .ba-tag {
  border: 1px solid #e8e8e8;
  background: #2c2c2a;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  padding: 5px 14px;
  border-radius: 20px;
  letter-spacing: 1px;
  text-shadow: 0 1px 2px rgba(0,0,0,0.25);
  display: inline-block;
}
.before-after .ba-tag.after {
  background: var(--primary, #EC5412);
  border-color: var(--primary, #EC5412);
}

/* ============================================================
   双列图区 (无标签, 用于细节展示/施工过程/完工效果)
   ============================================================ */
.detail-row {
  display: flex;
  gap: 16px;
  margin: 20px 0 28px;
}
.detail-row .detail-col {
  flex: 1;
  border-radius: 10px;
  overflow: hidden;
  background: #ffffff;
  border: 1px solid #e8e8e8;
  transition: all 0.4s ease;
}
.detail-row .detail-col:hover {
  border-color: var(--primary, #EC5412);
  box-shadow: 0 12px 32px rgba(236, 84, 18, 0.18);
  transform: translateY(-4px);
}
.detail-row .detail-col img {
  width: 100%;
  height: 400px;
  object-fit: cover;
  display: block;
  transition: transform 0.6s ease;
}
.detail-row .detail-col:hover img { transform: scale(1.06); }
.detail-row .detail-col .detail-caption {
  padding: 12px 14px;
  font-size: 13px;
  color: #666;
  text-align: center;
  line-height: 1.5;
}
.detail-row .detail-col p {
  text-align: center;
  color: #888;
  font-size: 13px;
  margin-top: 8px;
}

/* ============================================================
   产品配置两列布局 (左表 + 右产品图)
   ============================================================ */
.specs-row {
  display: flex;
  gap: 20px;
  margin: 24px 0 32px;
  align-items: flex-start;
}
.specs-col {
  flex: 1;
}
.specs-col img {
  width: 100%;
  height: auto;
  border-radius: 10px;
  display: block;
  border: 1px solid #e8e8e8;
}

/* ============================================================
   工艺步骤卡片 (横向 grid, 悬停动效)
   ============================================================ */
.craft-steps {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 20px 0 28px;
}
.craft-steps .step-card {
  flex: 1 1 200px;
  background: #f8f8f6;
  border-radius: 10px;
  padding: 20px 18px;
  border: 1px solid #eee;
  transition: all 0.3s ease;
}
.craft-steps .step-card:hover {
  border-color: var(--primary, #EC5412);
  box-shadow: 0 8px 24px rgba(236, 84, 18, 0.12);
  transform: translateY(-3px);
}
.craft-steps .step-card .step-num {
  display: inline-block;
  width: 28px;
  height: 28px;
  line-height: 28px;
  text-align: center;
  border-radius: 50%;
  background: var(--primary, #EC5412);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 10px;
}
.craft-steps .step-card h4 {
  font-size: 15px;
  font-weight: 600;
  color: var(--text-dark, #2c2c2a);
  margin-bottom: 6px;
}
.craft-steps .step-card p {
  font-size: 13px;
  color: var(--text-muted, #8a8a85);
  line-height: 1.7;
  margin: 0;
}

/* ============================================================
   选材对比表 (6063-T5 vs 6060-T66 等两卡对比)
   ============================================================ */
.material-compare {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin: 20px 0 28px;
}
.material-compare .mc-card {
  padding: 20px 18px;
  border-radius: 10px;
  border: 1.5px solid #e8e8e8;
  background: #fff;
}
.material-compare .mc-card.recommend {
  border-color: var(--primary, #EC5412);
  background: #fff7f3;
  position: relative;
}
.material-compare .mc-card.recommend::before {
  content: '客户最终选择';
  position: absolute;
  top: -10px;
  left: 14px;
  background: var(--primary, #EC5412);
  color: #fff;
  font-size: 11px;
  font-weight: 600;
  padding: 3px 10px;
  border-radius: 10px;
  letter-spacing: 1px;
}
.material-compare .mc-card h4 {
  font-size: 18px;
  font-weight: 700;
  color: #2c2c2a;
  margin: 0 0 10px;
}
.material-compare .mc-card p {
  font-size: 14px;
  color: #555;
  line-height: 1.7;
  margin: 0 0 8px;
}
.material-compare .mc-card .mc-tag {
  display: inline-block;
  font-size: 12px;
  color: #888;
  background: #f0f0ee;
  padding: 3px 8px;
  border-radius: 4px;
  margin-right: 6px;
}
.material-compare .mc-card.recommend .mc-tag {
  background: rgba(236,84,18,0.12);
  color: var(--primary, #EC5412);
}

/* ============================================================
   微信对话截图卡片
   ============================================================ */
.wechat-screenshot {
  max-width: 360px;
  margin: 20px auto 28px;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 8px 32px rgba(0,0,0,0.15);
  background: #ededed;
}
.wechat-screenshot img { width: 100%; display: block; }
.wechat-screenshot .wc-caption {
  background: #fff;
  padding: 12px 16px;
  font-size: 13px;
  color: #666;
  text-align: center;
  line-height: 1.6;
}

/* ============================================================
   决策建议专题卡片 (连廊专题等)
   ============================================================ */
.tips-block {
  background: linear-gradient(135deg, #fff7f3 0%, #fff 100%);
  border: 1px solid #ffe1d6;
  border-radius: 12px;
  padding: 24px 26px;
  margin: 20px 0 28px;
}
.tips-block h4 {
  font-size: 16px;
  font-weight: 700;
  color: #2c2c2a;
  margin: 0 0 14px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.tips-block h4::before {
  content: '💡';
  font-size: 18px;
}
.tips-block ul {
  margin: 0;
  padding-left: 20px;
  color: #555;
  font-size: 14px;
  line-height: 1.9;
}
.tips-block ul li strong { color: var(--primary, #EC5412); }

/* ============================================================
   服务信任提示块 (✓+ 文字)
   ============================================================ */
.trust-block {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 18px;
  background: #fafafa;
  border-radius: 8px;
  margin: 20px 0 28px;
  font-size: 14px;
  color: #555;
}
.trust-block::before {
  content: '✓';
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--primary, #EC5412);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
}

/* ============================================================
   返回链接
   ============================================================ */
.back-link {
  display: inline-block;
  font-size: 14px;
  color: var(--text-muted, #8a8a85);
  margin: 20px 0 12px;
  transition: var(--transition);
}
.back-link:hover { color: var(--primary, #EC5412); }

/* ============================================================
   响应式 - 手机端
   ============================================================ */
@media (max-width: 576px) {
  .voice-row { flex-direction: column; }
  .voice-col { padding: 20px 18px; }

  .before-after { flex-direction: column; gap: 12px; }
  .before-after .ba-item { height: 180px; }

  .detail-row { flex-direction: column; gap: 12px; }
  .detail-row .detail-col img { height: 180px; }

  .specs-row { flex-direction: column; }

  .craft-steps .step-card { flex: 1 1 100%; }

  .material-compare { grid-template-columns: 1fr; }

  .case-meta-bar { padding: 14px 16px; }

  .wechat-screenshot { max-width: 90%; }
}
