/* ==========================================================================
   SG TECH - Custom premium micro-animations
   ========================================================================== */

/* Floating Background Shapes */
@keyframes floatShape1 {
    0% {
        transform: translateY(0px) rotate(0deg) scale(1);
    }
    50% {
        transform: translateY(-20px) rotate(180deg) scale(1.1);
    }
    100% {
        transform: translateY(0px) rotate(360deg) scale(1);
    }
}

@keyframes floatShape2 {
    0% {
        transform: translate(0px, 0px) rotate(0deg);
    }
    50% {
        transform: translate(15px, -25px) rotate(-90deg);
    }
    100% {
        transform: translate(0px, 0px) rotate(0deg);
    }
}

.floating-shape-1 {
    position: absolute;
    width: 300px;
    height: 300px;
    border-radius: 43% 57% 70% 30% / 45% 45% 55% 55%;
    background: radial-gradient(circle, rgba(11,107,46,0.06) 0%, rgba(255,255,255,0) 70%);
    top: -50px;
    right: -100px;
    z-index: 1;
    animation: floatShape1 15s infinite ease-in-out;
}

.floating-shape-2 {
    position: absolute;
    width: 250px;
    height: 250px;
    border-radius: 64% 36% 27% 73% / 55% 58% 42% 45%;
    background: radial-gradient(circle, rgba(255,196,0,0.05) 0%, rgba(255,255,255,0) 70%);
    bottom: -50px;
    left: -100px;
    z-index: 1;
    animation: floatShape2 12s infinite ease-in-out;
}

/* Pulsing Badge Icon */
@keyframes pulseBadge {
    0% {
        box-shadow: 0 0 0 0 rgba(11, 107, 46, 0.4);
    }
    70% {
        box-shadow: 0 0 0 10px rgba(11, 107, 46, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(11, 107, 46, 0);
    }
}

.pulse-badge {
    animation: pulseBadge 2s infinite;
    border-radius: 50px;
}

/* Subtle Shimmer for secondary highlights */
@keyframes shimmer {
    0% {
        background-position: -200px 0;
    }
    100% {
        background-position: 200px 0;
    }
}

.shimmer-text {
    background: linear-gradient(90deg, var(--heading-color) 0%, var(--primary-color) 50%, var(--heading-color) 100%);
    background-size: 200% auto;
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    animation: shimmer 4s infinite linear;
}

/* Float Stat Badges */
@keyframes floatBadge {
    0% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-8px);
    }
    100% {
        transform: translateY(0);
    }
}

.float-stat-badge {
    animation: floatBadge 4s infinite ease-in-out;
}

/* SVG Line Drawing */
@keyframes drawLine {
    to {
        stroke-dashoffset: 0;
    }
}

.draw-path {
    stroke-dasharray: 1000;
    stroke-dashoffset: 1000;
    animation: drawLine 2.5s ease-out forwards;
}

/* Grid Card Entrance animation (backup) */
.card-scale-up {
    transition: transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.card-scale-up:hover {
    transform: scale(1.02);
}
