.software-grid{row-gap:44px}
.software-heading{min-width:0}
.software-highlights-label{margin:27px 0 12px;font:400 9px/1.6 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#aeb7bc}
.software-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 28px;align-items:start}
.software-highlight{min-width:0;border:1px solid var(--line);background:rgba(19,24,27,.45)}
.software-highlight>summary{list-style:none;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px;min-height:68px;cursor:pointer;font:400 10px/1.7 var(--mono);letter-spacing:.03em;text-transform:uppercase;color:#c0c8cd}
.software-highlight>summary::-webkit-details-marker{display:none}
.software-highlight>summary>span:first-child{min-width:0;overflow-wrap:anywhere}
.software-highlight-plus{flex:0 0 auto;font-size:17px;line-height:1.2;color:#b1bdc4;transition:transform .2s}
.software-highlight[open]{border-color:rgba(252,82,4,.4)}
.software-highlight[open]>summary,.software-highlight>summary:hover{color:#f0ad88}
.software-highlight[open] .software-highlight-plus{transform:rotate(45deg)}
.software-highlight>summary:focus-visible{outline:2px solid var(--orange);outline-offset:4px}
.software-highlight>p{margin:0;padding:0 14px 17px;font:400 12px/1.85 Arial,Helvetica,sans-serif;color:#aeb9c0}
.flow-demo{grid-column:1/-1;margin:0}
.flow-header{padding:22px 26px;display:flex;align-items:center;justify-content:space-between;gap:22px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.flow-brand{font:500 11px/1.5 var(--mono);letter-spacing:.08em;text-transform:uppercase}
.flow-brand small{display:block;margin-top:7px;color:var(--muted);font-size:10px;letter-spacing:.03em;text-transform:none}
.architecture-stage>summary:focus-visible,.gap-evidence>summary:focus-visible{outline:2px solid var(--orange);outline-offset:4px}
.flow-state{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 26px;font:400 11px/1.55 var(--mono);color:var(--muted);border-bottom:1px solid var(--line);flex-wrap:wrap}
.flow-state-text{display:flex;align-items:center;gap:10px;color:var(--text);min-width:0}
.flow-state-dot{width:6px;height:6px;background:var(--orange);flex-shrink:0;box-shadow:0 0 10px rgba(252,82,4,.5)}
.flow-demo.is-paused .flow-state-dot{background:var(--tungsten);box-shadow:none}
.flow-concept-label{text-transform:uppercase;letter-spacing:.07em;font-size:9px;color:var(--muted)}
.flow-progress{height:2px;background:rgba(255,255,255,.06);overflow:hidden}
.flow-progress-fill{height:100%;width:var(--flow-progress,0%);background:var(--orange)}
.flow-board{position:relative;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.86fr) minmax(0,1.5fr) minmax(0,.9fr) minmax(0,1.02fr);gap:26px;padding:32px 26px 38px;min-height:625px;align-items:center;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:28px 28px}
.flow-connections{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;overflow:visible}
.flow-path{fill:none;stroke:#788087;stroke-opacity:.6;stroke-width:1.25}
.flow-path.is-active{stroke:var(--orange);stroke-opacity:.85}
.flow-packet{fill:var(--orange);opacity:0;filter:drop-shadow(0 0 4px rgba(252,82,4,.85));pointer-events:none}
.flow-stage{position:relative;min-width:0;z-index:2;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.flow-stage-label{display:flex;align-items:baseline;gap:7px;margin:0 0 22px;padding:0 0 11px;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;width:100%;min-height:42px;font:500 10px/1.5 var(--mono);color:#adb4b7}
.flow-stage-label b{font-weight:400;color:#8d969c;font-size:10px}
.flow-stage.is-current .flow-stage-label,.flow-stage.is-current .flow-stage-label b{color:#f1a17c}
.flow-stage.is-complete .flow-stage-label b{color:var(--orange)}
.flow-feeds{display:flex;flex-direction:column;gap:8px}
.flow-feed{display:flex;align-items:center;gap:10px;padding:11px 10px;background:#14191c;border:1px solid var(--line);min-height:57px;transition:border-color .25s,background .25s}
.flow-feed svg{width:21px;height:21px;flex:0 0 21px;color:#a3aaae;stroke:currentColor;fill:none;stroke-width:1.25}
.flow-feed strong{display:block;font:500 11px/1.4 Arial,Helvetica,sans-serif}
.flow-feed small{display:block;margin-top:4px;font:400 9px/1.5 var(--mono);color:#a3aaae}
.flow-stage.is-current .flow-feed{border-color:rgba(252,82,4,.55)}
.flow-stage.is-current .flow-feed svg{color:#ed9a73}
.flow-intake h4{font:500 26px/1.05 var(--display);margin:0 0 10px}
.flow-intake p{font:400 10px/1.65 var(--mono);color:#adb7bd;margin:0}
.flow-intake{margin-top:30px;padding:15px 12px;border:1px solid var(--line);background:#13181b;transition:border-color .25s}
.flow-node-eyebrow{font:400 9px/1.6 var(--mono);text-transform:uppercase;letter-spacing:.05em;color:#b0b8bc;margin-bottom:12px}
.flow-module{border:1px solid var(--line);background:#13181b;padding:23px 12px;text-align:center;transition:border-color .25s,box-shadow .25s;min-width:0}
.flow-module-icon{display:grid;place-items:center;width:46px;height:46px;margin:0 auto 17px;border:1px solid #62696d;background:linear-gradient(135deg,#292f33,#121619)}
.flow-module-icon svg{width:24px;height:24px;stroke:#bac0c3;stroke-width:1.2;fill:none}
.flow-module h4{font:500 30px/1 var(--display);margin:0 0 12px}
.flow-module p{font:400 10px/1.65 var(--mono);color:#b0b8bc;margin:0;overflow-wrap:anywhere}
.flow-module .flow-node-status{font-size:9px;color:#eea884;margin-top:15px;line-height:1.65}
.flow-tech{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;margin-top:17px}
.flow-tech span{padding:6px 8px;border:1px solid #455056;color:#d1d6d9;font:400 10px/1.5 var(--mono)}
.flow-stage.is-current .flow-intake,.flow-stage.is-current .flow-module,.flow-stage.is-current .flow-cloud,.flow-stage.is-current .flow-result{border-color:rgba(252,82,4,.7);box-shadow:0 0 26px rgba(252,82,4,.06)}
.flow-stage.is-current .flow-tech span{border-color:rgba(252,82,4,.5);color:#f1aa86}
.flow-cloud{background:#13181b;border:1px solid var(--line);transition:border-color .25s,box-shadow .25s;padding:21px 15px}
.flow-cloud h4{font:500 32px/1 var(--display);margin:0 0 10px}
.flow-cloud-label{font:400 9px/1.6 var(--mono);color:#adb5b9;margin-bottom:20px}
.flow-process{display:flex;gap:9px;align-items:flex-start;padding:12px 0;border-top:1px solid var(--line);color:#a0a9ae;transition:color .2s}
.flow-process i{font:400 10px/1.5 var(--mono);font-style:normal;color:#879298;flex:0 0 16px}
.flow-process strong{display:block;font:500 11px/1.5 Arial,Helvetica,sans-serif}
.flow-process.is-current{color:var(--text)}
.flow-process.is-current i{color:var(--orange)}
.flow-process.is-done{color:#d1d6d9}
.flow-process.is-done i{color:#df946f}
.flow-result{background:#13181b;border:1px solid var(--line);padding:21px 13px;transition:border-color .25s,box-shadow .25s}
.flow-result-kicker{font:400 9px/1.6 var(--mono);color:#b0b9be}
.flow-result h4{font:500 34px/.98 var(--display);margin:17px 0 21px}
.flow-result dl{margin:0}
.flow-result dl div{padding:10px 0;border-top:1px solid var(--line)}
.flow-result dt{font:400 9px/1.5 var(--mono);color:#a7b2b8}
.flow-result dd{font:500 11px/1.5 Arial,Helvetica,sans-serif;margin:4px 0 0;color:#d0d5d8}
.flow-result-stamp{padding:9px 8px;border:1px solid var(--line);margin-top:10px;font:400 9px/1.6 var(--mono);color:#a4afb5}
.flow-result.is-ready .flow-result-stamp{color:#f1a17c;border-color:rgba(252,82,4,.55)}
.flow-guide{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:16px 26px;border-top:1px solid var(--line);font:400 10px/1.65 var(--mono);color:#b2bbc0}
.flow-guide span:last-child{color:#a4adb2}
.architecture-map{border-top:1px solid var(--line);padding:32px 26px 34px;background:#101517}
.architecture-heading,.gap-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-bottom:27px}
.architecture-kicker{font:400 9px/1.6 var(--mono);letter-spacing:.13em;color:#eea17c;text-transform:uppercase}
.architecture-heading h4,.gap-heading h4{font:500 clamp(29px,3vw,42px)/1.05 var(--display);margin:9px 0 0;letter-spacing:.01em}
.architecture-heading>p{font:400 12px/1.8 Arial,Helvetica,sans-serif;color:#aeb8bd;max-width:370px;margin:0}
.architecture-stage{border-top:1px solid #364047}
.architecture-stage:last-child{border-bottom:1px solid #364047}
.architecture-stage>summary{list-style:none;display:grid;grid-template-columns:28px minmax(0,1fr) minmax(0,1fr) 18px;align-items:center;gap:16px;padding:20px 1px;cursor:pointer;min-height:64px}
.architecture-stage>summary::-webkit-details-marker,.gap-evidence>summary::-webkit-details-marker{display:none}
.architecture-number{font:400 11px/1.5 var(--mono);color:#8e9ba3}
.architecture-stage>summary>strong{font:500 16px/1.4 Arial,Helvetica,sans-serif}
.architecture-summary{font:400 10px/1.6 var(--mono);color:#a4b0b8;justify-self:end;text-align:right}
.architecture-plus{font:400 22px/1 var(--mono);color:#a7b4bc;justify-self:end;transition:transform .2s}
.architecture-stage[open] .architecture-plus{transform:rotate(45deg)}
.architecture-stage.is-active .architecture-number,.architecture-stage.is-active>summary>strong{color:#f3ad88}
.architecture-stage>summary:hover>strong{color:#f3ad88}
.architecture-body{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr) minmax(0,1.65fr);gap:24px;padding:3px 0 26px 44px}
.architecture-body>div{min-width:0}
.architecture-body h5{font:400 9px/1.7 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#b8c2c8;margin:0 0 9px}
.architecture-body p{font:400 12px/1.85 Arial,Helvetica,sans-serif;color:#aeb9c0;margin:0}
.architecture-body p strong{font-weight:500;color:#d8dee2}
.architecture-body a,.gap-reference-links a{color:#efaa87;display:inline-block;margin:8px 9px 0 0;border-bottom:1px solid rgba(239,170,135,.35);font:400 10px/1.6 var(--mono)}
.architecture-body a:hover,.gap-reference-links a:hover{color:#fff}
.storage-gap{padding:32px 26px 28px;border-top:1px solid var(--line);background:linear-gradient(135deg,#141b1f,#101517)}
.security-gap{background:linear-gradient(135deg,#171c20,#111719)}
.gap-heading{margin-bottom:18px}
.gap-badge{font:400 9px/1.65 var(--mono);color:#b8c8d2;border:1px dashed #738895;padding:8px 11px;text-align:right;max-width:245px}
.gap-intro{font:400 13px/1.85 Arial,Helvetica,sans-serif;color:#b1bec6;max-width:850px;margin:0 0 25px}
.gap-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.gap-card{border:1px dashed #657c8a;padding:23px 24px;min-width:0;background:rgba(29,43,51,.3)}
.gap-card-label{display:flex;gap:14px;justify-content:space-between;font:400 9px/1.6 var(--mono);letter-spacing:.06em;color:#a7bdca}
.gap-card-label span:last-child{color:#c4d0d7;letter-spacing:0}
.gap-card h5{font:500 30px/1.05 var(--display);margin:23px 0 12px;color:#e0e7eb}
.gap-card .gap-candidates{font:400 12px/1.6 var(--mono);color:#d6e2e9;margin:0 0 15px}
.gap-card>p{font:400 12px/1.8 Arial,Helvetica,sans-serif;color:#aebec7;margin:0}
.gap-open{border-top:1px solid #3b515e;padding-top:16px;margin-top:22px}
.gap-open strong{display:block;font:400 9px/1.6 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:#b7c9d4}
.gap-open span{display:block;font:400 11px/1.8 Arial,Helvetica,sans-serif;margin-top:7px;color:#aebec7}
.gap-note{font:400 11px/1.85 Arial,Helvetica,sans-serif;color:#b2c2cc;margin:23px 0}
.gap-note strong{font-weight:500;color:#d8e2e8}
.gap-evidence{border-top:1px solid #3b515e}
.gap-evidence>summary{display:flex;justify-content:space-between;gap:18px;list-style:none;cursor:pointer;font:400 10px/1.7 var(--mono);color:#c1d1dc;padding:17px 0 0;min-height:44px}
.gap-evidence[open]>summary>span{transform:rotate(45deg)}
.gap-evidence>div{padding:5px 0 0;max-width:940px}
.gap-evidence p{font:400 12px/1.85 Arial,Helvetica,sans-serif;color:#b0c0ca}
.gap-evidence code{font-size:11px;overflow-wrap:anywhere}
.flow-demo figcaption{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:18px 26px;border-top:1px solid var(--line);font:400 10px/1.7 var(--mono);color:#aeb8bd}
.flow-demo figcaption strong{font-weight:400;color:#e99b77}
.flow-demo.is-reduced-motion .flow-packet{display:none}
@media(min-width:1101px) and (max-width:1280px){.flow-board{gap:18px;padding-left:20px;padding-right:20px}.flow-feed{gap:7px;padding:10px 8px}.flow-feed svg{width:17px;flex-basis:17px}.flow-module{padding-left:9px;padding-right:9px}.flow-cloud{padding-left:12px;padding-right:12px}.flow-stage-label{font-size:9px;gap:5px}.flow-module h4{font-size:27px}.flow-module p{font-size:9px}}
@media(max-width:1100px){
  .flow-board{grid-template-columns:1fr;gap:52px;padding:28px 26px 34px;min-height:0}
  .flow-stage{align-items:center}
  .flow-stage-label{align-self:flex-start;margin-bottom:18px;font-size:12px;padding-bottom:12px}
  .flow-stage-label b{font-size:11px}
  .flow-feeds{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;gap:12px}
  .flow-feed{padding:14px 11px;min-height:78px}
  .flow-feed strong{font-size:12px}
  .flow-feed small{font-size:10px}
  .flow-intake{width:min(100%,440px);padding:22px;margin-top:38px}
  .flow-intake h4{font-size:31px}
  .flow-intake p{font-size:12px}
  .flow-node-eyebrow{font-size:10px}
  .flow-module{width:min(100%,370px);padding:25px 22px}
  .flow-module h4{font-size:34px}
  .flow-module p{font-size:12px}
  .flow-module .flow-node-status{font-size:11px}
  .flow-tech span{font-size:11px}
  .flow-cloud{width:min(100%,560px);padding:26px}
  .flow-cloud h4{font-size:36px}
  .flow-cloud-label{font-size:11px}
  .flow-process{padding:15px 0;gap:13px}
  .flow-process strong{font-size:14px}
  .flow-process i{font-size:11px}
  .flow-result{width:min(100%,440px);padding:25px}
  .flow-result h4{font-size:38px}
  .flow-result-kicker,.flow-result dt,.flow-result-stamp{font-size:11px}
  .flow-result dd{font-size:13px}
  .architecture-body{grid-template-columns:1fr 1fr}
  .architecture-body>div:nth-child(3){grid-column:1/-1}
}
@media(max-width:760px){
  .flow-feeds{grid-template-columns:repeat(2,minmax(0,1fr))}
  .architecture-heading,.gap-heading{flex-direction:column;gap:16px}
  .architecture-heading>p{max-width:none}
  .architecture-stage>summary{grid-template-columns:24px minmax(0,1fr) 18px;gap:10px}
  .architecture-summary{grid-column:2;grid-row:2;justify-self:start;text-align:left}
  .architecture-plus{grid-column:3;grid-row:1/3}
  .architecture-stage>summary>strong{font-size:16px}
  .architecture-body{padding-left:34px}
  .gap-badge{text-align:left;max-width:none}
  .gap-grid{grid-template-columns:1fr}
  .gap-card h5{font-size:33px}
}
@media(max-width:560px){
  .software-grid{row-gap:32px}
  .software-highlights{grid-template-columns:1fr;gap:9px}
  .software-highlight>summary{min-height:52px;font-size:11px}
  .software-highlight>p{font-size:13px}
  .flow-header{padding:20px 17px;gap:17px}
  .flow-brand{font-size:10px}.flow-brand small{font-size:10px}
  .flow-state{padding:17px;font-size:10px;gap:10px}.flow-concept-label{font-size:9px}
  .flow-board{padding:24px 17px 30px;gap:48px}
  .flow-feed{padding:12px 9px;gap:8px;min-height:82px;align-items:flex-start;flex-direction:column}
  .flow-feed strong{font-size:12px}.flow-feed small{font-size:9px}
  .flow-intake{padding:19px}
  .flow-cloud,.flow-result{padding:23px 18px}
  .flow-guide{padding:17px;font-size:10px}
  .flow-guide span:last-child{font-size:9px}
  .architecture-map,.storage-gap{padding:27px 17px}
  .architecture-heading h4,.gap-heading h4{font-size:33px}
  .architecture-body{grid-template-columns:1fr;padding:4px 0 25px;gap:20px}
  .architecture-body>div:nth-child(3){grid-column:auto}
  .architecture-body p{font-size:13px}
  .architecture-body h5{font-size:10px}
  .architecture-summary{font-size:9px}
  .gap-card{padding:21px 18px}
  .gap-card-label{font-size:9px;letter-spacing:0;flex-wrap:wrap;gap:6px}
  .gap-card>p{font-size:13px}
  .gap-card .gap-candidates{font-size:11px}
  .gap-note{font-size:12px}
  .flow-demo figcaption{padding:17px;font-size:10px;gap:9px}
}
@media(prefers-reduced-motion:reduce){.flow-feed,.flow-intake,.flow-module,.flow-cloud,.flow-result,.flow-process,.architecture-plus,.software-highlight-plus{transition:none}.flow-packet{display:none}}
