:root{--paper:#f7f6f2;--ink:#202334;--muted:#505467;--line:#c8cad3;--copper:#4945a6;--accent:#4945a6}
body{font-family:'Segoe UI',Arial,sans-serif;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}
header{max-width:1440px;margin:auto;height:96px;padding:0 6%;border-bottom:1px solid var(--line)}.brand{letter-spacing:-.7px;font-size:25px}.mark{color:var(--accent);font-size:38px}.nav-cta{border:1px solid var(--ink);padding:12px 20px;border-radius:30px;font-size:14px;font-weight:600}.nav-cta:hover{background:var(--ink);color:var(--paper)}a:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
.public-home{max-width:1280px;margin:0 auto;padding:62px 6% 80px}.hero-kicker,.section-label{display:flex;justify-content:space-between;gap:16px;font:12px/1.5 'Consolas',monospace;letter-spacing:.09em;color:var(--muted)}.edition{white-space:nowrap}.public-home h1{font-size:clamp(58px,7.5vw,108px);font-weight:500;line-height:1.02;letter-spacing:-.055em;margin:36px 0 34px;max-width:1000px}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--accent);letter-spacing:-.05em}.vision{font-size:21px;line-height:1.7;color:var(--muted);max-width:760px;margin:0 0 65px auto}
.public-home section{padding:0}.framework-section{border-top:1px solid var(--ink)}.section-label{padding-top:19px;margin-bottom:36px}.scenario-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}.scenario-grid article{padding:0 0 20px}.scenario-grid article>span{display:block;font:12px/1.6 'Consolas',monospace;letter-spacing:.04em;color:var(--accent);margin-bottom:22px}.scenario-grid h3{font-size:26px;letter-spacing:-.04em;font-weight:500;line-height:1.25;margin:0 0 18px}.scenario-grid p{font-size:18px;line-height:1.7;color:var(--muted);max-width:none;margin:0 0 16px}.scope-note{font-size:14px!important;line-height:1.65;color:var(--muted)!important;max-width:880px;margin:22px 0 0;border-left:2px solid var(--accent);padding-left:16px}
.public-home .niche-context{margin-top:65px;padding-top:0;border-top:1px solid var(--ink)}.niche-context h2{font-size:clamp(36px,4vw,56px);line-height:1.1;font-weight:500;letter-spacing:-.04em;margin:0 0 35px}.niche-types{grid-template-columns:repeat(2,minmax(0,1fr));gap:50px}.niche-types article{border-top:1px solid var(--line);padding-top:24px}.niche-types h3{font-size:30px}.niche-types strong{font-weight:600;color:var(--ink)}footer{max-width:1440px;margin:auto;border-top:1px solid var(--line);padding:25px 6%;color:var(--muted);font-size:12px;display:flex;justify-content:space-between;gap:24px}
@media(max-width:750px){header{height:80px;padding:0 24px}.public-home{padding:35px 24px 50px}.edition{display:none}.public-home h1{font-size:clamp(52px,12vw,80px);margin-top:28px}.vision{font-size:19px;margin-bottom:45px}.scenario-grid,.niche-types{grid-template-columns:1fr;gap:28px}.scenario-grid article{border-bottom:1px solid var(--line);padding-bottom:24px}.scenario-grid article>span{margin-bottom:12px}.scope-note{margin-top:8px}.public-home .niche-context{margin-top:45px}footer{padding:24px;flex-direction:column;gap:8px}}

.identity-layers{margin-top:24px;border-top:1px solid var(--line);padding-top:16px}.identity-layers summary{font-size:16px;line-height:1.5;color:var(--accent);cursor:pointer;font-weight:600}.identity-layers summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.identity-layers ol{padding-left:22px;margin-top:22px}.identity-layers li{margin-bottom:24px;padding-left:4px}.identity-layers strong{font-size:16px;line-height:1.5}.identity-layers li p{font-size:16px;margin-top:8px}.identity-layers .layer-reference{font-size:14px}.layer-reference a{text-decoration:underline;text-underline-offset:3px}

.hero-kicker,.section-label{font-size:16px;font-weight:600;color:#202334;letter-spacing:.06em}.scenario-grid article>span{font-size:16px;font-weight:700;line-height:1.6;color:#4945a6;letter-spacing:.035em}@media(max-width:750px){.hero-kicker,.section-label,.scenario-grid article>span{font-size:15px}}
.public-home h1 .title-twin{color:#4945a6}.public-home h1 .title-micro{color:#202334}
.hero-framework{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:24px}.framework-art{margin:24px 0 20px}.framework-art img{display:block;width:100%;height:auto}.framework-art figcaption{text-align:center;font:11px/1.6 Consolas,monospace;color:#505467;letter-spacing:.09em}@media(max-width:750px){.hero-framework{grid-template-columns:1fr}.framework-art{max-width:480px;margin:0 auto 28px;width:100%}}

.framework-art{background:#181c2e;border:1px solid #353a53;border-radius:18px;padding:18px 18px 22px;box-shadow:0 16px 40px #2023340b}.framework-art figcaption{border-top:1px solid #41455d;padding:16px 8px 0;color:#e0dffe;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 20px;font:12px/1.7 'Segoe UI',sans-serif;letter-spacing:0}.framework-art figcaption b{font-family:Consolas,monospace;font-size:14px;margin-right:5px}.framework-art figcaption small{width:100%;color:#bfc2d5;font-size:11px}.framework-section{padding:28px 30px!important;background:#eeedf7;border:1px solid #d5d4e1;border-radius:16px}.framework-section .section-label{padding-top:0}.public-home .niche-context{padding:30px!important;background:#f0f1f4;border:1px solid #d6d8e0;border-radius:16px}.niche-context .section-label{padding-top:0}@media(max-width:750px){.framework-section,.public-home .niche-context{padding:24px 20px!important}.framework-art{padding:10px 10px 18px}}

.framework-art{padding:26px;border-radius:16px}.art-equation{padding:0 0 22px;border-bottom:1px solid #515771;margin:0 0 14px;color:#f1f0ff}.art-equation>span{display:block;font-family:'Segoe UI',Arial,sans-serif;font-size:13px;font-weight:600;letter-spacing:.1em;color:#c7cadf;margin-bottom:12px}.art-equation strong{display:block;font-family:'Segoe UI',Arial,sans-serif;font-size:clamp(19px,2.05vw,26px);font-weight:500;letter-spacing:-.02em;line-height:1.5;white-space:nowrap}.art-equation sub{font-size:.6em}.framework-art figcaption{font-size:15px;line-height:1.6;padding:20px 0 0;gap:12px 20px}.framework-art figcaption b{font-family:'Segoe UI',Arial,sans-serif;font-size:18px}.framework-art figcaption small{font-size:13px;color:#c7cadf}.framework-art img{margin:0}.hero-framework{align-items:center}.public-home h1{font-weight:600}@media(max-width:750px){.framework-art{padding:20px}.art-equation strong{font-size:clamp(16px,4vw,22px)}.framework-art figcaption{font-size:14px}}
.framework-art{padding:20px 24px}.art-equation{padding-bottom:14px;margin-bottom:4px}.art-equation>span{margin-bottom:8px}.framework-art figcaption{padding-top:14px;gap:6px 18px}.framework-art figcaption small{line-height:1.4}.hero-framework{gap:28px}.framework-art{margin:16px 0}.vision{margin-bottom:45px}@media(max-width:750px){.framework-art{padding:18px;margin-bottom:24px}}

.hero-framework{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:44px;margin:24px 0 40px}.hero-left{min-width:0}.hero-left h1{margin:0 0 26px;font-size:clamp(48px,5.8vw,78px);line-height:1.06}.hero-left .vision{margin:0;max-width:none;font-size:20px;line-height:1.65}.hero-framework .framework-art{margin:0;padding:18px 22px}.art-equation{padding-bottom:12px;margin-bottom:0}.framework-art figcaption{padding-top:12px;gap:5px 16px}.public-home{padding-top:42px}.framework-art figcaption small{margin-top:0}@media(max-width:750px){.hero-framework{grid-template-columns:1fr;gap:28px;margin-top:28px}.hero-left h1{font-size:clamp(48px,11vw,72px);margin-bottom:22px}.hero-left .vision{font-size:19px}.hero-framework .framework-art{padding:18px}.public-home{padding-top:30px}}
.hero-left h1{margin-bottom:40px}@media(max-width:750px){.hero-left h1{margin-bottom:32px}}

.scenario-projects{list-style:none;padding:0;margin:20px 0 24px}.scenario-projects li{display:flex;align-items:baseline;gap:18px;padding:16px 0;border-bottom:1px solid #d0d2df}.scenario-projects li:first-child{border-top:1px solid #d0d2df}.scenario-projects li>span{font-family:Consolas,monospace;font-size:14px;color:#4945a6;flex:0 0 24px}.scenario-projects strong{font-size:19px;font-weight:500;line-height:1.5}

.scenario-projects li{display:block;padding:0}.scenario-expand summary{display:flex;align-items:baseline;gap:18px;padding:16px 0;cursor:pointer;list-style:none}.scenario-expand summary::-webkit-details-marker{display:none}.scenario-expand summary>span{font-family:Consolas,monospace;font-size:14px;color:#4945a6;flex:0 0 24px}.scenario-expand summary::after{content:"+";margin-left:auto;color:#4945a6;font-size:23px;line-height:1;font-weight:400}.scenario-expand[open] summary::after{content:"−"}.scenario-expand summary:focus-visible{outline:3px solid #4945a6;outline-offset:3px}.scenario-demo-slot{padding:0 0 18px 42px}.scenario-demo-slot p{font-size:16px;color:#505467;margin:0}

.culture-subprojects{margin:0 0 20px 42px}.culture-subprojects strong{font-size:17px}.culture-subprojects .scenario-expand summary{padding:13px 0}.culture-subprojects .scenario-demo-slot{padding-left:0}

.niche-types{align-items:start}.context-intro{min-height:252px}.context-intro h3{margin-bottom:18px}.context-intro p{margin-bottom:16px}.niche-types .scenario-projects{margin-top:20px}@media(max-width:750px){.context-intro{min-height:0}}

.framework-section>.scenario-grid{align-items:start;grid-template-rows:auto auto}.framework-section>.scenario-grid>article{display:grid;grid-template-rows:subgrid;grid-row:span 2;row-gap:0;padding-bottom:0}.framework-intro{padding-bottom:20px}.framework-intro>span{display:block;font-size:16px;font-weight:700;line-height:1.6;color:#4945a6;letter-spacing:.035em;margin-bottom:22px}.framework-section .identity-layers{margin-top:0;align-self:start}.framework-section .scope-note{margin-top:28px}@media(max-width:750px){.framework-section>.scenario-grid{grid-template-rows:none}.framework-section>.scenario-grid>article{display:block;grid-row:auto}.framework-intro{padding-bottom:18px}.framework-intro>span{font-size:15px;margin-bottom:12px}}

.hero-framework .framework-art{padding:16px 20px}.framework-art img{width:100%;height:300px;object-fit:contain}.art-equation{padding-bottom:10px;margin-bottom:0}.art-equation>span{margin-bottom:5px}.framework-art figcaption{padding-top:10px;gap:3px 16px;line-height:1.5}.framework-art figcaption small{font-size:12px}@media(max-width:750px){.framework-art img{height:auto;max-height:285px}.hero-framework .framework-art{padding:16px}}
.public-home{padding-top:30px;padding-bottom:48px}.hero-framework{margin:18px 0 28px;gap:36px}.hero-left h1{margin-bottom:32px}.hero-left .vision{font-size:19px;line-height:1.6}.framework-section{padding:22px 26px!important}.section-label{margin-bottom:26px}.framework-intro{padding-bottom:14px}.framework-intro>span{margin-bottom:16px}.scenario-grid h3{margin-bottom:14px}.scenario-grid p{font-size:17px;line-height:1.65}.framework-section .scope-note{margin-top:20px}.identity-layers{padding-top:12px}.identity-layers ol{margin-top:16px}.identity-layers li{margin-bottom:18px}.public-home .niche-context{margin-top:36px;padding:24px 26px!important}.niche-context h2{font-size:clamp(34px,3.7vw,50px);margin-bottom:26px}.context-intro{min-height:235px}.context-intro h3{margin-bottom:14px}.context-intro p{margin-bottom:12px}.scenario-expand summary{padding:13px 0}.scenario-projects{margin-bottom:18px}.culture-subprojects{margin-bottom:14px}.scenario-demo-slot{padding-bottom:14px}.scope-note{line-height:1.55}@media(max-width:750px){.public-home{padding-top:26px;padding-bottom:35px}.hero-framework{gap:24px;margin-bottom:26px}.hero-left h1{margin-bottom:28px}.hero-left .vision{font-size:18px}.framework-section,.public-home .niche-context{padding:20px!important}.context-intro{min-height:0}.public-home .niche-context{margin-top:28px}}

.framework-art figcaption .environment-legend{width:100%;font-size:13px;line-height:1.6;color:#d5d7ea;max-width:430px}.framework-art figcaption .environment-legend b{font-size:15px}

.framework-art img{height:210px}.hero-framework .framework-art{padding:16px 20px}@media(max-width:750px){.framework-art img{height:auto;max-height:200px}}

.framework-art img{height:236px}.framework-art figcaption{padding-top:6px;gap:2px 12px;font-size:13px;line-height:1.35}.framework-art figcaption b{font-size:15px}.hero-framework .framework-art{padding:14px 20px}.art-equation{padding-bottom:8px}.art-equation>span{margin-bottom:4px}@media(max-width:750px){.framework-art img{height:auto;max-height:225px}.framework-art figcaption{font-size:12px}}

.art-equation strong{text-align:center}.art-equation>span{text-align:left}.framework-art picture{display:block;width:100%;margin:0 auto}.framework-art figcaption{justify-content:center;text-align:center}.hero-framework .framework-art{padding:16px 20px}.art-equation{margin-bottom:8px}.framework-art figcaption{padding-top:10px;padding-bottom:2px}

.art-equation{margin-bottom:0}.framework-art img{height:224px}.framework-art figcaption{padding-top:10px}@media(max-width:750px){.framework-art img{height:auto;max-height:214px}}
.home-nav{margin-left:auto;margin-right:28px;display:flex;gap:22px;font-size:14px}.home-nav a:hover{text-decoration:underline;text-underline-offset:5px}#framework,#progress,#context{scroll-margin-top:24px}.progress-section{margin:36px 0 0;padding:24px 26px!important;background:#f0eff7;border:1px solid #d5d4e1;border-radius:16px}.progress-section .section-label{padding-top:0}.progress-section h2{font-size:clamp(32px,3.7vw,50px);font-weight:500;letter-spacing:-.04em;line-height:1.15;margin:0 0 20px}.progress-section>p{max-width:none;font-size:17px;line-height:1.65}.progress-legend{display:flex;gap:24px;font-size:16px;font-weight:600;margin:14px 0 0}.series-26{color:#4945a6}.series-35{color:#a26020}.progress-chart{display:block;width:100%;max-width:840px;margin:0 auto}.progress-section .progress-caption,.progress-section .progress-endpoints{font-size:14px;line-height:1.6;margin:10px 0}.progress-section .scope-note{font-size:14px}.context-scaling{max-width:none!important;font-size:16px!important;line-height:1.6;margin:-10px 0 26px}.scenario-demo-slot a{text-decoration:underline;color:#4945a6}@media(max-width:750px){.home-nav{display:none}.progress-section{padding:20px!important;margin-top:28px}.progress-section>p{font-size:16px}}

.owner-access-links{display:flex;align-items:center;gap:12px}.owner-access-links .nav-cta{white-space:nowrap}@media(max-width:600px){.owner-access-links{gap:8px}.owner-access-links .nav-cta{font-size:12px;padding:6px 8px}}

/* Consistent scientific typography, inspired by the Benchling reference */
.hero-left h1.microbial-headline{margin:0 0 24px;font-family:'Segoe UI',Arial,sans-serif;font-size:clamp(34px,4vw,52px);font-weight:600;line-height:1.13;letter-spacing:-.035em;color:#202334}
.microbial-headline .headline-line{display:block;color:#202334;font:inherit;letter-spacing:inherit;white-space:nowrap}
.microbial-headline .headline-line .headline-twins{color:#4945a6;font:inherit;letter-spacing:inherit}
@media(max-width:750px){.hero-left h1.microbial-headline{font-size:clamp(32px,7.6vw,50px);margin-bottom:22px;line-height:1.14}}

.niche-context h2{font-family:'Segoe UI',Arial,sans-serif;font-size:clamp(30px,3.2vw,43px);font-weight:600;line-height:1.15;letter-spacing:-.035em;color:#202334;margin-bottom:22px}
.niche-context h2 em{font:inherit;letter-spacing:inherit;color:#4945a6}
@media(max-width:750px){.niche-context h2{font-size:clamp(29px,6.7vw,38px)}}

.context-intro h3.latin-term{font-style:italic}

.art-equation .agent-update{font-size:clamp(17px,1.8vw,23px);font-weight:400;line-height:1.4;letter-spacing:0}.agent-update>span{display:block}.agent-update b{font-weight:650}.art-equation>span{font-size:11px;letter-spacing:.065em}

.art-equation .agent-update{font-size:clamp(12px,1.35vw,18px);white-space:nowrap;line-height:1.5;letter-spacing:-.025em}.agent-update>span{display:inline}.agent-update>span+span{margin-left:.25em}@media(max-width:750px){.art-equation .agent-update{font-size:clamp(10px,3.05vw,17px)}}
.art-equation .agent-update{font-size:clamp(14px,1.6vw,21px)}@media(max-width:750px){.art-equation .agent-update{font-size:clamp(11px,3.55vw,21px)}}

.equation-key{margin-top:6px;font-size:12px;color:#dedfec}.equation-key summary{cursor:pointer;font-size:12px;text-align:center}.equation-key dl{margin:8px 0}.equation-key dl>div{display:grid;grid-template-columns:36px 1fr;gap:8px;margin:4px 0}.equation-key dt{font-size:14px}.equation-key dd{margin:0;line-height:1.45}.equation-key p{margin:6px 0 0;max-width:none;font-size:11px;line-height:1.45;color:#c7cadf}

.framework-art img{height:auto;max-height:none;object-fit:contain}.framework-art picture{margin:0}.art-equation{margin-bottom:5px;padding-bottom:7px}.framework-art figcaption{padding-top:5px;gap:3px 12px}.hero-framework .framework-art{padding-top:13px;padding-bottom:11px}@media(max-width:750px){.framework-art img{height:auto;max-height:none}}

/* Review fixes: content determines panel height, no nested scrolling */
.hero-framework .framework-art,.art-equation,.framework-art picture{height:auto;max-height:none;min-height:0;overflow:visible;min-width:0}
.framework-art img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:700 / 278}
.art-equation>span{line-height:1.5;white-space:normal;overflow:visible}
.framework-intro p{opacity:1;transform:none;animation:none;text-shadow:none}
.footer-credit{display:block;margin-top:5px;font:11px/1.5 'Segoe UI',Arial,sans-serif;color:var(--muted)}

.progress-section h2{font-size:clamp(30px,3.2vw,43px);font-weight:600;line-height:1.15;margin:0 0 16px}.progress-figure{margin:16px 0 10px}.progress-figure img{width:100%;height:auto;display:block}.progress-figure figcaption,.progress-source,.progress-rule{font-size:13px!important;line-height:1.55;max-width:none;margin:8px 0}.progress-source a{color:#4945a6;text-decoration:underline}.progress-section>p{max-width:none}

.framework-art img{aspect-ratio:700 / 296}.art-equation{margin-bottom:0}.framework-art figcaption{padding-top:0}
