:root{
  --paper:#fbf8f2;
  --ink:#1d1b18;
  --ink-2:#4a453d;
  --ink-3:#7d766a;
  --line:#ddd5c6;
  --red:#9c3b2a;
  --green:#2f4f43;
  --card:#fffdf8;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  font-size:17px;line-height:1.85;
  background-image:radial-gradient(rgba(0,0,0,.022) 1px,transparent 1px);
  background-size:4px 4px;
}
.wrap{max-width:820px;margin:0 auto;padding:0 22px}
.serif{font-family:"Songti SC","Noto Serif SC",Georgia,serif}

/* ---------- 顶部与导航 ---------- */
header.site{border-bottom:1px solid var(--line);background:rgba(251,248,242,.95);position:sticky;top:0;z-index:9;backdrop-filter:blur(6px)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 0}
.brand{font-weight:700;letter-spacing:.02em;font-size:17px;text-decoration:none;color:var(--ink)}
.brand small{display:block;font-size:11.5px;font-weight:400;color:var(--ink-3);letter-spacing:.06em;margin-top:2px}
.tel{font-weight:700;color:var(--red);text-decoration:none;font-size:16px;white-space:nowrap;border-bottom:2px solid rgba(156,59,42,.25);padding-bottom:1px}
.tel:hover{border-bottom-color:var(--red)}
nav.main{border-top:1px solid rgba(221,213,198,.55)}
nav.main .wrap{display:flex;gap:2px;overflow-x:auto;padding-top:0;padding-bottom:0;-webkit-overflow-scrolling:touch;scrollbar-width:none}
nav.main .wrap::-webkit-scrollbar{display:none}
nav.main a{flex:none;padding:10px 13px;font-size:14.5px;color:var(--ink-2);text-decoration:none;border-bottom:2px solid transparent}
nav.main a:hover{color:var(--ink)}
nav.main a.on{color:var(--red);border-bottom-color:var(--red);font-weight:600}

/* ---------- 首屏 ---------- */
.hero{padding:48px 0 30px}
.hero h1{font-size:clamp(27px,4.6vw,40px);line-height:1.36;margin:0 0 20px;letter-spacing:-.01em;font-weight:700}
.hero h1 em{font-style:normal;color:var(--red);border-bottom:6px solid rgba(156,59,42,.16);padding-bottom:1px}
.lede{font-size:18px;color:var(--ink-2);margin:0 0 26px;max-width:38em}
.lede b{color:var(--ink);font-weight:600}
.factrow{display:flex;flex-wrap:wrap;gap:8px 10px;margin:0 0 24px;font-size:14.5px;color:var(--ink-2)}
.factrow span{border:1px solid var(--line);background:var(--card);border-radius:2px;padding:5px 10px}

.note{background:#fffbe8;border:1px solid #e8dcb5;border-left:4px solid #c9a227;padding:16px 18px;margin:8px 0 12px;font-size:15.5px;color:#4a3f22;box-shadow:2px 3px 0 rgba(0,0,0,.035);transform:rotate(-.35deg)}
.note b{color:#7a5c00}

/* ---------- 区块 ---------- */
section{padding:44px 0;border-top:1px solid var(--line)}
h2{font-size:clamp(21px,3vw,26px);margin:0 0 6px;letter-spacing:-.01em}
h2 .num{color:var(--ink-3);font-size:13px;font-weight:400;letter-spacing:.12em;display:block;margin-bottom:8px}
.kicker{color:var(--ink-3);font-size:15px;margin:0 0 26px}
p{margin:0 0 17px}
p:last-child{margin-bottom:0}
a{color:var(--red)}

/* ---------- 图片 ---------- */
figure{margin:26px 0}
figure img{width:100%;display:block;border-radius:3px;border:1px solid var(--line);box-shadow:0 2px 10px rgba(60,50,30,.08)}
figure figcaption{font-size:13.5px;color:var(--ink-3);margin-top:9px;letter-spacing:.02em}
figure figcaption::before{content:"· "}
.figrow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.figrow figure{margin:0}

/* ---------- 卡片与手记 ---------- */
.memo{background:var(--card);border:1px solid var(--line);padding:26px 26px 22px;position:relative}
.memo::after{content:"熊学长手记";position:absolute;right:14px;bottom:10px;font-size:11.5px;color:var(--ink-3);letter-spacing:.14em}
.memo p{font-size:16.5px;line-height:2;color:var(--ink-2)}
.memo p b{color:var(--ink)}
.memo .sig{font-family:"Kaiti SC",KaiTi,serif;font-size:19px;color:var(--ink);margin-top:6px}

/* ---------- 时间轴 / 步骤 ---------- */
.tl{border-left:2px solid var(--line);margin:0 0 0 6px;padding-left:22px;list-style:none}
.tl li{position:relative;padding:0 0 24px}
.tl li::before{content:"";position:absolute;left:-27px;top:9px;width:9px;height:9px;border-radius:50%;background:var(--paper);border:2px solid var(--red)}
.tl .when{font-weight:700;font-size:15px;color:var(--red);letter-spacing:.04em}
.tl .what{margin-top:3px;font-size:16px;color:var(--ink-2)}
.tl li:last-child{padding-bottom:0}

.steps{counter-reset:s;list-style:none;padding:0;margin:0}
.steps li{counter-increment:s;position:relative;padding:0 0 22px 44px}
.steps li::before{content:counter(s);position:absolute;left:0;top:1px;width:28px;height:28px;border-radius:50%;background:var(--green);color:#fff;font-size:14px;display:flex;align-items:center;justify-content:center;font-weight:700}
.steps h3{margin:0 0 5px;font-size:17px}
.steps p{font-size:15.8px;color:var(--ink-2);margin:0}

/* ---------- 数字 / 表格 / 列表 ---------- */
.nums{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin:24px 0 0}
.nums div{background:var(--card);padding:20px 14px;text-align:center}
.nums b{display:block;font-size:clamp(22px,3.4vw,30px);line-height:1.2;color:var(--ink);font-family:"Songti SC",serif}
.nums span{font-size:12.5px;color:var(--ink-3);line-height:1.5;display:block;margin-top:6px}

table.t{width:100%;border-collapse:collapse;font-size:15px;background:var(--card)}
table.t th,table.t td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top;line-height:1.7}
table.t th{background:#f4efe4;font-weight:600;white-space:nowrap}

ul.plain{list-style:none;padding:0;margin:0}
ul.plain li{padding:12px 0;border-bottom:1px dashed var(--line);font-size:16px;color:var(--ink-2)}
ul.plain li b{color:var(--ink)}
ul.plain li:last-child{border-bottom:0}

.donts{display:grid;gap:10px;margin:22px 0 0}
.dont{background:#fdf6f4;border:1px solid #edd6d0;padding:13px 16px;font-size:15.5px;color:#6d3529;border-radius:2px}
.dont b{color:#8d2f1f}

/* ---------- FAQ ---------- */
details{border-bottom:1px solid var(--line);padding:14px 0}
details summary{cursor:pointer;font-weight:600;font-size:16.5px;list-style:none;display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
details summary::-webkit-details-marker{display:none}
details summary::after{content:"＋";color:var(--ink-3);font-weight:400;flex:none}
details[open] summary::after{content:"－"}
details .ans{padding:10px 0 2px;color:var(--ink-2);font-size:15.8px}

/* ---------- 服务卡 ---------- */
.svc{border:1px solid var(--line);background:var(--card);padding:22px 22px 18px;margin:0 0 18px}
.svc h3{margin:0 0 4px;font-size:19px}
.svc .who{font-size:14.5px;color:var(--ink-3);margin:0 0 12px}
.svc dl{margin:0;font-size:15.5px}
.svc dt{color:var(--green);font-weight:600;margin-top:10px;font-size:14px;letter-spacing:.06em}
.svc dd{margin:2px 0 0;color:var(--ink-2)}

/* ---------- 工具页 ---------- */
.tool{background:var(--card);border:1px solid var(--line);padding:26px}
.tool label{display:block;font-size:14px;color:var(--ink-3);letter-spacing:.06em;margin:0 0 6px}
.tool input[type=number]{width:100%;max-width:260px;font-size:20px;padding:10px 12px;border:1px solid var(--line);background:#fff;border-radius:2px;font-family:inherit}
.tool input[type=number]:focus{outline:2px solid rgba(156,59,42,.25);border-color:var(--red)}
.tool button{background:var(--red);color:#fff;border:0;padding:12px 26px;font-size:16px;font-weight:600;border-radius:2px;cursor:pointer;font-family:inherit;margin-top:14px}
.tool button:hover{background:#87301f}
.result{display:none;margin-top:22px}
.result.show{display:block}
.rrow{display:grid;grid-template-columns:88px 1fr;gap:14px;padding:13px 0;border-bottom:1px dashed var(--line);align-items:baseline}
.rrow .lab{font-weight:700;font-family:"Songti SC",serif;font-size:17px}
.rrow .lab.c{color:var(--red)} .rrow .lab.w{color:var(--green)} .rrow .lab.b{color:#7a5c00}
.rrow .val{font-size:15.5px;color:var(--ink-2)}
.rrow .val b{color:var(--ink)}

/* ---------- 到店 ---------- */
.visit{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.visit h3{font-size:15px;letter-spacing:.1em;color:var(--ink-3);font-weight:400;margin:0 0 8px}
.visit p{font-size:16px;margin:0 0 8px}
.visit .big{font-size:19px;font-weight:700;color:var(--ink)}
.btn{display:inline-block;margin-top:8px;background:var(--red);color:#fff;text-decoration:none;padding:12px 22px;font-weight:600;border-radius:2px;font-size:16px}
.btn:hover{background:#87301f}
.btn.ghost{background:transparent;color:var(--red);border:1px solid var(--red)}

/* ---------- 页脚 ---------- */
footer{padding:34px 0 46px;border-top:1px solid var(--line);color:var(--ink-3);font-size:13.5px;line-height:1.9}
footer b{color:var(--ink-2)}
footer nav{margin-bottom:14px;font-size:14px}
footer nav a{color:var(--ink-2);text-decoration:none;margin-right:14px}
footer nav a:hover{color:var(--red)}

@media(max-width:640px){
  body{font-size:16px}
  .hero{padding:32px 0 20px}
  .nums{grid-template-columns:repeat(2,1fr)}
  .visit{grid-template-columns:1fr;gap:22px}
  .figrow{grid-template-columns:1fr}
  .figrow figure+figure{margin-top:14px}
  .memo{padding:20px 18px 18px}
  section{padding:34px 0}
  .tl{padding-left:18px}
  .tool{padding:20px 16px}
}

/* ---------- 知识栏目：文章列表 ---------- */
.artlist{list-style:none;padding:0;margin:18px 0 0}
.artlist li{border-bottom:1px solid var(--line);padding:22px 0}
.artlist li:last-child{border-bottom:0}
.artlist a.ttl{display:block;font-family:"Songti SC","Noto Serif SC",Georgia,serif;font-size:20px;font-weight:700;line-height:1.5;color:var(--ink);text-decoration:none;margin-bottom:6px}
.artlist a.ttl:hover{color:var(--red)}
.artlist .abs{font-size:15.5px;color:var(--ink-2);margin:0 0 8px}
.artmeta{font-size:13px;color:var(--ink-3);letter-spacing:.04em}
.artmeta span+span::before{content:" · ";margin:0 4px;color:var(--line)}
.tag{display:inline-block;font-size:12px;border:1px solid var(--line);background:#f4efe4;color:var(--ink-2);padding:2px 8px;border-radius:2px;margin-right:6px;letter-spacing:.04em}

/* ---------- 文章正文 ---------- */
article .artbody{font-size:17px}
article .artbody h2{font-size:21px;margin:36px 0 12px;padding-top:6px}
article .artbody h3{font-size:17.5px;margin:26px 0 8px;color:var(--green)}
article .artbody ul,article .artbody ol{padding-left:22px;margin:0 0 18px}
article .artbody li{margin-bottom:8px;color:var(--ink-2)}
article .artbody blockquote{margin:22px 0;padding:14px 20px;border-left:3px solid var(--red);background:#fdf6f4;color:#6d3529;font-size:16px}
article .artbody blockquote p:last-child{margin-bottom:0}
.artlead{font-size:17.5px;color:var(--ink-2);border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:8px}
.artlead b{color:var(--ink)}
.byline{font-size:13.5px;color:var(--ink-3);margin:18px 0 0;padding-bottom:2px}
.artfoot{margin-top:40px;padding:20px 22px;background:var(--card);border:1px solid var(--line);font-size:15px;color:var(--ink-2)}
.artfoot b{color:var(--ink)}
.related{margin-top:34px;padding-top:22px;border-top:1px solid var(--line)}
.related h3{font-size:14px;letter-spacing:.1em;color:var(--ink-3);font-weight:400;margin:0 0 10px}
.related a{display:block;padding:7px 0;text-decoration:none;color:var(--ink);font-size:16px;border-bottom:1px dashed var(--line)}
.related a:last-child{border-bottom:0}
.related a:hover{color:var(--red)}

/* ---------- 微信留资 ---------- */
.wxbox{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}
.wxbox .qr{background:var(--card);border:1px solid var(--line);padding:14px;text-align:center}
.wxbox .qr img{width:100%;max-width:180px;display:block;margin:0 auto;border-radius:2px}
.wxbox .qr .ph{width:180px;height:180px;margin:0 auto;border:1px dashed var(--line);display:flex;align-items:center;justify-content:center;font-size:12.5px;color:var(--ink-3);line-height:1.6;padding:10px;text-align:center}
.wxbox .qr .cap{font-size:12.5px;color:var(--ink-3);margin-top:10px}

.wxid{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0 0}
.wxid code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:17px;background:#f4efe4;border:1px solid var(--line);padding:7px 12px;border-radius:2px;letter-spacing:.06em;color:var(--ink)}
.wxid button{background:var(--green);color:#fff;border:0;padding:9px 16px;font-size:14.5px;font-weight:600;border-radius:2px;cursor:pointer;font-family:inherit}
.wxid button:hover{background:#233c33}
.wxid button.done{background:#7d766a}

/* 移动端固定底栏 */
.stickycta{display:none}
@media(max-width:640px){
  .stickycta{display:grid;grid-template-columns:1fr 1fr;gap:1px;position:fixed;left:0;right:0;bottom:0;z-index:50;background:var(--line);border-top:1px solid var(--line)}
  .stickycta a{display:flex;align-items:center;justify-content:center;gap:6px;padding:14px 6px;font-size:15.5px;font-weight:600;text-decoration:none;background:var(--card);color:var(--ink)}
  .stickycta a.tel2{background:var(--red);color:#fff}
  body{padding-bottom:56px}
  .wxbox{grid-template-columns:1fr;gap:18px}
  .wxbox .qr img,.wxbox .qr .ph{margin-left:0}
}

/* 顶部悬浮咨询条（桌面） */
.topcta{display:none}
@media(min-width:641px){
  .topcta{display:inline-block;margin-left:auto;margin-right:14px;font-size:14.5px;font-weight:600;color:var(--red);text-decoration:none;border:1px solid rgba(156,59,42,.4);padding:7px 14px;border-radius:2px}
  .topcta:hover{background:rgba(156,59,42,.06)}
  .bar{align-items:center}
}

figure picture{display:block}
