@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400;1,500&display=swap');
:root{--paper:#f7f6f2;--ink:#262725;--soft:#e9e6e0;--line:#d9d6cf;--muted:#777670;--accent:#a35258}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans','PingFang SC','Microsoft YaHei',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:5px}::selection{background:#e7ced1}.nav{position:relative;z-index:5;min-height:94px;padding:15px 5.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--paper)}.brand{display:flex;align-items:center;gap:13px}.brand-mark{font-family:Georgia,serif;font-size:33px;letter-spacing:-.19em;padding-right:9px;line-height:1}.brand-mark span{font-style:italic;color:var(--accent)}.brand-name{font-weight:600;font-size:12px;line-height:1.35;letter-spacing:.1em}.brand-name small{font-size:8px;font-weight:400;letter-spacing:.16em;color:var(--muted)}.nav-links{display:flex;gap:36px;font-size:10px;font-weight:600;letter-spacing:.17em}.nav-links a:hover,.footer a:hover{color:var(--accent)}.nav-year{font-size:9px;letter-spacing:.15em;color:var(--muted)}h1,h2,h3{font-family:'Playfair Display',Georgia,'Songti SC',serif;font-weight:400}h1 em,h2 em,h3 em{font-weight:400}.micro-label,.hero-overline,.section-kicker,.project-breadcrumb,.workmeta{font-size:10px;letter-spacing:.17em;font-weight:600}.home-hero{padding:52px 7% 75px;min-height:calc(100vh - 94px);display:flex;flex-direction:column;justify-content:space-between}.hero-overline{display:flex;justify-content:space-between;color:var(--muted)}.hero-title-wrap{position:relative;padding:45px 0}.home-hero h1{font-size:clamp(82px,11.7vw,205px);line-height:.98;letter-spacing:-.077em;margin:0;max-width:1200px}.home-hero h1 em{color:#9e8a94}.period{color:var(--accent)}.hero-orbit{position:absolute;right:6%;top:10%;font-size:clamp(60px,10vw,170px);color:#cfc6bd;font-weight:300}.hero-stamp{position:absolute;right:2%;bottom:4%;border:1px solid #bdb6af;width:92px;height:92px;border-radius:50%;display:grid;place-content:center;text-align:center;font-family:Georgia,serif;line-height:1.05;font-size:16px;transform:rotate(12deg);color:#9c727b}.hero-foot{display:flex;align-items:end;justify-content:space-between;gap:30px}.hero-foot p{font-size:13px;line-height:2.1;color:#77736f}.hero-stat{display:flex;align-items:end;gap:14px}.hero-stat b{font:normal 100px/.85 Georgia,serif;letter-spacing:-.08em}.hero-stat span{font-size:9px;letter-spacing:.17em;line-height:1.8;color:var(--muted)}.scroll-prompt{font-size:10px;letter-spacing:.15em}.scroll-prompt span{display:inline-block;margin-left:18px;font-size:22px}.featured-strip{display:grid;grid-template-columns:1.25fr .75fr;background:#ebe7e4;min-height:520px}.feature-image{overflow:hidden;max-height:700px}.feature-image img{width:100%;height:100%;object-fit:cover;display:block}.feature-copy{padding:12% 12%;display:flex;flex-direction:column;justify-content:center;align-items:start}.feature-copy h2{font-size:clamp(55px,5.3vw,100px);line-height:1.05;letter-spacing:-.055em;margin:40px 0}.feature-copy p{font-size:13px;color:var(--muted);line-height:2;max-width:340px}.feature-copy a,.contact-section a{font-size:11px;letter-spacing:.14em;border-bottom:1px solid currentColor;padding:18px 0 10px;margin-top:28px}.work-section,.about-section,.contact-section{padding:110px 7%}.section-kicker{display:flex;justify-content:space-between;border-top:1px solid #aaa7a0;padding-top:20px;color:var(--muted)}.work-header{display:flex;align-items:end;justify-content:space-between;gap:20px}.work-header h2,.about-grid h2,.contact-section h2{font-size:clamp(65px,8vw,138px);line-height:1;letter-spacing:-.07em;margin:75px 0 55px}.work-header h2 em,.about-grid h2 em,.contact-section h2 em{color:#a5909a}.work-header p{font-size:11px;letter-spacing:.15em;line-height:2;color:var(--muted);text-align:right}.filter-bar{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 48px}.filter{cursor:pointer;border:1px solid #d4d0c9;background:transparent;color:#77736e;padding:13px 21px;border-radius:100px;font-size:10px;letter-spacing:.12em}.filter sup{margin-left:6px;font-size:9px}.filter.active,.filter:hover{background:#292925;border-color:#292925;color:#fff}.workgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:76px 3.5%}.workcard{display:block;min-width:0}.workcard[hidden]{display:none}.workcard:nth-child(3n+2){padding-top:65px}.workimage{position:relative;overflow:hidden;background:#e7e3de}.workimage img{width:100%;height:100%;aspect-ratio:1.35;object-fit:cover;object-position:center;display:block;transition:transform .7s cubic-bezier(.2,.8,.2,1)}.workcard:nth-child(-n+2) .workimage img{aspect-ratio:1.12;object-position:center 30%}.workcard:hover .workimage img{transform:scale(1.035)}.work-open{position:absolute;right:15px;bottom:15px;background:#f7f6f2;padding:13px 16px;font-size:10px;letter-spacing:.1em;opacity:0;transform:translateY(8px);transition:.25s}.workcard:hover .work-open,.workcard:focus-visible .work-open{opacity:1;transform:none}.workmeta{display:flex;justify-content:space-between;color:var(--muted);margin:19px 0 12px}.workcard h3{font-size:clamp(29px,3.2vw,56px);line-height:1.1;letter-spacing:-.045em;margin:0;overflow-wrap:anywhere}.work-cn{font-size:12px;color:var(--muted);margin:12px 0}.about-section{background:#eeece7}.about-grid{display:grid;grid-template-columns:1fr .75fr;gap:8%;align-items:center}.about-grid p{font-size:16px;line-height:2.15;color:#65635f;max-width:560px}.skill-list{display:flex;flex-wrap:wrap;gap:9px;margin-top:30px}.skill-list span{font-size:9px;letter-spacing:.09em;padding:12px 14px;border:1px solid #ccc7c0;border-radius:100px}.contact-section{text-align:center;min-height:550px}.contact-section h2{margin:45px 0 30px}.contact-section p{font-size:12px;color:var(--muted);line-height:2}.footer{border-top:1px solid var(--line);padding:48px 7%;display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-logo{font:34px Georgia,serif;letter-spacing:-.065em}.footer-logo span{font-size:11px;color:var(--accent)}.footer p{font-size:10px;line-height:2;letter-spacing:.1em;color:var(--muted)}.footer>a:last-child{font-size:10px;letter-spacing:.13em}
/* Project detail refinements */
.hero{display:none}.section{padding:90px 7% 115px}.project-breadcrumb{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:20px;color:var(--muted)}.project-breadcrumb a:hover{color:var(--accent)}.refined-intro{padding:50px 0 55px}.refined-intro h2{font-size:clamp(55px,7vw,118px);letter-spacing:-.06em;line-height:1.02;margin:30px 0;overflow-wrap:anywhere}.refined-intro .chinese{font-size:clamp(16px,2vw,24px)}.overline{color:var(--accent);font-size:11px;letter-spacing:.2em}.desc,.section-lead{color:var(--muted);line-height:2;font-size:14px}.poster-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(230px,.65fr);gap:6%;align-items:center}.poster{background:#ebe8e2;padding:22px;display:flex;justify-content:center}.poster img{display:block;width:100%;max-height:850px;object-fit:contain;box-shadow:0 15px 45px #24242415}.poster-side h3{font-size:clamp(45px,5vw,80px);line-height:1.1;letter-spacing:-.05em}.poster-side p{font-size:13px;color:var(--muted);line-height:2}.redline{display:block;width:50px;height:2px;background:var(--accent)}.vertical-note{writing-mode:vertical-rl;color:#999;font-size:10px;letter-spacing:.18em}.section-heading{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #aaa7a0;padding-top:18px;font-size:10px;letter-spacing:.17em}.video-section{background:#eae8e3}.video-copy{display:flex;justify-content:space-between;align-items:end;gap:25px}.video-copy h2,.section-title{font-size:clamp(55px,7vw,110px);letter-spacing:-.065em;margin:55px 0 35px;line-height:1.08}.video-copy p{font-size:12px;color:var(--muted)}.player{background:#252526;display:flex;justify-content:center;align-items:center;min-height:360px;padding:35px}.player video{display:block;max-width:100%;max-height:78vh;aspect-ratio:9/16;background:#121212}.player video.landscape-film{width:100%;height:auto;aspect-ratio:16/9;max-height:75vh;object-fit:contain}.image-zoom{display:block;width:100%;text-align:left;cursor:zoom-in;background:#e9e6e0;border:0;padding:18px}.image-zoom img{display:block;width:100%;height:auto}.image-zoom span{display:block;padding:15px 0 0;font-size:10px;letter-spacing:.15em}.canvas-section{background:#eeece7}.next{text-align:center;padding:110px 7% 125px}.next>span{font-size:10px;letter-spacing:.2em;color:var(--accent)}.next h2{font-size:clamp(46px,6vw,95px);letter-spacing:-.05em;margin:25px 0}.next h2 i{font-family:Arial,sans-serif;font-style:normal;font-size:.5em}.next p{font-size:11px;letter-spacing:.12em;color:var(--muted)}dialog{border:0;background:#181818;padding:48px 20px 20px;max-width:96vw;max-height:95vh}dialog::backdrop{background:#080808e8}dialog img{max-width:90vw;max-height:80vh;object-fit:contain}#close{position:absolute;right:16px;top:6px;background:none;border:0;color:#fff;font-size:34px;cursor:pointer}
@media(max-width:900px){.nav-year{display:none}.home-hero{min-height:700px}.hero-stamp{display:none}.featured-strip{grid-template-columns:1fr 1fr}.feature-copy{padding:8%}.feature-copy h2{font-size:50px}.about-grid{grid-template-columns:1fr;gap:0}.about-grid h2{margin-bottom:20px}.workcard:nth-child(3n+2){padding-top:30px}}
@media(max-width:650px){.nav{min-height:70px;padding:10px 5%}.nav-links{gap:15px;font-size:9px}.brand-name{display:none}.home-hero{min-height:610px;padding:40px 6% 55px}.hero-overline span:last-child{display:none}.home-hero h1{font-size:clamp(62px,12.5vw,90px)}.hero-title-wrap{padding:70px 0}.hero-orbit{font-size:75px;top:3%;right:4%}.hero-foot{align-items:start;flex-wrap:wrap}.hero-stat b{font-size:72px}.scroll-prompt{width:100%}.featured-strip{grid-template-columns:1fr}.feature-image{height:280px}.feature-copy{padding:55px 7%}.feature-copy h2{margin:25px 0}.work-section,.about-section,.contact-section{padding:75px 6%}.work-header{display:block}.work-header h2,.about-grid h2,.contact-section h2{font-size:clamp(60px,12vw,90px);margin:55px 0 25px}.work-header p{text-align:left;margin-bottom:30px}.workgrid{grid-template-columns:1fr;gap:45px}.workcard:nth-child(3n+2){padding-top:0}.workimage img,.workcard:nth-child(-n+2) .workimage img{aspect-ratio:1.35}.work-open{opacity:1;transform:none;font-size:9px;padding:10px}.section-kicker{font-size:9px}.footer{padding:38px 6%;flex-wrap:wrap}.footer p{order:3;width:100%}.section{padding:60px 6% 80px}.project-breadcrumb{font-size:9px}.refined-intro{padding:35px 0}.refined-intro h2{font-size:clamp(45px,10vw,76px)}.poster-layout,.rain-poster{grid-template-columns:1fr;gap:25px}.poster{padding:10px}.poster-side{min-height:unset;padding:10px 0 30px}.poster-side h3{font-size:50px}.vertical-note{display:none}.video-copy{display:block}.player{padding:12px;min-height:240px}.video-copy h2,.section-title{font-size:clamp(49px,10vw,76px)}.image-zoom{padding:8px}.next{padding:80px 6%}.next h2{font-size:46px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Verification refinements */
.refined-intro h1{font-family:'Playfair Display',Georgia,'Songti SC',serif;font-weight:400;font-size:clamp(55px,7vw,118px);letter-spacing:-.06em;line-height:1.02;margin:30px 0;overflow-wrap:anywhere}
@media(max-width:650px){.refined-intro h1{font-size:clamp(45px,10vw,76px)}}
@media(hover:none){.work-open{opacity:1;transform:none}}

/* PORTFOLIO V3 — EDITORIAL REFINED HOMEPAGE */
.work-section{padding-top:112px;padding-bottom:125px}
.work-header{margin-bottom:85px}.work-header h2{margin-bottom:0}.work-header p{padding-bottom:12px}
.portfolio-group{margin-top:76px}.portfolio-group+.portfolio-group{margin-top:140px}
.portfolio-group-head{display:grid;grid-template-columns:1fr auto;align-items:end;border-top:1px solid #bbb5ad;padding-top:21px;margin-bottom:38px;gap:10px 30px}
.portfolio-group-meta{grid-column:1/-1;color:#8b817b;font-size:10px;font-weight:600;letter-spacing:.18em}
.portfolio-group-title{font-size:clamp(56px,7vw,112px);line-height:1;letter-spacing:-.065em;margin:20px 0 0;font-weight:400}
.portfolio-group-title em{color:#a5909a;font-weight:400}
.portfolio-group-desc{max-width:265px;font-size:13px;line-height:1.9;color:#77736f;margin:0 0 9px}
.refined-workgrid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:4%;row-gap:72px}
.refined-workgrid .workcard:nth-child(n){padding-top:0}
.refined-workgrid .workimage{aspect-ratio:1.52;overflow:hidden}
.refined-workgrid .workimage img,.refined-workgrid .workcard:nth-child(-n+2) .workimage img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center}
.refined-workgrid .workmeta{margin:17px 0 11px}
.refined-workgrid .workcard h3{font-size:clamp(29px,3vw,47px);line-height:1.12;max-width:95%}
.refined-workgrid .work-cn{margin-top:10px}
.refined-workgrid .workcard:last-child:nth-child(odd){grid-column:1 / 2}
@media(max-width:900px){.portfolio-group+.portfolio-group{margin-top:105px}.portfolio-group-title{font-size:clamp(54px,8vw,85px)}.portfolio-group-desc{max-width:230px}}
@media(max-width:650px){.work-header{margin-bottom:48px}.portfolio-group{margin-top:55px}.portfolio-group+.portfolio-group{margin-top:95px}.portfolio-group-head{grid-template-columns:1fr;gap:8px;margin-bottom:28px}.portfolio-group-title{font-size:clamp(54px,12vw,78px);margin:15px 0}.portfolio-group-desc{max-width:none}.refined-workgrid{grid-template-columns:1fr;row-gap:42px}.refined-workgrid .workcard:last-child:nth-child(odd){grid-column:auto}.refined-workgrid .workimage{aspect-ratio:1.45}.refined-workgrid .workcard h3{font-size:clamp(30px,8vw,44px)}}
