:root{--paper:#f6f3ec;--ink:#25241f;--muted:#69665e;--line:#d4d0c6;--white:#fbfaf7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}button,a,input,textarea,select{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #665740;outline-offset:6px}button{cursor:pointer}img{display:block;width:100%;height:auto}figure,p,h1,h2,h3{margin:0}h1,h2,.statement{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.15;letter-spacing:-.04em}h1{font-size:clamp(42px,5.2vw,78px)}h2{font-size:clamp(35px,4.2vw,62px)}h3{font-size:20px;font-weight:400;line-height:1.4}.wrap{width:calc(100% - 96px);max-width:1640px;margin:auto}.skip{position:fixed;top:-100px;left:20px;background:var(--ink);color:white;padding:12px;z-index:10}.skip:focus{top:12px}.masthead{height:110px;display:flex;align-items:center;justify-content:space-between;gap:35px}.brand{width:172px;flex-shrink:0}.brand img{width:172px;height:85px;object-fit:cover;object-position:center;mix-blend-mode:multiply}.nav{display:flex;align-items:center;gap:32px;font-size:14px}.nav a:hover,.footer a:hover{text-decoration:underline;text-underline-offset:5px}.nav .inquire{border-bottom:1px solid var(--ink);padding-bottom:4px;margin-left:16px}.lang{font-size:13px;letter-spacing:.05em}.menu{display:none;border:0;background:none;padding:12px 0}.hero{position:relative}.hero img{height:min(69vw,720px);max-height:75vh;min-height:380px;object-fit:cover;object-position:center 57%}.caption{display:flex;justify-content:space-between;font-size:12px;letter-spacing:.09em;text-transform:uppercase;padding-top:14px;color:var(--muted);gap:20px}.intro{display:grid;grid-template-columns:1.2fr 1fr;gap:12%;padding:80px 0 110px}.kicker{font-size:12px;text-transform:uppercase;letter-spacing:.13em;color:var(--muted);margin-bottom:24px}.intro .copy{padding-top:43px;max-width:440px}.copy p+p{margin-top:20px}.text-link{display:inline-flex;gap:34px;border-bottom:1px solid var(--ink);padding:0 0 7px;margin-top:28px;font-size:14px}.section{padding:90px 0;border-top:1px solid var(--line)}.section-top{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin-bottom:48px}.section-top p{max-width:360px;color:var(--muted)}.gallery{display:grid;grid-template-columns:1.1fr 1fr;gap:72px 7%}.project:nth-child(2){margin-top:160px}.project:nth-child(3){width:80%;margin-top:-110px}.project:nth-child(4){margin-top:70px}.project img{aspect-ratio:1.25;object-fit:cover;transition:filter .3s}.project:nth-child(2) img,.project:nth-child(3) img{aspect-ratio:.78}.project a:hover img{filter:brightness(.93)}.project figcaption{display:flex;gap:16px;justify-content:space-between;padding:18px 0}.project h3{font-size:19px}.project p{font-size:13px;color:var(--muted);margin-top:5px}.project .index{font-size:12px;color:var(--muted)}.note{font-size:13px;color:var(--muted);max-width:650px;margin-top:36px}.philosophy{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding:130px 0}.philosophy .statement{font-size:clamp(36px,4.2vw,64px);max-width:680px}.philosophy .copy{max-width:450px}.services{background:#eae6dc;padding:100px 0}.service-row{display:grid;grid-template-columns:70px 1fr 1.1fr;gap:30px;border-top:1px solid #c9c3b7;padding:32px 0}.service-row:last-child{border-bottom:1px solid #c9c3b7}.service-row h3{font-family:Georgia,serif;font-size:30px}.service-row .num{font-size:13px;color:var(--muted)}.service-row p{max-width:540px}.service-row a{font-size:14px}.specialist{margin:32px 0 0 auto;max-width:550px;font-size:13px;color:var(--muted)}.wide-study{margin:100px 0 0}.wide-study img{max-height:720px;object-fit:cover;aspect-ratio:1.9}.process-intro{max-width:680px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:50px;list-style:none;padding:0}.steps li{border-top:1px solid var(--line);padding-top:20px}.steps span{font-size:12px;color:var(--muted)}.steps h3{font-family:Georgia,serif;font-size:28px;margin:14px 0}.steps p{max-width:350px;color:var(--muted);font-size:15px}.detail{display:grid;grid-template-columns:1.15fr 1fr;gap:12%;align-items:center;margin:30px 0 100px}.detail img{aspect-ratio:1;object-fit:cover}.detail .copy{max-width:380px}.detail h2{margin-bottom:26px}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:10%}.faq details{border-top:1px solid var(--line);padding:22px 0}.faq details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;gap:20px;justify-content:space-between;font-size:17px}summary::-webkit-details-marker{display:none}summary:after{content:'+'}details[open] summary:after{content:'−'}details p{padding-top:20px;color:var(--muted);font-size:15px;max-width:620px}.contact{background:#eae6dc;padding:95px 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%}.contact h2{max-width:560px;margin-bottom:25px}.contact .lead{max-width:440px}.form{display:grid;grid-template-columns:1fr 1fr;gap:24px}.form label{font-size:13px;display:block}.form input,.form select,.form textarea{width:100%;border:0;border-bottom:1px solid #999286;border-radius:0;background:transparent;padding:9px 0;min-height:44px}.form textarea{resize:vertical}.full{grid-column:1/-1}.submit{border:1px solid var(--ink);background:var(--ink);color:var(--paper);padding:14px 24px;text-align:left;display:flex;justify-content:space-between;width:100%}.form small{font-size:12px;color:var(--muted)}.form-status{font-size:14px;margin-top:15px}.footer{padding:60px 0 25px}.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px}.footer-title{font-size:22px;letter-spacing:.13em}.footer p,.footer a{font-size:14px}.footer nav{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.footer-bottom{display:flex;justify-content:space-between;margin-top:60px;padding-top:20px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);gap:20px}.preview-note{font-size:12px;padding:10px 20px;background:#eae6dc;display:flex;justify-content:center;gap:20px;color:var(--muted)}.preview-note a{text-decoration:underline}.study-dialog{border:0;padding:0;background:var(--paper);color:var(--ink);width:min(980px,92vw);max-height:88vh}.study-dialog::backdrop{background:rgba(20,20,17,.7)}.dialog-head{display:flex;align-items:center;justify-content:space-between;padding:20px 30px}.close{border:0;background:none;font-size:24px;width:44px;height:44px}.dialog-image{max-height:52vh;object-fit:cover}.dialog-copy{padding:30px}.dialog-copy h2{font-size:36px;margin-bottom:20px}.dialog-copy p{max-width:730px}.dialog-copy .note{margin-top:20px}.mobile-enquire{display:none}[hidden]{display:none!important}body.dialog-open{overflow:hidden}html[lang=zh-Hant] h1,html[lang=zh-Hant] h2,html[lang=zh-Hant] .statement{font-family:'Noto Serif TC','PMingLiU',serif;line-height:1.35;letter-spacing:.02em}
@media(min-width:1800px){.hero img{height:800px;max-height:none}}
@media(max-width:1000px){.wrap{width:calc(100% - 56px)}.nav{gap:19px}.nav .inquire{margin-left:0}.intro{gap:7%}.gallery{gap:45px}.project:nth-child(3){margin-top:-50px}.service-row{grid-template-columns:35px 1fr 1.2fr;gap:20px}.contact-grid{gap:7%}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.masthead{height:90px;gap:18px;flex-wrap:wrap}.brand,.brand img{width:143px}.brand img{height:76px}.menu{display:block;font-size:14px}.nav{display:none;position:absolute;z-index:4;top:122px;left:0;right:0;background:var(--paper);padding:25px;flex-direction:column;align-items:flex-start;gap:24px;border-bottom:1px solid var(--line)}.nav.open{display:flex}.lang{margin-left:auto;font-size:12px}.hero img{height:65vh;min-height:350px;max-height:640px;object-position:54% center}.caption{font-size:11px;letter-spacing:.05em}.caption span:last-child{max-width:44%;text-align:right}.intro{display:block;padding:48px 0 60px}.intro .copy{padding-top:26px;max-width:100%}.kicker{font-size:11px;margin-bottom:18px}.section{padding:55px 0}.section-top{display:block;margin-bottom:30px}.section-top p{margin-top:22px}.gallery{gap:34px;grid-template-columns:1fr}.project:nth-child(n){width:100%;margin:0}.project:nth-child(2) img,.project:nth-child(3) img{aspect-ratio:1}.project figcaption{padding-top:13px}.philosophy{display:block;padding:65px 0}.philosophy .copy{margin-top:30px}.services{padding:55px 0}.service-row{grid-template-columns:26px 1fr;gap:12px;padding:27px 0}.service-row p{grid-column:2}.service-row h3{font-size:27px}.wide-study{margin-top:55px}.wide-study img{aspect-ratio:1.15}.steps{grid-template-columns:1fr;gap:22px;margin-top:30px}.steps li{display:grid;grid-template-columns:30px 1fr;gap:5px 12px}.steps h3{margin:0 0 8px}.steps p{grid-column:2;max-width:none}.detail{display:block;margin:15px 0 55px}.detail .copy{margin-top:35px;max-width:100%}.faq{display:block}.faq>div:last-child{margin-top:30px}.contact{padding:60px 0}.contact-grid{display:block}.form{margin-top:45px;gap:22px 16px}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-top>div:first-child{grid-column:1/-1}.footer-bottom{margin-top:35px;flex-direction:column;gap:6px}.footer{padding-bottom:80px}.mobile-enquire{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--paper);border-top:1px solid var(--line);padding:13px 20px;justify-content:space-between;font-size:14px;z-index:3}.preview-note{font-size:11px;gap:12px;padding:7px 10px}.dialog-copy{padding:22px}.dialog-copy h2{font-size:29px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Gallery-led reference: shared across the complete catalogue. */
.catalog .masthead{height:142px;max-width:none;width:calc(100% - 90px);justify-content:flex-start;gap:70px}.catalog .brand{width:200px}.catalog .brand img{width:200px;height:100px}.catalog .nav{gap:36px;letter-spacing:.15em;text-transform:uppercase;font-size:14px}.catalog .nav a[aria-current=page]{font-weight:600}.catalog .lang{margin-left:auto}.catalog-wrap{width:calc(100% - 180px);max-width:1700px;margin:auto}.catalog-title{text-align:center;padding:90px 20px 76px}.catalog-title h1{font-family:Georgia,serif;font-size:23px;font-weight:400;letter-spacing:.45em;line-height:1.6}.catalog-title p{font-size:12px;letter-spacing:.14em;margin-top:22px;color:var(--muted)}.catalog-grid{display:grid;grid-template-columns:2.06fr 1fr 1fr;gap:22px}.catalog-card img{height:clamp(320px,30vw,560px);object-fit:cover}.catalog-card h2{font-family:Georgia,serif;font-size:21px;letter-spacing:.18em;text-transform:uppercase;line-height:1.5;margin:42px 0 25px}.catalog-card p{line-height:1.8;max-width:680px}.catalog-card a:hover h2{text-decoration:underline;text-underline-offset:7px}.catalog-intro{padding:130px 0;max-width:820px}.catalog-intro h2{font-size:clamp(34px,3.5vw,54px)}.catalog-intro>p:not(.kicker){max-width:620px;margin-top:30px}.drawing-link{padding:60px 0 90px;border-top:1px solid var(--line)}.drawing-link>span{font-size:12px;letter-spacing:.2em}.drawing-link h2{font-size:32px;margin-top:20px}.filter-bar{display:flex;justify-content:center;flex-wrap:wrap;gap:30px;margin:-25px 0 55px}.filter-bar button{border:0;border-bottom:1px solid transparent;background:transparent;padding:10px 0;font-size:14px;color:var(--muted)}.filter-bar button[aria-pressed=true]{border-color:var(--ink);color:var(--ink)}.filter-status{font-size:13px;color:var(--muted);margin-bottom:20px}.catalog .gallery{grid-template-columns:2.06fr 1fr 1fr;gap:50px 22px}.catalog .project:nth-child(n){width:100%;margin:0}.catalog .project img{height:clamp(300px,29vw,510px);aspect-ratio:auto;object-fit:cover}.catalog .project:nth-child(4){grid-column:1/3}.catalog .project figcaption{padding-top:32px}.catalog .project h3{font-family:Georgia,serif;letter-spacing:.14em;text-transform:uppercase;line-height:1.5}.catalog .project p{margin-top:16px}.catalog .note{margin-bottom:55px}.catalog .footer{margin-top:70px}.drawing-topics{display:flex;justify-content:center;gap:40px;flex-wrap:wrap;font-size:14px;margin-bottom:65px;color:var(--muted)}.archive-empty{background:#eae6dc;padding:90px 10%;min-height:400px}.archive-empty h2{font-size:clamp(34px,4vw,58px)}.archive-empty>p:last-child{max-width:550px;margin-top:30px}.drawing-explainer{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;padding:70px 0 25px}.drawing-explainer h2{font-size:24px;margin-bottom:24px}.drawing-explainer p{color:var(--muted)}.studio-main>.catalog-title{padding-bottom:15px}.studio-main .philosophy{padding-top:75px}.catalog .services{background:transparent}.catalog .contact{background:#eae6dc}.catalog .preview-note{background:transparent;padding-top:6px;padding-bottom:0}.catalog .study-dialog img{max-height:55vh;object-fit:contain;background:#eae6dc}.catalog .dialog-copy .note{margin-bottom:0}
@media(max-width:1100px){.catalog .masthead{gap:35px;width:calc(100% - 50px)}.catalog .brand,.catalog .brand img{width:160px}.catalog .brand img{height:82px}.catalog .nav{gap:20px;font-size:12px}.catalog-wrap{width:calc(100% - 80px)}.catalog-card h2{font-size:18px;letter-spacing:.12em}}
@media(max-width:760px){.catalog .masthead{height:100px;width:calc(100% - 36px);gap:15px;flex-wrap:nowrap}.catalog .brand,.catalog .brand img{width:145px}.catalog .brand img{height:78px}.catalog .nav{top:120px;gap:23px;font-size:14px}.catalog .lang{font-size:12px}.catalog-wrap{width:calc(100% - 36px)}.catalog-title{padding:55px 0 48px}.catalog-title h1{font-size:21px;letter-spacing:.3em}.catalog-title p{font-size:11px;letter-spacing:.08em}.catalog-grid,.catalog .gallery{grid-template-columns:1fr;gap:45px}.catalog-card img,.catalog .project img{height:auto;aspect-ratio:1.2;max-height:none}.catalog-card:not(.wide) img{aspect-ratio:1}.catalog-card h2{margin:24px 0 16px;font-size:21px}.catalog .project:nth-child(4){grid-column:auto}.catalog-intro{padding:70px 0}.drawing-link{padding:40px 0 60px}.filter-bar{gap:12px 24px;margin:-10px 0 28px}.filter-bar button{font-size:13px}.catalog .project figcaption{padding-top:22px}.drawing-topics{gap:15px 25px;margin-bottom:35px}.archive-empty{padding:48px 26px;min-height:350px}.drawing-explainer{grid-template-columns:1fr;gap:35px;padding-top:45px}.drawing-explainer h2{margin-bottom:14px}.catalog .footer{margin-top:40px}.studio-main .philosophy{padding-top:40px}.studio-main>.catalog-title{padding-bottom:0}}

/* Remove the light raster background at display time; preserve the original mark. */
.catalog .brand img{filter:grayscale(1) contrast(3);mix-blend-mode:multiply}
.catalog .nav{top:100px}
