#about #techStackNetwork{width:100%;max-width:none;margin-inline:0;padding:20px 24px 16px!important;overflow:hidden!important;background:#fff!important;border-radius:24px!important;border-color:rgba(65,78,92,.065)!important;box-shadow:0 6px 22px rgba(35,43,54,.045),inset 0 1px 0 rgba(255,255,255,.85)!important;isolation:isolate}#about #techStackNetwork .bento-tech-inner{display:flex;flex-direction:column;align-items:stretch;gap:8px}#about #techStackNetwork .bento-tech-title-wrap{text-align:left}#about #techStackNetwork .bento-tech-title{font-size:1.625rem}#about #techStackNetwork.is-network-ready .bento-tech-title-wrap{position:relative;z-index:5;order:2;max-width:280px;pointer-events:none}#about #techStackNetwork .tech-network-subheading{max-width:260px;margin:8px 0 0;color:#8a9097;font-family:var(--font-main);font-size:.95rem;font-weight:400;line-height:1.5;letter-spacing:-.02em}#about #techStackNetwork.is-network-ready .ios-dock-scroll{display:none!important}#techStackNetwork .tech-network{--tech-node-size:48px;--tech-hub-size:68px;position:relative;order:1;width:100%;height:300px;min-width:0;transform:scale(1);transform-origin:50% 48%;transition:transform .8s cubic-bezier(.22,1,.36,1);isolation:isolate}#techStackNetwork .tech-network::after{content:"";position:absolute;z-index:3;inset:0;background:linear-gradient(to top,#fff,rgba(255,255,255,.88) 9%,rgba(255,255,255,.4) 26%,transparent 58%);pointer-events:none}#techStackNetwork .tech-network-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}#techStackNetwork .tech-connection{fill:none;stroke:#e8e9eb;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;transition:stroke .35s ease,opacity .35s ease}#techStackNetwork .tech-connection-pulse{fill:none;stroke:var(--signal-stroke,#887ded);stroke-width:1.75;stroke-linecap:round;stroke-dasharray:10 190;vector-effect:non-scaling-stroke;opacity:.8;animation:techNetworkSignal 4s cubic-bezier(.45,0,.55,1) infinite;animation-play-state:paused}#techStackNetwork .tech-connection-group.is-active .tech-connection{stroke:#c0c7cf}#techStackNetwork .tech-connection-group.is-active .tech-connection-pulse{opacity:1}#techStackNetwork .tech-network-hub,#techStackNetwork .tech-network-ring{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;pointer-events:none}#techStackNetwork .tech-network-ring{width:230px;height:230px;border:1px solid rgba(74,84,94,.025);z-index:-1}#techStackNetwork .tech-network-ring--middle{width:160px;height:160px;border-color:rgba(74,84,94,.035)}#techStackNetwork .tech-network-ring--inner{width:94px;height:94px;border-color:rgba(74,84,94,.06)}#techStackNetwork .tech-network-hub{display:grid;place-items:center;width:var(--tech-hub-size);height:var(--tech-hub-size);border:1px solid rgba(80,86,92,.09);background:#fff;box-shadow:0 2px 7px rgba(38,42,46,.045),0 5px 20px rgba(38,42,46,.035);color:#929698}#techStackNetwork .tech-network-hub::before{content:"";position:absolute;inset:-6px;border:1px solid rgba(100,110,122,.035);border-radius:inherit;background:rgba(255,255,255,.25);z-index:-1}#techStackNetwork .tech-network-hub svg{width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round}#techStackNetwork .tech-node{position:absolute;top:var(--node-y);left:var(--node-x);z-index:2;display:block;width:var(--tech-node-size);height:var(--tech-node-size);margin:0;padding:0;border:0;border-radius:50%;background:0 0;color:#27292e;font:inherit;transform:translate(-50%,-50%);cursor:pointer;-webkit-tap-highlight-color:transparent}#techStackNetwork .tech-node-float{display:block;width:100%;height:100%;animation:techNetworkFloat var(--float-duration,7s) ease-in-out infinite;animation-delay:var(--float-delay,0s);animation-play-state:paused}#techStackNetwork .tech-node-orb{display:grid;place-items:center;width:100%;height:100%;border:1px solid rgba(72,78,84,.09);border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(38,42,46,.045),0 5px 16px rgba(38,42,46,.035);transition:transform .55s cubic-bezier(.22,1,.36,1),border-color .3s ease}#techStackNetwork .tech-node-icon{display:block;width:27px;height:27px;object-fit:contain;border-radius:4px;pointer-events:none}#techStackNetwork .tech-node-label{position:absolute;top:calc(100% + 9px);left:50%;padding:5px 9px;border:1px solid rgba(72,82,92,.1);border-radius:8px;background:#fff;box-shadow:0 2px 5px rgba(38,48,58,.035);color:#30343a;font-size:.7rem;font-weight:500;line-height:1.3;white-space:nowrap;opacity:0;visibility:hidden;transform:translate(-50%,-3px);pointer-events:none;transition:opacity .2s ease,transform .3s ease,visibility .2s ease}#techStackNetwork .tech-node--left[data-label-side=bottom] .tech-node-label{left:0;transform:translate(0,-3px)}#techStackNetwork .tech-node--right[data-label-side=bottom] .tech-node-label{left:auto;right:0;transform:translate(0,-3px)}#techStackNetwork .tech-node[data-label-side=top] .tech-node-label{top:auto;bottom:calc(100% + 8px)}#techStackNetwork .tech-node[data-label-side=right] .tech-node-label{top:50%;left:calc(100% + 10px);transform:translate(-3px,-50%)}#techStackNetwork .tech-node[data-label-side=left] .tech-node-label{top:50%;left:auto;right:calc(100% + 10px);transform:translate(3px,-50%)}#techStackNetwork .tech-node.is-selected,#techStackNetwork .tech-node:focus-visible{z-index:8}#techStackNetwork .tech-node.is-selected .tech-node-label,#techStackNetwork .tech-node:focus-visible .tech-node-label{opacity:1;visibility:visible;transform:translate(-50%,0)}#techStackNetwork .tech-node--left[data-label-side=bottom].is-selected .tech-node-label,#techStackNetwork .tech-node--left[data-label-side=bottom]:focus-visible .tech-node-label,#techStackNetwork .tech-node--right[data-label-side=bottom].is-selected .tech-node-label,#techStackNetwork .tech-node--right[data-label-side=bottom]:focus-visible .tech-node-label{transform:translate(0,0)}#techStackNetwork .tech-node[data-label-side=left].is-selected .tech-node-label,#techStackNetwork .tech-node[data-label-side=left]:focus-visible .tech-node-label,#techStackNetwork .tech-node[data-label-side=right].is-selected .tech-node-label,#techStackNetwork .tech-node[data-label-side=right]:focus-visible .tech-node-label{transform:translate(0,-50%)}#techStackNetwork .tech-node.is-selected .tech-node-orb,#techStackNetwork .tech-node:focus-visible .tech-node-orb{transform:scale(1.07);border-color:rgba(88,109,130,.3)}#techStackNetwork .tech-node:focus-visible{outline:2px solid #8fb9ff;outline-offset:5px}#techStackNetwork.is-network-running .tech-connection-pulse,#techStackNetwork.is-network-running .tech-node-float{animation-play-state:running}@keyframes techNetworkSignal{0%{stroke-dashoffset:0;opacity:.8}22.5%{stroke-dashoffset:-90;opacity:.8}100%,25%{stroke-dashoffset:-104;opacity:0}}@keyframes techNetworkFloat{0%,100%{transform:translateY(-1.5px)}50%{transform:translateY(1.5px)}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){#about #techStackNetwork:hover .tech-network{transform:scale(1.012)}#techStackNetwork:hover .tech-network-lines,#techStackNetwork:hover .tech-network-ring{animation:techNetworkHoverFocus .75s cubic-bezier(.22,1,.36,1)}}@keyframes techNetworkHoverFocus{0%{filter:blur(0)}35%{filter:blur(.4px)}100%{filter:blur(0)}}@media (min-width:1001px){#about #techStackNetwork.is-network-ready .bento-tech-inner{display:grid;grid-template-columns:minmax(190px,.6fr) minmax(0,2.4fr);column-gap:16px;align-items:center}#about #techStackNetwork.is-network-ready .bento-tech-title-wrap{grid-column:1;grid-row:1;order:0;align-self:end;left:-4px;width:max-content;max-width:none;margin-bottom:0}#about #techStackNetwork .tech-network-subheading{max-width:none;white-space:nowrap}#techStackNetwork .tech-network{grid-column:2;grid-row:1;order:0;max-width:none;justify-self:stretch}}@media (min-width:601px) and (max-width:1000px){#about #techStackNetwork .bento-tech-title{font-size:1.5rem}#techStackNetwork .tech-network{--tech-node-size:46px;--tech-hub-size:64px;height:280px}#techStackNetwork .tech-network-ring{width:210px;height:210px}#techStackNetwork .tech-network-ring--middle{width:146px;height:146px}#techStackNetwork .tech-network-ring--inner{width:90px;height:90px}}@media (max-width:600px){#about #techStackNetwork{padding:20px 12px 16px!important}#about #techStackNetwork .bento-tech-inner{gap:10px}#about #techStackNetwork .bento-tech-title{font-size:1.35rem}#about #techStackNetwork .tech-network-subheading{font-size:.9rem}#techStackNetwork .tech-network{--tech-node-size:44px;--tech-hub-size:60px;height:360px}#techStackNetwork .tech-node-icon{width:25px;height:25px}#techStackNetwork .tech-network-hub svg{width:32px;height:32px}#techStackNetwork .tech-network-ring{width:190px;height:190px}#techStackNetwork .tech-network-ring--middle{width:136px;height:136px}#techStackNetwork .tech-network-ring--inner{width:86px;height:86px}}@media (max-width:360px){#techStackNetwork .tech-network{--tech-node-size:42px}#techStackNetwork .tech-network-ring{max-width:95%;aspect-ratio:1;height:auto}}@media (prefers-reduced-motion:reduce){#techStackNetwork .tech-connection-pulse,#techStackNetwork .tech-node-float{animation:none!important}#techStackNetwork .tech-connection-pulse{display:none}#techStackNetwork .tech-connection,#techStackNetwork .tech-network,#techStackNetwork .tech-node-label,#techStackNetwork .tech-node-orb{transition:none}}