/* Custom Animations and Utilities */
@keyframes float {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-10px); }
}

@keyframes float-delayed {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-6px); }
}

@keyframes float-delayed-2 {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-4px); }
}

.card-float {
    animation: float 4s ease-in-out infinite;
}

.card-float-delay {
    animation: float-delayed 4s ease-in-out infinite;
    animation-delay: 0.5s;
}

.card-float-delay-2 {
    animation: float-delayed-2 4s ease-in-out infinite;
    animation-delay: 1s;
}

/* Smooth Scroll */
html {
    scroll-behavior: smooth;
}

/* Hide scrollbar for horizontal scroll on mobile */
.hide-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.hide-scrollbar::-webkit-scrollbar {
    display: none;
}

/* Custom Selection Color */
::selection {
    background-color: rgb(16 185 129 / 0.2);
    color: #064e3b;
}

/* Input Date Icon Fix */
input[type="date"] {
    color-scheme: light;
}

/* Fade In Animation */
.fade-in {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.fade-in.visible {
    opacity: 1;
    transform: translateY(0);
}
