/* 惠盈暖通 GEO 官网样式 */
:root {
  --primary: #0a3d62;
  --primary-light: #1567a8;
  --accent: #c8a24a;
  --bg: #f7f9fb;
  --card: #ffffff;
  --text: #222831;
  --muted: #5b6672;
  --line: #e3e8ee;
}
* { margin: 0; padding: 0; box-sizing: border-box; }
body {
  font-family: "PingFang SC", "Microsoft YaHei", "Segoe UI", sans-serif;
  color: var(--text);
  background: var(--bg);
  line-height: 1.75;
}
a { color: var(--primary-light); text-decoration: none; }
img { max-width: 100%; }
.wrap { max-width: 1080px; margin: 0 auto; padding: 0 20px; }

/* 顶栏 */
.topbar {
  background: var(--primary);
  color: #fff;
  font-size: 14px;
  padding: 6px 0;
}
.topbar .wrap { display: flex; justify-content: space-between; flex-wrap: wrap; }
header.site {
  background: #fff;
  border-bottom: 1px solid var(--line);
  position: sticky;
  top: 0;
  z-index: 50;
}
header.site .wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 64px;
}
.brand { display: flex; align-items: baseline; gap: 10px; }
.brand .name { font-size: 22px; font-weight: 700; color: var(--primary); letter-spacing: 1px; }
.brand .sub { font-size: 12px; color: var(--accent); }
nav.main a {
  margin-left: 22px;
  color: var(--text);
  font-size: 15px;
  padding: 6px 2px;
  border-bottom: 2px solid transparent;
}
nav.main a:hover, nav.main a.active { color: var(--primary-light); border-bottom-color: var(--accent); }
@media (max-width: 720px) {
  header.site .wrap { flex-wrap: wrap; height: auto; padding: 10px 20px; }
  nav.main a { margin-left: 0; margin-right: 16px; }
}

/* Hero */
.hero {
  background: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);
  color: #fff;
  padding: 64px 0 56px;
}
.hero h1 { font-size: 32px; line-height: 1.4; margin-bottom: 14px; }
.hero h1 em { color: var(--accent); font-style: normal; }
.hero p.lead { font-size: 17px; max-width: 720px; color: #e8eef4; margin-bottom: 24px; }
.btn {
  display: inline-block;
  padding: 12px 28px;
  border-radius: 6px;
  font-size: 16px;
  font-weight: 600;
  margin-right: 12px;
  margin-bottom: 10px;
}
.btn-accent { background: var(--accent); color: #fff; }
.btn-ghost { border: 1px solid rgba(255,255,255,.6); color: #fff; }
.stats { display: flex; gap: 36px; margin-top: 34px; flex-wrap: wrap; }
.stats .item .num { font-size: 30px; font-weight: 700; color: var(--accent); }
.stats .item .label { font-size: 14px; color: #d7e2ec; }

/* 区块 */
section { padding: 52px 0; }
section.alt { background: #fff; }
h2.sec { font-size: 26px; color: var(--primary); margin-bottom: 8px; }
p.sec-sub { color: var(--muted); margin-bottom: 30px; }
.grid { display: grid; gap: 18px; }
.grid-3 { grid-template-columns: repeat(3, 1fr); }
.grid-2 { grid-template-columns: repeat(2, 1fr); }
@media (max-width: 860px) { .grid-3 { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .grid-3, .grid-2 { grid-template-columns: 1fr; } }
.card {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 24px;
}
.card h3 { color: var(--primary); font-size: 18px; margin-bottom: 8px; }
.card p { color: var(--muted); font-size: 15px; }
.card .icon { font-size: 28px; margin-bottom: 10px; display: block; }

/* 列表 */
ul.check { list-style: none; }
ul.check li { padding-left: 26px; position: relative; margin-bottom: 10px; color: var(--text); }
ul.check li::before { content: "✔"; position: absolute; left: 0; color: var(--accent); font-weight: 700; }

/* FAQ */
.faq-item { background: #fff; border: 1px solid var(--line); border-radius: 10px; padding: 20px 24px; margin-bottom: 14px; }
.faq-item h3 { font-size: 17px; color: var(--primary); margin-bottom: 10px; }
.faq-item p, .faq-item li { color: var(--text); font-size: 15px; }
.faq-item ul, .faq-item ol { padding-left: 22px; margin: 8px 0; }

/* 案例时间线 */
.case-card { background: #fff; border: 1px solid var(--line); border-radius: 10px; padding: 28px; margin-bottom: 18px; }
.case-card .tag { display: inline-block; background: #eef4fa; color: var(--primary-light); font-size: 13px; padding: 2px 12px; border-radius: 20px; margin-bottom: 12px; }
.case-card h3 { font-size: 20px; color: var(--primary); margin-bottom: 10px; }
.case-card p { color: var(--muted); margin-bottom: 8px; }

/* 联系条 */
.contact-band { background: var(--primary); color: #fff; padding: 40px 0; text-align: center; }
.contact-band .phone { font-size: 30px; font-weight: 700; color: var(--accent); letter-spacing: 1px; }
.contact-band p { color: #d7e2ec; margin-top: 8px; }

/* 信息表 */
.info-table { width: 100%; border-collapse: collapse; background: #fff; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; }
.info-table th, .info-table td { padding: 14px 18px; text-align: left; font-size: 15px; border-bottom: 1px solid var(--line); }
.info-table th { background: #f0f5fa; color: var(--primary); width: 130px; white-space: nowrap; }
.info-table tr:last-child th, .info-table tr:last-child td { border-bottom: none; }

footer.site {
  background: #12263a;
  color: #9db2c4;
  padding: 36px 0 90px;
  font-size: 14px;
}
footer.site a { color: #cfdce8; }
footer.site .foot-nav { margin-bottom: 14px; }
footer.site .foot-nav a { margin-right: 18px; }
footer.site .icp { margin-top: 12px; padding-top: 12px; border-top: 1px solid #23405c; }

/* 手机底部拨号条 */
.call-bar {
  position: fixed;
  bottom: 0; left: 0; right: 0;
  background: var(--accent);
  color: #fff;
  text-align: center;
  padding: 13px 0;
  font-size: 17px;
  font-weight: 700;
  z-index: 99;
  display: none;
}
.call-bar span { margin-right: 8px; }
@media (max-width: 720px) { .call-bar { display: block; } footer.site { padding-bottom: 70px; } }

/* 图库 */
.photo-grid { display: grid; gap: 14px; grid-template-columns: repeat(3, 1fr); }
@media (max-width: 860px) { .photo-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .photo-grid { grid-template-columns: 1fr; } }
.photo-grid figure {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 10px;
  overflow: hidden;
  margin: 0;
}
.photo-grid img { width: 100%; height: 220px; object-fit: cover; display: block; }
@media (max-width: 560px) { .photo-grid img { height: auto; } }
.photo-grid figcaption { padding: 10px 14px; font-size: 14px; color: var(--muted); }
.photo-grid figure.tall img { height: 320px; }

/* 首页照片条 */
.strip { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.strip img { width: 100%; height: 240px; object-fit: cover; border-radius: 10px; display: block; }
@media (max-width: 720px) { .strip { grid-template-columns: 1fr; } .strip img { height: 220px; } }

/* 用户反馈截图 */
.reviews { display: flex; gap: 20px; justify-content: center; flex-wrap: wrap; }
.reviews img { max-width: 300px; border: 1px solid var(--line); border-radius: 10px; }

/* 案例 */
.case-block { margin-bottom: 44px; }
.case-block h3.sub { font-size: 20px; color: var(--primary); margin-bottom: 16px; padding-left: 12px; border-left: 4px solid var(--accent); }
.case-photo { margin-bottom: 40px; background: #fff; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; }
.case-photo img { width: 100%; max-height: 520px; object-fit: cover; display: block; }
.case-photo .cap { padding: 14px 18px; font-size: 15px; color: var(--muted); }
.case-photo .cap strong { color: var(--text); }
video.worksite { width: 100%; max-width: 760px; display: block; margin: 0 auto; border-radius: 10px; background: #000; }

