html { background:black; overflow:hidden; } #wrapper { position:relative; left:50%; top:50vh; } .itemwrapper { position:absolute; transform-origin:center top; } .item { height:100px; width:1px; background-color:#eee; opacity:1; margin:0 auto; transform:perspective(10px) rotateX(60deg); transform-origin:center top; } @for $i from 1 through 40 { .itemwrapper:nth-of-type(#{$i}) { transform:rotate(#{$i * 9}deg); .item { animation:pulse 2s infinite -#{$i * 100}ms alternate ease-in-out; } } } @keyframes pulse { from { background-color:#eee; } to { background-color:#111; } }