.page-intro{position:relative;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--space-5) var(--space-8);align-items:end;padding-block:clamp(4.5rem,8vw,var(--space-9)) clamp(3.5rem,6vw,var(--space-8))}.page-intro .eyebrow{display:flex;grid-column:1 / -1;align-items:center;gap:var(--space-4)}.page-intro .eyebrow:after{width:min(11rem,22vw);height:1px;background:var(--line-strong);content:""}.page-intro .eyebrow:before{width:5px;height:5px;background:var(--event-coral);content:""}.page-intro h1{max-width:13ch;font-family:var(--font-serif);font-weight:600;line-height:.98}.page-lead{max-width:720px;color:var(--text-muted);font-size:var(--fs-lg)}.metrics-band{background:var(--surface)}.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1rem,4vw,3.5rem);padding-block:var(--space-6)}.metric{min-width:0;padding-block:var(--space-3)}.metric strong{display:block;color:var(--green);font-size:2rem;line-height:1}.metric p{margin-top:var(--space-2);font-weight:800}.metric small{color:var(--text-faint);font-size:var(--fs-xs)}.section{padding-block:var(--space-9)}.section-muted{background:var(--surface-muted)}.section-intro{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--space-8);align-items:end;margin-bottom:var(--space-8)}.section-intro.compact{margin-bottom:var(--space-7)}.section-intro .eyebrow{margin-bottom:var(--space-3)}.section-intro h2{max-width:16ch;font-family:var(--font-serif);font-weight:600;line-height:1}.section-lead{max-width:690px;color:var(--text-muted);font-size:var(--fs-lg)}.section-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-6)}.section-link{display:inline-flex;align-items:center;min-height:44px;padding-inline:var(--space-4);border:1px solid var(--line-strong);border-radius:4px;font-size:var(--fs-sm);font-weight:800;transition:color var(--transition),border-color var(--transition),background var(--transition),transform var(--transition)}.section-link:hover,.section-link:focus-visible{border-color:var(--green);background:var(--surface);text-decoration:none;transform:var(--control-lift)}.section-link:active{transform:scale(.97)}.empty-state{padding:var(--space-6);border-block:1px solid var(--line);color:var(--text-muted)}.research-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3)}.research-area-fragment{display:contents}.research-sequence{position:relative;isolation:isolate}.research-step{position:relative;z-index:1;min-width:0;padding:var(--space-4);background:color-mix(in oklab,var(--surface) 72%,transparent);transition:opacity var(--transition),border-color var(--transition)}.step-number{color:var(--red);font:800 var(--fs-sm)/1 var(--font-mono)}.research-stage-label{display:block;margin-top:var(--space-3);color:var(--text-faint);font:700 var(--fs-xs)/1.3 var(--font-mono);text-transform:uppercase}.research-step .sensing-readout{margin-top:var(--space-4)}.research-step h3{margin-top:var(--space-5)}.research-step p{min-height:7.6em;margin-top:var(--space-4);color:var(--text-muted)}.research-step strong{display:block;margin-top:var(--space-4);color:var(--green);font-size:var(--fs-sm);transition:color var(--transition)}.research-signal-trace{position:absolute;z-index:0;top:5.2rem;inset-inline:0;display:grid;grid-template-columns:repeat(4,1fr);height:2px;padding-inline:var(--space-5);pointer-events:none}.research-signal-trace span{border-top:2px solid var(--green);transition:border-color var(--transition)}[data-research-sequence][data-progressive=true] .research-step:not(.is-active){opacity:.56}[data-research-sequence][data-progressive=true] .research-step:not(.is-active) strong{color:var(--text-muted)}[data-research-sequence][data-progressive=true] .research-signal-trace span:not(.is-active){border-color:var(--line-strong)}.research-context{display:grid;grid-template-columns:170px 1fr;gap:var(--space-5);margin-top:var(--space-6);padding:var(--space-5);background:var(--text);color:var(--bg)}.context-label{color:#78d8b2;font:700 var(--fs-xs)/1.5 var(--font-mono);text-transform:uppercase;letter-spacing:0}.research-context>p:last-child{max-width:800px;font-size:var(--fs-lg);font-weight:650}.research-evidence{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}.research-evidence article{padding:var(--space-5);background:var(--surface)}.research-evidence h3{color:var(--green);font-size:var(--fs-base)}.research-evidence p{margin-top:var(--space-3);color:var(--text-muted)}.research-evidence ul{margin-top:var(--space-3);padding-left:1.1rem;color:var(--text-muted)}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5)}.project-card{position:relative;display:flex;flex-direction:column;min-height:460px;padding:var(--space-6);overflow:hidden;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface)}.project-grid.compact .project-card{min-height:380px}.project-signal-rail{position:absolute;z-index:1;top:clamp(0%,calc(var(--project-contact-y, 50%) - 16%),68%);left:0;width:4px;height:32%;background:var(--green);transform:scaleY(.28);transform-origin:top;transition:transform var(--transition);pointer-events:none}:root[data-project-interactions=ready] [data-project-item].is-active .project-signal-rail,:root:not([data-project-interactions=ready]) [data-project-item]:is(:hover,:focus-within) .project-signal-rail{transform:scaleY(1)}.category-industry .project-signal-rail{background:var(--red)}.category-software .project-signal-rail{background:#5c57a5}.category-robotics .project-signal-rail{background:#32789a}.project-card>:not(.project-signal-rail){transform:translate(var(--project-response-x, 0px));transition:transform var(--motion-fast) var(--ease-signal)}.project-card>.project-footer{transform:none}.project-topline{display:flex;justify-content:space-between;gap:var(--space-4);color:var(--text-faint);font:700 var(--fs-xs)/1 var(--font-mono);text-transform:uppercase}.project-topline span{color:var(--green)}.category-industry .project-topline span{color:var(--red)}.project-card h3{max-width:22ch;margin-top:var(--space-6);font-size:1.65rem}.project-summary{margin-top:var(--space-3);color:var(--green);font-weight:750}.project-description{margin-top:var(--space-4);color:var(--text-muted)}.project-meta{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--line)}.project-grid.compact .project-meta{grid-template-columns:1fr}.project-meta dt{color:var(--text-faint);font:700 var(--fs-xs)/1.4 var(--font-mono);text-transform:uppercase}.project-meta dd{margin-top:.2rem;font-size:var(--fs-sm);font-weight:700}.project-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);margin-top:auto;padding-top:var(--space-5)}.project-tags{display:flex;flex-wrap:wrap;gap:var(--space-2);min-height:30px;padding:0;list-style:none}.project-tags li{opacity:.62;transform:translateY(3px);transition:opacity var(--transition),transform var(--transition)}.project-tags .tag{gap:var(--space-2);padding:0;border:0;background:transparent}.project-tags .tag:before{content:"";width:7px;height:7px;background:var(--sensor-cyan)}.project-tags li:nth-child(2){transition-delay:35ms}.project-tags li:nth-child(3){transition-delay:70ms}:root[data-project-interactions=ready] [data-project-item].is-active .project-tags li,:root:not([data-project-interactions=ready]) [data-project-item]:is(:hover,:focus-within) .project-tags li{opacity:1;transform:translateY(0)}.project-links{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2)}.project-links a{flex:0 0 auto;font-size:var(--fs-sm);font-weight:800}.project-card-link:after{content:"";position:absolute;inset:0}.project-evidence-link{position:relative;z-index:2;display:inline-flex;min-height:32px;align-items:center}.projects-evidence{border-block:1px solid var(--line);background:var(--surface)}.projects-evidence-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1rem,4vw,3.5rem);padding-block:var(--space-6)}.projects-evidence-grid div{min-width:0;padding-block:var(--space-3)}.projects-evidence-grid strong{display:block;color:var(--green);font-size:1.75rem;line-height:1}.projects-evidence-grid span{display:block;margin-top:var(--space-2);color:var(--text-muted);font-size:var(--fs-sm);font-weight:700}.projects-evidence-grid small{display:block;margin-top:var(--space-1);color:var(--text-faint);font-size:var(--fs-xs)}.flagship-stack{display:grid;gap:var(--space-6)}.project-feature{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:var(--space-8);align-items:center;padding:var(--space-7);background:var(--surface)}.project-feature:nth-child(2n){background:color-mix(in oklab,var(--surface-muted) 62%,var(--surface))}.project-feature-visual{min-width:0}.project-feature.reverse .project-feature-visual{order:2}.project-feature-copy{min-width:0}.feature-topline{display:flex;align-items:center;gap:var(--space-3);color:var(--text-faint);font:700 var(--fs-xs)/1.3 var(--font-mono);text-transform:uppercase}.feature-topline span:first-child{color:var(--red)}.feature-topline time{margin-left:auto}.project-status{margin-top:var(--space-6);color:var(--green);font-size:var(--fs-sm);font-weight:800}.project-feature h2{max-width:19ch;margin-top:var(--space-3);font-size:2.25rem}.feature-summary{max-width:36rem;margin-top:var(--space-4);color:var(--green);font-size:var(--fs-lg);font-weight:750}.feature-description{max-width:38rem;margin-top:var(--space-3);color:var(--text-muted)}.feature-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);margin-top:var(--space-6);padding:var(--space-4);background:var(--surface-muted)}.feature-meta dt{color:var(--text-faint);font:700 var(--fs-xs)/1.4 var(--font-mono);text-transform:uppercase}.feature-meta dd{margin-top:var(--space-1);font-size:var(--fs-sm);font-weight:750}.feature-tags{margin-top:var(--space-5)}.feature-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4);margin-top:var(--space-5)}.feature-metrics div{min-width:0}.feature-metrics strong{display:block;overflow-wrap:anywhere;color:var(--text);font-size:1.3rem;line-height:1.1}.feature-metrics span{display:block;margin-top:var(--space-2);color:var(--text-faint);font-size:var(--fs-xs)}.feature-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-5);margin-top:var(--space-6)}.project-detail-link{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--space-5);min-width:190px;min-height:46px;padding:.7rem var(--space-4);border:1px solid var(--green);border-radius:var(--radius-sm);background:var(--green);color:#fff;font-size:var(--fs-sm);font-weight:850}.project-detail-link{transition:background var(--transition),border-color var(--transition),transform var(--transition)}.project-detail-link:hover,.project-detail-link:focus-visible{background:var(--green-strong);color:#fff;text-decoration:none;transform:var(--control-lift)}.project-detail-link:active{transform:scale(.97)}.evidence-link{display:inline-flex;align-items:center;min-height:44px;font-size:var(--fs-sm);font-weight:800}.project-archive{display:grid;gap:4px}.archive-row{position:relative;display:grid;grid-template-columns:64px minmax(0,1.2fr) minmax(260px,.8fr);gap:var(--space-5);padding:var(--space-6);background:var(--surface)}.archive-index{color:var(--red);font:800 var(--fs-sm)/1.4 var(--font-mono)}.archive-topline{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-3);color:var(--text-faint);font:700 var(--fs-xs)/1.3 var(--font-mono);text-transform:uppercase}.archive-topline span{color:var(--green)}.archive-main h3{margin-top:var(--space-3)}.archive-main>p{max-width:43rem;margin-top:var(--space-3);color:var(--text-muted)}.archive-detail{align-self:center;padding-left:var(--space-5)}.archive-detail>strong{font-size:var(--fs-sm)}.archive-detail ul{margin-top:var(--space-3)}.archive-detail li{color:var(--text-faint);font:650 var(--fs-xs)/1.3 var(--font-mono)}.archive-detail li:not(:last-child):after{content:" /";color:var(--line-strong)}.archive-detail a{display:inline-flex;align-items:center;min-height:36px;margin-top:var(--space-3);font-size:var(--fs-sm);font-weight:800}.case-hero{padding-block:var(--space-7) var(--space-8)}.case-back{display:inline-flex;align-items:center;min-height:44px;color:var(--text-muted);font-size:var(--fs-sm);font-weight:800}.case-kicker{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-6);color:var(--text-faint);font:750 var(--fs-xs)/1.3 var(--font-mono);text-transform:uppercase}.case-kicker span:first-child{color:var(--green)}.case-kicker span+span:before{content:"/";margin-right:var(--space-3);color:var(--line-strong)}.case-hero h1{max-width:18ch;margin-top:var(--space-4)}.case-summary{max-width:780px;margin-top:var(--space-5);color:var(--green);font-size:1.35rem;font-weight:750}.case-description{max-width:720px;margin-top:var(--space-4);color:var(--text-muted);font-size:var(--fs-lg)}.case-overview{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:var(--space-7);padding:var(--space-5);background:var(--surface-muted)}.case-overview dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5)}.case-overview dt{color:var(--text-faint);font:700 var(--fs-xs)/1.4 var(--font-mono);text-transform:uppercase}.case-overview dd{margin-top:var(--space-1);font-size:var(--fs-sm);font-weight:750}.case-tags{display:flex;flex-wrap:wrap;justify-content:flex-end;align-content:center;gap:var(--space-2)}.case-diagram{padding-block:var(--space-8)}.case-diagram .project-diagram{box-shadow:var(--shadow)}.case-diagram .diagram-canvas{min-height:520px}.case-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}.case-metrics>div{min-width:0;padding:var(--space-6);background:var(--surface)}.case-metrics strong{display:block;overflow-wrap:anywhere;color:var(--green);font-size:2rem;line-height:1}.case-metrics span{display:block;margin-top:var(--space-3);font-weight:750}.case-metrics small{display:block;margin-top:var(--space-2);color:var(--text-faint)}.case-sections{padding-block:var(--space-8)}.case-section{display:grid;grid-template-columns:150px minmax(180px,.55fr) minmax(0,1fr);gap:var(--space-6);padding-block:var(--space-7)}.case-section-index{color:var(--red);font:700 var(--fs-xs)/1.4 var(--font-mono);text-transform:uppercase}.case-section h2{max-width:13ch;font-size:1.8rem}.case-section>div{max-width:700px;color:var(--text-muted);font-size:var(--fs-lg)}.case-section ul{margin-top:var(--space-4);padding-left:1.2rem}.case-section li+li{margin-top:var(--space-2)}.case-evidence{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:var(--space-8);padding-block:var(--space-7)}.case-evidence h2{max-width:14ch;margin-top:var(--space-3)}.evidence-list{display:grid;gap:3px}.evidence-list a{display:grid;grid-template-columns:74px 1fr auto;gap:var(--space-4);align-items:center;min-height:62px;padding-inline:var(--space-3);background:var(--surface-muted);color:var(--text)}.evidence-list a:hover{background:var(--surface-muted);text-decoration:none}.evidence-list span{color:var(--text-faint);font:700 var(--fs-xs)/1.3 var(--font-mono);text-transform:uppercase}.evidence-list strong{font-size:var(--fs-sm)}.evidence-list i{color:var(--green);font-style:normal}.case-pagination{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px}.case-pagination>a{display:flex;flex-direction:column;justify-content:center;min-height:150px;padding:var(--space-5);color:var(--text)}.case-pagination>a:hover{background:var(--surface-muted);text-decoration:none}.case-pagination .next{align-items:flex-end;text-align:right}.case-pagination span{color:var(--text-faint);font:700 var(--fs-xs)/1.3 var(--font-mono);text-transform:uppercase}.case-pagination strong{max-width:28ch;margin-top:var(--space-2)}.profile-chapter-header{display:flex;align-items:end;justify-content:space-between;gap:var(--space-5);margin-bottom:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--line-strong)}.publication-actions{display:flex;flex-wrap:wrap;gap:var(--space-4);align-self:end}.publication-actions a{display:inline-flex;align-items:center;min-height:44px;font-size:var(--fs-sm);font-weight:800}.publication-list{display:grid;gap:3px;padding:0;list-style:none}.publication-item{position:relative;display:grid;grid-template-columns:60px minmax(0,1fr) auto;gap:var(--space-5);padding:var(--space-6) var(--space-5);overflow:hidden;background:var(--surface)}.publication-item:before{position:absolute;inset:0 auto 0 0;width:3px;background:var(--event-coral);content:"";transform:scaleY(0);transform-origin:top;transition:transform var(--transition)}.publication-item:hover:before,.publication-item:focus-within:before{transform:scaleY(1)}.publication-list.compact .publication-item{padding-block:var(--space-5)}.publication-index{color:var(--red);font:800 var(--fs-sm)/1.4 var(--font-mono)}.publication-authors{color:var(--text-faint);font-size:var(--fs-sm)}.publication-authors strong{color:var(--text)}.publication-body h3{max-width:780px;margin-top:var(--space-2);font-size:1.28rem;line-height:1.25}.publication-meta{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);margin-top:var(--space-3);color:var(--text-muted);font-size:var(--fs-sm)}.publication-meta strong{color:var(--green)}.publication-links{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2)}.publication-links a{min-height:32px;font-size:var(--fs-sm);font-weight:800;white-space:nowrap}.bibtex{margin-top:var(--space-3)}.bibtex summary{display:inline-flex;min-height:32px;align-items:center;color:var(--text-muted);font:700 var(--fs-xs)/1.5 var(--font-mono);cursor:pointer;transition:color var(--transition)}.bibtex summary:hover,.bibtex summary:focus-visible,.bibtex summary:active{color:var(--green)}.bibtex pre{max-width:780px;margin-top:var(--space-2);padding:var(--space-3) var(--space-4);overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-muted);font:400 var(--fs-xs)/1.6 var(--font-mono)}.bibtex-controls{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:var(--space-3);align-items:start;margin-top:var(--space-2)}.bibtex-copy{display:inline-flex;align-items:center;justify-content:center;width:6.75rem;min-height:44px;padding-inline:var(--space-3);border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-muted);font:700 var(--fs-xs)/1 var(--font-mono);cursor:pointer;transition:color var(--transition),border-color var(--transition),background var(--transition)}.bibtex-copy:hover,.bibtex-copy:focus-visible,.bibtex-copy:active{border-color:var(--green);background:var(--surface-muted);color:var(--green)}.copy-feedback{display:block;min-width:0;min-height:calc(4.2em + .75rem);padding-top:.75rem;color:var(--text-faint);font:650 var(--fs-xs)/1.4 var(--font-mono)}.copy-feedback[data-copy-state=success]{color:var(--green)}.copy-feedback[data-copy-state=failure]{color:var(--red)}.section-dark{background:#111b17;color:#d9e3dd}.section-dark h2,.section-dark h3{color:#f5f8f6}.section-dark .section-lead,.section-dark .chapter-label{color:#aab9b0}.section-dark .chapter-label span{color:#f0a295}.experience-chapter-header{margin-bottom:var(--space-6);border-top-color:#506359}.experience-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:var(--space-8)}.timeline-shell{position:relative;min-width:0;--timeline-trace-start: 0px;--timeline-trace-length: 100%;--timeline-progress: 0px}.timeline{position:relative;z-index:1;padding:0 0 0 var(--space-5);list-style:none}.timeline-trace{position:absolute;z-index:0;top:var(--timeline-trace-start);left:6px;width:2px;height:var(--timeline-trace-length);overflow:hidden;background:#506359;pointer-events:none}.timeline-trace:before{position:absolute;inset:0 0 auto;height:0;background:#76d6b0;content:"";opacity:0;transition:height .42s ease,opacity var(--transition)}[data-timeline][data-progressive=true] .timeline-trace:before{height:var(--timeline-progress);opacity:1}.timeline>li{position:relative;display:grid;grid-template-columns:150px 1fr;gap:var(--space-5);padding:var(--space-5)}.timeline>li+li{margin-top:3px}.timeline-marker{position:absolute;top:calc(var(--space-5) + .25rem);left:calc(-1 * var(--space-5) + 1px);width:12px;height:12px;border:2px solid #829288;border-radius:50%;background:#111b17;transition:border-color var(--transition),background var(--transition)}[data-timeline][data-progressive=true] .timeline>li{opacity:.68}[data-timeline][data-progressive=true] .timeline>li.is-current{background:#18251f;box-shadow:inset 2px 0 #76d6b0;opacity:1}[data-timeline][data-progressive=true] .timeline>li.is-current .timeline-marker{border-color:#76d6b0;background:#76d6b0}.timeline-time{display:flex;flex-direction:column;gap:var(--space-1);color:#9daf9f;font:650 var(--fs-xs)/1.45 var(--font-mono)}.timeline-body h3{font-size:1.18rem}.timeline-org{margin-top:var(--space-1);color:#76d6b0;font-size:var(--fs-sm);font-weight:700}.timeline-body ul{margin-top:var(--space-3);padding-left:1.1rem;color:#aab9b0;font-size:var(--fs-sm)}.timeline-body li+li{margin-top:var(--space-1)}.teaching-panel{align-self:start;padding:var(--space-6);background:#18251f}.teaching-number{display:block;margin-top:var(--space-5);color:#76d6b0;font-size:4rem;line-height:.9}.teaching-summary{margin-top:var(--space-4);color:#cad6cf}.course-list{display:grid;gap:var(--space-1);margin-top:var(--space-5);padding:0;list-style:none}.course-list li{display:grid;grid-template-columns:92px 1fr;gap:var(--space-2);padding-block:var(--space-2);color:#aab9b0;font-size:var(--fs-xs)}.course-list span{color:#76d6b0;font-family:var(--font-mono)}.student-results{margin-top:var(--space-5)}.student-results>p{color:#76d6b0;font:700 var(--fs-xs)/1 var(--font-mono);text-transform:uppercase}.student-results div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-2);margin-top:var(--space-3);font-size:var(--fs-sm)}.student-results span{color:#aab9b0}.education-row{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;margin-top:var(--space-8)}.education-row article{padding:var(--space-5);background:#18251f}.education-row time{color:#76d6b0;font:700 var(--fs-xs)/1 var(--font-mono)}.education-row h3{margin-top:var(--space-4);font-size:1.15rem}.education-row p{margin-top:var(--space-2);color:#aab9b0;font-size:var(--fs-sm)}.education-row strong{display:block;margin-top:var(--space-2);color:#f0a295;font-size:var(--fs-xs)}.education-row small{display:block;margin-top:var(--space-3);color:#829288}.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line-strong)}.capability{padding:var(--space-6);border-right:1px solid var(--line)}.capability:last-child{border-right:0}.capability h3{color:var(--green)}.capability ul{margin-top:var(--space-5);padding:0;list-style:none}.capability li{padding-block:var(--space-2);border-bottom:1px solid var(--line);color:var(--text-muted)}.personal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-6);margin-top:var(--space-8)}.personal-grid-compact{grid-template-columns:repeat(3,1fr)}.personal-grid section{min-width:0}.personal-label{padding-bottom:var(--space-3);border-bottom:3px solid var(--red);font-weight:850}.personal-grid ul{margin-top:var(--space-4);padding:0;list-style:none;color:var(--text-muted);font-size:var(--fs-sm)}.personal-grid li+li{margin-top:var(--space-3)}.interest-list{display:flex;flex-wrap:wrap;gap:var(--space-2)}.interest-list li{margin:0!important;padding:var(--space-2) var(--space-3);border:1px solid var(--line-strong);border-radius:3px}.profile-links{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-6)}.summary-experience{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:var(--space-8);align-items:start}.summary-experience .summary-position{padding-block:var(--space-5);border-block:1px solid var(--line-strong)}.summary-position time{color:var(--red);font:750 var(--fs-xs)/1.4 var(--font-mono)}.summary-position h3{margin-top:var(--space-3)}.summary-position p{margin-top:var(--space-2);color:var(--text-muted)}.summary-position ul{margin-top:var(--space-4);padding-left:1.1rem;color:var(--text-muted)}.home-narrative{overflow:clip}.home-chapter{position:relative;padding-block:var(--space-9);background:var(--bg)}.home-chapter-intro{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:var(--space-8);align-items:end;margin-bottom:var(--space-8)}.home-chapter-intro.compact{margin-bottom:var(--space-7)}.home-chapter-heading .chapter-label{margin-bottom:var(--space-5)}[data-chapter-register]:after{content:"";flex:1;border-top:1px solid currentColor;transform:scaleX(0);transform-origin:left center;transition:transform var(--motion-base) var(--ease-signal)}[data-reveal=in] [data-chapter-register]:after{transform:scaleX(1)}.home-chapter-heading .eyebrow{margin-bottom:var(--space-3)}.home-chapter-heading h2{max-width:16ch;font-family:var(--font-serif);font-size:2.35rem;font-weight:600;line-height:1}.home-chapter-intro .section-lead{justify-self:end}.home-selected{background:var(--surface)}.home-selected .project-grid.compact{grid-template-columns:minmax(0,1.14fr) minmax(0,.86fr);gap:0;align-items:start}.home-selected .project-grid.compact .project-card{min-height:330px;padding:var(--space-6) var(--space-7);border:0;border-radius:0;background:transparent}.home-selected .project-grid.compact .project-card+.project-card{margin-top:var(--space-8);padding-left:var(--space-7)}.home-selected .project-card .project-signal-rail{width:3px}.home-research{--home-research-signal: #73dfae;--home-research-event: #f27a68;--home-research-text-muted: #aebdb4;--home-research-rule: #4a5a51;--home-research-rule-muted: #2e3d35;background:#0b0f0c;color:#dce4df}.home-research h2,.home-research h3{color:#f7faf8}.home-research .chapter-label{color:var(--home-research-text-muted)}.home-research .chapter-label>:first-child,.home-research .step-number{color:var(--home-research-event)}.home-research .eyebrow,.home-research .signal-link{color:var(--home-research-signal)}.home-research .section-lead,.home-research .research-step p{color:var(--home-research-text-muted)}.home-research .research-step{background:#121a16}.home-research .research-step strong{color:var(--home-research-signal)}.home-research .sensing-readout{--sensor-cyan: #6ac5d7;background:#0f1612}.home-evidence{background:var(--bg)}.home-evidence .metrics-band{background:var(--surface)}.home-evidence-grid{display:grid;grid-template-columns:minmax(0,1.42fr) minmax(18rem,.58fr);gap:var(--space-8);align-items:start;padding-top:var(--space-8)}.home-publications{min-width:0}.home-current-role{padding-block:var(--space-5);padding-left:var(--space-5);border-block:var(--registration-rule);border-left:3px solid var(--event-coral)}.home-current-role .eyebrow{margin-bottom:var(--space-4)}.evidence-side-title{max-width:16ch;margin:0 0 var(--space-6)!important;color:var(--text)!important;font-size:var(--fs-h3);font-weight:800;line-height:1.08}.home-current-role time{display:block}.home-personal{background:var(--surface-muted)}.home-route-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)}.home-route-grid article{min-width:0;padding:var(--space-7) var(--space-7) var(--space-7) 0}.home-route-grid article+article{padding-inline:var(--space-7) 0}.route-index{color:var(--event-coral);font:750 var(--fs-xs)/1.3 var(--font-mono);letter-spacing:0;text-transform:uppercase}.home-route-grid h3{max-width:20ch;margin-top:var(--space-6);font-size:1.65rem}.home-route-grid article>p:not(.route-index){max-width:34rem;margin-top:var(--space-3);color:var(--text-muted)}.home-route-grid .signal-link{margin-top:var(--space-6)}@media(max-width:900px){.page-intro,.section-intro,.home-chapter-intro{grid-template-columns:1fr;gap:var(--space-4)}.home-chapter-intro .section-lead{justify-self:start}.home-evidence-grid{grid-template-columns:1fr;gap:var(--space-7)}.home-current-role{max-width:38rem}.research-grid{grid-template-columns:repeat(2,1fr)}.research-sequence{grid-template-columns:1fr}.research-sequence .research-step{padding-left:calc(var(--space-7) + var(--space-3))}.research-signal-trace{top:0;bottom:0;left:calc(var(--space-5) + 4px);right:auto;grid-template:repeat(4,1fr) / 2px;width:2px;height:auto;padding:var(--space-6) 0}.research-signal-trace span{border-top:0;border-left:2px solid var(--green)}[data-research-sequence][data-progressive=true] .research-signal-trace span:not(.is-active){border-left-color:var(--line-strong)}.research-evidence{grid-template-columns:1fr}.research-evidence article{border-right:0;border-bottom:1px solid var(--line)}.experience-layout{grid-template-columns:1fr}.teaching-panel{width:100%}.personal-grid{grid-template-columns:repeat(2,1fr)}.summary-experience{grid-template-columns:1fr}.project-feature{grid-template-columns:1fr;gap:var(--space-6)}.project-feature.reverse .project-feature-visual{order:initial}.archive-row{grid-template-columns:48px minmax(0,1fr)}.archive-detail{grid-column:2;padding:0;border-left:0}.case-overview{grid-template-columns:1fr}.case-tags{justify-content:flex-start}.case-section{grid-template-columns:110px minmax(180px,.45fr) minmax(0,1fr);gap:var(--space-4)}}@media(max-width:680px){.profile-chapter-header{align-items:flex-start;flex-direction:column;gap:var(--space-3)}.page-intro{padding-block:var(--space-8) var(--space-7)}.home-chapter{padding-block:var(--space-8)}.research-grid{grid-template-columns:1fr}.home-chapter-heading .chapter-label{margin-bottom:var(--space-5)}.home-chapter-intro{margin-bottom:var(--space-7)}.metrics-grid{grid-template-columns:repeat(2,1fr)}.section{padding-block:var(--space-8)}.research-context,.project-grid{grid-template-columns:1fr}.project-card,.project-grid.compact .project-card{min-height:0;padding:var(--space-5)}.home-selected .project-grid.compact{grid-template-columns:1fr}.home-selected .project-grid.compact .project-card{min-height:0;padding:var(--space-5)}.home-selected .project-grid.compact .project-card+.project-card{margin-top:0;padding-left:var(--space-5)}.home-route-grid{grid-template-columns:1fr}.home-route-grid article{padding:var(--space-6) 0}.home-route-grid article+article{padding-inline:0}.home-current-role{padding-left:var(--space-4)}.project-meta{grid-template-columns:1fr}.project-footer{align-items:flex-start;flex-direction:column}.project-links{align-items:flex-start}.projects-evidence-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-feature{padding:var(--space-5)}.project-feature h2{font-size:1.75rem}.feature-meta{grid-template-columns:1fr}.feature-metrics{grid-template-columns:1fr;gap:var(--space-3)}.feature-metrics div,.feature-metrics div+div{padding:0}.archive-row{grid-template-columns:1fr;gap:var(--space-3)}.archive-detail{grid-column:auto}.case-hero{padding-block:var(--space-5) var(--space-7)}.case-summary{font-size:var(--fs-lg)}.case-overview dl{grid-template-columns:1fr}.case-diagram{padding-block:var(--space-6)}.case-diagram .diagram-canvas{min-height:300px}.case-metrics{grid-template-columns:1fr}.case-metrics>div{padding:var(--space-5)}.case-section{grid-template-columns:1fr;gap:var(--space-3);padding-block:var(--space-6)}.case-section h2{font-size:1.55rem}.case-section>div{font-size:var(--fs-base)}.case-evidence{grid-template-columns:1fr;gap:var(--space-5)}.evidence-list a{grid-template-columns:62px 1fr auto;padding-inline:0}.case-pagination{grid-template-columns:1fr}.case-pagination>a{min-height:120px;padding-inline:0}.case-pagination>a+a{border-left:0}.publication-item{grid-template-columns:38px minmax(0,1fr);gap:var(--space-3)}.publication-links{grid-column:2;align-items:flex-start}.bibtex-controls{grid-template-columns:1fr}.bibtex-copy{width:100%}.timeline>li{grid-template-columns:1fr;gap:var(--space-3)}.education-row{grid-template-columns:1fr}.education-row article{border-right:0}.capability-grid{grid-template-columns:1fr}.capability{border-right:0;border-bottom:1px solid var(--line)}.personal-grid{grid-template-columns:1fr}}:root[data-reveal=on] [data-reveal]:not([data-reveal=in]){opacity:0;translate:0 10px}[data-reveal]{transition:opacity .48s ease,translate .48s ease;transition-delay:var(--reveal-delay, 0ms)}.project-card{transition:border-color var(--transition),background var(--transition),opacity .48s ease var(--reveal-delay, 0ms),translate .48s ease var(--reveal-delay, 0ms)}:root[data-project-interactions=ready] .project-card.is-active,:root:not([data-project-interactions=ready]) .project-card:hover,:root:not([data-project-interactions=ready]) .project-card:focus-within{border-color:var(--green);background:var(--surface-muted)}.publication-item,.archive-row{transition:background var(--transition),opacity .48s ease var(--reveal-delay, 0ms),translate .48s ease var(--reveal-delay, 0ms)}.publication-item:hover,.publication-item:focus-within,.publication-item:active{background:var(--surface-muted)}:root[data-project-interactions=ready] .archive-row.is-active,:root:not([data-project-interactions=ready]) .archive-row:hover,:root:not([data-project-interactions=ready]) .archive-row:focus-within{background:var(--surface)}.timeline>li{transition:background var(--transition),box-shadow var(--transition),opacity .48s ease var(--reveal-delay, 0ms),translate .48s ease var(--reveal-delay, 0ms)}@media(prefers-reduced-motion:reduce){[data-timeline]{--timeline-progress: 0% !important}[data-timeline] .timeline-trace:before{display:none}[data-timeline] .timeline>li{opacity:1;transition:none}[data-chapter-register]:after{transform:scaleX(1);transition:none}}.research-motif-wrap{display:none}@media(min-width:900px){.home-chapter-heading h2{font-size:3rem}.research-motif-wrap{display:block;width:clamp(360px,34vw,440px);margin:calc(-1 * var(--space-6)) 0 var(--space-7) auto}}@media(prefers-reduced-motion:reduce){:root[data-reveal=on] [data-reveal]:not([data-reveal=in]){opacity:1;translate:none}[data-research-sequence][data-progressive=true] .research-step:not(.is-active){opacity:1}.research-step,.research-step strong,.research-signal-trace span,.project-signal-rail,.project-tags li,.project-card>:not(.project-signal-rail){transition:none}[data-project-item]{--project-response-x: 0px !important}.project-tags li{opacity:1;transform:none}}
