.signal { position: fixed; top: 45vh; left: calc(50% - 25px); border-width: 8px; border-style: solid; border-radius: 100%; height: 50px; width: 50px; opacity: 0; position: absolute; animation: pulsate .85s ease-out; animation-iteration-count: infinite; } @keyframes pulsate { 0% { transform: scale(.1); opacity: 0.0; } 50% { opacity: 1; } 100% { transform: scale(1.2); opacity: 0; } }