
        @keyframes blink {

            0%,
            100% {
                opacity: 1;
            }

            50% {
                opacity: 0;
            }
        }

        .animate-blink {
            animation: blink 1s ease-in-out infinite;
        }

        .scrollbar-hide::-webkit-scrollbar {
            display: none;
        }

        .btn {
            position: relative;
            overflow: hidden;
            transition: color 0.3s ease-out;
            background: #557CFA;
            color: white;
            border: 2px solid black;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .btn::after {
            content: "";
            position: absolute;
            top: var(--y);
            left: var(--x);
            width: 200%;
            height: 200%;
            background: white;
            transition: transform 0.4s ease-out, opacity 0.4s ease-out;
            border-radius: 50%;
            transform: translate(-50%, -50%) scale(0);
            opacity: 0;
            z-index: 0;
        }

        .btn:hover::after {
            transform: translate(-50%, -50%) scale(1);
            opacity: 1;
        }


        .btn span {
            position: relative;
            z-index: 10;
            transition: color 0.3s ease-out;
        }

        .btn:hover span {
            color: black;
        }

        .content-section {
            position: relative;
            z-index: 2;
            background: white;
        }

        .stat-counter {
            font-size: 3rem;
            font-weight: bold;
        }


        @keyframes appear {
            from {
                opacity: 0;
                transform: translateX(-100px);
            }

            to {
                opacity: 1;
                transform: translateX(0);
            }
        }

        @keyframes appear1 {
            from {
                opacity: 0;
                transform: translateX(100px);
            }

            to {
                opacity: 1;
                transform: translateX(0);
            }
        }

        #Box {
            animation: appear 1.5s ease-out forwards;
            animation-range: entry 0%;
            animation-timeline: view();
        }

        #Box1 {
            animation: appear1 1.5s ease-out forwards;
            animation-range: entry 0%;
            animation-timeline: view();
        }

        @keyframes appear2 {
            from {
                opacity: 1;
                transform: translateY(20px);
            }

            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .animate-once {
            animation: appear2 1.5s ease-out forwards;
        }
        
        

        .slide-in-left {
            animation: slideInLeft 1s ease-out;
        }
        
        @keyframes slideInLeft {
            from {
                opacity: 0;
                transform: translateX(-50px);
            }
        
            to {
                opacity: 1;
                transform: translateX(0);
            }
        }

        .fade-in-up {
            opacity: 0;
            animation: fadeInUp 1s ease-out forwards;
            animation-delay: 0.6s; /* Animate after text */
            
        }
        
        @keyframes fadeInUp {
            from {
                opacity: 0;
                transform: translateY(30px);
            }
        
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
        .scrollbar-hide {
            -ms-overflow-style: none;
            scrollbar-width: none;
        }

        @keyframes bounce-smooth {
            0%, 100% {
                transform: translateY(0);
            }
            50% {
                transform: translateY(-0.5rem);
            }
        }
        
        .animate-bounce-smooth {
            animation: bounce-smooth 2s ease-in-out infinite;
        }
        .transulate-btn {
            transition: transform 0.3s ease-in-out;
        }

        #show-btn:hover+.transulate-btn {
            transform: translateX(2px) rotate(45deg);
        }

        .wave-top {
            position: absolute;
            top: -1px;
            left: 0;
            width: 100%;
            overflow: hidden;
            line-height: 0;
        }

        .wave-top svg {
            position: relative;
            display: block;
            width: calc(100% + 1.3px);
            height: 80px;
        }

        .wave-top .shape-fill {transulate-btn
            fill: #F9FAFB;
        }

        .cycle-animation {
            animation: rotate 8s linear infinite;
        }

        @keyframes rotate {
            from {
                transform: rotate(0deg);
            }

            to {
                transform: rotate(360deg);
            }
        }

        .dot-pulse {
            animation: pulse 2s ease-in-out infinite;
        }

        @keyframes pulse {

            0%,
            100% {
                transform: scale(1);
                opacity: 1;
            }

            50% {
                transform: scale(1.2);
                opacity: 0.8;
            }
        }

        .video-slide {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            opacity: 0;
            transition: opacity 1s ease-in-out;
            pointer-events: none;
        }

        .video-slide.active {
            opacity: 1;
            pointer-events: auto;
        }

        .nav-arrow {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            background: rgba(255, 255, 255, 0.3);
            backdrop-filter: blur(10px);
            border: none;
            color: white;
            font-size: 24px;
            padding: 15px 20px;
            cursor: pointer;
            z-index: 20;
            transition: background 0.3s;
            border-radius: 8px;
        }

        .nav-arrow:hover {
            background: rgba(255, 255, 255, 0.5);
        }

        #left-arrow {
            left: 20px;
        }

        #right-arrow {
            right: 20px;
        }

        .video-indicators {
            position: absolute;
            bottom: 30px;
            left: 50%;
            transform: translateX(-50%);
            display: flex;
            gap: 10px;
            z-index: 20;
        }

        .indicator {
            width: 12px;
            height: 12px;
            border-radius: 50%;
            background: rgba(255, 255, 255, 0.5);
            cursor: pointer;
            transition: background 0.3s;
        }

        .indicator.active {
            background: white;
        }

        .wave-separator {
            position: absolute;
            top: -1px;
            left: 0;
            width: 100%;
            overflow: hidden;
            line-height: 0;
        }

        .wave-separator svg {
            position: relative;
            display: block;
            width: calc(100% + 1.3px);
            height: 80px;
        }

        .wave-separator .shape-fill {
            fill: #FFFFFF;
        }

        .scroll-to-top {
            position: fixed;
            bottom: 20px;
            right: 20px;
            width: 45px;
            height: 45px;
            background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
            color: white;
            border: none;
            border-radius: 8px;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            box-shadow: 0 4px 12px rgba(37, 99, 235, 0.4);
            transition: all 0.3s ease;
            z-index: 1000;
        }

        .scroll-to-top:hover {
            transform: translateY(-3px);
            box-shadow: 0 6px 16px rgba(37, 99, 235, 0.6);
        }

        .social-icon {
            transition: all 0.3s ease;
        }

        .social-icon:hover {
            transform: translateY(-3px);
        }

        .speech-bubble {
            position: relative;
            background: #3B82F6;
            border-radius: 12px;
            padding: 16px 24px;
            color: white;
            font-weight: 600;
            text-align: center;
            max-width: 320px;
        }

        .speech-bubble:after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 50%;
            width: 0;
            height: 0;
            border: 20px solid transparent;
            border-top-color: #3B82F6;
            border-bottom: 0;
            margin-left: -20px;
            margin-bottom: -20px;
        }

        .fade-in {
            animation: fadeIn 1s ease-in;
        }

        @keyframes fadeIn {
            from {
                opacity: 0;
                transform: translateY(20px);
            }

            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .text-item {
            opacity: 0;
            animation: slideInLeft 0.8s ease-out forwards;
        }

        .text-item:nth-child(1) {
            animation-delay: 0.2s;
        }

        .text-item:nth-child(2) {
            animation-delay: 0.4s;
        }

        .text-item:nth-child(3) {
            animation-delay: 0.6s;
        }

        .text-item:nth-child(4) {
            animation-delay: 0.8s;
        }

        @keyframes slideInLeft {
            from {
                opacity: 0;
                transform: translateX(-30px);
            }

            to {
                opacity: 1;
                transform: translateX(0);
            }
        }

        .image-float {
            animation: float 3s ease-in-out infinite;
        }

        @keyframes float {

            0%,
            100% {
                transform: translateY(0px);
            }

            50% {
                transform: translateY(-10px);
            }
        }

        .fade-in {
            animation: fadeIn 1s ease-in;
        }

        @keyframes fadeIn {
            from {
                opacity: 0;
                transform: translateY(20px);
            }

            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .slide-in {
            animation: slideIn 1s ease-out;
        }

        @keyframes slideIn {
            from {
                opacity: 0;
                transform: translateX(-50px);
            }

            to {
                opacity: 1;
                transform: translateX(0);
            }
        }

        .card-hover {
            transition: all 0.3s ease;
        }

        .card-hover:hover {
            transform: translateY(-10px);
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
        }

        .card-fade-in {
            opacity: 0;
            transform: translateY(30px);
            animation: fadeInUp 0.6s ease-out forwards;
        }

        .card-fade-in:nth-child(1) {
            animation-delay: 0.2s;
        }

        .card-fade-in:nth-child(2) {
            animation-delay: 0.4s;
        }

        .card-fade-in:nth-child(3) {
            animation-delay: 0.6s;
        }

        @keyframes fadeInUp {
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .image-overlay {
            position: relative;
            overflow: hidden;
        }

        .image-overlay::after {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1));
            opacity: 0;
            transition: opacity 0.3s ease;
        }

        .card-hover:hover .image-overlay::after {
            opacity: 1;
        }

        .logo-scroll {
            animation: scroll 20s linear infinite;
        }

        @keyframes scroll {
            0% {
                transform: translateX(0);
            }

            100% {
                transform: translateX(-50%);
            }
        }

        .logo-item {
            transition: all 0.3s ease;
        }

        .logo-item:hover {
            transform: scale(1.1);
            filter: brightness(1.2);
        }

        .fade-in {
            animation: fadeIn 1s ease-in;
        }

        @keyframes fadeIn {
            from {
                opacity: 0;
                transform: translateY(20px);
            }

            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .service-card {
            position: relative;
            overflow: hidden;
            transition: all 0.5s ease;
            cursor: pointer;
        }

        .service-bg {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-size: cover;
            background-position: center;
            transition: all 0.5s ease;
        }

        .service-overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: linear-gradient(to bottom, rgba(30, 58, 138, 0.6), rgba(30, 58, 138, 0.8));
            transition: all 0.5s ease;
        }

        .service-content {
            position: relative;
            z-index: 10;
            height: 100%;
            display: flex;
            flex-direction: column;
            justify-content: flex-end;
            padding: 2rem;
            color: white;
        }

        .service-number {
            font-size: 3rem;
            font-weight: bold;
            margin-bottom: 0.5rem;
            transition: all 0.5s ease;
        }

        .service-title {
            font-size: 1.5rem;
            font-weight: 600;
            margin-bottom: 1rem;
            transition: all 0.5s ease;
        }

        .service-description {
            font-size: 1.125rem;
            line-height: 1.75;
            opacity: 0;
            transform: translateX(-30px);
            transition: all 0.5s ease;
            max-width: 90%;
        }

        /* Hover States */
        .service-card:hover .service-description {
            opacity: 1;
            transform: translateX(0);
        }

        .service-card:hover .service-overlay {
            background: linear-gradient(to bottom, rgba(30, 58, 138, 0.85), rgba(30, 58, 138, 0.95));
        }

        /* Different background images for each service */
        .service-1-default {
            background-image: url('https://images.unsplash.com/photo-1553877522-43269d4ea984?w=800');
        }

        .service-1-hover {
            background-image: url('https://images.unsplash.com/photo-1559136555-9303baea8ebd?w=800');
        }

        .service-2-default {
            background-image: url('https://images.unsplash.com/photo-1450101499163-c8848c66ca85?w=800');
        }

        .service-2-hover {
            background-image: url('https://images.unsplash.com/photo-1586281380349-632531db7ed4?w=800');
        }

        .service-3-default {
            background-image: url('https://images.unsplash.com/photo-1460925895917-afdab827c52f?w=800');
        }

        .service-3-hover {
            background-image: url('https://images.unsplash.com/photo-1432888622747-4eb9a8f2c293?w=800');
        }

        .service-4-default {
            background-image: url('https://images.unsplash.com/photo-1521791136064-7986c2920216?w=800');
        }

        .service-4-hover {
            background-image: url('https://images.unsplash.com/photo-1454165804606-c3d57bc86b40?w=800');
        }


       /* Disable initial animations - only trigger on scroll */
.fade-in,
.slide-in,
.text-item,
.card-fade-in,
.speech-bubble,
.image-float {
    opacity: 0;
    transform: translateY(30px);
    animation: none !important; /* Disable auto-animations */
}

/* Animation trigger class added by Intersection Observer */
.animate-in.fade-in {
    animation: fadeIn 1s ease-in forwards !important;
}

.animate-in.slide-in {
    animation: slideIn 1s ease-out forwards !important;
}

.animate-in.text-item {
    animation: slideInLeft 0.8s ease-out forwards !important;
}

.animate-in.text-item:nth-child(1) {
    animation-delay: 0.1s;
}

.animate-in.text-item:nth-child(2) {
    animation-delay: 0.3s;
}

.animate-in.text-item:nth-child(3) {
    animation-delay: 0.5s;
}

.animate-in.text-item:nth-child(4) {
    animation-delay: 0.7s;
}

.animate-in.card-fade-in {
    animation: fadeInUp 0.6s ease-out forwards !important;
}

.animate-in.card-fade-in:nth-child(1) {
    animation-delay: 0.2s;
}

.animate-in.card-fade-in:nth-child(2) {
    animation-delay: 0.4s;
}

.animate-in.card-fade-in:nth-child(3) {
    animation-delay: 0.6s;
}

.animate-in.speech-bubble {
    animation: fadeIn 1s ease-in forwards !important;
}

.animate-in.image-float {
    animation: fadeInUp 0.8s ease-out forwards, float 3s ease-in-out infinite !important;
    animation-delay: 0s, 0.8s;
}

/* Keep existing keyframes */
@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateX(-50px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideInLeft {
    from {
        opacity: 0;
        transform: translateX(-30px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes float {
    0%, 100% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-10px);
    }
}

/* Hero section animations should still work on load */
.slide-in-left {
    animation: slideInLeft 1s ease-out !important;
}

.fade-in-up {
    opacity: 0;
    animation: fadeInUp 1s ease-out forwards !important;
    animation-delay: 0.6s;
}

/* Prevent animation on page reload for specific sections */
.logo-scroll {
    animation: scroll 20s linear infinite;
}

@keyframes scroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

/* Service cards - no animation on load */
.service-card .service-description {
    opacity: 0;
    transform: translateX(-30px);
    transition: all 0.5s ease;
}

.service-card:hover .service-description {
    opacity: 1;
    transform: translateX(0);
}

/* Card hover effects remain functional */
.card-hover {
    transition: all 0.3s ease;
}

.card-hover:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
}

/* Image overlay effects */
.image-overlay {
    position: relative;
    overflow: hidden;
}

.image-overlay::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1));
    opacity: 0;
    transition: opacity 0.3s ease;
}

.card-hover:hover .image-overlay::after {
    opacity: 1;
}



.video-slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    transition: opacity 1s ease-in-out;
    pointer-events: none;
}

.video-slide.active {
    opacity: 1;
    pointer-events: auto;
}

.nav-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.3);
    backdrop-filter: blur(10px);
    border: none;
    color: white;
    font-size: 24px;
    padding: 15px 20px;
    cursor: pointer;
    z-index: 20;
    transition: background 0.3s;
    border-radius: 8px;
}

.nav-arrow:hover {
    background: rgba(255, 255, 255, 0.5);
}

#left-arrow {
    left: 20px;
}

#right-arrow {
    right: 20px;
}

.video-indicators {
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 10px;
    z-index: 20;
}

.indicator {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.5);
    cursor: pointer;
    transition: background 0.3s;
}

.indicator.active {
    background: white;
}

.slide-in-left {
    animation: slideInLeft 1s ease-out;
}

@keyframes slideInLeft {
    from {
        opacity: 0;
        transform: translateX(-50px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.fade-in-up {
    opacity: 0;
    animation: fadeInUp 1s ease-out forwards;
    animation-delay: 0.6s;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.overlay-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.6s ease-in-out;
    pointer-events: none;
    z-index: 10;
}

.overlay-content.active {
    opacity: 1;
    pointer-events: auto;
}