 /* Custom Scrollbar */
        ::-webkit-scrollbar {
            width: 10px;
        }

        ::-webkit-scrollbar-track {
            background: #0f172a;
        }

        ::-webkit-scrollbar-thumb {
            background: #334155;
            border-radius: 5px;
        }

        ::-webkit-scrollbar-thumb:hover {
            background: #d4af37;
        }

        /* Carousel Transitions */
        .slide {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            opacity: 0;
            visibility: hidden;
            transition: opacity 1s ease-in-out, visibility 1s;
            z-index: 0;
            cursor: pointer;
            /* Indicates clickability */
        }

        .slide.active {
            opacity: 1;
            visibility: visible;
            z-index: 10;
        }

        /* Text Reveal Animation Classes */
        .reveal-text {
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
            transform: translateY(20px);
            opacity: 0;
            transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1);
            pointer-events: none;
            /* Let clicks pass through to the slide container */
        }

        .active .reveal-text {
            transform: translateY(0);
            opacity: 1;
        }

        .delay-100 {
            transition-delay: 0.1s;
        }

        .delay-200 {
            transition-delay: 0.2s;
        }

        .delay-300 {
            transition-delay: 0.3s;
        }

        /* Gradient Overlay */
        .hero-overlay {
            background: linear-gradient(to right, rgba(15, 23, 42, 0.95) 0%, rgba(15, 23, 42, 0.6) 50%, rgba(15, 23, 42, 0.3) 100%);
            pointer-events: none;
            /* Let clicks pass through */
        }

        /* Card Hover Effects */
        .service-card {
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }

        .service-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
        }

        .service-card:hover .icon-box {
            background-color: #d4af37;
            color: white;
        }

        /* Marquee Animation for Trust Strip */
        @keyframes marquee {
            0% {
                transform: translateX(0);
            }

            100% {
                transform: translateX(-50%);
            }
        }

        .marquee-content {
            display: flex;
            animation: marquee 30s linear infinite;
        }

        .marquee-container:hover .marquee-content {
            animation-play-state: paused;
        }

        /* Dropdown Hover Fix */
        .group:hover .group-hover\:visible {
            visibility: visible;
        }

        .group:hover .group-hover\:opacity-100 {
            opacity: 1;
        }

        .group:hover .group-hover\:translate-y-0 {
            transform: translateY(0);
        }

        /* Better mobile safe-area spacing */
        #mobile-menu {
            padding-bottom: calc(env(safe-area-inset-bottom) + 2.5rem);
        }