@keyframes impactMove {
    0% {
        transform: translateX(100%);
    }

    100% {
        transform: translateX(-100%);
    }
}

.animate-impact {
    animation: impactMove 20s linear infinite;
}

/* TESTIMONIAL SLIDE ANIMATION */
@keyframes owlSlideIn {
    from {
        opacity: 0;
        transform: translateX(40px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.owl-animate {
    animation: owlSlideIn 0.6s ease forwards;
}

/* floating dots animation  
.bg-dots span {
    position: absolute;
    border-radius: 9999px;
    opacity: 0.9;
    animation: floatDot linear infinite;
    will-change: transform;
}

@keyframes floatDot {
    0% {
        transform: translate(0, 0);
    }

    50% {
        transform: translate(40px, -80px);
    }

    100% {
        transform: translate(0, 0);
    }
}  */

/* hero section slider effact */
.about-fill-pattern {
    background-image: repeating-linear-gradient(45deg,
            rgba(99, 32, 39, 0.4) 0,
            rgba(99, 32, 39, 0.4) 2px,
            transparent 2px,
            transparent 6px);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    opacity: 0.3;
}

/* 
   PORTFOLIO CARD SAME AS PORTFOLIO PAGE
 */

/* IMAGE ZOOM */
.group:hover img {
    transform: scale(1.05);
    transition: transform 0.7s ease;
}

/* OVERLAY FADE */
.group .absolute.inset-0.bg-\[\#632027\]\/50 {
    opacity: 0;
    transition: opacity 0.5s ease;
}

.group:hover .absolute.inset-0.bg-\[\#632027\]\/50 {
    opacity: 1;
}

/* CENTER TEXT ANIMATION */
.group .absolute.inset-0.flex {
    opacity: 0;
    transform: translateY(24px);
    transition: all 0.5s ease;
}

.group:hover .absolute.inset-0.flex {
    opacity: 1;
    transform: translateY(0);
}

/* BUTTON HOVER SAME AS PORTFOLIO */
.group a {
    transition: all 0.3s ease;
}

.group a:hover {
    background-color: #4f181e;
}

/* BOTTOM BAR ANIMATION */
.group .absolute.bottom-0 {
    opacity: 0;
    transition: opacity 0.5s ease;
}

.group:hover .absolute.bottom-0 {
    opacity: 1;
}