@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#081e2e;--deep:#061723;--teal:#0c9c94;--mint:#a6e6d8;--cream:#f4f5f1;--ink:#173342;--muted:#65747c;--line:#dce5e3;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button,input{font:inherit}.shell{max-width:1230px;margin:auto;padding:0 32px}.skip{position:absolute;left:-9999px}.skip:focus{left:20px;top:10px;z-index:999;background:white}.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid #e6eceb}.nav{height:83px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:13px;color:var(--navy);font:800 18px/1.1 Manrope,sans-serif;letter-spacing:.08em;white-space:nowrap}.brand em{color:var(--teal);font-style:normal}.brand small{display:block;color:#85949a;font:600 9px/1.9 Manrope;letter-spacing:.22em}.brand-mark{width:33px;height:38px;position:relative;display:block}.brand-mark span{position:absolute;border:2px solid var(--teal);border-radius:50%;width:10px;height:10px}.brand-mark span:nth-child(1){left:4px;top:2px}.brand-mark span:nth-child(2){left:19px;top:14px}.brand-mark span:nth-child(3){left:2px;top:27px}.brand-mark:before,.brand-mark:after{content:'';position:absolute;height:2px;background:var(--teal);transform-origin:left}.brand-mark:before{width:25px;left:10px;top:11px;transform:rotate(38deg)}.brand-mark:after{width:24px;left:9px;top:29px;transform:rotate(-40deg)}nav{display:flex;gap:27px;align-items:center}nav a{font-size:12px;font-weight:700;letter-spacing:.015em;color:#405560;transition:color .2s}nav a:hover,nav a.active{color:var(--teal)}.menu{display:none;background:none;border:0;font-size:24px}.hero{background:var(--navy);color:white;overflow:hidden}.hero-grid{min-height:660px;display:grid;grid-template-columns:1.07fr .93fr;align-items:stretch;gap:30px}.hero-copy{padding:105px 0 65px;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{display:block;font:700 10px/1.5 Manrope;letter-spacing:.22em;color:var(--teal);text-transform:uppercase}.hero .eyebrow{color:var(--mint)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.2;letter-spacing:-.04em}.hero h1{font-size:clamp(42px,5.1vw,72px);font-weight:700;max-width:730px;margin:29px 0 24px}.hero h1 i{font-style:normal;color:var(--mint)}.hero-copy>p{color:#c2d1d5;font-size:16px;line-height:1.9;max-width:570px}.actions{display:flex;gap:13px;flex-wrap:wrap;margin:24px 0 75px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;font-weight:700;font-size:12px;letter-spacing:.015em;border-radius:3px;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn.primary{background:#7dd9c8;color:#082b32}.btn.secondary{border:1px solid #607680;color:#fff}.btn.light{background:var(--mint);color:var(--navy)}.hero-bottom{display:flex;flex-wrap:wrap;gap:18px;color:#7e9ca5;font:700 9px Manrope;letter-spacing:.16em;margin-top:auto}.hero-art{position:relative;display:flex;align-items:center;min-height:500px}.visual{position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 60% 40%,#d1eee7,#a9d7d1 55%,#86b8b7);min-height:205px}.hero-art .visual{width:100%;height:490px;background:radial-gradient(circle at 50% 50%,#1d5d65,#0c3749 49%,#082333 72%);border-radius:50%;box-shadow:0 0 0 28px #11344755,0 0 0 70px #11344720}.orb{position:absolute;border-radius:50%;border:1px solid #c3f9e9;background:radial-gradient(circle at 30% 25%,#b9f7e8,#4baca7 65%,#23717d);box-shadow:0 8px 25px #062f3840}.o1{width:27%;aspect-ratio:1;left:35%;top:30%}.o2{width:13%;aspect-ratio:1;left:18%;top:55%}.o3{width:11%;aspect-ratio:1;right:15%;top:19%}.orbit{position:absolute;inset:16%;border:1px solid #b0efe75e;border-radius:50%;transform:rotate(35deg) scaleY(.53)}.orbit-b{transform:rotate(-55deg) scaleY(.72)}.strand{position:absolute;width:50%;height:35%;left:25%;top:35%;border:3px dashed #b9f6e1;border-radius:50%;transform:rotate(-34deg);opacity:.65}.speck{position:absolute;background:#c7fff0;border-radius:50%;width:8px;height:8px;box-shadow:0 0 12px #b9f8e7}.s1{left:18%;top:25%}.s2{right:18%;bottom:20%}.s3{left:52%;top:12%}.art-caption{position:absolute;bottom:70px;left:12%;right:0;color:#9bc1c3;font:700 9px Manrope;letter-spacing:.18em}.art-caption span{float:right}.ticker{display:flex;align-items:stretch;border-bottom:1px solid var(--line);height:56px;overflow:hidden}.ticker-tag{display:flex;align-items:center;flex-shrink:0;padding:0 28px 0 max(32px,calc((100vw - 1166px)/2));background:#e5f4ef;color:#116a65;font:800 10px Manrope;letter-spacing:.12em;white-space:nowrap}.pulse{width:6px;height:6px;border-radius:50%;background:#0b9d92;margin-left:10px}.ticker-window{flex:1;overflow:hidden;display:flex;align-items:center}.ticker-track{display:flex;align-items:center;gap:65px;width:max-content;animation:marquee 85s linear infinite}.ticker-track span{white-space:nowrap;font-size:12px;color:#39545a}.ticker-track b{color:var(--teal)}.ticker:hover .ticker-track,.ticker:focus-within .ticker-track{animation-play-state:paused}@keyframes marquee{to{transform:translateX(-50%)}}.ticker-link{display:flex;align-items:center;white-space:nowrap;padding:0 25px;background:white;color:var(--teal);font-size:11px;font-weight:700}.section{padding-top:100px;padding-bottom:105px}.intro{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end;margin-bottom:46px}.intro h2,.split-head h2,.closing h2{font-size:clamp(30px,3.5vw,48px);margin:15px 0 0;max-width:640px}.intro h2 em{font-style:normal;color:var(--teal)}.intro p{color:var(--muted);font-size:15px;line-height:1.9;max-width:460px}.research-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.research-card{border:1px solid var(--line);background:white;transition:box-shadow .2s,transform .2s}.research-card:hover{box-shadow:0 16px 38px #082a3412;transform:translateY(-3px)}.research-content{padding:28px 30px 32px}.meta{font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:#268c84;font-weight:700}.research-card h3{font-size:21px;line-height:1.35;margin:14px 0}.research-card p,.software-card p,.news-card p,.contact-card p{color:var(--muted);font-size:13px;line-height:1.9;margin:0}.visual-microbiome{background:radial-gradient(circle at 30% 60%,#d5e7df,#b7d7cc)}.visual-virus{background:radial-gradient(circle at 70% 25%,#d5e8f2,#a4c9d7)}.visual-cancer{background:radial-gradient(circle at 30% 25%,#f2e6e4,#d7c5d0)}.section-action{text-align:right;margin-top:30px}.text-link,.small-link{color:#087c77;font-weight:800;font-size:12px}.section-cream{background:var(--cream)}.split-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:38px}.feature-pubs{border-top:1px solid #cdd8d4}.feature-pubs article{display:grid;grid-template-columns:75px 1fr 35px;gap:24px;align-items:start;border-bottom:1px solid #cdd8d4;padding:27px 0}.feature-number{font:700 13px Manrope;color:#9caeaa}.feature-pubs h3{font-size:19px;line-height:1.45;margin:9px 0 0;max-width:850px}.feature-pubs h3 a:hover,.pub h3 a:hover{text-decoration:underline;text-decoration-color:var(--teal)}.feature-arrow{font-size:22px;color:var(--teal)}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.news-card{display:flex;gap:17px;border:1px solid var(--line);padding:26px;background:#fff}.news-icon{width:42px;height:42px;background:#edf6f3;display:grid;place-items:center;flex-shrink:0;border-radius:50%;font-size:20px}.news-card h3{font-size:17px;line-height:1.45;margin:12px 0}.news-card .meta span{color:#c4cfcd;padding:0 4px}.news-card .small-link{display:inline-block;margin-top:13px}.closing{background:#0a3340;color:white;padding:85px 0}.closing-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:100px;align-items:center}.closing p{color:#b9d3d2;line-height:1.9}.closing .btn{margin-top:10px}.footer{background:#061723;color:#d8e7e8;padding:45px 0}.footer-inner{display:grid;grid-template-columns:1fr 1.3fr .8fr;gap:45px}.footer strong{font:800 15px Manrope;letter-spacing:.14em}.footer p{font-size:11px;color:#849da5;line-height:1.9;margin:10px 0 0}.footer span,.footer a{font-size:12px;font-weight:700}.inner{min-height:70vh}.section-head{margin-bottom:55px;max-width:820px}.section-head h1{font-size:clamp(44px,5vw,67px);margin:17px 0}.section-head p{font-size:16px;line-height:1.9;color:var(--muted)}.filter-row{display:flex;align-items:center;gap:20px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:20px}.filter-row label{font-weight:700;font-size:12px;white-space:nowrap}.filter-row input{flex:1;min-width:100px;border:1px solid var(--line);padding:12px 14px;outline:none}.filter-row input:focus{border-color:var(--teal)}#pub-count{color:var(--muted);font-size:11px;white-space:nowrap}.pub-year{display:grid;grid-template-columns:170px 1fr;gap:25px;border-bottom:1px solid var(--line);padding:38px 0}.pub-year>h2{font-size:31px;margin:0}.pub-year>h2 span{display:block;color:#a0abae;font:600 11px DM Sans;letter-spacing:0;margin-top:6px}.pub{border-bottom:1px solid #e8edeb;padding:0 0 22px;margin-bottom:23px}.pub:last-child{border:0;margin-bottom:0}.journal{font-size:11px;font-weight:700;color:#148c84;letter-spacing:.04em}.pub h3{font-size:18px;line-height:1.45;margin:8px 0}.pub p{font-size:12px;color:var(--muted);margin:0}.archive-note{margin-top:30px;font-size:12px;color:var(--muted)}.archive-note a{text-decoration:underline}.software-grid,.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.software-card,.contact-card{padding:34px;border:1px solid var(--line);background:#fafcfb}.software-top{display:flex;align-items:center;justify-content:space-between}.software-glyph{width:58px;height:58px;background:#d9f0e9;color:#16887e;display:grid;place-items:center;font-size:30px}.software-card h2,.contact-card h2{font-size:27px;margin:28px 0 12px}.software-card p{min-height:85px}.software-card .text-link,.contact-card .text-link{display:inline-block;margin-top:25px}.person-lead{display:flex;align-items:center;gap:38px;background:#eff6f3;padding:42px}.avatar{height:145px;width:145px;flex-shrink:0;border-radius:50%;display:grid;place-items:center;background:#0c4754;color:#b9eee2;font:800 38px Manrope}.person-lead h2{font-size:29px;margin:10px 0}.person-lead p,.team-note p{color:var(--muted);font-size:14px}.team-note{padding:50px 0;max-width:700px}.team-note h2{font-size:26px}.news-controls{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:30px}.chip{background:#fff;border:1px solid #d6e2df;border-radius:30px;padding:9px 16px;color:#53686b;font-size:12px;cursor:pointer}.chip.active,.chip:hover{background:#0b555b;border-color:#0b555b;color:#fff}.news-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.contact-card p{font-size:15px}.contact-card{min-height:320px}@media(max-width:1050px){nav{gap:14px}nav a{font-size:11px}.hero-grid{min-height:590px}.hero-art .visual{height:380px}.hero h1{font-size:52px}}@media(max-width:760px){.shell{padding:0 20px}.nav{height:70px}.menu{display:block}nav{display:none;position:absolute;top:70px;left:0;right:0;background:white;padding:18px 25px;flex-direction:column;align-items:stretch;box-shadow:0 12px 22px #0002}nav.open{display:flex}nav a{padding:7px 0;font-size:14px}.hero-grid{grid-template-columns:1fr;gap:0}.hero-copy{padding:75px 0 25px}.hero h1{font-size:clamp(41px,10vw,64px)}.hero-art{min-height:260px;justify-content:center}.hero-art .visual{height:280px;width:280px}.art-caption{bottom:22px}.actions{margin-bottom:36px}.hero-bottom{gap:10px}.ticker-tag{padding:0 13px;font-size:9px}.ticker-link{display:none}.section{padding-top:65px;padding-bottom:70px}.intro,.closing-grid{grid-template-columns:1fr;gap:16px}.research-grid,.software-grid,.contact-grid,.news-list{grid-template-columns:1fr}.news-grid{grid-template-columns:1fr}.split-head{align-items:start;flex-direction:column}.footer-inner{grid-template-columns:1fr;gap:25px}.pub-year{grid-template-columns:1fr;gap:15px}.feature-pubs article{grid-template-columns:35px 1fr 20px;gap:12px}.filter-row{flex-wrap:wrap}.filter-row input{flex-basis:100%;order:3}.person-lead{flex-direction:column;align-items:start;padding:30px}.section-head h1{font-size:45px}.ticker-track{animation-duration:95s}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important}}

/* Lab logo */
.brand-logo{width:58px;height:58px;object-fit:contain;flex-shrink:0}
.brand small{font-size:9px;letter-spacing:.06em}
@media(max-width:760px){.brand-logo{width:46px;height:46px}.brand{font-size:14px}.brand small{font-size:7px;letter-spacing:0}}
body {
  font-family: 'Source Code Pro', monospace;
}
.hero-copy h1 {
  font-family: 'Source Code Pro', monospace !important;
  font-size: clamp(2rem, 3.2vw, 3.4rem) !important;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.03em;
}

.hero-copy h1 i {
  font-family: inherit;
  font-weight: inherit;
}
.closing .eyebrow {
  font-family: 'Source Code Pro', monospace !important;
  font-size: 0.75rem !important;
  font-weight: 600;
  letter-spacing: 0.08em;
}

.closing h2 {
  font-family: 'Source Code Pro', monospace !important;
  font-size: 1rem !important;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.02em;
}

.research-card > img {
  width: 100% !important;
  height: 260px !important;
  object-fit: contain !important;
  object-position: center !important;
  background: white !important;
}
.intro h2,
.intro h2 em {
  font-family: 'Source Code Pro', monospace !important;
}

.intro h2 {
  font-weight: 600;
}

.intro h2 em {
  font-weight: inherit;
}

.footer strong,
.footer p {
  font-family: 'Source Code Pro', monospace !important;
}

.footer strong {
  font-weight: 600;
  font-size: 1rem;
}

.footer p {
  font-weight: 400;
  font-size: 0.85rem;
  line-height: 1.6;
}
