/* A shared, flat visual language for every product after the mountain hero. */
:root{--ink:#213c4c;--muted:#657681;--line:#cbd5db}
html{scroll-padding-top:0}body{background:#fff}.hero{position:relative;height:100svh;min-height:620px}.hero:focus,.schematic-chapter:focus,.product:focus{outline:none}
.nav{position:fixed;height:88px;border:0;background:linear-gradient(#132b3a25,transparent);transition:background .25s,color .25s}
.nav.on-light{background:#fffffff5;color:#243b49;border-bottom:1px solid #d5dde54d}.nav.on-light .brand img{filter:brightness(0);opacity:.86}.nav.on-light .brand span{border-color:#253c4940}.nav nav a[aria-current],.nav nav a:hover{border-color:currentColor}
.schematic-chapter{min-height:100svh;padding:118px 5.2% 56px;display:flex;flex-direction:column;justify-content:center;gap:34px;background:#fff;color:var(--ink);scroll-margin-top:0}
.schematic-chapter>*{width:100%;max-width:1600px;margin-left:auto;margin-right:auto}.schematic-chapter .section-meta{padding-bottom:18px;font-size:11px;letter-spacing:.1em}
.chapter-heading{display:grid;grid-template-columns:1.25fr 1fr;align-items:end;gap:9%;margin-top:0;margin-bottom:0}.chapter-heading h2{font-size:clamp(36px,3.9vw,64px);line-height:1.08;font-weight:400;letter-spacing:-.048em}.chapter-heading>p{font-size:clamp(15px,1.25vw,19px);line-height:1.6;margin:0 0 3px;max-width:570px;text-wrap:pretty}
.chapter-wordmark{display:block;height:17px;max-width:100%;width:auto;margin-bottom:24px}.chapter-notes{display:none}
.product-figure{background:#f6f8fa;border-color:#cfd9e0}.product-figure .lineage-caption{padding:19px 26px;background:#fff;min-height:60px}.product-figure .lineage-caption>span{font-size:11px}.product-figure .lineage-caption p{font-size:13px;text-wrap:pretty}
.product-diagram{position:relative;height:320px;isolation:isolate;overflow:hidden}.product-edges,.product-diagram>canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.product-edges{z-index:0}.product-diagram>canvas{z-index:1}
.flow-columns{position:absolute;top:24px;left:3%;right:3%;display:grid;grid-template-columns:repeat(4,1fr);gap:7%;color:#718590;font-size:10px;letter-spacing:.1em;text-align:center}
.flow-node{position:absolute;z-index:2;width:18%;min-height:64px;padding:14px 10px;border:1px solid #becdd6;border-radius:2px;background:#fff;color:#355568;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center;line-height:1.4;transform:translateY(-50%)}
.flow-node strong{font-size:14px;font-weight:500}.flow-node>span{font-size:12px;color:#708390}.flow-node.col-1{left:3%}.flow-node.col-2{left:28.33%}.flow-node.col-3{left:53.66%}.flow-node.col-4{left:79%}.flow-node.row-1{top:100px}.flow-node.row-2{top:180px}.flow-node.row-3{top:260px}
.core-node{background:#28495c;border-color:#28495c;color:#fff;min-height:86px}.core-node>span{color:#c7d9e4;font-size:11px}
.diagram-note{padding:14px 22px 18px;display:flex;gap:10px;align-items:center;justify-content:center;font-size:12px;line-height:1.5;color:#71818b;text-align:center}.flow-key{display:flex;gap:3px;flex-shrink:0}.flow-key i{width:5px;height:5px;border-radius:50%;background:#2d72d2}.flow-key i:nth-child(2){background:#00a396}.flow-key i:nth-child(3){background:#d1980b}
a.flow-node{transition:border-color .2s,box-shadow .2s}a.flow-node:hover{border-color:#507e9a;box-shadow:0 0 0 3px #547a9414}
.ecosystem-diagram{height:400px}.ecosystem-diagram .flow-node{transform:none;min-height:96px;width:30%;top:52px;padding:22px}.ecosystem-os{left:5%}.ecosystem-compute{left:65%}.ecosystem-diagram .flow-node img{width:auto;height:15px;max-width:100%;object-fit:contain}.ecosystem-diagram .ecosystem-foundation{top:248px;left:19%;width:62%;min-height:124px;gap:12px}.ecosystem-diagram .ecosystem-foundation img{height:auto;width:300px;max-width:70%}.model-entities{display:flex;flex-wrap:wrap;gap:9px 22px;justify-content:center;font-size:12px;color:#70818b}
.exchange-label{position:absolute;left:35%;width:30%;text-align:center;font-size:12px;z-index:2;pointer-events:none}.exchange-label.request{top:64px;color:#4878a4}.exchange-label.response{top:126px;color:#36988e}
.compute-diagram{height:370px}.return-label{position:absolute;bottom:16px;left:40%;width:30%;text-align:center;font-size:11px;color:#36988e}
.compute-section.product{background:#fff;color:var(--ink);--muted:#657681;--line:#cbd5db}.foundation-section.product{background:#fff;padding:118px 5.2% 64px;color:var(--ink)}.foundation-section>*{max-width:1600px;margin-left:auto;margin-right:auto}.foundation-name-art{display:block;width:min(600px,85%);height:auto;margin-bottom:30px}.foundation-title{margin-top:42px}.foundation-title h2{font-size:clamp(36px,3.9vw,64px)}.foundation-section .lineage-figure{background:#f6f8fa}.foundation-section .lineage-caption{background:#fff}.chapter-next{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:24px;margin-top:44px;font-size:12px;letter-spacing:.08em}.chapter-next span:last-child{font-size:26px}
.closing{background:#fff}.closing>p>span{color:#7d8d95}footer{background:#fff;color:#657681;border-top:1px solid var(--line)}footer .brand img{filter:brightness(0);opacity:.86}footer .brand span{border-color:#cbd5db}
@media(min-width:761px) and (max-width:1100px){.schematic-chapter{padding:108px 5% 44px;gap:28px}.chapter-heading{gap:5%;grid-template-columns:1.1fr 1fr}.chapter-heading h2{font-size:40px}.chapter-wordmark{height:14px;margin-bottom:20px}.flow-node strong{font-size:12px}.flow-node>span{font-size:11px}.ecosystem-diagram .flow-node{padding:15px}.ecosystem-diagram .flow-node img{height:12px}.ecosystem-diagram .ecosystem-foundation img{height:auto}.lineage-caption{gap:16px}.flow-columns{font-size:9px}}
@media(max-width:760px){
 .nav{height:72px;padding:0 5%}.nav .brand img{width:84px}.nav .brand span{display:none}.nav nav{display:flex;gap:12px;font-size:11px}.hero{min-height:600px}.hero-copy{bottom:18%}
 .schematic-chapter{min-height:100svh;padding:102px 5% 42px;gap:27px}.schematic-chapter .section-meta{font-size:10px;padding-bottom:16px}.chapter-heading{grid-template-columns:1fr;gap:22px}.chapter-heading h2{font-size:clamp(34px,8.5vw,48px)}.chapter-heading>p{font-size:15px;line-height:1.6}.chapter-wordmark{height:auto;max-width:100%;width:310px;margin-bottom:22px}.chapter-wordmark.os-wordmark{width:150px}
 .product-figure .lineage-caption{padding:18px}.product-figure .lineage-caption p{font-size:12px;margin-top:8px}.product-diagram{height:640px}.flow-columns{display:contents}.flow-columns>span{position:absolute;left:0;width:100%;font-size:9px;text-align:center}.flow-columns>span:nth-child(1){top:22px}.flow-columns>span:nth-child(2){top:188px}.flow-columns>span:nth-child(3){top:353px}.flow-columns>span:nth-child(4){top:516px}
 .flow-node{min-height:76px;padding:10px 7px;gap:5px}.flow-node strong{font-size:12px}.flow-node>span{font-size:10px}.flow-node.col-1{top:95px}.flow-node.col-2{top:260px;left:14%;width:72%}.flow-node.col-3{top:425px}.flow-node.col-4{top:587px;left:14%;width:72%}
 .os-diagram .col-1{width:28%}.os-diagram .col-1.row-1{left:4%}.os-diagram .col-1.row-2{left:36%}.os-diagram .col-1.row-3{left:68%}
 .os-diagram .col-3,.compute-diagram .col-1,.compute-diagram .col-3{width:42%}.os-diagram .col-3.row-1,.compute-diagram .col-1.row-1,.compute-diagram .col-3.row-1{left:5%}.os-diagram .col-3.row-3,.compute-diagram .col-1.row-3,.compute-diagram .col-3.row-3{left:53%}
 .mobile-diagram .col-1{left:14%;width:72%}.mobile-diagram .col-3{width:28%}.mobile-diagram .col-3.row-1{left:4%}.mobile-diagram .col-3.row-2{left:36%}.mobile-diagram .col-3.row-3{left:68%}
 .diagram-note{padding:12px 18px 18px;font-size:11px;align-items:flex-start}.flow-key{margin-top:6px}.compute-diagram{height:670px}.return-label{bottom:10px;left:15%;width:70%;font-size:10px}
 .ecosystem-diagram{height:608px}.ecosystem-diagram .flow-node{left:7%;width:86%;padding:20px;min-height:86px}.ecosystem-diagram .ecosystem-os{top:36px}.ecosystem-diagram .ecosystem-compute{top:231px}.ecosystem-diagram .ecosystem-foundation{top:426px;min-height:150px}.ecosystem-diagram .flow-node img{height:auto;max-width:95%;width:285px}.ecosystem-diagram .ecosystem-os img{width:140px}.ecosystem-diagram .ecosystem-foundation img{width:235px}.model-entities{font-size:11px;gap:8px 16px}.exchange-label{top:164px!important;width:34%;left:9%;font-size:11px}.exchange-label.response{left:57%}
 .foundation-section.product{padding:102px 5% 42px}.foundation-title{margin-top:32px}.foundation-name-art{margin-bottom:26px}.foundation-section .graph-wrap{height:530px}.foundation-section .section-meta{font-size:10px}.closing,footer{padding-left:5%;padding-right:5%}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.nav,a.flow-node{transition:none}}
@media(min-width:761px) and (max-height:800px){
 .schematic-chapter{padding-top:104px;padding-bottom:24px;gap:24px}
 .schematic-chapter .section-meta{padding-bottom:14px}
 .chapter-heading h2{font-size:40px}.chapter-heading>p{font-size:15px}.chapter-wordmark{height:14px;margin-bottom:16px}
 .product-figure .lineage-caption{min-height:48px;padding:14px 22px}
 .product-diagram{height:270px}.flow-columns{top:20px}.flow-node.row-1{top:85px}.flow-node.row-2{top:155px}.flow-node.row-3{top:225px}
 .diagram-note{font-size:11px;padding:8px 18px 12px}
 .ecosystem-diagram{height:330px}.ecosystem-diagram .flow-node{top:34px;min-height:82px;padding:18px}.ecosystem-diagram .ecosystem-foundation{top:196px;min-height:114px;padding:14px}.ecosystem-diagram .ecosystem-foundation img{width:250px}.exchange-label.request{top:39px}.exchange-label.response{top:99px}
 .compute-diagram{height:320px}
}
