﻿@import url("https://fonts.googleapis.com/css?family=Luckiest+Guy&display=swap");

html { 
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

body {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

h1 {
    margin: 0;
    font-size: 1em;
    padding: 0;
    color: white;
    text-shadow: 0 0.1em 20px black, 0.05em -0.03em 0 black, 0.05em 0.005em 0 black, 0em 0.08em 0 black, 0.05em 0.08em 0 black, 0px -0.03em 0 black, -0.03em -0.03em 0 black, -0.03em 0.08em 0 black, -0.03em 0 0 black;
}

    h1 span {
        transform: scale(0.9);
        display: inline-block;
    }

        h1 span:first-child {
            -webkit-animation: bop 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards infinite alternate;
            animation: bop 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards infinite alternate;
        }

        h1 span:last-child {
            -webkit-animation: bopB 1s 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards infinite alternate;
            animation: bopB 1s 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards infinite alternate;
        }

@-webkit-keyframes bop {
    0% {
        transform: scale(0.9);
    }

    50%, 100% {
        transform: scale(1);
    }
}

@keyframes bop {
    0% {
        transform: scale(0.9);
    }

    50%, 100% {
        transform: scale(1);
    }
}

@-webkit-keyframes bopB {
    0% {
        transform: scale(0.9);
    }

    80%, 100% {
        transform: scale(1) rotateZ(-3deg);
    }
}

@keyframes bopB {
    0% {
        transform: scale(0.9);
    }

    80%, 100% {
        transform: scale(1) rotateZ(-3deg);
    }
}


.buttoni.dark {
    --background: #2F3545;
    --shadow: 0 2px 8px -1px rgba(21, 25, 36, 0.32);
    --shadow-hover: 0 4px 20px -2px rgba(21, 25, 36, 0.5);
}

.buttoni.white {
    --background: #fff;
    --text: #275efe;
    --shadow: 0 2px 8px -1px rgba(18, 22, 33, 0.04);
    --shadow-hover: 0 4px 20px -2px rgba(18, 22, 33, 0.12);
}

.buttoni {
    --background: #6aa1af;
    --text: #fff;
    --font-size: 16px;
    --duration: .5s;
    --move-hover: -4px;
    --shadow: 0 2px 8px -1px rgba(39, 94, 254, 0.32);
    --shadow-hover: 0 4px 20px -2px rgba(39, 94, 254, 0.5);
    padding: 16px 32px;
    font-family: "Roboto";
    font-weight: 500;
    line-height: var(--font-size);
    border-radius: 16px;
    width: 100%;
    display: block;
    outline: none;
    border: none;
    cursor: pointer;
    text-decoration: none;
    font-size: var(--font-size);
    letter-spacing: 0.5px;
    background: var(--background);
    color: var(--text);
    box-shadow: var(--shadow);
    transform: translateY(var(--y));
    transition: transform var(--duration) ease, box-shadow var(--duration) ease;
    -webkit-tap-highlight-color: transparent;
    -webkit-appearance: none;
}

    .buttoni div {
        display: flex;
    }

        .buttoni div span {
            display: block;
            -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
            font-style: normal;
        }

            .buttoni div span:nth-child(1) {
                --d: 0.05s;
            }

            .buttoni div span:nth-child(2) {
                --d: 0.1s;
            }

            .buttoni div span:nth-child(3) {
                --d: 0.15s;
            }

            .buttoni div span:nth-child(4) {
                --d: 0.2s;
            }

            .buttoni div span:nth-child(5) {
                --d: 0.25s;
            }

            .buttoni div span:nth-child(6) {
                --d: 0.3s;
            }

            .buttoni div span:nth-child(7) {
                --d: 0.35s;
            }

            .buttoni div span:nth-child(8) {
                --d: 0.4s;
            }

            .buttoni div span:nth-child(9) {
                --d: 0.45s;
            }

            .buttoni div span:nth-child(10) {
                --d: 0.5s;
            }

            .buttoni div span:nth-child(11) {
                --d: 0.55s;
            }

    .buttoni:hover {
        --y: var(--move-hover);
        --shadow: var(--shadow-hover);
        --move: -4px;
        --shadow-active: 0 3px 1px rgba(0, 0, 0, .2);
    }

        .buttoni:hover span {
            -webkit-animation: move var(--duration) linear var(--d);
            animation: move var(--duration) linear var(--d);
        }

    .buttoni.smoke {
        --move: 12px;
        --move-y: -8px;
        --blur: 4px;
    }

        .buttoni.smoke:hover span {
            --duration: 1s;
            -webkit-animation: smoke var(--duration) linear var(--d);
            animation: smoke var(--duration) linear var(--d);
        }

    .buttoni.drive {
        --move: 16px;
        --skew: 25deg;
        --skew-fast: 40deg;
        --skew-bounce: -12px;
    }

        .buttoni.drive:hover span {
            --duration: 1s;
            transform-origin: 50% 100%;
            -webkit-animation: drive var(--duration) linear var(--d);
            animation: drive var(--duration) linear var(--d);
        }

@-webkit-keyframes move {
    40% {
        transform: translateY(var(--move));
        text-shadow: var(--shadow-active);
    }
}

@keyframes move {
    40% {
        transform: translateY(var(--move));
        text-shadow: var(--shadow-active);
    }
}

@-webkit-keyframes smoke {
    45%, 55% {
        filter: blur(var(--blur));
    }

    50%, 50.1% {
        opacity: 0;
    }

    25%, 75% {
        transform: translateX(0);
    }

    50% {
        transform: translateX(var(--move)) translateY(var(--move-y));
    }

    50.1% {
        transform: translateX(calc(var(--move) * -1));
    }
}

@keyframes smoke {
    45%, 55% {
        filter: blur(var(--blur));
    }

    50%, 50.1% {
        opacity: 0;
    }

    25%, 75% {
        transform: translateX(0);
    }

    50% {
        transform: translateX(var(--move)) translateY(var(--move-y));
    }

    50.1% {
        transform: translateX(calc(var(--move) * -1));
    }
}

@-webkit-keyframes drive {
    40% {
        opacity: 1;
    }

    55% {
        transform: skewX(var(--skew)) translateX(var(--move));
    }

    56% {
        transform: skewX(var(--skew-fast)) translateX(calc(var(--move) * -1));
    }

    55%, 56% {
        opacity: 0;
    }

    75% {
        transform: skewX(var(--skew));
    }

    85% {
        transform: skewX(var(--skew-bounce));
    }
}

@keyframes drive {
    40% {
        opacity: 1;
    }

    55% {
        transform: skewX(var(--skew)) translateX(var(--move));
    }

    56% {
        transform: skewX(var(--skew-fast)) translateX(calc(var(--move) * -1));
    }

    55%, 56% {
        opacity: 0;
    }

    75% {
        transform: skewX(var(--skew));
    }

    85% {
        transform: skewX(var(--skew-bounce));
    }
}



*:before, *:after {
    box-sizing: inherit;
}



body .buttoni {
}

body .dribbble {
    position: fixed;
    display: block;
    right: 20px;
    bottom: 20px;
}

    body .dribbble img {
        display: block;
        height: 28px;
    }

body .twitter {
    position: fixed;
    display: block;
    right: 64px;
    bottom: 14px;
}

    body .twitter svg {
        width: 32px;
        height: 32px;
        fill: #1da1f2;
    }
