/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--ink:#141b1f;--ink-soft:#202a2f;--paper:#f2f0eb;--paper-soft:#e7e5df;--white:#faf9f6;--accent:#a9b8a8;--accent-dark:#647465;--muted:#6d7578;--line:#cbd0cf;--dark-line:#435056;--pad:clamp(1.25rem, 4.5vw, 4.5rem)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5rem}body{background:var(--paper);color:var(--ink);font-family:var(--font-geist-sans), "PingFang SC", "Microsoft YaHei", Arial, sans-serif;text-rendering:optimizelegibility;margin:0}a{color:inherit;text-decoration:none}button{font:inherit}.site{min-width:320px;overflow:hidden}.skip{z-index:100;background:var(--paper);color:var(--ink);padding:.75rem 1rem;font-weight:700;position:fixed;top:-5rem;left:1rem}.skip:focus{top:1rem}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}header{z-index:30;min-height:5rem;padding:0 var(--pad);color:var(--paper);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#141b1fb8;border-bottom:1px solid #ffffff2b;grid-template-columns:minmax(14rem,1fr) auto auto;align-items:center;gap:clamp(1.25rem,2.5vw,3rem);display:grid;position:absolute;inset:0 0 auto}.brand{align-items:center;gap:.7rem;width:max-content;display:inline-flex}.brand>span:last-child{gap:.13rem;display:grid}.brand b{letter-spacing:.13em;font-size:.67rem;line-height:1}.brand small{color:#b9c1c1;font:520 .5rem/1 var(--font-geist-mono), monospace;letter-spacing:.09em}.brand-logo{object-fit:contain;flex:none;width:2.8rem;height:2.45rem}nav{color:#d2d7d8;gap:clamp(.9rem,1.55vw,1.7rem);font-size:.72rem;display:flex}nav a{padding:.4rem 0;position:relative}nav a:after{content:"";background:var(--accent);height:1px;transition:right .2s;position:absolute;bottom:0;left:0;right:100%}nav a:hover:after{right:0}.langs{color:#929d9f;font:600 .66rem var(--font-geist-mono), monospace;align-items:center;gap:.4rem;display:flex}.langs button{color:inherit;cursor:pointer;background:0 0;border:0;padding:.4rem 0}.langs .active{color:var(--paper)}.menu{background:0 0;border:1px solid #ffffff4a;width:2.3rem;height:2.3rem;display:none}.menu i{background:var(--paper);width:.95rem;height:1px;margin:.28rem auto;display:block}.hero{isolation:isolate;min-height:min(54rem,100svh);color:var(--paper);background:var(--ink);grid-template-rows:1fr auto;grid-template-columns:minmax(0,1fr) minmax(40rem,.92fr);display:grid;position:relative;overflow:hidden}.hero-background{z-index:-2;filter:saturate(.65)contrast(.95);background:url(/lab/solar-cell-printing.png) 50% 58%/cover no-repeat;position:absolute;inset:0;transform:scale(1.03)}.hero:after{content:"";z-index:-1;background:linear-gradient(90deg,#141b1ff6 0 48%,#141b1fcf 72%,#141b1f87),linear-gradient(0deg,#141b1f 0,#0000 32%);position:absolute;inset:0}.hero-copy{padding:clamp(8.5rem, 16vh, 11rem) var(--pad) 4.5rem;align-self:center}.eyebrow{color:var(--accent);font:650 .6rem/1.45 var(--font-geist-mono), monospace;letter-spacing:.16em;text-transform:uppercase;margin:0 0 1.3rem}h1{letter-spacing:-.055em;text-wrap:balance;max-width:46rem;margin:0;font-size:clamp(3rem,5.4vw,5.6rem);font-weight:560;line-height:.98}.zh h1{letter-spacing:-.045em;max-width:40rem;line-height:1.08}.lead{color:#c3cacc;max-width:39rem;margin:1.6rem 0 0;font-size:clamp(.98rem,1.2vw,1.12rem);line-height:1.7}.zh .lead{line-height:1.9}.actions{flex-wrap:wrap;align-items:center;gap:1.45rem;margin-top:2rem;display:flex}.button{min-height:3.1rem;color:var(--paper);border:1px solid #dce2e3a3;justify-content:center;align-items:center;padding:.75rem 1.35rem;font-size:.79rem;font-weight:680;transition:background .2s,color .2s;display:inline-flex}.button:hover{background:var(--paper);color:var(--ink)}.text-link{border-bottom:1px solid #879397;align-items:center;gap:.65rem;width:max-content;padding-bottom:.3rem;font-size:.74rem;font-weight:680;display:inline-flex}.text-link span,.activity b span,.contact-details a span,footer a span{transition:transform .2s}.text-link:hover span,.activity:hover b span,.contact-details a:hover span,footer a:hover span{transform:translate(.15rem,-.15rem)}.light-link{color:var(--paper);border-color:#aeb9bc}.hero-profile{width:min(50rem, calc(100% - var(--pad)));min-height:25rem;margin:6.5rem var(--pad) 3rem 0;color:var(--ink);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#edf0edeb;place-self:center end;position:relative;overflow:hidden;box-shadow:0 1.5rem 4rem #0004}.hero-slide{grid-template-columns:minmax(0,1.7fr) minmax(0,.95fr);min-height:25rem;animation:.58s cubic-bezier(.22,.8,.3,1) both hero-reveal;display:grid}.hero-profile-roadmap .hero-slide{grid-template-columns:minmax(0,1.7fr) minmax(0,.95fr)}.hero-profile-image{width:100%;min-width:0;min-height:25rem;position:relative;overflow:hidden}.hero-profile-image.research-figure{background:#fff;justify-content:center;align-items:center;padding:.7rem;display:flex}.localized-map{background:#fff;justify-content:center;align-items:center;width:100%;height:100%;margin:0;display:flex;overflow:hidden}.localized-map-canvas{aspect-ratio:384/303;flex:0 auto;width:100%;max-width:30rem;position:relative}.localized-map img{object-fit:contain;filter:none;width:100%;height:100%;display:block;position:static}.map-translations{pointer-events:none;position:absolute;inset:0}.map-translations span{z-index:2;color:#111;background:#fff;justify-content:center;align-items:center;font-size:clamp(.58rem,.78vw,.74rem);font-weight:560;line-height:1.1;display:flex;position:absolute}.map-label-x{height:12%;bottom:0;left:10%;right:12%}.map-label-y{writing-mode:vertical-rl;width:11.5%;top:0;bottom:10%;left:0}.map-label-r{writing-mode:vertical-rl;width:11.5%;top:0;bottom:10%;right:0}.seed-comparison{grid-template-columns:1.08fr .92fr;gap:.6rem;width:100%;height:100%;display:grid}.seed-panel{background:#fff;justify-content:center;align-items:center;min-width:0;height:100%;margin:0;display:flex;position:relative;overflow:hidden}.seed-panel img{object-fit:contain;filter:none;width:100%;max-width:100%;height:100%;max-height:23.5rem;position:static}.seed-translations{color:#111;text-align:center;background:#fff;grid-template-columns:56% 44%;align-items:center;height:21%;font-size:clamp(.66rem,.9vw,.84rem);font-weight:700;display:grid;position:absolute;inset:0 0 auto}.seed-translations span{position:relative}.seed-translations span:after{content:"↓";font-size:.9rem;font-weight:500;position:absolute;top:1.1rem;left:50%;transform:translate(-50%)}.roadmap-chart{background:#fff;justify-content:center;align-items:center;width:100%;margin:0;display:flex}.roadmap-chart svg{width:100%;max-width:100%;height:auto;max-height:23.5rem;font-family:var(--font-geist-sans), "PingFang SC", "Microsoft YaHei", Arial, sans-serif;display:block}.hero-profile-copy{flex-direction:column;justify-content:center;align-self:stretch;min-width:0;padding:1.9rem 1.55rem 4.4rem;display:flex}.hero-profile-copy small{color:var(--accent-dark);font:650 .56rem var(--font-geist-mono), monospace;letter-spacing:.1em;text-transform:uppercase}.hero-profile-copy h2{letter-spacing:-.04em;overflow-wrap:anywhere;max-width:100%;margin:.8rem 0 .72rem;font-size:clamp(1.38rem,1.65vw,1.95rem);font-weight:590;line-height:1.08}.hero-profile-copy p{color:#596568;overflow-wrap:anywhere;max-width:100%;margin:0;font-size:.77rem;line-height:1.62}.hero-profile-controls{z-index:2;gap:.42rem;display:flex;position:absolute;bottom:1rem;right:1.5rem}.hero-profile-controls button{color:#7a8582;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #9da6a4;width:2rem;padding:.25rem 0 .42rem;transition:width .25s,border-color .25s,color .25s}.hero-profile-controls button.active{width:3.15rem;color:var(--ink);border-color:var(--ink)}.hero-profile-controls span{font:650 .54rem var(--font-geist-mono), monospace;letter-spacing:.06em}@keyframes hero-reveal{0%{opacity:0;transform:translateY(.65rem)scale(.992)}to{opacity:1;transform:none}}.topic-strip{outline-offset:-2px;background:#11171af2;border-top:1px solid #ffffff2c;grid-column:1/-1;min-width:0;min-height:7.8rem;overflow:hidden}.topic-track{will-change:transform;width:max-content;min-height:7.8rem;animation:42s linear infinite topic-scroll;display:flex}.topic-set{display:flex}.topic-item{border-right:1px solid #ffffff29;grid-template-columns:auto 1fr;align-items:center;gap:1.15rem;width:clamp(28rem,36vw,38rem);padding:1.2rem clamp(1.5rem,3.5vw,4rem);display:grid}.topic-item>span{color:var(--accent);font:650 .62rem var(--font-geist-mono), monospace;letter-spacing:.06em}.topic-item h3{color:var(--paper);letter-spacing:-.02em;margin:0 0 .38rem;font-size:clamp(1.08rem,1.25vw,1.28rem);font-weight:570}.topic-item p{color:#aeb8ba;margin:0;font-size:.82rem;line-height:1.45}.topic-strip:hover .topic-track,.topic-strip:focus .topic-track,.topic-strip:focus-within .topic-track{animation-play-state:paused}@keyframes topic-scroll{to{transform:translate(-50%)}}.section{padding:clamp(5rem, 8vw, 8rem) var(--pad)}.section-heading,.people-heading{grid-template-columns:minmax(0,1.15fr) minmax(18rem,.6fr);align-items:end;gap:clamp(3rem,7vw,7rem);margin-bottom:clamp(3rem,5vw,4.5rem);display:grid}.section-heading>p,.people-heading>p{color:#667074;margin:0;font-size:.96rem;line-height:1.75}.muted-eyebrow{color:var(--accent-dark)}h2{letter-spacing:-.05em;text-wrap:balance;margin:0;font-size:clamp(2.4rem,4vw,4.2rem);font-weight:560;line-height:1.04}.zh h2{line-height:1.15}.focus{background:var(--paper)}.focus-grid{background:#546064;grid-template-columns:repeat(2,1fr);gap:1px;padding:1px;display:grid}.focus-card{isolation:isolate;min-height:19rem;color:var(--white);background:#182126;flex-direction:column;padding:clamp(1.5rem,2.7vw,2.6rem);display:flex;position:relative;overflow:hidden}.focus-card:before{content:"";z-index:-2;filter:blur(5px)saturate(.72);background-position:50%;background-size:cover;transition:transform .55s;position:absolute;inset:-1.25rem;transform:scale(1.035)}.focus-card:after{content:"";z-index:-1;background:linear-gradient(115deg,#11191eea 8%,#172126c4 58%,#1721269f);position:absolute;inset:0}.focus-card:first-child:before{background-image:url(/research/silver-paste.png);background-position:50% 44%}.focus-card:nth-child(2):before{background-image:url(/research/laser-processing.png);background-position:50% 47%}.focus-card:nth-child(3):before{background-image:url(/research/copper-materials.png);background-position:50% 54%}.focus-card:nth-child(4):before{background-image:url(/research/automated-pv-manufacturing.png);background-position:50% 56%}.focus-card:hover:before{transform:scale(1.075)}.focus-card>span{color:#c6d2cb;font:.57rem var(--font-geist-mono), monospace}.focus-card h3{color:var(--white);letter-spacing:-.04em;text-shadow:0 1px 1.2rem #0008;margin:2.5rem 0 .9rem;font-size:clamp(1.5rem,2.1vw,2.1rem);font-weight:590}.focus-card>p{color:#e1e5e5;text-shadow:0 1px .8rem #0009;max-width:38rem;margin:0;font-size:.92rem;line-height:1.68}.focus-card>small{color:#d8dfdc;font:600 clamp(.72rem, .85vw, .84rem)/1.5 var(--font-geist-mono), monospace;letter-spacing:.025em;text-transform:none;margin-top:auto;padding-top:1.7rem}.industry{color:var(--paper);background:var(--ink-soft)}.industry-heading{margin-bottom:clamp(2.4rem,4vw,3.8rem)}.industry-heading .eyebrow{color:var(--accent)}.industry-heading>p{color:#bcc5c7}.industry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,2vw,1.5rem);display:grid}.industry-card{min-width:0;color:var(--ink);background:var(--paper);border:1px solid #ffffff24;overflow:hidden}.industry-image{aspect-ratio:16/9;background:#f7f7f4;position:relative;overflow:hidden}.industry-image img{transition:transform .65s}.industry-card:hover .industry-image img{transform:scale(1.018)}.industry-image-photo img{object-fit:cover;object-position:center 54%}.industry-image-diagram{padding:clamp(1rem,2vw,2rem)}.industry-image-diagram img{object-fit:contain;padding:clamp(1rem,2.5vw,2.25rem)}.industry-copy{flex-direction:column;min-height:27rem;padding:clamp(1.5rem,2.7vw,2.6rem);display:flex}.industry-meta{color:var(--accent-dark);font:650 .57rem var(--font-geist-mono), monospace;letter-spacing:.07em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:1rem;display:flex}.industry-copy h3{letter-spacing:-.045em;margin:1.5rem 0 1rem;font-size:clamp(1.75rem,2.6vw,2.8rem);font-weight:570;line-height:1.08}.industry-copy>p{color:#5f696c;margin:0;font-size:clamp(.84rem,1vw,.96rem);line-height:1.72}.industry-relevance{border-top:1px solid var(--line);margin:1.6rem 0 1.8rem;padding:1.2rem 0 0}.industry-relevance small{color:var(--accent-dark);font:650 .54rem var(--font-geist-mono), monospace;letter-spacing:.08em;text-transform:uppercase}.industry-relevance p{color:#505b5e;margin:.55rem 0 0;font-size:.78rem;line-height:1.6}.industry-copy .text-link{margin-top:auto}.industry-disclaimer{color:#8e9a9d;max-width:70rem;margin:1.4rem 0 0;font-size:.67rem;line-height:1.6}.funding-bar{background:var(--paper-soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:minmax(18rem,30vw) minmax(0,1fr);min-height:8.4rem;display:grid}.funding-total{padding:1.25rem var(--pad);color:var(--paper);background:var(--ink);align-content:center;gap:.55rem;display:grid}.funding-total .eyebrow{margin:0}.funding-total>div{align-items:baseline;gap:1rem;display:flex}.funding-total strong{letter-spacing:-.055em;font-size:clamp(2rem,3.1vw,3.25rem);font-weight:560;line-height:.9}.funding-total span{color:#c0c8ca;font-size:.72rem}.funding-total>small{color:#8f9a9d;font:.52rem/1.45 var(--font-geist-mono), monospace;letter-spacing:.035em}.zh .funding-total>div{flex-direction:column;align-items:flex-start;gap:.55rem}.zh .funding-total strong{letter-spacing:-.045em;font-size:clamp(2rem,2.65vw,2.85rem)}.zh .funding-total span{line-height:1.45}.funding-viewport{outline-offset:-2px;min-width:0;position:relative;overflow:hidden}.funding-viewport:before,.funding-viewport:after{content:"";z-index:2;pointer-events:none;width:2rem;position:absolute;top:0;bottom:0}.funding-viewport:before{background:linear-gradient(90deg, var(--paper-soft), transparent);left:0}.funding-viewport:after{background:linear-gradient(270deg, var(--paper-soft), transparent);right:0}.funding-track{will-change:transform;width:max-content;min-height:100%;animation:52s linear infinite funding-scroll;display:flex}.funding-set{display:flex}.funding-item{border-right:1px solid var(--line);grid-template-rows:auto 1fr auto;align-content:center;width:clamp(17rem,22vw,22rem);min-height:8.35rem;padding:1.2rem 2rem 1.15rem;transition:background .2s;display:grid;position:relative}.funding-item:hover{background:var(--white)}.funding-item>span{color:var(--accent-dark);font:620 .53rem var(--font-geist-mono), monospace;letter-spacing:.07em}.funding-item h3{letter-spacing:-.025em;align-self:center;margin:.5rem 0;font-size:.98rem;font-weight:570;line-height:1.25}.funding-item small{color:#6d777a;font:.54rem var(--font-geist-mono), monospace;letter-spacing:.04em;text-transform:uppercase}.funding-item b{color:#8a9597;font-size:.7rem;font-weight:450;position:absolute;top:1.15rem;right:1.15rem}.funding-pending{background:#e2e3de}.funding-pending h3{color:#6c7678}.funding-viewport:hover .funding-track,.funding-viewport:focus .funding-track,.funding-viewport:focus-within .funding-track{animation-play-state:paused}@keyframes funding-scroll{to{transform:translate(-50%)}}.people{isolation:isolate;color:var(--paper);background:var(--ink-soft);position:relative}.section-background{z-index:-2;position:absolute;inset:0}.section-background img{object-fit:cover;object-position:center 58%;filter:saturate(.45)}.people:after{content:"";z-index:-1;background:linear-gradient(90deg,#202a2ff8 0 48%,#202a2fe8 72%,#202a2fcd);position:absolute;inset:0}.people-heading>p{color:#bdc5c7}.people-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.person{color:var(--ink);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f2f0ebf2;grid-template-rows:20rem minmax(17rem,auto);display:grid;overflow:hidden}.person-image,.person-lead .person-image{height:20rem;min-height:0;position:relative;overflow:hidden}.person-image img{object-fit:cover;object-position:center 26%;filter:saturate(.72)contrast(1.01);transition:transform .5s}.person:hover .person-image img{transform:scale(1.015)}#catherine-chan .person-image img{object-position:center 39%}#li-wang .person-image img{object-position:center 34%}@media (width>=761px){#brett-hallam .person-image,#catherine-chan .person-image,#li-wang .person-image{isolation:isolate;background:#c8cbc7}#brett-hallam .person-image:before,#catherine-chan .person-image:before,#li-wang .person-image:before{content:"";z-index:-1;filter:blur(18px)saturate(.5)brightness(.78);background-position:50%;background-size:cover;position:absolute;inset:-1.5rem;transform:scale(1.08)}#brett-hallam .person-image:after,#catherine-chan .person-image:after,#li-wang .person-image:after{content:"";z-index:-1;background:#18212630;position:absolute;inset:0}#brett-hallam .person-image:before{background-image:url(/people/brett-hallam.jpg)}#catherine-chan .person-image:before{background-image:url(/people/catherine-chan.jpg)}#li-wang .person-image:before{background-image:url(/people/li-wang-portrait.png)}#brett-hallam .person-image img,#catherine-chan .person-image img,#li-wang .person-image img{z-index:1;object-position:center;filter:saturate(.76)contrast(1.01);transform:scale(.96);object-fit:contain!important}#brett-hallam:hover .person-image img,#catherine-chan:hover .person-image img,#li-wang:hover .person-image img{transform:scale(.975)}}.person-copy{flex-direction:column;min-height:17rem;padding:clamp(1.35rem,2vw,1.8rem);display:flex}.person-copy>small{color:var(--accent-dark);font:650 .55rem/1.45 var(--font-geist-mono), monospace;letter-spacing:.05em;text-transform:uppercase}.person-copy h3{letter-spacing:-.05em;margin:.9rem 0 .75rem;font-size:clamp(1.8rem,2.8vw,2.8rem);font-weight:580}.person-copy>p{color:#616b6e;margin:0 0 1.1rem;font-size:.86rem;line-height:1.65}.person-copy .text-link{margin-top:auto}.wider-team{border-top:1px solid #dfe5e438;margin-top:clamp(3rem,5vw,4.5rem);padding-top:clamp(2.5rem,4vw,3.5rem)}.wider-team-heading{grid-template-columns:minmax(0,1fr) minmax(18rem,.58fr);align-items:end;gap:clamp(2.5rem,6vw,6rem);margin-bottom:2rem;display:grid}.wider-team-heading h3{letter-spacing:-.045em;margin:0;font-size:clamp(1.9rem,3vw,3rem);font-weight:550}.wider-team-heading>p{color:#b9c2c4;margin:0;font-size:.88rem;line-height:1.7}.wider-team-grid{background:#dfe5e438;border:1px solid #dfe5e438;grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.wider-team-grid a{background:#1d272cdc;grid-template-columns:2.4rem 1fr auto;align-items:start;gap:1rem;min-height:11rem;padding:1.4rem;transition:background .2s;display:grid}.wider-team-grid a:hover{background:#29353adf}.wider-team-grid a>span{width:2.4rem;height:2.4rem;color:var(--accent);font:600 .55rem var(--font-geist-mono), monospace;border:1px solid #7f8f90;border-radius:50%;place-items:center;display:grid}.wider-team-grid small{color:#94a0a2;font:.54rem var(--font-geist-mono), monospace;letter-spacing:.04em;text-transform:uppercase}.wider-team-grid h4{color:var(--paper);letter-spacing:-.025em;margin:.6rem 0 .45rem;font-size:1.1rem;font-weight:570}.wider-team-grid p{color:#aeb8ba;margin:0;font-size:.7rem;line-height:1.5}.wider-team-grid b{color:#9da8aa;font-weight:450}.environment{background:var(--paper-soft);grid-template-columns:minmax(18rem,.55fr) minmax(0,1.45fr);gap:clamp(3rem,7vw,7rem);display:grid}.environment-copy{align-self:start;position:sticky;top:7rem}.environment-copy>p:last-child{color:#626c70;margin:1.5rem 0 0;line-height:1.75}.image-grid{grid-template-columns:repeat(2,1fr);gap:1.1rem;display:grid}.image-grid figure{margin:0}.image-grid figure>div{background:#cfd3d1;height:15rem;position:relative;overflow:hidden}.image-grid .image-large{grid-column:1/-1}.image-grid .image-large>div{height:30rem}.image-grid img{object-fit:cover;filter:saturate(.72);transition:transform .6s}.image-grid figure:hover img{transform:scale(1.015)}.environment-carousel>div{isolation:isolate}.environment-carousel .environment-slide{opacity:0;transition:opacity .55s,transform 3.2s;transform:scale(1.025)}.environment-carousel .environment-slide.active{z-index:1;opacity:1;transform:scale(1)}.environment-carousel:hover .environment-slide.active{transform:scale(1.015)}.environment-dots{z-index:2;background:#0d1518a8;gap:.38rem;padding:.55rem .65rem;display:flex;position:absolute;bottom:1rem;right:1rem}.environment-dots i{border:1px solid #f3f4efaa;border-radius:50%;width:.45rem;height:.45rem;display:block}.environment-dots i.active{background:var(--paper);border-color:var(--paper)}.image-grid video,.image-grid iframe{object-fit:contain;background:#0e1417;border:0;width:100%;height:100%;display:block}.image-grid figcaption{color:#667074;font:.57rem var(--font-geist-mono), monospace;letter-spacing:.06em;text-transform:uppercase;padding:.75rem 0 0}.activities{background:var(--white)}.activity-grid{background:var(--line);grid-template-columns:repeat(3,1fr);gap:1px;padding:1px;display:grid}.activity{background:var(--paper);flex-direction:column;min-height:19rem;padding:clamp(1.5rem,2.4vw,2.35rem);transition:background .2s;display:flex}.activity:hover{background:#e7eae4}.activity-featured{color:var(--paper);background:var(--ink-soft);grid-column:span 2}.activity-featured:hover{background:#29353a}.activity-meta{justify-content:space-between;align-items:center;gap:1rem;display:flex}.activity-meta span,.activity-meta time{color:var(--accent-dark);font:620 .56rem var(--font-geist-mono), monospace;letter-spacing:.08em;text-transform:uppercase}.activity-featured .activity-meta span,.activity-featured .activity-meta time{color:var(--accent)}.activity h3{letter-spacing:-.035em;max-width:42rem;margin:2.4rem 0 1rem;font-size:clamp(1.35rem,2vw,2rem);font-weight:560;line-height:1.2}.activity p{color:#667074;max-width:44rem;margin:0;font-size:.86rem;line-height:1.65}.activity-featured p{color:#bdc6c8}.activity>b{color:#5f6b6e;font:650 .62rem var(--font-geist-mono), monospace;text-transform:uppercase;align-items:center;gap:.6rem;margin-top:auto;padding-top:1.8rem;display:inline-flex}.activity-featured>b{color:var(--accent)}.opportunities{background:var(--paper-soft)}.opportunities-heading{grid-template-columns:minmax(0,1.1fr) minmax(18rem,.6fr);align-items:end;gap:clamp(3rem,7vw,7rem);margin-bottom:clamp(3rem,5vw,4.5rem);display:grid}.opportunities-heading>p{color:#667074;margin:0;font-size:.96rem;line-height:1.75}.opportunities-heading .eyebrow{color:var(--accent-dark)}.opportunities-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.opportunities-grid article{background:var(--white);border:1px solid var(--line);flex-direction:column;min-height:22rem;padding:clamp(1.7rem,3vw,3rem);display:flex}.opportunities-grid article>span{color:var(--accent-dark);font:.57rem var(--font-geist-mono), monospace}.opportunities-grid article>small{color:#7a8486;font:.56rem var(--font-geist-mono), monospace;letter-spacing:.08em;text-transform:uppercase;margin-top:2.5rem}.opportunities-grid h3{letter-spacing:-.04em;margin:.75rem 0 1rem;font-size:clamp(1.7rem,2.5vw,2.5rem);font-weight:560}.opportunities-grid p{color:#626c70;max-width:42rem;margin:0 0 1.8rem;font-size:.9rem;line-height:1.7}.opportunities-grid .opportunity-link{color:var(--ink);border-color:#879397;margin-top:auto}.contact{isolation:isolate;padding:clamp(2rem, 3.2vw, 3rem) var(--pad);color:var(--paper);background:var(--ink);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(2rem,6vw,6rem);display:grid;position:relative}.contact:before{content:"";z-index:-2;filter:saturate(.5);background:url(/lab/solar-cell-furnace.png) 50%/cover no-repeat;position:absolute;inset:0 0 0 68%}.contact:after{content:"";z-index:-1;background:linear-gradient(90deg, var(--ink) 0 63%, #141b1fde 82%, #141b1fb0);position:absolute;inset:0}.contact-copy .eyebrow{margin-bottom:.55rem}.contact-copy h2{font-size:clamp(2rem,3.3vw,3.2rem)}.contact-copy>p:last-child{color:#b9c2c4;max-width:45rem;margin:.65rem 0 0;font-size:.82rem;line-height:1.55}.contact-details{justify-content:flex-end;align-items:center;gap:clamp(1.5rem,3vw,3rem);min-width:min(34rem,42vw);display:flex}.contact-details>div{min-width:7rem}.contact-details small{color:var(--accent);font:650 .53rem var(--font-geist-mono), monospace;letter-spacing:.08em;text-transform:uppercase}.contact-details h3{letter-spacing:-.035em;margin:.38rem 0 .12rem;font-size:1.25rem;font-weight:570}.contact-details p{color:#aeb8ba;margin:0;font-size:.66rem}.contact-details>a{min-width:17rem;font:620 .7rem var(--font-geist-mono), monospace;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1a2328b8;border:1px solid #fff5;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;display:flex}footer{padding:2.6rem var(--pad);color:#818c8f;background:#0e1417;border-top:1px solid #354147;justify-content:space-between;align-items:flex-end;gap:3rem;display:flex}.footer-brand{color:var(--paper)}footer p{margin:.9rem 0 0;font-size:.72rem}footer>div:last-child{gap:1.8rem;font-size:.7rem;display:flex}footer>div:last-child a{gap:.55rem;display:inline-flex}footer a:hover{color:var(--paper)}@media (width<=1050px){header{grid-template-columns:1fr auto auto}.menu{grid-column:2;display:block}nav{padding:1rem var(--pad) 1.4rem;border-bottom:1px solid var(--dark-line);background:#141b1ff5;flex-direction:column;gap:0;display:none;position:absolute;top:5rem;left:0;right:0}nav.open{display:flex}nav a{border-bottom:1px solid #ffffff1f;padding:.8rem 0}.langs{grid-column:3}.hero{grid-template-columns:1fr 43%}.hero-profile{width:min(25rem,100% - 1.5rem);min-height:0;margin-right:1.5rem}.hero-slide,.hero-profile-roadmap .hero-slide{grid-template-columns:1fr;min-height:0}.hero-profile-image{min-height:16.5rem}.hero-profile-image.research-figure img{max-height:16rem}.hero-profile-image.figure-seed{min-height:19rem}.roadmap-chart svg{max-height:16rem}.hero-profile-copy{min-height:10.5rem;padding:1.3rem 1.3rem 3.6rem}.people-grid{grid-template-columns:1fr 1fr}.person-lead{grid-column:1/-1;grid-template-rows:25rem;grid-template-columns:minmax(18rem,.7fr) 1fr;display:grid}.person-lead .person-image{height:25rem;min-height:0}.person-lead .person-copy{min-height:25rem}.wider-team-grid,.activity-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=760px){html{scroll-padding-top:4.6rem}header{gap:.65rem;min-height:4.6rem}.brand-logo{width:2.25rem;height:1.95rem}.brand b{font-size:.58rem}.brand small{font-size:.44rem}.menu{width:2.1rem;height:2.1rem}nav{top:4.6rem}.langs{font-size:.58rem}.hero{grid-template-rows:auto auto auto;grid-template-columns:1fr;min-height:auto}.hero:after{background:linear-gradient(0deg,#141b1f 0 57%,#141b1fd9 80%,#141b1fa8)}.hero-copy{padding:8rem var(--pad) 3rem}h1{font-size:clamp(2.85rem,13vw,4.6rem)}.hero-profile{width:auto;margin:0 var(--pad) 3rem;justify-self:stretch}.hero-slide,.hero-profile-roadmap .hero-slide{grid-template-columns:1fr}.hero-profile-image{min-height:15rem}.hero-profile-image.research-figure img{max-height:14.5rem}.hero-profile-image.figure-seed{min-height:27rem}.seed-comparison{grid-template-rows:1fr 1fr;grid-template-columns:1fr}.seed-panel img{max-height:13rem}.roadmap-chart svg{max-height:14.5rem}.map-translations span{font-size:.62rem}.hero-profile-copy{min-height:10rem;padding:1.35rem 1.35rem 3.7rem}.hero-profile-copy h2{font-size:1.7rem}.hero-profile-copy p{font-size:.78rem}.hero-profile-controls{bottom:.9rem;right:1.25rem}.topic-strip,.topic-track{min-height:8.4rem}.topic-item{width:22rem;min-height:8.4rem;padding:1rem 1.35rem}.topic-item h3{font-size:1.06rem}.topic-item p{font-size:.78rem}.section-heading,.people-heading,.wider-team-heading,.opportunities-heading{grid-template-columns:1fr;gap:1.5rem}h2{font-size:clamp(2.25rem,10vw,3.5rem)}.focus-grid{grid-template-columns:1fr}.focus-card{min-height:19rem}.industry-grid{grid-template-columns:1fr}.industry-copy{min-height:0}.industry-image{aspect-ratio:16/10}.funding-bar{grid-template-columns:1fr}.funding-total{min-height:7.2rem;padding-top:1.15rem;padding-bottom:1.15rem}.funding-total>div{gap:.8rem}.funding-total strong{font-size:2.5rem}.funding-item{width:17rem;min-height:7.7rem;padding-left:1.4rem;padding-right:1.4rem}.people-grid{grid-template-columns:1fr}.person-lead{grid-column:auto;display:block}.person,.person-lead{grid-template-rows:20rem minmax(17rem,auto)}.person-image,.person-lead .person-image{height:20rem;min-height:0}.person-lead .person-copy{min-height:17rem}.environment{grid-template-columns:1fr}.environment-copy{position:static}.image-grid .image-large>div{height:22rem}.image-grid figure>div{height:11rem}.wider-team-grid,.activity-grid,.opportunities-grid{grid-template-columns:1fr}.activity-featured{grid-column:auto}.activity{min-height:17rem}.opportunities-grid article{min-height:19rem}.contact{grid-template-columns:1fr;gap:1.4rem;padding-top:2.3rem;padding-bottom:2.3rem}.contact:before{opacity:.4;inset:0 0 0 50%}.contact:after{background:linear-gradient(90deg,#141b1ff4,#141b1fd5)}.contact-details{justify-content:space-between;min-width:0}.contact-details>a{min-width:min(17rem,58vw)}footer{flex-direction:column;align-items:flex-start}footer>div:last-child{flex-direction:column;align-items:flex-start;gap:.9rem}}@media (width<=480px){.brand>span:last-child{max-width:7.2rem}.hero-profile-image{min-height:13rem}.hero-profile-image.figure-seed{min-height:24rem}.seed-panel img{max-height:11.5rem}.image-grid{grid-template-columns:1fr}.image-grid .image-large{grid-column:auto}.image-grid .image-large>div,.image-grid figure>div{height:17rem}.contact-details{flex-direction:column;align-items:flex-start;gap:1rem}.contact-details>a{width:100%;min-width:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important}.funding-viewport{overflow-x:auto}.funding-track{animation:none}.funding-set[aria-hidden=true]{display:none}.topic-strip{overflow-x:auto}.topic-track{animation:none}.topic-set[aria-hidden=true]{display:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
