        @keyframes float {
            0% { transform: translateY(-50%) }
            50% { transform: translateY(calc(-50% - 5px)) }
            100% { transform: translateY(-50%) }
        }
        .animate-bounce-slow {
            animation: float 4s ease-in-out infinite;
        }
        
        /* === TAMBAHAN ANIMASI SECTION 4 === */
        @keyframes gaugeFill {
            0% { stroke-dashoffset: 126; }
            100% { stroke-dashoffset: 25; } /* 80% dari keliling setengah lingkaran */
        }
        @keyframes pulseGlow {
            0%, 100% { transform: scale(1); opacity: 0.5; }
            50% { transform: scale(1.15); opacity: 0.1; }
        }
        @keyframes pulseGlowLarge {
            0%, 100% { transform: scale(1); opacity: 0.3; }
            50% { transform: scale(1.3); opacity: 0.05; }
        }
        @keyframes barGrow {
            0% { transform: scaleY(0); }
            100% { transform: scaleY(1); }
        }
        @keyframes heartbeat {
            0%, 100% { transform: scale(1); }
            15% { transform: scale(1.1); }
            30% { transform: scale(1); }
            45% { transform: scale(1.1); }
            60% { transform: scale(1); }
        }
        
        /* === TAMBAHAN ANIMASI SECTION 7 (TESTIMONIAL MARQUEE) === */
        @keyframes scrollX {
            0% { transform: translateX(0); }
            /* Menggeser sejauh setengah dari total lebar konten (karena konten diduplikasi) */
            100% { transform: translateX(calc(-50% - 12px)); } 
        }
        .animate-scroll-x {
            animation: scrollX 35s linear infinite;
            display: flex;
            width: max-content;
        }
        .animate-scroll-x:hover {
            animation-play-state: paused; /* Berhenti saat di-hover pengguna */
        }
        /* ================================== */

        .footer-input:focus {
    border-color: #D5A8D6;
    outline: none;
    box-shadow: 0 0 0 2px rgba(213, 168, 214, 0.3);
}
        

.faq-answer {
            max-height: 0;
            overflow: hidden;
            transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
            opacity: 0;
        }

        .faq-item.active .faq-answer {
            max-height: 200px; /* Sesuaikan dengan panjang teks */
            padding-bottom: 1.5rem;
            opacity: 1;
        }

        .faq-item.active .faq-icon {
            transform: rotate(180deg);
            color: #8905B7;
        }

        .faq-item.active .faq-icon-wrapper {
            background-color: #f3e8ff;
        }

        .faq-item.active {
            border-color: #8905B7;
            box-shadow: 0 10px 25px -5px rgba(137, 5, 183, 0.1);
        }

/* Style all font awesome icons */

/* Add a hover effect if you want */
.fa:hover {
  opacity: 0.7;
}

/* Set a specific color for each brand */

/* Facebook */
.fa-facebook {  
  color: white;
}

/* Youtube */
.fa-youtube {
  color: white;
}        

/* Twitter */
.fa-instagram {
  color: white;
}
