.border-glow-card{--edge-proximity: 0;--cursor-angle: 45deg;--edge-sensitivity: 30;--color-sensitivity: calc(var(--edge-sensitivity) + 20);--border-radius: 28px;--glow-padding: 40px;--cone-spread: 25;background:var(--card-bg, #120f17);border:1px solid rgb(255 255 255 / 15%);border-radius:var(--border-radius);box-shadow:#0000001a 0 1px 2px,#0000001a 0 2px 4px,#0000001a 0 4px 8px,#0000001a 0 8px 16px,#0000001a 0 16px 32px,#0000001a 0 32px 64px;display:grid;isolation:isolate;overflow:visible;position:relative;transform:translateZ(.01px)}.border-glow-card:before,.border-glow-card:after,.border-glow-card>.edge-light{border-radius:inherit;content:"";top:0;right:0;bottom:0;left:0;position:absolute;transition:opacity .25s ease-out;z-index:-1}.border-glow-card:not(:hover):not(.sweep-active):before,.border-glow-card:not(:hover):not(.sweep-active):after,.border-glow-card:not(:hover):not(.sweep-active)>.edge-light{opacity:0;transition:opacity .75s ease-in-out}.border-glow-card:before{background:linear-gradient(var(--card-bg, #120f17) 0 100%) padding-box,linear-gradient(#fff0,#fff0) border-box,var(--gradient-one) border-box,var(--gradient-two) border-box,var(--gradient-three) border-box,var(--gradient-four) border-box,var(--gradient-five) border-box,var(--gradient-six) border-box,var(--gradient-seven) border-box,var(--gradient-base) border-box;border:1px solid transparent;-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%));opacity:calc((var(--edge-proximity) - var(--color-sensitivity)) / (100 - var(--color-sensitivity)))}.border-glow-card:after{background:var(--gradient-one) padding-box,var(--gradient-two) padding-box,var(--gradient-three) padding-box,var(--gradient-four) padding-box,var(--gradient-five) padding-box,var(--gradient-six) padding-box,var(--gradient-seven) padding-box,var(--gradient-base) padding-box;border:1px solid transparent;-webkit-mask-composite:source-out,source-over,source-over,source-over,source-over,source-over;mask-composite:subtract,add,add,add,add,add;-webkit-mask-image:linear-gradient(to bottom,#000,#000),radial-gradient(ellipse at 50% 50%,black 40%,transparent 65%),radial-gradient(ellipse at 66% 66%,black 5%,transparent 40%),radial-gradient(ellipse at 33% 33%,black 5%,transparent 40%),radial-gradient(ellipse at 66% 33%,black 5%,transparent 40%),radial-gradient(ellipse at 33% 66%,black 5%,transparent 40%),conic-gradient(from var(--cursor-angle) at center,transparent 5%,black 15%,black 85%,transparent 95%);mask-image:linear-gradient(to bottom,#000,#000),radial-gradient(ellipse at 50% 50%,black 40%,transparent 65%),radial-gradient(ellipse at 66% 66%,black 5%,transparent 40%),radial-gradient(ellipse at 33% 33%,black 5%,transparent 40%),radial-gradient(ellipse at 66% 33%,black 5%,transparent 40%),radial-gradient(ellipse at 33% 66%,black 5%,transparent 40%),conic-gradient(from var(--cursor-angle) at center,transparent 5%,black 15%,black 85%,transparent 95%);mix-blend-mode:soft-light;opacity:calc(var(--fill-opacity, .5) * (var(--edge-proximity) - var(--color-sensitivity)) / (100 - var(--color-sensitivity)))}.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%);mix-blend-mode:plus-lighter;opacity:calc((var(--edge-proximity) - var(--edge-sensitivity)) / (100 - var(--edge-sensitivity)));pointer-events:none;z-index:1}.border-glow-card>.edge-light:before{border-radius:inherit;box-shadow:inset 0 0 0 1px var(--glow-color),inset 0 0 1px 0 var(--glow-color-60),inset 0 0 3px 0 var(--glow-color-50),inset 0 0 6px 0 var(--glow-color-40),inset 0 0 15px 0 var(--glow-color-30),inset 0 0 25px 2px var(--glow-color-20),inset 0 0 50px 2px var(--glow-color-10),0 0 1px 0 var(--glow-color-60),0 0 3px 0 var(--glow-color-50),0 0 6px 0 var(--glow-color-40),0 0 15px 0 var(--glow-color-30),0 0 25px 2px var(--glow-color-20),0 0 50px 2px var(--glow-color-10);content:"";inset:var(--glow-padding);position:absolute}.border-glow-inner{display:flex;flex-direction:column;overflow:hidden;position:relative;z-index:1}:root{color:#f3f7fb;background:#050609;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:geometricPrecision;-webkit-font-smoothing:antialiased;--glass: rgba(255, 255, 255, .08);--glass-strong: rgba(255, 255, 255, .15);--stroke: rgba(255, 255, 255, .18);--muted: rgba(232, 240, 248, .68);--ink: #f5f7f9;--cyan: #7de3ff;--lime: #c7ff72;--rose: #ff8baa}*{box-sizing:border-box}html{overflow-x:hidden;scroll-behavior:smooth}body{margin:0;min-width:320px;overflow-x:hidden;background:radial-gradient(circle at 18% 6%,rgba(125,227,255,.16),transparent 30%),radial-gradient(circle at 88% 18%,rgba(255,139,170,.12),transparent 28%),linear-gradient(180deg,#06070a,#0b0f14 46%,#050609);color:var(--ink)}.opening-curtain{background:linear-gradient(90deg,#050609,#0b1218 54%,#050609),radial-gradient(circle at 34% 48%,rgba(125,227,255,.18),transparent 36%);top:0;right:0;bottom:0;left:0;pointer-events:none;position:fixed;z-index:100}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}body.has-lightbox{overflow:hidden}.section{min-height:100vh;padding:116px clamp(20px,5vw,72px);position:relative}.glass-panel,.glass-line,.contact-actions a,.expand-button,.primary-action{background:linear-gradient(135deg,#ffffff29,#ffffff0d),#ffffff0a;border:1px solid var(--stroke);box-shadow:inset 0 1px #ffffff3d,0 22px 80px #00000052;backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%)}.nav{align-items:center;display:grid;grid-template-columns:1fr auto 1fr;gap:18px;min-height:54px;padding:0 16px 0 18px}.nav-glow{left:50%;max-width:min(1120px,calc(100vw - 32px));position:fixed;top:18px;transform:translate(-50%);width:100%;z-index:20}.nav-glow .border-glow-inner{backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%);border-radius:inherit}.brand,.nav-links,.eyebrow,.expand-button,.contact-actions a{align-items:center;display:inline-flex}.brand{gap:9px;font-size:14px;font-weight:700;letter-spacing:0}.nav-links{gap:10px}.nav-links a{border-radius:999px;color:var(--muted);font-size:13px;padding:9px 12px;transition:background .18s ease,color .18s ease}.nav-links a:hover{background:#ffffff1a;color:#fff}.hero{align-items:center;display:flex;justify-content:center;overflow:hidden}.hero:after{background:radial-gradient(circle at center,#0506091a,#050609b8 72%),linear-gradient(90deg,#05060985,#0506092e 44%,#050609b3),linear-gradient(0deg,#050609e0,#0506092e 46%,#050609a8);content:"";top:0;right:0;bottom:0;left:0;position:absolute;z-index:1}.hero-media{background:linear-gradient(#0506092e,#0506092e),url(/optimized/hero-shanghai-dusk.webp) center/cover;filter:blur(7px) saturate(.96) contrast(1.08);top:-18px;right:-18px;bottom:-18px;left:-18px;position:absolute;transform:scale(1.04)}.hero-media:after{background-image:radial-gradient(circle at 18% 24%,rgba(255,255,255,.17) 0 1px,transparent 1px),radial-gradient(circle at 72% 36%,rgba(255,255,255,.11) 0 1px,transparent 1px),radial-gradient(circle at 42% 78%,rgba(0,0,0,.3) 0 1px,transparent 1px);background-size:3px 3px,5px 5px,4px 4px;content:"";top:0;right:0;bottom:0;left:0;mix-blend-mode:overlay;opacity:.22;pointer-events:none;position:absolute}.hero-content-wrap{margin:0 auto;max-width:920px;position:relative;width:min(920px,100%);z-index:2}.hero-content{text-align:center}.hero-title-mask{overflow:hidden}.hero-title{will-change:transform}.eyebrow{border-radius:999px;color:var(--muted);gap:8px;margin-bottom:24px;padding:10px 14px;width:fit-content}.hero h1{font-size:clamp(20px,3vw,36px);font-weight:500;line-height:1.55;margin:0;max-width:920px}.contact p{color:var(--muted);font-size:clamp(16px,1.7vw,22px);line-height:1.7;margin:22px auto 0;max-width:680px}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:30px}.primary-action{border-radius:999px;font-weight:700;justify-content:center;min-width:128px;padding:13px 18px}.primary-action{background:linear-gradient(135deg,#7de3ff6b,#c7ff7233),#ffffff14}.section-heading{margin:0 auto 34px;max-width:1180px}.section-heading span,.contact span{color:var(--cyan);display:block;font-size:clamp(42px,9vw,126px);font-weight:800;line-height:.8;margin-bottom:18px;opacity:.2;text-transform:uppercase;transform-origin:left center}.section-heading h2{font-size:clamp(32px,5vw,68px);line-height:1;margin:0}.split{align-items:end;display:flex;justify-content:space-between;gap:24px}.about-grid{display:grid;gap:22px;grid-template-columns:minmax(280px,.85fr) minmax(300px,1.15fr);margin:0 auto;max-width:1180px}.portrait-card,.bio-card{min-width:0}.portrait-card .border-glow-inner,.bio-card .border-glow-inner{backdrop-filter:blur(22px) saturate(132%);-webkit-backdrop-filter:blur(22px) saturate(132%);border-radius:inherit;height:100%}.portrait{aspect-ratio:4 / 5;border-radius:inherit;overflow:hidden;position:relative}.portrait img{height:100%;object-fit:cover;position:relative;will-change:transform;width:100%}.portrait-glow{background:linear-gradient(135deg,var(--cyan),transparent 40%,var(--rose));filter:blur(34px);top:12%;right:12%;bottom:12%;left:12%;opacity:.32;position:absolute}.bio{display:flex;flex-direction:column;justify-content:end;min-height:100%;padding:clamp(24px,5vw,56px)}.bio p{color:#f5f7f9d1;font-size:clamp(15px,1.35vw,19px);line-height:1.75;margin:0 0 16px}.stats{border-top:1px solid rgba(255,255,255,.14);display:grid;gap:16px;grid-template-columns:repeat(2,1fr);margin-top:26px;padding-top:26px}.stats strong{display:block;font-size:clamp(26px,4vw,48px)}.stats span{color:var(--muted);font-size:13px}.works{min-height:auto}.gallery{--work-row-height: clamp(150px, 18vw, 230px);align-items:flex-start;display:flex;flex-wrap:wrap;gap:10px;margin:0 auto;max-width:1280px}.empty-gallery{background:#ffffff0a;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:var(--muted);display:block;font-size:14px;line-height:1.7;padding:28px;text-align:center}.work-card{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:6px;display:block;flex:0 0 calc(var(--work-ratio) * var(--work-row-height));font:inherit;height:var(--work-row-height);margin:0;overflow:hidden;padding:0;position:relative;text-align:inherit;will-change:transform,clip-path;width:100%}.work-card img{display:block;height:100%;object-fit:contain;transition:transform .5s ease;will-change:transform;width:100%}.work-card:hover img{transform:none}.work-card:focus-visible{outline:2px solid rgba(125,227,255,.82);outline-offset:3px}.expand-button{border-radius:999px;color:#fff;gap:8px;margin:28px auto 0;min-height:48px;padding:13px 18px}.floating-collapse{align-items:center;background:linear-gradient(135deg,#7de3ff38,#ff8baa1f),#06090dc2;border:1px solid rgba(255,255,255,.22);border-radius:999px;bottom:24px;box-shadow:inset 0 1px #fff3,0 18px 70px #00000061;color:#fff;display:inline-flex;gap:8px;min-height:46px;padding:12px 16px;position:fixed;right:24px;z-index:30;backdrop-filter:blur(18px) saturate(135%);-webkit-backdrop-filter:blur(18px) saturate(135%)}.lightbox{align-items:center;animation:lightboxFade .22s ease both;background:radial-gradient(circle at 50% 42%,rgba(125,227,255,.08),transparent 34%),#030508eb;cursor:zoom-out;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:clamp(18px,4vw,48px);position:fixed;z-index:80}.lightbox img{animation:lightboxImageIn .36s cubic-bezier(.22,1,.36,1) both;border-radius:8px;box-shadow:0 34px 120px #0000009e;display:block;max-height:min(86vh,980px);max-width:min(92vw,1380px);object-fit:contain}.contact{align-items:center;display:flex;overflow:hidden}.contact:before{background:radial-gradient(circle at 50% 28%,rgba(125,227,255,.08),transparent 34%),linear-gradient(180deg,#06080cfa,#050609 72%);content:"";top:0;right:0;bottom:0;left:0;opacity:1;position:absolute}.contact-inner{margin:0 auto;max-width:1120px;position:relative;text-align:center;width:100%;z-index:1}.contact h2{font-size:clamp(22px,3vw,36px);font-weight:500;line-height:1.45;margin:0}.contact-actions{justify-content:center;display:flex;flex-wrap:wrap;gap:14px;margin-top:36px}.contact-actions a{border-radius:999px;gap:10px;padding:14px 18px}@media(max-width:820px){.nav{gap:10px;grid-template-columns:auto 1fr;min-height:50px;padding:0 10px 0 12px}.nav-links{gap:4px;justify-content:end}.nav-links a{font-size:12px;padding:8px 9px}.section-heading span,.contact span{font-size:clamp(36px,13vw,72px)}.section{padding:100px 18px}.about-grid,.stats{grid-template-columns:1fr}.split{align-items:start;flex-direction:column}.gallery{--work-row-height: clamp(132px, 27vw, 190px);gap:8px}.work-card{margin:0}}@media(max-width:520px){.nav-glow{max-width:calc(100vw - 20px);top:10px}.brand{font-size:13px;gap:7px}.hero h1{font-size:22px}.hero-actions,.contact-actions{flex-direction:column}.primary-action,.contact-actions a{width:100%}.gallery{--work-row-height: clamp(112px, 35vw, 150px);gap:7px}.work-card{margin:0}.floating-collapse{bottom:16px;left:18px;justify-content:center;right:18px}}@media(max-width:380px){.brand span{display:none}.nav{grid-template-columns:auto 1fr}.nav-links a{padding-inline:8px}}@keyframes lightboxFade{0%{opacity:0}to{opacity:1}}@keyframes lightboxImageIn{0%{clip-path:inset(0 0 100% 0);opacity:0;transform:translateY(-18px) scale(.985)}to{clip-path:inset(0 0 0 0);opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;scroll-behavior:auto!important;transition-duration:.001ms!important}.opening-curtain{display:none}}
