:root{--width:1160px;color:var(--ink);background:var(--paper);font-synthesis:none;font-family:Noto Sans TC,-apple-system,BlinkMacSystemFont,PingFang TC,sans-serif}*{box-sizing:border-box}body{margin:0;font-size:15px;line-height:1.85}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.04em;line-height:1.4}h1{font-size:clamp(40px,4.8vw,64px);font-weight:800}h2{font-size:32px;font-weight:700}h3{font-size:22px}p{color:var(--muted)}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--focus);outline-offset:5px}.container{width:min(var(--width),calc(100% - 80px));margin-inline:auto}.skip-link{z-index:10;background:var(--surface);padding:10px;position:absolute;top:-100px;left:20px}.skip-link:focus{top:10px}.site-header{border-bottom:1px solid var(--line);background:var(--surface)}.header-inner{justify-content:space-between;align-items:center;gap:30px;max-width:1320px;margin:auto;padding:24px 40px;display:flex}.wordmark{letter-spacing:-.6px;align-items:center;gap:12px;font-size:21px;font-weight:800;line-height:1.2;display:flex}.wordmark small{letter-spacing:1.5px;margin-top:7px;font-size:11px;font-weight:500;display:block}.brand-icon{background:var(--teal);width:42px;height:44px;color:var(--onAccent);text-align:center;border-radius:12px 12px 12px 2px;font-family:Georgia,serif;font-size:42px;line-height:32px}.brand-icon span{color:var(--brandDot)}.site-header nav{align-items:center;gap:36px;display:flex}.site-header nav a{border-bottom:2px solid #0000;padding:7px 0;font-size:14px;font-weight:500}.site-header nav a:hover,.site-header nav a[aria-current]{color:var(--teal);border-color:var(--teal)}.eyebrow{letter-spacing:1.5px;color:var(--teal);font-size:11px;font-weight:700;line-height:1.6}.accent{color:var(--teal)}.hero{grid-template-columns:1.04fr 1fr;align-items:center;gap:65px;padding-top:76px;padding-bottom:70px;display:grid}.hero-subtitle{color:var(--teal);margin-top:22px;font-size:20px;font-weight:500}.hero-description{margin-top:15px;font-size:15px;line-height:2}.actions{gap:12px;margin-top:30px;display:flex}.button{background:var(--teal);border:1px solid var(--teal);color:var(--onAccent);border-radius:5px;justify-content:center;align-items:center;gap:35px;padding:12px 23px;font-size:14px;font-weight:600;transition:background .2s,transform .2s;display:inline-flex}.button:hover{background:var(--buttonHover);transform:translateY(-2px)}.button.secondary{background:var(--surface);color:var(--ink);border-color:var(--line)}.button.secondary:hover{background:var(--soft)}.hero-footnote{letter-spacing:1px;margin-top:21px;font-size:11px}.hero-visual{isolation:isolate;margin-top:20px;position:relative}.hero-liquid{pointer-events:none;width:100%;height:420px;display:block;position:relative}.hero-liquid i{background:var(--portrait);border-radius:44% 56% 61% 39%/45% 41% 59% 55%;display:block;position:absolute;inset:0 5%;overflow:hidden}.hero-liquid .hero-profile{z-index:1;object-fit:contain;object-position:center bottom;width:100%;height:100%;position:absolute;inset:0}.home-section-nav{display:none}.section{padding-top:68px;padding-bottom:74px}.soft-section{background:var(--soft)}.section-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:31px;display:flex}.section-heading h2{margin-top:9px}.home-page .section-heading h2{margin-top:0}.section-heading p:not(.eyebrow){margin-top:10px;font-size:14px}.text-link{color:var(--teal);align-items:center;gap:22px;font-size:13px;font-weight:600;display:inline-flex}.text-link:hover{text-underline-offset:5px;text-decoration:underline}.card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;display:grid}.home-article-grid{grid-template-columns:minmax(0,1fr);max-width:920px;margin-inline:auto}.content-card{background:var(--surface);border:1px solid var(--line);border-radius:7px;flex-direction:column;transition:transform .2s,box-shadow .2s;display:flex;overflow:hidden}.content-card:hover{box-shadow:0 12px 24px var(--shadow);transform:translateY(-4px)}.home-article-grid .content-card{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);display:grid}.card-art{height:190px;color:var(--mintText);background:var(--mintBackground);padding:22px;position:relative;overflow:hidden}.card-art.sand{background:var(--sandBackground);color:var(--sandText)}.card-art.blue{background:var(--blueBackground);color:var(--blueText)}.card-art:after{content:"";opacity:.23;border:1px solid;border-radius:50%;width:230px;height:230px;position:absolute;bottom:-85px;right:-35px}.art-label{letter-spacing:1.5px;z-index:1;font-size:11px;position:relative}.home-article-grid .card-art{height:auto;min-height:250px}.art-symbol{letter-spacing:-7px;font-family:Georgia,serif;font-size:88px;line-height:1.5;position:absolute;top:16px;right:25px}.art-topic{font-size:16px;font-weight:600;position:absolute;bottom:21px}.project-art{padding:0}.project-art:after{display:none}.project-art img{object-fit:cover;width:100%;height:100%}.card-body{flex-direction:column;flex:1;padding:23px;display:flex}.home-article-grid .card-body{justify-content:center}.card-meta{color:var(--muted);letter-spacing:.4px;justify-content:space-between;gap:10px;font-size:12px;display:flex}.card-meta>span:first-child{color:var(--teal);font-weight:600}.card-body h2,.card-body h3{letter-spacing:-.03em;margin-top:12px;font-size:20px}.card-body p{margin:12px 0 22px;font-size:14px;line-height:1.9}.card-bottom{border-top:1px solid var(--line);color:var(--teal);justify-content:space-between;margin-top:auto;padding-top:15px;font-size:12px;display:flex}.home-page #projects,.home-page #articles,.home-page #profile{scroll-margin-top:62px}.project-feature{background:var(--soft);border:1px solid var(--line);border-radius:8px;grid-template-columns:1.2fr 1fr;display:grid;overflow:hidden}.feature-image img{object-fit:cover;width:100%;height:100%;min-height:320px}.feature-copy{padding:42px}.feature-copy h3{margin:12px 0;font-size:30px}.feature-copy>p:not(.eyebrow){font-size:14px}.feature-copy>p.feature-meta{color:var(--teal);margin:0 0 16px;font-size:12px;font-weight:600}.entry-tags{flex-wrap:wrap;gap:8px;display:flex}.entry-tags span,.entry-tags a{background:var(--tag);color:var(--muted);border-radius:3px;padding:3px 10px;font-size:11px}.entry-tags a:hover{background:var(--tagHover);color:var(--teal)}.feature-copy .entry-tags{margin:20px 0 27px}.about-strip{background:var(--aboutStrip);text-align:center;border-radius:9px;margin-bottom:76px;padding:53px 20px 49px}.about-strip h2{margin:16px 0 27px;font-size:31px}.site-footer{border-top:1px solid var(--line)}.footer-top{justify-content:space-between;align-items:center;gap:30px;padding-top:39px;padding-bottom:35px;display:flex}.footer-brand{letter-spacing:-1px;font-size:22px;font-weight:800}.footer-brand span{color:var(--teal)}.footer-top p{margin-top:4px;font-size:11px}.footer-links{gap:24px;font-size:12px;display:flex}.footer-links a:hover{color:var(--teal)}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;padding-top:18px;padding-bottom:23px;font-size:11px;display:flex}.catalog-page{min-height:65vh;padding-top:64px;padding-bottom:90px}.page-intro{margin-bottom:36px}.page-intro h1{margin:12px 0 16px}.page-intro>p:last-child{max-width:700px;font-size:16px}.collection-tools{background:var(--soft);border:1px solid var(--line);border-radius:7px;padding:28px}.collection-search label{margin-bottom:10px;font-size:13px;font-weight:500;display:block}.search-field{max-width:690px;display:flex}.search-field input{background:var(--surface);border:1px solid var(--inputBorder);width:100%;min-width:0;color:var(--ink);border-radius:4px 0 0 4px;padding:11px 14px;font-size:14px}.search-field button{border:1px solid var(--teal);background:var(--teal);color:var(--onAccent);white-space:nowrap;border-radius:0 4px 4px 0;padding:0 23px;font-size:13px}.filter-tags{flex-wrap:wrap;gap:8px;margin-top:23px;display:flex}.filter-tags button{background:var(--surface);border:1px solid var(--line);color:var(--muted);border-radius:30px;padding:5px 14px;font-size:12px}.filter-tags button[aria-pressed=true]{background:var(--teal);color:var(--onAccent);border-color:var(--teal)}.search-summary{justify-content:space-between;align-items:center;margin:25px 0 19px;font-size:12px;display:flex}.clear-search{color:var(--teal);text-underline-offset:4px;background:0 0;border:0;font-size:12px;text-decoration:underline}.search-empty{text-align:center;background:var(--soft);padding:65px 20px}.search-empty h2{font-size:24px}.detail-page{max-width:860px}.detail-page h1{font-size:clamp(34px,4vw,48px)}.back-link{margin-bottom:30px}.detail-meta{border-block:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;font-size:12px;display:flex}.prose{overflow-wrap:anywhere;padding-top:30px;font-size:17px;line-height:2}.prose p,.prose ul,.prose ol{color:var(--prose);margin:20px 0}.prose h2{margin-top:44px;font-size:27px}.prose h3{margin-top:28px}.prose a{color:var(--teal);text-decoration:underline}.series-index-link{background:var(--soft);border-left:3px solid var(--teal);padding:14px 18px;margin-top:0!important}.article-pagination{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:55px;display:grid}.article-pagination a{border:1px solid var(--line);background:var(--surface);border-radius:6px;padding:20px 22px;display:block}.article-pagination a[rel=next]{text-align:right;grid-column:2}.article-pagination a:hover{border-color:var(--teal)}.article-pagination span{color:var(--teal);margin-bottom:8px;font-size:12px;font-weight:700;display:block}.article-pagination strong{line-height:1.6;display:block}.prose blockquote{border-left:3px solid var(--teal);background:var(--soft);margin:28px 0;padding:5px 25px}.prose pre{border-radius:6px;padding:23px;font-size:14px;overflow-x:auto}.prose :not(pre)>code{background:var(--soft);border-radius:3px;padding:3px 5px}.prose table{border-collapse:collapse;display:block;overflow-x:auto}.prose td,.prose th{border:1px solid var(--line);padding:8px 14px}.detail-end{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;margin-top:55px;padding-top:30px;display:flex}.about-hero{grid-template-columns:1.1fr 1fr;align-items:center;gap:100px;padding-block:78px;display:grid}.about-hero h1{margin-top:20px}.about-hero .text-link{margin-top:28px}.about-photo{width:100%;max-width:680px;margin-inline-start:auto}.about-portrait{object-fit:cover;object-position:center;-webkit-mask-composite:source-in;width:112%;max-width:none;height:auto;margin-inline-start:-12%;display:block;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 10% 90%,#0000 100%),linear-gradient(#0000 0%,#000 4% 76%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 10% 90%,#0000 100%),linear-gradient(#0000 0%,#000 4% 76%,#0000 100%);mask-composite:intersect}.about-body{grid-template-columns:1fr 2fr;gap:50px;display:grid}.about-body h2{margin-bottom:22px}.about-body p:not(.eyebrow){margin-bottom:20px}.about-paths{grid-template-columns:1fr 1fr;gap:24px;display:grid}.about-paths>a{border:1px solid var(--line);border-radius:7px;padding:30px}.about-paths>a:hover{background:var(--soft)}.about-paths h3{margin:14px 0 12px}.about-paths p{font-size:14px}@media (width>=1500px){.hero{padding-block:95px}.hero-liquid{height:420px}}@media (width<=1000px){.container{width:calc(100% - 48px)}.hero{gap:35px}.hero-liquid{height:350px}.hero-description br{display:none}.card-grid{gap:18px}.card-body{padding:18px}.card-meta{flex-wrap:wrap;gap:2px}.about-hero{gap:45px}.feature-copy{padding:30px}.footer-links{gap:16px}}@media (width<=700px){.container{width:calc(100% - 40px)}.header-inner{padding:19px 20px;display:block}.wordmark{width:fit-content;font-size:20px}.site-header nav{justify-content:space-between;gap:20px;margin-top:20px}.site-header nav a{padding:2px 0;font-size:13px}.hero{grid-template-columns:1fr;gap:25px;padding-top:43px;padding-bottom:42px}.hero h1{font-size:48px}.hero-subtitle{font-size:17px}.hero-description{font-size:14px}.hero-visual{margin:9px 5px 0}.hero-liquid{height:310px}.home-section-nav{z-index:15;background:var(--surface);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:5px 20px;display:grid;position:sticky;top:0}.home-section-nav a{min-height:44px;color:var(--ink);border-radius:4px;place-items:center;font-size:14px;font-weight:600;display:grid}.home-section-nav a:hover{background:var(--soft)}.section{padding-block:43px}.section-heading{flex-direction:column;align-items:flex-start;gap:15px;margin-bottom:25px}.section-heading h2,h2{font-size:26px}.section-heading p:not(.eyebrow){font-size:14px}.card-grid{grid-template-columns:1fr;gap:22px}.home-article-grid .content-card{grid-template-columns:1fr}.home-article-grid .card-art{height:180px;min-height:180px}.card-art{height:205px}.card-body{padding:23px}.card-meta{justify-content:space-between;gap:10px}.project-feature{grid-template-columns:1fr}.feature-image img{min-height:0;max-height:260px}.feature-copy{padding:27px}.feature-copy h3{font-size:27px}.about-strip{margin-bottom:45px;padding:38px 18px}.about-strip h2{font-size:25px}.footer-top{padding-block:30px;display:block}.footer-links{flex-wrap:wrap;gap:19px;margin-top:23px}.footer-bottom{gap:12px;font-size:11px}.catalog-page{padding-block:40px 60px}.page-intro h1{font-size:43px}.page-intro>p:last-child{font-size:14px}.collection-tools{padding:20px}.filter-tags{gap:7px}.filter-tags button{padding:5px 11px;font-size:11px}.search-field button{padding-inline:15px}.search-field input{font-size:16px}.detail-page h1{font-size:34px}.prose{font-size:16px}.detail-end{flex-direction:column;align-items:flex-start}.article-pagination{grid-template-columns:1fr}.article-pagination a[rel=next]{grid-column:1}.about-hero{grid-template-columns:1fr;gap:35px;padding-block:43px}.about-photo{width:min(100%,760px);max-width:760px;margin-inline:auto}.about-portrait{width:100%;margin-inline-start:0}.about-body{grid-template-columns:1fr;gap:20px}.about-paths{grid-template-columns:1fr}.about-paths>a{padding:25px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}@media (width<=700px){.site-header nav{margin-top:12px}.site-header nav a{flex:1;justify-content:center;align-items:center;min-height:44px;display:flex}.filter-tags button,.clear-search{min-height:44px}.footer-links a{align-items:center;min-height:44px;display:inline-flex}}.detail-cover{aspect-ratio:16/9;object-fit:cover;border-radius:8px;width:100%;max-height:480px;margin-top:24px}.project-link,.project-feature+.project-feature{margin-top:24px}.expertise-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.expertise-card,.education-card{background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:27px}.expertise-card h3,.education-card h3{font-size:20px}.expertise-card p{margin:13px 0 20px;font-size:13px}.career-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.career-item{border-bottom:1px solid var(--line);grid-template-columns:185px minmax(0,1fr);gap:30px;padding:27px 0;display:grid}.career-period{color:var(--teal);letter-spacing:.03em;font-size:12px;font-weight:700}.career-item h3{font-size:20px}.career-item p{margin-top:8px;font-size:13px}.career-item .career-organization{color:var(--ink);font-weight:600}.education-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.education-card h3{margin-top:12px}.education-card p{margin-top:5px;font-size:13px}.about-selected-projects{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width<=1000px){.expertise-grid{grid-template-columns:1fr 1fr}}@media (width<=700px){.expertise-grid,.education-grid,.about-selected-projects{grid-template-columns:1fr}.career-item{grid-template-columns:1fr;gap:7px}.expertise-card,.education-card{padding:23px}}:root{color-scheme:light}::selection{background:var(--tagHover);color:var(--ink)}input{caret-color:var(--teal)}html{scrollbar-color:var(--muted) var(--soft)}main:focus{outline:none}h1,h2,h3{overflow-wrap:anywhere;text-wrap:pretty}.text-link,.entry-tags a{align-items:center;min-height:44px}.entry-tags a{display:inline-flex}.footer-links,.actions{flex-wrap:wrap}.prose pre,.prose table{overscroll-behavior-x:contain;max-width:100%}.prose pre:focus-visible,.prose table:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.card-art .art-topic{overflow-wrap:anywhere;max-width:calc(100% - 44px)}.about-photo{min-width:0}@media (width>=701px) and (width<=1000px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-article-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=700px){.hero h1{font-size:clamp(36px,11.5vw,48px)}.footer-bottom{flex-wrap:wrap}.search-summary{align-items:flex-start;gap:12px}.clear-search{flex-shrink:0}.filter-tags button,.search-field input{font-size:16px}.prose pre{padding:16px}}
