:root{--bg:#f7f5ee;--surface:#fff;--ink:#23281d;--muted:#545b4b;--line:#e4e0d3;--brand:#66763a;--brand-deep:#4e5b2c;--brand-ink:#fff;--brand-soft:#ecefdf;--accent:#c9692f;--accent-soft:#fbebdd;--ok:#3c8d4e;--closed:#b4513a;--radius:20px;--shadow:0 1px 2px #23281d0f,0 10px 30px #23281d14}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#14170f;--surface:#1d2117;--ink:#eef0e6;--muted:#b3b9a7;--line:#2f3427;--brand:#a9bc72;--brand-deep:#c3d48e;--brand-ink:#14170f;--brand-soft:#262d1a;--accent:#f0a574;--accent-soft:#3a271a;--ok:#7bd08c;--closed:#f08c72;--shadow:0 1px 2px #0000004d,0 10px 30px #0000004d}}:root[data-theme=dark]{--bg:#14170f;--surface:#1d2117;--ink:#eef0e6;--muted:#b3b9a7;--line:#2f3427;--brand:#a9bc72;--brand-deep:#c3d48e;--brand-ink:#14170f;--brand-soft:#262d1a;--accent:#f0a574;--accent-soft:#3a271a;--ok:#7bd08c;--closed:#f08c72}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;padding-bottom:84px;font-family:Noto Sans TC,PingFang TC,Microsoft JhengHei,system-ui,sans-serif;font-size:17px;line-height:1.75;overflow-x:hidden}a{color:inherit}img{max-width:100%;display:block}.wrap{max-width:1120px;padding:0 16px;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));margin:0 auto}section[id]{scroll-margin-top:72px}.narrow{max-width:820px}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.skip{background:var(--surface);z-index:99;border-radius:8px;padding:8px 14px;position:absolute;top:8px;left:-9999px}.skip:focus{left:8px}header.top{z-index:30;background:var(--bg);background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);position:sticky;top:0}.top .wrap{justify-content:space-between;align-items:center;gap:12px;height:64px;display:flex}.logo{letter-spacing:.04em;align-items:center;gap:10px;font-size:20px;font-weight:900;text-decoration:none;display:flex}.logo-mark{background:var(--brand);border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.logo-mark svg{width:22px;height:22px}.logo small{color:var(--muted);letter-spacing:.06em;font-size:12px;font-weight:500;line-height:1.1;display:block}nav.links{gap:22px;font-size:16px;display:none}nav.links a{color:var(--muted);text-decoration:none}nav.links a:hover,nav.links a[aria-current=page]{color:var(--brand-deep);font-weight:700}.top-call{background:var(--brand);color:var(--brand-ink);border-radius:999px;padding:8px 18px;font-size:16px;font-weight:700;text-decoration:none;display:none}.menu-mobile{scrollbar-width:none;border-top:1px solid var(--line);gap:4px;padding:6px 10px;display:flex;overflow-x:auto}.menu-mobile::-webkit-scrollbar{display:none}.menu-mobile a{color:var(--muted);border-radius:999px;flex:none;padding:4px 12px;font-size:15.5px;text-decoration:none}.menu-mobile a[aria-current=page]{background:var(--brand-soft);color:var(--brand-deep);font-weight:700}.hero{color:#fff;align-items:flex-end;min-height:560px;display:flex;position:relative;overflow:hidden}.hero-bg{background:radial-gradient(120% 90% at 85% 10%,#8a9a55 0%,#0000 60%),linear-gradient(160deg,#66763a 0%,#4e5b2c 60%,#3a4421 100%);position:absolute;inset:0}.hero:after{content:"";background:linear-gradient(#14180c1a 0%,#14180c59 55%,#14180c99 100%);position:absolute;inset:0}.hero .wrap{z-index:2;width:100%;padding-top:72px;padding-bottom:36px;position:relative}.hero-grid{gap:24px;display:grid}.eyebrow{letter-spacing:.04em;background:#ffffff29;border:1px solid #ffffff40;border-radius:999px;align-items:center;gap:8px;padding:5px 14px;font-size:14px;font-weight:700;display:inline-flex}.eyebrow svg{width:16px;height:16px}h1{letter-spacing:.03em;margin:14px 0 12px;font-family:Noto Serif TC,serif;font-size:clamp(38px,8vw,66px);font-weight:900;line-height:1.15}h1 em{color:#d9e6a6;font-style:normal}h1 em.h1-sub{letter-spacing:.02em;margin-top:6px;font-size:clamp(22px,4.6vw,34px);line-height:1.4;display:inline-block}h1 em.h1-sub span{display:inline-block}.lead{opacity:.95;max-width:30em;margin:0 0 22px;font-size:18px}.actions{flex-wrap:wrap;gap:10px;display:flex}.btn{color:#fff;background:#ffffff1f;border:1.5px solid #ffffff73;border-radius:999px;align-items:center;gap:8px;min-height:48px;padding:13px 22px;font-size:17px;font-weight:700;text-decoration:none;transition:transform .15s;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.line{color:#fff;background:#06c755;border-color:#06c755}.btn.solid{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}.btn.ghost{background:var(--surface);border-color:var(--line);color:var(--ink)}.btn svg{flex:none;width:20px;height:20px}.status-card{background:var(--surface);color:var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);align-self:end;padding:22px}.tagline{border-bottom:1px dashed var(--line);color:var(--brand-deep);letter-spacing:.04em;margin:0 0 14px;padding-bottom:12px;font-family:Noto Serif TC,serif;font-size:18px;font-weight:900}.status-head{align-items:center;gap:10px;font-size:20px;font-weight:900;display:flex}.dot{background:var(--muted);border-radius:50%;width:11px;height:11px}.dot.open{background:var(--ok);animation:1.8s infinite pulse}@keyframes pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--ok) 50%,transparent)}to{box-shadow:0 0 0 10px #0000}}.dot.closed{background:var(--closed)}.status-sub{color:var(--muted);margin:4px 0 14px;font-size:16px}.today-slots{flex-wrap:wrap;gap:8px;display:flex}.slot{background:var(--brand-soft);color:var(--brand-deep);font-variant-numeric:tabular-nums;border-radius:10px;padding:6px 12px;font-size:16px;font-weight:700}.slot.now{background:var(--brand);color:var(--brand-ink)}.slot small{opacity:.85;margin-left:6px;font-size:13.5px;font-weight:500}.facts{border-top:1px dashed var(--line);grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px;padding-top:16px;display:grid}.fact b{font-family:Noto Serif TC,serif;font-size:24px;line-height:1.3;display:block}.fact span{color:var(--muted);font-size:13.5px}.stars{color:#f2b33d;letter-spacing:1px}.page-head{color:#fff;background:linear-gradient(160deg,#66763a 0%,#4e5b2c 70%,#3a4421 100%);padding:28px 0 34px}.page-head h1{margin:8px 0 10px;font-size:clamp(32px,6vw,48px)}.page-head .lead{margin:0}.crumbs ol{opacity:.9;flex-wrap:wrap;gap:6px;margin:0;padding:0;font-size:14.5px;list-style:none;display:flex}.crumbs li+li:before{content:"／";opacity:.7;margin-right:6px}.crumbs a{color:#fff}.rv{background:var(--brand-soft);border-bottom:1px solid var(--line);align-items:stretch;display:flex;overflow:hidden}.rv-label{background:var(--surface);border-right:1px solid var(--line);color:var(--muted);z-index:2;flex-direction:column;flex:none;justify-content:center;gap:2px;padding:10px 16px;font-size:13.5px;line-height:1.3;text-decoration:none;display:flex;position:relative}.rv-label b{color:var(--ink);font-size:15px}.rv-label:hover b{color:var(--brand)}.rv-viewport{flex:1;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 40px calc(100% - 40px),#0000);mask-image:linear-gradient(90deg,#0000,#000 40px calc(100% - 40px),#0000)}.rv-track{gap:14px;width:max-content;padding:10px 7px;animation:70s linear infinite rv-scroll;display:flex}@media (hover:hover){.rv:hover .rv-track{animation-play-state:paused}}.rv:focus-within .rv-track{animation-play-state:paused}.rv-card{background:var(--surface);border:1px solid var(--line);white-space:nowrap;border-radius:999px;align-items:center;gap:10px;margin:0;padding:7px 18px 7px 14px;font-size:15px;display:flex}.rv-card .stars{font-size:13px}.rv-card q{quotes:"「" "」"}.rv-card cite{color:var(--muted);font-size:13px;font-style:normal}@keyframes rv-scroll{to{transform:translate(-50%)}}@media (width<=560px){.rv-label{padding:8px 10px}.rv-label span{display:none}.rv-card{font-size:14.5px}}@media (prefers-reduced-motion:reduce){.rv-viewport{overflow-x:auto}.rv-track{animation:none}.reveal{opacity:1!important;transform:none!important}}section{padding:56px 0}.sec-head{flex-direction:column;gap:6px;margin-bottom:26px;display:flex}.kicker{letter-spacing:.14em;color:var(--accent);font-size:13.5px;font-weight:700}.sec-head h2{margin:0;font-family:Noto Serif TC,serif;font-size:clamp(27px,4.6vw,38px);font-weight:900;line-height:1.3}.sec-head p{color:var(--muted);margin:0}.more{color:var(--brand-deep);margin-top:14px;font-weight:700;display:inline-block}.notice-wrap{z-index:5;margin-top:-28px;position:relative}.notice{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);align-items:flex-start;gap:14px;padding:16px 18px;display:flex}.notice-badge{background:var(--accent);color:#fff;white-space:nowrap;border-radius:8px;margin-top:2px;padding:3px 10px;font-size:14px;font-weight:900}.notice-list{flex:1;gap:6px;display:grid}.notice-item{gap:10px;font-size:16px;display:flex}.notice-item time{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.notice-item a{color:var(--brand-deep);font-weight:700}.focus{background:var(--brand);color:var(--brand-ink);border-radius:var(--radius);box-shadow:var(--shadow);gap:16px;padding:26px;display:grid}.focus h2{margin:4px 0 6px;font-family:Noto Serif TC,serif;font-size:clamp(24px,4vw,32px);line-height:1.35}.focus p{opacity:.92;margin:0}.focus .kicker{color:inherit;opacity:.85}.focus .actions{align-items:center}.focus .btn.ghost{color:var(--ink)}.hours-grid{gap:18px;display:grid}.hours{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.hours table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.hours th,.hours td{text-align:center;border-bottom:1px solid var(--line);padding:14px 10px;font-size:16px}.hours thead th{background:var(--brand-soft);color:var(--brand-deep);font-weight:900}.hours tbody th{text-align:left;color:var(--muted);white-space:nowrap;font-weight:500}.hours tr:last-child th,.hours tr:last-child td{border-bottom:0}.hours td.on{font-weight:700}.hours td.off{color:var(--muted);opacity:.5}.hours .is-today{background:var(--accent-soft)}.hours thead th.is-today{background:var(--accent);color:#fff}.hours thead small{opacity:.85;font-size:12.5px;font-weight:500;display:block}.hours td small{color:var(--muted);margin-top:2px;font-size:12.5px;font-weight:500;display:block}.hours-bar{border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.wk{gap:6px;display:flex}.wk button{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:999px;min-height:40px;padding:6px 16px;font-size:15px}.wk button[aria-pressed=true]{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.hours-note{border-top:1px solid var(--line);color:var(--muted);margin:0;padding:12px 14px;font-size:15px}.roster{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;justify-content:center;gap:10px;padding:22px;display:flex}.roster h3{margin:0;font-size:19px}.roster-img{border:1px solid var(--line);border-radius:12px;display:block;overflow:hidden}.roster-img img{width:100%;height:auto}.roster p{color:var(--muted);margin:0;font-size:16px}.roster .btn{align-self:flex-start;padding:10px 18px;font-size:16px}.weekly{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);gap:0;margin:0;padding:0;list-style:none;display:grid}.weekly li{border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;gap:16px;padding:14px 20px;display:flex}.weekly li:last-child{border-bottom:0}.weekly b{flex:none;width:8.5em}.weekly small{color:var(--muted);font-size:14.5px;display:block}.svc-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.svc{background:var(--surface);border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:8px;padding:18px;text-decoration:none;display:flex}a.svc{border-color:var(--brand)}a.svc:hover h3{color:var(--brand-deep);text-decoration:underline}.svc-ic{background:var(--brand-soft);width:46px;height:46px;color:var(--brand-deep);border-radius:8px;place-items:center;display:grid}.svc-ic svg{width:30px;height:30px}.svc h3{margin:0;font-size:18px}.svc p{color:var(--muted);margin:0;font-size:15.5px;line-height:1.6}.team{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.doc{background:var(--surface);border:1px solid var(--line);text-align:left;border-radius:18px;padding:22px}.doc-photo{object-fit:cover;background:var(--brand-soft);border-radius:50%;width:132px;height:132px;margin:0 auto 12px}.doc-role{background:var(--brand);color:var(--brand-ink);border-radius:6px;margin:0 auto;padding:2px 12px;font-size:14px;font-weight:700;display:table}.doc h3{text-align:center;letter-spacing:.1em;margin:6px 0 10px;font-family:Noto Serif TC,serif;font-size:24px}.doc h4{color:var(--brand-deep);border-left:3px solid var(--brand);margin:14px 0 4px;padding-left:8px;font-size:15px}.doc p{margin:0;font-size:15.5px}.doc ul{margin:0;padding-left:1.2em;font-size:15.5px}.doc li{margin:2px 0}.tips{gap:12px;display:grid}.tip{background:var(--surface);border:1px solid var(--line);border-radius:18px;gap:14px;padding:18px;display:flex}.tip-n{background:var(--accent);color:#fff;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.tip h3{margin:0 0 2px;font-size:17px}.tip p{color:var(--muted);margin:0;font-size:15.5px}.faq details{background:var(--surface);border:1px solid var(--line);border-radius:16px;margin-bottom:10px;padding:0 18px}.faq summary{cursor:pointer;justify-content:space-between;gap:12px;padding:16px 0;font-weight:700;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--brand);font-size:22px;line-height:1;transition:transform .2s}.faq details[open] summary:after{transform:rotate(45deg)}.faq details p{color:var(--muted);margin:0 0 16px}.visit{gap:16px;display:grid}.map{border-radius:var(--radius);border:1px solid var(--line);background:var(--brand-soft);min-height:320px;overflow:hidden}.map iframe{border:0;width:100%;height:100%;min-height:320px;display:block}.info-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:8px 20px}.info-row{border-bottom:1px solid var(--line);gap:14px;padding:14px 0;display:flex}.info-row:last-child{border-bottom:0}.info-row svg{width:22px;height:22px;color:var(--brand);flex:none;margin-top:3px}.info-row small{color:var(--muted);font-size:14px;display:block}.info-row a{font-weight:700}.qr-box{align-items:center;gap:14px;display:none}.qr-box .qr{background:#fff;border-radius:10px;padding:6px;line-height:0}.prose{padding:40px 0 56px}.prose h2{margin:44px 0 12px;scroll-margin-top:84px;font-family:Noto Serif TC,serif;font-size:clamp(24px,4vw,30px);line-height:1.35}.prose h3{margin:24px 0 6px;font-size:19px}.prose p,.prose li{max-width:42em}.prose ul,.prose ol{padding-left:1.3em}.prose li{margin:4px 0}.answer{background:var(--surface);border:1px solid var(--line);border-left:6px solid var(--brand);border-radius:14px;margin:0;padding:18px 20px;font-size:18px}.callout{background:var(--accent-soft);border-radius:14px;margin:18px 0;padding:16px 20px}.callout p{margin:0}.data-table{border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:14px;width:100%;margin:12px 0;overflow:hidden}.data-table th,.data-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:12px 14px}.data-table thead th{background:var(--brand-soft);color:var(--brand-deep)}.data-table tr:last-child td{border-bottom:0}.cta-box{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);gap:12px;margin:16px 0;padding:22px;display:grid}.cta-box p{margin:0}.page-meta{border-top:1px solid var(--line);color:var(--muted);margin-top:40px;padding-top:18px;font-size:15px}.page-meta ul,.page-meta ol{margin:6px 0;padding-left:1.2em}.page-meta ol li{overflow-wrap:anywhere;margin:6px 0}.page-meta a{color:var(--brand-deep)}footer{border-top:1px solid var(--line);color:var(--muted);padding:28px 0;font-size:15px}footer .wrap{flex-direction:column;gap:4px;display:flex}footer nav{flex-wrap:wrap;gap:6px 16px;margin-top:8px;display:flex}.dock{z-index:40;background:var(--surface);border-top:1px solid var(--line);padding:8px max(8px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));grid-template-columns:repeat(3,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.dock a{flex-direction:column;align-items:center;gap:2px;min-height:48px;padding:4px;font-size:14.5px;font-weight:700;text-decoration:none;display:flex}.dock svg{width:26px;height:26px;color:var(--brand)}.dock a.l svg{color:#06c755}.js .reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(18px)}.reveal.in{opacity:1;transform:none}@media (width>=760px){body{padding-bottom:0}.dock,.menu-mobile{display:none}nav.links{display:flex}.top-call{display:inline-block}.hero{min-height:620px}.hero-grid{grid-template-columns:1.35fr 1fr;align-items:end}.hours-grid{grid-template-columns:1.8fr 1fr}.svc-grid{grid-template-columns:repeat(4,1fr)}.tips{grid-template-columns:1fr 1fr}.visit{grid-template-columns:1.3fr 1fr}.qr-box{display:flex}.focus{grid-template-columns:1.5fr 1fr;align-items:center}}@media (width<=480px){.hours th,.hours td{letter-spacing:-.02em;padding:10px 0;font-size:13px}.hours table{table-layout:fixed}.hours thead th:first-child,.hours tbody th{width:36px;padding-left:6px}.hours thead small,.hours td small{letter-spacing:-.04em;font-size:11px}.svc{padding:14px}.weekly li{flex-direction:column;gap:2px}}.related{margin-top:40px}.related h2{margin:0 0 8px;font-family:Noto Serif TC,serif;font-size:22px}.related ul{margin:0;padding-left:1.2em}.related li{margin:6px 0}.related a{color:var(--brand-deep)}.figure{background:var(--surface);border:1px solid var(--line);border-radius:14px;margin:18px 0;padding:16px}.figure svg{width:100%;height:auto;display:block}.figure figcaption{color:var(--muted);margin-top:8px;font-size:14px}.data-table.keycol td:first-child{white-space:nowrap}
