        @import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Noto+Sans+JP:wght@300;400;500;700&display=swap');
        body { font-family: 'Noto Sans JP', sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
        .font-en { font-family: 'DM Sans', sans-serif; }
        
        /* -------------------------------------
           Blackhole Animation
        -------------------------------------- */
        @keyframes spin-slow { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
        @keyframes spin-rev { from { transform: rotate(0deg); } to { transform: rotate(-360deg); } }
        @keyframes pulse-glow { 0%, 100% { opacity: 0.32; } 50% { opacity: 0.58; } }
        
        .spin-slow { animation: spin-slow 90s linear infinite; transform-origin: center; }
        .spin-rev { animation: spin-rev 120s linear infinite; transform-origin: center; }
        .spin-slow-fast { animation: spin-slow 70s linear infinite; transform-origin: center; }
        .pulse-glow { animation: pulse-glow 6s ease-in-out infinite; transform-origin: center; }
        .pt { animation: pulse-glow 4s ease-in-out infinite; }
        .pt:nth-child(odd) { animation-delay: -2s; }

        /* -------------------------------------
           Logo Slider Animation
        -------------------------------------- */
        @keyframes logo-slide {
            0% { transform: translateX(0); }
            100% { transform: translateX(-50%); }
        }
        .animate-logo-slide { animation: logo-slide 40s linear infinite; }

        /* -------------------------------------
           Header & Menu
        -------------------------------------- */
        .header-scrolled {
            background-color: rgba(10, 22, 40, 0.95) !important;
            border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
            backdrop-filter: blur(12px);
        }
        .header-scrolled .nav-link { color: rgba(255, 255, 255, 0.9) !important; }
        .header-scrolled .nav-link:hover { color: #ffffff !important; }
        .header-scrolled .logo-svg { color: #ffffff !important; --logo-inner-color: #0A1628; }
        .header-scrolled .mobile-menu-btn { color: #ffffff !important; }
        
        .header-top .logo-svg { color: #ffffff !important; --logo-inner-color: #030810; }
        .header-top .mobile-menu-btn { color: #ffffff !important; }

        /* -------------------------------------
           Scroll Reveal Animation (Refined)
        -------------------------------------- */
        .reveal {
            opacity: 0;
            transform: translateY(20px);
            transition: opacity 1s cubic-bezier(0.22, 1, 0.36, 1), transform 1s cubic-bezier(0.22, 1, 0.36, 1);
        }
        .reveal.active {
            opacity: 1;
            transform: translateY(0);
        }
        .delay-100 { transition-delay: 100ms; }
        .delay-200 { transition-delay: 200ms; }
        .delay-300 { transition-delay: 300ms; }

        /* -------------------------------------
           Customer Logo Slider
        -------------------------------------- */
        .customer-logo {
            opacity: 0.85;
            transition: opacity 0.3s ease;
        }
        .customer-logo:hover {
            opacity: 1;
        }

        /* Hide scrollbar for clean UI */
        ::-webkit-scrollbar { width: 6px; }
        ::-webkit-scrollbar-track { background: #FAF9F6; }
        ::-webkit-scrollbar-thumb { background: #d1d5db; border-radius: 4px; }
        ::-webkit-scrollbar-thumb:hover { background: #9ca3af; }
    