@keyframes animOne { 0% { transform: translate(0px, 0px) rotate(0deg) } 20% { transform: translate(73px, -1px) rotate(35deg) } 40% { transform: translate(141px, 72px) rotate(75deg) } 60% { transform: translate(83px, 122px) rotate(110deg) } 80% { transform: translate(-40px, 72px) rotate(145deg) } 100% { transform: translate(0px, 0px) rotate(0deg) } } @-webkit-keyframes animOne { 0% { -webkit-transform: translate(0px, 0px) rotate(0deg) } 20% { -webkit-transform: translate(73px, -1px) rotate(35deg) } 40% { -webkit-transform: translate(141px, 72px) rotate(75deg) } 60% { -webkit-transform: translate(83px, 122px) rotate(110deg) } 80% { -webkit-transform: translate(-40px, 72px) rotate(145deg) } 100% { -webkit-transform: translate(0px, 0px) rotate(0deg) } } @keyframes animTwo { 0% { transform: translate(0px, 0px) rotate(0deg) scale(1) } 20% { transform: translate(73px, -1px) rotate(36deg) scale(.9) } 40% { transform: translate(141px, 72px) rotate(72deg) scale(1) } 60% { transform: translate(83px, 122px) rotate(108deg) scale(1.2) } 80% { transform: translate(-40px, 72px) rotate(144deg) scale(1.1) } 100% { transform: translate(0px, 0px) rotate(0deg) scale(1) } } @-webkit-keyframes animTwo { 0% { -webkit-transform: translate(0px, 0px) rotate(0deg) scale(1) } 20% { -webkit-transform: translate(73px, -1px) rotate(36deg) scale(.9) } 40% { -webkit-transform: translate(141px, 72px) rotate(72deg) scale(1) } 60% { -webkit-transform: translate(83px, 122px) rotate(108deg) scale(1.2) } 80% { -webkit-transform: translate(-40px, 72px) rotate(144deg) scale(1.1) } 100% { -webkit-transform: translate(0px, 0px) rotate(0deg) scale(1) } } @keyframes animThree { 0% { transform: translate(165px, -179px) } 100% { transform: translate(-346px, 617px) } } @-webkit-keyframes animThree { 0% { -webkit-transform: translate(165px, -179px) } 100% { -webkit-transform: translate(-346px, 617px) } } @keyframes animFour { 0% { transform: translate(-300px, 151px) rotate(0deg) } 100% { transform: translate(251px, -200px) rotate(180deg) } } @-webkit-keyframes animFour { 0% { -webkit-transform: translate(-300px, 151px) rotate(0deg) } 100% { -webkit-transform: translate(251px, -200px) rotate(180deg) } } @keyframes animFive { 0% { transform: translate(61px, -99px) rotate(0deg) } 21% { transform: translate(4px, -190px) rotate(38deg) } 41% { transform: translate(-139px, -200px) rotate(74deg) } 60% { transform: translate(-263px, -164px) rotate(108deg) } 80% { transform: translate(-195px, -49px) rotate(144deg) } 100% { transform: translate(-1px, 0px) rotate(180deg) } } @-webkit-keyframes animFive { 0% { -webkit-transform: translate(61px, -99px) rotate(0deg) } 21% { -webkit-transform: translate(4px, -190px) rotate(38deg) } 41% { -webkit-transform: translate(-139px, -200px) rotate(74deg) } 60% { -webkit-transform: translate(-263px, -164px) rotate(108deg) } 80% { -webkit-transform: translate(-195px, -49px) rotate(144deg) } 100% { -webkit-transform: translate(-1px, 0px) rotate(180deg) } } .animated-shape-wrap { position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; .animated-shape-item{ position: absolute; &:nth-child(1) { background: rgba(0, 201, 157, .6); width: 10px; height: 10px; border-radius: 50%; top: 12%; left: 15%; animation: animTwo 13s infinite linear; } &:nth-child(2){ border: 5px solid rgba(0,153,229,.3); width: 25px; height: 25px; border-radius: 50%; top: 15%; left: 45%; -webkit-animation: animOne 15s infinite linear; animation: animOne 15s infinite linear; } &:nth-child(3){ border: 5px solid rgba(244,34,104,.3); width: 25px; height: 25px; bottom: 20%; left: 30%; -webkit-animation: animFour 15s infinite linear alternate; animation: animFour 15s infinite linear alternate; } &:nth-child(4){ background: rgba(252,162,73,.8); width: 10px; height: 10px; border-radius: 50%; bottom: 15%; right: 25%; -webkit-animation: animFive 15s infinite linear alternate; animation: animFive 15s infinite linear alternate; } &:nth-child(5){ background: rgba(100,45,250,.4); width: 3px; height: 20px; top: 18%; right: 25%; -webkit-animation: animFour 15s infinite linear alternate; animation: animFour 15s infinite linear alternate; &:before, &:after{ content: ""; display: block; width: 100%; height: calc(50% - 2px); top: 6px; background: inherit; position: absolute; -moz-transform: rotate(90deg); -o-transform: rotate(90deg); -ms-transform: rotate(90deg); -webkit-transform: rotate(90deg); transform: rotate(90deg); } &:before{ right: -6px; } &:after{ left: -6px; } } } }