/* roulang page: index */
:root {
            --color-primary: #0F4C3A;
            --color-primary-dark: #0A3427;
            --color-secondary: #1B8B68;
            --color-accent: #E65100;
            --color-dark: #0A1814;
            --color-text-main: #0F172A;
            --color-text-muted: #475569;
            --color-bg-base: #F8FAFC;
        }

        html {
            scroll-behavior: smooth;
        }

        body {
            font-family: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
            background-color: var(--color-bg-base);
            color: var(--color-text-main);
            line-height: 1.65;
            -webkit-font-smoothing: antialiased;
        }

        .tab-num {
            font-variant-numeric: tabular-nums;
        }

        .hero-bg {
            background: linear-gradient(135deg, rgba(10, 24, 20, 0.95) 0%, rgba(15, 76, 58, 0.9) 100%), url('/assets/images/21ad206eb1af786f.png') center/cover no-repeat;
        }

        .contrast-bg {
            background: linear-gradient(180deg, #0A1814 0%, #0F2920 100%);
        }

        .card-custom-shadow {
            box-shadow: 0 4px 20px -2px rgba(15, 76, 58, 0.06);
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .card-custom-shadow:hover {
            box-shadow: 0 16px 32px -4px rgba(15, 76, 58, 0.12);
            transform: translateY(-3px);
        }

        .accordion-content {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.35s ease-out;
        }
        
        .accordion-open .accordion-content {
            max-height: 240px;
        }

        .accordion-open .accordion-icon {
            transform: rotate(180deg);
        }
