/* roulang page: index */
:root {
            --primary: #0F3A35;
            --primary-dark: #071715;
            --accent: #00E599;
            --text-main: #1A202C;
            --text-muted: #4B5563;
            --bg-light: #F7F9FA;
            --card-border: #E5E7EB;
        }
        body {
            font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
            background-color: var(--bg-light);
            color: var(--text-main);
            overflow-x: hidden;
            scroll-behavior: smooth;
        }
        .hero-bg {
            background-image: linear-gradient(rgba(7, 23, 21, 0.88), rgba(15, 58, 53, 0.94)), url('/assets/images/a8dc2949faa00e27.webp');
            background-size: cover;
            background-position: center;
        }
        .tech-dark-bg {
            background-image: linear-gradient(rgba(7, 23, 21, 0.95), rgba(7, 23, 21, 0.95)), url('/assets/images/d83455476f80193a.webp');
            background-size: cover;
            background-position: center;
        }
        .bento-card {
            background: #FFFFFF;
            border: 1px solid var(--card-border);
            border-radius: 12px;
            transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
            box-shadow: 0 4px 20px -2px rgba(15, 58, 53, 0.05);
        }
        .bento-card:hover {
            transform: translateY(-4px);
            border-color: rgba(0, 229, 153, 0.6);
            box-shadow: 0 12px 30px -4px rgba(15, 58, 53, 0.12);
        }
        .glow-btn {
            background-color: var(--accent);
            color: #071715;
            font-weight: 600;
            transition: all 0.2s ease;
        }
        .glow-btn:hover {
            background-color: #00C885;
            box-shadow: 0 0 16px rgba(0, 229, 153, 0.45);
        }
        .accordion-content {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.3s ease-out, opacity 0.25s ease;
            opacity: 0;
        }
        .accordion-item.active .accordion-content {
            max-height: 300px;
            opacity: 1;
        }
        .accordion-item.active .accordion-icon {
            transform: rotate(180deg);
        }
