/* collapsible hero banner */
h1#page-title {
    display: block !important;
}

h1#page-title {
    max-width: 444px;
    font-size: 5.6rem;
    line-height: 6.2rem;
    letter-spacing: -2px;
}

.text-yellow-2 {
    color: #FFD842;
}


.banner-footer-text {
    color: white !important;
}

.banner-footer-text span {
    color: #FFBA00 !important;
}

.collapsible-hero-banner.offer-banner {
    width: 100%;
    height: auto;
    position: relative;
    min-height: 757px;
    padding-bottom: 64px;
    display: flex;
    justify-content: start;
    z-index: 1;
    margin-bottom: 3px;
    background-size: cover;
    background-position: center right;
    background-repeat: no-repeat;
    background-image: image-set(url("/_assets-custom/images/banners/gosmart3/banner-afro-man-phone.avif") type("image/avif"), url("/_assets-custom/images/banners/gosmart3/banner-afro-man-phone.jpg") type("image/jpeg"));
}

.collapsible-hero-banner.offer-banner:after {
    content: none;
    height: 55.6678467635402906208718626155878%;
    aspect-ratio: 27/22;
    bottom: 0;
    right: 47px;
    position: absolute;
    background-position: center right;
    background-repeat: no-repeat;
    background-size: cover;
    background-image: image-set(url("/_assets-custom/images/banners/gosmart3/banner-afro-man-phone_cutout.avif") type("image/avif"), url("/_assets-custom/images/banners/gosmart3/banner-afro-man-phone_cutout.png") type("image/png"));
    z-index: 2;
    pointer-events: none;
}

@media screen and (max-width: 1300px) {

    .collapsible-hero-banner.offer-banner,
    .collapsible-hero-banner.offer-banner:after {
        content: "";
        background-position-x: right -60px;
    }
}

@media screen and (max-width: 1261px) {

    .collapsible-hero-banner.offer-banner,
    .collapsible-hero-banner.offer-banner:after {
        background-position-x: right -100px;
    }
}

@media screen and (max-width: 1188px) {

    .collapsible-hero-banner.offer-banner,
    .collapsible-hero-banner.offer-banner:after {
        background-position-x: right -180px;
    }
}

@media screen and (max-width: 1100px) {

    .collapsible-hero-banner.offer-banner,
    .collapsible-hero-banner.offer-banner:after {
        background-position-x: right -260px;
    }
}

@media screen and (max-width: 1020px) {

    .collapsible-hero-banner.offer-banner,
    .collapsible-hero-banner.offer-banner:after {
        background-position-x: right -350px;
    }
}

@media screen and (max-width: 950px) {
    .collapsible-hero-banner.offer-banner:after {
        content: none;
    }
}

.bg-blur {
    backdrop-filter: blur(10px);
}

.snipe.pill {
    border-radius: 4px;
}

.snipe.pill span {
    font-size: 1.1rem;
    letter-spacing: 1px;
    font-weight: 500;
    line-height: 1.6rem;
    padding: 3px 10px;
}

.banner-text-main-img img {
    border-radius: 7.3%;
    position: relative;
    z-index: 1;
    max-width: 326px;
}

.collapsible-hero-banner.offer-banner .btn-explore-more {
    color: #FFF !important;
    border: 2px solid #FFF !important;
    padding: 14px 20px !important;
    font-size: 16px !important;
    line-height: 20px !important;
    height: unset !important;
}

.mobile-fs-16 {
    font-size: 16px !important;
}

.collapsible-hero-banner-subsection.collapsed {
    margin-top: -64px;
}

.collapsible-hero-banner.offer-banner .btn.custom-white {
    border: 1px solid #006AC3;
}

/* Wrapper for expanded content and gradient */
.expanded-gradient-wrapper {
    padding-bottom: 64px;
    /* Make room for the absolutely positioned button */
    position: relative;
    transition: background 0.5s ease;
}

.collapsible-hero-banner-subsection.expanded .expanded-gradient-wrapper {
    background: linear-gradient(180deg, #383235 16.71%, #003368 100%);
}

@media screen and (max-width: 639px) {
    .collapsible-hero-banner-subsection.expanded .expanded-gradient-wrapper {
        background: #003368;
    }
}

.collapsible-hero-banner-subsection.collapsed .expanded-gradient-wrapper {
    background: none;
}

.banner-expanded-content {
    padding-top: 64px;
    display: none;
    position: relative;
    z-index: 5;
}

@media screen and (min-width: 640px) {

    /* shifted up on desktop only */
    .banner-expanded-content {
        top: -170px;
        margin-bottom: -200px;
    }
}

/* Desktop collapse control */
.hero-collapse-control {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 64px;
    background: rgba(255, 255, 255, 0.20);
    border-top: 1px solid #FFF;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    transition: background 0.5s ease;
}

.collapsible-hero-banner.offer-banner.expanded .hero-collapse-control {
    background: transparent;
}

.hero-collapse-btn {
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 16px;
    color: white;
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.3s ease;
}

.hero-collapse-btn:hover {
    opacity: 0.8;
}

.hero-collapse-btn:focus {
    outline: 2px solid #fedf01;
    outline-offset: 2px;
}

.hero-collapse-icon {
    width: 24px;
    height: 24px;
    transition: transform 0.3s ease;
}

.collapsible-hero-banner-subsection.expanded .hero-collapse-icon {
    transform: rotate(180deg);
}

.banner-expanded-content h3 {
    font-size: 2.4rem;
    line-height: 3.2rem;
    font-weight: 500;
}

.banner-expanded-content h4 {
    font-size: 1.8rem;
    line-height: 2.4rem;
    font-weight: 500;
    margin-bottom: 0.5rem;
}

.banner-expanded-content p {
    font-size: 1.6rem;
    line-height: 2.4rem;
}

.glass-gradient-heading {
    color: var(--Interaction-interactive-1-text, #FFF);
    text-align: center;
    font-feature-settings: 'liga' off, 'clig' off;
    font-family: var(--font-family-headline-xs, Roboto);
    font-size: 20px !important;
    font-style: normal;
    font-weight: var(--Type-Heading-xs-font-weight, 400);
    line-height: 28px !important;
    /* 140% */
}

.glass-gradient-3 {
    border-radius: 11.69px;
    border: 2px solid rgba(255, 255, 255, 0.10);
    background: radial-gradient(134.18% 107.3% at 97.15% 1.16%, rgba(255, 255, 255, 0.60) 0%, rgba(255, 255, 255, 0.00) 100%);
    background-blend-mode: screen;
    padding: 21.68px;
}

.glass-gradient-2 {
    border-radius: 9.761px;
    border: 3.042px solid rgba(255, 255, 255, 0.10);
    background: radial-gradient(134.18% 107.3% at 97.15% 1.16%, rgba(255, 255, 255, 0.60) 0%, rgba(255, 255, 255, 0.00) 100%);
    background-blend-mode: screen;
    box-shadow: -38.643px 38.643px 30.914px -12.881px rgba(0, 0, 0, 0.25);
    display: flex;
    gap: 24.336px;
    padding: 24.336px;
}

.glass-gradient-2 img {
    height: 92px;
    width: 92px;
}

.custom-font-1 {
    color: var(--text-foregrounds-text-opposite-1, #FFF);
    font-feature-settings: 'liga' off, 'clig' off;
    font-family: var(--font-family-text, Roboto);
    font-size: 21.069px !important;
    font-style: normal;
    font-weight: 600;
    line-height: 127.4%;
    /* 26.841px */
    letter-spacing: var(--Type-UI-Text-default-letter-spacing, 0);
}



.goto-link-white::after {
    content: url("/_assets-custom/images/arrow-right-white.svg") !important;
}


/* Mobile styles */
@media screen and (max-width: 639px) {

    h1#page-title {
        letter-spacing: normal;
    }

    h1#page-title>span:first-of-type {
        font-size: 3.5rem;
        line-height: 3.5rem;
        font-weight: 700;
        margin-bottom: 7px;
        display: inline-block;
    }

    h1#page-title>span:not(:first-of-type) {
        font-size: 2.6rem !important;
        line-height: 2.6rem !important;
        font-weight: 500;
    }

    .title-desc {
        font-weight: 400;
    }

    .collapsible-hero-banner.offer-banner {
        display: flex;
        flex-direction: column;
        background-image: image-set(url("/_assets-custom/images/banners/gosmart3/banner-afro-man-phone_mobile.avif") type("image/avif"), url("/_assets-custom/images/banners/gosmart3/banner-afro-man-phone_mobile.jpg") type("image/jpeg"));
        background-repeat: no-repeat;
        background-position: top center;
        background-size: contain;
        background-color: #001B32;
        padding-bottom: 0;
    }

    .collapsible-hero-banner.offer-banner:after {
        content: none;
    }

    .collapsible-hero-banner.offer-banner .background-layer {
        display: none;
    }

    .collapsible-hero-banner.offer-banner.expanded {
        height: auto;
        margin-bottom: 1px;
    }

    .collapsible-hero-banner.offer-banner>.section-inner {
        flex: 0 1 auto;
        display: flex;
        flex-direction: column;
        padding-top: 40px !important;
        padding-bottom: 60px !important;
        margin-left: 0;
        margin-right: 0;
        background: linear-gradient(182deg, rgba(124, 170, 180, 0.00) 34.62%, rgba(39, 71, 84, 0.55) 45.7%, rgba(0, 26, 40, 0.80) 50.74%, #003368 100%);
        text-align: center;
    }

    .collapsible-hero-banner.offer-banner .banner-wpr,
    .collapsible-hero-banner.offer-banner .banner-wpr .banner-text {
        display: flex;
        flex: 1 1 100%;
    }

    .collapsible-hero-banner.offer-banner .banner-wpr .banner-text {
        flex-direction: column;
        justify-content: space-between;
    }

    .collapsible-hero-banner.offer-banner .banner-wpr .btn-transparent {
        width: 100%;
    }

    /* On mobile, wrapper needs to be in flow */
    .expanded-gradient-wrapper {
        flex: 1 0 auto;
        display: flex;
        flex-direction: column;
        padding-bottom: 0;
    }

    .expanded-gradient-wrapper .section-inner {
        flex: 0 0 auto;
    }

    /* On mobile, keep control at bottom of viewport when collapsed */
    .hero-collapse-control {
        position: relative;
        margin-top: auto;
        flex-shrink: 0;
    }

    /* Show only on mobile */
    .mobile-only {
        display: block !important;
    }

    .collapsible-hero-banner-subsection {
        margin-top: -60px;
    }

    .banner-btns-container {
        flex-wrap: nowrap
    }

    .btn.custom-white,
    .btn-transparent {
        font-size: 14px !important;
    }
}