/* roulang page: index */
:root {
            --primary: #1E40AF;
            --primary-hover: #1D4ED8;
            --accent: #059669;
            --accent-gold: #D97706;
            --bg-light: #F8FAFC;
            --bg-surface: #FFFFFF;
            --text-main: #0F172A;
            --text-muted: #64748B;
            --border-soft: #E2E8F0;
        }

        body {
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif;
            color: var(--text-main);
            background-color: #FFFFFF;
            overflow-x: hidden;
        }

        .card-elevate {
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }
        .card-elevate:hover {
            transform: translateY(-4px);
            box-shadow: 0 12px 28px -6px rgba(15, 23, 42, 0.1), 0 8px 12px -4px rgba(15, 23, 42, 0.05);
        }

        /* FAQ details marker animation */
        details > summary::-webkit-details-marker {
            display: none;
        }
        details summary svg {
            transition: transform 0.25s ease-in-out;
        }
        details[open] summary svg {
            transform: rotate(180deg);
        }

        .hero-banner-slide {
            transition: opacity 0.6s ease-in-out;
        }
