@import"https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;500;600;700&display=swap";:root{--navy:#0b1f3a;--blue:#123c69;--paper:#f8faf7;--ink:#1f2933;--muted:#617080;--line:#d9e0e2;--green:#4f8a5b;--gold:#b7791f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Noto Sans TC,Arial,sans-serif;line-height:1.7}a{color:inherit;text-decoration:none}button{font:inherit}.skip{position:fixed;top:-80px;left:20px;z-index:99;background:var(--navy);color:#fff;padding:.7rem 1rem}.skip:focus{top:20px}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}header{position:sticky;top:0;z-index:10;transition:.3s;background:linear-gradient(var(--paper),transparent)}header.is-scrolled{background:#f8faf7e8;backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav-shell{height:82px;max-width:1380px;margin:auto;padding:0 3rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:flex;align-items:center;gap:.8rem;color:var(--navy);line-height:1.1}.brand span{font-size:1.25rem;font-weight:700;letter-spacing:.12em}.brand small{font-size:.61rem;letter-spacing:.06em;color:var(--muted)}.desktop-nav{display:flex;gap:1.35rem;font-size:.78rem}.desktop-nav a{position:relative}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--green);transition:.25s}.desktop-nav a:hover:after{right:0}.nav-actions{display:flex;align-items:center;gap:1rem;font-size:.78rem}.locale{color:var(--blue);font-weight:700}.contact-link{background:var(--navy);color:#fff;padding:.6rem .95rem}.nav-actions button{display:none;border:0;background:transparent;width:34px;padding:4px}.nav-actions i{display:block;background:var(--navy);height:1px;margin:6px 0}#mobile-navigation{display:none}main{overflow:hidden}.hero{max-width:1380px;margin:auto;min-height:700px;padding:7.6rem 3rem 6rem;display:grid;grid-template-columns:1.08fr .92fr;gap:3rem;align-items:center;position:relative}.eyebrow{color:var(--green);text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:700}.hero h1{font-size:clamp(2.65rem,5vw,5.4rem);line-height:1.05;letter-spacing:-.06em;margin:.7rem 0 1.2rem;color:var(--navy);font-weight:600}.hero .subhead{font-size:1.05rem;color:var(--blue);letter-spacing:.03em}.hero p{max-width:54ch;color:var(--muted);font-size:1rem}.hero-actions{display:flex;gap:.9rem;margin-top:2rem;flex-wrap:wrap}.button{padding:.85rem 1.15rem;border:1px solid var(--navy);font-size:.85rem;transition:transform .25s,background .25s}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--navy);color:#fff}.button.secondary{color:var(--navy)}.lattice{position:relative;aspect-ratio:1;max-width:530px;justify-self:end;width:100%;background:radial-gradient(circle at 50% 50%,#dbe8e3 0,transparent 65%)}.lattice svg{width:100%;height:100%;filter:drop-shadow(0 18px 30px #0b1f3a16)}.lattice path{stroke:#2c7a8c;stroke-width:1.2;opacity:.45}.lattice-node{fill:var(--navy);transform-origin:center;animation:float 11s ease-in-out infinite}.lattice-node.accent{fill:var(--green);animation-delay:-4s}.lattice span{position:absolute;border:1px solid #b7791f55;border-radius:50%;inset:17%;animation:orbit 18s linear infinite}.lattice span+span{inset:32%;border-color:#4f8a5b66;animation-direction:reverse}@keyframes float{50%{transform:translateY(-13px)}}@keyframes orbit{to{transform:rotate(360deg)}}section{max-width:1380px;margin:auto;padding:6.5rem 3rem}.section-head{display:flex;justify-content:space-between;gap:2rem;align-items:end;margin-bottom:2.8rem}.section-head h2,.page-hero h1{font-size:clamp(2rem,3.7vw,3.5rem);letter-spacing:-.05em;line-height:1.1;margin:0;color:var(--navy)}.section-head p{max-width:46ch;color:var(--muted);margin:0}.identity{background:var(--navy);color:#eaf0ef;max-width:none}.identity>div{max-width:1380px;margin:auto;padding:6rem 3rem;display:grid;grid-template-columns:.7fr 1.3fr;gap:4rem}.identity h2{font-size:1.05rem;color:#bdd3c6;letter-spacing:.1em}.identity p{font-size:clamp(1.45rem,2.6vw,2.45rem);line-height:1.45;margin:0}.research-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1.2rem}.research-card{grid-column:span 4;min-height:310px;padding:1.6rem;border:1px solid var(--line);background:#fff;position:relative;transition:transform .3s,box-shadow .3s;animation-delay:var(--delay)}.research-card:nth-child(2),.research-card:nth-child(5){grid-column:span 5}.research-card:nth-child(3),.research-card:nth-child(6){grid-column:span 3}.research-card:hover{transform:translateY(-6px);box-shadow:0 20px 36px #0b1f3a12}.card-index{font-size:.72rem;color:var(--gold)}.motif{height:55px;width:55px;margin:1rem 0;background:repeating-linear-gradient(45deg,#dbe8e3 0 2px,transparent 2px 9px);border:1px solid #b9d1c3;border-radius:50%}.research-card h3{font-size:1.12rem;margin:0}.english-title{font-size:.72rem;color:var(--blue);line-height:1.4}.research-card>p:last-of-type{color:var(--muted);font-size:.86rem}.research-card span{position:absolute;bottom:1.4rem;font-size:.67rem;letter-spacing:.12em;color:var(--green);text-transform:uppercase}.pipeline{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:.8rem;counter-reset:step}.pipeline li{padding:1.25rem 1rem 1rem;border-top:2px solid var(--blue);min-height:130px;position:relative}.pipeline li:not(:last-child):after{content:"→";position:absolute;right:-.8rem;top:1.1rem;color:var(--gold);z-index:1}.pipeline b{display:block;color:var(--green);font-size:.72rem}.pipeline span{font-size:.88rem;display:block;margin-top:.3rem}.placeholder{border:1px dashed #8fa0a5;background:#edf2ef;padding:2rem;color:var(--blue)}.placeholder b{display:block;color:var(--gold);font-size:.72rem;letter-spacing:.12em}.join{background:#e4eee8}.join>div{max-width:1380px;margin:auto;padding:5.5rem 3rem;display:flex;justify-content:space-between;gap:2rem;align-items:end}.page-hero{max-width:1380px;margin:auto;padding:7rem 3rem 3.5rem;border-bottom:1px solid var(--line)}.page-hero p{color:var(--muted);max-width:62ch}.page-content{max-width:1000px;margin:auto;padding:3.5rem 3rem 7rem}.publication{padding:1.35rem 0;border-top:1px solid var(--line);display:grid;grid-template-columns:100px 1fr;gap:1rem;transition:.25s}.publication:hover{background:#eaf1ee;padding-inline:1rem}.publication b{color:var(--gold)}.publication h3{margin:0;font-size:1rem}.publication p{margin:.35rem 0 0;color:var(--muted)}[data-reveal]{opacity:0;transform:translateY(15px);transition:.65s cubic-bezier(.16,1,.3,1)}[data-reveal].is-revealed{opacity:1;transform:none}@media(max-width:900px){.desktop-nav,.contact-link{display:none}.nav-actions button{display:block}#mobile-navigation{display:flex;position:fixed;inset:82px 0 auto;background:var(--paper);padding:1rem 2rem 2rem;gap:.8rem;flex-direction:column;transform:translateY(-130%);transition:.3s;border-bottom:1px solid var(--line)}#mobile-navigation[data-open]{transform:translateY(0)}body.menu-open{overflow:hidden}.hero{grid-template-columns:1fr;min-height:unset;padding-top:5.5rem}.lattice{max-width:440px;justify-self:center}.research-card,.research-card:nth-child(n){grid-column:span 6}.identity>div{grid-template-columns:1fr}.pipeline{grid-template-columns:1fr}.pipeline li{min-height:auto;padding-left:3.5rem}.pipeline li:not(:last-child):after{content:"↓";left:1rem;right:auto;top:auto;bottom:-1.3rem}.join>div{display:block}}@media(max-width:600px){.nav-shell,section,.hero,.page-hero,.page-content{padding-left:1.25rem;padding-right:1.25rem}.nav-shell{height:70px}.brand small{display:none}.hero h1{font-size:2.55rem}.hero{padding-top:4.5rem;padding-bottom:3rem}.section-head{display:block}.section-head p{margin-top:1rem}.research-grid{display:block}.research-card{margin-bottom:1rem;min-height:265px}.identity>div,.join>div{padding:4rem 1.25rem}.publication{grid-template-columns:1fr;gap:.3rem}footer{padding:3rem 1.25rem;display:block!important}footer>div{margin-bottom:1.6rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}[data-reveal]{opacity:1;transform:none}}footer{background:var(--navy);color:#dce7e3;padding:4.5rem max(3rem,calc((100vw - 1320px)/2));display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:3rem;font-size:.8rem}footer strong{font-size:1.3rem;letter-spacing:.13em}footer span{color:#91b7a1;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase}footer a{color:#fff}
