.about {
    position: relative;
    padding-top: 50px;
    z-index: 1;
    color: var(--dark);
    overflow: hidden;
}

.about::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 25px;
    width: 100%;
    height: 354px;
    background: linear-gradient(to bottom,  #ffffff 0%,#dcf7f9 100%); 
    z-index: -1;
}

.about.bg-teal::before {
    background: transparent;
}

.about.bg-teal .about-right-graphics, 
.about.bg-teal .about-left-graphics {
    display: none;
}

.about.bg-light-teal {
    background: transparent;
    padding-bottom: 0;
}

.about__content {
    position: relative;
    z-index: 2;
}

.about__images {
    position: relative;
    width: 330px;
    margin: 60px auto 0;
    z-index: 2;
}

.about__images img {
    border-radius: 4px;
}

.about__images__left {
    position: absolute;
    left: 0;
    top: -32px;
    width: 92px;
    height: 62px;
}

.about__images__middle {
    width: 193px;
    height: 88px;
    margin: 0 0 0 35px;
}

.about__images__right {
    width: 117px;
    height: 78px;
    position: absolute;
    right: 0;
    top: -16px;
}

.about__images__logo {
    position: absolute;
    right: 100px;
    top: 9px;
    width: 50px;
    height: 45px;
    background: var(--white);
    border-radius: 4px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 15px rgba(25, 143, 159, 0.25);
}

.about__images__logo img {
    max-width: 36px;
    margin: 0 auto;
}

.about-left-graphics {
    position: absolute;
    left: -320px;
    bottom: 90px;
    max-width: 590px;
}

.about-right-graphics {
    position: absolute;
    right: -320px;
    bottom: 25px;
    max-width: 448px;
}
/* If Gallery is empty the  CTA style will display */

.cta__wrap {
    z-index: 1;
    position: relative;
}

.cta__left {
    position: absolute;
    width: 888px;
    max-width: initial;
    left: -596px;
    bottom: -1px;
    z-index: -1;
}

.cta__right {
    position: absolute;
    width: 481px;
    max-width: initial;
    right: -252px;
    bottom: -1px;
    z-index: -1;
}

.cta-left-curve {
    position: absolute;
    width: 888px;
    left: -483px;
    bottom: 200px;
    opacity: 0.06;
}

.cta-right-curve {
    position: absolute;
    width: 480px;
    right: -219px;
    bottom: 47px;
    opacity: 0.06;
}

.cta__wrap p:not(.cta-content-link) {
    padding: 0 4px 20px 4px;
}


.cta-content-link {
    display: flex;
    align-items: center;
    flex-direction: column;
}

.fullwidth-cta.bg-teal .btn {
    background: var(--white);
    color: var(--secondary-color);
    margin-top: 10px;
}

@media (min-width: 768px) {
    .about {
        padding-top: 60px;
    }
    
    .about::before {
        bottom: 50px;
        height: 395px;
    }
    
    .about__content p{
        padding-bottom: 28px;
    }
    
    .about__images {
        width: 664px;
        margin: 100px auto 0;
    }
    
    .about__images img {
        border-radius: 12px;
    }
    
    .about__images__left {
        top: -62px;
        width: 185px;
        height: 124px;
    }
    
    .about__images__middle {
        width: 389px;
        height: 178px;
        margin: 0 0 0 69px;
    }
    
    .about__images__right {
        width: 236px;
        height: 158px;
        top: -31px;
    }
    
    .about__images__logo {
        right: 200px;
        top: 30px;
        width: 68px;
        height: 61px;
        border-radius: 12px;
    }
    
    .about__images__logo img {
        max-width: 50px;
    }
    
    .about-left-graphics {
        left: -320px;
        bottom: 0;
        max-width: 888px;
    }
    
    .about-right-graphics {
        right: -438px;
        bottom: -88px;
        max-width: 674px;
    }

    .cta__left {
        left: -420px;
        bottom: -24px;
    }

    .cta__right {
        right: -244px;
        bottom: -18px;
    }

    .cta-left-curve {
        left: -453px;
        bottom: -28px;
    }
    
    .cta-right-curve {
        right: -175px;
        bottom: -6px;
    }

    .cta-content-link {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
    }

    .cta__wrap p:not(.cta-content-link) {
        padding: 0 14px 30px 14px;
    }

    .cta__wrap h2 {
        line-height: 1.428em;
    }
    .fullwidth-cta a.btn-location {
        margin: 10px;
    }
}

@media (min-width: 1200px) { 
    .fullwidth-cta a.btn-location {
        margin: 13px 13px 13px;
    }

    .about {
        padding-top: 70px;
    }
    
    .about::before {
        bottom: 140px;
        height: 609px;
    }
    
    .about__images {
        width: 1048px;
        margin: 115px auto 0;
    }
    
    .about__images__left {
        top: -98px;
        width: 292px;
        height: 197px;
    }
    
    .about__images__middle {
        width: 616px;
        height: 281px;
        margin: 0 0 0 108px;
    }
    
    .about__images__right {
        width: 372px;
        height: 250px;
        top: -50px;
    }
    
    .about__images__logo {
        right: 255px;
        top: 99px;
        width: 138px;
        height: 123px;
        border-radius: 12px;
    }
    
    .about__images__logo img {
        max-width: 101px;
    }
    
    .about-left-graphics {
        left: -98px;
        bottom: 85px;
        max-width: 1337px;
    }
    
    .about-right-graphics {
        right: -276px;
        bottom: -50px;
        max-width: 1015px;
    }

    .cta__right {
        width: 1016px;
        right: -276px;
        bottom: -194px;
    }

    .cta__left {
        width: 1338px;
        left: -98px;
        bottom: -48px;
    }

    .cta-left-curve {
        left: -96px;
        bottom: 62px;
        width: 1337px;
    }

    .cta-right-curve {
        right: -295px;
        bottom: -116px;
        width: 1016px;
        opacity: 0.15;
    }

    .cta__wrap p:not(.cta-content-link) {
        padding: 0 114px 30px 114px;
    }

    .cta__wrap h2 {
        line-height: 1.25em;
        max-width: 1048px;
        padding-bottom: 22px;
        margin: 0 auto;
    }

}