.globe-container{position:relative;width:100%;max-width:500px;aspect-ratio:1;margin:0 auto;perspective:1000px}.globe{position:relative;width:100%;height:100%;transform-style:preserve-3d;animation:rotate-globe 30s linear infinite}.globe-wireframe{position:absolute;inset:0;transform-style:preserve-3d}.globe-ring{position:absolute;inset:5%;border:1px solid rgba(14,165,233,.3);border-radius:50%;transform-style:preserve-3d}.globe-ring.latitude-1{transform:rotateX(90deg)}.globe-ring.latitude-2{transform:rotateX(90deg) scale(.9);top:5%;bottom:5%}.globe-ring.latitude-3{transform:rotateX(90deg) scale(.75);top:12.5%;bottom:12.5%}.globe-ring.latitude-4{transform:rotateX(90deg) scale(.55);top:22.5%;bottom:22.5%}.globe-ring.latitude-5{transform:rotateX(90deg) scale(.3);top:35%;bottom:35%}.globe-ring.longitude-1{transform:rotateY(0)}.globe-ring.longitude-2{transform:rotateY(30deg)}.globe-ring.longitude-3{transform:rotateY(60deg)}.globe-ring.longitude-4{transform:rotateY(90deg)}.globe-ring.longitude-5{transform:rotateY(120deg)}.globe-ring.longitude-6{transform:rotateY(150deg)}.globe-ring.equator{border-color:#0ea5e980;border-width:2px;transform:rotateX(90deg)}.globe-nodes{position:absolute;inset:0;transform-style:preserve-3d}.node{position:absolute;width:8px;height:8px;background:var(--color-cms-glow, #38bdf8);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 4px var(--color-cms-glow, #38bdf8),0 0 8px var(--color-cms-glow, #38bdf8),0 0 16px var(--color-cms-primary, #0ea5e9);animation:node-pulse 2s ease-in-out infinite}.node:after{content:"";position:absolute;inset:-4px;border:1px solid rgba(56,189,248,.5);border-radius:50%;animation:node-ring 2s ease-out infinite}.node-1{top:30%;left:50%;animation-delay:0s}.node-2{top:45%;left:25%;animation-delay:.3s}.node-3{top:45%;left:75%;animation-delay:.6s}.node-4{top:60%;left:35%;animation-delay:.9s}.node-5{top:60%;left:65%;animation-delay:1.2s}.node-6{top:50%;left:50%;animation-delay:1.5s}.node-7{top:35%;left:35%;animation-delay:.4s}.node-8{top:35%;left:65%;animation-delay:.8s}.node-9{top:70%;left:50%;animation-delay:1.1s}.globe-connections{position:absolute;inset:0;overflow:hidden}.connection{position:absolute;height:2px;background:linear-gradient(90deg,transparent 0%,rgba(14,165,233,.6) 20%,rgba(56,189,248,.8) 50%,rgba(14,165,233,.6) 80%,transparent 100%);transform-origin:left center;opacity:.6}.connection:before{content:"";position:absolute;width:20px;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.8),transparent);animation:data-pulse 3s linear infinite}.connection-1{top:37%;left:35%;width:80px;transform:rotate(25deg);animation-delay:0s}.connection-2{top:37%;left:50%;width:70px;transform:rotate(-25deg);animation-delay:.5s}.connection-3{top:45%;left:30%;width:60px;transform:rotate(60deg);animation-delay:1s}.connection-4{top:45%;left:55%;width:60px;transform:rotate(120deg);animation-delay:1.5s}.connection-5{top:52%;left:40%;width:50px;transform:rotate(-30deg);animation-delay:2s}.connection-6{top:52%;left:50%;width:50px;transform:rotate(30deg);animation-delay:2.5s}.connection-7{top:55%;left:38%;width:70px;transform:rotate(45deg);animation-delay:.7s}.connection-8{top:55%;left:52%;width:70px;transform:rotate(135deg);animation-delay:1.2s}.globe-glow{position:absolute;inset:-10%;border-radius:50%;background:radial-gradient(circle,transparent 40%,rgba(14,165,233,.05) 60%,rgba(14,165,233,.1) 70%,transparent 80%);animation:glow-pulse 4s ease-in-out infinite}@keyframes rotate-globe{0%{transform:rotateY(0) rotateX(-15deg)}to{transform:rotateY(360deg) rotateX(-15deg)}}@keyframes node-pulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:1}50%{transform:translate(-50%,-50%) scale(1.2);opacity:.8}}@keyframes node-ring{0%{transform:scale(1);opacity:1}to{transform:scale(2);opacity:0}}@keyframes data-pulse{0%{left:-20px;opacity:0}10%{opacity:1}90%{opacity:1}to{left:100%;opacity:0}}@keyframes glow-pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.8;transform:scale(1.02)}}@media(prefers-reduced-motion:reduce){.globe{animation:none;transform:rotateY(30deg) rotateX(-15deg)}.node,.node:after,.connection:before,.globe-glow{animation:none}.connection:before{display:none}}@media(max-width:640px){.globe-container{max-width:300px}.node{width:6px;height:6px}}
