/* ============================================================
   moban.html — 模板建站（模板画廊横卷 + 双列对比）
   命名空间：body.page-moban
   签名布局：模板画廊 h-scroll / 模板VS定制双列对比 / 三档价格卡
   ============================================================ */

body.page-moban .hero-phone-note{ margin-top:18px; font-size:14px; color:var(--c-text); }
body.page-moban .hero-phone-note a{ color:var(--c-purple-400); }
body.page-moban .hero-phone-note strong{ color:var(--c-ink); font-size:16px; letter-spacing:.03em; }

/* ---------- 模板画廊横卷 ---------- */
body.page-moban .tpl-card{
  flex:0 0 auto; width:340px; background:#fff; border:1.5px solid var(--c-line);
  border-radius:var(--radius-lg); overflow:hidden; transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .3s;
}
body.page-moban .tpl-card:hover{ transform:translateY(-5px); box-shadow:var(--shadow-soft); border-color:var(--c-purple-200); }
body.page-moban .tpl-card img{ width:100%; height:210px; object-fit:cover; }
body.page-moban .tpl-body{ padding:18px 20px 22px; }
body.page-moban .tpl-body h3{ font-size:17px; margin:10px 0 6px; }
body.page-moban .tpl-body p{ font-size:13px; color:var(--c-muted); }

/* ---------- 模板 VS 定制 双列对比 ---------- */
body.page-moban .compare-wrap{
  display:grid; grid-template-columns:1fr auto 1fr; gap:26px; align-items:stretch;
}
body.page-moban .compare-col{
  background:#fff; border:1.5px solid var(--c-line); border-radius:var(--radius-lg);
  padding:34px 32px; display:flex; flex-direction:column;
}
body.page-moban .compare-tpl{ border-top:4px solid var(--c-purple-300); }
body.page-moban .compare-custom{ border-top:4px solid var(--c-pink-400); }
body.page-moban .compare-col h3{ font-size:21px; margin-bottom:6px; }
body.page-moban .compare-price{ font-size:13.5px; color:var(--c-purple-400); font-weight:600; margin-bottom:20px; }
body.page-moban .compare-col ul{ flex:1; margin-bottom:24px; }
body.page-moban .compare-col ul li{
  padding:10px 0 10px 26px; position:relative; font-size:14px; border-bottom:1px dashed var(--c-line);
}
body.page-moban .compare-col ul li:last-child{ border-bottom:0; }
body.page-moban .compare-col ul li::before{
  content:""; position:absolute; left:0; top:16px; width:14px; height:14px; border-radius:50%;
  background:var(--c-purple-100);
}
body.page-moban .compare-custom ul li::before{ background:var(--c-pink-100); }
body.page-moban .compare-vs{
  align-self:center; width:56px; height:56px; border-radius:50%;
  background:var(--grad-main); color:#fff; font-weight:800; display:flex; align-items:center; justify-content:center;
  box-shadow:0 10px 24px rgba(197,174,239,.4);
}
body.page-moban .compare-col .btn{ align-self:flex-start; }

/* ---------- 价格梯度卡 ---------- */
body.page-moban .price-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
body.page-moban .price-card{
  position:relative; background:#fff; border:1.5px solid var(--c-line); border-radius:var(--radius-lg);
  padding:32px 28px; display:flex; flex-direction:column; transition:transform .35s var(--ease),box-shadow .35s var(--ease);
}
body.page-moban .price-card:hover{ transform:translateY(-5px); box-shadow:var(--shadow-soft); }
body.page-moban .price-hot{ border:2px solid var(--c-purple-300); background:var(--c-bg-purple); }
body.page-moban .price-badge{
  position:absolute; top:-13px; left:50%; transform:translateX(-50%);
  background:var(--grad-main); color:#fff; font-size:12px; font-weight:700;
  padding:5px 16px; border-radius:999px; white-space:nowrap;
}
body.page-moban .price-card h3{ font-size:19px; }
body.page-moban .price-num{ font-size:13px; color:var(--c-purple-400); font-weight:600; margin:8px 0 18px; }
body.page-moban .price-card ul{ flex:1; margin-bottom:24px; }
body.page-moban .price-card ul li{ padding:8px 0 8px 22px; position:relative; font-size:14px; }
body.page-moban .price-card ul li::before{
  content:""; position:absolute; left:0; top:14px; width:8px; height:8px; border-radius:50%; background:var(--grad-main);
}
body.page-moban .price-card a{ align-self:flex-start; }
body.page-moban .price-card ul a{ color:var(--c-purple-400); }

/* ---------- 模板库说明（左右图文） ---------- */
body.page-moban .about-moban{ display:grid; grid-template-columns:1fr 1.2fr; gap:48px; align-items:center; }
body.page-moban .about-moban-img img{ border-radius:var(--radius-lg); box-shadow:var(--shadow-soft); }
body.page-moban .about-moban-text p{ margin-top:14px; font-size:15px; }
body.page-moban .about-moban-text a{ color:var(--c-purple-400); text-decoration:underline; text-underline-offset:3px; }

/* ---------- FAQ ---------- */
body.page-moban .faq-list{ max-width:860px; margin:0 auto; display:flex; flex-direction:column; gap:14px; }
body.page-moban .faq-list details{
  background:#fff; border:1.5px solid var(--c-line); border-radius:var(--radius-md); padding:18px 22px; transition:border-color .3s;
}
body.page-moban .faq-list details[open]{ border-color:var(--c-purple-300); }
body.page-moban .faq-list summary{
  cursor:pointer; font-weight:700; color:var(--c-ink); font-size:15.5px; list-style:none; position:relative; padding-right:28px;
}
body.page-moban .faq-list summary::-webkit-details-marker{ display:none; }
body.page-moban .faq-list summary::after{
  content:"+"; position:absolute; right:0; top:0; font-size:20px; color:var(--c-purple-400); font-weight:400;
}
body.page-moban .faq-list details[open] summary::after{ content:"–"; }
body.page-moban .faq-list p{ margin-top:12px; font-size:14px; line-height:1.9; }
body.page-moban .faq-list a{ color:var(--c-purple-400); text-decoration:underline; text-underline-offset:3px; }

/* ---------- 尾屏 CTA ---------- */
body.page-moban .moban-cta{
  background:var(--grad-soft); padding:76px 0; text-align:center;
}
body.page-moban .moban-cta h2{ font-size:clamp(24px,3vw,32px); margin-bottom:14px; }
body.page-moban .moban-cta p{ max-width:620px; margin:0 auto 26px; font-size:15px; }
body.page-moban .moban-cta a{ color:var(--c-purple-400); }
body.page-moban .moban-cta .hero-meta{ justify-content:center; }

/* ---------- 响应式 ---------- */
@media (max-width:1100px){
  body.page-moban .compare-wrap{ grid-template-columns:1fr; }
  body.page-moban .compare-vs{ justify-self:center; }
  body.page-moban .price-grid{ grid-template-columns:1fr 1fr; }
  body.page-moban .price-card:last-child{ grid-column:1/-1; }
  body.page-moban .about-moban{ grid-template-columns:1fr; gap:30px; }
}
@media (max-width:768px){
  body.page-moban .price-grid{ grid-template-columns:1fr; }
  body.page-moban .tpl-card{ width:280px; }
  body.page-moban .tpl-card img{ height:175px; }
}
@media (max-width:360px){
  body.page-moban .compare-col{ padding:24px 20px; }
  body.page-moban .price-card{ padding:26px 20px; }
}
