        /* ========================
   VARIABLES & UTILITIES
   ======================== */
        :root {
            --primary: #4154f1;
            --primary-soft: rgba(65, 84, 241, 0.1);
            --secondary: #2a3fd1;
            --success: #28a745;
            --success-soft: rgba(40, 167, 69, 0.1);
            --warning: #ffc107;
            --warning-soft: rgba(255, 193, 7, 0.1);
            --danger: #dc3545;
            --info: #17a2b8;
            --info-soft: rgba(23, 162, 184, 0.1);
            --light: #f8f9fa;
            --dark: #212529;
        }

        /* Color Utilities */
        .bg-primary-soft {
            background-color: var(--primary-soft);
        }

        .bg-success-soft {
            background-color: var(--success-soft);
        }

        .bg-warning-soft {
            background-color: var(--warning-soft);
        }

        .bg-info-soft {
            background-color: var(--info-soft);
        }

        .text-primary {
            color: var(--primary);
        }

        .text-white-80 {
            color: rgba(255, 255, 255, 0.8);
        }

        /* ========================
   ANIMATIONS
   ======================== */
        @keyframes float {
            0% {
                transform: translateY(0px);
            }

            50% {
                transform: translateY(-15px);
            }

            100% {
                transform: translateY(0px);
            }
        }

        @keyframes pulse {

            0%,
            100% {
                transform: scale(1);
            }

            50% {
                transform: scale(1.03);
            }
        }

        /* ========================
   LAYOUT COMPONENTS
   ======================== */
        /* Section Common Styles */
        .section {
            position: relative;
            padding: 100px 0;
            overflow: hidden;
        }

        .section-header {
            max-width: 700px;
            margin: 0 auto 50px;
            text-align: center;
        }

        .section-subtitle {
            display: inline-block;
            font-size: 14px;
            font-weight: 600;
            letter-spacing: 1px;
            margin-bottom: 15px;
            text-transform: uppercase;
            color: var(--primary);
        }

        .section-title {
            font-size: 2.5rem;
            font-weight: 700;
            margin-bottom: 15px;
            line-height: 1.2;
        }

        .section-description {
            color: #6c757d;
            font-size: 1.1rem;
        }

        /* ========================
   HEADER STYLES
   ======================== */
        .header {
            background: #fff;
            box-shadow: 0 2px 20px rgba(0, 0, 0, 0.1);
            padding: 15px 0;
            transition: all 0.3s;
            z-index: 997;
        }

        .header-container {
            padding: 0 15px;
        }

        .logo-img {
            max-height: 40px;
            margin-right: 10px;
        }

        .sitename {
            font-size: 24px;
            font-weight: 700;
            color: var(--primary);
        }

        .navmenu ul {
            margin: 0;
            padding: 0;
            display: flex;
            list-style: none;
            align-items: center;
        }

        .navmenu li {
            position: relative;
            padding: 0 12px;
        }

        .navmenu a {
            color: #012970;
            font-weight: 600;
            padding: 10px 0;
            position: relative;
        }

        .navmenu a:hover,
        .navmenu .active {
            color: var(--primary);
        }

        .navmenu .dropdown ul {
            display: block;
            position: absolute;
            left: 12px;
            top: calc(100% + 30px);
            margin: 0;
            padding: 10px 0;
            z-index: 99;
            opacity: 0;
            visibility: hidden;
            background: #fff;
            box-shadow: 0px 0px 30px rgba(127, 137, 161, 0.25);
            transition: 0.3s;
            border-radius: 4px;
        }

        .navmenu .dropdown ul li {
            min-width: 180px;
            padding: 0;
        }

        .navmenu .dropdown ul a {
            padding: 10px 20px;
            font-weight: 500;
        }

        .navmenu .dropdown:hover>ul {
            opacity: 1;
            top: 100%;
            visibility: visible;
        }

        /* Header Icons */
        .navmenu i.bi {
            font-size: 16px;
            vertical-align: middle;
        }

        .navmenu .dropdown-menu i.bi {
            font-size: 14px;
        }

        .navmenu a>span {
            vertical-align: middle;
        }

        /* Header Buttons */
        .btn-getstarted {
            background: var(--primary);
            color: #fff;
            padding: 8px 20px;
            border-radius: 4px;
            font-weight: 600;
            transition: all 0.3s;
        }

        .btn-getstarted:hover {
            background: var(--secondary);
            color: #fff;
        }

        .btn-getstarted i.bi {
            margin-right: 5px;
        }

        .mobile-nav-toggle {
            color: #012970;
            font-size: 28px;
            cursor: pointer;
            display: none;
            line-height: 0;
        }

        /* ========================
   HERO SECTION
   ======================== */
        .hero {
            background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
        }

        .hero-content {
            position: relative;
            z-index: 2;
        }

        .company-badge {
            background-color: var(--primary-soft);
            padding: 8px 16px;
            border-radius: 50px;
            font-size: 14px;
            font-weight: 500;
        }

        .badge-icon {
            width: 24px;
            height: 24px;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .hero-image {
            position: relative;
            padding: 20px;
        }

        .hero-image img {
            position: relative;
            z-index: 1;
            max-width: 100%;
            height: auto;
            filter: drop-shadow(0 10px 20px rgba(0, 0, 0, 0.1));
        }

        /* Floating Badges */
        .floating-badge {
            position: absolute;
            background: white;
            border-radius: 12px;
            padding: 12px;
            display: flex;
            align-items: center;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
            z-index: 2;
            animation: float 6s ease-in-out infinite;
        }

        .badge-1 {
            top: 20%;
            left: 0;
            animation-delay: 0s;
        }

        .badge-2 {
            bottom: 20%;
            right: 0;
            animation-delay: 1s;
        }

        /* Stats Section */
        .stat-item {
            transition: transform 0.3s ease;
        }

        .stat-item:hover {
            transform: translateY(-5px);
        }

        .stat-icon {
            width: 50px;
            height: 50px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 20px;
        }

        .stat-number {
            font-weight: 700;
            color: #2d3748;
        }

        /* Wave Decoration */
        .hero-wave {
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            overflow: hidden;
            line-height: 0;
        }

        .hero-wave svg {
            position: relative;
            display: block;
            width: calc(100% + 1.3px);
            height: 100px;
        }

        .animated-img {
            animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
        }

        /* ========================
   ABOUT SECTION
   ======================== */
        .about-images {
            position: relative;
            padding-right: 50px;
        }

        .main-img {
            width: 100%;
            position: relative;
            z-index: 1;
            border: 5px solid white;
        }

        .secondary-img {
            position: absolute;
            width: 60%;
            bottom: -30px;
            right: 0;
            z-index: 2;
            border: 5px solid white;
        }

        /* Features Grid */
        .features-grid {
            margin: 30px 0;
        }

        .feature-card {
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            border: 1px solid rgba(0, 0, 0, 0.03);
        }

        .feature-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1) !important;
        }

        .feature-icon {
            width: 50px;
            height: 50px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 12px;
            font-size: 20px;
        }

        /* Badges */
        .experience-badge {
            position: absolute;
            bottom: 30px;
            left: -20px;
            z-index: 3;
            max-width: 180px;
        }

        .stats-badge {
            position: absolute;
            top: 50px;
            right: 0;
            z-index: 3;
            max-width: 160px;
        }

        /* Contact Card */
        .contact-card {
            transition: transform 0.3s ease;
        }

        .contact-card:hover {
            transform: translateY(-5px);
        }

        .icon-wrapper {
            width: 40px;
            height: 40px;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        /* ========================
   FEATURES SECTION
   ======================== */
        /* Features Tabs */
        .nav-pills {
            border: 1px solid rgba(65, 84, 241, 0.2);
            border-radius: 50px;
            padding: 5px;
            background: white;
        }

        .nav-pills .nav-link {
            padding: 10px 25px;
            border-radius: 50px;
            font-weight: 600;
            color: #495057;
            display: flex;
            align-items: center;
        }

        .nav-pills .nav-link.active {
            background: var(--primary);
            color: white;
            box-shadow: 0 5px 15px rgba(65, 84, 241, 0.3);
        }

        .nav-pills .nav-link i {
            font-size: 18px;
            margin-right: 8px;
        }

        /* Feature Content */
        .feature-content h3 {
            font-size: 2rem;
            font-weight: 700;
            margin-bottom: 20px;
        }

        .feature-content .lead {
            font-size: 1.1rem;
            color: #495057;
            margin-bottom: 30px;
        }

        .feature-item {
            margin-bottom: 15px;
        }

        .feature-item h5 {
            font-size: 1rem;
            font-weight: 600;
            margin-bottom: 5px;
        }

        /* Feature Image */
        .feature-image {
            position: relative;
            padding: 20px;
        }

        .feature-image img {
            border-radius: 12px;
            box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
            position: relative;
            z-index: 1;
        }

        /* E-Wallet Items */
        .ewallet-item {
            transition: all 0.3s ease;
            border: 1px solid rgba(0, 0, 0, 0.05);
        }

        .ewallet-item:hover {
            transform: translateY(-5px);
            box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
        }

        .ewallet-icon {
            height: 50px;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        /* Feature Cards */
        .feature-card {
            transition: all 0.3s ease;
            border-radius: 12px;
        }

        .feature-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1) !important;
        }

        .feature-icon-wrapper {
            width: 70px;
            height: 70px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 28px;
        }

        /* ========================
   CALL TO ACTION SECTION
   ======================== */
        .call-to-action {
            background: linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%);
        }

        .cta-content {
            background: rgba(255, 255, 255, 0.1);
            backdrop-filter: blur(10px);
            border: 1px solid rgba(255, 255, 255, 0.2);
        }

        .cta-title {
            font-size: 2.5rem;
            line-height: 1.2;
            color: white;
        }

        .cta-text {
            font-size: 1.25rem;
            max-width: 700px;
            margin: 0 auto;
            color: rgba(255, 255, 255, 0.8);
        }

        .btn-light {
            background-color: white;
            color: var(--primary);
            font-weight: 600;
            transition: all 0.3s ease;
        }

        .btn-light:hover {
            background-color: #f8f9fa;
            transform: translateY(-3px);
            box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
        }

        .btn-outline-light {
            border-width: 2px;
            font-weight: 600;
            transition: all 0.3s ease;
        }

        .btn-outline-light:hover {
            background-color: rgba(255, 255, 255, 0.1);
            transform: translateY(-3px);
            box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
        }

        .trust-badge {
            padding-top: 15px;
            border-top: 1px solid rgba(255, 255, 255, 0.1);
        }

        /* Background Shapes */
        .cta-shape-1 {
            position: absolute;
            width: 300px;
            height: 300px;
            background: rgba(255, 255, 255, 0.05);
            border-radius: 50%;
            top: -150px;
            left: -150px;
        }

        .cta-shape-2 {
            position: absolute;
            width: 200px;
            height: 200px;
            background: rgba(255, 255, 255, 0.05);
            border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%;
            bottom: -100px;
            right: -50px;
        }

        /* ========================
    FOOTER STYLES
    ======================== */
        /* Footer Styles */
        .footer {
            background: #1a1e2e;
            position: relative;
            overflow: hidden;
        }

        .footer a.logo:hover {
            text-decoration: none;
        }

        .footer h5 {
            font-size: 1.1rem;
            font-weight: 600;
            margin-bottom: 1.2rem;
            position: relative;
        }

        .footer ul li {
            margin-bottom: 0.5rem;
        }

        .hover-text-white:hover {
            color: white !important;
            text-decoration: none;
        }

        .hover-text-primary:hover {
            color: #4154f1 !important;
        }

        .bg-gray-800 {
            background-color: #2d3748;
        }

        .bg-gray-700 {
            background-color: #4a5568;
        }

        .text-white-50 {
            color: rgba(255, 255, 255, 0.7);
        }

        .social-links a {
            width: 36px;
            height: 36px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            background: rgba(255, 255, 255, 0.1);
            border-radius: 50%;
            transition: all 0.3s ease;
        }

        .social-links a:hover {
            background: #4154f1;
            transform: translateY(-3px);
        }

        /* Input Group Custom */
        .footer .input-group .form-control {
            height: 45px;
        }

        .footer .input-group .btn {
            height: 45px;
            width: 45px;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        /* Responsive Adjustments */
        @media (max-width: 992px) {
            .footer {
                text-align: center;
            }

            .footer-contact div {
                justify-content: center;
            }

            .social-links {
                justify-content: center;
            }
        }

        @media (max-width: 768px) {
            .footer [class^="col-"] {
                margin-bottom: 2rem;
            }

            .footer h5 {
                margin-bottom: 1rem;
            }
        }




        /* ========================
   RESPONSIVE ADJUSTMENTS
   ======================== */
        @media (max-width: 1199px) {

            /* Header Mobile */
            .navmenu {
                position: fixed;
                top: 70px;
                right: -100%;
                width: 100%;
                height: calc(100vh - 70px);
                background: #fff;
                transition: 0.3s;
                overflow-y: auto;
            }

            .navmenu ul {
                flex-direction: column;
                padding: 20px;
            }

            .navmenu li {
                padding: 10px 0;
            }

            .navmenu .dropdown ul {
                position: static;
                display: none;
                padding: 10px 0 0 20px;
                box-shadow: none;
                opacity: 1;
                visibility: visible;
            }

            .mobile-nav-toggle {
                display: block;
            }

            .navmenu-active {
                right: 0;
            }

            /* Header Icons */
            .navmenu i.bi {
                margin-right: 15px;
                font-size: 18px;
            }

            .navmenu .dropdown-menu i.bi {
                margin-right: 10px;
            }

            .navmenu a>span {
                display: inline-block;
                vertical-align: middle;
            }
        }

        @media (max-width: 992px) {
            .section {
                padding: 80px 0;
            }

            .section-title {
                font-size: 2rem;
            }

            /* About Section */
            .about-images {
                padding-right: 0;
                margin-bottom: 50px;
            }

            .secondary-img {
                width: 50%;
                bottom: -20px;
            }

            .experience-badge {
                left: 10px;
                bottom: 10px;
            }

            /* Features Section */
            .nav-pills .nav-link {
                padding: 8px 15px;
                font-size: 14px;
            }

            .feature-content {
                padding-left: 0 !important;
                padding-right: 0 !important;
            }

            .feature-image {
                margin-bottom: 50px;
            }
        }

        @media (max-width: 768px) {
            .section {
                padding: 60px 0;
            }

            /* About Section */
            .about-images {
                margin-bottom: 30px;
            }

            .experience-badge,
            .stats-badge {
                position: relative;
                top: auto;
                left: auto;
                right: auto;
                bottom: auto;
                max-width: 100%;
                margin-top: 20px;
            }

            .secondary-img {
                display: none;
            }

            /* Features Section */
            .nav-pills {
                flex-wrap: nowrap;
                overflow-x: auto;
                white-space: nowrap;
                display: inline-flex;
            }

            .feature-card {
                margin-bottom: 20px;
            }

            .floating-badge {
                right: 0;
                bottom: -10px;
            }

            /* CTA Section */
            .d-flex.flex-sm-row {
                flex-direction: column;
            }

            .btn-lg {
                padding: 0.75rem 1.5rem;
                font-size: 1rem;
            }
        }


        /* Mobile Optimization */
        @media (max-width: 991.98px) {
            .hero {
                padding: 60px 0;
                text-align: center;
            }

            .hero-content {
                padding: 0 15px;
            }

            .hero h1 {
                font-size: 1.8rem;
            }

            .hero-buttons .btn {
                width: 100%;
            }

            /* Memastikan gambar benar-benar tersembunyi */
            .hero-image {
                display: none !important;
            }
        }