/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--spacing:.25rem;--default-font-family:var(--font-geist-sans);--default-mono-font-family:var(--font-geist-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.block{display:block}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--ink:#f4f1eb;--paper:#050607;--site-green:#89ae78;--acid:#d8ff4f;--line:#f4f1eb47;--dark-line:#f4f1eb33}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit}.site-header{color:#f5f4ef;mix-blend-mode:difference;z-index:70;border-bottom:1px solid #f5f4ef6b;justify-content:space-between;align-items:center;padding:16px 28px 14px;display:flex;position:fixed;top:0;left:0;right:0}.menu-is-open .site-header{border-color:var(--line);color:var(--ink);mix-blend-mode:normal}.wordmark{font-size:clamp(32px,2.2vw,54px);font-weight:700;line-height:.95}.header-title{font-size:clamp(28px,1.7vw,40px);font-weight:700;line-height:1;position:absolute;left:50%;transform:translate(-50%)}.menu-toggle{cursor:pointer;text-transform:uppercase;background:0 0;border:0;align-items:center;gap:8px;padding:0;font-size:clamp(30px,2vw,48px);font-weight:800;line-height:.95;display:flex}.menu-toggle i{background:currentColor;width:7px;height:7px;display:block}.hero{color:#f5f4ef;z-index:2;background:#262b28;height:100svh;min-height:650px;position:relative;overflow:hidden}.hero-media,.hero-overlay,.hero-slide{position:absolute;inset:0}.hero-slide{opacity:0;transition:opacity .85s,transform 3.2s cubic-bezier(.2,.7,.2,1);transform:scale(1.045)}.hero-slide.is-active{opacity:1;transform:scale(1)}.hero-slide img{object-fit:cover}.hero-overlay{z-index:1;background:linear-gradient(#06080714,#06080708 34%,#0608075c)}.hero-copy{z-index:2;position:absolute;top:13vh;left:28px;right:28px}.hero-kicker,.eyebrow{letter-spacing:.1em;text-transform:uppercase;margin:0 0 20px;font-size:10px}.hero h1{letter-spacing:0;text-transform:uppercase;margin:0;font-size:clamp(100px,17vw,280px);font-weight:800;line-height:.76}.hero h1 span{display:block}.hero-project{text-transform:uppercase;grid-template-columns:70px 110px minmax(180px,330px);gap:4px 22px;max-width:600px;margin-top:38px;font-size:11px;display:grid}.hero-project strong{font-weight:400}.hero-project-index{color:var(--acid)}.scroll-cue{color:#111210;z-index:2;background:#f5f4ef;border-radius:50%;justify-content:center;align-items:center;width:78px;height:78px;display:flex;position:absolute;bottom:25px;right:28px}.scroll-cue span,.hero-meta{letter-spacing:.08em;text-transform:uppercase;font-size:9px}.scroll-cue span{text-align:center;max-width:50px}.hero-meta{z-index:2;justify-content:space-between;display:flex;position:absolute;bottom:30px;left:28px;right:28px}.menu-panel{background:var(--paper);color:var(--ink);opacity:0;pointer-events:none;z-index:60;transition:opacity .45s,transform .45s;position:fixed;inset:0;transform:translateY(-10px)}.menu-panel.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.menu-panel-inner{grid-template-columns:minmax(230px,.7fr) 1fr;gap:7vh;height:100%;padding:150px 28px 28px;display:grid}.menu-intro{flex-direction:column;justify-content:space-between;display:flex}.menu-statement{max-width:460px;margin:0;font-size:clamp(36px,4vw,68px);line-height:.92}.menu-nav{align-self:center;gap:11vh;display:grid}.menu-group{border-top:1px solid var(--line);padding-top:12px}.menu-label{letter-spacing:.08em;text-transform:uppercase;margin:0 0 18px;font-size:10px}.menu-links{gap:13px;display:grid}.menu-links a{flex-wrap:wrap;align-items:baseline;gap:12px;transition:color .25s;display:flex}.menu-link-main{font-size:clamp(44px,4.6vw,88px);line-height:.9}.menu-link-sub{font-size:clamp(14px,1vw,20px);line-height:1}.menu-links a:hover{color:var(--acid)}.menu-footer{border-top:1px solid var(--line);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:end;padding-top:12px;font-size:10px;display:flex}.dark-page-shell{background:var(--paper);isolation:isolate;position:relative;overflow:hidden}.dark-page-shell>:not(.unicorn-background){z-index:2;position:relative}.unicorn-background{filter:brightness(1.72)saturate(1.68)contrast(1.1);mix-blend-mode:screen;opacity:0;pointer-events:none;visibility:hidden;z-index:1;width:100%;transition:opacity .35s;position:fixed;inset:0}.unicorn-background>div{width:100%;height:100%}.work-index{color:var(--ink);background:#050607b8;min-height:100svh;padding:0}.work-index-inner{grid-template-columns:minmax(0,.9fr) minmax(420px,.78fr);gap:5vw;min-height:100svh;padding:106px 28px 38px;display:grid;position:relative}.work-language{flex-direction:column;justify-content:flex-start;align-self:stretch;min-height:calc(100svh - 144px);display:flex}.work-language h2{text-transform:uppercase;max-width:850px;margin:0;font-size:clamp(48px,5.65vw,112px);font-weight:800;line-height:.84}.work-language h2 span{display:block}.work-language-translation{border-top:1px solid var(--line);max-width:560px;margin:auto 0 0;padding-top:16px}.work-language-translation p{margin:0}.work-language-en{font-size:clamp(15px,1.15vw,20px);line-height:1.25}.work-language-cn{font-size:13px;line-height:1.5;margin-top:12px!important}.work-cover-stage{aspect-ratio:16/9;align-self:center;width:100%;position:relative}.work-cover{appearance:none;cursor:zoom-in;opacity:0;background:0 0;border:0;padding:0;transition:opacity .55s,transform .7s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0;transform:translateY(24px)scale(.96)}.work-cover.is-active{opacity:1;transform:translateY(0)scale(1)}.work-cover img{object-fit:contain}.project-page{color:var(--project-ink);background:#050607b8;grid-template-columns:minmax(300px,.55fr) minmax(0,1fr);gap:28px;min-height:100svh;padding:110px 28px 28px;scroll-margin-top:0;display:grid;position:relative;overflow:hidden}.project-page.project-layout-1{grid-template-columns:minmax(260px,.46fr) minmax(0,1fr)}.project-page.project-layout-2{grid-template-columns:minmax(0,1fr) minmax(300px,.5fr)}.project-page.project-layout-2 .project-copy{order:2}.project-page.project-layout-2 .project-visuals{order:1}.project-page.project-layout-3{grid-template-columns:minmax(320px,.62fr) minmax(0,1fr)}.project-page:after{border-top:1px solid var(--project-ink)}@supports (color:color-mix(in lab, red, red)){.project-page:after{border-top:1px solid color-mix(in srgb, var(--project-ink) 28%, transparent)}}.project-page:after{content:"";position:absolute;bottom:28px;left:28px;right:28px}.project-copy{flex-direction:column;align-self:end;min-height:calc(100svh - 138px);padding-bottom:48px;display:flex}.project-copy h2{text-transform:uppercase;max-width:560px;margin:auto 0 18px;font-size:clamp(44px,4.7vw,88px);font-weight:800;line-height:.9}.project-cn{margin:0 0 34px;font-size:clamp(16px,1.4vw,24px)}.project-description{max-width:390px;margin:0;font-size:clamp(14px,.92vw,17px);line-height:1.45}.project-meta{text-transform:uppercase;gap:32px;margin-top:42px;font-size:11px;display:flex}.project-visuals{grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;gap:6px;min-height:calc(100svh - 138px);display:grid}.project-layout-1 .project-visuals{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)}.project-layout-1 .project-slide:nth-child(2){grid-row:span 2}.project-layout-2 .project-visuals{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)}.project-layout-2 .project-slide:nth-child(4){grid-column:1/-1}.project-layout-3 .project-visuals{grid-template-columns:minmax(0,1fr) minmax(0,1fr);transform:translateY(-2vh)}.project-page.project-stack-slides{min-height:auto}.project-page.project-stack-slides .project-visuals{grid-template-columns:1fr;align-content:start;min-height:0}.project-page.project-stack-slides .project-slide{aspect-ratio:16/9}.project-visuals.slide-count-1{grid-template-columns:1fr;justify-self:end;width:100%}.project-visuals.slide-count-1 .project-slide{align-self:center;min-height:min(72svh,820px)}.project-visuals.slide-count-2{grid-template-columns:1fr;justify-self:end;width:100%;max-width:min(760px,100%)}.project-slide{aspect-ratio:16/9;cursor:zoom-in;background:0 0;border:0;width:100%;margin:0;padding:0;display:block;position:relative;overflow:hidden}.project-title-card{aspect-ratio:16/9;text-align:center;text-transform:uppercase;border-top:1px solid #f4f1eb38;border-bottom:1px solid #f4f1eb38;flex-direction:column;justify-content:center;align-items:center;min-height:0;margin:0;padding:28px;display:flex}.project-title-card span{color:#f4f1eb94;letter-spacing:.08em;margin-bottom:16px;font-size:11px;font-weight:800}.project-title-card strong{font-size:clamp(18px,1.5vw,30px);line-height:1.1}.project-title-card em{margin-top:10px;font-size:clamp(15px,1vw,20px);font-style:normal}.project-visuals img{object-fit:contain;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.project-page:hover .project-visuals img{transform:scale(1.01)}.image-lightbox{cursor:zoom-out;z-index:120;background:#040506fa;border:0;justify-content:center;align-items:center;padding:3.2vh 3.2vw;animation:.34s cubic-bezier(.16,.84,.22,1) lightbox-in;display:flex;position:fixed;inset:0;overflow:hidden}.lightbox-orbit{pointer-events:none;border:1px solid #f4f1eb3d;border-radius:50%;width:min(78vw,78vh);height:min(78vw,78vh);animation:.7s cubic-bezier(.16,.84,.22,1) orbit-in;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-12deg)}.image-lightbox img{image-rendering:auto;animation:.44s cubic-bezier(.16,.84,.22,1) image-zoom-in}.lightbox-hint{color:#f4f1eb99;letter-spacing:.12em;text-transform:uppercase;font-size:10px;position:absolute;bottom:24px}@keyframes lightbox-in{0%{opacity:0}to{opacity:1}}@keyframes image-zoom-in{0%{opacity:0;transform:scale(.78)translateY(4vh)rotate(.7deg)}to{opacity:1;transform:scale(1)}}@keyframes orbit-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.72)rotate(-24deg)}to{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(-12deg)}}.about-section{color:var(--ink);background:#050607b8;grid-template-columns:1fr .88fr;gap:10vw;min-height:100svh;padding:150px 28px 80px;display:grid}.about-section .eyebrow{color:#f4f1eb99}.about-section h2{text-transform:uppercase;margin:0 0 60px;font-size:clamp(56px,7.3vw,124px);font-weight:800;line-height:.85}.about-body{max-width:420px;margin:0 0 14px;font-size:15px;line-height:1.3}.about-name-cn{border-top:1px solid var(--line);max-width:420px;margin:-32px 0 34px;padding-top:14px;font-size:clamp(18px,1.4vw,28px);line-height:1.1}.about-body-cn{color:#f4f1ebb8;max-width:420px;margin:0 0 45px;font-size:13px;line-height:1.45}.text-link{border-bottom:1px solid var(--line);justify-content:space-between;width:220px;padding-bottom:10px;font-size:12px;display:inline-flex}.text-link span{color:var(--acid);font-size:16px}.portrait-frame{aspect-ratio:.78;background:#2c302d;align-self:end;width:100%;max-width:590px;position:relative;overflow:hidden}.portrait-frame img{filter:grayscale();object-fit:cover;transition:filter .6s,transform .8s}.portrait-frame:hover img{filter:grayscale(0);transform:scale(1.03)}.resume-slide-page{background:#050607b8;height:100svh;min-height:640px;position:relative;overflow:hidden}.resume-slide-button{cursor:zoom-in;background:0 0;border:0;padding:0;position:absolute;inset:0}.resume-slide-page img{object-fit:contain}.experience-section{color:var(--ink);background:#050607b8;grid-template-rows:auto 1fr auto;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);min-height:100svh;padding:124px 28px 42px;display:grid;position:relative;overflow:hidden}.experience-heading{grid-area:1/1;align-self:start}.experience-heading h2{text-transform:uppercase;margin:70px 0 0;font-size:clamp(54px,7.5vw,136px);font-weight:800;line-height:.82}.experience-heading h2 span{display:block}.experience-heading-cn{margin:16px 0 0;font-size:clamp(20px,1.8vw,32px)}.experience-devices{grid-area:1/2/span 3;place-self:center end;width:100%;max-width:min(66vw,860px);height:min(74svh,760px);position:relative}.experience-computer-frame{background:0 0;padding:0;transition:filter .55s,transform .55s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0}.experience-computer-frame:after{content:"";pointer-events:none;background:radial-gradient(#ffffff2e,#0000 70%);height:14%;transition:opacity .55s,transform .55s;position:absolute;bottom:4%;left:11%;right:11%;transform:scale(.9)}.experience-computer-frame img{filter:grayscale();object-fit:contain;transition:filter .55s,transform .55s cubic-bezier(.2,.7,.2,1)}.experience-computer-frame:hover{filter:drop-shadow(0 20px 28px #0000006b);transform:translateY(-12px)}.experience-computer-frame:hover img{filter:grayscale(0)}.experience-computer-frame:hover:after{opacity:.62;transform:scale(1.05)}.experience-column{border-top:1px solid var(--line);padding-top:12px;font-size:13px;line-height:1.45}.experience-column p{margin:0 0 18px}.experience-education{grid-area:3/1;align-self:end;max-width:330px}.experience-skills{grid-area:2/1;align-self:end;max-width:220px;margin-bottom:28px}.experience-label{letter-spacing:.08em;text-transform:uppercase;font-size:10px;margin-bottom:24px!important}.experience-label span{color:#f4f1eb94;letter-spacing:0;text-transform:none;margin-top:5px;font-size:11px;display:block}.site-footer{border-top:1px solid var(--line);color:var(--ink);background:#050607b8;justify-content:space-between;min-height:58svh;padding:28px;display:flex}.site-footer .eyebrow{color:#f4f1eb99}.footer-title{margin:105px 0 0;font-size:clamp(42px,6vw,90px);line-height:.84}.footer-right{letter-spacing:.06em;text-transform:uppercase;flex-direction:column;align-items:flex-end;gap:5px;font-size:10px;display:flex}@media (width<=1000px){.menu-panel-inner{grid-template-columns:1fr;padding-top:130px}.menu-intro{display:block}.menu-statement{margin-top:60px}.menu-nav{align-self:start;gap:48px}.project-page{grid-template-columns:1fr;min-height:auto}.project-copy{min-height:56svh}.project-visuals{min-height:68svh}.work-index{min-height:auto}.work-index-inner{grid-template-columns:1fr;height:auto;min-height:100svh;position:relative}.work-language{gap:80px}.work-cover-stage{position:relative}.about-section{grid-template-columns:1fr;gap:60px}.portrait-frame{max-width:440px}.experience-section{grid-template-rows:auto auto auto;grid-template-columns:1fr;min-height:auto;padding:110px 16px 80px}.experience-heading{grid-area:1/1}.experience-heading h2{margin-top:54px}.experience-devices{grid-area:2/1;justify-self:stretch;max-width:none;height:72vw;margin:70px 0}.experience-skills,.experience-education{grid-area:auto/1;max-width:none;margin:0 0 28px}}@media (width<=600px){.site-header{padding:18px 16px 16px}.wordmark,.menu-toggle{font-size:20px}.header-title{display:none}.hero-copy{top:13vh;left:16px;right:16px}.hero h1{font-size:clamp(78px,22vw,150px)}.hero-project{grid-template-columns:48px 66px 1fr;margin-top:32px;font-size:9px}.hero-meta{bottom:18px;left:16px;right:16px}.scroll-cue{width:66px;height:66px;bottom:18px;right:16px}.menu-panel-inner{padding:110px 16px 18px}.menu-link-main{font-size:clamp(38px,12vw,62px)}.work-index-inner{padding:100px 16px 70px}.work-language h2{font-size:clamp(34px,11vw,58px)}.work-language-en{font-size:14px}.project-page,.project-page.project-layout-1,.project-page.project-layout-2,.project-page.project-layout-3{grid-template-columns:1fr;gap:36px;padding:92px 16px 42px;overflow:visible}.project-page:after{bottom:16px;left:16px;right:16px}.project-copy,.project-visuals{min-width:0}.project-copy{min-height:auto;padding-bottom:0}.project-copy h2{overflow-wrap:anywhere;word-break:break-word;max-width:100%;margin:18px 0;font-size:clamp(42px,14vw,68px)}.project-cn{margin-bottom:24px;font-size:18px}.project-description{max-width:none}.project-meta{margin-top:28px}.project-visuals{grid-template-columns:1fr;align-content:start;min-height:0}.project-page.project-layout-1 .project-slide:nth-child(2){grid-row:auto}.project-page.project-layout-2 .project-copy,.project-page.project-layout-2 .project-visuals{order:initial}.project-page.project-layout-2 .project-slide:nth-child(4){grid-column:auto}.project-page.project-layout-3 .project-visuals{transform:none}.project-visuals.slide-count-1,.project-visuals.slide-count-2{justify-self:stretch}.project-visuals.slide-count-1 .project-slide{min-height:0}.about-section{padding:110px 16px 80px}.about-section h2{margin-bottom:42px;font-size:clamp(48px,13vw,74px)}.experience-section{overflow:visible}.experience-heading h2{letter-spacing:-.035em;font-size:clamp(38px,11vw,54px)}.experience-devices{height:72vw;margin:48px 0 56px}.site-footer{flex-direction:column;min-height:430px;padding:18px 16px}.footer-title{margin-top:100px}.footer-right{align-items:flex-start}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
