:root{--background:#eef4fa;--header-background:#e2ebf4;--surface:#e5edf5;--panel:#ffffff;--panel-border:#dfe5eb;--text:#202020;--muted:#5b5b5b;--link:#286c9e;--line:#d3dfea;--line-soft:#dfe7ef;--font-body:"Inter","PingFang SC","Microsoft YaHei",system-ui,sans-serif;--font-heading:"Source Serif 4","Noto Serif SC","Songti SC",Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{background:var(--background)}body{margin:0;color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.65;font-optical-sizing:auto;-webkit-font-smoothing:antialiased}h1,h2{font-family:var(--font-heading);font-weight:600}.icon-heading{display:flex;align-items:flex-start;gap:.42em}.icon-heading .heading-text{min-width:0}.heading-icon{display:block;width:.88em;height:.88em;flex:0 0 auto;margin-top:.2em;color:#557a97}.home-page h2.icon-heading .heading-icon{color:#386f96}.project-page h2.icon-heading .heading-icon{margin-top:.28em}button,input,select,textarea{font:inherit}a{color:var(--link)}a:focus-visible{outline:2px solid var(--link);outline-offset:3px}.page{width:min(940px,calc(100% - 36px));margin:0 auto;padding:34px 0 48px}.page>h1{margin:0 0 40px;text-align:center;font-size:40px;line-height:1.2;font-weight:500;letter-spacing:-.025em}.page>h1 span{margin-left:14px;font-size:.8em;font-weight:600;letter-spacing:.06em}.page.home-page{width:min(1040px,calc(100% - 48px));padding-top:40px}.content-panel{min-width:0;padding:44px 48px;background:var(--panel);border:1px solid var(--panel-border);border-radius:32px}.content-panel+.content-panel{margin-top:28px}.home-page .simple-section>h2{margin-bottom:28px}.home-page .project:last-child{padding-bottom:0}.home-page section[id]{scroll-margin-top:108px}.site-header{position:sticky;top:0;z-index:20;background:var(--header-background);border-bottom:1px solid var(--line)}.site-header-inner{width:min(1240px,calc(100% - 64px));min-height:82px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.site-brand{margin:0;font-family:var(--font-heading);font-size:29px;font-weight:500;line-height:1.3;letter-spacing:-.025em;white-space:nowrap}.site-brand a{color:var(--text);text-decoration:none}.site-brand span{margin-left:7px;font-size:.78em;font-weight:600;letter-spacing:.02em}.section-nav{display:flex;align-items:center;gap:10px;font-family:var(--font-body);font-size:16px;font-weight:500}.section-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:9px 18px;border:1px solid #c7d1db;border-radius:10px;background:#f8fafc;color:#49535d;line-height:1.4;text-decoration:none;white-space:nowrap;transition:background-color .14s ease,border-color .14s ease,color .14s ease}.nav-media-suffix{white-space:pre}.section-nav a:focus-visible,.section-nav a:hover{color:var(--text);background:#ffffff;border-color:#94a4b5}.section-nav a[aria-current=location]{background:#1b1b1b;color:#ffffff;border-color:#1b1b1b}@media (max-width:820px){.site-header-inner{width:calc(100% - 36px)}.section-nav{gap:8px;font-size:14px}.section-nav a{padding-inline:12px}.nav-media-suffix{display:none}.site-brand{font-size:26px}.content-panel{padding:32px 28px;border-radius:26px}}@media (max-width:680px){.site-header-inner{flex-direction:column;align-items:stretch;gap:12px;padding-block:14px}.site-brand{font-size:25px}.section-nav{justify-content:space-between;gap:6px;font-size:14px}.section-nav a{flex:1 1;min-height:44px;padding:9px}.page.home-page{width:calc(100% - 24px);padding-top:24px}.content-panel{padding:28px 20px;border-radius:22px}.content-panel+.content-panel{margin-top:20px}.home-page .simple-section>h2{margin-bottom:24px}.home-page section[id]{scroll-margin-top:148px}}@media (max-width:360px){.section-nav{font-size:12px}.section-nav a{padding-inline:7px}}.bio-text h2{margin:0 0 17px;font-size:29px;line-height:1.2;letter-spacing:-.02em}.posts-intro{margin:0 0 10px}.project-material-preview{grid-column:1/-1}.project-material-preview:empty{display:none}.material-preview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;text-decoration:none}.material-preview img{width:100%;height:120px;object-fit:contain;background:#fafafa;border:1px solid #eee}.material-preview span{grid-column:1/-1;font-size:14px}.gallery-index{display:flex;flex-wrap:wrap;gap:10px 20px;padding:22px 0;font-size:14px}.material-group{margin:12px 0 40px;padding-top:12px;border-top:1px solid var(--line);scroll-margin-top:20px}.material-group h3{margin:12px 0 20px;font-size:19px}.material-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 18px}.material-item{min-width:0;margin:0;scroll-margin-top:20px}.material-item img{display:block;width:100%;height:210px;object-fit:contain;padding:6px;border:1px solid #eee;background:#fff}.material-item video{display:block;width:100%;height:210px;background:#f5f5f5}.material-item figcaption{margin-top:8px;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.material-item figcaption span{display:block;color:var(--muted)}.material-id{font-family:var(--font-body);font-weight:600}.material-file{display:flex;align-items:center;justify-content:center;min-height:210px;padding:16px;border:1px solid var(--line)}.posts-preview-list{display:grid;gap:28px;margin-top:24px}.post-preview h3{margin:0 0 14px;font-size:19px}.post-preview-images{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.post-preview-images img{width:100%;height:160px;object-fit:contain;border:1px solid #eee}.gallery-page{max-width:1040px}.bio{display:grid;grid-template-columns:215px 1fr;gap:38px;align-items:start}.bio aside{text-align:center}.portrait{width:215px;height:auto;display:block;border-radius:8px}.profile-links{margin-top:14px;display:flex;flex-wrap:wrap;justify-content:center}.profile-links a{display:inline-flex;align-items:center;gap:5px;padding:0 7px;line-height:1.35}.profile-links .heading-icon{width:16px;height:16px;margin-top:0}.profile-links a+a{border-left:1px solid var(--text)}.bio-text p{margin:0 0 15px}.bio-text strong{font-weight:600}.contact-line{display:flex;align-items:center;gap:9px}.contact-line .heading-icon{width:20px;height:20px;margin-top:0}.wechat-contact{position:relative;width:fit-content;max-width:100%;margin:0 0 15px}.wechat-trigger{padding:0;border:0;background:none;color:inherit;line-height:inherit;text-align:left;cursor:pointer}.wechat-trigger>span{-webkit-text-decoration:underline dotted #a9bdce;text-decoration:underline dotted #a9bdce;text-underline-offset:4px}.wechat-trigger:focus-visible,.wechat-trigger:hover{color:var(--link)}.wechat-trigger:focus-visible{outline:2px solid var(--link);outline-offset:5px;border-radius:3px}.wechat-popover{position:absolute;z-index:10;top:calc(100% + 10px);left:29px;width:min(220px,calc(100vw - 76px));padding:10px;border:1px solid var(--panel-border);border-radius:12px;background:#fff;box-shadow:0 8px 28px rgb(37 66 90/14%)}.wechat-popover[hidden]{display:none}.wechat-popover:before{content:"";position:absolute;top:-11px;left:0;right:0;height:11px}.wechat-popover a,.wechat-popover img{display:block;width:100%}.wechat-popover img{height:auto}.profile-role{margin:14px 0 0;color:var(--muted);font-size:14px}.journey{grid-column:1/-1;min-width:0}.journey h3{margin:0 0 22px;font-size:18px;font-weight:600}.journey .icon-heading{align-items:center;gap:9px}.journey .heading-icon{width:24px;height:24px;margin-top:0}.timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:0;padding:0}.timeline-item{min-width:0;text-align:center}.timeline-date{margin:0;padding:0 4px 15px;font-size:14px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.timeline-detail{position:relative;border-top:1px solid var(--line);padding:23px 10px 0}.timeline-detail:before{content:"";position:absolute;width:7px;height:7px;top:-4px;left:calc(50% - 3.5px);border-radius:50%;background:var(--link)}.timeline-logo{height:78px;display:flex;align-items:center;justify-content:center;margin-bottom:14px}.timeline-logo img{display:block;width:100%;max-width:148px;height:48px;object-fit:contain}.timeline-logo-bib img{width:84px;max-width:84px;height:auto;max-height:78px}.timeline-detail h4{font-size:14px;line-height:1.4;margin:0 0 8px}.timeline-detail h4 a{text-decoration:none}.timeline-detail h4 a:hover{text-decoration:underline}.timeline-detail p{font-size:14px;line-height:1.5;margin:0;color:var(--muted)}.education-stages{display:grid;gap:12px;margin:12px 0 0;font-size:14px;line-height:1.5}.education-stages dt{font-weight:600}.education-stages dd{margin:2px 0 0;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.education-stages dd span{display:block}.timeline-logo-note{display:block;font-size:12px;color:var(--muted);margin-top:7px}@media (max-width:900px){.timeline{grid-template-columns:minmax(0,1fr)}.timeline-item{position:relative;text-align:left;padding:0 0 26px 23px;margin-left:4px;border-left:1px solid var(--line)}.timeline-item:last-child{padding-bottom:0}.timeline-item:before{content:"";position:absolute;width:7px;height:7px;left:-4px;top:7px;border-radius:50%;background:var(--link)}.timeline-date{padding:0;margin-bottom:10px}.timeline-detail{border:0;min-height:78px;padding:0 128px 0 0}.timeline-detail:before{display:none}.timeline-logo{position:absolute;top:0;right:0;width:110px;margin:0}}@media (max-width:400px){.timeline-detail{padding-right:0}.timeline-logo{position:static;justify-content:flex-start;margin-bottom:10px}}.project-thumbnail{align-self:center}.project-thumbnail img{display:block;width:100%;max-height:185px;object-fit:contain}.animated-project-cover>a{display:block}.animated-project-cover img,.animated-project-cover video{display:block;width:100%;height:185px;object-fit:contain}.project-preview .project-thumbnail{border-radius:10px;overflow:hidden}.project-preview .project-thumbnail img,.project-preview .project-thumbnail video{border-radius:0;object-position:center}.project-preview .project-thumbnail{position:relative;aspect-ratio:4/3}.project-preview .animated-project-cover>a{position:absolute;inset:0}.project-preview .project-thumbnail img,.project-preview .project-thumbnail video{height:100%;max-height:none;object-fit:cover}.project-text-only .project-body{grid-column:1/-1}.project-page{max-width:860px;--media-radius:8px}.project-page figure img,.project-page figure video{border-radius:var(--media-radius)}.project-page .grasping-motion>div,.project-page figure>a{overflow:hidden;border-radius:var(--media-radius);background:#fff}.project-page :is(.project-figure,.evidence-figure,.fsae-technical)>a{display:block}.formula-page{max-width:940px;line-height:1.85}.formula-page>section{margin-top:40px;padding-top:28px;border-top:1px solid var(--line)}.formula-page>#overview{border-top:0;padding-top:0}.formula-page h2{line-height:1.5}.formula-page section>p{max-width:54em}.fsae-nav{gap:8px 22px}.fsae-roles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:25px 0}.fsae-roles dt{font-weight:600}.fsae-roles dd{margin:4px 0 0;color:var(--muted);font-size:14px}.fsae-driving,.fsae-photo,.fsae-technical{min-width:0;margin:24px 0}.fsae-photo-window{position:relative;display:block;width:100%;overflow:hidden}.fsae-photo-window img{max-height:none}.fsae-photo-window img,.fsae-technical img{display:block;width:100%;height:auto}.fsae-design-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:22px 0}.fsae-design-grid .fsae-technical{margin:0}.fsae-design-grid .fsae-technical a{display:block;aspect-ratio:4/3}.fsae-design-grid .fsae-technical img{width:100%;height:100%;object-fit:contain}.fsae-simulation{max-width:460px;margin:24px auto}.fsae-simulation video{display:block;width:100%;height:auto;aspect-ratio:832/898}.fsae-simulation figcaption{margin-top:9px;color:var(--muted);font-size:14px;line-height:1.65}.fsae-wheel-cad{max-width:620px;margin:24px auto}.fsae-load-record{margin:20px 0 30px}.fsae-load-record summary{cursor:pointer;color:var(--link);font-size:14px}.fsae-comparison-scroll{overflow-x:auto}.fsae-comparison{width:100%;border-collapse:collapse;font-size:15px;text-align:left}.fsae-comparison caption{text-align:left;margin-bottom:10px;font-weight:600}.fsae-comparison td,.fsae-comparison th{padding:12px 10px;border-bottom:1px solid var(--line)}.fsae-comparison thead{background:var(--surface)}.fsae-comparison td{white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fsae-driving figcaption,.fsae-photo figcaption,.fsae-technical figcaption{margin-top:9px;color:var(--muted);font-size:14px;line-height:1.65}.fsae-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:24px 0;align-items:start}.fsae-photo-grid .fsae-photo{margin:0}.fsae-process{display:flex;flex-wrap:wrap;gap:10px 28px;padding:16px 0;margin:24px 0;list-style:none;border-top:1px solid var(--line);border-bottom:1px solid var(--line);counter-reset:fsae-step}.fsae-process li{counter-increment:fsae-step}.fsae-process li:before{content:counter(fsae-step,decimal-leading-zero) " ";color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.formula-page .fsae-source-note{color:var(--muted);font-size:14px}.fsae-driving{max-width:540px;margin:28px auto}.fsae-driving img,.fsae-driving video{display:block;width:100%;height:auto}.fsae-checklist,.fsae-reading ul{padding-left:22px}.fsae-checklist li,.fsae-reading li{margin:9px 0}.fsae-seasons{max-width:780px;margin:20px auto}.formula-page .fsae-reflection{padding-left:20px;margin-top:32px;border-left:2px solid var(--line)}@media (max-width:680px){.fsae-design-grid,.fsae-photo-grid,.fsae-roles{grid-template-columns:minmax(0,1fr);gap:20px}.formula-page>section{margin-top:30px;padding-top:24px}.fsae-nav{gap:8px 16px}}.evidence-nav{display:flex;flex-wrap:wrap;gap:8px 20px;padding:20px 0;border-bottom:1px solid var(--line);font-size:14px}.project-evidence{margin-top:36px}.evidence-section{border-top:1px solid var(--line);padding-top:26px;margin-top:34px}.evidence-intro{max-width:760px;line-height:1.6}.evidence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 28px;margin-top:24px;align-items:start}.evidence-grid:empty{display:none}.evidence-figure{margin:0;min-width:0;scroll-margin-top:24px}.evidence-figure img{display:block;width:100%;height:auto;max-height:450px;object-fit:contain}.evidence-grid .evidence-figure:not(.evidence-wide)>a{aspect-ratio:4/3}.evidence-grid .evidence-figure:not(.evidence-wide) img{height:100%;max-height:none}.evidence-wide{grid-column:1/-1;max-width:760px;width:100%;margin:0 auto}.evidence-wide img{max-height:560px}.evidence-figure figcaption,.evidence-video figcaption{margin-top:12px;font-size:14px;line-height:1.5}.evidence-source{display:block;color:var(--muted);font-size:12px;margin-top:4px}.evidence-video{width:100%;max-width:680px;margin:24px auto 0}.evidence-video video{display:block;width:100%;max-height:480px;background:#f5f5f5}.evidence-download{font-size:14px;padding-top:10px}.project-results{border-top:1px solid var(--line);padding-top:26px}.project-contributions .contribution{display:grid;grid-template-columns:185px minmax(0,1fr);gap:20px;margin:18px 0}.project-contributions .contribution h3{margin:0;font-size:16px;line-height:1.55}.project-contributions .contribution p{margin:0;line-height:1.6}.back-nav{margin-bottom:35px;font-size:14px}.project-header{padding-bottom:25px;border-bottom:1px solid var(--line)}.project-header h1{margin:10px 0 20px;font-size:clamp(27px,4vw,36px);line-height:1.45;font-weight:600}.project-header p{margin:9px 0}.project-header .project-category{color:var(--muted);font-size:14px}.project-header .funding{margin-top:18px;font-size:14px}.project-page>section{margin-top:32px}.project-page h2{margin:0 0 16px;font-size:23px;font-weight:600}.project-page h3{margin:20px 0 6px;font-size:17px}.project-page section p{margin:8px 0 16px}.honeybee-page{max-width:940px;line-height:1.85}.honeybee-page>section{margin-top:36px;padding-top:26px;border-top:1px solid var(--line)}.honeybee-page>#overview{border-top:0;padding-top:0}.honeybee-page h2{line-height:1.5}.honeybee-figure{min-width:0;max-width:460px;margin:24px auto}.honeybee-image{display:block}.honeybee-image img{display:block;width:100%;height:auto}.honeybee-wide{max-width:820px}.honeybee-design-list{padding-left:24px}.honeybee-design-list li{margin:10px 0}.honeybee-table-scroll{overflow-x:auto;margin:24px 0}.honeybee-validation-table{width:100%;border-collapse:collapse;text-align:left;font-size:15px;line-height:1.7}.honeybee-validation-table td,.honeybee-validation-table th{padding:13px 12px;border-bottom:1px solid var(--line);vertical-align:top}.honeybee-validation-table thead{background:var(--surface)}.honeybee-validation-table th[scope=row]{width:18%;min-width:100px}.honeybee-figure figcaption,.honeybee-video figcaption{margin-top:10px;font-size:14px;line-height:1.65;color:var(--muted)}.honeybee-video{max-width:460px;margin:24px auto}.honeybee-video video{display:block;width:100%;height:auto}.honeybee-figure-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin:24px 0}.honeybee-figure-grid .honeybee-figure{margin:0}.honeybee-figure-grid .honeybee-image{aspect-ratio:4/3;display:flex;align-items:center}.honeybee-figure-grid .honeybee-image img{width:100%;height:100%;object-fit:contain}.honeybee-page .honeybee-note{font-size:14px;color:var(--muted)}.honeybee-links{display:flex;flex-wrap:wrap;gap:10px 24px}.honeybee-references ol{padding-left:24px}.honeybee-references li{margin:14px 0;overflow-wrap:anywhere}.honeybee-references li>span{color:var(--muted);font-size:14px}.grasping-page{max-width:900px;line-height:1.8}.grasping-page>section{margin-top:32px;padding-top:24px;border-top:1px solid var(--line)}.grasping-page h2{line-height:1.5}.grasping-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:24px 0}.grasping-figure{margin:0;min-width:0}.grasping-figure>a,.grasping-motion>div{display:flex;width:100%;aspect-ratio:4/3;align-items:center;justify-content:center}.grasping-figure img,.grasping-motion video{width:100%;height:100%;object-fit:contain}.grasping-figure img{display:block}.grasping-figure figcaption{margin-top:10px;color:var(--muted);font-size:14px;line-height:1.6}.grasping-wide{max-width:760px;margin:26px auto}.grasping-wide>a{aspect-ratio:auto}.grasping-wide img{height:auto}.grasping-anatomy{max-width:520px;margin:26px auto}@media (max-width:680px){.grasping-grid{grid-template-columns:minmax(0,1fr)}}.origami-page{max-width:900px;line-height:1.8}.origami-page>section{margin-top:32px;padding-top:24px;border-top:1px solid var(--line)}.origami-page>#overview{border-top:0;padding-top:0}.origami-page h2{line-height:1.5}.origami-dofs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}.origami-dofs dt{font-weight:600}.origami-dofs dd{margin:4px 0 0;color:var(--muted);font-size:14px}.origami-figure{margin:0;min-width:0}.origami-frame{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:4/3}.origami-frame img{display:block;width:100%;height:100%;object-fit:contain}.origami-figure-wide{max-width:760px;margin:24px auto}.origami-figure-wide .origami-frame{aspect-ratio:auto}.origami-figure-wide img{height:auto}.origami-animation figcaption,.origami-figure figcaption{margin-top:10px;color:var(--muted);font-size:14px;line-height:1.6}.origami-hero{max-width:560px;margin:26px auto}.origami-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:24px 0}.origami-animation{max-width:400px;margin:28px auto 0}.origami-animation img,.origami-animation video,.waist-motion video{display:block;width:100%;height:auto}.origami-cups{max-width:440px;margin:24px auto}.origami-work{padding-left:22px}.origami-work li{margin:10px 0}.origami-supplement{margin:24px 0}.origami-supplement summary{color:var(--link);cursor:pointer}.origami-source-note{color:var(--muted);font-size:14px}@media (max-width:680px){.origami-dofs,.origami-grid{grid-template-columns:minmax(0,1fr)}.origami-dofs{gap:12px}.origami-page>section{margin-top:28px;padding-top:22px}.honeybee-figure-grid{grid-template-columns:minmax(0,1fr)}.honeybee-page>section{margin-top:28px;padding-top:24px}}.project-lead-figure{max-width:650px;margin:26px auto}.waist-page{line-height:1.8}.waist-page>section{border-top:1px solid var(--line);padding-top:26px}.waist-figure{min-width:0;margin:24px 0}.waist-figure a{display:block}.waist-figure img{display:block;width:100%;height:auto}.waist-figure figcaption{margin-top:10px;font-size:14px;color:var(--muted)}.waist-figure-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.waist-figure-grid .waist-figure a{aspect-ratio:4/3}.waist-figure-grid .waist-figure img{height:100%;object-fit:contain}.waist-reference-grid{display:grid;grid-template-columns:1.225641fr .88977fr;gap:24px;margin:24px 0}.waist-reference-grid .waist-figure{margin:0}.waist-reference-grid .waist-figure a{display:flex;align-items:center;justify-content:center}.waist-reference-grid .waist-figure:first-child a{aspect-ratio:956/780}.waist-reference-grid .waist-figure:last-child a{aspect-ratio:1122/1261}.waist-reference-grid .waist-figure img{width:100%;height:100%;object-fit:contain}.waist-analysis-list{margin:22px 0}.waist-analysis-list>div{display:grid;grid-template-columns:160px minmax(0,1fr);gap:22px;margin:20px 0}.waist-analysis-list dt{font-weight:600}.waist-analysis-list dd{margin:0}.waist-equation{padding:16px 20px;background:var(--surface);text-align:center;overflow-x:auto}.waist-equation span{display:inline-block;padding:0 14px;color:var(--muted)}.waist-table{width:100%;border-collapse:collapse;text-align:left}.waist-table td,.waist-table th{padding:13px 16px;border-bottom:1px solid var(--line);vertical-align:top}.waist-table th:first-child{width:170px}.waist-table thead{background:var(--surface)}.project-preview#parallel-waist .project-thumbnail img{object-fit:contain;background:#ffffff}@media (max-width:680px){.waist-figure-grid{gap:0}.waist-analysis-list>div,.waist-figure-grid,.waist-reference-grid{grid-template-columns:minmax(0,1fr)}.waist-analysis-list>div{gap:5px}.waist-table td,.waist-table th{padding:10px 8px}.waist-table th:first-child{width:100px}}.project-lead-figure img{max-height:400px}.project-page .single-figure{grid-template-columns:minmax(0,1fr)}.project-page .single-figure img{max-height:none}.project-video{max-width:650px;margin:28px auto 0}.related-projects{padding-left:20px}.related-projects li{margin:8px 0}.manuscript-entry{margin-top:30px}.manuscript-entry h3{font-size:18px;margin:0}.manuscript-entry p{margin:7px 0}article[id],section[id]{scroll-margin-top:24px}.project-index{display:flex;flex-wrap:wrap;gap:8px 20px;margin-bottom:30px;font-size:14px}.project{display:grid;grid-template-columns:270px minmax(0,1fr);column-gap:30px;row-gap:14px;padding:28px 0}.project+.project{border-top:1px solid var(--line)}.project:first-child{padding-top:0}.project-figure{margin:0;min-width:0}.project-figure img{display:block;width:100%;height:auto;max-height:260px;object-fit:contain}.media-description,.project-figure figcaption{margin:9px 0 0;color:var(--muted);font-size:14px;line-height:1.45}.project-figure video{display:block;width:100%;max-height:340px;background:#f4f4f4}.project-body{min-width:0}.compact-projects h3,.project-body h3{margin:0 0 7px;font-family:var(--font-heading);font-size:22px;line-height:1.35;font-weight:600}.compact-projects p,.project-body p{margin:9px 0}.project-body .project-category{margin:0 0 7px}.meta,.project-body .project-category{color:var(--muted);font-size:14px}.project-body h4{font-size:16px;margin:12px 0 4px}.project-body ul{padding-left:20px;margin:0}.project-body li{margin:5px 0}.project-links{font-size:14px}.project-details{grid-column:1/-1}.project-details summary{width:fit-content;cursor:pointer;color:var(--link);font-size:14px;padding:5px 0}.project-details summary:focus-visible{outline:2px solid var(--link);outline-offset:4px}.project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin-top:18px}.project-gallery img{max-height:350px}.media-download{margin:18px 0 0;font-size:14px}.compact-projects{display:grid;gap:22px}.compact-projects h3{font-size:18px}hr{height:1px;margin:31px 0 20px;border:0;background:var(--line)}.simple-section h2{margin:0 0 17px;font-size:29px;line-height:1.2;letter-spacing:-.02em}.plain-list{margin:0;padding-left:25px}.plain-list li{margin:7px 0}.news-list li{padding-left:4px}.entry-list{display:flex;flex-direction:column;gap:34px}.entry{display:grid;grid-template-columns:220px 1fr;gap:24px;align-items:start}.entry-image{width:220px;min-height:145px;display:flex;align-items:center;justify-content:center;background:#f4f4f4;border:1px solid #e2e2e2}.entry-image img{width:100%;max-height:172px;display:block;object-fit:contain}.entry-body h3{margin:-3px 0 4px;color:var(--link);font-family:var(--font-heading);font-size:21px;font-weight:600;line-height:1.4}.entry-body p{margin:7px 0;font-size:16px}.entry-body .meta,.entry-body .tags,.small-note{color:var(--muted)}.entry-body .meta{margin-top:0}.entry-body .tags{margin-top:10px;font-size:13px;font-style:italic}.publication .entry-image img{max-height:155px}.publication .venue{font-weight:700}.publication .entry-body h3{color:var(--text)}.publication-title-link{color:inherit;text-decoration:none}.publication-title-link:focus-visible,.publication-title-link:hover{color:var(--link);text-decoration:underline;text-underline-offset:3px}.publication-link-hint{display:inline-block;margin-left:4px;color:var(--link);font-family:var(--font-body);font-size:13px;font-weight:500;white-space:nowrap;text-decoration:underline;text-underline-offset:3px}.publication{display:grid;grid-template-columns:220px minmax(0,1fr)}.publication-cover{display:flex;width:100%;min-width:0;align-items:center;justify-content:center;align-self:center}.publication-cover img{display:block;width:100%;height:auto;object-fit:contain}.publication .entry-body .venue,.small-note{font-size:14px}.small-note{margin:22px 0 0}.dated-list{margin:0;padding:0;list-style:none}.dated-list li{margin:0;padding:12px 0;display:grid;grid-template-columns:145px 1fr;gap:20px;border-top:1px solid var(--line-soft)}.dated-list li:last-child{border-bottom:1px solid var(--line-soft)}.dated-list li>span{color:var(--muted);font-size:14px}.subheading{margin-top:28px!important}footer{margin-top:38px;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:12px;text-align:center}@media (max-width:680px){.evidence-grid{grid-template-columns:minmax(0,1fr);gap:28px}.evidence-nav{gap:10px 16px}.project-contributions .contribution{grid-template-columns:minmax(0,1fr);gap:6px}.material-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.material-item img,.material-item video{height:165px}.material-preview,.post-preview-images{grid-template-columns:repeat(2,minmax(0,1fr))}.page{padding-top:25px}.page>h1{margin-bottom:30px;font-size:34px}.bio{grid-template-columns:1fr;gap:25px}.bio aside{margin:0 auto}.bio aside,.portrait{width:220px}.entry{grid-template-columns:1fr;gap:14px}.project{grid-template-columns:minmax(0,1fr);gap:18px}.project>.project-figure{max-width:420px;width:100%}.project-gallery{grid-template-columns:minmax(0,1fr)}.entry-image{width:100%}.entry-image img{max-height:260px}.dated-list li{grid-template-columns:1fr;gap:3px}}@media (max-width:400px){.material-grid{grid-template-columns:minmax(0,1fr)}.material-item img{height:230px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.section-nav a{transition:none}}