/* Source Sans 3 is bundled locally; Chinese uses the device's native sans serif. */
:root{--navy:#102e59;--blue:#165dff;--orange:#ff8b28;--ink:#192c43;--muted:#536277;--line:#dce3ed;--pale:#f4f7fb;--white:#fff;--width:1200px;--header:92px;font-family:"PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--white);font-synthesis:none}
html[lang="en"]{font-family:"Source Sans 3","Segoe UI",sans-serif}
html[lang="en"] body{font-size:1.0625rem}
html[lang="en"] h1,html[lang="en"] h2,html[lang="en"] h3{letter-spacing:-.025em}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;font-size:1rem;line-height:1.7}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button{border:0}a,button{touch-action:manipulation}button:disabled{opacity:.55;cursor:not-allowed}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--orange);outline-offset:5px}p{margin:0 0 1.2rem}h1,h2,h3{margin:0;font-weight:600;line-height:1.15;letter-spacing:-.035em}h1{font-size:clamp(2.65rem,5.5vw,5.1rem)}h2{font-size:clamp(2.05rem,3.5vw,3.35rem);text-wrap:balance}h3{font-size:1.5rem;letter-spacing:-.025em}::selection{background:#ffdaae;color:var(--navy)}.container{width:min(var(--width),calc(100% - 96px));margin-inline:auto}.section{padding-block:104px}.eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.15em;color:var(--blue);margin-bottom:25px;line-height:1.5}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:20px;z-index:50;background:var(--navy);color:white;padding:12px 20px}.skip-link:focus{top:12px}
.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.98);border-bottom:1px solid var(--line)}.header-inner{min-height:var(--header);max-width:1440px;margin:auto;padding:18px 40px;display:flex;align-items:center;gap:34px}.brand{display:flex;flex-direction:column;line-height:1;flex-shrink:0}.brand-name{font-family:"Source Sans 3","Segoe UI",sans-serif;font-style:normal;font-size:1.8rem;font-weight:700;letter-spacing:-.055em;color:var(--navy);line-height:1.1}.brand-period{color:#d9670a}.brand-sub{font-family:"PingFang SC","Microsoft YaHei",sans-serif;font-weight:400;font-style:normal;font-size:.76rem;letter-spacing:.4em;color:var(--muted);margin-top:7px}.main-nav{display:flex;justify-content:flex-end;align-items:center;gap:23px;flex:1}.main-nav a{font-size:.875rem;line-height:1.35;padding:10px 0;position:relative}.main-nav a:hover{color:var(--blue)}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:1px;height:2px;background:var(--blue);transition:right .2s}.main-nav a:hover:after{right:0}.header-controls{display:flex;align-items:center;gap:20px}.languages{display:flex;align-items:center;gap:9px;font-size:.875rem;white-space:nowrap}.languages a{padding:9px 0;color:#59697a}.languages a[aria-current]{color:var(--navy);font-weight:700}.languages>span{color:#abb5c4}.menu-toggle{display:none;background:none;color:var(--navy);padding:10px 0;align-items:center;gap:10px}.menu-label{font-size:.875rem}.menu-icon{width:20px;height:12px;border-block:2px solid currentColor}
.hero{position:relative;background:var(--navy);color:white;isolation:isolate;overflow:hidden}.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(90deg,rgba(6,26,55,.82) 0%,rgba(6,26,55,.53) 44%,rgba(6,26,55,.06) 100%);z-index:-1}.hero-inner{padding-top:100px;min-height:680px;display:flex;flex-direction:column;align-items:flex-start}.hero-eyebrow{color:#a1dcff;margin-bottom:28px}.hero h1{max-width:790px}.hero-copy{max-width:540px;font-size:1.125rem;color:#e2ebf8;margin-top:28px;line-height:1.65}.hero-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:18px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:16px 24px;min-height:56px;font-size:.9375rem;font-weight:700;line-height:1.4;transition:background .18s,transform .18s}.button:hover{transform:translateY(-2px)}.button span{font-size:1.25rem}.button-orange{background:var(--orange);color:#152d4c}.button-orange:hover{background:#ffa252}.button-outline{border:1px solid #b7c8dc;background:rgba(10,37,74,.2);color:white}.button-outline:hover{background:rgba(255,255,255,.12)}.hero-bottom{margin-top:auto;width:100%;display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid #8cacc44a;padding-block:25px;font-size:.8125rem;color:#d9e8fb;letter-spacing:.015em}.hero-bottom a{display:flex;gap:32px;align-items:center}.hero-bottom a span{font-size:1.25rem}
.about{display:grid;grid-template-columns:1fr 1.1fr;column-gap:90px}.about-copy{color:var(--muted)}.lead{font-size:1.4rem;line-height:1.55;color:var(--ink);letter-spacing:-.015em}.company-facts{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);padding:0;margin:52px 0 0;border-top:1px solid var(--line)}.company-facts>div{padding-top:30px;display:flex;flex-direction:column-reverse;gap:8px}.company-facts dt{font-size:.875rem;color:var(--muted)}.company-facts dd{margin:0;font-size:clamp(1.4rem,2.6vw,2.1rem);font-weight:600;line-height:1.2;color:var(--navy);letter-spacing:-.035em}.section-intro{display:grid;grid-template-columns:1.3fr 1fr;gap:100px;align-items:end;margin-bottom:48px}.section-intro>p{color:var(--muted);margin:0}.science{background:var(--pale)}.platform-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.platform{border-top:3px solid var(--blue);padding-top:25px;display:flex;flex-direction:column;align-items:flex-start}.platform:nth-child(2){border-color:var(--orange)}.platform-top{width:100%;display:flex;justify-content:space-between;align-items:center;margin-bottom:50px}.platform-number{color:#748397;font-size:.875rem}.platform-short{font-size:2rem;color:var(--blue);font-weight:600;letter-spacing:-.04em}.platform h3{min-height:58px;margin-bottom:23px;max-width:270px}.platform p{color:var(--muted)}.platform .platform-detail{border-top:1px solid #d8e0ec;width:100%;padding-top:24px;margin-top:auto;margin-bottom:0;font-size:.875rem;color:var(--navy);font-weight:600}.table-scroll{overflow-x:auto;border:1px solid var(--line)}.pipeline-table{border-collapse:collapse;width:100%;min-width:870px;text-align:left}.pipeline-table thead{background:var(--navy);color:#fff}.pipeline-table th,.pipeline-table td{padding:22px 20px;border-bottom:1px solid var(--line);vertical-align:middle}.pipeline-table thead th{font-weight:600;font-size:.875rem;white-space:nowrap}.pipeline-table tbody tr:last-child>*{border-bottom:0}.pipeline-table tbody tr:nth-child(even){background:var(--pale)}.pipeline-table tbody th{font-size:1rem;width:22%;line-height:1.4;color:var(--navy)}.pipeline-table td{font-size:.875rem;line-height:1.6}.pipeline-table td:nth-child(2){width:31%;color:var(--muted)}.program-type{display:block;font-size:.8125rem;color:var(--muted);font-weight:400;margin-top:5px}.stage{display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:.8125rem}.stage-0{color:#637185}.stage-1{color:#a44e00}.stage-2{color:#1652cd}.stage-mark{font-size:1rem}.small-note{font-size:.8125rem;line-height:1.6;color:var(--muted);margin:20px 0 0;max-width:920px}.table-hint{display:none;font-size:.875rem;color:var(--muted)}
.reagents{background:var(--navy);color:white}.reagent-layout{display:grid;grid-template-columns:1.1fr 1fr;column-gap:100px}.reagents .eyebrow{color:#8cc8ff}.reagent-intro h2{margin-bottom:28px}.reagent-intro>p:not(.eyebrow){color:#d3e0f1}.reagent-intro .research-only{font-size:.8125rem;color:#b8c9de;padding-left:16px;border-left:2px solid var(--orange);margin-top:30px;line-height:1.65}.product-label{font-size:.8125rem;color:#c7d7eb;text-transform:uppercase;letter-spacing:.1em;margin:0 0 12px}.target{border-top:1px solid #496383;padding:26px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.target-name{font-size:2.6rem;letter-spacing:-.05em;font-weight:600}.target h3{font-size:1rem;letter-spacing:0;font-weight:400;margin-top:8px}.target p{font-size:.875rem;color:#b8c9de;margin:5px 0 0}.target-action{display:flex;align-items:center;justify-content:center;width:50px;height:50px;border:1px solid #8aa4c4;border-radius:50%;font-size:1.5rem;flex-shrink:0}.target-action:hover{background:var(--orange);color:var(--navy);border-color:var(--orange)}.text-link{display:inline-flex;gap:25px;align-items:center;font-size:.9375rem;font-weight:600;border-bottom:1px solid currentColor;padding-bottom:5px}.text-link span{font-size:1.25rem}.request-info{margin:0}.custom-request{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:32px;border-top:1px solid #496383;margin-top:55px;padding-top:35px}.custom-request h3{font-size:1.5rem}.custom-request p{color:#c7d7eb;margin:10px 0 0;max-width:670px}.custom-request .button{flex-shrink:0}.services h2{max-width:750px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:50px}.service-index{color:#b45910;font-size:.875rem}.services-grid h3{margin-top:20px;margin-bottom:25px}.services-grid ul{padding-left:20px;margin:0;color:var(--muted)}.services-grid li{padding-left:3px;margin-bottom:12px}.services-grid li::marker{color:var(--blue)}.team{background:var(--pale)}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.person{border-top:2px solid var(--blue);padding-top:28px;min-width:0}.person img{width:88px;height:88px;border-radius:50%;object-fit:cover;object-position:center 25%;margin-bottom:28px;background:#e0e7f0}.person h3{font-size:1.3rem;letter-spacing:-.025em}.person-role{font-size:.875rem;color:#a84f04;line-height:1.5;margin:10px 0 22px;min-height:42px}.person summary{font-size:.875rem;color:var(--navy);padding:5px 0;text-decoration:underline;text-underline-offset:5px}.person details>p{font-size:.9375rem;color:var(--muted);margin-top:20px}.contact{background:#fff}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact-info h2{max-width:480px}.contact-info>p:not(.eyebrow){color:var(--muted);margin-top:28px;max-width:410px}.contact-details{margin-top:36px}.contact-details>div{margin-bottom:25px}.contact-details dt{font-size:.78rem;font-weight:700;color:var(--muted);letter-spacing:.06em;margin-bottom:4px}.contact-details dd{margin:0;font-size:1rem;line-height:1.7;overflow-wrap:anywhere}.contact-details a:hover{color:var(--blue);text-decoration:underline}.contact-form-wrap{background:var(--pale);padding:36px}.contact-form-wrap h3{font-size:1.6rem;margin-bottom:16px}.contact-form-wrap>p{color:var(--muted);font-size:.875rem}.contact form label{display:block;font-size:.875rem;line-height:1.5;margin-bottom:20px;font-weight:600}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}input,select,textarea{display:block;width:100%;min-width:0;background:white;color:var(--ink);border:1px solid #b9c6d7;border-radius:0;margin-top:8px;padding:12px;font-weight:400;font-size:1rem;line-height:1.5}textarea{resize:vertical;min-height:120px}textarea::placeholder{color:#6b778a}.required-note{font-size:.8125rem;color:var(--muted);margin:0 0 15px}.draft-button{width:100%}.form-feedback{font-size:.875rem;color:var(--navy);margin:16px 0 0;overflow-wrap:anywhere}.form-feedback:empty{display:none}.site-footer{background:var(--navy);color:#d5e0ee;padding-top:42px}.site-footer .brand-name{color:white}.site-footer .brand-period{color:var(--orange)}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:40px}.footer-top p{font-size:.875rem;margin:14px 0 0;color:#b9cce2}.back-top{font-size:.875rem;display:flex;gap:20px;align-items:center}.footer-bottom{border-top:1px solid #3b577a;display:flex;justify-content:space-between;gap:24px;font-size:.76rem;padding-block:24px;color:#b9cce2}html[lang="zh-CN"] h1{font-size:clamp(2.5rem,5.3vw,4.7rem);line-height:1.3;max-width:860px}html[lang="zh-CN"] h2{line-height:1.35}html[lang="zh-CN"] h3{line-height:1.45}html[lang="zh-CN"] .hero-copy{font-size:1.15rem}html[lang="zh-CN"] .eyebrow{letter-spacing:.09em}
@media(min-width:1600px){.hero-image{object-position:center 52%}.hero-inner{min-height:730px;padding-top:120px}}
@media(max-width:1100px){:root{--header:82px}.header-inner{flex-wrap:wrap;gap:12px;padding:16px 28px;justify-content:space-between}.header-controls{margin-left:auto}.main-nav{order:3;flex-basis:100%;justify-content:flex-start;flex-wrap:wrap;gap:14px 25px}.js .main-nav{display:none}.js .main-nav.is-open{display:flex;padding-block:20px 8px}.js .menu-toggle{display:flex}.brand-name{font-size:1.65rem}.hero h1{max-width:680px}.container{width:calc(100% - 64px)}.about,.reagent-layout,.contact-layout{column-gap:48px}.section-intro{gap:48px}.team-grid{gap:22px}.person h3{font-size:1.125rem}.platform-grid{gap:25px}.contact-form-wrap{padding:28px}.form-row{grid-template-columns:1fr;gap:0}.services-grid{gap:28px}.table-hint{display:block}}
@media(max-width:760px){html{scroll-padding-top:95px}.container{width:calc(100% - 40px)}.header-inner{padding:14px 20px}.header-controls{gap:18px}.brand-name{font-size:1.55rem}.brand-sub{font-size:.65rem}.menu-label{display:none}.main-nav{display:grid;grid-template-columns:1fr 1fr}.js .main-nav.is-open{display:grid}.main-nav a{padding:12px 0}.section{padding-block:64px}.eyebrow{margin-bottom:20px}.hero-inner{padding-top:62px;min-height:620px}.hero h1{max-width:560px;font-size:clamp(2.6rem,8.5vw,3.8rem)}.hero-image{object-position:65% center}.hero-shade{background:linear-gradient(90deg,rgba(6,26,55,.88),rgba(6,26,55,.48))}.hero-copy{font-size:1rem;max-width:410px}.hero-actions{gap:12px;margin-top:12px;margin-bottom:42px}.button{padding:15px 20px;gap:18px;font-size:.875rem}.hero-bottom{padding-block:20px;font-size:.76rem}.hero-bottom a{gap:12px}.about{grid-template-columns:1fr;gap:30px}.lead{font-size:1.2rem}.company-facts{margin-top:5px;gap:20px;grid-template-columns:1fr}.company-facts>div{padding-top:20px;gap:5px}.company-facts dd{font-size:1.6rem}.section-intro{grid-template-columns:1fr;gap:23px;margin-bottom:34px}.section-intro>p{max-width:500px}.platform-grid{grid-template-columns:1fr;gap:38px}.platform-top{margin-bottom:22px}.platform h3{min-height:auto;max-width:none}.platform .platform-detail{padding-top:18px}.reagent-layout{grid-template-columns:1fr;gap:40px}.custom-request{margin-top:0;padding-top:32px;flex-direction:column;align-items:flex-start;gap:25px}.services-grid{grid-template-columns:1fr;gap:34px;margin-top:34px}.services-grid article{border-top:1px solid var(--line);padding-top:22px}.services-grid h3{margin-top:10px;margin-bottom:18px}.team-grid{grid-template-columns:1fr 1fr;gap:38px 24px}.person img{margin-bottom:20px}.person-role{min-height:42px}.contact-layout{grid-template-columns:1fr;gap:32px}.contact-form-wrap{padding:26px}.form-row{grid-template-columns:1fr 1fr;gap:16px}.contact-info>p:not(.eyebrow){max-width:560px}.footer-top{align-items:flex-start}.footer-top p{max-width:230px}.footer-bottom{flex-direction:column;gap:8px}.small-note{font-size:.8125rem}html[lang="zh-CN"] .hero-inner{min-height:570px}html[lang="zh-CN"] .hero h1{font-size:clamp(2.2rem,8.5vw,3.5rem)}}
@media(max-width:390px){.header-controls{gap:12px}.languages{font-size:.8125rem;gap:6px}.brand-name{font-size:1.4rem}.hero-actions{flex-direction:column;align-items:flex-start}.hero-inner{min-height:700px}.hero-bottom{align-items:flex-start;gap:10px}.hero-bottom a{max-width:150px}.team-grid{grid-template-columns:1fr}.person-role{min-height:0}.form-row{grid-template-columns:1fr;gap:0}.contact-form-wrap{padding:22px}.footer-top{flex-direction:column}.footer-top p{max-width:none}.company-facts dd{font-size:1.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.site-header,.hero-actions,.hero-bottom,.contact-form-wrap,.back-top,.languages,.target-action{display:none!important}.hero{color:var(--navy);background:white}.hero-image,.hero-shade{display:none}.hero-inner{min-height:0;padding:40px 0}.hero-copy,.hero-eyebrow{color:var(--ink)}.section{padding-block:35px}.container{width:100%}.section,.site-footer,.reagents{color:var(--ink);background:white}.reagents p,.reagents .eyebrow,.reagents .research-only{color:var(--muted)}.table-scroll{overflow:visible}.pipeline-table{min-width:0}.team-grid{grid-template-columns:1fr 1fr}.contact-layout{display:block}.site-footer{display:none}h2,h3{break-after:avoid}tr,.person{break-inside:avoid}}

/* Long platform labels keep the same layout as abbreviated labels. */
.platform-short-long{font-family:"Source Sans 3","Segoe UI",sans-serif;font-size:1.3rem;letter-spacing:-.025em}
.brand-cell {
    color: #168bb8;
  }
  /* Match all three platform labels */
.platform-short,
.platform-short-long {
  font-family: "Source Sans 3", "Segoe UI", sans-serif;
  font-size: 2rem;
  font-weight: 600;
  letter-spacing: -.04em;
}

/* Left bar: orange */
.platform:nth-child(1) {
  border-top-color: var(--orange);
}

/* Middle and right bars: blue */
.platform:nth-child(2),
.platform:nth-child(3) {
  border-top-color: var(--blue);
}
.platform-top {
    justify-content: flex-start;
    gap: 20px;
  }
  .platform h3 {
    max-width: none;
    width: 100%;
  }

/* Small platform numbers need AA contrast on the pale section background. */
.platform-number{color:#59697d}
