:root{--red:#92071c;--red-dark:#700817;--ink:#242424;--muted:#606060;--line:#dedede;--soft:#f8f5f5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;color:var(--ink);background:white;font-family:Calibri,sans-serif;font-size:18px;line-height:1.55}button,input,textarea,select{font:inherit}h1,h2,h3,p,ol,ul{margin-top:0}h1,h2,h3{font-family:Calibri,sans-serif;line-height:1.18}h1{font-size:42px;font-weight:700}h2{font-size:30px;font-weight:700}h3{font-size:23px}a{color:var(--red);text-underline-offset:4px}a:hover{color:var(--red-dark)}a:focus-visible,button:focus-visible{outline:3px solid #da9d2b;outline-offset:4px}img{max-width:100%;height:auto;display:block}figure{margin:0}.wrap{width:min(1180px,calc(100% - 64px));margin-inline:auto}.site-header{border-top:6px solid var(--red)}.masthead{min-height:122px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{font-size:43px;line-height:1.1;font-weight:700;text-decoration:none;color:var(--red)}.institution-logo img{width:318px;max-width:100%;height:auto}.navigation-bar{background:var(--red)}nav{display:flex;gap:0}nav a{color:white;text-decoration:none;padding:15px 29px;font-size:19px;font-weight:700;border-bottom:4px solid transparent}nav a:first-child{padding-left:24px}nav a:hover{background:var(--red-dark);color:white}nav a[aria-current=page]{border-bottom-color:white;background:rgba(0,0,0,.08)}.menu-toggle{display:none}.skip{position:absolute;top:-100px;left:10px;background:white;padding:15px;z-index:100}.skip:focus{top:10px}.home-banner{background:#eee;max-height:340px;overflow:hidden}.home-banner img{width:100%;height:auto;min-height:190px;object-fit:cover;aspect-ratio:1782/447}.home-introduction{padding-block:43px 38px;text-align:center}.home-introduction h1{font-size:36px;color:var(--red);margin-bottom:20px}.home-introduction p{font-size:24px;line-height:1.6;max-width:1070px;margin:0 auto}.gallery{position:relative;margin-bottom:65px}.gallery-slide>img{width:100%;height:540px;object-fit:contain;background:#f3f3f3}.gallery-slide figcaption{padding:18px 20px;background:var(--soft);font-size:18px;text-align:center;min-height:80px;border-bottom:1px solid var(--line)}.gallery-slide[hidden]{display:none}.gallery-controls{display:none;justify-content:center;align-items:center;gap:17px;margin-top:18px}.js .gallery-controls{display:flex}.gallery-controls button{border:1px solid #d0b8bd;background:white;color:var(--red);min-width:43px;min-height:40px;cursor:pointer}.gallery-controls button:hover{background:var(--soft)}.gallery-controls button[data-gallery=pause]{min-width:84px;font-size:16px}.gallery-count{color:var(--muted);min-width:50px;text-align:center;font-size:16px}.section-title{border-bottom:2px solid var(--red);display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:25px;padding-bottom:13px}.section-title h2{color:var(--red);margin:0;font-size:32px}.more{font-size:17px;text-decoration:none;white-space:nowrap}.more:hover{text-decoration:underline}.home-research{margin-bottom:65px}.research-overview{width:100%;height:auto}.research-labels{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding-top:20px;text-align:center}.research-labels h3{font-size:22px;margin-bottom:20px;color:var(--red)}.research-keywords{text-align:center;font-size:18px;line-height:1.75;margin:2px 0 0}.home-updates{display:grid;grid-template-columns:1.18fr 1fr;gap:55px;margin-bottom:65px}.latest-publications article{font-size:17px;line-height:1.65;margin-bottom:28px;overflow-wrap:anywhere}.news-item{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:23px}.news-item:last-child{border-bottom:0;margin-bottom:0}.news-date{font-weight:bold;color:var(--red);font-size:17px;margin-bottom:6px}.news-item h3{font-size:21px;margin-bottom:10px}.news-item p:last-child{margin:0;font-size:18px}.join-band{background:var(--soft);padding:42px 0 46px}.join-band p{font-size:22px;line-height:1.65;margin:0}.page-heading{padding:48px 0 24px;margin-bottom:32px;border-bottom:2px solid var(--red)}.page-heading h1{color:var(--red);margin:0}.research-content{min-height:430px;padding-bottom:65px}.research-content h2{color:var(--red)}.publications{padding-bottom:70px}.publications h2{font-size:26px;color:var(--red);margin-block:25px}.publications section+section{margin-top:52px}.publication-list{list-style-position:outside;padding-left:36px}.publication-list li{padding-left:8px;margin-bottom:21px;line-height:1.62;font-size:18px;overflow-wrap:anywhere;text-align:left}.publication-list li::marker{font-weight:400}.publication-list strong{font-weight:700}.publication-list em{font-style:italic}.pi-top{display:flex;align-items:center;gap:42px;margin-bottom:42px}.pi-photo{width:220px;height:auto}.pi-top h2{font-size:34px;color:var(--red);margin-bottom:18px}.pi-position{font-size:22px;margin:0 0 5px}.pi-body{padding-bottom:70px}.pi-body>h2{color:var(--red)}.pi-body p{margin-bottom:22px;line-height:1.7}.pi-section{margin-top:36px;padding-top:25px;border-top:1px solid var(--line)}.pi-section h2{font-size:28px;color:var(--red)}.pi-section p{margin-bottom:12px}.team-list{padding-bottom:65px}.team-section>h2{font-size:29px;color:var(--red);margin:35px 0 0;padding-bottom:13px;border-bottom:1px solid #c8a3aa}.team-section:first-child>h2{margin-top:0}.member{display:grid;grid-template-columns:205px minmax(0,1fr);gap:40px;padding:34px 0;border-bottom:1px solid var(--line)}.member-photo{width:205px;height:auto;max-height:270px;object-fit:contain;object-position:top center}.member-copy h3{font-size:27px;color:var(--red);margin:0 0 14px}.member-copy p{margin-bottom:10px;line-height:1.65;overflow-wrap:anywhere}.member-copy p:last-child{margin-bottom:0}.join-content{padding-bottom:70px}.join-intro{font-size:22px;line-height:1.65}.join-content h2{color:var(--red)}.join-content p{line-height:1.85}.join-section{border-top:1px solid var(--line);margin-top:34px;padding-top:30px}.join-section h2{font-size:29px}.join-section h3{font-size:23px;margin-top:25px;color:var(--red)}.news-page{padding-bottom:70px;max-width:960px}.news-page .news-item{padding-block:12px 30px;margin-bottom:30px}footer{background:var(--red);color:white;padding:33px 0 18px;font-size:17px}footer a{color:white}footer a:hover{color:#ffdee4}.footer-inner{display:flex;justify-content:space-between;gap:40px}.footer-title{font-size:28px;font-weight:bold;margin-bottom:5px}.footer-inner p{margin-bottom:7px}.footer-bottom{margin-top:22px;border-top:1px solid #be6976;padding-top:15px;display:flex;justify-content:space-between;gap:20px;font-size:14px}@media(min-width:1600px){.home-banner img{height:340px;aspect-ratio:auto;object-position:center}}@media(max-width:1000px){nav a{padding-inline:20px;font-size:18px}.brand{font-size:36px}.institution-logo img{width:275px}.home-updates{gap:32px}.gallery-slide>img{height:470px}}@media(max-width:760px){.wrap{width:calc(100% - 36px)}.masthead{min-height:106px;gap:18px}.brand{font-size:29px}.institution-logo img{width:235px}.menu-toggle{display:block;margin-left:auto;padding:12px 8px;border:0;color:white;background:transparent;cursor:pointer;font-weight:700}.js nav{display:none}.js nav.open{display:flex}nav{flex-wrap:wrap;padding-bottom:10px}nav a,nav a:first-child{font-size:18px;padding:10px 18px;flex-basis:33.333%;text-align:center}.home-banner{max-height:none}.home-banner img{min-height:0;width:100%;height:auto;aspect-ratio:auto}.home-introduction{padding-block:30px}.home-introduction h1{font-size:30px}.home-introduction p{font-size:21px}.gallery-slide>img{height:380px}.gallery-slide figcaption{font-size:17px;padding:14px 12px}.gallery{margin-bottom:45px}.home-updates{grid-template-columns:1fr;gap:35px}.home-research{margin-bottom:42px}.research-labels{gap:12px}.research-labels h3{font-size:18px}.research-keywords{font-size:17px}.section-title h2{font-size:29px}.page-heading{padding-top:34px}.page-heading h1{font-size:35px}.member{grid-template-columns:155px minmax(0,1fr);gap:24px}.member-photo{width:155px;max-height:215px}.pi-photo{width:185px}.pi-top{gap:28px}.footer-inner{flex-direction:column;gap:14px}.footer-bottom{gap:10px}.publication-list{padding-left:31px}.publication-list li{padding-left:3px;font-size:17px}.join-band p{font-size:20px}}@media(max-width:480px){.masthead{flex-direction:column;gap:15px;align-items:center;padding-block:23px}.brand{font-size:35px}.institution-logo img{width:240px}nav a,nav a:first-child{flex-basis:50%}.gallery-slide>img{height:310px}.research-labels{grid-template-columns:1fr;gap:0;padding-top:20px}.research-labels h3{font-size:20px;margin-bottom:13px}.member{grid-template-columns:1fr;gap:22px}.member-photo{width:185px;max-height:250px}.member-copy h3{font-size:26px}.pi-top{align-items:start;flex-direction:column;gap:23px}.pi-top h2{font-size:29px}.pi-position{font-size:20px}.footer-bottom{flex-direction:column}.section-title{margin-bottom:19px}.home-introduction p{font-size:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.navigation-bar,.gallery-controls,footer{display:none}.wrap{width:100%}.home-updates{display:block}.member,.publication-list li{break-inside:avoid}.gallery-slide>img{height:auto;max-height:400px}}

/* Homepage title on the photograph; frameless group gallery. */
.home-banner{position:relative;height:clamp(240px,27vw,400px);max-height:none;background:transparent}.home-banner img{width:100%;height:100%;min-height:0;aspect-ratio:auto;object-fit:cover;object-position:center 55%}.home-banner h1{position:absolute;inset:0;display:grid;place-items:center;padding:24px;margin:0;text-align:center;font-size:clamp(38px,5vw,72px);line-height:1.15;color:#fff;text-shadow:0 2px 8px #0009,0 1px 3px #0009}.gallery-slide>img{background:transparent}.gallery-slide figcaption{background:transparent;border-bottom:0}

/* Keep publication notes and citation links black in every link state. */
.publication-list a,.publication-list a:visited,.publication-list a:hover,.latest-publications a,.latest-publications a:visited,.latest-publications a:hover{color:#000}

/* Match team portrait frames and crop landscape photos around the centered subject. */
.member-photo{width:205px;height:270px;max-height:none;object-fit:cover;object-position:center}
.member-photo[src$="keyue-zhao.jpg"]{object-position:30% center;align-self:center}

/* Keep the institute mark centered and place each gallery caption on its photograph. */
.masthead{justify-content:center;min-height:96px}
.gallery-slide{min-height:540px;display:flex;align-items:center;justify-content:center}
.gallery-slide[hidden]{display:none}
.gallery-media{position:relative;display:inline-block;max-width:100%;vertical-align:top}
.gallery-media img{display:block;width:auto;height:auto;max-width:100%;max-height:540px}
.gallery-media figcaption{position:absolute;left:0;right:0;bottom:0;min-height:0;padding:30px 16px 13px;border:0;background:linear-gradient(transparent,rgba(0,0,0,.82));color:#fff;text-align:center;font-size:18px;line-height:1.35}
@media(max-width:760px){.gallery-slide{min-height:380px}.gallery-media img{max-height:380px}.masthead{min-height:90px}}
@media(max-width:480px){.gallery-slide{min-height:310px}.gallery-media img{max-height:310px}.gallery-media figcaption{padding:28px 10px 10px;font-size:14px;line-height:1.3}.masthead{min-height:0}}
@media(max-width:760px){.member-photo{width:155px;height:215px}}
@media(max-width:480px){.member-photo{width:185px;height:250px}}

/* Compact carousel navigation stays inside the visible photograph. */
.gallery-media figcaption{padding-bottom:42px}
.gallery-controls{position:absolute;right:8px;bottom:6px;z-index:2;gap:0;margin:0;align-items:center;justify-content:flex-end}
.gallery-controls button{display:grid;place-items:center;width:28px;height:28px;min-width:28px;min-height:28px;margin:0;padding:0;border:0;background:transparent}
.gallery-controls button:hover{background:transparent}
.gallery-controls button::before{content:"";width:8px;height:8px;border-radius:50%;background:#ffffff99;box-shadow:0 1px 4px #0009}
.gallery-controls button[aria-current="true"]::before{width:11px;height:11px;background:#fff}
@media(max-width:480px){.gallery-media figcaption{padding:22px 10px 40px}}

/* Pair each research diagram with its own description on all screen sizes. */
.research-keywords{max-width:1040px;margin:0 auto 25px;color:var(--muted);font-size:18px;line-height:1.65;text-align:center}
.research-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}
.research-card{min-width:0}
.research-art{position:relative;overflow:hidden;width:100%;aspect-ratio:824/620}
.research-art img{display:block;width:100%;height:100%;object-fit:contain}
.research-art img[src$="research-overview.jpg"]{position:absolute;top:0;width:300%;max-width:none;height:100%;object-fit:fill}
.research-crop-0 img[src$="research-overview.jpg"]{left:0}
.research-crop-1 img[src$="research-overview.jpg"]{left:-100%}
.research-crop-2 img[src$="research-overview.jpg"]{left:-200%}
.research-card figcaption{padding:15px 5px 0;color:var(--red);font-size:21px;font-weight:700;line-height:1.3;text-align:center}
@media(max-width:760px){.research-grid{grid-template-columns:1fr;gap:26px;max-width:470px;margin-inline:auto}.research-keywords{font-size:19px;margin-bottom:24px}.research-card figcaption{padding-top:12px;font-size:21px}}
.research-keywords{max-width:950px;font-size:22px;text-wrap:balance}
@media(max-width:760px){.research-keywords{font-size:19px}}
