:root{--color-background: #020202;--color-border: rgba(255, 255, 255, .1);--color-border-strong: rgba(255, 255, 255, .22);--color-rule: rgba(255, 255, 255, .08);--color-text: #f5f4ef;--color-text-muted: rgba(245, 244, 239, .72);--color-text-subtle: rgba(245, 244, 239, .46);--color-selection: rgba(255, 255, 255, .14);--shadow-soft: 0 10px 28px rgba(0, 0, 0, .22);--shadow-medium: 0 24px 64px rgba(0, 0, 0, .34);--radius-sm: 2px;--radius-md: 4px;--space-3: .75rem;--space-4: 1rem;--max-content-width: 1180px;--header-height: 76px;--section-padding: clamp(4.5rem, 8vw, 7rem);--content-padding: clamp(1rem, 3vw, 2rem);--font-body: "Rajdhani", "Inter", "SF Pro Text", "Segoe UI", sans-serif;--font-display: "Oxanium", "Rajdhani", "Inter", "SF Pro Text", sans-serif;--transition-fast: .14s cubic-bezier(.22, 1, .36, 1);--transition-medium: .32s cubic-bezier(.22, 1, .36, 1);--transition-slow: .76s cubic-bezier(.16, 1, .3, 1);--hero-shift-x: 0px;--hero-shift-y: 0px}*,*:before,*:after{box-sizing:border-box}html{width:100%;min-height:100%;background:var(--color-background);color-scheme:dark;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 1rem);overflow-x:clip;overscroll-behavior:none}body{width:100%;min-width:320px;min-height:100vh;margin:0;overflow-x:clip;overscroll-behavior:none;background:linear-gradient(180deg,rgba(255,255,255,.035),transparent 18%),linear-gradient(180deg,#050505,#020202 34%,#010101);color:var(--color-text);font-family:var(--font-body);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220' viewBox='0 0 220 220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.08' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)'/%3E%3C/svg%3E")}body.menu-open{overflow:hidden}::selection{color:#fff;background:var(--color-selection)}a,button{font:inherit}a{color:inherit;text-decoration:none}button{padding:0;border:0;background:transparent;color:inherit;cursor:pointer}img,svg{display:block;max-width:100%}h1,h2,h3,p,ul,ol{margin:0}ul,ol{padding:0;list-style:none}#root,.app-shell{width:100%;min-height:100vh;background:var(--color-background);overflow-x:clip}.app-shell{position:relative;isolation:isolate}.app-shell:before,.app-shell:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none}.app-shell:before{top:-12%;right:-12%;bottom:-12%;left:-12%;opacity:.78;background:radial-gradient(circle at 14% 18%,rgba(255,255,255,.075),transparent 20%),radial-gradient(circle at 78% 12%,rgba(255,255,255,.045),transparent 18%),radial-gradient(circle at 52% 68%,rgba(255,255,255,.032),transparent 30%),radial-gradient(circle at 24% 84%,rgba(255,255,255,.026),transparent 22%);filter:blur(64px)}.app-shell:after{opacity:.34;background-image:url(/pics/cosmos-stars-primary.svg),url(/pics/cosmos-stars-secondary.svg);background-repeat:no-repeat,no-repeat;background-size:cover,cover;background-position:center center,center center;mix-blend-mode:screen}main,.site-footer,.meta-band,.solar-end{position:relative;z-index:2}:focus-visible{outline:2px solid rgba(255,255,255,.9);outline-offset:3px}.scroll-progress{position:fixed;inset:0 0 auto;z-index:100;width:100%;height:2px;background:#ffffff0a}.scroll-progress span{display:block;width:100%;height:100%;transform-origin:left center;background:linear-gradient(90deg,#ffffff42,#ffffffe0)}.site-cursor{position:fixed;top:0;left:0;z-index:140;width:1.45rem;height:1.45rem;display:none;border-radius:50%;opacity:0;pointer-events:none;--site-cursor-scale: .82;transform:translate3d(var(--site-cursor-x, 50vw),var(--site-cursor-y, 50vh),0) translate(-50%,-50%) scale(var(--site-cursor-scale));transition:opacity .12s linear,transform .18s cubic-bezier(.22,1,.36,1),filter .18s cubic-bezier(.22,1,.36,1),box-shadow .18s cubic-bezier(.22,1,.36,1);background:radial-gradient(circle at 34% 30%,rgba(255,255,255,.16),rgba(255,255,255,.045) 28%,rgba(255,255,255,.018) 52%,transparent 72%);-webkit-backdrop-filter:blur(8px) saturate(135%);backdrop-filter:blur(8px) saturate(135%);box-shadow:inset 0 1px #ffffff14,0 0 0 1px #ffffff0a,0 0 14px #ffffff0a;filter:brightness(.95)}.site-cursor:before{content:"";position:absolute;top:.24rem;right:.24rem;bottom:.24rem;left:.24rem;border-radius:50%;background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.025) 34%,transparent 68%);opacity:.72}.site-cursor.is-visible{opacity:.92}.site-cursor.is-engaged{--site-cursor-scale: .98;filter:brightness(1.12)}.site-cursor.is-panel{--site-cursor-scale: 1.24;filter:brightness(1.18);box-shadow:inset 0 1px #ffffff1f,0 0 0 1px #ffffff0f,0 0 20px #ffffff14}.site-cursor.is-pressed{--site-cursor-scale: .9}.site-cursor__outer-ring,.site-cursor__orbit,.site-cursor__orbit-line,.site-cursor__core{position:absolute;display:block;border-radius:50%}.site-cursor__outer-ring{top:.11rem;right:.11rem;bottom:.11rem;left:.11rem;border:1px solid rgba(255,255,255,.72);box-shadow:0 0 0 1px #ffffff0d}.site-cursor__orbit{top:.2rem;right:.2rem;bottom:.2rem;left:.2rem;animation:site-cursor-spin 8s linear infinite;animation-play-state:paused}.site-cursor__orbit-line{top:0;right:0;bottom:0;left:0}.site-cursor__orbit-line:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:conic-gradient(from -102deg,rgba(255,255,255,.9) 0deg 24deg,transparent 24deg 360deg);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 1.5px),#000 calc(100% - 1.5px) calc(100% - .5px),transparent calc(100% - .5px));mask:radial-gradient(farthest-side,transparent calc(100% - 1.5px),#000 calc(100% - 1.5px) calc(100% - .5px),transparent calc(100% - .5px))}.site-cursor__orbit-line--1{transform:rotate(0)}.site-cursor__orbit-line--2{transform:rotate(72deg)}.site-cursor__orbit-line--3{transform:rotate(144deg)}.site-cursor__orbit-line--4{transform:rotate(216deg)}.site-cursor__orbit-line--5{transform:rotate(288deg)}.site-cursor__core{top:50%;left:50%;width:.08rem;height:.08rem;background:#ffffffeb;transform:translate(-50%,-50%)}.site-cursor.is-visible .site-cursor__orbit{animation-play-state:running}.site-header{position:fixed;inset:0 0 auto;z-index:80;padding:.875rem var(--content-padding) 0;pointer-events:none}.site-header__bar{pointer-events:auto;width:min(100%,var(--max-content-width));margin:0 auto;display:grid;grid-template-columns:auto auto minmax(0,1fr) auto auto;align-items:center;gap:var(--space-4);padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#040404c7;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-soft);transition:border-color var(--transition-fast),background-color var(--transition-fast),padding var(--transition-fast),transform var(--transition-fast)}.site-header.is-scrolled .site-header__bar{padding-top:.65rem;padding-bottom:.65rem;background:#050505e0;border-color:var(--color-border-strong)}.site-header__brand{min-width:0;font-size:.76rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap}.site-header__brand:hover{color:var(--color-text-muted)}.site-header__nav{min-width:0;display:flex;align-items:center;justify-content:center;gap:.15rem;border-left:1px solid var(--color-rule);border-right:1px solid var(--color-rule);padding:0 .75rem}.site-header__nav a,.site-header__actions a,.mobile-drawer__nav a,.mobile-drawer__actions a,.site-footer__links a,.research-card__link,.back-to-top{transition:color var(--transition-fast),border-color var(--transition-fast),background-color var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast)}.site-header__nav a{padding:.7rem .85rem;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--color-text-subtle);font-size:.74rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}.site-header__nav a:hover,.site-header__nav a.is-active{color:var(--color-text);background:#ffffff09;border-color:#ffffff14}.site-header__actions{display:flex;align-items:center;gap:.5rem}.site-header__actions a{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:2.5rem;padding:0 .8rem;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:.74rem;font-weight:600;line-height:1;letter-spacing:.12em;text-align:center;text-transform:uppercase}.site-header__actions a:hover{color:var(--color-text);border-color:var(--color-border-strong);background:#ffffff0a}.site-header__resume{background:#ffffff14;color:var(--color-text)}.site-header__menu-button{position:relative;display:none;width:2.75rem;height:2.75rem;justify-self:end;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#ffffff08}.site-header__menu-button span{position:absolute;width:.95rem;height:1px;background:currentColor;transition:transform var(--transition-fast),opacity var(--transition-fast)}.site-header__menu-button span:nth-child(1){transform:translateY(-4px)}.site-header__menu-button span:nth-child(3){transform:translateY(4px)}.site-header.is-menu-open .site-header__menu-button span:nth-child(1){transform:rotate(45deg)}.site-header.is-menu-open .site-header__menu-button span:nth-child(2){opacity:0}.site-header.is-menu-open .site-header__menu-button span:nth-child(3){transform:rotate(-45deg)}.mobile-drawer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:75;pointer-events:none}.mobile-drawer__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;background:#000000b8;transition:opacity var(--transition-medium)}.mobile-drawer__panel{position:absolute;top:.875rem;right:var(--content-padding);left:var(--content-padding);padding:4.5rem 1rem 1rem;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:#050505f5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-medium);opacity:0;transform:translateY(-10px);transition:opacity var(--transition-medium),transform var(--transition-medium)}.site-header.is-menu-open .mobile-drawer{pointer-events:auto}.site-header.is-menu-open .mobile-drawer__backdrop,.site-header.is-menu-open .mobile-drawer__panel{opacity:1}.site-header.is-menu-open .mobile-drawer__panel{transform:translateY(0)}.mobile-drawer__nav,.mobile-drawer__actions{display:grid;gap:.55rem}.mobile-drawer__nav a,.mobile-drawer__actions a{min-height:3rem;display:flex;align-items:center;justify-content:flex-start;padding:0 .9rem;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;background:#ffffff05}.mobile-drawer__nav a.is-active,.mobile-drawer__nav a:hover,.mobile-drawer__actions a:hover{color:var(--color-text);border-color:var(--color-border-strong);background:#ffffff0a}.mobile-drawer__actions{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-rule)}.hero{position:relative;min-height:100svh;display:grid;place-items:center;padding:calc(var(--header-height) + 2.5rem) var(--content-padding) 2rem;overflow:clip;contain:paint;isolation:isolate}.hero__background,.hero__grid,.hero__scanlines,.hero__vignette{position:absolute;top:0;right:0;bottom:0;left:0}.hero__background{overflow:clip;background:radial-gradient(circle at 50% 24%,rgba(255,255,255,.05),transparent 34%)}.hero__grid{opacity:.14;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:5rem 5rem;-webkit-mask-image:radial-gradient(circle at center,black 34%,transparent 78%);mask-image:radial-gradient(circle at center,black 34%,transparent 78%);animation:grid-drift 24s linear infinite;animation-play-state:paused}.hero__scanlines{opacity:.08;background:repeating-linear-gradient(180deg,rgba(255,255,255,.05) 0,rgba(255,255,255,.05) 1px,transparent 1px,transparent 4px);-webkit-mask-image:linear-gradient(180deg,transparent 0%,black 12%,black 88%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0%,black 12%,black 88%,transparent 100%)}.hero__vignette{background:radial-gradient(circle at center,transparent 52%,rgba(0,0,0,.44) 100%),linear-gradient(180deg,rgba(0,0,0,.34),transparent 20%,transparent 80%,rgba(0,0,0,.42))}.hero__content{position:relative;z-index:2;width:min(100%,1040px);display:flex;justify-content:center}.hero__name{max-width:100%;display:flex;flex-wrap:nowrap;justify-content:center;align-items:flex-start;gap:0;white-space:nowrap;cursor:default;perspective:1200px;transform-style:preserve-3d;font-family:var(--font-display);font-size:clamp(2.2rem,7.8vw,7rem);font-weight:600;line-height:.9;letter-spacing:.04em;text-align:center;text-wrap:wrap;transform:translate3d(var(--hero-shift-x),var(--hero-shift-y),0);transition:transform 1.48s cubic-bezier(.2,1.18,.22,1)}.hero.is-hero-active .hero__name{transition:transform .24s cubic-bezier(.16,.92,.24,1)}.hero__letter{position:relative;display:inline-block;padding:0 .02em;white-space:pre;transform-origin:50% 56%;backface-visibility:hidden;color:#f5f4effa;transform:translate3d(0,16px,0);opacity:0;filter:blur(10px);transition:opacity var(--transition-slow),transform 1.85s cubic-bezier(.2,1.2,.18,1),filter 1.6s cubic-bezier(.18,1,.2,1)}.hero.has-live-motion .hero__letter{transition:opacity .26s linear,filter .22s cubic-bezier(.14,.88,.22,1)}.hero__letter:before,.hero__letter:after{content:attr(data-letter);position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:calc(var(--letter-tint, 0) * .72);transition:opacity 1.45s cubic-bezier(.2,1.14,.18,1),transform 1.85s cubic-bezier(.2,1.2,.18,1)}.hero.has-live-motion .hero__letter:before,.hero.has-live-motion .hero__letter:after{transition:opacity .18s linear,transform 0ms linear}.hero__letter:before{color:#6dd6ffb8;transform:translate3d(calc(var(--letter-tint, 0) * -6px),0,0) scale3d(calc(1 + var(--letter-tint, 0) * .05),calc(1 - var(--letter-tint, 0) * .03),1)}.hero__letter:after{color:#ff5da494;transform:translate3d(calc(var(--letter-tint, 0) * 6px),0,0) scale3d(calc(1 - var(--letter-tint, 0) * .04),calc(1 + var(--letter-tint, 0) * .05),1)}.hero__letter.is-space{min-width:.42em;padding:0;color:transparent;filter:none}.hero__letter.is-space:before,.hero__letter.is-space:after{content:none}.hero.is-loaded .hero__letter{opacity:1;filter:blur(0);transform:translate3d(var(--letter-x, 0px),var(--letter-y, 0px),var(--letter-z, 0px)) skew(var(--letter-skew-x, 0deg),var(--letter-skew-y, 0deg)) scale3d(var(--letter-scale-x, 1),var(--letter-scale-y, 1),1) rotate(var(--letter-rotate, 0deg))}.hero__scroll-cue{position:absolute;bottom:1rem;left:50%;width:1.4rem;height:3.5rem;transform:translate(-50%);opacity:.84}.hero__scroll-cue:before{content:"";position:absolute;top:0;left:50%;width:1px;height:2.15rem;background:linear-gradient(180deg,#fff0,#ffffffd1 32%,#ffffff70);transform:translate(-50%) scaleY(0);transform-origin:center top;animation:cue-shaft-draw 5.4s cubic-bezier(.16,1,.3,1) infinite;animation-play-state:paused}.hero__scroll-cue span{position:absolute;bottom:.5rem;left:50%;width:1rem;height:.62rem;transform:translate(-50%)}.hero__scroll-cue span:before,.hero__scroll-cue span:after{content:"";position:absolute;bottom:0;width:.68rem;height:1px;background:#ffffffe0;opacity:0;animation:cue-head-draw 5.4s cubic-bezier(.16,1,.3,1) infinite;animation-play-state:paused}.hero__scroll-cue span:before{--cue-angle: 38deg;right:50%;transform-origin:right center;transform:rotate(38deg) scaleX(0)}.hero__scroll-cue span:after{--cue-angle: -38deg;left:50%;transform-origin:left center;transform:rotate(-38deg) scaleX(0)}.hero.is-in-view .hero__grid,.hero.is-in-view .hero__scroll-cue:before,.hero.is-in-view .hero__scroll-cue span:before,.hero.is-in-view .hero__scroll-cue span:after{animation-play-state:running}.section-shell,.site-footer,.meta-band{position:relative;padding-inline:var(--content-padding);overflow:clip}.section-shell{padding-top:var(--section-padding);padding-bottom:var(--section-padding)}.section-shell:before,.site-footer:before,.meta-band:before{content:"";position:absolute;top:0;left:50%;width:min(100%,var(--max-content-width));height:1px;transform:translate(-50%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.14),transparent)}.section-shell__inner,.site-footer__inner,.meta-band__inner{width:min(100%,var(--max-content-width));margin:0 auto}.section-shell__header{display:grid;grid-template-columns:140px minmax(0,1fr);gap:1.75rem clamp(1.5rem,4vw,3.5rem);align-items:start;margin-bottom:clamp(2rem,4vw,3.75rem)}.section-shell__rail{display:flex;align-items:center;gap:.9rem;padding-top:.55rem}.section-shell__index,.section-shell__label,.meta-band__label,.site-footer__eyebrow{font-size:.72rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-subtle)}.section-shell__line{width:100%;height:1px;background:linear-gradient(90deg,#ffffff2e,#fff0)}.section-shell__copy{display:grid;gap:0}.timeline{position:relative;display:grid;gap:1rem}.timeline:before{content:"";position:absolute;top:.2rem;bottom:.2rem;left:.75rem;width:1px;background:linear-gradient(180deg,#ffffff38,#ffffff0a)}.timeline-card{position:relative;margin-left:2rem;display:grid;grid-template-columns:minmax(170px,210px) minmax(0,1fr);gap:1.2rem 1.75rem;padding:1.25rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:linear-gradient(180deg,rgba(255,255,255,.024),transparent 100%),#ffffff03}.timeline-card:before{content:"";position:absolute;top:1.5rem;left:-1.5rem;width:.5rem;height:.5rem;background:#ffffffd1;box-shadow:0 0 0 4px #ffffff0d}.timeline-card:hover,.research-card:hover,.info-card:hover{border-color:var(--color-border-strong);background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 100%),#ffffff04;transform:translateY(-2px)}.timeline-card__meta,.timeline-card__header,.research-card__topline,.info-card__header{display:grid;gap:.35rem}.timeline-card__header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1rem}.timeline-card__header-copy{display:grid;gap:.35rem}.timeline-card__date,.timeline-card__location,.timeline-card__company,.research-card__affiliation,.research-card__location,.research-card__date,.info-card__meta{font-size:.76rem;letter-spacing:.12em;text-transform:uppercase}.timeline-card__date,.research-card__date,.info-card__date{color:var(--color-text-subtle)}.timeline-card__location,.timeline-card__company,.research-card__affiliation,.research-card__location,.info-card__organization,.info-card__location{color:var(--color-text-muted)}.timeline-card__header h3,.research-card h3,.project-card h3,.info-card h3,.meta-band__title{font-size:clamp(1.22rem,1.8vw,1.45rem);font-weight:600;line-height:1.24;letter-spacing:-.02em}.timeline-card__logo{width:3.4rem;height:3.4rem;display:inline-flex;align-items:center;justify-content:center;overflow:clip;border:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg,rgba(255,255,255,.025),transparent 100%),#ffffff05}.timeline-card__logo img{width:100%;height:100%;object-fit:contain;padding:.45rem;transform:scale(var(--timeline-card-logo-scale, 1));transform-origin:center}.timeline-card__logo span{padding:.35rem;text-align:center;font-size:.54rem;font-weight:700;line-height:1.15;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-subtle)}.timeline-card__description,.research-card__description,.project-card p,.info-card__description{color:var(--color-text-muted);line-height:1.72;margin-top:1rem}.research-grid,.projects-grid,.info-grid,.research-section,.research-subsection{display:grid;gap:1rem}.research-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.research-grid>:only-child{grid-column:1 / -1}.research-grid--single{grid-template-columns:minmax(0,1fr)}.research-subsection{margin-top:1rem}.research-subsection__header{display:grid;gap:.3rem;padding-top:.25rem}.research-subsection__title{margin:0}.research-subsection__title{font-size:clamp(1.22rem,1.8vw,1.45rem);font-weight:600;line-height:1.24;letter-spacing:-.02em}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.research-card,.project-card,.info-card{display:grid;gap:.9rem;padding:1.25rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:linear-gradient(180deg,rgba(255,255,255,.024),transparent 100%),#ffffff03}.research-card__topline{grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:start}.research-card__context,.info-card__meta{display:flex;flex-wrap:wrap;gap:.35rem .8rem;min-width:0}.research-card__summary,.research-card__focus p{color:var(--color-text-muted);line-height:1.72}.research-card__focus{display:grid;gap:.45rem;padding-top:.95rem;border-top:1px solid var(--color-rule)}.research-card__focus span{font-size:.72rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-subtle)}.research-card__link{width:fit-content;display:inline-flex;align-items:center;gap:.45rem;padding-top:.15rem;color:var(--color-text);font-size:.86rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.research-card__link:after{content:"↗";font-size:.92rem}.research-card__link:hover{color:var(--color-text-muted)}.project-card{gap:1rem}.project-card__media{display:grid;gap:.75rem}.project-card__media-link,.project-card__media-frame,.research-card__media-frame,.info-card__media-frame{position:relative;display:block;overflow:clip;border:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg,rgba(255,255,255,.03),transparent 100%),#ffffff04}.project-card__media-link:after,.project-card__media-frame:after,.research-card__media-frame:after,.info-card__media-frame:after{content:"";position:absolute;top:12px;right:12px;bottom:12px;left:12px;z-index:1;border:1px solid rgba(255,255,255,.06);pointer-events:none}.project-card__media-link{transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.project-card__media-link:hover,.project-card__media-link:focus-visible{border-color:#ffffff3d;box-shadow:0 0 0 1px #ffffff14}.project-card__media-image,.research-card__media-image,.info-card__media-image{display:block;width:100%;height:auto;transition:filter var(--transition-fast)}.project-card__media-link:hover .project-card__media-image,.project-card__media-link:focus-visible .project-card__media-image{filter:brightness(1.04)}.project-card__media-frame--fpga{aspect-ratio:2550 / 1376}.project-card__media-frame--riscv{aspect-ratio:4 / 3}.project-card__media-image--fpga{position:absolute;top:50%;left:50%;width:53.96%;height:185.32%;max-width:none;object-fit:cover;transform:translate(-50%,-50%) rotate(-90deg);transform-origin:center}.project-card__media-image--riscv{position:absolute;top:50%;left:50%;width:102%;height:auto;max-width:none;transform:translate(-50%,-50%) rotate(-90deg);transform-origin:center}.project-card__diagram,.project-card__media-placeholder,.info-card__media-placeholder{position:relative;min-height:200px;overflow:clip;border:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg,rgba(255,255,255,.03),transparent 100%),repeating-linear-gradient(90deg,rgba(255,255,255,.03) 0,rgba(255,255,255,.03) 1px,transparent 1px,transparent 36px),#ffffff04}.project-card__diagram{min-height:220px;background:radial-gradient(circle at 50% 40%,rgba(246,191,103,.16),transparent 24%),radial-gradient(circle at 84% 18%,rgba(255,223,166,.08),transparent 18%),linear-gradient(180deg,rgba(246,191,103,.05),transparent 38%),linear-gradient(135deg,#110e09fa,#070604f0)}.project-card__diagram:before,.project-card__diagram:after,.project-card__media-placeholder:before,.project-card__media-placeholder:after,.info-card__media-placeholder:before,.info-card__media-placeholder:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.project-card__diagram:before{background:repeating-linear-gradient(180deg,rgba(255,214,143,.06) 0,rgba(255,214,143,.06) 1px,transparent 1px,transparent 24px),linear-gradient(90deg,transparent,rgba(255,214,143,.05),transparent)}.project-card__diagram:after,.project-card__media-placeholder:before,.info-card__media-placeholder:before{background:linear-gradient(135deg,transparent calc(50% - .5px),rgba(255,255,255,.08) 50%,transparent calc(50% + .5px))}.project-card__diagram svg{position:relative;z-index:1;width:100%;height:100%;min-height:220px}.project-diagram__frame,.project-diagram__panel,.project-diagram__ring,.project-diagram__ring--inner,.project-diagram__accent,.project-diagram__link,.project-diagram__bus-guide,.project-diagram__bus{fill:none;stroke-linecap:round;stroke-linejoin:round}.project-diagram__frame{stroke:#f7c67066;stroke-width:1.25px}.project-diagram__panel{fill:#f7c6700f;stroke:#f7c6704d;stroke-width:1.05px}.project-diagram__ring{fill:#f7c6700d;stroke:#ffe2afa3;stroke-width:1.5px}.project-diagram__ring--inner{stroke:#ffe2af80;stroke-dasharray:3 5;stroke-width:1.15px}.project-diagram__accent{stroke:#ffe2afd1;stroke-width:1.8px}.project-diagram__accent--faint{stroke:#ffe2af52}.project-diagram__link{stroke:#f7c6709e;stroke-width:1.55px}.project-diagram__bus-guide{stroke:#f7c67024;stroke-width:.95px}.project-diagram__bus{stroke:#ffe2afeb;stroke-width:2.1px}.project-diagram__node{fill:#ffe2afeb}.project-diagram__label,.project-diagram__small{font-family:var(--font-display)}.project-diagram__label{fill:#ffeccbf2;font-size:11px;font-weight:700;letter-spacing:.18em}.project-diagram__label--center{font-size:12px;letter-spacing:.24em}.project-diagram__small{fill:#ffdda5b8;font-size:7px;font-weight:700;letter-spacing:.18em}.project-diagram__small--center{letter-spacing:.24em}.project-card__media-placeholder:after,.info-card__media-placeholder:after{top:12px;right:12px;bottom:12px;left:12px;border:1px solid rgba(255,255,255,.06)}.project-card__media-placeholder span,.info-card__media-placeholder span{position:absolute;right:.8rem;bottom:.8rem;z-index:1;font-size:.68rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-subtle)}.project-card__body{display:grid;gap:.75rem}.project-card__meta{display:flex;flex-wrap:wrap;gap:.35rem .8rem;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-subtle)}.info-grid--bento{grid-template-columns:repeat(3,minmax(0,1fr))}.info-grid--bento .info-card:first-child{grid-column:span 2}.info-grid--stacked{grid-template-columns:1fr}.info-grid--personal{grid-template-columns:repeat(3,minmax(0,1fr))}.info-card__meta{font-size:.72rem}.info-card--personal{align-content:start;min-height:0}.info-card__media{display:grid;gap:.65rem;margin-top:.25rem}.info-card__media-frame{aspect-ratio:4 / 3}.info-card__media-image{height:100%;object-fit:cover}.info-card__media-caption{color:var(--color-text-subtle);font-size:.78rem;font-style:italic;line-height:1.55}.meta-band{padding-top:0;padding-bottom:calc(var(--section-padding) * .75)}.meta-band__inner{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr) minmax(0,1.15fr);gap:1.5rem 2rem;padding-top:1.5rem}.meta-band__block{display:grid;gap:.6rem;align-content:start}.meta-band__block--education{display:flex;flex-direction:column;min-height:100%}.meta-band__detail{color:var(--color-text-muted);line-height:1.6}.meta-band__logo{width:min(100%,15rem);aspect-ratio:19 / 10;margin-top:auto;margin-inline:auto;padding-top:1rem;display:grid;place-items:center}.meta-band__logo img{display:block;width:100%;height:auto;opacity:.98}.meta-band__recognitions{display:grid;gap:.5rem;margin-top:.1rem}.meta-band__recognitions li{position:relative;padding-left:.9rem;color:var(--color-text-muted);line-height:1.55}.meta-band__recognitions li:before{content:"";position:absolute;top:.6rem;left:0;width:.3rem;height:.3rem;background:#ffffff80}.meta-band__skill-group{display:grid;gap:.55rem}.meta-band__subhead{font-size:.68rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-subtle)}.meta-band__skills{display:flex;flex-wrap:wrap;gap:.45rem}.meta-band__skills li{padding:.5rem .55rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#ffffff05;font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted)}.site-footer{padding-top:0;padding-bottom:2rem}.site-footer__inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,9.5rem);gap:1rem 1.25rem;align-items:center;padding-top:1.75rem}.site-footer__contact{display:grid;gap:.5rem}.site-footer__portrait{grid-column:2;grid-row:1 / span 3;position:relative;width:100%;justify-self:end;align-self:center;aspect-ratio:1 / 1;overflow:clip;border:1px solid var(--color-border);border-radius:50%;background:linear-gradient(180deg,rgba(255,255,255,.03),transparent 100%),#ffffff04}.site-footer__portrait:after{content:"";position:absolute;top:12px;right:12px;bottom:12px;left:12px;border:1px solid rgba(255,255,255,.06);pointer-events:none}.site-footer__portrait img{width:100%;height:100%;object-fit:cover;object-position:center 16%;transform:scale(1.34);transform-origin:center}.site-footer__lead{display:grid;gap:.5rem}.site-footer__email{width:fit-content;max-width:100%;font-family:var(--font-display);font-size:clamp(1.9rem,4vw,3rem);line-height:1;letter-spacing:.03em;overflow-wrap:anywhere}.site-footer__email:hover{color:var(--color-text-muted)}.site-footer__phone{width:fit-content;color:var(--color-text-muted);font-size:.84rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.site-footer__phone:hover{color:var(--color-text)}.site-footer__links{grid-column:1;display:flex;flex-wrap:wrap;gap:.55rem}.site-footer__links a{min-height:2.55rem;display:inline-flex;align-items:center;justify-content:center;padding:0 .85rem;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:.74rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.site-footer__links a:hover{color:var(--color-text);border-color:var(--color-border-strong);background:#ffffff0a}.site-footer__credit{grid-column:1;color:var(--color-text-subtle);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.solar-end{position:relative;min-height:100svh;display:grid;align-items:center;padding:calc(var(--header-height) + .35rem) clamp(.5rem,1.6vw,1.1rem) .35rem;overflow:clip}.solar-end:before{content:"";position:absolute;top:0;left:50%;width:min(100%,var(--max-content-width));height:1px;transform:translate(-50%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.14),transparent)}.solar-end__inner{width:min(100%,1400px);margin:0 auto;display:grid;grid-template-rows:auto minmax(0,1fr);gap:clamp(.2rem,.55vw,.55rem);align-items:stretch;min-height:calc(100svh - var(--header-height) - .7rem)}.solar-end__copy{display:grid;gap:.4rem;justify-items:center;text-align:center}.solar-end__label{font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--color-text-subtle)}.solar-end__question{max-width:20ch;font-family:var(--font-display);font-size:clamp(1.3rem,2.4vw,2.25rem);font-weight:600;line-height:1.08;letter-spacing:.03em;color:var(--color-text);text-transform:none}.solar-end__question-accent{color:inherit}.solar-end__visual{position:relative;width:min(100%,77rem);height:min(74vh,44rem);min-height:20rem;margin:0 auto}.solar-end__canvas{display:block;width:100%;height:100%;min-height:0;background:transparent}.back-to-top{position:fixed;right:1rem;bottom:1rem;z-index:78;display:inline-flex;align-items:center;gap:.5rem;min-height:2.75rem;padding:0 .8rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#050505d6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--color-text);opacity:0;pointer-events:none;transform:translateY(8px)}.back-to-top.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.back-to-top:hover{border-color:var(--color-border-strong);background:#ffffff0a}.back-to-top__icon{width:.6rem;height:.6rem;border-top:1.5px solid currentColor;border-left:1.5px solid currentColor;transform:rotate(45deg) translateY(2px)}.back-to-top__label{font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}[data-reveal]{opacity:0;transform:translate3d(0,18px,0);transition:opacity .56s ease,transform .56s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay, 0ms)}[data-reveal].is-visible{opacity:1;transform:translateZ(0)}@keyframes grid-drift{0%{transform:translateZ(0)}50%{transform:translate3d(-1rem,-.75rem,0)}to{transform:translateZ(0)}}@keyframes site-cursor-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes cue-shaft-draw{0%,12%{opacity:0;transform:translate(-50%) scaleY(0)}52%,60%{opacity:.95;transform:translate(-50%) scaleY(1)}to{opacity:0;transform:translate(-50%) scaleY(0)}}@keyframes cue-head-draw{0%,18%{opacity:0;transform:rotate(var(--cue-angle, 0deg)) scaleX(0)}56%,62%{opacity:1;transform:rotate(var(--cue-angle, 0deg)) scaleX(1)}to{opacity:0;transform:rotate(var(--cue-angle, 0deg)) scaleX(0)}}@media (max-width: 1120px){.site-header__nav,.site-header__actions{display:none}.site-header__menu-button{display:inline-flex}.site-header__bar,.site-header__bar.site-header__bar--no-page-tabs{grid-template-columns:auto 1fr auto}.section-shell__header,.timeline-card,.research-grid,.projects-grid,.info-grid--bento,.info-grid--stacked,.info-grid--personal,.meta-band__inner{grid-template-columns:1fr}.section-shell__rail{padding-top:0}.timeline:before{left:.65rem}.timeline-card{margin-left:1.75rem}.timeline-card:before{left:-1.25rem}}@media (max-width: 720px){.site-header{padding-top:.75rem}.site-header__bar{gap:.75rem;padding-inline:.85rem}.hero{padding-top:calc(var(--header-height) + 2rem)}.hero__name{font-size:clamp(2.2rem,8.4vw,4.4rem);letter-spacing:.03em}.section-shell__title{max-width:none}.site-footer__inner{grid-template-columns:1fr}.site-footer__contact{gap:.5rem;justify-items:center}.site-footer__portrait{grid-column:1;grid-row:auto;max-width:12rem;justify-self:center}.site-footer__lead{justify-items:center;text-align:center}.site-footer__email{font-size:clamp(1rem,5vw,1.5rem);letter-spacing:.015em;white-space:nowrap;overflow-wrap:normal}.site-footer__links{justify-content:center}.site-footer__credit{text-align:center}.timeline-card,.research-card,.info-card{padding:1rem}.timeline-card{margin-left:1.45rem}.timeline:before{left:.45rem}.timeline-card:before{left:-.95rem}.solar-end{padding:calc(var(--header-height) + .75rem) clamp(.75rem,4vw,1rem) 1rem}.solar-end__inner{grid-template-rows:auto auto;gap:.85rem;min-height:calc(100svh - var(--header-height) - 1.75rem);align-content:center;justify-items:center}.solar-end__visual{width:min(100%,26rem);aspect-ratio:1 / 1;min-height:18rem;height:auto;justify-self:center;align-self:center}}@media (pointer: fine){.site-cursor{display:block}body.has-custom-cursor,body.has-custom-cursor *{cursor:none!important}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}[data-reveal],.hero__letter{opacity:1;filter:none;transform:none}.site-cursor__orbit{animation:none}}.site-header__page-tabs{display:inline-flex;align-items:center;gap:.2rem;padding:.25rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#ffffff05}.site-header__bar--no-page-tabs{grid-template-columns:auto minmax(0,1fr) auto auto}.site-header__page-tabs button{min-height:2.4rem;padding:0 .78rem;border:1px solid transparent;border-radius:calc(var(--radius-md) - 1px);color:var(--color-text-subtle);font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;transition:color var(--transition-fast),border-color var(--transition-fast),background-color var(--transition-fast)}.site-header__page-tabs button:hover,.site-header__page-tabs button.is-active{color:var(--color-text);border-color:#ffffff17;background:#ffffff0e}.mobile-drawer__page-tabs{display:grid;gap:.55rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--color-rule)}.mobile-drawer__page-tabs button{min-height:3rem;display:flex;align-items:center;justify-content:flex-start;padding:0 .9rem;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;background:#ffffff05}.mobile-drawer__page-tabs button.is-active,.mobile-drawer__page-tabs button:hover{color:var(--color-text);border-color:var(--color-border-strong);background:#ffffff0a}.flight-page{position:relative;z-index:2;display:grid;gap:clamp(1.25rem,3vw,2.25rem);padding:calc(var(--header-height) + 2rem) var(--content-padding) clamp(2rem,5vw,4rem)}.flight-hero,.flight-console-section,.flight-destinations{width:min(100%,var(--max-content-width));margin:0 auto}.flight-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(18rem,.82fr);gap:1rem}.flight-hero__copy,.flight-hero__stat,.flight-console,.flight-console__panel,.flight-destinations__card,.flight-console-section__header{border:1px solid var(--color-border);border-radius:var(--radius-md);background:linear-gradient(180deg,rgba(255,255,255,.03),transparent 100%),#ffffff03;box-shadow:var(--shadow-soft)}.flight-hero__copy,.flight-console-section__header{padding:clamp(1.2rem,2.8vw,1.75rem)}.flight-hero__copy{display:grid;gap:.9rem}.flight-hero__eyebrow,.flight-console__label,.flight-destinations__topline span,.flight-hero__stat span{font-size:.72rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-subtle)}.flight-hero__copy h1,.flight-console-section__header h2{font-family:var(--font-display);font-size:clamp(1.75rem,4.2vw,3.3rem);line-height:.94;letter-spacing:.02em}.flight-hero__copy p,.flight-console-section__header p,.flight-destinations__card p{color:var(--color-text-muted);line-height:1.72}.flight-hero__copy p span{color:var(--color-text);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.flight-hero__stats{display:grid;gap:1rem}.flight-hero__stat{display:grid;gap:.4rem;align-content:start;padding:1.05rem 1.1rem}.flight-hero__stat strong,.flight-console__hud strong,.flight-destinations__topline strong,.flight-destinations__status strong{font-family:var(--font-display);font-size:clamp(1.2rem,2vw,1.5rem);line-height:1}.flight-hero__stat p,.flight-console__hud p,.flight-destinations__status span,.flight-console__destination-button small{color:var(--color-text-muted);line-height:1.55}.flight-console-section{display:grid;gap:1rem}.flight-console-section__header{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:1rem 1.25rem;align-items:end}.flight-console{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(18rem,.72fr);gap:1rem;padding:1rem}.flight-console__stage{position:relative;min-height:38rem;overflow:clip;border:1px solid rgba(255,255,255,.08);border-radius:calc(var(--radius-md) - 1px);background:radial-gradient(circle at top,rgba(83,179,255,.08),transparent 32%),linear-gradient(180deg,#03090ef2,#020408fa)}.flight-console__stage:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 12%),radial-gradient(circle at center,transparent 42%,rgba(0,0,0,.32) 100%)}.flight-console__viewport,.flight-console__canvas{width:100%;height:100%;min-height:38rem;display:block}.flight-console__hud{position:absolute;z-index:2;display:grid;gap:.6rem;padding:.85rem .95rem;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);background:#03070c9e;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.flight-console__hud--top{top:1rem;left:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.flight-console__hud--bottom{right:1rem;bottom:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.flight-console__hud span{display:block;margin-bottom:.2rem;font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-subtle)}.flight-console__panel{display:grid;gap:1rem;align-content:start;padding:1rem}.flight-console__panel-block{display:grid;gap:.75rem}.flight-console__control-list{display:grid;gap:.55rem;color:var(--color-text-muted)}.flight-console__control-list strong{color:var(--color-text);letter-spacing:.08em}.flight-console__destination-list{display:grid;gap:.55rem}.flight-console__destination-button,.flight-console__reset,.flight-console__touch-button{border:1px solid var(--color-border);border-radius:var(--radius-md);transition:color var(--transition-fast),border-color var(--transition-fast),background-color var(--transition-fast),transform var(--transition-fast)}.flight-console__destination-button{min-height:4rem;display:grid;gap:.22rem;align-content:center;padding:.8rem .9rem;text-align:left;background:#ffffff04}.flight-console__destination-button span{font-size:.96rem;font-weight:700;letter-spacing:.04em}.flight-console__destination-button:hover,.flight-console__destination-button.is-active,.flight-console__destination-button.is-visited,.flight-console__reset:hover,.flight-console__touch-button:hover,.flight-console__touch-button.is-active{color:var(--color-text);border-color:var(--color-border-strong);background:#ffffff0d}.flight-console__destination-button.is-active{background:linear-gradient(180deg,rgba(122,231,255,.12),transparent 100%),#ffffff0d}.flight-console__destination-button.is-visited{background:linear-gradient(180deg,rgba(255,211,140,.08),transparent 100%),#ffffff08}.flight-console__reset{min-height:3rem;padding:0 .95rem;background:#ffffff05;color:var(--color-text);font-size:.76rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.flight-console__touchpad{display:none;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;width:min(100%,var(--max-content-width));margin:0 auto}.flight-console__touch-button{min-height:4.5rem;display:grid;place-items:center;gap:.22rem;background:#ffffff05;touch-action:none}.flight-console__touch-button strong{font-family:var(--font-display);font-size:1.45rem;line-height:1}.flight-console__touch-button span{color:var(--color-text-muted);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.flight-destinations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.flight-destinations__card{display:grid;gap:.85rem;padding:1rem}.flight-destinations__card.is-active{border-color:#7ae7ff4d;background:linear-gradient(180deg,rgba(122,231,255,.08),transparent 100%),#ffffff05}.flight-destinations__card.is-visited{border-color:#ffd38c42}.flight-destinations__topline,.flight-destinations__status{display:grid;gap:.25rem}.flight-destinations__status{padding-top:.85rem;border-top:1px solid var(--color-rule)}@media (max-width: 1120px){.site-header__page-tabs{justify-self:start}.flight-hero,.flight-console,.flight-console-section__header,.flight-destinations{grid-template-columns:1fr}.flight-console__panel{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.flight-console__reset{grid-column:1 / -1}}@media (max-width: 720px){.site-header__page-tabs{min-width:0;width:100%}.site-header__page-tabs button{min-width:0;flex:1 1 0;padding-inline:.5rem;letter-spacing:.1em}.flight-page{padding-top:calc(var(--header-height) + 1.4rem)}.flight-console{padding:.75rem}.flight-console__stage,.flight-console__viewport,.flight-console__canvas{min-height:27rem}.flight-console__hud{position:static;margin:.75rem}.flight-console__hud--top,.flight-console__hud--bottom,.flight-console__panel{grid-template-columns:1fr}.flight-console__panel{padding:0;border:0;background:transparent;box-shadow:none}.flight-console__touchpad{display:grid}}
