/* 正風毛筆字體 Bold（Masafont，SIL OFL 1.1），只含「痕跡」兩字 */
@font-face{font-family:'Masa Brush';src:url(data:font/woff2;base64,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) format('woff2');font-display:block}
/* 痕跡｜森林與木質色：取自主視覺海報的霧林綠、年輪木色與清水模灰 */
:root{
  color-scheme:light;
  --bg:#edece8;--paper:#f8f7f4;--soft:#e2e0da;--mist:#d9d7d0;
  --ink:#1f1b16;--muted:#5c5347;--faint:#625a4e;--line:#d6d3cb;
  --forest:#2b231b;--forest-deep:#17120d;--moss:#b39874;--chart:#9a5a2c;
  --wood:#8f4f1d;--wood-deep:#7a4218;--ring:#d9a066;--label:#fffdf7;
  --brush:'Masa Brush','Noto Serif TC',serif;
  --serif:'Noto Serif TC','Source Han Serif TC','PMingLiU',serif;
  --sans:'Noto Sans TC','Microsoft JhengHei','PingFang TC',sans-serif;
  --mono:'EB Garamond','Noto Serif TC',Georgia,serif;
  --gutter:clamp(16px,5vw,64px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.85;-webkit-font-smoothing:antialiased}
button,input{font:inherit;color:inherit}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
figure{margin:0}
button{cursor:pointer}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-family:var(--serif);font-weight:700;line-height:1.35;text-wrap:balance}
p+p{margin-top:1em}
::selection{background:var(--ring)}
a:focus-visible,button:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--wood);outline-offset:3px}
.mono{font-family:var(--mono);font-variant-numeric:lining-nums tabular-nums;font-feature-settings:'lnum' 1,'tnum' 1;letter-spacing:.01em}
.muted{color:var(--muted)}
.note{font-size:13px;color:var(--faint);margin-top:16px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wrap{width:100%;max-width:1240px;margin-inline:auto;padding-inline:var(--gutter)}
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.14em;color:var(--wood);text-transform:uppercase}
.arrow{transition:transform .25s}
a:hover .arrow,button:hover .arrow{transform:translateX(4px)}

/* 頁首 */
.skip-link{position:fixed;top:-90px;left:16px;padding:10px 18px;background:var(--forest);color:#fff;z-index:100}
.skip-link:focus{top:12px}
.preview-strip{display:flex;justify-content:center;flex-wrap:wrap;gap:4px 16px;padding:6px var(--gutter);background:var(--forest-deep);color:#e2dacd;font-size:12px}
.preview-strip a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.site-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;display:flex;align-items:center;gap:20px;height:70px;padding-inline:var(--gutter);background:rgba(251,250,245,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.brand{display:flex;gap:10px;align-items:center;flex:none}
.brand img{width:34px;height:34px}
.brand-main{display:flex;align-items:baseline;gap:8px;font-family:var(--serif);font-weight:700;font-size:17px;letter-spacing:.06em}
.brand-sub{display:block;font-family:var(--mono);font-size:9px;letter-spacing:.18em;color:var(--faint);line-height:1.2}
.site-nav{display:flex;align-items:center;gap:22px;margin-left:auto;font-size:15px}
.site-nav>a{position:relative;padding-block:6px;color:var(--muted);transition:color .2s;white-space:nowrap}
.site-nav>a:hover,.site-nav>a[aria-current=page]{color:var(--ink)}
.site-nav>a[aria-current=page]:after{content:"";position:absolute;left:0;right:0;bottom:0;border-bottom:2px solid var(--wood)}
.site-nav .nav-exhibit{color:var(--forest);font-weight:700}
.site-nav .nav-visit{padding:6px 14px;border:1px solid var(--forest);color:var(--forest)}
.site-nav .nav-visit:after{display:none}
.header-search{align-self:stretch;display:grid;place-items:center;width:64px;margin-right:calc(var(--gutter) * -1);background:var(--forest);color:#fff;font-size:22px}
.header-search:hover{background:var(--forest-deep)}
.menu-toggle{display:none;background:none;border:0;padding:12px;margin-left:auto}
.menu-toggle span{display:block;width:24px;height:2px;background:var(--ink);margin:6px 0}

/* 按鈕 */
.button{display:inline-flex;align-items:center;gap:14px;min-height:48px;padding:10px 24px;background:var(--forest);color:#fff;border:0;font-size:15px;font-weight:500;letter-spacing:.06em;transition:background .2s}
.button:hover{background:var(--forest-deep)}
.text-link{display:inline-flex;align-items:center;gap:12px;padding:0 0 3px;border:0;border-bottom:1px solid var(--wood);background:none;color:var(--ink);font-size:15px}
.text-link:hover{color:var(--wood)}
.tag{position:absolute;left:0;top:12px;padding:2px 10px;background:var(--wood);color:#fff;font-size:12px;font-weight:500;letter-spacing:.06em}

/* 首頁主視覺 */
.banner{position:relative;overflow:hidden;background:var(--mist)}
.banner-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.55;filter:saturate(.8)}
.banner:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(244,243,236,.96) 0%,rgba(244,243,236,.82) 45%,rgba(244,243,236,.15) 100%)}
.banner-inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:48px;align-items:center;padding-block:56px}
.banner-copy{display:grid;gap:20px;justify-items:start}
.banner-title{font-size:clamp(96px,11vw,168px);line-height:1;color:var(--ink)}
.banner-slogan{font-family:var(--serif);font-size:clamp(19px,1.9vw,24px);line-height:1.75;letter-spacing:.12em}
.banner-slogan span{color:var(--wood-deep)}
.banner-info{margin:0;display:grid;gap:6px;padding:16px 20px;background:var(--paper);border-left:3px solid var(--wood)}
.banner-info div{display:flex;gap:16px;align-items:baseline}
.banner-info dt{font-size:13px;color:var(--wood);min-width:2.5em}
.banner-info dd{margin:0;font-size:17px}
.banner-info dd.mono{font-size:20px;font-weight:500}
.banner-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px}
.banner-poster{justify-self:center;max-width:420px;box-shadow:0 18px 40px rgba(40,32,24,.22)}
.banner-poster img{width:100%;height:auto}

/* 區塊共用 */
.section-head{display:flex;justify-content:space-between;align-items:end;flex-wrap:wrap;gap:16px 40px;margin-bottom:32px}
.section-head h2,.block-head h2{font-size:clamp(28px,3.2vw,38px);margin-top:8px}
.section-head .muted{max-width:30em}
.block{padding-block:72px}
.block-head{margin-bottom:32px;max-width:46em}
.block-head .muted{margin-top:12px}
.band-soft{background:var(--soft);border-block:1px solid var(--line)}

/* 快速導覽 */
.quick-nav{padding-block:72px}
.zone-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.zone-card{display:flex;flex-direction:column;gap:8px;padding:24px;background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--moss);transition:border-color .2s,transform .2s}
.zone-card:hover{border-color:var(--forest);transform:translateY(-2px)}
.zone-card h3{font-size:21px}
.zone-card p{color:var(--muted);font-size:15px}
.zone-no{font-size:28px;color:var(--moss);line-height:1}
.zone-en{font-family:var(--mono);font-size:11px;letter-spacing:.16em;color:var(--faint)}
.zone-exhibit{background:var(--forest);border-color:var(--forest);border-top-color:var(--wood);color:#fff}
.zone-exhibit .zone-no{font-family:var(--serif);font-weight:900;color:var(--ring)}
.zone-exhibit .zone-en{color:#d6cbb8}
.zone-exhibit p{color:#e9e2d6}
.zone-exhibit .mono{font-size:18px;color:#fff}

/* 焦點輪播 */
.focus{padding-block:72px;background:var(--soft);border-block:1px solid var(--line)}
.carousel{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);background:var(--paper);border:1px solid var(--line)}
.car-slides{position:relative;aspect-ratio:4/3;background:#17140f;overflow:hidden}
.car-slide{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .8s,visibility 0s .8s}
.car-slide.on{opacity:1;visibility:visible;transition:opacity .8s}
.car-slide img{max-width:100%;max-height:100%;object-fit:contain}
.car-side{display:flex;flex-direction:column;gap:10px;padding:32px}
.car-count{font-size:12px;color:var(--wood)}
.car-title{font-size:32px}
.car-artist{color:var(--muted)}
.car-text{font-size:15px;color:var(--muted);flex:1;display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden}
.car-link{align-self:flex-start}
.car-controls{display:flex;gap:6px;margin-top:8px}
.car-controls button{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--paper)}
.car-controls button:hover{background:var(--forest);color:#fff;border-color:var(--forest)}
.car-dots{display:flex;gap:4px}
.car-dots button{flex:1;max-width:32px;height:12px;padding:0;border:0;background:none;position:relative}
.car-dots button:before{content:"";position:absolute;left:0;right:0;top:5px;height:2px;background:var(--line)}
.car-dots button.on:before,.car-dots button:hover:before{background:var(--wood)}

/* 總說摘要、統計、搜尋 */
.intro-band{padding-block:80px}
.intro-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px}
.intro-grid h2{font-size:clamp(28px,3.2vw,40px);line-height:1.5;margin-top:10px}
.intro-text{font-family:var(--serif);font-size:17px;line-height:2.1}
.intro-text .text-link{margin-top:20px;font-family:var(--sans)}
.stats{border-block:1px solid var(--line);background:var(--paper)}
.stats-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding-block:36px}
.stats-row>div{display:grid;justify-items:center;gap:4px;border-left:1px solid var(--line)}
.stats-row>div:first-child{border-left:0}
.stat-num{font-size:40px;line-height:1;color:var(--forest)}
.stat-label{color:var(--muted);font-size:14px}
.search-band{padding-block:64px;text-align:center}
.search-band h2{font-size:clamp(24px,2.8vw,32px);margin-bottom:20px}
.band-search{display:flex;max-width:640px;margin-inline:auto;background:var(--paper);border:1px solid var(--line);padding:5px}
.band-search input{flex:1;min-width:0;border:0;background:transparent;padding:8px 14px;font-size:16px}
.band-search input:focus-visible{outline:none}
.band-search:focus-within{outline:2px solid var(--wood);outline-offset:2px}

/* 作品卡（依原圖比例等高排列） */
.works-grid{display:flex;flex-wrap:wrap;gap:32px 18px}
.work-card{flex:calc(var(--ar)*100) 1 calc(var(--ar)*220px);max-width:calc(var(--ar)*380px);min-width:0;display:flex;flex-direction:column;gap:10px}
.work-image{position:relative;aspect-ratio:var(--ar);max-width:100%;overflow:hidden;background:var(--soft)}
.work-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.work-card:hover .work-image img{transform:scale(1.03)}
.work-meta h3{font-size:19px}
.work-meta p{display:flex;justify-content:space-between;gap:10px;font-size:14px;color:var(--muted)}
.work-meta span{color:var(--faint);font-family:var(--mono);font-size:13px}
.no-photo{width:100%;height:100%;min-height:140px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--faint);font-size:13px;background:var(--soft)}
.no-photo span{font-family:var(--serif);font-size:36px;opacity:.35}

/* 內頁標頭 */
.page-head,.zone-head{padding-block:40px 44px;border-bottom:1px solid var(--line);background:var(--paper)}
.zone-head{background:linear-gradient(180deg,var(--mist),var(--paper))}
.page-head h1,.zone-head h1{font-size:clamp(34px,4.4vw,54px);font-weight:900;margin-block:10px 14px}
.page-lead{max-width:40em;font-size:17px;color:var(--muted)}
.breadcrumb{display:flex;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--faint);margin-bottom:24px}
.breadcrumb a:hover{color:var(--wood)}
.crumb-current{color:var(--muted)}
.zone-trail,.work-trail{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-block:28px 48px;border-top:1px solid var(--line);font-family:var(--serif);font-size:16px}
.zone-trail a:hover{color:var(--wood)}

/* 專區一 */
.periods{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:2px solid var(--forest)}
.periods li{padding:20px 24px 8px 0}
.periods li+li{padding-left:24px;border-left:1px solid var(--line)}
.period-years{font-size:13px;color:var(--wood)}
.periods h3{font-size:24px;margin-block:4px 10px}
.periods p{color:var(--muted);font-size:15px}
.map-detail{margin-top:20px;padding:24px 28px;background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--wood);position:relative}
.map-detail-close{all:unset;position:absolute;top:14px;right:16px;width:28px;height:28px;display:grid;place-items:center;cursor:pointer;font-size:20px;line-height:1;color:var(--muted);border-radius:50%}
.map-detail-close:hover,.map-detail-close:focus-visible{background:var(--soft);color:var(--forest-deep)}
.map-detail-body h3{font-size:21px;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:0;padding-right:32px}
.map-detail-body h3 small{font-family:var(--sans);font-size:13px;font-weight:400;color:var(--wood)}
.map-detail-body>p{color:var(--muted);font-size:15px;margin-top:10px}
.map-empty-hint{text-align:center;color:var(--faint);font-size:14px;margin-top:16px}
.place-stories{list-style:none;margin:16px 0 0;padding:16px 0 0;border-top:1px solid var(--line);display:grid;gap:12px}
.place-stories .place-story{display:block;margin:0;padding-left:14px;border-left:2px solid var(--wood)}
.place-story p{font-family:var(--serif);font-size:15px;line-height:1.75;color:var(--forest-deep);margin:0}
.place-story footer{margin-top:4px;font-size:12px;color:var(--faint)}
.voices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.voice{margin:0;padding:22px 24px;background:var(--paper);border-left:3px solid var(--wood)}
.voice p{font-family:var(--serif);font-size:17px;line-height:1.9}
.voice footer{margin-top:10px;font-size:14px;color:var(--muted)}
.voice footer a{color:var(--forest);font-weight:500}
.voice footer a:hover{text-decoration:underline}
.survey{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.survey li{padding:16px;background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--moss)}
.survey h3{font-size:17px;margin-bottom:6px}
.survey p{font-size:14px;color:var(--muted)}

/* 專區二 */
.artist-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.artist-card{display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;align-items:center;padding:14px;background:var(--paper);border:1px solid var(--line);transition:border-color .2s}
.artist-card:hover{border-color:var(--forest)}
.artist-card figure{aspect-ratio:1;overflow:hidden;background:var(--soft)}
.artist-card figure img{width:100%;height:100%;object-fit:cover}
.artist-card h2{font-size:26px;font-weight:900;letter-spacing:.06em}
.artist-q{font-family:var(--serif);color:var(--forest);margin-block:4px}
.artist-card .muted{font-size:14px}

/* 專區三 */
.collection-tools{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;margin-bottom:12px}
.filters{display:flex;flex-wrap:wrap;gap:8px}
.filter-button{border:1px solid var(--line);background:var(--paper);padding:7px 16px;font-size:14px;color:var(--muted)}
.filter-button:hover{border-color:var(--forest);color:var(--ink)}
.filter-button.active{background:var(--forest);border-color:var(--forest);color:#fff}
.search-box{display:flex;align-items:center;gap:8px;flex:0 1 300px;border-bottom:1px solid var(--muted)}
.search-box input{flex:1;min-width:0;border:0;background:none;padding:8px 0}
.search-box input:focus-visible{outline:none}
.search-box:focus-within{border-color:var(--wood)}
.result-count{font-family:var(--mono);font-size:12px;color:var(--faint);margin-bottom:20px}
.no-results{padding-block:48px;color:var(--muted);text-align:center;width:100%}

/* 專區四：長條圖 */
.heritage-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:48px;align-items:start}
.milestones{list-style:none;margin:0;padding:0;display:grid;gap:0;border-left:2px solid var(--moss)}
.milestones li{position:relative;padding:0 0 22px 22px}
.milestones li:before{content:"";position:absolute;left:-6px;top:8px;width:10px;height:10px;border-radius:50%;background:var(--paper);border:2px solid var(--forest)}
.milestones .mono{font-size:14px;color:var(--wood)}
.milestones p{color:var(--muted);font-size:15px}
.bar-chart{padding:22px 22px 16px;background:var(--paper);border:1px solid var(--line)}
.bar-chart figcaption{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px 16px;margin-bottom:16px;font-size:15px}
.bar-chart figcaption .muted{font-size:13px}
.bars{display:flex;align-items:flex-end;gap:4px;height:220px;border-bottom:1px solid var(--muted);background:repeating-linear-gradient(to top,transparent 0 54px,var(--line) 54px 55px)}
.bar-col{position:relative;flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;outline:none}
.bar{width:min(70%,22px);background:var(--chart);border-radius:4px 4px 0 0;transition:filter .15s}
.bar-year{position:absolute;bottom:-22px;font-size:11px;color:var(--faint)}
.bar-tip{position:absolute;bottom:calc(100% - 4px);left:50%;transform:translate(-50%,-4px);white-space:nowrap;padding:3px 8px;background:var(--ink);color:#fff;font-size:12px;opacity:0;pointer-events:none;transition:opacity .15s}
.bar-col:hover .bar,.bar-col:focus-visible .bar{filter:brightness(1.18)}
.bar-col:hover .bar-tip,.bar-col:focus-visible .bar-tip{opacity:1}
.bar-col{padding-top:30px}
.bar-col .bar-tip{bottom:auto;top:0}
.chart-table{margin-top:32px;font-size:14px}
.chart-table summary{cursor:pointer;color:var(--forest)}
.chart-table table{margin-top:8px;border-collapse:collapse;width:100%;max-width:280px}
.chart-table th,.chart-table td{text-align:left;padding:4px 8px;border-bottom:1px solid var(--line)}
.chart-source{margin-top:10px;font-size:12px;color:var(--faint)}

/* 專區五 */
.values{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.values li{display:grid;gap:6px;padding:24px 20px;background:var(--forest);color:#fff;font-family:var(--serif);font-size:21px;font-weight:700}
.values .mono{font-size:12px;font-weight:400;color:var(--ring);letter-spacing:.1em}
.today-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px;align-items:start}
.today-grid>div:first-child{font-family:var(--serif);font-size:17px;line-height:2.05}

/* 藝師頁 */
.artist-head{padding-block:36px 44px;background:linear-gradient(180deg,var(--mist),var(--paper));border-bottom:1px solid var(--line)}
.artist-hero{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:44px;align-items:start}
.artist-hero figure{aspect-ratio:4/5;overflow:hidden;background:var(--soft)}
.artist-hero figure img{width:100%;height:100%;object-fit:cover}
.artist-hero h1{font-size:clamp(44px,5vw,64px);font-weight:900;letter-spacing:.08em;margin-block:6px 16px}
.artist-quote{margin:0 0 22px;padding-left:18px;border-left:3px solid var(--wood)}
.artist-quote p{font-family:var(--serif);font-size:22px;line-height:1.7;color:var(--forest-deep)}
.artist-quote footer{font-size:13px;color:var(--faint);margin-top:4px}
.facts{margin:0;display:grid;border-top:1px solid var(--line)}
.facts>div{display:grid;grid-template-columns:88px 1fr;gap:12px;padding-block:9px;border-bottom:1px solid var(--line);font-size:15px}
.facts dt{color:var(--wood)}
.facts dd{margin:0}
.artist-body{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:48px;align-items:start}
.artist-sections{display:grid;gap:28px}
.artist-sections h2{font-size:22px;margin-bottom:8px;padding-left:12px;border-left:3px solid var(--moss)}
.artist-sections p{font-size:17px;line-height:2}
.artist-timeline{position:sticky;top:96px;padding:22px;background:var(--paper);border:1px solid var(--line)}
.artist-timeline h2{font-size:19px;margin-bottom:10px}
.artist-timeline ol{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.artist-timeline li{display:grid;grid-template-columns:52px 1fr;gap:8px;font-size:15px}
.artist-timeline .mono{color:var(--wood)}

/* 作品頁 */
.work-crumb{padding-top:24px}
.work-detail{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);margin-top:16px;border-block:1px solid var(--line);background:var(--paper)}
.detail-gallery{display:grid;grid-template-rows:minmax(0,1fr) auto;background:#17140f;min-width:0}
.detail-image{position:relative;display:flex;align-items:center;justify-content:center;padding:28px;min-height:520px}
.detail-image img{max-height:74vh;width:auto;max-width:100%;cursor:zoom-in}
.zoom-button{position:absolute;right:14px;bottom:14px;padding:6px 14px;border:0;background:rgba(251,250,245,.92);font-size:13px}
.photo-count{position:absolute;left:14px;bottom:14px;padding:3px 10px;background:rgba(23,20,15,.8);color:#ece6dc;font-size:12px}
.photo-strip{display:flex;gap:8px;overflow-x:auto;padding:10px 14px 14px;background:#24201a}
.photo-strip button{flex:none;padding:0;border:2px solid transparent;background:none;opacity:.55}
.photo-strip button.on{opacity:1;border-color:var(--ring)}
.photo-strip img{height:60px;width:auto}
.detail-copy{padding:36px var(--gutter) 36px 44px;display:flex;flex-direction:column;gap:14px}
.detail-copy h1{font-size:clamp(34px,3.8vw,50px);font-weight:900}
.title-en{color:var(--faint);font-size:15px;margin-top:-8px}
.detail-artist{font-size:18px;display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline}
.detail-artist a{color:var(--forest);font-weight:500}
.detail-artist span{font-size:14px;color:var(--faint)}
.holder{font-size:13px;color:var(--muted);margin-top:-6px}
.data-tabs{display:flex;gap:4px;margin-top:8px}
.data-tabs button{padding:7px 16px;border:1px solid var(--line);border-bottom:0;background:var(--soft);font-size:14px;color:var(--muted)}
.data-tabs button[aria-selected=true]{background:var(--forest);border-color:var(--forest);color:#fff}
.object-label{margin:-14px 0 0;padding:4px 18px 8px;background:var(--label);border:1px solid var(--line);border-top:2px solid var(--forest)}
.object-label>div{display:grid;grid-template-columns:96px 1fr;gap:12px;padding-block:9px;border-bottom:1px solid var(--line);font-size:15px}
.object-label>div:last-child{border-bottom:0}
.object-label dt{color:var(--wood)}
.object-label dd{margin:0}
.work-text{max-width:860px;display:grid;gap:32px;padding-block:48px 24px}
.work-text h2{font-size:24px;margin-bottom:10px}
.work-text p{font-size:17px;line-height:2}
.statement{font-family:var(--serif)}
.exhibit-link{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;padding:18px 22px;background:var(--forest);color:#fff}
.exhibit-link .mono{font-size:13px;color:#ddd2c0}
.exhibit-link .arrow{margin-left:auto}
.cite-box{padding:22px;background:var(--paper);border:1px solid var(--line)}
.cite-box h2{font-size:19px}
#cite-text{font-family:var(--mono);font-size:13px;line-height:1.9;padding:12px 14px;background:var(--soft);user-select:all}
.copy-cite{margin-top:12px;padding:6px 14px;border:1px solid var(--forest);background:none;color:var(--forest);font-size:13px}
.copy-cite:hover{background:var(--forest);color:#fff}

/* 參觀資訊 */
.visit-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;padding-block:56px 80px}
.visit-title{font-size:72px;line-height:1.1;margin-block:6px 18px;color:var(--forest)}
.visit-rows,.museum-facts,.visit-facts{margin:0 0 24px;display:grid;border-top:1px solid var(--line)}
.visit-rows>div,.museum-facts>div,.visit-facts>div{display:grid;grid-template-columns:96px 1fr;gap:12px;padding-block:11px;border-bottom:1px solid var(--line)}
.visit-rows dt,.museum-facts dt,.visit-facts dt{color:var(--wood);font-size:14px}
.visit-rows dd,.museum-facts dd,.visit-facts dd{margin:0}
.visit-rows dd.mono,.visit-facts dd.mono{font-size:19px}
.visit-transport{display:grid;gap:18px;align-content:start}
.visit-transport h2{font-size:30px;margin-top:-8px}
.map-box{aspect-ratio:4/3;max-width:100%;background:var(--soft);border:1px solid var(--line);overflow:hidden}
.map-box iframe{width:100%;height:100%;border:0}
.map-card{height:100%;display:grid;place-content:center;justify-items:center;gap:6px;padding:24px;text-align:center;background:repeating-linear-gradient(45deg,var(--soft) 0 18px,var(--mist) 18px 19px)}
.map-card strong{font-family:var(--serif);font-size:22px}
.map-card span{color:var(--muted)}
.map-hint{font-size:13px;color:var(--wood)!important;margin-top:6px}
.map-pin{width:24px;height:24px;border-radius:50% 50% 50% 0;background:var(--wood);transform:rotate(-45deg);margin-bottom:6px}
.map-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px}
.transport-list{display:grid;gap:12px}
.transport-list>div{display:grid;grid-template-columns:96px 1fr;gap:12px}
.transport-list h3{font-family:var(--sans);font-size:15px}
.transport-list p{color:var(--muted)}
.note a{text-decoration:underline;text-underline-offset:3px}

/* 微型展：翻頁展示 */
body.in-exhibit .site-footer{display:none}
.exhibit{position:relative;height:calc(100svh - 104px);min-height:540px;background:var(--paper);overflow:hidden}
.exhibit-track{display:flex;height:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
.exhibit-track::-webkit-scrollbar{display:none}
.exhibit-track:focus-visible{outline:none}
.slide{flex:0 0 100%;height:100%;scroll-snap-align:start;scroll-snap-stop:always;position:relative;overflow:hidden}
.slide-inner{height:100%;max-width:1180px;margin-inline:auto;padding:48px clamp(64px,8vw,112px)}
.slide-kicker{font-family:var(--mono);font-size:12px;letter-spacing:.14em;color:var(--wood);margin-bottom:10px}
.slide-scroll{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
.exhibit-progress{position:absolute;left:0;right:0;top:0;height:3px;background:var(--soft);z-index:5}
.exhibit-progress span{display:block;height:100%;background:var(--wood);transition:width .35s}
.exhibit-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:rgba(251,250,245,.92);font-size:20px}
.exhibit-nav:hover:not(:disabled){background:var(--forest);color:#fff;border-color:var(--forest)}
.exhibit-nav:disabled{opacity:.25;cursor:default}
.exhibit-nav.prev{left:14px}.exhibit-nav.next{right:14px}
.exhibit-count{position:absolute;right:20px;bottom:14px;z-index:5;padding:3px 10px;background:rgba(251,250,245,.9);font-size:12px;color:var(--muted)}
.toc-tab{position:absolute;left:0;top:24px;z-index:6;writing-mode:vertical-rl;padding:14px 8px;border:0;background:var(--forest);color:#fff;font-size:14px;letter-spacing:.3em}
.exhibit-toc{position:absolute;left:0;top:0;bottom:0;z-index:7;width:min(320px,86vw);background:var(--paper);border-right:1px solid var(--line);overflow-y:auto;box-shadow:12px 0 32px rgba(40,32,24,.15)}
.toc-head{position:sticky;top:0;display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:var(--paper);border-bottom:1px solid var(--line);font-family:var(--serif);font-weight:700}
.toc-close{border:0;background:none;font-size:26px;line-height:1}
.toc-item{display:flex;gap:12px;width:100%;padding:12px 20px;border:0;background:none;text-align:left;color:var(--muted);font-size:15px}
.toc-item .mono{font-size:12px;color:var(--faint);padding-top:3px}
.toc-item:hover,.toc-item.on{background:var(--soft);color:var(--ink)}
.toc-item.on{color:var(--wood)}
.slide-cover{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);background:var(--mist)}
.cover-copy{align-self:center;display:grid;gap:18px;justify-items:start;padding-left:clamp(72px,9vw,128px);padding-right:24px}
.cover-copy h1{font-size:clamp(96px,10vw,150px);line-height:1}
.cover-slogan{font-family:var(--serif);font-size:20px;line-height:1.8;letter-spacing:.1em}
.cover-info{margin:0;display:grid;gap:4px}
.cover-info div{display:flex;gap:14px}
.cover-info dt{color:var(--wood)}
.cover-info dd{margin:0}
.cover-poster{display:flex;align-items:center;justify-content:center;padding:28px;min-height:0}
.cover-poster img{max-height:100%;width:auto;box-shadow:0 14px 30px rgba(40,32,24,.25)}
.text-grid{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:56px;align-items:start}
.text-grid h2{font-size:clamp(28px,3vw,40px);line-height:1.5}
.reading{max-height:calc(100svh - 104px - 96px);padding-right:14px;font-family:var(--serif);font-size:17px;line-height:2.1}
.slide-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}
.section-stage{position:relative;display:flex;align-items:center;justify-content:center;padding:28px 24px 48px 68px;background:#17140f;min-height:0}
.section-stage img{max-height:100%;max-width:100%;object-fit:contain}
.section-stage figcaption{position:absolute;left:68px;bottom:14px;font-size:13px;color:#ddd5c8}
.section-stage figcaption a:hover{text-decoration:underline}
.section-panel{padding:44px clamp(56px,6vw,96px) 44px 44px}
.section-panel h2{font-size:clamp(34px,3.6vw,48px);font-weight:900}
.section-title{font-family:var(--serif);font-size:19px;color:var(--wood-deep);margin-block:6px 20px;line-height:1.6}
.section-panel>p:not(.section-title):not(.slide-kicker){font-size:16px;line-height:2.05}
.mini-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:18px}
.mini-grid a{display:grid;gap:4px}
.mini-grid figure{aspect-ratio:1;overflow:hidden;background:var(--soft)}
.mini-grid img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.mini-grid a:hover img{transform:scale(1.04)}
.mini-grid span{font-family:var(--serif);font-weight:700}
.mini-grid small{color:var(--muted);font-size:13px}
.slide-visit .slide-inner,.slide-works .slide-inner{display:flex;flex-direction:column;justify-content:center}
.slide-visit h2,.slide-works h2{font-size:clamp(28px,3vw,40px);margin-bottom:12px}
.visit-facts{max-width:640px}
.visit-links{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px}

/* 頁尾 */
.site-footer{background:var(--forest-deep);color:#e6dfd3;padding:48px var(--gutter) 22px}
.footer-inner{display:flex;justify-content:space-between;flex-wrap:wrap;gap:28px;padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.15)}
.footer-title{font-size:52px;line-height:1;color:#fff}
.footer-inner p{margin-top:12px;max-width:26em;color:#cfc4b2}
.footer-credits{margin:0;display:grid;grid-template-columns:repeat(2,auto);gap:8px 28px;font-size:14px}
.footer-credits div{display:flex;gap:10px}
.footer-credits dt{color:var(--ring)}
.footer-credits dd{margin:0}
.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;margin-top:18px;font-size:12px;color:#b3a690}

/* 照片放大 */
.image-viewer{border:0;padding:48px 20px 20px;background:#17140f;color:#ece6dc;width:min(1100px,94vw);max-height:94vh;text-align:center}
.image-viewer::backdrop{background:rgba(23,20,15,.85)}
.image-viewer img{height:76vh;width:100%;object-fit:contain}
.image-viewer p{font-size:13px;color:#c2b8a8;margin-top:10px}
.image-close{position:absolute;right:12px;top:6px;border:0;background:none;color:#fff;font-size:32px;line-height:1;padding:6px 12px}
.viewer-prev,.viewer-next{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(23,20,15,.7);color:#fff;font-size:20px}
.viewer-prev{left:14px}.viewer-next{right:14px}

@media(max-width:1100px){
  .site-nav{gap:14px;font-size:14px}
  .brand-sub{display:none}
}
@media(max-width:960px){
  .menu-toggle{display:block}
  .header-search{margin-left:0;width:52px;margin-right:calc(var(--gutter) * -1)}
  .site-nav{display:none;position:absolute;top:70px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:8px var(--gutter) 18px;background:var(--paper);border-bottom:1px solid var(--line)}
  .site-nav.open{display:flex}
  .site-nav>a{padding-block:13px;border-bottom:1px solid var(--line);font-size:16px}
  .site-nav>a[aria-current=page]:after{display:none}
  .site-nav .nav-visit{border:0;border-bottom:1px solid var(--line);padding:13px 0}
  .banner-inner,.intro-grid,.heritage-grid,.today-grid,.artist-body,.visit-layout{grid-template-columns:1fr}
  .banner:after{background:linear-gradient(180deg,rgba(244,243,236,.95),rgba(244,243,236,.75))}
  .banner-poster{max-width:340px}
  .zone-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .carousel{grid-template-columns:1fr}
  .periods{grid-template-columns:1fr}
  .periods li,.periods li+li{padding:16px 0;border-left:0;border-bottom:1px solid var(--line)}
  .survey{grid-template-columns:repeat(2,minmax(0,1fr))}
  .values{grid-template-columns:repeat(2,minmax(0,1fr))}
  .artist-grid{grid-template-columns:1fr}
  .artist-timeline{position:static}
  .work-detail{grid-template-columns:1fr}
  .detail-copy{padding:28px var(--gutter)}
  .artist-hero{grid-template-columns:minmax(0,.6fr) minmax(0,1.4fr);gap:24px}
}
@media(max-width:640px){
  body{font-size:15px}
  .site-header{height:62px}
  .site-nav{top:62px}
  .brand-main{font-size:15px}
  .preview-strip{font-size:11px}
  .banner-inner{padding-block:36px}
  .banner-title{font-size:88px}
  .zone-grid{grid-template-columns:1fr}
  .stats-row{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:24px}
  .stats-row>div:nth-child(3){border-left:0}
  .block,.quick-nav,.focus,.intro-band{padding-block:52px}
  .voices{grid-template-columns:1fr}
  .survey{grid-template-columns:1fr}
  .artist-card{grid-template-columns:96px minmax(0,1fr);gap:14px}
  .artist-hero{grid-template-columns:1fr}
  .artist-hero figure{max-width:280px}
  .work-card{flex-basis:calc(var(--ar)*140px)}
  .detail-image{min-height:0;padding:16px}
  .detail-image img{max-height:60vh}
  .object-label>div,.facts>div,.visit-rows>div,.museum-facts>div,.visit-facts>div,.transport-list>div{grid-template-columns:80px 1fr}
  .visit-title{font-size:56px}
  .footer-credits{grid-template-columns:1fr}
  .exhibit{height:calc(100svh - 96px);min-height:480px}
  .slide-inner{padding:36px 20px 64px 44px}
  .exhibit-nav{top:auto;bottom:10px;transform:none;width:40px;height:40px}
  .exhibit-count{right:50%;transform:translateX(50%);bottom:18px;white-space:nowrap}
  .toc-tab{top:12px;padding:10px 6px;font-size:12px}
  .slide-cover{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}
  .cover-copy{padding:28px 20px 0 44px;gap:10px}
  .cover-copy h1{font-size:76px}
  .cover-slogan{font-size:16px}
  .cover-poster{padding:12px 12px 60px}
  .text-grid{grid-template-columns:1fr;gap:12px}
  .reading{max-height:calc(100svh - 96px - 230px);font-size:16px}
  .slide-section{grid-template-columns:1fr;grid-template-rows:38% 1fr}
  .section-stage{padding:12px 12px 36px 40px}
  .section-stage figcaption{left:40px;bottom:8px}
  .section-panel{padding:22px 20px 72px}
  .mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* 「痕跡」標題字：正風毛筆字體 */
.brush{font-family:var(--brush);font-weight:400;letter-spacing:0}
.title-v{writing-mode:vertical-rl;display:block;line-height:1}
.banner-mark{display:flex;align-items:flex-start;gap:clamp(20px,3vw,40px)}
.banner-title{font-size:clamp(120px,13vw,200px);line-height:1}
.banner-mark .banner-slogan{writing-mode:vertical-rl;margin-top:10px;padding-left:18px;border-left:1px solid var(--wood);line-height:2.1}
.brand-title{font-size:26px;color:var(--forest);line-height:1}
.strip-title{font-size:24px;line-height:1}
.visit-title{font-size:72px;line-height:1.1;color:var(--forest)}
.footer-title{font-size:52px;line-height:1;color:#fff}
.zone-exhibit .zone-no{font-family:var(--brush);font-weight:400}
/* 年輪拼圖（依主視覺元素繪製） */
.banner-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.banner-ring{position:relative;align-self:stretch;min-height:440px}
.banner-ring img{position:absolute;top:50%;left:0;width:min(720px,52vw);max-width:none;transform:translateY(-50%) rotate(-8deg);filter:drop-shadow(0 18px 30px rgba(40,32,24,.18))}
.banner{min-height:600px}
/* 微型展封面：文字與海報置中並排 */
.slide-cover{display:flex;align-items:center;justify-content:center;gap:clamp(40px,6vw,96px);padding:32px clamp(64px,7vw,100px)}
.cover-copy{padding:0;align-self:auto;flex:0 1 auto}
.cover-poster{flex:0 0 auto;height:100%;padding:12px 0}
.cover-mark{display:flex;align-items:flex-start;gap:28px}
.cover-mark h1{font-size:clamp(110px,10vw,160px);line-height:1}
.cover-mark .cover-slogan{writing-mode:vertical-rl;line-height:2.1;margin-top:8px}
@media(max-width:960px){.banner-ring{min-height:320px;order:-1}.banner-ring img{width:min(520px,90vw);left:50%;transform:translate(-50%,-50%) rotate(-8deg)}}
@media(max-width:640px){.banner-title{font-size:96px}.slide-cover{flex-direction:column;justify-content:flex-start;gap:12px;padding:24px 20px 60px 44px}.cover-poster{height:auto;max-height:42%}.cover-mark h1{font-size:76px}.cover-mark .cover-slogan{font-size:14px}.brand-title{font-size:22px}}
/* 微型展封面：海報為主，文字資訊在旁 */
.slide-cover .cover-poster{order:0}
.slide-cover .cover-copy{order:1;display:grid;gap:16px;justify-items:start;max-width:30em}
.cover-name{font-family:var(--serif);font-size:clamp(24px,2.4vw,32px);font-weight:700;line-height:1.5}
.slide-cover .cover-slogan{writing-mode:horizontal-tb;font-family:var(--serif);font-size:17px;line-height:1.9;letter-spacing:.06em;color:var(--wood-deep);margin:0;padding-left:14px;border-left:2px solid var(--wood)}
.slide-cover .cover-info{display:grid;gap:6px;padding:14px 18px;background:var(--paper);border-left:3px solid var(--forest)}
.slide-cover .cover-info dd.mono{font-size:19px}
@media(max-width:640px){.cover-name{font-size:20px}.slide-cover .cover-slogan{font-size:14px}}
/* 參觀資訊：微型展海報 */
.visit-exhibit{display:grid;gap:18px;align-content:start}
.visit-poster{max-width:380px;box-shadow:0 14px 30px rgba(40,32,24,.18)}
.visit-poster img{width:100%;height:auto}
.visit-exhibit .visit-rows{margin-bottom:6px}
.visit-exhibit .button{justify-self:start}
@media(max-width:640px){.visit-poster{max-width:300px}}
/* 審查修正：手機版 Banner 單欄、展示頁底部操作列 */
@media(max-width:960px){.banner-inner{grid-template-columns:1fr;gap:8px}.banner-ring{min-height:0;order:-1}.banner-ring img{position:static;display:block;width:min(440px,84vw);margin:0 auto;transform:rotate(-8deg)}}
@media(max-width:640px){
  .exhibit{padding-bottom:58px;background:var(--paper)}
  .exhibit-track{border-bottom:1px solid var(--line)}
  .exhibit-nav{bottom:8px}
  .exhibit-count{bottom:16px;background:none}
  .section-panel,.slide-inner{padding-bottom:28px}
}
.ext-link{color:var(--forest);font-weight:500;text-decoration:underline;text-underline-offset:3px}
.ext-link:hover{color:var(--wood-deep)}
/* 7. 焦點輪播改淺色展台 */
.car-slides{background:var(--soft)}
/* 8. 藝師頁作品圖說 */
.artist-figure{display:grid;gap:8px}
.figure-cap{font-size:14px;color:var(--muted)}
.artist-figure:hover .figure-cap{color:var(--wood)}
/* 方案二：作品主圖 Banner */
.photo-banner{position:relative;min-height:min(640px,82svh);display:flex;align-items:flex-end;overflow:hidden;background:#14110d;color:#fbf7ef}
.photo-banner:after{display:none}
.banner-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 42%}
.photo-banner:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(20,17,13,.9) 0%,rgba(20,17,13,.6) 40%,rgba(20,17,13,.08) 74%),linear-gradient(0deg,rgba(20,17,13,.75),transparent 48%)}
.photo-banner .banner-copy{position:relative;z-index:2;display:grid;gap:14px;justify-items:start;padding-block:72px 64px}
.banner-kicker{font-size:13px;letter-spacing:.14em;color:var(--ring);max-width:36em}
.photo-banner .banner-title{font-size:clamp(110px,12vw,176px);line-height:1;color:#fbf7ef}
.photo-banner .banner-slogan{font-family:var(--serif);font-size:clamp(17px,1.6vw,20px);letter-spacing:.12em;line-height:1.9;color:#e6dccb;writing-mode:horizontal-tb;padding:0;border:0;margin:0}
.photo-banner .banner-info{display:flex;flex-wrap:wrap;gap:4px 24px;align-items:baseline;margin:4px 0 0;padding:0;background:none;border:0;color:#e6dccb}
.photo-banner .banner-info .mono{font-size:clamp(20px,2vw,24px);color:#fbf7ef}
.button-gold{background:var(--ring);color:#1b140d}
.button-gold:hover{background:#e6b27c}
.text-link-light{color:#fbf7ef;border-color:var(--ring)}
.text-link-light:hover{color:var(--ring)}
.banner-cap{position:absolute;z-index:2;right:var(--gutter);bottom:20px;font-size:13px;color:#d6cbb8}
.banner-cap:hover{color:var(--ring)}
.zone-exhibit .zone-no{color:var(--ring)}
@media(max-width:640px){
  .photo-banner{min-height:560px}
  .photo-banner:before{background:linear-gradient(0deg,rgba(20,17,13,.92) 0%,rgba(20,17,13,.7) 55%,rgba(20,17,13,.15) 100%)}
  .photo-banner .banner-copy{padding-block:120px 56px}
  .photo-banner .banner-title{font-size:96px}
  .banner-cap{right:auto;left:var(--gutter);bottom:14px;top:auto}
}
/* 數字與小標字體：EB Garamond */
.eyebrow{font-size:13.5px;letter-spacing:.12em;font-variant-numeric:lining-nums}
.photo-banner .banner-info .mono,.banner-info dd.mono{font-size:clamp(22px,2.2vw,28px);font-weight:500}
.zone-no{font-variant-numeric:lining-nums}
.stat-num,.period-years,.quick-no{font-family:var(--mono);font-variant-numeric:lining-nums}
/* 首頁主圖輪播 */
.photo-banner .banner-photo{opacity:0;transition:opacity 1.2s ease,transform 7s ease;transform:scale(1.04)}
.photo-banner .banner-photo.on{opacity:1;transform:scale(1)}
.banner-ctrl{position:absolute;z-index:3;right:var(--gutter);bottom:18px;display:flex;align-items:center;gap:14px}
.banner-ctrl .banner-cap{position:static}
.banner-dots{display:flex;gap:4px}
.banner-dots button{width:22px;height:14px;padding:0;border:0;background:none;position:relative}
.banner-dots button:before{content:"";position:absolute;left:0;right:0;top:6px;height:2px;background:rgba(251,247,239,.4)}
.banner-dots button.on:before,.banner-dots button:hover:before{background:var(--ring)}
.banner-pause{width:32px;height:32px;border-radius:50%;border:1px solid rgba(251,247,239,.45);background:rgba(20,17,13,.4);color:#fbf7ef;font-size:11px}
.banner-pause:hover{background:var(--ring);color:#1b140d;border-color:var(--ring)}
@media(max-width:640px){.banner-ctrl{left:var(--gutter);right:var(--gutter);bottom:12px;justify-content:space-between;flex-wrap:wrap;gap:8px}.banner-dots button{width:16px}}
/* 手機版檢查修正：觸控目標、字級、頂部提示列、作品格線 */
.zone-en{font-size:12px}
.bar-year{font-size:12px}
.breadcrumb a,.breadcrumb .crumb-current{display:inline-block;padding-block:10px}
.breadcrumb{margin-bottom:12px;align-items:center}
.zone-trail a{display:inline-flex;align-items:center;min-height:44px}
.banner-dots button,.car-dots button{height:44px}
.banner-dots button:before,.car-dots button:before{top:21px}
.banner-pause,.car-controls button{width:44px;height:44px}
.banner-pause{font-size:12px}
.breadcrumb a{padding-inline:8px;margin-inline:-8px}
.banner-cap{display:inline-flex;align-items:center;min-height:44px}
@media(max-width:640px){
  .preview-strip{padding-block:0;font-size:12px;line-height:1.5}
  .preview-strip a{padding-block:12px}
  .preview-strip>span{display:none}
  .preview-strip a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;display:block}
  .works-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px}
  .work-card{max-width:none}
  .work-image{aspect-ratio:1}
  .work-meta p{flex-direction:column;gap:0}
  .banner-dots button{width:28px}
  .site-nav.open{box-shadow:0 18px 30px rgba(23,20,15,.18)}
}
/* B 版新增：展覽導讀、三章節固定圖、淡入、作品頁逐層揭露 */
.lead-line{font-family:var(--serif);font-size:21px;line-height:1.9;color:var(--ink);margin-bottom:14px}
.story{padding-block:72px}
.story-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:start}
.story-stage{position:sticky;top:120px}
.story-stage figure{position:relative;margin:0;aspect-ratio:4/5;background:var(--forest-deep);overflow:hidden}
.story-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .8s ease}
.story-img.on{opacity:1}
.story-cap{position:absolute;left:0;bottom:0;padding:8px 14px;background:rgba(23,18,13,.72);color:#fff;font-size:13px}
.story-steps{display:grid;gap:0}
.story-step{min-height:72vh;display:flex;flex-direction:column;justify-content:center;gap:10px;padding-block:32px;opacity:.38;transition:opacity .5s ease}
.story-step.on{opacity:1}
.story-step h3{font-size:clamp(26px,3vw,34px)}
.story-step p{line-height:2}
.story-inline{display:none;margin:0}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .9s ease,transform .9s ease}
.reveal.is-in{opacity:1;transform:none}
.exhibit-info .visit-poster{max-width:420px}
.info-h{font-size:clamp(28px,3.2vw,38px);margin:8px 0 20px}
.stats-head{padding-top:40px}
.reading-plain{max-width:46em;font-family:var(--serif);font-size:17px;line-height:2.1;display:grid;gap:16px}
.work-lead{font-family:var(--serif);font-size:18px;line-height:1.9;margin:10px 0 6px}
.more-text{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:6px 0;margin-bottom:24px}
.more-text summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:500;color:var(--wood)}
.more-text section{margin-top:16px}
@media(max-width:960px){
  .story-grid{grid-template-columns:1fr;gap:0}
  .story-stage{display:none}
  .story-step{min-height:0;opacity:1;padding-block:28px;border-top:1px solid var(--line)}
  .story-inline{display:block}
  .story-inline img{width:100%;aspect-ratio:4/3;object-fit:cover}
}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.story-img,.story-step{transition:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* 計畫團隊 */
.team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.team-group{background:var(--paper);padding:28px 28px 12px;border-top:3px solid var(--wood)}
.team-group h3{font-size:20px;margin-bottom:8px}
.team-group ul{list-style:none;margin:0;padding:0}
.team-group li{padding:14px 0;border-top:1px solid var(--line)}
.team-group li:first-child{border-top:0}
.team-name{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.team-name strong{font-family:var(--serif);font-size:19px}
.team-name span{font-size:14px;color:var(--wood)}
.team-org{font-size:14px;color:var(--muted);margin-top:2px}
.team-duty{font-size:15px;line-height:1.8;margin-top:4px}
.team-block{padding-top:0}
.footer-link{color:#e6dfd3;display:inline-flex;align-items:center;min-height:44px}
@media(max-width:760px){.team-grid{grid-template-columns:1fr}}

/* 頁首標題：拿掉標誌後保持 44px 點擊高度 */
.brand{min-height:44px}
.team-local{padding:1px 8px;border:1px solid var(--wood);color:var(--wood)!important;font-size:12px!important;letter-spacing:.06em}
.team-group li{padding:12px 0}
/* 計畫團隊：縮小間距，卡片依內容高度 */
.team-grid{align-items:start}
.team-group{padding:22px 24px 14px}
.team-group h3{margin-bottom:4px}
.team-group li,.team-group li:first-child{padding:6px 0;border-top:0}
.team-merged{gap:14px}
.team-merged span{font-size:14px;color:var(--wood)}
.team-merged strong{letter-spacing:.04em}

/* 作品格線：統一淺灰相框（照片背景不一，放進同尺寸底框、完整縮放不裁切） */
.works-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 18px}
.work-card{flex:none;max-width:none}
.work-image{aspect-ratio:4/5;background:#dedbd4;padding:18px}
.work-image img{object-fit:contain}
.today-grid .works-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:960px){.works-grid,.today-grid .works-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.works-grid,.today-grid .works-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px}.work-image{aspect-ratio:4/5;padding:10px}}

/* ---------- 入場頁：黑底、作品輪播、大字痕跡 ---------- */
body.in-enter{background:#0b0907}
body.in-enter .preview-strip,body.in-enter .site-header,body.in-enter .site-footer,body.in-enter .skip-link{display:none}
.enter{min-height:100svh;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);background:#0b0907;color:#ede6da}
.enter-stage{position:relative;overflow:hidden;background:#0b0907;min-height:100svh}
.enter-photo{position:absolute;inset:6% 4% 12%;width:92%;height:82%;object-fit:contain;opacity:0;transform:scale(1.04);transition:opacity 1.6s ease,transform 7s ease-out;-webkit-mask-image:radial-gradient(ellipse 72% 70% at 50% 48%,#000 58%,transparent 100%);mask-image:radial-gradient(ellipse 72% 70% at 50% 48%,#000 58%,transparent 100%)}
.enter-photo.on{opacity:1;transform:scale(1)}
.enter-ctrl{position:absolute;left:clamp(20px,4vw,56px);right:clamp(20px,4vw,56px);bottom:clamp(20px,4vh,40px);display:flex;align-items:center;gap:18px}
.enter-cap{margin:0;font-family:var(--serif);font-size:15px;letter-spacing:.08em;color:#bdb3a3;flex:1;min-width:0}
.enter-dots{display:flex;gap:8px}
.enter-dots span{width:22px;height:2px;background:rgba(237,230,218,.28);transition:background .4s}
.enter-dots span.on{background:#d9a066}
.enter-pause{width:44px;height:44px;border:1px solid rgba(237,230,218,.35);border-radius:50%;background:transparent;color:#ede6da;font-size:12px;cursor:pointer}
.enter-pause:hover,.enter-pause:focus-visible{border-color:#d9a066;color:#d9a066}
.enter-copy{display:flex;flex-direction:column;justify-content:center;gap:28px;padding:clamp(40px,7vh,96px) clamp(28px,6vw,96px);border-left:1px solid rgba(237,230,218,.08)}
.enter-kicker{margin:0;font-size:14px;letter-spacing:.3em;color:#d9a066}
.enter-title{margin:0;font-size:clamp(120px,15vw,230px);line-height:.95;font-weight:400;color:#f3ece0;letter-spacing:.02em}
.enter-slogan{margin:0;font-family:var(--serif);font-size:clamp(19px,1.7vw,24px);line-height:2;color:#e2dbcf;letter-spacing:.12em}
.enter-info{margin:0;display:flex;flex-wrap:wrap;gap:6px 22px;font-size:15px;color:#bdb3a3}
.enter-info .mono{font-size:20px;color:#ede6da;letter-spacing:.04em}
.enter-go{align-self:flex-start;display:inline-flex;align-items:center;gap:16px;min-height:52px;padding:12px 30px;border:1px solid #d9a066;color:#f3ece0;font-size:16px;letter-spacing:.24em;text-decoration:none;transition:background .3s,color .3s}
.enter-go:hover,.enter-go:focus-visible{background:#d9a066;color:#17120d}
.enter-copy>*{animation:enter-rise 1.2s ease both}
.enter-copy>:nth-child(2){animation-delay:.15s}.enter-copy>:nth-child(3){animation-delay:.3s}.enter-copy>:nth-child(4){animation-delay:.45s}.enter-copy>:nth-child(5){animation-delay:.6s}
@keyframes enter-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media(max-width:900px){
  .enter{grid-template-columns:1fr;grid-template-rows:auto auto}
  .enter-stage{min-height:52svh}
  .enter-photo{inset:4% 4% 16%;height:80%}
  .enter-copy{border-left:0;border-top:1px solid rgba(237,230,218,.08);gap:20px;padding:32px max(20px,env(safe-area-inset-left,0px)) 48px}
  .enter-title{font-size:clamp(96px,30vw,150px)}
  .enter-slogan{font-size:17px;line-height:1.9}
  .enter-go{align-self:stretch;justify-content:center}
}
@media(prefers-reduced-motion:reduce){.enter-photo{transition:none;transform:none}.enter-copy>*{animation:none}}
/* 入場頁修正：作品區純黑接合照片底色、邊緣漸隱加強；依螢幕高度縮放大字；手機收緊 */
.enter-stage{background:#000}
.enter-photo{-webkit-mask-image:radial-gradient(ellipse 58% 60% at 50% 48%,#000 42%,transparent 96%);mask-image:radial-gradient(ellipse 58% 60% at 50% 48%,#000 42%,transparent 96%)}
.enter-copy{gap:24px}
.enter-title{font-size:clamp(100px,min(14vw,24vh),220px)}
.enter-cap{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:900px){
  .enter-stage{min-height:44svh}
  .enter-photo{inset:2% 4% 14%;height:84%}
  .enter-ctrl{bottom:10px}
  .enter-dots{display:none}
  .enter-copy{gap:14px;padding-top:22px;padding-bottom:32px}
  .enter-kicker{font-size:12px}
  .enter-title{font-size:clamp(80px,24vw,120px)}
  .enter-slogan{font-size:16px;line-height:1.8}
  .enter-info .mono{font-size:17px}
  .enter-info{font-size:14px}
}
/* 入場頁輪播：手動切換 */
.enter-stage{touch-action:pan-y}
.enter-dots{gap:2px}
.enter-dots button{width:30px;height:44px;padding:0;border:0;background:transparent;cursor:pointer;position:relative}
.enter-dots button::before{content:'';position:absolute;left:4px;right:4px;top:21px;height:2px;background:rgba(237,230,218,.28);transition:background .4s}
.enter-dots button.on::before{background:#d9a066}
.enter-dots button:hover::before,.enter-dots button:focus-visible::before{background:#ede6da}
.enter-btns{display:flex;gap:8px}
.enter-prev,.enter-next{width:44px;height:44px;border:1px solid rgba(237,230,218,.35);border-radius:50%;background:transparent;color:#ede6da;font-size:16px;cursor:pointer}
.enter-prev:hover,.enter-next:hover,.enter-prev:focus-visible,.enter-next:focus-visible{border-color:#d9a066;color:#d9a066}
@media(max-width:900px){.enter-dots{display:none}.enter-btns{gap:6px}}

/* ---------- 三義木雕歷史：時代分期條、大事記、商家數圖表 ---------- */
.era-bar{display:flex;gap:3px;margin:8px 0 28px;min-height:64px}
.era-seg{display:flex;flex-direction:column;justify-content:center;gap:2px;padding:10px 14px;color:#fff;min-width:0;overflow:hidden}
.era-seg strong{font-family:var(--serif);font-size:17px;white-space:nowrap}
.era-seg span{font-size:13px;opacity:.85}
.era-1{--era:#a07c52}.era-2{--era:var(--wood)}.era-3{--era:var(--forest)}
.era-seg.era-1,.era-seg.era-2,.era-seg.era-3{background:var(--era)}
.era-periods li{border-top:3px solid var(--era)}
.hx-timeline{list-style:none;margin:0;padding:0;display:grid;gap:0;max-width:880px}
.hx-timeline li{display:grid;grid-template-columns:132px minmax(0,1fr);gap:24px;position:relative;padding:0 0 26px}
.hx-timeline li::before{content:'';position:absolute;left:146px;top:6px;bottom:0;width:2px;background:var(--era);opacity:.35}
.hx-timeline li:last-child::before{display:none}
.hx-timeline li::after{content:'';position:absolute;left:141px;top:4px;width:12px;height:12px;border-radius:50%;background:var(--era)}
.hx-year{font-size:18px;color:var(--era);text-align:right;padding-right:22px;line-height:1.3}
.hx-body{padding-left:20px}
.hx-body h3{font-size:19px;margin-bottom:4px}
.hx-body p{color:var(--muted);line-height:1.8}
.shop-chart .bars{height:240px}
.bar-val{font-size:13px;color:var(--ink);text-align:center;margin-bottom:4px}
.shop-chart .bar{width:min(60%,44px)}
.shop-chart .is-export .bar{background:var(--wood)}
.shop-chart .is-domestic .bar{background:var(--forest)}
.chart-legend{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;font-size:13px;color:var(--muted);margin:34px 0 0}
.chart-legend .key{display:inline-block;width:14px;height:10px}
.key-export{background:var(--wood)}.key-domestic{background:var(--forest);margin-left:10px}
.history-teaser .era-bar{margin-bottom:16px}
.teaser-text{max-width:46em}
@media(max-width:640px){
  .era-seg{padding:8px 8px}
  .era-seg strong{font-size:14px}
  .era-seg span{font-size:12px}
  .hx-timeline li{grid-template-columns:76px minmax(0,1fr);gap:12px}
  .hx-timeline li::before{left:86px}
  .hx-timeline li::after{left:81px}
  .hx-year{font-size:14px;padding-right:14px}
  .hx-body{padding-left:14px}
  .shop-chart .bar-year{font-size:12px}
}

/* 產業空間地圖 */
.place-map{margin:0 auto;max-width:760px;display:grid;gap:10px}
.place-map-svg{display:block;width:100%;height:auto;border:1px solid var(--line);font-family:var(--sans)}
.place-map figcaption{font-size:13px;color:var(--muted)}
.place-pin{cursor:pointer}
.place-pin circle{transition:r .2s ease,fill .2s ease}
.place-pin:hover circle,.place-pin:focus-visible circle,.place-pin.active circle{r:16}
.place-pin.active circle{fill:var(--forest)}
.place-pin:focus-visible{outline:none}
.place-pin:focus-visible circle{stroke:var(--forest);stroke-width:3.5}
@keyframes pin-bounce{0%{transform:translateY(0) scale(1)}30%{transform:translateY(-9px) scale(1.2)}55%{transform:translateY(1px) scale(.96)}75%{transform:translateY(-3px) scale(1.05)}100%{transform:translateY(0) scale(1)}}
.place-pin.bounce{animation:pin-bounce .55s ease}
@media(prefers-reduced-motion:reduce){.place-pin.bounce{animation:none}}
.map-hint{display:none;font-size:13px;color:var(--muted);text-align:center;margin:0}
@media(max-width:640px){
  .map-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line)}
  .map-scroll .place-map-svg{width:720px;max-width:none;border:0}
  .map-hint{display:block}
}

/* 小分說與創作心法 */
.subsection{margin-top:34px;padding-top:26px;border-top:1px solid var(--line)}
.subsection h3{font-size:22px;font-weight:900;display:flex;align-items:baseline;gap:12px}
.subsection h3 .mono{font-size:15px;font-weight:500;color:var(--wood)}
.subsection .sub-title{font-family:var(--serif);font-size:16px;color:var(--wood-deep);margin:4px 0 14px}
.subsection p:not(.sub-title){font-size:16px;line-height:2.05}
.slide-voices .slide-inner{padding-bottom:64px}
.slide-voices h2{font-size:clamp(28px,3vw,40px);line-height:1.5;margin-bottom:24px}
.voice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.voice-card{padding:22px 24px;background:var(--bg);border-left:3px solid var(--wood)}
.voice-no{font-size:13px;color:var(--wood);margin:0}
.voice-card h3{font-size:20px;margin-top:2px}
.voice-head{font-family:var(--serif);font-weight:700;color:var(--wood-deep);margin:4px 0 10px;line-height:1.6}
.voice-card blockquote{margin:8px 0 0;font-family:var(--serif);font-size:15.5px;line-height:1.95}
.voice-card blockquote:before{content:"「"}
.voice-card blockquote:after{content:"」"}
@media(max-width:760px){.voice-grid{grid-template-columns:1fr}.subsection h3{font-size:20px}}
