        /* Base Settings */
        :root {
            --accent: rgb(221, 0, 255); /* Indigo-500 */
            --bg-dark: #0b0c15; /* Better Stack Dark Navy */
            --text-main: #9c9c9c; /* Gray-100 */
            --text-muted: #6f6f6f; /* Gray-400 */
        }

        html, body {
            margin: 0;
            padding: 0;
            width: 100%;
            background-color: transparent;
            color: var(--text-main);
            font-family: 'TASA Orbiter', sans-serif;
            overflow-x: hidden;
            -webkit-font-smoothing: antialiased;
        }

        /* Utilities */
        .tracking-tighter { letter-spacing: -0.04em; }
        .tracking-tight { letter-spacing: -0.02em; }
        .status-container {
            display: flex;
            justify-content: center;
            align-items: center;
            animation: fadeInUp 0.8s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
            opacity: 0;
            transform: translateY(20px);
            transition: opacity 0.8s ease-out, transform 0.8s ease-out;
            transition-delay: 0.1s;
            width: 100%;
        }

        /* Background Video */
        video {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            z-index: -10;
            pointer-events: none;
        }

        /* Custom Gradients & Glows */
        .glow-point {
            position: absolute;
            width: 600px;
            height: 600px;
            background: radial-gradient(circle, rgba(99,102,241,0.15) 0%, rgba(0,0,0,0) 70%);
            border-radius: 50%;
            pointer-events: none;
            z-index: 0;
            filter: blur(80px);
        }

        /* Typography Override */
        h1, h2, h3, h4, .font-heading {
            font-family: 'TASA Orbiter', sans-serif;
        }

        /* TASA Font Override */
        .font-tasa {
            font-family: 'TASA Orbiter', sans-serif;
        }

        /* Selection */
        ::selection {
            background: rgba(99, 102, 241, 0.3);
            color: white;
        }

        /* Scrollbar */
        ::-webkit-scrollbar { width: 6px; }
        ::-webkit-scrollbar-track { background: #0b0c15; }
        ::-webkit-scrollbar-thumb { background: #333; border-radius: 3px; }
        ::-webkit-scrollbar-thumb:hover { background: #4f46e5; }

        /* Canvas */
        #canvas-container {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 1;
            pointer-events: none;
            opacity: 0;
            transition: opacity 2s ease-out;
            mix-blend-mode: screen;
        }

        /* Animations */
        .fade-in-up {
            animation: fadeInUp 0.8s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards; /* Spring-ish easing */
            opacity: 0;
            transform: translateY(20px);
        }
        .delay-100 { animation-delay: 0.1s; }
        .delay-200 { animation-delay: 0.2s; }
        .delay-300 { animation-delay: 0.3s; }
        .delay-500 { animation-delay: 0.5s; }

        @keyframes fadeInUp {
            to { opacity: 1; transform: translateY(0); }
        }

        /* Gradient Text */
        .text-gradient {
            background: linear-gradient(135deg, #ffffff 0%, #a5b4fc 100%);
            -webkit-background-clip: text;
            background-clip: text;
            -webkit-text-fill-color: transparent;
        }

       

         /* Custom overlay controls styling for better visibility */
        .aspect-video .absolute.inset-0 button {
            backdrop-filter: blur(8px);
            border: 1px solid rgba(255, 255, 255, 0.2);
        }

        /* Click Shrink Effect */
        .click-shrink {
            animation: click-shrink 0.3s ease-in-out;
        }

        @keyframes click-shrink {
            0% {
                transform: scale(1);
                opacity: 1;
            }
            50% {
                transform: scale(0.9);
                opacity: 0.7;
            }
            100% {
                transform: scale(1);
                opacity: 1;
            }
        }

        /* Vignette Effect */
        body::before {
            content: '';
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: radial-gradient(circle at center, transparent 40%, rgba(0, 0, 0, 0.3) 70%, rgba(0, 0, 0, 0.6) 100%);
            pointer-events: none;
            z-index: 5;
        }

        /* Main content spacing */
        .main-hero-spacing {
            margin-top: 300px;
        }

        /* Hero text positioning */
        .hero-text-position {
            position: fixed;
            top: 200px;
            left: 50%;
        }

        /* Custom glow point background */
        .glow-point-custom {
            background: radial-gradient(circle, rgba(169, 169, 169, 0.15) 0%, rgba(0, 0, 0, 0.236) 70%);
        }

        /* Mobile Menu Styles */
        @media (max-width: 640px) {
            nav.flex {
                position: absolute;
                top: 100%;
                left: 0;
                right: 0;
                background: rgba(11, 12, 21, 0.95);
                backdrop-filter: blur(10px);
                flex-direction: column;
                padding: 1rem;
                gap: 1rem;
                border-bottom: 1px solid rgba(255, 255, 255, 0.1);
                box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
            }

            nav.flex a {
                padding: 0.5rem 0;
                border-bottom: 1px solid rgba(255, 255, 255, 0.1);
            }

            nav.flex a:last-child {
                border-bottom: none;
            }

            /* Make hero image smaller on mobile and add bottom margin */
            .fixed.inset-0 img {
                max-width: 80vw !important;
                max-height: 60vh !important;
                margin-bottom: 8rem;
            }

            /* Ensure main content has proper bottom spacing */
            main.pb-32 {
                padding-bottom: 8rem;
            }
        }

        /* Footer Styles */
        .footer {
            position: fixed;
            bottom: 0;
            left: 0;
            width: 100%;
            padding: 0 1rem;
            border-top: 1px solid rgba(255, 255, 255, 0.05);
            z-index: 20;
            box-sizing: border-box;
        }

        .footer-container {
            display: flex;
            flex-direction: row;
            align-items: center;
            justify-content: space-between;
            width: 100%;
        }

        .footer-col {
            flex: 1;
        }

        .footer-col-1 {
            display: flex;
            flex-direction: column;
            gap: 1rem;
        }

        .footer-col-2 {
            display: flex;
            flex-direction: column;
            gap: 0.75rem;
            flex: 0 0 auto;
        }

        .footer-col-3 {
            flex: 0 0 auto;
            display: flex;
            justify-content: flex-end;
            align-items: center;
        }
