.page { position: relative; height: calc(100vh - 50px); display: flex; justify-content: center; align-items: center; background-color: #01010b; padding-bottom: 60px; flex: auto; } /* .leo-apng-container { position: absolute; display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; } */ .leo-apng { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; /* width: 100%; animation-name: leo-apng; animation-duration: 1.5s; animation-iteration-count: 1; animation-timing-function: linear; */ } .text-container { position: relative; width: 138px; height: 200px; } .text { position: absolute; bottom: 0; color: #fff; will-change: scale, opacity; } .breath-in { animation-name: breath-in; animation-duration: 10s; animation-iteration-count: infinite; animation-timing-function: linear; } .breath-out { animation-name: breath-out; animation-duration: 10s; animation-iteration-count: infinite; animation-timing-function: linear; } .preview { position: relative; width: 100%; height: 200px; display: flex; justify-content: center; } .leo { /* width: 90%; */ animation-name: leo; animation-duration: 10s; animation-iteration-count: 1; animation-timing-function: linear; } .breath-relax { animation-name: breath-relax; animation-duration: 10s; animation-iteration-count: 1; animation-timing-function: linear; } .cross { position: absolute; top: 24px; right: 24px; width: 24px; height: 24px; border: solid 2px #bdbdbd; border-radius: 100%; rotate: 45deg; cursor: pointer; z-index: 9999; } .cross::before { content: ""; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 10px; height: 2px; background-color: #bdbdbd; } .cross::after { content: ""; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 2px; height: 10px; background-color: #bdbdbd; } @keyframes leo-apng { 0% { opacity: 0; } 100% { opacity: 1; } } @keyframes leo { 0% { opacity: 0; scale: 1; } 5% { opacity: 1; } 10% { scale: 1; } 25% { scale: 1.1; } 35% { scale: 1.1; } 50% { scale: 1; } 60% { scale: 1; } 75% { scale: 1.1; } 85% { scale: 1.1; } /* 95% { opacity: 1; } */ 100% { scale: 1; opacity: 1; } } @keyframes breath-relax { 0% { opacity: 0; } 5% { opacity: 0; } 10% { opacity: 1; } 95% { opacity: 1; } 100% { scale: 1; opacity: 0; } } @keyframes breath-in { 0% { opacity: 0; scale: 1; } 10% { opacity: 1; } 40% { opacity: 1; } 50% { opacity: 0; scale: 2; } 100% { opacity: 0; } } @keyframes breath-out { 0% { opacity: 0; scale: 1; } 50% { opacity: 0; scale: 2; } 60% { opacity: 1; } 90% { opacity: 1; } 100% { opacity: 0; scale: 1; } }