@charset "UTF-8"; /* from: https://codepen.io/nonsalant/pen/poKdGKN/8cd36d806e3bcae07060ebb80533f88d */ /* ---------------------------------------- */ /* Quick SCSS System for Animated Entrances */ /* ---------------------------------------- */ /* Converted to SCSS by Ștefan Matei from: --------------------------------------------------------------------------- "System for Animated Entrances" by Neale Van Fleet https://css-tricks.com/a-handy-little-system-for-animated-entrances-in-css/ --------------------------------------------------------------------------- */ @media (prefers-reduced-motion: reduce) { .animate { animation: none !important; } } /* Animation delay classes. Eg: .delay-1 */ .delay-1 { animation-delay: calc(0.5s + 1*0.1s); } .delay-2 { animation-delay: calc(0.5s + 2*0.1s); } .delay-3 { animation-delay: calc(0.5s + 3*0.1s); } .delay-4 { animation-delay: calc(0.5s + 4*0.1s); } .delay-5 { animation-delay: calc(0.5s + 5*0.1s); } .delay-6 { animation-delay: calc(0.5s + 6*0.1s); } .delay-7 { animation-delay: calc(0.5s + 7*0.1s); } .delay-8 { animation-delay: calc(0.5s + 8*0.1s); } .delay-9 { animation-delay: calc(0.5s + 9*0.1s); } .delay-10 { animation-delay: calc(0.5s + 10*0.1s); } .delay-11 { animation-delay: calc(0.5s + 11*0.1s); } .delay-12 { animation-delay: calc(0.5s + 12*0.1s); } .delay-13 { animation-delay: calc(0.5s + 13*0.1s); } .delay-14 { animation-delay: calc(0.5s + 14*0.1s); } .delay-15 { animation-delay: calc(0.5s + 15*0.1s); } .delay-16 { animation-delay: calc(0.5s + 16*0.1s); } :where(.animate) { animation-duration: 0.75s; animation-delay: 0.5s; animation-name: animate-fade; animation-timing-function: cubic-bezier(0.26, 0.53, 0.74, 1.48); animation-fill-mode: backwards; /* Fade In */ /* Pop In */ /* Blur In */ /* Glow In */ /* Grow In */ /* Splat In */ /* Roll In */ /* Flip In */ /* Spin In */ /* Slide In */ /* Drop In */ /* Drop Up */ } :where(.animate).fade { animation-name: animate-fade; animation-timing-function: ease; } :where(.animate).pop { animation-name: animate-pop; } :where(.animate).blur { animation-name: animate-blur; animation-timing-function: ease; } :where(.animate).glow { animation-name: animate-glow; animation-timing-function: ease; } :where(.animate).grow { animation-name: animate-grow; } :where(.animate).splat { animation-name: animate-splat; } :where(.animate).roll { animation-name: animate-roll; } :where(.animate).flip { animation-name: animate-flip; transform-style: preserve-3d; perspective: 1000px; } :where(.animate).spin { animation-name: animate-spin; transform-style: preserve-3d; perspective: 1000px; } :where(.animate).slide { animation-name: animate-slide; } :where(.animate).drop { animation-name: animate-drop; animation-timing-function: cubic-bezier(0.77, 0.14, 0.91, 1.25); } :where(.animate).drop-up { animation-name: animate-drop-up; animation-timing-function: cubic-bezier(0.77, 0.14, 0.91, 1.25); } @media screen { @keyframes animate-fade { 0% { opacity: 0; } 100% { opacity: 1; } } @keyframes animate-pop { 0% { opacity: 0; transform: scale(0.5, 0.5); } 100% { opacity: 1; transform: scale(1, 1); } } @keyframes animate-blur { 0% { opacity: 0; filter: blur(15px); } 100% { opacity: 1; filter: blur(0px); } } @keyframes animate-glow { 0% { opacity: 0; filter: brightness(3) saturate(3); transform: scale(0.8, 0.8); } 100% { opacity: 1; filter: brightness(1) saturate(1); transform: scale(1, 1); } } @keyframes animate-grow { 0% { opacity: 0; transform: scale(1, 0); visibility: hidden; } 100% { opacity: 1; transform: scale(1, 1); } } @keyframes animate-splat { 0% { opacity: 0; transform: scale(0, 0) rotate(20deg) translate(0, -30px); } 70% { opacity: 1; transform: scale(1.1, 1.1) rotate(15deg); } 85% { opacity: 1; transform: scale(1.1, 1.1) rotate(15deg) translate(0, -10px); } 100% { opacity: 1; transform: scale(1, 1) rotate(0) translate(0, 0); } } @keyframes animate-roll { 0% { opacity: 0; transform: scale(0, 0) rotate(360deg); } 100% { opacity: 1; transform: scale(1, 1) rotate(0deg); } } @keyframes animate-flip { 0% { opacity: 0; transform: rotateX(-120deg) scale(0.9, 0.9); } 100% { opacity: 1; transform: rotateX(0deg) scale(1, 1); } } @keyframes animate-spin { 0% { opacity: 0; transform: rotateY(-120deg) scale(0.9, 0.9); } 100% { opacity: 1; transform: rotateY(0deg) scale(1, 1); } } @keyframes animate-slide { 0% { opacity: 0; transform: translate(0, 20px); } 100% { opacity: 1; transform: translate(0, 0); } } @keyframes animate-drop { 0% { opacity: 0; transform: translate(0, -300px) scale(0.9, 1.1); } 95% { opacity: 1; transform: translate(0, 0) scale(0.9, 1.1); } 96% { opacity: 1; transform: translate(10px, 0) scale(1.2, 0.9); } 97% { opacity: 1; transform: translate(-10px, 0) scale(1.2, 0.9); } 98% { opacity: 1; transform: translate(5px, 0) scale(1.1, 0.9); } 99% { opacity: 1; transform: translate(-5px, 0) scale(1.1, 0.9); } 100% { opacity: 1; transform: translate(0, 0) scale(1, 1); } } @keyframes animate-drop-up { 0% { opacity: 0; transform: translate(0, 300px) scale(0.9, 1.1); } 95% { opacity: 1; transform: translate(0, 0) scale(0.9, 1.1); } 96% { opacity: 1; transform: translate(-10px, 0) scale(1.2, 0.9); } 97% { opacity: 1; transform: translate(10px, 0) scale(1.2, 0.9); } 98% { opacity: 1; transform: translate(-5px, 0) scale(1.1, 0.9); } 99% { opacity: 1; transform: translate(5px, 0) scale(1.1, 0.9); } 100% { opacity: 1; transform: translate(0, 0) scale(1, 1); } } }