 :root {
            --primary-color: #11ACDA;
            --primary-dark: rgb(140, 188, 238);
            --light-bg: #f8f9fa;
            --white-bg: #ffffff;
            --text-dark: #212529;
            --text-muted: #6c757d;
            --border-color: #dee2e6;
            --shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
            --border-radius: 12px;
        }

        body {
            font-family: 'Poppins', sans-serif;
            background-color: var(--light-bg);
            color: var(--text-muted);
        }

        /* Bilingual Text Styling */
        .lang-id {
            display: block;
            font-size: 0.8em;
            color: #8895a1;
            font-style: italic;
            font-weight: 400; /* Ensure it's not bold inside headings */
            margin-top: 4px;
        }

        /* Page Header Hero Section */
        .page-header {
            background: linear-gradient(45deg, var(--primary-color), var(--primary-dark));
            color: white;
            padding: 120px 0 160px;
            text-align: center;
            position: relative;
            overflow: hidden;
        }
        .page-header::before, .page-header::after {
            content: '';
            position: absolute;
            border-radius: 50%;
            background: rgba(255, 255, 255, 0.07);
            z-index: 1;
        }
        .page-header::before {
            width: 250px;
            height: 250px;
            bottom: -80px;
            left: -80px;
        }
        .page-header::after {
            width: 350px;
            height: 350px;
            top: -100px;
            right: -100px;
        }
        .page-header h1 {
            font-weight: 700;
            font-size: 3.8rem;
            position: relative;
            z-index: 2;
        }
        .page-header .last-updated {
            font-size: 1rem;
            opacity: 0.8;
            position: relative;
            z-index: 2;
        }

        /* Overlapping container */
        .policy-container {
            margin-top: -170px;
            position: relative;
            z-index: 3;
        }

        /* Sticky Navigation */
        .policy-nav {
            position: sticky;
            top: 100px; /* Adjust based on your header height */
            background-color: var(--white-bg);
            padding: 25px;
            border-radius: var(--border-radius);
            box-shadow: var(--shadow);
            border: 1px solid var(--border-color);
        }
        .policy-nav .nav-title {
            font-weight: 600;
            color: var(--text-dark);
            padding: 0 15px 15px;
            border-bottom: 1px solid var(--border-color);
            margin-bottom: 15px;
        }
        .policy-nav .nav-link {
            color: var(--text-muted);
            padding: 12px 20px;
            border-left: 4px solid transparent;
            font-weight: 500;
            transition: all 0.25s ease-in-out;
            display: flex;
            align-items: center;
            gap: 15px;
            border-radius: 0 8px 8px 0;
            margin-bottom: 5px;
        }
        .policy-nav .nav-link i {
            width: 20px;
            text-align: center;
            font-size: 1.1em;
        }
        .policy-nav .nav-link.active,
        .policy-nav .nav-link:hover {
            color: var(--primary-color);
            background-color: #f0f7ff;
            border-left-color: var(--primary-color);
            transform: translateX(8px);
        }

        /* Main Content Styling */
        .policy-content {
            background-color: var(--white-bg);
            padding: 50px;
            border-radius: var(--border-radius);
            box-shadow: var(--shadow);
            border: 1px solid var(--border-color);
            line-height: 1.8;
        }
        .policy-content h2 {
            font-weight: 600;
            color: var(--text-dark);
            margin-bottom: 20px;
            padding-bottom: 15px;
            border-bottom: 1px solid #e9ecef;
            /* Scrollspy offset */
            padding-top: 120px;
            margin-top: -100px;
        }
        .policy-content h2:first-of-type {
             margin-top: 0;
             padding-top: 20px;
        }
        .policy-content h5 .lang-id, .policy-content h2 .lang-id {
            font-size: 0.7em;
        }
        .policy-content a {
            color: var(--primary-color);
            text-decoration: none;
            font-weight: 500;
            transition: color 0.2s;
        }
        .policy-content a:hover {
            text-decoration: underline;
            color: var(--primary-dark);
        }
        .policy-content ul {
            padding-left: 25px;
        }
        .policy-content ul li {
            margin-bottom: 10px;
        }
        
        /* Info Box */
        .info-box {
            background-color: #e9f7fe;
            border-left: 5px solid #0dcaf0;
            padding: 25px;
            margin: 0 0 30px 0;
            border-radius: 8px;
        }
        .info-box p:last-child {
            margin-bottom: 0;
        }
        .info-box .info-title {
            font-weight: 600;
            color: #0c829b;
            display: flex;
            align-items: center;
            gap: 10px;
        }