.cw-route,.cw-message,.cw-arrival{animation-duration:var(--cw-network-duration);animation-delay:var(--cw-delay);animation-timing-function:linear;animation-iteration-count:infinite}.cw-route{stroke-dasharray:1;stroke-dashoffset:1px;opacity:0;animation-name:cw-route}@keyframes cw-route{0%{stroke-dashoffset:1px;opacity:0}2%{opacity:1}12%,17%{stroke-dashoffset:0;opacity:1}23%,to{stroke-dashoffset:0;opacity:0}}.cw-message{opacity:0;offset-distance:0%;offset-rotate:0deg;animation-name:cw-message}@keyframes cw-message{0%{opacity:0;offset-distance:0%}2%{opacity:1}11.5%{opacity:1}12%,to{opacity:0;offset-distance:100%}}.cw-arrival{opacity:0;transform-box:fill-box;transform-origin:50%;animation-name:cw-arrival}@keyframes cw-arrival{0%,11.9%{opacity:0;transform:scale(.5)}12%{opacity:.7;transform:scale(.5)}18%,to{opacity:0;transform:scale(2)}}.cw-project-anchor{pointer-events:none;z-index:2;transform:translate(-50%,calc(-100% - 2.5rem))}.cw-project{background:var(--color-sticker-lime);width:max-content;max-width:10rem;color:var(--color-sticker-ink);box-shadow:0 3px 0 var(--color-sticker-ink);opacity:0;transform-origin:bottom;animation:cw-project var(--cw-project-duration) ease-in-out infinite;border-radius:.65rem;flex-direction:column;gap:.15rem;padding:.45rem .7rem;font-size:clamp(11px,1.2vw,15px);display:flex;position:relative}.cw-project:after{content:"";border-left:1px dashed var(--color-sticker-lime);height:2.5rem;position:absolute;top:100%;left:50%}.cw-project-caption{text-transform:uppercase;letter-spacing:.08em;font-size:9px}.cw-map[data-running=false] :is(.cw-route,.cw-message,.cw-arrival,.cw-project){animation-play-state:paused}@media (prefers-reduced-motion:reduce){.cw-map :is(.cw-route,.cw-message,.cw-arrival,.cw-project){animation:none!important}.cw-map .cw-route{stroke-dashoffset:0;opacity:.65}.cw-map :is(.cw-message,.cw-arrival,.cw-project-anchor){display:none}}.nl-plane{animation:6s ease-in-out infinite nl-float}@keyframes nl-float{0%,to{transform:translate(0)rotate(0)}50%{transform:translate(-6px,5px)rotate(-3deg)}}.nl-plane[data-sent]{animation:.9s cubic-bezier(.55,0,.7,.2) forwards nl-away}@keyframes nl-away{to{opacity:0;transform:translate(140px,-90px)rotate(8deg)scale(.6)}}.nl-note{animation:.45s cubic-bezier(.22,1,.36,1) both nl-note}@keyframes nl-note{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}[data-running=false] .nl-plane:not([data-sent]){animation-play-state:paused}@media (prefers-reduced-motion:reduce){.nl-plane,.nl-note{animation:none!important}.nl-plane[data-sent]{opacity:0}}
