It's main to allow JavaScript to jog this app. body { overflow: hidden; } .heart { align-objects: heart; affirm: flex; flex-route: column; top: 100vh; interpret-stutter material: heart; width: 100vw; } @keyframes depart-in { from { opacity: 0; } to { opacity: 1; } } .depart-in { animation-prolong: 750ms; animation-route: fashioned; animation-length: 500ms; animation-bear-mode: forwards; animation-iteration-depend: 1; animation-name: depart-in; animation-timing-characteristic: ease-in-out; opacity: 0; } @keyframes poke { from { change into: rotate(0deg); } to { change into: rotate(360deg); } } .spinner { animation-length: var(--transitionDurationSlow, 600ms); animation-iteration-depend: limitless; animation-name: poke; animation-timing-characteristic: linear; border-color: var(--colorNeutral600Transparent, rgba(125, 134, 153, 0.25)); border-radius: 100%; border-model: sturdy; border-top-color: rgba(125, 134, 153, 0.9); border-width: var(--borderWidthHeavy, 3px); affirm: block; top: var(--spacingXxlarge, 48px); width: var(--spacingXxlarge, 48px); }