/* Open, projected market geometry. The strokes remain sharp at every depth. */
.hero--graphs .graph-hero-art{width:57%;right:-2.5%;top:49%;transform:translateY(-50%);margin:0}
.hero-graphs{position:relative;width:100%;aspect-ratio:9/7;isolation:isolate;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 18%,#000 96%,transparent)}
.hero-graph-vector,.hero-graph-poster{display:block;position:absolute;inset:0;width:100%;height:100%;max-width:none}
.hero-graphs.graphs-ready .hero-graph-poster{visibility:hidden}
.hero--graphs .graph-hero-art figcaption{position:relative;left:auto;right:auto;bottom:auto;display:flex;justify-content:flex-end;align-items:center;gap:18px;padding:0 11% 0 18%;margin-top:8px;line-height:1.6;font-size:12px;letter-spacing:.065em;color:#8ba6cd;text-transform:uppercase;white-space:nowrap}
.hero-graph-focus{color:#b7d3fa;min-width:121px;text-align:left}
.hero-graph-progress{display:flex;gap:5px;align-items:center}
.hero-graph-progress span{display:block;width:20px;height:1px;background:#334b6a}
.hero-graph-progress .is-active{background:#b8d5ff}
@media(min-width:1101px){.hero--graphs .hero-copy{width:61%}.hero--graphs::before{background:radial-gradient(ellipse at 85% 52%,#113c6b40,transparent 49%),linear-gradient(90deg,#08162c 29%,transparent 78%)}}
@media(min-width:651px) and (max-width:1100px){.hero--graphs .graph-hero-art{width:118%;max-width:520px;right:-7%;top:auto;transform:none;align-self:center}.hero--graphs .graph-hero-art figcaption{padding:0 6%;gap:12px;justify-content:center}.hero-graph-progress span{width:12px}.hero-graph-focus{min-width:0}}
@media(max-width:650px){.hero--graphs .graph-hero-art{position:relative;width:calc(100% + 24px);max-width:520px;right:auto;top:auto;transform:none;margin:-8px -12px 2px}.hero-graphs{mask-image:linear-gradient(90deg,transparent,#000 5%,#000 97%,transparent)}.hero--graphs .graph-hero-art figcaption{padding:0 12px;justify-content:space-between;gap:8px;margin-top:0;font-size:12px;letter-spacing:.02em}.hero-graph-progress{gap:3px}.hero-graph-progress span{width:12px}.hero-graph-focus{min-width:0}.hero--graphs .hero-description{font-size:16px}.hero--graphs .hero-actions .button{white-space:nowrap;flex-shrink:0;gap:12px;padding-inline:12px}.hero--graphs .hero-actions .text-link{min-width:0}}
@media(max-width:360px){.hero--graphs .graph-hero-art figcaption{letter-spacing:0}.hero-graph-progress{display:none}}
@media(forced-colors:active){.hero-graph-vector,.hero-graph-poster{forced-color-adjust:none}.hero-graphs{background:#08162c}.hero--graphs .graph-hero-art figcaption,.hero-graph-focus{color:CanvasText}}

/* Eight selectable graph panes on an elliptical carousel around the core. */
.engine-diagram.lens-carousel{width:100%;max-width:none;aspect-ratio:1/1.08;min-height:440px;margin:0;overflow:hidden;isolation:isolate;background:#08162c;border:var(--hairline) solid var(--rule);color:#d5e5ff;align-self:start}
.carousel-heading{position:absolute;left:24px;right:24px;top:22px;display:flex;justify-content:space-between;gap:12px;z-index:24;pointer-events:none}
.carousel-heading .mini-label{font-size:12px;color:#b3cef5;letter-spacing:.07em}.carousel-heading>span:last-child{font-size:12px;color:#8fa7c8}
.carousel-space{position:absolute;inset:0;touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none;outline-offset:-6px;background:radial-gradient(ellipse at 50% 47%,#15396455,transparent 57%)}
.carousel-space::before{content:'';position:absolute;inset:10% 3% 14%;background:linear-gradient(#638ab811 1px,transparent 1px),linear-gradient(90deg,#638ab811 1px,transparent 1px);background-size:40px 40px;mask-image:radial-gradient(ellipse,#000,transparent 70%);pointer-events:none}
.carousel-space::after{content:'';position:absolute;z-index:22;left:8%;right:8%;height:1px;top:20%;opacity:0;background:linear-gradient(90deg,transparent,#98c3ff75,transparent);animation:carousel-scan 9s cubic-bezier(.3,0,.3,1) infinite;pointer-events:none}
@keyframes carousel-scan{0%,14%{transform:translateY(0);opacity:0}22%{opacity:.6}58%{opacity:.35}66%,100%{transform:translateY(230px);opacity:0}}
.is-dragging .carousel-space,.is-dragging .engine-node{cursor:grabbing}
.carousel-beams{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;overflow:visible;fill:none;stroke:#6498d2;stroke-width:.6}
.carousel-beams ellipse{stroke-dasharray:1 7;opacity:.65}.carousel-connector{stroke:#649ae4;stroke-width:.8;opacity:.4}.carousel-pulse{stroke:#c1dfff;stroke-width:1.15;stroke-dasharray:8 160;animation:carousel-flow 3.2s linear infinite}
@keyframes carousel-flow{to{stroke-dashoffset:-336}}
.lens-carousel .engine-core{width:38%;left:32.65%;top:23.8%;z-index:11;pointer-events:none}
.lens-carousel .engine-node{width:clamp(130px,12vw,166px);height:126px;min-height:0;border:var(--hairline) solid var(--rule);border-top-color:var(--rule);border-left-color:var(--rule);border-radius:0;padding:11px 12px 8px;color:#cee2ff;background:linear-gradient(135deg,#193454e6,#0b1a30ed 65%);box-shadow:inset 0 0 20px #487fc50a;transform-origin:center;will-change:transform;backface-visibility:hidden;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:5px;transition:border-color .3s,background .3s,box-shadow .3s}
.lens-carousel .engine-node[aria-pressed=true]{border-color:var(--rule-active);background:linear-gradient(135deg,#15376ae8,#0b1f3aed 75%);box-shadow:0 0 22px #3879f51a,inset 0 0 16px #74a9ff0c;color:#e5efff}
.lens-carousel .engine-node:focus-visible{outline:2px solid #d3e6ff;outline-offset:5px}
.carousel-card-top{display:flex;justify-content:space-between;align-items:center;color:#8eafe0;font-size:12px;line-height:1;letter-spacing:.08em}
.carousel-card-marker{width:11px;height:5px;border-top:var(--hairline) solid var(--rule);border-bottom:var(--hairline) solid var(--rule)}.engine-node[aria-pressed=true] .carousel-card-marker{border-color:var(--rule-active)}
.carousel-card-name{font-size:14px;font-weight:500;letter-spacing:-.02em;line-height:1.15;color:inherit}.lens-carousel .engine-node>svg{height:45px;width:100%;flex:1;min-height:0}
.carousel-card-bottom{display:flex;justify-content:space-between;border-top:var(--hairline) solid var(--rule);padding-top:5px;font-size:12px;color:#8fadd2;line-height:1;white-space:nowrap}.engine-node[aria-pressed=true] .carousel-card-bottom{color:#c5dfff}
.lens-carousel .carousel-footer{position:absolute;z-index:25;left:24px;right:24px;bottom:18px;text-align:center}
.carousel-navigation{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:12px;padding-top:12px;border-top:var(--hairline) solid var(--rule)}
.carousel-navigation button{display:grid;place-items:center;width:44px;height:44px;background:transparent;color:#b8d4ff;border:var(--hairline) solid var(--rule);transition:background .2s,border-color .2s}
.carousel-navigation button:hover{background:#3260a02e;border-color:var(--rule-active)}.carousel-navigation button:focus-visible{outline-color:#c1dcff;outline-offset:3px}.carousel-navigation svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.1}
.carousel-current{font-size:12px;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:#d0e1ff;line-height:1.5}
.carousel-hint{display:block;margin-top:9px;font-size:12px;letter-spacing:.03em;color:#8ea5c5}
.lens-carousel:not(.carousel-ready) .carousel-space{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:65px 18px 120px;align-items:center}
.lens-carousel:not(.carousel-ready) .engine-node{position:relative;left:auto;top:auto;width:100%;transform:none;height:70px}.lens-carousel:not(.carousel-ready) .engine-core,.lens-carousel:not(.carousel-ready) .carousel-beams{display:none}
.lens-carousel:not(.carousel-visible) .carousel-pulse,.lens-carousel:not(.carousel-visible) .carousel-space::after,.motion-paused .carousel-pulse,.motion-paused .carousel-space::after,.page-inactive .carousel-pulse,.page-inactive .carousel-space::after{animation-play-state:paused}
.motion-paused .carousel-space::after{display:none}
@media(min-width:801px){.engine-diagram.lens-carousel{position:sticky;top:calc(var(--header) + 24px)}}
@media(max-width:1100px){.carousel-heading{left:18px;right:18px;top:20px;display:block}.carousel-heading>span:last-child{display:block;margin-top:6px}.engine-diagram.lens-carousel{min-height:440px}.lens-carousel .engine-node{width:137px;height:119px;padding:10px}.lens-carousel .carousel-footer{left:18px;right:18px}.carousel-navigation{gap:6px}.carousel-hint{letter-spacing:0}}
@media(max-width:650px){.engine-diagram.lens-carousel{min-height:410px;aspect-ratio:1/1.13;max-width:none;width:calc(100% + var(--gutter) * 2);margin-inline:calc(var(--gutter) * -1)}.carousel-heading{left:var(--gutter);right:var(--gutter);top:20px;display:flex}.carousel-heading>span:last-child{margin-top:0}.carousel-heading .mini-label{letter-spacing:.03em}.lens-carousel .engine-node{width:128px;height:117px;padding:10px}.lens-carousel .engine-core{top:24%}.lens-carousel .carousel-footer{left:var(--gutter);right:var(--gutter);bottom:15px}.carousel-navigation{padding-top:9px}.carousel-hint{margin-top:7px}.carousel-current{letter-spacing:.02em}.lens-stage{gap:24px}}
@media(max-width:360px){.carousel-heading{display:block}.carousel-heading>span:last-child{margin-top:4px}.lens-carousel .engine-node{width:120px;height:113px;padding:9px}.carousel-current{font-size:12px}.carousel-hint{font-size:12px}}
@media(forced-colors:active){.lens-carousel{forced-color-adjust:none}.lens-carousel .engine-node:focus-visible,.carousel-navigation button:focus-visible{outline:2px solid #fff}}

/* Section 04: a moving infrastructure schematic, tied to the three reasons. */
.governance-art.infrastructure-art{margin-top:38px;width:100%;max-width:620px}
.infra-legend{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:15px;border-bottom:var(--hairline) solid var(--rule)}
.infra-layer{display:inline-flex;align-items:center;gap:8px;color:#8ea6c9;font-size:12px;letter-spacing:.06em;text-transform:uppercase;transition:color .45s}
.infra-layer::before{content:'';width:14px;height:1px;background:#42628c;transition:background .45s}
.infra-layer.is-active{color:#d4e6ff}.infra-layer.is-active::before{background:#9bc3ff}
.infra-scene{position:relative;width:100%;aspect-ratio:800/570;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 51% 49%,#173f711e,transparent 64%)}
.infra-vector,.infra-poster{display:block;position:absolute;inset:0;width:100%;height:100%}
.infra-ready .infra-poster{visibility:hidden}
.infrastructure-art figcaption{display:flex;justify-content:space-between;flex-wrap:wrap;gap:7px 14px;border-top:var(--hairline) solid var(--rule);padding-top:15px;font-size:12px;line-height:1.7;color:#829bbb}
.infra-readout{color:#bfdbff}
.governance-list article{transition:border-color .45s}
.governance[data-infra-phase="0"] .governance-list article:nth-child(1),.governance[data-infra-phase="1"] .governance-list article:nth-child(2),.governance[data-infra-phase="2"] .governance-list article:nth-child(3){border-top-color:var(--rule-active)}
@media(min-width:651px) and (max-width:800px){.governance-art.infrastructure-art{margin:0;align-self:center}.infra-legend{gap:8px}.infra-layer{letter-spacing:.01em;gap:5px}.infra-layer::before{width:8px}.infrastructure-art figcaption{display:block}.infrastructure-art figcaption>span{display:block}}
@media(max-width:650px){.governance-art.infrastructure-art{margin-top:31px;max-width:none}.infra-legend{gap:9px;padding-bottom:12px}.infra-layer{letter-spacing:.025em;gap:6px}.infra-layer::before{width:10px}.infra-scene{width:calc(100% + 20px);margin-inline:-10px}.infrastructure-art figcaption{padding-top:11px;gap:5px 12px}.infra-readout{width:100%}}
@media(forced-colors:active){.infra-scene{forced-color-adjust:none;background:#08162c}.infra-legend,.infrastructure-art figcaption{color:CanvasText}.infra-layer,.infra-layer.is-active,.infra-readout{color:CanvasText}}

/* Section 02: one integrated chart console, with an undistorted working plot. */
.platform-scene.product-console{position:relative;isolation:isolate;gap:8%;padding:36px;background:#08162c;border:var(--hairline) solid var(--rule);align-items:start;color:#dbe8ff;margin-top:14px}
.product-console .market-chart--product{position:relative;top:auto;margin:10px 0 0;padding:24px 22px;background:#0b1b33;border:var(--hairline) solid var(--rule);border-top-color:var(--rule);box-shadow:0 10px 35px #00000015;isolation:isolate;z-index:2}
.product-console .market-chart--product::before{content:'';position:absolute;z-index:-1;inset:-10px 8px 10px -8px;border:var(--hairline) solid var(--rule);border-left-color:var(--rule);pointer-events:none}
.product-console .market-chart--product::after{content:'';position:absolute;z-index:1;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,#c7dfff80,transparent);animation:product-scan 8s linear infinite;pointer-events:none;opacity:0}
@keyframes product-scan{0%,10%{top:5%;opacity:0}18%{opacity:.45}65%{opacity:.25}75%,100%{top:94%;opacity:0}}
.product-console .product-features{position:relative;z-index:2}
.product-console .product-features article{padding:24px 0 24px 34px;border-color:var(--rule);transition:border-color .4s}
.product-console .product-features h3{font-size:25px;color:#e0ecff;line-height:1.3}
.product-console .product-features p{color:#aebfd8;font-size:15px;line-height:1.8}
.product-console .product-features .small-number{color:#90b6ee;top:29px}
.product-console .product-features .text-link{color:#b4d3ff;border-color:var(--rule);font-size:13px}
.product-console[data-product-focus="0"] .product-features article:nth-child(1),.product-console[data-product-focus="1"] .product-features article:nth-child(2),.product-console[data-product-focus="2"] .product-features article:nth-child(3),.product-console[data-product-focus="3"] .product-features article:nth-child(4){border-top-color:var(--rule-active)}
.product-connections{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;fill:none}
.product-connection{stroke:#456c9e;stroke-width:.7;opacity:.3;vector-effect:non-scaling-stroke}
.product-connection-signal{stroke:#c5dfff;stroke-width:1.2;stroke-dasharray:9 250;opacity:0;vector-effect:non-scaling-stroke;animation:product-flow 3.4s linear infinite}
.product-connections .is-active .product-connection{opacity:.65}.product-connections .is-active .product-connection-signal{opacity:.85}
@keyframes product-flow{to{stroke-dashoffset:-518}}
.product-console:not(.console-visible) .product-connection-signal,.product-console:not(.console-visible) .market-chart--product::after,.product-console[data-motion="paused"] .product-connection-signal,.product-console[data-motion="paused"] .market-chart--product::after{animation-play-state:paused}
.product-console[data-motion="paused"] .market-chart--product::after,.product-console .market-chart--product:hover::after,.product-console .market-chart--product:focus-within::after{opacity:0;animation:none}
@media(max-width:1100px){.platform-scene.product-console{padding:28px;gap:7%}.product-console .market-chart--product{padding:20px 16px}.product-console .product-features article{padding-left:27px}.product-console .product-features h3{font-size:23px}.product-console .product-features p{font-size:15px}}
@media(max-width:800px){.platform-scene.product-console{grid-template-columns:1fr;gap:35px}.product-console .market-chart--product{max-width:none}.product-console .product-features{display:block}.product-console .product-features article{padding-left:30px}.product-console .product-features h3{font-size:26px}.product-console .product-features p{font-size:16px}}
@media(max-width:650px){.platform-scene.product-console{padding:22px 18px;gap:29px;width:calc(100% + var(--gutter) * 2);margin-inline:calc(var(--gutter) * -1);border-inline:0}.product-console .market-chart--product{padding:19px 16px;margin-top:6px}.product-console .market-chart--product::before{inset:-7px 7px 7px -6px}.product-console .product-features article{padding:23px 0 23px 28px}.product-console .product-features .text-link{font-size:14px}}
@media(forced-colors:active){.platform-scene.product-console{background:Canvas;color:CanvasText;border-color:CanvasText}.product-console .product-features h3,.product-console .product-features p,.product-console .product-features .small-number,.product-console .product-features .text-link{color:CanvasText}.product-console .market-chart--product{background:Canvas;border-color:CanvasText}.product-connections{display:none}}

/* Direct exploration of section 04: native controls and an undistorted SVG. */
button.infra-layer{border:0;background:transparent;padding:10px 0;min-height:44px;cursor:pointer;font:inherit;font-size:12px;color:#91acd1;text-align:left}
button.infra-layer:disabled{cursor:default}button.infra-layer.is-active{color:#e0edff}button.infra-layer:not(:disabled):hover{color:#fff}
.infra-interactive .infra-legend{padding-bottom:4px}
.infra-interactive .infra-scene{touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none}
.infra-scene.is-dragging{cursor:grabbing}
.infra-interactive .infra-scene:focus-visible{outline:1px solid #b0d1ff;outline-offset:-4px}
.infra-tools{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:3px}
.infra-view-controls{display:flex;gap:6px}
.infra-tools button{display:flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:44px;padding:9px;background:transparent;color:#b8d4fc;border:var(--hairline) solid var(--rule);border-radius:0;transition:border-color .2s,background .2s}
.infra-tools svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.2}
.infra-tools button:disabled{opacity:.3;cursor:default}.infra-tools button:not(:disabled):hover{border-color:var(--rule-active);background:#23477e30}
.infra-tools .infra-tour{padding-inline:12px;font-size:12px;white-space:nowrap}
.infra-tour[aria-pressed=true]{color:#d2e5ff;border-color:var(--rule-active);background:#17457930}
.infra-tour[aria-pressed=true] svg{fill:#adceff;stroke:none}
.infra-help{font-size:12px;line-height:1.6;color:#8fa8ca;margin:12px 0 18px}
.infra-tools button:focus-visible,button.infra-layer:focus-visible,.infra-reason:focus-visible{outline:2px solid #bbd8ff;outline-offset:4px}
.governance-list h3 .infra-reason{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;width:100%;padding:0;border:0;background:none;color:inherit;font:inherit;letter-spacing:inherit;line-height:inherit;text-align:left;cursor:pointer}
.infra-reason>svg{width:20px;height:20px;margin-top:7px;flex:none;fill:none;stroke:#789bc9;stroke-width:1.1;transition:stroke .25s,transform .25s}
.infra-reason[aria-pressed=true]>svg{stroke:#d4e8ff;transform:translate(2px,-2px)}.infra-reason:hover>svg{stroke:#fff;transform:translate(3px,-3px)}
@media(max-width:650px){.infra-tools{gap:8px}.infra-view-controls{gap:5px}.infra-tools .infra-tour{padding-inline:9px;gap:5px}.infra-tools .infra-tour svg{width:16px}.infra-help{margin:11px 0 16px}.governance-list h3 .infra-reason{gap:14px}.infra-reason>svg{width:17px;height:17px}}
@media(forced-colors:active){.infra-tools button,button.infra-layer,.infra-tour[aria-pressed=true]{color:ButtonText;border-color:ButtonText;background:ButtonFace}.infra-help{color:CanvasText}}
