.sp-page{--sp-green:#426b5b;--sp-amber:#976b32;--sp-mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace}.sl-site .sp-eyebrow{display:block;color:var(--sl-blue);font-size:13px;font-weight:500;letter-spacing:.025em;margin-bottom:20px}.sl-site .sp-hero{display:grid;grid-template-columns:1.08fr 1fr;align-items:center;gap:36px;padding:58px 0 60px}.sp-hero .sl-back-link{display:inline-block;margin-bottom:38px;font-size:13px}.sp-hero .sp-eyebrow{margin-bottom:19px}.sl-site .sp-hero h1{font-size:clamp(46px,4.45vw,65px);line-height:1.05;max-width:650px;text-wrap:balance}.sl-site .sp-lead{font-size:18px;line-height:1.65;max-width:520px;margin-top:25px}.sp-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:30px}.sp-hero-actions .sl-text-link{font-size:13px;gap:14px}.sp-hero-actions .sl-button{font-size:14px;padding:13px 18px}.sp-hero-visual{background:#e9eff1;position:relative;min-width:0;margin-top:50px}.sp-visual-caption,.sp-visual-heading{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:17px 22px;font-size:10px;color:#526e7d}.sp-visual-heading{border-bottom:1px solid #d2dfe4}.sp-visual-heading span:last-child{color:#6f8590}.sp-visual-caption{justify-content:flex-start;border-top:1px solid #d2dfe4;flex-wrap:wrap;line-height:1.5}.sp-live-dot{width:5px;height:5px;display:inline-block;background:#52768b;border-radius:50%;flex:0 0 5px}.sp-sculpture{display:block;width:100%;height:auto;overflow:visible}.sp-hero-visual .sp-sculpture{transform:translateY(var(--sp-drift,0))}.sp-plane{transition:transform .85s cubic-bezier(.2,.65,.2,1)}.sp-plane>path{transition:fill .7s,stroke .7s}.sp-sculpture-label{font:13px var(--sl-sans)}.sp-sculpture-index{font:9px var(--sp-mono,monospace);letter-spacing:1px}.sp-glyph-paper{fill:#e8f0f2;stroke:#83a0b0}.sp-glyph-selected{fill:#8bafbd;stroke:#e8f3f4}.sp-glyph-exception{fill:#bb9363;stroke:#e9d4b8}.sp-wave{stroke-linecap:round;stroke-width:3px}.sp-section-nav{border-block:1px solid var(--sl-line)}.sp-section-nav nav{display:flex;gap:40px}.sp-section-nav a{font-size:13px;color:#526875;padding:17px 0;border-bottom:1px solid transparent}.sp-section-nav a:hover{color:var(--sl-ink);border-bottom-color:var(--sl-blue)}.sl-site .sp-context{padding:70px 0;display:grid;grid-template-columns:.9fr 1fr;gap:100px;align-items:start}.sl-site .sp-context h2{font-size:clamp(30px,3vw,42px);max-width:450px}.sp-context p{font-size:17px;line-height:1.7}.sp-system-names{margin-top:24px}.sp-system-names>span{font-size:11px;color:#70828b}.sp-system-names ul{display:flex;flex-wrap:wrap;list-style:none;padding:0;margin:9px 0 0;gap:6px 20px}.sp-system-names li{color:#35576b;font-size:13px;font-weight:500}.sl-site .sp-architecture{padding:56px 0 80px;border-top:1px solid var(--sl-line)}.sp-section-heading{display:grid;grid-template-columns:1.1fr 1fr;align-items:end;gap:100px;margin-bottom:46px}.sp-section-heading h2{max-width:560px}.sp-section-heading>p{font-size:16px;line-height:1.7;max-width:480px}.sp-architecture-layout{display:grid;grid-template-columns:1.03fr 1fr;gap:74px;align-items:start}.sp-system-sticky{position:sticky;top:105px;min-width:0}.sp-system-board{background:#e9eff1;border:1px solid #d2dfe4}.sp-board-top{display:flex;justify-content:space-between;padding:16px 22px;color:#577180;font:11px var(--sp-mono)}.sp-system-board .sp-sculpture{width:calc(100% - 28px);margin:-10px auto -8px}.sp-stage-controls{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid #cddce2}.sp-stage-controls button{color:#536d7b;background:transparent;border:0;border-right:1px solid #cddce2;padding:11px 5px;cursor:pointer;font-size:11px;line-height:1.35;transition:background .25s,color .25s}.sp-stage-controls button:last-child{border-right:0}.sp-stage-controls button span{display:block;font:9px var(--sp-mono);margin-bottom:5px;opacity:.65}.sp-stage-controls button[aria-pressed=true]{background:#36586d;color:#f0f6f8}.sp-stage-controls button:hover{background:#d2e0e6;color:#20313d}.sp-artifact{background:#f5f8f9;padding:19px 22px 18px;min-height:154px}.sp-artifact-title{display:flex;gap:12px;justify-content:space-between;margin-bottom:16px;color:#264659;font-size:12px}.sp-artifact-title span:last-child{color:#7a8d97;font-size:10px;white-space:nowrap}.sp-artifact dl{margin:0;animation:sp-record-in .35s ease-out}.sp-artifact dl>div{display:grid;grid-template-columns:.9fr 1.2fr;gap:12px;padding:3px 0;font:10px/1.65 var(--sp-mono)}.sp-artifact dt{color:#617984}.sp-artifact dd{color:#2f5267;margin:0;overflow-wrap:anywhere}.sl-site .sp-board-hint{font-size:11px;margin-top:14px;color:#718690}.sp-stage{padding:0 0 40px;margin:0 0 40px;border-bottom:1px solid var(--sl-line)}.sp-stage:last-child{margin-bottom:0}.sp-stage-heading{display:flex;align-items:flex-start;gap:19px;margin-bottom:20px}.sp-stage-number{font:11px var(--sp-mono);color:#6b8798;padding-top:5px}.sl-site .sp-stage h3{font-size:24px;line-height:1.25;max-width:360px}.sp-stage>p{font-size:15px;line-height:1.7}.sp-contract{display:grid;gap:8px;margin:24px 0 20px;border-left:2px solid #cbd9df;padding-left:16px;transition:border-color .4s}.sp-stage[data-active=true] .sp-contract{border-color:#52768b}.sp-contract>div{display:grid;grid-template-columns:70px 1fr;gap:10px;font-size:12px}.sp-contract dt{color:#78909d}.sp-contract dd{margin:0;color:#294858}.sp-controls{display:flex;gap:8px 17px;flex-wrap:wrap}.sp-controls>span{display:inline-flex;gap:6px;align-items:center;font-size:11px;color:#617e8e}.sp-controls>span>span{font-size:15px}.sl-site .sp-experiment-section{background:#203641;padding:72px 0;color:#eaf1f3}.sp-experiment{display:grid;grid-template-columns:.72fr 1.15fr;gap:80px;align-items:start}.sp-experiment .sp-eyebrow{color:#a7c1ce}.sl-site .sp-experiment h2{font-size:clamp(35px,3.2vw,48px);color:#f4f7f7}.sp-experiment-intro>p:not(.sp-eyebrow){margin-top:23px;color:#bdccd3;font-size:16px;line-height:1.7}.sp-example-note{display:inline-block;margin-top:30px;color:#98b1bf;font-size:11px}.sp-simulator{background:#29434f;border:1px solid #4a6371;min-width:0}.sp-scenario-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #4a6371}.sp-scenario-tabs button{display:flex;justify-content:space-between;align-items:center;gap:8px;text-align:left;padding:15px 14px;border:0;background:transparent;color:#b5c8d1;cursor:pointer;font-size:12px;line-height:1.4;border-right:1px solid #4a6371}.sp-scenario-tabs button:last-child{border-right:0}.sp-scenario-tabs button[aria-pressed=true]{color:#233e4c;background:#dce9ee}.sp-scenario-tabs button:hover{box-shadow:inset 0 -2px #a9c6d4}.sp-scenario-input{display:flex;align-items:baseline;gap:20px;padding:24px;border-bottom:1px solid #425c69}.sp-scenario-input>span{font:10px var(--sp-mono);color:#90adbd}.sl-site .sp-scenario-input p{color:#e7f0f4;font-size:14px;line-height:1.65}.sp-route{display:grid;grid-template-columns:repeat(4,1fr);padding:28px 24px;gap:0}.sp-route-node{position:relative;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;font-size:11px;line-height:1.45;color:#d5e4eb;animation:sp-record-in .45s both;padding:0 8px}.sp-route-node:not(:last-child):after{content:"";position:absolute;height:1px;background:#658596;width:calc(100% - 36px);top:15px;left:calc(50% + 18px)}.sp-route-symbol{display:grid;width:31px;height:31px;border:1px solid #82a29b;color:#b9dbcb;place-items:center;border-radius:50%;font-size:17px}.sp-route-node[data-status=block] .sp-route-symbol{color:#e5c89d;border-color:#bb976b}.sp-route-node[data-status=wait] .sp-route-symbol{color:#9bb3be;border-color:#78919e}.sp-outcome{margin:0 24px;padding:19px 20px;background:#35534f;border-left:2px solid #9ec8b5}.sp-outcome[data-status=block],.sp-outcome[data-status=wait]{background:#4d4b40;border-color:#ddbf96}.sp-outcome-label{font:10px var(--sp-mono);color:#b9ccc8}.sl-site .sp-outcome h3{font-size:20px;margin:10px 0 14px;color:#f3f7f7}.sl-site .sp-outcome p{color:#d4e0de;font-size:13px;line-height:1.65}.sp-result-record{display:grid;gap:7px;padding:19px 24px 24px;margin:0}.sp-result-record>div{display:grid;grid-template-columns:.8fr 1.3fr;gap:14px;font:10px/1.6 var(--sp-mono)}.sp-result-record dt{color:#9bb6c4}.sp-result-record dd{color:#e0edf2;margin:0;overflow-wrap:anywhere}.sl-site .sp-validation{padding:78px 0 58px}.sp-check-header,.sp-check-row{display:grid;grid-template-columns:.8fr 1fr 1fr;gap:44px}.sp-check-header{padding:17px 0;border-bottom:1px solid #90a7b3;color:#667e8a;font-size:11px}.sp-check-row{padding:25px 0;border-bottom:1px solid var(--sl-line)}.sl-site .sp-check-row h3{font-size:18px;line-height:1.45;display:flex;align-items:baseline;gap:15px}.sp-check-row h3 span{font:10px var(--sp-mono);color:#819ba9}.sp-check-row p{font-size:14px;line-height:1.65}.sl-site .sp-delivery{display:grid;grid-template-columns:.75fr 1.15fr;gap:100px;padding:50px 0 68px}.sp-delivery-intro>p:not(.sp-eyebrow){margin:23px 0;font-size:15px;max-width:340px}.sp-deliverable-list article{display:flex;align-items:flex-start;gap:21px;padding:26px 0;border-top:1px solid var(--sl-line)}.sp-file-symbol{color:var(--sl-blue);font-size:25px;line-height:1;width:25px;flex-shrink:0}.sl-site .sp-deliverable-list h3{font-size:20px;margin-bottom:16px}.sp-deliverable-list p{font-size:14px;line-height:1.7}.sl-site .sp-questions{border-top:1px solid var(--sl-line);padding:48px 0 52px;display:grid;grid-template-columns:.75fr 1.15fr;gap:100px}.sp-questions h2{font-size:36px}.sp-questions .sl-faq-items{min-width:0}.sp-questions .sl-faq-items summary{font-size:16px}.sp-questions .sl-faq-items p{font-size:14px}.sp-references{display:flex;align-items:baseline;flex-wrap:wrap;gap:12px 26px;padding:0 0 40px;font-size:11px}.sp-references>span{color:#8798a0}.sp-references a{color:#5b7889}.sp-references a:hover{text-decoration:underline}.sp-page .sl-related{padding-block:30px}@keyframes sp-record-in{0%{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (min-width:1500px){.sp-system-sticky{top:115px}}@media (max-width:1100px){.sl-site .sp-hero{gap:24px}.sp-hero-actions{gap:17px}.sp-hero-actions .sl-text-link{font-size:12px}.sp-architecture-layout{gap:42px}.sp-context,.sp-delivery,.sp-experiment,.sp-questions,.sp-section-heading{gap:44px!important}.sp-artifact{padding-inline:15px}.sp-artifact dl>div{font-size:9px}.sp-scenario-tabs button{font-size:11px;padding:12px}}@media (max-width:899px){.sl-site .sp-hero{grid-template-columns:1fr 1fr;padding-top:32px}.sl-site .sp-hero h1{font-size:43px}.sp-hero .sl-back-link{margin-bottom:28px}.sp-hero .sp-eyebrow{font-size:11px}.sl-site .sp-lead{font-size:16px}.sp-visual-heading span:last-child{display:none}.sp-visual-caption{font-size:9px;padding:12px}.sp-section-nav nav{gap:26px}.sp-section-nav a{font-size:12px}.sl-site .sp-context{padding-block:48px}.sp-architecture-layout{grid-template-columns:1fr;gap:38px}.sp-system-sticky{position:relative;top:auto;max-width:630px;width:100%;margin:0 auto}.sp-system-board .sp-sculpture{max-width:450px}.sp-artifact dl>div{font-size:11px}.sp-stage-list{display:grid;grid-template-columns:1fr 1fr;gap:32px}.sp-stage{padding-bottom:28px;margin:0}.sl-site .sp-stage h3{font-size:22px}.sp-stage-heading{gap:12px}.sp-stage>p{font-size:14px}.sp-contract>div{font-size:11px;grid-template-columns:60px 1fr}.sp-experiment{grid-template-columns:1fr;gap:32px!important}.sp-experiment-intro{max-width:620px}.sp-example-note,.sp-experiment-intro>p:not(.sp-eyebrow){margin-top:16px}.sp-check-header,.sp-check-row{gap:24px}.sp-scenario-tabs button{font-size:13px}.sp-section-heading>p{font-size:14px}}@media (max-width:650px){.sl-site .sp-hero{grid-template-columns:1fr;padding:36px 0 44px;gap:32px}.sp-hero .sl-back-link{margin-bottom:24px}.sp-hero .sp-eyebrow{font-size:12px;margin-bottom:16px}.sl-site .sp-hero h1{font-size:clamp(38px,10.5vw,52px);max-width:500px}.sl-site .sp-lead{font-size:16px;margin-top:20px}.sp-hero-actions{margin-top:23px;gap:18px}.sp-hero-actions .sl-button{padding:12px 15px;font-size:13px}.sp-hero-visual{margin:0}.sp-hero-visual .sp-sculpture{max-width:430px;margin:-8px auto}.sp-visual-heading{padding:13px 16px}.sp-visual-heading span:last-child{display:inline}.sp-visual-caption{font-size:10px;padding:12px 16px}.sp-section-nav nav{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.sp-section-nav a{padding:11px 0;font-size:12px}.sl-site .sp-context,.sl-site .sp-delivery,.sl-site .sp-questions,.sp-section-heading{grid-template-columns:1fr;gap:24px!important}.sl-site .sp-context{padding-block:44px}.sp-context p{font-size:15px}.sp-context .sp-eyebrow{margin-bottom:13px}.sl-site .sp-context h2{font-size:32px}.sp-system-names{margin-top:18px}.sp-system-names ul{gap:6px 16px}.sp-system-names li{font-size:12px}.sl-site .sp-architecture{padding:44px 0 48px}.sp-section-heading{margin-bottom:32px}.sp-section-heading .sp-eyebrow{margin-bottom:13px}.sp-section-heading h2{font-size:35px}.sp-board-top{padding:14px 15px;font-size:10px}.sp-system-board .sp-sculpture{width:100%}.sp-stage-controls button{font-size:10px;padding:10px 3px}.sp-stage-controls button span{font-size:8px}.sp-artifact{padding:15px;min-height:156px}.sp-artifact dl>div{font-size:9px}.sp-artifact-title{font-size:11px}.sp-artifact-title span:last-child{font-size:9px}.sp-stage-list{grid-template-columns:1fr;gap:32px}.sp-stage-heading{margin-bottom:18px}.sl-site .sp-stage h3{font-size:23px}.sp-contract>div{font-size:12px;grid-template-columns:65px 1fr}.sp-stage>p{font-size:15px}.sl-site .sp-experiment-section{padding-block:48px}.sp-experiment-intro>p:not(.sp-eyebrow){font-size:15px}.sp-scenario-tabs button{font-size:11px;padding:13px 9px}.sp-scenario-tabs button>span{display:none}.sp-scenario-input{padding:18px 15px;gap:13px}.sl-site .sp-scenario-input p{font-size:13px}.sp-route{padding:23px 10px}.sp-route-node{padding-inline:5px;font-size:10px;gap:10px}.sp-outcome{margin-inline:15px;padding:16px}.sl-site .sp-outcome h3{font-size:20px}.sp-result-record{padding:17px 15px}.sp-result-record>div{font-size:9px;grid-template-columns:.85fr 1.15fr}.sl-site .sp-validation{padding:45px 0 35px}.sp-check-header{display:none}.sp-check-row{grid-template-columns:1fr;gap:18px;padding:24px 0}.sp-check-row p{font-size:14px}.sp-check-row p:before{display:block;content:attr(data-label);font-size:10px;color:#6c8592;margin-bottom:8px}.sl-site .sp-check-row h3{font-size:20px}.sl-site .sp-delivery{padding:20px 0 44px}.sp-delivery-intro>p:not(.sp-eyebrow){max-width:none;margin-block:20px}.sp-deliverable-list article{gap:17px;padding-block:24px}.sl-site .sp-questions{padding-block:40px}.sp-questions h2{font-size:32px}.sp-references{gap:10px 20px;padding-bottom:25px}.sp-references>span{flex-basis:100%}}@media (prefers-reduced-motion:reduce){.sp-page *,.sp-page :after,.sp-page :before{animation:none!important;transition:none!important;scroll-behavior:auto!important}.sp-hero-visual .sp-sculpture{transform:none}}.sp-system-flow{display:block;width:100%;height:auto;padding:8px 8px 21px;overflow:visible;font-family:var(--sl-sans)}.sp-flow-title{font-size:13px;font-weight:500;fill:#274658}.sp-flow-caption{font-size:9px;fill:#698493}.sp-flow-code{font:11px var(--sp-mono,monospace);fill:#42697e}.sp-flow-amber{font-size:10px;fill:#976b32}.sp-flow-audio,.sp-flow-clear,.sp-flow-node rect,.sp-flow-travel{transition:fill .6s,stroke .6s,stroke-dashoffset .85s,opacity .6s}.sp-flow-node[data-active=true]>rect{stroke-width:1.5}.sp-hero-visual,.sp-sculpture{overflow:hidden}@media (max-width:650px){.sp-system-flow{padding-inline:0}}.sp-flow-viewport{overflow-x:auto}.sp-flow-viewport:focus-visible{outline:2px solid #52768b;outline-offset:-3px}.sp-flow-mobile-hint{display:none}@media (max-width:650px){.sp-system-flow{min-width:560px}.sl-site .sp-flow-mobile-hint{display:block;color:#678392;font-size:10px;padding:0 14px 12px}}.sp-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}