/* Custom CSS for animations and effects */
.hero-gradient {
    background: linear-gradient(135deg, #102542 60%, #FFFFFF 100%);
}

.card-hover:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

.nav-link::after {
    content: '';
    display: block;
    width: 0;
    height: 2px;
    background: #4f46e5;
    transition: width .3s;
}

.nav-link:hover::after {
    width: 100%;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

.animate-fade-in {
    animation: fadeIn 0.8s ease-out forwards;
}

.delay-100 {
    animation-delay: 0.1s;
}

.delay-200 {
    animation-delay: 0.2s;
}

.delay-300 {
    animation-delay: 0.3s;
}

.service-icon {
    transition: all 0.3s ease;
}

.service-card:hover .service-icon {
    transform: scale(1.1);
    color: #4f46e5;
}

/* Page transition */
.page {
    display: none;
}

.page.active {
    display: block;
}

#mobile-menu-button {
  cursor: pointer;
}