/* Global Custom Styles */
@layer utilities {
    .text-balance {
        text-wrap: balance;
    }
}

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

/* Animations */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translate3d(0, 40px, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}




.animate-fade-in-up {
    animation-name: fadeInUp;
    animation-fill-mode: both;
}

/* Staggered delays for list items/grids */
.delay-100 { animation-delay: 100ms; }
.delay-200 { animation-delay: 200ms; }
.delay-300 { animation-delay: 300ms; }
.delay-400 { animation-delay: 400ms; }
.delay-500 { animation-delay: 500ms; }

/* Modal & Overlay */
.modal-overlay {
    backdrop-filter: blur(4px);
}

/* Form Styles */
.input-field:focus-within label {
    color: #0369A1;
}

/* Mobile Menu Transitions */
.mobile-menu-enter {
    transform: translateY(-100%);
    opacity: 0;
}
.mobile-menu-enter-active {
    transform: translateY(0);
    opacity: 1;
    transition: all 300ms ease-in-out;
}
.mobile-menu-exit {
    transform: translateY(0);
    opacity: 1;
}
.mobile-menu-exit-active {
    transform: translateY(-100%);
    opacity: 0;
    transition: all 300ms ease-in-out;
}
