:root{--ink:#17211f;--paper:#f0eee8;--mist:#d9e2df;--blue:#526f78;--line:#9eafab;font-family:"Noto Sans TC","PingFang TC",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink)}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}.site-head{height:78px;padding:12px 5vw;display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:var(--paper);position:fixed;z-index:5;inset:0 0 auto}.brand{display:flex;align-items:center;gap:18px}.brand img{width:178px;height:52px;object-fit:contain;object-position:left center}.brand span{font:10px Arial;letter-spacing:.18em;color:#aebfbc;border-left:1px solid #ffffff33;padding-left:18px}.site-head nav{display:flex;gap:28px;font-weight:700;font-size:13px}.opening{height:100svh;min-height:680px;position:relative;background:var(--ink);color:var(--paper);overflow:hidden}.opening>img{position:absolute;inset:-3%;width:106%;height:106%;animation:heroKenBurns 16s cubic-bezier(.35,0,.2,1) both}.opening-shade{position:absolute;inset:0;background:linear-gradient(90deg,#17211fe8 0%,#17211f99 45%,#17211f26 100%)}.opening-shade:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 36%,#dce7e455 49%,transparent 62%);transform:translateX(-110%);animation:lightSweep 2.2s 1.1s ease-out both}.opening-copy{position:absolute;left:9vw;bottom:12vh;max-width:700px;animation:heroCopyIn 1s .35s cubic-bezier(.2,.75,.2,1) both}.opening-copy .eyebrow{animation:heroCopyIn .7s .55s both}.opening-copy h1{animation:heroCopyIn .8s .7s both}.opening-copy .lead{animation:heroCopyIn .8s .9s both}.opening-copy .round-link{animation:heroCopyIn .8s 1.08s both}.eyebrow{font:700 11px Arial;letter-spacing:.18em;color:var(--blue)}h1,h2,h3,p{margin-top:0}.opening h1{font-size:clamp(68px,10vw,150px);line-height:.9;letter-spacing:-.09em;font-weight:400;margin:22px 0}.opening h1 i,h2 em{font-style:normal;color:#b6c9c6}.lead{max-width:440px;line-height:1.9;color:#d3ddda}.round-link{display:inline-flex;align-items:center;gap:18px;border:1px solid #f0eee855;padding:12px 14px 12px 20px;margin-top:26px;font-size:13px}.round-link b{display:grid;place-items:center;border-radius:50%;width:30px;height:30px;background:var(--blue)}.opening-index{position:absolute;right:7vw;bottom:12vh;font:12px Arial;letter-spacing:.12em;text-align:right;animation:heroCopyIn .9s 1.25s both}.opening-index:before{content:"";display:block;width:46px;height:1px;background:#b6c9c6;margin:0 0 12px auto;animation:indexRule 1.1s 1.6s both}.opening-index span{font-size:10px;color:#b6c9c6}.statement{padding:14vw 9vw 12vw;background:var(--paper);display:grid;grid-template-columns:90px .9fr 1.1fr;gap:6vw;align-items:start}.section-no{font:20px Georgia;color:var(--blue)}.statement h2,.archive h2,.method h2,.progress-file h2,.field-notes h2,.contact-file h2{font-size:clamp(45px,6vw,96px);line-height:1;letter-spacing:-.07em;font-weight:400;margin:20px 0 34px}.statement>div>p:last-child{max-width:500px;line-height:2;color:#5d706f}.statement figure{margin:60px 0 0;position:relative;height:55vh}.statement figcaption{position:absolute;bottom:16px;left:16px;color:#fff;font:10px Arial;letter-spacing:.18em}.archive{padding:13vw 7vw;background:var(--mist)}.archive-head{display:grid;grid-template-columns:90px 1fr .8fr;gap:5vw;align-items:end;margin-bottom:65px}.archive-head>p:last-child{line-height:1.8;color:#5d706f;max-width:320px}.archive-grid{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(380px,.84fr);gap:28px;align-items:stretch}.archive-grid article{min-width:0}.archive-grid img{height:260px;margin:0;object-fit:cover}.archive-grid .archive-feature{grid-row:span 2;display:grid;grid-template-rows:minmax(420px,1fr) auto;background:var(--ink);color:var(--paper)}.archive-grid .archive-feature img{height:100%;min-height:560px}.archive-grid>article:not(.archive-feature){display:grid;grid-template-columns:minmax(190px,.9fr) 1fr;gap:24px;align-items:center;border-top:1px solid #9eafab;padding:22px 0}.archive-grid>article:not(.archive-feature)+article{border-bottom:1px solid #9eafab}.archive-grid span{font:10px Arial;letter-spacing:.12em;color:var(--blue)}.archive-grid h3{font-size:25px;margin:14px 0 6px}.archive-grid p{color:#5d706f}.archive-feature>div{padding:28px 30px 32px}.archive-feature span{color:#b6c9c6}.archive-feature p{color:#b6c9c6}.archive-feature a{font-size:13px;border-bottom:1px solid #ffffff55;padding-bottom:7px}
.archive-grid article{transition:transform .45s ease,box-shadow .45s ease}.archive-grid article:not(.archive-feature):hover{transform:translateX(8px)}.archive-grid article:not(.archive-feature) img{transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .7s ease;filter:saturate(.86)}.archive-grid article:not(.archive-feature):hover img{transform:scale(1.06);filter:saturate(1.08)}.archive-feature{overflow:hidden}.archive-feature img{transition:transform 1.1s cubic-bezier(.2,.7,.2,1),filter 1.1s ease;filter:saturate(.86)}.archive-feature:hover img{transform:scale(1.045);filter:saturate(1.06)}.archive-grid article.is-in{animation:archiveRise .8s both}.archive-grid article:nth-child(2).is-in{animation-delay:.12s}.archive-grid article:nth-child(3).is-in{animation-delay:.24s}.method-copy li{opacity:0;transform:translateX(22px);transition:opacity .7s ease,transform .7s ease}.method.is-in .method-copy li{opacity:1;transform:none}.method.is-in .method-copy li:nth-child(2){transition-delay:.16s}.method.is-in .method-copy li:nth-child(3){transition-delay:.32s}.timeline-line i{transform-origin:left center;transform:scaleX(0);transition:transform 1.4s cubic-bezier(.2,.75,.2,1)}.progress-file.is-in .timeline-line i{transform:scaleX(1)}@keyframes archiveRise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.method{display:grid;grid-template-columns:1.2fr .8fr;background:var(--ink);color:var(--paper)}.method-image{height:100vh;min-height:680px}.method-copy{padding:13vw 7vw 8vw}.method-copy>h2{margin-bottom:80px}.method-copy ol{padding:0;margin:0;list-style:none}.method-copy li{display:grid;grid-template-columns:38px 1fr;gap:10px;padding:24px 0;border-top:1px solid #ffffff33}.method-copy li b{color:#b6c9c6}.method-copy li strong{font-size:20px}.method-copy li span{grid-column:2;color:#aebfbc;line-height:1.7;font-size:13px}.progress-file{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;padding:13vw 9vw;background:var(--paper)}.progress-file>div>p:last-child{color:#5d706f;line-height:1.8}.timeline{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:15px;align-items:start;padding-top:90px}.timeline-line{position:absolute;left:0;right:0;top:47px;height:3px;background:#bdc9c6}.timeline-line i{display:block;width:68%;height:100%;background:var(--blue)}.timeline article{position:relative;padding-top:35px;border-top:3px solid #bdc9c6}.timeline article.current{border-color:var(--blue)}.timeline b{color:var(--blue);font:17px Georgia}.timeline strong{display:block;margin:20px 0 8px;font-size:14px}.timeline span{font-size:11px;color:#657371}.field-notes{display:grid;grid-template-columns:90px 1fr 1fr;gap:6vw;padding:13vw 9vw;background:#202827;color:var(--paper)}.field-notes h2{margin-bottom:0}.notes article{border-top:1px solid #ffffff33;padding:25px 0}.notes span{font:11px Arial;color:#b6c9c6}.notes h3{font-size:20px;line-height:1.5;margin:16px 0 0}.contact-file{padding:14vw 9vw 50px;background:var(--blue);color:var(--paper);min-height:70vh}.contact-file h2{max-width:850px}.contact-file h2 em{color:#d6e1dc}.text-link{font-size:14px;border-bottom:1px solid #ffffff77;padding-bottom:9px}.contact-meta{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid #ffffff55;margin-top:16vh;padding-top:20px;font-size:12px;color:#d6e1dc}@keyframes heroKenBurns{0%{opacity:0;transform:scale(1.08) translate3d(2%,1%,0)}100%{opacity:1;transform:scale(1) translate3d(0,0,0)}}@keyframes heroCopyIn{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@keyframes lightSweep{to{transform:translateX(110%)}}@keyframes indexRule{from{width:0;opacity:0}to{width:46px;opacity:1}}@media (prefers-reduced-motion:reduce){.opening>img,.opening-copy,.opening-copy .eyebrow,.opening-copy h1,.opening-copy .lead,.opening-copy .round-link,.opening-index,.opening-shade:after,.opening-index:before{animation:none!important;opacity:1;transform:none}}section,article{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}section.opening{opacity:1;transform:none}.is-in{opacity:1;transform:none}@media(max-width:800px){.site-head{height:68px;padding:10px 20px}.brand img{width:145px}.brand span{display:none}.site-head nav{gap:12px;font-size:11px}.opening{min-height:720px}.opening-copy{left:25px;right:25px;bottom:72px}.opening h1{font-size:clamp(62px,18vw,100px)}.opening-index{display:none}.statement,.progress-file,.field-notes{display:block;padding:90px 25px}.statement figure{height:340px;margin-top:50px}.archive{padding:90px 25px}.archive-head{display:block;margin-bottom:42px}.archive-head>p:last-child{margin-top:25px}.archive-grid{display:block}.archive-grid article,.archive-grid .archive-feature{margin-bottom:36px}.archive-grid img,.archive-grid .archive-feature img{height:330px;min-height:0}.archive-grid>article:not(.archive-feature){display:grid;grid-template-columns:1fr;gap:18px;padding:0;border:0}.archive-grid>article:not(.archive-feature)+article{border:0}.method{display:block}.method-image{height:380px;min-height:0}.method-copy{padding:85px 25px}.progress-file .timeline{margin-top:55px;display:block;padding-top:0}.timeline-line{display:none}.timeline article{padding:18px 0;border-top:1px solid #bdc9c6}.timeline article.current{border-top:3px solid var(--blue)}.field-notes .section-no{margin-bottom:50px}.notes{margin-top:55px}.contact-file{padding:90px 25px;min-height:0}.contact-meta{margin-top:100px;display:grid}}
/* Homepage: remove decorative index columns after label cleanup */
.statement{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.archive-head{grid-template-columns:minmax(0,1fr) .8fr}
.field-notes{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.method-copy li{grid-template-columns:1fr}
.method-copy li span{grid-column:1}
@media(max-width:800px){.statement,.field-notes{display:block}.archive-head{display:block}}
