body {
    font-family: 'Inter', sans-serif;
    background-color: #0F172A;
    /* Latar belakang fallback */
    /* Latar belakang gradien + noise. */
    background-image: linear-gradient(145deg, #0B1120 0%, #1E293B 100%),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 300'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.6' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
    background-blend-mode: overlay;
    opacity: 1;
    color: #E2E8F0;
}

.text-gradient {
    @apply text-transparent bg-clip-text bg-gradient-to-r from-indigo-400 to-purple-500;
}

.btn-primary {
    @apply inline-flex items-center justify-center px-6 py-3 font-semibold text-white bg-indigo-600 rounded-lg shadow-lg shadow-indigo-500/30 transition-all duration-300 ease-in-out;
}

.btn-primary:hover {
    @apply bg-indigo-500 scale-105 transform;
}

.btn-secondary {
    @apply inline-flex items-center justify-center px-6 py-3 font-semibold text-gray-300 bg-gray-700/50 rounded-lg ring-1 ring-gray-600 transition-all duration-300 ease-in-out;
}

.btn-secondary:hover {
    @apply bg-gray-700 text-white scale-105 transform;
}

#mobile-menu {
    transition: transform 0.3s ease-in-out;
    transform: translateX(100%);
}

#mobile-menu.open {
    transform: translateX(0);
}

#menu-overlay {
    transition: opacity 0.3s ease-in-out;
}

/* Styling untuk konten legal */
.legal-content h2 {
    @apply text-2xl font-semibold text-white mt-8 mb-4;
}

.legal-content p {
    @apply text-gray-300 leading-relaxed mb-4;
}

.legal-content ul {
    @apply list-disc list-inside text-gray-300 leading-relaxed mb-4 pl-4;
}

.legal-content li {
    @apply mb-2;
}