@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.hidden{display:none}.inline-flex{display:inline-flex}.h-full{height:100%}.min-h-full{min-height:100%}.flex-1{flex:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-col{flex-direction:column}.border{border-style:var(--tw-border-style);border-width:1px}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-8{padding-top:calc(var(--spacing) * 8)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--canvas:#e9e9e4;--panel:#f8f8f5;--panel-pure:#fff;--ink:#171715;--muted:#777770;--line:#deded8;--soft:#efefeb;--display:"Iowan Old Style", "Baskerville", "Times New Roman", serif;--sans:Arial, "Helvetica Neue", Helvetica, sans-serif;--mono:"SFMono-Regular", Consolas, monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}@media (max-width:760px){html{scroll-padding-top:80px}}#research,#publications,#research-flagship,#supervision,#publications-highlight,#teaching,#about,#place,#supervision-guidelines{scroll-margin-top:96px}@media (max-width:760px){#research,#publications,#research-flagship,#supervision,#publications-highlight,#teaching,#about,#place,#supervision-guidelines{scroll-margin-top:80px}}body{background:var(--canvas);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.brooks-shell{min-height:100svh;padding:10px 18px 18px}.brooks-dashboard{width:min(100%,1680px);margin:0 auto}.site-header{z-index:100;border:1px solid var(--line);-webkit-backdrop-filter:blur(16px);background:#f8f8f5f0;border-radius:22px;width:min(100% - 36px,1680px);margin:10px auto 4px;transition:transform .2s,box-shadow .2s;position:sticky;top:10px;box-shadow:0 4px 20px #00000008}.site-header__inner{grid-template-columns:1fr auto 1fr;align-items:center;min-height:68px;padding:0 24px;display:grid}.site-header__brand{align-items:center;display:flex}.brand-anchor{color:var(--ink);flex-direction:column;text-decoration:none;display:flex}.brand-title{font-family:var(--display);letter-spacing:-.04em;font-size:22px;font-weight:600;line-height:1.05}.brand-subtitle{font-family:var(--mono);letter-spacing:.08em;color:var(--muted);text-transform:uppercase;font-size:8.5px}.site-header__nav{align-items:center;gap:28px;display:flex}.site-nav-link{color:var(--muted);align-items:center;padding:6px 0;font-size:13px;font-weight:450;text-decoration:none;transition:color .15s;display:inline-flex;position:relative}.site-nav-link:hover{color:var(--ink)}.site-nav-link.is-active{color:var(--ink);font-weight:600}.site-nav-dot{background:var(--ink);border-radius:50%;width:4px;height:4px;position:absolute;bottom:-2px;left:50%;transform:translate(-50%)}.site-header__right{justify-self:end;align-items:center;gap:14px;display:flex}.site-header__cv-link{border:1px solid var(--line);background:var(--panel);font-family:var(--mono);letter-spacing:.05em;color:var(--ink);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:9.5px;font-weight:500;text-decoration:none;transition:all .18s;display:inline-flex}.site-header__cv-link:hover{background:var(--ink);color:#fff;border-color:var(--ink)}.site-header__cv-link:hover .cv-pill-tag{color:#fff;background:#fff3}.cv-pill-tag{background:var(--soft);color:var(--muted);letter-spacing:.05em;border-radius:3px;padding:1px 4px;font-size:8px;font-weight:700}.site-header__institution{align-items:center;gap:10px;display:flex}.inst-beacon{background:#16a34a;border-radius:50%;width:7px;height:7px;animation:2.4s infinite pulseBeacon;box-shadow:0 0 6px #16a34a99}@keyframes pulseBeacon{0%{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}to{opacity:.8;transform:scale(1)}}.inst-text{font-family:var(--mono);letter-spacing:.06em;color:var(--ink);align-items:baseline;gap:8px;font-size:10px;display:flex}.inst-text span{color:var(--muted);font-size:9px}@media (max-width:960px){.site-header__nav,.site-header__cv-link{display:none}.site-header__inner{grid-template-columns:1fr auto;padding-right:68px}}@media (max-width:760px){.site-header{border-radius:18px;width:calc(100% - 16px);margin:6px auto 0}.site-header__inner{min-height:56px;padding:0 58px 0 14px}.brand-title{font-size:18px}.brand-subtitle{font-size:7.5px}.inst-text span{display:none}}@media (max-width:520px){.site-header__institution{display:none}.site-header__inner{padding-right:50px}}.dashboard-grid{grid-template-columns:minmax(240px,.75fr) minmax(400px,1.5fr) minmax(280px,.9fr);gap:10px;display:grid}.panel{border:1px solid var(--line);background:var(--panel);border-radius:24px;position:relative;overflow:hidden}.panel-label{z-index:5;color:var(--muted);font-family:var(--mono);letter-spacing:.08em;justify-content:space-between;padding:18px 20px;font-size:8px;display:flex;position:relative}.profile-panel{flex-direction:column;min-height:650px;display:flex}.profile-portrait{background:var(--soft);border-radius:18px;flex:1;min-height:320px;margin:0 12px;position:relative;overflow:hidden}.profile-portrait img{object-fit:cover;filter:grayscale()}.profile-copy{padding:24px 20px 28px}.profile-role{color:var(--muted);font-family:var(--mono);letter-spacing:.1em;margin:0 0 10px;font-size:8px}.profile-copy h2{font-family:var(--display);letter-spacing:-.065em;margin:0;font-size:clamp(42px,4vw,68px);font-weight:500;line-height:.83}.profile-school{color:var(--muted);margin:24px 0 0;font-size:11px;line-height:1.5}.profile-cv-action{margin-top:20px}.profile-cv-link{background:var(--ink);color:var(--paper);font-family:var(--mono);letter-spacing:.05em;border-radius:999px;align-items:center;gap:7px;padding:8px 14px;font-size:9.5px;font-weight:500;text-decoration:none;transition:all .18s;display:inline-flex}.profile-cv-link:hover{background:#333330;transform:translateY(-1px)}.profile-cv-link .cv-icon{font-size:11px}.hero-panel{background:var(--panel-pure);flex-direction:column;min-height:650px;display:flex}.hero-copy{flex-direction:column;flex:1;justify-content:center;padding:35px 40px 20px;display:flex}.hero-kicker{color:var(--muted);font-family:var(--mono);letter-spacing:.1em;margin:0 0 24px;font-size:8px}.hero-copy h1{max-width:8ch;font-family:var(--display);letter-spacing:-.075em;margin:0;font-size:clamp(64px,7.2vw,126px);font-weight:500;line-height:.76}.hero-bottom{grid-template-columns:minmax(0,330px) auto;justify-content:space-between;align-items:end;gap:30px;padding:24px 30px 28px 40px;display:grid}.hero-bottom p{color:var(--muted);margin:0;font-size:12px;line-height:1.55}.round-link{border:1px solid var(--line);border-radius:50%;place-items:center;width:52px;height:52px;font-size:18px;transition:background .15s,color .15s;display:grid}.round-link:hover{background:var(--ink);color:#fff}.research-map-panel{background:#edede8;min-height:650px}.research-orbit{aspect-ratio:1;width:min(80%,430px);position:absolute;top:50%;left:50%;transform:translate(-50%,-52%)}.orbit{border:1px solid #cacac3;border-radius:50%;position:absolute}.orbit-one{inset:5%}.orbit-two{inset:20%}.orbit-three{border:0;border-left:1px solid #cacac3;border-radius:0;width:1px;top:5%;bottom:5%;left:49.5%}.research-orbit:before,.research-orbit:after{content:"";background:#cacac3;position:absolute}.research-orbit:before{height:1px;top:50%;left:0;right:0}.research-orbit:after{background:0 0;border:1px solid #cacac3;border-radius:50%;inset:15%;transform:rotate(45deg)scaleY(.42)}.orbit-center{font-family:var(--mono);letter-spacing:.08em;flex-direction:column;align-items:center;font-size:7px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.orbit-center strong{font-family:var(--display);letter-spacing:-.07em;margin:3px 0;font-size:40px;font-weight:500}.orbit-point{z-index:2;background:var(--ink);border-radius:50%;width:7px;height:7px;position:absolute}.point-a{top:5%;left:49%}.point-b{top:49%;right:5%}.point-c{bottom:5%;left:49%}.point-d{top:49%;left:5%}.research-map-caption{position:absolute;bottom:22px;left:20px;right:20px}.research-map-caption span{color:var(--muted);font-family:var(--mono);letter-spacing:.09em;font-size:7px}.research-map-caption p{max-width:250px;margin:8px 0 0;font-size:11px;line-height:1.4}.coordinates-panel{flex-direction:column;min-height:300px;display:flex}.coordinate-number{font-family:var(--display);letter-spacing:-.07em;flex:1;align-items:center;padding:15px 20px;font-size:clamp(55px,5.4vw,92px);display:flex}.coordinate-number sup{font-family:var(--mono);letter-spacing:0;align-self:center;margin-left:6px;font-size:9px}.coordinate-footer{border-top:1px solid var(--line);color:var(--muted);font-family:var(--mono);justify-content:space-between;padding:16px 20px;font-size:7px;display:flex}.areas-panel{min-height:300px}.area-list{border-top:1px solid var(--line)}.area-row{border-bottom:1px solid var(--line);grid-template-columns:50px 1fr 30px;align-items:center;min-height:58px;padding:0 18px;transition:background .14s;display:grid}.area-row:last-child{border-bottom:0}.area-row:hover{background:var(--soft)}.area-number{color:var(--muted);font-family:var(--mono);font-size:7px}.area-name{font-family:var(--display);letter-spacing:-.04em;font-size:clamp(19px,1.8vw,28px)}.area-arrow{justify-self:end;font-size:13px}.publication-panel{background:var(--ink);color:#f5f5f0;flex-direction:column;min-height:300px;display:flex}.publication-panel .panel-label{color:#999992}.publication-count{flex-direction:column;flex:1;justify-content:center;padding:15px 20px;display:flex}.publication-count span{color:#999992;font-family:var(--mono);letter-spacing:.1em;font-size:7px}.publication-count strong{font-family:var(--display);letter-spacing:-.07em;font-size:clamp(50px,5vw,86px);font-weight:500;line-height:.85}.publication-copy{border-top:1px solid #363633;justify-content:space-between;align-items:end;gap:20px;padding:16px 20px 20px;display:flex}.publication-copy p{color:#999992;max-width:210px;margin:0;font-size:9px;line-height:1.5}.publication-copy a{white-space:nowrap;font-family:var(--mono);font-size:7px}@media (max-width:1050px){.dashboard-grid{grid-template-columns:.8fr 1.2fr}.research-map-panel{grid-column:1/-1;min-height:520px}.publication-panel{grid-column:1/-1}}@media (max-width:760px){.brooks-shell{padding:8px}.topbar{border-radius:18px;grid-template-columns:1fr auto;min-height:60px;padding:0 16px}.main-nav{border-top:1px solid var(--line);order:3;grid-column:1/-1;width:100%;padding:15px 0;overflow-x:auto}.institution span{display:none}.dashboard-grid{grid-template-columns:1fr}.panel{border-radius:20px}.profile-panel,.hero-panel,.research-map-panel{min-height:560px}.profile-panel,.hero-panel,.research-map-panel,.publication-panel{grid-column:auto}.hero-copy{padding:30px 20px}.hero-copy h1{font-size:clamp(62px,20vw,100px)}.hero-bottom{padding:20px}.coordinate-number{font-size:clamp(62px,19vw,90px)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}.profile-panel,.hero-panel,.research-map-panel,.coordinates-panel,.areas-panel,.publication-panel,.project-card{isolation:isolate;position:relative}.profile-portrait,.project-image{isolation:isolate;display:block;position:relative!important;overflow:hidden!important}.profile-portrait{min-height:320px}.project-image{min-height:300px}.profile-portrait>img,.project-image>img{object-fit:cover!important;z-index:0!important;width:100%!important;max-width:100%!important;height:100%!important;position:absolute!important;inset:0!important}.profile-copy,.project-info{z-index:2;position:relative}.project-card{contain:layout paint}.brooks-dashboard{z-index:2;position:relative}.selected-research{z-index:1;position:relative;z-index:2!important;width:min(100% - 36px,1680px)!important;margin:10px auto 0!important;padding:72px 0 120px!important;display:block!important;position:relative!important;overflow:hidden!important}.selected-research__header{grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr)!important;align-items:end!important;gap:60px!important;padding:0 12px 42px!important;display:grid!important}.selected-research__header h2{max-width:9ch!important;font-family:var(--display)!important;letter-spacing:-.07em!important;margin:0!important;font-size:clamp(60px,7vw,118px)!important;font-weight:500!important;line-height:.78!important}.selected-research__header p{max-width:330px!important;color:var(--muted)!important;margin:0 0 8px!important;font-size:12px!important;line-height:1.55!important}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;width:100%!important;display:grid!important;position:relative!important}.project-card,.project-card--large{contain:layout paint!important;isolation:isolate!important;border:1px solid var(--line)!important;background:var(--panel)!important;border-radius:24px!important;flex-direction:column!important;width:100%!important;min-width:0!important;height:auto!important;display:flex!important;position:relative!important;overflow:hidden!important}.project-image,.project-card--large .project-image{isolation:isolate!important;background:var(--soft)!important;flex:none!important;width:100%!important;height:clamp(320px,31vw,520px)!important;min-height:0!important;display:block!important;position:relative!important;overflow:hidden!important}.project-image>img{object-fit:cover!important;object-position:center!important;z-index:0!important;width:100%!important;max-width:none!important;height:100%!important;max-height:none!important;display:block!important;position:absolute!important;inset:0!important}.project-info{z-index:3!important;background:var(--panel)!important;border-top:1px solid var(--line)!important;grid-template-columns:130px minmax(0,1fr) auto!important;align-items:center!important;gap:20px!important;width:100%!important;min-height:100px!important;padding:18px 22px!important;display:grid!important;position:relative!important}.project-info>span:first-child{color:var(--muted)!important;font-family:var(--mono)!important;letter-spacing:.08em!important;font-size:7px!important}.project-info h3{font-family:var(--display)!important;letter-spacing:-.045em!important;margin:0!important;font-size:clamp(26px,2.3vw,40px)!important;font-weight:500!important;line-height:1!important}.project-arrow{border:1px solid var(--line)!important;border-radius:50%!important;place-items:center!important;width:42px!important;height:42px!important;display:grid!important;position:relative!important}@media (max-width:760px){.selected-research{width:calc(100% - 16px)!important;padding:55px 0 80px!important}.selected-research__header{grid-template-columns:1fr!important;gap:30px!important;padding:0 8px 30px!important}.project-grid{grid-template-columns:1fr!important}.project-image,.project-card--large .project-image{height:min(92vw,480px)!important}.project-info{grid-template-columns:1fr auto!important}.project-info>span:first-child{grid-column:1/-1!important}}.academic-grid{z-index:2;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr) minmax(280px,.75fr);gap:10px;width:min(100% - 36px,1680px);margin:10px auto 0;display:grid;position:relative}.academic-card{isolation:isolate;border:1px solid var(--line);background:var(--panel);border-radius:24px;flex-direction:column;min-width:0;min-height:520px;display:flex;position:relative;overflow:hidden}.academic-card .panel-label{z-index:3;color:var(--muted);font-family:var(--mono);letter-spacing:.09em;justify-content:space-between;gap:20px;padding:18px 20px;font-size:7px;display:flex;position:relative}.academic-card--intro{background:#f7f7f3;flex-direction:column;display:flex;overflow:visible!important}.academic-card__body{flex-direction:column;flex:1;justify-content:flex-end;padding:36px 28px 32px;display:flex;overflow:visible}.academic-card--intro .academic-card__body{padding:36px 28px 32px;overflow:visible}.academic-card__eyebrow{color:var(--muted);font-family:var(--mono);letter-spacing:.09em;margin-bottom:18px;font-size:7px;line-height:1.5;display:block}.academic-card__body h2,.academic-card--intro h2{max-width:14ch;font-family:var(--display);letter-spacing:-.035em;margin:0;padding-top:6px;font-size:clamp(34px,3.5vw,54px);font-weight:500;line-height:1.08}.academic-card__body p{max-width:420px;color:var(--muted);margin:22px 0 0;font-size:11px;line-height:1.55}.academic-card--students{background:#e9e9e4}.student-orbit{aspect-ratio:1;width:min(72%,340px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.student-orbit:before,.student-orbit:after{content:"";background:#c5c5be;position:absolute}.student-orbit:before{height:1px;top:50%;left:0;right:0}.student-orbit:after{width:1px;top:0;bottom:0;left:50%}.student-orbit__ring{border:1px solid #c5c5be;border-radius:50%;position:absolute}.student-orbit__ring--one{inset:3%}.student-orbit__ring--two{inset:23%}.student-node{z-index:2;background:#111;border-radius:999px;width:7px;height:7px;position:absolute}.student-node--a{top:3%;left:calc(50% - 3px)}.student-node--b{top:calc(50% - 3px);right:3%}.student-node--c{bottom:3%;left:calc(50% - 3px)}.student-orbit__center{text-align:center;width:150px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.student-orbit__center span{color:var(--muted);font-family:var(--mono);letter-spacing:.1em;margin-bottom:6px;font-size:6px;display:block}.student-orbit__center strong{font-family:var(--display);letter-spacing:-.05em;font-size:clamp(22px,2vw,32px);font-weight:500;line-height:.9;display:block}.academic-card__footer{color:var(--muted);font-family:var(--mono);letter-spacing:.07em;justify-content:space-between;gap:20px;font-size:6px;display:flex;position:absolute;bottom:20px;left:20px;right:20px}.academic-card--about{color:#f4f4ee;background:#11110f;flex-direction:column;display:flex}.academic-card--about .panel-label{color:#888882}.about-copy{flex-direction:column;flex:1;justify-content:center;padding:34px 26px;display:flex}.about-copy__small{color:#8d8d87;font-family:var(--mono);letter-spacing:.09em;margin-bottom:36px;font-size:7px;line-height:1.55;display:block}.about-copy p{font-family:var(--display);letter-spacing:-.047em;margin:0;font-size:clamp(29px,2.45vw,45px);font-weight:500;line-height:.96}.about-footer{color:#888882;font-family:var(--mono);letter-spacing:.07em;border-top:1px solid #33332f;justify-content:space-between;gap:18px;padding:18px 20px;font-size:6px;display:flex}.site-footer{z-index:2;color:#f4f4ee;background:#111211;border:1px solid #ffffff14;border-radius:28px;flex-direction:column;gap:clamp(32px,4vw,48px);width:min(100% - 36px,1680px);margin:40px auto 36px;padding:clamp(32px,4vw,56px);display:flex;position:relative;overflow:hidden}.site-footer__masthead{border-bottom:1px solid #ffffff1f;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding-bottom:28px;display:flex}.footer-identity{flex-direction:column;gap:4px;display:flex}.footer-brand{font-family:var(--display);letter-spacing:-.04em;color:#fff;font-size:1.5rem;font-weight:600;text-decoration:none}.footer-tagline{font-family:var(--mono);letter-spacing:.04em;color:#8e8e88;margin:0;font-size:.74rem}.footer-contact-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.footer-action-btn{color:#e2e2dc;font-family:var(--mono);letter-spacing:.04em;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff24;border-radius:20px;align-items:center;gap:8px;padding:8px 16px;font-size:.74rem;text-decoration:none;transition:all .16s;display:inline-flex}.footer-action-btn:hover{color:#fff;background:#ffffff24;border-color:#ffffff4d;transform:translateY(-1px)}.footer-action-btn.copied{color:#fff;background:#15803d;border-color:#22c55e}.footer-action-btn--primary{color:#111;background:#f4f4ee;border-color:#f4f4ee;font-weight:600}.footer-action-btn--primary:hover{color:#000;background:#fff}.site-footer__directory{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(24px,3vw,40px);padding:8px 0;display:grid}.footer-col{flex-direction:column;gap:14px;display:flex}.footer-col__title{font-family:var(--mono);letter-spacing:.08em;color:#8e8e88;text-transform:uppercase;font-size:.72rem}.footer-col__list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.footer-col__list li a{color:#c4c4bc;font-size:.84rem;line-height:1.4;text-decoration:none;transition:color .15s,transform .15s;display:inline-block}.footer-col__list li a:hover{color:#fff;transform:translate(2px)}.footer-col__highlight a{font-family:var(--mono);text-underline-offset:4px;margin-top:4px;color:#fff!important;font-size:.76rem!important;text-decoration:underline!important}.site-footer__statement{border-top:1px solid #ffffff1a;border-bottom:1px solid #ffffff1a;grid-template-columns:240px minmax(0,1fr) 240px;align-items:center;gap:32px;padding:clamp(24px,3vw,40px) 0;display:grid}.footer-statement-side{flex-direction:column;gap:6px;display:flex}.footer-statement-side.right{text-align:right}.footer-statement-side .meta-tag{font-family:var(--mono);letter-spacing:.08em;color:#8e8e88;text-transform:uppercase;font-size:.68rem}.footer-statement-side p{color:#b0b0a8;margin:0;font-size:.8rem;line-height:1.45}.footer-statement-heading{font-family:var(--display);letter-spacing:-.06em;text-align:center;color:#f5f5f0;margin:0;font-size:clamp(48px,7vw,110px);font-weight:500;line-height:.88}.site-footer__bottom{font-family:var(--mono);letter-spacing:.06em;color:#8e8e88;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;font-size:.72rem;display:flex}.footer-bottom-info{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.footer-bottom-info .bullet{color:#555}.back-to-top-btn{color:#f4f4ee;font-family:var(--mono);letter-spacing:.06em;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:16px;padding:6px 14px;font-size:.72rem;transition:all .16s}.back-to-top-btn:hover{color:#fff;background:#ffffff26;border-color:#fff;transform:translateY(-1px)}@media (max-width:1024px){.site-footer__directory{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer__statement{text-align:center;grid-template-columns:1fr}.footer-statement-side.right,.footer-statement-side.left{text-align:center}}@media (max-width:640px){.site-footer{border-radius:20px;width:calc(100% - 16px);padding:24px 18px}.site-footer__masthead{flex-direction:column;align-items:flex-start}.footer-contact-actions{flex-direction:column;align-items:stretch;width:100%}.footer-action-btn{justify-content:center}.site-footer__directory{grid-template-columns:1fr}.site-footer__bottom{flex-direction:column;align-items:flex-start;gap:12px}}@media (max-width:1050px){.academic-grid{grid-template-columns:1fr 1fr}.academic-card--intro{grid-column:1/-1}.site-footer__statement{grid-template-columns:90px minmax(0,1fr) 90px}}@media (max-width:760px){.academic-grid{grid-template-columns:1fr;width:calc(100% - 16px)}.academic-card,.academic-card--intro{border-radius:20px;grid-column:auto;min-height:470px}.academic-card--intro{overflow:visible!important}.academic-card__body,.academic-card--intro .academic-card__body{flex:1;min-height:auto;padding:32px 20px 28px;overflow:visible}.site-footer{border-radius:20px;width:calc(100% - 16px);min-height:560px;margin-bottom:8px;padding:22px 18px}.site-footer__top{flex-direction:column;align-items:flex-start}.site-footer__statement{grid-template-columns:1fr;align-content:center;gap:22px}.site-footer__statement>span,.site-footer__statement>span:last-child{text-align:center}.site-footer__bottom{grid-template-columns:1fr;gap:10px}.site-footer__bottom span:nth-child(2){text-align:left}.site-footer__bottom a{justify-self:start}}@keyframes brooks-card-reveal{0%{opacity:0;transform:translateY(18px)scale(.992)}to{opacity:1;transform:translateY(0)scale(1)}}@supports (animation-timeline:view()){.dashboard-grid>.panel,.project-card,.academic-card,.site-footer{animation-name:brooks-card-reveal;animation-duration:1ms;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:both;animation-timeline:view();animation-range:entry 5% cover 22%}}.project-card{transition:transform .42s cubic-bezier(.22,1,.36,1),border-color .3s,box-shadow .42s cubic-bezier(.22,1,.36,1)}.project-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px #11110f0e,0 3px 10px #11110f06;border-color:#c9c9c2!important}.project-image>img{transition:transform .9s cubic-bezier(.16,1,.3,1),filter .6s;transform:scale(1.001)}.project-card:hover .project-image>img{transform:scale(1.035)}.project-info{transition:background-color .3s}.project-card:hover .project-info{background:#f4f4ef!important}.project-arrow{transition:transform .4s cubic-bezier(.22,1,.36,1),background-color .3s,color .3s,border-color .3s}.project-card:hover .project-arrow{background:var(--ink);color:#fff;transform:translate(3px,-3px);border-color:var(--ink)!important}.dashboard-grid>.panel{transition:transform .42s cubic-bezier(.22,1,.36,1),border-color .3s,box-shadow .42s cubic-bezier(.22,1,.36,1)}.dashboard-grid>.panel:hover{border-color:#cbcbc5;transform:translateY(-3px);box-shadow:0 14px 34px #11110f0b}.profile-portrait>img{transition:transform 1s cubic-bezier(.16,1,.3,1),filter .7s;transform:scale(1.002)}.profile-panel:hover .profile-portrait>img{transform:scale(1.025)}.research-map-panel .orbit,.student-orbit__ring{transition:transform .7s cubic-bezier(.22,1,.36,1),border-color .4s}.research-map-panel:hover .orbit{transform:scale(1.025)}.academic-card--students:hover .student-orbit__ring--one{border-color:#a9a9a1;transform:scale(1.025)}.academic-card--students:hover .student-orbit__ring--two{border-color:#a9a9a1;transform:scale(.965)}.student-node{transition:transform .65s cubic-bezier(.22,1,.36,1)}.academic-card--students:hover .student-node--a{transform:translateY(-5px)}.academic-card--students:hover .student-node--b{transform:translate(5px)}.academic-card--students:hover .student-node--c{transform:translateY(5px)}.academic-card{transition:transform .42s cubic-bezier(.22,1,.36,1),border-color .3s,box-shadow .42s cubic-bezier(.22,1,.36,1)}.academic-card:hover{border-color:#c9c9c2;transform:translateY(-3px);box-shadow:0 16px 38px #11110f0b}.academic-card--about:hover{border-color:#44443f}.hero-panel h1,.academic-card__body h2,.about-copy p,.site-footer__statement h2{transition:letter-spacing .6s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1)}.hero-panel:hover h1{letter-spacing:-.058em;transform:translate(2px)}.academic-card--intro:hover h2{letter-spacing:-.058em}.site-footer__links a,.site-footer__bottom a{position:relative}.site-footer__links a:after,.site-footer__bottom a:after{content:"";transform-origin:100%;background:currentColor;height:1px;transition:transform .35s cubic-bezier(.22,1,.36,1);position:absolute;bottom:-5px;left:0;right:0;transform:scaleX(0)}.site-footer__links a:hover:after,.site-footer__bottom a:hover:after{transform-origin:0;transform:scaleX(1)}@media (prefers-reduced-motion:reduce){.dashboard-grid>.panel,.project-card,.project-image>img,.project-arrow,.profile-portrait>img,.research-map-panel .orbit,.academic-card,.student-orbit__ring,.student-node,.hero-panel h1,.academic-card__body h2,.about-copy p,.site-footer__statement h2,.site-footer__links a:after,.site-footer__bottom a:after{transition:none!important;animation:none!important;transform:none!important}}@media (hover:none){.dashboard-grid>.panel:hover,.project-card:hover,.academic-card:hover{box-shadow:none;transform:none}.project-card:hover .project-image>img,.profile-panel:hover .profile-portrait>img{transform:none}}.globe-equator,.globe-latitude,.globe-longitude{transform-style:preserve-3d;border:1px solid #11110f38;border-radius:50%;position:absolute;top:50%;left:50%}.globe-equator{width:100%;height:30%;transform:translate(-50%,-50%)rotateX(74deg)}.globe-latitude{width:82%;height:24%}.globe-latitude--north{transform:translate(-50%,-120%)rotateX(73deg)}.globe-latitude--south{transform:translate(-50%,20%)rotateX(73deg)}.globe-longitude{width:100%;height:100%}.globe-longitude--one{transform:translate(-50%,-50%)rotateY(62deg)}.globe-longitude--two{transform:translate(-50%,-50%)rotateY(-62deg)}.globe-longitude--three{transform:translate(-50%,-50%)rotateY(88deg)}.globe-route{transform-origin:50%;border-top:1px solid #11110f8c;border-radius:50%;width:67%;height:34%;position:absolute;top:50%;left:50%}.globe-route--one{transform:translate(-50%,-50%)rotate(-22deg)translateZ(8px)}.globe-route--two{opacity:.52;width:52%;height:27%;transform:translate(-50%,-50%)rotate(38deg)translateZ(13px)}.globe-node{z-index:5;background:#11110f;border-radius:50%;width:7px;height:7px;position:absolute;box-shadow:0 0 0 4px #11110f0f}.globe-node--a{top:24%;left:33%}.globe-node--b{top:47%;right:11%}.globe-node--c{bottom:17%;left:42%}.supervision-globe__meta{color:var(--muted);font-family:var(--mono);letter-spacing:.08em;justify-content:space-between;font-size:6px;display:flex;position:absolute;bottom:0;left:0;right:0}@keyframes supervision-globe-drift{0%{transform:rotateY(0)rotateX(0)}50%{transform:rotateY(7deg)rotateX(2deg)}to{transform:rotateY(0)rotateX(0)}}.academic-card--students .student-orbit{display:none!important}@media (prefers-reduced-motion:reduce){.supervision-globe__sphere{animation:none!important}.supervision-globe__scene{transition:none!important}}@media (max-width:760px){.supervision-globe__scene{width:min(74vw,340px)}}.supervision-globe{perspective:1100px;place-items:center;display:grid;position:absolute;inset:52px 16px 48px;overflow:hidden}.supervision-globe__scene{aspect-ratio:1;width:min(82%,370px);transform-style:preserve-3d;transition:transform 1.1s cubic-bezier(.16,1,.3,1);position:relative;transform:rotateX(-11deg)rotateY(18deg)}.academic-card--students:hover .supervision-globe__scene{transform:rotateX(-5deg)rotateY(31deg)scale(1.035)}.supervision-globe__sphere{transform-style:preserve-3d;border:1px solid #11110f4d;border-radius:50%;animation:12s ease-in-out infinite alternate supervision-drift;position:absolute;inset:0}.supervision-globe__sphere:before{content:"";background:radial-gradient(circle at 31% 26%,#ffffff8c,#ffffff14 30%,#11110f06 63%,#11110f14 100%);border-radius:50%;position:absolute;inset:2%;box-shadow:inset -28px -18px 45px #11110f12,inset 16px 12px 30px #ffffff6b}.sg-axis{background:#11110f1f;position:absolute;top:50%;left:50%}.sg-axis--horizontal{width:112%;height:1px;transform:translate(-50%,-50%)translateZ(-8px)}.sg-axis--vertical{width:1px;height:112%;transform:translate(-50%,-50%)translateZ(-8px)}.sg-ring{transform-style:preserve-3d;border:1px solid #11110f36;border-radius:50%;position:absolute;top:50%;left:50%}.sg-ring--equator{width:100%;height:34%;transform:translate(-50%,-50%)rotateX(72deg)}.sg-ring--latitude-a{width:82%;height:27%;transform:translate(-50%,-112%)rotateX(70deg)}.sg-ring--latitude-b{width:82%;height:27%;transform:translate(-50%,12%)rotateX(70deg)}.sg-meridian{transform-style:preserve-3d;border:1px solid #11110f30;border-radius:50%;position:absolute;inset:0}.sg-meridian--a{transform:rotateY(58deg)}.sg-meridian--b{transform:rotateY(-58deg)}.sg-meridian--c{transform:rotateY(82deg)}.sg-orbit{transform-style:preserve-3d;border:1px solid #11110f73;border-radius:50%;position:absolute;top:50%;left:50%}.sg-orbit--a{width:112%;height:47%;transform:translate(-50%,-50%)rotate(-24deg)rotateX(62deg)translateZ(13px)}.sg-orbit--b{opacity:.48;width:106%;height:40%;transform:translate(-50%,-50%)rotate(42deg)rotateX(67deg)translateZ(18px)}.sg-node{z-index:8;background:#11110f;border-radius:50%;width:7px;height:7px;position:absolute;box-shadow:0 0 0 4px #11110f0f,0 2px 7px #11110f1f}.sg-node--a{top:17%;left:38%}.sg-node--b{top:44%;right:3%}.sg-node--c{bottom:11%;left:43%}.sg-node--d{top:49%;left:8%}.supervision-globe__core{z-index:10;text-align:center;backface-visibility:hidden;width:155px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)translateZ(34px)}.supervision-globe__core span{color:var(--muted);font-family:var(--mono);letter-spacing:.11em;margin-bottom:6px;font-size:6px;display:block}.supervision-globe__core strong{font-family:var(--display);letter-spacing:-.05em;font-size:clamp(22px,2vw,31px);font-weight:500;line-height:.88;display:block}@keyframes supervision-drift{0%{transform:rotateY(-4deg)rotateX(-2deg)}to{transform:rotateY(8deg)rotateX(3deg)}}.student-orbit{display:none!important}@media (prefers-reduced-motion:reduce){.supervision-globe__sphere{animation:none!important}.supervision-globe__scene{transition:none!important}}@media (max-width:760px){.supervision-globe__scene{width:min(76vw,350px)}}.supervision-globe{display:none!important}.supervision-webgl{isolation:isolate;cursor:grab;position:absolute;inset:42px 10px;overflow:hidden}.supervision-webgl:active{cursor:grabbing}.supervision-webgl canvas{outline:none;inset:0;width:100%!important;height:100%!important;position:absolute!important}.supervision-webgl:after{content:"";z-index:2;pointer-events:none;background:radial-gradient(circle,#0000 48%,#e9e9e414 68%,#e9e9e485 100%);border-radius:50%;position:absolute;inset:7% 8%}.supervision-webgl__label{z-index:4;text-align:center;pointer-events:none;width:170px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.supervision-webgl__label span,.supervision-webgl__label small{color:var(--muted);font-family:var(--mono);letter-spacing:.1em;font-size:6px;font-weight:400;line-height:1.4;display:block}.supervision-webgl__label strong{font-family:var(--display);letter-spacing:-.05em;margin:6px 0;font-size:clamp(22px,2vw,31px);font-weight:500;line-height:.88;display:block}@media (max-width:760px){.supervision-webgl{inset:45px 0 42px}}.supervision-webgl{inset:28px -18px!important}.supervision-webgl__label{width:190px!important}.supervision-webgl__label strong{font-size:clamp(25px,2.25vw,35px)!important}@media (max-width:760px){.brooks-shell{padding:10px!important}.brooks-dashboard{border-radius:20px!important}.topbar{min-height:62px!important;padding:12px 14px!important}.topbar nav,.topbar__nav{display:none!important}.dashboard-grid{gap:8px!important}.dashboard-grid>.panel{border-radius:18px!important}.hero-panel h1,.hero-panel__title{letter-spacing:-.055em!important;overflow-wrap:normal!important;word-break:normal!important;font-size:clamp(44px,13.5vw,64px)!important;line-height:.86!important}.profile-panel{padding:14px!important}.profile-panel img{border-radius:11px!important}.selected-research{padding-inline:2px!important}.project-grid{gap:10px!important}.project-card{border-radius:18px!important}.project-image{border-radius:12px!important}.academic-grid{gap:0!important;padding-inline:2px!important}.academic-card{box-shadow:none!important;border-bottom:0!important;border-left:0!important;border-right:0!important;border-radius:0!important}.academic-card:first-child{border-top:1px solid var(--border)!important}.academic-card--intro{background:0 0!important;overflow:visible!important}.academic-card--intro .academic-card__body{padding:32px 18px 28px!important;overflow:visible!important}.academic-card--intro h2,.academic-card--intro .academic-card__title{letter-spacing:-.03em!important;padding-top:4px!important;font-size:clamp(30px,8.5vw,46px)!important;line-height:1.08!important}.academic-card--students{border-radius:18px!important;min-height:430px!important;margin:12px 0!important}.academic-card--about{padding:30px 18px 34px!important}.site-footer{border-radius:18px!important;margin-top:10px!important}.site-footer h2,.site-footer__title{letter-spacing:-.055em!important;font-size:clamp(48px,14vw,72px)!important;line-height:.86!important}.supervision-webgl{inset:36px -6px 40px!important}.supervision-webgl__label strong{font-size:clamp(27px,8vw,34px)!important}.floating-indicator,.floating-dot,[class*=floating-indicator]{display:none!important}}@media (max-width:390px){.brooks-shell{padding:6px!important}.hero-panel h1,.hero-panel__title{font-size:clamp(40px,13vw,52px)!important}.academic-card--students{min-height:400px!important}}.mobile-menu-button,.mobile-menu-overlay{display:none}@media (max-width:960px){.mobile-menu-button{z-index:1002;-webkit-backdrop-filter:blur(12px);background:#f4f4efeb;border:1px solid #11110f26;border-radius:50%;place-content:center;gap:6px;width:44px;height:44px;padding:0;display:grid;position:fixed;top:22px;right:24px}.mobile-menu-button span{background:#11110f;width:17px;height:1px;transition:transform .35s cubic-bezier(.16,1,.3,1),opacity .2s;display:block}.mobile-menu-button[aria-expanded=true] span:first-child{transform:translateY(3.5px)rotate(45deg)}.mobile-menu-button[aria-expanded=true] span:last-child{transform:translateY(-3.5px)rotate(-45deg)}.mobile-menu-overlay{z-index:1001;opacity:0;visibility:hidden;pointer-events:none;background:#efefe9;flex-direction:column;padding:22px 18px 20px;transition:opacity .3s,transform .45s cubic-bezier(.16,1,.3,1),visibility .3s;display:flex;position:fixed;inset:0;transform:translateY(-10px)}.mobile-menu-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:none}.mobile-menu-meta{font-family:var(--mono);letter-spacing:.08em;justify-content:space-between;padding-right:58px;font-size:7px;display:flex}.mobile-menu-overlay nav{flex-direction:column;flex:1;justify-content:center;display:flex}.mobile-menu-overlay nav a{color:#11110f;border-bottom:1px solid #11110f26;grid-template-columns:34px 1fr;align-items:baseline;padding:14px 0;text-decoration:none;display:grid}.mobile-menu-overlay nav a:first-child{border-top:1px solid #11110f26}.mobile-menu-overlay nav span{font-family:var(--mono);font-size:7px}.mobile-menu-overlay nav strong{font-family:var(--display);letter-spacing:-.05em;font-size:clamp(42px,13vw,62px);font-weight:500;line-height:.9}.mobile-menu-cv{margin:16px 0 12px}.mobile-cv-btn{background:var(--ink);font-family:var(--mono);letter-spacing:.08em;border:none;border-radius:12px;justify-content:space-between;align-items:center;padding:12px 16px;font-size:10px;font-weight:600;text-decoration:none;display:flex;color:var(--paper)!important}.mobile-cv-btn:hover{background:#333330}.mobile-menu-footer{font-family:var(--mono);letter-spacing:.08em;font-size:7px}}@media (prefers-reduced-motion:reduce){.mobile-menu-overlay,.mobile-menu-button span{transition:none!important}}@media (max-width:760px){.project-card{position:relative;padding-top:10px!important;overflow:hidden!important}.project-image{position:relative;border-radius:12px!important;width:calc(100% - 20px)!important;margin-inline:10px!important;overflow:hidden!important}.project-card [class*=badge],.project-card [class*=floating],.project-card [class*=marker]{bottom:16px!important;left:16px!important;right:auto!important}.project-info{z-index:2;position:relative}}@media (max-width:390px){.project-card [class*=badge],.project-card [class*=floating],.project-card [class*=marker]{bottom:12px!important;left:12px!important}}@media (max-width:760px){.floating-indicator,.floating-dot,[class*=floating-indicator],[class*=corner-badge],[class*=nav-badge]{bottom:16px!important;left:auto!important;right:16px!important;transform:none!important}.profile-panel{border-radius:20px!important;padding:12px!important}.profile-panel img,.profile-panel [class*=image]{border-radius:10px!important}.dashboard-grid>.panel:nth-child(2){box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;margin-top:4px!important;padding:30px 16px 34px!important}.dashboard-grid>.panel:nth-child(2):before,.dashboard-grid>.panel:nth-child(2):after{display:none!important}.dashboard-grid>.panel:nth-child(2) h1,.dashboard-grid>.panel:nth-child(2) .hero-panel__title{letter-spacing:-.055em!important;max-width:8.5ch!important;margin-top:18px!important;font-size:clamp(43px,12.5vw,59px)!important;line-height:.88!important}.dashboard-grid>.panel:nth-child(2){border-top:1px solid #11110f29!important;border-bottom:1px solid #11110f29!important}}@media (max-width:390px){.dashboard-grid>.panel:nth-child(2){padding:26px 12px 30px!important}.dashboard-grid>.panel:nth-child(2) h1,.dashboard-grid>.panel:nth-child(2) .hero-panel__title{font-size:clamp(39px,12vw,50px)!important}}@media (max-width:760px){.mobile-menu-meta span:last-child,.topbar [class*=dalhousie],.topbar [class*=institution],.topbar [class*=school]{display:none!important}.mobile-menu-button{top:12px!important;right:14px!important}.profile-panel{border-radius:20px!important;margin-bottom:4px!important;padding:12px!important}.profile-panel img,.profile-panel [class*=image]{border-radius:8px!important}.dashboard-grid{row-gap:4px!important}.dashboard-grid>.panel:nth-child(2){margin-top:-2px!important;padding-top:22px!important}.hero-panel,.hero-panel__content{margin-top:0!important}}@media (max-width:390px){.profile-panel{padding:10px!important}.profile-panel img,.profile-panel [class*=image]{border-radius:7px!important}.dashboard-grid>.panel:nth-child(2){padding-top:18px!important}}.dal-place{background:#e9e9e3;border:1px solid #11110f21;border-radius:28px;margin:10px 0;padding:22px;position:relative;overflow:hidden}.dal-place__meta{font-family:var(--mono);letter-spacing:.09em;border-bottom:1px solid #11110f24;justify-content:space-between;align-items:center;padding-bottom:18px;font-size:7px;display:flex}.dal-place__copy{z-index:3;grid-template-columns:minmax(0,1.45fr) minmax(180px,.55fr);gap:28px;padding:34px 2px 24px;display:grid;position:relative}.dal-place__eyebrow{font-family:var(--mono);letter-spacing:.1em;margin:0 0 16px;font-size:8px}.dal-place__copy h2{max-width:8ch;font-family:var(--display);letter-spacing:-.065em;margin:0;font-size:clamp(62px,8vw,126px);font-weight:500;line-height:.78}.dal-place__details{align-self:end;padding-bottom:8px}.dal-place__details p{font-family:var(--mono);letter-spacing:.075em;border-bottom:1px solid #11110f21;margin:0;padding:7px 0;font-size:7px;line-height:1.4}.dal-place__visual{background-color:#0000;background-image:linear-gradient(#11110f0b 1px,#0000 1px),linear-gradient(90deg,#11110f0b 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:54px 54px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border-top:1px solid #11110f26;border-bottom:1px solid #11110f26;height:clamp(430px,52vw,700px);position:relative;overflow:hidden}.dal-place__canvas{position:absolute;inset:0}.dal-place__canvas canvas{cursor:grab;display:block;width:100%!important;height:100%!important}.dal-place__canvas canvas:active{cursor:grabbing}.dal-place__crosshair{z-index:2;pointer-events:none;background:#11110f17;position:absolute}.dal-place__crosshair--x{width:100%;height:1px;top:50%;left:0}.dal-place__crosshair--y{width:1px;height:100%;top:0;left:50%}.dal-place__visual-label{z-index:4;pointer-events:none;position:absolute;top:18px;left:18px}.dal-place__visual-label span{font-family:var(--mono);letter-spacing:.1em;margin-bottom:5px;font-size:6px;display:block}.dal-place__visual-label strong{font-family:var(--display);letter-spacing:-.035em;font-size:22px;font-weight:500}.dal-place__coordinate{z-index:4;font-family:var(--mono);letter-spacing:.1em;align-items:center;gap:7px;font-size:6px;display:flex;position:absolute;bottom:18px;right:18px}.dal-place__coordinate-dot{background:#c9a227;border-radius:50%;width:7px;height:7px}.dal-place__footer{grid-template-columns:1fr 1fr;gap:24px;padding:20px 2px 2px;display:grid}.dal-place__footer span{font-family:var(--mono);letter-spacing:.09em;font-size:7px}.dal-place__footer p{max-width:390px;font-family:var(--sans);margin:0 0 0 auto;font-size:12px;line-height:1.45}@media (max-width:760px){.dal-place{border-radius:20px;margin:8px 0;padding:14px}.dal-place__meta{padding-bottom:13px}.dal-place__meta span:last-child{display:none}.dal-place__copy{padding:26px 2px 20px;display:block}.dal-place__copy h2{max-width:7ch;font-size:clamp(52px,16vw,74px);line-height:.82}.dal-place__details{margin-top:28px}.dal-place__details p{padding:6px 0}.dal-place__visual{background-size:38px 38px;height:410px}.dal-place__visual-label{top:12px;left:12px}.dal-place__visual-label strong{font-size:18px}.dal-place__coordinate{bottom:12px;right:12px}.dal-place__footer{padding-top:15px;display:block}.dal-place__footer p{max-width:31ch;margin:15px 0 0}}@media (max-width:390px){.dal-place__visual{height:350px}.dal-place__copy h2{font-size:clamp(48px,15.5vw,62px)}}@media (prefers-reduced-motion:reduce){.dal-place__canvas canvas{cursor:default}}.research-page{background:var(--canvas);color:#11110f;min-height:100vh;padding:10px clamp(1.25rem,4vw,4.5rem) 6rem}.research-hero{max-width:1600px;margin:20px auto clamp(4rem,8vw,7rem)}.research-kicker{letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid #11110f4d;justify-content:space-between;gap:2rem;padding-bottom:.75rem;font-size:.7rem;line-height:1;display:flex}.research-hero-grid{grid-template-columns:minmax(0,1.65fr) minmax(260px,.5fr);align-items:end;gap:clamp(2rem,7vw,9rem);padding-top:clamp(2rem,4vw,4rem);display:grid}.research-hero h1{letter-spacing:-.055em;margin:0;padding-top:6px;font-size:clamp(4.25rem,10.2vw,10.5rem);font-weight:500;line-height:.9}.research-hero-copy{max-width:28rem;padding-bottom:.8rem}.research-hero-copy p{margin:0;font-size:clamp(1rem,1.35vw,1.35rem);line-height:1.35}.research-hero-copy .research-hero-secondary{opacity:.62;margin-top:2rem;font-size:.8rem;line-height:1.55}.research-index{max-width:1600px;margin:0 auto}.research-group+.research-group{margin-top:clamp(6rem,11vw,10rem)}.research-group-header{letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid #11110f52;justify-content:space-between;gap:1rem;padding-bottom:.7rem;font-size:.68rem;display:flex}.research-list{border-bottom:1px solid #11110f47}.research-row{color:inherit;border-top:1px solid #11110f2e;grid-template-columns:4.5rem minmax(0,1fr) 2rem;align-items:start;gap:clamp(1rem,3vw,3rem);padding:clamp(1.8rem,3vw,3rem) 0;text-decoration:none;transition:padding-left .22s,opacity .22s;display:grid}.research-row:first-child{border-top:0}.research-row:hover{padding-left:.8rem}.research-row-number{letter-spacing:.09em;opacity:.45;padding-top:.32rem;font-size:.67rem}.research-row-main{max-width:70rem}.research-row-meta{letter-spacing:.12em;text-transform:uppercase;opacity:.55;margin-bottom:.8rem;font-size:.64rem;line-height:1.4}.research-row-title{letter-spacing:-.055em;max-width:14ch;margin:0;font-size:clamp(2.25rem,5.3vw,6.2rem);font-weight:500;line-height:.92}.research-row-summary{opacity:.64;max-width:47rem;margin:1.3rem 0 0;font-size:clamp(.9rem,1.1vw,1.05rem);line-height:1.55}.research-row-action{justify-self:end;font-size:1.15rem;transition:transform .22s}.research-row:hover .research-row-action{transform:translate(4px,-4px)}.research-row-featured{padding-top:clamp(2.8rem,5vw,5rem);padding-bottom:clamp(2.8rem,5vw,5rem)}.research-row-featured .research-row-title{max-width:12ch;font-size:clamp(3rem,7.5vw,8.5rem)}@media (max-width:760px){.research-page{padding:6.5rem 1.1rem 4rem}.research-hero{margin-bottom:6rem}.research-hero-grid{grid-template-columns:1fr;gap:2.8rem}.research-hero h1{font-size:clamp(3.7rem,18vw,7rem);line-height:.86}.research-hero-copy{max-width:24rem}.research-row{grid-template-columns:2rem minmax(0,1fr) 1.5rem;gap:.8rem}.research-row:hover{padding-left:0}.research-row-title,.research-row-featured .research-row-title{font-size:clamp(2.5rem,12vw,4.8rem)}.research-row-summary{font-size:.86rem}}.project-page{background:var(--canvas);color:#11110f;min-height:100vh;padding:10px clamp(1.25rem,4vw,4.5rem) 7rem}.project-hero{max-width:1600px;margin:20px auto clamp(4rem,8vw,7rem)}.project-hero-meta{letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid #11110f4d;justify-content:space-between;gap:2rem;padding-bottom:.75rem;font-size:.68rem;display:flex}.project-hero-grid{grid-template-columns:minmax(0,1.6fr) minmax(260px,.55fr);align-items:end;gap:clamp(3rem,8vw,10rem);padding-top:clamp(2rem,5vw,5rem);display:grid}.project-categories{letter-spacing:.12em;text-transform:uppercase;opacity:.56;margin:0 0 1.2rem;font-size:.67rem}.project-hero h1{letter-spacing:-.065em;max-width:13ch;margin:0;font-size:clamp(4rem,9vw,10rem);font-weight:500;line-height:.87}.project-summary{max-width:30rem;margin:0 0 .5rem;font-size:clamp(1.05rem,1.5vw,1.5rem);line-height:1.4}.project-body{max-width:1600px;margin:0 auto}.project-section{border-top:1px solid #11110f40;grid-template-columns:minmax(10rem,.35fr) minmax(0,1fr);gap:clamp(2rem,7vw,8rem);padding:clamp(3rem,6vw,6rem) 0;display:grid}.project-section-label{letter-spacing:.12em;text-transform:uppercase;opacity:.54;font-size:.67rem}.project-copy{max-width:62rem}.project-copy p{letter-spacing:-.035em;margin:0;font-size:clamp(1.55rem,3.2vw,3.4rem);line-height:1.12}.paper-list{border-bottom:1px solid #11110f33}.paper-row{border-top:1px solid #11110f29;grid-template-columns:3rem minmax(0,1fr);gap:1rem;padding:1.6rem 0;display:grid}.paper-row:first-child{border-top:0}.paper-row>span{opacity:.4;font-size:.65rem}.paper-row h3{margin:0;font-size:clamp(1.25rem,2vw,2.2rem);font-weight:500;line-height:1.08}.paper-row p{opacity:.55;margin:.6rem 0 0;font-size:.78rem}.related-projects{display:grid}.related-project{color:inherit;border-top:1px solid #11110f2e;grid-template-columns:minmax(9rem,.25fr) minmax(0,1fr) 2rem;align-items:center;gap:1.5rem;padding:1.8rem 0;text-decoration:none;display:grid}.related-project:first-child{border-top:0}.related-project>span:first-child{letter-spacing:.1em;text-transform:uppercase;opacity:.5;font-size:.64rem}.related-project h3{letter-spacing:-.045em;margin:0;font-size:clamp(1.8rem,4vw,4.5rem);font-weight:500;line-height:.94}.related-project>span:last-child{justify-self:end}@media (max-width:760px){.project-page{padding:6.5rem 1.1rem 4rem}.project-hero{margin-bottom:6rem}.project-hero-grid,.project-section{grid-template-columns:1fr}.project-hero-grid{gap:2.8rem}.project-hero h1{font-size:clamp(3.5rem,17vw,7rem)}.project-section{gap:1.8rem}.project-copy p{font-size:clamp(1.55rem,7vw,2.7rem)}.related-project{grid-template-columns:1fr 1.5rem}.related-project>span:first-child{grid-column:1/-1}}@media (min-width:761px){.project-grid{scrollbar-width:thin;scroll-snap-type:x mandatory;flex-wrap:nowrap!important;gap:16px!important;padding-bottom:24px!important;display:flex!important;overflow:auto hidden!important}.project-grid::-webkit-scrollbar{height:8px}.project-grid::-webkit-scrollbar-track{background:0 0}.project-grid::-webkit-scrollbar-thumb{background-color:#c9c9c2;border-radius:20px}.project-card{scroll-snap-align:start;flex:0 0 min(42vw,480px)!important;width:min(42vw,480px)!important}.project-card--large{flex:0 0 min(68vw,820px)!important;width:min(68vw,820px)!important}}.people-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;width:100%!important;display:grid!important}@media (max-width:1024px){.people-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media (max-width:640px){.people-grid{grid-template-columns:1fr!important}}.person-card{border:1px solid var(--line);background:var(--panel);border-radius:16px;flex-direction:column;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;position:relative;overflow:hidden}.person-card:hover{border-color:#c9c9c2;transform:translateY(-3px);box-shadow:0 10px 20px #11110f0a}.person-image-container{border-bottom:1px solid var(--line);width:100%;height:165px;min-height:165px;position:relative;overflow:hidden}@media (max-width:640px){.person-image-container{height:145px;min-height:145px}}.person-image{object-fit:cover;transition:transform .5s}.person-card:hover .person-image{transform:scale(1.04)}.person-placeholder{place-items:center;width:100%;height:100%;display:grid}.person-placeholder span{font-family:var(--display);letter-spacing:.08em;color:#11110f73;font-size:2.2rem}.person-info{background:var(--panel);flex-direction:column;flex:1;padding:14px 16px 16px;transition:background-color .25s;display:flex}.person-card:hover .person-info{background:#f7f6f0}.person-role{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#71716b;font-size:.62rem}.person-degree{font-family:var(--mono);color:#8c8b84;font-size:.62rem}.person-name{letter-spacing:-.015em;color:var(--ink);margin:0 0 6px;font-size:1.15rem;font-weight:500;line-height:1.25}.person-topics{flex-wrap:wrap;gap:5px;margin-top:auto;padding-top:6px;display:flex}.topic-pill{border:1px solid var(--line);color:#555;border-radius:999px;padding:2px 7px;font-size:.6rem}@supports (animation-timeline:view()){.person-card{animation-name:brooks-card-reveal;animation-duration:1ms;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:both;animation-timeline:view();animation-range:entry 5% cover 22%}}.supervision-browser{flex-direction:column;gap:2rem;width:100%;display:flex}.supervision-controls{border-bottom:1px solid #11110f26;flex-direction:column;gap:1.5rem;padding-bottom:1.5rem;display:flex}.supervision-tabs{flex-wrap:wrap;gap:8px;display:flex}.supervision-tab-btn{border:1px solid var(--line);background:var(--panel);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:8px 18px;font-size:.72rem;transition:all .2s;display:inline-flex}.supervision-tab-btn span{background:#11110f14;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:.65rem;font-weight:600;display:inline-flex}.supervision-tab-btn.active{background:var(--ink);color:#fff;border-color:var(--ink)}.supervision-tab-btn.active span{color:#fff;background:#ffffff38}.supervision-topic-filter{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.topic-filter-label{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;opacity:.5;font-size:.68rem}.topic-filter-pill{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:0 0;border-radius:999px;padding:4px 12px;font-size:.7rem;transition:all .18s}.topic-filter-pill:hover{border-color:var(--ink)}.topic-filter-pill.active{background:var(--ink);color:#fff;border-color:var(--ink)}.person-status-badge{color:#fff;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#11110fd1;border-radius:999px;padding:3px 8px;font-size:.58rem;position:absolute;top:12px;right:12px}.person-meta-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.person-degree{font-family:var(--mono);color:#66655f;letter-spacing:.04em;font-size:.62rem}.person-notable{border-left:2px solid var(--ink);color:var(--ink);background:#11110f0a;border-radius:8px;align-items:flex-start;gap:6px;margin:0 0 12px;padding:8px 10px;font-size:.75rem;line-height:1.35;display:flex}.person-notable-icon{color:#b38600;font-size:.8rem;line-height:1}.person-thesis{color:#55544e;margin:0 0 12px;font-size:.75rem;line-height:1.4}.person-bio{opacity:.75;margin:0 0 12px;font-size:.78rem;line-height:1.45}.student-works-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;width:100%;display:grid}.student-work-card{border:1px solid var(--line);background:var(--panel);border-radius:20px;flex-direction:column;transition:transform .3s,box-shadow .3s;display:flex;overflow:hidden}.student-work-card:hover{transform:translateY(-4px);box-shadow:0 14px 28px #11110f0f}.student-work-image{aspect-ratio:16/9;background:var(--soft);width:100%;position:relative;overflow:hidden}.student-work-image img{object-fit:cover;transition:transform .6s cubic-bezier(.16,1,.3,1)}.student-work-card:hover .student-work-image img{transform:scale(1.04)}.student-work-info{flex-direction:column;flex:1;padding:20px;display:flex}.student-work-course{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;opacity:.55;margin-bottom:6px;font-size:.65rem}.student-work-title{margin:0 0 8px;font-size:1.3rem;font-weight:500;line-height:1.15}.student-work-desc{opacity:.7;margin:0;font-size:.78rem;line-height:1.45}.empty-topic-state{text-align:center;border:1px dashed var(--line);color:#777670;border-radius:20px;padding:4rem 2rem}.reset-filter-btn{background:var(--ink);color:#fff;cursor:pointer;border:none;border-radius:999px;margin-top:1rem;padding:8px 18px;font-size:.75rem}.back-link{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);opacity:.7;align-items:center;font-size:.75rem;text-decoration:none;transition:opacity .2s;display:inline-flex}.back-link:hover{opacity:1}.prospective-callout{border:1px solid var(--line);background:var(--panel);border-radius:20px;padding:2.2rem 2.4rem;position:relative;overflow:hidden}.prospective-callout__label{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#71716b;margin-bottom:.8rem;font-size:.65rem}.prospective-callout__title{letter-spacing:-.03em;margin:0 0 1rem;font-size:clamp(1.4rem,2.2vw,2.1rem);font-weight:500;line-height:1.15}.prospective-callout__body{color:#44433e;max-width:65ch;margin:0;font-size:.92rem;line-height:1.6}.supervision-controls-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.supervision-view-toggle{border:1px solid var(--line);background:#11110f0f;border-radius:999px;padding:3px;display:flex}.view-toggle-btn{font-family:var(--mono);text-transform:uppercase;letter-spacing:.05em;color:#66655f;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:5px 14px;font-size:.65rem;transition:all .18s}.view-toggle-btn.active{background:var(--panel);color:var(--ink);font-weight:600;box-shadow:0 2px 6px #11110f14}.supervision-filter-panel{flex-direction:column;gap:14px;display:flex}.supervision-search-box{width:100%;max-width:480px;position:relative}.supervision-search-input{border:1px solid var(--line);background:var(--panel);width:100%;color:var(--ink);border-radius:999px;outline:none;padding:10px 36px 10px 16px;font-size:.8rem;transition:border-color .2s}.supervision-search-input:focus{border-color:var(--ink)}.person-status-badge.alumni{color:var(--ink);background:#11110f1a;border:1px solid #11110f26}.person-topic-box{margin:0 0 12px}.person-topic-label{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#888780;margin-bottom:2px;font-size:.58rem;display:block}.person-topic-text{color:var(--ink);margin:0;font-size:.82rem;font-weight:450;line-height:1.35}.thesis-link{color:#1a4f8a;text-underline-offset:3px;margin:0 0 12px;font-size:.72rem;font-weight:500;text-decoration:underline;transition:opacity .15s;display:inline-block}.thesis-link:hover{opacity:.75}.people-archive-list{border:1px solid var(--line);background:var(--panel);border-radius:20px;flex-direction:column;width:100%;display:flex;overflow:hidden}.archive-list-header{border-bottom:1px solid var(--line);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#71716b;background:#11110f08;grid-template-columns:240px 1fr 180px;gap:20px;padding:14px 22px;font-size:.65rem;display:grid}.archive-list-row{border-bottom:1px solid #11110f14;grid-template-columns:240px 1fr 180px;align-items:center;gap:20px;padding:16px 22px;transition:background-color .15s;display:grid}.archive-list-row:last-child{border-bottom:none}.archive-list-row:hover{background:#f7f5ed}.archive-col-name{flex-direction:column;gap:3px;display:flex}.archive-col-name strong{font-size:.95rem;font-weight:500}.archive-role{color:#66655f;font-size:.7rem}.archive-badge-active{color:#fff;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;background:#11110fd9;border-radius:999px;align-self:flex-start;margin-top:4px;padding:2px 7px;font-size:.55rem;display:inline-block}.archive-col-topic p{color:var(--ink);margin:0;font-size:.85rem;line-height:1.35}.archive-notable-tag{color:#8c6800;margin-top:4px;font-size:.72rem;display:inline-block}.archive-thesis-link{color:#1a4f8a;text-underline-offset:3px;margin-top:4px;font-size:.72rem;text-decoration:underline;display:block}.archive-col-meta{flex-wrap:wrap;gap:6px;display:flex}.archive-topic-tag{border:1px solid var(--line);color:#555;border-radius:999px;padding:3px 8px;font-size:.65rem}@media (max-width:860px){.archive-list-header{display:none}.archive-list-row{grid-template-columns:1fr;align-items:flex-start;gap:8px}}.supervision-nav-tabs{border-bottom:1px solid #11110f1f;flex-wrap:wrap;gap:10px;padding-bottom:1.2rem;display:flex}.supervision-nav-btn{border:1px solid var(--line);background:var(--panel);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:10px;padding:10px 22px;font-size:.72rem;transition:all .2s;display:inline-flex}.supervision-nav-btn span{background:#11110f14;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 6px;font-size:.65rem;font-weight:600;display:inline-flex}.supervision-nav-btn.active{background:var(--ink);color:#fff;border-color:var(--ink)}.supervision-nav-btn.active span{color:#fff;background:#ffffff38}.section-subhead{border-bottom:1px solid #11110f1a;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin:1.5rem 0 1.2rem;padding-bottom:.8rem;display:flex}.subhead-eyebrow{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#71716b;margin-bottom:4px;font-size:.62rem;display:block}.section-subhead h4{letter-spacing:-.02em;margin:0;font-size:clamp(1.15rem,1.6vw,1.45rem);font-weight:500}.subhead-count{font-family:var(--mono);letter-spacing:.06em;color:#66655f;font-size:.68rem}.team-footer-prompt{border:1px dashed var(--line);color:#55544e;background:#11110f05;border-radius:16px;align-items:center;gap:12px;margin-top:2rem;padding:1.2rem 1.6rem;font-size:.82rem;display:flex}.link-btn{font-family:var(--mono);letter-spacing:.04em;color:var(--ink);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;padding:0;font-size:.75rem;font-weight:600;text-decoration:underline}.link-btn:hover{opacity:.7}.alumni-directory-box{border:1px solid var(--line);background:var(--panel);border-radius:20px;margin-top:3rem;overflow:hidden}.alumni-directory-banner{background:#11110f05;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:1.8rem 2.2rem;display:flex}.alumni-directory-banner h4{margin:0 0 6px;font-size:1.25rem;font-weight:500}.alumni-directory-banner p{color:#66655f;margin:0;font-size:.82rem}.toggle-directory-btn{border:1px solid var(--ink);background:var(--ink);color:#fff;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;white-space:nowrap;border-radius:999px;padding:10px 22px;font-size:.72rem;transition:all .18s}.toggle-directory-btn:hover{background:#2a2a26}.directory-expanded-content{border-top:1px solid var(--line);flex-direction:column;gap:1.5rem;padding:1.8rem 2.2rem 2.2rem;display:flex}.directory-filter-bar{flex-direction:column;gap:12px;display:flex}.load-more-container{justify-content:center;margin-top:1.5rem;display:flex}.load-more-btn{border:1px solid var(--line);background:var(--panel);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);cursor:pointer;border-radius:999px;padding:10px 26px;font-size:.72rem;transition:all .18s}.load-more-btn:hover{border-color:var(--ink);background:#f7f5ed}.people-archive-table-scroll{border:1px solid var(--line);background:var(--panel);scrollbar-width:thin;border-radius:20px;max-height:480px;overflow-y:auto}.people-archive-table-scroll .people-archive-list{border:none;border-radius:0}.people-archive-table-scroll .archive-list-header{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#eae8df;position:sticky;top:0}.people-archive-table-scroll::-webkit-scrollbar{width:6px}.people-archive-table-scroll::-webkit-scrollbar-thumb{background-color:var(--line,#c9c9c2);border-radius:10px}.directory-count-indicator{font-family:var(--mono);letter-spacing:.06em;color:#71716b;text-transform:uppercase;align-self:center;margin-right:15px;font-size:.68rem}.load-more-container{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:.5rem;display:flex}.load-more-btn.secondary{color:#66655f;background:0 0}.load-more-btn.secondary:hover{color:var(--ink);background:#11110f0d}.supervision-section{z-index:2!important;width:min(100% - 36px,1680px)!important;margin:30px auto 0!important;padding:60px 0 100px!important;display:block!important;position:relative!important}.supervision-header-cohesive{border-bottom:1px solid #11110f26!important;flex-wrap:wrap!important;justify-content:space-between!important;align-items:flex-end!important;gap:32px!important;margin-bottom:2.5rem!important;padding:0 12px 36px!important;display:flex!important}.supervision-header-cohesive h2{font-family:var(--display)!important;letter-spacing:-.05em!important;color:var(--ink)!important;margin:.4rem 0 0!important;font-size:clamp(2.8rem,5vw,5rem)!important;font-weight:500!important;line-height:.95!important}.supervision-header-meta{flex-direction:column!important;align-items:flex-start!important;gap:12px!important;max-width:440px!important;display:flex!important}.supervision-header-meta p{color:#55544e!important;margin:0!important;font-size:.9rem!important;line-height:1.55!important}.supervision-portal-link{font-family:var(--mono)!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:var(--ink)!important;text-underline-offset:4px!important;font-size:.72rem!important;font-weight:500!important;text-decoration:underline!important;transition:opacity .18s!important}.supervision-portal-link:hover{opacity:.65!important}.about-narrative-grid{grid-template-columns:340px 1fr;align-items:start;gap:48px;display:grid}.about-portrait-card{border:1px solid var(--line);background:var(--panel);border-radius:20px;position:sticky;top:24px;overflow:hidden}.about-portrait-frame{aspect-ratio:4/4.8;background:#11110f;width:100%;position:relative}.about-portrait-meta{padding:24px}.about-portrait-meta h3{font-family:var(--display);letter-spacing:-.03em;color:var(--ink);margin:0 0 4px;font-size:1.5rem}.about-portrait-meta p{color:var(--ink);margin:0 0 8px;font-size:.95rem;font-weight:500}.about-portrait-meta span{color:var(--muted);font-size:.82rem;display:block}.about-story-col{flex-direction:column;gap:32px;display:flex}.about-story-text{color:#2b2b27;font-size:1.05rem;line-height:1.75}.about-story-text p{margin:0 0 1.5rem}.about-personal-banner{border:1px solid var(--line);background:var(--panel);border-radius:20px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:32px;display:flex}.about-personal-banner h4{font-family:var(--display);letter-spacing:-.02em;margin:4px 0 8px;font-size:1.4rem}.about-personal-banner p{color:#555;margin:0;font-size:.95rem;font-style:italic}.art-gallery-trigger-btn{background:var(--ink);color:#fff;cursor:pointer;text-align:left;border:none;border-radius:12px;flex-direction:column;gap:4px;padding:14px 22px;transition:transform .15s,opacity .15s;display:inline-flex}.art-gallery-trigger-btn span{font-family:var(--mono);letter-spacing:.08em;color:#a8a89f;text-transform:uppercase;font-size:.68rem}.art-gallery-trigger-btn strong{font-size:.92rem;font-weight:600}.art-gallery-trigger-btn:hover{opacity:.9;transform:translateY(-1px)}.art-modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#11110fd1;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.art-modal-container{background:var(--canvas);border:1px solid var(--line);border-radius:24px;flex-direction:column;width:min(100%,1060px);max-height:90vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #0006}.art-modal-header{border-bottom:1px solid var(--line);background:var(--panel);justify-content:space-between;align-items:flex-start;padding:24px 32px;display:flex}.art-modal-header h3{font-family:var(--display);margin:4px 0;font-size:1.5rem}.art-modal-header p{color:var(--muted);margin:0;font-size:.85rem;font-style:italic}.art-modal-close-btn{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;transition:background .15s;display:flex}.art-modal-close-btn:hover{background:#00000014}.art-modal-body{flex:1;grid-template-columns:1fr 280px;gap:28px;padding:28px 32px;display:grid;overflow-y:auto}.art-modal-featured{flex-direction:column;gap:16px;display:flex}.art-modal-canvas-frame{background:#11110f;border-radius:16px;width:100%;height:420px;position:relative;overflow:hidden}.art-modal-meta h4{font-family:var(--display);margin:0 0 6px;font-size:1.35rem}.art-medium-tag{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;font-size:.72rem;display:inline-block}.art-modal-meta p{color:#444;margin:0;font-size:.92rem;line-height:1.6}.art-modal-thumbs{flex-direction:column;gap:12px;display:flex}.thumbs-label{font-family:var(--mono);letter-spacing:.08em;color:var(--muted);font-size:.68rem}.art-thumb-card{background:var(--panel);border:1px solid var(--line);cursor:pointer;text-align:left;border-radius:12px;align-items:center;gap:12px;padding:10px;transition:border-color .15s,background .15s;display:flex}.art-thumb-card.active{border-color:var(--ink);background:#fff}.thumb-preview{background:#222;border-radius:8px;flex-shrink:0;width:54px;height:54px;position:relative;overflow:hidden}.thumb-info strong{color:var(--ink);font-size:.85rem;display:block}.thumb-info small{color:var(--muted);font-size:.75rem;display:block}.art-modal-footer{border-top:1px solid var(--line);background:var(--panel);color:var(--muted);justify-content:space-between;align-items:center;padding:18px 32px;font-size:.8rem;display:flex}.art-modal-done-btn{background:var(--ink);color:#fff;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border:none;border-radius:8px;padding:8px 18px;font-size:.75rem}.education-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.education-card{border:1px solid var(--line);background:var(--panel);border-radius:18px;flex-direction:column;padding:28px;display:flex}.education-year{font-family:var(--mono);letter-spacing:.06em;color:var(--muted);margin-bottom:12px;font-size:.85rem;font-weight:600}.education-degree{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);margin-bottom:4px;font-size:1.25rem;font-weight:600;display:block}.education-school{color:var(--ink);margin:0 0 6px;font-size:.98rem;font-weight:500}.education-loc{color:var(--muted);margin-bottom:14px;font-size:.82rem;display:block}.education-topic{border-top:1px solid var(--line);color:#444;margin:auto 0 0;padding-top:12px;font-size:.85rem;line-height:1.55}.publications-browser .pub-results-count{font-family:var(--mono);color:var(--muted);margin-bottom:20px;font-size:.75rem}.publications-browser .pub-card-top{justify-content:flex-start;align-items:baseline;gap:12px;margin-bottom:0}.publications-browser .pub-card-copy{gap:10px;display:grid}.publications-browser .pub-card-action-btn{min-height:44px;padding:8px 14px;font-size:.74rem}.publications-browser :is(button,a,select,input):focus-visible{outline:2px solid var(--ink);outline-offset:3px}@media (max-width:600px){.publications-browser :is(.pub-card,.pub-controls-panel){padding:20px}}@media (prefers-reduced-motion:reduce){.publications-browser .pub-card{transition:none;transform:none}}.pub-controls-panel{border:1px solid var(--line);background:var(--panel);border-radius:20px;margin-bottom:2.5rem;padding:24px 28px}.pub-search-wrapper{width:100%;position:relative}.pub-search-input{background:var(--canvas);border:1px solid var(--line);width:100%;color:var(--ink);border-radius:12px;outline:none;padding:14px 20px;font-size:.95rem;transition:border-color .15s}.pub-search-input:focus{border-color:var(--ink)}.search-clear-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;font-size:.9rem;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.pub-filters-row{flex-wrap:wrap;align-items:center;gap:20px;margin-top:18px;display:flex}.pub-filter-group{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pub-filter-label{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.72rem}.topic-filter-scroll{flex-wrap:wrap;gap:8px;display:flex}.topic-filter-pill{font-family:var(--mono);letter-spacing:.04em;border:1px solid var(--line);background:var(--canvas);color:#444;cursor:pointer;border-radius:999px;padding:6px 12px;font-size:.72rem;transition:all .15s}.topic-filter-pill.active,.topic-filter-pill:hover{background:var(--ink);color:#fff;border-color:var(--ink)}.pub-card{border:1px solid var(--line);background:var(--panel);border-radius:18px;flex-direction:column;gap:12px;margin-bottom:16px;padding:24px 28px;transition:transform .15s,box-shadow .15s;display:flex}.pub-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00000008}.pub-card-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.pub-year-badge{font-family:var(--mono);color:var(--muted);font-size:.8rem;font-weight:600}.pub-type-badge{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:#444;background:#0000000f;border-radius:4px;padding:3px 8px;font-size:.68rem}.pub-title{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);margin:0;font-size:1.35rem;font-weight:600;line-height:1.35}.pub-authors{color:#444;margin:0;font-size:.92rem}.pub-venue{color:var(--muted);margin:0;font-size:.9rem;font-style:italic}.pub-topics-row{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.pub-tag{font-family:var(--mono);background:var(--canvas);color:#555;border:1px solid var(--line);border-radius:4px;padding:2px 8px;font-size:.68rem}.pub-card-bottom{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:4px;padding-top:12px;display:flex}.pub-doi-link{font-family:var(--mono);color:var(--ink);text-underline-offset:3px;font-size:.74rem;text-decoration:underline}.bibtex-btn{font-family:var(--mono);letter-spacing:.04em;border:1px solid var(--line);background:var(--canvas);cursor:pointer;border-radius:6px;padding:6px 14px;font-size:.72rem;transition:all .15s}.bibtex-btn:hover{background:var(--ink);color:#fff;border-color:var(--ink)}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;display:grid}.course-card{border:1px solid var(--line);background:var(--panel);border-radius:20px;flex-direction:column;padding:32px;display:flex}.course-card-top{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.course-code-badge{font-family:var(--mono);letter-spacing:.06em;background:var(--ink);color:var(--canvas);border-radius:6px;padding:4px 10px;font-size:.82rem;font-weight:700}.course-term-badge{font-family:var(--mono);color:var(--muted);font-size:.75rem}.course-level-tag{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:4px;font-size:.72rem;display:block}.course-title{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);margin:0 0 10px;font-size:1.45rem;font-weight:600}.course-desc{color:#383834;margin:0 0 16px;font-size:.95rem;line-height:1.65}.course-prereq{background:var(--canvas);color:#444;border:1px solid var(--line);border-radius:8px;margin:auto 0 14px;padding:10px 14px;font-size:.82rem}.course-topics-list{flex-wrap:wrap;gap:6px;margin-bottom:20px;display:flex}.course-topic-pill{font-family:var(--mono);color:#333;background:#0000000d;border-radius:4px;padding:3px 8px;font-size:.68rem}.course-card-footer{border-top:1px solid var(--line);padding-top:14px}.course-link-btn{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);text-underline-offset:4px;font-size:.76rem;font-weight:600;text-decoration:underline;transition:opacity .15s}.course-link-btn:hover{opacity:.7}.course-link-inactive{font-family:var(--mono);color:var(--muted);font-size:.76rem}.section-intro-text{color:#444;max-width:860px;margin:0 0 2rem;font-size:1.05rem;line-height:1.7}.game-showcase-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;display:grid}.game-card{border:1px solid var(--line);background:var(--panel);border-radius:20px;flex-direction:column;transition:transform .15s,box-shadow .15s;display:flex;overflow:hidden}.game-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #0000000d}.game-card-media{aspect-ratio:16/9;background:#11110f;width:100%;position:relative}.game-course-badge{font-family:var(--mono);letter-spacing:.06em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;background:#11110fd9;border-radius:6px;padding:4px 8px;font-size:.65rem;position:absolute;top:12px;right:12px}.game-card-content{flex-direction:column;flex:1;padding:22px;display:flex}.game-card-title{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);margin:0 0 6px;font-size:1.3rem}.game-card-desc{color:#444;margin:0;font-size:.88rem;line-height:1.55}.teaching-philosophy-banner{border:1px solid var(--line);background:var(--panel);border-radius:22px;grid-template-columns:1.4fr 1fr;align-items:center;gap:40px;padding:40px;display:grid}.philosophy-content h3{font-family:var(--display);letter-spacing:-.03em;color:var(--ink);margin:4px 0 14px;font-size:1.65rem}.philosophy-quote{font-family:var(--display);color:#2b2b27;margin:0;font-size:1.12rem;font-style:italic;line-height:1.7}.philosophy-action-box{background:var(--canvas);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:12px;padding:28px;display:flex}.philosophy-action-box h4{color:var(--ink);margin:0;font-size:1.05rem;font-weight:600}.philosophy-action-box p{color:#444;margin:0;font-size:.88rem;line-height:1.55}.philosophy-inquiry-btn{background:var(--ink);color:#fff;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;text-align:center;border-radius:8px;margin-top:6px;padding:12px 18px;font-size:.74rem;font-weight:600;transition:opacity .15s;display:inline-block}.philosophy-inquiry-btn:hover{opacity:.85}.funding-metrics-panel{background:var(--panel);border:1px solid var(--line);border-radius:20px;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;padding:28px 32px;display:grid}.funding-metric-cell{flex-direction:column;gap:4px;display:flex}.metric-val{font-family:var(--display);letter-spacing:-.04em;color:var(--ink);font-size:2.75rem;font-weight:600;line-height:1}.metric-lbl{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin-top:4px;font-size:.74rem;font-weight:600}.metric-sub{color:var(--muted);font-size:.82rem}.grant-flagship-card{border:2px solid var(--ink);background:var(--panel);border-radius:22px;padding:36px 40px;box-shadow:0 10px 30px #0000000a}.flagship-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.flagship-badge-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.agency-badge{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);background:#0000000f;border-radius:6px;padding:4px 10px;font-size:.72rem;font-weight:700}.agency-cfref{background:var(--ink);color:#fff}.program-badge{font-family:var(--mono);color:var(--muted);font-size:.72rem}.amount-badge{font-family:var(--mono);letter-spacing:.06em;color:#1b6326;background:#eef7ee;border:1px solid #c8e6c9;border-radius:6px;padding:4px 10px;font-size:.72rem;font-weight:700}.grant-duration{font-family:var(--mono);color:var(--muted);font-size:.8rem;font-weight:600}.flagship-title{font-family:var(--display);letter-spacing:-.03em;color:var(--ink);margin:0 0 12px;font-size:1.85rem;line-height:1.25}.flagship-desc{color:#333;margin:0 0 24px;font-size:1.05rem;line-height:1.7}.flagship-meta-grid{border-top:1px solid var(--line);color:#444;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding-top:20px;font-size:.88rem;display:grid}.flagship-meta-grid strong{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:4px;font-size:.7rem;display:block}.grant-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.grant-card{border:1px solid var(--line);background:var(--panel);border-radius:20px;flex-direction:column;padding:30px;display:flex}.grant-card-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.grant-period{font-family:var(--mono);color:var(--muted);font-size:.78rem}.grant-program-label{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:4px;font-size:.7rem;display:block}.grant-title{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);margin:0 0 10px;font-size:1.35rem;font-weight:600}.grant-desc{color:#444;margin:0 0 16px;font-size:.92rem;line-height:1.6}.grant-card-footer{border-top:1px solid var(--line);margin-top:auto;padding-top:12px}.grant-role-badge{font-family:var(--mono);color:var(--ink);font-size:.72rem;font-weight:600}.student-funding-banner{border:1px solid var(--line);background:var(--panel);border-radius:22px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:32px;padding:36px 40px;display:flex}.student-funding-banner h4{font-family:var(--display);color:var(--ink);margin:4px 0 8px;font-size:1.5rem}.student-funding-banner p{color:#444;max-width:720px;margin:0;font-size:.95rem;line-height:1.6}.funding-inquiry-btn{background:var(--ink);color:#fff;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;border-radius:10px;padding:14px 24px;font-size:.76rem;font-weight:600;transition:opacity .15s;display:inline-block}.funding-inquiry-btn:hover{opacity:.85}.contact-overview-grid{grid-template-columns:1fr 1.35fr;align-items:start;gap:36px;display:grid}.contact-details-card,.supervision-inquiry-card{border:1px solid var(--line);background:var(--panel);border-radius:22px;padding:36px}.contact-actions-row{flex-direction:column;gap:14px;margin-bottom:2rem;display:flex}.contact-action-item{gap:10px;display:flex}.contact-primary-btn{background:var(--ink);color:#fff;border-radius:12px;flex-direction:column;flex:1;gap:2px;padding:14px 18px;text-decoration:none;transition:opacity .15s;display:flex}.contact-primary-btn span{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#a8a89f;font-size:.65rem}.contact-primary-btn strong{font-size:.95rem;font-weight:600}.contact-primary-btn:hover{opacity:.88}.contact-secondary-btn{background:var(--canvas);border:1px solid var(--line);color:var(--ink);border-radius:12px;flex-direction:column;flex:1;gap:2px;padding:14px 18px;text-decoration:none;transition:background .15s;display:flex}.contact-secondary-btn span{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.65rem}.contact-secondary-btn strong{font-size:.95rem;font-weight:600}.contact-secondary-btn:hover{background:#fff}.contact-copy-btn{font-family:var(--mono);letter-spacing:.04em;border:1px solid var(--line);background:var(--canvas);color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:12px;padding:0 16px;font-size:.72rem;transition:all .15s}.contact-copy-btn:hover{background:var(--ink);color:#fff;border-color:var(--ink)}.contact-meta-list{flex-direction:column;gap:16px;display:flex}.contact-meta-row{border-bottom:1px solid var(--line);grid-template-columns:140px 1fr;gap:14px;padding-bottom:14px;display:grid}.contact-meta-label{font-family:var(--mono);letter-spacing:.06em;color:var(--muted);font-size:.74rem}.contact-meta-val{color:#2b2b27;margin:0;font-size:.92rem;line-height:1.55}.contact-external-link{font-family:var(--mono);color:var(--ink);text-underline-offset:3px;font-size:.76rem;text-decoration:underline}.inquiry-quote-box{background:var(--canvas);border-left:3px solid var(--ink);border-radius:0 12px 12px 0;margin-bottom:2rem;padding:18px 22px}.inquiry-quote-box p{font-family:var(--display);color:#2b2b27;margin:0;font-size:1.05rem;font-style:italic;line-height:1.65}.inquiry-instructions h5{color:var(--ink);margin:0 0 10px;font-size:.95rem;font-weight:600}.inquiry-instructions p{color:#444;margin:0 0 14px;font-size:.88rem}.inquiry-checklist{flex-direction:column;gap:10px;margin:0;padding-left:18px;display:flex}.inquiry-checklist li{color:#383834;font-size:.88rem;line-height:1.5}.inquiry-checklist code{font-family:var(--mono);background:#0000000f;border-radius:4px;padding:2px 6px;font-size:.8rem}.inquiry-footer-note{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:24px;padding-top:18px;font-size:.82rem;display:flex}.inquiry-footer-note a{font-family:var(--mono);color:var(--ink);text-underline-offset:3px;font-size:.74rem;text-decoration:underline}@media (max-width:1100px){.about-narrative-grid{grid-template-columns:1fr}.about-portrait-card{max-width:360px;position:relative;top:0}.education-grid{grid-template-columns:1fr}.game-showcase-grid,.funding-metrics-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.flagship-meta-grid,.contact-overview-grid,.teaching-philosophy-banner{grid-template-columns:1fr}}@media (max-width:768px){.course-grid,.game-showcase-grid,.grant-card-grid{grid-template-columns:1fr}.funding-metrics-panel{grid-template-columns:1fr;padding:20px}.art-modal-body{grid-template-columns:1fr}.art-modal-thumbs{flex-direction:row;width:100%;padding-bottom:8px;overflow-x:auto}.art-thumb-card{min-width:180px}.contact-action-item{flex-direction:column}.contact-copy-btn{padding:10px}.contact-meta-row{grid-template-columns:1fr;gap:4px}}.spatial-canvas-container{background:var(--panel);border:1px solid #11110f21;border-radius:28px;width:min(100% - 36px,1680px);margin:20px auto 30px;padding:28px 32px;position:relative;overflow:hidden}.spatial-canvas-header{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:20px;display:flex}.spatial-canvas-title-group{max-width:720px}.spatial-canvas-title-group .section-index{font-family:var(--mono);letter-spacing:.08em;color:var(--muted);text-transform:uppercase;margin-bottom:6px;font-size:.72rem;display:inline-block}.spatial-canvas-title-group h3{font-family:var(--display);letter-spacing:-.03em;color:var(--ink);margin:0 0 8px;font-size:clamp(1.6rem,2.6vw,2.4rem);font-weight:500;line-height:1.12}.spatial-canvas-title-group p{color:#55544e;margin:0;font-size:.88rem;line-height:1.55}.spatial-canvas-title-group em{color:var(--ink);font-style:italic}.spatial-canvas-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.spatial-mode-switch{background:var(--canvas);border:1px solid var(--line);border-radius:20px;padding:3px;display:inline-flex}.mode-btn{font-family:var(--mono);letter-spacing:.04em;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:16px;padding:6px 14px;font-size:.74rem;transition:all .18s}.mode-btn.active{background:var(--ink);color:#fff;font-weight:600}.aberration-toggle{font-family:var(--mono);color:var(--ink);background:var(--panel-pure);border:1px solid var(--line);cursor:pointer;border-radius:20px;align-items:center;gap:8px;padding:7px 14px;font-size:.74rem;transition:all .18s;display:inline-flex}.aberration-toggle.active{background:#fef2f2cc;border-color:#dc262666}.aberration-indicator{background:#cbd5e1;border-radius:50%;width:8px;height:8px;transition:background .18s}.aberration-toggle.active .aberration-indicator{background:#ef4444;box-shadow:0 0 6px #ef4444cc}.spatial-cluster-filters{border-bottom:1px solid #0000000d;flex-wrap:wrap;align-items:center;gap:14px;padding:14px 0 16px;display:flex}.cluster-label{font-family:var(--mono);letter-spacing:.05em;color:var(--muted);text-transform:uppercase;font-size:.72rem}.cluster-pill-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cluster-pill{font-family:var(--mono);letter-spacing:.03em;background:var(--soft);border:1px solid var(--line);color:var(--ink);cursor:pointer;border-radius:14px;padding:4px 11px;font-size:.7rem;transition:all .15s}.cluster-pill.active{background:var(--ink);color:#fff;border-color:var(--ink)}.spatial-stage-viewport{perspective:1200px;background:#111211;border-radius:20px;width:100%;height:520px;margin:18px 0;position:relative;overflow:hidden}.spatial-stage-plane{transform-style:preserve-3d;transition:transform .6s cubic-bezier(.2,.8,.2,1);position:absolute;inset:0}.spatial-grid-overlay{pointer-events:none;background-image:linear-gradient(90deg,#ffffff0f 1px,#0000 1px),linear-gradient(#ffffff0f 1px,#0000 1px);background-size:48px 48px;width:150%;height:150%;position:absolute;inset:-25%}.spatial-node{cursor:pointer;transform-style:preserve-3d;z-index:10;transition:transform .4s cubic-bezier(.2,.8,.2,1);position:absolute}.spatial-node.is-hovered{z-index:50}.spatial-node-stalk{pointer-events:none;background:linear-gradient(#ffffffb3,#ffffff26);width:1px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.spatial-node-pin{border:2px solid #fff;border-radius:50%;width:14px;height:14px;margin:0 auto;transition:transform .2s,box-shadow .2s;position:relative}.spatial-node:hover .spatial-node-pin{transform:scale(1.3)}.pin-pulse{border:1px solid #fff6;border-radius:50%;animation:2.4s infinite pulsePin;position:absolute;inset:-4px}@keyframes pulsePin{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(2.2)}}.spatial-node-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;pointer-events:none;background:#1a1a1aeb;border:1px solid #ffffff29;border-radius:10px;width:180px;padding:8px 10px;position:absolute;top:18px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0006}.node-card-cluster{font-family:var(--mono);color:#a3a3a3;text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:5px;margin-bottom:2px;font-size:.65rem;display:flex}.cluster-dot{border-radius:50%;width:6px;height:6px}.node-card-title{font-family:var(--sans);color:#f5f5f5;margin:0;font-size:.78rem;font-weight:600;line-height:1.25}.node-card-metric{font-family:var(--mono);color:#888;margin-top:4px;font-size:.62rem;display:block}.chromatic-active{animation:1.6s ease-in-out infinite alternate chromaticAberrationLens}.chromatic-active .spatial-node-card{border-color:#ff505099;box-shadow:-2px 0 #ff1e3cbf,2px 0 #00d2ffbf,0 8px 24px #0009}@keyframes chromaticAberrationLens{0%{filter:drop-shadow(-1.5px 0 #ff1e3ca6)drop-shadow(1.5px 0 #00d2ffa6)}to{filter:drop-shadow(-2.8px 0 #ff2846d9)drop-shadow(2.8px 0 #00e6ffd9)}}.aberration-text{text-shadow:-1.5px 0 #ff2846d9,1.5px 0 #00d7ffd9}.spatial-active-dossier{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;z-index:60;background:#121312f0;border:1px solid #ffffff2e;border-radius:14px;justify-content:space-between;align-items:center;gap:20px;padding:16px 20px;animation:.22s ease-out dossierSlideUp;display:flex;position:absolute;bottom:16px;left:16px;right:16px}@keyframes dossierSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.dossier-left{max-width:650px}.dossier-cluster{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:.68rem;font-weight:600;display:inline-block}.dossier-left h4{font-family:var(--display);letter-spacing:-.02em;color:#fff;margin:0 0 4px;font-size:1.3rem;font-weight:500}.dossier-left p{color:#c0c0b8;margin:0;font-size:.84rem;line-height:1.45}.dossier-right{flex-shrink:0;align-items:center;gap:24px;display:flex}.dossier-meta-item{flex-direction:column;gap:2px;display:flex}.dossier-meta-item strong{font-family:var(--mono);letter-spacing:.06em;color:#888;text-transform:uppercase;font-size:.62rem}.dossier-meta-item span{color:#e5e5e0;font-size:.8rem}.dossier-link-btn{font-family:var(--mono);letter-spacing:.05em;color:#111;background:#fff;border-radius:20px;align-items:center;padding:9px 16px;font-size:.74rem;font-weight:600;text-decoration:none;transition:background .16s,transform .16s;display:inline-flex}.dossier-link-btn:hover{background:#e5e5e5;transform:translateY(-1px)}.spatial-hint-banner{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#999;background:#121312bf;border:1px solid #ffffff1a;border-radius:12px;justify-content:space-between;align-items:center;padding:10px 16px;font-size:.78rem;display:flex;position:absolute;bottom:14px;left:14px;right:14px}.mode-indicator-tag{font-family:var(--mono);color:#bbb;letter-spacing:.04em;font-size:.68rem}.spatial-canvas-footer{border-top:1px solid var(--line);font-family:var(--mono);letter-spacing:.06em;color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding-top:14px;font-size:.68rem;display:flex}.research-archive-gateway,.alumni-directory-gateway{background:var(--panel);border:1px solid var(--line);border-radius:24px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:32px;margin-top:24px;padding:30px 36px;display:flex;position:relative}.archive-gateway-copy,.alumni-gateway-content{max-width:700px}.gateway-eyebrow,.alumni-gateway-content .subhead-eyebrow{font-family:var(--mono);letter-spacing:.08em;color:var(--muted);text-transform:uppercase;margin-bottom:6px;font-size:.7rem;display:block}.research-archive-gateway h3,.alumni-directory-gateway h4{font-family:var(--display);letter-spacing:-.03em;color:var(--ink);margin:0 0 8px;font-size:clamp(1.4rem,2.2vw,1.9rem);font-weight:500;line-height:1.15}.research-archive-gateway p,.alumni-directory-gateway p{color:#55544e;margin:0;font-size:.88rem;line-height:1.5}.gateway-btn,.alumni-gateway-btn{background:var(--ink);color:#fff;font-family:var(--mono);letter-spacing:.05em;white-space:nowrap;border-radius:24px;align-items:center;padding:12px 22px;font-size:.76rem;font-weight:600;text-decoration:none;transition:all .18s;display:inline-flex}.gateway-btn:hover,.alumni-gateway-btn:hover{background:#33322f;transform:translateY(-2px);box-shadow:0 6px 18px #00000026}.project-category-tag{color:var(--muted);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem}.project-meta-content h3{font-family:var(--display);letter-spacing:-.04em;margin:0;font-size:clamp(24px,2.1vw,36px);font-weight:500;line-height:1.05}.project-summary-text{color:#55544e;margin:6px 0 0;font-size:.85rem;line-height:1.42}.selected-publications-section{z-index:2;width:min(100% - 36px,1680px);margin:30px auto 0;padding:60px 0 80px;display:block;position:relative}.publications-section-header{border-bottom:1px solid #11110f26;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:2rem;padding:0 12px 32px;display:flex}.publications-section-header h2{font-family:var(--display);letter-spacing:-.05em;color:var(--ink);margin:.4rem 0 0;font-size:clamp(2.6rem,4.5vw,4.5rem);font-weight:500;line-height:.96}.publications-header-meta{flex-direction:column;gap:10px;max-width:440px;display:flex}.publications-header-meta p{color:#55544e;margin:0;font-size:.9rem;line-height:1.5}.publications-portal-link{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink);text-underline-offset:4px;font-size:.72rem;font-weight:500;text-decoration:underline}.publications-portal-link:hover{opacity:.7}.publications-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.publication-feature-card{background:var(--panel);border:1px solid var(--line);border-radius:20px;flex-direction:column;justify-content:space-between;padding:24px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex}.publication-feature-card:hover{border-color:#11110f4d;transform:translateY(-2px);box-shadow:0 8px 24px #0000000a}.pub-card-top{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.pub-card-venue{font-family:var(--mono);letter-spacing:.04em;color:#0369a1;background:#0369a114;border-radius:6px;padding:3px 8px;font-size:.74rem;font-weight:600}.pub-card-year{font-family:var(--mono);color:var(--muted);font-size:.74rem}.pub-card-title{font-family:var(--display);color:var(--ink);letter-spacing:-.02em;margin:0 0 8px;font-size:1.25rem;font-weight:500;line-height:1.25}.pub-card-authors{color:#55544e;margin:0 0 16px;font-size:.84rem}.pub-card-footer{border-top:1px solid #0000000f;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding-top:14px;display:flex}.pub-card-topics{flex-wrap:wrap;gap:6px;display:flex}.pub-topic-tag{font-family:var(--mono);background:var(--soft);color:#444;border-radius:4px;padding:2px 7px;font-size:.65rem}.pub-card-doi-link{font-family:var(--mono);color:var(--ink);text-underline-offset:3px;font-size:.7rem;font-weight:500;text-decoration:underline}.pub-card-actions-group{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.pub-card-action-btn{font-family:var(--mono);cursor:pointer;border:1px solid var(--line);background:var(--panel);color:var(--foreground);white-space:nowrap;border-radius:4px;align-items:center;gap:4px;padding:3px 8px;font-size:.68rem;font-weight:500;text-decoration:none;transition:all .18s;display:inline-flex}.pub-card-action-btn:hover{border-color:var(--ink);background:var(--soft)}.pub-card-action-btn.pub-btn--pdf{color:#fff;background:#1a1a18;border-color:#1a1a18}.pub-card-action-btn.pub-btn--pdf:hover{background:#333330;border-color:#333330}.pub-card-action-btn.pub-btn--preprint{color:#2b2b28;background:#f0f0eb;border-color:#d8d8d0}.pub-card-action-btn.pub-btn--preprint:hover{background:#e4e4dc}.pub-card-action-btn.pub-btn--doi{color:var(--muted)}.pub-card-action-btn.pub-btn--doi:hover{color:var(--ink)}.pub-card-action-btn.pub-btn--bibtex{background:0 0}.pub-card-action-btn.pub-btn--bibtex.is-copied{color:#137333;background:#e6f4ea;border-color:#34a853;font-weight:600}@media (max-width:768px){.spatial-canvas-container{border-radius:20px;padding:18px 14px}.spatial-stage-viewport{height:380px}.spatial-active-dossier{flex-direction:column;align-items:flex-start;gap:12px}.dossier-right{justify-content:space-between;width:100%}.publications-feature-grid{grid-template-columns:1fr}.research-archive-gateway,.alumni-directory-gateway{flex-direction:column;align-items:flex-start;padding:22px 18px}.gateway-btn,.alumni-gateway-btn{justify-content:center;width:100%}}.project-grid>.project-card:not(:has(.project-image)){align-self:start}.teaching-page .research-hero{margin-bottom:3rem}.teaching-page .research-hero-grid{grid-template-columns:1fr 1fr;gap:2rem}.teaching-page .research-hero h1{font-size:clamp(2.75rem,5vw,5rem);line-height:1.05}.teaching-page .research-hero-secondary{margin-top:1rem}.teaching-page .section-subhead h2{font-family:var(--display);font-size:clamp(1.5rem,3vw,2.25rem)}.teaching-page :is(#courses,#student-work){scroll-margin-top:110px}.teaching-page .course-card-top{flex-wrap:wrap;gap:10px}.teaching-page .course-title a:hover{text-underline-offset:4px;text-decoration:underline}.teaching-page .course-link-btn{align-items:center;min-height:44px;display:inline-flex}.teaching-page a:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.teaching-page .game-card-media{display:block}@media (max-width:760px){.teaching-page .research-hero-grid{grid-template-columns:1fr}.teaching-page .course-card{padding:22px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
