/* Sheng Lab — original presentation design. All fonts are locally bundled. */
:root {
  --page-width:1160px;--page-gutter:48px;--intro-top:144px;
  --sans:'Roboto',Arial,Helvetica,sans-serif;
  --serif:var(--sans);
  --ink:#16171b;--muted:#626572;--line:#e2e5eb;
  --blue:#183fc5;--highlight:#183fc5;--surface:#f4f5f8;
  --body:18px;--secondary:16px;--label:17px;--small:14px;--caption:14px;
  --title:64px;--section:40px;
  --subheading:28px;--lead:21px;--body-leading:1.65;--heading-leading:1.1;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:#fff;color:var(--ink);font-family:var(--sans);font-size:var(--body);line-height:var(--body-leading);-webkit-font-smoothing:antialiased}
p,h1,h2,h3,h4,figure{margin:0}
h1,h2,h3,h4{font-family:var(--sans);font-weight:700;letter-spacing:-.035em;text-wrap:balance}
h1{font-size:var(--title);line-height:1.05}
h2{font-size:var(--section);line-height:1.08}
h3{font-size:var(--subheading);line-height:1.22}
h4{font-size:var(--subheading);line-height:1.25}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:5px}
img{display:block;max-width:100%;height:auto}
button{font:inherit}
a:focus-visible,button:focus-visible{outline:3px solid #6580ed;outline-offset:5px}
.wrap{width:min(var(--page-width),calc(100% - var(--page-gutter) - var(--page-gutter)));margin-inline:auto}
.skip-link{position:fixed;top:-100px;left:20px;padding:12px 20px;background:var(--blue);color:#fff;z-index:2000}
.skip-link:focus{top:12px}
.site-header{position:fixed;inset:0 0 auto;z-index:20;background:#ffffffeb;color:var(--ink);backdrop-filter:blur(20px);border-bottom:1px solid #e8eaf080}
.nav-inner{height:76px;display:flex;justify-content:space-between;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:9px;white-space:nowrap;font-size:21px;font-weight:700;letter-spacing:-.04em}
.brand:hover{text-decoration:none}
.brand img{width:48px;height:48px;flex-shrink:0}
.desktop-nav{display:flex;align-items:center;gap:28px;font-size:var(--label);font-weight:500}
.desktop-nav a{white-space:nowrap}
.desktop-nav a[aria-current]{color:var(--blue)}
.desktop-nav .nav-join{background:var(--blue);color:white;padding:8px 17px;border-radius:25px}
.desktop-nav .nav-join[aria-current]{color:white}
#hamburger{display:none;border:0;background:none;width:44px;height:44px;padding:10px;cursor:pointer}
#hamburger span{display:block;height:2px;background:var(--ink);margin:6px 0}
.mobile-nav{padding:10px 24px 24px;border-bottom:1px solid var(--line);background:#fff;max-height:calc(100dvh - 76px);overflow:auto}
.mobile-nav a{display:block;padding:12px;font-size:var(--label)}
.mobile-nav a[aria-current]{color:var(--blue)}
.mobile-nav[hidden]{display:none}
.eyebrow,.hero-eyebrow{font-size:var(--label);font-weight:700;letter-spacing:.02em;text-transform:none;color:var(--blue)}
.text-link{display:inline-flex;align-items:center;gap:6px;color:var(--blue);font-size:var(--label);letter-spacing:0;font-weight:500}
.text-link span{display:inline}
.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 26px;background:var(--blue);color:#fff;border:1px solid var(--blue);border-radius:32px;font-size:17px;font-weight:500;letter-spacing:0}
.inner-page .button{font-size:var(--label)}
.button:hover{text-decoration:none;background:#1231a6}
.button span{display:none}
.home-intro{padding-top:160px;text-align:center;position:relative}
.hero-eyebrow{margin-bottom:26px;font-size:15px;letter-spacing:.08em}
.home-intro h1{max-width:1080px;margin:auto}
.home{background:#0c1c32;color:#f2f6ff;isolation:isolate}
.home .site-header{inset:0 0 auto;background:linear-gradient(180deg,#ffffff09,transparent 45%),#f5f8ff0a;color:#f0f4fa;border:0;border-radius:0;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}
.home .brand img{filter:brightness(0) invert(.9) drop-shadow(0 0 8px #9dc9ff33)}
.home .desktop-nav a[aria-current],.home .mobile-nav a[aria-current]{color:#b4d5ff}
.home .desktop-nav .nav-join{background:#5380e321;border:0;color:#eaf3ff}
.home #hamburger span{background:#d9eaff}
.home .mobile-nav{background:#09172aa6;color:#d9eaff;border:0;border-radius:0;backdrop-filter:none;-webkit-backdrop-filter:none}
.neural-background{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 65% 75%,#18385c80,transparent 60%)}
.home main,.home .site-footer{position:relative;z-index:1}
.home .home-intro{min-height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding-top:120px;padding-bottom:32px}
.home.has-local-editor .home-intro{padding-bottom:32px}
.home .hero-eyebrow{color:#afc9ff}
.home .home-intro h1{margin:0 auto;font-size:clamp(20px,6vw,76px);line-height:1.12;text-shadow:0 3px 24px #071427cc}
.hero-title-line{display:block;white-space:nowrap}
.home .hero-actions>.button{background:#5380e321;border-color:transparent;color:#fff;backdrop-filter:none;-webkit-backdrop-filter:none}
.home .hero-actions>.button:hover{background:#5380e333}
.home .hero-actions>.text-link{color:#fff}
.research-disciplines{font-size:var(--label);letter-spacing:.02em;margin-bottom:20px}
.home .research-overview .eyebrow{color:#a9c3ff}
.home .research-intro p+p{color:#b1bfd5}
.home .direction-mapping,.home .direction-modulation,.home .progress-item{color:var(--ink)}
.home .site-footer{color:#b1bfd5;border-color:#43536d}
.home .footer-title{color:#f2f6ff}
.home .footer-links .text-link{color:#afc9ff}
.home.is-editing [data-edit-key]:focus{color:#16171b}
.home-subtitle{font-size:24px;line-height:1.5;font-style:italic;color:var(--muted);max-width:760px;margin:26px auto 0;text-wrap:balance}
.hero-actions{display:flex;justify-content:center;align-items:center;gap:28px;margin-top:30px}
.hero-art{height:385px;max-width:1040px;margin:45px auto 0;position:relative;display:grid;place-items:center;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 72%,#dce5ff 0, #f2f5ff 38%,#ffffff 72%);border-radius:50% 50% 0 0}
.hero-art img{width:280px;height:280px;object-fit:contain;position:relative;z-index:2;filter:drop-shadow(0 22px 20px #182a7520)}
.hero-orbit{position:absolute;width:75%;height:140px;border:1px solid #bbc9f5;border-radius:50%;transform:rotate(-9deg);top:145px}
.orbit-two{width:57%;height:240px;transform:rotate(14deg);top:85px;border-color:#ced7f5}
.hero-art-label{position:absolute;bottom:22px;font-size:11px;font-weight:500;letter-spacing:.23em;color:#6675a5}
.research-overview{padding-top:125px;padding-bottom:110px}
.research-overview h2{margin-top:14px;margin-bottom:26px}
.research-intro{font-size:26px;font-weight:500;letter-spacing:-.025em;line-height:1.5}
.research-intro p+p{margin-top:24px;color:var(--muted);font-size:21px;font-weight:400;letter-spacing:0}
.directions{display:grid;gap:20px;padding:0 20px}
.direction{display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:650px;background:#f3f5f9;border-radius:26px;overflow:hidden;max-width:1440px;width:100%;margin:auto}
.direction-copy{padding:80px max(40px,calc((100vw - 1160px)/2 - 20px));padding-right:45px;min-width:0}
.direction h3{font-size:clamp(40px,4.8vw,66px);line-height:1.05;margin-top:20px;max-width:540px}
.direction-copy>p:not(.eyebrow){font-size:21px;color:var(--muted);margin-top:26px;max-width:460px}
.direction .text-link{margin-top:25px}
.direction-visual{height:100%;display:flex;align-items:center;justify-content:center;min-width:0}
.direction-art{width:100%;height:100%;min-height:650px;max-height:850px;object-fit:cover}
.direction-understanding{background:#101a26;color:#f5f7fc}
.direction-understanding .direction-copy{grid-column:2;grid-row:1;padding-left:60px;padding-right:max(40px,calc((100vw - 1160px)/2 - 20px))}
.direction-understanding .direction-visual{grid-column:1;grid-row:1}
.direction-understanding .eyebrow,.direction-understanding .text-link{color:#a9c3ff}
.direction-understanding .direction-copy>p:not(.eyebrow){color:#c1c9d6}
.direction-modulation{background:#edf3fa}
.research-link{padding-top:40px;text-align:center}
.home-progress{padding-top:150px}
.home-progress h2{max-width:750px;margin-bottom:45px}
.progress-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.progress-item{min-width:0;border-radius:26px;background:var(--surface);overflow:hidden;transition:transform .2s}
.progress-item:hover{transform:translateY(-3px)}
.progress-row{display:block}
.progress-row:hover{text-decoration:none}
.progress-visual{height:300px;padding:32px;background:#f9fafc;display:flex;align-items:center;justify-content:center}
.progress-visual img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.spring-visual{color:var(--blue);background:linear-gradient(140deg,#e9efff,#f9fbff)}
.spring-visual svg{width:100%;height:100%;overflow:hidden}
.progress-copy{padding:34px 36px 36px}
.progress-copy h3{font-size:27px;line-height:1.22;margin-top:14px}
.progress-copy p{font-size:17px;color:var(--muted);margin-top:18px}
.progress-venue{font-size:13px;font-weight:500;color:var(--blue)}
.progress-item>.publication-highlights{padding:0 36px 30px;margin-top:-12px}
.home-progress>.button{margin-top:40px}
.home-join{margin-top:145px;padding:100px 80px;background:#111b31;color:#fff;border-radius:26px;text-align:center}
.home-join>p{font-size:22px;color:#c3cce0;max-width:720px;margin:25px auto 30px}
.home-join .button{background:#fff;color:#1231a6;border-color:#fff}
.site-footer{margin-top:100px;padding:20px 0 65px;border-top:1px solid var(--line);color:var(--muted);font-size:var(--caption);font-weight:400;line-height:1.65}
.footer-title{color:var(--ink);font-family:var(--sans);font-size:var(--secondary);font-weight:700;line-height:1.4;margin-bottom:8px}
.footer-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:12px}
.footer-links .text-link{font-size:var(--label)}
.footer-links a{overflow-wrap:anywhere}
.page-intro{padding-top:var(--intro-top);padding-bottom:65px;margin-bottom:0}
.page-intro h1{max-width:1000px}
.page-about .page-intro{padding-bottom:32px}
.page-deck{font-size:var(--lead);color:var(--muted);margin-top:28px;line-height:1.55}
.page-about .page-deck{font-size:var(--lead);line-height:1.65}
.research-introduction .page-deck+p{margin-top:20px}
.page-about .research-framework h2,.detail-body h2,.page-about .simple-cta h2{font-size:var(--section);line-height:1.12}
.research-framework{margin:0 0 32px}
.research-framework figcaption{max-width:1000px}
.research-framework figcaption>p{font-size:var(--lead);color:var(--muted);max-width:900px;margin-top:25px}
.framework-diagram{padding:55px 40px;background:var(--surface);border-radius:26px}
.framework-goal{text-align:center}
.framework-label{font-size:var(--label);letter-spacing:.02em;font-weight:700;color:var(--blue);margin-bottom:14px}
.framework-goal h3{font-size:var(--section)}
.sheng-framework-stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:38px}
.framework-domain{background:#fff;border-radius:26px;padding:28px 24px}
.framework-domain h3{font-size:var(--subheading)}
.framework-domain>p:not(.framework-label){font-size:var(--secondary);color:var(--muted);margin-top:16px}
.framework-shared{text-align:center;color:var(--muted);font-size:var(--secondary);margin-top:28px}
.research-detail{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start;padding:75px 0;margin-top:10px;border-top:1px solid var(--line)}
.detail-aside{position:static}
.detail-aside img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:26px}
.detail-body h3{font-size:var(--subheading);margin-top:26px}
.detail-body>p{font-size:var(--body);color:var(--muted);margin-top:24px}
.detail-body>p a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.research-focus{margin-top:30px;padding:24px;background:var(--surface);border-radius:26px}
.research-focus p{font-size:15px;color:var(--muted);margin-top:10px}
.research-publications{grid-column:1/-1;min-width:0;padding:35px;background:var(--surface);border-radius:26px;margin-top:10px}
.research-publications-heading{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;margin-bottom:30px}
.paper-controls{display:flex;gap:9px;align-items:center}
.paper-controls[hidden]{display:none}
.paper-controls button{border:1px solid #d4d8e2;border-radius:24px;background:#fff;min-width:44px;min-height:44px;padding:8px 16px;font-size:var(--label);cursor:pointer}
.paper-controls button:hover{background:#e9edfa}
.paper-count{font-size:var(--caption);min-width:42px;text-align:center;font-variant-numeric:tabular-nums}
.research-paper{display:grid;grid-template-columns:1fr 1.2fr;gap:40px;align-items:center;margin-bottom:24px}
.research-paper-figure{padding:22px;background:#fff;border-radius:26px}
.research-paper-figure img{width:100%;height:330px;object-fit:contain}
.research-paper.text-only{grid-template-columns:minmax(0,1fr)}
.research-paper-copy{min-width:0}
.research-paper-copy h4{margin:18px 0}
.research-paper-copy h4{text-wrap:wrap;overflow-wrap:anywhere}
.research-paper-copy .eyebrow{font-size:var(--label);letter-spacing:.02em;text-transform:none}
.research-publications.is-enhanced .research-paper-stage{display:grid;overflow:hidden}
.research-publications.is-enhanced .research-paper{grid-area:1/1;visibility:hidden;opacity:0;transition:opacity .3s,visibility .3s}
.research-publications.is-enhanced .research-paper.is-active{visibility:visible;opacity:1}
.simple-cta{padding:90px 0 0}
.simple-cta .button{margin-top:28px}
.pi-profile{padding-top:var(--intro-top);display:grid;grid-template-columns:320px minmax(0,1fr);gap:0 64px;align-items:start}
.profile-heading{grid-column:2;grid-row:1;min-width:0}
.founder-photo{position:static;grid-column:1;grid-row:1 / span 2}
.pi-portrait{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center;border-radius:26px;background:#d4d9dc}
.portrait-placeholder{aspect-ratio:1;display:grid;place-items:center;background:linear-gradient(145deg,#e5eafe,#f4f6fa);border-radius:26px;color:var(--blue);font-size:100px;font-weight:700;letter-spacing:-.05em}
.profile-body{grid-column:2;grid-row:2;min-width:0}
.pi-profile h1,.inner-page .page-intro h1,.members-intro h1{font-size:var(--title);font-weight:700;line-height:1.12;letter-spacing:-.035em}
.pi-profile h1{margin-top:16px}
.profile-bio{margin-top:30px;max-width:740px}
.profile-bio p{font-size:var(--body);line-height:1.75;color:var(--muted)}
.profile-bio p+p{margin-top:20px}
.profile-links{display:flex;gap:24px;flex-wrap:wrap;margin-top:30px}
.profile-link-pending{font-size:var(--label);font-weight:500;color:var(--muted)}
.profile-history{margin-top:60px}
.profile-history section+section{margin-top:48px}
.profile-history h2{font-size:var(--subheading);margin-bottom:22px}
.cv-list{list-style:none;padding:0;margin:0}
.cv-list li{display:grid;grid-template-columns:120px minmax(0,1fr);gap:24px;padding:20px 0;border-top:1px solid var(--line);font-size:var(--secondary);line-height:1.6}
.cv-year{font-size:inherit;font-weight:400;color:var(--muted);font-variant-numeric:tabular-nums}
.cv-list strong{font-weight:600}
.cv-role,.cv-institution{display:block}
.cv-institution{margin-top:3px;color:var(--muted)}
.cv-detail{font-size:var(--caption);line-height:1.6;color:var(--muted);margin-top:8px}
.members-intro{padding-top:var(--intro-top)}
.members-intro h2{font-size:var(--section);margin-top:48px}
.members-intro>p,.members-culture>p{font-size:var(--lead);line-height:1.75;color:var(--muted);margin-top:24px}
.members-intro .text-link{margin-top:26px}
.members-culture{padding-top:72px}
.members-culture h2{font-size:var(--section)}
.members-culture .button{margin-top:30px}
.page-internal .page-deck{font-size:var(--lead);line-height:1.65}
.page-internal .page-intro{padding-bottom:0}
.gallery-collection{min-width:0}
.gallery-collection .collection-empty{font-size:var(--secondary);margin-top:24px}
.gallery-photos{display:grid;gap:40px;margin-top:32px}
.gallery-photo{min-width:0;position:relative;align-self:flex-start;aspect-ratio:3/2;overflow:hidden;border-radius:26px}
.gallery-photo img{display:block;width:100%;height:100%;object-fit:cover;-webkit-user-drag:none;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none}
.gallery-photo figcaption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:44px 20px 16px;background:linear-gradient(transparent,rgba(0,0,0,.58));font-size:var(--caption);line-height:1.5;color:#fff;text-shadow:0 1px 3px #0006;pointer-events:none}
.gallery-camera{min-width:0}
.gallery-author{flex-shrink:0;white-space:nowrap;text-align:right}
.gallery-carousel{min-width:0}
.gallery-carousel.is-enhanced .gallery-photos{display:flex;gap:0;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
.gallery-carousel.is-enhanced .gallery-photos::-webkit-scrollbar{display:none}
.gallery-carousel.is-enhanced .gallery-photo{flex:0 0 100%;scroll-snap-align:start}
.gallery-carousel.is-enhanced .gallery-photo img{height:100%}
.gallery-controls{display:flex;justify-content:flex-end;align-items:center;gap:14px;margin-top:18px;font-size:var(--small);color:var(--muted)}
.gallery-controls[hidden]{display:none}
.gallery-controls button{min-width:44px;min-height:44px;border:1px solid var(--line);border-radius:22px;padding:8px 14px;background:#fff;color:var(--ink);cursor:pointer}
.gallery-controls button:hover{background:var(--surface)}
.pub-key{font-size:var(--body);font-weight:400;color:var(--muted);margin-bottom:45px}
.page-publications .page-intro{padding-bottom:35px}
.publication-year{margin-top:48px}
.publication-year:first-child{margin-top:0}
.publication-year-title{font-size:var(--section);line-height:1.2;margin-bottom:22px}
.publication-group{margin-top:70px}
.publication-group>h2{font-size:var(--section);max-width:850px;margin-bottom:35px}
.section-intro{font-size:var(--body);color:var(--muted);margin-bottom:25px}
.publication{display:flex;gap:32px;align-items:start;padding:38px 0;border-top:1px solid var(--line)}
.publication-img{flex:0 0 33.333333%;min-width:0}
.publication-img img{display:block;width:100%;height:auto}
.publication-content{flex:1;min-width:0;overflow-wrap:anywhere}
.publication .publication-title{font-size:var(--subheading);margin-top:14px;line-height:1.28;text-wrap:wrap}
.publication .eyebrow{font-size:var(--label);letter-spacing:.02em;text-transform:none}
.publication-authors{font-size:var(--caption);color:var(--muted);line-height:1.75;margin-top:20px}
.publication-authors strong{color:var(--ink)}
.publication-links{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:22px}
.publication-links .text-link,.publication .publication-highlights .text-link{font-size:var(--label)}
.publication-links:empty{display:none}
.publication-highlights{list-style:none;margin:15px 0 0;padding:0;color:var(--highlight);font-size:var(--label);font-weight:500}
.news-item{display:grid;grid-template-columns:100px 1fr;gap:30px;padding:50px 0;border-top:1px solid var(--line)}
.news-item h2{font-size:var(--section);max-width:900px}
.news-item p:not(.eyebrow){font-size:var(--body);color:var(--muted);max-width:900px;margin-top:24px}
.news-item .text-link{margin-top:24px}
.news-content,.news-copy{min-width:0}
.news-content.has-cover{display:grid;grid-template-columns:minmax(0,1fr) 160px;gap:32px;align-items:start}
.news-cover img{width:100%;height:auto}
.page-join .page-intro{padding-bottom:40px}
.page-join .page-deck{font-size:var(--lead);line-height:1.65}
.join-campus img{width:100%;height:auto;border-radius:26px}
.join-campus figcaption{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:12px;font-size:var(--caption);color:var(--muted)}
.join-campus figcaption a{text-decoration:underline;text-underline-offset:3px}
.join-layout{display:grid;grid-template-columns:320px 1fr;gap:80px;padding-top:64px}
.join-layout aside{position:static;align-self:start}
.join-layout h2,.join-collaborate h2{font-size:var(--section)}
.opportunities article{padding:32px 0 40px;border-top:1px solid var(--line)}
.opportunities h3{font-size:var(--subheading);letter-spacing:-.02em}
.opportunities p{font-size:var(--body);line-height:1.75;color:var(--muted);margin-top:20px}
.opportunities strong{font-weight:600;color:var(--ink)}
.opportunities .text-link{margin-top:20px}
.join-collaborate{margin-top:56px}
.join-collaborate p{font-size:var(--body);line-height:1.75;color:var(--muted);margin-top:20px}
.join-contact{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:64px}
.join-contact h2{font-size:var(--section);margin-bottom:28px}
.join-contact p{font-size:var(--body);line-height:1.7;color:var(--muted)}
.contact-email{color:var(--blue);display:block;font-size:var(--body);line-height:1.7;margin-top:0;width:fit-content;max-width:100%;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.mission-band{padding:100px 0;margin-top:90px;background:var(--surface)}
.mission-grid p{font-size:var(--lead);color:var(--muted);max-width:900px;margin-top:28px}
@media(max-width:1050px){
 .join-layout{grid-template-columns:260px 1fr;gap:45px}
 .desktop-nav{gap:18px}.nav-inner{gap:20px}
 .pi-profile{grid-template-columns:280px 1fr;gap:0 45px}
 .research-detail{gap:40px}
 .direction-copy{padding:55px 35px}.direction-understanding .direction-copy{padding:55px 35px}
}
@media(max-width:1300px){.desktop-nav{gap:18px}.nav-inner{gap:20px}}
@media(max-width:1300px){.desktop-nav{display:none}#hamburger{display:block}}
@media(max-width:760px){
 :root{--title:clamp(38px,8.5vw,52px);--section:32px;--subheading:24px;--lead:18px;--body:17px;--page-gutter:24px;--intro-top:116px}
 .nav-inner{height:68px}.brand{font-size:20px}.brand img{width:44px;height:44px}
 .home-intro{padding-top:125px}.hero-eyebrow{font-size:12px;margin-bottom:24px}
 .home .home-intro{padding-top:120px;padding-bottom:32px;min-height:100svh}
 .home.has-local-editor .home-intro{padding-bottom:32px}
 .home-subtitle{font-size:20px;margin-top:22px}
 .hero-actions{gap:21px;flex-wrap:wrap;margin-top:28px}.button{font-size:16px;padding:12px 23px}
 .hero-art{height:295px;margin-top:30px;border-radius:0}.hero-art img{width:210px;height:210px}
 .hero-orbit{top:120px;height:100px;width:96%}.orbit-two{top:80px;height:180px;width:70%}
 .hero-art-label{font-size:9px;letter-spacing:.16em;bottom:18px}
 .research-overview{padding-top:75px;padding-bottom:70px}.research-intro{font-size:23px}.research-intro p+p{font-size:19px}
 .directions{padding:0 12px;gap:16px}
 .direction{grid-template-columns:1fr;min-height:0;border-radius:26px}
 .direction-copy,.direction-understanding .direction-copy{grid-column:1;grid-row:1;padding:44px 30px 34px}
 .direction h3{font-size:43px;max-width:520px}.direction-copy>p:not(.eyebrow){font-size:19px;max-width:560px}
 .direction-visual,.direction-understanding .direction-visual{grid-column:1;grid-row:2;height:auto}
 .direction-art{min-height:0;max-height:540px;aspect-ratio:1.2;object-fit:cover}
 .home-progress{padding-top:95px}.progress-list{grid-template-columns:1fr;gap:22px}.progress-visual{height:280px}
 .progress-copy{padding:28px}.progress-copy h3{font-size:25px}.progress-item>.publication-highlights{padding:0 28px 25px}
 .home-join{margin-top:85px;padding:65px 25px;border-radius:26px}.home-join>p{font-size:19px}
 .site-footer{margin-top:65px;padding-bottom:45px}.footer-links{flex-direction:column;gap:7px;align-items:start}
 .page-intro{padding-bottom:50px}.page-intro h1{font-size:var(--title)}.page-deck{margin-top:23px}
 .page-about .page-intro{padding-bottom:24px}
 .research-framework{margin:0 0 24px}.research-framework figcaption>p{font-size:var(--lead)}
 .page-about .page-deck{font-size:var(--lead)}
 .page-about .research-framework h2,.detail-body h2,.page-about .simple-cta h2{font-size:var(--section)}
 .detail-body>p{font-size:var(--body)}
 .framework-diagram{padding:30px 22px;border-radius:26px}.framework-goal h3{font-size:var(--section)}
 .sheng-framework-stages{grid-template-columns:1fr;gap:14px}.framework-domain{padding:24px}
 .research-detail{grid-template-columns:1fr;gap:35px;padding:50px 0}.detail-aside{position:static}
 .detail-aside img{max-height:500px;aspect-ratio:1.2;object-fit:cover}
 .research-publications{padding:25px 20px;grid-column:1}.research-paper{grid-template-columns:1fr;gap:26px}
 .research-paper-figure img{height:230px}.research-paper-copy h4{font-size:var(--subheading)}
 .research-publications-heading h3{font-size:var(--subheading)}.simple-cta{padding-top:55px}
 .pi-profile{grid-template-columns:1fr;gap:30px}.founder-photo{position:static;width:240px;max-width:100%}
 .profile-heading,.founder-photo,.profile-body{grid-column:1;grid-row:auto}
 .profile-bio{margin-top:0}
 .pi-profile h1,.inner-page .page-intro h1,.members-intro h1{font-size:var(--title)}.profile-history{margin-top:46px}.profile-history h2{font-size:var(--subheading)}
 .profile-bio p{font-size:var(--body)}.cv-list li{grid-template-columns:105px minmax(0,1fr);gap:16px}
 .members-intro h2{font-size:var(--section);margin-top:36px}.members-culture{padding-top:56px}
 .members-intro>p,.members-culture>p{font-size:var(--lead);margin-top:22px}.members-culture h2{font-size:var(--section)}
 .page-internal .page-deck{font-size:var(--lead)}
 .gallery-collection .collection-empty{margin-top:22px}
 .publication-group{margin-top:45px}.publication-group>h2{font-size:var(--section)}.publication{gap:20px;padding:30px 0}
 .publication .publication-title{font-size:var(--subheading)}.pub-key{margin-bottom:25px}
 .publication{display:block}
 .publication-img{display:none}
 .publication-img.is-cover{display:block;width:100%;max-width:320px;margin-top:26px}
 .publication-year{margin-top:36px}.publication-year-title{font-size:var(--section);margin-bottom:18px}.page-publications .page-intro{padding-bottom:28px}
 .news-item{grid-template-columns:1fr;gap:18px;padding:35px 0}.news-item h2{font-size:var(--section)}.news-item p:not(.eyebrow){font-size:var(--body)}
 .news-content.has-cover{grid-template-columns:1fr;gap:24px}.news-cover{width:160px;max-width:100%}
 .page-join .page-deck{font-size:var(--lead)}.page-join .page-intro{padding-bottom:30px}
 .gallery-photo{border-radius:26px}
 .join-campus img{border-radius:26px}.join-campus figcaption{font-size:var(--caption)}
 .join-layout{grid-template-columns:1fr;gap:30px;padding-top:44px}.join-layout aside{position:static}.join-layout h2,.join-collaborate h2{font-size:var(--section)}
 .opportunities h3{font-size:var(--subheading)}.opportunities p{font-size:var(--body)}.join-collaborate p{font-size:var(--body)}.mission-band{padding:65px 0;margin-top:60px}
 .join-contact{grid-template-columns:1fr;gap:38px;margin-top:48px}.join-contact h2{font-size:var(--section);margin-bottom:22px}.join-contact p,.contact-email{font-size:var(--body)}
 .mission-grid p{font-size:var(--lead)}
 .direction,.progress-item,.home-join,.framework-diagram,.framework-domain,.detail-aside img,.research-focus,.research-publications,.research-paper-figure,.pi-portrait,.portrait-placeholder,.gallery-photo,.join-campus img{border-radius:18px}
}
@media(max-width:400px){
 :root{--page-gutter:20px}.home-intro h1{font-size:42px}.direction-copy,.direction-understanding .direction-copy{padding-inline:24px}
 .direction h3{font-size:39px}.progress-copy h3{font-size:23px}.cv-list li{grid-template-columns:1fr;gap:4px}
 .hero-actions .text-link{font-size:var(--label)}.paper-controls{gap:5px}.paper-controls button{padding-inline:11px}
}
@media(max-height:760px){
 .home .home-intro{padding-top:112px;padding-bottom:48px}
 .home.has-local-editor .home-intro{padding-bottom:72px}
 .home .hero-eyebrow{margin-bottom:20px}
 .home .hero-actions{margin-top:24px}
}
@media(max-width:700px) and (max-height:740px){
 .home .home-intro{padding-top:104px}
 .home.has-local-editor .home-intro{padding-bottom:140px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.progress-item,.research-publications.is-enhanced .research-paper{transition:none}}

/* Language switch stays at the top right on every page and screen size. */
.nav-inner{padding-right:52px}
.language-switch{position:absolute;right:20px;top:18px;display:flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;padding:6px 8px;border:1px solid var(--line);border-radius:22px;font-size:14px;font-weight:500;background:#fff;color:var(--ink)}
.language-switch:hover{text-decoration:none;background:var(--surface)}
.home .language-switch{background:#ffffff0d;border-color:#ffffff40;color:#eaf3ff}
html[lang="zh-CN"]{--sans:'Roboto','PingFang SC','Microsoft YaHei','Noto Sans CJK SC',sans-serif}
html[lang="zh-CN"] h1,html[lang="zh-CN"] h2,html[lang="zh-CN"] h3,html[lang="zh-CN"] h4{letter-spacing:0;line-height:1.25}
@media(max-width:760px){.language-switch{top:14px;right:16px}}
html[lang="zh-CN"] .home-intro h1{font-size:clamp(32px,4.6vw,64px);line-height:1.35}
html[lang="zh-CN"] .hero-title-line{white-space:normal}
html[lang="zh-CN"] .hero-title-line lab-text{white-space:pre-line}
.home .hero-eyebrow:has(lab-text:empty){display:none}
@media(max-width:760px){html[lang="zh-CN"] .home-intro h1{font-size:clamp(22px,6.2vw,28px);line-height:1.4}}

.hero-spike{display:block;width:min(470px,68%);height:100px;flex-shrink:0;margin:44px auto 0;pointer-events:none}
@media(max-width:760px){.hero-spike{height:86px;margin-top:30px;width:68%}}
@media(max-height:760px){.hero-spike{height:81px;margin-top:28px}}
@media(max-width:700px) and (max-height:740px){.hero-spike{height:72px;margin-top:24px}}

/* Homepage motto beneath the research headline. */
.home .hero-motto{margin:22px 0 0;color:#c8d9f5;font-size:clamp(16px,1.6vw,22px);line-height:1.5;font-weight:400;letter-spacing:.01em}
@media(max-width:760px){.home .hero-motto{margin-top:18px;font-size:17px}}
@media(max-height:650px){.home .hero-motto{margin-top:12px;font-size:16px}}
