:root{color:#eeefef;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg:#101213;--surface:#171a1c;--line:#e9f0f426;--muted:#b1bec7;--accent:#b4dbe7;background:#101213;font-family:Manrope,PingFang SC,Microsoft YaHei,sans-serif;font-weight:400}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{min-width:320px;margin:0}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button,input{font:inherit}button{color:inherit;cursor:pointer;background:0 0;border:0}a{color:inherit;text-decoration:none}button:disabled{cursor:default}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:6px}img,video{max-width:100%;display:block}svg{flex-shrink:0}h1,h2,h3,p,figure{margin:0}::selection{color:#101213;background:#b4dbe7}button,a{transition:color .2s,background .2s,border-color .2s,opacity .2s}.skip-link{color:#111;z-index:100;background:#fff;padding:12px 20px;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.chapter-photo-window{perspective:1700px;overflow-anchor:none;overflow:clip}.chapter-photo-motion{transform-origin:50%;transform-style:preserve-3d}.journal-viewer[data-chapter-phase=exiting] .chapter-photo-motion,.journal-viewer[data-chapter-phase=entering] .chapter-photo-motion{will-change:transform, opacity}.chapter-status{z-index:25;color:#b8c8d3;border-radius:4px;max-width:calc(100% - 60px);margin:0;padding:0;font-size:14px;position:absolute;top:78px;left:30px}.journal-viewer{position:relative}.chapter-status:not(:empty){background:#14212df5;border:1px solid #b4dbe735;padding:8px 12px}.chapter-status button{color:var(--accent);border:1px solid #b4dbe760;border-radius:4px;margin-left:12px;padding:6px 14px}.chapter-status button:is(:hover,:focus-visible){color:#14202b;background:var(--accent)}.depth-carousel{isolation:isolate;width:100%;min-width:0;position:relative}.depth-stage{perspective:1700px;perspective-origin:50%;height:clamp(610px,72vh + 50px,950px);transform-style:preserve-3d;touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none;cursor:grab;margin:0 22px;position:relative;overflow:clip}.depth-stage:active{cursor:grabbing}.depth-stage:focus-visible{outline-offset:-3px;border-radius:6px}.depth-card,.depth-preview{opacity:0;pointer-events:none;cursor:pointer;background:#10171c;border:1px solid #ffffff2e;border-radius:6px;padding:0;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 16px 32px -18px #0009}.depth-card.is-front{border-color:#b4dbe760}.depth-card img{object-fit:contain;pointer-events:none;width:100%;height:100%}.depth-preview img{object-fit:cover;pointer-events:none;width:100%;height:100%}.depth-preview:after{content:"";pointer-events:none;background:#10121324;position:absolute;inset:0}.depth-load-status{z-index:60;color:#b8c8d3;max-width:calc(100% - 60px);margin:0;font-size:14px;position:absolute;top:64px;left:30px}.depth-load-status:not(:empty){background:#14212df5;border-radius:4px;padding:8px 12px}.depth-load-status button{border:1px solid #b4dbe760;margin-left:10px;padding:5px 12px}.depth-indicators{justify-content:center;gap:4px;padding:8px 20px 0;display:flex}.depth-dot{border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.depth-dot span{background:#7e94a3;border-radius:5px;width:7px;height:7px;transition:width .2s,background-color .2s}.depth-dot[aria-pressed=true] span{background:var(--accent);width:23px}.depth-dot:is(:hover,:focus-visible){background:#b4dbe71a}.depth-dot:is(:hover,:focus-visible) span{background:var(--accent)}.depth-carousel .gallery-caption{padding-top:12px}@media (width<=1200px){.depth-stage{margin-inline:16px}.depth-carousel .gallery-caption{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){.depth-card{will-change:auto}}.line-sidebar{--sidebar-accent:var(--accent);--sidebar-text:#b6c4ce;--sidebar-marker:#647b89;--marker-length:36px;--marker-gap:12px;--max-shift:14px;width:100%;max-height:min(640px,100svh - 220px);padding-left:calc(var(--marker-length) + var(--marker-gap));scrollbar-width:thin;scrollbar-color:#546671 transparent;margin-top:20px;padding-right:14px;position:relative;overflow:hidden auto}.line-sidebar__list{flex-direction:column;gap:10px;min-width:0;margin:0;padding:8px 0;list-style:none;display:flex}.line-sidebar__item{min-width:0;position:relative}.line-sidebar__button{text-align:left;border-radius:2px;align-items:center;gap:8px;width:100%;min-height:44px;padding:8px 0;display:flex}.line-sidebar__button:focus-visible{outline-offset:3px}.line-sidebar__label{white-space:nowrap;min-width:0;color:color-mix(in srgb, var(--sidebar-accent) calc(var(--effect,0) * 100%), var(--sidebar-text));transform:translateX(calc(var(--effect,0) * var(--max-shift)));align-items:baseline;gap:9px;font-size:18px;line-height:1.4;display:inline-flex}.line-sidebar__index{opacity:calc(.55 + var(--effect,0) * .45);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px}.line-sidebar__count{white-space:nowrap;color:color-mix(in srgb, var(--sidebar-accent) calc(var(--effect,0) * 100%), #8fa3b1);margin-left:auto;padding-left:10px;font-size:14px}.line-sidebar__marker{top:50%;left:calc(-1 * var(--marker-length) - var(--marker-gap));height:1px;width:var(--marker-length);pointer-events:none;background:color-mix(in srgb, var(--sidebar-accent) calc(var(--effect,0) * 100%), var(--sidebar-marker));transform-origin:0;transform:translateY(-50%) scaleX(calc(.7 + var(--effect,0) * .5));position:absolute}.line-sidebar__item:not(:last-child):after{content:"";top:calc(100% + 5px);left:calc(-1 * var(--marker-length) - var(--marker-gap));height:1px;width:calc(var(--marker-length) * .5);opacity:.5;background:var(--sidebar-marker);transform-origin:0;transform:scaleX(calc(.7 + var(--effect,0) * .6));pointer-events:none;position:absolute}@media (width<=1200px){.line-sidebar{--marker-length:28px;--max-shift:10px;padding-right:12px}}@media (prefers-reduced-motion:reduce){.line-sidebar__label{transform:none}.line-sidebar__marker{transform:translateY(-50%)}.line-sidebar__item:not(:last-child):after{transform:none}}.project-motion-ink{perspective:1200px}.project-tilt-scene{transform-style:preserve-3d;transform-origin:50%;position:absolute;inset:0}.project-tilt-scene .screens-composition{transform-style:preserve-3d}.project-tilt-photo{position:absolute;inset:0}.border-glow-hit{perspective:1200px;min-width:0;height:100%;position:relative}.strength-card-surface{transform-origin:50%;height:100%}.border-glow-card{--edge-proximity:0;--cursor-angle:45deg;isolation:isolate;border-radius:6px;position:relative;overflow:visible}.border-glow-card>:not(.edge-light){z-index:2;position:relative}.border-glow-card:before,.border-glow-card>.edge-light{content:"";border-radius:inherit;pointer-events:none;z-index:1;opacity:0;transition:opacity .28s ease-out;position:absolute;inset:-1px}.border-glow-card:before{background:linear-gradient(var(--card-bg) 0 100%) padding-box, radial-gradient(at 80% 55%, #9bdfff 0, transparent 50%) border-box, radial-gradient(at 8% 6%, #62b9e6 0, transparent 50%) border-box, linear-gradient(#3b7da7 0 100%) border-box;-webkit-mask-image:conic-gradient(from var(--cursor-angle) at center, black calc(var(--cone-spread) * 1%), transparent calc((var(--cone-spread) + 15) * 1%), transparent calc((100 - var(--cone-spread) - 15) * 1%), black calc((100 - var(--cone-spread)) * 1%));mask-image:conic-gradient(from var(--cursor-angle) at center, black calc(var(--cone-spread) * 1%), transparent calc((var(--cone-spread) + 15) * 1%), transparent calc((100 - var(--cone-spread) - 15) * 1%), black calc((100 - var(--cone-spread)) * 1%));border:1px solid #0000}.border-glow-card>.edge-light{inset:calc(var(--glow-padding) * -1);-webkit-mask-image:conic-gradient(from var(--cursor-angle) at center, black 2.5%, transparent 10%, transparent 90%, black 97.5%);mask-image:conic-gradient(from var(--cursor-angle) at center, black 2.5%, transparent 10%, transparent 90%, black 97.5%)}.border-glow-card>.edge-light:before{content:"";inset:var(--glow-padding);box-shadow:inset 0 0 0 1px hsl(var(--glow-ink) / .8), inset 0 0 4px hsl(var(--glow-ink) / .28), 0 0 3px hsl(var(--glow-ink) / .58), 0 0 7px hsl(var(--glow-ink) / .3), 0 0 12px hsl(var(--glow-ink) / .16);border-radius:6px;position:absolute}@media (width>=761px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.border-glow-hit[data-pointer-inside=true]>.border-glow-card:before{opacity:calc((var(--edge-proximity) - 50) / 50 * .85)}.border-glow-hit[data-pointer-inside=true]>.border-glow-card>.edge-light{opacity:calc((var(--edge-proximity) - var(--edge-sensitivity)) / (100 - var(--edge-sensitivity)))}.border-glow-hit:not([data-pointer-inside=true])>.border-glow-card:before,.border-glow-hit:not([data-pointer-inside=true])>.border-glow-card>.edge-light{transition-duration:.4s}}@media (width<=760px),(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.border-glow-card:before,.border-glow-card>.edge-light{display:none}}.opening-curtain,.opening-skip{display:none}.portfolio-root[data-opening=playing] .opening-curtain,.portfolio-root[data-opening=playing] .opening-skip{display:block}.opening-curtain{z-index:80;pointer-events:none;position:fixed;inset:0}.opening-panel{background:#101213;position:absolute;inset:0}.opening-lockup{color:#eeefef;flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex;position:absolute;inset:0}.opening-mark-mask{padding:.08em;overflow:hidden}.opening-mark{letter-spacing:-.07em;font-size:clamp(86px,11vw,160px);font-weight:700;line-height:1;display:block}.opening-mark span{color:var(--accent)}.opening-caption{letter-spacing:.32em;color:#b5c6d0;font-size:12px}.opening-rule{background:#b4dbe780;width:180px;height:1px}.opening-skip{z-index:90;color:#c8d6dd;border-bottom:1px solid #b4dbe755;padding:10px 0;font-size:14px;position:fixed;bottom:30px;right:40px}.hero-glyph-mask{vertical-align:bottom;margin-block:-.12em;padding-block:.12em;display:inline-block;overflow:hidden}.hero-glyph{transform-origin:50% 100%;display:inline-block}.hero-line-mask{display:block;overflow:hidden}.hero-line-copy{display:block}.chapter-heading.section-label{margin-bottom:48px;padding-top:22px;display:block}.chapter-meta{color:#aebfc8;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;font-size:15px;display:flex}.chapter-meta>span:first-child{letter-spacing:.16em;font-size:13px}.chapter-title{letter-spacing:-.018em;font-kerning:normal;color:#edf1f2;flex-wrap:wrap;align-items:baseline;gap:.06em .24em;font-size:clamp(64px,8.5vw,152px);font-weight:600;line-height:1.05;display:flex}.chapter-subtitle{color:#d6e2e8;letter-spacing:.08em;margin-top:22px;font-size:clamp(26px,1.9vw,30px);font-weight:500;line-height:1.4}.chapter-word-mask{margin-top:-.08em;padding-top:.08em;display:inline-block;overflow:hidden}.chapter-word{transform-origin:50% 100%;display:inline-block}.media-reveal{position:relative;overflow:hidden}.image-shutter{z-index:4;pointer-events:none;background:#18232b;position:absolute;inset:-1px;transform:translateY(-102%)}.project-motion-ink,.project-parallax-plane{position:absolute;inset:0}@media (width<=1023px){.chapter-title{font-size:clamp(54px,9vw,94px)}.chapter-heading.section-label{margin-bottom:36px}}@media (width<=760px){.opening-caption{letter-spacing:.2em;font-size:10px}.opening-skip{font-size:13px;bottom:24px;right:28px}.chapter-title{letter-spacing:-.015em;font-size:clamp(40px,10.8vw,68px)}.chapter-subtitle{letter-spacing:.06em;margin-top:16px;font-size:22px}.chapter-meta{margin-bottom:22px;font-size:14px}.chapter-heading.section-label{margin-bottom:30px;padding-top:20px}}@media (prefers-reduced-motion:reduce){.portfolio-root .opening-curtain,.portfolio-root .opening-skip{display:none}}.glow-cursor-overlay{z-index:60;pointer-events:none;-webkit-user-select:none;user-select:none;--pointer-scale:1;position:fixed;inset:0}.glow-cursor-overlay *{pointer-events:none}.cursor-fluid{opacity:0;mix-blend-mode:screen;transition:opacity .18s;position:absolute;inset:0}.cursor-fluid canvas{width:100%;height:100%;display:block}.cursor-fluid[data-paused=true],.glow-cursor-overlay[data-engine=ring-only] .cursor-fluid{opacity:0!important}.cursor-pointer{z-index:1;opacity:0;width:14px;height:19px;position:absolute;top:0;left:0}.cursor-arrow{fill:#b4dbe747;stroke:#e2f5fcd1;stroke-width:1px;stroke-linejoin:round;filter:drop-shadow(0 1px 1px #152f48bb);transform:translate(-.75px,-.75px) scale(var(--pointer-scale));transform-origin:.75px .75px;transition:transform .12s ease-out;display:block;overflow:visible}.glow-cursor-overlay[data-active=true] .cursor-pointer{opacity:1}html.has-custom-cursor,html.has-custom-cursor *{cursor:none!important}html.has-custom-cursor input,html.has-custom-cursor textarea,html.has-custom-cursor select,html.has-custom-cursor [contenteditable],html.has-custom-cursor video{cursor:auto!important}@media (width<=760px),(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.glow-cursor-overlay{display:none}html.has-custom-cursor,html.has-custom-cursor *{cursor:revert!important}}.wrap{width:calc(100% - 112px);max-width:1700px;margin-inline:auto}.section{padding-block:100px}.content-surface{isolation:isolate;background:var(--bg);position:relative}.content-backdrop{z-index:-1;pointer-events:none;background:radial-gradient(at 75% 35%,#244257 0%,#14212d 40%,#101213 85%);height:100svh;margin-bottom:-100svh;position:sticky;top:0;overflow:hidden}.content-backdrop:after{content:"";background:linear-gradient(#101213 0%,#10121399 22%,#101213a6 72%,#101213 100%);position:absolute;inset:0}.muted{color:var(--muted)}.section-label{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:20px;margin-bottom:58px;padding-top:24px;font-size:16px;display:flex}.section-label>span:first-child{letter-spacing:.12em;font-size:14px}.section-heading{justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:48px;display:flex}h2{letter-spacing:-.045em;font-size:clamp(36px,3.3vw,56px);font-weight:500;line-height:1.4}.section-heading>p{color:var(--muted);padding-bottom:6px;font-size:18px;line-height:1.8}.button{border:1px solid var(--line);border-radius:2px;justify-content:center;align-items:center;gap:28px;min-height:54px;padding:16px 25px;font-size:16px;font-weight:500;display:inline-flex}.button-light{color:#13191d;background:#edf1f1;border-color:#edf1f1}.text-link{align-items:center;gap:20px;font-size:17px;display:inline-flex}.text-link:is(:hover,:focus-visible){color:var(--accent)}.wordmark{letter-spacing:-1.6px;font-size:30px;font-weight:800}.wordmark>span{color:var(--accent)}.header{z-index:30;border-bottom:1px solid #0000;transition:background .25s;position:fixed;inset:0 0 auto}.header-inner{justify-content:space-between;align-items:center;gap:24px;height:98px;display:flex}.header-inner>.wordmark{flex-shrink:0}.header nav{gap:clamp(32px,2vw,36px);display:flex}.header nav a{color:#e3e9ed;align-items:center;min-height:48px;padding:8px 2px;font-size:clamp(18px,1vw,20px);line-height:1.4;display:inline-flex;position:relative}.header nav a:after{content:"";background:var(--accent);opacity:0;width:24px;height:2px;transition:opacity .2s,transform .2s;position:absolute;bottom:3px;left:50%;transform:translate(-50%)scaleX(.5)}.header nav a[aria-current=location]{color:var(--accent)}.header nav a:is(:hover,:focus-visible){color:#14202b;background:var(--accent);box-shadow:8px 0 0 var(--accent), -8px 0 0 var(--accent);border-radius:2px}.header nav a[aria-current=location]:after{opacity:1;transform:translate(-50%)scaleX(1)}.header nav a:is(:hover,:focus-visible):after{background:#14202b}.header-scrolled{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom-color:var(--line);background:#101213ed}.header-scrolled .header-inner{height:82px}.menu-toggle{display:none}.hero{isolation:isolate;background:#172c3a;min-height:max(790px,100svh);position:relative;overflow:hidden}.hero-media,.hero-shade{z-index:-1;position:absolute;inset:0}.hero-media video,.hero-poster{object-fit:cover;object-position:60% 50%;width:100%;height:100%}.hero-poster{position:absolute;inset:0}.hero-media video{z-index:1;position:absolute;inset:0}.hero-shade{background:linear-gradient(90deg,#0006,#0000 62%),linear-gradient(#0000 75%,#10121366 92%,#101213 100%)}.hero-content{flex-direction:column;min-height:max(790px,100svh);padding-top:clamp(180px,23vh,300px);display:flex}.hero-name{flex-direction:column;align-items:flex-start;gap:22px;display:flex}.hero h1{letter-spacing:.025em;color:#e8f0f3;text-shadow:0 2px 12px #12304433;font-size:clamp(94px,10.9vw,200px);font-weight:500;line-height:1.12}.name-dot{color:var(--accent);margin-left:10px}.english-name{letter-spacing:.26em;color:#d1e3ec;white-space:nowrap;text-shadow:0 2px 15px #0009;padding-left:5px;font-size:13px}.hero-bottom{justify-content:space-between;align-items:flex-end;gap:35px;margin-top:40px;display:flex}.hero-line{text-shadow:0 2px 18px #0009;font-size:clamp(27px,2.2vw,42px);line-height:1.65}.hero-actions{align-items:center;gap:34px;margin-top:30px;display:flex}.hero-side>p{text-shadow:0 2px 12px #000;font-size:16px;line-height:1.8}.video-control{text-shadow:0 2px 9px #000;align-items:center;gap:12px;margin-top:28px;padding:0;font-size:14px;display:flex}.video-control svg{background:#0003;border:1px solid #fff8;border-radius:50%;width:38px;height:38px;padding:9px}.hero-foot{color:#c4ced4;justify-content:space-between;align-items:center;gap:20px;margin-top:auto;padding:48px 0 26px;font-size:14px;display:flex}.hero-foot>a{align-items:center;gap:13px;display:flex}.hero-foot svg{width:16px}.hero-foot>span:nth-child(2){margin-left:auto}.about{padding-top:78px}.about-grid{grid-template-columns:.76fr 1.24fr;align-items:start;gap:clamp(45px,5vw,96px);display:grid}.about-portrait{background:#172127;position:relative;overflow:hidden}.about-portrait>img{width:100%;height:auto}.portrait-caption{color:#fff;background:linear-gradient(#0000,#000b);justify-content:space-between;gap:15px;padding:60px 22px 23px;font-size:14px;display:flex;position:absolute;inset:auto 0 0}.about-copy h2{margin-bottom:32px}.bio{align-items:center;gap:25px;margin-bottom:28px;display:flex}.bio img{object-fit:contain;background:#fff;border-radius:3px;flex:0 0 136px;width:136px;height:154px}.bio h3{margin-bottom:14px;font-size:27px;font-weight:500;line-height:1.5}.bio p{color:#b9c2c8;font-size:18px;line-height:1.8}.about-description{color:#d0d7dc;max-width:38em;font-size:20px;line-height:1.85}.timeline{margin-top:30px}.timeline>div{border-top:1px solid var(--line);grid-template-columns:155px 1fr;gap:20px;padding:21px 0;display:grid}.timeline>div>span{color:var(--muted);padding-top:4px;font-size:15px}.timeline p{font-size:19px;line-height:1.6}.timeline small{color:var(--muted);margin-top:6px;font-size:16px;line-height:1.8;display:block}.about-email{overflow-wrap:anywhere;margin-top:10px;font-size:17px}.about-email svg{width:18px}.metrics{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:35px;margin-top:60px;padding-top:32px;display:grid}.metrics>div{flex-direction:column;gap:13px;display:flex}.metrics strong{letter-spacing:-.04em;font-size:clamp(40px,3.5vw,64px);font-weight:400;line-height:1.15}.metrics strong>span{margin-left:4px;font-size:.48em}.metrics>div>span{color:#b9c4cb;font-size:17px}.metrics>p{color:var(--muted);grid-column:1/-1;font-size:14px;line-height:1.7}.metrics>p br{display:none}.metrics>p br:after{content:" · "}.work{padding-top:30px}.projects{grid-template-columns:1.08fr 1fr;align-items:start;gap:clamp(32px,4vw,70px);display:grid}.project-dolla{padding-top:90px}.project-open{text-align:left;width:100%;padding:0;display:block}.project-image{aspect-ratio:1.42;background:#172a36;position:relative;overflow:hidden}.geo-image{background:#172530}.screens-composition{transition:transform .5s;position:absolute;inset:0}.screen-main{border-radius:4px;width:87%;max-width:none;position:absolute;top:17%;left:6%;transform:rotate(-5deg);box-shadow:0 18px 45px #0006}.screen-secondary{border-radius:4px;width:83%;max-width:none;position:absolute;top:56%;left:30%;transform:rotate(6deg);box-shadow:0 18px 45px #0006}.outdoor-cover{object-fit:cover;width:100%;height:100%;transition:transform .5s}.project-index{color:#fff;background:#0007;padding:6px 9px;font-size:14px;position:absolute;top:20px;left:20px}.project-open-circle{background:#10121380;border:1px solid #fff8;border-radius:50%;place-items:center;width:48px;height:48px;display:grid;position:absolute;bottom:20px;right:20px}.image-note{color:#f0f6fa;background:#101820de;max-width:calc(100% - 100px);padding:8px 11px;font-size:14px;position:absolute;bottom:20px;left:20px}.project-title{justify-content:space-between;align-items:center;gap:18px;padding-top:25px;display:flex}.project-type{color:#a5b4be;letter-spacing:.1em;margin-bottom:12px;font-size:14px;display:block}.project-title h3{letter-spacing:-.03em;font-size:clamp(24px,2vw,34px);font-weight:500;line-height:1.5}.project-summary{color:#bdc7ce;max-width:38em;margin-top:18px;font-size:18px;line-height:1.8}.tags{flex-wrap:wrap;gap:10px 16px;margin-top:22px;display:flex}.tags span{color:#acbdc8;border-bottom:1px solid #ffffff25;padding-bottom:7px;font-size:14px}.strengths-band{background:#10182066}.strengths-band .section{padding-block:85px}.strengths-grid{grid-template-columns:1fr 1fr;gap:22px;display:grid}.strength-card-surface{background:#1d2327;border:1px solid #ffffff1a;flex-direction:column;min-height:320px;padding:32px 34px;transition:border-color .25s;display:flex}.strength-top{color:#99acb8;justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}.strength-top>span{font-size:15px}.strength-card h3{margin-bottom:18px;font-size:26px;font-weight:500;line-height:1.5}.strength-card p{color:#c4cfd6;max-width:39em;padding-bottom:28px;font-size:18px;line-height:1.85}.strength-evidence{border-top:1px solid var(--line);color:#abc3d1;margin-top:auto;padding-top:18px;font-size:15px;line-height:1.85}.journal{padding-top:90px}.journal-layout{grid-template-columns:270px minmax(0,1fr);align-items:start;gap:50px;padding-right:22px;display:grid}.journal-index{min-width:0;position:sticky;top:120px}.journal-volume{color:#9fb0bc;font-size:15px}.destination-list{scrollbar-width:thin;scrollbar-color:#546671 transparent;max-height:640px;margin-top:20px;overflow-y:auto}.destination-list button{border-bottom:1px solid var(--line);text-align:left;color:#9eacb6;align-items:center;gap:16px;width:100%;min-height:54px;padding:15px 0;font-size:18px;display:flex}.destination-list button>span{color:#8ca1af;font-size:14px}.destination-list button>small{margin-left:auto;padding-right:8px;font-size:14px}.destination-list button.active{color:#f0f7fb}.destination-list button.active>span{color:var(--accent)}.journal-index>p{color:#98aab6;margin-top:24px;font-size:14px;line-height:1.8}.journal-viewer{background:#1b2329;border:1px solid #ffffff15;min-width:0;box-shadow:10px 18px 55px #0004}.destination-title{justify-content:space-between;align-items:center;gap:20px;padding:27px 30px 8px;font-size:30px;font-weight:500;display:flex}.destination-title>span{color:#a0b3bf;letter-spacing:.1em;font-size:15px}.media-gallery{width:100%;min-width:0;margin-top:30px}.journal-viewer .media-gallery{margin-top:0}.gallery-toolbar{color:#b8c8d3;justify-content:space-between;align-items:center;gap:20px;padding:19px 30px;font-size:16px;display:flex}.gallery-counter{font-variant-numeric:tabular-nums;font-size:15px}.gallery-viewport{touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none;cursor:grab;padding:0 24px;overflow:hidden}.gallery-viewport:active{cursor:grabbing}.gallery-track{align-items:stretch;width:100%;transition:transform .5s cubic-bezier(.2,.65,.2,1);display:flex}.gallery-slide{opacity:.45;flex:0 0 100%;min-width:0;padding:0 8px;transition:opacity .3s}.gallery-slide.is-active{opacity:1}.gallery-stage{background:#10171c;justify-content:center;align-items:center;height:min(65vh,760px);min-height:320px;display:flex}.gallery-stage>img{object-fit:contain;width:100%;height:100%}.gallery-caption{justify-content:space-between;align-items:center;gap:20px;padding:23px 30px;display:flex}.gallery-caption p{color:#d6e0e7;font-size:17px;line-height:1.65}.gallery-caption small{color:#a1b3c0;margin-top:5px;font-size:14px;line-height:1.7;display:block}.gallery-buttons{flex-shrink:0;align-items:center;gap:10px;display:flex}.gallery-buttons>button{border:1px solid #ffffff40;border-radius:50%;justify-content:center;align-items:center;min-width:46px;height:46px;display:inline-flex}.gallery-buttons>button:disabled{opacity:.25}.gallery-buttons .gallery-prev svg{transform:rotate(-135deg)}.gallery-buttons .gallery-next svg{transform:rotate(45deg)}.gallery-buttons .enlarge-button{border-radius:2px;gap:9px;padding:0 12px;font-size:14px}.enlarge-button svg{width:17px}.record-metrics{grid-template-columns:repeat(3,1fr);gap:20px;padding:25px 32px 0;display:grid}.record-metrics>div{flex-direction:column;gap:9px;display:flex}.record-metrics strong{letter-spacing:-.03em;font-size:33px;font-weight:500}.record-metrics span{color:#a6bdcc;font-size:15px}.gallery-video{cursor:auto;-webkit-user-select:auto;user-select:auto;touch-action:manipulation;flex-direction:column;justify-content:center;align-items:center;gap:15px;width:100%;height:100%;display:flex}.gallery-video video{object-fit:contain;width:100%;max-height:calc(100% - 65px)}.video-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.video-action{border:1px solid #8da7b9;border-radius:2px;justify-content:center;align-items:center;gap:12px;min-height:44px;padding:10px 20px;font-size:16px;display:flex}.gallery-video>p{padding-inline:20px;font-size:15px;line-height:1.7}.gallery-video a{text-decoration:underline}.project-dialog{width:100%;max-width:100%;height:100%;max-height:100%;color:inherit;overscroll-behavior:contain;background:0 0;border:0;padding:24px;position:fixed;inset:0;overflow-y:auto}.project-dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000c}.dialog-shell{background:#171e23;border:1px solid #ffffff30;max-width:1440px;margin:auto;box-shadow:0 20px 100px #0008}.dialog-top{z-index:3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);background:#171e23f5;justify-content:space-between;align-items:center;gap:25px;padding:18px 32px;display:flex;position:sticky;top:-24px}.dialog-top>span{color:#b7c7d2;font-size:14px;line-height:1.6}.dialog-close{border:1px solid #fff5;border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.dialog-close svg{width:22px;transform:rotate(45deg)}.dialog-body{padding:42px 48px 45px}.dialog-body h2{font-size:40px}.dialog-role{color:#afc5d4;margin-top:17px;font-size:17px;line-height:1.8}.dialog-intro{color:#d6e0e7;max-width:57em;margin-top:27px;font-size:20px;line-height:1.85}.dialog-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-block:35px;display:grid}.dialog-details h3{margin-bottom:14px;font-size:21px;font-weight:500;line-height:1.55}.dialog-details p{color:#bdcbd5;font-size:18px;line-height:1.85}.project-disclosure{color:#afc1ce;border-left:2px solid #7899af;margin-top:26px;padding-left:17px;font-size:15px;line-height:1.85}.gallery-tabs{flex-wrap:wrap;gap:12px;margin-top:35px;display:flex}.gallery-tabs button{color:#bdcfdb;border:1px solid #ffffff35;min-height:48px;padding:13px 19px;font-size:17px}.gallery-tabs button.active{color:#16222c;background:#b4dbe7;border-color:#b4dbe7}.dialog-body>.media-gallery{background:#111a20;border:1px solid #ffffff14}.image-lightbox{color:#edf3f7;background:#0b1015;border:0;width:100vw;max-width:100%;height:100dvh;max-height:100%;padding:0;position:fixed;inset:0}.image-lightbox::backdrop{background:#000e}.lightbox-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;height:84px;padding:15px 30px;font-size:17px;display:flex}.lightbox-toolbar>div{align-items:center;gap:25px;display:flex}.lightbox-toolbar button{min-height:44px;font-size:16px}.lightbox-body{place-items:center;height:calc(100dvh - 84px);padding:16px;display:grid;overflow:auto}.lightbox-body img{object-fit:contain;width:100%;height:100%;min-height:0}.lightbox-body.original-size{display:block}.lightbox-body.original-size img{width:auto;max-width:none;height:auto;margin:auto;display:block}.contact{background:#0b0f1273;min-height:100svh;display:flex}.contact-inner{flex-direction:column;padding-top:70px;display:flex}.contact .section-label{margin-bottom:60px}.contact-main{padding-bottom:45px}.contact-intro{color:#afc0cc;margin-bottom:25px;font-size:18px}.contact h2{letter-spacing:-.045em;font-size:clamp(42px,5vw,90px);font-weight:400;line-height:1.4}.contact h2>span{color:#aebdc7}.contact-email-row{flex-wrap:wrap;align-items:center;gap:26px;margin-top:40px;display:flex}.contact-email{letter-spacing:-.025em;overflow-wrap:anywhere;border-bottom:1px solid #fff5;align-items:center;gap:30px;padding-bottom:13px;font-size:clamp(22px,2.3vw,40px);display:inline-flex}.contact-email svg{width:28px;height:28px}.copy-button{color:#c0d5e3;border:1px solid #ffffff30;border-radius:2px;align-items:center;gap:10px;min-height:46px;padding:9px 13px;font-size:16px;display:inline-flex}.copy-button svg{width:18px}.contact-links{flex-wrap:wrap;gap:clamp(35px,5vw,90px);margin-top:35px;display:flex}.contact-links a{grid-template-columns:auto 22px;align-items:center;gap:10px 20px;min-height:65px;font-size:24px;display:grid}.contact-links small{color:#a0b3c1;grid-column:1/-1;font-size:15px}.contact-links svg{width:20px}.contact-links a:hover,.contact-email:hover{color:var(--accent)}.wechat-row{flex-wrap:wrap;align-items:center;gap:28px;margin-top:35px;display:flex}.wechat-row>div{flex-direction:column;gap:8px;display:flex}.wechat-row small{color:#a0b3c1;font-size:15px}.wechat-row span{-webkit-user-select:text;user-select:text;font-size:24px}.copy-status{color:#c4e4f5;overflow-wrap:anywhere;min-height:35px;margin-top:18px;font-size:15px;line-height:1.8}footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;margin-top:auto;padding-block:28px;display:flex}footer>span,footer>a:last-child{color:#a4b5c2;font-size:14px}footer>a:last-child{align-items:center;gap:12px;display:flex}footer>a:last-child svg{width:17px;transform:rotate(180deg)}:is(.button,.copy-button,.gallery-buttons>button,.video-action,.dialog-close,.gallery-tabs button,.lightbox-toolbar button,.destination-list button):not(:disabled):is(:hover,:focus-visible){background:var(--accent);color:#14202b;border-color:var(--accent)}.destination-list button:is(:hover,:focus-visible)>span,.destination-list button:is(:hover,:focus-visible)>small{color:inherit}:is(.video-control,.menu-toggle):is(:hover,:focus-visible){color:var(--accent)}.project-open:is(:hover,:focus-visible) .project-open-circle{background:var(--accent);color:#14202b;border-color:var(--accent)}.project-open:is(:hover,:focus-visible) h3{color:var(--accent)}.project-open-circle,.project-title h3{transition:color .2s,background-color .2s,border-color .2s}@media (width<=1200px){.wrap{width:calc(100% - 64px)}.header nav{gap:20px}.header nav a{font-size:15px}.about-grid{grid-template-columns:.75fr 1.25fr;gap:38px}.bio{gap:18px}.bio img{flex-basis:112px;width:112px;height:127px}.bio h3{font-size:24px}.bio p{font-size:17px}.about-description{font-size:18px}.timeline>div{grid-template-columns:130px 1fr;gap:15px}.timeline p{font-size:18px}.timeline small{font-size:15px}.hero-name{gap:20px}.english-name{letter-spacing:.22em;font-size:14px}.journal-layout{grid-template-columns:220px minmax(0,1fr);gap:30px}.destination-list button{font-size:17px}.dialog-details{grid-template-columns:1fr;gap:26px}.dialog-details p{max-width:58em}.gallery-caption{flex-wrap:wrap}.gallery-buttons{margin-left:auto}}@media (width<=900px){.header nav{gap:16px}.about-grid{grid-template-columns:1fr 1.25fr;gap:30px}.bio{flex-direction:column;align-items:flex-start}.bio img{flex-basis:auto;width:136px;height:154px}.section-heading{flex-direction:column;align-items:flex-start;gap:20px}.section-heading>p{font-size:17px}.timeline>div{grid-template-columns:1fr;gap:6px}.strength-card-surface{padding:26px}.journal-layout{grid-template-columns:minmax(0,1fr);gap:26px;padding-right:16px}.journal-index{position:static}.journal-volume,.journal-index>p{display:none}.destination-list{gap:12px;max-height:none;margin:0;padding:0 0 12px;display:flex;overflow:auto hidden}.destination-list button{border:1px solid var(--line);white-space:nowrap;flex-shrink:0;gap:12px;width:auto;padding:12px 14px;font-size:16px}.destination-list button>small{padding:0}.destination-list button.active{background:#1b2a34;border-color:#abcdda}.gallery-caption{padding:22px}.gallery-toolbar{padding:18px 22px}.journal-viewer .gallery-stage{height:60vh;min-height:340px}}@media (width<=760px){html{scroll-padding-top:88px}.wrap{width:calc(100% - 40px)}.section{padding-block:64px}.section-label{margin-bottom:34px;padding-top:20px;font-size:14px}.section-label>span:first-child{letter-spacing:.025em;font-size:14px}.header-inner,.header-scrolled .header-inner{justify-content:space-between;height:76px;display:flex}.wordmark{font-size:27px}.menu-toggle{align-items:center;gap:10px;min-height:44px;padding:8px 0;font-size:16px;display:flex}.menu-toggle svg{width:20px;transition:transform .2s}.menu-toggle .rotate{transform:rotate(45deg)}.header nav{border-bottom:1px solid var(--line);background:#101213fc;padding:18px 20px;display:none;position:absolute;inset:76px 0 auto}.header nav.nav-open{flex-direction:column;gap:0;display:flex}.header nav a{padding:14px 0;font-size:18px}.header nav a:after{bottom:7px;left:0;transform:scaleX(.5)}.header nav a[aria-current=location]:after{transform:scaleX(1)}.hero,.hero-content{min-height:max(760px,100svh)}.hero-content{padding-top:175px}.hero-name{display:block}.hero h1{font-size:clamp(76px,18vw,135px)}.name-dot{margin-left:0}.english-name{letter-spacing:.1em;margin-top:20px;padding:0;font-size:14px;display:block}.hero-bottom{margin-top:37px}.hero-line{font-size:27px}.hero-actions{gap:25px;margin-top:28px}.button{gap:18px;min-height:52px;padding:14px 20px;font-size:16px}.hero-actions .text-link{gap:10px;font-size:16px}.hero-side{position:absolute;bottom:77px;right:20px}.hero-side>p{display:none}.video-control{gap:9px;min-height:44px;margin-top:0;font-size:14px}.video-control svg{width:32px;height:32px;padding:7px}.hero-foot{padding-top:95px;padding-bottom:25px;font-size:14px}.hero-foot>span{display:none}.hero-media video,.hero-poster{object-position:52% 50%}.about-grid{flex-direction:column-reverse;gap:35px;display:flex}.about-copy h2{margin-bottom:28px;font-size:36px}.bio{flex-direction:row;align-items:center;gap:18px}.bio img{flex:0 0 96px;width:96px;height:109px}.bio h3{margin-bottom:8px;font-size:22px}.bio p{font-size:16px;line-height:1.75}.about-description{font-size:16px;line-height:1.85}.timeline>div{grid-template-columns:1fr;gap:5px;padding:19px 0}.timeline>div>span{font-size:14px}.timeline p{font-size:18px}.timeline small{font-size:16px}.about-email{gap:12px;max-width:100%;font-size:16px}.about-portrait{width:100%}.portrait-caption{padding:45px 18px 18px;font-size:14px}.metrics{gap:25px 8px;margin-top:36px;padding-top:26px}.metrics strong{font-size:36px}.metrics strong>span{margin-left:1px;font-size:17px}.metrics>div>span{font-size:14px;line-height:1.6}.metrics>p{font-size:14px}.work{padding-top:10px}.section-heading{gap:18px;margin-bottom:32px}h2{font-size:36px}.section-heading>p{font-size:16px;line-height:1.8}.projects{display:block}.project-dolla{padding-top:43px}.project-image{aspect-ratio:1.25}.project-type{letter-spacing:.03em;font-size:14px}.project-title h3{font-size:26px}.project-summary{font-size:16px;line-height:1.85}.project-title{padding-top:23px}.tags{gap:10px 14px}.tags span{font-size:14px}.image-note{padding:7px 9px;font-size:14px;bottom:14px;left:12px}.project-index{top:14px;left:14px}.project-open-circle{width:44px;height:44px;bottom:14px;right:13px}.strengths-band .section{padding-block:62px}.strengths-grid{grid-template-columns:1fr;gap:16px}.strength-card-surface{min-height:0;padding:25px}.strength-top{margin-bottom:20px}.strength-card h3{margin-bottom:15px;font-size:24px}.strength-card p{padding-bottom:23px;font-size:16px}.strength-evidence{font-size:14px}.journal-layout{gap:20px;padding-right:13px}.destination-title{padding:23px 20px 4px;font-size:25px}.destination-title>span{font-size:14px}.gallery-toolbar{padding:18px;font-size:15px}.gallery-counter{font-size:14px}.gallery-viewport{padding:0 14px}.gallery-slide{padding:0 5px}.gallery-stage,.journal-viewer .gallery-stage{height:58vh;min-height:300px}.gallery-caption{gap:16px;padding:20px 18px}.gallery-caption p{font-size:16px}.gallery-caption small{font-size:14px}.gallery-buttons{gap:8px}.gallery-buttons>button{min-width:44px;height:44px}.gallery-buttons .enlarge-button{gap:5px;padding:0 10px;font-size:14px}.record-metrics{gap:12px;padding:22px 20px 0}.record-metrics strong{font-size:27px}.record-metrics span{font-size:14px}.video-action{min-height:44px;font-size:16px}.project-dialog{padding:10px}.dialog-top{gap:12px;padding:15px 18px;top:-10px}.dialog-top>span{font-size:14px}.dialog-body{padding:28px 18px}.dialog-body h2{font-size:29px}.dialog-role{margin-top:16px;font-size:16px}.dialog-intro{margin-top:23px;font-size:16px}.dialog-details{gap:25px;margin-block:28px}.dialog-details h3{margin-bottom:12px;font-size:22px}.dialog-details p{font-size:16px}.project-disclosure{padding-left:14px;font-size:14px}.gallery-tabs{gap:10px;margin-top:30px}.gallery-tabs button{min-height:46px;padding:12px 15px;font-size:16px}.dialog-body>.media-gallery .gallery-toolbar{flex-wrap:wrap;gap:9px}.dialog-body>.media-gallery .gallery-stage{height:54vh;min-height:260px}.lightbox-toolbar{gap:12px;height:auto;min-height:84px;padding:15px;font-size:16px}.lightbox-toolbar>div{flex-shrink:0;gap:12px}.lightbox-toolbar button{font-size:14px}.lightbox-body{height:calc(100dvh - 100px);padding:10px}.contact-inner{padding-top:48px}.contact .section-label{margin-bottom:50px}.contact-intro{margin-bottom:24px;font-size:16px;line-height:1.8}.contact h2{font-size:clamp(36px,8vw,57px)}.contact-email-row{gap:18px;margin-top:30px}.contact-email{gap:12px;max-width:100%;font-size:clamp(18px,4.6vw,25px)}.contact-email svg{width:20px;height:20px}.copy-button{min-height:46px;font-size:16px}.contact-links{gap:28px 35px;margin-top:31px}.contact-links a{gap:8px 12px;min-height:59px;font-size:18px}.contact-links small{font-size:14px}.contact-links svg{width:17px}.wechat-row{gap:23px;margin-top:30px}.wechat-row span{font-size:20px}.wechat-row small,.copy-status{font-size:14px}.contact-main{padding-bottom:40px}footer{flex-wrap:wrap;gap:13px;padding-block:25px}footer>span,footer>a:last-child{font-size:14px}}
