.banner {
    position: relative;
    background-color: #00212D;
}
.banner .banner-mobile {
    display: none;
}
.banner::before {
    position: absolute;
    content: '';
    border-radius: 720px;
    background: rgba(52, 177, 143, 0.40);
    filter: blur(200px);
    bottom: -350px;
    left: -160px;
    display: block;
    width: 720px;
    height: 720px;
    z-index: 2;
}
.banner-body {
    position: absolute;
    top: calc(50% + 60px);
    transform: translateY(-50%);
    width: 100%;
    z-index: 3;
}
.banner-body p {
    color: #fff;
}
.banner-content {
    max-width: 700px;
    width: 100%;
}
.banner .b2-eyebrow  {
    margin-bottom: 10px;
}
.banner .banner-image {
    width: 100%;
    height: 920px;
    object-fit: cover;
}
.banner .b2-link {
    margin: 40px 0 20px;
}
.banner-polygon {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 34%;
    left: 55%;
}
.banner-outline-polygon {
    width: 104px;
    height: 119px;
    position: relative;
    right: 35px;
    bottom: 20px;
}
.banner h1 > strong {
    position: relative;
    display: inline-block;
}
.banner h1 > strong::after {
    content: '';
    background: linear-gradient(90deg, #34B18F 0%, rgba(52, 177, 143, 0.00) 100%);
    height: 0.1875rem;
    width: 100%;
    display: block;
    position: absolute;
    bottom: -3px;
}
@media only screen and (max-width: 1650px) {
    .banner .banner-image {
        width: 100%;
        height: auto;
    }
    .banner-body {
        top: 70%;
        transform: translateY(-70%);
    }
}
@media only screen and (max-width: 1366px) {
    .banner-content {
        max-width: 600px;
    }
    .banner-content p > br {
        display: none;
    }
}

@media only screen and (max-width: 1080px) {
    .banner-polygon {
        display: none;
    }
    .banner-content {
        max-width: 460px;
    }
    .banner-body {
        top: 50%;
        transform: translateY(-50%);
    }
}
@media only screen and (max-width: 991px) {
    .banner .banner-image {
        height: 510px;
        object-position: right;
        filter: brightness(40%);
    }
}
@media only screen and (max-width: 767px) {
    .banner .banner-image {
        object-position: 100%;
    }
    .banner .banner-desktop,
    .banner::before {
        display: none;
    }
    .banner .banner-mobile {
        display: block;
        width: 100%;
        height: 620px;
        object-fit: cover;
        object-position: top;
    }
}