/* VEU Express - Custom styles (supplements Tailwind CDN) */

/* Scroll animations */
.scroll-animate {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}
.scroll-animate.visible {
    opacity: 1;
    transform: translateY(0);
}

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

/* Warm background for body */
body {
    background-color: #fafaf7;
}

/* Section transitions */
section {
    transition: background-color 0.3s ease;
}

/* Header shrink on scroll */
.header-scrolled {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

/* Counter animation */
@keyframes countUp {
    from { opacity: 0; transform: scale(0.5); }
    to { opacity: 1; transform: scale(1); }
}

/* Floating button pulse */
@keyframes zalo-pulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(59, 130, 246, 0.4); }
    50% { box-shadow: 0 0 0 15px rgba(59, 130, 246, 0); }
}

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 8px;
}
::-webkit-scrollbar-track {
    background: #f1f1f1;
}
::-webkit-scrollbar-thumb {
    background: #2d5016;
    border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
    background: #1a3009;
}

/* Selection color */
::selection {
    background-color: rgba(45, 80, 22, 0.2);
    color: #1a3009;
}

/* Mobile menu animation */
#mobile-menu {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out, padding 0.3s ease-out;
    padding-top: 0;
    padding-bottom: 0;
}
#mobile-menu.open {
    max-height: 300px;
    padding-top: 1rem;
    padding-bottom: 1rem;
}