.color-violet {
    color: #7724FF!important
}

.color-raspberry {
    color: #D40199!important
}

.bg-orange {
    background-color: #ff6200
}

.bg-sun {
    background-color: var(--color-sun500)!important
}

.bg-sky {
    background-color: var(--color-sky500)!important
}

.bg-blush {
    background-color: var(--color-blush500)!important
}

.bg-raspberry {
    background-color: #D40199
}

.bg-grey01 {
    background-color: #F7F4F1!important
}

.bg-grey01_full {
    background-color: #F7F4F1!important;
    position: relative
}

.bg-grey01_full:before {
    content: "";
    display: block;
    position: absolute;
    height: 100%;
    background-color: #F7F4F1;
    width: 1000px;
    top: 0;
    right: 100%
}

.bg-grey01_full:after {
    content: "";
    display: block;
    position: absolute;
    height: 100%;
    background-color: #F7F4F1;
    width: 1000px;
    top: 0;
    left: 100%
}

.bg-white {
    background-color: #FFF!important
}

.page-subtitle {
    display: none
}

@media(min-width: 992px) {
    .page-subtitle {
        display:block;
        font-size: 30px;
        margin-top: 45px;
        margin-bottom: 90px
    }
}

.ing-cards h2 {
    font-family: INGDisplay,Arial;
    font-size: 48px;
    font-style: normal;
    font-weight: 700;
    line-height: 1.166;
    letter-spacing: -.48px
}

.ing-cards_title {
    max-width: 820px;
    text-align: center;
    margin: 0 auto 60px
}

.ing-cards h3 {
    font-family: INGDisplay,Arial;
    font-size: 32px;
    margin: 0
}

.ing-cards p {
    line-height: 1.6
}

.ing-cards .grid {
    padding: 0
}

.ing-cards .item {
    padding: 0 15px;
    display: flex;
    margin-bottom: 30px
}

.ing-cards .item.item-full {
    margin-bottom: 0
}

.ing-cards .item-title {
    text-align: center
}

.ing-cards .item:not(.item-title) .item-container {
    display: flex;
    padding: 30px 30px 104px;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    border-radius: 16px;
    position: relative;
    overflow: hidden
}

.item-card .item-container {
    background-color: #FABEFE
}

.ing-cards a.item-link {
    background-color: #0D0804;
    color: #fff;
    font-family: ing_me_bold;
    padding: 10px 15px;
    border-radius: 22px
}

.ing-cards a.item-link:hover,.ing-cards a.item-link:focus {
    color: #fff;
    box-shadow: 0 0 0 .2rem rgb(255 98 0 / .25)
}

.ing-cards .item-has-link a.item-link {
    position: absolute;
    left: 30px;
    bottom: 30px
}

.item-card .item-container.item-has-image {
    padding-bottom: 304px!important
}

.ing-cards .item-container.item-has-image a.item-link {
    bottom: 230px
}

.ing-cards .item-image-container {
    position: absolute;
    bottom: -50px;
    left: 0;
    width: 100%;
    text-align: center
}

.ing-cards .item-image-container img {
    height: 100%;
    max-height: 300px;
    display: inline-block;
    vertical-align: top
}

@media(min-width: 992px) {
    .ing-cards .item-title {
        text-align:left
    }
}

.promo-banner {
    position: relative;
    margin: 30px -15px 60px
}

.promo-banner_content {
    display: flex;
    height: 100%;
    padding: 30px;
    align-items: center
}

.promo-banner_content h2 {
    color: #101010;
    text-align: center;
    font-family: INGDisplay,Arial;
    font-size: 48px;
    line-height: 1em;
    letter-spacing: -.48px
}

@media(min-width: 992px) {
    .promo-banner_content {
        position:absolute;
        bottom: 0;
        right: 40px;
        max-width: 300px;
        max-height: 280px
    }
}

@media(min-width: 768px) {
    .promo-banner {
        margin:60px 0 90px
    }
}

@media(min-width: 992px) {
    .promo-banner {
        min-height:600px
    }

    .promo-banner_content {
        max-width: 360px;
        max-height: 320px;
        padding: 60px 30px
    }
}

.feature-banner {
    text-align: center;
    background: #FFFDFB;
    padding: 30px 15px 60px
}

.feature-banner h2 {
    font-family: INGDisplay,Arial;
    font-size: 48px
}

.feature-banner p {
    font-size: 19px
}

.feature-banner_app-list {
    max-width: 400px;
    margin: 15px auto;
    text-align: center
}

.ico-store {
    margin: auto;
    margin-bottom: 15px;
    max-width: 160px
}

.feature-banner_image-wrapper {
    width: 300px;
    position: relative
}

.feature-banner_image-container {
    padding-top: 120px;
    overflow: hidden;
    position: relative
}

.feature-banner_image-mask {
    padding: 50px;
    height: 300px;
    width: 300px;
    border-radius: 30px
}

.feature-banner_image-mask img {
    left: 30px;
    max-width: 240px;
    position: absolute;
    bottom: -60%;
    opacity: 0;
    transition: all 1s ease 0.3s
}

.feature-banner_image-wrapper.show .feature-banner_image-mask img {
    bottom: 0;
    opacity: 1;
    display: block
}

.feature-banner_image-wrapper .mini-blob {
    width: 80px;
    height: 80px;
    color: #fff;
    position: absolute;
    top: 60px;
    right: -20px;
    opacity: 0;
    z-index: 1;
    transition: all 1s ease 0.3s
}

.feature-banner_image-wrapper.show .mini-blob {
    right: 10px;
    opacity: 1
}

.mini-blob_overlay {
    position: relative;
    width: 80px;
    height: 80px
}

.mini-blob_overlay svg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%
}

.mini-blob .rating {
    position: absolute;
    z-index: 1;
    top: 20px;
    width: 100%;
    font-family: INGDisplay;
    font-size: 38.188px
}

.mini-blob .stars {
    position: absolute;
    bottom: 10px;
    width: 100%
}

@media(min-width: 576px) {
    .feature-banner_image-wrapper {
        width:400px
    }

    .feature-banner_image-mask {
        width: 400px;
        height: 400px
    }

    .feature-banner_image-mask img {
        left: 50px;
        max-width: 300px
    }

    .feature-banner h2 {
        font-size: 72px
    }
}

@media(min-width: 768px) {
    .feature-banner {
        margin:0 0 30px;
        padding: 90px 15px
    }

    .feature-banner h2 {
        font-size: 96px
    }
}

.hero-pop {
    margin-bottom: 30px
}

.section-full {
    padding: 60px 0
}

@media (min-width: 1440px) {
    .branding-wrapper,.hero,.layout {
        max-width:1440px
    }

    .hero-pop-content {
        padding: 90px
    }

    .hero-pop h1 {
        font-size: 80px;
        line-height: 1
    }
}

.main-footer,.page-container {
    overflow-x: hidden;
    max-width: 100vw;
    position: relative
}

.btn-blob_container {
    margin-top: 60px;
    display: flex;
    justify-content: center
}

.flex-center-v {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%
}

.flex-center {
    display: flex;
    justify-content: center;
    width: 100%
}

@media (min-width: 992px) {
    .grid .item-quarter {
        flex:0 0 25%;
        max-width: 25%
    }

    .grid .item-full {
        flex: 1
    }
}

.btn-blob {
    min-width: 140px
}

.footnotes-container {
    margin-top: 90px
}


h2 sup {
    top: -0.75em;
    font-size: 58%;
}