/*
    Styles for slider animation
*/

.project-background{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-size: 200% 200%;
    background-image: -o-linear-gradient(45deg, var(--main-color-light) 0%, var(--main-color-dark) 20%, var(--main-color-light) 60%, var(--main-color-dark) 80%);
    background-image: linear-gradient(45deg, var(--main-color-light) 0%, var(--main-color-dark) 20%, var(--main-color-light) 60%, var(--main-color-dark) 80%);
    -webkit-animation: AnimateGradient 20s ease infinite;
    animation: AnimateGradient 20s ease infinite;
}

.project-background::before {
    position: absolute;
    content: "";
    right: -20%;
    bottom: -20%;
    width: 450px;
    height: 450px;
    background: rgba(0, 0, 0, 0.3);
    border-radius: 62% 47% 82% 35% / 45% 45% 80% 66%;
    will-change: border-radius, transform, opacity;
    -webkit-animation: AnimateBlob1 8s linear infinite;
    animation: AnimateBlob1 8s linear infinite;
    display: block;
}

.project-background::after {
    position: absolute;
    content: "";
    left: -15%;
    top: -20%;
    width: 350px;
    height: 350px;
    background: rgba(0, 0, 0, 0.3);
    border-radius: 62% 47% 82% 35% / 45% 45% 80% 66%;
    will-change: border-radius, transform, opacity;
    -webkit-animation: AnimateBlob2 8s linear infinite;
    animation: AnimateBlob2 8s linear infinite;
    display: block;
}

@-webkit-keyframes AnimateBlob1{
    0%,100%{
        border-radius: 42% 58% 70% 30% / 45% 45% 55% 55%;
        -webkit-transform: translate3d(0,0,0) rotateZ(0.01deg);
        transform: translate3d(0,0,0) rotateZ(0.01deg);
    }
    34%{
        border-radius: 70% 30% 46% 54% / 30% 29% 71% 70%;
        -webkit-transform:  translate3d(0,5px,0) rotateZ(0.01deg);
        transform:  translate3d(0,5px,0) rotateZ(0.01deg);
    }
    50%{
        -webkit-transform: translate3d(0,0,0) rotateZ(0.01deg);
        transform: translate3d(0,0,0) rotateZ(0.01deg);
    }
    67%{
        border-radius: 100% 60% 60% 100% / 100% 100% 60% 60% ;
        -webkit-transform: translate3d(0,-3px,0) rotateZ(0.01deg);
        transform: translate3d(0,-3px,0) rotateZ(0.01deg);
    }
}

@keyframes AnimateBlob1{
    0%,100%{
        border-radius: 42% 58% 70% 30% / 45% 45% 55% 55%;
        -webkit-transform: translate3d(0,0,0) rotateZ(0.01deg);
        transform: translate3d(0,0,0) rotateZ(0.01deg);
    }
    34%{
        border-radius: 70% 30% 46% 54% / 30% 29% 71% 70%;
        -webkit-transform:  translate3d(0,5px,0) rotateZ(0.01deg);
        transform:  translate3d(0,5px,0) rotateZ(0.01deg);
    }
    50%{
        -webkit-transform: translate3d(0,0,0) rotateZ(0.01deg);
        transform: translate3d(0,0,0) rotateZ(0.01deg);
    }
    67%{
        border-radius: 100% 60% 60% 100% / 100% 100% 60% 60% ;
        -webkit-transform: translate3d(0,-3px,0) rotateZ(0.01deg);
        transform: translate3d(0,-3px,0) rotateZ(0.01deg);
    }
}

@-webkit-keyframes AnimateBlob2{
    0%,100%{
        border-radius: 50% 20% 30% 58% / 55% 55% 45% 45%;
        -webkit-transform: translate3d(0,0,0) rotateZ(0.01deg);
        transform: translate3d(0,0,0) rotateZ(0.01deg);
    }
    25%{
        border-radius: 70% 30% 46% 54% / 30% 29% 71% 70%;
        -webkit-transform:  translate3d(0,5px,0) rotateZ(0.01deg);
        transform:  translate3d(0,5px,0) rotateZ(0.01deg);
    }
    50%{
        -webkit-transform: translate3d(0,0,0) rotateZ(0.01deg);
        transform: translate3d(0,0,0) rotateZ(0.01deg);
    }
    75%{
        border-radius: 100% 60% 60% 100% / 100% 100% 60% 60% ;
        -webkit-transform: translate3d(0,-3px,0) rotateZ(0.01deg);
        transform: translate3d(0,-3px,0) rotateZ(0.01deg);
    }
}

@keyframes AnimateBlob2{
    0%,100%{
        border-radius: 50% 20% 30% 58% / 55% 55% 45% 45%;
        -webkit-transform: translate3d(0,0,0) rotateZ(0.01deg);
        transform: translate3d(0,0,0) rotateZ(0.01deg);
    }
    25%{
        border-radius: 70% 30% 46% 54% / 30% 29% 71% 70%;
        -webkit-transform:  translate3d(0,5px,0) rotateZ(0.01deg);
        transform:  translate3d(0,5px,0) rotateZ(0.01deg);
    }
    50%{
        -webkit-transform: translate3d(0,0,0) rotateZ(0.01deg);
        transform: translate3d(0,0,0) rotateZ(0.01deg);
    }
    75%{
        border-radius: 100% 60% 60% 100% / 100% 100% 60% 60% ;
        -webkit-transform: translate3d(0,-3px,0) rotateZ(0.01deg);
        transform: translate3d(0,-3px,0) rotateZ(0.01deg);
    }
}

@-webkit-keyframes AnimateGradient {
    0% {
        background-position: 0 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0 50%;
    }
}

@keyframes AnimateGradient {
    0% {
        background-position: 0 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0 50%;
    }
}