.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;position:relative;display:grid;overflow:visible;isolation:isolate;border:1px solid rgba(255,255,255,.15);border-radius:var(--border-radius);background:var(--card-bg, #120f17);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;transform:translateZ(.01px)}.border-glow-card:before,.border-glow-card:after,.border-glow-card>.edge-light{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;border-radius:inherit;transition:opacity .25s ease-out}.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{border:1px solid transparent;background:linear-gradient(var(--card-bg, #120f17) 0 100%) padding-box,linear-gradient(#fff0 0,#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;opacity:calc((var(--edge-proximity) - var(--color-sensitivity)) / (100 - var(--color-sensitivity)));-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-glow-card:after{border:1px solid transparent;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;opacity:calc(var(--fill-opacity, .5) * (var(--edge-proximity) - var(--color-sensitivity)) / (100 - var(--color-sensitivity)));mix-blend-mode:soft-light;-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%);-webkit-mask-composite:source-out,source-over,source-over,source-over,source-over,source-over;mask-composite:subtract,add,add,add,add,add}.border-glow-card>.edge-light{inset:calc(var(--glow-padding) * -1);z-index:1;pointer-events:none;opacity:calc((var(--edge-proximity) - var(--edge-sensitivity)) / (100 - var(--edge-sensitivity)));mix-blend-mode:plus-lighter;-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:"";position:absolute;inset:var(--glow-padding);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)}.border-glow-inner{position:relative;z-index:1;display:flex;flex-direction:column;overflow:auto}:root{--blue: #2430ff;--blue-deep: #1118b8;--blue-rgb: 36, 48, 255;--ink: #0a0a0a;--paper: #efefec;--surface: #0b0b0b;--surface-raised: #111111;--text: #f3f3f0;--line: rgba(255, 255, 255, .18);--soft: #a5a5a2;--frame: 1700px;--sans: "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", sans-serif;--condensed: "Arial Narrow", "Roboto Condensed", "Microsoft YaHei", sans-serif}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{margin:0;color:var(--text);background:var(--surface);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit;text-decoration:none}img,video{display:block;width:100%}svg{display:block}.frame{width:min(calc(100% - 80px),var(--frame));margin-inline:auto}.section{position:relative;padding:150px 0;overflow:hidden}.kicker{margin:0 0 26px;color:var(--blue);font:700 .77rem/1 var(--sans);letter-spacing:.18em}.section-head h2{max-width:1120px;margin:0;font:800 clamp(3.6rem,6.2vw,7.8rem)/.94 var(--condensed);letter-spacing:-.035em;text-transform:uppercase}.section-head-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.52fr);gap:80px;align-items:end}.section-head-row>p{max-width:560px;margin:0 0 8px;color:#ffffffa3;font-size:1.02rem;line-height:1.9}.reveal{opacity:1;transform:none}.section-display-word{position:absolute;z-index:0;pointer-events:none;color:#ffffff0b;font:800 clamp(9rem,22vw,27rem)/.72 var(--condensed);letter-spacing:-.06em;white-space:nowrap;transform-origin:center}.profile-word{top:88px;right:-2vw;color:#ffffff12}.works-word{top:65px;right:-1vw}.ability-word{top:76px;left:-3vw;font-size:clamp(8rem,18vw,23rem)}.contact-word{top:4%;left:-2vw;color:#ffffff09}@keyframes opening-failsafe{to{opacity:0;visibility:hidden;pointer-events:none}}.opening-curtain{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:1fr auto;grid-template-rows:1fr auto;align-items:end;gap:30px;padding:clamp(28px,4vw,74px);color:#fff;background:linear-gradient(90deg,var(--blue) 0 7px,transparent 7px),#060606;pointer-events:none;animation:opening-failsafe .01s linear 7s forwards}.opening-curtain:before{content:"";position:absolute;width:min(36vw,650px);aspect-ratio:1;right:-12vw;top:-18vw;border:1px solid rgba(255,255,255,.22);border-radius:50%}.opening-mark,.opening-meta{overflow:hidden}.opening-mark strong{display:block;font:800 clamp(6rem,16vw,16rem)/.7 var(--condensed);letter-spacing:-.05em}.opening-meta{align-self:end;text-align:right;font:600 clamp(.58rem,.8vw,.76rem)/1.6 var(--sans);letter-spacing:.2em}.opening-progress{grid-column:1 / -1;height:1px;overflow:hidden;background:#ffffff2e}.opening-progress i{display:block;width:100%;height:100%;background:var(--blue)}.site-nav{position:fixed;inset:0 0 auto;z-index:50;color:#fff;background:linear-gradient(110deg,#ffffff1c,#ffffff06 48%,rgba(var(--blue-rgb),.09)),#080a1257;border-bottom:1px solid rgba(255,255,255,.18);box-shadow:inset 0 1px #ffffff24,0 14px 45px #00000024;-webkit-backdrop-filter:blur(22px) saturate(145%);backdrop-filter:blur(22px) saturate(145%);transition:background .35s ease,color .35s ease,border-color .35s ease,box-shadow .35s ease}.site-nav.is-scrolled{color:#fff;background:linear-gradient(110deg,#ffffff1f,#ffffff06 55%,rgba(var(--blue-rgb),.1)),#0b0b0bc2;border-bottom-color:#ffffff24;box-shadow:inset 0 1px #ffffff26,0 14px 45px #00000038;-webkit-backdrop-filter:blur(26px) saturate(150%);backdrop-filter:blur(26px) saturate(150%)}.nav-inner{height:94px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.18)}.is-scrolled .nav-inner{height:76px;border-color:transparent}.logo{display:flex;align-items:center;gap:12px}.logo>span{font:800 2rem/1 var(--condensed);letter-spacing:-.03em}.logo small{padding-left:12px;border-left:1px solid currentColor;font:600 .57rem/1.25 var(--sans);letter-spacing:.1em}.site-nav nav{display:flex;gap:42px}.site-nav nav a{position:relative;font-size:.84rem;font-weight:600}.site-nav nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-10px;height:2px;background:var(--blue);transition:right .25s ease}.site-nav nav a:hover:after,.site-nav nav a.active:after{right:0}.nav-cta{display:inline-flex;align-items:center;gap:30px;min-width:164px;padding:14px 18px;color:#fff;background:var(--blue);font-size:.82rem;font-weight:700;border:1px solid var(--blue);transition:color .25s ease,background .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease}.nav-cta:hover{color:var(--blue);background:#fff;border-color:#fff;transform:translateY(-2px);box-shadow:0 12px 30px rgba(var(--blue-rgb),.25)}.site-nav.is-scrolled .nav-cta:hover{border-color:#fff}.nav-cta svg,.view-project svg,.contact-mail svg{width:20px;fill:none;stroke:currentColor;stroke-width:1.8}.hero{position:relative;min-height:100vh;display:flex;align-items:center;color:#fff;isolation:isolate;overflow:hidden;background:#171717}.hero-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-3}.hero-backdrop:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#040404d6,#04040480 48%,#04040424),linear-gradient(0deg,rgba(0,0,0,.72),transparent 48%)}.hero-backdrop img,.hero-backdrop video{position:absolute;top:0;right:0;bottom:0;left:0;height:100%;object-fit:cover}.hero-backdrop video{opacity:1;mix-blend-mode:normal;object-position:center center;filter:saturate(.9) contrast(1.03)}.hero-grid{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.24) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.24) 1px,transparent 1px);background-size:8.33vw 8.33vw;-webkit-mask-image:linear-gradient(90deg,black,transparent 72%);mask-image:linear-gradient(90deg,black,transparent 72%)}.hero-content{padding-top:116px}.hero-kicker{margin:0 0 30px;font:700 .75rem/1 var(--sans);letter-spacing:.22em}.hero h1{max-width:1100px;margin:0;font:800 clamp(4.6rem,8.4vw,10.2rem)/.8 var(--condensed);letter-spacing:-.045em;text-transform:uppercase;text-wrap:balance}.hero-title-mask{display:block;overflow:clip;padding:.05em 0 .08em;margin:-.05em 0 -.08em}.hero-title-accent-mask{margin-left:12%}.hero-title-line{display:block;transform-origin:left bottom}.hero-title-accent-mask em{color:var(--blue);font-style:normal;-webkit-text-stroke:0;text-shadow:8px 8px 0 rgba(0,0,0,.36)}.hero-intro{width:min(100%,630px);margin:55px 0 0 12%}.hero-intro p{margin:0;color:#ffffffc7;font-size:.98rem;line-height:1.9}.hero-foot{position:absolute;left:50%;bottom:26px;transform:translate(-50%);display:flex;align-items:center;justify-content:space-between;font:600 .63rem/1 var(--sans);letter-spacing:.17em}.scroll-cue{display:flex;align-items:center;gap:14px}.scroll-cue b{width:72px;height:1px;background:#ffffff80}.profile{overflow:hidden;isolation:isolate;color:var(--text);background:var(--surface)}.profile-aurora{position:absolute;z-index:0;top:0;right:0;bottom:0;left:0;opacity:.68;pointer-events:none;filter:saturate(1.12) contrast(1.08)}.profile-aurora:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 20% 26%,transparent 0 15%,rgba(11,11,11,.08) 48%,rgba(11,11,11,.72) 100%),linear-gradient(90deg,#0b0b0b2e,#0b0b0b6b)}.profile>.frame{position:relative;z-index:2}.profile:before{content:none}.profile:after{content:"";position:absolute;inset:0 0 auto;z-index:1;height:150px;background:linear-gradient(180deg,#080808,#0b0b0bfa 18%,#0b0b0bd1 50%,#0b0b0b61 76%,#0b0b0b00);pointer-events:none}.side-label{position:absolute;right:28px;top:160px;z-index:3;color:#ffffff7a;font:600 .66rem/1 var(--sans);letter-spacing:.16em;writing-mode:vertical-rl}.profile-grid{position:relative;display:grid;grid-template-columns:minmax(360px,.7fr) minmax(600px,1.22fr);gap:clamp(70px,10vw,170px);align-items:center;margin-top:100px}.portrait-wrap{position:relative;min-height:680px;border:1px solid rgba(255,255,255,.34);background:var(--surface-raised)}.portrait-wrap:before,.portrait-wrap:after{content:"";position:absolute;z-index:3;pointer-events:none}.portrait-wrap:before{top:7%;right:-10%;bottom:13%;left:12%;border:1px solid rgba(255,255,255,.48)}.portrait-wrap:after{width:76%;height:76%;right:-24%;top:-20%;border:1px solid rgba(255,255,255,.55);border-radius:50%}.portrait-wrap img{position:absolute;z-index:2;inset:auto 0 0;height:92%;object-fit:contain;object-position:bottom center;filter:grayscale(1) contrast(1.15)}.portrait-blue{position:absolute;z-index:1;left:16%;right:3%;bottom:0;height:72%;background:var(--blue);clip-path:polygon(22% 0,82% 5%,100% 100%,0 100%)}.portrait-note{position:absolute;z-index:5;left:25px;right:25px;bottom:25px;display:flex;align-items:end;justify-content:space-between;padding:20px;color:#fff;background:#000000c2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.portrait-note strong{font-size:1.35rem}.portrait-note span{font:600 .62rem/1 var(--sans);letter-spacing:.18em}.cross{position:absolute;z-index:6;font:300 2rem/1 var(--sans)}.cross-a{left:-18px;top:18%}.cross-b{right:-35px;bottom:22%;color:var(--blue)}.profile-copy{padding-top:20px}.profile-copy>.lead{max-width:820px;margin:0;font-size:clamp(1.55rem,2vw,2.35rem);line-height:1.65;letter-spacing:-.025em}.profile-copy>.lead strong{color:var(--blue);font-weight:700}.profile-copy>p:not(.lead){max-width:760px;margin:34px 0 0;color:#ffffffa3;line-height:2}.facts{display:grid;grid-template-columns:repeat(3,1fr);margin-top:65px;border-top:1px solid rgba(255,255,255,.42);border-bottom:1px solid rgba(255,255,255,.42)}.facts>div{padding:27px 22px;border-right:1px solid var(--line)}.facts>div:last-child{border-right:0}.facts span,.facts small{display:block;color:#ffffff85;font-size:.7rem}.facts strong{display:block;margin:18px 0 12px;font:700 4.4rem/.8 var(--condensed)}.facts sup{color:var(--blue);font-size:.45em}.profile-links{display:grid;grid-template-columns:1fr 1.3fr .8fr;margin-top:26px}.profile-links>*{display:flex;flex-direction:column;gap:8px;padding:0 24px;border-right:1px solid var(--line);font-size:.84rem;font-weight:600}.profile-links>*:first-child{padding-left:0}.profile-links>*:last-child{border-right:0}.profile-links span{color:var(--blue);font-size:.58rem;letter-spacing:.15em}.profile-links a{transition:color .25s ease,transform .25s ease}.profile-links a:hover{color:var(--blue);transform:translate(5px)}.experience{position:relative;margin-top:150px}.experience-list{border-top:1px solid rgba(255,255,255,.42)}.experience-list article{display:grid;grid-template-columns:190px minmax(280px,.75fr) 1fr;gap:40px;align-items:center;min-height:118px;border-bottom:1px solid var(--line)}.experience-list time{color:var(--blue);font:700 1.05rem/1 var(--condensed)}.experience-list h3{margin:0;font-size:1.06rem}.experience-list p{margin:0;color:#ffffff8f;font-size:.9rem}.works{color:#fff;background:#0b0b0b}.works .section-head-row>p{color:#929292}.works .section-head{margin-bottom:55px}.works>.frame,.ability>.frame{position:relative;z-index:2}.project-filters{display:flex;align-items:stretch;margin-bottom:72px;border-top:1px solid rgba(255,255,255,.32);border-bottom:1px solid rgba(255,255,255,.32)}.project-filters button{min-width:180px;display:flex;align-items:center;justify-content:space-between;gap:38px;padding:19px 22px;border:0;border-right:1px solid rgba(255,255,255,.22);color:#888;background:transparent;font:inherit;cursor:pointer;transition:color .25s ease,background .25s ease}.project-filters button:hover{color:var(--blue);background:#fff}.project-filters button.active{color:#fff;background:var(--blue)}.project-filters button.active:hover{color:#fff;background:var(--blue-deep)}.project-filters span{font-size:.78rem;font-weight:700;letter-spacing:.08em}.project-filters small{font:600 .74rem/1 var(--condensed)}.project-list{display:grid;grid-template-columns:1fr 1fr;gap:90px 28px}.project-featured{grid-column:1 / -1}.project-open{width:100%;padding:0;border:0;color:inherit;background:transparent;font:inherit;text-align:left;cursor:pointer}.project-card figure{position:relative;aspect-ratio:16 / 10;margin:0;overflow:hidden;background:#222}.project-featured figure{aspect-ratio:2.05 / 1}.project-card figure:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(0deg,rgba(0,0,0,.52),transparent 50%);pointer-events:none}.project-card img{--parallax-y: 0%;--image-scale: 1.08;position:relative;top:-5%;height:110%;object-fit:cover;filter:grayscale(.35) contrast(1.04);transform:translate3d(0,var(--parallax-y),0) scale(var(--image-scale));transition:transform 1.1s cubic-bezier(.22,1,.36,1),filter .5s ease}.project-open:hover img{--image-scale: 1.13;filter:grayscale(0)}.project-card.is-layout-card figure{background:#f7f7f4}.project-card.is-layout-card img{--image-scale: 1;top:0;height:100%;object-fit:contain;filter:grayscale(1) contrast(1.06);transform:none}.project-card.is-layout-card .project-lines{border-color:rgba(var(--blue-rgb),.65)}.project-card.is-layout-card figure:after{background:linear-gradient(0deg,rgba(0,0,0,.36),transparent 38%)}.project-lines{position:absolute;z-index:2;top:24px;right:24px;bottom:24px;left:24px;border:1px solid rgba(255,255,255,.55);clip-path:polygon(0 0,22% 0,22% 5%,43% 5%,43% 0,100% 0,100% 100%,0 100%)}.project-no{position:absolute;z-index:3;right:35px;top:18px;color:transparent;font:800 clamp(5rem,10vw,11rem)/1 var(--condensed);-webkit-text-stroke:1px rgba(255,255,255,.7)}.view-project{position:absolute;z-index:3;left:44px;bottom:38px;display:flex;align-items:center;gap:18px;font-size:.65rem;font-weight:700;letter-spacing:.15em;transition:color .25s ease,transform .25s ease}.project-open:hover .view-project{color:var(--blue);transform:translate(8px)}.photo-count{position:absolute;z-index:3;right:42px;bottom:38px;padding:8px 10px;color:#fff;background:var(--blue);font:700 .6rem/1 var(--sans);letter-spacing:.14em}.project-info{display:grid;grid-template-columns:minmax(230px,.75fr) 1fr auto;gap:50px;padding-top:26px}.project-info span{color:var(--blue);font-size:.61rem;font-weight:700;letter-spacing:.15em}.project-info h3{margin:8px 0 0;font-size:clamp(1.7rem,2.3vw,2.7rem)}.project-info p{max-width:580px;margin:0;color:#999;font-size:.9rem;line-height:1.8}.project-info small{color:#777;font-size:.68rem;white-space:nowrap}.project-card:not(.project-featured) .project-info{grid-template-columns:1fr auto;gap:24px}.project-card:not(.project-featured) .project-info p{grid-column:1 / -1}.gallery-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;grid-template-rows:minmax(0,1fr) auto;padding:44px 56px 24px;color:#fff;background:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px),#040404f7;background-size:72px 72px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.gallery-close{position:absolute;z-index:3;top:26px;right:32px;width:48px;height:48px;padding:0;border:1px solid rgba(255,255,255,.38);color:#fff;background:#080808;cursor:pointer;transition:color .25s ease,background .25s ease,border-color .25s ease,transform .25s ease}.gallery-close:hover{color:#fff;background:var(--blue);border-color:var(--blue);transform:rotate(90deg)}.gallery-close span{position:absolute;left:12px;top:23px;width:24px;height:1px;background:currentColor;transform:rotate(45deg)}.gallery-close span:last-child{transform:rotate(-45deg)}.gallery-mode-switch{position:absolute;z-index:3;left:32px;top:26px;display:flex;border:1px solid rgba(255,255,255,.32);background:#080808}.gallery-mode-switch button{display:flex;align-items:center;gap:18px;padding:14px 17px;border:0;border-right:1px solid rgba(255,255,255,.25);color:#888;background:transparent;font:600 .7rem/1 var(--sans);cursor:pointer;transition:color .25s ease,background .25s ease}.gallery-mode-switch button:last-child{border-right:0}.gallery-mode-switch button:hover{color:var(--blue);background:#fff}.gallery-mode-switch button.active{color:#fff;background:var(--blue)}.gallery-mode-switch button.active:hover{color:#fff;background:var(--blue-deep)}.gallery-mode-switch small{font:600 .65rem/1 var(--condensed)}.gallery-stage{min-height:0;display:grid;grid-template-columns:54px minmax(0,1fr) 54px;gap:18px;align-items:center}.gallery-stage>figure{min-width:0;min-height:0;height:100%;display:grid;grid-template-rows:minmax(0,1fr) auto;margin:0;overflow:hidden}.gallery-stage>figure>img{width:100%;min-height:0;height:100%;object-fit:contain}.gallery-lightbox.is-layout .gallery-stage>figure>img{background:#fff}.gallery-stage figcaption{display:grid;grid-template-columns:minmax(240px,.7fr) 1fr auto;gap:36px;align-items:end;padding:20px 0 14px;border-bottom:1px solid rgba(255,255,255,.25)}.gallery-stage figcaption div{display:flex;flex-direction:column;gap:5px}.gallery-stage figcaption span{color:var(--blue);font-size:.58rem;font-weight:700;letter-spacing:.16em}.gallery-stage figcaption strong{font-size:1.25rem}.gallery-stage figcaption p{margin:0;color:#aaa;font-size:.82rem}.gallery-stage figcaption small{color:#888;font:600 1rem/1 var(--condensed)}.gallery-arrow{width:54px;height:54px;border:1px solid rgba(255,255,255,.35);border-radius:50%;color:#fff;background:transparent;font-size:1.2rem;cursor:pointer;transition:border-color .25s ease,background .25s ease}.gallery-arrow:hover{border-color:var(--blue);background:var(--blue)}.gallery-thumbs{display:flex;gap:9px;padding-top:18px;overflow-x:auto;scrollbar-width:thin}.gallery-thumbs button{position:relative;flex:0 0 116px;height:72px;padding:0;overflow:hidden;border:1px solid transparent;background:#171717;cursor:pointer;opacity:.48;transition:opacity .2s ease,border-color .2s ease}.gallery-thumbs button:hover,.gallery-thumbs button.active{opacity:1;border-color:var(--blue)}.gallery-thumbs img{height:100%;object-fit:cover}.gallery-thumbs span{position:absolute;right:5px;bottom:4px;padding:3px 5px;color:#fff;background:#000000b8;font:600 .55rem/1 var(--condensed)}.ability{color:var(--text);background:linear-gradient(90deg,transparent 49.95%,rgba(255,255,255,.045) 50%,transparent 50.05%),var(--surface)}.ability-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:90px;padding:30px;border:1px solid rgba(255,255,255,.12);background:#ffffff05}.ability-glow-card{min-width:0;min-height:500px;height:100%;transition:translate .35s ease,box-shadow .35s ease}.ability-glow-card:hover{z-index:2;translate:0 -10px}.ability-glow-card .border-glow-inner{height:100%;overflow:hidden}.ability-card{position:relative;min-height:500px;height:100%;padding:32px;color:#fff;background:radial-gradient(circle at 82% 10%,rgba(var(--blue-rgb),.16),transparent 30%),transparent;transition:transform .35s ease}.ability-glow-card:hover .ability-card{transform:translateY(-3px)}.ability-card>span{font:600 1rem/1 var(--condensed)}.ability-symbol{position:relative;width:126px;height:126px;margin:55px auto 65px;border:1px solid currentColor;border-radius:50%}.ability-symbol:before,.ability-symbol:after,.ability-symbol i{content:"";position:absolute;left:50%;top:50%;background:currentColor;transform-origin:center}.ability-symbol:before{width:180%;height:1px;transform:translate(-50%,-50%) rotate(-27deg)}.ability-symbol:after{width:1px;height:180%;transform:translate(-50%,-50%) rotate(27deg)}.ability-symbol i{width:12px;height:12px;border:1px solid currentColor;background:#101116}.ability-glow-card:hover .ability-symbol i{background:var(--blue)}.ability-symbol i:first-child{transform:translate(65px,-56px) rotate(45deg)}.ability-symbol i:last-child{transform:translate(-82px,45px) rotate(45deg)}.ability-card h3{margin:0 0 20px;font-size:1.42rem}.ability-card p{margin:0;color:#ffffffa8;font-size:.9rem;line-height:1.9}.ability-glow-card:hover .ability-card p{color:#ffffffdb}.ability-card small{position:absolute;left:30px;bottom:26px;color:#ffffff61;font-size:.56rem;letter-spacing:.13em}.ability-glow-card:hover .ability-card small{color:#8ea2ff}.ability .kicker,.ability-glow-card:hover .ability-card small{-webkit-text-stroke-width:0;-webkit-text-stroke-color:transparent;text-shadow:none;paint-order:normal}.contact{position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:#fff;background:#080808;isolation:isolate}.contact-grid-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;opacity:.24;background-image:linear-gradient(rgba(255,255,255,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 1px);background-size:84px 84px}.contact:before{content:"";position:absolute;z-index:-1;width:55vw;height:55vw;right:-18vw;top:-18vw;border-radius:50%;background:var(--blue);filter:blur(1px)}.contact-orbit{position:absolute;z-index:-1;width:min(56vw,900px);aspect-ratio:1;right:-6%;top:3%;border:1px solid rgba(255,255,255,.4);border-radius:50%}.contact-orbit:after{content:"";position:absolute;width:145%;height:1px;left:-26%;top:50%;background:#fff6;transform:rotate(-22deg)}.contact-inner{position:relative;z-index:2;padding:130px 0 105px}.contact h2{max-width:1250px;margin:0;font:800 clamp(5rem,9vw,11.5rem)/.78 var(--condensed);letter-spacing:-.04em;text-transform:uppercase}.contact h2 em{color:var(--blue);font-style:normal;-webkit-text-stroke:0 transparent;text-shadow:none}.contact-copy{max-width:590px;margin:50px 0 0;color:#ffffffa8;line-height:1.9}.contact-mail{width:min(100%,850px);display:grid;grid-template-columns:180px 1fr auto;gap:30px;align-items:center;margin-top:58px;padding:26px 0;border-top:1px solid rgba(255,255,255,.65);border-bottom:1px solid rgba(255,255,255,.65);transition:color .3s ease,background .3s ease,border-color .3s ease,padding .3s ease}.contact-mail span{color:#aaa;font-size:.72rem}.contact-mail strong{font-size:clamp(1.25rem,2.2vw,2.4rem)}.contact-mail svg{width:32px;transition:transform .25s ease}.contact-mail:hover{color:#fff;background:var(--blue);border-color:var(--blue);padding-inline:24px}.contact-mail:hover span{color:#ffffffb8}.contact-mail:hover svg{transform:translate(10px)}.contact-meta{display:grid;grid-template-columns:repeat(3,1fr);width:min(100%,850px);margin-top:62px}.contact-meta>div{display:flex;flex-direction:column;gap:10px}.contact-meta span{color:#777;font-size:.59rem;letter-spacing:.16em}.contact-meta strong,.contact-meta a{font-size:.83rem}.contact-meta a{transition:color .25s ease}.contact-meta a:hover{color:var(--blue)}.contact footer{position:relative;z-index:2;display:flex;justify-content:space-between;padding:28px 0;border-top:1px solid rgba(255,255,255,.2);color:#767676;font-size:.61rem;letter-spacing:.12em}.contact footer a{color:#fff}.contact footer a{transition:color .25s ease}.contact footer a:hover{color:var(--blue)}button:focus-visible,a:focus-visible{outline:2px solid var(--blue);outline-offset:4px}@media (max-width: 1200px){.section{padding:110px 0}.profile-grid{grid-template-columns:390px 1fr;gap:60px}.portrait-wrap{min-height:570px}.facts strong{font-size:3.4rem}.profile-links{grid-template-columns:1fr;gap:18px}.profile-links>*{padding:0;border:0}.project-info{grid-template-columns:1fr auto}.project-info p{grid-column:1 / -1}.gallery-lightbox{padding-inline:28px}.ability-grid{grid-template-columns:1fr 1fr}}@media (max-width: 820px){.frame{width:min(calc(100% - 36px),var(--frame))}.site-nav nav{display:none}.nav-cta{min-width:auto;gap:10px}.profile:after{height:120px}.hero-backdrop video{object-position:65% center}.hero h1{font-size:clamp(3.5rem,17vw,5.5rem);line-height:.86}.hero-title-accent-mask,.hero-intro{margin-left:0}.hero-foot span:nth-child(1),.hero-foot span:nth-child(3){display:none}.hero-foot{justify-content:center}.section-head-row,.profile-grid,.project-list{grid-template-columns:1fr}.section-head-row{gap:28px}.profile-grid{margin-top:60px}.portrait-wrap{width:min(100%,520px)}.profile-copy>.lead{font-size:1.4rem}.facts{grid-template-columns:1fr}.facts>div{border-right:0;border-bottom:1px solid var(--line)}.facts>div:last-child{border-bottom:0}.experience-list article{grid-template-columns:1fr;gap:10px;padding:28px 0}.project-filters{margin-bottom:48px;overflow-x:auto}.project-filters button{min-width:126px;gap:20px;padding-inline:16px}.project-featured{grid-column:auto}.project-featured figure,.project-card figure{aspect-ratio:4 / 3}.project-info,.project-card:not(.project-featured) .project-info{grid-template-columns:1fr;gap:12px}.project-info p,.project-card:not(.project-featured) .project-info p{grid-column:auto}.project-info small{white-space:normal}.project-no{right:22px;top:15px}.view-project{left:24px;bottom:24px}.photo-count{right:24px;bottom:24px}.gallery-lightbox{height:100dvh;padding:72px 14px 14px}.gallery-close{top:14px;right:14px}.gallery-mode-switch{left:14px;top:14px}.gallery-mode-switch button{gap:10px;padding:13px 12px}.gallery-stage{grid-template-columns:1fr;gap:0}.gallery-arrow{position:absolute;z-index:2;top:42%;width:44px;height:44px;background:#0000009e}.gallery-prev{left:8px}.gallery-next{right:8px}.gallery-stage figcaption{grid-template-columns:1fr auto;gap:12px;padding:14px 0 10px}.gallery-stage figcaption p{grid-column:1 / -1;grid-row:2}.gallery-stage figcaption small{grid-column:2;grid-row:1}.gallery-thumbs{padding-top:12px}.gallery-thumbs button{flex-basis:88px;height:56px}.ability-grid{grid-template-columns:1fr}.ability-grid{padding:18px}.ability-glow-card,.ability-card{min-height:420px}.contact-mail{grid-template-columns:1fr auto}.contact-mail span{grid-column:1 / -1}.contact-meta{grid-template-columns:1fr;gap:28px}.contact footer{flex-direction:column;gap:12px}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.opening-curtain{display:none!important}.reveal{opacity:1;transform:none}.hero-backdrop video{display:none}.project-card img{--parallax-y: 0%;--image-scale: 1;will-change:auto}}
