/* Flow product study — page-specific, shared identity primitives in product-room.css. */
.theme-flow{--flow-line:#291a2c35}.theme-flow button:focus-visible{outline:3px solid currentColor;outline-offset:5px}.theme-flow button{cursor:pointer}.theme-flow .product-hero-grid{padding-block:60px}.theme-flow .hero-art img{border-radius:0}.theme-flow .product-hero .lead{max-width:40ch}.paper-ribbon{display:grid;grid-template-columns:1fr 3fr auto;align-items:center;gap:24px;padding-block:28px;text-decoration:none;font-size:15px}.paper-ribbon>span:last-child{font-size:30px}.paper-ribbon:hover>span:nth-child(2){text-decoration:underline;text-underline-offset:5px}
.connection-section{padding-block:90px 60px;background:var(--lilac)}.connection-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:9%;align-items:center}.connection-art{min-width:0}.connection-art svg{display:block;width:100%;height:auto;overflow:visible}.domain-circle{fill:#f5f2e945;stroke:#291a2c50;stroke-width:1;transition:fill .35s,stroke .35s,stroke-width .35s}.domain-circle.is-active{fill:#f5f2e975;stroke:var(--ink);stroke-width:2.5}.domain-label{fill:var(--ink);font-size:32px;letter-spacing:-1.6px;text-anchor:middle;font-weight:500}.domain-caption{fill:var(--ink);font-size:12px;text-anchor:middle}.venn-word{font-size:26px;fill:var(--lilac);text-anchor:middle;letter-spacing:-1px}.connection-art figcaption{display:flex;justify-content:space-between;border-top:1px solid var(--flow-line);padding-top:18px;margin-top:10px;font-size:11px}.connection-controls{padding-bottom:20px}.domain-buttons{margin-top:22px}.domain-buttons button{border:0;border-top:1px solid var(--flow-line);background:transparent;color:var(--ink);width:100%;display:grid;grid-template-columns:36px 1fr 30px;gap:10px;align-items:center;text-align:left;padding:17px 15px;font-size:25px;letter-spacing:-.04em;transition:background .25s}.domain-buttons button:last-child{border-bottom:1px solid var(--flow-line)}.domain-buttons button span:first-child{font-size:11px;letter-spacing:0}.domain-buttons button[aria-pressed=true]{background:var(--ink);color:var(--lilac);border-color:var(--ink)}.domain-buttons button span:last-child{text-align:right;font-size:21px}.domain-detail{min-height:230px;padding-top:34px}.domain-detail h3{font-size:30px;font-weight:500;letter-spacing:-.045em;line-height:1.15;margin-block:12px 15px}.domain-detail>p:last-child{font-size:15px;line-height:1.75;max-width:39ch}.connection-controls>.text-link{margin-top:15px;font-size:12px}
.demo-section{padding-block:90px}.demo-theatre{border:1px solid var(--ink);background:var(--ink)}.demo-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 24px;color:var(--lilac)}.demo-brand{display:flex;align-items:center;gap:10px;font-size:15px}.demo-brand svg{width:25px;height:25px;fill:currentColor}.demo-roles{display:flex;border:1px solid #d7c8f450;padding:3px}.demo-roles button{border:0;background:transparent;color:var(--lilac);font-size:12px;padding:10px 24px;min-height:40px}.demo-roles button[aria-pressed=true]{background:var(--lilac);color:var(--ink)}.demo-mode{font-size:10px}.demo-stage{position:relative;aspect-ratio:1440/900;background:var(--paper);overflow:hidden}.demo-stage>img{display:block;width:100%;height:100%;object-fit:contain}.demo-stage iframe{display:block;width:100%;height:100%;border:0;position:absolute;inset:0;background:var(--paper)}.demo-stage [hidden]{display:none!important}.demo-message{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;text-align:center;padding:25px;background:var(--paper);z-index:2}.demo-message p{font-size:20px;max-width:36ch}.demo-message button{background:var(--ink);color:var(--lilac);border:0;padding:15px 25px}.demo-launch{background:var(--lilac);display:flex;justify-content:space-between;align-items:center;gap:25px;padding:28px 30px}.demo-launch p{font-size:20px;letter-spacing:-.025em}.demo-launch div>span{display:block;font-size:11px;line-height:1.65;margin-top:8px;max-width:55ch}.demo-open{flex-shrink:0;display:inline-flex;justify-content:space-between;align-items:center;gap:35px;text-decoration:none;padding:18px 22px;min-height:55px;font-size:13px;background:var(--ink);color:var(--lilac)}.demo-open:hover{text-decoration:underline}.demo-footnote{display:flex;justify-content:space-between;gap:20px;font-size:11px;line-height:1.7;margin-top:18px}.demo-footnote a{flex-shrink:0}.no-script-note{font-size:13px;margin-top:15px}
.continuity-section{background:var(--ink);color:var(--lilac);padding-block:90px 45px}.continuity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5%}.continuity-card{border-top:1px solid #d7c8f450;padding-top:20px}.continuity-card h3{font-size:32px;line-height:1.2;font-weight:500;letter-spacing:-.04em;margin-block:13px 18px}.continuity-card>p:last-child{font-size:15px;line-height:1.8;max-width:37ch}.continuity-illustration{height:230px;margin-bottom:30px;display:flex;flex-direction:column;justify-content:center}.metadata-illustration{padding:15px 22px}.record-tab{font-size:12px;padding-bottom:12px}.record-row{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #d7c8f460;padding:12px 0;font-size:10px}.record-row i{display:block;width:40%;height:5px;background:#d7c8f440}.record-row:nth-child(3) i{width:55%}.record-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #d7c8f460;padding-top:14px;font-size:10px}.record-footer span{font-size:24px}.pipeline-illustration svg{width:100%;height:auto}.pipeline-illustration rect{fill:var(--lilac)}.pipeline-illustration text{fill:var(--ink);text-anchor:middle;font-size:11px}.delivery-illustration{flex-direction:row;align-items:center;gap:16px}.delivery-file{width:42%;height:168px;background:var(--lilac);color:var(--ink);padding:18px;font-size:13px;display:flex;flex-direction:column;gap:12px}.delivery-rule{height:3px;background:#291a2c50;margin-top:5px}.delivery-rule.short{width:65%;margin:0}.delivery-file strong{font-size:36px;font-weight:400;align-self:flex-end;line-height:1}.delivery-destinations{display:grid;gap:13px;font-size:11px}.delivery-destinations span{padding-bottom:12px;border-bottom:1px solid #d7c8f460}.illustration-note{font-size:10px;opacity:.6;border-top:1px solid #d7c8f430;margin-top:50px;padding-top:20px}
.paper-section{display:grid;grid-template-columns:1.05fr 1fr;gap:12%;align-items:center;padding-block:100px;border-bottom:1px solid var(--line)}.paper-copy h2{font-size:clamp(42px,5vw,76px);font-weight:500;line-height:1.06;letter-spacing:-.06em;margin-top:25px}.paper-intro{font-size:18px;line-height:1.75;max-width:39ch;margin-top:28px}.paper-citation{border-top:1px solid var(--line);margin-top:40px;padding-top:20px;max-width:47ch}.paper-label{font-size:10px;text-transform:uppercase;letter-spacing:.06em}.paper-citation h3{font-size:19px;font-weight:500;line-height:1.5;margin-top:12px;letter-spacing:-.025em}.paper-citation p{font-size:12px;line-height:1.8;margin-top:17px}.paper-folio{background:var(--lilac);padding:25px 35px 22px}.folio-heading{display:flex;justify-content:space-between;font-size:10px;padding-bottom:25px;gap:15px}.paper-folio>a{display:block;width:85%;margin:auto;box-shadow:8px 12px 0 #291a2c16;transition:transform .3s}.paper-folio>a:hover{transform:translateY(-5px)}.paper-folio img{width:100%;height:auto;display:block}.paper-folio figcaption{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:11px;margin-top:28px}.paper-folio figcaption>span:last-child{font-size:26px}.theme-flow #facilities .platform-grid{gap:0;border:1px solid var(--line)}.theme-flow #facilities .platform-grid article{padding:27px;border:0}.theme-flow #facilities .platform-grid article+article{border-left:1px solid var(--line)}.theme-flow #facilities .platform-grid article:nth-child(2){background:var(--lilac)}.theme-flow #facilities .platform-grid h3{font-size:26px}.theme-flow #facilities .platform-grid p:not(.kicker){font-size:14px}
@media(min-width:1600px){.connection-layout{gap:12%}.domain-detail{min-height:250px}.domain-detail h3{font-size:36px}.domain-detail>p:last-child{font-size:17px}}
@media(max-width:1100px){.paper-ribbon{grid-template-columns:1fr 3fr auto;font-size:13px}.connection-section,.demo-section,.continuity-section{padding-block:65px}.connection-layout{gap:5%;grid-template-columns:1.3fr 1fr}.domain-detail h3{font-size:27px}.domain-detail>p:last-child{font-size:14px}.domain-detail{min-height:245px}.demo-mode{display:none}.demo-launch{padding:22px}.demo-launch p{font-size:18px}.continuity-grid{gap:3%}.continuity-card h3{font-size:27px}.continuity-card>p:last-child{font-size:14px}.continuity-illustration{height:205px}.delivery-file{padding:15px;width:45%}.delivery-destinations{font-size:9px}.paper-section{gap:7%;padding-block:70px}.paper-folio{padding-inline:22px}.paper-folio>a{width:91%}.paper-intro{font-size:16px}.paper-citation h3{font-size:17px}.theme-flow #facilities .platform-grid article{padding:22px}}
@media(max-width:800px){.theme-flow .product-hero-grid{padding-block:43px}.paper-ribbon{grid-template-columns:1fr auto;gap:8px}.paper-ribbon .kicker{grid-column:1}.paper-ribbon>span:last-child{grid-column:2;grid-row:1/3}.connection-layout{grid-template-columns:1fr;gap:30px}.connection-art{max-width:650px;margin:auto;width:100%}.connection-controls{padding-bottom:0}.domain-buttons{display:flex;gap:0}.domain-buttons button{grid-template-columns:auto 1fr;padding:16px 13px;gap:10px;border-bottom:1px solid var(--line);font-size:23px}.domain-buttons button span:last-child{display:none}.domain-detail{min-height:190px}.domain-detail>p:last-child{max-width:60ch}.connection-controls>.text-link{margin-top:0}.demo-launch{align-items:flex-start}.demo-open{font-size:12px;padding:17px;gap:20px}.demo-launch p{font-size:17px}.demo-footnote{font-size:10px}.continuity-grid{grid-template-columns:1fr;gap:35px}.continuity-card{display:grid;grid-template-columns:1fr 1.2fr;gap:0 8%;align-items:start}.continuity-illustration{grid-row:1/4;margin:0}.continuity-card>.kicker{align-self:end}.continuity-card h3{margin-block:12px}.continuity-card>p:last-child{max-width:44ch}.paper-section{grid-template-columns:1fr;gap:40px}.paper-copy{max-width:590px}.paper-copy h2{font-size:55px}.paper-intro{max-width:48ch}.paper-folio{max-width:520px;width:100%;justify-self:center;padding:25px 35px}.paper-folio>a{width:82%}.theme-flow #facilities .platform-grid article+article{border-left:0;border-top:1px solid var(--line)}}
@media(max-width:500px){.theme-flow .product-hero-grid{padding-block:35px 28px}.paper-ribbon{padding-block:22px}.paper-ribbon>span:nth-child(2){max-width:29ch;font-size:12px;line-height:1.6}.connection-section,.demo-section,.continuity-section{padding-block:48px}.connection-layout{gap:30px}.connection-art svg{margin-inline:-3%;width:106%}.connection-art figcaption{font-size:9px}.domain-buttons button{font-size:18px;padding:13px 9px;gap:7px}.domain-buttons button span:first-child{font-size:9px}.domain-detail{min-height:210px;padding-top:28px}.domain-detail h3{font-size:29px}.demo-toolbar{padding:15px 12px;gap:8px;flex-wrap:wrap}.demo-brand{font-size:13px;gap:8px}.demo-brand svg{width:22px;height:22px}.demo-roles button{font-size:11px;padding:8px 10px;min-height:36px}.demo-launch{flex-direction:column;gap:20px;padding:22px 18px}.demo-launch p{font-size:20px}.demo-launch div>span{font-size:11px}.demo-open{width:100%;font-size:13px}.demo-footnote{flex-direction:column;gap:10px;font-size:10px}.demo-stage{aspect-ratio:1.35}.demo-stage>img{width:160%;max-width:none;object-fit:cover;object-position:top left;height:100%}.demo-stage iframe{height:100%}.continuity-card{grid-template-columns:1fr;gap:0}.continuity-illustration{grid-row:auto;max-width:330px;width:100%;height:210px;justify-self:center;margin-bottom:25px}.continuity-card h3{font-size:29px}.continuity-card>p:last-child{font-size:15px;max-width:40ch}.continuity-card{padding-top:0}.delivery-destinations{font-size:11px}.delivery-file{width:42%}.paper-section{padding-block:48px}.paper-copy h2{font-size:44px}.paper-intro{font-size:16px}.paper-citation{margin-top:30px}.paper-folio{padding:20px}.paper-folio>a{width:90%}.paper-folio figcaption{font-size:10px}.theme-flow #facilities .platform-grid article{padding:24px}.demo-message p{font-size:16px}}
@media(prefers-reduced-motion:reduce){.domain-circle,.paper-folio>a,.domain-buttons button{transition:none}.paper-folio>a:hover{transform:none}}
.capability-explorer{margin-top:48px;border-top:1px solid var(--flow-line);padding-top:35px}.capability-explorer [hidden]{display:none}.capability-heading{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:end;margin-bottom:30px}.capability-heading h3{font-size:clamp(30px,3.2vw,46px);line-height:1.12;letter-spacing:-.045em;font-weight:500;margin-top:12px}.capability-heading>p{font-size:15px;line-height:1.75;max-width:46ch;justify-self:end}.capability-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--flow-line);border:1px solid var(--flow-line)}.capability-inputs article{background:#e5dcf3;padding:27px}.capability-inputs h4{font-size:24px;line-height:1.2;font-weight:500;letter-spacing:-.035em;margin:15px 0}.capability-inputs p{font-size:14px;line-height:1.75}.capability-inputs a{display:inline-block;margin-top:16px;font-size:12px}.capability-inputs--two{grid-template-columns:1fr 1fr}.capability-sequencers{border-bottom:1px solid var(--flow-line);margin-top:16px}.capability-sequencers summary{cursor:pointer;padding:20px 0;font-size:14px}.capability-sequencers summary>span{float:right}.sequencer-families{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;padding-block:10px 25px}.sequencer-families h4{font-size:15px;margin:0 0 12px;font-weight:600}.sequencer-families p{font-size:13px;line-height:1.8}.capability-note{font-size:11px;line-height:1.7;padding-bottom:22px;max-width:85ch}.capability-pipelines{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.capability-pipeline{background:#e5dcf3;border:1px solid var(--flow-line);padding:23px;text-decoration:none}.capability-pipeline:hover{background:var(--paper)}.capability-pipeline>span{display:flex;justify-content:space-between;gap:15px;font-size:20px;letter-spacing:-.03em}.capability-pipeline p{font-size:13px;line-height:1.7;margin-top:14px}.capability-bottom{display:flex;justify-content:space-between;gap:30px;align-items:start;margin-top:22px;font-size:11px;line-height:1.7}.capability-bottom p{max-width:75ch}.capability-bottom a{flex-shrink:0}
@media(max-width:800px){.capability-heading{grid-template-columns:1fr;gap:20px}.capability-heading>p{justify-self:start}.capability-inputs{grid-template-columns:1fr}.capability-pipelines{grid-template-columns:1fr 1fr}.sequencer-families{grid-template-columns:1fr 1fr}.capability-bottom{flex-direction:column;gap:15px}}
@media(max-width:500px){.capability-explorer{margin-top:32px;padding-top:28px}.capability-pipelines,.sequencer-families{grid-template-columns:1fr}.capability-inputs article{padding:23px}.capability-heading h3{font-size:32px}}
/* A publication announcement, treated as an editorial insert. */
.paper-announcement{padding-block:65px 85px}.paper-announcement-panel{background:var(--lilac);padding:30px 40px;color:var(--ink)}.paper-announcement-meta{display:flex;justify-content:space-between;gap:25px;border-bottom:1px solid #291a2c35;padding-bottom:22px;font-size:10px;letter-spacing:.04em}.paper-announcement-meta>span:first-child{text-transform:uppercase}.paper-announcement-meta>span:last-child>span{margin-inline:8px}.paper-announcement-main{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:70px;align-items:center;padding-block:40px}.paper-announcement-copy h2{font-size:clamp(40px,5.1vw,74px);font-weight:500;line-height:1.04;letter-spacing:-.06em;margin:0}.paper-announcement-copy>p{font-size:16px;line-height:1.75;max-width:47ch;margin-top:25px}.paper-announcement-actions{display:flex;align-items:center;gap:28px;margin-top:32px}.paper-read-link{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;background:var(--ink);color:var(--lilac);padding:17px 22px;text-decoration:none;font-size:13px}.paper-read-link>span{font-size:23px;line-height:1}.paper-read-link:hover{text-decoration:underline;text-underline-offset:4px}.paper-pdf-link{display:inline-flex;gap:20px;font-size:12px;text-underline-offset:5px}.paper-announcement-preview{display:block;text-decoration:none;max-width:240px;justify-self:end;transition:transform .3s ease}.paper-announcement-preview:hover{transform:translateY(-4px)}.paper-announcement-preview img{display:block;width:100%;height:auto;box-shadow:0 5px 16px #291a2c12}.paper-announcement-preview>span{display:flex;justify-content:space-between;font-size:10px;margin-top:14px}.paper-announcement-citation{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:24px;border-top:1px solid #291a2c35;padding-top:24px;align-items:start}.paper-announcement-citation>.kicker{font-size:10px;padding-top:3px}.paper-announcement-citation h3{font-weight:500;font-size:15px;line-height:1.6;max-width:75ch;margin:0}.paper-announcement-citation p{font-size:11px;margin-top:10px;line-height:1.7;opacity:.7}.paper-announcement-status{font-size:9px;border:1px solid #291a2c50;padding:6px 9px}@media(max-width:1000px){.paper-announcement-panel{padding:27px}.paper-announcement-main{gap:35px;grid-template-columns:minmax(0,1fr) 185px}.paper-announcement-copy h2{font-size:48px}.paper-announcement-copy>p{font-size:14px}.paper-announcement-citation{grid-template-columns:90px minmax(0,1fr);gap:20px}.paper-announcement-status{display:none}}@media(max-width:700px){.paper-announcement{padding-block:45px}.paper-announcement-meta{flex-direction:column;gap:12px}.paper-announcement-main{grid-template-columns:1fr;gap:30px;padding-block:30px}.paper-announcement-copy h2{font-size:clamp(35px,7vw,48px)}.paper-announcement-preview{display:none}.paper-announcement-actions{gap:22px;flex-wrap:wrap;margin-top:25px}.paper-read-link{padding:15px 18px;gap:25px;font-size:12px}.paper-announcement-citation{grid-template-columns:1fr;gap:12px}.paper-announcement-citation h3{font-size:13px}.paper-announcement-citation p{font-size:10px}.paper-announcement-panel{padding:25px 22px}.paper-announcement-copy>p{font-size:14px}}@media(prefers-reduced-motion:reduce){.paper-announcement-preview{transition:none}.paper-announcement-preview:hover{transform:none}}
/* Direct interaction on the original diagram. */
.connection-art svg>g,.connection-art svg>text,.connection-art svg>use{pointer-events:none}.domain-circle{cursor:pointer;pointer-events:all}.domain-circle:hover{stroke:var(--ink);stroke-width:3}.domain-circle:focus-visible{outline:none;stroke:var(--ink);stroke-width:4;stroke-dasharray:8 5}
/* SVG focus follows the circle, rather than its rectangular bounds. */
.connection-art .domain-circle:focus{outline:none}
.connection-art .domain-circle:focus-visible{outline:none;stroke:var(--ink);stroke-width:4;stroke-dasharray:8 5}
/* A clean app preview, with controls in the introduction. */
.demo-intro{justify-self:end;max-width:44ch}.demo-intro>p{font-size:17px;line-height:1.75}.demo-entry{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:22px}.demo-intro .demo-roles{border-color:var(--line)}.demo-intro .demo-roles button{color:var(--ink);padding:9px 16px;font-size:12px}.demo-intro .demo-roles button[aria-pressed=true]{background:var(--ink);color:var(--lilac)}.demo-intro .demo-open{background:transparent;color:var(--ink);min-height:44px;padding:0;gap:20px;font-size:12px;text-decoration:underline;text-underline-offset:5px}.demo-example{margin:0}.demo-example .demo-stage{border:1px solid var(--line)}.demo-example figcaption{display:flex;justify-content:space-between;gap:20px;padding-top:12px;font-size:10px;line-height:1.6;opacity:.75}@media(max-width:800px){.demo-intro{justify-self:start;max-width:48ch}.demo-intro>p{font-size:16px}.demo-entry{gap:20px;margin-top:18px}}@media(max-width:500px){.demo-intro>p{font-size:15px}.demo-intro .demo-open{width:auto}.demo-example figcaption{font-size:9px;gap:15px}.demo-example figcaption>span:last-child{flex-shrink:0}}
/* The report builder, shown through the working UI components. */
.report-builder-section{padding-block:60px 48px}.report-builder-intro{max-width:44ch;justify-self:end}.report-builder-intro>p{font-size:17px;line-height:1.75}.report-builder-switch{display:flex;align-items:center;gap:10px;margin-top:24px}.report-builder-switch button{font:inherit;font-size:13px;background:transparent;color:var(--ink);border:1px solid var(--line);padding:13px 18px;cursor:pointer;min-height:46px}.report-builder-switch button>span{font-size:10px;margin-right:12px;opacity:.65}.report-builder-switch button[aria-pressed=true]{background:var(--lilac);border-color:var(--lilac)}.report-builder-bridge{font-size:22px;opacity:.6}.report-builder-example{margin:0}.report-builder-example>a{display:block;border:1px solid var(--line);background:white;overflow:auto}.report-builder-example img{display:block;width:100%;height:auto}.report-builder-example figcaption{display:flex;align-items:baseline;justify-content:space-between;gap:25px;font-size:11px;line-height:1.7;padding-top:15px}.report-builder-example figcaption>span{font-size:10px;opacity:.65;flex-shrink:0}@media(max-width:800px){.report-builder-section{padding-block:44px}.report-builder-intro{justify-self:start;max-width:48ch}.report-builder-intro>p{font-size:16px}.report-builder-example figcaption{align-items:start;flex-direction:column;gap:6px}}@media(max-width:500px){.report-builder-intro>p{font-size:15px}.report-builder-switch{gap:8px;margin-top:20px}.report-builder-switch button{padding:12px 14px;font-size:12px}.report-builder-switch button>span{margin-right:8px}.report-builder-example img{min-width:850px}.report-builder-example figcaption{font-size:10px}}

/* Live canvas replaces the image while keeping the established section framing. */
.report-builder-live iframe{display:block;width:100%;height:clamp(680px,82vh,1050px);border:1px solid var(--line);background:#fff}.report-builder-live figcaption>a{font-size:11px;white-space:nowrap;min-width:0!important}.report-builder-live figcaption{align-items:start}.report-builder-live figcaption p{max-width:70ch}@media(max-width:600px){.report-builder-live iframe{height:740px}.report-builder-live figcaption{flex-direction:column;gap:10px}.report-builder-live figcaption>a{font-size:12px}}

.report-page-intro{border-top:1px solid var(--line);margin-top:42px;padding-top:28px;display:grid;grid-template-columns:1fr 1fr;column-gap:6%;row-gap:10px;align-items:start}.report-page-intro .kicker{grid-column:1/-1}.report-page-intro h3{font-size:clamp(28px,3.2vw,46px);line-height:1.15;letter-spacing:-.05em;font-weight:500}.report-page-intro>p:last-child{font-size:15px;line-height:1.75;max-width:50ch}.report-builder-page{margin-top:24px}.report-builder-page iframe{height:1300px}@media(max-width:700px){.report-page-intro{grid-template-columns:1fr;margin-top:32px;padding-top:24px}.report-page-intro>p:last-child{font-size:14px}.report-builder-page{margin-top:20px}}

/* Installation: lead with a human handover, keep the open route visible. */
.flow-setup{padding-block:38px 24px;scroll-margin-top:24px}.flow-managed{background:var(--ink);color:var(--lilac);padding:30px 38px}.flow-setup-meta{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #d7c8f43d;padding-bottom:22px;font-size:10px;text-transform:uppercase;letter-spacing:.06em}.flow-managed-body{display:grid;grid-template-columns:1.25fr 1fr;gap:10%;padding-block:38px}.flow-managed h2{font-size:clamp(38px,4.4vw,68px);line-height:1.08;letter-spacing:-.055em;font-weight:500}.flow-managed-copy>p{font-size:16px;line-height:1.75;max-width:44ch;margin-top:24px}.flow-setup-contact{display:inline-flex;align-items:center;justify-content:space-between;gap:48px;background:var(--lilac);color:var(--ink);padding:17px 22px;font-size:14px;margin-top:30px;text-decoration:none}.flow-setup-contact>span{font-size:24px;transition:transform .2s}.flow-setup-contact:hover>span{transform:translate(3px,-3px)}.flow-contact-note{display:block;font-size:10px;line-height:1.7;margin-top:12px;opacity:.7}.flow-setup-steps{list-style:none;padding:0;margin:0;align-self:center}.flow-setup-steps li{display:grid;grid-template-columns:28px 1fr;gap:16px;padding:24px 0;border-bottom:1px solid #d7c8f43d}.flow-setup-steps li:first-child{padding-top:0}.flow-setup-steps li>span{font-size:10px;padding-top:6px;opacity:.6}.flow-setup-steps h3{font-size:25px;line-height:1.2;font-weight:500;letter-spacing:-.035em}.flow-setup-steps p{font-size:13px;line-height:1.75;margin-top:10px;max-width:37ch;opacity:.8}.flow-managed-foot{display:flex;gap:18px;align-items:center;border-top:1px solid #d7c8f43d;padding-top:24px}.flow-managed-foot svg{width:40px;height:40px}.flow-managed-foot p{font-size:11px;line-height:1.7}.flow-managed-foot>span{margin-left:auto;font-size:21px;letter-spacing:-.04em}.flow-managed-foot b{font-weight:400}
.flow-self-install{display:grid;grid-template-columns:.8fr 1.4fr;gap:6%;padding-block:38px;align-items:center}.flow-self-copy h3{font-size:32px;line-height:1.12;font-weight:500;letter-spacing:-.04em;margin-top:16px}.flow-self-copy>p:not(.kicker){font-size:14px;line-height:1.75;margin-top:17px;max-width:40ch}.flow-self-copy>a{font-size:11px;line-height:1.8;display:inline-flex;gap:18px;margin-top:20px}.flow-install-terminal{background:#ede7f2;border:1px solid var(--line);min-width:0}.flow-terminal-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 20px;border-bottom:1px solid var(--line);font-size:11px}.flow-terminal-head>span>span{opacity:.4;margin-inline:8px}.flow-terminal-head button{font:inherit;border:0;background:transparent;color:inherit;cursor:pointer;display:flex;gap:12px;align-items:center;padding:6px 0}.flow-terminal-head button:hover{text-decoration:underline}.flow-install-terminal pre{font-size:12px;line-height:2.2;padding:28px 20px;margin:0;overflow-x:auto;tab-size:2;white-space:pre;scrollbar-width:thin}.flow-install-terminal code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.flow-terminal-foot{display:flex;justify-content:space-between;gap:15px;padding:14px 20px;border-top:1px solid var(--line);font-size:10px;line-height:1.6;min-height:45px}.flow-open-source{border-block:1px solid var(--line);display:flex;justify-content:space-between;gap:30px;align-items:center;padding:24px 0}.flow-open-source p{font-size:20px;letter-spacing:-.03em;margin-top:9px}.flow-open-source nav{display:flex;gap:30px}.flow-open-source a{font-size:12px;display:flex;gap:20px;align-items:center}.flow-setup :focus-visible{outline:2px solid currentColor;outline-offset:5px}
@media(max-width:850px){.flow-managed-body{gap:6%}.flow-self-install{grid-template-columns:1fr;gap:24px}.flow-self-copy>p:not(.kicker){max-width:65ch}.flow-open-source{align-items:start;flex-direction:column;gap:20px}}
@media(max-width:600px){.flow-setup{padding-top:20px}.flow-managed{padding:22px}.flow-managed-body{grid-template-columns:1fr;gap:32px;padding-block:28px}.flow-managed h2{font-size:38px}.flow-managed-copy>p{font-size:14px;margin-top:20px}.flow-setup-contact{width:100%;gap:20px;font-size:13px;padding:14px 18px;margin-top:24px}.flow-setup-steps li{padding:18px 0}.flow-setup-steps h3{font-size:22px}.flow-managed-foot>span{display:none}.flow-self-install{padding-block:28px}.flow-self-copy h3{font-size:29px}.flow-terminal-head,.flow-terminal-foot{padding:13px}.flow-install-terminal pre{padding:20px 13px;font-size:11px}.flow-terminal-foot{flex-direction:column;gap:0}.flow-terminal-foot [role=status]:empty{display:none}.flow-open-source nav{flex-wrap:wrap;gap:18px}.flow-open-source p{font-size:19px}.flow-setup-meta{font-size:9px;gap:10px}}
@media(prefers-reduced-motion:reduce){.flow-setup-contact>span{transition:none}}

/* A physical sample, held in the same visual field as its result. */
.flow-sample-story{align-self:center}.sample-story-stage{position:relative;aspect-ratio:600/560;width:100%;isolation:isolate}.hero-art .sample-story-tube{position:absolute;width:75%;height:auto;left:-5%;top:8%;z-index:1;object-fit:contain}.sample-result-graphic{position:absolute;inset:0;width:100%;height:100%;overflow:visible;color:var(--lilac)}.sample-result-graphic text{fill:currentColor;opacity:.55;font-family:Manrope,sans-serif;font-size:9px;letter-spacing:1.2px}.sample-read{stroke:currentColor;stroke-width:2;opacity:var(--read-opacity)}.sample-connection{stroke:currentColor;stroke-width:1.1;opacity:.65}.sample-result-axis{stroke:currentColor;stroke-width:.8;opacity:.25}.sample-result-bar{stroke:currentColor;stroke-width:12;opacity:.2;transform-box:fill-box;transform-origin:center bottom}.sample-result-topline{stroke:currentColor;stroke-width:1.2;opacity:.85}.flow-sample-story figcaption{display:flex;justify-content:space-between;gap:18px;border-top:1px solid #d7c8f426;padding-top:14px;margin-top:0;font-size:10px;opacity:.65}.sample-story-playing .sample-story-tube{animation:sample-tube-settle 3.4s cubic-bezier(.2,.65,.3,1) both}.sample-story-playing .sample-read{animation:sample-read-settle 2.4s var(--delay) cubic-bezier(.2,.6,.3,1) both}.sample-story-playing .sample-connection{animation:sample-line-arrive 3s .7s cubic-bezier(.3,.5,.3,1) both}.sample-story-playing .sample-result-bar{animation:sample-result-settle 2s var(--delay) cubic-bezier(.2,.6,.3,1) both}.sample-story-playing .sample-result-topline{animation:sample-line-arrive 2.2s 1.6s ease both}@keyframes sample-tube-settle{from{transform:translate(-3px,9px);opacity:.65}to{transform:translate(0,0);opacity:1}}@keyframes sample-read-settle{from{opacity:0;transform:translateY(-7px)}to{opacity:var(--read-opacity);transform:translateY(0)}}@keyframes sample-line-arrive{from{stroke-dasharray:1;stroke-dashoffset:1;opacity:0}to{stroke-dasharray:1;stroke-dashoffset:0}}@keyframes sample-result-settle{from{transform:scaleY(.85);opacity:0}to{transform:scaleY(1);opacity:.2}}
@media(max-width:800px){.flow-sample-story{width:min(100%,600px);justify-self:center}.sample-story-stage{margin-top:0}}@media(max-width:500px){.flow-sample-story figcaption{font-size:9px;gap:12px}.sample-result-graphic text{font-size:10px}}
@media(prefers-reduced-motion:reduce){.sample-story-playing .sample-story-tube,.sample-story-playing .sample-read,.sample-story-playing .sample-connection,.sample-story-playing .sample-result-bar,.sample-story-playing .sample-result-topline{animation:none}}

/* Slow open/close dissolve, followed by a low-contrast signal through the plot. */
.hero-art .sample-tube-open{opacity:0;transform:translate(-10.8%,3.2%);pointer-events:none}.sample-story-playing .sample-tube-closed{animation:sample-lid-closed 14s ease-in-out infinite;transform:none}.sample-story-playing .sample-tube-open{animation:sample-lid-open 14s ease-in-out infinite}.sample-story-playing .sample-read{animation:sample-read-pulse 14s var(--delay) ease-in-out infinite}.sample-story-playing .sample-result-bar{animation:sample-bar-pulse 14s var(--delay) ease-in-out infinite}.sample-story-playing .sample-connection{animation:sample-link-pulse 14s ease-in-out infinite}.sample-story-playing .sample-result-topline{animation:sample-plot-pulse 14s ease-in-out infinite}.sample-motion-toggle{display:inline-flex;align-items:center;gap:7px;flex:none;background:none;border:0;padding:4px 0;color:inherit;font:inherit;cursor:pointer;min-height:28px}.sample-motion-toggle[hidden]{display:none}.sample-motion-toggle:hover{color:#f5f2e9}.sample-motion-toggle:focus-visible{outline:1px solid currentColor;outline-offset:4px}.sample-story-paused *{animation-play-state:paused!important}
@keyframes sample-lid-closed{0%,16%,54%,100%{opacity:1}25%,45%{opacity:0}}@keyframes sample-lid-open{0%,16%,54%,100%{opacity:0}25%,45%{opacity:1}}@keyframes sample-read-pulse{0%,42%,83%,100%{opacity:var(--read-opacity)}61%{opacity:.78}}@keyframes sample-bar-pulse{0%,48%,92%,100%{opacity:.2;transform:scaleY(1)}71%{opacity:.34;transform:scaleY(.97)}}@keyframes sample-link-pulse{0%,45%,90%,100%{opacity:.5}66%{opacity:.9}}@keyframes sample-plot-pulse{0%,52%,95%,100%{opacity:.65}75%{opacity:1}}
@media(prefers-reduced-motion:reduce){.sample-story-playing .sample-tube-closed{animation:none;opacity:1}.sample-story-playing .sample-tube-open{animation:none;opacity:0}.sample-story-playing .sample-read,.sample-story-playing .sample-result-bar,.sample-story-playing .sample-connection,.sample-story-playing .sample-result-topline{animation:none}.sample-motion-toggle{display:none}}
.hero-art .sample-story-tube{width:63%;left:5%;top:20%}
@media(prefers-reduced-motion:reduce){.flow-sample-story .sample-tube-open{opacity:0!important;animation:none!important}.flow-sample-story .sample-tube-closed{opacity:1!important;animation:none!important}}

/* Restore the original single photographic tube; only the data has ambient motion. */
.hero-art .sample-story-tube{width:75%;left:-5%;top:8%}.sample-story-playing .sample-tube-closed{animation:none;opacity:1;transform:none}


/* Read fragments and composition profiles, using illustrative sequence/data. */
.sample-result-graphic .sequence-field-label{font-size:8px;letter-spacing:1.05px;opacity:.5}.sample-result-graphic .sequence-read{stroke:none}.sample-result-graphic .read-base rect{fill:#d7c8f4;opacity:.12}.sample-result-graphic .read-base text{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:8px;font-weight:500;letter-spacing:0;text-anchor:middle;opacity:1;fill:#e9ddf8}.sample-result-graphic .base-a rect{fill:#eee4fa;opacity:.17}.sample-result-graphic .base-c rect{fill:#a998d2;opacity:.23}.sample-result-graphic .base-g rect{fill:#b7cbd6;opacity:.16}.sample-result-graphic .base-t rect{fill:#d0a7c1;opacity:.17}.sample-result-graphic .base-c text{fill:#b8a2d4}.sample-result-graphic .base-g text{fill:#c2cfd8}.sample-result-graphic .base-t text{fill:#d3b1cb}.sample-result-graphic .abundance-column{stroke:none;opacity:.8;transform:none}.abundance-taxon{stroke:var(--ink);stroke-width:1}.taxon-0{fill:#e6d9f6}.taxon-1{fill:#bba4d6}.taxon-2{fill:#9079ad}.taxon-3{fill:#63516f}.sample-story-playing .abundance-column{animation:abundance-light 14s var(--delay) ease-in-out infinite}@keyframes abundance-light{0%,48%,92%,100%{opacity:.8}71%{opacity:1}}@media(prefers-reduced-motion:reduce){.sample-story-playing .abundance-column{animation:none}}
/* A slow, small drift for the single sample image. */
.sample-story-playing .sample-tube-closed{animation:sample-natural-drift 8s ease-in-out infinite;transform-origin:73% 93%;opacity:1}
@keyframes sample-natural-drift{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-7px) rotate(-.35deg)}}
@media(prefers-reduced-motion:reduce){.sample-story-playing .sample-tube-closed{animation:none!important;transform:none!important}}
