.gradient-primary {
    background: linear-gradient(180deg, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0) 100%);
}
.btn-hover {
    transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
.btn-hover:hover {
    transform: translateY(-4px);
    filter: brightness(1.1);
    box-shadow: 0 10px 20px -10px rgba(0, 104, 93, 0.4);
}
.card-hover {
    transition: all 0.4s cubic-bezier(0.19, 1, 0.22, 1);
}
.card-hover:hover {
    transform: translateY(-8px) scale(1.02);
    border-color: #00685d;
    box-shadow: 0 20px 40px -20px rgba(0, 0, 0, 0.1);
}
.img-overlay {
    background: linear-gradient(0deg, rgba(26,28,28,0.9) 0%, rgba(26,28,28,0.4) 50%, rgba(26,28,28,0.2) 100%);
}
@keyframes zoom-slow {
    0% { transform: scale(1); }
    100% { transform: scale(1.1); }
}
.animate-zoom {
    animation: zoom-slow 20s infinite alternate ease-in-out;
}
.reveal-delay-1 { transition-delay: 100ms; }
.reveal-delay-2 { transition-delay: 200ms; }
.reveal-delay-3 { transition-delay: 300ms; }

.floating-ui {
    animation: float 6s ease-in-out infinite;
}
@keyframes float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-10px); }
}

/* Neo Turquoise Green Filter for Card Images */
.card-image {
    filter: sepia(0.3) hue-rotate(150deg) saturate(1.2) brightness(1.1);
    transition: filter 0.3s ease;
}
.card-image:hover {
    filter: sepia(0.2) hue-rotate(150deg) saturate(1.4) brightness(1.2);
}