:root{
  --bg:#07111d;
  --bg-deep:#040a12;
  --surface:#0d1c2d;
  --surface-2:#10263b;
  --surface-3:#132e47;
  --text:#eef7ff;
  --muted:#9db2c8;
  --line:rgba(173,213,255,.12);
  --cyan:#59d9ff;
  --mint:#32e6b2;
  --violet:#8a78ff;
  --blue:#4f8cff;
  --shadow:0 24px 80px rgba(0,0,0,.34);
  --radius:28px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  min-width:320px;
  color:var(--text);
  background:
    radial-gradient(circle at 10% 10%,rgba(79,140,255,.11),transparent 25%),
    radial-gradient(circle at 88% 6%,rgba(50,230,178,.08),transparent 20%),
    linear-gradient(180deg,var(--bg-deep),var(--bg) 16%,#091524 65%,#07111d);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
  line-height:1.72;
  overflow-x:hidden;
}

body::selection{background:rgba(89,217,255,.24)}
a{color:inherit;text-decoration:none}
button{font:inherit}
svg{display:block}
.container{width:min(1180px,92%);margin:0 auto}
.page-grid{
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.16;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:58px 58px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),transparent 78%);
}

.site-header{
  position:sticky;
  top:0;
  z-index:50;
  border-bottom:1px solid rgba(255,255,255,.07);
  background:rgba(4,10,18,.74);
  backdrop-filter:blur(18px);
}

.nav-wrap{
  min-height:78px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}

.brand{display:flex;align-items:center;gap:14px;min-width:0}
.brand-mark{
  width:48px;height:48px;flex:0 0 48px;
  border-radius:16px;
  display:grid;place-items:center;
  background:
    linear-gradient(145deg,rgba(89,217,255,.20),rgba(138,120,255,.17)),
    rgba(255,255,255,.035);
  border:1px solid rgba(89,217,255,.28);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 12px 36px rgba(44,126,255,.14);
}
.brand-mark svg{width:31px;height:31px;fill:none;stroke:url(#brandGradient);stroke:var(--cyan);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.brand-copy{display:grid;gap:1px;min-width:0}
.brand-copy strong{font-size:.97rem;letter-spacing:.02em;white-space:nowrap}
.brand-copy small{font-size:.78rem;color:var(--muted);white-space:nowrap}

.site-nav{display:flex;align-items:center;gap:28px}
.site-nav a{
  position:relative;
  color:#b5c7da;
  font-size:.93rem;
  transition:.25s ease;
}
.site-nav a::after{
  content:"";
  position:absolute;
  left:0;right:100%;bottom:-8px;
  height:2px;border-radius:10px;
  background:linear-gradient(90deg,var(--mint),var(--cyan));
  transition:.25s ease;
}
.site-nav a:hover{color:#fff}
.site-nav a:hover::after{right:0}

.menu-toggle{
  display:none;
  width:44px;height:44px;
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(255,255,255,.035);
  padding:11px;
}
.menu-toggle span{
  display:block;height:2px;margin:5px 0;border-radius:4px;background:#dff7ff;
}

.hero{
  position:relative;
  min-height:calc(100vh - 78px);
  display:flex;
  align-items:center;
  padding:74px 0 86px;
  overflow:hidden;
}
.hero::before{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(89,217,255,.25),transparent);
}
.hero-orb{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none}
.hero-orb-one{
  width:420px;height:420px;right:-120px;top:80px;
  background:radial-gradient(circle,rgba(89,217,255,.14),transparent 67%);
}
.hero-orb-two{
  width:360px;height:360px;left:-140px;bottom:-80px;
  background:radial-gradient(circle,rgba(138,120,255,.12),transparent 70%);
}

.hero-layout{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.03fr .97fr;
  gap:64px;
  align-items:center;
}
.hero-kicker{
  display:inline-flex;align-items:center;gap:10px;
  color:var(--mint);
  font-size:.74rem;font-weight:700;letter-spacing:.14em;
}
.hero-kicker span{width:34px;height:1px;background:linear-gradient(90deg,var(--mint),transparent)}
.hero h1{
  margin:22px 0 22px;
  max-width:760px;
  font-size:clamp(2.55rem,5.1vw,5rem);
  line-height:1.08;
  letter-spacing:-.045em;
}
.hero h1 em{
  display:block;
  margin:7px 0;
  color:transparent;
  font-style:normal;
  background:linear-gradient(90deg,var(--cyan),var(--mint) 52%,#c8c0ff);
  -webkit-background-clip:text;
  background-clip:text;
}
.hero-lead{
  max-width:720px;
  margin:0;
  color:#a9bdd1;
  font-size:1.07rem;
}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:31px}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 22px;
  border-radius:999px;
  border:1px solid transparent;
  font-weight:700;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.btn:hover{transform:translateY(-2px)}
.btn-primary{
  color:#04101b;
  background:linear-gradient(110deg,var(--mint),var(--cyan));
  box-shadow:0 15px 34px rgba(50,230,178,.15);
}
.btn-ghost{
  color:#eaf8ff;
  border-color:rgba(173,213,255,.18);
  background:rgba(255,255,255,.035);
}
.hero-metrics{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:13px;
  margin-top:38px;
}
.hero-metrics div{
  padding:15px 16px;
  border:1px solid rgba(173,213,255,.10);
  border-radius:18px;
  background:rgba(255,255,255,.025);
}
.hero-metrics strong{display:block;font-size:.84rem;color:#dff8ff}
.hero-metrics span{display:block;margin-top:3px;color:#8198ad;font-size:.75rem}

.visual-shell{
  position:relative;
  min-height:570px;
  border-radius:36px;
  border:1px solid rgba(173,213,255,.15);
  background:
    radial-gradient(circle at 25% 62%,rgba(89,217,255,.09),transparent 26%),
    radial-gradient(circle at 74% 35%,rgba(138,120,255,.12),transparent 28%),
    linear-gradient(145deg,rgba(16,38,59,.96),rgba(8,22,36,.97));
  box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.09);
  overflow:hidden;
}
.visual-shell::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:38px 38px;
  mask-image:radial-gradient(circle at center,black,transparent 82%);
}
.visual-topline{
  position:absolute;z-index:2;
  top:20px;left:22px;right:22px;
  display:flex;align-items:center;justify-content:space-between;
  color:#7f9db7;font-size:.65rem;letter-spacing:.14em;
}
.visual-topline i{
  width:7px;height:7px;border-radius:50%;
  background:var(--mint);
  box-shadow:0 0 18px var(--mint);
}
.discovery-map{position:absolute;inset:34px 10px 8px;width:calc(100% - 20px);height:calc(100% - 42px)}
.protein-cloud path{
  fill:rgba(89,217,255,.045);
  stroke:url(#g1);
  stroke-width:3;
  stroke-dasharray:9 8;
}
.protein-cloud path:last-child{stroke-width:2;opacity:.65}
.ligand line{stroke:var(--mint);stroke-width:4}
.ligand circle{fill:#0d2435;stroke:var(--mint);stroke-width:3}
.antibody path{fill:none;stroke:url(#g1);stroke-width:10;stroke-linecap:round;stroke-linejoin:round}
.antibody circle{fill:#112a42;stroke:var(--cyan);stroke-width:4}
.flow-lines path{fill:none;stroke:rgba(173,213,255,.32);stroke-width:2;stroke-dasharray:6 8}
.flow-lines circle{fill:var(--violet)}
.labels text{fill:#6f8da7;font-size:12px;letter-spacing:2px}
.floating-tag{
  position:absolute;z-index:3;
  display:flex;align-items:center;gap:9px;
  padding:9px 12px;
  border-radius:13px;
  border:1px solid rgba(173,213,255,.13);
  background:rgba(6,18,30,.78);
  backdrop-filter:blur(9px);
  box-shadow:0 10px 32px rgba(0,0,0,.22);
  font-size:.72rem;color:#a9bdd1;
}
.floating-tag b{color:var(--cyan);font-size:.66rem}
.tag-one{left:24px;top:92px}
.tag-two{right:22px;top:160px}
.tag-three{right:32px;bottom:36px}

.section{padding:108px 0;position:relative}
.section-heading{max-width:700px;margin-bottom:44px}
.section-heading.horizontal{
  max-width:none;
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:38px;
}
.section-heading.horizontal p{max-width:420px}
.section-index{
  display:block;
  margin-bottom:10px;
  color:var(--mint);
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.16em;
}
.section-heading h2{
  margin:0;
  font-size:clamp(2rem,4vw,3.35rem);
  line-height:1.15;
  letter-spacing:-.035em;
}
.section-heading p{margin:14px 0 0;color:var(--muted)}

.section-intro{
  background:
    linear-gradient(180deg,rgba(255,255,255,.015),rgba(255,255,255,0)),
    rgba(255,255,255,.006);
  border-bottom:1px solid rgba(255,255,255,.055);
}
.two-column{display:grid;grid-template-columns:.72fr 1.28fr;gap:80px;align-items:start}
.intro-panel{
  padding:34px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(145deg,rgba(17,42,65,.78),rgba(8,24,39,.82));
  box-shadow:var(--shadow);
}
.intro-panel > p{color:#9fb4c9}
.intro-large{margin-top:0;color:#eef8ff!important;font-size:1.28rem;line-height:1.62}
.intro-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:26px}
.intro-cards article{
  min-height:160px;
  padding:18px;
  border-radius:18px;
  border:1px solid rgba(173,213,255,.10);
  background:rgba(255,255,255,.025);
}
.intro-cards span{color:var(--cyan);font-size:.72rem}
.intro-cards h3{margin:13px 0 8px;font-size:1rem}
.intro-cards p{margin:0;color:#8299ae;font-size:.82rem}

.focus-section{
  background:
    radial-gradient(circle at 100% 25%,rgba(138,120,255,.075),transparent 24%),
    radial-gradient(circle at 0 70%,rgba(50,230,178,.05),transparent 23%);
}
.focus-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.focus-card{
  position:relative;
  min-height:270px;
  padding:27px;
  border-radius:24px;
  border:1px solid var(--line);
  background:linear-gradient(145deg,rgba(16,38,59,.82),rgba(8,22,35,.88));
  overflow:hidden;
  transition:transform .24s ease,border-color .24s ease;
}
.focus-card:hover{transform:translateY(-5px);border-color:rgba(89,217,255,.28)}
.focus-card-wide{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:auto 1fr 250px;
  gap:26px;
  align-items:center;
  min-height:260px;
}
.focus-number{color:var(--cyan);font-size:.72rem;font-weight:700;letter-spacing:.14em}
.focus-card h3{margin:15px 0 10px;font-size:1.35rem}
.focus-card p{max-width:660px;margin:0;color:#95abc0}
.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:21px}
.chip-row span{
  padding:6px 10px;border-radius:999px;
  border:1px solid rgba(173,213,255,.12);
  color:#a8bdd0;font-size:.7rem;
}
.mini-graphic{position:relative;height:170px}
.ligand-mini i{
  position:absolute;width:22px;height:22px;border-radius:50%;
  background:#102a40;border:3px solid var(--mint);box-shadow:0 0 16px rgba(50,230,178,.13);
}
.ligand-mini i:nth-child(1){left:24px;top:70px}
.ligand-mini i:nth-child(2){left:82px;top:34px}
.ligand-mini i:nth-child(3){left:142px;top:64px}
.ligand-mini i:nth-child(4){left:130px;top:124px}
.ligand-mini i:nth-child(5){left:58px;top:125px}
.ligand-mini::before,.ligand-mini::after{
  content:"";position:absolute;height:3px;background:rgba(50,230,178,.8);transform-origin:left center
}
.ligand-mini::before{width:142px;left:38px;top:81px;transform:rotate(-8deg)}
.ligand-mini::after{width:112px;left:56px;top:121px;transform:rotate(5deg)}

.antibody-mini{
  position:absolute;right:28px;bottom:18px;width:110px;height:105px;opacity:.85;
}
.antibody-mini span{
  position:absolute;width:10px;border-radius:999px;background:linear-gradient(var(--cyan),var(--violet));
}
.antibody-mini span:nth-child(1){height:74px;left:50px;bottom:0}
.antibody-mini span:nth-child(2){height:69px;left:28px;top:2px;transform:rotate(34deg)}
.antibody-mini span:nth-child(3){height:69px;right:28px;top:2px;transform:rotate(-34deg)}

.helix-mini{position:absolute;right:24px;bottom:22px;width:120px;height:90px}
.helix-mini span{
  position:absolute;left:0;right:0;height:2px;
  background:linear-gradient(90deg,transparent,var(--cyan),var(--violet),transparent);
  transform-origin:center;
}
.helix-mini span:nth-child(1){top:10px;transform:rotate(16deg)}
.helix-mini span:nth-child(2){top:31px;transform:rotate(-16deg)}
.helix-mini span:nth-child(3){top:52px;transform:rotate(16deg)}
.helix-mini span:nth-child(4){top:73px;transform:rotate(-16deg)}

.network-mini{position:absolute;right:28px;bottom:20px;width:120px;height:92px}
.network-mini span{
  position:absolute;width:13px;height:13px;border-radius:50%;
  background:#112a42;border:2px solid var(--cyan)
}
.network-mini span:nth-child(1){left:6px;top:43px}
.network-mini span:nth-child(2){left:48px;top:7px}
.network-mini span:nth-child(3){right:5px;top:33px}
.network-mini span:nth-child(4){left:44px;bottom:3px}
.network-mini span:nth-child(5){right:23px;bottom:18px}
.network-mini::before{
  content:"";position:absolute;inset:16px 14px;
  border:1px dashed rgba(138,120,255,.5);border-radius:50% 44% 54% 42%;
}
.radar-mini{
  position:absolute;right:31px;bottom:21px;width:92px;height:92px;border-radius:50%;
  border:1px solid rgba(89,217,255,.34);
  background:
    radial-gradient(circle,rgba(50,230,178,.26) 0 3px,transparent 4px),
    repeating-radial-gradient(circle,transparent 0 14px,rgba(89,217,255,.16) 15px 16px),
    conic-gradient(from 0deg,rgba(50,230,178,.15),transparent 34%,rgba(138,120,255,.13),transparent 72%);
}

.pipeline-section{
  border-top:1px solid rgba(255,255,255,.055);
  border-bottom:1px solid rgba(255,255,255,.055);
  background:rgba(255,255,255,.012);
}
.pipeline{display:grid;grid-template-columns:repeat(5,1fr);gap:0}
.pipeline-step{
  position:relative;
  padding:0 22px 0 0;
}
.pipeline-step:not(:last-child)::after{
  content:"";
  position:absolute;
  top:25px;left:54px;right:6px;height:1px;
  background:linear-gradient(90deg,rgba(89,217,255,.45),rgba(173,213,255,.08));
}
.step-dot{
  position:relative;z-index:2;
  width:50px;height:50px;
  display:grid;place-items:center;
  border-radius:50%;
  border:1px solid rgba(89,217,255,.34);
  background:#0b1d2d;
  color:var(--cyan);font-size:.72rem;font-weight:700;
  box-shadow:0 0 0 7px rgba(89,217,255,.035);
}
.pipeline-step > div:last-child{padding-top:22px}
.pipeline-step span{color:#6e8aa2;font-size:.65rem;letter-spacing:.13em}
.pipeline-step h3{margin:7px 0 8px;font-size:1.04rem}
.pipeline-step p{margin:0;color:#8fa5b9;font-size:.84rem}

.capability-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.capability-card{
  min-height:230px;
  padding:24px;
  border-radius:22px;
  border:1px solid var(--line);
  background:linear-gradient(160deg,rgba(17,42,65,.76),rgba(8,21,34,.85));
}
.capability-card span{color:var(--mint);font-size:.68rem;letter-spacing:.15em}
.capability-card h3{margin:32px 0 11px;font-size:1.25rem}
.capability-card p{margin:0;color:#91a7bb;font-size:.9rem}

.contact-section{padding-top:72px}
.contact-panel{
  display:flex;align-items:center;justify-content:space-between;gap:40px;
  padding:42px 46px;
  border-radius:32px;
  border:1px solid rgba(89,217,255,.16);
  background:
    radial-gradient(circle at 85% 10%,rgba(50,230,178,.10),transparent 30%),
    linear-gradient(145deg,rgba(17,42,65,.9),rgba(9,25,40,.95));
  box-shadow:var(--shadow);
}
.contact-panel h2{max-width:700px;margin:0;font-size:clamp(1.8rem,3.4vw,3rem);line-height:1.18}
.contact-panel p{max-width:720px;color:#9bb0c3;margin:14px 0 0}

.site-footer{padding:34px 0 46px;border-top:1px solid rgba(255,255,255,.055)}
.footer-layout{display:flex;align-items:end;justify-content:space-between;gap:30px;color:#7890a5}
.footer-layout strong{color:#dceeff}
.footer-layout p{margin:5px 0 0;font-size:.83rem}

.back-to-top{
  position:fixed;
  right:24px;bottom:24px;
  width:54px;height:54px;
  display:grid;place-items:center;
  border-radius:18px;
  border:1px solid rgba(89,217,255,.22);
  background:rgba(8,24,39,.78);
  backdrop-filter:blur(12px);
  box-shadow:0 12px 34px rgba(0,0,0,.28);
  cursor:pointer;
  opacity:0;
  visibility:hidden;
  transform:translateY(12px);
  transition:.25s ease;
  z-index:40;
}
.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}
.back-to-top svg{width:38px;height:38px;fill:none;stroke:var(--cyan);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.back-to-top:hover{border-color:rgba(50,230,178,.48);transform:translateY(-3px)}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}
.reveal.visible{opacity:1;transform:none}

@media (max-width:1050px){
  .site-nav{gap:18px}
  .hero-layout{grid-template-columns:1fr;gap:46px}
  .hero{padding-top:62px}
  .visual-shell{min-height:540px}
  .two-column{grid-template-columns:1fr;gap:34px}
  .pipeline{grid-template-columns:repeat(3,1fr);gap:34px 14px}
  .pipeline-step:nth-child(3)::after{display:none}
  .capability-grid{grid-template-columns:repeat(2,1fr)}
}

@media (max-width:780px){
  .nav-wrap{min-height:70px}
  .brand-copy strong{font-size:.86rem}
  .brand-copy small{font-size:.7rem}
  .menu-toggle{display:block}
  .site-nav{
    position:absolute;
    top:70px;left:4%;right:4%;
    display:grid;gap:0;
    padding:12px;
    border:1px solid var(--line);
    border-radius:18px;
    background:rgba(6,17,28,.97);
    box-shadow:var(--shadow);
    opacity:0;visibility:hidden;transform:translateY(-8px);
    transition:.2s ease;
  }
  .site-nav.open{opacity:1;visibility:visible;transform:none}
  .site-nav a{padding:11px 10px}
  .site-nav a::after{display:none}
  .hero{min-height:auto;padding:64px 0 70px}
  .hero h1{font-size:clamp(2.4rem,12vw,4rem)}
  .hero-metrics{grid-template-columns:1fr}
  .visual-shell{min-height:480px}
  .floating-tag{display:none}
  .section{padding:80px 0}
  .section-heading.horizontal{align-items:start;flex-direction:column}
  .intro-panel{padding:24px}
  .intro-cards{grid-template-columns:1fr}
  .focus-grid{grid-template-columns:1fr}
  .focus-card-wide{grid-column:auto;grid-template-columns:1fr}
  .focus-card-wide .mini-graphic{display:none}
  .pipeline{grid-template-columns:1fr;gap:24px}
  .pipeline-step{display:grid;grid-template-columns:52px 1fr;gap:18px}
  .pipeline-step:not(:last-child)::after{
    top:50px;bottom:-25px;left:25px;right:auto;width:1px;height:auto;
    background:linear-gradient(180deg,rgba(89,217,255,.4),rgba(173,213,255,.06));
  }
  .pipeline-step > div:last-child{padding-top:0}
  .capability-grid{grid-template-columns:1fr}
  .contact-panel{align-items:flex-start;flex-direction:column;padding:32px 26px}
  .footer-layout{align-items:flex-start;flex-direction:column}
}

@media (max-width:520px){
  .brand-mark{width:44px;height:44px;flex-basis:44px}
  .brand-copy small{display:none}
  .hero-actions .btn{width:100%}
  .visual-shell{min-height:400px;border-radius:26px}
  .discovery-map{inset:40px 0 0;width:100%;height:calc(100% - 40px)}
  .section{padding:68px 0}
  .focus-card{min-height:250px}
  .back-to-top{right:15px;bottom:15px}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
}
/* Related technology articles */
.articles-section{border-top:1px solid rgba(255,255,255,.055);background:radial-gradient(circle at 8% 55%,rgba(89,217,255,.07),transparent 24%),radial-gradient(circle at 94% 20%,rgba(138,120,255,.07),transparent 23%),rgba(255,255,255,.008)}
.article-feature{display:grid;grid-template-columns:minmax(300px,.82fr) 1.18fr;gap:42px;align-items:stretch;padding:24px;border:1px solid rgba(173,213,255,.13);border-radius:30px;background:linear-gradient(145deg,rgba(16,38,59,.9),rgba(8,22,35,.94));box-shadow:var(--shadow)}
.article-visual{position:relative;min-height:350px;overflow:hidden;border-radius:22px;border:1px solid rgba(89,217,255,.13);background:radial-gradient(circle at 24% 60%,rgba(50,230,178,.14),transparent 24%),radial-gradient(circle at 72% 30%,rgba(138,120,255,.17),transparent 26%),linear-gradient(145deg,#0d2337,#091725)}
.article-visual:before{content:"";position:absolute;inset:0;opacity:.32;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:34px 34px}
.article-protein span{position:absolute;border:2px solid rgba(89,217,255,.7);border-radius:46% 54% 62% 38%;box-shadow:0 0 24px rgba(89,217,255,.08)}
.article-protein span:nth-child(1){width:150px;height:118px;left:38px;top:116px;transform:rotate(15deg)}
.article-protein span:nth-child(2){width:104px;height:92px;left:110px;top:82px;transform:rotate(-24deg)}
.article-protein span:nth-child(3){width:82px;height:68px;left:82px;top:188px;transform:rotate(28deg);border-color:var(--mint)}
.article-antibody{position:absolute;right:39px;top:58px;width:112px;height:143px}
.article-antibody i{position:absolute;width:10px;border-radius:999px;background:linear-gradient(var(--cyan),var(--violet));box-shadow:0 0 17px rgba(89,217,255,.16)}
.article-antibody i:nth-child(1){height:86px;left:51px;bottom:0}.article-antibody i:nth-child(2){height:82px;left:25px;top:3px;transform:rotate(35deg)}.article-antibody i:nth-child(3){height:82px;right:25px;top:3px;transform:rotate(-35deg)}
.article-ligand{position:absolute;right:75px;bottom:51px;width:104px;height:78px}.article-ligand b{position:absolute;width:17px;height:17px;border-radius:50%;border:2px solid var(--mint);background:#102a40}.article-ligand b:nth-child(1){left:0;top:29px}.article-ligand b:nth-child(2){left:34px;top:0}.article-ligand b:nth-child(3){right:6px;top:25px}.article-ligand b:nth-child(4){left:40px;bottom:0}
.article-content{display:flex;flex-direction:column;justify-content:center;padding:24px 18px 24px 0}.article-meta,.article-tags{display:flex;flex-wrap:wrap;gap:9px}.article-meta span,.article-tags span{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border-radius:999px;border:1px solid rgba(173,213,255,.12);color:#9db5c9;background:rgba(255,255,255,.025);font-size:.72rem}.article-meta span:first-child{color:var(--mint);border-color:rgba(50,230,178,.2)}
.article-content h3{margin:21px 0 14px;max-width:720px;font-size:clamp(1.55rem,3vw,2.4rem);line-height:1.25;letter-spacing:-.025em}.article-content>p{margin:0;color:#9eb3c7}.article-tags{margin-top:22px}
.article-link{display:inline-flex;align-items:center;gap:9px;width:max-content;margin-top:27px;color:#06121d;padding:11px 18px;border-radius:999px;font-weight:700;background:linear-gradient(110deg,var(--mint),var(--cyan));transition:transform .2s ease,box-shadow .2s ease}.article-link:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(50,230,178,.14)}.article-link svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:900px){.article-feature{grid-template-columns:1fr}.article-content{padding:8px 4px 12px}}@media (max-width:520px){.article-feature{padding:15px;border-radius:23px}.article-visual{min-height:300px}}
/* Hero image replacement */
.hero-image-shell{
  position:relative;
  min-height:570px;
  border-radius:36px;
  overflow:hidden;
  border:1px solid rgba(173,213,255,.16);
  background:#0b1d2d;
  box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.08);
}

.hero-science-image{
  display:block;
  width:100%;
  height:570px;
  object-fit:cover;
  object-position:center;
}

.hero-image-overlay{
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(4,10,18,.06),rgba(4,10,18,.12) 55%,rgba(4,10,18,.62)),
    linear-gradient(90deg,rgba(4,10,18,.18),transparent 38%);
}

.hero-image-caption{
  position:absolute;
  left:24px;
  right:24px;
  bottom:22px;
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:20px;
  padding:14px 16px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  background:rgba(5,17,29,.58);
  backdrop-filter:blur(12px);
}

.hero-image-caption span{
  color:var(--mint);
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.15em;
}

.hero-image-caption strong{
  color:#eef8ff;
  font-size:.85rem;
  letter-spacing:.02em;
}

@media (max-width:780px){
  .hero-image-shell{min-height:480px}
  .hero-science-image{height:480px}
}

@media (max-width:520px){
  .hero-image-shell{min-height:400px;border-radius:26px}
  .hero-science-image{height:400px}
  .hero-image-caption{
    left:14px;
    right:14px;
    bottom:14px;
    align-items:flex-start;
    flex-direction:column;
    gap:3px;
  }
}

/* Research direction WebP images */
.research-image{
  position:relative;
  margin:24px 0 0;
  width:100%;
  aspect-ratio:16/10;
  overflow:hidden;
  border-radius:18px;
  border:1px solid rgba(173,213,255,.12);
  background:#0b1d2d;
}
.research-image img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
  transition:transform .45s ease,filter .45s ease;
}
.focus-card:hover .research-image img{
  transform:scale(1.035);
  filter:saturate(1.06) contrast(1.03);
}
.research-image::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg,transparent 58%,rgba(5,16,27,.34)),
    linear-gradient(135deg,rgba(89,217,255,.04),transparent 40%);
}
.focus-card-wide .research-image-wide{
  margin:0;
  min-height:190px;
  aspect-ratio:4/3;
}
@media (max-width:780px){
  .focus-card-wide .research-image-wide{
    display:block;
    min-height:0;
    aspect-ratio:16/10;
  }
}

/* Local related-publications module */
.publications-layout{
  display:grid;
  grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);
  gap:30px;
  align-items:start;
}
.publications-cover{
  position:sticky;
  top:104px;
  margin:0;
  overflow:hidden;
  border-radius:26px;
  border:1px solid rgba(173,213,255,.14);
  background:#0b1d2d;
  box-shadow:var(--shadow);
}
.publications-cover img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:3/2;
  object-fit:cover;
}
.publications-cover figcaption{
  padding:20px 21px 22px;
  color:#9eb4c8;
  font-size:.83rem;
  border-top:1px solid rgba(173,213,255,.09);
}
.publications-cover strong{
  display:block;
  margin-bottom:6px;
  color:#eaf8ff;
  font-size:1rem;
}
.publication-list{
  display:grid;
  gap:12px;
}
.publication-item{
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  gap:16px;
  padding:19px 20px;
  border:1px solid rgba(173,213,255,.11);
  border-radius:19px;
  background:linear-gradient(145deg,rgba(16,38,59,.75),rgba(8,22,35,.82));
  transition:transform .22s ease,border-color .22s ease;
}
.publication-item:hover{
  transform:translateY(-2px);
  border-color:rgba(89,217,255,.24);
}
.publication-number{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:14px;
  color:var(--cyan);
  font-size:.72rem;
  font-weight:700;
  border:1px solid rgba(89,217,255,.2);
  background:rgba(89,217,255,.05);
}
.publication-topline{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin-bottom:8px;
}
.publication-tag{
  padding:3px 9px;
  border-radius:999px;
  color:var(--mint);
  font-size:.67rem;
  border:1px solid rgba(50,230,178,.17);
  background:rgba(50,230,178,.04);
}
.publication-meta{
  color:#718aa1;
  font-size:.72rem;
}
.publication-item h3{
  margin:0;
  color:#eaf5ff;
  font-size:1rem;
  line-height:1.48;
  letter-spacing:-.005em;
}
.publication-extra[hidden]{
  display:none;
}
.publication-toggle{
  width:100%;
  min-height:48px;
  margin-top:4px;
  border-radius:16px;
  border:1px solid rgba(89,217,255,.2);
  color:#dff8ff;
  background:rgba(89,217,255,.045);
  cursor:pointer;
  font-weight:700;
  transition:background .2s ease,border-color .2s ease;
}
.publication-toggle:hover{
  border-color:rgba(50,230,178,.35);
  background:rgba(50,230,178,.06);
}
.publication-source-note{
  margin:17px 0 0;
  color:#70889f;
  font-size:.75rem;
}
@media (max-width:900px){
  .publications-layout{grid-template-columns:1fr}
  .publications-cover{position:relative;top:auto}
}
@media (max-width:520px){
  .publication-item{
    grid-template-columns:40px minmax(0,1fr);
    gap:12px;
    padding:16px;
  }
  .publication-number{
    width:36px;
    height:36px;
  }
}

/* Featured newest publications */
.publication-item.publication-featured{
  border-color:rgba(50,230,178,.23);
  background:
    radial-gradient(circle at 100% 0,rgba(50,230,178,.07),transparent 34%),
    linear-gradient(145deg,rgba(16,42,61,.9),rgba(8,23,36,.9));
}
.publication-new{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:2px 8px;
  border-radius:999px;
  color:#06131d;
  background:linear-gradient(110deg,var(--mint),var(--cyan));
  font-size:.62rem;
  font-weight:800;
  letter-spacing:.08em;
}
.publication-authors{
  margin:9px 0 0;
  color:#87a0b6;
  font-size:.78rem;
  line-height:1.55;
}
.publication-details{
  margin-top:8px;
  color:#718aa1;
  font-size:.72rem;
}
.publication-doi{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:11px;
  color:var(--cyan);
  font-size:.73rem;
  font-weight:700;
}
.publication-doi:hover{color:var(--mint);}

/* Chinese / English language switcher */
.language-switcher{display:inline-flex;align-items:center;gap:3px;padding:3px;border:1px solid rgba(173,213,255,.14);border-radius:999px;background:rgba(255,255,255,.025)}
.language-switcher a{min-width:42px;padding:5px 10px;border-radius:999px;color:#8fa6ba;font-size:.72rem;font-weight:700;text-align:center;transition:color .2s ease,background .2s ease}
.language-switcher a:hover{color:#eaf8ff}
.language-switcher a.current{color:#06131d;background:linear-gradient(110deg,var(--mint),var(--cyan))}
@media (max-width:780px){.language-switcher{width:max-content;margin:8px 10px 10px}}

/* Bilingual header polish v2 */
.brand{
  flex:0 1 auto;
  min-width:190px;
}
.brand-copy{
  max-width:235px;
}
.brand-copy strong{
  display:block;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.98rem;
  line-height:1.25;
}
.brand-copy small{
  display:block;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.75rem;
}

.site-nav{
  margin-left:auto;
  gap:20px;
  white-space:nowrap;
}
.site-nav > a{
  white-space:nowrap;
}

.language-switcher{
  display:inline-flex;
  align-items:center;
  gap:2px;
  flex:0 0 auto;
  margin-left:3px;
  padding:3px;
  border:1px solid rgba(173,213,255,.14);
  border-radius:999px;
  background:rgba(255,255,255,.025);
}
.language-switcher a{
  display:grid;
  place-items:center;
  min-width:34px;
  height:31px;
  padding:0 9px;
  border-radius:999px;
  color:#8fa6ba;
  font-size:.70rem;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
}
.language-switcher a::after{
  display:none !important;
}
.language-switcher a:hover{
  color:#eef9ff;
}
.language-switcher a.current{
  color:#04101b;
  background:linear-gradient(110deg,var(--mint),var(--cyan));
}
.language-switcher .language-divider{
  color:#536d83;
  font-size:.65rem;
  padding:0 1px;
}

html[lang="en"] .hero h1{
  font-size:clamp(2.45rem,4.6vw,4.75rem);
}
html[lang="en"] .section-heading h2{
  letter-spacing:-.03em;
}

@media (max-width:1180px){
  .nav-wrap{gap:18px}
  .brand-copy{max-width:180px}
  .site-nav{gap:13px}
  .site-nav > a{font-size:.86rem}
}

@media (max-width:930px){
  .brand-copy{max-width:155px}
  .brand-copy small{display:none}
}

@media (max-width:780px){
  .brand{
    min-width:0;
    flex:1 1 auto;
  }
  .brand-copy{
    max-width:205px;
  }
  .brand-copy small{
    display:block;
  }
  .site-nav{
    white-space:normal;
  }
  .site-nav > a{
    white-space:normal;
  }
  .site-nav .language-switcher{
    margin:8px 10px 10px;
    width:max-content;
  }
}

@media (max-width:470px){
  .brand-copy{
    max-width:148px;
  }
  .brand-copy small{
    display:none;
  }
}


/* Hero visual polish v3 */
.hero{
  min-height:auto;
  padding:64px 0 76px;
}
.hero-layout{
  grid-template-columns:minmax(0,1.06fr) minmax(420px,.94fr);
  gap:48px;
  align-items:center;
}
.hero-copy{
  min-width:0;
  max-width:720px;
}
.hero-kicker{
  font-size:.72rem;
  letter-spacing:.13em;
}
.hero h1{
  margin:20px 0 20px;
  max-width:720px;
  font-size:clamp(2.55rem,4.45vw,4.45rem);
  line-height:1.08;
  letter-spacing:-.04em;
}
.hero h1 .hero-line{
  display:block;
  white-space:nowrap;
}
.hero h1 .hero-line-accent{
  display:block;
  margin:7px 0;
  color:transparent;
  background:linear-gradient(90deg,var(--cyan),var(--mint) 52%,#c8c0ff);
  -webkit-background-clip:text;
  background-clip:text;
}
html[lang="zh-CN"] .hero h1{
  font-size:clamp(2.55rem,4.15vw,4.15rem);
  line-height:1.12;
  letter-spacing:-.035em;
}
html[lang="en"] .hero h1{
  font-size:clamp(2.35rem,3.85vw,3.95rem);
  line-height:1.08;
}
.hero-lead{
  max-width:650px;
  font-size:1rem;
  line-height:1.78;
}
.hero-actions{
  margin-top:27px;
}
.hero .btn{
  min-height:46px;
  padding:0 20px;
}
.hero-metrics{
  margin-top:31px;
  gap:11px;
}
.hero-metrics div{
  padding:13px 14px;
  border-radius:16px;
}
.visual-shell{
  min-height:510px;
  border-radius:30px;
}
.hero-visual{
  min-width:0;
}
.hero-visual img,
.hero-visual picture{
  max-width:100%;
}
@media (max-width:1120px){
  .hero-layout{
    grid-template-columns:minmax(0,1fr) minmax(380px,.88fr);
    gap:36px;
  }
  html[lang="zh-CN"] .hero h1{
    font-size:clamp(2.35rem,4.2vw,3.65rem);
  }
  html[lang="en"] .hero h1{
    font-size:clamp(2.2rem,3.8vw,3.45rem);
  }
  .visual-shell{
    min-height:470px;
  }
}
@media (max-width:930px){
  .hero{
    padding:56px 0 66px;
  }
  .hero-layout{
    grid-template-columns:1fr;
    gap:38px;
  }
  .hero-copy,
  .hero h1{
    max-width:760px;
  }
  .visual-shell{
    min-height:480px;
  }
}
@media (max-width:620px){
  .hero{
    padding:46px 0 56px;
  }
  .hero h1,
  html[lang="zh-CN"] .hero h1,
  html[lang="en"] .hero h1{
    font-size:clamp(2.08rem,10vw,3rem);
    line-height:1.12;
  }
  .hero h1 .hero-line{
    white-space:normal;
  }
  .hero-lead{
    font-size:.95rem;
  }
  .hero-actions{
    margin-top:23px;
  }
  .visual-shell{
    min-height:390px;
    border-radius:24px;
  }
}


/* English hero overflow fix v4 */
html[lang="en"] .hero-layout{
  grid-template-columns:minmax(0,1.08fr) minmax(350px,.92fr);
  gap:34px;
}

html[lang="en"] .hero-copy{
  max-width:650px;
  min-width:0;
}

html[lang="en"] .hero h1{
  max-width:650px;
  margin:18px 0 20px;
  font-size:clamp(2.25rem,3.45vw,3.45rem);
  line-height:1.08;
  letter-spacing:-.035em;
}

html[lang="en"] .hero h1 .hero-line{
  display:block;
  max-width:100%;
  white-space:normal;
  text-wrap:balance;
  overflow-wrap:normal;
  word-break:normal;
}

html[lang="en"] .hero h1 .hero-line-accent{
  margin:5px 0;
}

html[lang="en"] .hero-lead{
  max-width:620px;
  font-size:.98rem;
  line-height:1.72;
}

html[lang="en"] .visual-shell{
  min-height:480px;
}

@media (max-width:1180px){
  html[lang="en"] .hero-layout{
    grid-template-columns:minmax(0,1fr) minmax(330px,.82fr);
    gap:28px;
  }

  html[lang="en"] .hero h1{
    font-size:clamp(2.15rem,3.35vw,3.05rem);
  }
}

@media (max-width:980px){
  html[lang="en"] .hero-layout{
    grid-template-columns:1fr;
    gap:36px;
  }

  html[lang="en"] .hero-copy{
    max-width:760px;
  }

  html[lang="en"] .hero h1{
    max-width:720px;
    font-size:clamp(2.25rem,6vw,3.55rem);
  }

  html[lang="en"] .visual-shell{
    min-height:450px;
  }
}

@media (max-width:620px){
  html[lang="en"] .hero h1{
    font-size:clamp(2rem,9.5vw,2.75rem);
    line-height:1.12;
  }

  html[lang="en"] .hero h1 .hero-line{
    text-wrap:pretty;
  }

  html[lang="en"] .hero-lead{
    font-size:.94rem;
  }

  html[lang="en"] .visual-shell{
    min-height:370px;
  }
}


/* Premium hero layout v5 */
.site-header{
  background:rgba(4,10,18,.86);
}
.nav-wrap{
  min-height:76px;
}
.brand-mark{
  width:46px;
  height:46px;
  flex-basis:46px;
  border-radius:15px;
}
.brand-copy{
  max-width:240px;
}
.brand-copy strong{
  font-size:.95rem;
}
.brand-copy small{
  margin-top:1px;
  font-size:.72rem;
}
.site-nav{
  gap:24px;
}
.site-nav > a{
  font-size:.88rem;
}
.language-switcher{
  display:inline-flex;
  align-items:center;
  gap:4px;
  margin-left:4px;
  padding:0;
  border:0;
  background:transparent;
}
.language-switcher .language-divider{
  display:none;
}
.language-switcher a{
  min-width:34px;
  height:30px;
  padding:0 9px;
  border-radius:9px;
  color:#7f98ad;
  background:transparent;
}
.language-switcher a.current{
  color:var(--mint);
  background:rgba(50,230,178,.09);
  box-shadow:inset 0 0 0 1px rgba(50,230,178,.20);
}
.hero{
  min-height:auto;
  padding:58px 0 66px;
}
.hero .container{
  width:min(1320px,92%);
}
html[lang="en"] .hero-layout{
  grid-template-columns:minmax(0,.88fr) minmax(480px,1.12fr);
  gap:50px;
  align-items:center;
}
html[lang="en"] .hero-copy{
  max-width:610px;
  min-width:0;
}
html[lang="en"] .hero-kicker{
  margin-bottom:18px;
  font-size:.69rem;
  letter-spacing:.145em;
}
html[lang="en"] .hero h1{
  max-width:610px;
  margin:0 0 22px;
  font-size:clamp(2.65rem,3.55vw,3.55rem);
  line-height:1.06;
  letter-spacing:-.04em;
}
html[lang="en"] .hero h1 .hero-line{
  display:block;
  max-width:100%;
  white-space:nowrap;
}
html[lang="en"] .hero h1 .hero-line-accent{
  margin:7px 0;
}
html[lang="en"] .hero-lead{
  max-width:580px;
  margin:0;
  font-size:.96rem;
  line-height:1.72;
}
html[lang="en"] .hero-actions{
  margin-top:26px;
}
html[lang="en"] .hero .btn{
  min-height:45px;
  padding:0 20px;
  font-size:.9rem;
}
html[lang="en"] .hero-metrics{
  margin-top:28px;
  gap:12px;
}
html[lang="en"] .hero-metrics div{
  min-height:98px;
  padding:14px 15px;
}
html[lang="en"] .hero-metrics strong{
  font-size:.8rem;
}
html[lang="en"] .hero-metrics span{
  font-size:.72rem;
  line-height:1.55;
}
html[lang="en"] .hero-visual{
  align-self:center;
}
html[lang="en"] .visual-shell{
  min-height:0;
  height:auto;
  aspect-ratio:1.18 / 1;
  max-height:600px;
  border-radius:30px;
}
html[lang="en"] .visual-shell > img,
html[lang="en"] .visual-shell picture,
html[lang="en"] .visual-shell picture img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
html[lang="en"] .floating-tag{
  padding:8px 11px;
  font-size:.68rem;
}
html[lang="en"] .tag-three{
  right:24px;
  bottom:24px;
}
.hero::after{
  content:"";
  position:absolute;
  left:8%;
  right:8%;
  bottom:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(89,217,255,.16),transparent);
}
@media (max-width:1180px){
  .site-nav{
    gap:15px;
  }
  .site-nav > a{
    font-size:.82rem;
  }
  html[lang="en"] .hero-layout{
    grid-template-columns:minmax(0,.94fr) minmax(400px,1.06fr);
    gap:34px;
  }
  html[lang="en"] .hero h1{
    font-size:clamp(2.35rem,3.45vw,3.1rem);
  }
  html[lang="en"] .visual-shell{
    max-height:540px;
  }
}
@media (max-width:980px){
  html[lang="en"] .hero-layout{
    grid-template-columns:1fr;
    gap:38px;
  }
  html[lang="en"] .hero-copy{
    max-width:760px;
  }
  html[lang="en"] .hero h1{
    max-width:720px;
    font-size:clamp(2.5rem,6vw,3.6rem);
  }
  html[lang="en"] .hero h1 .hero-line{
    white-space:normal;
    text-wrap:balance;
  }
  html[lang="en"] .visual-shell{
    width:min(720px,100%);
    margin:0 auto;
    aspect-ratio:4/3;
  }
}
@media (max-width:620px){
  .nav-wrap{
    min-height:68px;
  }
  .brand-mark{
    width:42px;
    height:42px;
    flex-basis:42px;
  }
  .hero{
    padding:43px 0 52px;
  }
  html[lang="en"] .hero h1{
    font-size:clamp(2.05rem,10vw,2.8rem);
    line-height:1.1;
  }
  html[lang="en"] .hero-metrics{
    grid-template-columns:1fr;
  }
  html[lang="en"] .hero-metrics div{
    min-height:auto;
  }
  html[lang="en"] .visual-shell{
    aspect-ratio:1/1;
    border-radius:24px;
  }
}
