:root{--paper:#f5f3ed;--ink:#242420;--muted:#65645e;--accent:#a4482a;--line:#cbc8be;--wash:#eae6dd;--serif:"Noto Serif CJK SC","Source Han Serif SC","Songti SC","SimSun",serif;--sans:"Microsoft YaHei","PingFang SC",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.8}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible,video:focus-visible{outline:3px solid var(--accent);outline-offset:5px}a:hover{color:var(--accent)}button:hover{background:var(--wash)}p,h1,h2,h3,h4,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:700;line-height:1.4}h4{font-size:16px;line-height:1.6}img{display:block;max-width:100%}.shell{width:min(1320px,calc(100% - 96px));margin-inline:auto}.site-header{display:flex;align-items:center;gap:26px;border-bottom:1px solid var(--line);min-height:78px}.wordmark{font-family:var(--serif);font-weight:bold;font-size:26px;white-space:nowrap}.header-position{font-size:12px;color:var(--muted)}nav{display:flex;gap:30px}.site-header nav{margin-left:auto;font-size:14px}.edition{font-size:12px;letter-spacing:.08em;background:var(--accent);color:white;padding:3px 16px}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:40px;padding-block:30px 36px;align-items:center}.eyebrow{font-size:12px;color:var(--muted);margin-bottom:18px;letter-spacing:.035em}.hero h1{font-size:clamp(32px,4.7vw,68px);letter-spacing:-.05em;line-height:1.35;white-space:nowrap}.intro{font-size:18px;line-height:1.9;max-width:510px;margin-top:22px}.hero-actions{display:flex;align-items:center;gap:27px;margin-top:28px;flex-wrap:wrap}.button{display:inline-flex;background:var(--accent);color:#fff;padding:10px 24px;gap:20px}.button:hover{background:#86391f;color:#fff}.text-link{border-bottom:1px solid var(--ink);padding:5px 0}.resume-pending{font-size:12px;color:var(--muted)}.location{font-size:12px;color:var(--muted);margin-top:26px}.hero-media{display:grid;grid-template-columns:1fr 1fr;gap:14px}.hero-frame img{width:100%;aspect-ratio:9/14;object-fit:cover}.hero-frame:last-child img{object-fit:contain;background:#d9d5ce}.hero-frame span{display:block;font-weight:600;margin-top:9px;font-size:14px}.hero-frame small{color:var(--muted);font-size:12px}.capabilities{display:grid;grid-template-columns:repeat(4,1fr);padding-block:32px;border-block:1px solid var(--line)}.capabilities article{display:flex;gap:18px;padding:0 26px;border-right:1px solid var(--line)}.capabilities article:first-child{padding-left:0}.capabilities article:last-child{border:0;padding-right:0}.cap-number{font-family:var(--serif);font-size:29px;line-height:1.2;color:var(--accent)}.capabilities h2{font-size:20px}.capabilities small{font-size:11px;color:var(--muted)}.capabilities p{font-size:13px;line-height:1.7;margin-top:8px}.work-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-block:45px 26px}.work-intro h2{font-size:32px}.work-intro nav{gap:21px;font-size:13px;flex-wrap:wrap}.work-intro nav span{color:var(--accent);margin-right:7px}.case{padding-block:40px;border-top:1px solid var(--line)}.case-split{display:grid;grid-template-columns:290px minmax(0,1fr);gap:54px;align-items:start}.case-split.reverse{grid-template-columns:minmax(0,1fr) 290px}.case-heading .eyebrow{margin-bottom:10px}.case-heading h2{display:flex;gap:23px;align-items:baseline;font-family:Georgia,var(--serif);font-size:40px;border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:13px}.case-no{font-weight:400;color:var(--accent);font-family:Georgia,serif}.case-heading h3{font-size:27px;margin-bottom:20px}.body-copy{max-width:780px;margin-bottom:22px}.metrics{display:flex;gap:40px;margin:25px 0}.metrics>div+div{border-left:1px solid var(--line);padding-left:40px}.metrics strong{display:block;font-family:Georgia,var(--serif);font-size:48px;line-height:1.15;font-weight:400;color:var(--accent)}.metrics span{display:block;font-size:12px;margin-top:10px;color:var(--muted)}.role{margin:22px 0}.role>span{font-size:12px;color:var(--muted)}.role>p{font-size:13px;margin:3px 0 8px}.plain-list{list-style:none;margin:0;padding:0}.plain-list li{margin:6px 0}.boundary{border-left:2px solid var(--accent);padding-left:15px;font-size:13px;line-height:1.8;margin-block:18px;color:var(--muted)}.review-note{background:var(--wash);padding:12px 16px;margin-top:18px;font-size:12px;line-height:1.7;color:var(--muted)}.review-note>span{font-weight:bold;color:var(--ink);display:block;margin-bottom:4px}.player{background:#e7e3da}.player video{display:block;width:100%;aspect-ratio:9/16;background:#171815;object-fit:contain}.player figcaption{padding:8px 10px;font-size:12px;color:var(--muted)}.gallery-tools{display:flex;align-items:center;justify-content:space-between;margin-block:10px;gap:10px}.gallery-tools button{background:transparent;border:1px solid var(--line);padding:5px 12px;font-size:12px;min-height:36px}.gallery-tools button:hover{background:var(--wash)}.gallery-count{font-size:12px;font-variant-numeric:tabular-nums}.thumbs{display:flex;gap:7px}.thumbs button{width:calc((100% - 28px)/5);position:relative;background:none;border:2px solid transparent;padding:0;opacity:.65}.thumbs button[aria-pressed=true]{border-color:var(--accent);opacity:1}.thumbs img{aspect-ratio:9/12;object-fit:cover;width:100%}.thumbs span{position:absolute;bottom:0;left:0;background:#242420dd;color:white;font-size:10px;padding:0 5px}.media-help{font-size:11px;color:var(--muted);margin-top:8px}.media-error{font-size:12px;color:var(--accent);padding:8px 0}.framework{background:var(--wash);padding:20px;margin-top:24px}.framework h4{font-size:13px;font-weight:400}.framework ol{padding:0;list-style:none;display:flex;margin:16px 0 10px;gap:12px}.framework li{flex:1;text-align:center;border-bottom:1px solid #aaa69a;padding-bottom:8px;font-size:13px}.loop-return{border-left:1px solid var(--accent);border-bottom:1px solid var(--accent);padding:0 0 7px 15px;font-size:12px;color:var(--accent)}.test-directions{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:25px}.test-directions h4{font-size:15px}.test-directions p{font-size:13px;color:var(--muted);margin-top:8px}.small-note{font-size:12px;color:var(--muted);margin-top:20px}details{margin-top:20px;border-top:1px solid var(--line);padding-top:12px}summary{cursor:pointer;font-size:13px;padding:5px 0}summary:hover{color:var(--accent)}.direction-list{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.direction-list span{background:var(--wash);padding:6px 16px;font-size:13px}.finding{padding:20px 0;border-block:1px solid var(--line)}.finding p{margin-top:10px;font-size:14px}.dark{background:#242622;color:#f4f0e7;border:0;margin-top:20px;padding-block:48px;--line:#5b5d54;--muted:#c0bfb5;--wash:#34362f;--accent:#e0926e;--ink:#f4f0e7}.dark .case-heading h2{font-family:var(--serif)}.dark .player{background:#34362f}.dark .case-no{color:#e0926e}.challenge-list article{display:grid;grid-template-columns:35px 1fr;gap:15px;margin-top:23px}.challenge-list article>span{color:var(--accent);font-family:Georgia,serif;font-size:25px;line-height:1.2}.challenge-list h4{font-family:var(--serif);font-size:21px}.challenge-list p{font-size:13px;color:var(--muted);margin-top:8px;line-height:1.9}.ai-bottom{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:35px;padding-top:30px;border-top:1px solid var(--line)}.ai-bottom h3{font-size:24px;margin-bottom:12px}.ai-bottom p{font-size:13px}.inline-list{display:flex;flex-wrap:wrap;gap:8px 22px;list-style:none;padding:0;margin:15px 0 23px;font-size:12px}.inline-list li{border-bottom:1px solid var(--line)}.research-archive h4{font-size:14px;margin-bottom:8px}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:16px}.placeholder{background:#41433d;min-height:195px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#e5e1d7;text-align:center;padding:15px}.placeholder strong{font-family:Georgia,serif;font-size:24px;font-weight:400}.placeholder span{font-size:12px}.comparison figcaption{font-size:11px;color:var(--muted);margin-top:6px}.comparison img{width:100%;object-fit:contain}.content-matrix{display:grid;grid-template-columns:1fr 1fr;margin-block:24px}.content-matrix>div{padding:20px 24px;border-top:1px solid var(--line)}.content-matrix>div:nth-child(odd){padding-left:0;border-right:1px solid var(--line)}.content-matrix span{font-size:11px;color:var(--muted)}.content-matrix h4{font-family:var(--serif);font-size:21px;margin:4px 0 8px}.content-matrix li{font-size:14px;margin:3px 0}.archive{padding-block:10px 36px;border-top:1px solid var(--line)}.archive details{border:0;margin:0}.archive summary{display:flex;align-items:center;justify-content:space-between;gap:20px}.archive summary small{display:block;color:var(--muted);font-size:12px}.archive summary strong{font-family:var(--serif);font-size:25px}.archive-action{font-size:13px;border-bottom:1px solid var(--ink)}.archive .case-split{grid-template-columns:1fr 220px;margin-top:25px}.archive h3{font-size:24px;margin-bottom:15px}.method,.about{border-top:1px solid var(--line);padding-block:45px}.section-title{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:30px}.section-title h2{font-size:30px}.section-title>p{font-size:13px;color:var(--muted);max-width:350px}.workflow{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 35px;list-style:none;padding:0;margin:0}.workflow li{border-top:1px solid var(--line);padding-top:15px}.workflow li>span{color:var(--accent);font-size:23px;font-family:Georgia,serif}.workflow h3{font-size:22px;margin-block:5px}.workflow small{color:var(--muted);font-size:11px}.workflow p{font-size:13px;margin-top:10px}.cycle-link{display:block;margin-top:25px;padding:12px 0;border-block:1px solid var(--accent);color:var(--accent);font-size:13px;text-align:right}.skills{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.skills h3{font-family:Georgia,var(--serif);font-size:21px;margin-bottom:14px}.skills li{font-size:13px;color:var(--muted)}.review-section{background:var(--wash);padding-block:35px}.review-layout{display:grid;grid-template-columns:250px 1fr;gap:45px}.review-layout h2{font-size:32px}.review-layout>div>p:last-child{font-size:13px;color:var(--muted);margin-top:12px}.review-layout ol{list-style:none;padding:0;margin:0}.review-layout li{display:grid;grid-template-columns:35px 1fr 50px;gap:12px;border-bottom:1px solid var(--line);padding:10px 0;font-size:13px;align-items:baseline}.review-number{color:var(--accent);font-family:Georgia,serif;font-size:18px}.review-layout li small{font-size:11px;color:var(--muted)}.contact{padding-block:45px}.contact h2{font-size:30px}.contact>a{font-size:22px;display:inline-block;border-bottom:1px solid var(--accent);margin:18px 0}.contact>p:last-child{font-size:13px;color:var(--muted)}footer{border-top:1px solid var(--line);padding-block:18px;display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.skip-link{position:absolute;top:-100px;left:20px;z-index:99;background:var(--paper);padding:12px}.skip-link:focus{top:10px}.noscript{padding:20px}.gallery{min-width:0}
@media(min-width:1600px){.hero h1{font-size:68px}}
@media(max-width:1100px){.shell{width:calc(100% - 56px)}.header-position{display:none}.hero{gap:28px}.hero h1{font-size:clamp(30px,3.6vw,45px)}.capabilities article{padding-inline:16px;gap:10px}.capabilities p{font-size:12px}.work-intro{display:block}.work-intro nav{margin-top:16px}.case-split{grid-template-columns:250px minmax(0,1fr);gap:32px}.case-split.reverse{grid-template-columns:minmax(0,1fr) 250px}.metrics{gap:20px}.metrics>div+div{padding-left:20px}.metrics strong{font-size:38px}.test-directions{grid-template-columns:1fr;gap:15px}.ai-bottom{gap:28px}.review-layout{grid-template-columns:190px 1fr;gap:30px}}
@media(max-width:760px){html{scroll-padding-top:15px}.shell{width:calc(100% - 36px)}.site-header{min-height:90px;gap:12px;flex-wrap:wrap;padding-block:12px}.wordmark{font-size:23px}.edition{margin-left:auto}.site-header nav{order:3;width:100%;margin-left:0;gap:25px;font-size:12px}.hero{display:flex;flex-direction:column;gap:25px;padding-top:28px}.hero-copy{width:100%}.hero .eyebrow{font-size:11px}.hero h1{font-size:clamp(25px,6.5vw,45px);white-space:normal;letter-spacing:-.04em}.intro{font-size:14px;max-width:none}.hero-actions{gap:20px;margin-top:22px}.button{padding:9px 18px;font-size:14px}.hero-media{width:100%;gap:12px}.hero-frame img{aspect-ratio:9/13}.location{margin-top:18px}.capabilities{grid-template-columns:1fr 1fr;gap:25px 0;padding-block:25px}.capabilities article{padding-left:15px;gap:9px}.capabilities article:nth-child(odd){padding-left:0}.capabilities article:nth-child(even){border:0;padding-right:0}.capabilities h2{font-size:18px}.capabilities small{font-size:10px}.cap-number{font-size:23px}.capabilities p{font-size:12px}.work-intro{padding-top:30px}.work-intro h2{font-size:27px}.work-intro nav{gap:10px 18px;font-size:12px}.case{padding-block:28px}.case-split,.case-split.reverse{display:flex;flex-direction:column;gap:25px}.case-split>.gallery{order:2;width:min(320px,100%);align-self:center}.case-split>div:not(.gallery){width:100%}.case-heading h2{font-size:34px;gap:17px}.case-heading h3{font-size:24px}.case-heading .eyebrow{font-size:11px}.body-copy{font-size:14px}.metrics{gap:18px}.metrics strong{font-size:35px}.metrics span{font-size:11px}.metrics>div+div{padding-left:18px}.role li{font-size:13px}.framework{padding:15px}.framework ol{gap:8px}.framework li{font-size:11px}.ai-bottom{grid-template-columns:1fr;gap:26px}.challenge-list article{gap:10px;grid-template-columns:27px 1fr}.placeholder{min-height:170px;padding:8px}.placeholder span{font-size:11px}.content-matrix>div{padding:15px}.content-matrix h4{font-size:20px}.archive summary strong{font-size:23px}.archive-action{font-size:11px}.archive .case-split{display:flex}.section-title{display:block}.section-title h2{font-size:25px}.section-title>p{margin-top:18px;max-width:none}.workflow{grid-template-columns:1fr 1fr;gap:22px}.workflow h3{font-size:19px}.workflow p{font-size:12px}.skills{grid-template-columns:1fr 1fr;gap:25px}.skills h3{font-size:19px}.review-layout{display:block}.review-layout ol{margin-top:20px}.review-layout li{grid-template-columns:24px 1fr 40px;gap:8px;font-size:12px}.review-layout li small{font-size:10px}.contact h2{font-size:26px}.contact>a{font-size:19px}footer{display:block}footer span{display:block}.method,.about{padding-block:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
