:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--canvas:#fff;--cool-white:#f7fafd;--blue-surface:#eaf4ff;--soft-blue:#d6e9fa;--primary-blue:#4c8dff;--primary-blue-dark:#215fbd;--deep-ink:#14233a;--body-ink:#33445a;--muted-ink:#66758a;--accent-red:#d94a4a;--hairline:#d6e2ee;--hairline-soft:#e9f0f6;--sans:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", Helvetica, Arial, sans-serif;--mono:"SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;--content:1220px;--gutter:48px;--media-radius:6px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}body{background:var(--canvas);min-width:320px;color:var(--deep-ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.6;overflow-x:clip}button,a{font:inherit}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:0}.container{width:min(100%, var(--content));padding-inline:var(--gutter);margin:0 auto}.skip-link{z-index:100;background:var(--deep-ink);color:#fff;border-radius:4px;padding:10px 14px;position:fixed;top:10px;left:10px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:3px solid var(--primary-blue);outline-offset:4px}.nav-shell{z-index:20;-webkit-backdrop-filter:blur(18px)saturate(125%);background:#ffffffd1;border-bottom:1px solid #d6e2eec7;min-height:68px;position:sticky;top:0}.nav-progress{background:linear-gradient(90deg, var(--primary-blue) 0%, var(--primary-blue) calc(100% - 12px), var(--accent-red) calc(100% - 12px), var(--accent-red) 100%);opacity:.78;pointer-events:none;transform-origin:0;height:2px;position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.nav{grid-template-columns:1fr auto 1fr;align-items:center;gap:32px;min-height:68px;display:grid}.nav__brand{width:fit-content;font-size:15px;font-weight:700}.nav__links{align-items:center;gap:30px;display:flex}.nav__links a,.nav__contact{color:var(--body-ink);font-size:14px;font-weight:560}.nav__links a{position:relative}.nav__links a:after{background:var(--primary-blue);content:"";opacity:0;height:1px;transition:opacity .18s,transform .18s;position:absolute;bottom:-8px;left:0;right:0;transform:scaleX(.5)}.nav__links a:hover:after,.nav__links a:focus-visible:after{opacity:1;transform:scaleX(1)}.nav__contact{justify-self:end;align-items:center;gap:6px;display:inline-flex}.nav__contact svg,.footer__links svg,.research-link a svg{transition:transform .18s}.nav__contact:hover svg,.footer__links a:hover svg,.research-link a:hover svg{transform:translate(3px,-3px)}.nav__menu,.nav-mobile{display:none}.hero{isolation:isolate;border-bottom:1px solid var(--hairline-soft);background:#edf6fb;align-items:center;min-height:calc(100dvh - 260px);display:flex;position:relative;overflow:hidden}.hero-scene{z-index:0;pointer-events:none;transform-origin:62% 62%;position:absolute;inset:-6%;overflow:hidden}.hero-scene__sky,.hero-scene__layer,.hero-scene__mass,.hero-scene__atmosphere,.hero-scene__horizon,.hero-scene__lightwell,.hero-scene__beam,.hero-scene__signal,.hero-scene__veil{position:absolute}.hero-scene__sky{background:linear-gradient(#f8fcff 0%,#eaf4f8 48%,#cbdfe9 100%),linear-gradient(112deg,#fffffff0,#a4c4d052);inset:0}.hero-scene__atmosphere{filter:blur(12px);opacity:.68;background:linear-gradient(90deg,#0000 0%,#ffffff2e 22%,#ffffffb3 52%,#c5dce64d 78%,#0000 100%);width:124%;left:-12%}.hero-scene__atmosphere--high{height:17%;top:13%;transform:skewY(-7deg)}.hero-scene__atmosphere--low{opacity:.48;height:22%;bottom:13%;transform:skewY(5deg)}.hero-scene__layer{will-change:transform;inset:0}.hero-scene__mass--far{clip-path:polygon(26% 0,100% 0,100% 100%,0 100%);background:linear-gradient(145deg,#73919b14,#2749563d),#d9e8ef;width:48%;height:108%;top:-7%;right:4%;box-shadow:inset 1px 0 #ffffffbd,inset 34px 0 52px #4f717e14}.hero-scene__mass--near{clip-path:polygon(30% 0,100% 0,100% 100%,0 100%);background:linear-gradient(108deg,#61808b26,#22424f4d);width:32%;height:116%;top:-8%;right:-5%;box-shadow:inset 1px 0 #ffffff8a}.hero-scene__tower{background:linear-gradient(#41606c1f,#1c3e4b40);position:absolute;bottom:17%;box-shadow:inset 1px 0 #ffffff6b}.hero-scene__tower--one{clip-path:polygon(18% 0,100% 0,82% 100%,0 100%);width:4.5%;height:31%;right:47%}.hero-scene__tower--two{clip-path:polygon(8% 0,88% 0,100% 100%,0 100%);width:6.5%;height:44%;right:39%}.hero-scene__tower--three{clip-path:polygon(0 0,84% 0,100% 100%,16% 100%);width:5%;height:25%;right:31%}.hero-scene__aperture{background:linear-gradient(#fafdff9e,#b7d3de33);width:22%;height:62%;position:absolute;top:11%;right:12%;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff80,inset 0 -42px 72px #567a881f}.hero-scene__aperture-side,.hero-scene__aperture-roof{background:linear-gradient(130deg,#4a697538,#1a374475);display:block;position:absolute}.hero-scene__aperture-side{width:17%;top:0;bottom:0}.hero-scene__aperture-side--left{left:0}.hero-scene__aperture-side--right{right:0}.hero-scene__aperture-roof{height:14%;top:0;left:0;right:0}.hero-scene__horizon{transform-origin:100%;background:#2f526038;height:1px;top:69%;left:0;right:0}.hero-scene__horizon span{background:#ffffffe6;width:40%;height:1px;position:absolute;bottom:0;right:5%}.hero-scene__lightwell{clip-path:polygon(18% 0,82% 0,100% 100%,0 100%);mix-blend-mode:screen;transform-origin:top;background:linear-gradient(#ffffffd6,#d0e8f129);width:13.5%;height:58%;top:12%;right:16.3%}.hero-scene__beam{filter:blur(7px);opacity:.7;transform-origin:50%;background:linear-gradient(90deg,#0000 0%,#ffffff14 23%,#ffffffad 52%,#c1dce724 76%,#0000 100%);width:72%;height:15%;top:27%;right:-18%;transform:rotate(-16deg)translate(0,0)}.hero-scene__signal{background:#92363638;width:2px;height:82px;top:21%;right:7.5%;overflow:hidden}.hero-scene__signal span{background:var(--accent-red);width:100%;height:34px;display:block;transform:translateY(-36px)}.hero-scene__veil{background:linear-gradient(90deg,#fffffff7 0%,#ffffffeb 31%,#ffffff73 52%,#0000 72%);inset:0}.hero__inner{z-index:2;grid-template-columns:repeat(12,minmax(0,1fr));padding-block:92px 82px;display:grid;position:relative}.hero__content{grid-column:1/span 8;max-width:820px}.section-label,.work__type{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:600}.hero h1{margin-bottom:20px;font-size:80px;font-weight:690;line-height:.98}.hero__role{max-width:780px;color:var(--deep-ink);margin-bottom:28px;font-size:34px;font-weight:520;line-height:1.17}.hero__summary{max-width:610px;color:var(--body-ink);margin-bottom:38px;font-size:18px;line-height:1.65}.hero__actions{flex-wrap:wrap;gap:12px;display:flex}.button{white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:9px;min-height:46px;padding:0 20px;font-size:14px;font-weight:650;transition:background-color .26s,border-color .26s,box-shadow .26s,color .26s,transform .26s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button:active{transform:scale(.98)}.button--primary{border-color:var(--deep-ink);background:var(--deep-ink);color:#fff}.button--primary:hover{border-color:var(--primary-blue-dark);background:var(--primary-blue-dark);box-shadow:0 12px 30px #215fbd2e}.button--secondary{color:var(--deep-ink);background:#ffffffb8;border-color:#b9c9d9}.button--secondary:hover{border-color:var(--primary-blue);color:var(--primary-blue-dark)}.section{padding-block:112px}.section--blue{background:#eaf2f7}.section--academic{background:#e8efef}.section-label{color:var(--primary-blue-dark);margin-bottom:20px}.section-label--red{color:var(--accent-red)}.section-intro h2,.impact__content h2,.about__content h2,.academic__header h2{margin-bottom:24px;font-size:48px;font-weight:650;line-height:1.08}.section-intro>p:last-child,.impact__lead,.about__content>p,.academic__header>p:last-child{color:var(--body-ink);font-size:17px}.work__grid{grid-template-columns:minmax(0,4fr) minmax(0,7fr);align-items:start;gap:90px;display:grid}.section-intro{max-width:440px}.work__map{gap:30px;display:grid}.work__primary{border-radius:var(--media-radius);background:linear-gradient(126deg,#f8fbff 0%,#e7f2ff 72%,#d8eafb 100%);border:1px solid #c7ddf2;padding:42px;transition:border-color .42s cubic-bezier(.16,1,.3,1),box-shadow .42s cubic-bezier(.16,1,.3,1),transform .42s cubic-bezier(.16,1,.3,1)}.work__primary:hover{border-color:#a9cce9;transform:translateY(-6px);box-shadow:0 24px 54px #5384a421}.work__type{color:var(--primary-blue-dark);margin-bottom:56px}.work__primary h3{max-width:520px;margin-bottom:18px;font-size:32px;line-height:1.15}.work__primary>p:last-child,.work__item p{max-width:600px;color:var(--body-ink);margin-bottom:0}.work__secondary{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;display:grid}.work__item{border-top:1px solid var(--hairline);padding-top:28px;transition:border-color .3s,transform .3s cubic-bezier(.16,1,.3,1)}.work__item:hover{border-color:var(--primary-blue);transform:translate(6px)}.work__item h3{margin-bottom:12px;font-size:21px}.impact__grid,.about__grid{grid-template-columns:minmax(0,6.5fr) minmax(0,5fr);align-items:center;gap:78px;display:grid}.impact,.academic{isolation:isolate;position:relative;overflow:hidden}.impact-scene,.academic-scene{z-index:0;pointer-events:none;transform-origin:50%;position:absolute;inset:-8% -4%;overflow:hidden}.impact-scene__sky,.impact-scene__layer,.impact-scene__ceiling,.impact-scene__slab,.impact-scene__mist,.impact-scene__terrace,.impact-scene__light,.impact-scene__caustics,.impact-scene__horizon,.impact-scene__signal,.impact-scene__veil,.academic-scene__sky,.academic-scene__layer,.academic-scene__canopy,.academic-scene__distance,.academic-scene__terrace,.academic-scene__fog,.academic-scene__sweep,.academic-scene__signal,.academic-scene__veil{position:absolute}.impact-scene__sky,.academic-scene__sky,.impact-scene__layer,.academic-scene__layer,.impact-scene__veil,.academic-scene__veil{inset:0}.impact-scene__sky{background:linear-gradient(158deg,#0000 0% 53%,#e2cc9d57 68%,#0000 86%),linear-gradient(118deg,#f7fafb 0%,#dce9ee 34%,#b9cfd5 68%,#d9e1db 100%)}.impact-scene__ceiling{clip-path:polygon(16% 0,100% 0,100% 54%,0 100%);background:linear-gradient(148deg,#263e444d,#5c7f880a);width:76%;height:48%;top:-13%;right:-9%}.impact-scene__slab{clip-path:polygon(18% 0,100% 8%,100% 100%,0 100%);background:linear-gradient(120deg,#506f6a14,#203a4145);width:61%;height:71%;bottom:-8%;right:-8%;box-shadow:inset 1px 0 #ffffff6b}.impact-scene__mist{filter:blur(14px);background:linear-gradient(90deg,#0000,#ffffffb8 46%,#a0bec03d 73%,#0000);width:78%;height:24%;top:38%;right:-10%;transform:rotate(-7deg)}.impact-scene__terrace{clip-path:polygon(5% 0,100% 12%,92% 100%,0 84%);opacity:.62;will-change:transform, opacity;height:10%;display:block}.impact-scene__terrace--one{background:linear-gradient(90deg,#4566700a,#3a57613d);width:55%;top:30%;left:-9%;rotate:-5deg}.impact-scene__terrace--two{background:linear-gradient(90deg,#c19d5b08,#c19d5b38,#0000);width:62%;height:8%;top:51%;left:26%;rotate:3deg}.impact-scene__terrace--three{background:linear-gradient(90deg,#0000,#5d849138,#2c4b5414);width:70%;height:12%;bottom:19%;right:-8%;rotate:-4deg}.impact-scene__light{transform-origin:50%;height:120%;display:block;top:-8%;transform:rotate(13deg)}.impact-scene__light--one{background:linear-gradient(90deg,#0000,#c29a5557,#0000);width:10%;left:52%}.impact-scene__light--two{background:linear-gradient(90deg,#0000,#ffffff94,#0000);width:16%;left:67%}.impact-scene__light--three{background:linear-gradient(90deg,#0000,#4b7e8f57,#0000);width:8%;left:84%}.impact-scene__caustics{opacity:.58;width:42%;height:84%;top:8%;right:7%;overflow:hidden;transform:skew(-8deg)}.impact-scene__caustics span{filter:blur(4px);background:linear-gradient(#0000,#f1dcae47,#ffffff0f,#0000);width:8%;height:136%;display:block;position:absolute;top:-18%}.impact-scene__caustics span:first-child{left:7%}.impact-scene__caustics span:nth-child(2){width:13%;left:31%}.impact-scene__caustics span:nth-child(3){width:6%;left:59%}.impact-scene__caustics span:nth-child(4){width:11%;right:4%}.impact-scene__horizon{background:#2d4f5830;height:1px;top:73%;left:0;right:0}.impact-scene__horizon span{transform-origin:100%;background:linear-gradient(90deg,#0000,#c29a55b8,#ffffffc2);width:46%;height:1px;position:absolute;right:5%}.impact-scene__signal{background:var(--accent-red);opacity:.62;transform-origin:0;width:112px;height:2px;top:22%;left:9%}.impact-scene__veil{background:linear-gradient(90deg,#f7fafbad 0%,#f7fafb42 38%,#eaf3f60f 68%,#e1eced29 100%)}.impact__grid,.academic>.container{z-index:1;position:relative}.media{border-radius:var(--media-radius);background:var(--cool-white);position:relative;overflow:hidden}.media:after{border-radius:inherit;content:"";pointer-events:none;border:1px solid #14233a1a;position:absolute;inset:0}.media img{object-fit:cover;width:100%;height:100%;transition:transform .9s cubic-bezier(.16,1,.3,1);transform:scale(1.001)}.media:hover img{transform:scale(1.032)}.media--impact{aspect-ratio:16/10}.media--impact img{object-position:50% 45%}.impact__lead{max-width:540px;margin-bottom:38px}.impact__facts{gap:24px;display:grid}.impact__facts>div{border-top:1px solid #bfd4e7;padding-top:22px;transition:border-color .3s,transform .3s cubic-bezier(.16,1,.3,1)}.impact__facts>div:hover{border-color:var(--primary-blue);transform:translate(6px)}.impact__facts h3{margin-bottom:7px;font-size:18px}.impact__facts p{color:var(--body-ink);margin-bottom:0}.about__grid{grid-template-columns:minmax(0,5.2fr) minmax(0,4.2fr);max-width:1080px}.about__content p:not(.section-label){max-width:610px;margin-bottom:20px}.media--portrait{aspect-ratio:4/5}.media--portrait img{object-position:50% 42%}.academic__header{max-width:720px;margin-bottom:50px}.academic__header>p:last-child{max-width:610px;margin-bottom:0}.academic-scene__sky{background:linear-gradient(24deg,#0000 0% 58%,#b08e6f29 74%,#0000 92%),linear-gradient(145deg,#fafcf9 0%,#dfe9e2 33%,#bfd0d1 68%,#d2dde4 100%)}.academic-scene__canopy{clip-path:polygon(0 0,100% 0,70% 100%,8% 73%);background:linear-gradient(162deg,#2d464440,#67868708);width:88%;height:46%;top:-18%;left:-12%}.academic-scene__distance{clip-path:polygon(12% 0,100% 18%,100% 100%,0 100%);background:linear-gradient(108deg,#ffffff0d,#2b475833);width:86%;height:52%;bottom:-14%;right:-9%}.academic-scene__terrace{clip-path:polygon(6% 0,100% 14%,88% 100%,0 82%);opacity:.62;will-change:transform, opacity;display:block}.academic-scene__terrace--one{background:linear-gradient(90deg,#3f505205,#415e5e45);width:58%;height:15%;top:29%;left:-12%;rotate:7deg}.academic-scene__terrace--two{background:linear-gradient(90deg,#ffffff5c,#5a78892e,#0000);width:77%;height:11%;top:48%;left:28%;rotate:-5deg}.academic-scene__terrace--three{background:linear-gradient(90deg,#0000,#ad93722e,#4660681f);width:63%;height:17%;bottom:12%;right:-10%;rotate:5deg}.academic-scene__fog{filter:blur(11px);background:linear-gradient(90deg,#0000 0%,#ffffff24 24%,#ffffffb8 54%,#4b6f701f 76%,#0000 100%);width:130%;display:block;left:-15%}.academic-scene__fog--one{height:11%;top:23%;transform:skewY(-5deg)}.academic-scene__fog--two{opacity:.68;height:14%;top:52%;transform:skewY(4deg)}.academic-scene__fog--three{opacity:.42;height:9%;bottom:9%;transform:skewY(-3deg)}.academic-scene__sweep{transform-origin:50%;height:120%;display:block;top:-10%;transform:rotate(-11deg)}.academic-scene__sweep--one{background:linear-gradient(90deg,#0000,#4e778938,#0000);width:14%;left:58%}.academic-scene__sweep--two{background:linear-gradient(90deg,#0000,#e3d7bc52,#0000);width:9%;left:78%}.academic-scene__signal{background:#4e69713d;width:220px;height:1px;bottom:28%;right:9%;rotate:-6deg}.academic-scene__signal span{background:var(--accent-red);width:7px;height:7px;display:block;position:absolute;top:-3px;left:0}.academic-scene__veil{background:linear-gradient(#ffffff6b 0%,#ffffff1a 35%,#e4eeec1f 72%,#e1eaec75 100%)}.media--academic{aspect-ratio:16/9;background:#c4d3d8;box-shadow:0 34px 70px #37586226}.academic-still{will-change:transform;width:100%;height:100%}.media--academic img{object-position:50% 50%}.academic__details{grid-template-columns:repeat(2,minmax(0,1fr));gap:50px;margin-top:42px;display:grid}.academic__details>div{border-top:1px solid #bfd0e0;padding-top:24px}.academic__details h3{margin-bottom:6px;font-size:20px}.academic__details p{color:var(--body-ink);margin-bottom:0}.research-link{border-top:1px solid #b8cbdc;justify-content:space-between;align-items:center;gap:32px;margin-top:64px;padding-top:28px;display:flex}.research-link__title{color:var(--deep-ink);margin-bottom:3px;font-size:18px;font-weight:700}.research-link>div>p:last-child{color:var(--body-ink);margin-bottom:0}.research-link a,.footer__links a{color:var(--primary-blue-dark);white-space:nowrap;align-items:center;gap:8px;font-weight:700;transition:color .24s,transform .24s;display:inline-flex}.research-link a:hover,.footer__links a:hover{color:var(--deep-ink);transform:translateY(-2px)}.experience__grid{grid-template-columns:minmax(0,3.5fr) minmax(0,7fr);align-items:start;gap:90px;display:grid}.experience__list{border-top:1px solid var(--hairline)}.experience__row{border-bottom:1px solid var(--hairline);grid-template-columns:110px 52px 1fr;align-items:center;gap:22px;min-height:112px;padding-block:22px;transition:background-color .3s;display:grid;position:relative}.experience__row:before{background:var(--primary-blue);content:"";opacity:0;width:2px;transition:opacity .28s,transform .28s cubic-bezier(.16,1,.3,1);position:absolute;top:16%;bottom:16%;left:-18px;transform:scaleY(.35)}.experience__row:hover:before{opacity:1;transform:scaleY(1)}.experience__period{color:var(--muted-ink);font-family:var(--mono);margin-bottom:0;font-size:12px}.experience__logo{border:1px solid var(--hairline-soft);border-radius:var(--media-radius);background:var(--cool-white);place-items:center;width:52px;height:52px;transition:border-color .3s,transform .3s cubic-bezier(.16,1,.3,1);display:grid;overflow:hidden}.experience__row:hover .experience__logo{border-color:#b7d4ed;transform:translate(4px)scale(1.04)}.experience__row h3,.experience__row>div:last-child p{transition:transform .3s cubic-bezier(.16,1,.3,1)}.experience__row:hover h3,.experience__row:hover>div:last-child p{transform:translate(4px)}.experience__logo img{object-fit:contain;width:78%;height:78%}.experience__row h3{margin-bottom:3px;font-size:17px}.experience__row>div:last-child p{color:var(--body-ink);margin-bottom:0;font-size:14px}.footer{background:linear-gradient(118deg,#f7fafd 0%,#eef6fe 56%,#e2effb 100%);border-top:1px solid #ccdbea;padding-block:72px 30px}.footer__grid{grid-template-columns:1fr auto;align-items:start;gap:60px;display:grid}.footer__name{margin-bottom:12px;font-size:24px;font-weight:700}.footer__role{color:var(--body-ink);margin-bottom:0}.footer__links{gap:14px;display:grid}.footer__bottom{color:var(--muted-ink);font-family:var(--mono);border-top:1px solid #ccdae7;margin-top:52px;padding-top:20px;font-size:12px}@keyframes atmosphere-drift-high{0%{transform:translate(-5%)skewY(-7deg)}to{transform:translate(5%,8px)skewY(-5deg)}}@keyframes atmosphere-drift-low{0%{transform:translate(5%)skewY(5deg)}to{transform:translate(-5%,-7px)skewY(3deg)}}@keyframes monumental-dolly{0%{transform:translate(0,0)scaleX(1)}to{transform:translate(-1.8%)scaleX(1.018)}}@keyframes lightwell-breathe{0%,to{opacity:.58;transform:scaleX(.92)}48%{opacity:1;transform:scaleX(1.035)}}@keyframes beam-sweep{0%,12%{opacity:.22;transform:rotate(-16deg)translate(-16%)}48%,66%{opacity:.72;transform:rotate(-16deg)translate(8%)}to{opacity:.28;transform:rotate(-16deg)translate(24%)}}@keyframes horizon-reveal{0%{opacity:.45;transform:scaleX(.52)}to{opacity:1;transform:scaleX(1)}}@keyframes signal-scan{0%,18%{transform:translateY(-36px)}74%,to{transform:translateY(84px)}}@keyframes impact-ceiling-dolly{0%{transform:translate(1.5%,-4px)}to{transform:translate(-2.5%,7px)}}@keyframes impact-light-drift{0%,to{opacity:.34;transform:rotate(13deg)translate(-18px)}52%{opacity:.92;transform:rotate(13deg)translate(24px)}}@keyframes impact-terrace-drift{0%{opacity:.34;transform:translate(-3%,-4px)}to{opacity:.76;transform:translate(4%,7px)}}@keyframes impact-caustic-rise{0%,to{opacity:.2;transform:translate(-16px,-5%)scaleX(.72)}48%{opacity:.9;transform:translate(18px,5%)scaleX(1.18)}}@keyframes impact-horizon-pulse{0%{opacity:.34;transform:scaleX(.42)}to{opacity:1;transform:scaleX(1)}}@keyframes impact-signal-traverse{0%,16%{opacity:0;transform:translate(-90px)scaleX(.2)}38%{opacity:.68}78%,to{opacity:0;transform:translate(260px)scaleX(1)}}@keyframes academic-canopy-drift{0%{transform:translate(-1.5%)}to{transform:translate(2.5%,9px)}}@keyframes academic-fog-one{0%{transform:translate(-4%)skewY(-5deg)}to{transform:translate(4%,7px)skewY(-3deg)}}@keyframes academic-fog-two{0%{transform:translate(4%)skewY(4deg)}to{transform:translate(-4%,-8px)skewY(2deg)}}@keyframes academic-fog-three{0%{transform:translate(-3%)skewY(-3deg)}to{transform:translate(3%,5px)skewY(-1deg)}}@keyframes academic-terrace-drift{0%{opacity:.32;transform:translate(-4%,-5px)}to{opacity:.74;transform:translate(4%,8px)}}@keyframes academic-sweep-drift{0%,to{opacity:.28;transform:rotate(-11deg)translate(-20px)}52%{opacity:.82;transform:rotate(-11deg)translate(24px)}}@keyframes academic-signal-traverse{0%,16%{opacity:0;transform:translate(0,0)scale(.7)}32%{opacity:.9}78%,to{opacity:0;transform:translate(213px)scale(1)}}@keyframes mobile-menu-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:no-preference){.hero-scene__atmosphere--high{animation:13s cubic-bezier(.45,0,.55,1) infinite alternate atmosphere-drift-high}.hero-scene__atmosphere--low{animation:16s cubic-bezier(.45,0,.55,1) infinite alternate atmosphere-drift-low}.hero-scene__mass--far,.hero-scene__aperture{animation:15s cubic-bezier(.45,0,.55,1) infinite alternate monumental-dolly}.hero-scene__lightwell{animation:9s cubic-bezier(.45,0,.55,1) infinite lightwell-breathe}.hero-scene__beam{animation:12s cubic-bezier(.45,0,.55,1) infinite beam-sweep}.hero-scene__horizon span{transform-origin:100%;animation:8s cubic-bezier(.45,0,.55,1) infinite alternate horizon-reveal}.hero-scene__signal span{animation:6.4s cubic-bezier(.45,0,.55,1) infinite signal-scan}.impact-scene__ceiling,.impact-scene__slab{animation:15s cubic-bezier(.45,0,.55,1) infinite alternate impact-ceiling-dolly}.impact-scene__light--one{animation:10s cubic-bezier(.45,0,.55,1) infinite impact-light-drift}.impact-scene__light--two{animation:13s cubic-bezier(.45,0,.55,1) 1.8s infinite impact-light-drift}.impact-scene__light--three{animation:11.5s cubic-bezier(.45,0,.55,1) 3.2s infinite impact-light-drift}.impact-scene__terrace--one{animation:13s cubic-bezier(.45,0,.55,1) infinite alternate impact-terrace-drift}.impact-scene__terrace--two{animation:17s cubic-bezier(.45,0,.55,1) 1.4s infinite alternate-reverse impact-terrace-drift}.impact-scene__terrace--three{animation:15s cubic-bezier(.45,0,.55,1) 2.6s infinite alternate impact-terrace-drift}.impact-scene__caustics span{animation:9s cubic-bezier(.45,0,.55,1) infinite impact-caustic-rise}.impact-scene__caustics span:nth-child(2){animation-duration:12s;animation-delay:1.6s}.impact-scene__caustics span:nth-child(3){animation-duration:10.5s;animation-delay:3s}.impact-scene__caustics span:nth-child(4){animation-duration:13.5s;animation-delay:4.2s}.impact-scene__horizon span{animation:9s cubic-bezier(.45,0,.55,1) infinite alternate impact-horizon-pulse}.impact-scene__signal{animation:8s cubic-bezier(.45,0,.55,1) infinite impact-signal-traverse}.academic-scene__canopy,.academic-scene__distance{animation:17s cubic-bezier(.45,0,.55,1) infinite alternate academic-canopy-drift}.academic-scene__fog--one{animation:14s cubic-bezier(.45,0,.55,1) infinite alternate academic-fog-one}.academic-scene__fog--two{animation:18s cubic-bezier(.45,0,.55,1) infinite alternate academic-fog-two}.academic-scene__fog--three{animation:16s cubic-bezier(.45,0,.55,1) infinite alternate academic-fog-three}.academic-scene__terrace--one{animation:14s cubic-bezier(.45,0,.55,1) infinite alternate academic-terrace-drift}.academic-scene__terrace--two{animation:18s cubic-bezier(.45,0,.55,1) 1.8s infinite alternate-reverse academic-terrace-drift}.academic-scene__terrace--three{animation:16s cubic-bezier(.45,0,.55,1) 3.4s infinite alternate academic-terrace-drift}.academic-scene__sweep--one{animation:12s cubic-bezier(.45,0,.55,1) infinite academic-sweep-drift}.academic-scene__sweep--two{animation:15s cubic-bezier(.45,0,.55,1) 2.4s infinite reverse academic-sweep-drift}.academic-scene__signal span{animation:7.6s cubic-bezier(.45,0,.55,1) infinite academic-signal-traverse}.nav-mobile{animation:.32s cubic-bezier(.16,1,.3,1) both mobile-menu-in}}@media (width<=960px){:root{--gutter:30px}.nav{grid-template-columns:1fr auto}.nav__links,.nav__contact{display:none}.nav__menu{border:1px solid var(--hairline);width:42px;height:42px;color:var(--deep-ink);background:#fff;border-radius:999px;justify-self:end;place-items:center;display:grid}.nav-mobile{padding:8px var(--gutter) 20px;border-bottom:1px solid var(--hairline);background:#fffffff7;gap:0;display:grid}.nav-mobile a{border-bottom:1px solid var(--hairline-soft);justify-content:space-between;align-items:center;min-height:48px;font-weight:600;display:flex}.hero__content{grid-column:1/span 10}.hero h1{font-size:68px}.hero__role{font-size:30px}.section{padding-block:90px}.work__grid,.experience__grid{grid-template-columns:1fr;gap:54px}.impact__grid,.about__grid{gap:48px}.section-intro h2,.impact__content h2,.about__content h2,.academic__header h2{font-size:42px}}@media (width<=700px){:root{--gutter:20px}.hero-scene{transform-origin:66% 58%;inset:-4%}.hero-scene__sky{background:linear-gradient(#f9fcfe 0%,#e9f4f8 51%,#c9dfe9 100%)}.hero-scene__mass--far{width:92%;height:94%;top:18%;right:-34%}.hero-scene__mass--near{width:73%;height:82%;top:27%;right:-37%}.hero-scene__aperture{width:48%;height:49%;top:35%;right:-7%}.hero-scene__tower--one{right:52%}.hero-scene__tower--two{right:41%}.hero-scene__tower--three{right:31%}.hero-scene__horizon{top:72%}.hero-scene__lightwell{width:30%;height:44%;top:37%;right:3%}.hero-scene__beam{width:128%;height:13%;top:46%;right:-44%}.hero-scene__signal{height:48px;top:auto;bottom:62px;right:20px}.hero-scene__veil{background:linear-gradient(#fffffff5 0%,#ffffffe6 34%,#ffffff94 61%,#ffffff14 100%)}.hero__inner{padding-block:70px 60px}.hero__content{grid-column:1/-1}.hero h1{margin-bottom:18px;font-size:50px;line-height:1}.hero__role{margin-bottom:22px;font-size:25px;line-height:1.22}.hero__summary{margin-bottom:30px;font-size:16px}.section{padding-block:72px}.section-intro h2,.impact__content h2,.about__content h2,.academic__header h2{font-size:36px;line-height:1.12}.work__primary{padding:28px}.work__type{margin-bottom:38px}.work__primary h3{font-size:27px}.work__secondary,.impact__grid,.about__grid,.academic__details,.footer__grid{grid-template-columns:1fr}.impact__grid,.about__grid{gap:44px}.impact-scene,.academic-scene{inset:-4%}.impact-scene__ceiling{width:132%;height:38%;right:-46%}.impact-scene__slab{width:118%;height:48%;right:-38%}.impact-scene__light--one{width:15%;left:42%}.impact-scene__light--two{width:22%;left:65%}.impact-scene__light--three{width:11%;left:88%}.impact-scene__terrace--one{width:92%;left:-28%}.impact-scene__terrace--two{width:104%;left:4%}.impact-scene__terrace--three{width:112%;right:-34%}.impact-scene__caustics{width:86%;right:-18%}.impact-scene__veil{background:linear-gradient(#f7fafb9e 0%,#eff6f83d 46%,#e6eff094 100%)}.academic-scene__canopy{width:142%;height:28%;top:-8%;left:-30%}.academic-scene__distance{width:150%;height:38%;right:-54%}.academic-scene__terrace--one{width:102%;left:-30%}.academic-scene__terrace--two{width:116%;left:2%}.academic-scene__terrace--three{width:108%;right:-38%}.academic-scene__sweep--one{width:24%;left:45%}.academic-scene__sweep--two{width:17%;left:79%}.academic-scene__signal{width:160px;right:-4%}.about__content{order:1}.media--portrait{order:2}.research-link{flex-direction:column;align-items:flex-start}.experience__row{grid-template-columns:86px 44px 1fr;gap:14px}.experience__logo{width:44px;height:44px}.footer__grid{gap:36px}}@media (width<=430px){.hero h1{font-size:44px}.hero__role{font-size:23px}.hero__actions{flex-direction:column;align-items:stretch}.button{width:100%}.experience__row{grid-template-columns:1fr 44px minmax(0,4fr)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}.nav-progress{display:none}}@media (prefers-reduced-transparency:reduce){.nav-shell{-webkit-backdrop-filter:none;background:#fff}}
