/* roulang page: index */
:root {
            --primary-navy: #0f172a;
            --primary-gradient: linear-gradient(135deg, #0284c7 0%, #0d9488 100%);
            --accent-amber: #f59e0b;
            --bg-light: #f8fafc;
            --text-main: #334155;
            --text-heading: #0f172a;
            --border-soft: #e2e8f0;
        }
        body {
            color: var(--text-main);
            background-color: #ffffff;
            overflow-x: hidden;
            font-size: 15px;
            line-height: 1.6;
        }
        .gradient-brand {
            background: var(--primary-gradient);
        }
        .text-gradient {
            background: var(--primary-gradient);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
        }
        .badge-capsule {
            display: inline-flex;
            align-items: center;
            column-gap: 0.375rem;
            padding: 0.25rem 0.75rem;
            border-radius: 9999px;
            font-size: 0.75rem;
            font-weight: 600;
        }
        .card-soft-shadow {
            box-shadow: 0 10px 30px -5px rgba(0, 0, 0, 0.05);
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }
        .card-soft-shadow:hover {
            transform: translateY(-4px);
            box-shadow: 0 20px 35px -5px rgba(15, 23, 42, 0.08);
        }
        .btn-shimmer {
            position: relative;
            overflow: hidden;
        }
        .btn-shimmer::after {
            content: '';
            position: absolute;
            top: -50%;
            left: -50%;
            width: 200%;
            height: 200%;
            background: linear-gradient(60deg, transparent, rgba(255, 255, 255, 0.25), transparent);
            transform: rotate(30deg);
            animation: shimmer 4s infinite linear;
        }
        @keyframes shimmer {
            0% { transform: translate(-100%, -100%) rotate(30deg); }
            100% { transform: translate(100%, 100%) rotate(30deg); }
        }
        details summary::-webkit-details-marker {
            display: none;
        }
        .hide-scrollbar::-webkit-scrollbar {
            display: none;
        }
        .hide-scrollbar {
            -ms-overflow-style: none;
            scrollbar-width: none;
        }
