@import url('./styles.css');
:root{--bg:#111413;--panel:#181d1b;--text:#eff1ec;--muted:#a7afa9;--accent:#b9d9c8;--line:#343d37;--font:"Segoe UI",Arial,"Microsoft YaHei",sans-serif}
html{scroll-padding-top:36px}body{line-height:1.8}body.modal-open{overflow:hidden}button{font:inherit;color:inherit;cursor:pointer}.wrap{max-width:1360px;padding-left:64px;padding-right:64px}.header{height:106px;max-width:1360px;padding:0 64px}.brand{gap:16px;font-weight:650;letter-spacing:.05em;line-height:1.45}.brand-mark{font-size:2.25rem;letter-spacing:-.09em;font-weight:500;color:var(--text)}.brand-sub{font-family:var(--font);letter-spacing:.08em}nav{gap:36px}nav a{padding:12px 0}.hero{grid-template-columns:.78fr 1.22fr;gap:56px;padding-top:80px;padding-bottom:112px}.hero-copy{min-width:0}.eyebrow{font-family:var(--font);font-size:0.75rem;letter-spacing:.14em;font-weight:500;color:var(--muted);margin-bottom:28px}h1{font-size:clamp(3.25rem,5.8vw,5.25rem);line-height:1.1;letter-spacing:-.055em;margin-bottom:32px;font-weight:400}h1 span{display:block;color:var(--text)}.hero-title{font-size:clamp(1.625rem,2.4vw,2.125rem);line-height:1.55;font-weight:500;letter-spacing:.01em}.intro{line-height:1.95}.hero-actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap}.button{min-height:48px;font-weight:500}.primary{background:var(--text);color:var(--bg);border-color:var(--text)}.primary:hover{background:var(--accent);border-color:var(--accent)}.text-link{font-size:0.875rem;border-bottom:1px solid var(--line);padding:8px 0}.text-link:hover{color:var(--accent)}.hero-meta{font-family:var(--font);letter-spacing:.025em;margin-top:44px}.hero-meta span{color:#69766c}.hero-art{border:0;background:transparent;align-self:stretch;padding-top:8px;display:flex;flex-direction:column}.hero-art:before{display:none}.hero-art img{height:100%;min-height:448px;max-height:552px;object-position:46% 50%}.hero-art figcaption{position:static;padding:20px 0 0;background:transparent}.hero-art small{font:0.75rem var(--font);letter-spacing:.08em;color:var(--muted)}.hero-art strong{font-size:1.25rem;font-weight:500}.image-label{font-family:var(--font);color:var(--muted)}.section-heading{margin-bottom:42px}.section-heading .eyebrow{margin-bottom:16px}h2{font-size:2.125rem;line-height:1.5;letter-spacing:.01em;font-weight:500}.count{font-size:0.875rem;color:var(--muted);vertical-align:top;margin-left:18px;font-weight:400;letter-spacing:0}.work{padding-top:0;padding-bottom:100px}.projects{display:grid;grid-template-columns:1fr 1fr;gap:64px 36px}.project-card{min-width:0}.project-card.featured{grid-column:1/-1;display:grid;grid-template-columns:1.33fr 1fr;gap:48px;padding-bottom:56px;border-bottom:1px solid var(--line)}.project-image{position:relative;overflow:hidden;background:var(--panel)}.project-image img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;transition:transform .45s ease}.featured .project-image img{height:100%;min-height:336px;object-position:center}.project-card:hover .project-image img{transform:scale(1.025)}.project-image-number{position:absolute;top:16px;left:16px;padding:2px 10px;background:rgba(17,20,19,.88);color:var(--text);font-size:0.75rem}.project-caption{position:absolute;bottom:12px;right:12px;background:rgba(17,20,19,.86);font-size:0.75rem;padding:3px 9px;color:var(--text)}.project-copy{padding-top:24px}.featured .project-copy{padding-top:20px;align-self:center}.project-category{font-size:0.75rem;letter-spacing:.09em;color:var(--muted);margin:0 0 12px}.project-copy h3{font-size:1.75rem;font-weight:500;line-height:1.5;letter-spacing:.01em;margin:0 0 6px}.project-subtitle{font-size:1rem;margin:0 0 20px;color:#d4dcd5}.project-summary{font-size:1rem;margin:0 0 24px;color:var(--muted);max-width:460px}.tags{list-style:none;display:flex;gap:8px;flex-wrap:wrap;margin:0 0 28px;padding:0}.tags li{font-size:0.75rem;padding:3px 10px;border:1px solid var(--line);color:var(--muted)}.project-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:18px;border-top:1px solid var(--line)}.project-bottom>span{font-size:0.75rem;color:var(--muted)}.project-open{border:0;background:transparent;padding:8px 0;font-size:0.875rem;border-bottom:1px solid var(--muted);min-height:44px;white-space:nowrap}.project-open:hover{color:var(--accent);border-color:var(--accent)}.practice{padding-top:76px;padding-bottom:86px;border-top:1px solid var(--line)}.practice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.practice-grid article{border-top:1px solid var(--line);padding-top:24px}.practice-number{font-size:0.75rem;color:var(--muted)}.practice-grid h3{font-size:1.375rem;font-weight:500;margin:22px 0 16px}.practice-grid p{color:var(--muted);font-size:1rem;margin:0 0 24px;max-width:340px}.tool-list{display:flex;gap:14px;flex-wrap:wrap;font-size:0.75rem;color:var(--muted)}.tool-list span{border-left:1px solid var(--line);padding-left:14px}.method{display:grid;grid-template-columns:1fr 1.2fr;gap:72px;border-top:1px solid var(--line);padding-top:86px;padding-bottom:86px}.method-intro p:last-child{font-size:1rem;color:var(--muted);margin:24px 0 0}.method-steps{list-style:none;margin:0;padding:0}.method-steps li{display:flex;gap:30px;padding:24px 0;border-top:1px solid var(--line)}.method-steps li:first-child{padding-top:0;border-top:0}.method-steps li>span{font-size:0.75rem;color:var(--muted);padding-top:6px}.method-steps h3{font-size:1.125rem;font-weight:500;margin:0 0 6px}.method-steps p{font-size:1rem;color:var(--muted);margin:0}.about{display:grid;grid-template-columns:1fr 1.2fr;gap:72px;padding-top:86px;padding-bottom:100px}.about-content>p{margin:0 0 22px;color:var(--muted);font-size:1rem;max-width:580px}.about-content>p:first-child{color:var(--text);font-size:1.25rem}.about-note{padding-top:24px;margin-top:32px;border-top:1px solid var(--line)}.about-note span{display:block;color:var(--muted);font-size:0.75rem;margin-bottom:10px}.about-note strong{font-size:0.875rem;font-weight:500}.footer{align-items:center;padding-top:30px;padding-bottom:30px;gap:24px}.footer-separator{padding:0 12px;color:#667168}.footer-actions{display:flex;gap:24px;align-items:center}.footer-actions button{padding:8px 0;border:0;background:none;font-size:0.875rem;color:var(--muted);min-height:44px}.footer-actions a{font-size:0.875rem;padding:8px 0}.footer-actions button:hover,.footer-actions a:hover{color:var(--text)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
dialog{padding:0;width:min(1040px,calc(100% - 48px));max-height:90dvh;border:1px solid #526056;background:var(--bg);color:var(--text);overscroll-behavior:contain}dialog::backdrop{background:rgba(0,0,0,.78);backdrop-filter:blur(4px)}.dialog-toolbar{display:flex;align-items:center;justify-content:space-between;padding:14px 30px;background:var(--bg);position:sticky;top:0;border-bottom:1px solid var(--line);z-index:2}.dialog-toolbar>span{font-size:0.75rem;letter-spacing:.1em;color:var(--muted)}.dialog-toolbar button{background:none;border:0;font-size:0.875rem;min-height:44px;padding:6px 0}.dialog-toolbar button span{font-size:1.375rem;margin-left:12px}.dialog-heading{padding:48px 48px 32px}.dialog-heading .eyebrow{margin-bottom:16px}.dialog-heading h2{font-size:2.5rem}.dialog-subtitle{font-size:1rem;color:var(--muted);margin:12px 0 0}.dialog-subtitle span{margin:0 12px;color:#69766c}.dialog-hero{margin:0}.dialog-hero img{width:100%;height:auto}.dialog-hero figcaption{padding:12px 48px;font-size:0.75rem;color:var(--muted);border-bottom:1px solid var(--line)}.dialog-body{padding:40px 48px 48px}.dialog-body section{margin-bottom:40px}.dialog-body section .eyebrow{margin-bottom:12px}.dialog-body h3{font-size:1.5rem;font-weight:500;margin:0 0 16px}.dialog-body p{font-size:1rem;color:var(--muted);margin:0;line-height:1.95}.approach-list{list-style:none;padding:0;margin:24px 0 0}.approach-list li{display:flex;gap:24px;padding:22px 0;border-top:1px solid var(--line)}.approach-list li>span{font-size:0.75rem;color:var(--muted);padding-top:5px}.approach-list h4{font-size:1.125rem;font-weight:500;margin:0 0 8px}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:16px 0 44px}.gallery figure{margin:0;min-width:0}.gallery figure:only-child{grid-column:1/-1}.gallery img{width:100%;height:auto;background:var(--panel)}.gallery figcaption{font-size:0.75rem;color:var(--muted);padding-top:12px}.contribution{padding:24px 26px;background:var(--panel);border-left:2px solid var(--accent)}.dialog-body .credits{font-size:0.875rem;padding-top:24px;border-top:1px solid var(--line)}
@media(min-width:1600px){.hero{padding-top:96px;padding-bottom:128px}.hero-art img{min-height:510px}}
@media(max-width:1100px){.wrap{padding-left:36px;padding-right:36px}.header{padding:0 36px}.hero{gap:32px}.hero-art img{min-height:470px}.project-card.featured{gap:32px;grid-template-columns:1.1fr 1fr}.featured .project-image img{min-height:370px}.method,.about{gap:44px}.image-label{display:inline}}
@media(max-width:760px){html{scroll-padding-top:20px}.header{height:88px;padding:0 22px}.brand{gap:10px}.brand-mark{font-size:1.875rem}.brand-sub{font-size:0.75rem;letter-spacing:0}nav{gap:18px}.wrap{padding-left:24px;padding-right:24px}.hero{grid-template-columns:1fr;padding-top:54px;padding-bottom:70px;gap:42px}.hero .eyebrow{margin-bottom:24px}h1{font-size:4.75rem}h1 span{display:inline}.hero-title{font-size:1.75rem;line-height:1.6}.hero-title br{display:none}.hero-art{padding-top:0}.hero-art img{height:auto;min-height:0;max-height:none;aspect-ratio:1.5;object-position:center}.hero-art figcaption{padding-top:16px}.hero-meta{margin-top:32px}.section-heading{display:block;margin-bottom:32px}.section-heading>p{margin-top:16px}h2{font-size:1.75rem}.projects{grid-template-columns:1fr;gap:48px}.project-card.featured{display:block;padding-bottom:36px}.featured .project-image img{height:auto;min-height:0}.project-copy,.featured .project-copy{padding-top:24px}.work{padding-bottom:70px}.practice{padding-top:58px;padding-bottom:64px}.practice-grid{grid-template-columns:1fr;gap:36px}.practice-grid p{max-width:100%}.practice-grid h3{margin-top:16px}.method,.about{grid-template-columns:1fr;gap:40px;padding-top:64px;padding-bottom:64px}.method-steps li{gap:24px}.method-intro h2 br{display:none}.about-title h2 br{display:none}.about .eyebrow{margin-bottom:16px}.footer{flex-direction:column;align-items:start;gap:16px}.footer-actions{gap:28px}dialog{width:calc(100% - 24px);max-height:94dvh}.dialog-toolbar{padding:10px 20px}.dialog-heading{padding:32px 24px 24px}.dialog-heading h2{font-size:2rem}.dialog-subtitle span{margin:0 6px}.dialog-hero figcaption{padding:12px 24px}.dialog-body{padding:32px 24px}.gallery{grid-template-columns:1fr;gap:26px}.dialog-body h3{font-size:1.375rem}.contribution{padding:22px 20px}}
@media(max-width:430px){nav{gap:14px}nav a{font-size:0.875rem}.brand-sub{display:none}.brand-mark{font-size:1.75rem}.brand{font-size:0.875rem;gap:8px}.header{padding:0 20px}.wrap{padding-left:20px;padding-right:20px}h1{font-size:4rem}.hero .eyebrow{letter-spacing:.08em}.hero-actions{gap:20px}.hero-meta{font-size:0.75rem;gap:9px}.project-category{letter-spacing:.04em}.project-bottom{gap:12px}.project-bottom>span{max-width:60%}.image-label{font-size:0.75rem}.hero-art strong{font-size:1.125rem}.hero-art small{font-size:0.75rem;letter-spacing:.02em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project-image img{transition:none}}

