/* roulang page: index */
:root {
            --color-primary: #0F5132;
            --color-primary-dark: #0B1E16;
            --color-primary-mid: #0D6838;
            --color-accent: #FF6B2B;
            --color-accent-hover: #E55315;
            --color-bg-base: #F8FAFC;
            --color-title: #0F172A;
            --color-text: #334155;
            --color-muted: #64748B;
            --border-color: #E2E8F0;
        }

        body {
            font-family: system-ui, -apple-system, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
            background-color: var(--color-bg-base);
            color: var(--color-text);
            line-height: 1.8;
            overflow-x: hidden;
        }

        .custom-card {
            background: #FFFFFF;
            border: 1px solid var(--border-color);
            border-radius: 0.75rem;
            box-shadow: 0 4px 20px -2px rgba(15, 81, 50, 0.05);
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .custom-card:hover {
            transform: translateY(-4px);
            box-shadow: 0 12px 28px -4px rgba(15, 81, 50, 0.12);
            border-color: rgba(255, 107, 43, 0.4);
        }

        .glow-card-green {
            box-shadow: 0 0 25px rgba(13, 104, 56, 0.15);
        }

        .glow-badge-orange {
            background-color: rgba(255, 107, 43, 0.12);
            color: #FF6B2B;
            border: 1px solid rgba(255, 107, 43, 0.25);
        }

        .hero-pattern {
            background-color: #0B1E16;
            background-image: radial-gradient(rgba(15, 81, 50, 0.3) 1px, transparent 1px), radial-gradient(rgba(255, 107, 43, 0.15) 1px, #0B1E16 1px);
            background-size: 40px 40px;
            background-position: 0 0, 20px 20px;
        }

        .hero-overlay-gradient {
            background: linear-gradient(135deg, rgba(11, 30, 22, 0.94) 0%, rgba(15, 81, 50, 0.88) 100%);
        }

        .custom-shadow-orange {
            box-shadow: 0 6px 20px -2px rgba(255, 107, 43, 0.35);
        }

        /* 移动端菜单抽屉过渡 */
        #mobile-menu {
            transition: max-height 0.35s ease-in-out, opacity 0.3s ease-in-out;
            max-height: 0;
            overflow: hidden;
            opacity: 0;
        }
        #mobile-menu.open {
            max-height: 480px;
            opacity: 1;
        }

        /* 手风琴平滑折叠 */
        .faq-content {
            transition: max-height 0.3s ease, padding 0.3s ease;
            max-height: 0;
            overflow: hidden;
        }
        .faq-content.open {
            max-height: 320px;
            padding-bottom: 1.25rem;
        }
