/* roulang page: index */
:root {
            --bg-base: #070B14;
            --bg-card: rgba(13, 21, 39, 0.75);
            --primary: #1D63FF;
            --primary-glow: #3B82F6;
            --accent: #00F5A0;
            --text-main: #F8FAFC;
            --text-sub: #94A3B8;
            --border-line: rgba(255, 255, 255, 0.08);
            --border-hover: rgba(59, 130, 246, 0.45);
        }

        body {
            background-color: var(--bg-base);
            color: var(--text-main);
            overflow-x: hidden;
            scroll-behavior: smooth;
        }

        .glass-panel {
            background: var(--bg-card);
            backdrop-filter: blur(16px);
            -webkit-backdrop-filter: blur(16px);
            border: 1px solid var(--border-line);
            box-shadow: 0 20px 40px -15px rgba(0, 0, 0, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.1);
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .glass-panel:hover {
            border-color: var(--border-hover);
            box-shadow: 0 20px 40px -10px rgba(29, 99, 255, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.15);
        }

        .btn-glow {
            background: linear-gradient(135deg, #1D63FF 0%, #10B981 100%);
            box-shadow: 0 0 20px rgba(29, 99, 255, 0.45);
            transition: all 0.25s ease;
        }

        .btn-glow:hover {
            box-shadow: 0 0 30px rgba(0, 245, 160, 0.6);
            transform: translateY(-2px);
        }

        .btn-outline-glow {
            border: 1px solid rgba(59, 130, 246, 0.5);
            background: rgba(13, 21, 39, 0.6);
            transition: all 0.25s ease;
        }

        .btn-outline-glow:hover {
            border-color: #00F5A0;
            background: rgba(29, 99, 255, 0.15);
            box-shadow: 0 0 15px rgba(0, 245, 160, 0.3);
            color: #00F5A0;
        }

        .text-gradient {
            background: linear-gradient(135deg, #FFFFFF 20%, #93C5FD 70%, #00F5A0 100%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
        }

        .hero-mesh {
            background: radial-gradient(circle at 50% 20%, rgba(29, 99, 255, 0.18) 0%, rgba(7, 11, 20, 0) 70%),
                        radial-gradient(circle at 80% 60%, rgba(0, 245, 160, 0.08) 0%, rgba(7, 11, 20, 0) 60%);
        }

        .accordion-content {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.35s ease-out;
        }

        .accordion-item.active .accordion-content {
            max-height: 250px;
        }

        .accordion-item.active .accordion-icon {
            transform: rotate(180deg);
            color: #00F5A0;
        }
