:root{--ink:#1b1b17;--ink-soft:#606056;--paper:#f1eee7;--paper-deep:#e5e0d6;--line:rgba(27,27,23,.19);--moss:#363d31;--white:#fbfaf6;--header-h:78px;--max:1600px;--pad:clamp(22px,5vw,84px)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 24px)}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.75;text-rendering:optimizeLegibility}body.menu-open,body.dialog-open{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;width:100%;height:auto}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{touch-action:manipulation}button:disabled{cursor:default}p,h1,h2,h3,figure{margin-top:0}h1,h2,h3{overflow-wrap:anywhere}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid currentColor;outline-offset:6px}main{min-width:0}section{min-width:0}strong{font-weight:500}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:12px;top:-100px;z-index:1000;background:var(--white);padding:10px 14px}.skip-link:focus{top:12px}
.site-header{min-height:var(--header-h);padding:0 var(--pad);background:rgba(241,238,231,.96);display:flex;align-items:center;justify-content:space-between;gap:32px;position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(27,27,23,.12);backdrop-filter:blur(14px)}.brand{display:block;flex:0 1 260px;width:260px;min-width:160px}.brand img{height:auto}.site-nav{display:flex;align-items:center;gap:clamp(16px,2.4vw,38px);font-size:13px;letter-spacing:.06em;white-space:nowrap}.site-nav a{position:relative;padding:12px 0}.site-nav a:not(.nav-contact)::after{content:"";position:absolute;left:0;right:100%;bottom:6px;height:1px;background:currentColor;transition:right 220ms ease}.site-nav a:hover::after,.site-nav a[aria-current=page]::after{right:0}.site-nav .nav-contact{border:1px solid var(--ink);padding:9px 16px;display:flex;gap:20px;transition:background 220ms,color 220ms}.nav-contact:hover{background:var(--ink);color:var(--paper)}.menu-toggle{display:none;border:0;background:none;min-width:44px;height:44px;padding:10px}.menu-toggle>span:not(.sr-only){display:block;height:1px;background:var(--ink);margin:6px 0;transition:transform 220ms ease}
.hero{position:relative;min-height:calc(100svh - var(--header-h));overflow:hidden;background:#24251f;color:var(--white)}.hero-media{position:absolute;inset:0;height:100%;object-fit:cover;object-position:center 56%;transform:scale(1.025);animation:hero-image 1.6s ease-out both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,14,11,.69),rgba(13,14,11,.28) 56%,rgba(13,14,11,.05)),linear-gradient(0deg,rgba(13,14,11,.5),transparent 65%)}.hero-copy{position:relative;z-index:2;min-height:calc(100svh - var(--header-h));padding:90px var(--pad) 90px;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;max-width:1180px}.hero-copy>*{animation:hero-copy 850ms ease-out both}.hero-copy>p:first-child{animation-delay:70ms}.hero-copy>h1{animation-delay:160ms}.hero-copy>.hero-tagline{animation-delay:260ms}.hero-copy>.hero-intro{animation-delay:340ms}.hero-copy>.hero-actions{animation-delay:420ms}h1,h2,.editorial-title{font-family:"Songti SC","STSong","Noto Serif SC",serif;font-weight:400;line-height:1.22;letter-spacing:-.025em;margin-bottom:0}.hero h1{font-size:clamp(70px,9.5vw,150px);line-height:1.04;letter-spacing:.035em;white-space:nowrap}.hero h1 span{display:block;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;font-size:clamp(15px,1.5vw,23px);letter-spacing:.7em;margin-top:22px;padding-left:5px;font-weight:400}.eyebrow{margin:0 0 24px;color:var(--ink-soft);font-size:11px;letter-spacing:.19em;line-height:1.65;text-transform:uppercase}.eyebrow.light{color:rgba(255,255,255,.72)}.hero-tagline{font-family:"Songti SC",serif;font-size:clamp(22px,2.3vw,35px);margin:36px 0 8px}.hero-intro{font-size:13px;letter-spacing:.12em;color:rgba(255,255,255,.76);margin:0 0 34px}.hero-actions{display:flex;flex-wrap:wrap;gap:28px}.text-link{display:inline-flex;align-items:center;gap:22px;min-height:44px;border-bottom:1px solid currentColor;padding:5px 0;font-size:13px;letter-spacing:.06em}.text-link.light{border-color:rgba(255,255,255,.65)}.text-link span{transition:transform 220ms ease}.text-link:hover span{transform:translate(4px,-1px)}.hero-caption{position:absolute;right:var(--pad);bottom:32px;z-index:3;display:grid;gap:1px;font-size:11px;text-align:right;color:rgba(255,255,255,.8)}.hero-caption span:last-child{font-size:9px;letter-spacing:.12em}
.section-pad{max-width:var(--max);margin:0 auto;padding:clamp(84px,10vw,155px) var(--pad)}.section-number{font-size:10px;letter-spacing:.15em;color:var(--ink-soft)}.section-number.inverse{color:rgba(255,255,255,.6)}.manifesto{display:grid;grid-template-columns:.6fr 2.2fr 1fr;gap:clamp(24px,5vw,80px);align-items:start}.manifesto h2{font-size:clamp(36px,4.8vw,73px)}.body-copy{max-width:610px;margin:36px 0 0;color:var(--ink-soft);font-size:15px;line-height:1.95}.manifesto-aside{padding-top:48px}.manifesto-aside dl{margin:0}.manifesto-aside dl div{border-top:1px solid var(--line);padding:18px 0 24px}.manifesto-aside dt{font-size:11px;color:var(--ink-soft)}.manifesto-aside dd{margin:7px 0 0;font-family:"Songti SC",serif;font-size:17px}.projects{border-top:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:36px;margin-bottom:64px}.section-heading h2{font-size:clamp(38px,4.8vw,73px)}.section-heading>.text-link{flex-shrink:0}.project-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:40px clamp(24px,4vw,58px);align-items:start}.project-card{min-width:0}.project-card--wide{grid-row:span 2}.project-card figure,.catalog-card figure{margin:0;overflow:hidden;background:var(--paper-deep)}.project-card img{aspect-ratio:4/3;object-fit:cover;transition:transform 750ms cubic-bezier(.2,.7,.1,1)}.project-card--wide img{aspect-ratio:3/4.35;object-position:51% center}.project-card a:hover img,.catalog-card a:hover img{transform:scale(1.035)}.project-meta{padding:18px 0 12px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:16px}.project-meta p{margin:0 0 5px;font-size:11px;color:var(--ink-soft);letter-spacing:.06em}.project-meta h3,.project-meta h2{margin:0;font:400 clamp(22px,2.1vw,31px)/1.45 "Songti SC",serif;letter-spacing:0}.project-meta>span{font-size:18px;line-height:1.5;padding:15px 0 0;align-self:center}
.services{max-width:none;background:var(--moss);color:var(--white);display:grid;grid-template-columns:.5fr 1.1fr 1.65fr;gap:clamp(24px,5vw,90px)}.services-intro h2{font-size:clamp(35px,4.5vw,70px)}.services-intro>p:last-child{color:rgba(255,255,255,.7);font-size:14px;max-width:380px;margin:32px 0 0}.service-list{align-self:center;min-width:0}.service-list a{display:grid;grid-template-columns:28px 1fr auto 18px;gap:15px;align-items:center;padding:18px 0;min-height:74px;border-top:1px solid rgba(255,255,255,.24)}.service-list a:last-child{border-bottom:1px solid rgba(255,255,255,.24)}.service-list span,.service-list em{font-size:10px;letter-spacing:.04em;color:rgba(255,255,255,.64);font-style:normal}.service-list strong{font-family:"Songti SC",serif;font-size:clamp(19px,1.6vw,26px);font-weight:400}.service-list b{font-weight:400;transition:transform 200ms}.service-list a:hover b{transform:translate(3px,-3px)}.designer{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(40px,9vw,130px);align-items:center}.designer-image{position:relative;overflow:hidden;display:block}.designer-image img{aspect-ratio:4/5;object-fit:cover;transition:transform 750ms}.designer-image:hover img{transform:scale(1.025)}.image-label{position:absolute;left:20px;bottom:20px;padding:5px 10px;background:rgba(20,20,17,.65);color:var(--white);font-size:10px;letter-spacing:.06em}.designer h2{font-size:clamp(40px,5vw,78px)}.designer-copy>p:not(.eyebrow){max-width:510px;color:var(--ink-soft);margin:34px 0 24px;font-size:15px;line-height:1.95}
.contact{background:#1b1c18;color:var(--white);padding:clamp(84px,11vw,170px) var(--pad);display:grid;grid-template-columns:1.4fr 1fr;gap:70px;align-items:end}.contact h2{font-size:clamp(50px,7vw,108px)}.contact-copy>p:last-child{color:rgba(255,255,255,.62);font-size:13px;margin:28px 0 0}.contact-action{padding-bottom:8px}.contact-action>a{display:flex;justify-content:space-between;gap:20px;min-height:64px;padding:17px 0;border-top:1px solid rgba(255,255,255,.3);border-bottom:1px solid rgba(255,255,255,.3);font:400 clamp(21px,2.3vw,32px)/1.5 "Songti SC",serif}.contact-action .wechat-contact{margin-top:24px}.wechat-contact{font-size:13px}.wechat-line{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.wechat-id{font-family:inherit;font-size:inherit;user-select:all;letter-spacing:.06em;overflow-wrap:anywhere}.copy-button{padding:5px 12px;min-height:44px;line-height:1.3;border:1px solid currentColor;background:none;font-size:12px}.copy-button:hover{background:rgba(127,127,127,.12)}.copy-feedback{min-height:1.6em;font-size:12px;margin:4px 0 0;color:inherit}.wechat-note{font-size:12px;opacity:.7;margin:6px 0 0;max-width:350px}.site-footer{background:#121310;color:rgba(255,255,255,.68);padding:48px var(--pad);display:grid;grid-template-columns:1fr 1fr 1fr;gap:32px;align-items:center;font-size:11px;letter-spacing:.06em}.footer-brand{display:block;width:min(240px,100%)}.footer-brand img{filter:invert(1);opacity:.8}.site-footer nav{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.site-footer nav a{padding:8px 0}.footer-legal{text-align:right}.footer-legal p{margin:0}.footer-legal a{display:block;margin-top:7px}.footer-wechat{margin-top:8px!important;font-size:10px;letter-spacing:.03em}
.breadcrumbs{font-size:11px;line-height:1.6;color:var(--ink-soft);margin-bottom:64px;letter-spacing:.03em}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:9px;list-style:none;margin:0;padding:0}.breadcrumbs li:not(:last-child)::after{content:"/";margin-left:9px;opacity:.5}.breadcrumbs a:hover{text-decoration:underline;text-underline-offset:4px}.page-hero{min-height:62svh;padding:42px var(--pad) 84px;max-width:var(--max);margin:0 auto;display:flex;flex-direction:column;justify-content:flex-end}.page-hero h1{font-size:clamp(58px,7.8vw,120px)}.page-hero>p:last-child{max-width:650px;margin:32px 0 0 auto;color:var(--ink-soft);font-size:15px;line-height:1.9}.page-hero--dark{max-width:none;background:var(--moss);color:var(--white)}.page-hero--dark h1{font-size:clamp(46px,6.1vw,93px)}.page-hero--dark .breadcrumbs,.page-hero--dark>p:last-child{color:rgba(255,255,255,.68)}.catalog-section{max-width:var(--max);margin:0 auto;padding:0 var(--pad) 135px}.catalog-controls{display:flex;gap:20px;align-items:baseline;flex-wrap:wrap;border-top:1px solid var(--line);padding:22px 0 40px}.filter-label{font-size:11px;letter-spacing:.06em}.filter-buttons{display:flex;gap:8px 22px;flex-wrap:wrap;flex:1}.filter-buttons button{background:none;border:0;border-bottom:1px solid transparent;color:var(--ink-soft);padding:7px 0;min-height:44px;font-size:12px}.filter-buttons button[aria-pressed=true]{color:var(--ink);border-color:currentColor}.filter-count{font-size:11px;color:var(--ink-soft);margin:0}.project-catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px 28px}.catalog-card{min-width:0}.catalog-card img{aspect-ratio:4/5;object-fit:cover;transition:transform 750ms ease}.catalog-card h2{font-size:24px}.catalog-card .project-meta{padding-bottom:16px}
.project-heading{min-height:auto;padding-bottom:62px}.project-heading h1{font-size:clamp(45px,6.3vw,98px);max-width:1400px}.project-introduction{margin-top:44px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.project-introduction dl{display:flex;flex-wrap:wrap;gap:25px 64px;margin:0}.project-introduction dt{font-size:11px;color:var(--ink-soft);margin-bottom:6px}.project-introduction dd{margin:0;font-size:14px}.project-introduction p{font-size:15px;color:var(--ink-soft);margin:0;max-width:560px;line-height:1.95}.project-feature{margin:0;position:relative;background:var(--paper-deep)}.project-feature img{width:100%;height:min(70vw,780px);min-height:380px;object-fit:cover;object-position:center}.project-feature figcaption{position:absolute;right:var(--pad);bottom:24px;color:#fff;background:rgba(0,0,0,.55);padding:4px 10px;font-size:10px}.gallery-section{max-width:1350px;margin:auto;padding:90px var(--pad) 100px}.gallery-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:45px}.gallery-heading h2{font-size:32px}.gallery-heading p{font-size:12px;color:var(--ink-soft);margin:0}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 32px;align-items:start}.gallery-figure{margin:0;min-width:0}.gallery-figure>a{display:block;position:relative;background:var(--paper-deep)}.gallery-figure img{width:100%;height:auto;aspect-ratio:9/16}.gallery-expand{position:absolute;bottom:15px;right:15px;padding:6px 12px;background:rgba(15,16,12,.7);color:white;font-size:11px;opacity:0;transition:opacity 200ms}.gallery-figure a:hover .gallery-expand,.gallery-figure a:focus-visible .gallery-expand{opacity:1}.gallery-figure figcaption{display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--ink-soft);padding:12px 0 0}.project-pagination{max-width:var(--max);margin:auto;padding:45px var(--pad) 80px;display:grid;grid-template-columns:1fr auto 1fr;gap:35px;align-items:center;border-top:1px solid var(--line)}.project-pagination a{min-width:0;display:grid;gap:7px;position:relative}.project-pagination a:last-child{text-align:right}.project-pagination span{font-size:10px;color:var(--ink-soft)}.project-pagination strong{font:400 clamp(19px,2vw,28px)/1.5 "Songti SC",serif;overflow-wrap:anywhere}.project-pagination b{font-weight:400}.project-pagination .all-projects{font-size:11px;border:1px solid var(--line);padding:12px 18px}
.content-section{max-width:var(--max);margin:0 auto;padding:64px var(--pad);border-top:1px solid var(--line);display:grid;grid-template-columns:.6fr 1.1fr 1fr;gap:clamp(24px,5vw,80px);scroll-margin-top:24px}.content-section h2{font-size:clamp(33px,3.5vw,54px)}.content-section p{margin:0;color:var(--ink-soft);font-size:14px;line-height:1.95}.content-section ul{list-style:none;margin:26px 0 0;padding:0}.content-section li{padding:9px 0;border-bottom:1px solid var(--line);font-size:12px}.service-note{border-top:1px solid var(--line);text-align:center}.service-note h2{font-size:clamp(32px,4vw,56px)}.service-note>p:not(.eyebrow){max-width:570px;margin:30px auto;color:var(--ink-soft);font-size:14px}.designer-editorial{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,8vw,120px);align-items:center}.designer-editorial h2{font-size:clamp(35px,4.5vw,70px)}.designer-editorial p:not(.eyebrow){max-width:510px;margin:35px 0 22px;font-size:15px;color:var(--ink-soft);line-height:1.95}.designer-editorial figure{margin:0}.designer-editorial img{aspect-ratio:4/5;object-fit:cover}.designer-editorial figcaption{font-size:11px;color:var(--ink-soft);margin-top:12px}.designer-works{padding-top:0}.designer-work-list>a{display:grid;grid-template-columns:50px 1fr auto 22px;align-items:center;gap:30px;padding:26px 0;border-top:1px solid var(--line)}.designer-work-list>a:last-child{border-bottom:1px solid var(--line)}.designer-work-list h3{margin:0;font:400 clamp(25px,3vw,40px)/1.5 "Songti SC",serif}.designer-work-list span{font-size:11px;color:var(--ink-soft)}.designer-work-list b{font-weight:400}
.contact-page{padding-top:40px;display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,9vw,140px);border-top:1px solid var(--line);align-items:start}.contact-details{margin:0}.contact-details>div{padding:22px 0;border-bottom:1px solid var(--line)}.contact-details dt{font-size:11px;color:var(--ink-soft);margin-bottom:12px}.contact-details dd{margin:0;font-size:clamp(19px,2.4vw,32px);overflow-wrap:anywhere}.contact-details .wechat-line{gap:18px}.contact-details .wechat-note{font-size:12px;max-width:none}.contact-intro h2,.project-brief h2{font-size:clamp(34px,4vw,58px)}.contact-intro>p:not(.eyebrow){color:var(--ink-soft);font-size:14px;max-width:420px;margin:30px 0 24px}.project-brief ol{list-style:none;margin:36px 0 32px;padding:0}.project-brief li{display:flex;gap:25px;padding:18px 0;border-top:1px solid var(--line)}.project-brief li>span{font-size:10px;color:var(--ink-soft);padding-top:4px}.project-brief h3{font:400 20px/1.5 "Songti SC",serif;margin:0 0 6px}.project-brief li p{font-size:12px;color:var(--ink-soft);margin:0}.contact-qr{margin:20px 0 0;max-width:260px}.contact-qr img{width:100%;height:auto}.contact-qr figcaption{font-size:12px;margin-top:12px}.error-page{min-height:70svh}.error-page .hero-actions{margin-top:35px}
.image-dialog{position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;border:0;margin:0;padding:0;background:#181915;color:var(--white);overflow:hidden}.image-dialog[open]{display:grid;grid-template-rows:64px minmax(0,1fr) 66px}.image-dialog::backdrop{background:rgba(0,0,0,.9)}.dialog-toolbar,.dialog-navigation{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 24px;background:#181915}.dialog-toolbar p{font-size:12px;margin:0}.dialog-toolbar button,.dialog-navigation button{background:none;border:1px solid rgba(255,255,255,.35);padding:8px 14px;min-height:44px;white-space:nowrap;font-size:12px}.dialog-toolbar button span{margin-left:12px;font-size:20px;vertical-align:middle}.dialog-navigation span{font-size:11px;opacity:.7}.dialog-image-scroll{overflow:auto;overscroll-behavior:contain;display:flex;align-items:flex-start;justify-content:center}.dialog-image-scroll img{width:auto;max-width:100%;max-height:none;height:auto;min-height:0}.dialog-navigation{justify-content:center;gap:30px;border-top:1px solid rgba(255,255,255,.1)}
.reveal{opacity:1;transform:none}.has-motion .reveal{opacity:0;transform:translateY(18px);transition:opacity 650ms ease,transform 750ms cubic-bezier(.2,.7,.1,1)}.has-motion .reveal.is-visible{opacity:1;transform:none}@keyframes hero-copy{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes hero-image{from{transform:scale(1.055)}to{transform:scale(1.025)}}
@media(min-width:1600px){.hero-copy{max-width:none}.hero-media{object-position:center 58%}.hero-copy h1{font-size:160px}}
@media(max-width:1100px){.site-nav{gap:18px;font-size:12px}.brand{width:220px;flex-basis:220px}.services{grid-template-columns:.25fr 1fr 1.25fr;gap:28px}.service-list em{display:none}.service-list a{grid-template-columns:24px 1fr 18px}.manifesto{grid-template-columns:.35fr 1.8fr 1fr;gap:28px}}
@media(max-width:980px){:root{--header-h:68px}.site-header{flex-wrap:wrap;gap:10px;padding-top:14px;padding-bottom:14px;backdrop-filter:none}.brand{width:210px;flex-basis:210px}.site-nav{width:100%;flex-wrap:wrap;gap:8px 22px;font-size:12px}.site-nav .nav-contact{padding:5px 12px}.menu-ready .site-header{height:var(--header-h);min-height:var(--header-h);flex-wrap:nowrap;padding-top:0;padding-bottom:0}.menu-ready .menu-toggle{display:block;position:relative;z-index:2}.menu-ready .site-nav{position:fixed;inset:var(--header-h) 0 0;width:auto;height:calc(100svh - var(--header-h));background:var(--paper);display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start;padding:36px var(--pad);gap:8px;overflow-y:auto;font:400 29px/1.5 "Songti SC",serif;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px);transition:opacity 220ms ease,transform 220ms ease,visibility 220ms}.menu-ready .site-nav.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:none}.menu-ready .site-nav a{padding:14px 0;white-space:normal}.menu-ready .site-nav a::after{display:none}.menu-ready .site-nav .nav-contact{margin-top:22px;padding:14px 20px;font-family:inherit;font-size:24px}.menu-open .menu-toggle>span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-open .menu-toggle>span:nth-child(2){transform:translateY(-3.5px) rotate(-45deg)}.manifesto{grid-template-columns:1fr 2.5fr}.manifesto-aside{grid-column:2;padding-top:0}.manifesto-aside dl{display:flex;gap:24px}.manifesto-aside dl>div{flex:1}.services{grid-template-columns:1fr 1.2fr;gap:40px}.services>.section-number{grid-column:1/-1}.designer{gap:50px}.site-footer{grid-template-columns:1fr 1fr}.site-footer nav{justify-content:flex-end}.footer-legal{grid-column:1/-1;text-align:left;display:flex;gap:20px;align-items:center;flex-wrap:wrap}.footer-wechat{margin-top:0!important}.project-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.project-introduction{gap:35px}.content-section{grid-template-columns:.6fr 1.1fr 1.4fr;gap:25px}.designer-work-list>a{gap:20px}.gallery-expand{opacity:1}.project-feature img{min-height:0;height:65vw}}
@media(max-width:680px){:root{--pad:22px}.brand{width:188px;flex-basis:188px;min-width:0}.hero{min-height:calc(100svh - var(--header-h))}.hero-copy{padding-top:68px;padding-bottom:104px;min-height:calc(100svh - var(--header-h))}.hero h1{font-size:clamp(64px,17.9vw,108px);letter-spacing:.015em}.hero h1 span{font-size:16px;margin-top:18px}.hero-tagline{font-size:26px;margin-top:34px}.hero-intro{font-size:11px;letter-spacing:.09em;margin-bottom:24px}.hero-copy .eyebrow{font-size:10px;margin-bottom:23px}.hero-caption{bottom:24px;font-size:10px}.hero-media{object-position:52% center}.hero-shade{background:linear-gradient(90deg,rgba(13,14,11,.54),rgba(13,14,11,.16)),linear-gradient(0deg,rgba(13,14,11,.56),transparent 70%)}.hero-actions{gap:26px}.section-pad{padding-top:80px;padding-bottom:80px}.manifesto{grid-template-columns:1fr;gap:28px}.manifesto h2{font-size:42px}.manifesto-aside{grid-column:auto;margin-top:8px}.manifesto-aside dl{flex-direction:column;gap:0}.manifesto-aside dl>div{padding:12px 0;display:flex;justify-content:space-between;gap:20px;align-items:baseline}.manifesto-aside dd{font-size:16px}.manifesto .body-copy{font-size:14px}.section-heading{align-items:flex-start;flex-direction:column;gap:28px;margin-bottom:36px}.section-heading h2{font-size:clamp(34px,9vw,48px)}.project-grid{grid-template-columns:1fr;gap:34px}.project-card--wide{grid-row:auto}.project-card--wide img{aspect-ratio:4/5}.project-card:not(.project-card--wide) img{aspect-ratio:4/4.5}.project-meta h3{font-size:27px}.services{grid-template-columns:1fr;gap:32px}.services>.section-number{grid-column:auto}.services-intro h2{font-size:45px}.services-intro>p:last-child{margin-top:23px}.service-list a{padding:17px 0;min-height:65px;gap:15px}.service-list strong{font-size:23px}.designer{grid-template-columns:1fr;gap:42px}.designer h2{font-size:43px}.designer-copy>p:not(.eyebrow){font-size:14px;margin:25px 0 20px}.contact{grid-template-columns:1fr;gap:42px;padding-top:78px;padding-bottom:70px}.contact h2{font-size:clamp(45px,12.5vw,70px)}.contact-action>a{font-size:25px}.site-footer{grid-template-columns:1fr;gap:25px;padding-top:40px;padding-bottom:36px}.site-footer nav{justify-content:flex-start;gap:28px}.footer-legal{grid-column:auto;display:block}.footer-wechat{margin-top:8px!important}.footer-brand{width:210px}.breadcrumbs{margin-bottom:48px;font-size:10px}.page-hero{min-height:56svh;padding-top:28px;padding-bottom:55px}.page-hero h1{font-size:clamp(49px,13vw,74px)}.page-hero>p:last-child{font-size:14px;margin-top:28px;margin-left:0}.page-hero--dark h1{font-size:clamp(36px,9.7vw,58px)}.project-heading{min-height:auto}.project-heading h1{font-size:clamp(39px,10.7vw,60px)}.catalog-section{padding-bottom:80px}.catalog-controls{padding-top:18px;padding-bottom:27px;gap:5px 20px}.filter-label{width:100%}.filter-buttons{flex-basis:100%;gap:5px 20px}.filter-count{margin-top:6px}.project-catalog{grid-template-columns:1fr;gap:36px}.catalog-card img{aspect-ratio:4/4.5}.catalog-card h2{font-size:27px}.project-introduction{grid-template-columns:1fr;margin-top:28px;gap:26px}.project-introduction dl{gap:25px 45px}.project-introduction p{font-size:14px}.project-feature img{height:105vw;object-fit:cover}.project-feature figcaption{bottom:15px;left:var(--pad);right:auto;font-size:9px}.gallery-section{padding-top:55px;padding-bottom:60px}.gallery-heading{display:block;margin-bottom:28px}.gallery-heading h2{font-size:29px}.gallery-heading p{font-size:11px;margin-top:10px}.gallery-grid{grid-template-columns:1fr;gap:28px}.gallery-figure figcaption{padding-top:10px}.project-pagination{grid-template-columns:1fr 1fr;gap:25px;padding-top:30px;padding-bottom:50px}.project-pagination .all-projects{grid-row:2;grid-column:1/-1;justify-self:center;padding:10px 24px}.project-pagination strong{font-size:21px}.content-section{grid-template-columns:1fr;padding-top:43px;padding-bottom:43px;gap:24px}.content-section h2{font-size:35px}.content-section ul{margin-top:22px}.service-note{text-align:left}.service-note h2{font-size:34px}.service-note>p:not(.eyebrow){margin:25px 0}.designer-editorial{grid-template-columns:1fr;gap:35px}.designer-editorial h2{font-size:40px}.designer-editorial p:not(.eyebrow){font-size:14px;margin-top:25px}.designer-works{padding-top:0}.designer-work-list>a{grid-template-columns:25px 1fr 20px;gap:14px;padding:22px 0}.designer-work-list h3{font-size:26px}.designer-work-list span:nth-last-child(2){display:none}.contact-page{grid-template-columns:1fr;gap:60px;padding-top:28px}.contact-details dd{font-size:30px}.project-brief h2{font-size:39px}.contact-qr{margin-top:0}.dialog-toolbar,.dialog-navigation{padding:0 16px;gap:10px}.dialog-toolbar p{font-size:10px}.dialog-toolbar button{padding:7px 10px}.dialog-toolbar button span{margin-left:7px}.dialog-navigation{gap:20px}.dialog-navigation button{padding:8px 12px}.image-dialog[open]{grid-template-rows:62px minmax(0,1fr) 66px}.gallery-expand{font-size:10px;padding:5px 9px}}
@media(max-height:650px) and (min-width:681px){.hero-copy{padding-top:45px;padding-bottom:60px}.hero h1{font-size:clamp(70px,8vw,120px)}.hero-tagline{margin-top:22px}.hero-intro{margin-bottom:20px}.hero h1 span{margin-top:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal,.has-motion .reveal{opacity:1;transform:none}.hero-media{transform:none}}
.footer-legal .footer-wechat-link{display:inline;margin:0;text-decoration:underline;text-underline-offset:3px}.footer-legal>p+p{margin-top:5px}.contact-details .wechat-id{font-size:clamp(25px,3vw,38px);line-height:1.3}.contact-details .wechat-line>span:first-child{font-size:12px}.contact-details .copy-feedback{max-width:430px}
