/* roulang page: index */
:root {
            --primary-orange: #FF5500;
            --tech-dark: #18191C;
            --surface-dark: #222429;
            --bg-light: #F8F9FA;
            --text-dark: #111827;
            --text-muted: #6B7280;
            --border-color: rgba(0,0,0,0.08);
            --border-dark-color: rgba(255,255,255,0.08);
        }
        * { box-sizing: border-box; }
        body {
            font-family: system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;
            background-color: var(--bg-light);
            color: var(--text-dark);
            margin: 0;
            line-height: 1.6;
            scroll-behavior: smooth;
        }
        .hero-banner-bg {
            background-image: linear-gradient(rgba(24, 25, 28, 0.88), rgba(24, 25, 28, 0.85)), url('/assets/images/30a68c553e319184.webp');
            background-size: cover;
            background-position: center;
        }
        .deep-stage-bg {
            background-image: linear-gradient(rgba(24, 25, 28, 0.94), rgba(24, 25, 28, 0.96)), url('/assets/images/475173648e8ac55d.jpg');
            background-size: cover;
            background-position: center;
        }
        .badge-pulse {
            animation: pulse-dot 2s infinite ease-in-out;
        }
        @keyframes pulse-dot {
            0%, 100% { opacity: 1; transform: scale(1); }
            50% { opacity: 0.4; transform: scale(0.85); }
        }
        .custom-card-shadow {
            box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.05);
            transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
        }
        .custom-card-shadow:hover {
            transform: translateY(-4px);
            box-shadow: 0 12px 24px -4px rgba(255, 85, 0, 0.12);
            border-color: rgba(255, 85, 0, 0.3);
        }
