  /* Custom styles for smooth scrolling and animations */
        html { scroll-behavior: smooth; }
        .hero-overlay { background: linear-gradient(rgba(10, 37, 64, 0.5), rgba(10, 37, 64, 0.4)); }
        .testimonial-slide { display: none; }
        .testimonial-slide.active { display: block; }
        .mobile-menu {
            background-color: #062b4f;
            width: 75vw;
            max-width: 320px;
            transform: translateX(-100%);
            transition: transform 320ms cubic-bezier(0.2, 0.9, 0.2, 1);
            z-index: 70;
            box-shadow: 4px 0 20px rgba(0, 0, 0, 0.3);
            overflow-y: auto;
            -webkit-overflow-scrolling: touch;
            display: flex;
            flex-direction: column;
        }
        .mobile-menu.active {
            transform: translateX(0);
        }

        /* Mobile menu content styling */
        .mobile-menu .p-4 {
            padding: 1rem;
            display: flex;
            flex-direction: column;
        }

        .mobile-menu #close-menu {
            color: white;
            background: none;
            border: none;
            cursor: pointer;
            font-size: 2rem;
            font-weight: bold;
            line-height: 1;
            padding: 0;
            margin-bottom: 2rem;
            transition: all 200ms ease;
            align-self: flex-start;
            width: 44px;
            height: 44px;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .mobile-menu #close-menu:hover,
        .mobile-menu #close-menu:active {
            color: #FF6B35;
            transform: scale(1.15);
        }

        .mobile-menu .flex.flex-col {
            gap: 0;
        }

        .mobile-menu .mobile-link {
            display: block;
            color: white;
            text-decoration: none;
            padding: 1rem 1rem;
            font-size: 1rem;
            font-weight: 500;
            transition: all 200ms ease;
            border-left: 4px solid transparent;
            border-radius: 0;
        }

        .mobile-menu .mobile-link:hover {
            color: #FF6B35;
            border-left-color: #FF6B35;
            background-color: rgba(255, 107, 53, 0.08);
            padding-left: 1.25rem;
        }

        .mobile-menu .mobile-link:active {
            color: #e55a2b;
        }

        /* Mobile menu overlay */
        .mobile-menu-overlay {
            background: rgba(0, 0, 0, 0.5);
            opacity: 0;
            pointer-events: none;
            transition: opacity 320ms ease;
            z-index: 65;
        }

        .mobile-menu-overlay.active {
            opacity: 1;
            pointer-events: auto;
        }
        .modal { display: none; }
        .modal.active { display: flex; }
        
        
        /* Animated gradient background */
        @keyframes gradient {
            0% { background-position: 0% 50%; }
            50% { background-position: 100% 50%; }
            100% { background-position: 0% 50%; }
        }
        .animated-gradient {
            background: linear-gradient(-45deg, #0A2540, #FF6B35, #0A2540, #FF6B35);
            background-size: 400% 400%;
            animation: gradient 15s ease infinite;
        }
        
        /* Floating animation */
        @keyframes float {
            0%, 100% { transform: translateY(0px); }
            50% { transform: translateY(-20px); }
        }
        .float-animation {
            animation: float 3s ease-in-out infinite;
        }
        
        /* Pulse animation for CTA buttons */
        @keyframes pulse {
            0%, 100% { box-shadow: 0 0 0 0 rgba(255, 107, 53, 0.5); }
            50% { box-shadow: 0 0 0 8px rgba(255, 107, 53, 0); }
        }
        .pulse-animation {
            animation: pulse 2s infinite;
        }
        
        /* Accordion styles */
        .accordion-content {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.3s ease;
        }
        .accordion-content.active {
            max-height: 500px;
        }
        
        /* Statistics counter animation */
        .stat-number {
            font-size: 3rem;
            font-weight: bold;
            color: #FF6B35;
        }
        
        /* Parallax effect */
        .parallax {
            background-attachment: fixed;
            background-position: center;
            background-repeat: no-repeat;
            background-size: cover;
        }
        
        /* Card hover effects */
        .hover-lift {
            transition: all 0.3s ease;
        }
        .hover-lift:hover {
            transform: translateY(-10px) scale(1.02);
            box-shadow: 0 20px 40px rgba(0,0,0,0.2);
        }
        
        /* Progress bar animation */
        .progress-bar {
            width: 0;
            transition: width 2s ease;
        }
        .progress-bar.animate {
            width: 100%;
        }
.logo {
    width: 100%;
    max-width: 200px;
    height: auto;
     font-family: 'Poppins', sans-serif;
}
.logo-wrapper {
    display: flex;
    align-items: center;
}

.logo-svg {
    width: 220px;   /* Navbar size */
    height: auto;
     font-family: 'Poppins', sans-serif;
}
.logo-text {
    font-family: 'Poppins', sans-serif;
    font-weight: 300;
    letter-spacing: 2px;
}

/* Make skip links visible on keyboard focus */
.sr-only { position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.sr-only:focus { position: fixed; left: 1rem; top: 1rem; width: auto; height: auto; padding: 8px 12px; background: white; color: #0A2540; z-index: 9999; border-radius: 6px; box-shadow: 0 6px 18px rgba(0,0,0,0.12); }

/* Mobile navbar scroll hide/show */
@media (max-width: 767px) {
    nav.site-nav {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        width: 100%;
        transform: translateY(-100%);
        transition: transform 280ms cubic-bezier(0.2, 0.9, 0.2, 1);
        z-index: 55;
    }

    nav.site-nav.nav-visible {
        transform: translateY(0);
    }

    /* Hide desktop nav on mobile */
    nav.site-nav .hidden.md\:flex {
        display: none !important;
    }

    /* Style logo on mobile */
    nav.site-nav .logo-container {
        flex: 1;
    }

    nav.site-nav .logo {
        max-width: 150px;
    }

    /* Hamburger button styling */
    nav.site-nav button[aria-controls="mobile-menu"] {
        position: relative;
        z-index: 75;
        width: 44px;
        height: 44px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.5rem;
        cursor: pointer;
        transition: all 200ms ease;
        padding: 0;
    }

    nav.site-nav button[aria-controls="mobile-menu"]:hover {
        color: #FF6B35;
    }

    nav.site-nav button[aria-controls="mobile-menu"]:active {
        transform: scale(0.9);
    }

    /* Mobile navbar padding */
    nav.site-nav .container {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    nav.site-nav .container > div {
        justify-content: space-between;
    }
}

/* Mobile hero section styling */
@media (max-width: 767px) {
    #home {
        min-height: calc(100vh - 60px) !important;
        height: auto !important;
        padding-top: 60px;
    }

    .hero-overlay {
        background: linear-gradient(rgba(10, 37, 64, 0.4), rgba(10, 37, 64, 0.3));
    }

    .hero-overlay > div {
        padding: 2rem 1rem;
        min-height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .hero-overlay h1 {
        font-size: 1.875rem !important;
        margin-bottom: 0.75rem;
        line-height: 1.3;
    }

    .hero-overlay p {
        font-size: 1.125rem !important;
        margin-bottom: 1.5rem;
    }

    .hero-overlay .flex.flex-col {
        gap: 0.75rem;
    }

    .hero-overlay a {
        padding: 0.625rem 1.5rem !important;
        font-size: 0.938rem;
        border-radius: 6px;
    }

    /* Remove pulse animation on mobile */
    .pulse-animation {
        animation: none !important;
        box-shadow: none !important;
    }

    .pulse-animation:hover {
        box-shadow: none !important;
    }

    /* Clean button styling on mobile */
    .hero-overlay a[href="#contact"] {
        background-color: #FF6B35;
        color: white;
        border: none;
    }

    .hero-overlay a[href="#contact"]:hover {
        background-color: #e55a2b;
    }

    .hero-overlay a[href="#contact"]:active {
        transform: scale(0.98);
    }

    /* Consultation button mobile styling */
    .hero-overlay a[href*="wa.me"] {
        border-width: 1px;
        padding: 0.625rem 1.5rem !important;
    }
}