/* 乾德永固官网 V1 · 共用样式
 * 配色沿用问诊台：混凝土灰 #EDEFEC + 注浆青 #0E6A6E（清单 3.1 保持现状）
 * 不引 Google Fonts —— 国内服务器加载会卡住，撞「首屏 < 2 秒」（清单 4.6）
 */

:root{
  --ground:#EDEFEC;
  --surface:#FFFFFF;
  --surface-2:#F5F7F3;
  --line:#D2D8D1;
  --line-strong:#B0B9B0;
  --ink:#141917;
  --ink-2:#4B554F;
  --ink-3:#78827B;
  /* 品牌红 PANTONE 200 C —— 只给标志用，不参与交互色。
     暗色模式按品牌手册改用反白版（手册原文：反白 · 深底与红底）。 */
  --brand:#C8102E;
  --accent:#0E6A6E;
  --accent-ink:#FFFFFF;
  --accent-soft:#DCEAE9;
  --accent-deep:#0A5054;
  --font-display:"Noto Serif SC","Source Han Serif SC","Songti SC","SimSun",serif;
  --font-cond:"Barlow Semi Condensed","PingFang SC",system-ui,sans-serif;
  --font-body:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;
  --pad:20px;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --ground:#0F1211; --surface:#171B19; --surface-2:#1D2320;
    --line:#2C3330; --line-strong:#414A45;
    --ink:#E7EBE7; --ink-2:#A9B2AC; --ink-3:#7F8983;
    --accent:#4FB6B2; --accent-ink:#07211F; --accent-soft:#122F2E; --accent-deep:#7FCFCB;
    --brand:#FFFFFF;
  }
}
:root[data-theme="dark"]{
  --ground:#0F1211; --surface:#171B19; --surface-2:#1D2320;
  --line:#2C3330; --line-strong:#414A45;
  --ink:#E7EBE7; --ink-2:#A9B2AC; --ink-3:#7F8983;
  --accent:#4FB6B2; --accent-ink:#07211F; --accent-soft:#122F2E; --accent-deep:#7FCFCB;
  --brand:#FFFFFF;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ground);color:var(--ink);
  font-family:var(--font-body);font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{margin:0;font-family:var(--font-display);font-weight:700;line-height:1.35;text-wrap:balance}
p,ul,ol{margin:0}
img{max-width:100%;height:auto}
a{color:var(--accent);text-underline-offset:3px}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto}}

.wrap{max-width:880px;margin:0 auto;padding-inline:var(--pad)}
.cap{font-family:var(--font-cond);font-size:13px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--accent);font-weight:600}
.lede{color:var(--ink-2);font-size:17px}
.muted{color:var(--ink-3);font-size:14px}
.tel{font-family:var(--font-cond);letter-spacing:.04em;font-weight:600;font-variant-numeric:tabular-nums}

/* ---------- 顶部 ---------- */
.top{background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.top .wrap{display:flex;align-items:center;gap:16px;min-height:60px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:9px;font-family:var(--font-display);
  font-weight:700;font-size:18px;color:var(--ink);text-decoration:none;margin-right:auto}
.brand svg{flex:none}
.nav{display:flex;gap:4px;flex-wrap:wrap}
.nav a{font-size:15px;color:var(--ink-2);text-decoration:none;padding:6px 10px;border-radius:3px}
.nav a:hover{background:var(--surface-2);color:var(--ink)}
.nav a[aria-current="page"]{color:var(--accent);font-weight:600}
@media (max-width:640px){
  .top{position:static}
  .top .wrap{padding-block:10px}
  .brand{width:100%;margin-right:0}
  .nav{width:100%;gap:2px}
  .nav a{padding:5px 8px;font-size:14px}
}

/* ---------- 版块 ---------- */
.sec{padding-block:44px;border-top:1px solid var(--line)}
.sec:first-of-type{border-top:0}
.sec h2{font-size:24px;margin-top:6px}
.sec > p{margin-top:12px}
.hero{padding-block:56px 44px}
.hero h1{font-size:clamp(28px,5.4vw,40px)}
.hero .lede{margin-top:16px;max-width:38em}

/* ---------- 按钮 ---------- */
.btnrow{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px;align-items:center}
.btn{display:inline-block;padding:12px 22px;border-radius:3px;text-decoration:none;
  font-size:15px;font-weight:600;border:1px solid var(--line-strong);color:var(--ink);background:var(--surface)}
.btn:hover{border-color:var(--accent)}
.btn.pri{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.btn.pri:hover{background:var(--accent-deep);border-color:var(--accent-deep)}

/* ---------- 卡片网格 ---------- */
.grid{display:grid;gap:14px;margin-top:22px}
.grid.c2{grid-template-columns:repeat(2,1fr)}
.grid.c4{grid-template-columns:repeat(2,1fr)}
@media (max-width:640px){.grid.c2,.grid.c4{grid-template-columns:1fr}}
.card{background:var(--surface);border:1px solid var(--line);border-radius:3px;padding:20px;
  display:block;text-decoration:none;color:inherit}
a.card:hover{border-color:var(--accent)}
.card .n{font-family:var(--font-cond);font-size:13px;letter-spacing:.16em;color:var(--accent);font-weight:600}
.card h3{font-size:18px;margin-top:4px}
.card p{margin-top:8px;color:var(--ink-2);font-size:15px}

/* ---------- 数字条 ---------- */
.figs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:22px}
@media (max-width:640px){.figs{grid-template-columns:repeat(2,1fr)}}
.fig{background:var(--surface);border:1px solid var(--line);border-radius:3px;padding:16px;text-align:center}
.fig b{display:block;font-family:var(--font-cond);font-size:30px;font-weight:600;
  color:var(--accent);font-variant-numeric:tabular-nums;line-height:1.2}
.fig span{display:block;font-size:13px;color:var(--ink-3);margin-top:2px}

/* ---------- 强调块 ---------- */
.note{background:var(--surface-2);border-left:3px solid var(--accent);border-radius:0 3px 3px 0;
  padding:18px 20px;margin-top:20px}
.note p + p{margin-top:10px}

/* ---------- 列表 ---------- */
.list{margin-top:16px;padding-left:0;list-style:none}
.list li{padding-left:20px;position:relative;margin-top:10px;color:var(--ink-2)}
.list li::before{content:"";position:absolute;left:4px;top:.72em;width:6px;height:6px;
  border-radius:50%;background:var(--accent)}
.list li b{color:var(--ink)}

/* ---------- 定义表 ---------- */
.dl{margin-top:18px;border-top:1px solid var(--line)}
.dl > div{display:flex;gap:18px;padding-block:13px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.dl dt{flex:0 0 7.5em;color:var(--ink-3);font-size:14px;margin:0}
.dl dd{margin:0;flex:1 1 16em;min-width:0}

/* ---------- 页脚 ---------- */
.foot{background:var(--surface);border-top:1px solid var(--line);margin-top:56px;
  padding-block:32px;font-size:14px;color:var(--ink-2)}
.foot .cols{display:flex;gap:32px;flex-wrap:wrap;justify-content:space-between}
.foot h4{font-size:14px;font-family:var(--font-body);color:var(--ink);margin-bottom:8px}
.foot a{color:var(--ink-2);text-decoration:none;display:block;padding-block:3px}
.foot a:hover{color:var(--accent)}
.foot .bar{margin-top:26px;padding-top:16px;border-top:1px solid var(--line);
  display:flex;gap:10px 18px;flex-wrap:wrap;color:var(--ink-3);font-size:13px}
.foot .bar a{display:inline;color:var(--ink-3)}
.disclaimer{margin-top:14px;color:var(--ink-3);font-size:13px;line-height:1.7}

/* ---------- 底部常驻联系条（手机） ---------- */
.dock{display:none}
@media (max-width:640px){
  .dock{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:30;
    background:var(--surface);border-top:1px solid var(--line)}
  .dock a{flex:1;text-align:center;padding:12px 6px;font-size:15px;font-weight:600;
    text-decoration:none;color:var(--ink)}
  .dock a.pri{background:var(--accent);color:var(--accent-ink)}
  body{padding-bottom:52px}
}

/* ---------- 页脚：注册地址与高德入口 ---------- */
.foot .org{max-width:30rem}
.foot .addr{margin-top:10px;line-height:1.75;color:var(--ink-3)}
.foot .maplink{margin-top:4px;color:var(--accent)}
.foot .maplink:hover{text-decoration:underline}

/* ---------- 现场照 ----------
   注意：类名不能叫 .fig —— 那个已经被「业绩数字」块占用了（.figs > .fig）。 */
.photo{margin:24px 0 0}
.photo img{display:block;width:100%;height:auto;border:1px solid var(--line);
  border-radius:3px;background:var(--surface-2)}
.photo figcaption{margin-top:9px;font-size:13px;line-height:1.7;color:var(--ink-3)}
/* 首页主图：4:3 原图裁成横带，手机上放宽一点免得太扁 */
.photo.band img{aspect-ratio:21/9;object-fit:cover;object-position:center 58%}
@media(max-width:640px){.photo.band img{aspect-ratio:3/2}}
/* 竖构图并排 */
.photorow{display:flex;gap:20px;flex-wrap:wrap;margin-top:24px}
.photorow .photo{flex:1 1 260px;max-width:420px;margin:0}

/* ---------- 公众号二维码 ---------- */
.qr{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:20px}
.qr img{width:170px;height:170px;flex:none;background:#FFFFFF;padding:10px;
  border:1px solid var(--line);border-radius:3px}
.qr .qrtext{flex:1 1 240px;min-width:0}
.qr .qrtext p{margin-top:8px}
.qr .qrtext p:first-child{margin-top:0}
