/* roulang page: index */
:root {
            --primary: #0F3836;
            --primary-dark: #0A2625;
            --accent: #C5A880;
            --action: #1E6F5C;
            --surface: #F9FAF9;
            --ink: #1A2421;
            --ink-muted: #4A5854;
            --borderline: #E0E6E3;
        }
        body {
            color: var(--ink);
            background-color: var(--surface);
            font-feature-settings: "cv02", "cv03", "cv04", "cv11";
            -webkit-tap-highlight-color: transparent;
        }
        .text-balance {
            text-wrap: balance;
        }
        .hero-pattern {
            background-image: radial-gradient(rgba(197, 168, 128, 0.15) 1px, transparent 1px);
            background-size: 24px 24px;
        }
        .badge-pulse::after {
            content: '';
            position: absolute;
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            border-radius: 9999px;
            animation: pulse-ring 2s cubic-bezier(0.215, 0.61, 0.355, 1) infinite;
        }
        @keyframes pulse-ring {
            0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(197, 168, 128, 0.7); }
            70% { transform: scale(1.15); box-shadow: 0 0 0 8px rgba(197, 168, 128, 0); }
            100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(197, 168, 128, 0); }
        }
