@font-face{font-family:Inter;src:url('/assets/Inter-400.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Inter;src:url('/assets/Inter-700.woff2') format('woff2');font-weight:700;font-display:swap}@font-face{font-family:Noto;src:url('/assets/NotoSansSC-400.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Noto;src:url('/assets/NotoSansSC-700.woff2') format('woff2');font-weight:700;font-display:swap}
:root{--ink:#111111;--soft:#636963;--line:#dde2dc;--accent:#294f3e;--accent-hover:#1b3a2b;--bg:#f7f8f5;--white:#ffffff;--tint:#eaf0e8;--night:#24392c;--night-line:#607366;--pale:#c8d8cb;--focus:#a6c09b;--error:#923328;--veil:rgba(17,17,17,.62);--max:1360px;--space:88px;--font:Inter,'Segoe UI',Noto,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px;color-scheme:light}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.2;font-weight:400;letter-spacing:-.045em}h1{font-size:clamp(40px,5vw,76px)}h2{font-size:clamp(30px,3.3vw,48px)}h3{font-size:24px}p{max-width:72ch}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}img{display:block;width:100%;object-fit:cover}button,a,summary{touch-action:manipulation}button{color:inherit}button:active,.button:active{transform:translateY(1px)}[hidden]{display:none!important}.wrap{width:min(calc(100% - 112px),var(--max));margin-inline:auto}.section{padding-block:var(--space)}.skip{position:absolute;top:-80px;left:24px;z-index:1000;background:var(--white);padding:12px}.skip:focus{top:12px}:where(a,button,summary,input,select,textarea):focus-visible{outline:3px solid var(--focus);outline-offset:4px}
header{position:relative;background:var(--bg);z-index:30;border-bottom:1px solid var(--line)}.nav-shell{height:88px;display:flex;align-items:center;gap:40px}.wordmark{display:inline-flex;align-items:center;gap:3px;font-size:27px;font-weight:700;letter-spacing:-.06em;line-height:1}.brand-dot{width:6px;height:6px;background:var(--accent);margin:17px 0 0 2px}.desktop-nav{display:flex;gap:30px;margin-left:auto;align-items:center;font-size:14px}.desktop-nav a{padding:14px 0;position:relative}.desktop-nav a:hover{color:var(--accent)}.desktop-nav a:hover:after{content:'';height:1px;background:var(--accent);bottom:8px;left:0;right:0;position:absolute}.nav-actions{display:flex;align-items:center;gap:24px}.button{display:inline-flex;min-height:50px;align-items:center;justify-content:center;gap:28px;background:var(--accent);color:var(--white);padding:13px 22px;border:1px solid var(--accent);font-size:14px;font-weight:400;transition:background .18s,color .18s}.button:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.button.small{min-height:44px;padding:10px 20px}.button.outline{color:var(--accent);background:transparent}.button.outline:hover{background:var(--tint)}.button.light{background:var(--white);color:var(--night);border-color:var(--white)}.button.light:hover{background:var(--tint)}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:44px;border:0;background:none;padding:4px 0;font-size:14px}.text-link span{font-size:21px;font-weight:400}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.languages{position:relative;font-size:13px}.languages summary{display:flex;gap:8px;align-items:center;cursor:pointer;list-style:none;min-height:44px}.languages summary::-webkit-details-marker{display:none}.languages svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.4}.languages>div{position:absolute;right:0;top:54px;min-width:156px;background:var(--white);border:1px solid var(--line);padding:8px;z-index:50}.languages a{display:block;padding:10px 12px;min-height:44px}.languages a:hover,.languages a[aria-current]{background:var(--tint)}.menu-button{display:none;border:0;background:none;width:44px;height:44px;padding:10px}.menu-button span{display:block;height:1px;background:var(--ink);margin:6px 0}.mobile-nav{padding-block:12px 24px}.mobile-nav a{display:block;min-height:48px;padding:12px 0}
.hero{padding-top:58px}.hero-intro{display:grid;grid-template-columns:1.8fr 1fr;gap:48px;align-items:end;padding-bottom:44px}.hero-intro h1{max-width:20ch}.hero-intro>div{padding-bottom:4px;max-width:365px}.hero-intro p{color:var(--soft);line-height:1.85;margin-bottom:14px}.hero-image img{height:clamp(420px,42vw,670px);object-position:center 61%}.hero-image figcaption{display:flex;justify-content:space-between;gap:24px;font-size:12px;color:var(--soft);padding-top:12px}.statement{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-block:86px 90px;border-bottom:1px solid var(--line)}.statement h2{max-width:15ch}.statement p{color:var(--soft);font-size:16px;line-height:1.9;align-self:center}.section-head{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:34px}.section-head h2{max-width:22ch}.section-head p{max-width:420px;color:var(--soft);font-size:14px}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:32px}.filters button{border:1px solid var(--line);background:transparent;padding:9px 22px;min-height:44px;font-size:13px;transition:background .18s,color .18s}.filters button:hover{background:var(--tint)}.filters button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--white)}.home-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:28px;row-gap:44px}.image-button{position:relative;display:block;width:100%;padding:0;border:0;background:var(--tint);overflow:hidden;text-align:left}.image-button img{transition:transform .3s;aspect-ratio:1.5;height:auto}.image-button:hover img{transform:scale(1.025)}.image-label{position:absolute;bottom:12px;left:14px;background:var(--white);padding:4px 9px;font-size:11px;line-height:1.5;color:var(--soft)}.round-arrow{position:absolute;right:18px;bottom:18px;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;background:var(--white);color:var(--accent);font-size:20px}.card-text{padding-top:20px}.card-text p{font-size:14px;color:var(--soft);margin-top:10px}.card-text>.text-link{margin-top:8px}.places{background:var(--tint)}.scene-tabs{display:flex;gap:32px;border-bottom:1px solid var(--line);margin-bottom:32px}.scene-tabs button{padding:12px 0 16px;border:0;background:none;color:var(--soft);position:relative;min-height:48px}.scene-tabs button[aria-selected=true]{color:var(--ink)}.scene-tabs button[aria-selected=true]:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--accent)}.scene-panel{display:grid;grid-template-columns:1.45fr 1fr;gap:72px;align-items:center}.scene-image img{aspect-ratio:1.5;height:auto}.scene-image p{font-size:11px;color:var(--soft);margin-top:12px}.scene-copy{padding-right:28px}.scene-copy h3{font-size:36px}.scene-copy p{margin:20px 0 28px;color:var(--soft)}.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.case .source-label{margin-top:18px}.source-label{font-size:12px;color:var(--accent);margin-bottom:10px}.case h3{font-size:26px;margin-bottom:8px}.case p:not(.source-label){color:var(--soft);font-size:14px}.gallery-teaser{margin-top:46px;border-top:1px solid var(--line);padding-top:32px;display:flex;align-items:center;justify-content:space-between;gap:40px}.gallery-teaser h3{font-size:21px;margin-bottom:12px}.gallery-teaser p{font-size:12px;color:var(--soft);max-width:680px}.gallery-teaser .button{flex-shrink:0}.method{border-block:1px solid var(--line)}.step-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:38px}.step-number{display:block;font-size:13px;color:var(--soft);margin-bottom:25px;font-variant-numeric:tabular-nums}.step-grid h3{font-size:21px;margin-bottom:14px}.step-grid p{font-size:14px;color:var(--soft);line-height:1.8}.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.faq-layout>h2{max-width:13ch}.faq{border-bottom:1px solid var(--line)}.faq:first-child{border-top:1px solid var(--line)}.faq summary{padding:22px 0;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:24px}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:25px;line-height:1}.faq[open] summary span{transform:rotate(45deg)}.faq>p{padding:0 30px 22px 0;color:var(--soft);font-size:14px}
.brief{background:var(--night);color:var(--white)}.brief-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:90px}.brief h2{font-size:clamp(35px,3.2vw,48px);max-width:17ch}.brief-layout>div>p{margin-top:22px;color:var(--pale)}.brief-layout>div>.brief-disclosure{font-size:12px;max-width:310px;margin-top:42px;line-height:1.8}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.brief label{display:block;font-size:12px;line-height:1.5}.brief input,.brief select,.brief textarea{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid var(--night-line);border-radius:0;color:var(--white);padding:12px 2px;min-height:48px;outline-offset:3px;margin-bottom:16px;font-size:14px}.brief select option{color:var(--ink);background:var(--white)}.brief input::placeholder,.brief textarea::placeholder{color:var(--pale)}.brief input[type=number]{font-variant-numeric:tabular-nums}.brief textarea{resize:vertical;margin-top:4px}.form-actions{display:flex;align-items:center;gap:26px;margin-top:20px}.form-actions .text-link{color:var(--pale);font-size:12px}#brief-status{font-size:13px;color:var(--pale);min-height:24px;margin-top:16px}.footer-top{padding-block:48px 36px;display:flex;align-items:center;justify-content:space-between;gap:35px}.footer-top>p{font-size:14px;color:var(--soft);margin-left:auto;margin-right:auto}.footer-bottom{display:flex;gap:48px;justify-content:space-between;border-top:1px solid var(--line);padding:22px 0 32px;font-size:11px;color:var(--soft)}.footer-bottom>p{max-width:650px;text-align:right}
dialog{border:0;padding:0;background:var(--bg);color:var(--ink);max-width:900px;width:calc(100% - 48px);max-height:90vh;overflow:auto}dialog::backdrop{background:var(--veil)}.dialog-close{position:sticky;float:right;top:12px;right:12px;margin:12px 12px -56px 0;width:44px;height:44px;border:1px solid var(--line);background:var(--white);color:var(--ink);font-size:26px;z-index:2}.dialog-close:hover{background:var(--tint)}dialog>img{max-height:52vh;object-fit:contain;background:var(--tint)}.dialog-content{padding:32px 40px 40px}.dialog-content>h2{font-size:32px;max-width:100%;margin-bottom:16px}.dialog-content>p{margin-bottom:16px;font-size:14px;color:var(--soft)}.dialog-content>h3{font-size:20px;margin-top:22px}.dialog-content ul{margin:14px 0 26px;padding-left:20px;font-size:14px;color:var(--soft)}.dialog-content li{margin:7px 0}.dialog-links{display:flex;gap:30px;flex-wrap:wrap}
.gallery-heading{padding-top:38px}.gallery-heading h1{margin:32px 0 22px;font-size:56px}.gallery-heading>p{max-width:800px;color:var(--soft)}.gallery-note{font-size:12px;margin-top:20px!important}.gallery-section{padding-block:36px 88px}.gallery-tools{display:flex;justify-content:space-between;align-items:start;gap:32px}.gallery-tools>.filters{margin-bottom:24px}.search-label{min-width:260px;max-width:340px;font-size:12px;flex:1}.search-label>span{position:absolute;width:1px;height:1px;overflow:hidden}.search-label input{width:100%;min-height:44px;border:1px solid var(--line);background:var(--white);padding:10px 12px;border-radius:0}.gallery-result{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--soft);margin:4px 0 20px}.gallery-result>a{min-height:44px;display:flex;align-items:center}.gallery-result>p{display:flex;align-items:center}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 24px}.gallery-card button{padding:0;border:0;width:100%;background:var(--tint)}.gallery-card img{aspect-ratio:1.5;height:auto}.gallery-card h2{font-size:16px;letter-spacing:0;line-height:1.5;margin-top:12px}.gallery-card p{font-size:11px;color:var(--soft);margin-top:6px}.gallery-card .image-button{min-height:100px}.gallery-card .round-arrow{width:34px;height:34px;bottom:12px;right:12px}.gallery-empty{padding:50px;text-align:center;background:var(--tint)}.gallery-empty>p{margin:0 auto 24px}.gallery-section>#gallery-more{display:flex;margin:40px auto 0}img.is-error{object-fit:contain;border:1px solid var(--line);min-height:200px;color:var(--soft)}
@media(min-width:1500px){.hero-intro h1{font-size:80px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.nav-shell{gap:26px}.desktop-nav{gap:20px}.nav-actions{gap:18px}.nav-brief{display:none}.hero-intro{grid-template-columns:1.7fr 1fr}.statement{gap:8%}.scene-panel{gap:40px}.brief-layout{gap:48px}.faq-layout{gap:48px}.gallery-tools{flex-direction:column;gap:0}.search-label{width:100%;max-width:100%;margin-bottom:20px}.gallery-teaser{align-items:start}.gallery-teaser>.button{max-width:260px}}
@media(max-width:720px){:root{--space:56px}.wrap{width:calc(100% - 40px)}h1{font-size:41px}h2{font-size:30px}h3{font-size:22px}.nav-shell{height:72px;gap:14px}.wordmark{font-size:24px}.brand-dot{margin-top:14px;width:5px;height:5px}.desktop-nav{display:none}.nav-actions{margin-left:auto;gap:16px}.menu-button{display:block}.languages{font-size:12px}.languages>div{right:-16px}.hero{padding-top:35px}.hero-intro{display:block;padding-bottom:24px}.hero-intro h1{max-width:100%;font-size:40px;line-height:1.24}.hero-intro>div{margin-top:23px;max-width:100%;padding:0}.hero-intro p{font-size:14px;margin-bottom:6px}.hero-image img{height:345px;object-position:62% 60%}.hero-image figcaption{display:block;font-size:10px;line-height:1.7;padding-top:10px}.hero-image figcaption span{display:block}.statement{display:block;padding-block:48px}.statement h2{max-width:100%;margin-bottom:23px}.statement p{font-size:14px}.section-head{display:block;margin-bottom:24px}.section-head h2{max-width:100%}.section-head>p{margin-top:16px;font-size:13px}.filters{gap:7px;margin-bottom:24px}.filters button{padding:9px 16px;font-size:12px}.home-grid{display:block}.home-card{margin-bottom:32px}.home-card:last-child{margin-bottom:0}.image-label{font-size:10px}.card-text{padding-top:16px}.card-text p{font-size:13px;margin-top:8px}.card-text .text-link{font-size:12px}.scene-tabs{gap:18px;flex-wrap:wrap;margin-bottom:22px}.scene-tabs button{font-size:13px;text-align:left;max-width:45%;padding-block:8px}.scene-panel{display:block}.scene-copy{padding:24px 0 0}.scene-copy h3{font-size:28px}.scene-copy p{margin:16px 0 22px;font-size:14px}.scene-image p{font-size:10px}.case-grid{display:block}.case{margin-bottom:32px}.case h3{font-size:24px}.case .source-label{font-size:11px}.gallery-teaser{display:block;margin-top:20px;padding-top:24px}.gallery-teaser h3{font-size:20px}.gallery-teaser>.button{margin-top:24px;max-width:100%}.step-grid{grid-template-columns:1fr 1fr;gap:32px 25px}.step-number{margin-bottom:14px}.step-grid h3{font-size:19px;line-height:1.35}.step-grid p{font-size:12px}.faq-layout{display:block}.faq-layout>h2{margin-bottom:28px;max-width:100%}.faq summary{font-size:14px;padding:19px 0}.faq>p{font-size:13px}.brief-layout{display:block}.brief h2{font-size:36px;max-width:100%}.brief-layout>div>p{margin-top:18px;font-size:14px}.brief-layout>div>.brief-disclosure{font-size:11px;margin-top:24px;max-width:100%}.brief form{margin-top:34px}.form-grid{gap:12px 18px}.brief input,.brief select{font-size:13px}.brief label{font-size:11px}.form-actions{gap:20px;flex-wrap:wrap}.form-actions .button{font-size:12px;padding:12px 18px}.footer-top{padding-block:34px 26px;gap:22px;flex-wrap:wrap}.footer-top>p{margin:0;width:100%;order:3;font-size:12px}.footer-top>.text-link{margin-left:auto;font-size:12px}.footer-bottom{display:block;font-size:10px}.footer-bottom>p{text-align:left;margin-top:14px}dialog{width:calc(100% - 24px);max-height:92vh}.dialog-content{padding:24px}.dialog-content h2{font-size:26px}.dialog-content>p{font-size:13px}.gallery-heading{padding-top:26px}.gallery-heading h1{font-size:36px;margin-top:20px}.gallery-heading>p{font-size:13px}.gallery-heading>.gallery-note{font-size:11px}.gallery-grid{grid-template-columns:1fr 1fr;gap:24px 14px}.gallery-card h2{font-size:12px;line-height:1.6}.gallery-card p{font-size:10px}.gallery-card .round-arrow{width:28px;height:28px;right:6px;bottom:6px;font-size:16px}.gallery-tools .filters button{font-size:11px;padding:9px 11px}.gallery-result{font-size:11px;gap:16px}.gallery-empty{padding:30px 20px}.gallery-result>a{max-width:160px;text-align:right}.gallery-section{padding-bottom:50px}.search-label input{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(max-width:720px){html[lang=zh-CN] .hero-intro h1{font-size:35px}}
:root{--focus:var(--accent)}.brief :focus-visible{outline-color:var(--pale)}.case-load-status{font-size:12px;color:var(--error);margin-top:12px}
