/* roulang page: index */
:root {
            --primary-emerald: #0FA958;
            --primary-deep: #0B7C41;
            --cyber-teal: #00D2B4;
            --active-orange: #FF7A00;
            --bg-light: #F6F8FA;
            --text-main: #0F172A;
            --text-muted: #64748B;
        }
        html {
            scroll-behavior: smooth;
        }
        body {
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
            background-color: var(--bg-light);
            color: var(--text-main);
            overflow-x: hidden;
        }
        .card-custom {
            box-shadow: 0 10px 30px -5px rgba(15, 169, 88, 0.08);
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }
        .card-custom:hover {
            transform: translateY(-4px);
            box-shadow: 0 18px 36px -5px rgba(15, 169, 88, 0.16);
        }
        .live-dot {
            animation: pulse-ring 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
        }
        @keyframes pulse-ring {
            0%, 100% { opacity: 1; transform: scale(1); }
            50% { opacity: 0.4; transform: scale(1.2); }
        }
        .hero-banner-bg {
            background-image: linear-gradient(135deg, rgba(13, 19, 26, 0.94) 0%, rgba(11, 124, 65, 0.88) 100%), url('/assets/images/e8773293146de352.webp');
            background-size: cover;
            background-position: center;
        }
        .tech-mesh-bg {
            background-image: linear-gradient(180deg, #0D131A 0%, #161F2C 100%), url('/assets/images/ca84f1fc6ab645a4.png');
            background-size: cover;
            background-position: center;
        }
