:root{--ink:#2b2420;--brown:#7a4a2b;--jade:#3f7f6b;--jade-l:#e3efe9;--paper:#faf6ef;--paper2:#f2eadd;--red:#a8362a;--r:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:"Noto Serif SC","Songti SC","STSong","SimSun",serif;color:var(--ink);background:var(--paper);line-height:1.8;font-size:17px}
a{color:var(--jade)}
.nav{position:sticky;top:0;z-index:9;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px;padding:10px 16px;background:rgba(43,36,32,.94);color:#f5ead8}
.nav .brand{color:#f5ead8;font-weight:700;text-decoration:none;font-size:18px}
.nav nav{display:flex;gap:14px;overflow-x:auto}.nav nav a{color:#e8d8bf;text-decoration:none;font-size:15px;white-space:nowrap}
.hero{text-align:center;padding:72px 20px 64px;color:#fbf3e6;background:radial-gradient(circle at 80% 20%,rgba(63,127,107,.45),transparent 50%),linear-gradient(160deg,#3a2c24,#6b4127 60%,#7a4a2b)}
.seal{display:inline-grid;place-items:center;width:64px;height:64px;border:3px solid #e9b9a0;color:#e9b9a0;border-radius:8px;font-size:34px;transform:rotate(-6deg);margin-bottom:12px}
.hero h1{font-size:clamp(28px,7vw,48px);margin:.2em 0;letter-spacing:.12em}
.slogan{font-size:clamp(16px,4vw,21px);opacity:.92;letter-spacing:.08em}
.hero-btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:24px}
.btn{display:inline-block;padding:12px 22px;border-radius:999px;font-size:17px;text-decoration:none;border:2px solid transparent;cursor:pointer;font-family:inherit}
.btn.primary{background:var(--red);color:#fff}.btn.primary:hover{filter:brightness(1.1)}
.btn.ghost{border-color:currentColor;color:inherit;background:transparent}
.hero .btn.ghost{color:#fbf3e6}
.sec{padding:52px 18px;max-width:1080px;margin:0 auto}
.alt{max-width:none;background:var(--paper2)}.alt>*{max-width:1044px;margin-left:auto;margin-right:auto}
h2{text-align:center;font-size:26px;margin:0 0 28px;color:var(--brown)}
h2 span{padding:0 18px;background:linear-gradient(transparent 62%,var(--jade-l) 62%)}
.intro{white-space:pre-line;max-width:780px;margin:0 auto;text-indent:2em}
.grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.card{background:#fff;border-radius:var(--r);padding:22px;box-shadow:0 2px 14px rgba(90,60,30,.08);border:1px solid #eadfcd}
.svc{text-align:center}.svc .icon{width:58px;height:58px;margin:0 auto 6px;display:grid;place-items:center;border-radius:50%;background:var(--jade);color:#fff;font-size:26px}
.svc h3,.doc h3{margin:.3em 0;color:var(--ink)}.svc p{font-size:15px;color:#5b4f45}
.doc{text-align:center}.avatar{width:96px;height:96px;border-radius:50%;object-fit:cover;margin:0 auto;display:grid;place-items:center}
.avatar.ph{background:var(--brown);color:#fff;font-size:38px}
.doc .title{color:var(--jade);margin:0}.doc .spec{font-size:15px;color:var(--brown);margin:0}.doc p{font-size:15px}
.hours{white-space:pre-line;max-width:600px;margin:0 auto;text-align:center;font-size:18px}
.news{list-style:none;padding:0;max-width:800px;margin:0 auto}
.news li{background:#fff;border:1px solid #eadfcd;border-radius:10px;margin-bottom:10px;padding:12px 16px}
.news summary{cursor:pointer;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.news time{margin-left:auto;color:#998;font-size:14px}
.news p{white-space:pre-line;margin:.6em 0 0}
.tag{background:var(--jade-l);color:var(--jade);font-size:13px;padding:1px 8px;border-radius:6px}
.form{max-width:560px;margin:0 auto;display:grid;gap:12px}
.form label{display:grid;gap:4px;font-size:16px}
input,textarea,select{font:inherit;padding:10px 12px;border:1px solid #d8c9b2;border-radius:10px;background:#fffdf9;width:100%}
.hp{position:absolute;left:-9999px}
.msg.ok{color:var(--jade)}.msg.err{color:var(--red)}.note{font-size:14px;color:#887}
.contact{max-width:640px;margin:0 auto}
footer{text-align:center;padding:26px 16px;background:var(--ink);color:#cbbba3;font-size:14px}
@media(min-width:760px){.hero{padding:110px 20px 96px}}
