/* roulang page: index */
:root {
            --brand-primary: #0A5C5A;
            --brand-gradient: linear-gradient(135deg, #0A5C5A 0%, #14B8A6 100%);
            --brand-accent: #FF6B4A;
            --brand-bg: #F8FAFC;
            --brand-text: #0F172A;
            --brand-muted: #64748B;
            --radius-card: 20px;
            --shadow-card: 0 10px 30px -5px rgba(10, 92, 90, 0.08);
            --shadow-card-hover: 0 20px 40px -8px rgba(10, 92, 90, 0.16);
        }

        html {
            scroll-behavior: smooth;
        }

        body {
            font-family: system-ui, -apple-system, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
            background-color: var(--brand-bg);
            color: #334155;
            line-height: 1.75;
            overflow-x: hidden;
        }

        .card-custom {
            border-radius: var(--radius-card);
            box-shadow: var(--shadow-card);
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .card-custom:hover {
            transform: translateY(-4px);
            box-shadow: var(--shadow-card-hover);
        }

        .gradient-teal-bg {
            background: var(--brand-gradient);
        }

        .badge-pill {
            background: rgba(20, 184, 166, 0.1);
            color: #0A5C5A;
            border: 1px solid rgba(20, 184, 166, 0.25);
        }

        .badge-coral-pill {
            background: rgba(255, 107, 74, 0.12);
            color: #FF6B4A;
            border: 1px solid rgba(255, 107, 74, 0.25);
        }

        details summary::-webkit-details-marker {
            display: none;
        }

        details[open] summary .faq-icon {
            transform: rotate(180deg);
        }

        .modal-active {
            overflow: hidden;
        }
