body { font-family: 'Inter', sans-serif; font-weight: 400; line-height: 1.7; background-color: #FFFFFF; color: #081A26; }

h1, h2, h3, h4, h5, h6 { font-family: 'Poppins', sans-serif; font-weight: 700; letter-spacing: -0.02em; }
.btn-text, button[type="submit"] { font-family: 'Poppins', sans-serif; font-weight: 500; }
nav a { font-family: 'Inter', sans-serif; font-weight: 500; }
.shape-blob { animation: float 6s ease-in-out infinite; }
@keyframes float { 0% { transform: translateY(0px); } 50% { transform: translateY(-15px); } 100% { transform: translateY(0px); } }

/* Mobile Touch & Tap Optimizations */
* {
    -webkit-tap-highlight-color: transparent;
}

button, a, input, select, textarea, .filter-btn, [role="button"], .service-card {
    touch-action: manipulation;
}

/* Button & Link Touch/Active Animations */
button:active, 
a.btn-text:active, 
.mobile-link:active, 
.filter-btn:active, 
button[type="submit"]:active {
    opacity: 0.92;
    transform: scale(0.97) !important;
    transition: transform 100ms ease, opacity 100ms ease, background-color 100ms ease !important;
}

/* Services Hover & Touch/Active Effects */
@media (hover: hover) {
    .service-card:hover {
        transform: translateY(-5px);
        box-shadow: 0 15px 35px -10px rgba(70,180,250,0.25);
    }

    .service-card:hover .service-icon-wrapper {
        background-color: #46B4FA;
        color: #FFFFFF;
        transform: scale(1.08);
    }
}

.service-card:active {
    transform: translateY(-2px) scale(0.99);
    box-shadow: 0 8px 25px -5px rgba(70,180,250,0.25);
    border-color: rgba(255, 212, 59, 0.3) !important;
}

.service-card:active .service-icon-wrapper {
    background-color: #46B4FA;
    color: #FFFFFF;
    transform: scale(1.05);
}

@media (prefers-reduced-motion: reduce) {
    .service-card, .service-icon-wrapper, .service-title, .service-desc {
        transition: none !important;
        transform: none !important;
    }
}

/* Animations */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate-fade-in-up {
    animation: fadeInUp 600ms ease-out forwards;
    opacity: 0;
}

@media (prefers-reduced-motion: reduce) {
    .animate-fade-in-up {
        animation: none !important;
        opacity: 1 !important;
        transform: none !important;
    }
}

.stagger-1 { animation-delay: 100ms; }
.stagger-2 { animation-delay: 200ms; }
.stagger-3 { animation-delay: 300ms; }
.stagger-4 { animation-delay: 400ms; }

/* Force remove any top border/shadow from all nav elements */
nav, header, body, html, #main-nav {
    border-top: none !important;
    box-shadow: none !important;
    outline: none !important;
    border: none !important;
}
#main-nav, 
#main-nav * {
    border-top: 0 !important;
    box-shadow: none !important;
    drop-shadow: none !important;
}
body {
    margin: 0 !important;
    padding-top: 0 !important;
}
