        html {
    scroll-behavior: smooth;
}

.bg-slate-50 {
            background-color: #f8fafc;
        }

        .text-slate-800 {
            color: #1e293b;
        }

        .text-navy {
            color: #1a237e;
        }

        .text-primary-custom {
            color: #3b82f6;
        }

        .text-danger-custom {
            color: #b91c1c;
        }

        .text-success-custom {
            color: #22c55e;
        }

        .text-danger-bold {
            color: #ef4444;
            font-weight: bold;
        }

        .text-muted {
            color: #4b5563 !important
        }

        /* Typography Utilities */
        .text-sm {
            font-size: 0.9rem;
        }

        .text-sm-custom {
            font-size: 0.95rem;
        }

        .text-md {
            font-size: 1.05rem;
        }

        /* Hero Section */
        .hero-section-wrap {
            min-height: 100vh;
            padding-top: 64px;
        }

        .hero-title {
            color: #071d4f;
            font-size: 3rem;
            line-height: 1.2;
        }

        .hero-desc {
            font-size: 1.1rem;
            line-height: 1.6;
        }

        .hero-features-wrap {
            color: #6b7280;
            font-size: 0.9rem;
        }

        .hero-check-icon {
            color: #10b981;
            font-size: 1.1rem;
        }

        .hero-img-wrap {
            height: 100vh;
        }

        .hero-img {
            object-fit: cover;
            width: 100%;
            height: 100%;
            border-radius: 10px;
        }

        /* Buttons & Badges */
        .btn-primary-custom {
            background-color: #2563eb;
            border-color: #2563eb;
            color: #ffffff;
            border-radius: 8px;
            transition: all 0.3s ease;
        }

        .btn-primary-custom:hover {
            background-color: #1d4ed8;
            border-color: #1d4ed8;
            color: #ffffff;
            transform: translateY(-2px);
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
        }

        .btn-white-custom {
            color: #2563eb;
            border-radius: 8px;
            padding: 10px 24px;
            transition: all 0.3s ease;
        }

        .btn-white-custom:hover {
            background-color: #f8fafc;
            transform: translateY(-2px);
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
            color: #1e40af;
        }

        .btn-outline-custom {
            background-color: #ffffff;
            color: #374151;
            border: 1px solid #cbd5e1;
            border-radius: 8px;
            transition: all 0.3s ease;
        }

        .btn-outline-custom:hover {
            background-color: #f8fafc;
            color: #1e293b;
            border-color: #94a3b8;
            transform: translateY(-2px);
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
        }

        .btn-outline-light-custom {
            border-radius: 8px;
            padding: 10px 24px;
            border-width: 2px;
            transition: all 0.3s ease;
        }

        .btn-outline-light-custom:hover {
            background-color: white;
            color: #1a237e;
            transform: translateY(-2px);
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
        }

        .badge-danger-custom {
            background-color: #fee2e2;
            color: #ef4444;
            font-size: 0.95rem;
            border-radius: 8px;
        }

        .badge-primary-custom {
            background-color: #dbeafe;
            color: #3b82f6;
            font-size: 0.95rem;
            border-radius: 8px;
        }

        .badge-text {
            color: #1e293b;
            font-size: 1rem;
            font-weight: 600;
        }

        /* Cards */
        .card-rounded-lg {
            border-radius: 12px;
        }

        .card-border-light {
            border-radius: 12px;
            border: 2px solid #f1f5f9 !important;
            box-shadow: none !important;
            transition: all 0.3s ease;
        }

        .card-border-light:hover {
            border-color: #cbd5e1 !important;
            transform: translateY(-3px);
            box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1) !important;
        }

        .card-slate-light {
            background-color: #f8fafc;
            border-radius: 12px;
            border: 1px solid #e2e8f0 !important;
            box-shadow: none !important;
            transition: all 0.3s ease;
            cursor: pointer;
        }

        .card-slate-light:hover {
            background-color: #f1f5f9;
            border-color: #cbd5e1 !important;
            transform: translateY(-4px);
            box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1) !important;
        }

        .card-danger-light {
            background-color: #fef2f2;
            border: 2px solid #fecaca !important;
            border-radius: 12px;
            box-shadow: none !important;
            transition: all 0.3s ease;
        }

        .card-danger-light:hover {
            border-color: #fca5a5 !important;
            transform: translateY(-3px);
            box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1) !important;
        }

        .card-success-light {
            background-color: #f0fdf4;
            border: 2px solid #bbf7d0 !important;
            border-radius: 12px;
            box-shadow: none !important;
            transition: all 0.3s ease;
        }

        .card-success-light:hover {
            border-color: #86efac !important;
            transform: translateY(-3px);
            box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1) !important;
        }

        .card-regulasi {
            border-radius: 8px;
            border: 1px solid #bfdbfe !important;
            box-shadow: none !important;
            transition: all 0.3s ease;
            cursor: pointer;
        }

        .card-regulasi:hover {
            border-color: #60a5fa !important;
            transform: translateY(-3px);
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1) !important;
        }

        .card-regulasi .badge-text {
            color: #1a237e;
        }

        /* Icons */
        .icon-box-primary {
            width: 40px;
            height: 40px;
            background-color: #eff6ff;
            border-radius: 8px;
            color: #3b82f6;
        }

        .icon-box-sm {
            width: 36px;
            height: 36px;
            background-color: #eff6ff;
            border-radius: 8px;
            color: #3b82f6;
        }

        .icon-lg-primary {
            font-size: 1.5rem !important;
            color: #3b82f6;
        }

        /* Features & Steps */
        .feature-title {
            color: #1e293b;
            font-size: 1.1rem;
        }

        .list-text {
            color: #4b5563;
            font-size: 1.05rem;
            line-height: 2;
            margin-bottom: 0 !important;
            padding-bottom: 0 !important;
        }

        .list-text li {
            border-bottom: none !important;
        }

        .list-text li:last-child {
            margin-bottom: 0 !important;
            padding-bottom: 0 !important;
        }

        .step-circle {
            width: 40px;
            height: 40px;
            background-color: #2563eb;
            border-radius: 50%;
        }

        .step-title {
            color: #1e293b;
            font-size: 1.05rem;
        }

        .step-img {
            border-radius: 12px;
            height: 180px;
            width: 100%;
            object-fit: cover;
        }

        .company-type-text {
            color: #1e293b;
            font-weight: 600;
            font-size: 1.1rem;
        }

        /* Testimonials */
        .avatar-wrapper {
            width: 48px;
            height: 48px;
            border-radius: 50%;
            background-color: #ffffff;
            overflow: hidden;
            margin-right: 15px;
            border: 1px solid #e2e8f0;
        }

        .avatar-img {
            object-fit: cover;
        }

        /* FAQ */
        .faq-card {
            border-radius: 8px;
            border: 1px solid #cbd5e1 !important;
            box-shadow: none !important;
        }

        .faq-header {
            border-radius: 8px;
        }

        .faq-btn {
            box-shadow: none !important;
            font-size: 1.15rem;
            width: 100%;
        }

        .faq-icon {
            font-size: 1.2rem;
            transition: transform 0.3s;
        }

        /* CTA Section */
        .cta-section {
            background-color: #2563eb;
            margin-bottom: -1.5rem;
        }

        .cta-title {
            font-size: 2.5rem;
        }

        .cta-desc {
            max-width: 800px;
            font-size: 1.15rem;
            opacity: 0.9;
        }

        .cta-features {
            font-size: 1.05rem;
            opacity: 0.9;
        }
