:root{
  --mist:#eef1ea;--cloud:#f7f6f1;--tea-light:#b7c4a8;--tea:#7d8f6f;
  --tea-deep:#55674a;--pine:#3d4a38;--ink:#2e342b;--earth:#a98f6f;--paper:#fbfaf6;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Noto Sans TC',sans-serif;color:var(--ink);background:var(--paper);line-height:1.9;font-weight:300;}
h1,h2,h3{font-family:'Noto Serif TC',serif;font-weight:600;color:var(--pine);}
a{color:inherit;text-decoration:none;}
.container{max-width:780px;margin:0 auto;padding:0 24px;}
header{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(251,250,246,.92);backdrop-filter:blur(8px);border-bottom:1px solid rgba(125,143,111,.18);}
.nav{max-width:1100px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;height:68px;}
.logo{display:flex;align-items:center;gap:10px;font-family:'Noto Serif TC',serif;font-size:1.25rem;font-weight:700;color:var(--tea-deep);letter-spacing:.12em;}
.logo svg{width:30px;height:30px;}
.back-link{font-size:.9rem;color:var(--tea-deep);letter-spacing:.1em;border:1px solid var(--tea-light);padding:7px 18px;border-radius:2px;transition:all .3s;}
.back-link:hover{background:var(--mist);}
.page-hero{padding:138px 0 36px;background:linear-gradient(180deg,#e3e8d8,var(--paper));}
.page-hero .crumbs{font-size:.8rem;letter-spacing:.04em;color:#6a7263;margin-bottom:14px;}
.page-hero .crumbs a{color:#55674a;}
.page-hero .tag{display:inline-block;font-size:.74rem;letter-spacing:.12em;padding:4px 12px;border-radius:20px;margin-bottom:14px;}
.page-hero .tag.slp{color:var(--tea-deep);background:var(--mist);border:1px solid var(--tea-light);}
.page-hero .tag.med{color:var(--tea-deep);background:var(--mist);border:1px solid rgba(125,143,111,.3);}
.page-hero h1{font-size:clamp(1.5rem,3.4vw,2.1rem);letter-spacing:.06em;margin-bottom:10px;}
.page-hero .loc{color:#5a6354;font-size:.95rem;letter-spacing:.06em;}
main{padding:40px 0 70px;}
.svc-line{font-size:.98rem;color:#414a3c;margin-bottom:26px;}
.card{background:var(--cloud);border:1px solid rgba(125,143,111,.2);border-radius:8px;padding:8px 26px;}
.row{display:flex;gap:16px;align-items:flex-start;padding:18px 0;border-bottom:1px dashed rgba(125,143,111,.25);}
.row:last-child{border-bottom:none;}
.row .ic{width:22px;flex:none;margin-top:4px;}
.row .ic svg{width:20px;height:20px;stroke:var(--tea);fill:none;stroke-width:1.6;display:block;}
.row .k{font-size:.78rem;letter-spacing:.12em;color:#8a957f;margin-bottom:3px;}
.row .v{font-size:1rem;color:var(--ink);}
.row .v a{color:var(--tea-deep);border-bottom:1px solid var(--tea-light);word-break:break-all;}
.row .v a:hover{color:var(--pine);}
.btn-map{display:inline-block;margin-top:8px;background:var(--tea-deep);color:var(--cloud);padding:9px 20px;border-radius:3px;font-size:.88rem;letter-spacing:.08em;transition:background .3s;}
.btn-map:hover{background:var(--pine);}
.actions{margin-top:30px;display:flex;flex-wrap:wrap;gap:12px;}
.actions a{font-size:.9rem;letter-spacing:.08em;padding:10px 22px;border-radius:3px;}
.a-back{border:1px solid var(--tea);color:var(--tea-deep);}
.a-back:hover{background:rgba(125,143,111,.1);}
.note{margin-top:30px;font-size:.82rem;color:#8a957f;line-height:1.9;background:var(--cloud);border:1px dashed rgba(125,143,111,.3);border-radius:6px;padding:15px 18px;}
footer{background:var(--pine);color:#aab5a0;padding:34px 0;text-align:center;font-size:.82rem;letter-spacing:.1em;margin-top:10px;}
footer a{color:#c9d1c1;border-bottom:1px solid rgba(255,255,255,.2);}
@media(max-width:600px){.page-hero{padding:118px 0 30px;}.card{padding:6px 18px;}}
