.connection-landscape{isolation:isolate;background:radial-gradient(at 29%,#e5ecdc 0,#0000 48%),#f5f6ee;border:1px solid #d8e0d0;border-radius:15px;height:480px;position:relative;overflow:hidden}.connection-landscape:before{content:"";z-index:-1;opacity:.26;background-image:radial-gradient(#aabb9f 1px,#0000 1px);background-size:22px 22px;position:absolute;inset:0;mask-image:linear-gradient(90deg,#0000,#000 35% 75%,#0000)}.connection-paths{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.connection-path{fill:none;stroke:#b5c5af;stroke-width:1.25px;vector-effect:non-scaling-stroke}.connection-paths text{fill:#4c6756;paint-order:stroke;stroke:#f5f6ee;stroke-width:7px;stroke-linejoin:round;font-family:inherit;font-size:10px}.connection-flow{fill:none;stroke:#668661;stroke-width:2px;stroke-linecap:round;stroke-dasharray:3 97;stroke-dashoffset:100px;opacity:0;vector-effect:non-scaling-stroke}.connections-revealed .connection-flow{animation:connection-travel 2.5s ease-in-out var(--flow-delay) 1 both}@keyframes connection-travel{0%{stroke-dashoffset:100px;opacity:0}15%,75%{opacity:.8}to{stroke-dashoffset:0;opacity:0}}.connection-person{text-align:center;width:112px;position:absolute;top:50%;left:8.18%;transform:translate(-50%,-23px)}.connection-person>svg{stroke:#31594a;stroke-width:1.5px;background:#fffefa;border:1px solid #c7d2bf;border-radius:50%;width:46px;height:46px;margin:0 auto 11px;padding:6px;display:block}.connection-person>strong{font-size:12px;display:block}.connection-person>span{color:#4c6756;justify-content:center;align-items:center;gap:4px;margin-top:8px;font-size:9px;display:flex}.connection-platform{text-align:center;width:18.18%;position:absolute;top:50%;left:21.82%;transform:translateY(-34px)}.connection-platform>div{background:#103c30;border-radius:10px;place-items:center;height:68px;padding:18px;display:grid;box-shadow:0 14px 28px -20px #143b2c99}.connection-platform img{filter:brightness(0)invert();width:100%;max-width:163px;height:auto}.connection-platform>span{color:#3e5c4d;white-space:nowrap;margin-top:16px;font-size:9px;display:block}.connection-endpoint{align-items:center;gap:13px;max-width:245px;display:flex;position:absolute;transform:translateY(-26px)}.endpoint-erp{top:15.625%;left:56.82%}.endpoint-suppliers{top:32.29%;left:75%}.endpoint-recyclers{top:60.416%;left:76.82%}.endpoint-finance{top:83.33%;left:62.27%}.endpoint-reporting{top:87.5%;left:42.27%}.endpoint-symbol{color:#315944;background:#fffefa;border:1px solid #c7d2bf;border-radius:14px;flex:0 0 52px;place-items:center;width:52px;height:52px;display:grid;position:relative;box-shadow:0 5px 12px -9px #264a37}.endpoint-symbol>img{width:74%;height:auto;display:block}.endpoint-suppliers .endpoint-symbol{background:#ebe7f5;border-color:#d5cde4;border-radius:50%}.endpoint-recyclers .endpoint-symbol{background:#dcedd9;border-color:#c1d5b9;border-radius:50%}.endpoint-finance .endpoint-symbol{border-radius:5px;transform:rotate(-4deg)}.endpoint-finance .endpoint-symbol:before{content:"";z-index:-1;background:#f2eedf;border:1px solid #c7d2bf;border-radius:5px;position:absolute;inset:3px -5px -5px 3px;transform:rotate(7deg)}.endpoint-reporting .endpoint-symbol{background:#eef2de;border-color:#d5ddbd;border-radius:9px}.endpoint-copy strong{font-size:13px;line-height:1.4;display:block}.endpoint-copy small{color:#4c6756;margin-top:4px;font-size:10px;line-height:1.5;display:block}.endpoint-method{display:none}@media (width>=1400px){.endpoint-copy strong{font-size:14px}.endpoint-copy small{font-size:11px}}@media (width>=901px) and (width<=1100px){.connection-landscape{height:440px}.connection-endpoint{gap:9px;max-width:205px}.endpoint-symbol{flex-basis:43px;width:43px;height:43px}.endpoint-copy strong{font-size:11px}.endpoint-copy small{font-size:9px}.endpoint-recyclers{left:75%}.endpoint-suppliers{left:74%}.connection-platform>div{padding:14px}.connection-platform>span{font-size:8px}}@media (width<=900px){.connection-landscape{background:#f0f3e9;grid-template-columns:minmax(0,1fr);gap:24px;height:auto;padding:28px;display:grid}.connection-landscape:before,.connection-paths{display:none}.connection-person,.connection-platform{align-self:center;width:auto;position:relative;inset:auto;transform:none}.connection-person{justify-self:center;align-items:center;gap:10px;display:flex}.connection-person>svg{width:34px;height:34px;margin:0;padding:4px}.connection-person>strong{font-size:14px}.connection-person>span,.endpoint-method{display:none}.connection-platform{justify-self:center;width:260px;max-width:100%}.connection-platform:before,.connection-platform:after{content:"";background:#9daf99;width:1px;height:16px;position:absolute;left:50%}.connection-platform:before{bottom:calc(100% + 4px)}.connection-platform:after{top:calc(100% + 4px)}.connection-platform>div{height:66px;box-shadow:none}.connection-platform>span{white-space:normal;margin-top:10px;font-size:12px;line-height:1.5}.connection-endpoints{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.connection-endpoint{background:#fcfcf8;border:1px solid #d6dfd1;border-radius:10px;gap:12px;min-width:0;max-width:none;padding:16px;position:relative;inset:auto;transform:none}.endpoint-reporting{grid-column:1/-1;justify-content:center}.endpoint-symbol{width:40px;height:40px;box-shadow:none;flex:0 0 40px}.endpoint-finance .endpoint-symbol{background:#f2eedf;border-radius:8px;transform:none}.endpoint-finance .endpoint-symbol:before{display:none}.endpoint-copy{min-width:0}.endpoint-copy strong{font-size:14px;line-height:1.4}.endpoint-copy small{font-size:12px;line-height:1.4}}@media (width<=600px){.connection-landscape{padding:22px 16px}.connection-endpoints{gap:8px}.connection-endpoint{flex-direction:column;align-items:flex-start;gap:10px;min-height:100px;padding:14px 12px}.endpoint-symbol{border-radius:8px;flex-basis:32px;width:32px;height:32px}.endpoint-symbol>svg{width:20px;height:20px}.endpoint-copy small{display:none}.endpoint-reporting{flex-direction:row;align-items:center;min-height:64px}}@media (prefers-reduced-motion:reduce){.connection-flow{animation:none!important;display:none!important}}
