@font-face{font-family:JiSerif;src:local("Noto Serif CJK SC"),local("Songti SC"),local("SimSun");font-weight:100 900;font-display:swap}
:root{--paper:#f3f1eb;--ink:#30352f;--muted:#687060;--line:#d8d9d0;--accent:#a14b36;--sidebar:208px;--gutter:58px;--serif:JiSerif,"Noto Serif CJK SC","Songti SC",SimSun,serif;--sans:"Helvetica Neue","PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button{border:0;background:none;padding:0}a{color:inherit;text-decoration:none}button:disabled{opacity:.3;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}button:focus:not(:focus-visible){outline:none}img{display:block;max-width:100%;object-fit:cover}svg{display:block;width:24px;height:24px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}::selection{background:#bba99966}button,summary,a{touch-action:manipulation}[hidden]{display:none!important}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.skip-link{position:fixed;left:20px;top:-100px;z-index:100;background:var(--ink);color:white;padding:12px 25px}.skip-link:focus{top:20px}.cinnabar{color:var(--accent)}.tiny-dot{display:inline-block;width:5px;height:5px;background:var(--accent);flex-shrink:0}.muted{color:var(--muted)}.eyebrow{font-size:11px;letter-spacing:2px;display:flex;align-items:center;gap:12px}.icon-button{width:40px;height:40px;display:grid;place-items:center;transition:background .25s,color .25s}.icon-button:hover{background:#dedfd580}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:33px;padding:9px 0;border-bottom:1px solid var(--ink);font-size:12px;letter-spacing:1px;transition:color .3s,border-color .3s}.text-link svg{width:22px;height:22px;transition:transform .3s}.text-link:hover{color:var(--accent);border-color:var(--accent)}.text-link:hover svg{transform:translateX(5px)}
.sidebar{width:var(--sidebar);height:100dvh;position:fixed;top:0;left:0;z-index:20;border-right:1px solid var(--line);padding:39px 31px 27px 36px;display:flex;flex-direction:column;background:var(--paper)}.brand{display:grid;grid-template-columns:42px 1fr;align-items:center;column-gap:12px;width:max-content}.brand-mark{width:40px;height:47px}.brand-name{font-family:var(--serif);font-size:34px;letter-spacing:5px;white-space:nowrap}.brand-subtitle{grid-column:1/-1;font-size:9px;letter-spacing:4px;padding-left:3px;margin-top:10px}.site-nav{margin-top:auto;margin-bottom:auto;padding-top:66px;padding-bottom:75px}.nav-caption{display:block;color:var(--muted);font-size:9px;letter-spacing:1.8px;margin-bottom:29px;white-space:nowrap}.nav-link{display:flex;align-items:center;gap:15px;height:47px;font-size:12px;letter-spacing:1.5px;color:#84877f;position:relative;transition:color .3s}.nav-number{font-size:9px;letter-spacing:.8px;font-family:Arial,sans-serif}.nav-link i{width:4px;height:4px;background:var(--accent);margin-left:auto;opacity:0;transform:scale(0);transition:opacity .3s,transform .3s}.nav-link.is-active{color:var(--ink)}.nav-link.is-active i{opacity:1;transform:scale(1)}.nav-link:hover{color:var(--accent)}.sidebar-bottom p{font-family:var(--serif);font-size:17px;line-height:1.9;letter-spacing:3px}.sidebar-contact{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:1px;margin-top:29px;padding-bottom:12px;border-bottom:1px solid var(--line)}.sidebar-contact svg{width:16px;height:16px}.side-location{display:flex;align-items:center;font-size:8px;color:var(--muted);margin-top:21px;gap:6px}.side-location .tiny-dot{width:3px;height:3px;background:#717a64}.side-location>span:last-child{margin-left:auto;font-size:8px}.reading-progress{position:absolute;top:0;right:-1px;width:1px;height:100%;pointer-events:none}.reading-progress>span{display:block;width:1px;height:0;background:var(--accent);transition:height .1s linear}.menu-toggle{display:none}
main{margin-left:var(--sidebar);padding:0 var(--gutter)}.topline{height:72px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:1.5px;color:#777c71}.topline a{display:flex;align-items:center;gap:11px}.availability-dot{display:inline-block;border-radius:100%;width:5px;height:5px;background:#6e7a5c;box-shadow:0 0 0 4px #6e7a5c0a}.hero-intro{display:flex;justify-content:space-between;align-items:flex-end;padding:35px 0 32px;gap:25px}.hero-title .eyebrow{font-size:10px;letter-spacing:2px;margin-bottom:19px;color:#6b7165}.hero h1{font-family:var(--serif);font-size:clamp(52px,4.85vw,78px);line-height:1.35;letter-spacing:3px}.hero-note{padding:0 9px 9px 0;min-width:255px}.note-line{display:block;width:23px;height:1px;background:#798073;margin-bottom:22px}.hero-note p{font-size:11px;line-height:2.25;letter-spacing:1px;color:#687060;margin-bottom:22px}.hero-note .text-link{font-size:11px;gap:66px}.hero-visual{height:clamp(340px,32vw,520px);position:relative;background:#d5d2c9;overflow:hidden}.hero-photo{width:100%;height:100%;object-position:center 54%;transition:opacity .4s,transform 1s cubic-bezier(.2,.7,.3,1);filter:brightness(.91) saturate(.84)}.hero-visual:hover .hero-photo{transform:scale(1.025)}.hero-visual:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#151b1480);pointer-events:none}.hero-visual.is-plan:after{display:none}.hero-visual.is-plan{background:#eae9e1}.photo-index{position:absolute;top:26px;left:29px;font-size:9px;letter-spacing:1.7px;color:white;display:flex;gap:12px;text-shadow:0 1px 10px #0007}.view-switch{position:absolute;top:23px;right:24px;display:flex;border:1px solid #ffffff6b;background:#282c2926;backdrop-filter:blur(8px);padding:3px}.view-switch button{font-size:10px;letter-spacing:2px;color:#fff;padding:6px 12px;transition:background .3s,color .3s}.view-switch button.is-active{background:var(--paper);color:var(--ink)}.hero-photo-caption{position:absolute;bottom:29px;left:31px;color:white;z-index:1}.hero-photo-caption>span{font-size:9px;letter-spacing:2px}.hero-photo-caption p{font-family:var(--serif);font-size:29px;letter-spacing:4px;margin-top:7px}.hero-open{position:absolute;bottom:36px;right:31px;display:flex;align-items:center;gap:21px;color:white;z-index:2}.hero-open>span{font-size:11px;letter-spacing:2px}.hero-open svg{padding:13px;width:50px;height:50px;border:1px solid #ffffff8c;border-radius:50%;transition:background .35s,transform .35s}.hero-open:hover svg{background:#ffffff20;transform:rotate(45deg)}.hero-image-footer{display:flex;justify-content:space-between;align-items:center;min-height:65px;border-bottom:1px solid var(--line)}.hero-project-meta{display:flex;gap:21px;align-items:center;font-size:11px;letter-spacing:1px}.hero-project-meta .small-index{font-family:var(--serif);font-style:italic;color:var(--accent);font-size:12px}.hero-project-meta .muted{font-size:9px;letter-spacing:.5px;margin-left:6px}.slide-controls{display:flex;align-items:center;gap:6px}.previous-slide svg,.rotate-arrow{transform:rotate(180deg)}.slide-controls .icon-button{width:31px}.slide-controls .icon-button svg{width:20px}.slide-ticks{display:flex;align-items:center;gap:7px;margin:0 8px}.slide-ticks button{width:17px;height:28px;position:relative}.slide-ticks button:after{content:"";width:100%;height:2px;background:#cdcec4;position:absolute;left:0;top:13px;transition:background .25s}.slide-ticks button.is-active:after{background:var(--accent)}.hero-plan{width:100%;height:100%;padding:15px 0 35px;position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.hero-plan img{height:100%;width:85%;object-fit:contain}.plan-note{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:2px;color:#7b7c73;white-space:nowrap}.hero-visual.is-plan .photo-index{color:var(--ink);text-shadow:none}.hero-visual.is-plan .view-switch{border-color:#b8bcb0;background:none;backdrop-filter:none}.hero-visual.is-plan .view-switch button{color:var(--ink)}.hero-visual.is-plan .view-switch button.is-active{background:var(--ink);color:var(--paper)}.hero-visual.is-plan .hero-photo-caption{display:none}.hero-visual.is-plan .hero-open{color:var(--ink)}.hero-visual.is-plan .hero-open svg{border-color:#a8ad9c}.hero-end{display:flex;justify-content:space-between;font-size:9px;color:#999b92;letter-spacing:1px;padding-top:15px}.hero-end a{display:flex;gap:9px;align-items:center}.hero-end svg{width:15px;height:15px;transform:rotate(90deg)}
.tracked-section{scroll-margin-top:32px}.section-kicker{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:20px;font-size:10px;letter-spacing:1.8px}.section-kicker>span:last-child{color:var(--muted);font-size:10px;letter-spacing:1px}.section-kicker>span:last-child .availability-dot{margin-right:10px}.spaces-section{margin-top:119px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;padding:42px 0 30px}h2{font-family:var(--serif);font-size:44px;line-height:1.65;letter-spacing:2px}.work-years{font-size:9px;color:var(--muted);letter-spacing:1px;padding-bottom:10px;white-space:nowrap}.work-toolbar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);margin-bottom:44px}.work-toolbar>p{font-size:11px;color:var(--muted);letter-spacing:1px}.work-filters{display:flex;gap:30px}.work-filters button{position:relative;color:var(--muted);font-size:11px;padding:15px 1px;white-space:nowrap}.work-filters button span{font-size:8px;margin-left:6px;vertical-align:super}.work-filters button:after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:1px;background:var(--accent);transform:scaleX(0);transition:transform .3s}.work-filters button.is-active{color:var(--ink)}.work-filters button.is-active:after{transform:scaleX(1)}.project-list{display:grid;grid-template-columns:1fr 1fr;gap:75px 42px}.project{position:relative}.project-image{display:block;width:100%;position:relative;overflow:hidden;background:#d8d5cb;text-align:left}.project-image>img{width:100%;height:100%;transition:transform 1s cubic-bezier(.25,.46,.45,.94),filter .6s;filter:saturate(.8)}.project-image:hover>img{transform:scale(1.035);filter:saturate(1)}.image-project-number{position:absolute;left:22px;top:19px;color:white;font-family:var(--serif);font-size:22px;font-style:italic;text-shadow:0 1px 6px #0004}.image-open{position:absolute;right:20px;bottom:20px;width:42px;height:42px;display:grid;place-items:center;background:var(--paper);border-radius:50%;transition:transform .4s,background .4s}.image-open svg{width:19px;height:19px}.project-image:hover .image-open{transform:rotate(45deg);background:white}.project-info{padding-top:21px}.project-category{font-size:9px;letter-spacing:1.5px;color:var(--muted)}.project-title{font-family:var(--serif);font-size:28px;letter-spacing:2px;display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;margin:6px 0 10px}.project-title svg{width:21px;height:21px;transition:transform .3s}.project-title:hover svg{transform:translate(3px,-3px)}.project-info>p{font-size:11px;color:#687060;letter-spacing:1px}.project-facts{border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;color:var(--muted);margin-top:20px;padding-top:14px}.project-home{grid-column:1/-1;display:grid;grid-template-columns:1.6fr 1fr;column-gap:46px;align-items:start}.project-home .project-image{grid-column:1;grid-row:1;height:450px}.project-home .project-info{grid-column:1;grid-row:2}.project-drawing{grid-column:2;grid-row:1/3;align-self:center;padding-top:65px}.project-drawing button{width:100%;transition:transform .5s}.project-drawing button:hover{transform:translateY(-6px)}.project-drawing img{width:100%;object-fit:contain}.project-drawing>div{border-top:1px solid var(--line);margin:22px 15px 0;padding-top:14px;display:flex;justify-content:space-between;font-size:9px;color:var(--muted);letter-spacing:1px}.project-cafe .project-image{height:510px}.project-office{padding-top:143px}.editorial-aside{position:absolute;top:-7px;left:0;display:grid;grid-template-columns:13px 1fr;column-gap:12px}.editorial-aside>.tiny-dot{margin-top:11px}.editorial-aside p{font-family:var(--serif);font-size:20px;line-height:1.7;letter-spacing:2px}.editorial-aside>span:last-child{grid-column:2;color:var(--muted);font-size:8px;letter-spacing:1px;margin-top:11px}.project-office .project-image{height:367px}.project-list.is-filtered{display:block}.project-list.is-filtered .project{max-width:100%;display:grid;grid-template-columns:1.5fr 1fr;gap:0 46px;padding-top:0}.project-list.is-filtered .project-image{grid-column:1;grid-row:1/3;height:460px}.project-list.is-filtered .project-info{grid-column:2;align-self:center}.project-list.is-filtered .project-drawing{grid-column:2;grid-row:2;padding-top:0}.project-list.is-filtered .project-drawing img{max-height:260px}.project-list.is-filtered .editorial-aside{display:none}.work-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:59px;border-top:1px solid var(--line);padding-top:24px}.work-bottom>span{font-size:10px;letter-spacing:1px;color:var(--muted)}
.studio-section{margin-top:116px}.studio-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:60px;align-items:center}.studio-image{position:relative;padding-right:18px}.studio-image>img{height:565px;width:100%;filter:saturate(.65)}.vertical-note{position:absolute;right:-8px;top:0;writing-mode:vertical-rl;font-size:9px;letter-spacing:3px;color:var(--muted)}.studio-copy>.eyebrow{font-size:10px;letter-spacing:2px;color:var(--muted);margin-bottom:22px}.studio-copy h2{font-size:40px;line-height:1.7;margin-bottom:27px}.studio-copy>p{font-size:12px;line-height:2.25;color:#687060;letter-spacing:.5px;margin-top:15px}.studio-sign{display:flex;align-items:center;gap:19px;margin-top:30px;padding-top:23px;border-top:1px solid var(--line)}.studio-sign svg{width:34px;height:39px;color:var(--accent)}.studio-sign span{font-family:var(--serif);font-size:12px;line-height:1.9;letter-spacing:2px}.values-strip{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:58px;padding:29px 0 31px}.values-strip>div{padding:0 30px;border-right:1px solid var(--line);display:grid;grid-template-columns:21px 1fr;gap:7px 13px}.values-strip>div:first-child{padding-left:0}.values-strip>div:last-child{border:0;padding-right:0}.values-strip>div>span{font-family:var(--serif);color:var(--accent);font-size:11px;font-style:italic;padding-top:4px}.values-strip h3{font-family:var(--serif);font-size:19px;letter-spacing:1px}.values-strip p{grid-column:2;font-size:10px;letter-spacing:.5px;color:var(--muted)}
.process-section{margin-top:114px}.process-layout{display:grid;grid-template-columns:1fr 1.35fr;gap:65px;margin-top:57px}.process-intro h2{font-size:37px;line-height:1.8}.process-intro p{font-size:11px;line-height:2.2;letter-spacing:1px;color:var(--muted);margin:23px 0 30px}.process-steps details{border-bottom:1px solid var(--line)}.process-steps details:first-child{border-top:1px solid var(--line)}.process-steps summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:23px;padding:22px 0}.process-steps summary::-webkit-details-marker{display:none}.step-number{font-family:var(--serif);font-size:11px;font-style:italic;color:var(--muted)}.process-steps summary h3{font-family:var(--serif);font-size:20px;letter-spacing:2px}.process-steps summary svg{margin-left:auto;width:19px;height:19px;transition:transform .3s}.process-steps details[open] summary svg{transform:rotate(45deg)}.process-steps details[open] .step-number{color:var(--accent)}.step-body{padding:0 15px 29px 40px}.step-body p{font-size:11px;line-height:2.2;color:#687060;letter-spacing:.5px}.step-body>span{display:block;color:var(--accent);font-size:9px;letter-spacing:1px;margin-top:20px}
.contact-section{margin:117px calc(-1 * var(--gutter)) 0;background:#e7e8df;padding:39px var(--gutter) 46px}.contact-section .section-kicker{border:0;padding-top:0}.contact-main{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:61px 0 38px}.contact-main .eyebrow{font-size:10px;letter-spacing:2px;color:#78806e;margin-bottom:19px}.contact-main h2{font-size:49px;line-height:1.65;letter-spacing:3px}.contact-main h2>span{color:var(--accent)}.contact-orbit{width:145px;height:145px;border:1px solid #9ca58e;border-radius:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;flex-shrink:0;transition:background .4s,color .4s,border-color .4s;margin-right:13px}.contact-orbit svg{width:36px;height:36px;transition:transform .4s}.contact-orbit span{font-size:10px;letter-spacing:1px}.contact-orbit:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.contact-orbit:hover svg{transform:translate(4px,-4px)}.contact-bottom{border-top:1px solid #ccd0c2;display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:29px}.contact-bottom p{font-size:11px;line-height:2.2;color:#687060;letter-spacing:1px}.contact-bottom .text-link{font-size:11px}
footer{padding:35px 0 23px}.footer-top{display:flex;align-items:center;gap:30px;padding-bottom:30px}.footer-brand{display:flex;align-items:center;gap:12px}.footer-brand svg{width:31px;height:35px}.footer-brand>span{font-family:var(--serif);font-size:25px;letter-spacing:4px}.footer-top>span{font-size:10px;color:var(--muted);letter-spacing:2px}.back-top{margin-left:auto;display:flex;gap:13px;align-items:center;font-size:10px;letter-spacing:1px}.back-top svg{width:19px;height:19px;transform:rotate(-90deg)}.footer-bottom{border-top:1px solid var(--line);padding-top:18px;display:flex;align-items:center;justify-content:space-between;font-size:8px;letter-spacing:.6px;color:#95978e}.footer-bottom button{font-size:8px;border-bottom:1px solid #b3b5ac}.footer-bottom button:hover{color:var(--ink)}
.reveal{opacity:1;transform:none;transition:opacity .8s,transform .8s cubic-bezier(.2,.6,.3,1)}.js-motion .reveal:not(.is-visible){opacity:0;transform:translateY(27px)}dialog{color:var(--ink);border:0;padding:0;background:var(--paper);max-width:calc(100vw - 48px);max-height:calc(100dvh - 48px);overscroll-behavior:contain}dialog::backdrop{background:#24282099;backdrop-filter:blur(7px)}dialog[open]{animation:dialog-in .35s both}body.dialog-open{overflow:hidden}.dialog-close{position:absolute;right:23px;top:22px;z-index:5;background:var(--paper);border:1px solid var(--line);border-radius:50%}.dialog-close:hover{background:#e4e5dc}.dialog-close svg{width:19px;height:19px}.project-dialog{width:1240px}.detail-layout{display:grid;grid-template-columns:36% 64%;min-height:650px}.detail-copy{padding:77px 36px 40px}.detail-copy>.eyebrow{font-size:10px;color:var(--accent);letter-spacing:2px}.detail-copy h2{font-size:43px;margin:14px 0 9px}.detail-tagline{font-family:var(--serif);font-size:15px;letter-spacing:1px;line-height:1.9}.detail-description{font-size:12px;color:var(--muted);line-height:2.15;margin-top:24px}.detail-copy dl{margin:27px 0 15px;border-top:1px solid var(--line)}.detail-copy dl>div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:10px 0;font-size:10px}.detail-copy dt{color:var(--muted)}.detail-copy dd{margin:0}.detail-footnote{font-size:8px;color:var(--muted)}.detail-copy .text-link{margin-top:23px}.detail-visual{background:#e8e7df;padding:75px 27px 30px;display:flex;flex-direction:column}.detail-viewer{height:426px;position:relative;background:#d7d5ca;overflow:hidden}.detail-viewer>img{width:100%;height:100%;object-fit:cover}.detail-viewer.is-plan{background:var(--paper)}.detail-viewer.is-plan>img{object-fit:contain}.detail-viewer>span{position:absolute;left:18px;bottom:17px;color:#fff;font-size:10px;letter-spacing:2px;text-shadow:0 1px 10px #000}.detail-viewer.is-plan>span{color:var(--muted);text-shadow:none}.detail-toolbar{display:flex;align-items:center;gap:12px;min-height:62px;border-bottom:1px solid #d0d1c6}.detail-tabs{display:flex;gap:20px}.detail-tabs button{font-size:10px;color:var(--muted);padding:9px 0;position:relative}.detail-tabs .is-active{color:var(--ink)}.detail-tabs .is-active:after{content:"";position:absolute;height:1px;background:var(--accent);bottom:0;left:0;right:0}.detail-toolbar>span{margin-left:auto;font-size:10px;color:var(--muted)}.detail-toolbar .icon-button{width:25px}.detail-toolbar .icon-button svg{width:20px}.detail-next-project{display:flex;align-items:center;justify-content:space-between;padding-top:15px}.detail-next-project>span{font-size:9px;color:var(--muted)}.detail-next-project .text-link{font-size:11px;border-bottom:0}.contact-dialog{width:675px;padding:49px 56px 39px}.contact-form-intro>.eyebrow{font-size:10px;color:var(--muted);letter-spacing:1.3px}.contact-form-intro h2{font-size:34px;margin:16px 0 10px}.contact-form-intro>p{font-size:11px;line-height:2.1;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 29px;margin-top:33px}.form-grid label{min-width:0;font-size:11px;letter-spacing:.5px}.form-grid label>span{font-size:8px;color:#969b8e;margin-left:8px}.form-grid input,.form-grid select,.form-grid textarea{width:100%;background:none;color:var(--ink);border:0;border-bottom:1px solid #cbcec2;border-radius:0;padding:11px 0;font-size:12px;outline-offset:2px;transition:border-color .2s}.form-grid input::placeholder,.form-grid textarea::placeholder{color:#687060;font-size:11px}.form-grid select{height:42px}.form-grid textarea{resize:vertical;max-height:170px}.full-field{grid-column:1/-1}.form-privacy{font-size:9px;line-height:1.9;letter-spacing:.2px;color:#687060;margin-top:18px}.submit-button{display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:var(--paper);width:100%;padding:14px 21px;margin-top:18px;font-size:12px;letter-spacing:2px;transition:background .3s}.submit-button:hover{background:#56614c}.submit-button svg{width:22px;height:22px}#form-result{padding-top:25px;text-align:center}.result-symbol{width:57px;height:57px;border:1px solid #a6ae9a;border-radius:100%;display:grid;place-items:center;color:#6f7d60;margin:0 auto 20px}.result-symbol svg{width:29px;height:29px}#form-result h3{font-family:var(--serif);font-size:26px;letter-spacing:2px}#form-result>p{font-size:11px;line-height:2.1;color:var(--muted);margin-top:15px}.brief-summary{text-align:left;margin-top:24px;padding:17px 20px;background:#e8e9df;font-size:12px;line-height:2}.result-actions{display:flex;justify-content:space-between;margin-top:20px}.result-actions>button{font-size:10px;border-bottom:1px solid var(--line);padding:5px 0}.credits-dialog{width:640px;padding:50px}.credits-dialog h2{font-size:32px;margin:17px 0}.credits-dialog>p{font-size:12px;color:var(--muted);line-height:2}.credits-dialog .eyebrow{color:var(--accent)}#credit-list{margin:25px 0}#credit-list a{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:12px 0;font-size:11px}#credit-list a svg{width:17px;height:17px}.credit-end{border-top:1px solid var(--line);padding-top:16px;font-size:10px!important}.toast{position:fixed;bottom:30px;left:calc(50% + var(--sidebar)/2);transform:translate(-50%,20px);background:var(--ink);color:var(--paper);padding:13px 26px;z-index:100;font-size:12px;letter-spacing:1px;opacity:0;pointer-events:none;transition:opacity .3s,transform .3s}.toast.is-visible{opacity:1;transform:translate(-50%,0)}@keyframes dialog-in{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1650px){:root{--sidebar:230px;--gutter:80px}.sidebar{padding-left:43px;padding-right:38px}main{max-width:1760px}.hero-intro{padding-top:57px;padding-bottom:49px}.hero-note{padding-right:50px}.hero h1{font-size:89px}.hero-visual{height:620px}.studio-layout{gap:100px}.studio-copy h2{font-size:48px}.studio-copy>p{max-width:440px}.project-home .project-image{height:530px}}
@media(max-width:1200px){:root{--sidebar:178px;--gutter:35px}.sidebar{padding-left:25px;padding-right:23px}.brand{column-gap:9px;grid-template-columns:35px 1fr}.brand-mark{width:35px}.brand-name{font-size:30px}.brand-subtitle{font-size:8px;letter-spacing:3px}.hero-intro{padding-top:37px;padding-bottom:36px}.hero h1{font-size:65px}.hero-note{min-width:230px}.hero-visual{height:440px}.hero-project-meta{gap:14px}.project-home{column-gap:20px}.project-home .project-image{height:390px}.project-cafe .project-image{height:430px}.project-office .project-image{height:287px}.project-list{gap:65px 30px}.studio-layout{gap:48px}.studio-copy h2{font-size:34px}.studio-image>img{height:540px}.contact-main h2{font-size:42px}.contact-orbit{width:124px;height:124px;margin-right:0}.process-layout{gap:30px}.process-intro h2{font-size:32px}.values-strip>div{padding:0 20px}.values-strip p{font-size:9px}h2{font-size:37px}.detail-layout{grid-template-columns:37% 63%}.detail-copy{padding:68px 26px 30px}.detail-copy h2{font-size:35px}.detail-viewer{height:420px}}
@media(max-width:960px){:root{--sidebar:150px;--gutter:27px}.sidebar{padding-left:21px;padding-right:20px}.brand{grid-template-columns:30px 1fr;gap:5px}.brand-mark{width:29px;height:36px}.brand-name{font-size:28px;letter-spacing:3px}.brand-subtitle{font-size:7px;letter-spacing:2px;margin-top:8px}.nav-caption{font-size:8px;letter-spacing:1px}.nav-link{font-size:11px;gap:10px}.sidebar-bottom p{font-size:15px}.side-location{font-size:7px;gap:3px}.side-location>span:last-child{font-size:7px}.hero h1{font-size:54px;letter-spacing:1px}.hero-note{min-width:190px;padding-right:0}.hero-note p{font-size:10px}.hero-note .text-link{gap:40px}.hero-visual{height:390px}.hero-project-meta .muted{font-size:8px}.hero-project-meta{gap:10px}.hero-image-footer .slide-controls{gap:0}.slide-ticks{gap:4px;margin:0 4px}.slide-ticks button{width:12px}.spaces-section,.studio-section,.process-section{margin-top:90px}.section-heading h2{font-size:32px}.work-filters{gap:22px}.work-toolbar>p{font-size:9px}.project-home .project-image{height:340px}.project-drawing{padding-top:45px}.project-cafe .project-image{height:350px}.project-office{padding-top:120px}.project-office .project-image{height:230px}.editorial-aside p{font-size:17px}.project-title{font-size:25px}.project-info>p{font-size:10px;letter-spacing:0}.studio-layout{gap:30px;margin-top:45px}.studio-image>img{height:490px}.studio-copy h2{font-size:29px}.studio-copy>.eyebrow{font-size:9px;letter-spacing:1px}.studio-copy>p{font-size:11px}.studio-sign{margin-top:20px}.values-strip>div{padding:0 12px;gap:7px}.values-strip h3{font-size:16px}.values-strip p{font-size:9px;letter-spacing:0}.process-layout{grid-template-columns:1fr 1.3fr;gap:25px}.process-intro h2{font-size:28px}.process-steps summary{gap:15px}.process-steps summary h3{font-size:18px}.step-body{padding-left:31px}.contact-section{margin-top:90px}.contact-main h2{font-size:36px}.contact-orbit{width:107px;height:107px}.footer-top>span{font-size:9px}.footer-bottom{font-size:7px;letter-spacing:0}.detail-layout{display:block}.detail-copy{padding:42px 55px 30px}.detail-copy dl{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.detail-copy h2{font-size:40px}.detail-visual{padding:26px 30px}.detail-viewer{height:400px}}
@media(max-width:700px){:root{--sidebar:0px;--gutter:24px}html{scroll-padding-top:82px}.sidebar{height:74px;width:100%;padding:13px 24px;flex-direction:row;justify-content:space-between;align-items:center;border-right:0;border-bottom:1px solid var(--line);background:#f3f1ebf7;backdrop-filter:blur(12px)}.brand{display:flex;gap:9px}.brand-mark{width:27px;height:33px}.brand-name{font-size:27px;letter-spacing:3px}.brand-subtitle{border-left:1px solid var(--line);margin:0 0 0 5px;padding-left:13px;font-size:8px;letter-spacing:2px;width:60px;line-height:1.8}.menu-toggle{display:grid;width:37px;height:37px}.site-nav{position:absolute;left:0;right:0;top:73px;background:var(--paper);margin:0;padding:26px 30px 33px;border-bottom:1px solid var(--line);transform:translateY(-15px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s,transform .25s,visibility .25s;box-shadow:0 20px 25px #2e302509}.sidebar.is-open .site-nav{transform:translateY(0);opacity:1;visibility:visible;pointer-events:auto}.nav-caption{font-size:9px;margin-bottom:15px}.nav-link{font-size:15px;height:50px;gap:22px}.nav-link i{margin-right:3px}.nav-number{font-size:11px}.sidebar-bottom{display:none}.reading-progress{top:auto;bottom:-1px;width:100%;height:1px;left:0;right:0}.reading-progress>span{height:1px!important;width:0}.topline{height:52px;font-size:8px;letter-spacing:.6px}.topline a{gap:8px}.hero{padding-top:74px}.hero-intro{padding:32px 0 29px;align-items:flex-end;position:relative;gap:0}.hero-title .eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:16px}.hero h1{font-size:clamp(44px,8.9vw,59px);line-height:1.45;letter-spacing:2px}.hero-note{min-width:0;width:auto;position:absolute;right:0;bottom:38px;padding:0}.hero-note .note-line,.hero-note p{display:none}.hero-note .text-link{font-size:9px;writing-mode:vertical-rl;gap:14px;border-bottom:0;letter-spacing:2px}.hero-note .text-link svg{transform:rotate(90deg);width:18px;height:18px}.hero-visual{height:450px;margin:0 -24px}.hero-photo{object-position:47% center}.hero-photo-caption{left:25px;bottom:24px}.hero-photo-caption p{font-size:28px}.photo-index{left:25px;top:23px;font-size:8px;letter-spacing:1px}.view-switch{right:22px;top:19px}.view-switch button{font-size:9px;padding:5px 11px}.hero-open{right:24px;bottom:27px;gap:10px}.hero-open>span{font-size:9px;letter-spacing:1px}.hero-open svg{width:43px;height:43px;padding:11px}.hero-image-footer{min-height:68px}.hero-project-meta{display:grid;grid-template-columns:auto 1fr;gap:2px 9px;font-size:10px}.hero-project-meta .small-index{grid-column:1;grid-row:1}.hero-project-meta .muted{grid-row:2;grid-column:1/-1;margin-left:0;font-size:8px;letter-spacing:.3px}.slide-controls .icon-button{width:27px}.slide-ticks{margin:0 5px;gap:5px}.slide-ticks button{width:12px}.hero-end{font-size:8px;letter-spacing:.5px;padding-top:13px}.hero-end a{gap:5px}.hero-plan{padding:55px 10px 55px}.hero-plan img{width:100%}.hero-visual.is-plan .hero-open>span{display:none}.plan-note{font-size:9px;bottom:25px}.tracked-section{scroll-margin-top:88px}.spaces-section,.studio-section,.process-section{margin-top:76px}.section-kicker{font-size:9px;letter-spacing:1px;padding-top:17px}.section-kicker>span:last-child{font-size:8px;letter-spacing:.4px}.section-heading{display:block;padding:30px 0 17px}.section-heading h2{font-size:31px;letter-spacing:1px}.work-years{display:block;margin-top:9px;font-size:8px;padding:0}.work-toolbar{display:block;margin-bottom:28px}.work-toolbar>p{display:none}.work-filters{gap:29px}.work-filters button{font-size:10px;padding:15px 1px}.project-list{display:block}.project{margin-bottom:45px}.project-home{display:block}.project-home .project-image{height:360px}.project-info{padding-top:16px}.project-title{font-size:27px;margin-top:5px;margin-bottom:7px}.project-title svg{width:19px;height:19px}.project-info>p{font-size:10px;letter-spacing:.5px}.project-category{font-size:8px}.project-facts{margin-top:14px;padding-top:12px;font-size:8px}.project-drawing{padding-top:25px;display:grid;grid-template-columns:1fr 95px;gap:16px;align-items:center;margin-top:15px}.project-drawing img{max-height:220px}.project-drawing>div{margin:0;border-top:0;border-left:1px solid var(--line);padding:7px 0 7px 16px;flex-direction:column;gap:8px;font-size:8px}.project-cafe .project-image{height:405px}.project-office{padding-top:104px}.project-office .project-image{height:290px}.editorial-aside{top:2px}.editorial-aside p{font-size:19px}.editorial-aside>span:last-child{font-size:8px;margin-top:7px}.project-list.is-filtered .project{display:block}.project-list.is-filtered .project-image{height:380px}.project-list.is-filtered .project-drawing{padding-top:25px}.work-bottom{display:block;margin-top:0;padding-top:18px}.work-bottom>span{font-size:9px;letter-spacing:.4px}.work-bottom .text-link{margin-top:16px;display:flex;max-width:163px;font-size:10px;padding-bottom:7px}.studio-layout{display:flex;flex-direction:column;gap:39px;margin-top:36px;align-items:stretch}.studio-image{width:88%;padding-right:0}.studio-image>img{height:430px}.vertical-note{right:-23px;font-size:8px;letter-spacing:2px}.studio-copy{padding-left:22px}.studio-copy h2{font-size:36px;margin-bottom:21px}.studio-copy>.eyebrow{font-size:9px;margin-bottom:17px}.studio-copy>p{font-size:12px;line-height:2.2}.studio-sign{margin-top:22px;padding-top:20px}.values-strip{margin-top:35px;grid-template-columns:1fr;padding:9px 0}.values-strip>div,.values-strip>div:first-child,.values-strip>div:last-child{padding:19px 0;grid-template-columns:25px 1fr;gap:6px 15px;border:0;border-bottom:1px solid var(--line)}.values-strip>div:last-child{border:0}.values-strip h3{font-size:20px}.values-strip p{font-size:10px}.values-strip>div>span{font-size:12px;grid-row:1/3}.process-layout{display:block;margin-top:35px}.process-intro h2{font-size:33px}.process-intro>p{font-size:11px;margin:16px 0}.process-intro .text-link{font-size:10px}.process-steps{margin-top:35px}.process-steps summary{padding:22px 0;gap:22px}.process-steps summary h3{font-size:21px}.step-body{padding-left:38px}.step-body>p{font-size:12px}.step-body>span{font-size:9px}.contact-section{margin-top:74px;padding-top:27px;padding-bottom:30px}.contact-main{display:block;padding:35px 0 27px;position:relative}.contact-main .eyebrow{font-size:9px;letter-spacing:1px;margin-bottom:16px}.contact-main h2{font-size:33px;letter-spacing:1px;line-height:1.75}.contact-orbit{width:85px;height:85px;margin-top:27px;margin-left:auto;gap:7px}.contact-orbit svg{width:27px;height:27px}.contact-orbit>span{font-size:8px}.contact-bottom{display:block;padding-top:20px}.contact-bottom p{font-size:10px;letter-spacing:.5px}.contact-bottom>.text-link{font-size:10px;display:flex;width:185px;margin-top:18px}.footer-top{gap:13px;padding-bottom:20px}.footer-brand svg{width:25px;height:28px}.footer-brand{gap:7px}.footer-brand>span{font-size:23px}.footer-top>span{display:none}.back-top{font-size:9px;gap:9px}.footer-bottom{flex-wrap:wrap;justify-content:space-between;row-gap:7px;font-size:7px}.footer-bottom>span:nth-child(2){order:3;width:100%}.footer-bottom button{font-size:8px}footer{padding-top:27px;padding-bottom:22px}dialog{max-width:100vw;max-height:100dvh;width:100vw!important;height:100dvh;margin:0;overflow-y:auto}.dialog-close{position:sticky;float:right;top:15px;right:17px;margin:15px 17px -55px 0;width:37px;height:37px}.detail-copy{padding:75px 25px 27px}.detail-copy h2{font-size:39px}.detail-tagline{font-size:15px}.detail-description{font-size:12px}.detail-copy dl{gap:0 18px}.detail-copy dl>div{font-size:9px}.detail-visual{padding:22px}.detail-viewer{height:390px}.detail-toolbar{gap:8px}.detail-tabs{gap:17px}.detail-tabs button{font-size:10px}.detail-toolbar .icon-button{width:25px}.contact-dialog{padding:0 24px 30px}.contact-dialog .dialog-close{right:0;margin-right:0}.contact-form-intro{padding-top:79px}.contact-form-intro>.eyebrow{font-size:9px;letter-spacing:1px}.contact-form-intro h2{font-size:31px}.contact-form-intro>p{font-size:11px;line-height:2}.form-grid{margin-top:27px;gap:21px 21px}.form-grid label{font-size:10px}.form-grid label>span{font-size:7px;margin-left:4px}.form-grid input,.form-grid select,.form-grid textarea{font-size:16px}.desktop-break{display:none}.form-privacy{font-size:8px}.contact-dialog #form-result{padding-top:39px}.credits-dialog{padding:0 25px 40px}.credits-dialog .dialog-close{margin-right:0}.credits-dialog>.eyebrow{padding-top:80px}.credits-dialog h2{font-size:33px}.toast{max-width:calc(100vw - 35px);bottom:22px;font-size:11px;padding:12px 20px;white-space:nowrap}}
@media(max-width:370px){:root{--gutter:20px}.sidebar{padding-left:20px;padding-right:20px}.hero h1{font-size:42px}.hero-title .eyebrow{font-size:7px;letter-spacing:1.3px}.hero-visual{margin-left:-20px;margin-right:-20px;height:410px}.hero-open>span{display:none}.section-heading h2{font-size:28px}.section-kicker>span:last-child{font-size:7px}.contact-main h2{font-size:29px}.hero-project-meta .muted{font-size:7px}.work-filters{gap:25px}.form-grid{gap:20px 14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal,.js-motion .reveal:not(.is-visible){opacity:1;transform:none}}

.photo-unavailable .hero-photo-caption{color:var(--ink)}.photo-unavailable:after{display:none}.photo-unavailable .photo-index{color:var(--ink);text-shadow:none}.photo-unavailable .hero-open{color:var(--ink)}.photo-unavailable .hero-open svg{border-color:#949b8a}.photo-unavailable .hero-photo{filter:none}
