:root{--ink:#252a26;--paper:#f3f3ef;--muted:#6d726c;--line:#cdd0c9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,'PingFang SC','Microsoft YaHei',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid #a78b5c;outline-offset:6px}header{height:92px;padding:0 5%;display:flex;justify-content:space-between;align-items:center;background:var(--paper)}.brand{display:flex;align-items:center;gap:21px}.brand>span{font-family:'Songti SC',serif;font-size:32px;letter-spacing:5px}.brand small{font-size:12px;letter-spacing:2px;border-left:1px solid #b1b4aa;padding-left:20px}nav{display:flex;gap:34px;align-items:center;font-size:14px}nav .visit{border-bottom:1px solid var(--ink);padding-bottom:8px;margin-left:18px}.visit span{margin-left:32px}.hero{height:min(820px,calc(100svh - 92px));min-height:580px;position:relative;color:#fff;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,20,17,.57),transparent 80%),linear-gradient(0deg,rgba(10,20,17,.55),transparent 35%)}.hero-copy{position:absolute;left:7%;top:20%}.eyebrow{font-size:12px;letter-spacing:2.3px;margin:0 0 30px;font-weight:500}.hero h1{font-family:'Songti SC','Noto Serif CJK SC',serif;font-size:clamp(48px,5.4vw,84px);line-height:1.3;font-weight:400;letter-spacing:5px;margin:0 0 25px}.hero-sub{font-size:16px;letter-spacing:2px}.line-link{display:inline-flex;justify-content:space-between;gap:55px;align-items:center;border:0;border-bottom:1px solid currentColor;background:none;padding:16px 0;font-size:14px}.hero .line-link{margin-top:24px}.hero-bottom{position:absolute;bottom:32px;left:7%;right:7%;display:flex;justify-content:space-between;font-size:12px;letter-spacing:1px}.hero-index{position:absolute;right:35px;top:44%;writing-mode:vertical-rl;font-size:12px;letter-spacing:2px}.section{padding:110px 7%}.about{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding-top:120px;padding-bottom:120px}h2{font-family:'Songti SC',serif;font-weight:400;font-size:clamp(34px,3.3vw,50px);line-height:1.45;letter-spacing:2px;margin:0}p{line-height:1.9}.about-copy>p:first-child{font-size:22px;margin-top:0}.about-copy>p:nth-child(2){font-size:16px;color:var(--muted);line-height:2}.stats{display:flex;gap:36px;border-top:1px solid var(--line);margin-top:38px;padding-top:28px;justify-content:space-between}.stats strong{display:block;font-size:36px;font-weight:400}.stats strong span{font-size:14px;margin-left:4px}.stats div>span{display:block;font-size:13px;color:var(--muted);margin-top:8px}.works{background:#e7e9e3;padding-top:90px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:55px;gap:30px}.section-heading>p{font-size:15px;color:var(--muted);margin-bottom:8px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 38px;align-items:start}.project{background:none;padding:0;border:0;display:block;text-align:left;width:100%}.project.wide{grid-column:1/-1}.picture{position:relative;overflow:hidden}.picture img{width:100%;height:490px;object-fit:cover;display:block;transition:transform .7s}.wide .picture img{height:600px}.offset{margin-top:100px}.project:last-child{margin-top:-100px}.project:hover img{transform:scale(1.025)}.view{position:absolute;bottom:24px;right:24px;background:rgba(243,243,239,.93);padding:13px 19px;font-size:14px;opacity:0;transition:opacity .2s}.project:hover .view,.project:focus-visible .view{opacity:1}.caption{position:relative;padding-top:21px;border-bottom:1px solid #bfc4bb;padding-bottom:18px}.caption h3{margin:0;font-size:22px;font-weight:400;letter-spacing:1px}.caption p{margin:7px 0 0;font-size:13px;color:var(--muted)}.caption>span{position:absolute;right:0;top:26px;font-size:13px}.craft{display:grid;grid-template-columns:1fr 1fr;background:#29332c;color:#f3f3eb}.craft-image{position:relative;min-height:780px}.craft-image img{width:100%;height:100%;position:absolute;object-fit:cover}.craft-image>span{position:absolute;bottom:35px;left:10%;font-size:12px;letter-spacing:3px;text-shadow:0 1px 5px #000}.craft-copy{padding:85px 14% 65px 12%}.craft-copy .eyebrow{color:#c5cfc2}.intro{font-size:15px;color:#c5cfc2;margin:26px 0 32px}.craft-row{border-top:1px solid #546054;display:flex;gap:25px;padding:22px 0}.craft-row>span{font-size:12px;color:#c5cfc2;padding-top:5px}.craft-row h3{font-size:19px;font-weight:400;margin:0 0 8px}.craft-row p{font-size:14px;color:#c5cfc2;margin:0}.roles{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);margin-top:60px}.roles article{padding:30px 22px 0 0}.roles article>span{font-size:12px;letter-spacing:1px;color:var(--muted)}.roles h3{font-size:21px;font-weight:400;margin-top:34px}.roles p{font-size:14px;color:var(--muted)}.visit-section{background:#dedfd6;padding:85px 7%;display:grid;grid-template-columns:1fr 1fr;gap:8%}.address{padding-top:38px}.address h3{font-weight:400;font-size:22px}.address p{font-size:16px;color:#555e52}.address .line-link{min-width:225px}.address #copy-status{font-size:14px;min-height:25px}footer{padding:38px 7%;display:flex;align-items:center;justify-content:space-between}footer p,footer>a:last-child{font-size:12px;color:var(--muted)}dialog{border:0;background:#202622;color:white;padding:65px 5% 35px;max-width:1250px;width:94vw;max-height:95svh}dialog::backdrop{background:#000c}.close{position:absolute;right:20px;top:10px;color:white;font-size:35px;border:0;background:none}.gallery-body>img{display:block;width:100%;height:65svh;object-fit:contain}.gallery-meta{display:flex;justify-content:space-between;align-items:center;padding-top:20px;gap:20px}.gallery-meta h2{font-size:24px}.gallery-meta p{font-size:14px;color:#cbd0ca;margin:5px 0}.gallery-controls{display:flex;gap:20px;align-items:center;white-space:nowrap}.gallery-controls button{background:none;border:1px solid #748074;color:#fff;font-size:20px;padding:8px 14px}.gallery-controls button:disabled{opacity:.3;cursor:default}body:has(dialog[open]){overflow:hidden}@media(min-width:1600px){.section,header,footer,.visit-section{padding-left:max(7%,calc((100% - 1440px)/2));padding-right:max(7%,calc((100% - 1440px)/2))}}@media(max-width:760px){header{height:78px;padding:0 6%}.brand{gap:10px}.brand>span{font-size:28px}.brand small{display:none}nav{gap:17px;font-size:13px}nav>a:first-child,nav>a:nth-child(3){display:none}nav .visit{margin-left:0}.visit span{margin-left:10px}.hero{min-height:580px;height:calc(88svh - 78px)}.hero>img{object-position:55% center}.hero-copy{top:24%;left:7%}.hero h1{font-size:48px}.hero-sub{font-size:13px;letter-spacing:1px}.eyebrow{font-size:12px;letter-spacing:1px}.hero-bottom{bottom:22px;display:block}.hero-bottom span{display:block;margin-top:9px}.hero-index{display:none}.section{padding:70px 7%}.about{grid-template-columns:1fr;gap:30px}.about-copy>p:first-child{font-size:19px}.stats{gap:12px}.stats strong{font-size:30px}.stats div>span{font-size:12px}.section-heading{display:block;margin-bottom:35px}.section-heading>p{margin-top:22px}.project-grid{display:block}.project{margin:0 0 36px!important}.picture img,.wide .picture img{height:330px}.project:nth-child(2) img{height:440px}.view{opacity:1;bottom:14px;right:14px;font-size:12px;padding:10px 12px}.caption h3{font-size:20px}.craft{grid-template-columns:1fr}.craft-image{min-height:420px}.craft-copy{padding:55px 7%}.roles{grid-template-columns:1fr 1fr;margin-top:35px}.roles article{padding-top:25px;padding-bottom:15px}.roles h3{margin-top:20px}.visit-section{padding:60px 7%;grid-template-columns:1fr;gap:5px}.address{padding-top:15px}footer{gap:20px;flex-wrap:wrap;padding:30px 7%}footer p{display:none}dialog{padding:50px 15px 20px}.gallery-body>img{height:55svh}.gallery-meta{display:block}.gallery-meta h2{font-size:20px}.gallery-controls{margin-top:15px;justify-content:center}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.contact-email a{display:inline-block;border-bottom:1px solid #7e877a;overflow-wrap:anywhere}.contact-email a:hover{color:#252a26}
