:root{--blue:#003d82;--bright:#0068b7;--navy:#002c62;--ink:#1e293b;--muted:#64748b;--line:#dbe5f0;--sans:"微软雅黑","黑体","STHeiti","Microsoft YaHei",sans-serif;--serif:var(--sans)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.75 var(--serif)}h1,h2,h3,p{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}button,summary{cursor:pointer}button{color:inherit}img{display:block;max-width:100%}button{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #45b6ed;outline-offset:5px}[hidden]{display:none!important}.wrap{width:min(1400px,calc(100% - 32px));margin-inline:auto}.skip-link{position:fixed;left:16px;top:-80px;z-index:2000;background:white;color:var(--blue);padding:8px 16px}.skip-link:focus{top:8px}
/* Reference: one transparent, fixed navigation row, turning white after 50px. */
.site-header{position:fixed;inset:0 0 auto;z-index:80;color:#fff;transition:background .3s,color .3s,box-shadow .3s; background:linear-gradient(#002c6245,transparent)}.header-inner{height:80px;display:flex;align-items:center;gap:24px}.brand{display:block;flex:0 0 clamp(228px,20vw,284px)}.brand img{width:100%;height:auto;transition:filter .3s}.main-nav{display:flex;justify-content:center;align-items:center;gap:clamp(12px,1.3vw,24px);margin-left:auto;flex:1;white-space:nowrap;font-size:16px;font-weight:600}.main-nav>a,.nav-group>summary{padding:27px 0 25px;position:relative;display:block;list-style:none}.nav-group>summary::-webkit-details-marker{display:none}.main-nav>a:after,.nav-group>summary:after{content:"";position:absolute;bottom:18px;height:2px;left:50%;width:0;background:currentColor;transition:width .3s,left .3s}.main-nav>a:hover:after,.nav-group>summary:hover:after{left:0;width:100%}.nav-group{position:relative}.nav-sub{position:absolute;left:50%;top:100%;min-width:190px;padding:12px 0;background:#fffffff7;color:var(--blue);box-shadow:0 10px 30px #002c6226;transform:translateX(-50%);border-top:3px solid #2188c8;animation:dropdown .2s ease-out}.nav-sub a{display:block;padding:8px 22px;font-size:14px;white-space:nowrap;transition:background .2s,padding .2s}.nav-sub a:hover{background:#eff6ff;padding-left:26px}.header-tools{display:flex;align-items:center;gap:18px;margin-left:6px;font-size:13px}.search-toggle{display:flex;align-items:center;justify-content:center;background:none;border:0;color:inherit;padding:6px}.search-toggle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7}.language{white-space:nowrap}.language span{font:20px var(--sans);vertical-align:-1px;margin-right:4px}.menu-toggle{display:none;white-space:nowrap;border:1px solid currentColor;background:none;padding:5px 10px;font:13px var(--sans)}.site-header.is-scrolled{color:var(--blue);background:#fffffff2;backdrop-filter:blur(14px);box-shadow:0 2px 14px #003d8214}.site-header.is-scrolled .brand img{filter:brightness(0) saturate(100%) invert(18%) sepia(42%) saturate(2523%) hue-rotate(181deg) brightness(88%)}.site-search{background:#fff;color:var(--ink);padding:28px 0;box-shadow:0 15px 22px #002c6220}.preview-search{max-width:720px;margin:auto;font-family:var(--sans)}.preview-search label{display:block;font-size:15px;margin-bottom:12px;color:var(--blue)}.preview-search>div{display:flex}.preview-search input{flex:1;min-width:0;padding:11px 14px;border:1px solid #cbd5e1;border-right:0;border-radius:4px 0 0 4px;color:var(--ink);background:#f8fafc}.preview-search button{border:0;background:var(--blue);color:white;padding:10px 24px;border-radius:0 4px 4px 0}.search-note{font-size:12px;color:var(--muted);margin-top:10px}.search-results{font-size:14px;max-height:240px;overflow:auto}.search-results a:hover{color:var(--bright)}.site-search .qwss{margin-top:0!important;max-width:calc(100% - 80px)!important;min-width:0!important;height:40px!important}.site-search .tj{height:40px!important}.site-search [id^=app]{max-width:720px;margin:auto}
/* Full-screen, horizontally sliding hero. */
.hero{position:relative;height:100vh;height:100svh;overflow:hidden;color:#fff;background:#00477b}.hero-slides{display:flex;width:100%;height:100%;will-change:transform;transition:transform .8s cubic-bezier(.4,0,.2,1)}.hero-slide{position:relative;flex:0 0 100%;width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;isolation:isolate}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,#002b6248 0%,#003d8260 48%,#001f556e 100%);z-index:-1}.hero-copy{text-align:center;padding:90px 72px 105px;text-shadow:0 2px 20px #001c4f30}.hero-copy h1,.hero-copy h2{font:600 clamp(36px,4.7vw,66px)/1.2 var(--serif);letter-spacing:.02em;color:white}.hero-copy p{font-size:clamp(18px,2vw,25px);margin-top:20px;letter-spacing:.03em}.hero-link{display:inline-flex;gap:28px;font-size:14px;align-items:center;border-bottom:1px solid #ffffff90;padding:8px 0;margin-top:28px}.hero-link span{transition:transform .3s}.hero-link:hover span{transform:translateX(5px)}.hero-controls{position:absolute;inset:0;pointer-events:none}.hero-controls button{pointer-events:auto}.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border:1px solid #ffffff20;background:#ffffff30;backdrop-filter:blur(4px);border-radius:50%;color:white;font:36px/1 var(--sans);transition:background .3s,transform .3s}.hero-arrow:hover{background:#ffffff55;transform:translateY(-50%) scale(1.06)}.hero-prev{left:16px}.hero-next{right:16px}.hero-pagination{position:absolute;right:32px;bottom:32px;display:flex;align-items:center;gap:10px;pointer-events:auto}.hero-dots{display:flex;gap:9px}.hero-dots button,.hero-pagination>[data-pause]{width:40px;height:40px;border:1px solid #ffffff60;border-radius:50%;background:#ffffff08;color:white;font:14px var(--sans);transition:background .3s,color .3s,transform .3s}.hero-dots button:hover{background:#ffffff30}.hero-dots button.is-active,.hero-dots button[aria-current=true],.hero-dots button[aria-selected=true]{background:white;color:var(--blue);transform:scale(1.02)}.hero-pagination>[data-pause]{width:30px;height:30px;border-color:transparent;font:12px var(--sans);opacity:.85}.hero-position{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.hero-scroll{position:absolute;left:50%;bottom:25px;display:flex;align-items:center;flex-direction:column;gap:7px;transform:translateX(-50%);font:10px var(--sans);letter-spacing:.15em;color:#ffffffbb}.hero-scroll span{display:block;height:30px;width:1px;background:linear-gradient(transparent,#fff);animation:scrollCue 1.8s ease-in-out infinite}
/* News: a large feature, two smaller cards and five compact news rows. */
.section{position:relative;min-height:100vh;min-height:100svh;padding:80px 0;display:flex;align-items:center;scroll-margin-top:80px}.section>.wrap{position:relative;z-index:1}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:40px}.section-heading h2{font:600 30px/1.2 var(--serif);color:var(--blue)}.more{font:13px var(--sans);color:var(--blue);display:inline-flex;align-items:center;gap:12px;white-space:nowrap}.more>span{font-size:21px;transition:transform .3s}.more:hover>span{transform:translateX(5px)}.news-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.news-feature{grid-column:1;grid-row:1 / span 2;min-width:0}.photo{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:8px;background:#eff4f9}.photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s,opacity .5s}.photo-tag{position:absolute;left:16px;bottom:16px;padding:4px 12px;border-radius:20px;font:12px/1.6 var(--sans);color:white;background:#004c95d9}.news-copy{padding:16px 4px 0}.news-copy time{display:block;font:12px/1.5 var(--sans);color:var(--muted);margin-bottom:8px}.news-feature h3{font:600 21px/1.55 var(--serif)}.read-story{display:flex;align-items:center;justify-content:space-between;gap:20px;font:12px var(--sans);color:var(--blue);margin-top:24px}.news-top{display:grid;grid-template-columns:1fr 1fr;gap:24px;min-width:0}.news-small h3{font:600 16px/1.6 var(--serif);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:3.2em}.news-small .photo-tag{display:none}.news-small .photo{aspect-ratio:4/3}.news-item a:hover h3{color:var(--bright)}.news-item a:hover .photo img{transform:scale(1.045)}.news-list{background:#f9fafb;border-radius:12px;padding:12px 24px;align-self:start}.news-list .news-item+ .news-item{border-top:1px solid #e8edf3}.news-list a{display:grid;grid-template-columns:1fr auto;align-items:center;gap:14px;padding:13px 0}.news-list h3{font:400 14px/1.7 var(--serif);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.news-list time{font:11px/1.5 var(--sans);color:#7b8797;white-space:nowrap}
/* Five research tabs and one large, cross-fading research panel. */
.research-section{overflow:hidden;color:white;background:linear-gradient(135deg,#003d82,#0056b3 60%,#0068b7)}.research-section .section-heading{margin-bottom:48px}.research-section .section-heading h2,.research-section .more{color:#fff}.research-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:40px;align-items:center}.research-tabs{display:flex;flex-direction:column;gap:8px;min-width:0}.research-tab{display:grid;grid-template-columns:1fr 20px;gap:12px;align-items:center;width:100%;border:0;border-left:4px solid transparent;padding:20px;background:transparent;color:#ffffffb8;text-align:left;border-radius:12px;transition:background .3s,color .3s,border-color .3s,transform .3s}.research-tab:hover{background:#ffffff0e;color:white;transform:translateY(-2px)}.research-tab[aria-selected=true],.research-tab.is-active{background:#ffffff26;border-left-color:#60a5fa;color:white}.research-tab-title{font:500 17px/1.65 var(--serif);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.research-tab-description{font:12px/1.6 var(--sans);opacity:.65;margin-top:6px}.research-tab-arrow{font-size:20px;transition:transform .3s,opacity .3s;opacity:.3}.research-tab[aria-selected=true] .research-tab-arrow{opacity:1;transform:translateX(4px)}.research-panels{min-width:0;position:relative}.research-panel{overflow:hidden;border-radius:16px;position:relative;isolation:isolate;background:#033c7e;transition:transform .3s,filter .3s,box-shadow .3s}.research-panel:hover{transform:translateY(-2px);filter:brightness(1.02);box-shadow:0 24px 55px #00152d40}.research-panel.is-active{animation:panelIn .5s ease both}.research-panel>a{display:block}.research-photo{aspect-ratio:16/9;background:#fff;min-height:290px}.research-photo img{width:100%;height:100%;object-fit:contain}.research-copy{position:relative;padding:22px 28px 24px;background:linear-gradient(145deg,#002d64,#003c7a)}.research-copy time{font:12px var(--sans);color:#acd6fa}.research-copy h3{font:500 22px/1.55 var(--serif);margin-top:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.research-copy .read-story{color:white;margin-top:20px}.research-orbit{position:absolute;border:1px solid #ffffff12;border-radius:50%;box-shadow:inset 0 0 80px #8dcbff0d;pointer-events:none;animation:orbitFloat 18s ease-in-out infinite}.orbit-one{width:490px;height:490px;left:-190px;bottom:-170px}.orbit-two{width:800px;height:800px;right:-280px;top:-380px;animation-delay:-7s}
/* All academic activities, with native detail dialogs. */
.event-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.event{min-width:0;transition:transform .3s}.event:hover{transform:translateY(-6px)}.event-open{display:block;text-align:left;width:100%;padding:0;border:0;background:transparent}.event-cover{aspect-ratio:4/3;position:relative;overflow:hidden;border-radius:8px;margin-bottom:18px;background:linear-gradient(135deg,#d8eafb,#e9f4fd);color:#175f9e;isolation:isolate;transition:box-shadow .3s}.event-cover img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.event-cover-2{background:linear-gradient(135deg,#d9ebe8,#eaf5ef);color:#2c7067}.event-cover-3{background:linear-gradient(135deg,#dce1f3,#eef0fb);color:#4a61a1}.event-cover-4{background:linear-gradient(135deg,#d5edf3,#e8f7f9);color:#227484}.event-cell{position:absolute;width:100%;height:100%;right:-35%;top:12%;opacity:.3;transition:transform .8s}.event-cover:after{content:"";position:absolute;width:150px;height:150px;border:1px solid currentColor;border-radius:50%;opacity:.12;left:-100px;top:-80px}.event-cover-label{position:absolute;top:20px;left:20px;font:9px/1.5 var(--sans);letter-spacing:.2em;opacity:.75}.event-cover strong{position:absolute;left:20px;top:41%;font:600 clamp(22px,2vw,30px)/1.3 var(--serif);letter-spacing:.08em}.event-cover-date{position:absolute;left:20px;bottom:20px;font:12px/1 var(--sans);letter-spacing:.08em}.event:hover .event-cover{box-shadow:0 14px 26px #003d821b}.event:hover .event-cover img{transform:scale(1.045)}.event:hover .event-cell{transform:rotate(8deg) scale(1.04)}.event h3{font:600 16px/1.65 var(--serif);margin-bottom:14px;min-height:3.3em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.event:hover h3{color:var(--bright)}.event-meta{display:block;font:12px/1.8 var(--sans);color:#64748b;margin-top:6px}.event-meta>span{display:inline-block;width:16px;color:#2673b3;font-size:15px}
/* Reference's pale-blue, side-by-side recruitment and notice block. */
.information-section{position:relative;min-height:calc(100svh - 80px);padding:52px 0 120px;background:#eff6ff;isolation:isolate;scroll-margin-top:80px}.information-section:before{content:"";position:absolute;inset:0;z-index:-1;background:url(college.jpg) center/cover no-repeat;opacity:.19;filter:saturate(.2)}.information{display:grid;grid-template-columns:1fr 1fr;gap:40px}.information .section-heading{margin-bottom:24px}.information .section-heading h2{font-size:24px}.job-item+ .job-item{border-top:1px solid #d8e4f0}.job-item a{display:flex;gap:16px;align-items:center;padding:15px 0}.job-item a>div{flex:1;min-width:0}.job-item h3{font:500 16px/1.65 var(--serif);transition:color .2s}.job-item a:hover h3{color:var(--bright)}.job-item p{font:11px/1.5 var(--sans);color:#7b8797;display:flex;gap:20px;margin-top:6px}.job-item a>span:last-child{font:20px var(--serif);color:#3e7aad;transition:transform .3s}.job-item a:hover>span:last-child{transform:translateX(4px)}.job-feature a{padding-top:0;padding-bottom:22px}.job-feature h3{font-weight:600;font-size:17px}.job-mark{position:relative;flex:0 0 112px;display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:stretch;min-height:90px;background:linear-gradient(145deg,#004d91,#267fb3);color:white;border-radius:4px;font:38px/1.2 var(--serif)}.job-mark span{font:9px/1 var(--sans);letter-spacing:.25em;margin-top:8px}.notice-list{list-style:none;margin:0;padding:0}.notice-list li+li{border-top:1px solid #d8e4f0}.notice-list a{display:grid;grid-template-columns:8px 1fr 18px;gap:14px;padding:15px 0;align-items:start}.notice-bullet{width:6px;height:6px;border-radius:50%;background:#3684bd;margin-top:10px}.notice-list h3{font:500 16px/1.65 var(--serif);transition:color .2s}.notice-list a:hover h3{color:var(--bright)}.notice-list time,.source-label{display:inline-block;font:11px/1.5 var(--sans);color:#7b8797;margin-top:9px}.source-label{margin-left:20px}.notice-list a>span:last-child{color:#4d87b5}
/* The wave is native SVG; no external animation dependency is required. */
.site-footer{position:relative;background:#003d82;color:#e3edfa;padding:45px 0 0}.footer-wave{position:absolute;top:-79px;width:100%;height:80px;fill:#003d82;pointer-events:none}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 110px;gap:70px}.footer-logo{width:320px;height:auto;margin-bottom:20px}.footer-grid p{font:12px/1.8 var(--sans);margin-top:8px;color:#cfdef0}.footer-grid h2{font:600 18px var(--serif);color:white;margin-bottom:24px}.mail-links{display:flex;gap:25px;margin-top:14px;font:12px var(--sans)}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:14px 22px;font:13px var(--serif)}.footer-links ul{display:contents;list-style:none;margin:0;padding:0}.footer-links li{list-style:none}.footer-links a,.mail-links a{transition:color .2s,transform .2s}.footer-links a:hover{color:white;transform:translateX(3px)}.wechat{display:flex;align-items:center;flex-direction:column;gap:12px;font:12px var(--sans)}.wechat img{width:100px;height:100px;object-fit:contain;background:#fff;border:6px solid white;border-radius:4px}.quicklinks{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid #ffffff22;margin-top:36px;padding:24px 0;gap:20px;font:12px var(--serif)}.quicklinks a{display:flex;justify-content:center;gap:16px}.quicklinks a>span{transition:transform .3s}.quicklinks a:hover>span{transform:translateX(4px)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-top:1px solid #ffffff22;font:10px/1.6 var(--sans);color:#a9c1df}.preview-note{text-align:center;background:#eff6ff;color:#73859a;padding:9px;font:10px/1.6 var(--sans)}
.event-dialog{max-width:min(512px,calc(100vw - 32px));width:512px;border:0;padding:34px;border-radius:12px;color:var(--ink);box-shadow:0 30px 100px #001b4e44}.event-dialog[open]{animation:dialogIn .2s ease-out}.event-dialog::backdrop{background:#000c;animation:fadeIn .2s ease}.dialog-close{position:absolute;right:14px;top:12px;border:0;background:none;font:28px/1 var(--sans);color:#64748b;padding:5px}.dialog-kicker{display:block;font:10px var(--sans);letter-spacing:.18em;color:#4382b5;margin-bottom:15px}.event-dialog h2{font:600 24px/1.6 var(--serif);color:var(--blue);padding-right:12px}.event-dialog dl{margin:24px 0}.event-dialog dl>div{display:grid;grid-template-columns:60px 1fr;gap:12px;margin-top:15px;font:14px/1.7 var(--sans)}.event-dialog dt{color:#8593a3}.event-dialog dd{margin:0}.dialog-link{display:flex;justify-content:space-between;background:var(--blue);color:white;padding:12px 18px;border-radius:5px;font:14px var(--sans)}
/* Cell-like navigation sweep, image loading and section entrance effects. */
.page-transition{position:fixed;inset:0;z-index:1500;pointer-events:none;visibility:hidden;overflow:hidden}.transition-layer{position:absolute;inset:-20% -10%;border-radius:46% 54% 32% 60% / 18% 24% 16% 20%;background:linear-gradient(130deg,#005bbdd9,#007cbde0);transform:translateY(110%)}.transition-layer:nth-child(2){background:linear-gradient(135deg,#02a0b4c9,#0081bad1)}.transition-particle{position:absolute;display:block;left:var(--x,20%);top:110%;width:var(--size,45px);height:calc(var(--size,45px)*.66);border:2px solid #c7faff80;box-shadow:inset 0 0 12px #8ef7ff5c;border-radius:50%;background:#b3ffff2b;opacity:0}.particle-1{--x:12%;--size:58px;--delay:0ms;--time:1.2s}.particle-2{--x:34%;--size:32px;--delay:120ms;--time:1.5s}.particle-3{--x:57%;--size:75px;--delay:240ms;--time:1.7s}.particle-4{--x:75%;--size:42px;--delay:400ms;--time:1.4s}.particle-5{--x:89%;--size:26px;--delay:600ms;--time:1s}.is-transitioning .page-transition{visibility:visible}.is-transitioning .transition-layer{animation:cellSweep 1.2s cubic-bezier(.45,0,.55,1) both}.is-transitioning .transition-layer:nth-child(2){animation-delay:80ms}.is-transitioning .transition-particle{animation:particleRise var(--time,1.5s) ease-out var(--delay,0ms) both}.js img{opacity:0;transition:opacity .5s ease}.js img.is-loaded{opacity:1}.js .hero-image{transition:opacity .7s ease}.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease;transition-delay:var(--reveal-delay,0ms)}.js .reveal.is-visible{opacity:1;transform:translateY(0)}.js .hero-copy>*{opacity:0;transform:translateY(20px)}.js .hero-slide.is-active .hero-copy>*{animation:heroText .7s ease .12s both}.js .hero-slide.is-active .hero-copy>p{animation-delay:.25s}.js .hero-slide.is-active .hero-copy>.hero-link{animation-delay:.4s}
@keyframes heroText{to{opacity:1;transform:translateY(0)}}@keyframes dropdown{from{opacity:0;translate:0 -7px}to{opacity:1;translate:0 0}}@keyframes scrollCue{0%,100%{opacity:.35;transform:translateY(-4px)}50%{opacity:1;transform:translateY(4px)}}@keyframes panelIn{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes dialogIn{from{opacity:0;transform:translateY(8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes orbitFloat{0%,100%{transform:translate(0,0)}50%{transform:translate(-20px,30px)}}@keyframes cellSweep{0%{transform:translateY(110%) rotate(-4deg)}50%{transform:translateY(0) rotate(1deg)}100%{transform:translateY(-115%) rotate(4deg)}}@keyframes particleRise{0%{opacity:0;transform:translateY(0) rotate(0)}20%{opacity:.8}100%{opacity:0;transform:translateY(-125vh) rotate(160deg)}}
@media(min-width:1600px){.news-section .wrap,.research-section .wrap,.events-section .wrap{padding-block:15px}.hero-copy h1,.hero-copy h2{font-size:64px}}
@media(max-width:1250px) and (min-width:1101px){.header-inner{gap:14px}.brand{flex-basis:224px}.main-nav{font-size:13px;gap:12px}.header-tools{gap:12px}.language{font-size:11px}}
@media(max-width:1100px){.header-inner{gap:20px}.brand{flex-basis:280px}.main-nav{display:none;position:absolute;left:0;right:0;top:80px;margin:0;padding:15px 24px 24px;max-height:calc(100svh - 80px);overflow:auto;background:#fffffff7;color:var(--blue);box-shadow:0 15px 25px #003d8222;grid-template-columns:1fr 1fr;gap:0 28px;white-space:normal}.main-nav.is-open{display:grid}.main-nav>a,.nav-group>summary{padding:12px 0}.main-nav>a:after,.nav-group>summary:after{display:none}.nav-sub{position:static;box-shadow:none;transform:none;min-width:0;padding:3px 0 10px;background:transparent;border-top:1px solid #d8e4f0;animation:none}.nav-sub a{padding:7px 10px;font-size:13px;white-space:normal}.header-tools{margin-left:auto}.menu-toggle{display:block}.site-header:has(.main-nav.is-open),.site-header:has(.site-search:not([hidden])){background:#fffffff7;color:var(--blue)}.site-header:has(.main-nav.is-open) .brand img,.site-header:has(.site-search:not([hidden])) .brand img{filter:brightness(0) saturate(100%) invert(18%) sepia(42%) saturate(2523%) hue-rotate(181deg) brightness(88%)}.research-layout{gap:24px;grid-template-columns:minmax(0,2fr) minmax(0,3fr)}.research-tab{padding:16px 14px}.research-tab-title{font-size:15px}.research-copy{padding:20px}.research-copy h3{font-size:19px}.event-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 24px}.event-cover strong{font-size:30px}.events-section{padding-block:65px}.information{gap:28px}.footer-grid{gap:35px}.news-small .news-copy{padding-top:12px}.news-list{padding:8px 18px}.news-list a{grid-template-columns:1fr;gap:4px;padding:10px 0}}
@media(max-width:760px){html{scroll-padding-top:72px}.wrap{width:calc(100% - 36px)}.header-inner{height:72px;gap:12px}.brand{flex-basis:auto;width:min(265px,calc(100% - 116px));flex-shrink:1}.header-tools{gap:0}.language{display:none}.search-toggle{padding:5px}.search-toggle svg{width:21px;height:21px}.menu-toggle{font-size:12px;padding:5px 7px}.main-nav{top:72px;max-height:calc(100svh - 72px);padding-inline:18px;gap:0 20px;font-size:16px}.site-search{padding:22px 0}.hero-copy{padding:80px 30px 120px}.hero-copy h1,.hero-copy h2{font-size:clamp(30px,7.5vw,42px);line-height:1.5;letter-spacing:.03em}.hero-copy p{font-size:16px;line-height:1.8;margin-top:13px}.hero-arrow{width:36px;height:36px;font-size:28px}.hero-prev{left:10px}.hero-next{right:10px}.hero-pagination{right:18px;bottom:24px;gap:6px}.hero-dots{gap:7px}.hero-dots button{width:33px;height:33px;font-size:12px}.hero-pagination>[data-pause]{width:25px;height:25px}.hero-scroll{left:25px;bottom:26px;font-size:8px;transform:none}.hero-scroll span{height:22px}.section{min-height:0;padding:52px 0;scroll-margin-top:72px}.section-heading{margin-bottom:28px}.section-heading h2{font-size:27px}.more{font-size:11px;gap:7px}.more>span{font-size:19px}.news-grid{grid-template-columns:1fr;gap:28px}.news-feature{grid-column:auto;grid-row:auto}.news-top{gap:16px}.photo{aspect-ratio:4/3}.news-feature h3{font-size:21px}.news-small h3{font-size:15px}.news-small .photo{aspect-ratio:4/3}.news-copy time{font-size:10px}.news-list{padding:10px 18px}.news-list a{grid-template-columns:1fr auto;gap:12px;padding:13px 0}.news-list h3{font-size:14px}.news-list time{font-size:10px}.research-section .section-heading{margin-bottom:28px}.research-layout{display:flex;flex-direction:column;gap:24px}.research-tabs{display:grid;grid-template-columns:1fr;width:100%;gap:6px}.research-tab{padding:11px 14px;border-radius:8px}.research-tab-title{font-size:14px;line-height:1.65;-webkit-line-clamp:2}.research-panels{width:100%}.research-photo{min-height:0;aspect-ratio:16/10}.research-copy h3{font-size:18px}.research-copy{padding:18px}.research-copy time{font-size:10px}.research-copy .read-story{font-size:11px;margin-top:16px}.event-grid{gap:30px 16px}.event-cover{margin-bottom:13px}.event-cover-label{top:13px;left:13px;font-size:6px;letter-spacing:.1em}.event-cover strong{left:13px;font-size:22px}.event-cover-date{left:13px;bottom:14px;font-size:9px}.event h3{font-size:14px;min-height:3.3em;margin-bottom:10px}.event-meta{font-size:10px;line-height:1.7;margin-top:5px}.event-meta>span{width:12px;font-size:13px}.information-section{padding:42px 0 100px;min-height:0;scroll-margin-top:72px}.information{grid-template-columns:1fr;gap:40px}.information .section-heading h2{font-size:25px}.job-feature h3{font-size:16px}.job-mark{flex-basis:90px;min-height:80px}.job-item h3,.notice-list h3{font-size:15px}.job-item p,.notice-list time,.source-label{font-size:10px}.notice-list a{gap:12px}.footer-grid{grid-template-columns:1fr 100px;gap:32px 24px}.footer-grid>div:first-child{grid-column:1/-1}.footer-logo{width:285px}.footer-grid h2{font-size:17px;margin-bottom:20px}.footer-links{font-size:12px;gap:12px}.footer-grid p{font-size:11px}.site-footer{padding-top:30px}.quicklinks{grid-template-columns:repeat(3,1fr);gap:22px 12px;font-size:11px;padding-block:24px}.quicklinks a{gap:8px}.footer-bottom{display:block;font-size:9px;padding:18px 0}.footer-bottom>span{display:block;margin-top:5px}.event-dialog{padding:28px 24px}.event-dialog h2{font-size:21px}.event-dialog dl>div{font-size:13px;grid-template-columns:50px 1fr}.preview-note{font-size:9px}.orbit-two{width:600px;height:600px}}
@media(max-width:500px){.event-grid{grid-template-columns:1fr}.event-cover{aspect-ratio:4/3}.event-cover-label{top:24px;left:24px;font-size:10px}.event-cover strong{left:24px;font-size:34px}.event-cover-date{left:24px;bottom:24px;font-size:13px}.event h3{font-size:17px;min-height:0;margin-bottom:14px}.event-meta{font-size:12px}.event-meta>span{width:16px;font-size:15px}}
@media(max-height:520px) and (min-width:761px){.hero-copy{padding:95px 80px 65px}.hero-copy h1,.hero-copy h2{font-size:38px}.hero-copy p{font-size:18px;margin-top:10px}.hero-link{margin-top:12px}.hero-pagination{bottom:16px}.hero-scroll{bottom:18px}}
/* Reference details and readable fallbacks when scripting is unavailable. */
.menu-backdrop{display:none}.event-source-link{display:inline-flex;gap:18px;margin-top:12px;font:12px var(--sans);color:var(--blue)}.js .event-source-link{display:none}body.has-modal{overflow:hidden}.event-dialog.is-closing{animation:dialogOut .2s ease both}.event-dialog.is-closing::backdrop{animation:fadeOut .2s ease both}.hero-pagination>[data-pause]{font:12px/1 var(--sans);white-space:nowrap}
.news-section{isolation:isolate}.news-section:before{content:"";position:absolute;inset:0;z-index:-1;background:url(college.jpg) center/cover no-repeat;opacity:.16;filter:saturate(.2)}
.research-section .section-heading h2{position:relative;padding-bottom:18px}.research-section .section-heading h2:after{content:"";position:absolute;left:0;bottom:0;width:80px;height:4px;background:#60a5fa}.research-photo{min-height:0;aspect-ratio:16/9}.research-copy{position:absolute;inset:auto 0 0;padding:38px 24px 24px;background:linear-gradient(transparent,#001b43e6)}.research-copy h3{font-size:22px}.research-copy .read-story{margin-top:12px}.research-photo img{min-height:100%}

.site-footer{background:linear-gradient(135deg,#1e5a9e,#1a4a8a 55%,#163d75)}.footer-wave{fill:#1e5a9e}.main-nav>a:hover,.nav-group>summary:hover{color:#ff6b35}
html:not(.js) .site-header{background:#fffffff2;color:var(--blue);box-shadow:0 2px 14px #003d8214}html:not(.js) .brand img{filter:brightness(0) saturate(100%) invert(18%) sepia(42%) saturate(2523%) hue-rotate(181deg) brightness(88%)}html:not(.js) .research-layout{display:block}html:not(.js) .research-panel{max-width:850px;margin:20px auto}html:not(.js) .search-toggle{display:none}
@keyframes dialogOut{to{opacity:0;transform:translateY(8px) scale(.95)}}@keyframes fadeOut{to{opacity:0}}
@media(max-width:1100px){.js .main-nav{display:flex;position:fixed;left:auto;right:0;top:80px;bottom:0;width:288px;max-width:calc(100vw - 40px);max-height:calc(100svh - 80px);flex:none;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:20px 24px 30px;gap:0;transform:translateX(105%);visibility:hidden;box-shadow:-10px 12px 30px #002c6222;transition:transform .3s ease,visibility .3s}.js .main-nav.is-open{transform:translateX(0);visibility:visible}.js .menu-backdrop{display:block;position:fixed;inset:80px 0 0;z-index:70;border:0;padding:0;background:#001c4855;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s,visibility .3s}.js body.has-open-menu .menu-backdrop{opacity:1;visibility:visible;pointer-events:auto}body.has-open-menu{overflow:hidden}html:not(.js) .site-header{position:relative}html:not(.js) .header-inner{height:auto;min-height:80px;flex-wrap:wrap}html:not(.js) .main-nav{display:grid;position:static;width:100%;flex:0 0 100%;order:4;margin:0;box-shadow:none;max-height:none}html:not(.js) .menu-toggle{display:none}}
@media(max-width:760px){.js .main-nav{top:72px;max-height:calc(100svh - 72px)}.js .menu-backdrop{top:72px}.research-photo{aspect-ratio:16/10}.research-copy{padding:32px 18px 18px}.research-copy h3{font-size:17px}.research-copy .read-story{margin-top:10px}html:not(.js) .header-inner{min-height:72px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js .hero-copy>*,.js .reveal,.js img{opacity:1!important;transform:none!important}.page-transition{display:none!important}}

/* Recruitment news: three visible rows; full list for keyboard reading and reduced motion. */
.college-recruitment{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;margin-bottom:26px;background:#ffffffa6;border-left:3px solid #267fb8;border-radius:4px;color:var(--blue)}.college-recruitment>span:first-child{font-size:18px;font-weight:600}.college-recruitment>span:last-child{font-size:12px}.college-recruitment:hover{background:white}.recruitment-news{--job-row-height:96px;min-width:0}.recruitment-news-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:2px solid #8eb6d4}.recruitment-news-heading>h3{font-size:18px;font-weight:600;color:var(--blue)}.recruitment-news-heading>div{display:flex;align-items:center;gap:16px;font-size:12px;color:#477ea9}.recruitment-news-heading button{border:0;background:transparent;padding:3px 0;color:inherit;font-size:12px}.recruitment-news-heading a:hover,.recruitment-news-heading button:hover{color:var(--blue)}.job-viewport{overflow:visible}.recruitment-news .job-list{will-change:transform}.recruitment-news .job-item{border-top:0;border-bottom:1px solid #d0deea;height:var(--job-row-height)}.recruitment-news .job-item a{display:grid;grid-template-columns:7px minmax(0,1fr) auto;gap:12px;height:100%;padding:16px 0;align-items:center}.recruitment-news .job-item h3{font-size:15px;font-weight:400;line-height:1.8;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recruitment-news .job-item time{font-size:12px;color:#71859a;white-space:nowrap;font-variant-numeric:tabular-nums}.job-bullet{width:5px;height:5px;border-radius:50%;background:#3684bd}.recruitment-news.is-rolling .job-viewport{height:calc(3 * var(--job-row-height));overflow:hidden}.recruitment-news.is-reading .job-viewport{height:auto;overflow:visible}.job-empty{margin:20px 0;color:var(--muted);font-size:14px}.job-empty a{color:var(--blue)}
@media(max-width:760px){.college-recruitment{padding:16px;margin-bottom:22px}.college-recruitment>span:first-child{font-size:17px}.college-recruitment>span:last-child{font-size:11px}.recruitment-news{--job-row-height:100px}.recruitment-news .job-item a{gap:9px}.recruitment-news .job-item h3{font-size:14px}.recruitment-news .job-item time{font-size:10px}.recruitment-news-heading>h3{font-size:17px}.recruitment-news-heading>div{gap:12px;font-size:11px}}

/* Lectures stay in one horizontal row, with four real cards per desktop group. */
.event-carousel{--lecture-gap:24px;min-width:0;width:100%}.event-carousel .event-grid{display:flex;flex-wrap:nowrap;gap:var(--lecture-gap);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;padding:8px 0 18px}.event-carousel .event-grid::-webkit-scrollbar{display:none}.event-carousel .event-grid>.event{flex:0 0 calc((100% - 3 * var(--lecture-gap))/4);scroll-snap-align:start;scroll-snap-stop:always}.event-carousel .event-grid.is-paged{gap:0}.event-page{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--lecture-gap);flex:0 0 100%;width:100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always}.event-page>.event{width:100%;min-width:0}.event-grid.is-dragging{scroll-snap-type:none;cursor:grabbing;user-select:none}.event-grid.is-dragging .event-open{cursor:grabbing}.lecture-controls{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:22px;color:var(--blue)}.lecture-prev,.lecture-next{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border:1px solid #bdcfe0;border-radius:50%;background:#fff;color:var(--blue);font:20px/1 var(--sans);transition:color .2s,background .2s,border-color .2s}.lecture-prev:hover,.lecture-next:hover{color:#fff;background:var(--blue);border-color:var(--blue)}.lecture-dots{display:flex;align-items:center;gap:10px}.lecture-dot{display:block;width:8px;height:8px;padding:0;border:0;border-radius:20px;background:#c2d2e2;transition:width .25s,background .25s}.lecture-dot.is-active{width:26px;background:var(--blue)}.lecture-position{font:12px/1 var(--sans);font-variant-numeric:tabular-nums;color:#71869c;margin-left:6px}.lecture-pause{border:0;border-left:1px solid #d2deea;padding:4px 0 4px 16px;background:transparent;color:#5c7b99;font:12px/1.5 var(--sans)}.lecture-pause:hover{color:var(--blue)}.lecture-pause:disabled{cursor:default;color:#8a9daf}.event-carousel .event-grid:focus-visible{outline-offset:3px}
@media(max-width:1100px){.event-carousel .event-grid>.event{flex-basis:calc((100% - var(--lecture-gap))/2)}.event-page{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.event-carousel{--lecture-gap:16px}.lecture-controls{gap:11px;margin-top:18px}.lecture-prev,.lecture-next{width:36px;height:36px;flex-basis:36px}.lecture-position{font-size:11px;margin-left:0}.lecture-pause{font-size:11px;padding-left:12px}.lecture-dots{gap:8px}}
@media(max-width:500px){.event-carousel .event-grid>.event{flex-basis:100%}.event-page{grid-template-columns:minmax(0,1fr)}.lecture-controls{gap:10px}.lecture-pause{font-size:10px}.event-carousel .event-cover{aspect-ratio:4/3}}

/* A single moving recruitment list; compact source tags replace the static entry card. */
.recruitment-news{--job-visible-rows:5}.recruitment-links{display:flex;align-items:center;gap:18px;font:12px/1.5 var(--sans);color:var(--blue);white-space:nowrap}.recruitment-links a:hover{color:var(--bright)}.recruitment-news .job-item a{grid-template-columns:5px auto minmax(0,1fr) auto;gap:12px}.job-kind{display:inline-block;padding:3px 7px;border-radius:3px;background:#e2edf8;color:#31658e;font:11px/1.5 var(--sans);white-space:nowrap}.job-kind[data-kind=college]{background:#d6e8fa;color:#175386}.recruitment-news.is-rolling .job-viewport{height:calc(var(--job-visible-rows) * var(--job-row-height))}.recruitment-news.is-reading .job-viewport{height:auto}.lecture-position,.lecture-pause,[data-jobs-pause]{display:none!important}
@media(max-width:760px){.recruitment-links{font-size:10px;gap:10px}.recruitment-news .job-item a{gap:8px}.job-kind{font-size:9px;padding:3px 5px}.recruitment-news .job-item h3{font-size:13px}.recruitment-news .job-item time{font-size:9px}}

/* Portrait lecture posters are displayed whole, including their printed text. */
.event-carousel .event-cover{aspect-ratio:4/5;background:#f2f5f8}.event-carousel .event-cover img{width:100%;height:100%;object-fit:contain;object-position:center}.event-carousel .event-cover:has(img):after{display:none}.event-carousel .event:hover .event-cover img{transform:none}

/* Three legacy shortcuts fill the space between college identity and QR code. */
.footer-grid{grid-template-columns:320px minmax(0,1fr) 110px;gap:32px;align-items:start}.footer-grid>div.footer-brand{grid-column:1;grid-row:1;min-width:0}.footer-grid>.wechat{grid-column:3;grid-row:1}.footer-grid>.footer-related{grid-column:1/-1;grid-row:2;min-width:0;padding-top:26px;border-top:1px solid #ffffff25}.footer-grid>.footer-related>h2{margin-bottom:18px}.footer-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 32px;font:14px/1.85 var(--sans)}.footer-links a{display:block;min-width:0;padding:7px 0;overflow-wrap:anywhere;border-bottom:1px solid #ffffff12}.footer-logo{max-width:100%}.footer-shortcuts{grid-column:2;grid-row:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-self:center;min-width:0}.footer-shortcuts>a{display:flex;flex-direction:column;align-items:center;gap:16px;min-width:0;padding:12px 4px;color:#f0f6ff;font:15px/1.65 var(--sans);text-align:center}.footer-shortcut-label>span{display:block}.footer-shortcut-icon{display:grid;place-items:center;width:64px;height:64px;flex-shrink:0;border:1px solid #ffffff80;border-radius:50%;transition:transform .25s,background .25s,border-color .25s}.footer-shortcut-icon svg{display:block;width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.footer-shortcuts>a:hover .footer-shortcut-icon{transform:translateY(-4px);background:#ffffff15;border-color:#fff}.footer-shortcuts>a:hover .footer-shortcut-label{color:#fff}
@media(max-width:1100px){.footer-grid{grid-template-columns:minmax(0,1fr) 110px;gap:28px 32px}.footer-grid>.wechat{grid-column:2}.footer-shortcuts{grid-column:1/-1;grid-row:2;gap:24px}.footer-grid>.footer-related{grid-row:3}.footer-links{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}}
@media(max-width:760px){.footer-grid{grid-template-columns:minmax(0,1fr) 90px;gap:26px 18px}.footer-grid>div.footer-brand{grid-column:1;grid-row:1}.footer-grid>.wechat{grid-column:2;grid-row:1}.footer-grid>.wechat img{width:90px;height:90px}.footer-logo{width:min(320px,100%);margin-bottom:15px}.footer-shortcuts{gap:8px}.footer-shortcuts>a{gap:12px;padding:6px 0;font-size:12px;line-height:1.7}.footer-shortcut-label>span{text-wrap:balance}.footer-shortcut-icon{width:50px;height:50px}.footer-shortcut-icon svg{width:26px;height:26px}.footer-links{grid-template-columns:minmax(0,1fr);gap:6px;font-size:13px;line-height:1.8}.footer-grid>.footer-related{padding-top:24px}.footer-grid>.footer-related>h2{margin-bottom:12px}.mail-links{gap:16px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.footer-shortcut-icon{transition:none}.footer-shortcuts>a:hover .footer-shortcut-icon{transform:none}}

/* Emphasized college motto and mailboxes; the address anchors the footer. */
.site-footer .footer-motto{margin:0;color:#fff;font:600 24px/1.7 var(--sans);letter-spacing:.16em}.site-footer .mail-links{display:flex;flex-direction:column;align-items:flex-start;gap:0;margin-top:16px}.site-footer .mail-links a{display:block;max-width:100%;min-height:44px;padding:8px 0;border:0;border-radius:0;background:none;color:#fff;font:500 17px/1.6 var(--sans);letter-spacing:0;overflow-wrap:anywhere;text-align:left;text-decoration-thickness:1px;text-underline-offset:5px}.site-footer .mail-links a:hover{background:none;color:#fff;text-decoration-line:underline}.site-footer .footer-bottom{justify-content:center;margin-top:30px;padding:22px 0;color:#dce9f8;font:14px/1.8 var(--sans);text-align:center}.site-footer .footer-bottom>.footer-address{display:block;margin:0}
@media(max-width:760px){.site-footer .footer-motto{font-size:18px;letter-spacing:.1em;line-height:1.7}.site-footer .mail-links{gap:0;margin-top:12px}.site-footer .mail-links a{padding:9px 0;font-size:14px;min-height:44px}.site-footer .footer-bottom{margin-top:24px;padding:19px 0;font-size:12px}}
@media(max-width:360px){.site-footer .footer-motto{font-size:16px;letter-spacing:.07em}}

/* Shared desktop slots align shortcut icons with the QR code centre. */
@media(min-width:1101px){
  .footer-shortcuts>a,.footer-grid>.wechat{
    display:grid;
    grid-template-rows:100px minmax(50px,auto);
    gap:16px;
    padding:12px 4px;
    align-self:center;
    justify-items:center;
    align-items:center;
  }
  .footer-shortcut-label,.footer-grid>.wechat>span{align-self:start}
}

/* XMU reference: college identity on the left, tools over a restrained nav row. */
.site-header{--nav-blue:#26478d;--nav-red:#b33e3f;background:linear-gradient(180deg,#0009,transparent);color:#fff;box-shadow:none;backdrop-filter:none;transition:background .3s,color .3s}
.site-header .header-inner{display:grid;grid-template-columns:320px minmax(0,1fr);grid-template-rows:44px 76px;column-gap:32px;row-gap:0;height:120px;min-height:0;align-items:center}
.site-header .brand{grid-column:1;grid-row:1/3;width:100%;max-width:320px;flex:none;align-self:center}
.site-header .main-nav{grid-column:2;grid-row:2;position:static;display:flex;justify-content:space-between;align-items:stretch;gap:0;width:100%;height:64px;margin:0;padding:0;flex:none;white-space:nowrap;color:inherit;font:400 16px/64px var(--sans)}
.site-header .main-nav>.nav-group{position:relative;height:64px}
.site-header .main-nav>a,.site-header .main-nav>.nav-group>summary{display:block;min-height:64px;padding:0 12px;line-height:64px;font-size:16px;font-weight:400;letter-spacing:0;transition:color .2s}
.site-header .main-nav>a::after,.site-header .nav-group>summary::after{display:none}
.site-header .main-nav>a:hover,.site-header .nav-group>summary:hover,.site-header .nav-group[open]>summary{color:var(--nav-blue)}
.site-header .header-tools{grid-column:2;grid-row:1;justify-self:end;display:flex;align-items:center;gap:18px;height:30px;margin:0;font:400 12px/1.5 var(--sans);opacity:.9}
.site-header .language{display:inline-flex;align-items:center;height:20px;padding-left:18px;border-left:1px solid #ffffff80;font-size:13px}
.site-header .language span{font:18px/1 var(--sans);margin-right:6px;vertical-align:0}
.site-header .search-toggle{padding:5px}
.site-header .search-toggle svg{width:18px;height:18px}
.site-header .menu-toggle{display:none}
.site-header.is-scrolled,.site-header.is-menu-open,.site-header.is-search-open{background:#fff;color:#333;box-shadow:none;backdrop-filter:none}
.site-header.is-scrolled .header-inner{grid-template-rows:36px 72px;height:108px}
.site-header.is-scrolled .language,.site-header.is-search-open .language{border-left-color:#aaa}
.site-header.is-search-open .brand img{filter:brightness(0) saturate(100%) invert(18%) sepia(42%) saturate(2523%) hue-rotate(181deg) brightness(88%)}
.site-header .nav-sub{position:absolute;left:50%;right:auto;top:100%;width:180px;min-width:180px;padding:0;border:0;border-top:2px solid var(--nav-red);border-radius:0;background:#fff;color:#666;box-shadow:0 15px 27px #a7a5a561;transform:translateX(-50%);animation:dropdown .16s ease-out}
.site-header .main-nav>.nav-group:last-child .nav-sub{left:auto;right:0;transform:none}
.site-header .nav-sub a{display:block;min-height:40px;padding:0 10px;border-bottom:2px solid #fff;background:#fff;color:#666;text-align:center;font:400 14px/40px var(--sans);white-space:normal;transition:color .2s,background .2s}
.site-header .nav-sub a:hover{padding-left:10px;background:#f6f7f9;color:var(--nav-blue);transform:none}
@media(min-width:1101px) and (max-width:1250px){.site-header .header-inner{grid-template-columns:280px minmax(0,1fr);column-gap:24px}.site-header .main-nav>a,.site-header .main-nav>.nav-group>summary{padding-inline:10px}}
@media(max-width:1100px){
  html{scroll-padding-top:72px}
  .site-header,.site-header.is-scrolled,.site-header.is-menu-open,.site-header.is-search-open{background:#0d2f6e;color:#fff}
  .site-header .header-inner,.site-header.is-scrolled .header-inner{display:flex;align-items:center;gap:12px;height:72px;min-height:72px}
  .site-header .brand{flex:0 1 auto;width:min(285px,calc(100% - 108px));max-width:285px}
  .site-header.is-scrolled .brand img,.site-header.is-menu-open .brand img,.site-header.is-search-open .brand img{filter:none}
  .site-header .header-tools{height:auto;margin-left:auto;gap:0;opacity:1}
  .site-header .language{display:none}
  .site-header .search-toggle{padding:8px}
  .site-header .search-toggle svg{width:21px;height:21px}
  .site-header:has(.main-nav.is-open),.site-header:has(.site-search:not([hidden])){background:#fff;color:#26478d}
  .site-header .menu-toggle{position:relative;z-index:83;display:grid;place-items:center;width:44px;height:44px;padding:10px;border:0;background:none;color:inherit;font-size:0}
  .site-header .menu-toggle span{position:relative;display:block;width:25px;height:18px;font-size:0;background:linear-gradient(currentColor,currentColor) top/25px 1px no-repeat,linear-gradient(currentColor,currentColor) center/25px 1px no-repeat,linear-gradient(currentColor,currentColor) bottom/25px 1px no-repeat}
  .site-header .menu-toggle[aria-expanded=true] span{background:none}
  .site-header .menu-toggle[aria-expanded=true] span::before,.site-header .menu-toggle[aria-expanded=true] span::after{content:"";position:absolute;top:8px;left:0;width:25px;height:1px;background:currentColor;transform:rotate(45deg)}
  .site-header .menu-toggle[aria-expanded=true] span::after{transform:rotate(-45deg)}
  .js .site-header .main-nav{position:fixed;z-index:81;left:0;right:0;top:72px;bottom:0;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;width:100%;max-width:none;height:auto;max-height:calc(100svh - 72px);margin:0;padding:24px 20px 40px;overflow-y:auto;overscroll-behavior:contain;border:0;background:#fff;color:#333;box-shadow:none;font:400 16px/44px var(--sans);transform:translateX(100%);visibility:hidden;transition:transform .45s cubic-bezier(.77,0,.175,1),visibility .45s}
  .js .site-header .main-nav.is-open{transform:translateX(0);visibility:visible}
  .site-header .main-nav>.nav-group,.site-header .main-nav>a{width:100%;height:auto;min-height:44px;border-bottom:1px solid #eee;text-align:left}
  .site-header .main-nav>a,.site-header .main-nav>.nav-group>summary{position:relative;min-height:44px;padding:0 20px;color:#333;font:400 16px/44px var(--sans)}
  .site-header .nav-group>summary::after{content:"";position:absolute;display:block;left:auto;right:20px;top:17px;bottom:auto;width:7px;height:7px;border-right:1px solid #666;border-bottom:1px solid #666;background:none;transform:rotate(45deg);transition:transform .2s}
  .site-header .nav-group[open]>summary::after{transform:rotate(225deg)}
  .site-header .nav-sub,.site-header .main-nav>.nav-group:last-child .nav-sub{position:static;left:auto;right:auto;top:auto;width:100%;min-width:0;max-width:none;padding:0 0 10px;border:0;background:#fafafa;box-shadow:none;transform:none;animation:none}
  .site-header .nav-sub a{min-height:50px;padding:0 40px;border:0;background:#fafafa;color:#666;text-align:left;font:400 16px/50px var(--sans)}
  .site-header .nav-sub a:hover{padding-left:40px;background:#f3f4f6;color:var(--nav-blue)}
  .js .menu-backdrop{top:72px;background:none}
  html:not(.js) .site-header{position:relative}
  html:not(.js) .site-header .header-inner{height:auto;flex-wrap:wrap}
  html:not(.js) .site-header .main-nav{position:static;display:flex;flex:0 0 100%;width:100%;height:auto;max-height:none;padding:12px 0;background:#fff;color:#333;transform:none;visibility:visible}
  html:not(.js) .site-header .menu-toggle{display:none}
}

/* PKU-inspired first-screen handoff, with normal document scrolling below it. */
@media(min-width:1101px) and (prefers-reduced-motion:no-preference){
  .js.has-hero-stage .hero{position:sticky;top:0;z-index:0}
  .js.has-hero-stage .news-section,.js.has-hero-stage .research-section,.js.has-hero-stage .events-section,.js.has-hero-stage .information-section{position:relative;z-index:2}
  .js.has-hero-stage .news-section{background:#fff;box-shadow:0 -18px 50px #002b6220}
  .js.has-hero-stage .events-section{background:#fff}
  .js.has-hero-stage .site-footer{z-index:3}
}

/* The two information columns converge together, independently of their lists. */
.information-section{overflow:hidden}
@media(min-width:1025px) and (prefers-reduced-motion:no-preference){
  .js .information.reveal-pair>.recruitment,.js .information.reveal-pair>.notices{opacity:0;transition:transform 1s ease-out,opacity 1s ease-out;will-change:transform,opacity}
  .js .information.reveal-pair>.recruitment{transform:translateX(-50px)}
  .js .information.reveal-pair>.notices{transform:translateX(50px)}
  .js .information.reveal-pair.is-visible>.recruitment,.js .information.reveal-pair.is-visible>.notices{opacity:1;transform:none}
  .js .information.reveal-pair:focus-within>.recruitment,.js .information.reveal-pair:focus-within>.notices{opacity:1;transform:none;transition:none}
}

/* Posters enter one by one without moving the carousel's scrolling geometry. */
.event-carousel .event-open{overflow:hidden}
@keyframes lecturePosterEnter{from{opacity:0;transform:translateX(-32px)}to{opacity:1;transform:translateX(0)}}
@media(prefers-reduced-motion:no-preference){
  .js .event-page.is-awaiting-reveal .event-cover{opacity:0}
  .js .event-page.is-revealing .event-cover{animation:lecturePosterEnter .8s ease-out var(--event-enter-delay,0ms) both}
}
@media(max-width:760px){
  @keyframes lecturePosterEnter{from{opacity:0;transform:translateX(-16px)}to{opacity:1;transform:translateX(0)}}
}

/* Original component output is kept as a readable fallback until enhancement succeeds. */
.legacy-fallback{padding:28px max(18px,calc((100vw - 1200px)/2));font:16px/1.8 var(--sans);color:var(--ink);background:white}.legacy-fallback-note{font-size:13px;color:var(--muted);margin-bottom:24px}.legacy-fallback [data-legacy-source]{margin-bottom:28px}.legacy-fallback h2{font-size:23px;color:var(--blue);margin:18px 0}.legacy-fallback li{list-style:none}.legacy-fallback a{color:var(--blue)}.legacy-fallback .date,.legacy-fallback .add{display:block;color:var(--muted);font-size:13px}.legacy-fallback .phone_nav,.legacy-fallback .swiper-pagination,.legacy-fallback .swiper_btn{display:none}.legacy-fallback .swiper-slide,.legacy-fallback .col-md-4{padding:10px 0;border-bottom:1px solid var(--line)}.legacy-fallback .swiper-wrapper{display:block}.legacy-fallback .nav .common_width>ul{display:flex;flex-wrap:wrap;gap:18px}.legacy-fallback .nav ul ul{padding-left:16px}.inplace-recruitment-intro{padding:28px 24px;background:#ffffff9e;border-left:3px solid #2c7fb8;border-radius:4px;margin-bottom:20px}.inplace-recruitment-intro h3{font:600 26px/1.5 var(--serif);color:var(--blue)}.inplace-recruitment-intro p{font:13px/1.8 var(--sans);color:var(--muted);margin-top:16px}.site-search [id^="divu"]{float:none!important;max-width:720px;margin:auto}.site-search [id^="app"] .fl{float:none!important;display:flex;gap:0}.site-search input.text{height:42px;min-width:0;width:calc(100% - 72px);border:1px solid #cbd5e1;padding:10px 14px;font:15px var(--sans);background:white;color:var(--ink)}.site-search input.bt{width:72px;height:42px;border:0;background:#003d82;color:white;font:14px var(--sans);cursor:pointer}

.legacy-hero-link{position:absolute;inset:0;z-index:2}
