@font-face{font-family:'Noto Sans TC';src:url('/fonts/noto-sans-tc.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{--paper:#f6f3eb;--ink:#20231f;--green:#245c4a;--line:#d8d6ce;--muted:#65685e;--sage:#e5e8da;--sans:'Noto Sans TC','PingFang TC','Microsoft JhengHei',sans-serif;--serif:var(--sans)}
*{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:16px;line-height:1.7;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit;text-decoration:none}a:hover{color:var(--green)}button{color:inherit}img,svg{display:block;max-width:100%}button,a{touch-action:manipulation}button{cursor:pointer}::selection{background:#dce5bb;color:var(--ink)}:focus-visible{outline:2px solid var(--green);outline-offset:6px;border-radius:1px}h1,h2,h3,p,figure{margin:0}ul{margin:0;padding:0;list-style:none}.wrap{width:calc(100% - 112px);max-width:1200px;margin-inline:auto}.serif{font-family:var(--serif);font-weight:400;font-style:normal}.eyebrow,.mini-label,.section-number,.hero-index,.hero-foot,.browser-chrome,.project-index,.review-label,.case-source,.site-footer,.review-notice{font-size:11px;letter-spacing:.08em}.eyebrow,.mini-label,.hero-index{text-transform:uppercase}.eyebrow{font-weight:600}.mini-label{color:var(--muted)}.skip-link{position:fixed;top:8px;left:16px;z-index:20;padding:12px 20px;background:var(--ink);color:var(--paper);transform:translateY(-150%)}.skip-link:focus{transform:none}.site-header{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:110px;border-bottom:1px solid var(--line);z-index:5}.brand{display:flex;align-items:center;gap:14px}.brand-mark{font-size:45px;letter-spacing:-.12em;line-height:1;font-weight:700;position:relative}.brand-mark span{position:absolute;font-size:22px;top:-3px;right:-13px;color:var(--green);letter-spacing:0}.brand-domain{margin-left:12px;font-size:13px;font-weight:600;letter-spacing:-.02em}.desktop-nav{display:flex;gap:36px;align-items:center;font-size:13px}.desktop-nav a{position:relative;padding:10px 0}.desktop-nav a:after{content:'';height:1px;background:var(--green);position:absolute;left:0;right:100%;bottom:5px;transition:right .2s}.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after{right:0}.desktop-nav a:last-child{margin-left:22px}.menu-toggle{display:none;border:0;background:none;padding:12px 0 12px 12px;align-items:center;gap:12px;font-size:12px}.menu-lines{width:22px;height:12px;border-top:1px solid;border-bottom:1px solid}.mobile-nav{position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:12px 0 18px;border-bottom:1px solid var(--line);box-shadow:0 10px 18px #20231f08}.mobile-nav[hidden]{display:none}.mobile-nav a{display:flex;justify-content:space-between;padding:12px 8px;font-size:24px;font-weight:600}.mobile-nav a span{font-size:12px;color:var(--muted);align-self:center}
.hero{padding-top:35px}.hero-topline{display:flex;justify-content:space-between}.hero-index{color:var(--muted)}.name-line{display:flex;align-items:center;justify-content:space-between;padding:19px 0 29px;gap:30px}.name-line h1{font-size:clamp(110px,17.8vw,234px);line-height:1.05;font-weight:700;letter-spacing:-.085em;margin-left:-11px}.name-dot{color:var(--green)}.name-aside{font-size:clamp(32px,4.1vw,55px);line-height:.95;letter-spacing:-.03em;white-space:nowrap;padding-top:18px;padding-right:5px}.hero-bottom{display:grid;grid-template-columns:1fr 1.52fr;gap:8.3%;align-items:stretch;padding-top:6px}.hero-intro{padding:19px 0 25px}.hero-intro h2{font-family:var(--sans);font-size:37px;line-height:1.5;font-weight:600;letter-spacing:.055em}.hero-intro p{font-size:14px;line-height:1.9;color:var(--muted);margin-top:22px}.text-link{display:inline-flex;align-items:center;gap:25px;font-size:13px;border-bottom:1px solid var(--ink);padding-bottom:7px;line-height:1.5;transition:gap .2s,color .2s}.text-link:hover{gap:34px;border-color:var(--green)}.text-link span{font-size:22px;line-height:1}.hero-intro .text-link{margin-top:27px}.practice{background:var(--sage);padding:19px 23px 0;position:relative;align-self:stretch;min-width:0;border:1px solid #dce0d0}.practice-heading{display:flex;justify-content:space-between;gap:12px;font-size:11px;letter-spacing:.02em}.practice-heading .mini-label{font-size:9px}.practice-body{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;padding:8px 0 14px;min-height:209px;gap:6px}.orbital{width:100%;stroke:var(--green);stroke-width:.8}.orbital-core{transform-origin:180px 115px;transform:rotate(-22deg);transition:transform .8s ease}.orbital[data-x]{opacity:1}.orbital text{fill:var(--green);stroke:none;font-family:var(--sans);font-size:7px;letter-spacing:1px}.guide-line{stroke-dasharray:2 4;opacity:.5}.orbital-point{fill:var(--green);stroke:var(--sage);stroke-width:2}.orbital-corner{stroke-width:1;opacity:.45}.practice[data-stage=spec] .orbital-core{transform:rotate(0deg)}.practice[data-stage=sample] .orbital-core{transform:rotate(22deg)}.practice[data-stage=delivery] .orbital-core{transform:rotate(45deg)}.practice-caption{padding-left:10px}.practice-caption .mini-label{font-size:9px;letter-spacing:.06em}.practice-caption p{font-size:16px;line-height:1.8;margin:12px 0 20px;min-height:58px;font-weight:600;letter-spacing:.02em}.practice-ai{font-size:9px;letter-spacing:.02em;color:var(--green)}.practice-ai span{font-size:14px;margin-left:8px}.stage-controls{display:flex;border-top:1px solid #bdc6b4}.stage-button{padding:15px 4px;flex:1;font-size:11px;display:flex;gap:7px;align-items:center;justify-content:center;background:none;border:0;position:relative;color:#626a5b;transition:color .2s}.stage-button span{font-size:8px;opacity:1}.stage-button:before{content:'';position:absolute;top:-2px;height:3px;left:12%;right:12%;background:transparent;transition:background .2s}.stage-button.is-active{font-weight:700;color:var(--green)}.stage-button.is-active:before{background:var(--green)}.stage-button:hover{color:var(--green)}.hero-foot{display:flex;justify-content:space-between;color:var(--muted);border-bottom:1px solid var(--line);margin-top:40px;padding:17px 0 21px;font-size:10px;letter-spacing:.03em}.hero-foot a{display:flex;gap:14px}.hero-foot a span{font-size:17px;line-height:1}
.section{padding:89px 0 82px}.section-marker{display:flex;align-items:baseline;gap:22px}.section-number{color:var(--muted);font-size:10px;letter-spacing:.02em;min-width:29px}.section-marker h2{font-size:24px;font-weight:600;letter-spacing:-.055em;line-height:1.3}.section-chinese{font-size:11px;color:var(--muted);letter-spacing:.1em;margin-left:5px}.about{border-bottom:1px solid var(--line)}.about-content{display:grid;grid-template-columns:1fr 1.18fr;gap:12%;padding-top:44px;padding-left:51px}.about-content h3{font-family:var(--sans);font-size:31px;line-height:1.7;font-weight:600;letter-spacing:.035em}.about-copy p{font-size:14px;line-height:2;color:#555a50;margin-bottom:18px}.expertise{margin-top:29px;display:flex;flex-wrap:wrap;column-gap:22px;row-gap:9px;color:var(--green);font-size:10px;letter-spacing:.01em}.expertise li:before{content:'↗';margin-right:7px}.section-intro{padding:24px 0 35px 51px;display:flex;align-items:flex-end;justify-content:space-between}.section-intro p{font-size:14px;line-height:1.85;color:var(--muted)}.project-grid{display:grid;grid-template-columns:1fr;gap:40px}.project{min-width:0}.project-visual{display:block;padding:40px 62px 0;overflow:hidden;position:relative;isolation:isolate;aspect-ratio:1.92;transition:background .3s}.industrial{background:#293a37}.company{background:#d9dfd2}.project-visual .project-kicker{position:absolute;top:18px;left:24px;color:#cad5ca;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.project-visual .visual-arrow{position:absolute;right:22px;top:16px;font-size:25px;color:#e4eadb;line-height:1}.project-browser{box-shadow:0 10px 40px #0004;transform:translateY(14px);transition:transform .5s ease;background:#fff;border-radius:4px 4px 0 0;overflow:hidden}.project-visual:hover .project-browser{transform:translateY(5px)}.browser-chrome{display:flex;align-items:center;justify-content:space-between;background:#f8f9f7;color:#686e63;padding:10px 14px;font-size:9px;letter-spacing:.04em;line-height:1}.browser-dots{color:#b2b5ad;letter-spacing:1px;font-size:7px}.project-browser img{width:100%;height:auto}.project-info{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start;padding-top:23px}.project-name{display:flex;gap:13px;align-items:baseline}.project-index{color:var(--muted);font-size:10px}.project-name h3{font-size:29px;line-height:1.4;font-weight:600;letter-spacing:-.05em}.project-meta{display:flex;gap:13px;align-items:center;margin-top:7px;padding-left:27px}.project-meta span{font-size:10px;color:var(--muted)}.project-description p{font-size:14px;color:var(--muted);margin:2px 0 12px}.project-description .text-link{font-size:11px;border-color:var(--line)}.review-label{font-size:9px;color:#6e6956;border:1px solid #d9d0b3;padding:3px 7px;letter-spacing:.03em;white-space:nowrap}.work-endnote{display:flex;gap:25px;border-top:1px solid var(--line);margin-top:38px;padding-top:28px;align-items:center}.small-cross{font-size:38px;color:var(--green);line-height:1}.work-endnote p{font-size:12px;color:var(--muted);line-height:1.8}.notes{border-top:1px solid var(--line)}.notes-content{display:grid;grid-template-columns:1fr 1.18fr;gap:12%;padding:44px 0 0 51px}.notes-lead>.serif{font-size:47px;line-height:.98;letter-spacing:-.02em;display:block}.notes-lead>p{font-size:13px;line-height:1.9;color:var(--muted);margin:26px 0 20px}.empty-status{font-size:10px;color:var(--muted);display:flex;gap:8px;align-items:center}.empty-status>span{width:5px;height:5px;border-radius:50%;background:#969d89}.note-shelf{display:flex;align-items:center;gap:24px;padding:21px 0;border-top:1px solid var(--line)}.note-shelf:last-child{border-bottom:1px solid var(--line)}.shelf-number{font-family:var(--serif);font-style:normal;font-size:21px;min-width:25px;color:var(--muted)}.note-shelf h3{font-size:18px;font-weight:600;letter-spacing:-.02em}.note-shelf p{font-size:11px;color:var(--muted);margin-top:4px}.shelf-mark{margin-left:auto;color:#a5ab9c;font-size:20px}.note-entry{display:block;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:23px 0}.note-entry-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.note-entry h3{font-family:var(--sans);font-size:25px;line-height:1.6;letter-spacing:.03em;margin:20px 0 14px}.note-entry p{font-size:12px;color:var(--muted);line-height:1.9;margin-bottom:22px}.note-entry .note-read{display:flex;justify-content:space-between;font-size:11px;color:var(--green)}.note-topics{display:flex;justify-content:space-between;gap:15px;margin-top:18px;color:var(--muted);font-size:9px;letter-spacing:.02em}.contact{background:var(--ink);color:var(--paper);padding:50px 0 58px}.contact-top{display:flex;justify-content:space-between}.contact .section-number,.contact .section-chinese{color:#adb2a4}.contact .section-marker h2{font-size:20px}.contact-star{font-size:57px;color:#cbd7ae;line-height:1}.contact-headline{font-size:clamp(42px,6.4vw,86px);font-weight:600;letter-spacing:-.055em;line-height:1.1;margin-top:30px}.contact-headline .serif{font-size:1.11em;color:#d5dfbd;letter-spacing:-.02em}.contact-bottom{display:grid;grid-template-columns:1fr 1fr;gap:30px;border-top:1px solid #51564c;margin-top:44px;padding-top:29px}.contact-bottom>p{font-size:12px;line-height:1.9;color:#b8bdb0}.contact-links{position:relative}.email-link{display:flex;justify-content:space-between;align-items:center;font-size:clamp(22px,2.7vw,36px);letter-spacing:-.03em;line-height:1.4}.email-link span{font-size:34px;color:#d5dfbd}.contact a:hover{color:#d5dfbd}.contact a:focus-visible,.contact button:focus-visible{outline-color:#d5dfbd}.contact-secondary{display:flex;justify-content:space-between;align-items:center;margin-top:18px;font-size:11px;color:#b8bdb0}.contact-secondary a{display:flex;gap:18px}.copy-email{background:none;border:0;color:inherit;padding:8px 0 8px 12px;font-size:11px}.copy-email span{padding-left:11px}.copy-email:hover,.copy-email.copied{color:#d5dfbd}.copy-status{font-size:10px;color:#d5dfbd;display:block;min-height:16px;position:absolute;right:0;bottom:-23px}.site-footer{display:flex;align-items:center;justify-content:space-between;padding:32px 0;font-size:9px;letter-spacing:.02em;color:var(--muted)}.footer-brand{font-size:14px;font-weight:600;color:var(--ink)}.footer-brand .serif{font-size:18px;font-weight:400;margin-left:7px}.back-top{display:flex;gap:14px}.review-notice{text-align:center;color:#6e6858;padding:0 25px 18px;font-size:9px;letter-spacing:.02em}
.case{padding-top:38px}.case-back{font-size:12px;border-color:var(--line)}.case-topline{display:flex;justify-content:space-between;align-items:center;margin-top:67px}.case h1{font-size:clamp(48px,8.5vw,112px);font-weight:600;line-height:1.25;letter-spacing:-.065em;margin-top:18px}.case h1 .serif{font-size:.57em;letter-spacing:-.03em;color:var(--muted)}.case-deck{font-size:19px;letter-spacing:.025em;line-height:1.8;margin:21px 0 38px;max-width:750px}.case-screen{padding:38px 52px 0;overflow:hidden;max-height:710px}.case-screen .browser-chrome{border-radius:4px 4px 0 0;padding:13px 17px}.case-screen img{width:100%;height:auto}.case-summary{display:grid;grid-template-columns:.65fr 1fr;gap:16%;padding:75px 0;border-bottom:1px solid var(--line)}.case-summary h2{font-size:19px;font-weight:600;margin:13px 0 22px}.case-summary p{font-size:14px;line-height:2;color:var(--muted);margin-bottom:19px}.case-roles{display:flex;flex-wrap:wrap;gap:9px 15px;font-size:12px;color:var(--green)}.case-roles li{border:1px solid var(--line);padding:5px 11px}.case-summary .text-link{margin-top:10px}.case-observations{padding:62px 0 34px}.observation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin:36px 0 23px;padding-left:51px}.observation h3{font-size:17px;letter-spacing:-.02em;margin:13px 0}.observation p{font-size:13px;line-height:1.9;color:var(--muted)}.observation>span{font-size:10px;color:var(--green)}.case-source{font-size:10px;color:var(--muted);padding-left:51px;letter-spacing:.02em}.case-source a{text-decoration:underline;text-underline-offset:3px}.case-editor-notice{background:#eae6d9;border-left:2px solid #9b956c;padding:23px 28px;margin:24px 0;color:#625d49;font-size:12px;line-height:1.9}.case-editor-notice strong{font-size:11px;display:block;letter-spacing:.03em;margin-bottom:8px}.case-end{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:flex-end;margin-top:42px;padding:39px 0 60px}.case-end p{font-size:47px;line-height:1}.article{padding:45px 0 90px}.article-header{max-width:820px;margin:70px auto 47px}.article-header .eyebrow{color:var(--green)}.article-header h1{font-family:var(--sans);font-size:clamp(32px,4.3vw,54px);font-weight:600;line-height:1.55;letter-spacing:.045em;margin:21px 0}.article-deck{font-size:16px;color:var(--muted);line-height:2;max-width:690px}.article-meta{display:flex;gap:18px;align-items:center;border-top:1px solid var(--line);margin-top:28px;padding-top:16px;font-size:10px;color:var(--muted)}.article-visual{max-width:820px;margin:0 auto 49px;aspect-ratio:2.7;background:var(--sage);padding:30px 50px;display:flex;align-items:center;justify-content:space-between;gap:22px}.article-visual .serif{font-size:47px;line-height:1.05;color:var(--green)}.article-schematic{width:39%;stroke:var(--green);fill:none;stroke-width:1}.article-body{max-width:660px;margin-inline:auto}.article-body p{font-size:16px;line-height:2.2;margin:22px 0;color:#51564c}.article-body h2{font-size:24px;letter-spacing:.04em;font-family:var(--sans);line-height:1.8;margin-top:43px}.article-body blockquote{margin:35px 0;padding:22px 28px;border-left:2px solid var(--green);font-family:var(--sans);color:var(--green);font-size:25px;line-height:1.8;background:#eeefe4}.article-editor{border-top:1px solid var(--line);padding-top:22px;margin-top:38px;font-size:11px;color:var(--muted);line-height:1.9}.article-editor span{font-weight:600;color:var(--green)}.not-found{padding:120px 0 160px}.not-found h1{font-size:110px;letter-spacing:-.07em}.not-found p{margin:12px 0 28px;color:var(--muted)}
@media(min-width:1550px){.name-line h1{font-size:240px}.hero{padding-top:44px}.hero-bottom{padding-top:10px}}
@media(max-width:1000px){.wrap{width:calc(100% - 72px)}.name-line h1{margin-left:-7px}.name-aside{font-size:4vw}.hero-bottom{grid-template-columns:.95fr 1.3fr;gap:5%}.hero-intro h2{font-size:29px}.hero-intro p{font-size:12px}.practice{padding:17px 15px 0}.practice-body{grid-template-columns:1fr .9fr;min-height:195px}.practice-caption{padding-left:0}.practice-caption p{font-size:13px;min-height:47px}.practice-ai{font-size:8px}.practice-heading>span:first-child{font-size:9px}.practice-heading .mini-label{font-size:8px}.orbital{min-width:0}.stage-button{font-size:9px;gap:4px}.about-content,.notes-content{gap:7%;padding-left:0}.about-content h3{font-size:27px}.about-copy p{font-size:13px}.section-intro{padding-left:0}.project-visual{padding:35px 38px 0}.notes-lead>.serif{font-size:39px}.contact-headline{font-size:7.2vw}.observation-grid{gap:25px;padding-left:0}.case-source{padding-left:0}.case-summary{gap:9%}.case-screen{padding:28px 38px 0}.case-deck{font-size:17px}}
@media(max-width:700px){html{scroll-padding-top:20px}.wrap{width:calc(100% - 40px)}.site-header{min-height:80px}.brand-mark{font-size:37px}.brand-mark span{font-size:18px;right:-11px}.brand-domain{font-size:12px;margin-left:8px}.desktop-nav{display:none}.menu-toggle{display:flex}.hero{padding-top:28px}.hero-index{display:none}.eyebrow{font-size:9px;letter-spacing:.06em}.name-line{display:block;padding:19px 0 20px;position:relative}.name-line h1{font-size:clamp(76px,20vw,135px);letter-spacing:-.08em;margin-left:-4px;line-height:1.08}.name-aside{display:block;position:absolute;right:0;bottom:-36px;font-size:25px;padding:0;line-height:1}.hero-bottom{display:flex;flex-direction:column;gap:27px;padding-top:18px}.hero-intro{padding:0}.hero-intro h2{font-size:29px;line-height:1.5;letter-spacing:.05em}.hero-intro p{font-size:12px;line-height:1.85;margin-top:17px;max-width:310px}.hero-intro .text-link{margin-top:19px;font-size:12px}.practice{padding:16px 16px 0;min-height:0}.practice-heading>span:first-child{font-size:10px}.practice-heading .mini-label{font-size:8px}.practice-body{grid-template-columns:1.05fr 1fr;padding:9px 0 5px;min-height:180px}.practice-caption{padding-left:7px}.practice-caption p{font-size:13px;line-height:1.9;margin-top:8px;margin-bottom:14px;min-height:49px}.practice-caption .mini-label{font-size:8px}.practice-ai{font-size:7px}.practice-ai span{font-size:10px;margin-left:5px}.stage-button{font-size:9px;padding:14px 2px;gap:5px}.stage-button span{font-size:7px}.hero-foot{margin-top:26px;padding:16px 0 22px;align-items:center;font-size:8px;gap:25px}.hero-foot>span{max-width:170px}.hero-foot a{gap:8px;white-space:nowrap;font-size:8px}.section{padding:55px 0 52px}.section-marker{gap:13px;flex-wrap:wrap}.section-marker h2{font-size:23px}.section-number{min-width:23px;font-size:9px}.section-chinese{font-size:9px;margin-left:0}.about-content{display:block;padding-top:29px}.about-content h3{font-size:27px;line-height:1.65}.about-copy{margin-top:26px}.about-copy p{font-size:13px;line-height:2;margin-bottom:15px}.expertise{margin-top:24px;gap:8px 13px;font-size:9px}.section-intro{display:block;padding-top:22px;padding-bottom:25px}.section-intro p{font-size:12px}.section-intro .mini-label{display:block;margin-top:15px;font-size:8px}.project-visual{padding:38px 18px 0;aspect-ratio:1.27}.project-visual .project-kicker{top:15px;left:18px;font-size:8px}.project-visual .visual-arrow{right:16px;top:13px;font-size:21px}.project-browser{transform:translateY(0);border-radius:3px 3px 0 0}.browser-chrome{padding:9px 10px;font-size:7px}.browser-dots{font-size:5px}.project-info{display:block;padding-top:18px}.project-name h3{font-size:27px}.project-name{gap:11px}.project-meta{padding-left:24px;flex-wrap:wrap;gap:7px 13px}.project-meta span{font-size:8px}.project-description{padding-left:24px;margin-top:15px}.project-description p{font-size:12px;margin-bottom:11px}.project-description .text-link{font-size:10px}.review-label{font-size:8px}.work-endnote{gap:20px;padding-top:22px;margin-top:29px}.small-cross{font-size:30px}.work-endnote p{font-size:11px}.notes-content{display:block;padding-top:30px}.notes-lead>.serif{font-size:42px}.notes-lead>p{font-size:12px;margin:21px 0 18px}.note-shelves{margin-top:32px}.note-entry{margin-top:30px;padding:21px 0}.note-entry h3{font-size:23px;margin-top:18px}.note-entry p{font-size:11px}.note-topics{font-size:8px;gap:9px}.note-shelf{padding:20px 0;gap:18px}.note-shelf h3{font-size:17px}.note-shelf p{font-size:10px}.contact{padding:37px 0 48px}.contact .section-marker h2{font-size:20px}.contact-star{font-size:43px}.contact-headline{font-size:clamp(33px,8.3vw,53px);margin-top:26px;line-height:1.15}.contact-headline .serif{font-size:1.06em}.contact-bottom{display:block;margin-top:29px;padding-top:23px}.contact-bottom>p{font-size:11px}.contact-links{margin-top:27px}.email-link{font-size:27px}.email-link span{font-size:30px}.contact-secondary{font-size:10px;margin-top:13px}.copy-email{font-size:10px}.site-footer{flex-wrap:wrap;row-gap:18px;padding:27px 0;align-items:center}.footer-brand{font-size:12px}.footer-brand .serif{font-size:17px}.site-footer p{order:3;width:100%;font-size:8px}.back-top{font-size:9px}.review-notice{font-size:8px;line-height:1.8;padding:0 20px 17px}.case{padding-top:29px}.case-topline{margin-top:45px;gap:14px}.case h1{font-size:59px;margin-top:23px}.case h1 .serif{display:block;font-size:30px;letter-spacing:-.025em}.case-deck{font-size:15px;margin-top:22px;margin-bottom:28px}.case-screen{padding:22px 16px 0;max-height:380px}.case-screen .browser-chrome{padding:10px;font-size:7px}.case-summary{display:block;padding:43px 0}.case-summary>div+div{margin-top:35px}.case-summary h2{font-size:18px;margin:10px 0 17px}.case-summary p{font-size:13px}.case-roles{gap:8px;font-size:10px}.case-roles li{padding:4px 9px}.case-observations{padding:40px 0 20px}.case-observations .section-marker h2{font-size:21px}.observation-grid{display:block;margin:28px 0}.observation+.observation{margin-top:24px}.observation h3{font-size:17px;margin:9px 0}.observation p{font-size:12px}.case-source{font-size:9px;line-height:1.9}.case-editor-notice{padding:19px 20px;font-size:11px;margin:20px 0}.case-end{display:block;margin-top:29px;padding:32px 0 44px}.case-end p{font-size:39px}.case-end .text-link{margin-top:30px}.article{padding:29px 0 53px}.article-header{margin:47px auto 30px}.article-header h1{font-size:31px;line-height:1.65;letter-spacing:.03em;margin-top:18px}.article-deck{font-size:13px}.article-meta{font-size:9px;flex-wrap:wrap;gap:11px}.article-visual{padding:25px 24px;aspect-ratio:1.75;margin-bottom:29px}.article-visual .serif{font-size:32px}.article-schematic{width:42%}.article-body p{font-size:14px;line-height:2.1;margin:20px 0}.article-body h2{font-size:23px;margin-top:31px}.article-body blockquote{font-size:21px;padding:19px 20px;margin:27px 0}.article-editor{font-size:10px}.not-found{padding:80px 0 110px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}.project-browser{transform:none!important}}

/* Comfortable pointer targets also support touch and keyboard focus. */
.text-link,.stage-button,.copy-email,.contact-secondary a,.back-top{min-height:44px}.contact-secondary a{align-items:center}.back-top{align-items:center}

/* One bilingual family, three clear scales: display, reading, support. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{min-height:92px}.hero{padding-top:27px}.hero-topline{display:flex;justify-content:space-between;gap:20px}.hero-identity{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:19px 0 28px}.hero-identity h1{font-size:68px;font-weight:600;line-height:1.15;letter-spacing:-.065em}.hero-identity>div{display:flex;gap:45px;align-items:center}.hero-statement{font-size:21px;font-weight:500;letter-spacing:.01em}.hero-context{font-size:13px;color:var(--muted);line-height:1.9}.hero-foot{margin-top:12px;font-size:12px;padding:16px 0 21px}.hero-foot>span{max-width:none}.hero-foot a{min-height:32px;align-items:center}
.film{margin:0}.film-screen{position:relative;isolation:isolate;background:#151c18;aspect-ratio:16/9;overflow:hidden}.film-screen video{display:block;width:100%;height:100%;object-fit:contain}.film-poster{display:none;position:absolute;inset:0;pointer-events:none}.film.is-enhanced .film-poster{display:block}.film.has-started .film-poster{visibility:hidden}.film-poster img{width:100%;height:100%;object-fit:cover}.film-badge{position:absolute;right:29px;top:28px;font-size:10px;letter-spacing:.1em;color:#ccd7be;pointer-events:none;background:#151c18;padding:5px 7px;display:none}.film.is-enhanced .film-badge{display:block}.film.has-started .film-badge{display:none}.film-controls{background:#202b24;color:#f6f3eb;padding:14px 20px 15px}.film-controls[hidden]{display:none}.film-buttons{display:flex;align-items:center;gap:12px}.film-buttons button{border:1px solid #4b5b4e;background:none;color:#e6ecd9;min-height:44px;padding:9px 17px;font-size:12px;display:flex;gap:10px;align-items:center;justify-content:center;transition:background .2s,border-color .2s}.film-buttons button:hover{border-color:#cbd7ae;background:#344437}.film-buttons button:focus-visible{outline-color:#e3eacb;outline-offset:3px}.film-buttons .film-play{background:#d2dfbd;border-color:#d2dfbd;color:#17261c;min-width:137px;font-weight:600}.film-buttons .film-play:hover{background:#e8efda}.film-buttons [data-film-sound]{margin-right:auto;min-width:130px}.film-timeline{display:flex;align-items:center;gap:18px;margin-top:13px}.film-timeline input{flex:1;min-width:0;height:23px;margin:0;accent-color:#d2dfbd;cursor:pointer}.film-timeline input:focus-visible{outline-color:#d2dfbd;outline-offset:2px}.film-clock{font-size:11px;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:.04em;color:#d4ddcc;min-width:95px;text-align:right}.film-caption{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:13px;font-size:12px;color:var(--muted)}.film-caption>span:first-child{font-weight:600;color:var(--ink)}.film-transcript{font-size:12px;color:var(--muted);margin-top:8px}.film-transcript summary{width:max-content;min-height:35px;cursor:pointer;list-style:none;display:flex;align-items:center;gap:18px}.film-transcript summary::-webkit-details-marker{display:none}.film-transcript[open] summary span{transform:rotate(45deg)}.film-transcript p{max-width:790px;font-size:14px;line-height:1.9;padding:12px 0 16px}.film-safe{background:var(--ink);color:var(--paper);min-height:260px;display:flex;align-items:center;justify-content:center;font-size:36px;letter-spacing:.01em}
.section-marker h2{letter-spacing:-.035em;font-size:27px}.section-chinese{font-size:12px;letter-spacing:.02em}.about-content h3{font-size:31px;line-height:1.6;letter-spacing:.01em;font-weight:500}.about-copy p{font-size:15px;line-height:1.95;letter-spacing:0}.expertise{font-size:12px}.about-practice{display:grid;grid-template-columns:1fr 1.18fr;gap:12%;padding:45px 0 0 51px}.practice-intro{padding-top:20px}.practice-intro h3{font-size:22px;font-weight:500;margin:14px 0;letter-spacing:.01em}.practice-intro p{font-size:14px;color:var(--muted);line-height:1.9}.practice-disclaimer{display:block;font-size:11px;color:var(--muted);margin-top:20px}.practice-heading>span:first-child{font-size:12px}.practice-heading .mini-label,.practice-caption .mini-label{font-size:10px}.practice-ai{font-size:10px}.stage-button{font-size:12px}.stage-button span{font-size:10px}.section-intro p,.project-description p{font-size:15px}.project-meta span,.project-description .text-link{font-size:12px}.notes-lead>.serif{font-size:43px;line-height:1.15;font-weight:500;letter-spacing:-.045em}.notes-lead>p{font-size:15px;line-height:1.95}.empty-status{font-size:11px}.note-entry h3{font-size:25px;font-weight:500;letter-spacing:.01em}.note-entry p{font-size:14px}.note-entry .note-read,.note-topics{font-size:12px}.contact-headline{font-weight:500}.contact-headline .serif{font-size:1em}.contact-bottom>p{font-size:14px}.contact-secondary,.copy-email{font-size:13px}.copy-status{font-size:12px}.site-footer{font-size:11px}.review-notice{font-size:11px}.case h1{font-weight:500}.case-deck{letter-spacing:.01em}.case-summary p,.observation p{font-size:15px;line-height:1.95}.case-roles{font-size:13px}.case-source{font-size:12px}.article-header h1{letter-spacing:.01em;font-weight:500}.article-body h2{letter-spacing:.01em;font-weight:500}.article-body p{line-height:2}.article-body blockquote{font-weight:500}.article-meta,.article-editor{font-size:12px}.case-end p{font-size:40px;line-height:1.2;letter-spacing:-.04em}
@media(max-width:1000px){.hero-identity>div{display:block}.hero-statement{font-size:19px}.hero-context{font-size:12px;margin-top:5px}.hero-identity h1{font-size:62px}.about-practice{padding-left:0;gap:7%}.film-badge{top:20px;right:20px}.practice-caption p{font-size:15px}.practice-ai{font-size:9px}.notes-lead>.serif{font-size:36px}}
@media(max-width:700px){.site-header{min-height:76px}.hero{padding-top:21px}.hero-topline .eyebrow{font-size:11px;letter-spacing:.025em}.hero-identity{display:block;padding:13px 0 23px}.hero-identity h1{font-size:52px;letter-spacing:-.06em}.hero-identity>div{margin-top:10px}.hero-statement{font-size:18px;font-weight:500}.hero-context{font-size:13px;line-height:1.85;margin-top:7px}.film-screen{aspect-ratio:4/5}.film-badge{font-size:9px;right:17px;top:18px;padding:4px}.film-controls{padding:12px 14px}.film-buttons{display:grid;grid-template-columns:1fr 1fr;gap:9px}.film-buttons button{padding:9px 11px;min-width:0;font-size:12px}.film-buttons .film-play,.film-buttons [data-film-sound]{min-width:0;margin:0}.film-timeline{gap:12px;margin-top:10px}.film-clock{min-width:91px;font-size:10px}.film-caption{font-size:11px;align-items:flex-start;gap:12px}.film-caption #film-status{max-width:190px;text-align:right}.film-transcript{font-size:12px}.film-transcript p{font-size:14px}.hero-foot{font-size:12px;margin-top:11px;gap:15px}.hero-foot a{font-size:12px;gap:8px}.section{padding:56px 0}.section-marker h2{font-size:24px}.section-chinese{font-size:12px;letter-spacing:.01em}.section-number{font-size:11px}.about-content h3{font-size:27px;letter-spacing:.01em}.about-copy p{font-size:15px;line-height:1.95}.expertise{font-size:11px;row-gap:10px}.about-practice{display:block;padding:18px 0 0}.practice-intro{padding:8px 0 22px}.practice-intro h3{font-size:21px}.practice-intro p{font-size:15px}.practice-disclaimer{margin-top:10px}.practice{padding:15px 15px 0}.practice-heading>span:first-child{font-size:11px}.practice-heading .mini-label{font-size:9px}.practice-caption p{font-size:14px;line-height:1.8}.practice-caption .mini-label{font-size:9px}.practice-ai{font-size:9px;line-height:1.5;display:block}.stage-button{font-size:11px;gap:6px}.stage-button span{font-size:9px}.mini-label{font-size:11px}.section-intro p{font-size:15px}.section-intro .mini-label{font-size:11px}.project-visual{aspect-ratio:1.22}.project-visual .project-kicker{font-size:10px}.browser-chrome{font-size:9px}.project-meta span,.project-description .text-link{font-size:11px}.project-description p{font-size:15px;line-height:1.85}.review-label{font-size:10px}.work-endnote p{font-size:13px;line-height:1.85}.notes-lead>.serif{font-size:38px;line-height:1.15}.notes-lead>p{font-size:15px;line-height:1.95}.empty-status{font-size:11px}.note-entry h3{font-size:24px;letter-spacing:.01em}.note-entry p{font-size:14px;line-height:1.9}.note-entry .note-read{font-size:12px}.note-topics{font-size:10px;gap:8px;flex-wrap:wrap}.contact-headline{font-size:clamp(34px,8.8vw,58px);line-height:1.12;font-weight:500}.contact-bottom>p{font-size:14px}.email-link{font-size:27px}.contact-secondary,.copy-email{font-size:12px}.copy-status{font-size:11px;line-height:1.6;bottom:-26px}.site-footer p{font-size:10px}.back-top{font-size:11px}.review-notice{font-size:10px}.case h1{font-size:57px}.case h1 .serif{font-size:29px}.case-summary p,.observation p{font-size:15px;line-height:1.95}.case-roles{font-size:12px}.case-source{font-size:11px}.case-editor-notice{font-size:12px}.case-end p{font-size:35px;line-height:1.2}.article-header h1{font-size:31px;letter-spacing:.01em;line-height:1.6}.article-deck{font-size:15px;line-height:1.95}.article-meta{font-size:11px}.article-body p{font-size:15px;line-height:2}.article-body h2{font-size:23px;letter-spacing:.01em}.article-body blockquote{font-size:22px;line-height:1.8}.article-editor{font-size:12px}.article-visual .serif{font-size:30px;line-height:1.2}}
