        /* === New Services Carousel === */
        .services-carousel { width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); position: relative; overflow: hidden; }
        .services-track { display: flex; transition: transform 500ms cubic-bezier(.22,.61,.36,1); will-change: transform; }
        .services-slide { flex: 0 0 100%; padding: 0 4vw; box-sizing: border-box; }
        .svc-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 24px; }
        .svc-card { position: relative; display: flex; flex-direction: column; gap: 10px; padding: 18px; border-radius: 16px; text-align: left; background: linear-gradient(180deg, rgba(20,20,24,.85), rgba(10,10,12,.85)); border: 1px solid rgba(255,255,255,.06); box-shadow: 0 10px 30px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.05); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
        .svc-card:hover { transform: translateY(-6px); box-shadow: 0 18px 48px rgba(0,0,0,.6), 0 0 0 1px rgba(96,165,250,.18) inset; border-color: rgba(96,165,250,.35); }
        .svc-card.placeholder { opacity: .6; display: flex; align-items: start; }
        .svc-icon { width: 56px; height: 56px; display: inline-flex; align-items: center; justify-content: center; border-radius: 12px; border: 1px solid rgba(255,255,255,.08); background: radial-gradient(120% 120% at 20% 20%, rgba(96,165,250,.25), rgba(129,140,248,.08) 60%, rgba(255,255,255,.05)); box-shadow: 0 10px 24px rgba(96,165,250,.12); color: #60a5fa; font-size: 1.4rem; }
        .svc-title { font-weight: 700; font-size: 1.05rem; color: #fff; letter-spacing: .2px; }
        .svc-desc { color: #a0aec0; font-size: .95rem; line-height: 1.55; }
        .svc-features { margin-top: 2px; color: #cbd5e1; font-size: .9rem; display: grid; gap: 6px; }
        .svc-features li { display: flex; align-items: center; gap: 8px; opacity: .95; }
        .svc-features i { color: var(--accent-1); font-size: .85rem; }
        .svc-cta { margin-top: auto; display: inline-flex; align-items: center; gap: 8px; color: #93c5fd; font-weight: 600; }
        .svc-cta i { font-size: .9rem; }
        .svc-nav { position: absolute; top: 50%; transform: translateY(-50%); width: 44px; height: 44px; border-radius: 50%; border: 1px solid rgba(255,255,255,.12); background: rgba(17,17,17,.6); color: #e2e8f0; display: inline-flex; align-items: center; justify-content: center; box-shadow: 0 10px 24px rgba(0,0,0,.4); transition: transform .2s ease, background .2s ease, border-color .2s ease; z-index: 10; }
        .svc-nav:hover { transform: translateY(-50%) scale(1.05); background: rgba(37,99,235,.22); border-color: rgba(96,165,250,.4); }
        .svc-nav.left { left: 1rem; }
        .svc-nav.right { right: 1rem; }
        .svc-dots { position: absolute; left: 50%; transform: translateX(-50%); bottom: 12px; display: flex; gap: 8px; }
        .svc-dots button { width: 8px; height: 8px; border-radius: 9999px; background: rgba(255,255,255,.25); border: none; transition: transform .2s ease, background .2s ease; }
        .svc-dots button.active { background: #60a5fa; transform: scale(1.25); }
        @media (max-width: 1023px) { .svc-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } }
        @media (max-width: 767px) { .services-slide { padding: 0 20px; } .svc-grid { grid-template-columns: 1fr; } }
  body {
            font-family: 'Inter', sans-serif;
            background-color: #0a0a0a; /* Even darker background for the whole site */
            color: #e2e8f0; /* Light text color */
            overflow-x: hidden; /* Prevent horizontal scroll due to animations */
        }

        :root {
            --accent-1: #60a5fa; /* blue-400 */
            --accent-2: #818cf8; /* indigo-400 */
            --card-border: rgba(255, 255, 255, 0.06);
            --card-bg: rgba(17, 17, 17, 0.8);
        }

        /* --- Modern Header Redesign --- */
        .modern-header {
            background-color: rgba(10, 10, 10, 0.6); /* Slightly transparent dark background */
            backdrop-filter: blur(10px); /* Glassmorphism effect */
            border-bottom: 1px solid rgba(255, 255, 255, 0.1); /* Subtle bottom border */
            padding-top: 0.5rem;
            padding-bottom: 0.5rem;
            transition: all 0.3s ease-in-out;
        }

        .modern-header:hover {
            background-color: rgba(10, 10, 10, 0.8); /* Less transparent on hover */
            border-color: rgba(66, 153, 225, 0.3); /* Subtle blue border on hover */
        }

        /* Navigation Links Hover Effect */
        .nav-link-hover {
            position: relative;
            color: #e2e8f0;
            transition: color 0.3s ease;
            padding-bottom: 0.25rem; /* Add space for underline */
        }

        .nav-link-hover:hover {
            color: #4299e1; /* Blue color on hover */
        }

        .nav-link-hover::after {
            content: '';
            position: absolute;
            width: 0;
            height: 2px;
            bottom: 0;
            left: 50%;
            transform: translateX(-50%);
            background-color: #4299e1;
            transition: width 0.3s ease-in-out;
        }

        .nav-link-hover:hover::after {
            width: 100%;
        }

        /* Call to Action Button */
        .nav-cta-button {
            background: linear-gradient(to right, #4299e1, #667eea);
            color: #fff;
            padding: 0.75rem 1.5rem;
            border-radius: 9999px; /* Rounded pill shape */
            font-weight: 600;
            display: inline-flex;
            align-items: center;
            transition: all 0.3s ease;
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
        }

        .nav-cta-button:hover {
            transform: translateY(-2px);
            box-shadow: 0 6px 15px rgba(0, 0, 0, 0.3);
            opacity: 0.9;
        }

        /* Mobile Menu Button */
        .mobile-menu-btn {
            color: #e2e8f0;
            padding: 0.5rem;
            border-radius: 0.5rem;
            transition: all 0.3s ease;
        }

        .mobile-menu-btn:hover {
            background-color: rgba(255, 255, 255, 0.1);
            transform: scale(1.1);
        }

        /* Mobile Nav Links */
        .mobile-nav-link {
            color: #e2e8f0;
            transition: color 0.3s ease, transform 0.3s ease;
            transform: scale(1);
        }

        .mobile-nav-link:hover {
            color: #4299e1;
            transform: scale(1.1);
        }

        .mobile-nav-link-cta {
            background: linear-gradient(to right, #4299e1, #667eea);
            color: #fff;
            padding: 1rem 2rem;
            border-radius: 9999px;
            font-weight: 600;
            transition: all 0.3s ease;
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
            display: block; /* Make it a block element for full width on mobile */
            text-align: center;
        }

        .mobile-nav-link-cta:hover {
            transform: translateY(-2px);
            box-shadow: 0 6px 15px rgba(0, 0, 0, 0.3);
            opacity: 0.9;
        }

        
        
        /* Custom animation for elements fading in and sliding up */
        @keyframes fadeInUp {
            from {
                opacity: 0;
                transform: translateY(20px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        /* Hero banner specific styling for gradient and overlay */
        .hero-banner {
            background: linear-gradient(to right, #0a0a0a, #1a1a1a); /* Deeper dark gradient */
            position: relative;
            overflow: hidden;
        }

        .hero-banner::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: radial-gradient(circle at top left, rgba(66, 153, 225, 0.1), transparent 50%),
                                 radial-gradient(circle at bottom right, rgba(159, 122, 234, 0.1), transparent 50%);
            z-index: 0;
        }

        /* Testimonial slider specific styling */
        .testimonial-slider {
            position: relative;
            overflow: hidden; /* This is the visible viewport for the slider */
        }

        .testimonial-container {
            display: flex;
            transition: transform 0.5s ease-in-out;
            gap: 2rem; /* Tailwind gap-8 */
        }



        /* Custom button styles for hover effects */
        .btn-primary {
            background-color: #3f3f46; /* Muted gray for primary button */
            color: #e2e8f0; /* Light text */
            transition: all 0.3s ease;
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
            border: 1px solid #52525b; /* Subtle border */
        }

        .btn-primary:hover {
            background-color: #52525b; /* Slightly lighter gray on hover */
            transform: translateY(-2px);
            box-shadow: 0 6px 15px rgba(0, 0, 0, 0.3);
        }

        .btn-secondary {
            background-color: transparent; /* Transparent background */
            border: 1px solid #52525b; /* Subtle border */
            color: #a0aec0; /* Muted text color */
            transition: all 0.3s ease;
        }

        .btn-secondary:hover {
            background-color: #262626; /* Darker gray on hover */
            color: #e2e8f0; /* Light text on hover */
            transform: translateY(-2px);
        }

        /* Scroll-based animation for sections */
        .section-animate {
            opacity: 0;
            transform: translateY(50px);
            transition: opacity 0.8s ease-out, transform 0.8s ease-out;
        }

        .section-animate.is-visible {
            opacity: 1;
            transform: translateY(0);
        }

        /* Simple pulsating effect for AI focus */
        .pulsate {
            animation: pulsate 1.5s infinite alternate;
        }

        @keyframes pulsate {
            from {
                transform: scale(1);
                opacity: 1;
            }
            to {
                transform: scale(1.05);
                opacity: 0.9;
            }
        }

        /* Keyframe for floating effect */
        @keyframes float {
            0% { transform: translateY(0px); }
            50% { transform: translateY(-10px); }
            100% { transform: translateY(0px); }
        }

        .floating-element {
            animation: float 3s ease-in-out infinite;
        }

        /* AI section specific styling */
        .ai-section-gradient {
            background: linear-gradient(to right, #0F0F2D, #2A0F2D); /* Deeper, more saturated blue-purple gradient */
            position: relative;
            overflow: hidden;
        }

        .ai-section-gradient::before {
            content: '';
            position: absolute;
            top: -50%;
            left: -50%;
            width: 200%;
            height: 200%;
            background: radial-gradient(circle at 70% 30%, rgba(0, 255, 255, 0.15), transparent 50%), /* Cyan glow */
                                 radial-gradient(circle at 30% 70%, rgba(200, 0, 255, 0.15), transparent 50%); /* Magenta glow */
            z-index: 0;
            animation: rotateBackground 20s linear infinite;
        }

        @keyframes rotateBackground {
            from { transform: rotate(0deg); }
            to { transform: rotate(360deg); }
        }

        /* AI capability card styling */
        .ai-capability-card {
            background-color: rgba(10, 10, 10, 0.9); /* Very dark, slightly transparent */
            backdrop-filter: blur(8px); /* Slightly more blur for sleekness */
            border: none; /* Removed border */
            transition: all 0.3s ease;
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.4); /* Slightly more pronounced initial shadow */
        }

        .ai-capability-card:hover {
            transform: translateY(-8px) scale(1.03); /* More pronounced lift and scale */
            box-shadow: 0 12px 30px rgba(0, 0, 0, 0.7), 0 0 20px rgba(0, 255, 255, 0.5); /* Stronger shadow, and a cyan glow effect */
        }

        /* remove old service slider/card styles (replaced by services-carousel) */

        .service-read-more-btn {
            background: linear-gradient(to right, #4299e1, #667eea); /* Blue to purple gradient */
            color: #fff;
            padding: 0.6rem 1.5rem;
            border-radius: 0.5rem;
            font-weight: 500;
            display: inline-flex;
            align-items: center;
            transition: all 0.3s ease;
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
        }

        .service-read-more-btn:hover {
            transform: translateY(-2px);
            box-shadow: 0 6px 15px rgba(0, 0, 0, 0.3);
            opacity: 0.9;
        }

        .service-read-more-btn i {
            margin-left: 0.5rem;
        }

        /* Slider Navigation Buttons for Services */
        .service-slider-nav-button {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            background-color: rgba(255, 255, 255, 0.1); /* Subtle background */
            border: 1px solid rgba(255, 255, 255, 0.2);
            color: #e2e8f0;
            padding: 0.75rem;
            border-radius: 50%;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
            transition: all 0.3s ease;
            z-index: 20; /* Above cards */
        }

        .service-slider-nav-button:hover {
            background-color: rgba(66, 153, 225, 0.2); /* Subtle blue tint on hover */
            border-color: rgba(66, 153, 225, 0.5);
            transform: translateY(-50%) scale(1.05);
        }

        .service-slider-nav-button.left {
            left: 0;
            margin-left: -4rem; /* Pushed out by 4rem */
        }

        .service-slider-nav-button.right {
            right: 0;
            margin-right: -4rem; /* Pushed out by 4rem */
        }


        /* Scroll Down Arrow Styling */
        .scroll-down-arrow {
            position: absolute;
            bottom: 2rem; /* Adjust as needed */
            left: 50%;
            transform: translateX(-50%);
            cursor: pointer;
            z-index: 10; /* Ensure it's above other elements */
            display: flex;
            justify-content: center;
            align-items: center;
            width: 60px; /* Size of the circle */
            height: 60px; /* Size of the circle */
            border-radius: 50%;
            background-color: rgba(255, 255, 255, 0.08); /* Subtle dark background for the circle */
            border: 1px solid rgba(255, 255, 255, 0.15); /* Thin, light border for the circle */
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
            transition: all 0.3s ease;
        }

        .scroll-down-arrow:hover {
            background-color: rgba(66, 153, 225, 0.15); /* Slight blue tint on hover */
            border-color: rgba(66, 153, 225, 0.5);
            transform: translateX(-50%) translateY(-5px); /* Lift slightly on hover */
        }

        .scroll-down-arrow i {
            color: #4299e1; /* Blue color for the arrow icon */
            font-size: 1.8rem; /* Size of the arrow icon */
            animation: bounce 2s infinite; /* Bouncing animation */
        }

        @keyframes bounce {
            0%, 20%, 50%, 80%, 100% {
                transform: translateY(0);
            }
            40% {
                transform: translateY(-10px);
            }
            60% {
                transform: translateY(-5px);
            }
        }

        /* AI capability card icon styling for a more "robot" look */
        .ai-capability-card .icon-wrapper-ai {
            font-size: 4rem; /* Larger icons */
            margin-bottom: 1rem;
            display: inline-block; /* To apply transform */
        }

        /* Specific icon colors for thematic glow */
        .ai-capability-card .icon-wrapper-ai.brain { color: #00FFFF; text-shadow: 0 0 10px #00FFFF, 0 0 20px #00BFFF; }
        .ai-capability-card .icon-wrapper-ai.comments { color: #39FF14; text-shadow: 0 0 10px #39FF14, 0 0 20px rgba(57, 255, 20, 0.6); }
        .ai-capability-card .icon-wrapper-ai.eye { color: #FF00FF; text-shadow: 0 0 10px #FF00FF, 0 0 20px rgba(255, 0, 255, 0.6); }
        .ai-capability-card .icon-wrapper-ai.tags { color: #FFD700; text-shadow: 0 0 10px #FFD700, 0 0 20px rgba(255, 215, 0, 0.6); } /* Gold */
        .ai-capability-card .icon-wrapper-ai.paintbrush { color: #87CEEB; text-shadow: 0 0 10px #87CEEB, 0 0 20px rgba(135, 206, 235, 0.6); } /* Sky Blue */
        .ai-capability-card .icon-wrapper-ai.code-feather { color: #9370DB; text-shadow: 0 0 10px #9370DB, 0 0 20px rgba(147, 112, 219, 0.6); } /* Medium Purple */

        /* About Us Section - New Section Styling Refinement */
        #about {
            background-color: #0a0a0a; /* Dark background for the about section */
            color: #e2e8f0; /* Light text for dark background */
        }

        #about .container {
            max-width: 1200px; /* Wider container for better layout */
        }

        /* Adjusting column widths for the 2-column layout */
        @media (min-width: 1024px) { /* lg breakpoint */
            #about .about-main-content {
                display: flex;
                align-items: center;
                gap: 3rem; /* Space between image and text */
            }
            #about .about-image-column {
                flex: 1.5; /* Image column takes more space */
                max-width: 50%; /* Ensure it doesn't get too wide */
            }
            #about .about-text-column {
                flex: 1; /* Text column takes less space */
                max-width: 50%; /* Ensure it doesn't get too wide */
                text-align: left; /* Align text to left */
            }
        }


        #about h2 {
            font-size: 2.5rem; /* Smaller heading for right column */
            font-weight: 800; /* Extra bold */
            margin-bottom: 0.75rem; /* Reduced margin */
            color: #ffffff; /* White heading for dark background */
        }

        #about h2 span {
            color: #4299e1; /* Blue for the company name part */
        }

        #about .about-subtitle {
            font-size: 1.25rem; /* Smaller subheading */
            font-weight: 600;
            color: #a0aec0; /* Muted light color for subheading */
            margin-bottom: 1rem; /* Reduced margin */
        }

        #about p.text-lg {
            font-size: 0.95rem; /* Smaller body text */
            line-height: 1.6; /* Reduced line height for compactness */
            color: #c0c0c0; /* Softer light gray for body text */
            max-width: 100%; /* Allow full width within column */
            margin-left: 0;
            margin-right: 0;
        }

        #about .stats-container {
            display: flex;
            flex-direction: column; /* Default to column for small screens */
            gap: 1.5rem; /* Slightly reduced space between stats */
            align-items: center; /* Center align for small screens */
            margin-top: 4rem; /* Spacing below the main content */
        }
        @media (min-width: 640px) { /* sm breakpoint */
            #about .stats-container {
                flex-direction: row; /* Row for medium screens */
                justify-content: space-around; /* Distribute evenly */
            }
        }
        @media (min-width: 1024px) { /* lg breakpoint */
            #about .stats-container {
                justify-content: center; /* Center stats for large screens */
                gap: 4rem; /* More space between stats on large screens */
            }
        }


        #about .stat-item {
            background-color: transparent; /* No background for stats */
            border: none; /* No border */
            padding: 0; /* No padding */
            text-align: center; /* Center align text for stats */
            transition: all 0.3s ease;
        }

        #about .stat-item:hover {
            transform: translateY(-5px); /* Slight lift on hover */
        }

        #about .stat-item .stat-number {
            font-size: 2.5rem; /* Medium numbers */
            font-weight: 800; /* Extra bold numbers */
            margin-bottom: 0.25rem; /* Smaller margin below number */
            color: #ffffff; /* White number color */
        }

        #about .stat-item .stat-label {
            font-size: 1rem; /* Clearer labels */
            color: #a0aec0; /* Muted light label color */
        }

        #about .about-image-wrapper {
            position: relative;
            width: 100%; /* Ensure image wrapper takes full width */
            max-width: 600px; /* Increased max width for the image */
            margin: 0 auto; /* Center image on smaller screens */
        }

        #about .about-image {
            border-radius: 1rem; /* More rounded corners for the image */
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.6); /* Stronger shadow for dark background */
            opacity: 1; /* No transparency */
            width: 100%; /* Make image responsive */
            height: auto;
            display: block;
        }

        #about .circular-about-us {
            position: absolute;
            top: 0%; /* Adjust position relative to image */
            left: 0%; /* Adjust position relative to image */
            transform: translate(-50%, -50%); /* Center the circle on its top-left corner */
            width: 120px; /* Size of the circle */
            height: 120px; /* Size of the circle */
            border-radius: 50%;
            background-color: #1a1a1a; /* Dark background for the circle */
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: 0.9rem;
            font-weight: 700;
            color: #4299e1; /* Blue text */
            text-transform: uppercase;
            letter-spacing: 1px;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
            animation: rotateText 10s linear infinite; /* Rotation animation */
        }

        @keyframes rotateText {
            from { transform: translate(-50%, -50%) rotate(0deg); }
            to { transform: translate(-50%, -50%) rotate(360deg); }
        }

        /* Adjust text within the rotating circle */
        #about .circular-about-us span {
            display: block;
            transform-origin: center;
        }

        /* Read More Button styling */
        .read-more-btn {
            background-color: #4299e1; /* Blue background */
            color: #fff; /* White text */
            padding: 0.8rem 2rem;
            border-radius: 0.5rem;
            font-weight: 600;
            display: inline-flex;
            align-items: center;
            transition: background-color 0.3s ease, transform 0.3s ease;
            margin-top: 1rem; /* Added margin for spacing */
        }

        .read-more-btn:hover {
            background-color: #3182ce; /* Darker blue on hover */
            transform: translateY(-2px);
        }

        .read-more-btn i {
            margin-left: 0.5rem;
            transition: margin-left 0.3s ease;
        }

        .read-more-btn:hover i {
            margin-left: 0.8rem;
        }

        /* Responsive adjustments for About Us section */
        @media (min-width: 1024px) { /* lg breakpoint */
            #about .flex-col-reverse-lg {
                flex-direction: row-reverse; /* Image on the left, text on the right for large screens */
            }
            #about .lg\:w-1\/2 {
                width: 50%;
            }
            #about .lg\:text-left {
                text-align: left;
            }
            #about .lg\:mb-0 {
                margin-bottom: 0;
            }
        }

        /* Recent Projects Section Styling */
        #projects {
            background-color: #0a0a0a;
            color: #e2e8f0;
        }

        .project-slider {
            position: relative;
            overflow: hidden;
            width: 100vw; /* Full viewport width */
            margin-left: calc(50% - 50vw);
            margin-right: calc(50% - 50vw);
        }

        /* === New Projects Section === */
        .projects-shell { position: relative; }
        .projects-strip { display: flex; gap: 28px; transition: transform 500ms cubic-bezier(.22,.61,.36,1); will-change: transform; padding: 0 4vw; min-width: 100%; }
        .project-slider { height: auto; }
        .prj-card { flex: 0 0 calc(50% - 14px); position: relative; border-radius: 18px; overflow: hidden; background: linear-gradient(180deg, rgba(18,18,20,.9), rgba(10,10,12,.85)); border: 1px solid rgba(255,255,255,.06); box-shadow: 0 16px 42px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.05); display: grid; grid-template-columns: 220px 1fr; min-height: 260px; }
        .prj-media { position: relative; background: #0b0f14; }
        .prj-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(160deg, rgba(0,0,0,.05) 0%, rgba(0,0,0,.38) 100%); pointer-events: none; }
        .prj-name { position: absolute; left: 12px; bottom: 10px; color: #e9d5ff; font-weight: 800; letter-spacing: .3px; font-size: 1.15rem; text-shadow: 0 2px 10px rgba(0,0,0,.6); }
        .prj-media .badge { position: absolute; top: 12px; left: 12px; font-size: .75rem; color: #0b1220; background: #93c5fd; border-radius: 9999px; padding: 4px 10px; font-weight: 700; }
        .prj-shot { width: 100%; height: 100%; object-fit: cover; background: #1a1a1a; }
        .prj-body { padding: 18px 18px 16px 18px; display: flex; flex-direction: column; gap: 10px; text-align: left; }
        .prj-title { color: #fff; font-weight: 800; font-size: 1.15rem; letter-spacing: .2px; }
        .prj-desc { color: #a0aec0; font-size: .95rem; line-height: 1.55; }
        .prj-meta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 2px; }
        .prj-tag { font-size: .75rem; padding: 4px 10px; border-radius: 9999px; border: 1px solid rgba(255,255,255,.08); color: #cbd5e1; background: rgba(15,23,42,.35); }
        .prj-cta { margin-top: auto; display: inline-flex; align-items: center; gap: 8px; color: #93c5fd; font-weight: 700; }
        .prj-cta i { font-size: .9rem; }
        .prj-nav { position: absolute; top: 50%; transform: translateY(-50%); width: 46px; height: 46px; border-radius: 50%; border: 1px solid rgba(255,255,255,.12); background: rgba(17,17,17,.6); color: #e2e8f0; display: inline-flex; align-items: center; justify-content: center; box-shadow: 0 10px 24px rgba(0,0,0,.4); transition: transform .2s ease, background .2s ease, border-color .2s ease; z-index: 10; }
        .prj-nav:hover { transform: translateY(-50%) scale(1.05); background: rgba(168,85,247,.22); border-color: rgba(168,85,247,.4); }
        .prj-nav.left { left: 1rem; }
        .prj-nav.right { right: 1rem; }
        .prj-dots { position: absolute; left: 50%; transform: translateX(-50%); bottom: 12px; display: flex; gap: 8px; }
        .prj-dots button { width: 8px; height: 8px; border-radius: 9999px; background: rgba(255,255,255,.25); border: none; transition: transform .2s ease, background .2s ease; }
        .prj-dots button.active { background: #a78bfa; transform: scale(1.25); }
        @media (max-width: 1023px) { .prj-card { flex: 0 0 100%; grid-template-columns: 1fr; } .prj-media { height: 180px; } }

        .project-card {
            flex-shrink: 0;
            width: 450px; /* Fixed width for project cards - allows 2 columns */
            background: linear-gradient(145deg, #1a1a1a, #2a2a2a);
            border-radius: 0.75rem;
            padding: 1.5rem; /* Reduced padding for a tighter look */
            text-align: left;
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
            transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
            border: 1px solid rgba(255, 255, 255, 0.1);
            display: flex;
            flex-direction: column; /* Stack image and content vertically on small screens */
            align-items: center; /* Center items on small screens */
            min-height: 350px; /* Minimum height for cards */
        }

        @media (min-width: 768px) { /* md breakpoint */
            .project-card {
                flex-direction: row; /* Horizontal layout on larger screens */
                align-items: flex-start; /* Align to top */
                min-height: 250px; /* Reduced min-height for horizontal layout */
            }
        }

        .project-card:hover {
            transform: translateY(-8px) scale(1.02);
            box-shadow: 0 12px 30px rgba(0, 0, 0, 0.7), 0 0 20px rgba(159, 122, 234, 0.3); /* Purple glow on hover */
            border-color: rgba(159, 122, 234, 0.6); /* Purple border hint */
        }

        .project-card .project-image-area {
            flex-shrink: 0;
            width: 100%; /* Full width on small screens */
            height: 150px !important; /* Fixed height for image area */
            border-radius: 0.5rem;
            overflow: hidden;
            margin-bottom: 1rem; /* Space below image on small screens */
            background-color: #000; /* Placeholder background if image fails */
            display: flex;
            justify-content: center;
            align-items: center;
        }

        @media (min-width: 768px) { /* md breakpoint */
            .project-card .project-image-area {
                width: 200px; /* Fixed width for image on larger screens */
                height: 100%; /* Take full height of card */
                margin-bottom: 0;
                margin-right: 1.5rem; /* Space right of image */
            }
        }

        .project-card .project-image-area img {
            width: 100%;
            height: 100%;
            object-fit: cover; /* Cover the area, cropping if necessary */
            border-radius: 0.5rem; /* Match parent border-radius */
        }

        .project-card .project-content-area {
            flex-grow: 1;
            text-align: center; /* Center text on small screens */
        }

        @media (min-width: 768px) { /* md breakpoint */
            .project-card .project-content-area {
                text-align: left; /* Align text to left on larger screens */
            }
        }

        .project-card h3 {
            font-size: 1.6rem; /* Slightly larger title */
            font-weight: 700;
            margin-bottom: 0.5rem;
            color: #ffffff;
        }

        .project-card p {
            font-size: 0.9rem; /* Slightly smaller description text */
            color: #a0aec0;
            line-height: 1.5;
            margin-bottom: 1.5rem; /* More space before buttons */
        }

        .project-buttons {
            display: flex;
            flex-direction: column; /* Stack buttons on small screens */
            gap: 0.75rem; /* Space between buttons */
            justify-content: center; /* Center buttons on small screens */
            align-items: center; /* Center buttons on small screens */
        }

        @media (min-width: 768px) { /* md breakpoint */
            .project-buttons {
                flex-direction: row; /* Row of buttons on larger screens */
                justify-content: flex-start; /* Align buttons to start */
            }
        }

        .project-btn {
            background: linear-gradient(to right, #667eea, #9f7aea); /* Purple gradient */
            color: #fff;
            padding: 0.7rem 1.8rem; /* Slightly more padding */
            border-radius: 0.5rem;
            font-weight: 600;
            display: inline-flex;
            align-items: center;
            transition: all 0.3s ease;
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
        }

        .project-btn:hover {
            transform: translateY(-2px);
            box-shadow: 0 6px 15px rgba(0, 0, 0, 0.3);
            opacity: 0.9;
        }

        .project-btn i {
            margin-left: 0.5rem;
        }

        .project-btn.preview {
            background: transparent;
            border: 1px solid #9f7aea; /* Purple border */
            color: #9f7aea; /* Purple text */
        }

        .project-btn.preview:hover {
            background-color: rgba(159, 122, 234, 0.1); /* Light purple background on hover */
            color: #ffffff; /* White text on hover */
        }

        /* Project Slider Navigation Buttons */
        .project-slider-nav-button {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            background-color: rgba(255, 255, 255, 0.1);
            border: 1px solid rgba(255, 255, 255, 0.2);
            color: #e2e8f0;
            padding: 0.75rem;
            border-radius: 50%;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
            transition: all 0.3s ease;
            z-index: 20;
        }

        .project-slider-nav-button:hover {
            background-color: rgba(159, 122, 234, 0.2); /* Purple tint on hover */
            border-color: rgba(159, 122, 234, 0.5);
            transform: translateY(-50%) scale(1.05);
        }

        .project-slider-nav-button.left {
            left: 0;
            margin-left: -4rem; /* Adjust to be outside the main content area */
        }

        .project-slider-nav-button.right {
            right: 0;
            margin-right: -4rem; /* Adjust to be outside the main content area */
        }
        
        /* Adjust button positioning for smaller screens */
        @media (max-width: 767px) {
            .project-slider-nav-button.left {
                margin-left: 0.5rem; /* Keep buttons closer to slider on small screens */
            }
            .project-slider-nav-button.right {
                margin-right: 0.5rem; /* Keep buttons closer to slider on small screens */
            }

        }

        .loader {
            border: 4px solid #2d3748;
            border-top: 4px solid #38b2ac;
            border-radius: 50%;
            width: 32px;
            height: 32px;
            animation: spin 1s linear infinite;
            margin: 0 auto;
        }
        @keyframes spin {
            0% { transform: rotate(0deg);}
            100% { transform: rotate(360deg);}
        }

        /* Contact Form specific styling */
        .contact-input {
            transition: all 0.3s ease;
        }

        .contact-input:focus {
            border-color: #4299e1; /* Blue border on focus */
            box-shadow: 0 0 0 3px rgba(66, 153, 225, 0.5); /* Blue glow on focus */
            outline: none; /* Remove default outline */
        }

        #form-message{
            font-size : 14px;
        }

            .testimonial-para {
            font-size: 1.05rem;
        }
        .review-writer {
            font-size: 1.0rem;
            width: 60%;

        }
        .project-image-area{
            background:#2b3031 ! IMPORTANT
        }
        .project-card .project-image-area{
            font-size: 25px;
        }
        .project-slider-container {padding-top:50px;}
        @media (max-width: 768px) {
    .testimonial-rev-con {
        display: block;
    }
    .review-writer {
        font-size: 1.0rem;
        width: 100%;
    }
    #about h2{
        font-size: 1.8rem;
    }
    .project-slider-container , .service-slider-container{
        padding: 0 !important;
    }
    .new-service-card-v2 {
    display: block;
}
.new-service-card-v2 h3{
        margin-top: 20px;
}
.hero-banner{
    min-height: auto !important;
}
div#mobile-menu {
    height: 60vh;
}
button#prev-service , button#next-service , button#prev-project , button#next-project{
    padding:4px 10px;
    margin:2px;
}
}

        /* New Testimonials Carousel Styles */
        .testimonials-carousel { width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); position: relative; overflow: hidden; }
        .testimonials-track { display: flex; transition: transform 500ms cubic-bezier(.22,.61,.36,1); will-change: transform; }
        .testimonials-slide { flex: 0 0 100%; padding: 0 4vw; box-sizing: border-box; }
        .testimonials-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 24px; }
        .testimonial-card-new { position: relative; display: flex; flex-direction: column; gap: 16px; padding: 24px; border-radius: 20px; text-align: left; background: linear-gradient(180deg, rgba(20,20,24,.9), rgba(10,10,12,.85)); border: 1px solid rgba(255,255,255,.08); box-shadow: 0 16px 42px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.05); transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; min-height: 280px; }
        .testimonial-card-new:hover { transform: translateY(-8px); box-shadow: 0 24px 56px rgba(0,0,0,.6), 0 0 0 1px rgba(34,197,94,.2) inset; border-color: rgba(34,197,94,.3); }
        .testimonial-header { display: flex; align-items: center; gap: 16px; }
        .testimonial-avatar { width: 56px; height: 56px; display: inline-flex; align-items: center; justify-content: center; border-radius: 16px; border: 1px solid rgba(255,255,255,.1); background: radial-gradient(120% 120% at 20% 20%, rgba(34,197,94,.25), rgba(16,185,129,.08) 60%, rgba(255,255,255,.05)); box-shadow: 0 12px 28px rgba(34,197,94,.15); color: #22c55e; font-size: 1.5rem; }
        .testimonial-meta { flex: 1; }
        .testimonial-name { color: #fff; font-weight: 700; font-size: 1.1rem; letter-spacing: .2px; margin-bottom: 2px; }
        .testimonial-company { color: #94a3b8; font-size: .9rem; margin-bottom: 8px; }
        .testimonial-rating { display: flex; gap: 2px; }
        .testimonial-rating i { color: #fbbf24; font-size: .85rem; }
        .testimonial-content { position: relative; flex: 1; }
        .testimonial-quote { position: absolute; top: -8px; left: -8px; color: rgba(34,197,94,.3); font-size: 2rem; }
        .testimonial-content p { color: #cbd5e1; font-size: .95rem; line-height: 1.6; padding-left: 24px; }
        .testimonial-nav { position: absolute; top: 50%; transform: translateY(-50%); width: 48px; height: 48px; border-radius: 50%; border: 1px solid rgba(255,255,255,.12); background: rgba(17,17,17,.6); color: #e2e8f0; display: inline-flex; align-items: center; justify-content: center; box-shadow: 0 12px 28px rgba(0,0,0,.4); transition: transform .2s ease, background .2s ease, border-color .2s ease; z-index: 10; }
        .testimonial-nav:hover { transform: translateY(-50%) scale(1.05); background: rgba(34,197,94,.22); border-color: rgba(34,197,94,.4); }
        .testimonial-nav.left { left: 1rem; }
        .testimonial-nav.right { right: 1rem; }
        .testimonial-dots { position: absolute; left: 50%; transform: translateX(-50%); bottom: 12px; display: flex; gap: 8px; }
        .testimonial-dots button { width: 8px; height: 8px; border-radius: 9999px; background: rgba(255,255,255,.25); border: none; transition: transform .2s ease, background .2s ease; }
        .testimonial-dots button.active { background: #22c55e; transform: scale(1.25); }
        @media (max-width: 1023px) { .testimonials-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } }
        @media (max-width: 767px) { .testimonials-slide { padding: 0 20px; } .testimonials-grid { grid-template-columns: 1fr; } }

/* Inner Service Pages - Modern Sleek Design */

/* Hero Section Enhancement */
.hero-banner {
    background: linear-gradient(135deg, #0f0f23 0%, #1a1a2e 50%, #16213e 100%);
    position: relative;
    overflow: hidden;
}

.hero-banner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: radial-gradient(circle at 20% 80%, rgba(120, 119, 198, 0.3) 0%, transparent 50%),
                radial-gradient(circle at 80% 20%, rgba(255, 119, 198, 0.3) 0%, transparent 50%),
                radial-gradient(circle at 40% 40%, rgba(120, 219, 255, 0.2) 0%, transparent 50%);
    pointer-events: none;
}

/* Enhanced Service Cards for Inner Pages */
.inner-service-card {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.05) 100%);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 20px;
    padding: 2.5rem;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
    min-height: 320px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.inner-service-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(120, 119, 198, 0.1) 0%, rgba(255, 119, 198, 0.1) 100%);
    opacity: 0;
    transition: opacity 0.4s ease;
    border-radius: 20px;
}

.inner-service-card:hover {
    transform: translateY(-8px) scale(1.02);
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.3);
    border-color: rgba(255, 255, 255, 0.2);
}

.inner-service-card:hover::before {
    opacity: 1;
}

.inner-service-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    position: relative;
    overflow: hidden;
}

.inner-service-icon::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.2) 0%, transparent 100%);
    border-radius: 20px;
}

.inner-service-icon i {
    font-size: 2rem;
    color: white;
    z-index: 1;
    position: relative;
}

.inner-service-title {
    font-size: 1.5rem;
    font-weight: 700;
    color: white;
    margin-bottom: 1rem;
    line-height: 1.3;
}

.inner-service-desc {
    color: rgba(255, 255, 255, 0.8);
    line-height: 1.6;
    font-size: 1rem;
    flex-grow: 1;
}

/* Benefits Section Enhancement */
.benefits-section {
    background: linear-gradient(135deg, #0a0a0a 0%, #1a1a1a 100%);
    position: relative;
    overflow: hidden;
}

.benefits-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: radial-gradient(circle at 30% 70%, rgba(120, 119, 198, 0.1) 0%, transparent 50%),
                radial-gradient(circle at 70% 30%, rgba(255, 119, 198, 0.1) 0%, transparent 50%);
    pointer-events: none;
}

.benefit-card {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.03) 100%);
    backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 16px;
    padding: 2rem;
    text-align: center;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.benefit-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(120, 119, 198, 0.1) 0%, rgba(255, 119, 198, 0.1) 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
    border-radius: 16px;
}

.benefit-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
    border-color: rgba(255, 255, 255, 0.2);
}

.benefit-card:hover::before {
    opacity: 1;
}

.benefit-icon {
    width: 70px;
    height: 70px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    position: relative;
    overflow: hidden;
}

.benefit-icon::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.2) 0%, transparent 100%);
    border-radius: 16px;
}

.benefit-icon i {
    font-size: 1.75rem;
    color: white;
    z-index: 1;
    position: relative;
}

.benefit-title {
    font-size: 1.25rem;
    font-weight: 600;
    color: white;
    margin-bottom: 0.75rem;
}

.benefit-desc {
    color: rgba(255, 255, 255, 0.7);
    line-height: 1.5;
    font-size: 0.95rem;
}

/* Process Section Enhancement */
.process-card {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.03) 100%);
    backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 16px;
    padding: 2rem;
    text-align: center;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.process-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(120, 119, 198, 0.1) 0%, rgba(255, 119, 198, 0.1) 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
    border-radius: 16px;
}

.process-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
    border-color: rgba(255, 255, 255, 0.2);
}

.process-card:hover::before {
    opacity: 1;
}

.process-number {
    width: 70px;
    height: 70px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    position: relative;
    overflow: hidden;
    font-weight: 700;
    font-size: 1.5rem;
    color: white;
}

.process-number::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.2) 0%, transparent 100%);
    border-radius: 16px;
}

.process-title {
    font-size: 1.25rem;
    font-weight: 600;
    color: white;
    margin-bottom: 0.75rem;
}

.process-desc {
    color: rgba(255, 255, 255, 0.7);
    line-height: 1.5;
    font-size: 0.95rem;
}

/* Contact Form Enhancement */
.contact-form-container {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.03) 100%);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 24px;
    padding: 3rem;
    position: relative;
    overflow: hidden;
}

.contact-form-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(120, 119, 198, 0.1) 0%, rgba(255, 119, 198, 0.1) 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
    border-radius: 24px;
}

.contact-form-container:hover::before {
    opacity: 1;
}

.enhanced-contact-input {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.05) 100%);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 12px;
    padding: 1rem 1.25rem;
    color: white;
    font-size: 1rem;
    transition: all 0.3s ease;
    width: 100%;
}

.enhanced-contact-input:focus {
    outline: none;
    border-color: rgba(120, 119, 198, 0.5);
    box-shadow: 0 0 0 3px rgba(120, 119, 198, 0.1);
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.15) 0%, rgba(255, 255, 255, 0.08) 100%);
}

.enhanced-contact-input::placeholder {
    color: rgba(255, 255, 255, 0.5);
}

.enhanced-btn-primary {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border: none;
    border-radius: 12px;
    padding: 1rem 2rem;
    color: white;
    font-weight: 600;
    font-size: 1rem;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    cursor: pointer;
}

.enhanced-btn-primary::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.5s ease;
}

.enhanced-btn-primary:hover::before {
    left: 100%;
}

.enhanced-btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 25px rgba(102, 126, 234, 0.3);
}

/* Responsive Design */
@media (max-width: 768px) {
    .inner-service-card {
        padding: 2rem;
        min-height: 280px;
    }
    
    .inner-service-icon {
        width: 60px;
        height: 60px;
    }
    
    .inner-service-icon i {
        font-size: 1.5rem;
    }
    
    .benefit-card,
    .process-card {
        padding: 1.5rem;
    }
    
    .contact-form-container {
        padding: 2rem;
    }
}

/* Animation Enhancements */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate-fade-up {
    animation: fadeInUp 0.8s ease-out forwards;
}

/* Section Animations */
.section-animate {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.8s ease;
}

.section-animate.is-visible {
    opacity: 1;
    transform: translateY(0);
}