/* Custom Styles & Overrides */
html {
    scroll-behavior: smooth;
}

body {
    background-color: #f8fafc; /* slate-50 */
}

/* Custom Pattern for Process Section */
.pattern-grid-lg {
    background-image: linear-gradient(#ffffff 1px, transparent 1px),
                      linear-gradient(90deg, #ffffff 1px, transparent 1px);
    background-size: 40px 40px;
}

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

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

/* Service Card Hover Effect */
.service-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.service-card:hover {
    transform: translateY(-5px);
}

/* Form Focus States */
input:focus, textarea:focus {
    box-shadow: 0 0 0 3px rgba(20, 184, 166, 0.2);
}

/* Mobile Menu Transition */
#mobile-menu {
    transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out;
}
