body {
    font-family: 'Montserrat', sans-serif;
}

header {
    background-color: rgba(26, 54, 55, 1);
}

.navbar-brand img {
    width: 2.188rem;
}

.navbar-brand {
    color: rgba(255, 255, 255, 1);
    font-size: 1.375rem;
}

.navbar-toggler-icon {
    /* Menggunakan filter untuk mengubah warna SVG dari hitam ke putih */
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='white' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

.navbar-toggler-icon:active {
    /* Menggunakan filter untuk mengubah warna SVG dari hitam ke putih */
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='white' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

.navbar-toggler:focus,
.navbar-toggler:active {
    box-shadow: none;
    /* Hapus outline biru default Bootstrap */
    outline: none;
    /* Hapus outline default browser */
}

.navbar-nav li a {
    color: rgba(255, 255, 255, 1);
    font-weight: 500;
    font-size: 1rem;
}

.navbar-nav li a:hover {
    color: rgba(255, 255, 255, 0.5);
    font-weight: 500;
    font-size: 1rem;
}

.btn-login-hero {
    background-color: rgba(255, 255, 255, 1);
    color: rgba(12, 18, 19, 1);
    font-weight: 500;
    font-size: 1rem;
    border: 1px solid rgba(143, 146, 146, 0.15);
}

.btn-login-hero:hover {
    background-color: rgba(255, 255, 255, 0.5);
    color: rgba(12, 18, 19, 1);
    font-weight: 500;
    font-size: 1rem;
    border: 1px solid rgba(143, 146, 146, 0.15);
}

.btn-register-hero {
    background-color: transparent;
    color: rgba(255, 255, 255, 1);
    font-weight: 500;
    font-size: 1rem;
    border: 1px solid rgba(255, 255, 255, 1);
}

.btn-register-hero:hover {
    background-color: rgba(255, 255, 255, 0.5);
    color: rgba(255, 255, 255, 1);
    font-weight: 500;
    font-size: 1rem;
    border: 1px solid rgba(255, 255, 255, 1);
}

.reviews-hero img {
    width: 2rem;
    height: 2rem;
    margin-left: -0.5rem;
    border: 1px solid rgba(26, 164, 123, 1);
}

.reviews-hero .reviews-hero-plus {
    width: 2rem;
    height: 2rem;
    margin-left: -0.5rem;
    background-color: rgba(26, 164, 123, 1);
    color: rgba(255, 255, 255, 1);
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 2rem;
    font-weight: 200;
}

.reviews-hero-star img {
    width: 1rem;
    height: 1rem;
    object-fit: cover;
}

.reviews-hero-star .riview-text {
    color: rgba(232, 246, 242, 1);
    font-size: 0.875rem;
    font-weight: 600;
}

.title-hero h1 {
    color: rgba(255, 255, 255, 1);
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 140%;
}

.title-hero p {
    color: rgba(232, 246, 242, 1);
    font-size: 1rem;
    font-weight: 400;
    line-height: 140%;
}

.btn-get-started-hero {
    background-color: rgba(255, 255, 255, 1);
    color: rgba(12, 18, 19, 1);
    font-weight: 500;
    font-size: 1rem;
    border: 1px solid rgba(143, 146, 146, 0.15);
}

.btn-get-started-hero:hover {
    background-color: rgba(255, 255, 255, 0.5);
    color: rgba(12, 18, 19, 1);
    font-weight: 500;
    font-size: 1rem;
    border: 1px solid rgba(143, 146, 146, 0.15);
}

.btn-learn-more-hero {
    background-color: transparent;
    color: rgba(255, 255, 255, 1);
    font-weight: 500;
    font-size: 1rem;
    border: 1px solid rgba(255, 255, 255, 1);
}

.btn-learn-more-hero:hover {
    background-color: rgba(255, 255, 255, 0.5);
    color: rgba(255, 255, 255, 1);
    font-weight: 500;
    font-size: 1rem;
    border: 1px solid rgba(255, 255, 255, 1);
}

.img-hero-1-section img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.card-saving {
    color: rgba(255, 255, 255, 1);
    font-size: 0.875rem;
    font-weight: 400;
}

.card-saving img {
    width: 0.875rem;
    height: 0.875rem;
    align-self: center;
}

.card-user span {
    color: rgba(255, 255, 255, 1);
    font-size: 0.875rem;
    font-weight: 400;
}

.card-saving-section {
    height: auto;
    background-color: rgba(255, 255, 255, 1);
    border: 1px solid rgba(193, 193, 193, 1);
    border-radius: 1rem;
}

.card-saving-section img {
    width: 1rem;
    height: 1rem;
    object-fit: cover;
}

.card-saving-section h1 {
    color: rgba(0, 0, 0, 1);
    font-size: 0.875rem;
    font-weight: 500;
}

.card-saving-section .card-saving-text p {
    color: rgba(107, 114, 128, 1);
    font-size: 0.875rem;
    font-weight: 500;
}

.card-saving-section .card-saving-text span {
    color: rgba(14, 102, 67, 1);
    font-size: 0.875rem;
    font-weight: 500;
}

.card-saving-section .card-saving-text img {
    width: 1.125rem;
    height: 1.125rem;
}

.logo-partner p {
    color: rgba(157, 169, 169, 1);
    font-size: 1rem;
    font-weight: 600;
}

.img-logo-partner img {
    width: 8rem;
    height: 2.5rem;
    object-fit: contain;
}

.heading-about-us h1 {
    color: rgba(0, 0, 0, 1);
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 140%;
}

.heading-about-us p {
    color: rgba(163, 160, 160, 1);
    font-size: 1rem;
    font-weight: 500;
    line-height: 140%;
}

.content-about-us {
    background: linear-gradient(158.93deg, #FFFFFF 13.91%, #EAF9FB 106.7%);
    border-radius: 1.5rem;
    border: 1px solid rgba(143, 143, 146, 0.24);
}

.content-about-us img {
    width: 3.5rem;
    height: 3.5rem;
}

.content-about-us h3 {
    color: rgba(12, 12, 19, 1);
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 140%;
}

.content-about-us p {
    color: rgba(61, 61, 66, 1);
    font-size: 1rem;
    font-weight: 500;
    line-height: 140%;
}

.heading-key-feature h1 {
    color: rgba(0, 0, 0, 1);
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 140%;
}

.content-heading-feature {
    background-color: rgba(45, 185, 118, 0.1);
    border-radius: 1rem;
    border: 1px solid rgba(232, 235, 235, 1);
}

.content-heading-feature1 {
    background-color: rgba(250, 250, 250, 1);
    border-radius: 1rem;
    border: 1px solid rgba(232, 235, 235, 1);
}

.content-heading-feature h3,
.content-heading-feature1 h3 {
    color: rgba(0, 0, 0, 1);
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 140%;
}

.content-heading-feature p {
    color: rgba(0, 0, 0, 1);
    font-size: 1rem;
    font-weight: 600;
    line-height: 140%;
}

.saving-key-feature {
    color: rgba(157, 169, 169, 1);
    font-size: 1rem;
    font-weight: 600;
    line-height: 140%;
}

.title-saving h1 {
    color: rgba(0, 0, 0, 1);
    font-size: 1.5rem;
    line-height: 150%;
    font-weight: 500;
}

.title-saving p a {
    color: rgba(126, 65, 255, 1);
    text-decoration: none;
    font-weight: 500;
}

.card-saving1 {
    border-left: 1px dashed rgba(111, 128, 129, 1);
}

.card-saving1 .progress {
    background-color: rgba(126, 65, 255, 0.2);
}

.card-saving1 .progress-bar {
    background-color: rgba(126, 65, 255, 1);
}

.card-saving1 h3 {
    color: rgba(0, 0, 0, 1);
    font-size: 1rem;
    font-weight: 500;
}

.card-saving1 p {
    color: rgba(45, 185, 118, 1);
}

.card-saving1 span {
    color: rgba(157, 169, 169, 1);
}

.card-saving2 {
    border-left: 1px dashed rgba(111, 128, 129, 1);
}

.card-saving2 .progress {
    background-color: rgba(45, 185, 118, 0.2);
}

.card-saving2 .progress-bar {
    background-color: rgba(45, 185, 118, 1);
}

.card-saving2 h3 {
    color: rgba(0, 0, 0, 1);
    font-size: 1rem;
    font-weight: 500;
}

.card-saving2 p {
    color: rgba(45, 185, 118, 1);
}

.card-saving2 span {
    color: rgba(157, 169, 169, 1);
}

.card-saving3 {
    border-left: 1px dashed rgba(111, 128, 129, 1);
}

.card-saving3 .progress {
    background-color: rgba(249, 224, 54, 0.2);
}

.card-saving3 .progress-bar {
    background-color: rgba(249, 224, 54, 1);
}

.card-saving3 h3 {
    color: rgba(0, 0, 0, 1);
    font-size: 1rem;
    font-weight: 500;
}

.card-saving3 p {
    color: rgba(45, 185, 118, 1);
}

.card-saving3 span {
    color: rgba(157, 169, 169, 1);
}

.content-key-feature1 {
    border-radius: 1rem;
    border: 1px solid rgba(232, 235, 235, 1);
}

.content-key-feature2 {
    border-radius: 1rem;
    border: 1px solid rgba(232, 235, 235, 1);
}

.donut-chart {
    width: 9rem;
    height: 9rem;
    border-radius: 50%;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    background: conic-gradient(#8a3ffc 0% var(--progress-percent), #e8d9ff var(--progress-percent) 100%);
}

.donut-chart::before {
    content: "";
    position: absolute;
    width: 120px;
    height: 120px;
    background: #ffffff;
    border-radius: 50%;
}

.donut-chart-center {
    position: relative;
    z-index: 1;
    text-align: center;
    line-height: 1.4;
}

.donut-amount-current,
.donut-amount-total {
    display: block;
    font-size: 16px;
    font-weight: 600;
    color: #212529;
}

.donut-amount-total {
    font-weight: 500;
}

.donut-days-left {
    display: block;
    font-size: 14px;
    color: #6c757d;
    margin-top: 4px;
}

/* Info box di sebelah kanan */
.info-box-detail {
    background-color: #f1f3f5;
    /* Abu-abu muda (bg-light) */
    position: relative;
    overflow: hidden;
    /* Untuk ikon background */
    height: 100%;
}

.info-box-detail h3 {
    font-size: 24px;
    font-weight: 700;
    color: #212529;
    margin-bottom: 8px;
    position: relative;
    z-index: 1;
}

.info-box-date {
    font-size: 14px;
    color: #495057;
    margin-bottom: 24px;
    position: relative;
    z-index: 1;
}

.export-button {
    position: relative;
    z-index: 1;
}

/* Ikon background di dalam info-box */
.info-box-bg-icon {
    position: absolute;
    right: -20px;
    bottom: -15px;
    width: 120px;
    height: 120px;
    color: #ced4da;
    opacity: 0.6;
    z-index: 0;
}

.title-user-success h1 {
    color: rgba(0, 0, 0, 1);
    font-size: 1.5rem;
    font-weight: 600;
}

.marks h3 {
    color: rgba(0, 0, 0, 1);
    font-size: 1rem;
    font-weight: 600;
}

.marks p {
    color: rgba(61, 61, 66, 1);
    font-size: 1rem;
    font-weight: 500;
}

.text-card-mark p {
    color: rgba(0, 0, 0, 1);
    font-size: 1rem;
    font-weight: 400;
}

.budgeting h1 {
    color: rgba(26, 54, 55, 1);
    font-size: 1rem;
    font-weight: 600;
}

.marks h3 {
    color: rgba(0, 0, 0, 1);
    font-size: 1rem;
    font-weight: 600;
}

.marks p {
    color: rgba(61, 61, 66, 1);
    font-size: 1rem;
    font-weight: 500;
}

.text-card-mark p {
    color: rgba(0, 0, 0, 1);
    font-size: 1rem;
    font-weight: 400;
}

.budgeting h1 {
    color: rgba(26, 54, 55, 1);
    font-size: 1rem;
    font-weight: 600;
}

.card-mark-tengah .marks h3 {
    color: rgba(255, 255, 255, 1);
    font-size: 1rem;
    font-weight: 600;
}

.card-mark-tengah .marks p {
    color: rgba(255, 255, 255, 1);
    font-size: 1rem;
    font-weight: 500;
}

.card-mark-tengah .text-card-mark p {
    color: rgba(255, 255, 255, 1);
    font-size: 1rem;
    font-weight: 400;
}

.card-mark-tengah .budgeting h1 {
    color: rgba(255, 255, 255, 1);
    font-size: 1rem;
    font-weight: 600;
}

.card-mark-tengah .img-card-mark-tengah img {
    width: 100%;
    height: auto;
    border-radius: 1.25rem;
}

.card-mark-tengah {
    background-color: rgba(70, 147, 150, 1);
    border-radius: 1.5rem;
}

.card-mark {
    background-color: rgba(255, 255, 255, 1);
    border-radius: 1.5rem;
    border: 1px solid rgba(143, 143, 146, 0.24);
}

.heading-security h1 {
    color: rgba(0, 0, 0, 1);
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 140%;
}

.heading-security p {
    color: rgba(163, 160, 160, 1);
    font-size: 1rem;
    font-weight: 500;
    line-height: 140%;
}

.content-security {
    background: linear-gradient(158.93deg, #FFFFFF 13.91%, #EAF9FB 106.7%);
    border-radius: 1.5rem;
    border: 1px solid rgba(143, 143, 146, 0.24);
}

.content-security img {
    width: 3.5rem;
    height: 3.5rem;
}

.content-security h3 {
    color: rgba(12, 12, 19, 1);
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 140%;
}

.content-security p {
    color: rgba(61, 61, 66, 1);
    font-size: 1rem;
    font-weight: 500;
    line-height: 140%;
}

.title-tips h1 {
    color: rgba(0, 0, 0, 1);
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 140%;
}

.title-tips p {
    color: rgba(163, 160, 160, 1);
    font-size: 1rem;
    font-weight: 500;
    line-height: 140%;
}

.card-tips {
    border-radius: 1.5rem;
    border: 1px solid rgba(143, 143, 146, 0.24);
}

.card-tips-img img {
    width: 100%;
    height: 100%;
    border-radius: 1.5rem;
}

.card-tips h3 {
    color: rgba(0, 0, 0, 1);
    font-size: 1rem;
    font-weight: 700;
}

.card-tips p {
    color: rgba(163, 160, 160, 1);
    font-size: 1rem;
    font-weight: 400;
}

.card-tips .divider {
    width: 100%;
    height: 2px;
    background-color: rgba(163, 160, 160, 1);
}

.card-tips-icon p {
    color: rgba(163, 160, 160, 1);
    font-size: 1rem;
    font-weight: 500;
}

.btn-tips {
    background-color: rgba(70, 147, 150, 1);
    color: rgba(255, 255, 255, 1);
    font-weight: 500;
    border: 1px solid rgba(150, 150, 149, 0.15);
}

.contact {
    background: linear-gradient(358.33deg, #2A9286 12.18%, #3CB4A6 68.04%);
    border-radius: 1.5rem;
}

.contact h1 {
    color: rgba(255, 255, 255, 1);
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 120%;
}

.contact p {
    color: rgba(255, 255, 255, 1);
    font-size: 1rem;
    font-weight: 500;
    line-height: 160%;
}

.btn-contact {
    font-size: 1rem;
    font-weight: 500;
    background-color: rgba(255, 255, 255, 1);
}

.btn-contact:hover {
    font-size: 1rem;
    font-weight: 500;
    background-color: rgba(255, 255, 255, 0.5);
}

.title-footer h3 {
    font-size: 1rem;
    font-weight: 600;
    color: rgba(0, 0, 0, 1);
}

.content-footer h3 {
    color: rgba(0, 0, 0, 1);
    font-size: 1rem;
    font-weight: 600;
}

.content-footer p {
    color: rgba(111, 128, 129, 1);
    font-size: 1rem;
    font-weight: 400;
}

.divider-footer {
    width: 100%;
    height: 1px;
    background-color: rgba(111, 128, 129, 1);
}

.footer-bawah {
    color: rgba(111, 128, 129, 1);
    font-size: 1rem;
    font-weight: 400;
}

@media (min-width:768px) {
    body {
        font-family: 'Montserrat', sans-serif;
    }

    header {
        background-color: rgba(26, 54, 55, 1);
    }

    .navbar-brand img {
        width: 2.100rem;
    }

    .navbar-brand {
        color: rgba(255, 255, 255, 1);
        font-size: 1.375rem;
    }

    .navbar-nav li a {
        color: rgba(255, 255, 255, 1);
        font-weight: 500;
        font-size: 1rem;
    }

    .btn-login-hero {
        background-color: rgba(255, 255, 255, 1);
        color: rgba(12, 18, 19, 1);
        font-weight: 500;
        font-size: 1rem;
        border: 1px solid rgba(143, 146, 146, 0.15);
    }

    .btn-register-hero {
        background-color: transparent;
        color: rgba(255, 255, 255, 1);
        font-weight: 500;
        font-size: 1rem;
        border: 1px solid rgba(255, 255, 255, 1);
    }

    .reviews-hero img {
        width: 2rem;
        height: 2rem;
        margin-left: -0.5rem;
        border: 1px solid rgba(26, 164, 123, 1);
    }

    .reviews-hero .reviews-hero-plus {
        width: 2rem;
        height: 2rem;
        margin-left: -0.5rem;
        background-color: rgba(26, 164, 123, 1);
        color: rgba(255, 255, 255, 1);
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 2rem;
        font-weight: 200;
    }

    .reviews-hero-star img {
        width: 1rem;
        height: 1rem;
        object-fit: cover;
    }

    .reviews-hero-star .riview-text {
        color: rgba(232, 246, 242, 1);
        font-size: 0.875rem;
        font-weight: 500;
    }

    .title-hero h1 {
        color: rgba(255, 255, 255, 1);
        font-size: 3.5rem;
        font-weight: 500;
        line-height: 140%;
    }

    .title-hero p {
        color: rgba(232, 246, 242, 1);
        font-size: 1.125rem;
        font-weight: 400;
        line-height: 140%;
    }

    .btn-get-started-hero {
        background-color: rgba(255, 255, 255, 1);
        color: rgba(12, 18, 19, 1);
        font-weight: 500;
        font-size: 1rem;
        border: 1px solid rgba(143, 146, 146, 0.15);
    }

    .btn-learn-more-hero {
        background-color: transparent;
        color: rgba(255, 255, 255, 1);
        font-weight: 500;
        font-size: 1rem;
        border: 1px solid rgba(255, 255, 255, 1);
    }

    .img-hero-1-section img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .card-saving {
        color: rgba(255, 255, 255, 1);
        font-size: 1.5rem;
        font-weight: 500;
    }

    .card-saving img {
        width: 1.25rem;
        height: 1.25rem;
        align-self: center;
    }

    .card-user span {
        color: rgba(255, 255, 255, 1);
        font-size: 1rem;
        font-weight: 600;
    }

    .card-saving-section {
        height: auto;
        background-color: rgba(255, 255, 255, 1);
        border: 1px solid rgba(193, 193, 193, 1);
        border-radius: 1rem;
    }

    .card-saving-section img {
        width: 2rem;
        height: 2rem;
        object-fit: cover;
    }

    .card-saving-section h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 1.125rem;
        font-weight: 600;
    }

    .card-saving-section .card-saving-text p {
        color: rgba(107, 114, 128, 1);
        font-size: 1.125rem;
        font-weight: 600;
    }

    .card-saving-section .card-saving-text span {
        color: rgba(14, 102, 67, 1);
        font-size: 1.125rem;
        font-weight: 600;
    }

    .card-saving-section .card-saving-text img {
        width: 1.125rem;
        height: 1.125rem;
    }

    .logo-partner p {
        color: rgba(157, 169, 169, 1);
        font-size: 1.125rem;
        font-weight: 600;
    }

    .img-logo-partner img {
        width: 6.375rem;
        height: 2.5rem;
        object-fit: contain;
    }

    .heading-about-us h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 2rem;
        font-weight: 600;
        line-height: 140%;
    }

    .heading-about-us p {
        color: rgba(163, 160, 160, 1);
        font-size: 1.20rem;
        font-weight: 500;
        line-height: 140%;
    }

    .content-about-us {
        background: linear-gradient(158.93deg, #FFFFFF 13.91%, #EAF9FB 106.7%);
        border-radius: 1.5rem;
        border: 1px solid rgba(143, 143, 146, 0.24);
    }

    .content-about-us img {
        width: 3.5rem;
        height: 3.5rem;
    }

    .content-about-us h3 {
        color: rgba(12, 12, 19, 1);
        font-size: 1.5rem;
        font-weight: 600;
        line-height: 140%;
    }

    .content-about-us p {
        color: rgba(61, 61, 66, 1);
        font-size: 1rem;
        font-weight: 500;
        line-height: 140%;
    }

    .heading-key-feature h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 2rem;
        font-weight: 600;
        line-height: 140%;
    }

    .content-heading-feature {
        background-color: rgba(45, 185, 118, 0.1);
        border-radius: 1rem;
        border: 1px solid rgba(232, 235, 235, 1);
    }

    .content-heading-feature1 {
        background-color: rgba(250, 250, 250, 1);
        border-radius: 1rem;
        border: 1px solid rgba(232, 235, 235, 1);
    }

    .content-heading-feature h3,
    .content-heading-feature1 h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1.25rem;
        font-weight: 600;
        line-height: 140%;
    }

    .content-heading-feature p {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 600;
        line-height: 140%;
    }

    .saving-key-feature {
        color: rgba(157, 169, 169, 1);
        font-size: 1rem;
        font-weight: 600;
        line-height: 140%;
    }

    .title-saving h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 2rem;
        line-height: 150%;
        font-weight: 500;
    }

    .title-saving p a {
        color: rgba(126, 65, 255, 1);
        text-decoration: none;
        font-weight: 500;
    }

    .card-saving1 {
        border-left: 1px dashed rgba(111, 128, 129, 1);
    }

    .card-saving1 .progress {
        background-color: rgba(126, 65, 255, 0.2);
    }

    .card-saving1 .progress-bar {
        background-color: rgba(126, 65, 255, 1);
    }

    .card-saving1 h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .card-saving1 p {
        color: rgba(45, 185, 118, 1);
    }

    .card-saving1 span {
        color: rgba(157, 169, 169, 1);
    }

    .card-saving2 {
        border-left: 1px dashed rgba(111, 128, 129, 1);
    }

    .card-saving2 .progress {
        background-color: rgba(45, 185, 118, 0.2);
    }

    .card-saving2 .progress-bar {
        background-color: rgba(45, 185, 118, 1);
    }

    .card-saving2 h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .card-saving2 p {
        color: rgba(45, 185, 118, 1);
    }

    .card-saving2 span {
        color: rgba(157, 169, 169, 1);
    }

    .card-saving3 {
        border-left: 1px dashed rgba(111, 128, 129, 1);
    }

    .card-saving3 .progress {
        background-color: rgba(249, 224, 54, 0.2);
    }

    .card-saving3 .progress-bar {
        background-color: rgba(249, 224, 54, 1);
    }

    .card-saving3 h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .card-saving3 p {
        color: rgba(45, 185, 118, 1);
    }

    .card-saving3 span {
        color: rgba(157, 169, 169, 1);
    }

    .content-key-feature1 {
        border-radius: 1rem;
        border: 1px solid rgba(232, 235, 235, 1);
    }

    .content-key-feature2 {
        border-radius: 1rem;
        border: 1px solid rgba(232, 235, 235, 1);
    }

    .donut-chart {
        width: 10rem;
        height: 10rem;
        border-radius: 50%;
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        background: conic-gradient(#8a3ffc 0% var(--progress-percent), #e8d9ff var(--progress-percent) 100%);
    }

    .donut-chart::before {
        content: "";
        position: absolute;
        width: 140px;
        height: 140px;
        background: #ffffff;
        border-radius: 50%;
    }

    .donut-chart-center {
        position: relative;
        z-index: 1;
        text-align: center;
        line-height: 1.4;
    }

    .donut-amount-current,
    .donut-amount-total {
        display: block;
        font-size: 18px;
        font-weight: 600;
        color: #212529;
    }

    .donut-amount-total {
        font-weight: 500;
    }

    .donut-days-left {
        display: block;
        font-size: 14px;
        color: #6c757d;
        margin-top: 4px;
    }

    /* Info box di sebelah kanan */
    .info-box-detail {
        background-color: #f1f3f5;
        /* Abu-abu muda (bg-light) */
        position: relative;
        overflow: hidden;
        /* Untuk ikon background */
        height: 100%;
    }

    .info-box-detail h3 {
        font-size: 24px;
        font-weight: 700;
        color: #212529;
        margin-bottom: 8px;
        position: relative;
        z-index: 1;
    }

    .info-box-date {
        font-size: 14px;
        color: #495057;
        margin-bottom: 24px;
        position: relative;
        z-index: 1;
    }

    .export-button {
        position: relative;
        z-index: 1;
    }

    /* Ikon background di dalam info-box */
    .info-box-bg-icon {
        position: absolute;
        right: -20px;
        bottom: -15px;
        width: 120px;
        height: 120px;
        color: #ced4da;
        opacity: 0.6;
        z-index: 0;
    }

    .title-user-success h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 2rem;
        font-weight: 600;
    }

    .marks h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 600;
    }

    .marks p {
        color: rgba(61, 61, 66, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .text-card-mark p {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 400;
    }

    .budgeting h1 {
        color: rgba(26, 54, 55, 1);
        font-size: 1.25rem;
        font-weight: 600;
    }

    .marks h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1.125rem;
        font-weight: 600;
    }

    .marks p {
        color: rgba(61, 61, 66, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .text-card-mark p {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 400;
    }

    .budgeting h1 {
        color: rgba(26, 54, 55, 1);
        font-size: 1.25rem;
        font-weight: 600;
    }

    .card-mark-tengah .marks h3 {
        color: rgba(255, 255, 255, 1);
        font-size: 1.125rem;
        font-weight: 600;
    }

    .card-mark-tengah .marks p {
        color: rgba(255, 255, 255, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .card-mark-tengah .text-card-mark p {
        color: rgba(255, 255, 255, 1);
        font-size: 1rem;
        font-weight: 400;
    }

    .card-mark-tengah .budgeting h1 {
        color: rgba(255, 255, 255, 1);
        font-size: 1.25rem;
        font-weight: 600;
    }

    .card-mark-tengah .img-card-mark-tengah img {
        width: 100%;
        height: auto;
        border-radius: 1.25rem;
    }

    .card-mark-tengah {
        background-color: rgba(70, 147, 150, 1);
        border-radius: 1.5rem;
    }

    .card-mark {
        background-color: rgba(255, 255, 255, 1);
        border-radius: 1.5rem;
        border: 1px solid rgba(143, 143, 146, 0.24);
    }

    .heading-security h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 2rem;
        font-weight: 600;
        line-height: 140%;
    }

    .heading-security p {
        color: rgba(163, 160, 160, 1);
        font-size: 1rem;
        font-weight: 500;
        line-height: 140%;
    }

    .content-security {
        background: linear-gradient(158.93deg, #FFFFFF 13.91%, #EAF9FB 106.7%);
        border-radius: 1.5rem;
        border: 1px solid rgba(143, 143, 146, 0.24);
    }

    .content-security img {
        width: 3.5rem;
        height: 3.5rem;
    }

    .content-security h3 {
        color: rgba(12, 12, 19, 1);
        font-size: 1.5rem;
        font-weight: 600;
        line-height: 140%;
    }

    .content-security p {
        color: rgba(61, 61, 66, 1);
        font-size: 1rem;
        font-weight: 500;
        line-height: 140%;
    }

    .title-tips h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 2rem;
        font-weight: 600;
        line-height: 140%;
    }

    .title-tips p {
        color: rgba(163, 160, 160, 1);
        font-size: 1rem;
        font-weight: 500;
        line-height: 140%;
    }

    .card-tips {
        border-radius: 1.5rem;
        border: 1px solid rgba(143, 143, 146, 0.24);
    }

    .card-tips-img img {
        width: 100%;
        height: 10rem;
        border-radius: 1.5rem;
    }

    .card-tips h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 700;
    }

    .card-tips p {
        color: rgba(163, 160, 160, 1);
        font-size: 1rem;
        font-weight: 400;
    }

    .card-tips .divider {
        width: 100%;
        height: 2px;
        background-color: rgba(163, 160, 160, 1);
    }

    .card-tips-icon p {
        color: rgba(163, 160, 160, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .btn-tips {
        background-color: rgba(70, 147, 150, 1);
        color: rgba(255, 255, 255, 1);
        font-weight: 500;
        border: 1px solid rgba(150, 150, 149, 0.15);
    }

    .contact {
        background: linear-gradient(358.33deg, #2A9286 12.18%, #3CB4A6 68.04%);
        border-radius: 1.5rem;
    }

    .contact h1 {
        color: rgba(255, 255, 255, 1);
        font-size: 2rem;
        font-weight: 600;
        line-height: 120%;
    }

    .contact p {
        color: rgba(255, 255, 255, 1);
        font-size: 1rem;
        font-weight: 500;
        line-height: 160%;
    }

    .btn-contact {
        font-size: 1rem;
        font-weight: 500;
        background-color: rgba(255, 255, 255, 1);
    }

    .title-footer h3 {
        font-size: 1rem;
        font-weight: 600;
        color: rgba(0, 0, 0, 1);
    }

    .content-footer h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 700;
    }

    .content-footer p {
        color: rgba(111, 128, 129, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .divider-footer {
        width: 100%;
        height: 1px;
        background-color: rgba(111, 128, 129, 1);
    }

    .footer-bawah {
        color: rgba(111, 128, 129, 1);
        font-size: 1rem;
        font-weight: 500;
    }
}

@media (min-width:1024px) {
    body {
        font-family: 'Montserrat', sans-serif;
    }

    header {
        background-color: rgba(26, 54, 55, 1);
    }

    .navbar-brand img {
        width: 2.100rem;
    }

    .navbar-brand {
        color: rgba(255, 255, 255, 1);
        font-size: 1.375rem;
    }

    .navbar-nav li a {
        color: rgba(255, 255, 255, 1);
        font-weight: 500;
        font-size: 1rem;
    }

    .btn-login-hero {
        background-color: rgba(255, 255, 255, 1);
        color: rgba(12, 18, 19, 1);
        font-weight: 500;
        font-size: 1rem;
        border: 1px solid rgba(143, 146, 146, 0.15);
    }

    .btn-register-hero {
        background-color: transparent;
        color: rgba(255, 255, 255, 1);
        font-weight: 500;
        font-size: 1rem;
        border: 1px solid rgba(255, 255, 255, 1);
    }

    .reviews-hero img {
        width: 2rem;
        height: 2rem;
        margin-left: -0.5rem;
        border: 1px solid rgba(26, 164, 123, 1);
    }

    .reviews-hero .reviews-hero-plus {
        width: 2rem;
        height: 2rem;
        margin-left: -0.5rem;
        background-color: rgba(26, 164, 123, 1);
        color: rgba(255, 255, 255, 1);
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 2rem;
        font-weight: 200;
    }

    .reviews-hero-star img {
        width: 1rem;
        height: 1rem;
        object-fit: cover;
    }

    .reviews-hero-star .riview-text {
        color: rgba(232, 246, 242, 1);
        font-size: 0.875rem;
        font-weight: 600;
    }

    .title-hero h1 {
        color: rgba(255, 255, 255, 1);
        font-size: 3.75rem;
        font-weight: 500;
        line-height: 140%;
    }

    .title-hero p {
        color: rgba(232, 246, 242, 1);
        font-size: 1.25rem;
        font-weight: 400;
        line-height: 140%;
    }

    .btn-get-started-hero {
        background-color: rgba(255, 255, 255, 1);
        color: rgba(12, 18, 19, 1);
        font-weight: 500;
        font-size: 1rem;
        border: 1px solid rgba(143, 146, 146, 0.15);
    }

    .btn-learn-more-hero {
        background-color: transparent;
        color: rgba(255, 255, 255, 1);
        font-weight: 500;
        font-size: 1rem;
        border: 1px solid rgba(255, 255, 255, 1);
    }

    .img-hero-1-section img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .card-saving {
        color: rgba(255, 255, 255, 1);
        font-size: 3.375rem;
        font-weight: 500;
    }

    .card-saving img {
        width: 1.25rem;
        height: 1.25rem;
        align-self: center;
    }

    .card-user span {
        color: rgba(255, 255, 255, 1);
        font-size: 1.125rem;
        font-weight: 600;
    }

    .card-saving-section {
        height: auto;
        background-color: rgba(255, 255, 255, 1);
        border: 1px solid rgba(193, 193, 193, 1);
        border-radius: 1rem;
    }

    .card-saving-section img {
        width: 2rem;
        height: 2rem;
        object-fit: cover;
    }

    .card-saving-section h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 2rem;
        font-weight: 700;
    }

    .card-saving-section .card-saving-text p {
        color: rgba(107, 114, 128, 1);
        font-size: 1.125rem;
        font-weight: 600;
    }

    .card-saving-section .card-saving-text span {
        color: rgba(14, 102, 67, 1);
        font-size: 1.125rem;
        font-weight: 600;
    }

    .card-saving-section .card-saving-text img {
        width: 1.125rem;
        height: 1.125rem;
    }

    .logo-partner p {
        color: rgba(157, 169, 169, 1);
        font-size: 1.125rem;
        font-weight: 600;
    }

    .img-logo-partner img {
        width: 9.375rem;
        height: 2.5rem;
        object-fit: contain;
    }

    .heading-about-us h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 2.25rem;
        font-weight: 600;
        line-height: 140%;
    }

    .heading-about-us p {
        color: rgba(163, 160, 160, 1);
        font-size: 1.20rem;
        font-weight: 500;
        line-height: 140%;
    }

    .content-about-us {
        background: linear-gradient(158.93deg, #FFFFFF 13.91%, #EAF9FB 106.7%);
        border-radius: 1.5rem;
        border: 1px solid rgba(143, 143, 146, 0.24);
    }

    .content-about-us img {
        width: 3.5rem;
        height: 3.5rem;
    }

    .content-about-us h3 {
        color: rgba(12, 12, 19, 1);
        font-size: 1.5rem;
        font-weight: 600;
        line-height: 140%;
    }

    .content-about-us p {
        color: rgba(61, 61, 66, 1);
        font-size: 1rem;
        font-weight: 500;
        line-height: 140%;
    }

    .heading-key-feature h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 2.25rem;
        font-weight: 600;
        line-height: 140%;
    }

    .content-heading-feature {
        background-color: rgba(45, 185, 118, 0.1);
        border-radius: 1rem;
        border: 1px solid rgba(232, 235, 235, 1);
    }

    .content-heading-feature1 {
        background-color: rgba(250, 250, 250, 1);
        border-radius: 1rem;
        border: 1px solid rgba(232, 235, 235, 1);
    }

    .content-heading-feature h3,
    .content-heading-feature1 h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1.5rem;
        font-weight: 600;
        line-height: 140%;
    }

    .content-heading-feature p {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 600;
        line-height: 140%;
    }

    .saving-key-feature {
        color: rgba(157, 169, 169, 1);
        font-size: 1rem;
        font-weight: 600;
        line-height: 140%;
    }

    .title-saving h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 2rem;
        line-height: 150%;
        font-weight: 500;
    }

    .title-saving p a {
        color: rgba(126, 65, 255, 1);
        text-decoration: none;
        font-weight: 500;
    }

    .card-saving1 {
        border-left: 1px dashed rgba(111, 128, 129, 1);
    }

    .card-saving1 .progress {
        background-color: rgba(126, 65, 255, 0.2);
    }

    .card-saving1 .progress-bar {
        background-color: rgba(126, 65, 255, 1);
    }

    .card-saving1 h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .card-saving1 p {
        color: rgba(45, 185, 118, 1);
    }

    .card-saving1 span {
        color: rgba(157, 169, 169, 1);
    }

    .card-saving2 {
        border-left: 1px dashed rgba(111, 128, 129, 1);
    }

    .card-saving2 .progress {
        background-color: rgba(45, 185, 118, 0.2);
    }

    .card-saving2 .progress-bar {
        background-color: rgba(45, 185, 118, 1);
    }

    .card-saving2 h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .card-saving2 p {
        color: rgba(45, 185, 118, 1);
    }

    .card-saving2 span {
        color: rgba(157, 169, 169, 1);
    }

    .card-saving3 {
        border-left: 1px dashed rgba(111, 128, 129, 1);
    }

    .card-saving3 .progress {
        background-color: rgba(249, 224, 54, 0.2);
    }

    .card-saving3 .progress-bar {
        background-color: rgba(249, 224, 54, 1);
    }

    .card-saving3 h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .card-saving3 p {
        color: rgba(45, 185, 118, 1);
    }

    .card-saving3 span {
        color: rgba(157, 169, 169, 1);
    }

    .content-key-feature1 {
        border-radius: 1rem;
        border: 1px solid rgba(232, 235, 235, 1);
    }

    .content-key-feature2 {
        border-radius: 1rem;
        border: 1px solid rgba(232, 235, 235, 1);
    }

    .donut-chart {
        width: 10rem;
        height: 10rem;
        border-radius: 50%;
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        background: conic-gradient(#8a3ffc 0% var(--progress-percent), #e8d9ff var(--progress-percent) 100%);
    }

    .donut-chart::before {
        content: "";
        position: absolute;
        width: 140px;
        height: 140px;
        background: #ffffff;
        border-radius: 50%;
    }

    .donut-chart-center {
        position: relative;
        z-index: 1;
        text-align: center;
        line-height: 1.4;
    }

    .donut-amount-current,
    .donut-amount-total {
        display: block;
        font-size: 18px;
        font-weight: 600;
        color: #212529;
    }

    .donut-amount-total {
        font-weight: 500;
    }

    .donut-days-left {
        display: block;
        font-size: 14px;
        color: #6c757d;
        margin-top: 4px;
    }

    /* Info box di sebelah kanan */
    .info-box-detail {
        background-color: #f1f3f5;
        /* Abu-abu muda (bg-light) */
        position: relative;
        overflow: hidden;
        /* Untuk ikon background */
        height: 100%;
    }

    .info-box-detail h3 {
        font-size: 24px;
        font-weight: 700;
        color: #212529;
        margin-bottom: 8px;
        position: relative;
        z-index: 1;
    }

    .info-box-date {
        font-size: 14px;
        color: #495057;
        margin-bottom: 24px;
        position: relative;
        z-index: 1;
    }

    .export-button {
        position: relative;
        z-index: 1;
    }

    /* Ikon background di dalam info-box */
    .info-box-bg-icon {
        position: absolute;
        right: -20px;
        bottom: -15px;
        width: 120px;
        height: 120px;
        color: #ced4da;
        opacity: 0.6;
        z-index: 0;
    }

    .title-user-success h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 2.25rem;
        font-weight: 600;
    }

    .marks h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1.125rem;
        font-weight: 600;
    }

    .marks p {
        color: rgba(61, 61, 66, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .text-card-mark p {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 400;
    }

    .budgeting h1 {
        color: rgba(26, 54, 55, 1);
        font-size: 1.25rem;
        font-weight: 600;
    }

    .marks h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1.125rem;
        font-weight: 600;
    }

    .marks p {
        color: rgba(61, 61, 66, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .text-card-mark p {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 400;
    }

    .budgeting h1 {
        color: rgba(26, 54, 55, 1);
        font-size: 1.25rem;
        font-weight: 600;
    }

    .card-mark-tengah .marks h3 {
        color: rgba(255, 255, 255, 1);
        font-size: 1.125rem;
        font-weight: 600;
    }

    .card-mark-tengah .marks p {
        color: rgba(255, 255, 255, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .card-mark-tengah .text-card-mark p {
        color: rgba(255, 255, 255, 1);
        font-size: 1rem;
        font-weight: 400;
    }

    .card-mark-tengah .budgeting h1 {
        color: rgba(255, 255, 255, 1);
        font-size: 1.25rem;
        font-weight: 600;
    }

    .card-mark-tengah .img-card-mark-tengah img {
        width: 100%;
        height: auto;
        border-radius: 1.25rem;
    }

    .card-mark-tengah {
        background-color: rgba(70, 147, 150, 1);
        border-radius: 1.5rem;
    }

    .card-mark {
        background-color: rgba(255, 255, 255, 1);
        border-radius: 1.5rem;
        border: 1px solid rgba(143, 143, 146, 0.24);
    }

    .heading-security h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 2.25rem;
        font-weight: 600;
        line-height: 140%;
    }

    .heading-security p {
        color: rgba(163, 160, 160, 1);
        font-size: 1.20rem;
        font-weight: 500;
        line-height: 140%;
    }

    .content-security {
        background: linear-gradient(158.93deg, #FFFFFF 13.91%, #EAF9FB 106.7%);
        border-radius: 1.5rem;
        border: 1px solid rgba(143, 143, 146, 0.24);
    }

    .content-security img {
        width: 3.5rem;
        height: 3.5rem;
    }

    .content-security h3 {
        color: rgba(12, 12, 19, 1);
        font-size: 1.5rem;
        font-weight: 600;
        line-height: 140%;
    }

    .content-security p {
        color: rgba(61, 61, 66, 1);
        font-size: 1rem;
        font-weight: 500;
        line-height: 140%;
    }

    .title-tips h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 2.25rem;
        font-weight: 600;
        line-height: 140%;
    }

    .title-tips p {
        color: rgba(163, 160, 160, 1);
        font-size: 1.20rem;
        font-weight: 500;
        line-height: 140%;
    }

    .card-tips {
        border-radius: 1.5rem;
        border: 1px solid rgba(143, 143, 146, 0.24);
    }

    .card-tips-img img {
        width: 100%;
        height: 10rem;
        border-radius: 1.5rem;
    }

    .card-tips h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 700;
    }

    .card-tips p {
        color: rgba(163, 160, 160, 1);
        font-size: 1rem;
        font-weight: 400;
    }

    .card-tips .divider {
        width: 100%;
        height: 2px;
        background-color: rgba(163, 160, 160, 1);
    }

    .card-tips-icon p {
        color: rgba(163, 160, 160, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .btn-tips {
        background-color: rgba(70, 147, 150, 1);
        color: rgba(255, 255, 255, 1);
        font-weight: 500;
        border: 1px solid rgba(150, 150, 149, 0.15);
    }

    .contact {
        background: linear-gradient(358.33deg, #2A9286 12.18%, #3CB4A6 68.04%);
        border-radius: 1.5rem;
    }

    .contact h1 {
        color: rgba(255, 255, 255, 1);
        font-size: 3rem;
        font-weight: 600;
        line-height: 120%;
    }

    .contact p {
        color: rgba(255, 255, 255, 1);
        font-size: 1.125rem;
        font-weight: 500;
        line-height: 160%;
    }

    .btn-contact {
        font-size: 1rem;
        font-weight: 500;
        background-color: rgba(255, 255, 255, 1);
    }

    .title-footer h3 {
        font-size: 1rem;
        font-weight: 600;
        color: rgba(0, 0, 0, 1);
    }

    .content-footer h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 700;
    }

    .content-footer p {
        color: rgba(111, 128, 129, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .divider-footer {
        width: 100%;
        height: 1px;
        background-color: rgba(111, 128, 129, 1);
    }

    .footer-bawah {
        color: rgba(111, 128, 129, 1);
        font-size: 1rem;
        font-weight: 500;
    }
}

@media (min-width:1440px) {
    body {
        font-family: 'Montserrat', sans-serif;
    }

    header {
        background-color: rgba(26, 54, 55, 1);
    }

    .navbar-brand img {
        width: 2.188rem;
    }

    .navbar-brand {
        color: rgba(255, 255, 255, 1);
        font-size: 1.375rem;
    }

    .navbar-nav li a {
        color: rgba(255, 255, 255, 1);
        font-weight: 500;
        font-size: 1rem;
    }

    .btn-login-hero {
        background-color: rgba(255, 255, 255, 1);
        color: rgba(12, 18, 19, 1);
        font-weight: 500;
        font-size: 1rem;
        border: 1px solid rgba(143, 146, 146, 0.15);
    }

    .btn-register-hero {
        background-color: transparent;
        color: rgba(255, 255, 255, 1);
        font-weight: 500;
        font-size: 1rem;
        border: 1px solid rgba(255, 255, 255, 1);
    }

    .reviews-hero img {
        width: 2rem;
        height: 2rem;
        margin-left: -0.5rem;
        border: 1px solid rgba(26, 164, 123, 1);
    }

    .reviews-hero .reviews-hero-plus {
        width: 2rem;
        height: 2rem;
        margin-left: -0.5rem;
        background-color: rgba(26, 164, 123, 1);
        color: rgba(255, 255, 255, 1);
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 2rem;
        font-weight: 200;
    }

    .reviews-hero-star img {
        width: 1rem;
        height: 1rem;
        object-fit: cover;
    }

    .reviews-hero-star .riview-text {
        color: rgba(232, 246, 242, 1);
        font-size: 0.875rem;
        font-weight: 600;
    }

    .title-hero h1 {
        color: rgba(255, 255, 255, 1);
        font-size: 4rem;
        font-weight: 500;
        line-height: 140%;
    }

    .title-hero p {
        color: rgba(232, 246, 242, 1);
        font-size: 1.25rem;
        font-weight: 400;
        line-height: 140%;
    }

    .btn-get-started-hero {
        background-color: rgba(255, 255, 255, 1);
        color: rgba(12, 18, 19, 1);
        font-weight: 500;
        font-size: 1rem;
        border: 1px solid rgba(143, 146, 146, 0.15);
    }

    .btn-learn-more-hero {
        background-color: transparent;
        color: rgba(255, 255, 255, 1);
        font-weight: 500;
        font-size: 1rem;
        border: 1px solid rgba(255, 255, 255, 1);
    }

    .img-hero-1-section img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .card-saving {
        color: rgba(255, 255, 255, 1);
        font-size: 3.375rem;
        font-weight: 500;
    }

    .card-saving img {
        width: 1.25rem;
        height: 1.25rem;
        align-self: center;
    }

    .card-user span {
        color: rgba(255, 255, 255, 1);
        font-size: 1.125rem;
        font-weight: 600;
    }

    .card-saving-section {
        height: auto;
        background-color: rgba(255, 255, 255, 1);
        border: 1px solid rgba(193, 193, 193, 1);
        border-radius: 1rem;
    }

    .card-saving-section img {
        width: 2rem;
        height: 2rem;
        object-fit: cover;
    }

    .card-saving-section h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 2rem;
        font-weight: 700;
    }

    .card-saving-section .card-saving-text p {
        color: rgba(107, 114, 128, 1);
        font-size: 1.125rem;
        font-weight: 600;
    }

    .card-saving-section .card-saving-text span {
        color: rgba(14, 102, 67, 1);
        font-size: 1.125rem;
        font-weight: 600;
    }

    .card-saving-section .card-saving-text img {
        width: 1.125rem;
        height: 1.125rem;
    }

    .logo-partner p {
        color: rgba(157, 169, 169, 1);
        font-size: 1.125rem;
        font-weight: 600;
    }

    .img-logo-partner img {
        width: 100%;
        height: 2.5rem;
        object-fit: cover;
    }

    .heading-about-us h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 2.5rem;
        font-weight: 600;
        line-height: 140%;
    }

    .heading-about-us p {
        color: rgba(163, 160, 160, 1);
        font-size: 1.25rem;
        font-weight: 500;
        line-height: 140%;
    }

    .content-about-us {
        background: linear-gradient(158.93deg, #FFFFFF 13.91%, #EAF9FB 106.7%);
        border-radius: 1.5rem;
        border: 1px solid rgba(143, 143, 146, 0.24);
    }

    .content-about-us img {
        width: 3.5rem;
        height: 3.5rem;
    }

    .content-about-us h3 {
        color: rgba(12, 12, 19, 1);
        font-size: 1.5rem;
        font-weight: 600;
        line-height: 140%;
    }

    .content-about-us p {
        color: rgba(61, 61, 66, 1);
        font-size: 1rem;
        font-weight: 500;
        line-height: 140%;
    }

    .heading-key-feature h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 2.5rem;
        font-weight: 600;
        line-height: 140%;
    }

    .content-heading-feature {
        background-color: rgba(45, 185, 118, 0.1);
        border-radius: 1rem;
        border: 1px solid rgba(232, 235, 235, 1);
    }

    .content-heading-feature1 {
        background-color: rgba(250, 250, 250, 1);
        border-radius: 1rem;
        border: 1px solid rgba(232, 235, 235, 1);
    }

    .content-heading-feature h3,
    .content-heading-feature1 h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1.5rem;
        font-weight: 600;
        line-height: 140%;
    }

    .content-heading-feature p {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 600;
        line-height: 140%;
    }

    .saving-key-feature {
        color: rgba(157, 169, 169, 1);
        font-size: 1rem;
        font-weight: 600;
        line-height: 140%;
    }

    .title-saving h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 2rem;
        line-height: 150%;
        font-weight: 500;
    }

    .title-saving p a {
        color: rgba(126, 65, 255, 1);
        text-decoration: none;
        font-weight: 500;
    }

    .card-saving1 {
        border-left: 1px dashed rgba(111, 128, 129, 1);
    }

    .card-saving1 .progress {
        background-color: rgba(126, 65, 255, 0.2);
    }

    .card-saving1 .progress-bar {
        background-color: rgba(126, 65, 255, 1);
    }

    .card-saving1 h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .card-saving1 p {
        color: rgba(45, 185, 118, 1);
    }

    .card-saving1 span {
        color: rgba(157, 169, 169, 1);
    }

    .card-saving2 {
        border-left: 1px dashed rgba(111, 128, 129, 1);
    }

    .card-saving2 .progress {
        background-color: rgba(45, 185, 118, 0.2);
    }

    .card-saving2 .progress-bar {
        background-color: rgba(45, 185, 118, 1);
    }

    .card-saving2 h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .card-saving2 p {
        color: rgba(45, 185, 118, 1);
    }

    .card-saving2 span {
        color: rgba(157, 169, 169, 1);
    }

    .card-saving3 {
        border-left: 1px dashed rgba(111, 128, 129, 1);
    }

    .card-saving3 .progress {
        background-color: rgba(249, 224, 54, 0.2);
    }

    .card-saving3 .progress-bar {
        background-color: rgba(249, 224, 54, 1);
    }

    .card-saving3 h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .card-saving3 p {
        color: rgba(45, 185, 118, 1);
    }

    .card-saving3 span {
        color: rgba(157, 169, 169, 1);
    }

    .content-key-feature1 {
        border-radius: 1rem;
        border: 1px solid rgba(232, 235, 235, 1);
    }

    .content-key-feature2 {
        border-radius: 1rem;
        border: 1px solid rgba(232, 235, 235, 1);
    }

    .donut-chart {
        width: 10rem;
        height: 10rem;
        border-radius: 50%;
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        background: conic-gradient(#8a3ffc 0% var(--progress-percent), #e8d9ff var(--progress-percent) 100%);
    }

    .donut-chart::before {
        content: "";
        position: absolute;
        width: 140px;
        height: 140px;
        background: #ffffff;
        border-radius: 50%;
    }

    .donut-chart-center {
        position: relative;
        z-index: 1;
        text-align: center;
        line-height: 1.4;
    }

    .donut-amount-current,
    .donut-amount-total {
        display: block;
        font-size: 18px;
        font-weight: 600;
        color: #212529;
    }

    .donut-amount-total {
        font-weight: 500;
    }

    .donut-days-left {
        display: block;
        font-size: 14px;
        color: #6c757d;
        margin-top: 4px;
    }

    /* Info box di sebelah kanan */
    .info-box-detail {
        background-color: #f1f3f5;
        /* Abu-abu muda (bg-light) */
        position: relative;
        overflow: hidden;
        /* Untuk ikon background */
        height: 100%;
    }

    .info-box-detail h3 {
        font-size: 24px;
        font-weight: 700;
        color: #212529;
        margin-bottom: 8px;
        position: relative;
        z-index: 1;
    }

    .info-box-date {
        font-size: 14px;
        color: #495057;
        margin-bottom: 24px;
        position: relative;
        z-index: 1;
    }

    .export-button {
        position: relative;
        z-index: 1;
    }

    /* Ikon background di dalam info-box */
    .info-box-bg-icon {
        position: absolute;
        right: -20px;
        bottom: -15px;
        width: 120px;
        height: 120px;
        color: #ced4da;
        opacity: 0.6;
        z-index: 0;
    }

    .title-user-success h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 2.5rem;
        font-weight: 600;
    }

    .marks h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1.125rem;
        font-weight: 600;
    }

    .marks p {
        color: rgba(61, 61, 66, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .text-card-mark p {
        color: rgba(0, 0, 0, 1);
        font-size: 1.125rem;
        font-weight: 400;
    }

    .budgeting h1 {
        color: rgba(26, 54, 55, 1);
        font-size: 1.25rem;
        font-weight: 600;
    }

    .marks h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1.125rem;
        font-weight: 600;
    }

    .marks p {
        color: rgba(61, 61, 66, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .text-card-mark p {
        color: rgba(0, 0, 0, 1);
        font-size: 1.125rem;
        font-weight: 400;
    }

    .budgeting h1 {
        color: rgba(26, 54, 55, 1);
        font-size: 1.25rem;
        font-weight: 600;
    }

    .card-mark-tengah .marks h3 {
        color: rgba(255, 255, 255, 1);
        font-size: 1.125rem;
        font-weight: 600;
    }

    .card-mark-tengah .marks p {
        color: rgba(255, 255, 255, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .card-mark-tengah .text-card-mark p {
        color: rgba(255, 255, 255, 1);
        font-size: 1.125rem;
        font-weight: 400;
    }

    .card-mark-tengah .budgeting h1 {
        color: rgba(255, 255, 255, 1);
        font-size: 1.25rem;
        font-weight: 600;
    }

    .card-mark-tengah .img-card-mark-tengah img {
        width: 100%;
        height: auto;
        border-radius: 1.25rem;
    }

    .card-mark-tengah {
        background-color: rgba(70, 147, 150, 1);
        border-radius: 1.5rem;
    }

    .card-mark {
        background-color: rgba(255, 255, 255, 1);
        border-radius: 1.5rem;
        border: 1px solid rgba(143, 143, 146, 0.24);
    }

    .heading-security h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 2.5rem;
        font-weight: 600;
        line-height: 140%;
    }

    .heading-security p {
        color: rgba(163, 160, 160, 1);
        font-size: 1.25rem;
        font-weight: 500;
        line-height: 140%;
    }

    .content-security {
        background: linear-gradient(158.93deg, #FFFFFF 13.91%, #EAF9FB 106.7%);
        border-radius: 1.5rem;
        border: 1px solid rgba(143, 143, 146, 0.24);
    }

    .content-security img {
        width: 3.5rem;
        height: 3.5rem;
    }

    .content-security h3 {
        color: rgba(12, 12, 19, 1);
        font-size: 1.5rem;
        font-weight: 600;
        line-height: 140%;
    }

    .content-security p {
        color: rgba(61, 61, 66, 1);
        font-size: 1rem;
        font-weight: 500;
        line-height: 140%;
    }

    .title-tips h1 {
        color: rgba(0, 0, 0, 1);
        font-size: 2.5rem;
        font-weight: 600;
        line-height: 140%;
    }

    .title-tips p {
        color: rgba(163, 160, 160, 1);
        font-size: 1.25rem;
        font-weight: 500;
        line-height: 140%;
    }

    .card-tips {
        border-radius: 1.5rem;
        border: 1px solid rgba(143, 143, 146, 0.24);
    }

    .card-tips-img img {
        width: 100%;
        height: 15rem;
        border-radius: 1.5rem;
    }

    .card-tips h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 700;
    }

    .card-tips p {
        color: rgba(163, 160, 160, 1);
        font-size: 1rem;
        font-weight: 400;
    }

    .card-tips .divider {
        width: 100%;
        height: 2px;
        background-color: rgba(163, 160, 160, 1);
    }

    .card-tips-icon p {
        color: rgba(163, 160, 160, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .btn-tips {
        background-color: rgba(70, 147, 150, 1);
        color: rgba(255, 255, 255, 1);
        font-weight: 500;
        border: 1px solid rgba(150, 150, 149, 0.15);
    }

    .contact {
        background: linear-gradient(358.33deg, #2A9286 12.18%, #3CB4A6 68.04%);
        border-radius: 1.5rem;
    }

    .contact h1 {
        color: rgba(255, 255, 255, 1);
        font-size: 3rem;
        font-weight: 600;
        line-height: 120%;
    }

    .contact p {
        color: rgba(255, 255, 255, 1);
        font-size: 1.125rem;
        font-weight: 500;
        line-height: 160%;
    }

    .btn-contact {
        font-size: 1rem;
        font-weight: 500;
        background-color: rgba(255, 255, 255, 1);
    }

    .title-footer h3 {
        font-size: 1rem;
        font-weight: 600;
        color: rgba(0, 0, 0, 1);
    }

    .content-footer h3 {
        color: rgba(0, 0, 0, 1);
        font-size: 1rem;
        font-weight: 700;
    }

    .content-footer p {
        color: rgba(111, 128, 129, 1);
        font-size: 1rem;
        font-weight: 500;
    }

    .divider-footer {
        width: 100%;
        height: 1px;
        background-color: rgba(111, 128, 129, 1);
    }

    .footer-bawah {
        color: rgba(111, 128, 129, 1);
        font-size: 1rem;
        font-weight: 500;
    }
}