:root{--green:#123e36;--teal:#007d69;--ink:#17231f;--paper:#fafbf8;--line:#d5dcd5;--muted:#64716a}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,'Helvetica Neue','PingFang TC','Noto Sans TC',sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;height:auto}h1,h2,h3,h4,p,figure{margin:0}a:focus-visible,button:focus-visible{outline:3px solid #13a887;outline-offset:6px}header{height:90px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(250,251,248,.97);z-index:10}.logo{font-size:27px;font-weight:900;letter-spacing:-1px;line-height:1}.logo span{display:block;font-size:10px;letter-spacing:1.7px;margin-top:7px}nav{display:flex;gap:32px}nav a{font-size:13px;font-weight:600;letter-spacing:.04em;position:relative}nav a:after{content:'';position:absolute;bottom:-8px;height:2px;background:var(--teal);left:0;right:100%;transition:right .25s}nav a:hover:after,nav a.active:after{right:0}.menu{display:none}.skip{position:fixed;top:-100px;left:20px;background:white;padding:12px;z-index:30}.skip:focus{top:10px}.hero{padding:36px 4.5% 0}.eyebrow,.section-label{font-size:12px;font-weight:600;letter-spacing:.08em}.hero-top{display:flex;justify-content:space-between}.hero h1{font-size:clamp(100px,16.5vw,245px);font-weight:700;line-height:.83;letter-spacing:-.075em;margin:65px 0 38px;color:var(--green)}.hero h1>span{display:block;font-size:.65em;letter-spacing:-.065em;line-height:1.1}.hero-star{font-size:.8em;font-weight:400;display:inline-block;margin-left:5vw;color:var(--teal)}.hero-bottom{display:flex;justify-content:space-between;gap:24px;padding-bottom:45px}.hero-bottom p{font-size:18px;line-height:1.45}.hero-bottom .zh{font-size:16px;margin-top:12px}.hero-right{align-self:end;min-width:35%}.hero-right p{font-size:14px}.text-link{display:flex;justify-content:space-between;border-bottom:1px solid var(--ink);padding:18px 0 12px;font-size:13px}.hero-strip{display:flex;justify-content:space-between;gap:22px;border-top:1px solid var(--line);padding:23px 0;font-size:12px;color:var(--muted)}.section{padding:94px 4.5%}.section-label{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px;margin-bottom:58px}.section-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:50px;align-items:end;margin-bottom:60px}h2{font-size:clamp(36px,4.4vw,68px);font-weight:500;letter-spacing:-.045em;line-height:1.08}em{font-style:normal;color:var(--teal)}.section-intro>p{font-size:16px;color:var(--muted);line-height:1.9;padding-bottom:3px}.research{background:var(--green);color:#fff}.research .section-label{border-color:#57736b}.research .section-intro>p,.research .fine{color:#c4d5cd}.research em{color:#89ccb4}.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.pillars article{border-top:1px solid #6d887e;padding-top:24px}.number{font-size:13px;color:#a2c8b6}.pillars h3{font-size:clamp(28px,3.4vw,50px);font-weight:400;line-height:1.12;letter-spacing:-.025em;margin:22px 0 18px}.pillars p{font-size:19px}.fine{font-size:14px;color:var(--muted)}.pillars .fine{max-width:310px;margin-top:20px;line-height:1.8}.impact-line{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:30px 0;border-bottom:1px solid #57736b;margin-top:34px}.impact-line>span{font-size:12px;letter-spacing:.06em}.impact-line strong{font-size:32px;font-weight:400}.featured{margin-top:90px}.feature-title{display:flex;justify-content:space-between;gap:30px;align-items:end;margin:26px 0 35px}.feature-title h3{font-size:42px;font-weight:400;line-height:1.1;letter-spacing:-.025em}.feature-title p{line-height:2}.research-images{display:grid;grid-template-columns:1fr 1fr;gap:28px}.research-images a{display:flex;align-items:center;background:white;aspect-ratio:1.6;overflow:hidden}.research-images img{object-fit:contain;max-height:100%;transition:transform .4s}.research-images a:hover img{transform:scale(1.025)}.research-images figcaption{display:grid;gap:8px;margin-top:20px;font-size:12px}.research-images strong{font-size:20px;font-weight:400}.research-images figcaption>span:last-child{color:#bad2c7}.platform-links{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:38px}.platform-links a{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #6d887e;border-bottom:1px solid #6d887e;padding:24px 0;transition:color .2s}.platform-links a:hover{color:#a8e5cd}.platform-links a>span:first-child{font-size:12px}.platform-links strong{display:block;font-size:18px;font-weight:400;margin-top:8px}.platform-links a>span:last-child{font-size:30px}.method-list{list-style:none;padding:0;margin:0}.method-list li{display:grid;grid-template-columns:1fr 2fr 1fr;gap:25px;align-items:center;padding:26px 0;border-top:1px solid var(--line)}.method-list li>span{font-size:12px;color:var(--muted)}.method-list h3{font-size:24px;font-weight:400;line-height:1.3}.method-list p{font-size:14px}.method-list .method-impact h3{font-size:44px;color:var(--teal)}.teaching{background:#eef1ed}.teaching-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%}.small-title{font-size:14px;letter-spacing:.05em;font-weight:500;display:flex;justify-content:space-between;border-bottom:1px solid #aebcb1;padding-bottom:22px}.small-title span{font-size:14px;letter-spacing:0}.courses{padding:0;list-style:none;margin:0}.courses li{display:flex;gap:25px;padding:23px 0;border-bottom:1px solid var(--line);font-size:22px}.courses li>span{font-size:12px;color:var(--muted);padding-top:6px}.courses small{display:block;color:var(--muted);font-size:14px;margin-top:5px}.cases article{margin:28px 0}.cases article>span{font-size:12px;color:var(--muted)}h4{font-size:21px;font-weight:400;margin:8px 0}.cases p{font-size:14px;color:var(--muted)}.tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:36px}.tags span{border:1px solid #bcc9bf;padding:5px 13px;border-radius:30px;font-size:12px}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 30px}.work-grid figure:nth-child(even){padding-top:85px}.work-grid a{display:block;overflow:hidden;background:#e3e8e3}.work-grid img{aspect-ratio:1.35;object-fit:cover;transition:transform .6s}.work-grid a:hover img{transform:scale(1.04)}.work-grid figcaption{display:flex;justify-content:space-between;gap:20px;margin-top:20px}.work-grid h3{font-size:27px;font-weight:500;letter-spacing:-.03em}.work-grid p{font-size:14px;color:var(--muted);margin-top:3px}.work-grid figcaption>span{font-size:10px;padding-top:10px;max-width:150px;text-align:right}.more-works{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:65px;padding:30px 0;gap:20px}.more-works span{font-size:12px;color:var(--muted)}.more-works h3{font-size:27px;font-weight:400}.outputs{padding-top:30px}.timeline article{display:grid;grid-template-columns:1fr 2.3fr;gap:30px;padding:33px 0;border-top:1px solid var(--line)}.timeline article>strong{font-size:29px;font-weight:400;letter-spacing:-.03em}.timeline article span{font-size:12px;color:var(--teal)}.timeline h3{font-size:23px;font-weight:400;margin:10px 0}.timeline p{font-size:14px;color:var(--muted)}.about{background:#e9ede8}.director{display:grid;grid-template-columns:.9fr 1.1fr;gap:9%;align-items:center}.director>img{aspect-ratio:3/4;object-fit:cover;object-position:50% 30%;filter:none}.director h2{font-size:52px;letter-spacing:.03em;margin:30px 0 10px}.director h3{font-size:22px;font-weight:400;letter-spacing:-.025em}.position{margin:14px 0 28px}.director-focus{margin-top:30px;display:grid;gap:9px}.director-focus span{display:flex;justify-content:space-between;border-top:1px solid #ccd4ca;padding-top:9px;font-size:14px}.director-focus b{font-weight:400;color:var(--muted)}footer{background:var(--green);color:white;padding:70px 4.5% 30px}footer h2{font-size:clamp(48px,8.8vw,132px);line-height:.98;margin:45px 0 60px;letter-spacing:-.055em}footer em{color:#8dcdb5}.footer-bottom{border-top:1px solid #6d887e;padding-top:25px;display:flex;justify-content:space-between;gap:25px;font-size:12px;color:#c4d5cd}.footer-bottom a{align-self:end;white-space:nowrap}
@media(min-width:1600px){.section,.hero,footer{padding-left:max(4.5%,calc((100vw - 1450px)/2));padding-right:max(4.5%,calc((100vw - 1450px)/2))}}@media(max-width:800px){header{height:74px}.menu{display:flex;gap:20px;align-items:center;background:none;border:0;font-size:12px;padding:12px 0}.menu span{font-size:23px}nav{display:none;position:absolute;top:74px;left:0;right:0;background:var(--paper);padding:20px 5% 30px;border-bottom:1px solid var(--line);flex-direction:column;gap:20px}nav.open{display:flex}.hero{padding-top:25px}.hero-top{font-size:10px}.hero h1{margin-top:62px;font-size:22vw}.hero h1>span{font-size:.58em}.hero-star{margin-left:3vw}.hero-bottom{display:block}.hero-bottom p{font-size:17px}.hero-right{margin-top:28px}.hero-right p{font-size:12px}.hero-strip{display:block;font-size:12px}.hero-strip span:last-child{display:none}.section{padding:64px 5%}.section-label{margin-bottom:38px}.section-intro{grid-template-columns:1fr;gap:25px;margin-bottom:38px}.section-intro>p{font-size:15px}h2{font-size:42px}.pillars{grid-template-columns:1fr;gap:27px}.pillars article{display:grid;grid-template-columns:35px 1fr;column-gap:10px;padding-top:20px}.pillars h3{font-size:32px;margin:0 0 12px}.pillars h3 br{display:none}.pillars p,.pillars .fine{grid-column:2}.pillars p{font-size:17px}.pillars .fine{max-width:none;margin-top:10px}.impact-line{align-items:end}.impact-line>span{max-width:160px;font-size:10px}.impact-line strong{font-size:25px}.featured{margin-top:60px}.feature-title{display:block}.feature-title h3{font-size:34px}.feature-title p{margin-top:22px;font-size:14px}.research-images,.platform-links{grid-template-columns:1fr;gap:30px}.research-images figcaption{gap:4px}.method-list li{grid-template-columns:1fr;gap:8px;padding:22px 0}.method-list h3{font-size:23px}.teaching-grid{grid-template-columns:1fr;gap:50px}.work-grid{gap:35px;grid-template-columns:1fr}.work-grid figure:nth-child(even){padding-top:0}.work-grid figcaption>span{font-size:10px}.more-works{grid-template-columns:1fr 1fr}.more-works>span{grid-column:1/-1}.timeline article{grid-template-columns:1fr;gap:12px}.timeline article>strong{font-size:26px}.timeline h3{font-size:20px}.director{grid-template-columns:1fr;gap:40px}.director>img{max-height:600px}.director h2{font-size:42px}.footer-bottom{flex-direction:column}.footer-bottom a{align-self:start}footer h2{font-size:12vw}.hero-bottom{padding-bottom:25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Chinese–English heading hierarchy */
nav a{display:flex;flex-direction:column;align-items:center;line-height:1.4;gap:3px}.nav-zh{font-size:15px;letter-spacing:.12em}.nav-en{font-size:12px;letter-spacing:.04em}
.hero h1>.hero-zh{font-size:clamp(23px,3vw,43px);font-weight:500;letter-spacing:.08em;line-height:1.5;margin-top:30px}.tagline-en{display:block;margin-top:7px;font-size:14px}.bilingual-title{line-height:1.35;letter-spacing:.015em;font-size:clamp(34px,3.9vw,58px)}.title-en{display:block;font-size:20px;line-height:1.5;letter-spacing:0;font-weight:400;margin-top:18px}.research .title-en{color:#b8d8c9}.pillars .pillar-title{font-size:36px;line-height:1.4;letter-spacing:.02em}.pillar-title>span{display:block;font-size:23px;line-height:1.4;letter-spacing:0;margin-top:10px}.impact-line strong{font-size:27px}.impact-line small{font-size:16px;font-weight:400}.feature-title h3{font-size:34px;line-height:1.4}.method-en{display:block;font-size:17px;line-height:1.5;margin-top:8px;color:var(--muted)}.method-list .method-impact h3{font-size:33px}footer .footer-title{font-size:clamp(48px,7vw,104px);line-height:1.25;letter-spacing:.02em}footer .title-en{font-size:clamp(16px,2.3vw,30px);letter-spacing:.02em;color:#c4d5cd;margin-top:24px}
@media(max-width:800px){nav a{flex-direction:row;justify-content:space-between}.hero-top{gap:16px}.hero-top>span:first-child{max-width:245px}.hero-top>span:last-child{white-space:nowrap}.hero h1>.hero-zh{font-size:clamp(18px,5.5vw,28px);letter-spacing:.02em;margin-top:22px}.hero h1{margin-top:42px}.bilingual-title{font-size:34px;line-height:1.45;letter-spacing:0}.title-en{font-size:17px;margin-top:14px}.pillars .pillar-title{font-size:29px}.pillar-title>span{font-size:20px}.impact-line{flex-wrap:wrap}.impact-line strong{font-size:23px}.feature-title h3{font-size:29px}.method-list h3{font-size:23px}.method-en{font-size:16px}footer .footer-title{font-size:12vw}}

/* Refined lab identity: full bilingual name leads the hero. */
.hero-heading{padding:65px 0 48px;max-width:1120px}.lab-wordmark{font-size:22px;font-weight:600;letter-spacing:.055em;color:var(--teal);margin-bottom:25px}.hero h1.lab-name{font-size:clamp(30px,4.1vw,60px);font-weight:500;letter-spacing:.025em;line-height:1.45;margin:0 0 24px;color:var(--green)}.lab-name-en{font-size:clamp(24px,3.1vw,44px);font-weight:400;line-height:1.25;letter-spacing:-.025em;color:var(--green)}.hero-bottom{justify-content:flex-end;padding-bottom:36px}.hero-right{min-width:38%}
@media(max-width:800px){.hero-heading{padding:44px 0 32px}.lab-wordmark{font-size:17px;margin-bottom:20px}.hero h1.lab-name{font-size:30px;line-height:1.5;letter-spacing:.015em;margin-bottom:20px;max-width:20em}.lab-name-en{font-size:25px;line-height:1.35}.hero-right{margin-top:0}.hero-bottom{padding-bottom:25px}}
/* Image-led editorial home and individual projects */
.hero-visual-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:5%;align-items:center;margin:40px 0 30px}.hero-heading{padding:30px 0}.hero h1.lab-name{font-size:clamp(28px,3vw,44px);max-width:10em}.lab-name-en{font-size:clamp(21px,2.15vw,32px)}.hero-image{margin:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.hero-image img{aspect-ratio:1.25;object-fit:cover}.hero-image figcaption{font-size:12px;padding-top:12px;color:var(--muted)}.hero-bottom{padding-bottom:24px}.hero-right{display:flex;justify-content:space-between;align-items:center;gap:35px;width:100%;min-width:0}.hero-right .text-link{min-width:280px}.teaching-photo{margin-bottom:45px;display:grid;grid-template-columns:1.2fr 1fr;gap:35px;align-items:end}.teaching-photo img{max-height:460px;object-fit:cover}.teaching-photo figcaption{font-size:20px;color:var(--green)}.work-title-cover{aspect-ratio:1.35;display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:40px;background:#e8eee7;color:var(--green)}.work-title-cover span{font-size:14px;margin-top:25px}.work-grid figure:nth-child(even){padding-top:40px}.sdg-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.sdg-tags span{border:1px solid #b8cdbb;color:#215b42;font-size:12px;padding:5px 10px;border-radius:3px}.sdg-section{padding-top:60px;margin-top:15px}.sdg-section>h3{font-size:32px;line-height:1.5;margin:20px 0}.sdg-intro{max-width:800px;color:#c4d5cd;line-height:1.9}.sdg-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin-top:35px}.sdg-grid article{border-top:1px solid #5d7d6f;padding-top:18px}.sdg-number{font-size:56px;line-height:1;color:#b2ddc7}.sdg-grid h4{font-size:19px;margin:18px 0 12px}.sdg-grid p{font-size:14px;color:#c4d5cd}.sdg-note{font-size:12px;color:#b5c9bd;margin-top:28px}.admin-entry{display:block;background:var(--green);color:#c4d5cd;padding:0 4.5% 25px;font-size:12px;text-align:right}.work-detail{max-width:1300px;margin:auto;padding:65px 5% 80px}.work-detail h1{font-size:clamp(40px,6vw,85px);font-weight:500;line-height:1.2;margin:25px 0;letter-spacing:-.03em}.work-subtitle{font-size:24px;margin-bottom:15px}.detail-cover{margin:45px 0;max-height:850px;object-fit:contain;background:#eef1ec}.work-description{display:grid;grid-template-columns:1fr 1.8fr;gap:50px;margin:65px 0}.work-description h2{font-size:30px;line-height:1.4}.work-description p{font-size:18px;line-height:1.9}.detail-gallery{display:grid;grid-template-columns:1fr 1fr;gap:25px}.detail-gallery img{aspect-ratio:1.3;object-fit:contain;background:#edf1ec}.back-link{display:block;margin-top:55px;padding:20px 0;border-top:1px solid var(--line)}
@media(max-width:800px){.hero-visual-layout{grid-template-columns:1fr;gap:15px;margin-top:15px}.hero-heading{padding:22px 0 10px}.hero h1.lab-name{font-size:30px;max-width:none}.lab-name-en{font-size:24px}.hero-image img{aspect-ratio:1.35}.hero-right{display:block}.hero-right .text-link{min-width:0;margin-top:10px}.teaching-photo{grid-template-columns:1fr;gap:12px}.teaching-photo figcaption{font-size:16px}.sdg-grid{grid-template-columns:1fr 1fr;gap:25px 18px}.sdg-section>h3{font-size:27px}.sdg-grid h4{font-size:17px}.sdg-number{font-size:44px}.work-grid figure:nth-child(even){padding-top:0}.work-description,.detail-gallery{grid-template-columns:1fr}.work-description{gap:25px;margin:40px 0}.work-subtitle{font-size:20px}}
/* Exhibition imagery, research structure, editorial reading. */
.exhibition-hero{display:block;min-height:0;padding:54px 5vw 40px;position:relative;isolation:isolate}.hero-masthead{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:36px}.hero-masthead h1{font-size:clamp(30px,4.4vw,64px);line-height:1.35;max-width:1000px;letter-spacing:.035em;margin:18px 0}.hero-english{font-size:clamp(13px,1.4vw,19px);letter-spacing:.02em}.hero-explore{font-size:15px;white-space:nowrap;border-bottom:1px solid;padding-bottom:10px}.hero-explore span{font-size:11px}.hero-editorial{display:grid;grid-template-columns:1fr 1.2fr;gap:30px;padding:36px 0 5px;border-bottom:1px solid #c3cec6}.hero-editorial p{font-size:23px;line-height:1.7}.hero-editorial small{display:block;font-size:13px;margin:8px 0 30px;color:#53675b}.section{position:relative;isolation:isolate}.section-background{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.section-background img{width:100%;height:100%;object-fit:cover;opacity:.12}.section-background:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#f7f9f0cc,#ffffff77)}.slideshow{margin:28px 0 0}.slide{margin:0}.slide[hidden]{display:none!important}.image-zoom{display:block;width:100%;border:0;background:transparent;padding:0;cursor:zoom-in;color:inherit}.slide img{display:block;width:100%;height:clamp(260px,50vw,660px);object-fit:contain;background:#e9ece6}.banner-slideshow{margin:0}.banner-slideshow img{height:clamp(280px,48vw,700px);object-fit:cover;background:#14291e}.slide figcaption{padding:20px 0 4px;max-width:900px;font-size:15px;line-height:1.7}.slide figcaption strong{font-size:20px;font-weight:500;display:block}.slide figcaption p{margin:8px 0;color:#53675b}.slide-controls{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #bfcfc2;padding:12px 0 18px;font-size:12px;font-variant-numeric:tabular-nums}.slide-controls>div{display:flex;gap:8px}.slide-controls button{border:1px solid #b7c8ba;background:transparent;color:inherit;min-width:44px;min-height:44px;padding:8px 15px;cursor:pointer}.slide-controls button:hover{background:#164536;color:white}.section-media:empty{display:none}.section-media{margin-top:36px}.resource-links:empty{display:none}.resource-link{display:flex;justify-content:space-between;gap:20px;padding:22px 0;border-bottom:1px solid #a7bba9;font-size:17px}.document-list{margin-top:45px}.document-list>h3{font-size:24px;margin-bottom:20px}.document-list article{padding:25px 0;border-top:1px solid #b7c8ba;display:grid;grid-template-columns:60px 1fr;gap:22px}.pdf-label{font-size:12px;border:1px solid #164536;padding:10px;height:fit-content}.document-list h4{font-size:20px;margin:0 0 8px}.document-list p{font-size:15px;line-height:1.8}.pdf-actions{display:flex;gap:25px;margin-top:18px;font-size:14px}.pdf-actions a{text-decoration:underline;text-underline-offset:5px}.work-grid{gap:60px 32px}.work-grid>figure:nth-child(5n+1){grid-column:1/-1}.work-grid>figure:nth-child(5n+1)>a>img{aspect-ratio:2.1;object-fit:cover}.work-grid figure{margin:0}.work-grid img{transition:filter .25s}.work-grid a:hover img{filter:brightness(1.04)}.editorial-photo{margin:0}.editorial-photo img{display:block;width:100%;height:auto;object-fit:contain}.editorial-photo figcaption{padding:16px 0 28px;line-height:1.8;font-size:14px}.editorial-photo figcaption strong{font-size:18px;display:block}.editorial-photo figcaption p{margin:6px 0;color:#566d60}.work-detail .detail-cover{margin:40px 0;width:100%;height:auto}.work-detail .detail-cover img{max-height:850px;background:#eff2eb;object-fit:contain}.editorial-gallery{align-items:start;margin-top:70px;gap:44px 32px}.editorial-gallery>figure:nth-child(3n+1){grid-column:1/-1}.editorial-gallery img{aspect-ratio:auto;height:auto}.lightbox{max-width:96vw;max-height:94vh;padding:50px 20px 20px;border:0;background:#f8faf4;color:#153c30}.lightbox::backdrop{background:#0a1c16ed}.lightbox img{display:block;max-width:88vw;max-height:73vh;object-fit:contain;margin:auto}.lightbox p{max-width:900px;margin:15px auto 0;font-size:14px;white-space:pre-line}.lightbox-close{position:absolute;right:15px;top:12px;padding:9px 14px;background:white;border:1px solid #b9c8bb;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #729244;outline-offset:5px}
@media(max-width:700px){.hero-masthead{display:block}.hero-masthead h1{font-size:34px}.hero-explore{display:inline-block;margin-top:20px}.exhibition-hero{padding:30px 6vw}.hero-editorial{grid-template-columns:1fr;gap:10px}.hero-editorial p{font-size:19px}.work-grid>figure:nth-child(5n+1)>a>img{aspect-ratio:1.35;object-fit:contain}.slide img{height:320px}.banner-slideshow img{height:310px;object-fit:contain}.editorial-gallery{display:block}.editorial-gallery>figure{margin:30px 0}.document-list article{grid-template-columns:45px 1fr;gap:15px}.pdf-label{padding:7px}.hero-masthead .eyebrow{font-size:9px}.slide figcaption strong{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.hero-lab-intro{font-size:15px;line-height:1.8;max-width:720px;margin-top:20px;color:#4e6759}.sdg-section{position:relative;isolation:isolate;padding:28px 0}.hero-masthead>div{min-width:0}.hero-explore{font-size:12px;white-space:normal;max-width:150px;flex-shrink:0}.banner-slideshow img{object-fit:contain;height:auto;max-height:700px;aspect-ratio:16/9}.hero-masthead h1{font-size:clamp(30px,4vw,58px)}@media(max-width:700px){.banner-slideshow img{height:auto;max-height:none;aspect-ratio:3/2}.hero-masthead h1{font-size:32px}.hero-lab-intro{font-size:14px}}
.hero-masthead h1{text-wrap:balance}.hero-explore{max-width:260px}

/* Each method keeps its own complete source diagram and attribution. */
.method-figure{grid-column:2/-1;margin:8px 0 18px;min-width:0}.method-figure .image-zoom{display:block;width:100%;background:#fff;border:1px solid var(--line);padding:24px;cursor:zoom-in}.method-figure img{width:100%;height:auto;max-height:470px;object-fit:contain}.method-figure figcaption{padding-top:14px;max-width:760px;line-height:1.8}.method-list .method-figure p{font-size:13px;color:var(--muted);margin:6px 0}.method-figure-hint{font-size:11px;letter-spacing:.06em;color:var(--teal)}.method-figure .text-link{display:inline-block;font-size:12px;margin-top:5px}
@media(max-width:800px){.method-figure{grid-column:1/-1;margin-top:15px}.method-figure .image-zoom{padding:12px}.method-figure img{max-height:460px}.method-list li{padding-bottom:32px}}

.home-banner-image{position:relative;margin:0 0 32px;width:100%}.home-banner-image img{display:block;width:100%;height:auto;object-fit:contain;opacity:1}.home-banner-image figcaption:empty{display:none}@media(max-width:700px){.home-banner-image{margin-bottom:24px}}

.research-infographic{margin:0 0 48px}.research-infographic img{display:block;width:100%;height:auto}.research-infographic figcaption{display:flex;justify-content:space-between;gap:12px;color:#c4d5cd;font-size:13px;margin-top:16px}.research-infographic figcaption span{white-space:nowrap}@media(max-width:700px){.research-infographic figcaption{font-size:11px;flex-wrap:wrap}}
.method .sdg-section{margin:0 0 56px;padding:28px 0 36px}.method .sdg-intro,.method .sdg-grid p{color:#4d665b}.method .sdg-number{color:#247858}.method .sdg-grid article{border-color:#b8cbbf}

.method .sdg-section{margin:56px 0 0;padding:36px 0;border-top:1px solid #b8cbbf}.method .sdg-intro,.method .sdg-grid p{color:#4d665b}.method .sdg-number{color:#247858}.method .sdg-grid article{border-color:#b8cbbf}

.platform-previews a{display:grid;grid-template-columns:1fr auto;gap:20px;padding-top:0;align-content:start}.platform-previews a>img{grid-column:1/-1;display:block;width:100%;height:auto;aspect-ratio:1.55;object-fit:contain;background:#fff}.platform-previews a>span{font-size:14px}.platform-previews a>span:last-child{font-size:26px}.platform-previews strong{line-height:1.5}.method-list h3 a:hover{text-decoration:underline;text-underline-offset:5px}

/* SBLC V2: one continuous path from research to student practice. */
@media(max-width:1150px){header{height:74px}.menu{display:flex;gap:20px;align-items:center;background:none;border:0;font-size:14px;padding:12px 0}nav{display:none;position:absolute;top:74px;left:0;right:0;background:var(--paper);padding:20px 5% 30px;border-bottom:1px solid var(--line);flex-direction:column;gap:18px}nav.open{display:flex}nav a{flex-direction:row;justify-content:space-between}}
@media(min-width:1151px){nav{gap:clamp(12px,1.5vw,28px)}.nav-zh{font-size:14px}.nav-en{font-size:11px}.logo{flex-shrink:0;margin-right:22px}}
.work-jump{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 70px}.work-jump a{display:flex;justify-content:space-between;align-items:center;border:1px solid #b9c9bf;padding:18px 20px;font-size:17px;transition:background .2s,color .2s}.work-jump a:hover{background:var(--green);color:#fff}.work-jump span{font-size:13px}.work-category{scroll-margin-top:110px;margin:0 0 94px}.work-category:last-child{margin-bottom:0}.work-category-heading{display:grid;grid-template-columns:55px 1fr;gap:22px;border-top:1px solid #aabdb1;padding:24px 0 34px}.work-category-heading>span{color:var(--teal);font-size:15px}.work-category-heading h3{font-size:clamp(29px,3.2vw,46px);font-weight:500;line-height:1.3}.work-category-heading p{max-width:640px;margin-top:9px;color:#52685b;font-size:16px}.work-category-heading .category-en{font-size:14px;margin-top:4px;letter-spacing:.025em}.work-category .work-grid{margin-top:0}.work-grid figcaption h4{font-size:21px;font-weight:500;line-height:1.5}.work-grid figcaption h4 a:hover{text-decoration:underline;text-underline-offset:4px}.teaching-v2{margin-top:95px;border-top:1px solid #aabdb1;padding-top:42px}.v2-section-heading{max-width:750px;margin-bottom:42px}.v2-section-heading span,.teaching-path-copy>span,.outcome-types article>span{font-size:13px;letter-spacing:.08em;color:#316854}.v2-section-heading h3{font-size:clamp(30px,3.4vw,48px);font-weight:500;margin:10px 0}.v2-section-heading p{font-size:17px;color:#53675b}.teaching-path{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.teaching-path article{background:#fff;min-width:0}.teaching-path-image{aspect-ratio:1.55;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#e4ebe5}.teaching-path-image img{width:100%;height:100%;object-fit:contain}.teaching-path-copy{padding:22px 22px 28px}.teaching-path-copy h4{font-size:23px;font-weight:500;margin:12px 0}.teaching-path-copy p{font-size:16px;line-height:1.8;color:#4f6257}.teaching-path-copy a{display:inline-block;margin-top:18px;border-bottom:1px solid;font-size:15px}.outcomes-v2{margin-bottom:58px}.outcome-types{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.outcome-types article{border-top:1px solid #aabdb1;padding:20px 0 24px}.outcome-types h3{font-size:23px;font-weight:500;margin:12px 0}.outcome-types p{font-size:16px;line-height:1.8;color:#53675b}.outcome-image{margin-top:28px}.outcome-image img{width:100%;max-height:490px;object-fit:contain;background:#e7ece7}.outcome-image figcaption{font-size:14px;color:#53675b;margin-top:12px}
@media(max-width:800px){.work-jump{grid-template-columns:1fr;gap:8px;margin-bottom:45px}.work-category{margin-bottom:65px}.work-category-heading{grid-template-columns:35px 1fr;gap:13px}.work-category-heading p{font-size:15px}.teaching-v2{margin-top:62px}.teaching-path,.outcome-types{grid-template-columns:1fr}.teaching-path{gap:18px}.teaching-path-image{aspect-ratio:1.7}.outcome-types{gap:6px}.work-grid figcaption h4{font-size:20px}}

/* Featured low-carbon study follows the overview in Projects & Outcomes. */
.featured-outcomes{margin:72px 0 80px;padding:38px 0 46px;border-top:1px solid #aabdb1;border-bottom:1px solid #aabdb1;color:var(--ink)}.featured-outcomes .eyebrow{color:var(--teal)}.featured-outcomes .feature-title .fine{color:#53675b}.featured-outcomes .research-images figcaption>span:last-child{color:#416855}.featured-outcomes .platform-links a{border-color:#aabdb1}.featured-outcomes .platform-links a:hover{color:var(--teal)}@media(max-width:800px){.featured-outcomes{margin:54px 0 60px;padding:28px 0 36px}}

/* Methods become teaching material in three research domains. */
.material-grid h4::after{content:"";grid-column:2;grid-row:1;width:var(--domain-icon-size,96px);height:var(--domain-icon-size,96px);background:center/contain no-repeat var(--domain-icon-url,url('/assets/icon-brand-sustainability.svg'));transform:translate(calc(var(--domain-icon-x,0px) - var(--domain-title-x,0px)),calc(var(--domain-icon-y,0px) - var(--domain-title-y,0px)))}
.material-grid article:nth-child(2) h4::after{background-image:var(--domain-icon-url,url('/assets/icon-circular-design.svg'))}
.material-grid article:nth-child(3) h4::after{background-image:var(--domain-icon-url,url('/assets/icon-low-carbon.svg'))}
.domain-materials{margin-top:56px}.domain-materials>h3{font-size:clamp(26px,3vw,38px);font-weight:500;line-height:1.45}.material-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:36px}.material-grid article{border-top:1px solid #6d887e;padding-top:22px}.material-grid h4{font-size:26px;margin:15px 0 22px}.material-grid h4>span{display:block;font-size:17px;color:#c4d5cd;margin-top:6px}.material-grid dl{margin:0}.material-grid dt{font-size:14px;color:#a9d9c5;margin-top:18px}.material-grid dd{font-size:16px;line-height:1.85;margin:7px 0 0}.materials-link{display:inline-block;margin-top:30px;border-bottom:1px solid #a9d9c5;padding-bottom:6px;font-size:16px}.nstc-project>.featured-outcomes{grid-column:1/-1;margin:4px 0 0;padding:30px 0 0;border-bottom:0}.featured-outcomes .feature-title h4{font-size:30px;font-weight:400;line-height:1.4}.nstc-project .featured-outcomes span{font-size:14px;color:var(--muted)}.nstc-project .featured-outcomes .title-en{font-size:20px}.nstc-project .featured-outcomes .feature-title p{font-size:16px}.nstc-project .featured-outcomes .research-images strong{font-size:20px}.nstc-project .featured-outcomes .eyebrow{font-size:14px}.method-list li>span{font-size:14px}.method-list p{line-height:1.8}@media(max-width:800px){.material-grid{grid-template-columns:1fr;gap:26px}.domain-materials{margin-top:40px}.nstc-project>.featured-outcomes{margin:8px 0 0}.featured-outcomes .feature-title h4{font-size:26px}}
/* Keep the research title and its icon prominent; give method notes a quieter, separate reading tier. */
footer>.eyebrow,.footer-title-first,.footer-title em{display:inline-block}
.material-grid article{min-width:0;padding-top:26px}
.material-grid h4{display:grid;grid-template-columns:minmax(0,max-content) max-content;align-items:center;justify-content:start;column-gap:12px;font-size:var(--domain-title-size,34px);font-weight:650;line-height:1.28;letter-spacing:.015em;margin:12px 0 24px;padding-bottom:22px;border-bottom:1px solid #66877a;overflow-wrap:anywhere;position:relative;left:var(--domain-title-x,0px);top:var(--domain-title-y,0px)}
.material-grid h4>span[lang="en"]{grid-column:1/-1;grid-row:2;display:block;font-size:15px;font-weight:400;line-height:1.5;letter-spacing:.01em;color:#b7d3c5;margin-top:12px}
.material-grid h4>span.cms-text-style{display:inline;font-size:inherit;color:inherit;line-height:inherit;margin:0}
.material-grid dt{font-size:14px;font-weight:500;line-height:1.5;color:#a9d9c5;margin-top:25px}
.material-grid dt:first-child{margin-top:0}
.material-grid dd{font-size:16px;font-weight:400;line-height:1.8;color:#f0f6f1;margin:8px 0 0;overflow-wrap:anywhere}
@media(max-width:680px){.material-grid h4{font-size:min(var(--domain-title-size,34px),14vw);margin-bottom:20px;padding-bottom:18px}.material-grid h4::after{width:min(var(--domain-icon-size,96px),27vw);height:min(var(--domain-icon-size,96px),27vw)}.material-grid dt{margin-top:20px}}
/* V3.1 editorial blocks */
.v31-section{background:#f5f8f5}.v31-section>.section-label{margin-bottom:3rem}.v31-blocks{display:grid;gap:22px;grid-template-columns:repeat(2,minmax(0,1fr))}.v31-grid .v31-blocks{grid-template-columns:repeat(4,minmax(0,1fr))}.v31-stack .v31-blocks{grid-template-columns:1fr}.v31-block{min-width:0;background:white;border:1px solid #d5e1d9;overflow:hidden}.v31-block.wide{grid-column:1/-1}.v31-block.image-left,.v31-block.image-right{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.v31-card-link{display:block;height:100%;color:inherit;text-decoration:none}.v31-block figure{margin:0}.v31-block figure img{display:block;width:100%;height:260px;object-fit:cover}.v31-block figure figcaption{padding:9px 18px;color:#547165;font-size:.88rem;line-height:1.5}.v31-block figure figcaption span,.v31-copy h3 span,.v31-copy p span{display:block}.v31-copy{padding:22px;line-height:1.7}.v31-copy h3{margin:0 0 12px;font-size:1.32rem;line-height:1.35}.v31-copy h3 span{font-size:.86rem;font-weight:500;color:#54776b;margin-top:3px}.v31-copy p{font-size:1rem;margin:0 0 14px}.v31-copy p span{color:#4b675c;margin-top:10px}.v31-link{display:inline-block;margin-top:5px;color:#11664d;font-weight:700}.v31-link span{font-weight:400}.v31-section.v31-editorial:has(> .v31-blocks){padding-top:32px}.v31-section .v31-blocks:empty{display:none}@media(max-width:900px){.v31-grid .v31-blocks{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.v31-blocks,.v31-grid .v31-blocks{grid-template-columns:1fr}.v31-block.image-left,.v31-block.image-right{grid-template-columns:1fr}.v31-block figure img{height:auto;aspect-ratio:4/3}.v31-copy{padding:18px}}
/* The primary navigation stays horizontal on every viewport. */
header{gap:18px}.menu{display:none!important}#navigation{display:flex!important;position:static;flex-direction:row;align-items:center;gap:clamp(12px,1.4vw,24px);min-width:0;max-width:calc(100vw - 200px);overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;padding:10px 2px;border:0;background:transparent;white-space:nowrap}#navigation a{flex:none;display:flex;flex-direction:column;gap:1px;line-height:1.3}#navigation .nav-zh{font-size:14px}#navigation .nav-en{font-size:11px;letter-spacing:0;color:#547066}@media(max-width:620px){header{padding:0 4%;gap:8px}.logo{font-size:20px;margin:0;flex:none}#navigation{max-width:calc(100vw - 110px);gap:16px}#navigation .nav-zh{font-size:14px}#navigation .nav-en{font-size:11px}}
.v31-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:14px;padding:16px}.v31-gallery figure{min-width:0}.v31-gallery img{height:220px;object-fit:cover}.v31-gallery figcaption{font-size:.88rem;line-height:1.5}

/* V3.1 bilingual headings form one left-aligned group. */
.section-label{justify-content:flex-start;align-items:baseline;gap:12px;flex-wrap:wrap;font-size:14px;line-height:1.6}.section-label>span{max-width:100%}.small-title{justify-content:flex-start;gap:12px;flex-wrap:wrap}
@media(max-width:800px){.section-label,.small-title{gap:6px 10px}}
/* About section index: keep the bilingual label at the same small scale as metadata. */
.about > .section-label{font-size:12px;line-height:1.5;font-weight:600;letter-spacing:.04em;gap:8px;margin-bottom:32px}.about > .section-label > span{font-size:inherit;line-height:inherit}
/* Compact About presentation: the faculty source stays beside the director's name. */
.about.section{padding-top:44px;padding-bottom:56px}
.about > .section-label{margin-bottom:20px}
.about .director{grid-template-columns:minmax(170px,250px) minmax(0,1fr);gap:clamp(28px,5vw,70px);align-items:start;max-width:1080px;margin:auto}
.about .director>img{width:100%;height:300px;aspect-ratio:auto;object-fit:cover;object-position:50% 28%}
.about .director-photo{margin:0;min-width:0}.about .director-photo img{width:100%;height:300px;object-fit:cover;object-position:50% 28%;filter:saturate(1.28) contrast(1.06)}.about .director-photo figcaption{font-size:14px;line-height:1.6;padding-top:9px;color:#52685e}.about .director-photo figcaption a{text-decoration:underline;text-underline-offset:3px}
.about .director-copy{min-width:0}
.about .director-identity{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin:8px 0 13px}
.about .director h2{font-size:clamp(28px,3vw,38px);line-height:1.15;margin:0 0 3px}
.about .director h3{font-size:14px;color:#52685e;letter-spacing:0}
.about .director-official{display:inline-flex;align-items:center;gap:5px;border-bottom:1px solid #8fa99b;padding:5px 0;color:#075f4c;font-size:14px;font-weight:600;line-height:1.4}
.about .director-official span{font-size:12px;font-weight:400}
.about .director-official:hover{color:#003b30;border-color:currentColor}
.about .position{font-size:14px;line-height:1.6;margin:0 0 13px}
.about .position .fine{font-size:13px}
.about .director-intro{max-width:680px;font-size:16px;line-height:1.8}
.about .director-intro span{display:block;margin-top:6px;font-size:14px;color:#52685e;line-height:1.65}
.about .director-focus{margin-top:17px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 20px}
.about .director-focus span{font-size:12px;padding-top:5px}
.about .media-panel,.about .section-media{margin-top:25px}
@media(max-width:680px){.about.section{padding-top:32px;padding-bottom:40px}.about .director{grid-template-columns:108px minmax(0,1fr);gap:16px}.about .director>img{height:145px}.about .director-identity{display:block;margin:5px 0 10px}.about .director h2{font-size:26px}.about .director-official{margin-top:7px;flex-wrap:wrap;font-size:13px}.about .director-official span{font-size:11px}.about .director-intro{grid-column:1/-1}.about .director-focus{grid-column:1/-1;grid-template-columns:1fr}}
.v31-copy.font-serif{font-family:Georgia,'Noto Serif TC','Songti TC',serif}.v31-copy.font-mono{font-family:'SFMono-Regular',Consolas,monospace}.v31-copy.size-small{font-size:.875rem}.v31-copy.size-small p{font-size:.875rem}.v31-copy.size-small h3{font-size:1.15rem}.v31-copy.size-large{font-size:1.125rem}.v31-copy.size-large p{font-size:1.125rem}.v31-copy.size-large h3{font-size:1.6rem}.v31-copy.weight-bold{font-weight:700}.v31-copy.style-italic{font-style:italic}
@media(max-width:680px){.about .director-copy{display:contents}.about .director>img{grid-column:1;grid-row:1/4}.about .director .eyebrow,.about .director-identity,.about .position{grid-column:2}.about .director-intro,.about .director-focus{grid-column:1/-1}.about .director-intro{margin-top:4px}.about .director-focus{margin-top:0}.about .position{font-size:12px}.about .position .fine{font-size:12px}}
@media(max-width:680px){.about .director-photo{grid-column:1;grid-row:1/4}.about .director-photo img{height:145px}.about .director-photo figcaption{font-size:12px}}

/* Legacy editor typography */
.legacy-type{font:inherit}.legacy-type.font-serif{font-family:Georgia,'Noto Serif TC','Songti TC',serif}.legacy-type.font-mono{font-family:Consolas,monospace}.legacy-type.size-small{font-size:.875em}.legacy-type.size-large{font-size:1.15em}.legacy-type.weight-bold{font-weight:700}.legacy-type.style-italic{font-style:italic}

/* Courses taught within the director profile */
.teaching-courses{margin-top:28px}.teaching-courses>h3{font-size:19px;font-weight:650;padding:14px 0;border-top:1px solid #c7d3c8}.teaching-courses>h3 span{display:inline;margin-left:10px;font-size:14px;font-weight:400;color:#52685e}.course-list{display:grid;gap:0}.course-card{display:grid;grid-template-columns:1fr;gap:14px;padding:17px 0;border-top:1px solid #c7d3c8}.course-card:has(figure){grid-template-columns:minmax(100px,170px) minmax(0,1fr)}.course-card img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.course-card figcaption{font-size:12px;line-height:1.5;margin-top:6px}.course-card figcaption span,.course-card h4 span,.course-card p span{display:block}.course-card h4{font-size:17px;font-weight:600;margin:0 0 5px}.course-card h4 span{font-size:13px;color:#52685e;font-weight:400}.course-card p{font-size:15px;line-height:1.65;white-space:pre-line}.course-card p span{margin-top:5px}.course-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:9px}.course-links a{font-size:14px;color:#075f4c;text-decoration:underline;text-underline-offset:3px}.course-links span{font-size:12px}@media(max-width:680px){.teaching-courses{grid-column:1/-1}.course-card:has(figure){grid-template-columns:100px minmax(0,1fr)}}

/* Consistent bilingual hierarchy and bounded image scale */
.section-intro h2{font-size:clamp(32px,3.7vw,54px);line-height:1.26;overflow-wrap:anywhere}
.section-intro .title-en{font-size:clamp(17px,1.6vw,21px);line-height:1.45;margin-top:9px}
.section-intro>p{font-size:16px;line-height:1.8;max-width:63ch}
.section-label{font-size:13px;gap:4px 12px;line-height:1.5}
.method-en,.pillar-title>span,.work-category-heading .category-en{font-size:clamp(14px,1.3vw,17px);line-height:1.45;letter-spacing:0;overflow-wrap:anywhere}
.slideshow:not(.banner-slideshow) .slide img{height:auto;max-height:490px;object-fit:contain}
.banner-slideshow img{height:clamp(240px,38vw,520px);object-fit:cover}
.research-infographic{max-width:1050px;margin-inline:auto}
.research-infographic img{max-height:630px;object-fit:contain}
.editorial-gallery>figure:nth-child(3n+1) img{max-height:650px;object-fit:contain}
.v31-block figure img{height:auto;aspect-ratio:4/3;max-height:300px;object-fit:contain;background:#f4f7f3}
.v31-block.wide figure img{max-height:420px}
.v31-gallery img{height:auto;aspect-ratio:4/3;max-height:230px;object-fit:contain;background:#f4f7f3}
.v31-grid .v31-blocks,.v31-editorial .v31-blocks{grid-template-columns:repeat(var(--section-columns,2),minmax(0,1fr))}
.v31-stack .v31-blocks{grid-template-columns:1fr}
.method.method-columns-2 .method-list{--method-columns:2}.method.method-columns-3 .method-list{--method-columns:3}.method.method-columns-4 .method-list{--method-columns:4}
.method .method-list{display:grid;grid-template-columns:repeat(var(--method-columns,3),minmax(0,1fr));gap:20px 24px}
.method .method-list li{min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid var(--line);padding:17px 0 24px}
.method .method-list li>span{font-size:12px;line-height:1.5}.method .method-list h3{font-size:clamp(19px,1.8vw,25px);line-height:1.35;margin:12px 0 8px;font-weight:550;overflow-wrap:anywhere}
.method .method-list p{font-size:15px;line-height:1.65}.method .method-list .method-impact h3{font-size:clamp(22px,2vw,28px)}
.method .method-figure{width:100%;margin:14px 0 0;min-width:0}.method .method-figure .image-zoom{padding:10px;background:#fff}
.method .method-figure img{height:auto;aspect-ratio:4/3;max-height:240px;object-fit:contain}
.method .method-figure figcaption{font-size:13px;line-height:1.6;padding-top:9px}.method .method-figure figcaption p{font-size:13px}
@media(max-width:1050px){.method .method-list{grid-template-columns:repeat(2,minmax(0,1fr))}.v31-grid .v31-blocks,.v31-editorial .v31-blocks{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.method .method-list,.v31-grid .v31-blocks,.v31-editorial .v31-blocks{grid-template-columns:1fr}.method .method-list li{padding:16px 0 22px}.method .method-figure img{max-height:260px}.section-intro h2{font-size:clamp(29px,7.5vw,39px)}.section-intro .title-en{font-size:16px}.banner-slideshow img{height:auto;max-height:340px;object-fit:contain}.slideshow:not(.banner-slideshow) .slide img{max-height:340px}}

/* Independent column controls for every repeated image and text group */
.research .pillars{grid-template-columns:repeat(var(--cols-pillars,3),minmax(0,1fr))}
.research .material-grid{grid-template-columns:repeat(var(--cols-materials,3),minmax(0,1fr))}
.research .research-images{grid-template-columns:repeat(var(--cols-researchImages,2),minmax(0,1fr))}
.research .platform-previews{grid-template-columns:repeat(var(--cols-platforms,2),minmax(0,1fr))}
.method .method-list{grid-template-columns:repeat(var(--cols-methods,3),minmax(0,1fr))}
.teaching .teaching-path{grid-template-columns:repeat(var(--cols-teachingCards,3),minmax(0,1fr))}
.works .work-grid{grid-template-columns:repeat(var(--cols-workCards,2),minmax(0,1fr))}
.works .work-grid>figure:nth-child(5n+1){grid-column:auto}.works .work-grid>figure:nth-child(even){padding-top:0}
.works .work-grid>figure:nth-child(5n+1)>a>img{aspect-ratio:1.35;object-fit:contain}
.outputs .outcome-types{grid-template-columns:repeat(var(--cols-outcomeCards,3),minmax(0,1fr))}
.outputs .research-images{grid-template-columns:repeat(var(--cols-outcomeImages,2),minmax(0,1fr))}
.teaching .teaching-courses{margin-top:38px}.teaching .course-list{display:grid;grid-template-columns:repeat(var(--cols-courses,3),minmax(0,1fr));gap:24px}
.teaching .course-card{display:block;min-width:0}.teaching .course-card figure{margin:0 0 14px}.teaching .course-card img{max-height:210px;object-fit:contain;background:#f4f7f3}
.detail-gallery.editorial-gallery{display:grid;grid-template-columns:repeat(var(--cols-workGallery,2),minmax(0,1fr))}
.detail-gallery.editorial-gallery>figure:nth-child(3n+1){grid-column:auto}
.v31-gallery{grid-template-columns:repeat(var(--gallery-columns,2),minmax(0,1fr))}
@media(max-width:1050px){.research .pillars,.research .material-grid,.research .research-images,.research .platform-previews,.method .method-list,.teaching .teaching-path,.works .work-grid,.outputs .outcome-types,.outputs .research-images,.teaching .course-list,.detail-gallery.editorial-gallery,.v31-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.research .pillars,.research .material-grid,.research .research-images,.research .platform-previews,.method .method-list,.teaching .teaching-path,.works .work-grid,.outputs .outcome-types,.outputs .research-images,.teaching .course-list,.detail-gallery.editorial-gallery,.v31-gallery{grid-template-columns:1fr}.teaching .teaching-courses{margin-top:22px}}

.works .work-grid figcaption{display:block}.works .work-grid figcaption>span{display:block;max-width:none;text-align:left;padding-top:6px;font-size:12px}.works .work-grid img{max-height:360px;object-fit:contain;background:#f3f6f1}

/* About: identity, affiliation, rank, and official source */
.about .director-identity{align-items:center;gap:12px 22px;margin-bottom:12px}.about .director-identity>div{min-width:0}
.about .director-official{font-size:13px;white-space:normal;align-self:center;flex-wrap:wrap;column-gap:5px;max-width:100%;padding:5px 0}
.about .director-official span{font-size:12px;color:#52685e}
.about .director-affiliation{font-size:17px;line-height:1.55;font-weight:600;margin:0 0 4px}
.about .director-affiliation span{display:block;font-size:13px;line-height:1.55;font-weight:400;color:#52685e;margin-top:2px}
.about .director-rank{font-size:14px;line-height:1.6;color:#38574b;margin:0 0 14px}
@media(max-width:680px){.about .director-photo{grid-row:1/5}.about .director .eyebrow,.about .director-identity,.about .director-affiliation,.about .director-rank{grid-column:2}.about .director-identity{margin:2px 0 8px}.about .director-official{display:inline-flex;margin-top:8px;font-size:12px;line-height:1.35}.about .director-official span{font-size:11px}.about .director-affiliation{font-size:14px}.about .director-affiliation span{font-size:12px}.about .director-rank{font-size:12px;margin-bottom:7px}.about .director-intro{grid-column:1/-1;margin-top:12px}}
/* Editable text levels and cross-section text lane */
body{font-weight:400}h1,h2{font-weight:600}h3,h4{font-weight:500}.fine,figcaption,small{font-weight:400}
.cms-text-style{display:inline;white-space:pre-wrap}.cms-moved-content{display:grid;gap:12px;max-width:100%;margin:20px 0 34px;padding:20px 0;border-top:1px solid currentColor;border-bottom:1px solid currentColor}.cms-moved-content>*{min-width:0;max-width:100%;margin:0}.cms-unit[data-cms-level=primary]{font-size:clamp(30px,3.4vw,50px);font-weight:650;line-height:1.25}.cms-unit[data-cms-level=secondary]{font-size:clamp(21px,2.2vw,32px);font-weight:550;line-height:1.4}.cms-unit[data-cms-level=detail]{font-size:16px;font-weight:400;line-height:1.8}.cms-unit[data-cms-level=caption]{font-size:13px;font-weight:400;line-height:1.6;color:var(--muted)}
.unit-files{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.unit-files a{display:inline-flex;align-items:center;gap:8px;max-width:100%;border:1px solid currentColor;border-radius:4px;padding:7px 10px;font-size:13px;overflow-wrap:anywhere}.unit-files a span{font-size:10px;font-weight:700;letter-spacing:.04em}.v31-block>.unit-files{margin:14px 0 0}.course-card .unit-files{margin-top:10px}
/* Text blocks grow with editable typography and wrap inside their columns. */
.hero-masthead{flex-wrap:wrap;height:auto}.hero-masthead>div,.section-intro>*,.v31-copy,.course-card>div,.director-copy,.work-description,.work-category-heading>div,.teaching-path-copy,.outcome-types article,.cms-moved-content{min-width:0;height:auto;max-height:none;overflow:visible}.hero-explore{white-space:normal;overflow-wrap:anywhere}.v31-block,.course-card,.work-grid figure{height:auto;min-height:0}.v31-copy :is(h3,p),.course-card :is(h4,p),.hero-masthead :is(h1,p,a),.section-intro :is(h2,p),.director-copy :is(h2,h3,p,a),.work-detail :is(h1,h2,p),.document-list :is(h3,h4,p,a){overflow-wrap:anywhere;max-height:none}.cms-text-style{overflow-wrap:anywhere}
/* Mobile navigation: show every bilingual destination without horizontal clipping. */
@media(max-width:800px){
  html{scroll-padding-top:185px}
  header{height:auto;min-height:0;display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:13px 4% 12px}
  header .logo{flex:none;width:max-content;max-width:100%;font-size:20px}
  header .menu{display:none!important}
  #navigation{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:none;overflow:visible;white-space:normal;position:static;padding:0;gap:6px;background:transparent;border:0}
  #navigation a{min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;padding:6px 5px;white-space:normal;line-height:1.25}
  #navigation .nav-zh{font-size:14px;line-height:1.4;white-space:normal;overflow-wrap:anywhere}
  #navigation .nav-en{font-size:11px;line-height:1.2;white-space:normal;overflow-wrap:anywhere;letter-spacing:0}
}
@media(max-width:620px){#navigation{grid-template-columns:repeat(2,minmax(0,1fr))}html{scroll-padding-top:235px}}
/* Let the header follow editable type sizes instead of clipping larger labels. */
header:has(#navigation){height:auto;min-height:90px;flex-wrap:wrap;row-gap:8px;padding-top:12px;padding-bottom:12px}
.logo .logo-primary{font-size:inherit;letter-spacing:inherit;line-height:inherit;margin-top:0}
.logo .logo-secondary{line-height:inherit}
@media(min-width:801px){#navigation{max-width:100%;flex-wrap:wrap;justify-content:flex-end;overflow:visible;white-space:normal}#navigation a{min-width:0;white-space:normal}#navigation span{overflow-wrap:anywhere}}
@media(max-width:800px){header:has(#navigation){min-height:0;flex-direction:column;align-items:stretch}#navigation a{height:auto}}
html{scroll-padding-top:var(--header-scroll-offset,106px)}
/* An opaque sticky header keeps scrolled text from showing through. */
header{background:var(--paper)}
/* Size the homepage slideshow without cropping any uploaded photo. */
.banner-slideshow .slide img{width:auto;max-width:var(--home-carousel-width,86%);height:auto;max-height:var(--home-carousel-height,340px);aspect-ratio:auto;object-fit:contain;background:#e9ece6;margin-inline:auto}
@media(max-width:700px){.banner-slideshow .slide img{max-height:min(var(--home-carousel-height,340px),60vh)}}
/* The mobile header can use a compact menu or a single scrollable row. */
@media(max-width:800px){
  header:has(#navigation){position:sticky;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;min-height:72px;padding:12px 5%}
  header .logo{min-width:0;max-width:calc(100% - 76px)}
  header[data-mobile-nav="menu"] .menu{display:inline-flex!important;align-items:center;gap:9px;min-width:48px;min-height:48px;padding:8px;border:1px solid var(--line);border-radius:4px;color:var(--ink);background:var(--paper);cursor:pointer}
  .menu-bars{display:grid;gap:4px;width:22px}
  .menu-bars i{display:block;width:22px;height:2px;background:currentColor;border-radius:2px}
  .menu-label{font-size:13px;font-weight:700;letter-spacing:.04em}
  header[data-mobile-nav="menu"] #navigation{display:none!important;position:absolute;top:100%;left:0;right:0;width:100%;max-height:calc(100vh - 80px);overflow-y:auto;grid-template-columns:1fr;padding:12px 5% 20px;gap:0;background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line);box-shadow:0 14px 24px #17231f22}
  header[data-mobile-nav="menu"] #navigation.open{display:grid!important}
  header[data-mobile-nav="menu"] #navigation a{min-height:58px;padding:9px 0;border-bottom:1px solid var(--line)}
  header[data-mobile-nav="inline"]{display:flex;flex-wrap:wrap}
  header[data-mobile-nav="inline"] .menu{display:none!important}
  header[data-mobile-nav="inline"] #navigation{display:flex!important;flex:1 0 100%;flex-wrap:nowrap;width:100%;max-width:none;overflow-x:auto;overflow-y:hidden;gap:18px;padding:4px 0 7px;scrollbar-width:thin}
  header[data-mobile-nav="inline"] #navigation a{flex:0 0 auto;width:auto;min-width:max-content;white-space:nowrap;padding:5px 2px}
}
@media(min-width:801px){
  header[data-mobile-nav="menu"] .menu{display:inline-flex!important;align-items:center;gap:10px;min-height:48px;padding:9px 13px;border:1px solid var(--line);border-radius:4px;color:var(--ink);background:var(--paper);cursor:pointer}
  header[data-mobile-nav="menu"] .menu-bars{display:grid;gap:4px;width:22px}
  header[data-mobile-nav="menu"] .menu-bars i{display:block;width:22px;height:2px;background:currentColor;border-radius:2px}
  header[data-mobile-nav="menu"] .menu-label{font-size:14px;font-weight:700;letter-spacing:.04em}
  header[data-mobile-nav="menu"] #navigation{display:none!important;position:absolute;top:100%;right:4.5%;left:auto;width:min(390px,92vw);max-width:none;max-height:calc(100vh - 100px);overflow-y:auto;padding:10px 24px 20px;background:var(--paper);border:1px solid var(--line);box-shadow:0 14px 24px #17231f22;white-space:normal}
  header[data-mobile-nav="menu"] #navigation.open{display:grid!important;grid-template-columns:1fr;gap:0}
  header[data-mobile-nav="menu"] #navigation a{display:flex;flex-direction:column;align-items:flex-start;min-height:62px;padding:10px 0;border-bottom:1px solid var(--line);white-space:normal}
  header[data-mobile-nav="inline"] .menu{display:none!important}
  header[data-mobile-nav="inline"] #navigation{display:flex!important}
}
.hero-mobile-break{display:none}
@media(max-width:700px){.hero-mobile-break{display:block}.hero-masthead h1{text-wrap:initial}}
@media(max-width:700px){.hero-explore br{display:none}.hero-explore span{display:inline;font-size:1em;margin-left:.45em}.hero-explore{max-width:100%;white-space:nowrap}}

/* A consistent, quieter rhythm for section boundaries and editorial rows. */
@media(min-width:801px){.section{padding-top:70px;padding-bottom:70px}}
@media(max-width:800px){.section{padding-top:48px;padding-bottom:48px}}
.section-label{margin-bottom:26px}
.section-intro{gap:32px;margin-bottom:38px}
.bilingual-title{line-height:1.26}
.bilingual-title .title-en{margin-top:10px}
.exhibition-hero{padding-bottom:18px}
.hero-editorial{padding:24px 0 0;border-bottom:0}
.about.section{padding-top:22px}
.about .section-label{margin-bottom:24px}
.material-grid{gap:22px;margin-top:26px}
.material-grid article{padding-top:17px}
.material-grid h4{margin:5px 0 15px;padding-bottom:15px}
.material-grid h4>span[lang="en"]{margin-top:7px}
.material-grid dt{margin-top:14px}
.material-grid dd{margin-top:5px;line-height:1.65}
.teaching-grid{gap:5%}
.courses li{gap:16px;padding:14px 0}
.cases article{margin:16px 0}
.teaching-v2{margin-top:58px;padding-top:26px}
.teaching .teaching-path{grid-template-columns:1fr;gap:32px}
.teaching-path-record{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:32px;padding:0 0 32px;border-bottom:1px solid #b9c9bf}
.teaching-path-record.is-featured{padding-top:18px;border-top:1px solid #b9c9bf}
.teaching-path-record.is-featured .teaching-path-copy h4{font-size:clamp(25px,2.6vw,37px);line-height:1.35}
.teaching-path-record.is-featured .teaching-path-copy p{font-size:18px}
.teaching-path-gallery,.teaching-path-details{min-width:0}
.teaching-path-gallery .slideshow{margin:0;background:#e8ede8}
.teaching-path-gallery .slide-track{aspect-ratio:auto}
.teaching-path-gallery .slide{height:auto}
.teaching-path-gallery .image-zoom{height:auto;aspect-ratio:4/3}
.teaching-path-gallery .slide img{width:100%;height:100%;max-height:none;object-fit:contain}
.teaching-path-record .teaching-path-copy{padding:10px 0 20px}
.teaching-path-news{border-top:1px solid #b9c9bf;padding:20px 0}
.teaching-path-news h5{font-size:17px;font-weight:600;margin:0 0 10px}.teaching-path-news h5 span{font-size:12px;font-weight:400;color:#52685b;margin-left:8px}
.teaching-path-news a{display:flex;justify-content:space-between;gap:16px;align-items:baseline;padding:12px 0;border-bottom:1px solid #d5dfd7;font-size:15px}.teaching-path-news a:hover{color:var(--teal)}
.teaching-path-news small{white-space:nowrap;color:#52685b}
.teaching-section-news{display:grid;grid-template-columns:minmax(0,.42fr) minmax(0,1fr);gap:36px;margin:62px 0 0;padding:28px 0 0;border-top:1px solid #9bb5a4}
.teaching-section-news-head span{font-size:13px;letter-spacing:.08em;color:#157457}
.teaching-section-news-head h4{font-size:clamp(24px,2.4vw,34px);line-height:1.3;margin:12px 0}
.teaching-section-news-head p{color:#52685b;line-height:1.7}
.teaching-section-news-list a{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:18px 0;border-bottom:1px solid #c8d5cb}
.teaching-section-news-list strong{font-size:18px;line-height:1.5;font-weight:600}
.teaching-section-news-list small{color:#52685b;white-space:nowrap}
.teaching-section-news-list a:hover{color:var(--teal)}
@media(max-width:800px){.teaching-path-record{grid-template-columns:1fr;gap:12px}.teaching-path-news a{display:block}.teaching-path-news small{display:block;margin-top:6px}.teaching-section-news{grid-template-columns:1fr;gap:8px}.teaching-section-news-list a{display:block}.teaching-section-news-list small{display:block;margin-top:6px}}
.timeline article{gap:20px;padding:21px 0}
.timeline h3{margin:6px 0}
.work-jump{margin-bottom:38px}
.work-category{margin-bottom:58px}
.work-category-heading{padding:18px 0 22px}
footer{padding-top:48px}
footer .footer-title{font-size:clamp(36px,4.2vw,72px);line-height:1.17;margin:24px 0 32px;letter-spacing:0}
footer .title-en{font-size:clamp(14px,1.4vw,22px);margin-top:16px}
@media(max-width:800px){
  .section-intro{gap:18px;margin-bottom:28px}
  .about.section{padding-top:20px}
  .teaching-grid{gap:28px}
  .work-jump{margin-bottom:28px}
  footer .footer-title{font-size:clamp(34px,9vw,42px)}
}
.inline-clipboard-actions,.image-clipboard-actions{display:inline-flex;flex-wrap:wrap;gap:6px;margin:6px 0 10px}
.inline-clipboard-actions button,.image-clipboard-actions button,[data-paste-image-slot],[data-open-text],[data-tree-action="paste-block"],[data-tree-action="copy-block"]{font:inherit;font-size:13px;line-height:1.3;padding:7px 10px;border:1px solid #adc5b7;border-radius:4px;color:#174d3c;background:#f5faf6;cursor:pointer}
.inline-clipboard-actions button:hover,.image-clipboard-actions button:hover,[data-paste-image-slot]:hover,[data-open-text]:hover,[data-tree-action="paste-block"]:hover,[data-tree-action="copy-block"]:hover{background:#e4f2e9}
.inline-clipboard-actions button:disabled,.image-clipboard-actions button:disabled{opacity:.45;cursor:not-allowed}
.v31-integrated-text{margin:22px 0;padding:18px;border:1px solid #cbd9cf;border-radius:5px;background:#f7faf7}
.v31-integrated-text>summary{font-size:20px;font-weight:700;color:#174d3c;cursor:pointer}
.v31-integrated-text .editor-heading{margin-top:20px}

/* One editorial rhythm across native and newly created topic units. */
:root{--topic-gap:clamp(58px,6.5vw,94px);--topic-rule:#c8d5cb;--topic-title:clamp(32px,3.7vw,54px);--topic-subtitle:clamp(18px,1.65vw,22px);--topic-small:clamp(19px,1.8vw,25px);--topic-body:16px}
main>.section{padding-top:var(--topic-gap);padding-bottom:var(--topic-gap);border-top:1px solid var(--topic-rule)}
main>.section.research{border-top-color:#517468}
main>.section>.section-label{margin:0 0 clamp(30px,3.8vw,52px);padding-top:15px;border-top:1px solid currentColor;font-size:13px;line-height:1.5;letter-spacing:.045em}
main>.section>.section-intro{gap:clamp(22px,3vw,44px);align-items:start;margin-bottom:clamp(36px,4vw,58px)}
main>.section>.section-intro h2{font-size:var(--topic-title);font-weight:600;line-height:1.25;letter-spacing:0;overflow-wrap:anywhere}
main>.section>.section-intro .title-en{font-size:var(--topic-subtitle);font-weight:400;line-height:1.45;letter-spacing:0;margin-top:10px}
main>.section>.section-intro>p{font-size:var(--topic-body);line-height:1.8;max-width:63ch;overflow-wrap:anywhere}
main>.section :is(.method-list h3,.pillars h3,.feature-title h3,.work-category-heading h3,.outcome-types h3,.cases h4,.timeline h3){font-size:var(--topic-small);line-height:1.4;letter-spacing:0;overflow-wrap:anywhere}
main>.section :is(.method-en,.pillar-title>span,.category-en,.v31-copy h3 span){font-size:15px;line-height:1.5;letter-spacing:0}
main>.section :is(.method-list p,.cases p,.timeline p,.outcome-types p,.v31-copy p,.course-card p){font-size:var(--topic-body);line-height:1.75;overflow-wrap:anywhere}
main>.section .v31-section:has(>.v31-blocks){margin-top:clamp(28px,3.2vw,44px);padding-top:clamp(28px,3.2vw,44px);border-top:1px solid var(--topic-rule)}
main>.section.v31-section:not(:has(.section-intro))>.section-label{margin-bottom:clamp(24px,3vw,40px)}
main>.section .v31-blocks{gap:clamp(18px,2vw,28px)}
main>.section .v31-copy h3{font-size:var(--topic-small);line-height:1.4}
main>.section .material-grid h4{font-size:clamp(20px,var(--domain-title-size,34px),38px)}
main>.section .v31-copy.size-small h3{font-size:clamp(18px,1.55vw,21px)}
main>.section .v31-copy.size-large h3{font-size:clamp(23px,2.25vw,29px)}
main>.section .v31-copy.size-large p{font-size:18px}
@media(max-width:680px){:root{--topic-gap:56px;--topic-title:clamp(29px,7.5vw,39px);--topic-subtitle:16px;--topic-small:21px}main>.section>.section-intro{margin-bottom:34px}main>.section>.section-label{margin-bottom:30px}main>.section .v31-section:has(>.v31-blocks){margin-top:30px;padding-top:30px}}
.unit-playable{margin:24px 0;max-width:800px}.unit-playable video{display:block;width:100%;max-height:65vh;background:#17231f}.unit-playable audio{display:block;width:min(100%,620px)}
main figure:has(img[data-asset-hidden]),main .platform-previews>a:has(img[data-asset-hidden]){display:none!important}

/* SDG cards: optional image below each card's copy. */
.sdg-card-image{margin:18px 0 0}.sdg-card-image .image-zoom{width:var(--sdg-image-width,100%);margin-inline:auto;padding:10px;background:#fff;border:1px solid var(--line)}.sdg-card-image img{width:100%;aspect-ratio:4/3;object-fit:contain;border-radius:2px}.sdg-card-image figcaption{font-size:13px;line-height:1.6}.sdg-grid article:has(.sdg-card-image){display:flex;flex-direction:column}.sdg-grid article .sdg-card-image{margin-top:auto;padding-top:18px}.sdg-image-size{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:12px 0}.sdg-image-size label{display:grid;gap:6px}.sdg-image-size input[type=range]{width:min(100%,240px)}.sdg-image-size input[type=number]{width:76px}

.teaching-cases-grid{grid-template-columns:minmax(0,1fr);margin-top:48px}.teaching-cases-grid .cases{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.teaching-cases-grid .cases>.small-title,.teaching-cases-grid .cases>.tags{grid-column:1/-1}.teaching-cases-grid .cases article{margin:0;border-top:1px solid var(--line);padding-top:16px}@media(max-width:800px){.teaching-cases-grid .cases{grid-template-columns:1fr;gap:22px}}
.teaching-cases-grid .teaching-case-image{margin:18px 0 0}.teaching-cases-grid .teaching-case-image img{aspect-ratio:3/2;object-fit:cover}.teaching-cases-grid .teaching-case-image figcaption{font-size:12px;color:var(--muted);margin-top:6px}.teaching-cases-grid .unit-playable{margin-top:18px}.teaching-cases-grid .unit-playable video{width:100%;height:auto}.teaching-cases-grid .unit-files{margin-top:18px}
.teaching-story{margin:0 0 48px}.teaching-story-copy{max-width:900px;margin:-15px 0 30px}.teaching-story-copy h3{font-size:clamp(24px,2.4vw,34px);font-weight:500;margin:0 0 12px}.teaching-story-copy p{font-size:17px;line-height:1.8;color:var(--muted)}.teaching-story>.unit-playable,.teaching-story>.unit-files{margin:20px 0 0}.teaching-story>.unit-playable video{width:min(100%,900px);height:auto}.teaching-story>.unit-files{max-width:900px}.teaching-story .teaching-photo:has(img):not(:has(figcaption)){display:block}.teaching-story .teaching-photo:has(img):not(:has(figcaption)) img{width:100%;max-height:560px}.teaching-story .teaching-photo figcaption{white-space:pre-line}
.teaching-story-media{margin:0 0 36px;min-width:0}.teaching-story-media.has-video{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(20px,3vw,48px);align-items:start}.teaching-story-gallery,.teaching-story-video{min-width:0}.teaching-story-gallery .slideshow{margin:0}.teaching-story-gallery .slide img{width:100%;height:auto;aspect-ratio:16/10;max-height:420px;object-fit:contain;background:#e9ece6}.teaching-story-gallery .slide-controls{padding:10px 0 12px}.teaching-story-caption{margin:14px 0 0;color:var(--green);font-size:clamp(17px,1.8vw,24px);line-height:1.55;white-space:pre-line}.teaching-story-video video,.teaching-story-video iframe{display:block;width:100%;height:auto;aspect-ratio:16/10;max-height:420px;border:0;background:#14231c;object-fit:contain}.teaching-story-copy{margin:24px 0 30px}@media(max-width:800px){.teaching-story-media.has-video{grid-template-columns:1fr}.teaching-story-gallery .slide img,.teaching-story-video video,.teaching-story-video iframe{max-height:360px}}
.teaching-story-video-empty{display:flex;aspect-ratio:16/10;max-height:420px;align-items:center;justify-content:center;gap:18px;background:#e5ebe6;color:#335f50}.teaching-story-video-empty span{display:grid;place-items:center;width:58px;height:58px;border:1px solid currentColor;border-radius:50%;font-size:17px;padding-left:3px}.teaching-story-video-empty p{font-size:20px;line-height:1.45}.teaching-story-video-empty small{display:block;font-size:13px;color:#64776c}

#teaching .section-intro[hidden]{display:none}

.teaching-story:not(:first-child){border-top:1px solid #c6d4ca;padding-top:42px}.teaching-story-number{margin:0 0 22px;color:var(--green);font-size:14px;font-weight:700;letter-spacing:.12em}
.photo-creator{display:block;margin:6px 0 0;color:#53675b;font-size:15px;font-weight:400}.teaching-story-caption-title{margin:0}.teaching-story-caption-creator{margin:6px 0 0;color:#53675b;font-size:15px;font-weight:400}
.teaching-cases-grid .teaching-case-subtitle{margin:5px 0 10px;color:var(--green);font-size:16px;font-weight:600}.teaching-case-video{margin:18px 0}.teaching-case-video .teaching-story-video video,.teaching-case-video .teaching-story-video iframe{width:100%;aspect-ratio:16/9;max-height:320px}.teaching-case-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.teaching-case-links a{display:inline-flex;align-items:center;padding:7px 10px;border:1px solid #b8d0bf;color:var(--green);font-size:13px}
.outcome-types article .showcase-subtitle,.showcase-project .showcase-subtitle{font-weight:600;color:var(--green)}.showcase-gallery{margin:18px 0}.showcase-gallery .slideshow{max-width:100%}.showcase-gallery .slide img{width:100%;height:auto;max-height:360px;object-fit:contain}.showcase-links{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.showcase-links a,.showcase-ppt{display:inline-block;border:1px solid #aec6b6;padding:8px 10px;color:var(--green);font-size:14px}.showcase-projects .showcase-gallery{max-width:900px}.outcome-editor-group{border-top:1px solid #c6d4ca;margin-top:28px;padding-top:22px}.outcome-editor-group>button{margin:8px 0 18px}.outcome-presentation{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:18px 0}.outcome-presentation h3{width:100%}
.showcase-project-media{display:grid;gap:24px;margin:28px 0}.showcase-project-media.has-two-panels{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.showcase-project-panel{min-width:0}.showcase-project-panel h4{margin:0 0 10px;color:var(--green);font-size:16px;font-weight:600}.showcase-project-panel .slideshow,.showcase-project-panel .teaching-story-video{width:100%;margin:0}.showcase-project-panel .slide img{width:100%;height:clamp(220px,27vw,390px);object-fit:contain;background:#eef2ed}.showcase-project-panel .teaching-story-video iframe,.showcase-project-panel .teaching-story-video video{width:100%;aspect-ratio:16/9;object-fit:contain}.outcome-entry .outcome-gallery-group{border-top:1px solid #d4dfd6;margin-top:22px;padding-top:18px}.outcome-entry .outcome-gallery-group h3{margin:0 0 8px}@media(max-width:760px){.showcase-project-media.has-two-panels{grid-template-columns:1fr}.showcase-project-panel .slide img{height:auto;max-height:420px}}
.showcase-project>.showcase-project-content{grid-column:1/-1;min-width:0}.showcase-project>.showcase-project-content .showcase-project-media{margin-top:4px}.showcase-project>.showcase-project-content .showcase-links{margin-top:22px}

/* Student work media and concept details */
.work-concept{color:#53675b;line-height:1.7;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;white-space:pre-line;margin-top:10px}.work-project-link,.work-detail-link{display:inline-block;margin-top:12px;border-bottom:1px solid currentColor;color:#216550;font-size:15px;padding-bottom:3px}.work-detail-link{margin:0 0 40px}.work-card-video{display:block;width:100%;max-height:360px;aspect-ratio:1.35;object-fit:contain;background:#e7ece7}.work-video{margin:40px 0;aspect-ratio:16/9;background:#14291e}.work-video video,.work-video iframe{display:block;width:100%;height:100%;border:0;object-fit:contain}.work-body>video{display:block;width:min(100%,540px);max-height:300px;margin:12px 0;background:#14291e}
