 /* Critical CSS for above-the-fold content */
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
           
        }
        
        body {
            font-family: 'Inter', sans-serif;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
        }
        
        /* Hero gradient animation */
        @keyframes gradientShift {
            0%, 100% { background-position: 0% 50%; }
            50% { background-position: 100% 50%; }
        }
        
        .hero-gradient {
            background: linear-gradient(-45deg, #003375, #00224E, #001127, #0055C3);
            background-size: 400% 400%;
            animation: gradientShift 15s ease infinite;
        }

        
            /* Float animation */
            @keyframes float {
                0%, 100% {
                    transform: translateY(0px);
                }
                50% {
                    transform: translateY(-20px);
                }
            }

            /* Delayed float animations for cards */
            @keyframes float-delay-1 {
                0%, 100% {
                    transform: translateY(0px);
                }
                50% {
                    transform: translateY(-15px);
                }
            }

            @keyframes float-delay-2 {
                0%, 100% {
                    transform: translateY(0px);
                }
                50% {
                    transform: translateY(-25px);
                }
            }

            .animate-float {
                animation: float 6s ease-in-out infinite;
            }

            .animate-float-delay-1 {
                animation: float-delay-1 7s ease-in-out infinite;
                animation-delay: 0.5s;
            }

            .animate-float-delay-2 {
                animation: float-delay-2 8s ease-in-out infinite;
                animation-delay: 1s;
            }
                    
            /* Smooth scroll behavior */
            html {
                scroll-behavior: smooth;
            }
            
        /* Smooth transitions 
        * {
            transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        } */
        
        
        /* Footer link hover */
        .footer-link {
            transition: color 0.2s ease, transform 0.2s ease;
        }
        
        .footer-link:hover {
            color: #FFC300;
            transform: translateX(3px);
        }
        
        /* Social icon hover */
        .social-icon {
            transition: all 0.3s ease;
        }
        
        .social-icon:hover {
            transform: translateY(-3px);
            background: #FFC300;
        }
        
        /* Skip to main content (accessibility) */
        .skip-to-main {
            position: absolute;
            left: -9999px;
            z-index: 999;
            padding: 1rem 1.5rem;
            background: #0064E6;
            color: white;
            text-decoration: none;
            border-radius: 0.5rem;
        }
        
        .skip-to-main:focus {
            left: 1rem;
            top: 1rem;
        }
        
        /* Loading optimization */
        img {
            max-width: 100%;
            height: auto;
        }
        
        /* Reduce motion for accessibility */
        @media (prefers-reduced-motion: reduce) {
            *,
            *::before,
            *::after {
                animation-duration: 0.01ms !important;
                animation-iteration-count: 1 !important;
                transition-duration: 0.01ms !important;
            }
        }
        
        /* Screen reader only */
        .sr-only {
            position: absolute;
            width: 1px;
            height: 1px;
            padding: 0;
            margin: -1px;
            overflow: hidden;
            clip: rect(0, 0, 0, 0);
            white-space: nowrap;
            border-width: 0;
        }

        .portfolio-section {
      padding: 5rem 0;
      background: linear-gradient(180deg, #ffffff 0%, #F8FAFC 100%);
    }

    .container {
      max-width: 1280px;
      margin: 0 auto;
      padding: 0 1.5rem;
    }

    .section-header {
      text-align: center;
      margin-bottom: 4rem;
    }

    .section-badge {
      display: inline-block;
      padding: 0.5rem 1rem;
      background: #E8F2FF;
      color: #0064E6;
      font-size: 0.875rem;
      font-weight: 600;
      border-radius: 9999px;
      margin-bottom: 1rem;
      text-transform: uppercase;
    }

    .section-title {
      font-family: 'Poppins', sans-serif;
      font-size: 2.5rem;
      font-weight: 700;
      color: #001127;
      margin-bottom: 1rem;
      line-height: 1.2;
    }

    .section-description {
      font-size: 1.125rem;
      color: #64748B;
      max-width: 42rem;
      margin: 0 auto;
      line-height: 1.7;
    }

    .portfolio-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
      gap: 2rem;
      margin-bottom: 4rem;
    }

    @keyframes fadeInUp {
      from {opacity: 0; transform: translateY(30px);}
      to {opacity: 1; transform: translateY(0);}
    }

    .portfolio-card {
      background: white;
      border-radius: 1rem;
      overflow: hidden;
      box-shadow: 0 2px 15px -3px rgba(0, 0, 0, 0.07);
      transition: all 0.4s ease;
      animation: fadeInUp 0.6s ease forwards;
    }

    .portfolio-card:hover {
      transform: translateY(-8px);
      box-shadow: 0 20px 50px -10px rgba(0, 0, 0, 0.15);
    }

    .card-image-wrapper {
      position: relative;
      width: 100%;
      padding-top: 66.67%;
      overflow: hidden;
      background: #E2E8F0;
    }

    .card-image {
      position: absolute;
      top: 0; left: 0;
      width: 100%; height: 100%;
      object-fit: cover;
      transition: transform 0.6s ease;
    }

    .portfolio-card:hover .card-image {
      transform: scale(1.08);
    }

    .card-overlay {
      position: absolute;
      inset: 0;
      background: linear-gradient(180deg, transparent 0%, rgba(0,17,39,0.7) 100%);
      opacity: 0;
      transition: opacity 0.4s ease;
      display: flex;
      align-items: flex-end;
      padding: 1.5rem;
    }

    .portfolio-card:hover .card-overlay {
      opacity: 1;
    }

    .view-project-btn {
      display: inline-flex;
      align-items: center;
      gap: 0.5rem;
      padding: 0.625rem 1.25rem;
      background: white;
      color: #001127;
      font-weight: 600;
      font-size: 0.875rem;
      border-radius: 0.5rem;
      text-decoration: none;
      transition: all 0.3s ease;
    }

    .view-project-btn:hover {
      background: #FFC300;
      transform: translateX(4px);
    }

    .card-content {
      padding: 1.75rem;
    }

    .card-category {
      display: inline-flex;
      align-items: center;
      gap: 0.5rem;
      padding: 0.375rem 0.875rem;
      background: #E8F2FF;
      color: #0064E6;
      font-size: 0.75rem;
      font-weight: 600;
      border-radius: 9999px;
      margin-bottom: 1rem;
    }

    .card-title {
      font-family: 'Poppins', sans-serif;
      font-size: 1.25rem;
      font-weight: 600;
      color: #001127;
      margin-bottom: 0.75rem;
    }

    .card-description {
      color: #64748B;
      font-size: 0.9375rem;
      line-height: 1.6;
      margin-bottom: 1.25rem;
    }

    .card-tags {
      display: flex;
      flex-wrap: wrap;
      gap: 0.5rem;
    }

    .tag {
      padding: 0.375rem 0.75rem;
      background: #F1F5F9;
      color: #475569;
      font-size: 0.8125rem;
      font-weight: 500;
      border-radius: 0.375rem;
    }

    .cta-buttons {
      text-align: center;
      display: flex;
      justify-content: center;
      gap: 1.5rem;
      flex-wrap: wrap;
    }

    .cta-btn {
      display: inline-flex;
      align-items: center;
      gap: 0.5rem;
      padding: 1rem 2rem;
      font-weight: 600;
      border-radius: 0.75rem;
      font-size: 1rem;
      text-decoration: none;
      transition: all 0.3s ease;
    }

    .cta-btn-primary {
      background: #FFC300;
      color: #001127;
    }

    .cta-btn-primary:hover {
      background: #FFCF33;
      transform: translateY(-2px);
      box-shadow: 0 10px 30px rgba(255, 195, 0, 0.4);
    }

    .cta-btn-secondary {
      background: #001127;
      color: #fff;
    }

    .cta-btn-secondary:hover {
      background: #003375;
      transform: translateY(-2px);
    }

    @media(max-width:768px){
      .section-title{font-size:2rem;}
      .cta-buttons{flex-direction:column;}
      .cta-btn{width:100%; justify-content:center;}
    }

    @media (max-width: 400px) {
  .portfolio-grid { grid-template-columns: 1fr; }
}


        

        /* Price switch animation */
        .price-switch {
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }
        
        /* Pricing card hover effect */
        .pricing-card {
            transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        }
        
        .pricing-card:hover {
            transform: translateY(-8px);
        }
        
        /* Popular badge animation */
        @keyframes shimmer {
            0% {
                background-position: -100% 0;
            }
            100% {
                background-position: 200% 0;
            }
        }
        
        .shimmer {
            background: linear-gradient(90deg, #FFC300 0%, #FFE799 50%, #FFC300 100%);
            background-size: 200% 100%;
            animation: shimmer 3s ease-in-out infinite;
        }
        
        /* Feature list item animation */
        .feature-item {
            transition: all 0.3s ease;
        }
        
        .feature-item:hover {
            transform: translateX(4px);
        }
        
   

/* ==================== ANIMATION STYLES ==================== */
/* Animation Styles */
.fade-in {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.fade-in.visible {
    opacity: 1;
    transform: translateY(0);
}

.fade-in-left {
    opacity: 0;
    transform: translateX(-30px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.fade-in-left.visible {
    opacity: 1;
    transform: translateX(0);
}

.fade-in-right {
    opacity: 0;
    transform: translateX(30px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.fade-in-right.visible {
    opacity: 1;
    transform: translateX(0);
}

.scale-in {
    opacity: 0;
    transform: scale(0.95);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.scale-in.visible {
    opacity: 1;
    transform: scale(1);
}

/* Stagger delay for sequential animations */
.stagger-1 { transition-delay: 0.1s; }
.stagger-2 { transition-delay: 0.2s; }
.stagger-3 { transition-delay: 0.3s; }
.stagger-4 { transition-delay: 0.4s; }
.stagger-5 { transition-delay: 0.5s; }
.stagger-6 { transition-delay: 0.6s; }

/* Larger screens can have more dramatic animations */
@media (min-width: 768px) {
    .fade-in-left {
        transform: translateX(-50px);
    }
    
    .fade-in-right {
        transform: translateX(50px);
    }
    
    .scale-in {
        transform: scale(0.8);
    }
}