.hub svg{width:100%;height:auto;display:block;overflow:visible}.hub .fig-caption{border-top:1px solid var(--line);margin-top:4px;padding-top:14px}.hub__heads text{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;fill:#a7c4badb;font-size:11.5px}.hub__heads path{fill:none;stroke:#a7c4ba2e;stroke-width:1px}#hub-dots circle{fill:#a7c4ba52}.hub__back{fill:#a7c4ba0f;stroke:#a7c4ba29;stroke-width:1px}.hub__back--near{fill:#a7c4ba1a;stroke:#a7c4ba42}.hub__back--out{fill:#dceae514;stroke:#dceae52e}.hub__back--out.hub__back--near{fill:#dceae529;stroke:#dceae54d}.hub__doc--dark{fill:url(#hub-doc-dark);stroke:#dceae5c7;stroke-width:1.2px}.hub__doc--light{fill:url(#hub-doc-light)}.hub__fold--dark{fill:#a7c4ba57;stroke:#dceae5c7;stroke-width:1.2px;stroke-linejoin:round}.hub__fold--light{fill:#dceae5}.hub__lines--dark rect{fill:#a7c4ba5c}.hub__lines--light rect{fill:#a7c4bacc}.hub__lines--light rect:first-child{fill:#176b5b80}.hub__chip text{font-family:var(--font-mono);letter-spacing:.06em;font-size:14px;font-weight:500}.hub__chip--dark rect{fill:#0d2e2980;stroke:#a7c4ba99;stroke-width:1px}.hub__chip--dark text{fill:var(--c-offwhite)}.hub__chip--light rect{fill:#e3eee9;stroke:#123d3629;stroke-width:1px}.hub__chip--light text{fill:var(--c-green-900);font-weight:600}.hub__flow-line,.hub__flow-arrow{fill:none;stroke:#a7c4bad9;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round}.hub__flow-node{fill:var(--c-mint)}.hub__flow-halo{fill:#a7c4ba38;animation:3.4s ease-in-out infinite hub-breathe}.hub__flow-glint{fill:none;stroke:var(--c-offwhite);stroke-width:2.2px;stroke-linecap:round;stroke-dasharray:14 200;stroke-dashoffset:14px;opacity:0;animation:4.2s ease-in-out infinite hub-glint}.hub__list rect{fill:#a7c4ba0d;stroke:#a7c4ba2e;stroke-width:1px}.hub__list text{font-family:var(--font-mono);letter-spacing:.08em;fill:#a7c4bac7;font-size:11.5px}@keyframes hub-breathe{0%,to{opacity:.55}50%{opacity:1}}@keyframes hub-glint{0%{stroke-dashoffset:14px;opacity:0}8%{opacity:1}38%{opacity:1}44%,to{stroke-dashoffset:-100px;opacity:0}}@media (max-width:599px){.hub__heads text{letter-spacing:.05em;font-size:16px}.hub__chip text{font-size:18px}.hub__list text{letter-spacing:.02em;font-size:15px}}
