body { font-family: 'Poppins', sans-serif; background-color: #ffffff; margin: 0; overflow-x: hidden; color: #1a1a1a; }

        /* --- Lenis Smooth Scroll CSS --- */
        html.lenis, html.lenis body { height: auto; }
        .lenis.lenis-smooth { scroll-behavior: auto !important; }
        .lenis.lenis-smooth [data-lenis-prevent] { overscroll-behavior: contain; }
        .lenis.lenis-stopped { overflow: hidden; }
        .lenis.lenis-scrolling iframe { pointer-events: none; }



        /* --- HERO SECTION ANIMATIONS --- */
        @keyframes scrollText {
            0%, 20% { transform: translateY(0); }
            25%, 45% { transform: translateY(-25%); }
            50%, 70% { transform: translateY(-50%); }
            75%, 95% { transform: translateY(-75%); }
            100% { transform: translateY(-75%); }
        }
        .animate-scroll {
            animation: scrollText 8s cubic-bezier(0.76, 0, 0.24, 1) infinite;
        }

        /* --- MARQUEE SECTION ANIMATIONS --- */
        @keyframes scrollLeft {
            0% { transform: translateX(0); }
            100% { transform: translateX(-50%); }
        }

        .animate-marquee-custom {
            display: flex;
            width: max-content;
            animation: scrollLeft 35s linear infinite;
        }

        .marquee-track:hover .animate-marquee-custom {
            animation-play-state: paused;
            cursor: pointer;
        }

        .marquee-track {
            position: relative;
            background-color: #f0f2f5; 
            border-top: 1px solid #e2e8f0; 
            border-bottom: 1px solid #e2e8f0; 
            padding: 2.5rem 0;
            overflow: hidden;
        }

        /* Styling for the Logo Boxes */
        .logo-box {
            background-color: #ffffff;
            border: 1px solid #e2e8f0;
            border-radius: 19px;
            box-shadow: 0 4px 6px 1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03);
            padding: 1rem;
            min-width: 200px;
            height: 78px;
            display: flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
        }

        .logo-box img {
            max-height: 50px;
            max-width: 160px;
            object-fit: contain;
        }

        /* --- GALLERY STYLES --- */
        .card-container { transition: all 0.5s cubic-bezier(0.25, 1, 0.5, 1); }

        