/* roulang page: index */
:root {
            --color-primary: #10B981;
            --color-secondary: #0F172A;
            --color-accent: #F97316;
            --color-bg-light: #F8FAFC;
            --color-text-main: #0F172A;
            --color-text-body: #334155;
            --color-text-muted: #64748B;
            --border-card: rgba(226, 232, 240, 0.85);
            --shadow-subtle: 0 4px 20px -2px rgba(15, 23, 42, 0.05);
            --shadow-hover: 0 20px 25px -5px rgba(15, 23, 42, 0.1), 0 8px 10px -6px rgba(15, 23, 42, 0.08);
        }

        body {
            font-family: var(--font-sans);
            color: var(--color-text-body);
            background-color: #FFFFFF;
            overflow-x: hidden;
            line-height: 1.7;
        }

        .metric-mono {
            font-family: 'DIN Alternate', 'Inter', -apple-system, sans-serif;
            font-feature-settings: "tnum";
            font-variant-numeric: tabular-nums;
        }

        .hero-magazine-grid {
            display: grid;
            grid-template-columns: 1.15fr 0.85fr;
            gap: 2.5rem;
        }

        @media (max-width: 1024px) {
            .hero-magazine-grid {
                grid-template-columns: 1fr;
            }
        }

        .card-custom {
            border: 1px solid var(--border-card);
            border-radius: 1rem;
            transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
            background: #FFFFFF;
        }

        .card-custom:hover {
            transform: translateY(-4px);
            box-shadow: var(--shadow-hover);
            border-color: rgba(16, 185, 129, 0.4);
        }

        .grid-pattern {
            background-size: 32px 32px;
            background-image: 
                linear-gradient(to right, rgba(255, 255, 255, 0.05) 1px, transparent 1px),
                linear-gradient(to bottom, rgba(255, 255, 255, 0.05) 1px, transparent 1px);
        }
