/* roulang page: index */
:root {
            --primary: #0A4D5C;
            --primary-light: #0A9396;
            --accent: #CA6702;
            --accent-warm: #EE9B00;
            --dark-bg: #071D24;
            --surface: #F8FAFB;
            --text-main: #1E293B;
            --text-muted: #64748B;
            --border-soft: #E2E8F0;
        }
        body {
            color: var(--text-main);
            background-color: var(--surface);
            line-height: 1.75;
            -webkit-font-smoothing: antialiased;
        }
        h1, h2, h3, h4, h5, h6 {
            line-height: 1.3;
            letter-spacing: -0.01em;
        }
        .section-divider {
            position: relative;
        }
        .section-divider::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 50%;
            transform: translateX(-50%);
            width: 80px;
            height: 3px;
            background: linear-gradient(90deg, #0A4D5C, #0A9396);
            border-radius: 9999px;
        }
        .card-hover-fx {
            transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.25s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.25s ease;
        }
        .card-hover-fx:hover {
            transform: translateY(-4px);
            box-shadow: 0 16px 32px -8px rgba(10, 77, 92, 0.12);
            border-color: rgba(10, 147, 150, 0.35);
        }
        details summary::-webkit-details-marker {
            display: none;
        }
        details summary {
            list-style: none;
        }
