@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Noto+Sans+TC:wght@400;500;600&display=swap');
:root{--paper:#f5f6f6;--ink:#202525;--muted:#5e6667;--accent:#2149bd;--line:#d5dada;font-family:Manrope,'Noto Sans TC',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.skip{position:fixed;left:20px;top:-90px;background:white;z-index:9;padding:15px}.skip:focus{top:10px}.wrap{max-width:1700px;margin:auto;padding:0 5vw}header{display:flex;align-items:center;justify-content:space-between;padding:29px 0;border-bottom:1px solid var(--line);gap:24px}.brand{font-size:2.4rem;letter-spacing:-.075em;font-weight:800;line-height:.85;display:flex;align-items:end;gap:12px}.brand span{font-size:.75rem;letter-spacing:.12em;font-weight:600;line-height:1}nav{display:flex;gap:30px;font-size:.875rem}nav a:hover,footer a:hover{color:var(--accent)}.languages{display:flex;align-items:center;gap:8px;font-size:.875rem}.languages button{border:0;background:none;color:var(--muted);padding:9px 5px;min-height:44px;cursor:pointer}.languages button[aria-pressed=true]{color:var(--ink);text-decoration:underline;text-underline-offset:5px}.eyebrow{font-size:.875rem;font-weight:600;letter-spacing:.06em;margin:0}.hero{padding:45px 0 44px}.hero-top{display:flex;justify-content:space-between;gap:24px}.edition{font-size:.8rem;color:var(--muted);margin:0}.hero h1{font-size:clamp(3.5rem,7.6vw,8.2rem);font-weight:500;letter-spacing:-.065em;line-height:1.08;margin:32px 0}.intro{display:flex;align-items:end;justify-content:space-between;gap:24px}.intro p{font-size:1rem;color:var(--muted);line-height:1.8;margin:0}.text-link{display:flex;gap:60px;align-items:center;border-bottom:1px solid var(--ink);padding-bottom:12px;font-size:.9rem}.text-link:hover{color:var(--accent)}.hero-figure{margin:0 0 44px}.image-surface{width:100%;aspect-ratio:2.2;background:#d8dfe2}.hero-figure img{width:100%;height:100%;object-fit:cover;display:block}figcaption{display:flex;justify-content:space-between;gap:20px;font-size:.75rem;color:var(--muted);line-height:1.6;margin-top:12px}.section{padding:65px 0;border-top:1px solid var(--line)}.section-head{display:grid;grid-template-columns:1fr 1.6fr;gap:40px;margin-bottom:50px}h2{font-size:clamp(2rem,3.5vw,3.4rem);font-weight:400;letter-spacing:-.05em;line-height:1.2;margin:0}.disciplines{display:grid;grid-template-columns:1fr 1fr;gap:60px}.disciplines article{display:grid;grid-template-columns:50px 1fr;gap:20px;border-top:1px solid var(--line);padding-top:28px}.number{font-size:.8rem;color:var(--accent)}h3{font-size:1.45rem;font-weight:500;letter-spacing:-.03em;margin:0}.disciplines p{font-size:1rem;line-height:1.8;max-width:400px;color:var(--muted);margin:15px 0 24px}.tags{font-size:.875rem;color:var(--muted)}.work-row{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:30px 0;border-top:1px solid var(--line)}.work-row span{font-size:.875rem;color:var(--muted)}.work-link:hover h3,.work-link:hover span{color:var(--accent)}.about{display:grid;grid-template-columns:1fr 1.6fr;gap:40px}.about p:not(.eyebrow){font-size:1rem;line-height:1.9;color:var(--muted);max-width:630px;margin:28px 0 0}.about p.brand-note{color:var(--ink);border-left:2px solid var(--accent);padding-left:24px;margin-top:35px}.contact{background:#202a31;color:#f5f6f6;padding:50px;margin:20px 0 55px}.contact h2{font-size:clamp(2.2rem,4.5vw,4.5rem);margin:30px 0 40px}.contact-links{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}.contact-links a{border-bottom:1px solid #93a1aa;padding:12px 0;display:flex;gap:25px;font-size:1rem;overflow-wrap:anywhere}.contact a:focus-visible{outline-color:white}footer{border-top:1px solid var(--line);padding:35px 0;display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:.875rem;color:var(--muted)}.footer-brand{font-size:1.5rem;color:var(--ink);font-weight:600;letter-spacing:-.05em}html[lang=zh-TW] h1{letter-spacing:-.04em;line-height:1.3}html[lang=zh-TW] h2{letter-spacing:0;line-height:1.45}@media(min-width:1500px){.hero{padding-top:55px}.hero h1{margin:40px 0}}@media(max-width:700px){header{flex-wrap:wrap;padding:24px 0;gap:20px}.brand{font-size:2rem}.languages{margin-left:auto}nav{order:3;width:100%;justify-content:space-between;gap:16px;font-size:.9rem}.hero{padding:30px 0}.edition{display:none}.hero h1{font-size:clamp(3.1rem,11.7vw,5rem);margin:28px 0}.intro{display:block}.text-link{width:max-content;margin-top:25px;gap:40px}.image-surface{aspect-ratio:1.25}figcaption{flex-direction:column;gap:2px}.hero-figure{margin-bottom:35px}.section{padding:40px 0}.section-head,.about{grid-template-columns:1fr;gap:24px}.section-head{margin-bottom:30px}.disciplines{grid-template-columns:1fr;gap:30px}.disciplines article{grid-template-columns:26px 1fr;gap:16px}.work-row{align-items:start;flex-direction:column;gap:10px;padding:24px 0}.work-row h3{font-size:1.2rem}.contact{padding:30px 22px;margin-bottom:35px}.contact-links a{font-size:.9rem;gap:10px}footer{flex-wrap:wrap}.footer-brand{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.projects-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:44px 30px;margin-bottom:55px}.project{min-width:0}.project summary{list-style:none;cursor:pointer}.project summary::-webkit-details-marker{display:none}.project summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.project-cover{aspect-ratio:1.55;overflow:hidden;background:#e4e8e8}.project-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}.page-cover img{width:200%;max-width:none;margin-left:-100%;object-fit:cover}.project summary:hover .project-cover img{transform:scale(1.025)}.project-meta{display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:.8rem;margin:16px 0 10px}.project h3{font-size:clamp(1.2rem,2vw,1.8rem);line-height:1.35}.project-action{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:12px;font-size:.875rem;color:var(--muted)}.expand{font-size:1.7rem;color:var(--accent);line-height:1;transition:transform .2s}.project[open]{grid-column:1/-1;padding-bottom:30px;border-bottom:1px solid var(--line)}.project[open] summary{display:grid;grid-template-columns:1fr 1fr;gap:14px 35px}.project[open] .project-cover{grid-row:1/4}.project[open] .project-meta{align-self:end}.project[open] .project-action{align-self:start}.project[open] .expand{transform:rotate(45deg)}.project-body{padding-top:35px}.project-description{font-size:1.2rem;line-height:1.8;max-width:850px}.credits{padding:24px 0;border-top:1px solid var(--line);color:var(--muted);font-size:.9rem;line-height:1.8}.credits h4{font-size:.9rem;margin:0;color:var(--ink)}.credits p{margin:8px 0}.project-pages{display:grid;gap:30px}.project-pages figure{margin:0}.project-pages img{width:100%;height:auto;display:block;background:white}.hero-project{display:block}.hero-project:focus-visible{outline-offset:5px}@media(max-width:700px){.projects-grid{grid-template-columns:minmax(0,1fr);gap:35px}.project[open] summary{display:block}.project-meta{font-size:.75rem;flex-wrap:wrap;gap:8px}.project-description{font-size:1rem}.project-body{padding-top:18px}}@media(prefers-reduced-motion:reduce){.project-cover img,.expand{transition:none}}
/* Frame the photograph within its supplied page without modifying the original file. */
.brand-figure .image-surface{position:relative;overflow:hidden;aspect-ratio:1171/780;background:#fff}.brand-figure .image-surface img{position:absolute;width:128.8659%;max-width:none;height:auto;left:-14.4321%;top:-47.6923%;object-fit:initial}
#monga .monga-cover{aspect-ratio:659/439}#monga .monga-cover img{width:100%;height:100%;margin:0;object-fit:contain}#monga summary:hover .monga-cover img{transform:none}
