PageSourceSearch

https://www.bioprocess.ai/process-development

html bioprocess.ai collected 2026-10-05 11:51:23 UTC 165,647 bytes, 1 lines download raw bytes

1<!DOCTYPE html><html lang="en" class="dark"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/_next/static/media/Bioprocess logo.ace3abc3.svg" fetchPriority="high"/><link rel="stylesheet" href="/_next/static/css/86609822cd6e8368.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-2d0d35187427dcc2.js"/>
1<script src="/_next/static/chunks/fd9d1056-a056e3d9fe2fdc74.js" async=""></script>
1<script src="/_next/static/chunks/23-213eb7c1d486fc3d.js" async=""></script>
1<script src="/_next/static/chunks/main-app-f73cdb3bce740b12.js" async=""></script>
1<script src="/_next/static/chunks/625-417e2cfe7d60384b.js" async=""></script>
1<script src="/_next/static/chunks/138-5486e96199c0da21.js" async=""></script>
1<script src="/_next/static/chunks/911-ac41ee54864c8884.js" async=""></script>
1<script src="/_next/static/chunks/991-1151f0c0bb29f672.js" async=""></script>
1<script src="/_next/static/chunks/app/(withlayout)/process-development/page-96eda43569e1ecd0.js" async=""></script>
1<script src="/_next/static/chunks/app/(withlayout)/layout-922d16ecf2267028.js" async=""></script>
1<script src="/_next/static/chunks/4-06c8b5c6f3081cb2.js" async=""></script>
1<script src="/_next/static/chunks/223-a4b07440eb1d6049.js" async=""></script>
1<script src="/_next/static/chunks/app/layout-5d906f794a34899f.js" async=""></script>
1<link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="anonymous"/><meta name="theme-color" content="#04070A"/><meta name="color-scheme" content="dark"/><title>Process development | BioprocessAI</title><meta name="description" content="Fewer development runs and ranges you can defend. Keep the design, the data and the conclusion attached, and draft the report from the record."/><meta name="author" content="BioprocessAI"/><meta name="keywords" content="CMC,bioprocess,biopharma,agentic AI,deviation investigation,root cause analysis,batch record review,process development,technology transfer,GMP manufacturing,knowledge graph,DoE"/><meta name="creator" content="BioprocessAI"/><meta name="robots" content="index, follow"/><meta name="googlebot" content="index, follow"/><link rel="canonical" href="https://bioprocess.ai"/><meta property="og:title" content="BioprocessAI, Automate the CMC critical path"/><meta property="og:description" content="BioprocessAI is the CMC platform for biologics. One governed system of record for process data, documents and decisions, with AI that assembles the evidence, runs the analysis and drafts the documents, and shows its working every time."/><meta property="og:url" content="https://bioprocess.ai"/><meta property="og:site_name" content="BioprocessAI"/><meta property="og:locale" content="en_US"/><meta property="og:image" content="https://bioprocess.ai/og-image.png"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta property="og:image:alt" content="BioprocessAI"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="BioprocessAI, Automate the CMC critical path"/><meta name="twitter:description" content="BioprocessAI is the CMC platform for biologics. One governed system of record for process data, documents and decisions, with AI that assembles the evidence, runs the analysis and drafts the documents, and shows its working every time."/><meta name="twitter:image" content="https://bioprocess.ai/og-image.png"/><meta name="twitter:image:width" content="1200"/><meta name="twitter:image:height" content="630"/><meta name="twitter:image:alt" content="BioprocessAI"/><link rel="icon" href="/favicon.ico" type="image/x-icon" sizes="16x16"/><link href="https://fonts.googleapis.com/css2?family=Inter+Tight:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&amp;family=Poppins:wght@500;600;700&amp;
1family=Instrument+Serif:ital@0;1&amp;family=JetBrains+Mono:wght@400;500&amp;display=swap" rel="stylesheet"/>
1<script type="application/ld+json">{"@context":"https://schema.org","@type":"Organization","name":"BioprocessAI","url":"https://bioprocess.ai","logo":"https://bioprocess.ai/Bioprocess alternate logo.svg","description":"BioprocessAI is the CMC platform for biologics. One governed system of record for process data, documents and decisions, with AI that assembles the evidence, runs the analysis and drafts the documents, and shows its working every time.","contactPoint":{"@type":"ContactPoint","email":"[email protected]","contactType":"customer service"}}</script>
1<script src="/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js" noModule=""></script>
1</head><body class="bg-ink-950 font-sans antialiased">
vendor: 67 bytes, line 1
1<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
1GTM-W4TN3BH3
vendor: 82 bytes, line 1
1" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
1<div class="relative min-h-screen bg-ink-950 text-slate-200"><header class="fixed inset-x-0 top-0 z-50 transition-all duration-500 border-b border-transparent"><div class="shell"><div class="flex h-16 items-center justify-between"><a aria-label="BioprocessAI" class="shrink-0" href="/"><span class="flex items-center gap-2.5"><span class="relative block h-[2.475rem] w-[2.475rem] shrink-0 overflow-hidden rounded-[11px]"><img alt="" fetchPriority="high" decoding="async" data-nimg="fill" class="object-contain" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" src="/_next/static/media/Bioprocess logo.ace3abc3.svg"/></span><span class="font-wordmark text-[1.30625rem] font-semibold tracking-[-0.02em] text-wordmark">Bioprocess<span class="text-wordmarkAi">AI</span></span></span></a><nav class="hidden items-center lg:flex"><div class="relative"><button class="flex items-center gap-1 rounded-full px-3.5 py-2 text-[0.875rem] font-medium text-body transition-colors duration-200 hover:text-heading " aria-expanded="false">Platform<svg width="10" height="10" viewBox="0 0 12 12" fill="none" class="transition-transform duration-300 " aria-hidden="true"><path d="M3 4.5 6 8l3-3.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></button><div class="absolute left-1/2 top-full -translate-x-1/2 pt-3 transition-all duration-300 pointer-events-none -translate-y-1 opacity-0"><div class="rounded-2xl border border-line bg-white/95 p-2 shadow-lift backdrop-blur-2xl"><div class="grid gap-1 w-[38rem] grid-cols-2"><a class="group flex items-start gap-3 rounded-xl p-3 transition-colors duration-300 hover:bg-surface" href="/#across-chat"><span class="mt-0.5 grid h-8 w-8 shrink-0 place-items-center rounded-lg border border-line bg-surface text-signal-600 transition-colors duration-300 group-hover:border-signal-500/45 group-hover:bg-signal-500/10"><svg width="17" height="17" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M4 20V10m5 10V4m5 16v-7m5 7V8" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></span><span class="min-w-0"><span class="flex items-center gap-1.5 text-[0.875rem] font-medium text-heading">Ask your process data</span><span class="mt-0.5 block text-[0.875rem] leading-snug text-muted">Charts and statistics computed from your own runs, on request</span></span></a><a class="group flex items-start gap-3 rounded-xl p-3 transition-colors duration-300 hover:bg-surface" href="/#across-knowledge"><span class="mt-0.5 grid h-8 w-8 shrink-0 place-items-center rounded-lg border border-line bg-surface text-signal-600 transition-colors duration-300 group-hover:border-signal-500/45 group-hover:bg-signal-500/10"><svg width="17" height="17" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M12 3v4m0 10v4m9-9h-4M7 12H3m13.6-5.6-2.9 2.9m-3.4 3.4-2.9 2.9m0-9.2 2.9 2.9m3.4 3.4 2.9 2.9" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></span><span class="min-w-0"><span class="flex items-center gap-1.5 text-[0.875rem] font-medium text-heading">Find what you already know</span><span class="mt-0.5 block text-[0.875rem] leading-snug text-muted">Reports, runsheets and batch records become answerable</span></span></a><a class="group flex items-start gap-3 rounded-xl p-3 transition-colors duration-300 hover:bg-surface" href="/manufacturing"><span class="mt-0.5 grid h-8 w-8 shrink-0 place-items-center rounded-lg border border-line bg-surface text-signal-600 transition-colors duration-300 group-hover:border-signal-500/45 group-hover:bg-signal-500/10"><svg width="17" height="17" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M12 3 3 20h18L12 3Zm0 6v5m0 3h.01" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></span><span class="min-w-0"><span class="flex items-center gap-1.5 text-[0.875rem] font-medium text-heading">Close deviations faster</span><span class="mt-0.5 block text-[0.875rem] leading-snug text-muted">Out-of-spec to a confirmed cause, with the evidence attached</span></span></a><a class="group flex items-start gap-3 rounded-xl p-3 transition-colors duration-300 hover:bg-surface" href="/manufacturing"><span class="mt-0.5 grid h-8 w-8 shrink-0 place-items-center rounded-lg border border-line bg-surface text-signal-600 transition-colors duration-300 group-hover:border-signal-500/45 group-hover:bg-signal-500/10"><svg width="17" height="17" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M7 3h10a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2Zm2 5h6M9 12h6M9 16h3" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></span><span class="min-w-0"><span class="flex items-center gap-1.5 text-[0.875rem] font-medium text-heading">Catch batch exceptions early</span><span class="mt-0.5 block text-[0.875rem] leading-snug text-muted">Ranges, calibration, training and lot status, computed</span></span></a><a class="group flex items-start gap-3 rounded-xl p-3 transition-colors duration-300 hover:bg-surface" href="/#across-reports"><span class="mt-0.5 grid h-8 w-8 shrink-0 place-items-center rounded-lg border border-line bg-surface text-signal-600 transition-colors duration-300 group-hover:border-signal-500/45 group-hover:bg-signal-500/10"><svg width="17" height="17" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M14 3H8a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V7l-4-4Zm0 0v4h4M9 13h6M9 17h4" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></span><span class="min-w-0"><span class="flex items-center gap-1.5 text-[0.875rem] font-medium text-heading">Draft reports from the record</span><span class="mt-0.5 block text-[0.875rem] leading-snug text-muted">Template-driven documents with figures bound to source</span></span></a><a class="group flex items-start gap-3 rounded-xl p-3 transition-colors duration-300 hover:bg-surface" href="/#trust"><span class="mt-0.5 grid h-8 w-8 shrink-0 place-items-center rounded-lg border border-line bg-surface text-signal-600 transition-colors duration-300 group-hover:border-signal-500/45 group-hover:bg-signal-500/10"><svg width="17" height="17" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M12 3 4 6v6c0 4.5 3.4 8.3 8 9 4.6-.7 8-4.5 8-9V6l-8-3Zm-2.4 9 1.8 1.8 3.6-3.6" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></span><span class="min-w-0"><span class="flex items-center gap-1.5 text-[0.875rem] font-medium text-heading">Pass the audit</span><span class="mt-0.5 block text-[0.875rem] leading-snug text-muted">GxP audit trail, e-signature, tenancy-bound models</span></span></a></div></div></div></div><div class="relative"><button class="flex items-center gap-1 rounded-full px-3.5 py-2 text-[0.875rem] font-medium text-body transition-colors duration-200 hover:text-heading " aria-expanded="false">
1Solutions<svg width="10" height="10" viewBox="0 0 12 12" fill="none" class="transition-transform duration-300 " aria-hidden="true"><path d="M3 4.5 6 8l3-3.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></button><div class="absolute left-1/2 top-full -translate-x-1/2 pt-3 transition-all duration-300 pointer-events-none -translate-y-1 opacity-0"><div class="rounded-2xl border border-line bg-white/95 p-2 shadow-lift backdrop-blur-2xl"><div class="grid gap-1 w-[24rem] grid-cols-1"><a class="group flex items-start gap-3 rounded-xl p-3 transition-colors duration-300 hover:bg-surface" href="/process-development"><span class="mt-0.5 grid h-8 w-8 shrink-0 place-items-center rounded-lg border border-line bg-surface text-signal-600 transition-colors duration-300 group-hover:border-signal-500/45 group-hover:bg-signal-500/10"><svg width="17" height="17" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M9 3v6.5L4.5 18A2 2 0 0 0 6.3 21h11.4a2 2 0 0 0 1.8-3L15 9.5V3M8 3h8M8.5 13h7" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></span><span class="min-w-0"><span class="flex items-center gap-1.5 text-[0.875rem] font-medium text-heading">Process development</span><span class="mt-0.5 block text-[0.875rem] leading-snug text-muted">Design and defend the studies that set the process</span></span></a><a class="group flex items-start gap-3 rounded-xl p-3 transition-colors duration-300 hover:bg-surface" href="/technology-transfer"><span class="mt-0.5 grid h-8 w-8 shrink-0 place-items-center rounded-lg border border-line bg-surface text-signal-600 transition-colors duration-300 group-hover:border-signal-500/45 group-hover:bg-signal-500/10"><svg width="17" height="17" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M4 8h11m0 0-3-3m3 3-3 3M20 16H9m0 0 3-3m-3 3 3 3" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></span><span class="min-w-0"><span class="flex items-center gap-1.5 text-[0.875rem] font-medium text-heading">Tech transfer &amp; scale-up</span><span class="mt-0.5 block text-[0.875rem] leading-snug text-muted">Move a process to a new site, reasoning intact</span></span></a><a class="group flex items-start gap-3 rounded-xl p-3 transition-colors duration-300 hover:bg-surface" href="/analytical"><span class="mt-0.5 grid h-8 w-8 shrink-0 place-items-center rounded-lg border border-line bg-surface text-signal-600 transition-colors duration-300 group-hover:border-signal-500/45 group-hover:bg-signal-500/10"><svg width="17" height="17" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M9 3v6L4 19a2 2 0 0 0 1.8 3h12.4a2 2 0 0 0 1.8-3l-5-10V3M8 3h8m-6 12h4" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></span><span class="min-w-0"><span class="flex items-center gap-1.5 text-[0.875rem] font-medium text-heading">Analytical development</span><span class="mt-0.5 block text-[0.875rem] leading-snug text-muted">Qualify a method against the plan it came from</span></span></a><a class="group flex items-start gap-3 rounded-xl p-3 transition-colors duration-300 hover:bg-surface" href="/manufacturing"><span class="mt-0.5 grid h-8 w-8 shrink-0 place-items-center rounded-lg border border-line bg-surface text-signal-600 transition-colors duration-300 group-hover:border-signal-500/45 group-hover:bg-signal-500/10"><svg width="17" height="17" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M3 20V9l6 4V9l6 4V4l6 3v13H3Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></span><span class="min-w-0"><span class="flex items-center gap-1.5 text-[0.875rem] font-medium text-heading">GMP manufacturing</span><span class="mt-0.5 block text-[0.875rem] leading-snug text-muted">Right-first-time batches and faster deviation closure</span></span></a></div></div></div></div><div class="relative"><button class="flex items-center gap-1 rounded-full px-3.5 py-2 text-[0.875rem] font-medium text-body transition-colors duration-200 hover:text-heading " aria-expanded="false">
1Resources<svg width="10" height="10" viewBox="0 0 12 12" fill="none" class="transition-transform duration-300 " aria-hidden="true"><path d="M3 4.5 6 8l3-3.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></button><div class="absolute left-1/2 top-full -translate-x-1/2 pt-3 transition-all duration-300 pointer-events-none -translate-y-1 opacity-0"><div class="rounded-2xl border border-line bg-white/95 p-2 shadow-lift backdrop-blur-2xl"><div class="grid gap-1 w-[24rem] grid-cols-1"><a class="group flex items-start gap-3 rounded-xl p-3 transition-colors duration-300 hover:bg-surface" href="/cmc-productivity"><span class="mt-0.5 grid h-8 w-8 shrink-0 place-items-center rounded-lg border border-line bg-surface text-signal-600 transition-colors duration-300 group-hover:border-signal-500/45 group-hover:bg-signal-500/10"><svg width="17" height="17" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M4 4.5A2.5 2.5 0 0 1 6.5 2H20v15H6.5A2.5 2.5 0 0 0 4 19.5v-15Zm0 15A2.5 2.5 0 0 0 6.5 22H20v-5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></span><span class="min-w-0"><span class="flex items-center gap-1.5 text-[0.875rem] font-medium text-heading">Improving CMC productivity</span><span class="mt-0.5 block text-[0.875rem] leading-snug text-muted">What AI can and cannot do across the lifecycle</span></span></a><a href="https://trust.bioprocess.ai" target="_blank" rel="noopener noreferrer" class="group flex items-start gap-3 rounded-xl p-3 transition-colors duration-300 hover:bg-surface"><span class="mt-0.5 grid h-8 w-8 shrink-0 place-items-center rounded-lg border border-line bg-surface text-signal-600 transition-colors duration-300 group-hover:border-signal-500/45 group-hover:bg-signal-500/10"><svg width="17" height="17" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M12 3 4 6v6c0 4.5 3.4 8.3 8 9 4.6-.7 8-4.5 8-9V6l-8-3Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></span><span class="min-w-0"><span class="flex items-center gap-1.5 text-[0.875rem] font-medium text-heading">Security &amp; compliance<svg width="10" height="10" viewBox="0 0 12 12" fill="none" aria-hidden="true"><path d="M4 2h6v6M10 2 3 9" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" class="text-muted"></path></svg></span><span class="mt-0.5 block text-[0.875rem] leading-snug text-muted">Trust center, controls, sub-processors, posture</span></span></a><a class="group flex items-start gap-3 rounded-xl p-3 transition-colors duration-300 hover:bg-surface" href="/security"><span class="mt-0.5 grid h-8 w-8 shrink-0 place-items-center rounded-lg border border-line bg-surface text-signal-600 transition-colors duration-300 group-hover:border-signal-500/45 group-hover:bg-signal-500/10"><svg width="17" height="17" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M12 3v12m0 0 4-4m-4 4-4-4M4 19h16" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></span><span class="min-w-0"><span class="flex items-center gap-1.5 text-[0.875rem] font-medium text-heading">Security and data handling</span><span class="mt-0.5 block text-[0.875rem] leading-snug text-muted">Isolation, encryption, residency and recovery</span></span></a></div></div></div></div><a class="flex items-center gap-1 rounded-full px-3.5 py-2 text-[0.875rem] font-medium text-body transition-colors duration-200 hover:text-heading" href="/about">Company</a></nav><div class="flex items-center gap-2"><a href="https://platform.bioprocess.ai" target="_blank" rel="noopener noreferrer" class="hidden rounded-full px-3.5 py-2 text-[0.875rem] font-medium text-body transition-colors hover:text-heading sm:block">Sign in</a><a class="group hidden h-10 items-center gap-1.5 rounded-full bg-signal-500 px-5 text-[0.875rem] font-medium text-white shadow-[0_8px_20px_-10px_rgba(0,150,136,0.8)] transition-all duration-300 hover:bg-signal-600 sm:inline-flex" href="/request-demo">Book a demo<svg width="14" height="14" viewBox="0 0 14 14" fill="none" class="transition-transform duration-300 group-hover:translate-x-0.5 " aria-hidden="true"><path d="M3 7h8m0 0L7.6 3.6M11 7l-3.4 3.4" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"></path></svg></a><button class="grid h-9 w-9 place-items-center rounded-full border border-line text-body lg:hidden" aria-label="Menu" aria-expanded="false">
1<svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><path d="M2.5 5h11M2.5 11h11" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"></path></svg></button></div></div></div></header><div class="fixed inset-0 z-40 lg:hidden pointer-events-none"><div class="absolute inset-0 bg-white/90 backdrop-blur-xl transition-opacity duration-400 opacity-0"></div><div class="absolute inset-x-0 top-16 max-h-[calc(100vh-4rem)] overflow-y-auto border-t border-line bg-white/95 px-5 pb-16 pt-6 transition-all duration-400 -translate-y-3 opacity-0"><div class="mb-7"><p class="eyebrow mb-3">Platform</p><div class="flex flex-col"><a class="border-b border-line py-3 text-[0.9375rem] text-body" href="/#across-chat">Ask your process data</a><a class="border-b border-line py-3 text-[0.9375rem] text-body" href="/#across-knowledge">Find what you already know</a><a class="border-b border-line py-3 text-[0.9375rem] text-body" href="/manufacturing">Close deviations faster</a><a class="border-b border-line py-3 text-[0.9375rem] text-body" href="/manufacturing">Catch batch exceptions early</a><a class="border-b border-line py-3 text-[0.9375rem] text-body" href="/#across-reports">Draft reports from the record</a><a class="border-b border-line py-3 text-[0.9375rem] text-body" href="/#trust">Pass the audit</a></div></div><div class="mb-7"><p class="eyebrow mb-3">Solutions</p><div class="flex flex-col"><a class="border-b border-line py-3 text-[0.9375rem] text-body" href="/process-development">Process development</a><a class="border-b border-line py-3 text-[0.9375rem] text-body" href="/technology-transfer">Tech transfer &amp; scale-up</a><a class="border-b border-line py-3 text-[0.9375rem] text-body" href="/analytical">Analytical development</a><a class="border-b border-line py-3 text-[0.9375rem] text-body" href="/manufacturing">GMP manufacturing</a></div></div><div class="mb-7"><p class="eyebrow mb-3">Resources</p><div class="flex flex-col"><a class="border-b border-line py-3 text-[0.9375rem] text-body" href="/cmc-productivity">Improving CMC productivity</a><a href="https://trust.bioprocess.ai" target="_blank" rel="noopener noreferrer" class="border-b border-line py-3 text-[0.9375rem] text-body">Security &amp; compliance</a><a class="border-b border-line py-3 text-[0.9375rem] text-body" href="/security">Security and data handling</a></div></div><div class="flex flex-col gap-3"><a class="btn-ghost-line w-full" href="/about">Company</a><a class="btn-signal w-full" href="/request-demo">Book a demo</a></div></div></div><main><section class="relative overflow-hidden pb-16 pt-32 lg:pt-40"><div aria-hidden="true" class="pointer-events-none absolute inset-0 overflow-hidden "><div class="absolute left-1/2 top-[-34%] h-[62rem] w-[86rem] -translate-x-1/2 animate-drift rounded-full blur-[110px]" style="opacity:0.51;background:radial-gradient(closest-side, rgba(0,150,136,0.16) 0%, rgba(38,166,154,0.07) 46%, rgba(255,255,255,0) 74%)"></div><div class="absolute left-[10%] top-[14%] h-[34rem] w-[34rem] animate-drift rounded-full blur-[130px]" style="animation-delay:-6s;opacity:0.3;background:radial-gradient(closest-side, rgba(106,27,154,0.10) 0%, rgba(255,255,255,0) 72%)"></div><div class="absolute right-[6%] top-[4%] h-[28rem] w-[28rem] animate-drift rounded-full blur-[120px]" style="animation-delay:-12s;opacity:0.33;background:radial-gradient(closest-side, rgba(0,150,136,0.13) 0%, rgba(255,255,255,0) 72%)"></div><div class="absolute inset-0 grid-field mask-fade-b opacity-60"></div></div><div class="shell relative"><div class="max-w-3xl"><span class="eyebrow">Process development</span><h1 class="mt-5 text-display-lg font-medium text-balance text-heading">Fewer runs.<br class="hidden sm:block"/> <span class="font-serif italic text-gradient-signal">Ranges you can defend.</span></h1><p class="lede mt-7 text-pretty">Every development run costs money and, more expensively, calendar time. Every decision you take has to be defended twice, once at the stage gate and again in the filing, years later, by someone who wasn&#x27;t there. The platform keeps the design, the data and the conclusion attached to each other so neither of those costs compounds.</p><div class="mt-9 flex flex-wrap gap-3"><a class="btn-signal group" href="/request-demo">Book a demo<svg width="14" height="14" viewBox="0 0 14 14" fill="none" class="transition-transform duration-300 group-hover:translate-x-0.5 " aria-hidden="true"><path d="M3 7h8m0 0L7.6 3.6M11 7l-3.4 3.4" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"></path></svg></a><a class="btn-ghost-line group" href="#what-changes">What changes<svg width="14" height="14" viewBox="0 0 14 14" fill="none" class="transition-transform duration-300 group-hover:translate-x-0.5 " aria-hidden="true"><path d="M3 7h8m0 0L7.6 3.6M11 7l-3.4 3.4" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"></path></svg></a></div></div><div class="reveal  mt-14 grid gap-px overflow-hidden rounded-2xl border border-line bg-line sm:grid-cols-3" style="--reveal-delay:140ms"><div class="bg-canvas p-6 transition-colors duration-300 hover:bg-surface"><p class="font-mono text-[0.875rem] uppercase tracking-[0.14em] text-faint">The unit of work</p><p class="mt-2 text-[1.0625rem] leading-snug text-body">A study, with its design, runs, results and conclusion in one object</p></div><div class="bg-canvas p-6 transition-colors duration-300 hover:bg-surface"><p class="font-mono text-[0.875rem] uppercase tracking-[0.14em] text-faint">The analysis</p><p class="mt-2 text-[1.0625rem] leading-snug text-body">Regression, correlation, PCA and DoE on the run data itself. No export</p></div><div class="bg-canvas p-6 transition-colors duration-300 hover:bg-surface"><p class="font-mono text-[0.875rem] uppercase tracking-[0.14em] text-faint">The output</p><p class="mt-2 text-[1.0625rem] leading-snug text-body">A development report drafted from the studies, with every figure bound to source</p></div></div></div></section><section class="relative overflow-x-clip border-t border-line py-20 lg:py-24"><div class="shell"><div class="grid items-center gap-8 lg:grid-cols-[minmax(0,1fr)_minmax(0,1fr)] lg:gap-14"><div class="max-w-3xl "><div class="reveal  mb-5" style="--reveal-delay:0ms"><div class="flex items-center gap-4 "><span class="eyebrow shrink-0">In the product</span><span class="h-px flex-1 border-t border-dotted border-line2"></span></div></div><div class="reveal  " style="--reveal-delay:60ms"><h2 class="text-display-md font-medium text-balance text-heading">From the workflow down to the run data.</h2></div><div class="reveal  " style="--reveal-delay:130ms"><p class="lede mt-5 text-pretty">The process development workflow is the map. Open a stage, open a unit operation, open a study, and you land on the runs themselves, with the charts and the analysis already built.</p></div></div><div class="reveal  relative" style="--reveal-delay:120ms"><div aria-hidden="true" class="pointer-events-none absolute -inset-8 -z-10 rounded-[2.5rem] opacity-50 blur-3xl" style="background:radial-gradient(55% 55% at 50% 45%, rgba(0,150,136,0.16), rgba(255,255,255,0))"></div><div class="stage"><div class="min-w-0 overflow-x-auto no-visible-scrollbar lg:overflow-visible lg:[zoom:0.58]"><div><div class="device "><div class="flex items-center gap-3 border-b border-line bg-surface px-4 py-2.5"><span class="relative block h-5 w-5 shrink-0 overflow-hidden rounded-[6px]"><img alt="" loading="lazy" decoding="async" data-nimg="fill" class="object-contain" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" src="/_next/static/media/Bioprocess logo.ace3abc3.svg"/>
1</span><nav class="flex min-w-0 items-center gap-1.5 overflow-hidden"><span class="truncate font-mono text-[0.9375rem] text-faint">BPAI001</span><span class="text-faint" aria-hidden="true">/</span><span class="truncate font-mono text-[0.9375rem] text-body">Process development</span></nav><span class="ml-auto shrink-0 rounded-full border px-2.5 py-0.5 font-mono text-[0.875rem] uppercase tracking-[0.1em] text-muted border-line bg-surface">process development</span></div><div class="relative h-[36rem] overflow-hidden "><div class="relative grid"><div class="[grid-area:1/1] transition-opacity duration-300 opacity-100"><div class="p-5"><div class="flex items-center justify-between"><p class="text-[0.9375rem] font-medium text-heading">Process development workflow</p><span class="rounded-full border border-signal-500/40 px-3 py-1 font-mono text-[0.6875rem] uppercase tracking-[0.08em] text-signal-700">Edit workflow</span></div><svg viewBox="0 0 1200 400" class="mt-3 w-full" role="img" aria-label="Process development workflow for a monoclonal antibody"><circle cx="66" cy="210" r="42" fill="#FBFDFD" stroke="#D8E4E4" stroke-width="1.4" stroke-dasharray="5 4"></circle><text x="66" y="200" text-anchor="middle" font-size="11" fill="#7E9199">Molecule</text><text x="66" y="213" text-anchor="middle" font-size="11" fill="#7E9199">(mab) sequence</text><text x="66" y="226" text-anchor="middle" font-size="11" fill="#7E9199">identified</text><g><path d="M108 210 H158 V76 H181" fill="none" stroke="#9AACB2" stroke-width="1.6" stroke-dasharray="6 5"></path><path d="M186 76 L177 70.5 L177 81.5 Z" fill="#9AACB2"></path></g><g><path d="M158 210 V306 H366" fill="none" stroke="#9AACB2" stroke-width="1.6" stroke-dasharray="6 5"></path><path d="M371 306 L362 300.5 L362 311.5 Z" fill="#9AACB2"></path></g><g><path d="M340 76 H366" fill="none" stroke="#9AACB2" stroke-width="1.6" stroke-dasharray="6 5"></path><path d="M371 76 L362 70.5 L362 81.5 Z" fill="#9AACB2"></path></g><g><path d="M525 76 H551" fill="none" stroke="#9AACB2" stroke-width="1.6" stroke-dasharray="6 5"></path><path d="M556 76 L547 70.5 L547 81.5 Z" fill="#9AACB2"></path></g><g><path d="M710 76 H991" fill="none" stroke="#9AACB2" stroke-width="1.6" stroke-dasharray="6 5"></path><path d="M996 76 L987 70.5 L987 81.5 Z" fill="#9AACB2"></path></g><g><path d="M740 76 V176 H761" fill="none" stroke="#9AACB2" stroke-width="1.6" stroke-dasharray="6 5"></path><path d="M766 176 L757 170.5 L757 181.5 Z" fill="#9AACB2"></path></g><g><path d="M540 306 H700 V264 H761" fill="none" stroke="#9AACB2" stroke-width="1.6" stroke-dasharray="6 5"></path><path d="M766 264 L757 258.5 L757 269.5 Z" fill="#9AACB2"></path></g><g><path d="M700 306 V352 H761" fill="none" stroke="#9AACB2" stroke-width="1.6" stroke-dasharray="6 5"></path><path d="M766 352 L757 346.5 L757 357.5 Z" fill="#9AACB2"></path></g><g><path d="M935 176 H965 V76" fill="none" stroke="#9AACB2" stroke-width="1.6" stroke-dasharray="6 5"></path></g><g><path d="M935 264 H965" fill="none" stroke="#9AACB2" stroke-width="1.6" stroke-dasharray="6 5"></path></g><g><path d="M935 352 H965" fill="none" stroke="#9AACB2" stroke-width="1.6" stroke-dasharray="6 5"></path></g><g><rect x="190" y="40" width="150" height="72" rx="12" fill="#FFFFFF" stroke="#C9E2E0" stroke-width="1.4" style="transition:stroke 0.4s ease, fill 0.4s ease"></rect><text x="265" y="72.5" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">Vector construction</text><text x="265" y="89.5" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">of the sequence</text></g><g><rect x="375" y="40" width="150" height="72" rx="12" fill="#FFFFFF" stroke="#C9E2E0" stroke-width="1.4" style="transition:stroke 0.4s ease, fill 0.4s ease"></rect><text x="450" y="72.5" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">Cell-line</text><text x="450" y="89.5" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">development</text></g><g><rect x="560" y="40" width="150" height="72" rx="12" fill="#EAF6F5" stroke="#009688" stroke-width="2" style="transition:stroke 0.4s ease, fill 0.4s ease"></rect><text x="635" y="72.5" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">Upstream Process</text><text x="635" y="89.5" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">Development</text></g><g><rect x="996" y="40" width="160" height="72" rx="12" fill="#FFFFFF" stroke="#C9E2E0" stroke-width="1.4" style="transition:stroke 0.4s ease, fill 0.4s ease"></rect><text x="1076" y="72.5" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">Confirmation run</text><text x="1076" y="89.5" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">at small scale</text></g><g><rect x="375" y="270" width="165" height="72" rx="12" fill="#FFFFFF" stroke="#C9E2E0" stroke-width="1.4" style="transition:stroke 0.4s ease, fill 0.4s ease"></rect><text x="457.5" y="302.5" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">Transient culture</text><text x="457.5" y="319.5" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">for the molecule</text></g><g><rect x="766" y="140" width="169" height="72" rx="12" fill="#FFFFFF" stroke="#C9E2E0" stroke-width="1.4" style="transition:stroke 0.4s ease, fill 0.4s ease"></rect><text x="850.5" y="172.5" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">Downstream Process</text><text x="850.5" y="189.5" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">Development</text></g><g><rect x="766" y="228" width="169" height="72" rx="12" fill="#FFFFFF" stroke="#C9E2E0" stroke-width="1.4" style="transition:stroke 0.4s ease, fill 0.4s ease"></rect><text x="850.5" y="260.5" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">Formulation</text><text x="850.5" y="277.5" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">Development</text></g><g><rect x="766" y="316" width="169" height="72" rx="12" fill="#FFFFFF" stroke="#C9E2E0" stroke-width="1.4" style="transition:stroke 0.4s ease, fill 0.4s ease"></rect><text x="850.5" y="348.5" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">Analytical</text><text x="850.5" y="365.5" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">Development</text></g></svg></div></div><div class="[grid-area:1/1] transition-opacity duration-300 pointer-events-none opacity-0"><div class="p-5"><div class="flex items-center justify-between"><p class="text-[0.9375rem] font-medium text-heading">Upstream process development (Mab) workflow</p><span class="rounded-full bg-signal-500 px-3 py-1 font-mono text-[0.6875rem] uppercase tracking-[0.08em] text-white">
1Create upstream development report</span></div><svg viewBox="0 0 1200 350" class="mt-4 w-full" role="img" aria-label="Upstream process development workflow"><g><path d="M198 79 H289" fill="none" stroke="#9AACB2" stroke-width="1.6" stroke-dasharray="6 5"></path><path d="M294 79 L285 73.5 L285 84.5 Z" fill="#9AACB2"></path></g><g><path d="M452 79 H543" fill="none" stroke="#9AACB2" stroke-width="1.6" stroke-dasharray="6 5"></path><path d="M548 79 L539 73.5 L539 84.5 Z" fill="#9AACB2"></path></g><g><path d="M706 79 H797" fill="none" stroke="#9AACB2" stroke-width="1.6" stroke-dasharray="6 5"></path><path d="M802 79 L793 73.5 L793 84.5 Z" fill="#9AACB2"></path></g><g><path d="M960 79 H1130 V160 H40 V235 H43" fill="none" stroke="#9AACB2" stroke-width="1.6" stroke-dasharray="6 5"></path><path d="M48 235 L39 229.5 L39 240.5 Z" fill="#9AACB2"></path></g><g><path d="M198 235 H289" fill="none" stroke="#9AACB2" stroke-width="1.6" stroke-dasharray="6 5"></path><path d="M294 235 L285 229.5 L285 240.5 Z" fill="#9AACB2"></path></g><g><path d="M470 235 H543" fill="none" stroke="#9AACB2" stroke-width="1.6" stroke-dasharray="6 5"></path><path d="M548 235 L539 229.5 L539 240.5 Z" fill="#9AACB2"></path></g><g><rect x="48" y="40" width="150" height="78" rx="12" fill="#FFFFFF" stroke="#C9E2E0" stroke-width="1.4" style="transition:stroke 0.4s ease, fill 0.4s ease"></rect><text x="123" y="84" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">Vial Thaw</text></g><g><rect x="294" y="40" width="158" height="78" rx="12" fill="#FFFFFF" stroke="#C9E2E0" stroke-width="1.4" style="transition:stroke 0.4s ease, fill 0.4s ease"></rect><text x="373" y="84" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">Passage 1</text></g><g><rect x="548" y="40" width="158" height="78" rx="12" fill="#FFFFFF" stroke="#C9E2E0" stroke-width="1.4" style="transition:stroke 0.4s ease, fill 0.4s ease"></rect><text x="627" y="84" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">Passage 2</text></g><g><rect x="802" y="40" width="158" height="78" rx="12" fill="#FFFFFF" stroke="#C9E2E0" stroke-width="1.4" style="transition:stroke 0.4s ease, fill 0.4s ease"></rect><text x="881" y="84" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">Passage 3</text></g><g><rect x="48" y="196" width="150" height="78" rx="12" fill="#FFFFFF" stroke="#C9E2E0" stroke-width="1.4" style="transition:stroke 0.4s ease, fill 0.4s ease"></rect><text x="123" y="240" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">N-1 Bioreactor</text></g><g><rect x="294" y="196" width="176" height="78" rx="12" fill="#EAF6F5" stroke="#009688" stroke-width="2" style="transition:stroke 0.4s ease, fill 0.4s ease"></rect><text x="382" y="231.5" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">Bioreactor Process</text><text x="382" y="248.5" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">Optimization</text></g><g><rect x="548" y="196" width="176" height="78" rx="12" fill="#FFFFFF" stroke="#C9E2E0" stroke-width="1.4" style="transition:stroke 0.4s ease, fill 0.4s ease"></rect><text x="636" y="231.5" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">Depth Filtration</text><text x="636" y="248.5" text-anchor="middle" font-size="13" font-weight="600" fill="#0A1618">Optimization</text></g></svg></div></div><div class="[grid-area:1/1] transition-opacity duration-300 pointer-events-none opacity-0"><div class="grid gap-4 p-5 lg:grid-cols-2"><div><p class="font-mono text-[0.75rem] uppercase tracking-[0.12em] text-signal-700">Studies</p><div class="mt-2.5 flex flex-col gap-2"><div class="relative rounded-xl border border-signal-500 bg-signal-50 px-3.5 py-3"><p class="text-[0.875rem] font-medium text-heading">Study 1: Temp and pH shift</p><p class="mt-0.5 text-[0.8125rem] text-muted">10 runs · complete</p><span class="pointer-events-none absolute -bottom-2 -right-2 z-10 transition-all duration-300 scale-75 opacity-0" aria-hidden="true"><span class="absolute inset-0 -m-3 animate-pulse-ring rounded-full border border-signal-500"></span><svg width="18" height="18" viewBox="0 0 18 18" fill="none"><path d="M3 2.2 14.2 8.4 9.3 9.6l-1.9 4.7z" fill="#0A1618" stroke="#FFFFFF" stroke-width="1.2" stroke-linejoin="round"></path></svg></span></div><div class="rounded-xl border border-line bg-white px-3.5 py-3"><p class="text-[0.875rem] font-medium text-body">Study 2: Feed study</p><p class="mt-0.5 text-[0.8125rem] text-muted">8 runs · in progress</p></div></div><p class="mt-4 font-mono text-[0.75rem] uppercase tracking-[0.12em] text-signal-700">Equipment</p><ul class="mt-2 flex flex-col gap-1">
1<li class="flex items-baseline justify-between gap-3 rounded-md bg-surface px-2.5 py-1.5"><span class="min-w-0 truncate text-[0.8125rem] text-muted">10 L Sartorius bioreactor</span><span class="shrink-0 font-mono text-[0.6875rem] text-faint">BRX-0010-03<!-- --> · <!-- -->in calibration</span></li><li class="flex items-baseline justify-between gap-3 rounded-md bg-surface px-2.5 py-1.5"><span class="min-w-0 truncate text-[0.8125rem] text-muted">Cedex cell counter</span><span class="shrink-0 font-mono text-[0.6875rem] text-faint">CDX-4402<!-- --> · <!-- -->in calibration</span></li><li class="flex items-baseline justify-between gap-3 rounded-md bg-surface px-2.5 py-1.5"><span class="min-w-0 truncate text-[0.8125rem] text-muted">Mettler Toledo pH meter</span><span class="shrink-0 font-mono text-[0.6875rem] text-faint">PHM-1188<!-- --> · <!-- -->due in 21 days</span></li><li class="flex items-baseline justify-between gap-3 rounded-md bg-surface px-2.5 py-1.5"><span class="min-w-0 truncate text-[0.8125rem] text-muted">Nova Biomedical bioanalyzer</span><span class="shrink-0 font-mono text-[0.6875rem] text-faint">NVA-7731<!-- --> · <!-- -->in calibration</span></li></ul><p class="mt-4 font-mono text-[0.75rem] uppercase tracking-[0.12em] text-signal-700">Materials</p><ul class="mt-2 flex flex-col gap-1"><li class="flex items-baseline justify-between gap-3 rounded-md bg-surface px-2.5 py-1.5"><span class="min-w-0 truncate text-[0.8125rem] text-muted">Basal medium</span><span class="shrink-0 font-mono text-[0.6875rem] text-faint">BM-2401-114</span></li><li class="flex items-baseline justify-between gap-3 rounded-md bg-surface px-2.5 py-1.5"><span class="min-w-0 truncate text-[0.8125rem] text-muted">Feed A</span><span class="shrink-0 font-mono text-[0.6875rem] text-faint">FEED-M-2402</span></li><li class="flex items-baseline justify-between gap-3 rounded-md bg-surface px-2.5 py-1.5"><span class="min-w-0 truncate text-[0.8125rem] text-muted">Base, 1 M Na₂CO₃</span><span class="shrink-0 font-mono text-[0.6875rem] text-faint">BS-2312-009</span></li><li class="flex items-baseline justify-between gap-3 rounded-md bg-surface px-2.5 py-1.5"><span class="min-w-0 truncate text-[0.8125rem] text-muted">Antifoam C</span><span class="shrink-0 font-mono text-[0.6875rem] text-faint">AF-2401-052</span></li></ul></div><div><p class="font-mono text-[0.75rem] uppercase tracking-[0.12em] text-signal-700">Process parameters</p><table class="mt-2.5 w-full border-collapse"><thead><tr class="border-b border-line"><th class="py-1.5 text-left text-[0.75rem] font-medium text-muted">Parameter</th><th class="py-1.5 text-right text-[0.75rem] font-medium text-muted">Target range</th><th class="py-1.5 text-right text-[0.75rem] font-medium text-muted">Value</th></tr></thead><tbody><tr class="border-b border-line/70"><td class="py-1.5 text-[0.8125rem] text-body">Working volume</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-faint">6 – 10 L</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-heading">8 L</td></tr><tr class="border-b border-line/70"><td class="py-1.5 text-[0.8125rem] text-body">Seeding density</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-faint">0.3 – 0.5 ×10⁶/mL</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-heading">0.4 ×10⁶/mL</td></tr><tr class="border-b border-line/70"><td class="py-1.5 text-[0.8125rem] text-body">Starting pH</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-faint">6.8 – 7.4</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-heading">7.3</td></tr><tr class="border-b border-line/70"><td class="py-1.5 text-[0.8125rem] text-body">pH deadband</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-faint">± 0.03 – 0.08</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-heading">± 0.05</td></tr><tr class="border-b border-line/70"><td class="py-1.5 text-[0.8125rem] text-body">Temperature shift</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-faint">32 – 34 °C</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-heading">34 °C</td></tr><tr class="border-b border-line/70"><td class="py-1.5 text-[0.8125rem] text-body">Temperature shift day</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-faint">6 – 8 days</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-heading">7 days</td></tr><tr class="border-b border-line/70"><td class="py-1.5 text-[0.8125rem] text-body">Dissolved oxygen</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-faint">20 – 50 %</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-heading">40 %</td></tr><tr class="border-b border-line/70"><td class="py-1.5 text-[0.8125rem] text-body">Agitation</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-faint">80 – 150 rpm</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-heading">100 rpm</td></tr><tr class="border-b border-line/70"><td class="py-1.5 text-[0.8125rem] text-body">Air sparging</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-faint">0.01 – 0.1 vvm</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-heading">0.02 vvm</td></tr><tr class="border-b border-line/70"><td class="py-1.5 text-[0.8125rem] text-body">Feed start</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-faint">day 3 – 4</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-heading">day 3</td></tr><tr class="border-b border-line/70"><td class="py-1.5 text-[0.8125rem] text-body">Feed rate</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-faint">3 – 5 % v/v daily</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-heading">3 % daily</td></tr><tr class="border-b border-line/70"><td class="py-1.5 text-[0.8125rem] text-body">Osmolality</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-faint">280 – 320 mOsm/kg</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-heading">298 mOsm/kg</td></tr><tr class="border-b border-line/70"><td class="py-1.5 text-[0.8125rem] text-body">Antifoam</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-faint">0.01 – 0.05 %</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-heading">0.02 %</td></tr><tr class="border-b border-line/70"><td class="py-1.5 text-[0.8125rem] text-body">Harvest criterion</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-faint">viability &lt; 80 % or day 14</td><td class="py-1.5 text-right font-mono text-[0.8125rem] text-heading">day 14</td></tr></tbody></table><p class="mt-4 font-mono text-[0.75rem] uppercase tracking-[0.12em] text-signal-700">In-process controls</p><ul class="mt-2 flex flex-col gap-1">
1<li class="flex items-baseline justify-between gap-3 rounded-md bg-surface px-2.5 py-1.5"><span class="min-w-0 text-[0.8125rem] text-muted">Viable cell density, viability</span><span class="shrink-0 font-mono text-[0.6875rem] text-faint">daily</span></li><li class="flex items-baseline justify-between gap-3 rounded-md bg-surface px-2.5 py-1.5"><span class="min-w-0 text-[0.8125rem] text-muted">Glucose, lactate, glutamine, ammonia</span><span class="shrink-0 font-mono text-[0.6875rem] text-faint">daily</span></li><li class="flex items-baseline justify-between gap-3 rounded-md bg-surface px-2.5 py-1.5"><span class="min-w-0 text-[0.8125rem] text-muted">Osmolality</span><span class="shrink-0 font-mono text-[0.6875rem] text-faint">every other day</span></li><li class="flex items-baseline justify-between gap-3 rounded-md bg-surface px-2.5 py-1.5"><span class="min-w-0 text-[0.8125rem] text-muted">Offline pH, pCO₂</span><span class="shrink-0 font-mono text-[0.6875rem] text-faint">daily</span></li><li class="flex items-baseline justify-between gap-3 rounded-md bg-surface px-2.5 py-1.5"><span class="min-w-0 text-[0.8125rem] text-muted">Titer</span><span class="shrink-0 font-mono text-[0.6875rem] text-faint">day 7, 10, 12, harvest</span></li></ul></div></div></div><div class="[grid-area:1/1] transition-opacity duration-300 pointer-events-none opacity-0"><div class="p-5"><div data-step="6"><p class="font-mono text-[0.75rem] uppercase tracking-[0.1em] text-signal-700">Procedure</p><p class="mt-0.5 font-mono text-[0.6875rem] text-faint">written once · executed ten times · two values assigned per run</p><ul class="mt-3 grid gap-1.5 sm:grid-cols-2"><li class="flex items-start gap-2.5 rounded-lg border px-3 py-2 transition-all duration-500 border-line bg-surface translate-y-2 opacity-0" style="transition-delay:0ms"><span class="mt-[1px] font-mono text-[0.75rem] text-faint">1</span><span class="text-[0.875rem] leading-snug text-body">Seed at 0.4 ×10⁶ cells/mL, 36.5 °C, pH 7.10</span></li><li class="flex items-start gap-2.5 rounded-lg border px-3 py-2 transition-all duration-500 border-line bg-surface translate-y-2 opacity-0" style="transition-delay:70ms"><span class="mt-[1px] font-mono text-[0.75rem] text-faint">2</span><span class="text-[0.875rem] leading-snug text-body">Feed A at 3 % of working volume daily from day 3</span></li><li class="flex items-start gap-2.5 rounded-lg border px-3 py-2 transition-all duration-500 border-signal-500/30 bg-signal-500/[0.06] translate-y-2 opacity-0" style="transition-delay:140ms"><span class="mt-[1px] font-mono text-[0.75rem] text-faint">3</span><span class="text-[0.875rem] leading-snug text-body">Shift temperature to 33 °C on the assigned day</span></li><li class="flex items-start gap-2.5 rounded-lg border px-3 py-2 transition-all duration-500 border-signal-500/30 bg-signal-500/[0.06] translate-y-2 opacity-0" style="transition-delay:210ms"><span class="mt-[1px] font-mono text-[0.75rem] text-faint">4</span><span class="text-[0.875rem] leading-snug text-body">Hold pH at the assigned setpoint from that day</span></li><li class="flex items-start gap-2.5 rounded-lg border px-3 py-2 transition-all duration-500 border-line bg-surface translate-y-2 opacity-0" style="transition-delay:280ms"><span class="mt-[1px] font-mono text-[0.75rem] text-faint">5</span><span class="text-[0.875rem] leading-snug text-body">Harvest at viability below 80 %, or day 14</span></li></ul></div><div data-step="7" class="mt-4"><p class="font-mono text-[0.75rem] uppercase tracking-[0.1em] text-signal-700">Run data</p><p class="mt-0.5 font-mono text-[0.6875rem] text-faint">recorded against the run · nothing re-keyed</p><div class="mt-2.5 overflow-hidden rounded-xl border border-line"><table class="w-full border-collapse font-mono text-[0.75rem]"><thead><tr class="bg-surface text-faint"><th class="border-b border-line px-2.5 py-1.5 text-left font-normal uppercase tracking-[0.08em]">Run</th><th class="border-b border-line px-2.5 py-1.5 text-left font-normal uppercase tracking-[0.08em]">Shift day</th><th class="border-b border-line px-2.5 py-1.5 text-left font-normal uppercase tracking-[0.08em]">pH</th><th class="border-b border-line px-2.5 py-1.5 text-left font-normal uppercase tracking-[0.08em]">Peak VCD</th><th class="border-b border-line px-2.5 py-1.5 text-left font-normal uppercase tracking-[0.08em]">Titer g/L</th><th class="border-b border-line px-2.5 py-1.5 text-left font-normal uppercase tracking-[0.08em]">Viability</th></tr></thead><tbody><tr class="transition-all duration-500 bg-canvas opacity-0" style="transition-delay:0ms"><td class="border-b border-line px-2.5 py-1.5 text-body">Run <!-- -->1</td><td class="border-b border-line px-2.5 py-1.5 text-body">3</td><td class="border-b border-line px-2.5 py-1.5 text-body">6.90</td><td class="border-b border-line px-2.5 py-1.5 text-muted">19.0</td><td class="border-b border-line px-2.5 py-1.5 text-body">3.36</td><td class="border-b border-line px-2.5 py-1.5 text-muted">82<!-- --> %</td></tr><tr class="transition-all duration-500 bg-canvas opacity-0" style="transition-delay:45ms"><td class="border-b border-line px-2.5 py-1.5 text-body">Run <!-- -->2</td><td class="border-b border-line px-2.5 py-1.5 text-body">3</td><td class="border-b border-line px-2.5 py-1.5 text-body">7.10</td><td class="border-b border-line px-2.5 py-1.5 text-muted">19.7</td><td class="border-b border-line px-2.5 py-1.5 text-body">3.45</td><td class="border-b border-line px-2.5 py-1.5 text-muted">81<!-- --> %</td></tr><tr class="transition-all duration-500 bg-canvas opacity-0" style="transition-delay:90ms"><td class="border-b border-line px-2.5 py-1.5 text-body">Run <!-- -->3</td><td class="border-b border-line px-2.5 py-1.5 text-body">
14</td><td class="border-b border-line px-2.5 py-1.5 text-body">7.00</td><td class="border-b border-line px-2.5 py-1.5 text-muted">20.4</td><td class="border-b border-line px-2.5 py-1.5 text-body">3.74</td><td class="border-b border-line px-2.5 py-1.5 text-muted">81<!-- --> %</td></tr><tr class="transition-all duration-500 bg-canvas opacity-0" style="transition-delay:135ms"><td class="border-b border-line px-2.5 py-1.5 text-body">Run <!-- -->4</td><td class="border-b border-line px-2.5 py-1.5 text-body">5</td><td class="border-b border-line px-2.5 py-1.5 text-body">6.95</td><td class="border-b border-line px-2.5 py-1.5 text-muted">21.1</td><td class="border-b border-line px-2.5 py-1.5 text-body">3.84</td><td class="border-b border-line px-2.5 py-1.5 text-muted">80<!-- --> %</td></tr><tr class="transition-all duration-500 bg-signal-500/[0.07] opacity-0" style="transition-delay:180ms"><td class="border-b border-line px-2.5 py-1.5 text-body">Run <!-- -->5</td><td class="border-b border-line px-2.5 py-1.5 text-body">6</td><td class="border-b border-line px-2.5 py-1.5 text-body">7.00</td><td class="border-b border-line px-2.5 py-1.5 text-muted">21.8</td><td class="border-b border-line px-2.5 py-1.5 text-signal-700">3.94</td><td class="border-b border-line px-2.5 py-1.5 text-muted">80<!-- --> %</td></tr><tr class="transition-all duration-500 bg-canvas opacity-0" style="transition-delay:225ms"><td class="border-b border-line px-2.5 py-1.5 text-body">Run <!-- -->6</td><td class="border-b border-line px-2.5 py-1.5 text-body">6</td><td class="border-b border-line px-2.5 py-1.5 text-body">7.20</td><td class="border-b border-line px-2.5 py-1.5 text-muted">22.5</td><td class="border-b border-line px-2.5 py-1.5 text-body">3.59</td><td class="border-b border-line px-2.5 py-1.5 text-muted">79<!-- --> %</td></tr><tr class="transition-all duration-500 bg-canvas opacity-0" style="transition-delay:270ms"><td class="border-b border-line px-2.5 py-1.5 text-body">Run <!-- -->7</td><td class="border-b border-line px-2.5 py-1.5 text-body">7</td><td class="border-b border-line px-2.5 py-1.5 text-body">6.90</td><td class="border-b border-line px-2.5 py-1.5 text-muted">23.2</td><td class="border-b border-line px-2.5 py-1.5 text-body">3.76</td><td class="border-b border-line px-2.5 py-1.5 text-muted">78<!-- --> %</td></tr><tr class="transition-all duration-500 bg-canvas opacity-0" style="transition-delay:315ms"><td class="border-b border-line px-2.5 py-1.5 text-body">Run <!-- -->8</td><td class="border-b border-line px-2.5 py-1.5 text-body">8</td><td class="border-b border-line px-2.5 py-1.5 text-body">7.05</td><td class="border-b border-line px-2.5 py-1.5 text-muted">23.9</td><td class="border-b border-line px-2.5 py-1.5 text-body">3.80</td><td class="border-b border-line px-2.5 py-1.5 text-muted">78<!-- --> %</td></tr><tr class="transition-all duration-500 bg-canvas opacity-0" style="transition-delay:360ms"><td class="border-b border-line px-2.5 py-1.5 text-body">Run <!-- -->9</td><td class="border-b border-line px-2.5 py-1.5 text-body">9</td><td class="border-b border-line px-2.5 py-1.5 text-body">7.00</td><td class="border-b border-line px-2.5 py-1.5 text-muted">24.6</td><td class="border-b border-line px-2.5 py-1.5 text-body">3.62</td><td class="border-b border-line px-2.5 py-1.5 text-muted">77<!-- --> %</td></tr><tr class="transition-all duration-500 bg-canvas opacity-0" style="transition-delay:405ms"><td class="border-b border-line px-2.5 py-1.5 text-body">Run <!-- -->10</td><td class="border-b border-line px-2.5 py-1.5 text-body">9</td><td class="border-b border-line px-2.5 py-1.5 text-body">7.15</td><td class="border-b border-line px-2.5 py-1.5 text-muted">25.3</td><td class="border-b border-line px-2.5 py-1.5 text-body">3.43</td><td class="border-b border-line px-2.5 py-1.5 text-muted">77<!-- --> %</td></tr></tbody></table></div></div></div></div><div class="[grid-area:1/1] transition-opacity duration-300 pointer-events-none opacity-0"><div><div class="flex flex-wrap items-center gap-1 border-b border-line px-5 pt-4"><span class="rounded-t-lg px-3 py-2 text-[0.8125rem] transition-colors text-muted">DoE</span><span class="rounded-t-lg px-3 py-2 text-[0.8125rem] transition-colors text-muted">Material &amp; equipment</span><span class="rounded-t-lg px-3 py-2 text-[0.8125rem] transition-colors text-muted">Procedure</span><span class="rounded-t-lg px-3 py-2 text-[0.8125rem] transition-colors border-b-2 border-signal-500 font-medium text-signal-700">Charts</span><span class="rounded-t-lg px-3 py-2 text-[0.8125rem] transition-colors text-muted">Analysis</span><span class="rounded-t-lg px-3 py-2 text-[0.8125rem] transition-colors text-muted">Notes</span></div><div class="grid gap-4 p-5 lg:grid-cols-2"><div data-step="8" class="rounded-xl border border-line bg-surface p-3"><p class="font-mono text-[0.75rem] uppercase tracking-[0.1em] text-signal-700">Harvest titer over culture duration</p><p class="mt-0.5 font-mono text-[0.6875rem] text-faint">titer g/L · culture day on the x axis</p><svg viewBox="0 0 300 170" class="mx-auto w-full max-w-[22rem]" role="img" aria-label="Harvest titer over culture duration for ten runs"><g><line x1="34" y1="144" x2="290" y2="144" stroke="rgba(10,22,24,0.07)"></line><text x="29" y="147" text-anchor="end" font-size="8" font-family="var(--font-mono)" fill="#8FA1A7">0.0</text></g><g><line x1="34" y1="111" x2="290" y2="111" stroke="rgba(10,22,24,0.07)"></line><text x="29" y="114" text-anchor="end" font-size="8" font-family="var(--font-mono)" fill="#8FA1A7">1.0</text></g><g><line x1="34" y1="78" x2="290" y2="78" stroke="rgba(10,22,24,0.07)"></line><text x="29" y="81" text-anchor="end" font-size="8" font-family="var(--font-mono)" fill="#8FA1A7">2.0</text></g><g><line x1="34" y1="45" x2="290" y2="45" stroke="rgba(10,22,24,0.07)"></line><text x="29" y="48" text-anchor="end" font-size="8" font-family="var(--font-mono)" fill="#8FA1A7">3.0</text></g><g><line x1="34" y1="12" x2="290" y2="12" stroke="rgba(10,22,24,0.07)"></line><text x="29" y="15" text-anchor="end" font-size="8" font-family="var(--font-mono)" fill="#8FA1A7">4.0</text></g><text x="34" y="162" text-anchor="middle" font-size="8" font-family="var(--font-mono)" fill="#8FA1A7">0</text><text x="107.14285714285714" y="162" text-anchor="middle" font-size="8" font-family="var(--font-mono)" fill="#8FA1A7">4</text><text x="180.28571428571428" y="162" text-anchor="middle" font-size="8" font-family="var(--font-mono)" fill="#8FA1A7">8</text><text x="253.42857142857142" y="162" text-anchor="middle" font-size="8" font-family="var(--font-mono)" fill="#8FA1A7">12</text><text x="290" y="162" text-anchor="middle" font-size="8" font-family="var(--font-mono)" fill="#8FA1A7">14</text><polyline points="34,144 70.57142857142857,139.28571428571428 107.14285714285714,134.57142857142858 143.71428571428572,129.85
1714285714286 180.28571428571428,125.14285714285714 216.85714285714286,120.42857142857143 253.42857142857142,115.71428571428572 290,111" fill="none" stroke="#C0392B" stroke-width="1.4" stroke-linecap="round" stroke-dasharray="420" stroke-dashoffset="420" style="transition:stroke-dashoffset 1.1s cubic-bezier(0.16,1,0.3,1) 0ms"></polyline><polyline points="34,144 70.57142857142857,137.96571428571428 107.14285714285714,131.93142857142857 143.71428571428572,125.89714285714285 180.28571428571428,119.86285714285714 216.85714285714286,113.82857142857142 253.42857142857142,107.7942857142857 290,101.75999999999999" fill="none" stroke="#1E8449" stroke-width="1.4" stroke-linecap="round" stroke-dasharray="420" stroke-dashoffset="420" style="transition:stroke-dashoffset 1.1s cubic-bezier(0.16,1,0.3,1) 55ms"></polyline><polyline points="34,144 70.57142857142857,136.6457142857143 107.14285714285714,129.29142857142858 143.71428571428572,121.93714285714286 180.28571428571428,114.58285714285714 216.85714285714286,107.22857142857143 253.42857142857142,99.87428571428572 290,92.52" fill="none" stroke="#6C3483" stroke-width="1.4" stroke-linecap="round" stroke-dasharray="420" stroke-dashoffset="420" style="transition:stroke-dashoffset 1.1s cubic-bezier(0.16,1,0.3,1) 110ms"></polyline><polyline points="34,144 70.57142857142857,135.3257142857143 107.14285714285714,126.65142857142857 143.71428571428572,117.97714285714285 180.28571428571428,109.30285714285714 216.85714285714286,100.62857142857142 253.42857142857142,91.9542857142857 290,83.28" fill="none" stroke="#B7950B" stroke-width="1.4" stroke-linecap="round" stroke-dasharray="420" stroke-dashoffset="420" style="transition:stroke-dashoffset 1.1s cubic-bezier(0.16,1,0.3,1) 165ms"></polyline><polyline points="34,144 70.57142857142857,134.00571428571428 107.14285714285714,124.01142857142857 143.71428571428572,114.01714285714286 180.28571428571428,104.02285714285713 216.85714285714286,94.02857142857142 253.42857142857142,84.03428571428572 290,74.03999999999999" fill="none" stroke="#2E86C1" stroke-width="1.4" stroke-linecap="round" stroke-dasharray="420" stroke-dashoffset="420" style="transition:stroke-dashoffset 1.1s cubic-bezier(0.16,1,0.3,1) 220ms"></polyline><polyline points="34,144 70.57142857142857,132.68571428571428 107.14285714285714,121.37142857142857 143.71428571428572,110.05714285714285 180.28571428571428,98.74285714285713 216.85714285714286,87.42857142857142 253.42857142857142,76.1142857142857 290,64.79999999999997" fill="none" stroke="#C2185B" stroke-width="1.4" stroke-linecap="round" stroke-dasharray="420" stroke-dashoffset="420" style="transition:stroke-dashoffset 1.1s cubic-bezier(0.16,1,0.3,1) 275ms"></polyline><polyline points="34,144 70.57142857142857,131.3657142857143 107.14285714285714,118.73142857142857 143.71428571428572,106.09714285714284 180.28571428571428,93.46285714285713 216.85714285714286,80.82857142857142 253.42857142857142,68.1942857142857 290,55.55999999999999" fill="none" stroke="#58A93B" stroke-width="1.4" stroke-linecap="round" stroke-dasharray="420" stroke-dashoffset="420" style="transition:stroke-dashoffset 1.1s cubic-bezier(0.16,1,0.3,1) 330ms"></polyline><polyline points="34,144 70.57142857142857,130.0457142857143 107.14285714285714,116.09142857142857 143.71428571428572,102.13714285714286 180.28571428571428,88.18285714285713 216.85714285714286,74.22857142857143 253.42857142857142,60.274285714285725 290,46.32000000000001" fill="none" stroke="#283593" stroke-width="1.4" stroke-linecap="round" stroke-dasharray="420" stroke-dashoffset="420" style="transition:stroke-dashoffset 1.1s cubic-bezier(0.16,1,0.3,1) 385ms"></polyline><polyline points="34,144 70.57142857142857,128.72571428571428 107.14285714285714,113.45142857142856 143.71428571428572,98.17714285714285 180.28571428571428,82.90285714285713 216.85714285714286,67.62857142857142 253.42857142857142,52.35428571428571 290,37.08000000000001" fill="none" stroke="#D35400" stroke-width="1.4" stroke-linecap="round" stroke-dasharray="420" stroke-dashoffset="420" style="transition:stroke-dashoffset 1.1s cubic-bezier(0.16,1,0.3,1) 440ms"></polyline><polyline points="34,144 70.57142857142857,127.40571428571428 107.14285714285714,110.81142857142856 143.71428571428572,94.21714285714285 180.28571428571428,77.62285714285714 216.8571428571428
16,61.02857142857141 253.42857142857142,44.43428571428569 290,27.83999999999999" fill="none" stroke="#12A79D" stroke-width="1.4" stroke-linecap="round" stroke-dasharray="420" stroke-dashoffset="420" style="transition:stroke-dashoffset 1.1s cubic-bezier(0.16,1,0.3,1) 495ms"></polyline></svg></div><div data-step="9" class="rounded-xl border border-line bg-surface p-3"><p class="font-mono text-[0.75rem] uppercase tracking-[0.1em] text-signal-700">Online pH over culture duration</p><p class="mt-0.5 font-mono text-[0.6875rem] text-faint">online pH · the shift day is visible per run</p><svg viewBox="0 0 300 170" class="mx-auto w-full max-w-[22rem]" role="img" aria-label="Online pH over culture duration showing shift days"><g><line x1="40" y1="130.7999999999998" x2="290" y2="130.7999999999998" stroke="rgba(10,22,24,0.07)"></line><text x="35" y="133.7999999999998" text-anchor="end" font-size="8" font-family="var(--font-mono)" fill="#8FA1A7">6.90</text></g><g><line x1="40" y1="104.3999999999999" x2="290" y2="104.3999999999999" stroke="rgba(10,22,24,0.07)"></line><text x="35" y="107.3999999999999" text-anchor="end" font-size="8" font-family="var(--font-mono)" fill="#8FA1A7">7.00</text></g><g><line x1="40" y1="78" x2="290" y2="78" stroke="rgba(10,22,24,0.07)"></line><text x="35" y="81" text-anchor="end" font-size="8" font-family="var(--font-mono)" fill="#8FA1A7">7.10</text></g><g><line x1="40" y1="51.59999999999985" x2="290" y2="51.59999999999985" stroke="rgba(10,22,24,0.07)"></line><text x="35" y="54.59999999999985" text-anchor="end" font-size="8" font-family="var(--font-mono)" fill="#8FA1A7">7.20</text></g><g><line x1="40" y1="25.19999999999996" x2="290" y2="25.19999999999996" stroke="rgba(10,22,24,0.07)"></line><text x="35" y="28.19999999999996" text-anchor="end" font-size="8" font-family="var(--font-mono)" fill="#8FA1A7">7.30</text></g><text x="40" y="162" text-anchor="middle" font-size="8" font-family="var(--font-mono)" fill="#8FA1A7">0</text><text x="111.42857142857143" y="162" text-anchor="middle" font-size="8" font-family="var(--font-mono)" fill="#8FA1A7">4</text><text x="182.85714285714286" y="162" text-anchor="middle" font-size="8" font-family="var(--font-mono)" fill="#8FA1A7">8</text><text x="254.28571428571428" y="162" text-anchor="middle" font-size="8" font-family="var(--font-mono)" fill="#8FA1A7">12</text><text x="290" y="162" text-anchor="middle" font-size="8" font-family="var(--font-mono)" fill="#8FA1A7">14</text><polyline points="40,25.19999999999996 93.57142857142857,25.19999999999996 93.57142857142857,51.59999999999985 290,51.59999999999985" fill="none" stroke="#12A79D" stroke-width="1.4" stroke-linejoin="round" stroke-dasharray="500" stroke-dashoffset="500" style="transition:stroke-dashoffset 1.1s cubic-bezier(0.16,1,0.3,1) 0ms"></polyline><polyline points="40,25.19999999999996 111.42857142857143,25.19999999999996 111.42857142857143,78 290,78" fill="none" stroke="#2E86C1" stroke-width="1.4" stroke-linejoin="round" stroke-dasharray="500" stroke-dashoffset="500" style="transition:stroke-dashoffset 1.1s cubic-bezier(0.16,1,0.3,1) 90ms"></polyline><polyline points="40,25.19999999999996 111.42857142857143,25.19999999999996 111.42857142857143,130.7999999999998 290,130.7999999999998" fill="none" stroke="#1E8449" stroke-width="1.4" stroke-linejoin="round" stroke-dasharray="500" stroke-dashoffset="500" style="transition:stroke-dashoffset 1.1s cubic-bezier(0.16,1,0.3,1) 180ms"></polyline><polyline points="40,25.19999999999996 182.85714285714286,25.19999999999996 182.85714285714286,130.7999999999998 290,130.7999999999998" fill="none" stroke="#B7950B" stroke-width="1.4" stroke-linejoin="round" stroke-dasharray="500" stroke-dashoffset="500" style="transition:stroke-dashoffset 1.1s cubic-bezier(0.16,1,0.3,1) 270ms"></polyline><polyline points="40,25.19999999999996 182.85714285714286,25.19999999999996 182.85714285714286,78 290,78" fill="none" stroke="#283593" stroke-width="1.4" stroke-linejoin="round" stroke-dasharray="500" stroke-dashoffset="500" style="transition:stroke-dashoffset 1.1s cubic-bezier(0.16,1,0.3,1) 360ms"></polyline></svg></div><div data-step="10" class="rounded-xl border border-line bg-surface p-3"><p class="font-mono text-[0.75rem] uppercase tracking-[0.1em] text-signal-700">Viable cell density and viability</p><p class="mt-0.5 font-mono text-[0.6875rem] text-faint">median with the spread across all ten runs · viability dashed</p><svg viewBox="0 0 300 170" class="mx-auto w-full max-w-[22rem]" role="img" aria-label="Viable cell density and viability over culture duration, with the spread across ten runs"><g><line x1="32" y1="144" x2="272" y2="144" stroke="rgba(10,22,24,0.07)"></line><text x="28" y="147" text-anchor="end" font-size="7.5" font-family="var(--font-mono)" fill="#8FA1A7">0</text></g><g><line x1="32" y1="100" x2="272" y2="100" stroke="rgba(10,22,24,0.07)"></line><text x="28" y="103" text-anchor="end" font-size="7.5" font-family="var(--font-mono)" fill="#8FA1A7">10</text></g><g><line x1="32" y1="56" x2="272" y2="56" stroke="rgba(10,22,24,0.07)"></line><text x="28" y="59" text-anchor="end" font-size="7.5" font-family="var(--font-mono)" fill="#8FA1A7">20</text></g><g><line x1="32" y1="12" x2="272" y2="12" stroke="rgba(10,22,24,0.07)"></line><text x="28" y="15" text-anchor="end" font-size="7.5" font-family="var(--font-mono)" fill="#8FA1A7">30</text></g><text x="276" y="147" font-size="7.5" font-family="var(--font-mono)" fill="#C4611A">60</text><text x="276" y="81" font-size="7.5" font-family="var(--font-mono)" fill="#C4611A">80</text><text x="276" y="15" font-size="7.5" font-family="var(--font-mono)" fill="#C4611A">100</text><text x="32" y="162" text-anchor="middle" font-size="7.5" font-family="var(--font-mono)" fill="#8FA1A7">0</text><text x="100.57142857142857" y="162" text-anchor="middle" font-size="7.5" font-family="var(--font-mono)" fill="#8FA1A7">4</text><text x="169.14285714285714" y="162" text-anchor="middle" font-size="7.5" font-family="var(--font-mono)" fill="#8FA1A7">8</text><text x="237.7142857142857" y="162" text-anchor="middle" font-size="7.5" font-family="var(--font-mono)" fill="#8FA1A7">12</text><text x="272" y="162" text-anchor="middle" font-size="7.5" font-family="var(--font-mono)" fill="#8FA1A7">14</text><polygon points="32.0,141.9 49.1,138.6 66.3,131.9 83.4,119.8 100.6,101.0 117.7,76.0 134.9,48.3 152.0,24.4 169.1,11.0 186.3,12.6 203.4,28.5 220.6,53.8 237.7,81.4 254.9,105.3 272.0,122.8 272.0,128.2 254.9,115.3 237.7,97.4 220.6,76.9 203.4,58.2 186.3,46.3 169.1,45.1 152.0,55.1 134.9,72.9 117.7,93.4 100.6,112.0 83.4,126.0 66.3,135.0 49.1,140.0 32.0,142.4" fill="rgba(0,150,136,0.16)" style="opacity:0;transition:opacity 0.9s ease"></polygon><polyline points="32.0,142.1 49.1,139.3 66.3,133.3 83.4,122.6 100.6,106.0 117.7,83.8 134.9,59.3 152.0,38.1 169.1,26.3 186.3,27.7 203.4,41.8 220.6,64.2 237.7,88.6 254.9,109.8 272.0,125.2" fill="none" stroke="#009688" stroke-width="1.6" stroke-linecap="round" stroke-dasharray="420" stroke-dashoffset="420" style="transition:stroke-dashoffset 1.2s cubic-bezier(0.16,1,0.3,1)"></polyline><polyline points="32.0,20.3 49.1,21.4 66.3,22.6 83.4,23.7 100.6,24.9 11
17.7,26.0 134.9,27.2 152.0,28.3 169.1,38.7 186.3,62.9 203.4,98.5 220.6,144.2 237.7,199.5 254.9,263.8 272.0,336.7" fill="none" stroke="#DE7C2E" stroke-width="1.4" stroke-dasharray="3 2.5" stroke-linecap="round" style="opacity:0;transition:opacity 0.9s ease 0.4s"></polyline></svg></div><div data-step="12" class="rounded-xl border border-line bg-surface p-3"><p class="font-mono text-[0.75rem] uppercase tracking-[0.1em] text-signal-700">Titer across the two factors the study varied</p><p class="mt-0.5 font-mono text-[0.6875rem] text-faint">shift day on the x axis · pH setpoint on the y axis</p><svg viewBox="0 0 300 170" class="mx-auto w-full max-w-[22rem]" role="img" aria-label="Predicted titer across temperature shift day and pH setpoint, with the ten run conditions marked"><rect x="32" y="134.57142857142856" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 0ms"></rect><rect x="44.9" y="134.57142857142856" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 9ms"></rect><rect x="57.8" y="134.57142857142856" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 18ms"></rect><rect x="70.7" y="134.57142857142856" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 27ms"></rect><rect x="83.6" y="134.57142857142856" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 36ms"></rect><rect x="96.5" y="134.57142857142856" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 45ms"></rect><rect x="109.4" y="134.57142857142856" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 54ms"></rect><rect x="122.3" y="134.57142857142856" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 63ms"></rect><rect x="135.2" y="134.57142857142856" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 72ms"></rect><rect x="148.10000000000002" y="134.57142857142856" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 81ms"></rect><rect x="161" y="134.57142857142856" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 90ms"></rect><rect x="173.9" y="134.57142857142856" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 99ms"></rect><rect x="186.8" y="134.57142857142856" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 108ms"></rect><rect x="199.70000000000002" y="134.57142857142856" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 117ms"></rect><rect x="212.6" y="134.57142857142856" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 126ms"></rect><rect x="225.5" y="134.57142857142856" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 135ms"></rect><rect x="238.4" y="134.57142857142856" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 144ms"></rect><rect x="251.3" y="134.57142857142856" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 153ms"></rect><rect x="264.20000000000005" y="134.57142857142856" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 162ms"></rect><rect x="277.1" y="134.57142857142856" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 171ms"></rect><rect x="32" y="125.14285714285714" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 9ms"></rect><rect x="44.9" y="125.14285714285714" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 18ms"></rect><rect x="57.8" y="125.14285714285714" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 27ms"></rect><rect x="70.7" y="125.14285714285714" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 36ms"></rect><rect x="83.6" y="125.14285714285714" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 45ms"></rect><rect x="96.5" y="125.14285714285714" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 54ms"></rect><rect x="109.4" y="125.14285714285714" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 63ms"></rect><rect x="122.3" y="125.14285714285714" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 72ms"></rect><rect x="135.2" y="125.14285714285714" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 81ms"></rect><rect x="148.10000000000002" y="125.14285714285714" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 90ms"></rect><rect x="161" y="125.14285714285714" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 99ms"></rect><rect x="173.9" y="125.14285714285714" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 108ms"></rect><rect x="186.8" y="125.14285714285714" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 117ms"></rect><rect x="199.70000000000002" y="125.14285714285714" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 126ms"></rect><rect x="212.6" y="125.14285714285714" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 135ms"></rect><rect x="225.5" y="125.14285714285714" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 144ms"></rect><rect x="238.4" y="125.14285714285714" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 153ms"></rect><rect x="251.3" y="125.14285714285714" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 162ms"></rect><rect x="264.20000000000005" y="125.14285714285714" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 171ms"></rect><rect x="277.1" y="125.14285714285714" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 180ms"></rect><rect x="32" y="115.71428571428572" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 18ms"></rect><rect x="44.9" y="115.71428571428572" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 27ms"></rect><rect x="57.8" y="115.71428571428572" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 36ms"></rect><rect x="70.7" y="115.71428571428572" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 45ms"></rect><rect x="83.6" y="115.71428571428572" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 54ms"></rect><rect x="96.5" y="115.71428571428572" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 63ms"></rect><rect x="109.4" y="115.71428571428572" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 72ms"></rect><rect x="122.3" y="115.71428571428572" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 81ms"></rect><rect x="135.2" y="115.71428571428572" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 90ms"></rect><rect x="148.10000000000002" y="115.71428571428572" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 99ms"></rect><rect x="161" y="115.71428571428572" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 108ms"></rect><rect x="173.9" y="115.71428571428572" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 117ms"></rect><rect x="186.8" y="115.71428571428572" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 126ms"></rect><rect x="199.70000000000002" y="115.71428571428572" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 135ms"></rect><rect x="212.6" y="115.71428571428572" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 144ms"></rect><rect x="225.5" y="115.71428571428572" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 153ms"></rect><rect x="238.4" y="115.71428571428572" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 162ms"></rect><rect x="251.3" y="115.71428571428572" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 171ms"></rect><rect x="264.20000000000005" y="115.71428571428572" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 180ms"></rect><rect x="277.1" y="115.71428571428572" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 189ms"></rect><rect x="32" y="106.28571428571429" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 27ms"></rect><rect x="44.9" y="106.28571428571429" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 36ms"></rect><rect x="57.8" y="106.28571428571429" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 45ms"></rect><rect x="70.7" y="106.28571428571429" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 54ms"></rect><rect x="83.6" y="106.28571428571429" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 63ms"></rect><rect x="96.5" y="106.28571428571429" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 72ms"></rect><rect x="109.4" y="106.28571428571429" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 81ms"></rect><rect x="122.3" y="106.28571428571429" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 90ms"></rect><rect x="135.2" y="106.28571428571429" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 99ms"></rect><rect x="148.10000000000002" y="106.28571428571429" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 108ms"></rect><rect x="161" y="106.28571428571429" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 117ms"></rect><rect x="173.9" y="106.28571428571429" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 126ms"></rect><rect x="186.8" y="106.28571428571429" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 135ms"></rect><rect x="199.70000000000002" y="106.28571428571429" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 144ms"></rect><rect x="212.6" y="106.28571428571429" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 153ms"></rect><rect x="225.5" y="106.28571428571429" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 162ms"></rect><rect x="238.4" y="106.28571428571429" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 171ms"></rect><rect x="251.3" y="106.28571428571429" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 180ms"></rect><rect x="264.20000000000005" y="106.28571428571429" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 189ms"></rect><rect x="277.1" y="106.28571428571429" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 198ms"></rect>
1<rect x="32" y="96.85714285714286" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 36ms"></rect><rect x="44.9" y="96.85714285714286" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 45ms"></rect><rect x="57.8" y="96.85714285714286" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 54ms"></rect><rect x="70.7" y="96.85714285714286" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 63ms"></rect><rect x="83.6" y="96.85714285714286" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 72ms"></rect><rect x="96.5" y="96.85714285714286" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 81ms"></rect><rect x="109.4" y="96.85714285714286" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 90ms"></rect><rect x="122.3" y="96.85714285714286" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 99ms"></rect><rect x="135.2" y="96.85714285714286" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 108ms"></rect><rect x="148.10000000000002" y="96.85714285714286" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 117ms"></rect><rect x="161" y="96.85714285714286" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 126ms"></rect><rect x="173.9" y="96.85714285714286" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 135ms"></rect><rect x="186.8" y="96.85714285714286" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 144ms"></rect><rect x="199.70000000000002" y="96.85714285714286" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 153ms"></rect><rect x="212.6" y="96.85714285714286" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 162ms"></rect><rect x="225.5" y="96.85714285714286" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 171ms"></rect><rect x="238.4" y="96.85714285714286" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 180ms"></rect><rect x="251.3" y="96.85714285714286" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 189ms"></rect><rect x="264.20000000000005" y="96.85714285714286" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 198ms"></rect><rect x="277.1" y="96.85714285714286" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 207ms"></rect><rect x="32" y="87.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 45ms"></rect><rect x="44.9" y="87.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 54ms"></rect><rect x="57.8" y="87.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 63ms"></rect><rect x="70.7" y="87.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 72ms"></rect><rect x="83.6" y="87.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 81ms"></rect><rect x="96.5" y="87.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 90ms"></rect><rect x="109.4" y="87.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 99ms"></rect><rect x="122.3" y="87.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 108ms"></rect><rect x="135.2" y="87.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 117ms"></rect><rect x="148.10000000000002" y="87.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 126ms"></rect><rect x="161" y="87.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 135ms"></rect><rect x="173.9" y="87.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 144ms"></rect><rect x="186.8" y="87.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 153ms"></rect><rect x="199.70000000000002" y="87.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 162ms"></rect><rect x="212.6" y="87.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 171ms"></rect><rect x="225.5" y="87.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 180ms"></rect><rect x="238.4" y="87.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 189ms"></rect><rect x="251.3" y="87.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 198ms"></rect><rect x="264.20000000000005" y="87.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 207ms"></rect><rect x="277.1" y="87.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 216ms"></rect><rect x="32" y="78" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 54ms"></rect><rect x="44.9" y="78" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 63ms"></rect><rect x="57.8" y="78" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 72ms"></rect><rect x="70.7" y="78" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 81ms"></rect><rect x="83.6" y="78" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 90ms"></rect><rect x="96.5" y="78" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 99ms"></rect><rect x="109.4" y="78" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 108ms"></rect><rect x="122.3" y="78" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 117ms"></rect><rect x="135.2" y="78" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 126ms"></rect><rect x="148.10000000000002" y="78" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 135ms"></rect><rect x="161" y="78" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 144ms"></rect><rect x="173.9" y="78" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 153ms"></rect><rect x="186.8" y="78" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 162ms"></rect><rect x="199.70000000000002" y="78" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 171ms"></rect><rect x="212.6" y="78" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 180ms"></rect><rect x="225.5" y="78" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 189ms"></rect><rect x="238.4" y="78" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 198ms"></rect><rect x="251.3" y="78" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 207ms"></rect><rect x="264.20000000000005" y="78" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 216ms"></rect><rect x="277.1" y="78" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 225ms"></rect><rect x="32" y="68.57142857142857" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 63ms"></rect><rect x="44.9" y="68.57142857142857" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 72ms"></rect><rect x="57.8" y="68.57142857142857" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 81ms"></rect><rect x="70.7" y="68.57142857142857" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 90ms"></rect><rect x="83.6" y="68.57142857142857" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 99ms"></rect><rect x="96.5" y="68.57142857142857" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 108ms"></rect><rect x="109.4" y="68.57142857142857" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 117ms"></rect><rect x="122.3" y="68.57142857142857" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 126ms"></rect><rect x="135.2" y="68.57142857142857" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 135ms"></rect><rect x="148.10000000000002" y="68.57142857142857" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 144ms"></rect><rect x="161" y="68.57142857142857" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 153ms"></rect><rect x="173.9" y="68.57142857142857" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 162ms"></rect><rect x="186.8" y="68.57142857142857" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 171ms"></rect><rect x="199.70000000000002" y="68.57142857142857" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 180ms"></rect><rect x="212.6" y="68.57142857142857" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 189ms"></rect><rect x="225.5" y="68.57142857142857" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 198ms"></rect><rect x="238.4" y="68.57142857142857" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 207ms"></rect><rect x="251.3" y="68.57142857142857" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 216ms"></rect><rect x="264.20000000000005" y="68.57142857142857" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 225ms"></rect><rect x="277.1" y="68.57142857142857" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 234ms"></rect><rect x="32" y="59.142857142857146" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 72ms"></rect><rect x="44.9" y="59.142857142857146" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 81ms"></rect><rect x="57.8" y="59.142857142857146" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 90ms"></rect><rect x="70.7" y="59.142857142857146" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 99ms"></rect><rect x="83.6" y="59.142857142857146" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 108ms"></rect><rect x="96.5" y="59.142857142857146" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 117ms"></rect><rect x="109.4" y="59.142857142857146" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 126ms"></rect><rect x="122.3" y="59.142857142857146" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 135ms"></rect><rect x="135.2" y="59.142857142857146" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 144ms"></rect><rect x="148.10000000000002" y="59.142857142857146" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 153ms"></rect><rect x="161" y="59.142857142857146" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 162ms"></rect><rect x="173.9" y="59.142857142857146" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 171ms"></rect><rect x="186.8" y="59.142857142857146" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 180ms"></rect><rect x="199.70000000000002" y="59.142857142857146" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 189ms"></rect><rect x="212.6" y="59.142857142857146" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 198ms"></rect><rect x="225.5" y="59.142857142857146" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 207ms"></rect><rect x="238.4" y="59.142857142857146" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 216ms"></rect><rect x="251.3" y="59.142857142857146" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 225ms"></rect><rect x="264.20000000000005" y="59.142857142857146" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 234ms"></rect><rect x="277.1" y="59.142857142857146" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 243ms"></rect><rect x="32" y="49.714285714285715" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 81ms"></rect><rect x="44.9" y="49.714285714285715" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 90ms"></rect><rect x="57.8" y="49.714285714285715" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 99ms"></rect><rect x="70.7" y="49.714285714285715" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 108ms"></rect><rect x="83.6" y="49.714285714285715" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 117ms"></rect><rect x="96.5" y="49.714285714285715" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 126ms"></rect><rect x="109.4" y="49.714285714285715" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 135ms"></rect><rect x="122.3" y="49.714285714285715" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 144ms"></rect><rect x="135.2" y="49.714285714285715" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ea
1se 153ms"></rect><rect x="148.10000000000002" y="49.714285714285715" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 162ms"></rect><rect x="161" y="49.714285714285715" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 171ms"></rect><rect x="173.9" y="49.714285714285715" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 180ms"></rect><rect x="186.8" y="49.714285714285715" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 189ms"></rect><rect x="199.70000000000002" y="49.714285714285715" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 198ms"></rect><rect x="212.6" y="49.714285714285715" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 207ms"></rect><rect x="225.5" y="49.714285714285715" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 216ms"></rect><rect x="238.4" y="49.714285714285715" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 225ms"></rect><rect x="251.3" y="49.714285714285715" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 234ms"></rect><rect x="264.20000000000005" y="49.714285714285715" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 243ms"></rect><rect x="277.1" y="49.714285714285715" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 252ms"></rect><rect x="32" y="40.285714285714285" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 90ms"></rect><rect x="44.9" y="40.285714285714285" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 99ms"></rect><rect x="57.8" y="40.285714285714285" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 108ms"></rect><rect x="70.7" y="40.285714285714285" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 117ms"></rect><rect x="83.6" y="40.285714285714285" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 126ms"></rect><rect x="96.5" y="40.285714285714285" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 135ms"></rect><rect x="109.4" y="40.285714285714285" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 144ms"></rect><rect x="122.3" y="40.285714285714285" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 153ms"></rect><rect x="135.2" y="40.285714285714285" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 162ms"></rect><rect x="148.10000000000002" y="40.285714285714285" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 171ms"></rect><rect x="161" y="40.285714285714285" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 180ms"></rect><rect x="173.9" y="40.285714285714285" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 189ms"></rect><rect x="186.8" y="40.285714285714285" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 198ms"></rect><rect x="199.70000000000002" y="40.285714285714285" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 207ms"></rect><rect x="212.6" y="40.285714285714285" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 216ms"></rect><rect x="225.5" y="40.285714285714285" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 225ms"></rect><rect x="238.4" y="40.285714285714285" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 234ms"></rect><rect x="251.3" y="40.285714285714285" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 243ms"></rect><rect x="264.20000000000005" y="40.285714285714285" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 252ms"></rect><rect x="277.1" y="40.285714285714285" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 261ms"></rect><rect x="32" y="30.857142857142858" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 99ms"></rect><rect x="44.9" y="30.857142857142858" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 108ms"></rect><rect x="57.8" y="30.857142857142858" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 117ms"></rect><rect x="70.7" y="30.857142857142858" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 126ms"></rect><rect x="83.6" y="30.857142857142858" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 135ms"></rect><rect x="96.5" y="30.857142857142858" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 144ms"></rect><rect x="109.4" y="30.857142857142858" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 153ms"></rect><rect x="122.3" y="30.857142857142858" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 162ms"></rect><rect x="135.2" y="30.857142857142858" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 171ms"></rect><rect x="148.10000000000002" y="30.857142857142858" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 180ms"></rect><rect x="161" y="30.857142857142858" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 189ms"></rect><rect x="173.9" y="30.857142857142858" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 198ms"></rect><rect x="186.8" y="30.857142857142858" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 207ms"></rect><rect x="199.70000000000002" y="30.857142857142858" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 216ms"></rect><rect x="212.6" y="30.857142857142858" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 225ms"></rect><rect x="225.5" y="30.857142857142858" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 234ms"></rect><rect x="238.4" y="30.857142857142858" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 243ms"></rect><rect x="251.3" y="30.857142857142858" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 252ms"></rect><rect x="264.20000000000005" y="30.857142857142858" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 261ms"></rect><rect x="277.1" y="30.857142857142858" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 270ms"></rect><rect x="32" y="21.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 108ms"></rect><rect x="44.9" y="21.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 117ms"></rect><rect x="57.8" y="21.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 126ms"></rect><rect x="70.7" y="21.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 135ms"></rect><rect x="83.6" y="21.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 144ms"></rect><rect x="96.5" y="21.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 153ms"></rect><rect x="109.4" y="21.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 162ms"></rect><rect x="122.3" y="21.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 171ms"></rect><rect x="135.2" y="21.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 180ms"></rect><rect x="148.10000000000002" y="21.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 189ms"></rect><rect x="161" y="21.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 198ms"></rect><rect x="173.9" y="21.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 207ms"></rect><rect x="186.8" y="21.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 216ms"></rect><rect x="199.70000000000002" y="21.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 225ms"></rect><rect x="212.6" y="21.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 234ms"></rect><rect x="225.5" y="21.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 243ms"></rect><rect x="238.4" y="21.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 252ms"></rect><rect x="251.3" y="21.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 261ms"></rect><rect x="264.20000000000005" y="21.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 270ms"></rect><rect x="277.1" y="21.42857142857143" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 279ms"></rect><rect x="32" y="12" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 117ms"></rect><rect x="44.9" y="12" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 126ms"></rect><rect x="57.8" y="12" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 135ms"></rect><rect x="70.7" y="12" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 144ms"></rect><rect x="83.6" y="12" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 153ms"></rect><rect x="96.5" y="12" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 162ms"></rect><rect x="109.4" y="12" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 171ms"></rect><rect x="122.3" y="12" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 180ms"></rect><rect x="135.2" y="12" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 189ms"></rect><rect x="148.10000000000002" y="12" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 198ms"></rect><rect x="161" y="12" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 207ms"></rect><rect x="173.9" y="12" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 216ms"></rect><rect x="186.8" y="12" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 225ms"></rect><rect x="199.70000000000002" y="12" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 234ms"></rect><rect x="212.6" y="12" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 243ms"></rect><rect x="225.5" y="12" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 252ms"></rect><rect x="238.4" y="12" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 261ms"></rect><rect x="251.3" y="12" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 270ms"></rect><rect x="264.20000000000005" y="12" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 279ms"></rect><rect x="277.1" y="12" width="13.3" height="9.82857142857143" fill="#009688" style="opacity:0;transition:opacity 0.5s ease 288ms"></rect><text x="64.25" y="162" text-anchor="middle" font-size="7.5" font-family="var(--font-mono)" fill="#8FA1A7">3</text><text x="128.75" y="162" text-anchor="middle" font-size="7.5" font-family="var(--font-mono)" fill="#8FA1A7">5</text><text x="193.25" y="162" text-anchor="middle" font-size="7.5" font-family="var(--font-mono)" fill="#8FA1A7">7</text><text x="257.75" y="162" text-anchor="middle" font-size="7.5" font-family="var(--font-mono)" fill="#8FA1A7">9</text><text x="28" y="130.49999999999977" text-anchor="end" font-size="7.5" font-family="var(--font-mono)" fill="#8FA1A7">6.90</text><text x="28" y="97.49999999999993" text-anchor="end" font-size="7.5" font-family="var(--font-mono)" fill="#8FA1A7">7.00</text><text x="28" y="64.50000000000007" text-anchor="end" font-size="7.5" font-family="var(--font-mono)" fill="#8FA1A7">7.10</text><text x="28" y="31.49999999999993" text-anchor="end" font-size="7.5" font-family="var(--font-mono)" fill="#8FA1A7">7.20</text><circle cx="64.25" cy="127.49999999999977" r="2.2" fill="none" stroke="#0A1618" stroke-width="1" stroke-opacity="0.55" style="opacity:0;transition:opacity 0.4s ease 300ms"></circle><circle cx="64.25" cy="61.50000000000007" r="2.2" fill="none" stroke="#0A1618" stroke-width="1" stroke-opacity="0.55" style="opacity:0;transition:opacity 0.4s ease 345ms"></circle><circle cx="96.5" cy="94.49999999999993" r="2.2" fill="none" stroke="#0A1618" stroke-width="1" stroke-opacity="0.55" style="opacity:0;transition:opacity 0.4s ease 390ms"></circle><circle cx="128.75" cy="110.99999999999986" r="2.2" fill="none" stroke="#0A1618" stroke-width="1" stroke-opacity="0.55" style="opacity:0;transition:opacity 0.4s ease 435ms"></circle><circle cx="161" cy="94.49999999999993" r="2.2" fill="none" stroke="#0A1618" stroke-width="1" stroke-opacity="0.55" style="opacity:0;transition:opacity 0.4s ease 480ms"></circle><circle cx="161" cy="28.49999999999993" r="2.2" fill="none" stroke="#0A1618" stroke-width="1" stroke-opacity="0.55" style="opacity:0;transition:opacity 0.4s ease 525ms"></circle><circle cx="193.25" cy="127.49999999999977" r="2.2" fill="none" stroke="#0A1618" stroke-width="1" stroke-opacity="0.55" style="opacity:0;transition:opacity 0.4s ease 570ms"></circle><circle cx="225.5" cy="78" r="2.2" fill="none" stroke="#0A1618" stroke-width="1" stroke-opacity="0.55" style="opacity:0;transition:opacity 0.4s ease 615ms"></circle><circle cx="257.75" cy="94.49999999999993" r="2.2" fill="none" stroke="#0A1618" stroke-width="1" stroke-opacity="0.55" style="opacity:0;transition:opacity 0.4s ease 660ms"></circle><circle cx="257.75" cy="44.99999999999986" r="2.2" fill="non
1e" stroke="#0A1618" stroke-width="1" stroke-opacity="0.55" style="opacity:0;transition:opacity 0.4s ease 705ms"></circle><g style="opacity:0;transition:opacity 0.5s ease 0.9s"><circle cx="167.45000000000002" cy="87.90000000000008" r="3.4" fill="none" stroke="#DE7C2E" stroke-width="1.5"></circle><text x="173.45000000000002" y="83.90000000000008" font-size="7.5" font-family="var(--font-mono)" fill="#C4611A">best predicted</text></g></svg></div><p class="rounded-xl border border-line bg-surface px-4 py-3 text-[0.875rem] leading-relaxed text-muted transition-opacity duration-700 lg:col-span-2 opacity-0">Ten runs, plotted from the data the operators recorded. Nothing was re-keyed to get here, and the same numbers feed the study report.</p></div></div></div><div class="[grid-area:1/1] transition-opacity duration-300 pointer-events-none opacity-0"><div><div class="flex flex-wrap items-center gap-1 border-b border-line px-5 pt-4"><span class="rounded-t-lg px-3 py-2 text-[0.8125rem] transition-colors text-muted">DoE</span><span class="rounded-t-lg px-3 py-2 text-[0.8125rem] transition-colors text-muted">Material &amp; equipment</span><span class="rounded-t-lg px-3 py-2 text-[0.8125rem] transition-colors text-muted">Procedure</span><span class="rounded-t-lg px-3 py-2 text-[0.8125rem] transition-colors text-muted">Charts</span><span class="rounded-t-lg px-3 py-2 text-[0.8125rem] transition-colors border-b-2 border-signal-500 font-medium text-signal-700">Analysis</span><span class="rounded-t-lg px-3 py-2 text-[0.8125rem] transition-colors text-muted">Notes</span></div><div class="p-5"><div class="flex flex-wrap items-center gap-1.5"><span class="rounded-lg px-3 py-1.5 text-[0.8125rem] text-muted">Analysis design table</span><span class="rounded-lg px-3 py-1.5 text-[0.8125rem] bg-signal-50 font-medium text-signal-700 ring-1 ring-inset ring-signal-500/30">Process analytics</span><span class="rounded-lg px-3 py-1.5 text-[0.8125rem] text-muted">Recommendations</span><span class="rounded-lg px-3 py-1.5 text-[0.8125rem] text-muted">Models</span></div><div class="mt-3 flex items-center gap-4 border-b border-line pb-2"><span class="text-[0.8125rem] text-muted">Heatmap</span><span class="text-[0.8125rem] border-b-2 border-signal-500 pb-1.5 font-medium text-signal-700">PCA</span><span class="text-[0.8125rem] text-muted">RSM</span><span class="ml-auto font-mono text-[0.8125rem] text-heading">Cumulative variance <!-- -->…</span></div><p class="mt-3 text-[0.875rem] leading-relaxed text-muted">Principal component analysis shows how the runs cluster. Draw a region on the plot and the platform turns it into recommended ranges.</p><div class="mt-3 rounded-xl border border-line bg-surface p-3"><svg viewBox="0 0 320 200" class="mx-auto w-full max-w-[32rem]" role="img" aria-label="Principal component analysis of the ten runs"><line x1="34" y1="166" x2="310" y2="166" stroke="rgba(10,22,24,0.2)"></line><line x1="34" y1="12" x2="34" y2="166" stroke="rgba(10,22,24,0.2)"></line><text x="310" y="182" text-anchor="end" font-size="8.5" font-family="var(--font-mono)" fill="#5D7078">PCA 1</text><text x="26" y="18" text-anchor="end" font-size="8.5" font-family="var(--font-mono)" fill="#5D7078">PCA 2</text><g opacity="0" style="transition:opacity 0.4s ease 0ms"><circle cx="61.2" cy="141.68" r="4.5" fill="#2E86C1" opacity="0.85"></circle><text x="68.2" y="144.68" font-size="7.5" font-family="var(--font-mono)" fill="#5D7078">Run 1</text></g><g opacity="0" style="transition:opacity 0.4s ease 60ms"><circle cx="104.72" cy="135.6" r="4.5" fill="#1E8449" opacity="0.85"></circle><text x="111.72" y="138.6" font-size="7.5" font-family="var(--font-mono)" fill="#5D7078">Run 2</text></g><g opacity="0" style="transition:opacity 0.4s ease 120ms"><circle cx="88.4" cy="23.120000000000005" r="4.5" fill="#58A93B" opacity="0.85"></circle><text x="95.4" y="26.120000000000005" font-size="7.5" font-family="var(--font-mono)" fill="#5D7078">Run 3</text></g><g opacity="0" style="transition:opacity 0.4s ease 180ms"><circle cx="99.28" cy="14" r="4.5" fill="#12A79D" opacity="0.85"></circle><text x="106.28" y="17" font-size="7.5" font-family="var(--font-mono)" fill="#5D7078">Run 4</text></g><g opacity="0" style="transition:opacity 0.4s ease 240ms"><circle cx="170" cy="79.35999999999999" r="4.5" fill="#6C3483" opacity="0.85"></circle><text x="177" y="82.35999999999999" font-size="7.5" font-family="var(--font-mono)" fill="#5D7078">Run 5</text></g><g opacity="0" style="transition:opacity 0.4s ease 300ms"><circle cx="213.51999999999998" cy="94.56" r="4.5" fill="#1E8449" opacity="0.85"></circle><text x="220.51999999999998" y="97.56" font-size="7.5" font-family="var(--font-mono)" fill="#5D7078">Run 6</text></g><g opacity="0" style="transition:opacity 0.4s ease 360ms"><circle cx="262.48" cy="68.72" r="4.5" fill="#B7950B" opacity="0.85"></circle><text x="269.48" y="71.72" font-size="7.5" font-family="var(--font-mono)" fill="#5D7078">Run 7</text></g><g opacity="0" style="transition:opacity 0.4s ease 420ms"><circle cx="273.36" cy="90" r="4.5" fill="#58A93B" opacity="0.85"></circle><text x="280.36" y="93" font-size="7.5" font-family="var(--font-mono)" fill="#5D7078">Run 8</text></g><g opacity="0" style="transition:opacity 0.4s ease 480ms"><circle cx="175.44" cy="131.04000000000002" r="4.5" fill="#2E86C1" opacity="0.85"></circle><text x="182.44" y="134.04000000000002" font-size="7.5" font-family="var(--font-mono)" fill="#5D7078">Run 9</text></g><g opacity="0" style="transition:opacity 0.4s ease 540ms"><circle cx="229.84" cy="118.88" r="4.5" fill="#6C3483" opacity="0.85"></circle>
1<text x="236.84" y="121.88" font-size="7.5" font-family="var(--font-mono)" fill="#5D7078">Run 10</text></g></svg></div></div></div></div><div class="[grid-area:1/1] transition-opacity duration-300 pointer-events-none opacity-0"><div class="p-5"><div data-step="16"><p class="font-mono text-[0.75rem] uppercase tracking-[0.1em] text-cortex-500">What the data says</p><ul class="mt-2.5 flex flex-col gap-1.5"><li class="flex items-start gap-2.5 rounded-lg border border-line bg-surface px-3 py-2 transition-all duration-500 translate-y-2 opacity-0" style="transition-delay:0ms"><span class="mt-1.5 h-1.5 w-1.5 shrink-0 rounded-full bg-cortex-500"></span><span class="min-w-0"><span class="block text-[0.875rem] leading-snug text-body">Shift day and pH setpoint together explain most of the spread in titer</span><span class="mt-0.5 block font-mono text-[0.6875rem] text-faint">10 runs · response surface</span></span></li><li class="flex items-start gap-2.5 rounded-lg border border-line bg-surface px-3 py-2 transition-all duration-500 translate-y-2 opacity-0" style="transition-delay:90ms"><span class="mt-1.5 h-1.5 w-1.5 shrink-0 rounded-full bg-cortex-500"></span><span class="min-w-0"><span class="block text-[0.875rem] leading-snug text-body">The best predicted condition is a day-6 shift with pH held at 7.00</span><span class="mt-0.5 block font-mono text-[0.6875rem] text-faint">Runs 5, 8 · 3.94 and 3.84 g/L</span></span></li><li class="flex items-start gap-2.5 rounded-lg border border-line bg-surface px-3 py-2 transition-all duration-500 translate-y-2 opacity-0" style="transition-delay:180ms"><span class="mt-1.5 h-1.5 w-1.5 shrink-0 rounded-full bg-cortex-500"></span><span class="min-w-0"><span class="block text-[0.875rem] leading-snug text-body">Past day 8 the gain is given back through viability at harvest</span><span class="mt-0.5 block font-mono text-[0.6875rem] text-faint">Runs 9, 10 · viability 77 and 76 %</span></span></li></ul></div><div data-step="17" class="mt-4"><p class="font-mono text-[0.75rem] uppercase tracking-[0.1em] text-signal-700">Recommended next steps</p><ul class="mt-2.5 flex flex-col gap-1.5"><li class="flex items-start gap-3 rounded-xl border border-signal-500/25 bg-signal-500/[0.06] px-3.5 py-2.5 transition-all duration-500 translate-y-2 opacity-0" style="transition-delay:0ms"><span class="mt-[1px] font-mono text-[0.75rem] text-signal-700">1</span><span class="min-w-0"><span class="block text-[0.9375rem] font-medium leading-snug text-heading">Three confirmation runs at day 6, pH 7.00</span><span class="mt-0.5 block text-[0.8125rem] leading-snug text-muted">The optimum is interpolated, not executed. Nothing moves forward on a predicted point.</span></span></li><li class="flex items-start gap-3 rounded-xl border border-signal-500/25 bg-signal-500/[0.06] px-3.5 py-2.5 transition-all duration-500 translate-y-2 opacity-0" style="transition-delay:90ms"><span class="mt-[1px] font-mono text-[0.75rem] text-signal-700">2</span><span class="min-w-0"><span class="block text-[0.9375rem] font-medium leading-snug text-heading">Narrow the pH range to 6.95 – 7.05 for study 2</span><span class="mt-0.5 block text-[0.8125rem] leading-snug text-muted">Outside that band the model loses more than 0.2 g/L.</span></span></li><li class="flex items-start gap-3 rounded-xl border border-signal-500/25 bg-signal-500/[0.06] px-3.5 py-2.5 transition-all duration-500 translate-y-2 opacity-0" style="transition-delay:180ms"><span class="mt-[1px] font-mono text-[0.75rem] text-signal-700">3</span><span class="min-w-0"><span class="block text-[0.9375rem] font-medium leading-snug text-heading">Carry feed rate in as the next factor</span><span class="mt-0.5 block text-[0.8125rem] leading-snug text-muted">It was held at 3 % throughout, so its effect is unmeasured here.</span></span></li></ul><div class="mt-3 flex flex-wrap items-center gap-3 rounded-xl border border-line bg-surface px-3.5 py-3 transition-opacity duration-700 opacity-0"><span class="rounded-full border border-line2 bg-white px-3.5 py-1.5 text-[0.8125rem] text-muted">Awaiting a named scientist</span><span class="text-[0.8125rem] leading-snug text-muted">A recommendation is a draft until someone accepts it into the next study.</span><span class="ml-auto font-mono text-[0.6875rem] uppercase tracking-[0.08em] text-faint">Every claim cited</span></div></div></div></div></div></div></div></div></div></div></div></div></div></section><section class="relative overflow-x-clip border-t border-line py-20 lg:py-24"><div class="shell"><div class="max-w-3xl "><div class="reveal  mb-5" style="--reveal-delay:0ms"><div class="flex items-center gap-4 "><span class="eyebrow shrink-0">Where the time goes today</span><span class="h-px flex-1 border-t border-dotted border-line2"></span></div></div><div class="reveal  " style="--reveal-delay:60ms"><h2 class="text-display-md font-medium text-balance text-heading">The cost you are already paying.</h2></div></div><div class="mt-12 flex flex-col gap-px overflow-hidden rounded-2xl border border-line bg-line"><div class="reveal  grid gap-4 bg-canvas p-6 transition-colors duration-300 hover:bg-surface md:grid-cols-[minmax(0,18rem)_minmax(0,1fr)] md:gap-10 lg:p-7" style="--reveal-delay:0ms"><h3 class="text-[1rem] font-medium leading-snug text-heading">Design lives in one place, data in another, the conclusion in a third</h3><p class="text-[0.9375rem] leading-relaxed text-muted">The DoE is in a spreadsheet, the runs are in a historian or a runsheet, the interpretation is in a slide deck, and the report is written months later from all three. Every handoff loses context, and the reconciliation work at the end is where the schedule actually goe
1s.</p></div><div class="reveal  grid gap-4 bg-canvas p-6 transition-colors duration-300 hover:bg-surface md:grid-cols-[minmax(0,18rem)_minmax(0,1fr)] md:gap-10 lg:p-7" style="--reveal-delay:60ms"><h3 class="text-[1rem] font-medium leading-snug text-heading">The analysis queue is a bottleneck</h3><p class="text-[0.9375rem] leading-relaxed text-muted">A scientist with a question about their own campaign waits on a statistician or a data team. The question is usually simple, is this correlated, does this factor matter, is this run an outlier, but the round trip is measured in days, so most questions go unasked.</p></div><div class="reveal  grid gap-4 bg-canvas p-6 transition-colors duration-300 hover:bg-surface md:grid-cols-[minmax(0,18rem)_minmax(0,1fr)] md:gap-10 lg:p-7" style="--reveal-delay:120ms"><h3 class="text-[1rem] font-medium leading-snug text-heading">Rationale evaporates</h3><p class="text-[0.9375rem] leading-relaxed text-muted">Six months later nobody can say why a range is what it is. The stage gate asks, and a senior scientist spends a week reconstructing an argument that was obvious at the time.</p></div><div class="reveal  grid gap-4 bg-canvas p-6 transition-colors duration-300 hover:bg-surface md:grid-cols-[minmax(0,18rem)_minmax(0,1fr)] md:gap-10 lg:p-7" style="--reveal-delay:180ms"><h3 class="text-[1rem] font-medium leading-snug text-heading">The report is the last mile, and it is the longest</h3><p class="text-[0.9375rem] leading-relaxed text-muted">Development reports are assembled by your most expensive people re-typing numbers out of spreadsheets, then reconciling the version that got circulated against the version that got signed.</p></div></div></div></section><section id="what-changes" class="relative scroll-mt-24 border-t border-line py-20 lg:py-24"><div class="shell"><div class="max-w-3xl "><div class="reveal  mb-5" style="--reveal-delay:0ms"><div class="flex items-center gap-4 "><span class="eyebrow shrink-0">What changes</span><span class="h-px flex-1 border-t border-dotted border-line2"></span></div></div><div class="reveal  " style="--reveal-delay:60ms"><h2 class="text-display-md font-medium text-balance text-heading">On the platform.</h2></div></div><div class="mt-12 grid gap-px overflow-hidden rounded-2xl border border-line bg-line sm:grid-cols-2"><div class="reveal  bg-canvas p-6 transition-colors duration-300 hover:bg-surface lg:p-7 " style="--reveal-delay:0ms"><div class="flex h-7 w-7 items-center justify-center rounded-lg border border-signal-500/30 bg-signal-500/[0.08]"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" class="text-signal-600" aria-hidden="true"><path d="m5 13 4 4L19 7" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"></path></svg></div><h3 class="mt-5 text-[1rem] font-medium text-heading">Design and result in one object</h3><p class="mt-2.5 text-[0.9375rem] leading-relaxed text-muted">A study carries its design, its runs, its result tables and its conclusion. Change the data and everything downstream: the analysis, the charts, the report section, recomputes rather than drifting.</p></div><div class="reveal  bg-canvas p-6 transition-colors duration-300 hover:bg-surface lg:p-7 " style="--reveal-delay:55ms"><div class="flex h-7 w-7 items-center justify-center rounded-lg border border-signal-500/30 bg-signal-500/[0.08]"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" class="text-signal-600" aria-hidden="true"><path d="m5 13 4 4L19 7" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"></path></svg></div><h3 class="mt-5 text-[1rem] font-medium text-heading">Ask your own data directly</h3><p class="mt-2.5 text-[0.9375rem] leading-relaxed text-muted">Plain-language questions against your result tables. The platform picks the analysis, runs it, and you get a chart and an interpretation in the meeting rather than the one after it.</p></div><div class="reveal  bg-canvas p-6 transition-colors duration-300 hover:bg-surface lg:p-7 " style="--reveal-delay:110ms"><div class="flex h-7 w-7 items-center justify-center rounded-lg border border-signal-500/30 bg-signal-500/[0.08]"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" class="text-signal-600" aria-hidden="true"><path d="m5 13 4 4L19 7" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"></path></svg></div><h3 class="mt-5 text-[1rem] font-medium text-heading">Statistics that are part of the record</h3><p class="mt-2.5 text-[0.9375rem] leading-relaxed text-muted">Regression, correlation, PCA, outlier detection and DoE run against the same data the report will cite, so the number in the chart and the number in the document cannot disagree.</p></div><div class="reveal  bg-canvas p-6 transition-colors duration-300 hover:bg-surface lg:p-7 " style="--reveal-delay:165ms"><div class="flex h-7 w-7 items-center justify-center rounded-lg border border-signal-500/30 bg-signal-500/[0.08]"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" class="text-signal-600" aria-hidden="true"><path d="m5 13 4 4L19 7" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"></path></svg></div><h3 class="mt-5 text-[1rem] font-medium text-heading">Rationale captured where the decision was made</h3><p class="mt-2.5 text-[0.9375rem] leading-relaxed text-muted">The reason a range was set sits with the study that set it, linked to the runs that justified it. When the stage gate asks, the answer is a query rather than an archaeology project.</p></div><div class="reveal  bg-canvas p-6 transition-colors duration-300 hover:bg-surface lg:p-7 " style="--reveal-delay:220ms"><div class="flex h-7 w-7 items-center justify-center rounded-lg border border-signal-500/30 bg-signal-500/[0.08]"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" class="text-signal-600" aria-hidden="true"><path d="m5 13 4 4L19 7" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"></path></svg></div><h3 class="mt-5 text-[1rem] font-medium text-heading">Reports drafted from the record</h3><p class="mt-2.5 text-[0.9375rem] leading-relaxed text-muted">Your approved template governs the structure; the platform binds the figures. The author edits prose instead of transcribing numbers, and a regeneration picks up any data that has changed.</p></div><div class="reveal  bg-canvas p-6 transition-colors duration-300 hover:bg-surface lg:p-7 " style="--reveal-delay:275ms"><div class="flex h-7 w-7 items-center justify-center rounded-lg border border-signal-500/30 bg-signal-500/[0.08]"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" class="text-signal-600" aria-hidden="true"><path d="m5 13 4 4L19 7" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"></path></svg></div><h3 class="mt-5 text-[1rem] font-medium text-heading">Multi-modality without a fork</h3><p class="mt-2.5 text-[0.9375rem] leading-relaxed text-muted">The model is built on unit operations, parameters, criteria and results, so a mAb study, an AAV study and an mRNA study sit on the same system with the same tooling.</p></div></div></div></section><section class="relative border-t border-line py-20 lg:py-24"><div class="shell"><div class="grid grid-cols-1 gap-8 lg:grid-cols-[minmax(0,1fr)_minmax(0,1fr)] lg:gap-16"><div><p class="eyebrow mb-6">Related capabilities</p><div class="flex flex-col"><a class="group flex items-center justify-between border-b border-line py-4 text-[1.0625rem] text-body transition-colors hover:text-heading" href="/#across-chat">Ask your process data<svg width="14" height="14" viewBox="0 0 14 14" fill="none" class="transition-transform duration-300 group-hover:translate-x-0.5 text-faint group-hover:text-signal-600" aria-hidden="true"><path d="M3 7h8m0 0L7.6 3.6M11 7l-3.4 3.4" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"></path></svg></a><a class="group flex items-center justify-between border-b border-line py-4 text-[1.0625rem] text-body transition-colors hover:text-heading" href="/process-development">Design of experiments &amp; analytics<svg width="14" height="14" viewBox="0 0 14 14" fill="none" class="transition-transform duration-300 group-hover:translate-x-0.5 text-faint group-hover:text-signal-600" aria-hidden="true"><path d="M3 7h8m0 0L7.6 3.6M11 7l-3.4 3.4" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"></path></svg></a><a class="group flex items-center justify-between border-b border-line py-4 text-[1.0625rem] text-body transition-colors hover:text-heading" href="/#across-reports">Reports &amp; submission content<svg width="14" height="14" viewBox="0 0 14 14" fill="none" class="transition-transform duration-300 group-hover:translate-x-0.5 text-faint group-hover:text-signal-600" aria-hidden="true"><path d="M3 7h8m0 0L7.6 3.6M11 7l-3.4 3.4" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"></path></svg></a><a class="group flex items-center justify-between border-b border-line py-4 text-[1.0625rem] text-body transition-colors hover:text-heading" href="/technology-transfer">Technology transfer &amp; scale-up<svg width="14" height="14" viewBox="0 0 14 14" fill="none" class="transition-transform duration-300 group-hover:translate-x-0.5 text-faint group-hover:text-signal-600" aria-hidden="true"><path d="M3 7h8m0 0L7.6 3.6M11 7l-3.4 3.4" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"></path></svg></a></div></div><div class="panel p-8 lg:p-7"><h2 class="text-display-sm font-medium text-balance text-heading">Bring us the work you already know the answer to.</h2><p class="mt-4 text-[0.9375rem] leading-relaxed text-muted">We would rather you judge the platform against a result you can already check than sit through a scripted tour.</p><a class="btn-signal group mt-7" href="/request-demo">Book a demo<svg width="14" height="14" viewBox="0 0 14 14" fill="none" class="transition-transform duration-300 group-hover:translate-x-0.5 " aria-hidden="true"><path d="M3 7h8m0 0L7.6 3.6M11 7l-3.4 3.4" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"></path></svg></a></div></div></div></section></main><footer class="relative overflow-hidden border-t border-line bg-canvas"><div aria-hidden="true" class="pointer-events-none absolute inset-x-0 top-0 h-px bg-hairline-x"></div><div aria-hidden="true" class="pointer-events-none absolute -bottom-40 left-1/2 h-[26rem] w-[70rem] -translate-x-1/2 roun
1ded-full opacity-30 blur-[120px]" style="background:radial-gradient(closest-side, rgba(34,211,190,0.32), rgba(4,7,10,0))"></div><div class="shell relative py-16 lg:py-20"><div class="grid grid-cols-1 gap-12 lg:grid-cols-[1.15fr_2.4fr]"><div><a aria-label="BioprocessAI" href="/"><span class="flex items-center gap-2.5"><span class="relative block h-[2.475rem] w-[2.475rem] shrink-0 overflow-hidden rounded-[11px]"><img alt="" fetchPriority="high" decoding="async" data-nimg="fill" class="object-contain" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" src="/_next/static/media/Bioprocess logo.ace3abc3.svg"/></span><span class="font-wordmark text-[1.30625rem] font-semibold tracking-[-0.02em] text-wordmark">Bioprocess<span class="text-wordmarkAi">AI</span></span></span></a><p class="mt-5 max-w-xs text-[0.875rem] leading-relaxed text-muted">The CMC platform for biologics. One governed system of record for process data, documents and decisions, from first bench run to commercial supply.</p><a href="mailto:[email protected]" class="mt-5 inline-block font-mono text-[0.875rem] text-signal-600 transition-colors hover:text-signal-700">[email protected]</a></div><div class="grid grid-cols-2 gap-8 sm:grid-cols-4"><div><p class="eyebrow mb-4">Platform</p><ul class="flex flex-col gap-2.5"><li><a class="text-[0.8125rem] text-muted transition-colors hover:text-body" href="/#across-knowledge">Contextualized knowledge</a></li><li><a class="text-[0.8125rem] text-muted transition-colors hover:text-body" href="/manufacturing">Deviation investigation</a></li><li><a class="text-[0.8125rem] text-muted transition-colors hover:text-body" href="/manufacturing">Batch record review</a></li><li><a class="text-[0.8125rem] text-muted transition-colors hover:text-body" href="/process-development">DoE &amp; analytics</a></li><li><a class="text-[0.8125rem] text-muted transition-colors hover:text-body" href="/#across-reports">Reports &amp; submissions</a></li><li><a class="text-[0.8125rem] text-muted transition-colors hover:text-body" href="/#trust">Governance &amp; audit</a></li></ul></div><div><p class="eyebrow mb-4">Solutions</p><ul class="flex flex-col gap-2.5"><li><a class="text-[0.8125rem] text-muted transition-colors hover:text-body" href="/process-development">Process development</a></li><li><a class="text-[0.8125rem] text-muted transition-colors hover:text-body" href="/technology-transfer">Tech transfer &amp; scale-up</a></li><li><a class="text-[0.8125rem] text-muted transition-colors hover:text-body" href="/manufacturing">GMP manufacturing</a></li><li><a class="text-[0.8125rem] text-muted transition-colors hover:text-body" href="/analytical">Analytical development</a></li></ul></div><div><p class="eyebrow mb-4">Company</p><ul class="flex flex-col gap-2.5"><li><a class="text-[0.8125rem] text-muted transition-colors hover:text-body" href="/about">About</a></li><li><a class="text-[0.8125rem] text-muted transition-colors hover:text-body" href="/about#careers">Careers</a></li><li><a class="text-[0.8125rem] text-muted transition-colors hover:text-body" href="/cmc-productivity">Improving CMC productivity</a></li><li><a class="text-[0.8125rem] text-muted transition-colors hover:text-body" href="/contact">Contact</a></li><li><a class="text-[0.8125rem] text-muted transition-colors hover:text-body" href="/request-demo">Book a demo</a></li></ul></div><div><p class="eyebrow mb-4">Trust</p><ul class="flex flex-col gap-2.5"><li><a href="https://trust.bioprocess.ai" target="_blank" rel="noopener noreferrer" class="text-[0.8125rem] text-muted transition-colors hover:text-body">Trust center</a></li><li><a class="text-[0.8125rem] text-muted transition-colors hover:text-body" href="/security">Security and data handling</a></li><li><a class="text-[0.8125rem] text-muted transition-colors hover:text-body" href="/privacy">Privacy policy</a></li><li><a class="text-[0.8125rem] text-muted transition-colors hover:text-body" href="/terms">Terms of use</a></li></ul></div></div></div><div class="rule my-12"></div><div class="flex flex-col items-start justify-between gap-5 sm:flex-row sm:items-center"><p class="font-mono text-[0.875rem] uppercase tracking-[0.14em] text-faint">© <!-- -->2026<!-- --> <!-- -->BioprocessAI<!-- -->. All rights reserved.</p><div class="flex items-center gap-5"><span class="chip">GxP-aligned</span><span class="chip">21 CFR Part 11</span><a href="https://www.linkedin.com/company/bioprocess-ai" target="_blank" rel="noopener noreferrer" aria-label="LinkedIn" class="text-faint transition-colors hover:text-signal-600"><svg width="17" height="17" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true"><path d="M4.98 3.5a2.5 2.5 0 1 1 0 5 2.5 2.5 0 0 1 0-5ZM3 9h4v12H3V9Zm7 0h3.8v1.7h.05c.53-.95 1.83-1.95 3.77-1.95 4.03 0 4.78 2.5 4.78 5.76V21h-4v-5.6c0-1.34-.03-3.07-1.9-3.07-1.9 0-2.2 1.46-2.2 2.97V21h-4V9Z"></path></svg></a><a href="https://www.youtube.com/@BioprocessAI" target="_blank" rel="noopener noreferrer" aria-label="YouTube" class="text-faint transition-colors hover:text-signal-600"><svg width="19" height="19" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true"><path d="M21.6 7.2a2.5 2.5 0 0 0-1.76-1.77C18.25 5 12 5 12 5s-6.25 0-7.84.43A2.5 2.5 0 0 0 2.4 7.2 26 26 0 0 0 2 12a26 26 0 0 0 .4 4.8 2.5 2.5 0 0 0 1.76 1.77C5.75 19 12 19 12 19s6.25 0 7.84-.43a2.5 2.5 0 0 0 1.76-1.77A26 26 0 0 0 22 12a26 26 0 0 0-.4-4.8ZM10 15V9l5.2 3L10 15Z"></path></svg></a></div></div></div></footer></div><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><!--/$--><div style="position:fixed;z-index:9999;top:16px;left:16px;right:16px;bottom:16px;pointer-events:none"></div>
1<script src="/_next/static/chunks/webpack-2d0d35187427dcc2.js" async=""></script>
1<script>(self.__next_f=self.__next_f||[]).push([0]);self.__next_f.push([2,null])</script>
1<script>self.__next_f.push([1,"1:HL[\"/_next/static/css/86609822cd6e8368.css\",\"style\"]\n"])</script>
1<script>self.__next_f.push([1,"2:I[5751,[],\"\"]\n4:I[6513,[],\"ClientPageRoot\"]\n5:I[1493,[\"625\",\"static/chunks/625-417e2cfe7d60384b.js\",\"138\",\"static/chunks/138-5486e96199c0da21.js\",\"911\",\"static/chunks/911-ac41ee54864c8884.js\",\"991\",\"static/chunks/991-1151f0c0bb29f672.js\",\"933\",\"static/chunks/app/(withlayout)/process-development/page-96eda43569e1ecd0.js\"],\"default\"]\n6:I[9275,[],\"\"]\n7:I[1343,[],\"\"]\n8:I[4701,[\"625\",\"static/chunks/625-417e2cfe7d60384b.js\",\"138\",\"static/chunks/138-5486e96199c0da21.js\",\"175\",\"static/chunks/app/(withlayout)/layout-922d16ecf2267028.js\"],\"MenuProvider\"]\n9:I[4352,[\"625\",\"static/chunks/625-417e2cfe7d60384b.js\",\"138\",\"static/chunks/138-5486e96199c0da21.js\",\"175\",\"static/chunks/app/(withlayout)/layout-922d16ecf2267028.js\"],\"default\"]\na:I[231,[\"625\",\"static/chunks/625-417e2cfe7d60384b.js\",\"138\",\"static/chunks/138-5486e96199c0da21.js\",\"175\",\"static/chunks/app/(withlayout)/layout-922d16ecf2267028.js\"],\"\"]\nb:I[1701,[\"625\",\"static/chunks/625-417e2cfe7d60384b.js\",\"138\",\"static/chunks/138-5486e96199c0da21.js\",\"175\",\"static/chunks/app/(withlayout)/layout-922d16ecf2267028.js\"],\"Wordmark\"]\nc:I[1537,[\"625\",\"static/chunks/625-417e2cfe7d60384b.js\",\"138\",\"static/chunks/138-5486e96199c0da21.js\",\"175\",\"static/chunks/app/(withlayout)/layout-922d16ecf2267028.js\"],\"default\"]\nd:I[4080,[\"4\",\"static/chunks/4-06c8b5c6f3081cb2.js\",\"223\",\"static/chunks/223-a4b07440eb1d6049.js\",\"185\",\"static/chunks/app/layout-5d906f794a34899f.js\"],\"\"]\n12:I[2944,[\"4\",\"static/chunks/4-06c8b5c6f3081cb2.js\",\"223\",\"static/chunks/223-a4b07440eb1d6049.js\",\"185\",\"static/chunks/app/layout-5d906f794a34899f.js\"],\"Analytics\"]\n13:I[8726,[\"4\",\"static/chunks/4-06c8b5c6f3081cb2.js\",\"223\",\"static/chunks/223-a4b07440eb1d6049.js\",\"185\",\"static/chunks/app/layout-5d906f794a34899f.js\"],\"Toaster\"]\n15:I[6130,[],\"\"]\ne:{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"}\nf:{\"display\":\"inline-block\",\"margi"])</script>
1<script>self.__next_f.push([1,"n\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"}\n10:{\"display\":\"inline-block\"}\n11:{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0}\n16:[]\n"])</script>
1<script>self.__next_f.push([1,"0:[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/86609822cd6e8368.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}]],[\"$\",\"$L2\",null,{\"buildId\":\"L8qkNhzhA7QXT0FEzqWy4\",\"assetPrefix\":\"\",\"initialCanonicalUrl\":\"/process-development\",\"initialTree\":[\"\",{\"children\":[\"(withlayout)\",{\"children\":[\"process-development\",{\"children\":[\"__PAGE__\",{}]}]}]},\"$undefined\",\"$undefined\",true],\"initialSeedData\":[\"\",{\"children\":[\"(withlayout)\",{\"children\":[\"process-development\",{\"children\":[\"__PAGE__\",{},[[\"$L3\",[\"$\",\"$L4\",null,{\"props\":{\"params\":{},\"searchParams\":{}},\"Component\":\"$5\"}]],null],null]},[[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"(withlayout)\",\"children\",\"process-development\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L7\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\",\"styles\":null}],null],null]},[[\"$\",\"div\",null,{\"className\":\"relative min-h-screen bg-ink-950 text-slate-200\",\"children\":[[\"$\",\"$L8\",null,{\"children\":[[\"$\",\"$L9\",null,{}],[\"$\",\"main\",null,{\"children\":[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"(withlayout)\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L7\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],\"notFoundStyles\":[],\"styles\":null}]}]]}],[\"$\",\"footer\",null,{\"className\":\"relative overflow-hidden border-t border-line bg-canvas\",\"children\":[[\"$\",\"div\",null,{\"aria-hidden\":true,\"className\":\"pointer-events-none absolute inset-x-0 top-0 h-px bg-hairline-x\"}],[\"$\",\"div\",null,{\"aria-hidden\":true,\"className\":\"pointer-events-none absolute -bottom-40 left-1/2 h-[26rem] w-[70rem] -translate-x-1/2 rounded-full opacity-30 blur-[120px]\",\"style\":{\"background\":\"radial-gradient(closest-side, rgba(34,211,190,0.32), rgba(4,7,10,0))\"}}],[\"$\",\"div\",null,{\"className\":\"shell relative py-16 lg:py-20\",\"children\":[[\"$\",\"div\",null,{\"className\":\"grid grid-cols-1 gap-12 lg:grid-cols-[1.15fr_2.4fr]\",\"children\":[[\"$\",\"div\",null,{\"children\":[[\"$\",\"$La\",null,{\"href\":\"/\",\"aria-label\":\"BioprocessAI\",\"children\":[\"$\",\"$Lb\",null,{}]}],[\"$\",\"p\",null,{\"className\":\"mt-5 max-w-xs text-[0.875rem] leading-relaxed text-muted\",\"children\":\"The CMC platform for biologics. One governed system of record for process data, documents and decisions, from first bench run to commercial supply.\"}],[\"$\",\"a\",null,{\"href\":\"mailto:[email protected]\",\"className\":\"mt-5 inline-block font-mono text-[0.875rem] text-signal-600 transition-colors hover:text-signal-700\",\"children\":\"[email protected]\"}]]}],[\"$\",\"div\",null,{\"className\":\"grid grid-cols-2 gap-8 sm:grid-cols-4\",\"children\":[[\"$\",\"div\",\"Platform\",{\"children\":[[\"$\",\"p\",null,{\"className\":\"eyebrow mb-4\",\"children\":\"Platform\"}],[\"$\",\"ul\",null,{\"className\":\"flex flex-col gap-2.5\",\"children\":[[\"$\",\"li\",\"Contextualized knowledge\",{\"children\":[\"$\",\"$La\",null,{\"href\":\"/#across-knowledge\",\"className\":\"text-[0.8125rem] text-muted transition-colors hover:text-body\",\"children\":\"Contextualized knowledge\"}]}],[\"$\",\"li\",\"Deviation investigation\",{\"children\":[\"$\",\"$La\",null,{\"href\":\"/manufacturing\",\"className\":\"text-[0.8125rem] text-muted transition-colors hover:text-body\",\"children\":\"Deviation investigation\"}]}],[\"$\",\"li\",\"Batch record review\",{\"children\":[\"$\",\"$La\",null,{\"href\":\"/manufacturing\",\"className\":\"text-[0.8125rem] text-muted transition-colors hover:text-body\",\"children\":\"Batch record review\"}]}
1],[\"$\",\"li\",\"DoE \u0026 analytics\",{\"children\":[\"$\",\"$La\",null,{\"href\":\"/process-development\",\"className\":\"text-[0.8125rem] text-muted transition-colors hover:text-body\",\"children\":\"DoE \u0026 analytics\"}]}],[\"$\",\"li\",\"Reports \u0026 submissions\",{\"children\":[\"$\",\"$La\",null,{\"href\":\"/#across-reports\",\"className\":\"text-[0.8125rem] text-muted transition-colors hover:text-body\",\"children\":\"Reports \u0026 submissions\"}]}],[\"$\",\"li\",\"Governance \u0026 audit\",{\"children\":[\"$\",\"$La\",null,{\"href\":\"/#trust\",\"className\":\"text-[0.8125rem] text-muted transition-colors hover:text-body\",\"children\":\"Governance \u0026 audit\"}]}]]}]]}],[\"$\",\"div\",\"Solutions\",{\"children\":[[\"$\",\"p\",null,{\"className\":\"eyebrow mb-4\",\"children\":\"Solutions\"}],[\"$\",\"ul\",null,{\"className\":\"flex flex-col gap-2.5\",\"children\":[[\"$\",\"li\",\"Process development\",{\"children\":[\"$\",\"$La\",null,{\"href\":\"/process-development\",\"className\":\"text-[0.8125rem] text-muted transition-colors hover:text-body\",\"children\":\"Process development\"}]}],[\"$\",\"li\",\"Tech transfer \u0026 scale-up\",{\"children\":[\"$\",\"$La\",null,{\"href\":\"/technology-transfer\",\"className\":\"text-[0.8125rem] text-muted transition-colors hover:text-body\",\"children\":\"Tech transfer \u0026 scale-up\"}]}],[\"$\",\"li\",\"GMP manufacturing\",{\"children\":[\"$\",\"$La\",null,{\"href\":\"/manufacturing\",\"className\":\"text-[0.8125rem] text-muted transition-colors hover:text-body\",\"children\":\"GMP manufacturing\"}]}],[\"$\",\"li\",\"Analytical development\",{\"children\":[\"$\",\"$La\",null,{\"href\":\"/analytical\",\"className\":\"text-[0.8125rem] text-muted transition-colors hover:text-body\",\"children\":\"Analytical development\"}]}]]}]]}],[\"$\",\"div\",\"Company\",{\"children\":[[\"$\",\"p\",null,{\"className\":\"eyebrow mb-4\",\"children\":\"Company\"}],[\"$\",\"ul\",null,{\"className\":\"flex flex-col gap-2.5\",\"children\":[[\"$\",\"li\",\"About\",{\"children\":[\"$\",\"$La\",null,{\"href\":\"/about\",\"className\":\"text-[0.8125rem] text-muted transition-colors hover:text-body\",\"children\":\"About\"}]}],[\"$\",\"li\",\"Careers\",{\"children\":[\"$\",\"$La\",null,{\"href\":\"/about#careers\",\"className\":\"text-[0.8125rem] text-muted transition-colors hover:text-body\",\"children\":\"Careers\"}]}],[\"$\",\"li\",\"Improving CMC productivity\",{\"children\":[\"$\",\"$La\",null,{\"href\":\"/cmc-productivity\",\"className\":\"text-[0.8125rem] text-muted transition-colors hover:text-body\",\"children\":\"Improving CMC productivity\"}]}],[\"$\",\"li\",\"Contact\",{\"children\":[\"$\",\"$La\",null,{\"href\":\"/contact\",\"className\":\"text-[0.8125rem] text-muted transition-colors hover:text-body\",\"children\":\"Contact\"}]}],[\"$\",\"li\",\"Book a demo\",{\"children\":[\"$\",\"$La\",null,{\"href\":\"/request-demo\",\"className\":\"text-[0.8125rem] text-muted transition-colors hover:text-body\",\"children\":\"Book a demo\"}]}]]}]]}],[\"$\",\"div\",\"Trust\",{\"children\":[[\"$\",\"p\",null,{\"className\":\"eyebrow mb-4\",\"children\":\"Trust\"}],[\"$\",\"ul\",null,{\"className\":\"flex flex-col gap-2.5\",\"children\":[[\"$\",\"li\",\"Trust center\",{\"children\":[\"$\",\"a\",null,{\"href\":\"https://trust.bioprocess.ai\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"className\":\"text-[0.8125rem] text-muted transition-colors hover:text-body\",\"children\":\"Trust center\"}]}],[\"$\",\"li\",\"Security and data handling\",{\"children\":[\"$\",\"$La\",null,{\"href\":\"/security\",\"className\":\"text-[0.8125rem] text-muted transition-colors hover:text-body\",\"children\":\"Security and data handling\"}]}],[\"$\",\"li\",\"Privacy policy\",{\"children\":[\"$\",\"$La\",null,{\"href\":\"/privacy\",\"className\":\"text-[0.8125rem] text-muted transition-colors hover:text-body\",\"children\":\"Privacy policy\"}]}],[\"$\",\"li\",\"Terms of use\",{\"children\":[\"$\",\"$La\",null,{\"href\":\"/terms\",\"className\":\"text-[0.8125rem] text-muted transition-colors hover:text-body\",\"children\":\"Terms of use\"}]}]]}]]}]]}]]}],[\"$\",\"div\",null,{\"className\":\"rule my-12\"}],[\"$\",\"div\",null,{\"className\":\"flex flex-col items-start justify-between gap-5 sm:flex-row sm:items-center\",\"children\":[[\"$\",\"p\",null,{\"className\":\"font-mono text-[0.875rem] uppercase tracking-[0.14em] text-faint\",\"children\":[\"© \",2026,\" \",\"BioprocessAI\",\". All rights reserved.\"]}],[\"$\",\"div\",null,{\"className\":\"flex items-center gap-5\",\"children\":[[\"$\",\"span\",null,{\"className\":\"chip\",\"children\":\"GxP-aligned\"}],[\"$\",\"span\",null,{\"className\":\"chip\",\"children\":\"21 CFR Part 11\"}],[\"$\",\"a\",null,{\"href\":\"https://www.linkedin.com/company/bioprocess-ai\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"aria-label\":\"LinkedIn\",\"className\":\"text-faint transition-colors hover:text-signal-600\",\"children\":[\"$\",\"svg\",null,{\"width\":\"17\",\"height\"
1:\"17\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"aria-hidden\":true,\"children\":[\"$\",\"path\",null,{\"d\":\"M4.98 3.5a2.5 2.5 0 1 1 0 5 2.5 2.5 0 0 1 0-5ZM3 9h4v12H3V9Zm7 0h3.8v1.7h.05c.53-.95 1.83-1.95 3.77-1.95 4.03 0 4.78 2.5 4.78 5.76V21h-4v-5.6c0-1.34-.03-3.07-1.9-3.07-1.9 0-2.2 1.46-2.2 2.97V21h-4V9Z\"}]}]}],[\"$\",\"a\",null,{\"href\":\"https://www.youtube.com/@BioprocessAI\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"aria-label\":\"YouTube\",\"className\":\"text-faint transition-colors hover:text-signal-600\",\"children\":[\"$\",\"svg\",null,{\"width\":\"19\",\"height\":\"19\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"aria-hidden\":true,\"children\":[\"$\",\"path\",null,{\"d\":\"M21.6 7.2a2.5 2.5 0 0 0-1.76-1.77C18.25 5 12 5 12 5s-6.25 0-7.84.43A2.5 2.5 0 0 0 2.4 7.2 26 26 0 0 0 2 12a26 26 0 0 0 .4 4.8 2.5 2.5 0 0 0 1.76 1.77C5.75 19 12 19 12 19s6.25 0 7.84-.43a2.5 2.5 0 0 0 1.76-1.77A26 26 0 0 0 22 12a26 26 0 0 0-.4-4.8ZM10 15V9l5.2 3L10 15Z\"}]}]}]]}]]}]]}]]}],[\"$\",\"$Lc\",null,{}]]}],null],null]},[[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"dark\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"link\",null,{\"rel\":\"preconnect\",\"href\":\"https://fonts.googleapis.com\"}],[\"$\",\"link\",null,{\"rel\":\"preconnect\",\"href\":\"https://fonts.gstatic.com\",\"crossOrigin\":\"anonymous\"}],[\"$\",\"link\",null,{\"href\":\"https://fonts.googleapis.com/css2?family=Inter+Tight:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400\u0026family=Poppins:wght@500;600;700\u0026family=Instrument+Serif:ital@0;1\u0026family=JetBrains+Mono:wght@400;500\u0026display=swap\",\"rel\":\"stylesheet\"}],[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Organization\\\",\\\"name\\\":\\\"BioprocessAI\\\",\\\"url\\\":\\\"https://bioprocess.ai\\\",\\\"logo\\\":\\\"https://bioprocess.ai/Bioprocess alternate logo.svg\\\",\\\"description\\\":\\\"BioprocessAI is the CMC platform for biologics. One governed system of record for process data, documents and decisions, with AI that assembles the evidence, runs the analysis and drafts the documents, and shows its working every time.\\\",\\\"contactPoint\\\":{\\\"@type\\\":\\\"ContactPoint\\\",\\\"email\\\":\\\"[email protected]\\\",\\\"contactType\\\":\\\"customer service\\\"}}\"}}]]}],[\"$\",\"body\",null,{\"className\":\"bg-ink-950 font-sans antialiased\",\"children\":[[\"$\",\"$Ld\",null,{\"id\":\"gtm\",\"strategy\":\"afterInteractive\",\"children\":\"(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\\nnew Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\\nj=d.createElement(s),dl=l!='dataLayer'?'\u0026l='+l:'';j.async=true;
1j.src=\\n'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);\\n})(window,document,'script','dataLayer','GTM-W4TN3BH3');\"}],[\"$\",\"noscript\",null,{\"children\":[\"$\",\"iframe\",null,{\"src\":\"https://www.googletagmanager.com/ns.html?id=GTM-W4TN3BH3\",\"height\":\"0\",\"width\":\"0\",\"style\":{\"display\":\"none\",\"visibility\":\"hidden\"}}]}],[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L7\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$e\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$f\",\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":\"$10\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$11\",\"children\":\"This page could not be found.\"}]}]]}]}]],\"notFoundStyles\":[],\"styles\":null}],[\"$\",\"$L12\",null,{}],[\"$\",\"$L13\",null,{\"position\":\"bottom-right\",\"toastOptions\":{\"duration\":5000,\"style\":{\"background\":\"#0E141B\",\"color\":\"#E6EDF3\",\"border\":\"1px solid rgba(255,255,255,0.09)\",\"borderRadius\":\"12px\",\"fontSize\":\"14px\"}}}]]}]]}],null],null],\"couldBeIntercepted\":false,\"initialHead\":[false,\"$L14\"],\"globalErrorComponent\":\"$15\",\"missingSlots\":\"$W16\"}]]\n"])</script>
1<script>self.__next_f.push([1,"14:[[\"$\",\"meta\",\"0\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"1\",{\"name\":\"theme-color\",\"content\":\"#04070A\"}],[\"$\",\"meta\",\"2\",{\"name\":\"color-scheme\",\"content\":\"dark\"}],[\"$\",\"meta\",\"3\",{\"charSet\":\"utf-8\"}],[\"$\",\"title\",\"4\",{\"children\":\"Process development | BioprocessAI\"}],[\"$\",\"meta\",\"5\",{\"name\":\"description\",\"content\":\"Fewer development runs and ranges you can defend. Keep the design, the data and the conclusion attached, and draft the report from the record.\"}],[\"$\",\"meta\",\"6\",{\"name\":\"author\",\"content\":\"BioprocessAI\"}],[\"$\",\"meta\",\"7\",{\"name\":\"keywords\",\"content\":\"CMC,bioprocess,biopharma,agentic AI,deviation investigation,root cause analysis,batch record review,process development,technology transfer,GMP manufacturing,knowledge graph,DoE\"}],[\"$\",\"meta\",\"8\",{\"name\":\"creator\",\"content\":\"BioprocessAI\"}],[\"$\",\"meta\",\"9\",{\"name\":\"robots\",\"content\":\"index, follow\"}],[\"$\",\"meta\",\"10\",{\"name\":\"googlebot\",\"content\":\"index, follow\"}],[\"$\",\"link\",\"11\",{\"rel\":\"canonical\",\"href\":\"https://bioprocess.ai\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:title\",\"content\":\"BioprocessAI, Automate the CMC critical path\"}],[\"$\",\"meta\",\"13\",{\"property\":\"og:description\",\"content\":\"BioprocessAI is the CMC platform for biologics. One governed system of record for process data, documents and decisions, with AI that assembles the evidence, runs the analysis and drafts the documents, and shows its working every time.\"}],[\"$\",\"meta\",\"14\",{\"property\":\"og:url\",\"content\":\"https://bioprocess.ai\"}],[\"$\",\"meta\",\"15\",{\"property\":\"og:site_name\",\"content\":\"BioprocessAI\"}],[\"$\",\"meta\",\"16\",{\"property\":\"og:locale\",\"content\":\"en_US\"}],[\"$\",\"meta\",\"17\",{\"property\":\"og:image\",\"content\":\"https://bioprocess.ai/og-image.png\"}],[\"$\",\"meta\",\"18\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"19\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"20\",{\"property\":\"og:image:alt\",\"content\":\"BioprocessAI\"}],[\"$\",\"meta\",\"21\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"22\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"23\",{\"name\":\"twitter:title\",\"content\":\"BioprocessAI, Automate the CMC critical path\"}],[\"$\",\"meta\",\"24\",{\"name\":\"twitter:description\",\"content\":\"BioprocessAI is the CMC platform for biologics. One governed system of record for process data, documents and decisions, with AI that assembles the evidence, runs the analysis and drafts the documents, and shows its working every time.\"}],[\"$\",\"meta\",\"25\",{\"name\":\"twitter:image\",\"content\":\"https://bioprocess.ai/og-image.png\"}],[\"$\",\"meta\",\"26\",{\"name\":\"twitter:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"27\",{\"name\":\"twitter:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"28\",{\"name\":\"twitter:image:alt\",\"content\":\"BioprocessAI\"}],[\"$\",\"link\",\"29\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\",\"type\":\"image/x-icon\",\"sizes\":\"16x16\"}]]\n"])</script>
1<script>self.__next_f.push([1,"3:null\n"])</script>
1</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.