/* One visual language for process, platform and use-case diagrams. */
:root{--diagram-surface:#101b2b;--diagram-strong:#172d50;--diagram-border:#526d91;--diagram-text:#f4f6fa;--diagram-muted:#bcc9da;--diagram-result:#102b31;--diagram-cyan:#96e3e8}
.product-diagram,.platform-diagram,.workflow-diagram{margin:0;min-width:0}
.product-diagram{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin-bottom:24px}
.product-diagram figcaption{font-size:.875rem;letter-spacing:.04em;color:var(--diagram-muted);margin-bottom:16px}
.platform-overview{padding:72px 0 80px;background:var(--bg);border-bottom:1px solid var(--line)}
.diagram-heading{max-width:780px;margin-bottom:34px}
.diagram-heading .eyebrow{margin-bottom:14px;font-size:.875rem}
.diagram-heading h2{font-size:clamp(30px,3.2vw,44px);margin-bottom:17px}
.diagram-heading>p:last-child{color:var(--diagram-muted);font-size:1rem;line-height:1.8;max-width:700px}
.diagram-note{display:flex;gap:13px;align-items:flex-start;border-top:1px solid var(--line);padding:22px 0 0;margin-top:26px;font-size:.875rem;line-height:1.7;color:var(--diagram-muted)}
.diagram-note .diagram-icon{width:20px;height:20px;margin-top:2px}
.detail-content .workflow-diagram{margin-top:28px}
.capability-list{margin:28px 0 0;border-top:1px solid var(--diagram-border)}
.capability-row{padding:25px 0;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.6fr);gap:25px;border-bottom:1px solid var(--line)}
.capability-row dt{display:flex;gap:13px;align-items:flex-start;font-weight:600;font-size:1rem;line-height:1.6}
.capability-row dt .diagram-icon{margin-top:2px}
.capability-row dd{margin:0;min-width:0}
.detail-section .capability-row p{font-size:1rem;line-height:1.75;margin:0 0 12px;color:var(--diagram-muted)}
.capability-value{font-size:1rem;line-height:1.65;color:var(--text);border-left:2px solid var(--accent);padding-left:13px}
.capability-value>span{display:block;color:var(--accent);font-size:.875rem;margin-bottom:2px}
.use-cases{margin-top:28px;border-top:1px solid var(--diagram-border)}
.use-case{border-bottom:1px solid var(--diagram-border)}
.use-case summary{display:flex;gap:14px;align-items:center;padding:23px 2px;min-height:64px}
.use-case summary>span:nth-child(2){min-width:0;flex:1}
.use-case summary strong{display:block;color:var(--text);font-size:1.125rem;line-height:1.5;font-weight:550}
.use-case summary>span>span{display:block;font-size:.875rem;color:var(--diagram-muted);line-height:1.65;margin-top:4px}
.use-case[open] summary strong{color:var(--accent)}
.use-case-body{padding:0 0 24px}
.detail-section .case-control{display:flex;gap:10px;align-items:flex-start;font-size:.875rem;line-height:1.7;color:var(--diagram-muted);margin:21px 0 0}
.case-control .diagram-icon{width:19px;height:19px;margin-top:2px}
.detail-toc a{font-size:.875rem}.detail-toc a span{color:var(--diagram-muted)}
.detail-content,.detail-section,.fact-grid>div>*{min-width:0}.fact-grid dt{overflow-wrap:anywhere}
@media(min-width:1050px){
 .detail-page .detail-layout{grid-template-columns:215px minmax(0,1fr);gap:60px}
 .detail-section{padding-left:40px}
}
@media(max-width:1049px){.capability-row{grid-template-columns:1fr;gap:13px}.detail-page .detail-layout{grid-template-columns:1fr;gap:40px}.detail-toc{position:static}.detail-toc nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.detail-content{max-width:none}.detail-section{padding-left:35px}}
@media(max-width:700px){.platform-overview{padding:48px 0}.product-diagram{margin-bottom:22px}.detail-page .detail-section{padding-left:22px}.detail-page .section-number{left:-15px;width:30px;height:30px;font-size:.75rem}.diagram-heading h2{font-size:32px}.use-case summary{gap:10px}.use-case summary>.diagram-icon{width:21px;height:21px}.detail-toc{padding-top:20px}.detail-toc a{padding-block:12px}.detail-section h2{overflow-wrap:anywhere}}
@media print{.detail-toc,.site-header,.site-footer,.detail-cta,.related-section{display:none}.detail-layout{display:block}.detail-content{max-width:none}.use-case-body{content-visibility:visible}.platform-overview{break-inside:avoid}}
@media(max-width:460px){.detail-toc nav{grid-template-columns:1fr}.detail-page .fact-grid>div{grid-template-columns:1fr;gap:6px}.detail-page .fact-grid dt{font-size:1.375rem}.detail-page .fact-grid dd{font-size:.875rem}}

/* Product-specific diagrams: clear sources, a central action, a tangible outcome. */
:root{--flow-accent:#a6c3ff;--flow-strong:#203b65;--flow-result:#132b3c}
[data-product=contentagent]{--flow-accent:#8ce0e2;--flow-strong:#17454d;--flow-result:#14343c}
[data-product=nexus]{--flow-accent:#c2b4ff;--flow-strong:#392d61;--flow-result:#26263f}
[data-product=governance]{--flow-accent:#a4d9c1;--flow-strong:#244b44;--flow-result:#183930}
.product-diagram{border:1px solid #334359;border-radius:14px;padding:20px;margin:0 0 24px;background:radial-gradient(ellipse at 50% 40%,#17263c60,transparent 72%),#0b1320}
.product-diagram>figcaption{display:flex;align-items:center;gap:10px;color:#d5dfed;font-size:.875rem;letter-spacing:0;line-height:1.5;margin-bottom:20px}
.product-diagram>figcaption .diagram-icon{color:var(--flow-accent);font-size:1rem;width:20px;height:20px}
.mermaid-diagram{position:relative;min-width:0;width:100%;margin:0 auto}
.diagram-canvas{min-width:0;overflow:auto;padding:6px 0 12px;border-radius:8px;scrollbar-color:#607699 #0b1320;scrollbar-width:thin}
.diagram-canvas:has(.mermaid-output:empty){display:none}
.mermaid-output{min-width:0;width:max-content;margin-inline:auto}
.mermaid-output:empty{display:none}
.mermaid-output>svg{display:block;height:auto;font-family:Arial,sans-serif;overflow:visible}
.mermaid-output .node rect{rx:9px;ry:9px}
.mermaid-output .hub rect,.mermaid-output .hub polygon{filter:drop-shadow(0 3px 9px #00000050)}
.mermaid-output .edgePath path,.mermaid-output .flowchart-link{stroke-width:1.5px}
.mermaid-output .nodeLabel{font-weight:500;line-height:1.4}
.diagram-transcript{border-top:1px solid #2a394c;margin-top:10px}
.diagram-transcript>summary{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer;font-size:.875rem;line-height:1.5;color:#b4c6dd;padding:12px 0;list-style:none}
.diagram-transcript>summary::-webkit-details-marker{display:none}
.diagram-transcript>summary:before{content:"\f078";font-family:"Font Awesome 7 Free";font-weight:900;font-size:.75rem;color:var(--flow-accent);transition:transform .15s}
.diagram-transcript[open]>summary:before{transform:rotate(180deg)}
.diagram-transcript>summary:hover{color:white}
.diagram-transcript>summary:focus-visible,.diagram-canvas:focus-visible{outline:2px solid #a6c3ff;outline-offset:4px}
.diagram-transcript .diagram-description{display:grid;grid-template-columns:1fr;gap:12px;list-style:decimal;padding:0 0 12px 22px;margin:0;border:0}
.diagram-transcript .diagram-description li{padding:0;line-height:1.7;color:#c1cede;font-size:1rem}
.diagram-transcript .diagram-description li:before{display:none}
.diagram-description strong{color:#edf3fc;font-weight:600}
.diagram-description span{color:#c1cede}
.diagram-outcome{display:flex;align-items:flex-start;gap:12px;padding:18px 0 0;border-top:1px solid #334359;margin-top:8px}
.diagram-outcome .diagram-icon{color:var(--flow-accent);margin-top:3px;width:20px;height:20px;font-size:1.125rem}
.diagram-outcome>div{min-width:0}.diagram-outcome span{display:block;color:var(--flow-accent);font-size:.875rem;font-weight:600;margin-bottom:6px}
.diagram-outcome p{font-size:1rem;line-height:1.7;color:#e0e8f4;margin:0}
.platform-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:72px}
.platform-layout .diagram-heading{margin:0;max-width:none}.platform-layout .diagram-heading>p:last-child{margin:0}
.platform-layout .diagram-outcome{margin-top:28px;padding-top:22px}
.platform-diagram{background:radial-gradient(ellipse at 50% 40%,#1a2d4b66,transparent 72%),#0c1421;border:1px solid #334359;border-radius:16px;padding:28px}
.platform-diagram .diagram-note{margin-top:10px;padding-top:20px;font-size:.875rem}
.workflow-phases{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.workflow-phase{min-width:0;padding:18px;background:#101b2b;border:1px solid #334359;border-radius:12px}
.workflow-phase h3{font-size:1rem;line-height:1.5;margin:0 0 18px}.workflow-phase h3>span{color:#a6c3ff;font-size:.875rem;margin-right:6px}
.workflow-phase .diagram-transcript>summary{font-size:.875rem}
.use-case-body .mermaid-diagram{padding:20px;background:#0c1421;border:1px solid #334359;border-radius:12px}
.product-card .product-description{min-height:0;font-size:1rem;line-height:1.75}
.product-card .audience{font-size:.875rem;color:#b8c7dd;min-height:0}
.product-card .product-features{font-size:1rem;line-height:1.6}
.fact-grid>div{grid-template-columns:minmax(0,1fr);gap:7px}.fact-grid dd{font-size:1rem;line-height:1.6;color:#b8c7dd}
@media(min-width:701px) and (max-width:1040px){.products-section .product-grid{grid-template-columns:1fr}.products-section .product-card{display:flex;padding:28px}.product-card h3,.product-card .product-tagline{min-height:0}.product-diagram .diagram-canvas{padding-block:16px}.product-card .product-actions{margin-top:24px}}
@media(min-width:1041px){.product-card .product-description{min-height:7em}.product-card .product-diagram{flex:1}.product-card .product-actions{margin-top:12px}}
@media(max-width:1049px){.platform-layout{grid-template-columns:1fr;gap:30px}.platform-diagram{max-width:760px;width:100%;margin-inline:auto}.workflow-phases{grid-template-columns:1fr}.workflow-phase{padding:20px}}
@media(max-width:700px){.product-diagram{padding:16px 12px}.product-diagram>figcaption{font-size:.875rem;align-items:flex-start}.platform-diagram{padding:20px 14px}.platform-layout{gap:26px}.product-card .product-tagline{font-size:1.5rem}.diagram-outcome{gap:10px}.use-case-body .mermaid-diagram{padding:14px 10px}.diagram-heading h2{font-size:clamp(1.75rem,8vw,2.25rem)}}
@media(prefers-reduced-motion:reduce){.diagram-transcript>summary:before{transition:none}}
@media(forced-colors:active){.diagram-canvas{display:none}.diagram-transcript{border-color:CanvasText}.diagram-transcript .diagram-description{display:grid!important}.diagram-outcome{border-color:CanvasText}.diagram-description strong,.diagram-description span,.diagram-outcome p{color:CanvasText}}
@media print{.diagram-canvas{display:none}.diagram-transcript .diagram-description{display:grid!important}.diagram-transcript>summary{display:none}.product-diagram,.platform-diagram,.workflow-phase{break-inside:avoid}.platform-layout{display:block}}
