
@font-face{font-family:Archivo;src:url(/assets/font/Archivo-Light.ttf) format("truetype");
font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:Archivo;src:url(/assets/font/Archivo-Regular.ttf) format("truetype");
font-weight:400;font-style:normal;font-display:swap}

:root{
  --paper:#ffffff; --ink:#000000; --grey:#737373; --hair:#e3e3e3;
  --maxw:1440px; --pad:clamp(20px,4.2vw,60px);
  --sans:Archivo,"Helvetica Neue",Arial,sans-serif;
  --serif:"Noto Serif TC","Songti TC","Source Han Serif TC",SimSun,"Times New Roman",serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{background:var(--paper);color:var(--ink);font-family:var(--sans);
  font-weight:300;font-size:16px;line-height:1.62;letter-spacing:.005em}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad)}
h1,h2,h3{font-weight:300;letter-spacing:-.012em;line-height:1.2}
.zh{font-family:var(--serif);letter-spacing:.02em}

header{background:var(--paper)}
.hd{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;
  padding-top:30px;padding-bottom:26px;gap:20px}
.wordmark{font-size:15px;font-weight:400;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap}
.wordmark em{font-style:normal;color:var(--grey)}
nav{display:flex;gap:clamp(16px,2.5vw,40px);justify-content:center;font-size:13.5px;color:var(--grey)}
nav a:hover{color:var(--ink)}
.lang{display:flex;gap:12px;justify-content:flex-end;font-size:12px;color:var(--grey);
  letter-spacing:normal;white-space:nowrap}
.lang a:hover{color:var(--ink)}
.lang .on{color:var(--ink);text-decoration:underline;text-underline-offset:3px}

.hero{padding:clamp(48px,7vh,96px) 0 0;text-align:center}
.hero .plate{width:min(58%,760px);margin:0 auto}
.hero .plate img{width:100%;height:auto}
@media(max-width:860px){.hero .plate{width:100%}}

@media(max-width:760px){
  .hd{grid-template-columns:1fr auto;row-gap:16px;padding-top:22px;padding-bottom:18px}
  .wordmark{grid-column:1;grid-row:1;font-size:13.5px}
  .lang{grid-column:2;grid-row:1}
  nav{grid-column:1/-1;grid-row:2;justify-content:flex-start;gap:22px;font-size:14px}
}

.split{padding:clamp(80px,12vh,150px) 0 clamp(50px,7vh,80px);
  display:grid;grid-template-columns:1fr 1fr;gap:clamp(26px,4vw,80px)}
.path{display:block;padding-top:26px;border-top:1px solid var(--hair)}
.path h2{font-size:clamp(21px,2.4vw,29px);margin-bottom:14px}
.path p{color:var(--grey);font-size:15px;max-width:34em;margin-bottom:20px}
.path .go{font-size:12.5px;letter-spacing:normal;text-transform:uppercase;color:var(--ink)}
.path:hover .go{color:var(--grey)}
@media(max-width:760px){.split{grid-template-columns:1fr;gap:44px}}

.sec{padding-top:clamp(50px,7vh,90px);padding-bottom:clamp(50px,7vh,90px)}
.sec-h{display:flex;justify-content:space-between;align-items:baseline;
  padding-bottom:18px;margin-bottom:clamp(28px,4vh,46px);border-bottom:1px solid var(--hair);gap:16px}
.sec-h h2{font-size:clamp(19px,2.2vw,26px)}
.sec-h span{font-size:12px;letter-spacing:normal;color:var(--grey);text-align:right}

.mosaic{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:clamp(20px,2.6vw,44px)}
.mosaic .it{display:block;min-width:0}
.mosaic .it img{width:100%;background:#f4f4f4}
.mosaic .it .cap{margin-top:14px;display:flex;justify-content:space-between;
  gap:14px;align-items:baseline;min-width:0}
.mosaic .it .cap b{font-weight:400;font-size:15.5px;min-width:0}
.mosaic .it .cap i{font-style:normal;font-size:12.5px;color:var(--grey);
  text-align:right;flex:0 1 auto;min-width:0;overflow-wrap:anywhere}
.mosaic .it:hover img{opacity:.86}
.mosaic .it p{font-size:13px;color:var(--grey);margin-top:5px}

.listmode .mosaic{grid-template-columns:1fr;gap:0}
.listmode .it{display:grid;grid-template-columns:200px 1fr;gap:26px;align-items:center;
  padding:18px 0;border-bottom:1px solid var(--hair)}
.listmode .it img{width:200px}
.listmode .it .cap{margin:0;display:flex;justify-content:flex-start;gap:14px}
.listmode .it>p{display:none}
.viewtog{display:flex;gap:18px;font-size:12.5px;letter-spacing:normal;color:var(--grey)}
.viewtog button{background:none;border:0;font:inherit;color:inherit;cursor:pointer;padding:0}
.viewtog button.on{color:var(--ink);text-decoration:underline;text-underline-offset:3px}

.phead{padding:clamp(44px,7vh,86px) 0 clamp(26px,4vh,44px)}
.phead h1{font-size:clamp(28px,3.6vw,46px);line-height:1.30;letter-spacing:-.012em;font-weight:500}
.phead .meta{margin-top:0;font-size:clamp(28px,3.6vw,46px);line-height:1.30;letter-spacing:-.012em;font-weight:500;color:var(--ink)}
.plates{display:flex;flex-direction:column;gap:clamp(14px,2vw,30px);align-items:flex-start}
.plates img{max-width:78%;max-height:86vh;width:auto;height:auto;background:#f4f4f4}
@media(max-width:860px){.plates img{max-width:100%}}
.plate-first{position:relative;max-width:78%;display:block}
@media(max-width:860px){.plate-first{max-width:100%}}
.plate-first img{max-width:100%}
.prose{padding:clamp(38px,6vh,70px) 0 0;max-width:62ch}
.prose p{margin-bottom:20px;font-size:16.5px;line-height:1.75}
.prose h2{font-size:12.5px;letter-spacing:normal;color:var(--grey);
  margin:36px 0 14px;font-weight:400;text-transform:none}
.prose ul{list-style:none}
.prose li{padding-left:18px;position:relative;margin-bottom:9px;font-size:15.5px;color:var(--ink)}
.prose li:before{content:"";position:absolute;left:0;top:.75em;width:8px;height:1px;background:var(--grey)}

details.credits{margin-top:40px;border-top:1px solid var(--hair)}
details.credits.floating{margin:0;border:0;position:absolute;right:18px;bottom:18px;max-width:calc(100% - 36px)}
details.credits.floating summary{padding:13px 20px;background:var(--paper);color:var(--ink);
  font-size:12.5px;letter-spacing:normal;border:1px solid var(--hair)}
details.credits.floating[open] summary{border-bottom-color:transparent}
details.credits.floating dl.ctd{display:block}
.ctd>div{display:grid;grid-template-columns:110px 1fr;gap:14px;padding:12px 0;border-bottom:1px solid var(--hair)}
.facts{background:var(--paper);border:1px solid var(--hair);
  border-top:0;padding:0 20px;grid-template-columns:1fr}
details.credits.floating dl.facts div{padding:14px 0}
details.credits summary{cursor:pointer;list-style:none;padding:18px 0;
  font-size:12.5px;letter-spacing:normal;color:var(--grey)}
details.credits summary::-webkit-details-marker{display:none}
details.credits summary:hover{color:var(--ink)}
details.credits summary:after{content:" +";float:right}
details.credits[open] summary:after{content:" −"}
dl.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:0;
  border-top:1px solid var(--hair);margin-top:4px}
dl.facts div{padding:18px 22px 18px 0;border-bottom:1px solid var(--hair)}
dl.facts dt{font-size:12px;letter-spacing:normal;color:var(--grey);margin-bottom:6px}
dl.facts dd{font-size:15px}

.res-lead{padding:clamp(50px,8vh,100px) 0 clamp(30px,5vh,50px);max-width:56ch}
.res-lead h1{font-size:clamp(27px,3.8vw,44px);margin-bottom:24px;line-height:1.25}
.res-lead p{font-size:17px;line-height:1.8;margin-bottom:18px;color:var(--ink)}
.wa{display:inline-block;margin-top:12px;padding:15px 30px;border:1px solid var(--ink);
  font-size:14px;letter-spacing:.04em}
.wa:hover{background:var(--ink);color:var(--paper)}
.steps{counter-reset:s}
.steps li{list-style:none;counter-increment:s;padding:20px 0;border-bottom:1px solid var(--hair);
  display:grid;grid-template-columns:44px 1fr;gap:4px 18px;align-items:start}
.steps li:before{grid-row:1 / span 2}
.steps li b,.steps li p{grid-column:2}
.steps li:before{content:counter(s,decimal-leading-zero);color:var(--grey);font-size:13px;padding-top:3px}
.steps b{font-weight:400;display:block;margin-bottom:5px}
.steps p{font-size:14.5px;color:var(--grey)}
.faq dt{font-weight:400;padding:20px 0 8px;font-size:16px}
.faq dd{color:var(--ink);font-size:15.5px;padding-bottom:20px;border-bottom:1px solid var(--hair)}

footer{margin-top:clamp(60px,9vh,120px);border-top:1px solid var(--hair);
  padding:32px 0 60px;font-size:12.5px;color:var(--grey)}
footer .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:26px}
footer b{font-weight:400;color:var(--ink);display:block;margin-bottom:8px;font-size:12px;letter-spacing:normal}
footer a:hover{color:var(--ink)}
.cr{margin-top:34px;padding-top:22px;border-top:1px solid var(--hair);
  display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}

.langsw{position:fixed;bottom:18px;right:18px;background:var(--paper);
  border:1px solid var(--hair);padding:8px 12px;font-size:12px;display:flex;gap:10px;z-index:60}
.langsw a{color:var(--grey)} .langsw a.on{color:var(--ink);font-weight:400}
@media(min-width:761px){.langsw{display:none}}

.ctc{margin-top:38px;max-width:660px}
.ctc>div{display:grid;grid-template-columns:96px 1fr;gap:22px;padding:15px 0;border-bottom:1px solid var(--hair)}
.ctc>div:first-child{border-top:1px solid var(--hair)}
.ctc dt{color:var(--grey);font-size:13px;line-height:1.7}
.ctc dd{font-size:15.5px;line-height:1.75}
.ctc dd a{text-decoration:underline}


.motto{padding:clamp(46px,7vh,86px) 0 clamp(10px,2vh,24px);text-align:center}
.motto p{font-size:clamp(17px,2vw,21px);color:var(--ink);letter-spacing:.04em}
.more{display:inline-block;font-size:13.5px;color:var(--grey);border-bottom:1px solid var(--hair);padding-bottom:3px}
.more:hover{color:var(--ink);border-bottom-color:var(--ink)}


.ctc .qr{display:block;margin:14px 0 8px;width:160px;height:160px;
  border:1px solid var(--hair);background:#ffffff}
.ctc .qrcap{font-size:12.5px;color:var(--grey)}
.ctc dd a{text-decoration:underline}
.wa-line{margin-top:40px}


.flogo{padding-bottom:34px}
.flogo img{display:block;height:52px;width:auto;opacity:.92}
footer .cols b{display:block;margin-bottom:6px}
footer .cols a{display:inline-block;margin-bottom:2px}
footer .cols > div{line-height:1.85}
@media(max-width:860px){.flogo img{height:44px}}

