/*! 
 * OverlayScrollbars
 * Version: 2.16.0
 * 
 * Copyright (c) Rene Haas | KingSora.
 * https://github.com/KingSora
 * 
 * Released under the MIT license.
 */
.os-size-observer,.os-size-observer-listener{direction:inherit;pointer-events:none;visibility:hidden;box-sizing:border-box;overflow:hidden;scroll-behavior:auto!important}.os-size-observer,.os-size-observer-listener,.os-size-observer-listener-item,.os-size-observer-listener-item-final{writing-mode:horizontal-tb;position:absolute;top:0;left:0}.os-size-observer{z-index:-1;contain:strict;padding:inherit;border:inherit;box-sizing:inherit;flex-flow:row;margin:-133px;display:flex;inset:0;transform:scale(.1)}.os-size-observer:before{content:"";box-sizing:inherit;flex:none;width:10px;height:10px;padding:10px}.os-size-observer-appear{animation:1ms forwards os-size-observer-appear-animation}.os-size-observer-listener{box-sizing:border-box;padding:inherit;border:inherit;flex:auto;margin:-133px;position:relative;transform:scale(10)}.os-size-observer-listener.ltr{margin-left:0;margin-right:-266px}.os-size-observer-listener.rtl{margin-left:-266px;margin-right:0}.os-size-observer-listener:empty:before{content:"";width:100%;height:100%}.os-size-observer-listener:empty:before,.os-size-observer-listener>.os-size-observer-listener-item{padding:inherit;border:inherit;box-sizing:content-box;flex:auto;display:block;position:relative}.os-size-observer-listener-scroll{box-sizing:border-box;display:flex}.os-size-observer-listener-item{direction:ltr;flex:none;bottom:0;right:0;overflow:hidden}.os-size-observer-listener-item-final{transition:none}@keyframes os-size-observer-appear-animation{0%{cursor:auto}to{cursor:none}}.os-trinsic-observer{box-sizing:border-box;z-index:-1;contain:strict;border:none;flex:none;max-width:0;height:0;max-height:1px;margin:0;padding:0;position:relative;top:calc(100% + 1px);overflow:hidden}.os-trinsic-observer:not(:empty){height:calc(100% + 1px);top:-1px}.os-trinsic-observer:not(:empty)>.os-size-observer{width:1000%;min-width:1px;height:1000%;min-height:1px}html[data-overlayscrollbars-body]{overflow:hidden}html[data-overlayscrollbars-body],html[data-overlayscrollbars-body]>body{width:100%;height:100%;margin:0}html[data-overlayscrollbars-body]>body{margin:0;overflow:visible}[data-overlayscrollbars]{position:relative}[data-overlayscrollbars~=host],[data-overlayscrollbars-padding]{display:flex;scroll-behavior:auto!important;flex-flow:row!important;align-items:stretch!important}[data-overlayscrollbars-padding],[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]){box-sizing:inherit;z-index:0;border:none;flex:auto;width:100%;min-width:0;height:auto;margin:0;padding:0;position:relative}[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]){--os-vaw:0;--os-vah:0;outline:none}[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]):focus{outline:none}[data-overlayscrollbars-viewport][data-overlayscrollbars-viewport~=arrange]:before{content:"";pointer-events:none;z-index:-1;min-width:1px;min-height:1px;width:var(--os-vaw);height:var(--os-vah);position:absolute}[data-overlayscrollbars~=host],[data-overlayscrollbars-padding]{overflow:hidden!important}[data-overlayscrollbars~=host][data-overlayscrollbars~=noClipping],[data-overlayscrollbars-padding~=noClipping]{overflow:visible!important}[data-overlayscrollbars-viewport]{--os-viewport-overflow-x:hidden;--os-viewport-overflow-y:hidden;overflow-x:var(--os-viewport-overflow-x);overflow-y:var(--os-viewport-overflow-y)}[data-overlayscrollbars-viewport~=overflowXVisible]{--os-viewport-overflow-x:visible}[data-overlayscrollbars-viewport~=overflowXHidden]{--os-viewport-overflow-x:hidden}[data-overlayscrollbars-viewport~=overflowXScroll]{--os-viewport-overflow-x:scroll}[data-overlayscrollbars-viewport~=overflowYVisible]{--os-viewport-overflow-y:visible}[data-overlayscrollbars-viewport~=overflowYHidden]{--os-viewport-overflow-y:hidden}[data-overlayscrollbars-viewport~=overflowYScroll]{--os-viewport-overflow-y:scroll}[data-overlayscrollbars-viewport~=overflowImportant]{overflow-x:var(--os-viewport-overflow-x)!important;overflow-y:var(--os-viewport-overflow-y)!important}[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId){font-size:0!important;line-height:0!important}[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId):before,[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId):after,[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId)>:not(#osFakeId){clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border-width:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;display:none!important;position:absolute!important;overflow:hidden!important}[data-overlayscrollbars-viewport~=measuring],[data-overlayscrollbars-viewport~=scrolling]{scroll-behavior:auto!important;scroll-snap-type:none!important}[data-overlayscrollbars-viewport~=measuring][data-overlayscrollbars-viewport~=overflowXVisible]{overflow-x:hidden!important}[data-overlayscrollbars-viewport~=measuring][data-overlayscrollbars-viewport~=overflowYVisible]{overflow-y:hidden!important}[data-overlayscrollbars-content]{box-sizing:inherit}[data-overlayscrollbars-contents]:not(#osFakeId):not([data-overlayscrollbars-padding]):not([data-overlayscrollbars-viewport]):not([data-overlayscrollbars-content]){display:contents}[data-overlayscrollbars-grid],[data-overlayscrollbars-grid] [data-overlayscrollbars-padding]{grid-template:1fr/1fr;display:grid}[data-overlayscrollbars-grid]>[data-overlayscrollbars-padding],[data-overlayscrollbars-grid]>[data-overlayscrollbars-viewport],[data-overlayscrollbars-grid]>[data-overlayscrollbars-padding]>[data-overlayscrollbars-viewport]{width:auto!important;height:auto!important}@property --os-scroll-percent{syntax:"<number>";inherits:true;initial-value:0}@property --os-viewport-percent{syntax:"<number>";inherits:true;initial-value:0}.os-scrollbar{--os-viewport-percent:0;--os-scroll-percent:0;--os-scroll-direction:0;--os-scroll-percent-directional:calc(var(--os-scroll-percent) - (var(--os-scroll-percent) + (1 - var(--os-scroll-percent)) * -1) * var(--os-scroll-direction));contain:size layout;contain:size layout style;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .15s,visibility .15s,top .15s,right .15s,bottom .15s,left .15s;position:absolute}body>.os-scrollbar{z-index:99999;position:fixed}.os-scrollbar-transitionless{transition:none!important}.os-scrollbar-track{position:relative;border:none!important;padding:0!important}.os-scrollbar-handle{position:absolute}.os-scrollbar-track,.os-scrollbar-handle{pointer-events:none;width:100%;height:100%}.os-scrollbar.os-scrollbar-track-interactive .os-scrollbar-track,.os-scrollbar.os-scrollbar-handle-interactive .os-scrollbar-handle{pointer-events:auto;touch-action:none}.os-scrollbar-horizontal{bottom:0;left:0}.os-scrollbar-vertical{top:0;right:0}.os-scrollbar-rtl.os-scrollbar-horizontal{right:0}.os-scrollbar-rtl.os-scrollbar-vertical{left:0;right:auto}.os-scrollbar-visible{opacity:1;visibility:visible}.os-scrollbar-auto-hide.os-scrollbar-auto-hide-hidden{opacity:0;visibility:hidden}.os-scrollbar-interaction.os-scrollbar-visible{opacity:1;visibility:visible}.os-scrollbar-unusable,.os-scrollbar-unusable *,.os-scrollbar-wheel,.os-scrollbar-wheel *{pointer-events:none!important}.os-scrollbar-unusable .os-scrollbar-handle{opacity:0!important;transition:none!important}.os-scrollbar-horizontal .os-scrollbar-handle{bottom:0;left:calc(var(--os-scroll-percent-directional) * 100%);transform:translateX(calc(var(--os-scroll-percent-directional) * -100%));width:calc(var(--os-viewport-percent) * 100%)}.os-scrollbar-vertical .os-scrollbar-handle{right:0;top:calc(var(--os-scroll-percent-directional) * 100%);transform:translateY(calc(var(--os-scroll-percent-directional) * -100%));height:calc(var(--os-viewport-percent) * 100%)}@supports (container-type:size){.os-scrollbar-track{container-type:size}.os-scrollbar-horizontal .os-scrollbar-handle{transform:translateX(calc(var(--os-scroll-percent-directional) * 100cqw + var(--os-scroll-percent-directional) * -100%));left:auto}.os-scrollbar-vertical .os-scrollbar-handle{transform:translateY(calc(var(--os-scroll-percent-directional) * 100cqh + var(--os-scroll-percent-directional) * -100%));top:auto}.os-scrollbar-rtl.os-scrollbar-horizontal .os-scrollbar-handle{left:0;right:auto}}.os-scrollbar-rtl.os-scrollbar-vertical .os-scrollbar-handle{left:0;right:auto}.os-scrollbar.os-scrollbar-horizontal.os-scrollbar-cornerless,.os-scrollbar.os-scrollbar-horizontal.os-scrollbar-cornerless.os-scrollbar-rtl{left:0;right:0}.os-scrollbar.os-scrollbar-vertical.os-scrollbar-cornerless,.os-scrollbar.os-scrollbar-vertical.os-scrollbar-cornerless.os-scrollbar-rtl{top:0;bottom:0}@media print{.os-scrollbar{display:none}}.os-scrollbar{--os-size:0;--os-padding-perpendicular:0;--os-padding-axis:0;--os-track-border-radius:0;--os-track-bg:none;--os-track-bg-hover:none;--os-track-bg-active:none;--os-track-border:none;--os-track-border-hover:none;--os-track-border-active:none;--os-handle-border-radius:0;--os-handle-bg:none;--os-handle-bg-hover:none;--os-handle-bg-active:none;--os-handle-border:none;--os-handle-border-hover:none;--os-handle-border-active:none;--os-handle-min-size:33px;--os-handle-max-size:none;--os-handle-perpendicular-size:100%;--os-handle-perpendicular-size-hover:100%;--os-handle-perpendicular-size-active:100%;--os-handle-interactive-area-offset:0}.os-scrollbar-track{border:var(--os-track-border);border-radius:var(--os-track-border-radius);background:var(--os-track-bg);transition:opacity .15s,background-color .15s,border-color .15s}.os-scrollbar-track:hover{border:var(--os-track-border-hover);background:var(--os-track-bg-hover)}.os-scrollbar-track:active{border:var(--os-track-border-active);background:var(--os-track-bg-active)}.os-scrollbar-handle{border:var(--os-handle-border);border-radius:var(--os-handle-border-radius);background:var(--os-handle-bg)}.os-scrollbar-handle:hover{border:var(--os-handle-border-hover);background:var(--os-handle-bg-hover)}.os-scrollbar-handle:active{border:var(--os-handle-border-active);background:var(--os-handle-bg-active)}.os-scrollbar-track:before,.os-scrollbar-handle:before{content:"";display:block;position:absolute;inset:0}.os-scrollbar-horizontal{padding:var(--os-padding-perpendicular) var(--os-padding-axis);right:var(--os-size);height:var(--os-size)}.os-scrollbar-horizontal.os-scrollbar-rtl{left:var(--os-size);right:0}.os-scrollbar-horizontal .os-scrollbar-track:before{top:calc(var(--os-padding-perpendicular) * -1);bottom:calc(var(--os-padding-perpendicular) * -1)}.os-scrollbar-horizontal .os-scrollbar-handle{min-width:var(--os-handle-min-size);max-width:var(--os-handle-max-size);height:var(--os-handle-perpendicular-size);transition:opacity .15s,background-color .15s,border-color .15s,height .15s}.os-scrollbar-horizontal .os-scrollbar-handle:before{top:calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);bottom:calc(var(--os-padding-perpendicular) * -1)}.os-scrollbar-horizontal:hover .os-scrollbar-handle{height:var(--os-handle-perpendicular-size-hover)}.os-scrollbar-horizontal:active .os-scrollbar-handle{height:var(--os-handle-perpendicular-size-active)}.os-scrollbar-vertical{padding:var(--os-padding-axis) var(--os-padding-perpendicular);bottom:var(--os-size);width:var(--os-size)}.os-scrollbar-vertical .os-scrollbar-track:before{left:calc(var(--os-padding-perpendicular) * -1);right:calc(var(--os-padding-perpendicular) * -1)}.os-scrollbar-vertical .os-scrollbar-handle{min-height:var(--os-handle-min-size);max-height:var(--os-handle-max-size);width:var(--os-handle-perpendicular-size);transition:opacity .15s,background-color .15s,border-color .15s,width .15s}.os-scrollbar-vertical .os-scrollbar-handle:before{left:calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);right:calc(var(--os-padding-perpendicular) * -1)}.os-scrollbar-vertical.os-scrollbar-rtl .os-scrollbar-handle:before{right:calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);left:calc(var(--os-padding-perpendicular) * -1)}.os-scrollbar-vertical:hover .os-scrollbar-handle{width:var(--os-handle-perpendicular-size-hover)}.os-scrollbar-vertical:active .os-scrollbar-handle{width:var(--os-handle-perpendicular-size-active)}[data-overlayscrollbars-viewport~=measuring]>.os-scrollbar,.os-theme-none.os-scrollbar{display:none!important}.os-theme-dark,.os-theme-light{box-sizing:border-box;--os-size:10px;--os-padding-perpendicular:2px;--os-padding-axis:2px;--os-track-border-radius:10px;--os-handle-interactive-area-offset:4px;--os-handle-border-radius:10px}.os-theme-dark{--os-handle-bg:#00000070;--os-handle-bg-hover:#0000008c;--os-handle-bg-active:#000000a8}.os-theme-light{--os-handle-bg:#ffffff70;--os-handle-bg-hover:#ffffff8c;--os-handle-bg-active:#ffffffa8}[data-overlayscrollbars-initialize]:not([data-overlayscrollbars-viewport]),[data-overlayscrollbars-viewport~=scrollbarHidden],html[data-overlayscrollbars-viewport~=scrollbarHidden]>body{scrollbar-width:none!important}[data-overlayscrollbars-initialize]:not([data-overlayscrollbars-viewport])::-webkit-scrollbar{appearance:none!important;width:0!important;height:0!important;display:none!important}[data-overlayscrollbars-initialize]:not([data-overlayscrollbars-viewport])::-webkit-scrollbar-corner{appearance:none!important;width:0!important;height:0!important;display:none!important}[data-overlayscrollbars-viewport~=scrollbarHidden]::-webkit-scrollbar{appearance:none!important;width:0!important;height:0!important;display:none!important}[data-overlayscrollbars-viewport~=scrollbarHidden]::-webkit-scrollbar-corner{appearance:none!important;width:0!important;height:0!important;display:none!important}html[data-overlayscrollbars-viewport~=scrollbarHidden]>body::-webkit-scrollbar{appearance:none!important;width:0!important;height:0!important;display:none!important}html[data-overlayscrollbars-viewport~=scrollbarHidden]>body::-webkit-scrollbar-corner{appearance:none!important;width:0!important;height:0!important;display:none!important}[data-overlayscrollbars-initialize]:not([data-overlayscrollbars]):not(html):not(body){overflow:auto}.scrollbar-filter{pointer-events:none;width:0;height:0;position:fixed}body>.os-theme-glass{z-index:80;--os-size:18px;--os-padding-perpendicular:6px;--os-padding-axis:8px;--os-track-bg:transparent;--os-track-bg-hover:transparent;--os-track-bg-active:transparent;--os-handle-border-radius:999px;--os-handle-min-size:52px;--os-handle-bg:transparent;--os-handle-bg-hover:transparent;--os-handle-bg-active:transparent;--scrollbar-tint:#fff3;--scrollbar-shadow:#0000004d}.os-theme-glass[data-tone=light]{--scrollbar-tint:#2b31382e;--scrollbar-shadow:#161b2129}.os-theme-glass .os-scrollbar-handle:after{border-radius:inherit;background:linear-gradient(105deg, #ffffff61, transparent 38%, transparent 70%, #ffffff38), var(--scrollbar-tint);-webkit-backdrop-filter:blur(.4px)saturate(125%);box-shadow:0 2px 7px var(--scrollbar-shadow), inset .6px .6px .8px #ffffff80;pointer-events:none;content:"";position:absolute;inset:0}.os-theme-glass .os-scrollbar-handle:hover:after,.os-theme-glass .os-scrollbar-handle:active:after{box-shadow:0 2px 9px var(--scrollbar-shadow), inset .7px .7px 1px #fffc}.os-theme-glass .os-scrollbar-handle:focus-visible{outline-offset:2px;outline:2px solid #687580}body>.os-theme-glass.os-scrollbar-auto-hide{visibility:visible;transition:opacity .3s}body>.os-theme-glass:has(.os-scrollbar-handle:focus-visible){opacity:1}@media (prefers-reduced-motion:reduce){body>.os-theme-glass.os-scrollbar-auto-hide{transition:none}}@media (prefers-reduced-transparency:reduce),(prefers-contrast:more){.os-theme-glass .os-scrollbar-handle:after{-webkit-backdrop-filter:none;background:#606872}}html:has(.site-backdrop){background:#d2d4d4}html body:has(.site-backdrop){background:0 0}.site-shell{--bg:transparent;--bg-soft:#fff3;--surface:#fff3;--text:#24262b;--muted:#34383f;--dim:#444951;--line:#24262b33;--accent:#315e50;color:var(--text)}.site-backdrop{z-index:-1;pointer-events:none;background:#d2d4d4;position:fixed;inset:0;overflow:hidden}.site-backdrop img{object-fit:cover;object-position:center;width:100%;max-width:none;height:100%}.site-shell .publication-section{background:0 0}.site-shell .career-logo,.site-shell .membership-logo{border-radius:inherit;background:0 0;padding:12px}.site-shell .publication-info>:is(h2,h3),.site-shell .publication-authors strong,.site-shell .publication-section .section-link,.site-shell .site-header[data-tone=light] .brand{color:var(--text)}.site-shell .site-header[data-tone=light] .brand{text-shadow:none}.site-shell .publication-info p,.site-shell .publication-legend{color:var(--muted)}.site-shell .publication-legend span{color:var(--dim)}.site-shell .publication-item{border-color:var(--line)}.site-shell .publication-info .publication-award{color:#23644d}.site-shell .awards-list .award-gold strong{color:#77540d}.site-shell .publication-section .section-link:hover{background:var(--bg-soft)}.site-shell .showcase-overlay{--text:#fff;--muted:#fff;color:var(--text);text-shadow:var(--glass-text-shadow)}.site-shell .project-dialog{--text:#242629;--muted:#565b63;--accent:#3f5f55;color:var(--text)}@media (prefers-reduced-transparency:reduce),(prefers-contrast:more){.site-shell .publication-media{-webkit-backdrop-filter:none;backdrop-filter:none}}@media (forced-colors:active){.site-backdrop{display:none}.site-shell{--text:CanvasText;--muted:CanvasText;--dim:CanvasText;--line:CanvasText;--accent:LinkText;color:canvastext;background:canvas}.site-shell .publication-info .publication-award,.site-shell .awards-list .award-gold strong{color:canvastext}.site-shell .publication-media{border:1px solid canvastext}.site-shell .showcase-overlay{--text:CanvasText;--muted:CanvasText}}.liquid-surface{vertical-align:middle;border-radius:var(--glass-radius);max-width:100%;color:var(--glass-ink);box-shadow:var(--glass-shadow);display:inline-grid;position:relative}.header-navigation{--navigation-lens-tint:#ffffff13;--navigation-lens-frost:0;--navigation-lens-aberration:0}.liquid-surface[data-material=navigation]>span{display:none!important}.site-header .liquid-engine>.glass:after{transition:background-color .22s}.header-navigation .liquid-engine>.glass>div:not(.glass__warp){z-index:auto!important}.liquid-surface[data-glass-enabled=true]>div:not(.liquid-engine){display:none}.liquid-surface[data-glass-enabled=true][data-glass-over-light=true]>div:first-child{pointer-events:none;background:#0000001f;display:block;border-radius:inherit!important;width:100%!important;height:100%!important;position:absolute!important;inset:0!important}.liquid-surface[data-glass-enabled=true]>span{z-index:2;display:block;border-radius:inherit!important;width:100%!important;height:100%!important;position:absolute!important;inset:0!important}.liquid-surface>span:last-of-type{opacity:var(--glass-highlight-opacity)!important}.liquid-surface>span:not(:last-of-type){display:none!important}.liquid-engine{border-radius:inherit;width:100%;min-width:0}.liquid-engine>svg{pointer-events:none}.liquid-engine>.glass{background:0 0;width:100%;border-radius:inherit!important;box-shadow:none!important;transition:none!important;display:flex!important}.liquid-engine>.glass:after{z-index:0;border-radius:inherit;background:linear-gradient(155deg, rgba(255, 255, 255, calc(.19 * var(--glass-highlight-opacity))), transparent 32%, transparent 72%, rgba(255, 255, 255, calc(.09 * var(--glass-highlight-opacity)))), var(--glass-fill);pointer-events:none;content:"";position:absolute;inset:0}.liquid-engine>.glass>div{width:100%;font:inherit!important;text-shadow:none!important}.liquid-engine .glass__warp{border-radius:inherit;pointer-events:none}.liquid-surface .glass__warp{-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturation))!important;backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturation))!important}.liquid-surface[data-glass-visible=false] .glass__warp{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;filter:none!important}.liquid-surface[data-glass-enabled=false]{box-shadow:none}.glass-plain-content{padding:var(--glass-padding)}.nav-lens>.liquid-surface{width:100%;height:100%;display:block}.liquid-surface[data-material=selection] .liquid-engine,.liquid-surface[data-material=selection] .glass,.liquid-surface[data-material=selection] .glass>div{height:100%}@media (prefers-reduced-motion:reduce){.liquid-surface .liquid-engine{transform:none!important}}.glass-action{border-radius:inherit;min-height:44px;color:var(--glass-ink);font-family:var(--font-body);font-size:var(--type-body);letter-spacing:0;white-space:nowrap;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:7px;padding:0 17px;font-weight:500;line-height:1.2;transition:background .18s,color .18s;display:inline-flex}.glass-action svg{color:inherit;flex-shrink:0}.liquid-surface[data-tone=dark]{--glass-text-shadow:0 1px 2px #000000a6, 0 0 1px #000c}.liquid-surface[data-tone=light]{--glass-text-shadow:0 1px 1px #ffffff73}.nav-links a,.nav-links a.active{color:var(--glass-ink)}.nav-label,.showcase-overlay-content,.glass-action{text-shadow:var(--glass-text-shadow)}.glass-action svg,.showcase-overlay-content>svg{filter:drop-shadow(0 1px 1px #00000026)}@media (prefers-reduced-motion:no-preference) and (hover:hover){.liquid-surface[data-material=control],.header-toggle{transition:transform .16s,box-shadow .16s}.liquid-surface[data-material=control]:has(:active){transform:scale(.97)}.header-toggle:has(:active){transform:scale(.95)}.nav-label{transition:transform .18s}.nav-links a:active .nav-label{transform:scale(.97)}}.glass-action:hover{background:var(--glass-hover)}.glass-action:active{background:var(--glass-hover);box-shadow:inset 0 2px 5px #0000000f}.liquid-surface:has(:focus-visible){outline:2px solid var(--glass-ink);outline-offset:4px}.glass-action:focus-visible{outline:none}.glass-action.glass-icon{width:44px;min-width:44px;height:44px;padding:0}.brand-icon{background:currentColor;width:21px;height:21px;display:block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-control{display:inline-grid;position:relative}.icon-control:hover,.icon-control:focus-within{z-index:2}.icon-tooltip{z-index:4;color:#fff;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;background:#292d32;border-radius:6px;padding:6px 9px;font-size:12px;font-weight:500;line-height:1.35;transition:opacity .12s;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%)}.icon-control:hover .icon-tooltip,.icon-control:focus-within .icon-tooltip{opacity:1;visibility:visible}.icon-control:first-child .icon-tooltip{left:0;transform:none}.about-copy .social-row{grid-template-columns:repeat(6,minmax(44px,56px));gap:10px;width:min(100%,386px);display:grid}.social-glass .glass-action.glass-icon{width:100%;height:48px}.social-glass .brand-icon{width:23px;height:23px}.social-glass .glass-action{color:var(--glass-ink)}.liquid-surface[data-material=control] .glass-action{min-height:48px;padding-inline:20px}.liquid-surface[data-material=control] .glass-icon{padding:0}.liquid-surface[data-material=logo]{align-self:start}.career-logo-glass,.membership-logo-glass{width:160px}.publication-links{gap:12px}.publication-links .glass-action>svg{width:1.125rem;height:1.125rem}.publication-zoom{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);filter:drop-shadow(0 1px 2px #0000004d);background:#ffffff1f}.showcase-overlay .showcase-glass{width:100%;height:100%}.showcase-glass .liquid-engine,.showcase-glass .liquid-engine>.glass,.showcase-glass .liquid-engine>.glass>div:not(.glass__warp){height:100%}@media (width<=640px){.career-logo-glass,.membership-logo-glass{width:144px}}@media (width<=440px){.about-copy .social-row{grid-template-columns:repeat(3,56px)}}@media (prefers-reduced-transparency:reduce),(prefers-contrast:more){.liquid-surface{box-shadow:0 0 0 1px;--glass-fill:#30353a!important;--glass-ink:#fff!important}.liquid-engine .glass__warp,.liquid-surface>span{display:none!important}.liquid-engine>.glass:after{background:var(--glass-fill)}}@media (forced-colors:active){.nav-lens,.liquid-engine .glass__warp{display:none}.liquid-surface>span{display:none!important}.liquid-engine>.glass:after{background:canvas}.liquid-surface{color:buttontext;box-shadow:none;border:1px solid buttontext}.nav-links a,.glass-action{color:linktext}.nav-links a.active{color:highlight;outline:2px solid highlight}.social-glass .glass-action{color:linktext}.brand-icon{forced-color-adjust:none;background:linktext}.showcase-overlay{--text:CanvasText;--muted:CanvasText}}@font-face{font-family:Inter;src:url(/fonts/inter-variable.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f7f8fa;--bg-soft:#eef0f3;--surface:#fff;--surface-strong:#e6e9ed;--text:#242629;--muted:#565b63;--dim:#6e747c;--line:#1f242b1a;--accent:#3f5f55;--font-body:-apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--font-heading:var(--font-body);--type-section:2.125rem;--type-title:1.375rem;--type-body:1.0625rem;--type-callout:1rem;--type-caption:.9375rem;--max:1120px}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg);scrollbar-color:#9a9ea5 transparent;scrollbar-width:thin;scrollbar-gutter:stable;min-width:0}html:has(dialog[open]){overflow:hidden}@media (pointer:fine){@supports selector(::-webkit-scrollbar){html{scrollbar-width:auto;scrollbar-color:auto}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#9a9ea5;border:3px solid #0000;border-radius:10px;min-height:44px}::-webkit-scrollbar-thumb:hover{background:#6b717a}::-webkit-scrollbar-button{width:0;height:0;display:none}::-webkit-scrollbar-corner{background:var(--bg)}}}@media (pointer:coarse){html{scrollbar-width:auto;scrollbar-color:auto;scrollbar-gutter:auto}}body{background:var(--bg);min-width:0;color:var(--text);font-family:var(--font-body);font-size:var(--type-body);font-optical-sizing:auto;letter-spacing:0;-webkit-font-smoothing:antialiased;text-rendering:geometricprecision;margin:0;line-height:1.5}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.publication-section :focus-visible{outline-color:var(--accent)}.publication-thumbnail:focus-visible{outline-offset:-4px;outline-color:#234a42}main:focus{outline:none}::selection{color:#172923;background:#c6e6dd}.skip-link{z-index:100;color:#202c2a;background:#f4f5f6;border-radius:6px;padding:12px 18px;position:fixed;top:12px;left:20px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}img,iframe{max-width:100%;display:block}button,input,textarea{font:inherit}.site-shell{min-height:100vh;overflow-x:clip}.site-header{--navigation-height:52px;--navigation-inset:4px;--navigation-radius:calc(var(--navigation-height) / 2);--navigation-edge:max(44px, calc((100vw - 1320px) / 2));--navigation-start:var(--navigation-edge);--navigation-top:20px;pointer-events:none;display:contents}.site-header>*{pointer-events:auto}.nav-reveal{min-width:0}.header-toggle{flex-shrink:0}.header-navigation{transform-origin:100%;transition:opacity .18s,transform .28s cubic-bezier(.2,.8,.2,1),visibility}.header-navigation[data-open=false]{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s,transform .24s cubic-bezier(.4,0,1,1),visibility 0s .24s;transform:translate(18px)scale(.92)}.menu-glyph{width:22px;height:22px;display:block;position:relative}.menu-glyph svg{transition:opacity .16s,transform .24s;position:absolute;inset:0}.menu-glyph-close{opacity:0;transform:rotate(-70deg)scale(.7)}.menu-glyph[data-open=true] .menu-glyph-open{opacity:0;transform:rotate(70deg)scale(.7)}.menu-glyph[data-open=true] .menu-glyph-close{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.header-navigation,.header-navigation[data-open=false],.menu-glyph svg{transition:none;transform:none}}.site-header .brand,.site-header .header-navigation,.site-header .header-toggle{top:var(--navigation-top);z-index:20;position:fixed}.site-header .brand{left:var(--navigation-start)}.site-header .header-toggle{right:var(--navigation-edge)}.site-header .header-navigation{right:calc(var(--navigation-edge) + var(--navigation-height) + 12px)}.site-header :is(.header-navigation,.header-toggle)[data-glass-enabled=true]{-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturation));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturation))}.site-header :is(.header-navigation,.header-toggle)>.liquid-engine>.glass>.glass__warp{-webkit-backdrop-filter:blur()!important;backdrop-filter:blur()!important}@media (width>=641px) and (width<=920px){.site-header{--navigation-edge:20px;--navigation-top:14px}}@media (prefers-reduced-transparency:reduce),(prefers-contrast:more),(forced-colors:active){.site-header :is(.header-navigation,.header-toggle)[data-glass-enabled=true]{-webkit-backdrop-filter:none;backdrop-filter:none}}.liquid-surface.header-navigation,.liquid-surface.header-toggle{border-radius:var(--navigation-radius)}.header-toggle .glass-action.glass-icon{width:var(--navigation-height);height:var(--navigation-height);min-width:var(--navigation-height)}.brand{color:#fff;text-shadow:0 1px 12px #00000047;align-items:center;min-height:44px;margin-right:auto;font-size:16px;font-weight:600;display:inline-flex}.site-header[data-tone=light] .brand{color:#172127;text-shadow:0 1px 12px #fff}.site-header.is-scrolled .brand{visibility:hidden}.nav-links{height:var(--navigation-height);padding:var(--navigation-inset);font-family:var(--font-body);justify-content:center;align-items:center;gap:2px;font-size:16px;font-weight:600;display:flex;position:relative}.nav-links a{z-index:20;min-height:calc(var(--navigation-height) - 2 * var(--navigation-inset));border-radius:calc(var(--navigation-radius) - var(--navigation-inset));color:var(--glass-ink);white-space:nowrap;justify-content:center;align-items:center;padding:0 14px;transition:color .16s,background .16s;display:inline-flex;position:relative}.nav-links a:hover:not(.active){background:var(--glass-hover)}.nav-links a.active{color:var(--glass-ink)}.nav-label{z-index:1;position:relative}.nav-lens{top:var(--navigation-inset);height:calc(var(--navigation-height) - 2 * var(--navigation-inset));z-index:40;border-radius:calc(var(--navigation-radius) - var(--navigation-inset));pointer-events:none;background:#ffffff13;position:absolute;box-shadow:0 2px 8px #0000000f}@media (prefers-reduced-transparency:reduce),(prefers-contrast:more){.nav-lens{display:none}.nav-links a.active{outline-offset:-2px;outline:2px solid}}.site-header .icon-link{place-items:center;width:48px;height:48px;padding:0;display:inline-grid}.hero{isolation:isolate;color:#fff;place-items:center;min-height:100svh;display:grid;position:relative;overflow:hidden}.hero-photo,.hero-video,.hero-scene{pointer-events:none;position:absolute;inset:0}.hero-video{z-index:-2;object-fit:cover;object-position:center;width:100%;height:100%}.hero-photo{z-index:-3;object-fit:cover;object-position:center 52%;background:#101114;width:100%;height:100%}.hero-scene{z-index:-2}.hero-scene canvas{display:block}.hero-overlay{--shade-start:.83;--shade-mid:.36;--shade-end:.2;z-index:-1;pointer-events:none;background:linear-gradient(90deg, rgba(5, 8, 10, var(--shade-start)), rgba(5, 8, 10, var(--shade-mid)) 62%, rgba(5, 8, 10, var(--shade-end)));position:absolute;inset:0}.hero-content{width:min(var(--max), calc(100% - 88px));text-align:left;padding:112px 0 88px}.hero h1{max-width:1020px;font-family:var(--font-heading);text-wrap:balance;margin:0;font-size:72px;font-weight:600;line-height:1.16}.hero-specialty{max-width:850px;min-height:2.8em;margin:28px 0 0;font-size:25px;line-height:1.35}.typewriter-line strong{color:#fff;font-weight:600}.typing-cursor{background:#ffffffeb;width:3px;height:.95em;margin-left:5px;animation:.82s step-end infinite blink;display:inline-block;transform:translateY(.13em)}.hero-socials,.social-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.hero-socials{margin-top:18px}.section-link{border:1px solid var(--line);min-height:44px;color:var(--text);background:0 0;border-radius:6px;align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:600;transition:border-color .16s,background .16s;display:inline-flex}.section-link:hover{background:var(--bg-soft);border-color:#aeb3b8}.text-link{min-height:44px;color:var(--text);text-underline-offset:5px;align-items:center;gap:8px;font-size:15px;-webkit-text-decoration:underline #bec3c8;text-decoration:underline #bec3c8;display:inline-flex}.text-link:hover{text-decoration-color:currentColor}.publication-index-link{margin-top:26px}.scroll-cue{z-index:3;color:#ffffffdb;place-items:center;width:54px;height:54px;transition:opacity .22s;display:grid;position:absolute;bottom:25px;left:50%;transform:translate(-50%)}.scroll-cue:hover{opacity:.65}.page-section,.subpage{width:min(var(--max), calc(100% - 88px));margin:0 auto}.page-section{padding:80px 0;scroll-margin-top:80px}.subpage{min-height:78vh;padding:148px 0 92px}.subsection{padding-top:86px}.subpage-band{border-top:0;width:100%;padding:0}.route-loading{min-height:100vh}.section-heading{max-width:850px;margin-bottom:40px}.section-heading p,.kicker{color:var(--accent);text-transform:uppercase;margin:0 0 14px;font-size:12px;font-weight:850}.section-heading h2,.section-heading h1,.prose-page h1{font-family:var(--font-heading);font-size:var(--type-section);margin:0;font-weight:600;line-height:1.3}.section-heading span,.lede{max-width:730px;color:var(--muted);margin-top:22px;font-size:18px;display:block}.about-band{grid-template-columns:minmax(200px,300px) minmax(0,1fr);align-items:start;gap:48px;scroll-margin-top:0;display:grid}.about-portrait{background:0 0;border-radius:8px;grid-area:1/1;width:100%;height:auto;min-height:0;margin-top:0;overflow:hidden}.about-copy{grid-area:1/2;min-width:0}.about-portrait img{aspect-ratio:3/4;object-fit:cover;object-position:65% center;border-radius:6px;width:100%;height:auto;display:block}.about-copy .section-heading{margin-bottom:24px}.about-copy>p,.research-interests p{max-width:66ch;color:var(--muted);margin:0 0 18px;font-size:18px;line-height:1.65}.research-interests h3{margin:26px 0 8px;font-size:17px;font-weight:650}.about-copy .social-row{margin-top:28px}.news-section{padding-top:0}.news-list{margin:0;padding:0;list-style:none}.news-list li{grid-template-columns:84px minmax(0,1fr);gap:24px;padding:12px 0;display:grid}.news-date,.career-date{color:var(--dim);font-size:var(--type-caption);font-variant-numeric:tabular-nums}.news-list p{color:var(--muted);margin:0;font-size:18px;line-height:1.7}.news-list a{color:var(--text);white-space:nowrap;text-underline-offset:3px;align-items:center;gap:2px;text-decoration:underline;display:inline-flex}.career-entry{border-top:1px solid var(--line);grid-template-columns:160px minmax(0,1fr);gap:32px;padding:32px 0;display:grid}.career-logo{justify-content:center;align-items:center;width:160px;height:112px;padding:8px;display:flex}.career-logo img{object-fit:contain;width:100%;min-width:0;height:100%;min-height:0}.career-logo img[src$=hkust\.svg]{filter:brightness(0)}.career-copy{min-width:0}.career-heading{flex-wrap:wrap;align-items:baseline;gap:4px 24px;display:flex}.career-heading h3{flex:320px}.career-date{flex-shrink:0;margin-bottom:8px}.career-copy a{text-underline-offset:4px;-webkit-text-decoration:underline #bcc3c7;text-decoration:underline #bcc3c7}.career-copy a:hover{text-decoration-color:currentColor}.career-heading a{text-decoration:none}.career-heading a:hover{text-decoration:underline}.career-mentors{color:var(--muted)}.career-entry h3{font-size:var(--type-title);margin:0 0 8px;font-weight:600;line-height:1.4}.career-entry p{margin:0;font-size:17px;line-height:1.65}.career-role{color:var(--text);font-weight:500}.career-group,.career-description{color:var(--muted)}.career-entry .career-description{max-width:75ch;margin-top:12px}.education-section,.experience-section,.awards-section,.membership-section{padding-top:32px}.anchor-alias{height:0;scroll-margin-top:112px;display:block}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:32px 0;display:grid}.stat-grid article,.membership-card,.research-card,.post-card,.feature-tile,.line-item{border:1px solid var(--line);background:var(--surface);border-radius:8px}.stat-grid article{min-height:96px;padding:18px}.stat-grid strong{font-size:25px;line-height:1;display:block}.stat-grid span{color:var(--muted);text-transform:uppercase;margin-top:10px;font-size:12px;font-weight:750;display:block}.publication-list{gap:0;display:grid}.awards-section{padding-top:24px;scroll-margin-top:88px}.awards-section .section-heading{margin-bottom:24px}.awards-list{margin:0;padding:0;list-style:none}.awards-list li{grid-template-columns:128px minmax(0,1fr);align-items:start;gap:28px;padding:16px 0;display:grid}.award-date{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;padding-top:2px;font-size:16px;font-weight:500;line-height:1.8}.awards-list a:hover{text-underline-offset:3px;text-decoration:underline}.awards-list p{color:var(--muted);margin:0;font-size:18px;line-height:1.65}.awards-list strong{color:var(--text);font-weight:600}.awards-list .award-gold strong{color:#866413}.publication-legend{color:#59636a;flex-wrap:wrap;align-items:baseline;gap:8px 24px;margin:-16px 0 26px;font-size:15px;display:flex}.publication-legend span{white-space:nowrap}.publication-author{display:inline-block}.publication-authors sup{vertical-align:super;margin-left:1px;font-size:.72em;line-height:0}.publication-section{background:var(--bg);width:100%;color:var(--text);scroll-margin-top:0}.section-inner{width:min(var(--max), calc(100% - 88px));margin:0 auto}.publication-item{border-bottom:1px solid #d7dcdf;grid-template-columns:minmax(220px,300px) minmax(0,1fr);align-items:center;gap:32px;padding:28px 0;display:grid}.publication-item:first-of-type{padding-top:0}.publication-media{border-radius:8px;min-width:0;padding:0}.publication-thumbnail{aspect-ratio:504/300;cursor:zoom-in;background:#fff;border:0;border-radius:3px;place-items:center;width:100%;padding:0;display:grid;position:relative;overflow:hidden}.publication-zoom{color:#31373b;opacity:0;background:#ffffffe0;border-radius:50%;place-items:center;width:36px;height:36px;transition:opacity .16s;display:grid;position:absolute;bottom:6px;right:6px}.publication-thumbnail:hover .publication-zoom,.publication-thumbnail:focus-visible .publication-zoom{opacity:1}.publication-thumbnail img{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.publication-info>:is(h2,h3){color:#242b31;font-size:var(--type-title);margin:0;font-weight:600;line-height:1.35}.publication-info>:is(h2,h3) a:hover{text-underline-offset:3px;text-decoration:underline}.publication-info p{color:#434d55;font-size:var(--type-body);margin:9px 0 0;line-height:1.6}.publication-authors strong{color:#172127;font-weight:600}.publication-venue em{font-style:italic}.publication-info .publication-venue{font-size:var(--type-callout)}.publication-info .publication-award{color:#167d61;align-items:center;gap:7px;font-style:italic;font-weight:600;display:flex}.publication-award svg{flex-shrink:0}.publication-links{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.publication-section .section-link{color:#303236;background:0 0;border-color:#aeb8bd}.publication-section .section-link:hover{background:#e8ebed;border-color:#424a50}.research-page>.research-index{padding-top:140px}.section-link{margin-top:28px}.showcase-grid,.research-highlight-grid,.post-grid,.feature-grid,.membership-grid{gap:14px;display:grid}.showcase-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.showcase-card{border-radius:8px;min-width:0;position:relative}.research-image{cursor:zoom-in;background:#e8ebed;border:0;width:100%;padding:0;display:block;position:relative;overflow:hidden}.showcase-image{aspect-ratio:5/4;cursor:pointer;background:#fff;border:0;border-radius:8px;width:100%;padding:0;display:block;position:relative;overflow:hidden}.showcase-image>img{object-fit:cover;width:100%;height:100%}.showcase-image[data-fit=contain]>img{object-fit:contain;padding:20px}.showcase-overlay{opacity:0;pointer-events:none;border-radius:8px;transition:opacity .18s,transform .18s;position:absolute;inset:12px;transform:translateY(6px)}.showcase-overlay-content{height:100%;color:var(--glass-ink);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:18px;display:flex}.showcase-card:hover .showcase-overlay,.showcase-image:focus-visible+.showcase-overlay{opacity:1;transform:none}.showcase-title{font-family:var(--font-heading);font-size:1.25rem;font-weight:600;line-height:1.3}.showcase-summary{max-width:28ch;color:inherit;font-size:16px;line-height:1.6}.showcase-overlay-content>svg{flex-shrink:0}.research-image img{object-fit:contain;width:100%;height:100%}.research-image svg{color:#fff;background:#0a0c0fcc;border-radius:6px;width:38px;height:38px;padding:9px;position:absolute;bottom:12px;right:12px}.project-dialog{width:min(920px,100% - 48px);max-width:none;max-height:90dvh;color:var(--text);background:#fff;border:0;border-radius:8px;padding:0}.project-dialog::backdrop{background:#0f1216a6}.project-detail{padding:32px}.project-detail-heading{z-index:1;background:#fff;align-items:center;gap:20px;padding:10px 0;display:flex;position:sticky;top:0}.project-detail h2{font-family:var(--font-heading);flex:1;margin:0;font-size:28px;font-weight:600;line-height:1.3}.project-close{width:44px;height:44px;color:var(--text);cursor:pointer;background:#f1f2f4;border:0;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.project-close:hover{background:#e6e8eb}.project-detail p{color:var(--muted);margin:14px 0 24px;font-size:18px;line-height:1.75}.project-detail-image{object-fit:contain;border-radius:8px;width:100%;max-height:65vh;margin:0 auto 24px}.project-detail .text-link{margin-top:20px}.blog-section .text-link{margin-top:24px}.image-lightbox{color:#fff;background:#111518;border:1px solid #525b61;border-radius:6px;width:min(96vw,1400px);max-width:none;max-height:96vh;padding:24px;overflow:auto}.image-lightbox::backdrop{background:#000000e0}.image-lightbox img{object-fit:contain;width:auto;max-width:100%;max-height:calc(90vh - 92px);margin:0 auto}.image-lightbox p{color:#d0d4d9;margin:14px 48px 0 0;font-size:14px}.lightbox-close{color:#fff;cursor:pointer;background:#0a0c0fd1;border:0;border-radius:6px;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:12px;right:12px}.video-feature{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:center;gap:48px;display:grid}.video-frame{border:1px solid var(--line);aspect-ratio:16/9;background:#000;border-radius:8px;overflow:hidden}.video-frame iframe{border:0;width:100%;height:100%}.project-video{max-width:760px;margin:48px 0 0}.project-video figcaption{color:var(--muted);margin-top:14px;font-size:14px}.project-video figcaption svg{vertical-align:middle}.membership-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.membership-entry{border-top:1px solid var(--line);padding:28px 0}.membership-entry.has-logo{grid-template-columns:160px minmax(0,1fr);gap:32px;display:grid}.membership-logo{object-fit:contain;width:160px;height:112px}.membership-heading{flex-wrap:wrap;align-items:baseline;gap:8px 24px;display:flex}.membership-heading h3{font-size:var(--type-title);flex:360px;margin:0;font-weight:600;line-height:1.4}.membership-entry p{color:var(--muted);margin:10px 0;font-size:17px;line-height:1.65}.membership-entry .membership-subtitle{margin-top:4px}.membership-links{flex-wrap:wrap;gap:8px 24px;display:flex}.membership-links a{text-underline-offset:4px;align-items:center;gap:4px;min-height:44px;font-size:15px;-webkit-text-decoration:underline #bcc3c7;text-decoration:underline #bcc3c7;display:inline-flex}.membership-links a:hover{text-decoration-color:currentColor}.membership-card{border:0;border-top:1px solid var(--line);background:0 0;border-radius:0;min-height:0;padding:24px 0}.membership-card span,.tile-meta,.post-card-meta,.line-item span{color:var(--accent);text-transform:uppercase;font-size:12px;font-weight:850}.membership-card h3,.feature-tile h3,.post-card h3,.line-item h3{margin:26px 0 12px;font-size:24px;line-height:1.15}.membership-card strong{color:var(--text)}.membership-card p,.feature-tile p,.post-card p,.line-item p,.markdown-body{color:var(--muted)}.research-highlight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.research-card{overflow:hidden}.research-image{aspect-ratio:4/3}.research-card>div{padding:24px}.research-card svg{color:var(--accent)}.research-card h3{margin:14px 0 12px;font-size:26px;line-height:1.14}.research-card p{color:var(--muted);margin:0}.feature-grid,.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.post-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.feature-tile,.post-card{min-height:250px;padding:24px}.post-card{border:0;border-top:1px solid var(--line);background:0 0;border-radius:0;min-height:0;padding:24px 0}.post-card h2,.post-card h3{font-family:var(--font-heading);font-size:var(--type-title);margin:20px 0 12px;font-weight:600;line-height:1.35}.post-card p{font-size:17px;line-height:1.65}.tile-meta,.post-card-meta{color:var(--dim);justify-content:space-between;align-items:center;display:flex}.post-card-meta{text-transform:none;flex-wrap:wrap;gap:6px 16px;font-size:13px;font-weight:500}.post-date{color:var(--dim);margin-bottom:16px;font-size:15px;display:block}.post-card h2 a,.post-card h3 a{display:block}.post-card h2 a:hover,.post-card h3 a:hover{color:var(--accent)}.post-read-more{min-height:44px;color:var(--accent);align-items:center;gap:6px;margin-top:12px;font-size:14px;font-weight:650;display:inline-flex}.split-section{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:72px;display:grid}.line-list{gap:12px;display:grid}.line-link,.line-item{border-bottom:1px solid var(--line);min-height:74px;color:var(--text);justify-content:space-between;align-items:center;padding:20px 0;font-size:18px;display:flex}.line-item{border-bottom:1px solid var(--line);padding:26px;display:block}.tag-row{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.tag-row span{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:5px 9px;font-size:12px}.prose-page{max-width:840px}.back-link{color:var(--muted);margin-bottom:38px;display:inline-flex}.markdown-body{overflow-wrap:anywhere;margin-top:42px;font-size:18px;line-height:1.8}.markdown-body a{color:var(--accent);text-underline-offset:4px;text-decoration:underline}.markdown-body pre{background:var(--bg-soft);border-radius:6px;max-width:100%;padding:20px;overflow:auto}.markdown-body table{border-collapse:collapse;max-width:100%;display:block;overflow-x:auto}.markdown-body th,.markdown-body td{border-bottom:1px solid var(--line);text-align:left;padding:10px 14px}.markdown-body h2,.markdown-body h3{color:var(--text)}.markdown-body li{margin:8px 0}.principle-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.principle-strip article{border:1px solid var(--line);background:var(--surface);border-radius:8px;align-items:center;gap:12px;min-height:88px;padding:22px;display:flex}.principle-strip svg{color:var(--accent)}.site-footer{width:min(var(--max), calc(100% - 88px));border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:16px 32px;margin:0 auto;padding:38px 0 56px;font-size:14px;display:flex}@keyframes blink{50%{opacity:0}}@media (width>=1440px){.hero h1{font-size:80px}}@media (width<=1080px){.hero h1{font-size:64px}.hero-specialty{font-size:24px}.video-feature,.research-highlight-grid,.post-grid,.principle-strip,.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=920px){.showcase-image{aspect-ratio:1}.showcase-overlay-content{gap:10px;padding:14px}.hero-content{width:min(760px,100vw - 48px)}.hero h1{font-size:56px}.page-section,.subpage,.site-footer{width:min(var(--max), calc(100% - 48px))}.page-section.publication-section{width:100%}.section-inner{width:min(var(--max), calc(100% - 48px))}.video-feature,.research-highlight-grid,.post-grid,.feature-grid,.membership-grid,.split-section,.principle-strip{grid-template-columns:1fr}}@media (width<=740px){.showcase-grid{grid-template-columns:1fr;max-width:480px;margin:0 auto}.showcase-image{aspect-ratio:4/3}.publication-item{grid-template-columns:1fr;gap:24px}.publication-media{justify-self:center;width:min(100%,440px)}.publication-zoom{opacity:1}.about-band{grid-template-columns:1fr;gap:32px}.about-portrait{grid-row:1;justify-self:center;width:180px;margin-top:0}.about-copy{grid-area:2/1}}@media (width<=640px){.about-copy>p,.research-interests p{font-size:17px}.news-list li{grid-template-columns:82px minmax(0,1fr);gap:16px}.career-entry{grid-template-columns:1fr;gap:16px}.career-logo{width:144px;height:96px}.membership-entry.has-logo{grid-template-columns:1fr;gap:16px}.membership-logo{width:144px;height:96px}.membership-heading h3{font-size:18px}.career-heading{display:block}.career-date{font-size:14px;display:block}.career-entry p,.news-list p{font-size:17px}.career-entry h3{font-size:18px}.site-header{--navigation-height:48px;--navigation-inset:2px;--navigation-edge:max(12px, env(safe-area-inset-right));--navigation-start:max(12px, env(safe-area-inset-left));--navigation-top:max(12px, env(safe-area-inset-top))}.site-header .brand{font-size:14px}.site-header[data-menu-open=true] .brand{visibility:hidden}.liquid-surface.header-navigation{right:calc(var(--navigation-edge) + var(--navigation-height) + 8px);width:calc(100% - var(--navigation-start) - var(--navigation-edge) - var(--navigation-height) - 8px)}.nav-links{gap:0;font-size:14px;display:flex}.nav-links a{flex:auto;min-width:44px;padding:0 4px}.awards-list li{grid-template-columns:90px minmax(0,1fr);gap:14px;padding:14px 0}.award-date{font-size:14px}.awards-list p{font-size:17px}.hero-content{width:min(100%,100vw - 40px);padding:116px 0 84px}.hero h1{font-size:42px}.hero-specialty{font-size:19px;line-height:1.45}.hero-photo{object-position:60% center}.hero-overlay{--shade-start:.64;--shade-mid:.64;--shade-end:.64;background:#05080aa3}.hero-socials,.social-row{gap:6px}.section-heading h2,.section-heading h1,.prose-page h1{font-size:28px}.page-section{padding:64px 0}.page-section,.subpage,.site-footer{width:calc(100% - 40px)}.page-section.publication-section{padding-top:88px}.news-section,.experience-section,.education-section,.awards-section,.membership-section{padding-top:24px}.section-inner{width:calc(100% - 40px)}.publication-section .section-heading h2{font-size:28px}.publication-info>:is(h2,h3){font-size:1.25rem}.feature-tile,.post-card{min-height:220px}.site-footer{gap:10px;display:grid}.project-dialog{width:calc(100% - 24px);max-height:92dvh}.project-detail{padding:18px}.project-detail h2{font-size:23px}}@media (width>=641px) and (height<=540px){.hero-content{padding:86px 0 32px}.hero h1{font-size:48px}.hero-specialty{min-height:1.4em;margin-top:6px;font-size:18px;line-height:1.4}.hero-socials{margin-top:10px}.scroll-cue{width:32px;height:32px;bottom:0}.scroll-cue svg{width:28px;height:28px}}@media (width<=390px){.hero h1{font-size:36px}}@media (width<=360px){.nav-links{font-size:13px}.nav-links a{padding-inline:4px}.awards-list li,.news-list li{grid-template-columns:1fr;gap:4px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.typing-cursor{animation:none}.showcase-overlay{transition:opacity .1s;transform:none}.project-dialog[open],.image-lightbox[open]{animation:.1s ease-out dialog-fade}}@media (hover:none){.showcase-overlay{opacity:1;inset:auto 8px 8px;transform:none}.showcase-overlay-content{text-align:left;align-items:flex-start;padding:14px 16px}.showcase-summary,.showcase-overlay-content>svg{display:none}}@keyframes dialog-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes dialog-fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:no-preference){.project-dialog[open],.image-lightbox[open]{animation:.18s cubic-bezier(.16,1,.3,1) dialog-enter}}
