h2 {
    text-transform: uppercase;
}

#top-banner {
    background-image: url("https://cdn.vanderloc.com/images/pages/company/company-main-banner.jpg");
    background-size: 200%;
    background-repeat: no-repeat;
    background-position: 67% bottom;
    position: relative;
    height: 60vw;
    max-height: 100vh;
    min-height: 33vw;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
#top-banner .banner-content {
    display: none;
    position: absolute;
    bottom: 0;
    color: white;
    width: min-content;
}
#top-banner .banner-content h1 {
    margin-bottom: 30px;
    width: max-content;
}
#top-banner .banner-content p {
    margin-bottom: 0;
    font-size: 24px;
    line-height: 40px;
}
#top-banner-mobile-content {
    padding: 30px;
    text-align: center;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
#top-banner-mobile-content h1 {
    margin-bottom: 20px
}

#we-are-vanderloc {
    width: 100%;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
#we-are-vanderloc .section-image {
    position: relative;
    aspect-ratio: 5/3;
    overflow: hidden;
}
#we-are-vanderloc img {
    position: absolute;
    bottom: 0;
    width: 100%;
}
#we-are-vanderloc .section-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 30px;
    background: #e6e6e6;
    text-align: center;
}

#our-team {
    display: none;
    margin-top: 40px;
    padding: 0 30px;
    text-align: center;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
#team-members {
    column-gap: 10px;
}
.team-member {
    margin-top: 30px;
}
.team-member-image {
    aspect-ratio: 4/5;
    overflow: hidden;
}
.team-member-image img {
    width: 100%;
    height: auto;
}
.team-member-name {
    margin: 10px 0 0;
    font-weight: bold;
    font-family: 'Playfair Display', serif;
}
.team-member-role {
    margin: 0;
    color: #ad8337;
    font-size: .9rem;
    line-height: 1rem;
}

#unmatched-quality {
    background: black;
    color: white;
    margin-top: 40px;
    padding: 30px;
    text-align: center;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
#unmatched-quality h2 {
    margin-bottom: 20px;
}
#unmatched-quality hr {
    background-color: #ad8337;
    opacity: 1;
    margin: 0 auto 20px;
    height: 2px;
}
#unmatched-quality p {
    margin: 0 auto 20px;
}

#shop-vanities {
    background-image: url("https://cdn.vanderloc.com/images/pages/company/shop-vanities-banner.jpg");
    background-position: center bottom;
    background-size: cover;
    height: 40vw;
    display: flex;
    justify-content: end;
    align-items: end;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
#shop-vanities .banner-content {
    color: white;
    text-align: right;
    display: none;
}
#shop-vanities-mobile-content {
    padding: 30px 30px 40px;
    text-align: center;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
#shop-vanities h2, #shop-vanities-mobile-content h2 {
    text-transform: uppercase;
    font-family: "Playfair Display", serif;
    font-size: 40px;
    line-height: 58px;    
    letter-spacing: .2em;
}

@media (min-width: 576px) {
    #top-banner-mobile-content {
        padding: 40px;
        text-align: center;
    }
    #we-are-vanderloc .section-content {
        padding: 40px;
    }
    #our-team {
        padding: 0 40px;
    }
    #team-members {
        display: flex;
    }
    .team-member {
        flex: 1;
    }  
    #unmatched-quality {
        padding: 40px;
    }
    #shop-vanities-mobile-content {
        padding: 40px 40px 50px;
    }
}

@media (min-width: 768px) {
    #top-banner {
        background-size: 150%;
        background-position: 40% bottom;
    }
    #top-banner .banner-content {
        display: block;
        padding: 40px 60px;
    }
    #top-banner-mobile-content {
        display: none;
    }
    .mobile-content {
        display: none;
    }
    #we-are-vanderloc {
        display: flex;
        margin-top: 60px;
    }
    #we-are-vanderloc .section-image {
        display: flex;
        justify-content: center;
        align-items: center;
        flex: 1;
    }
    #we-are-vanderloc .section-image img {
        position: relative;
        width: auto;
        min-width: 100%;
        min-height: 100%;
        object-fit: cover;
    }
    #we-are-vanderloc .section-content {
        flex: 1;
        background-color: white;
        padding: 0;
    }
    #we-are-vanderloc .section-content h2 {
        padding: 0 60px;
    }
    #we-are-vanderloc .section-content p {
        padding: 0 60px;
        margin-bottom: 0;
    }
    #our-team {
        margin-top: 60px;
        padding: 0 60px;
    }
    .team-member {
        text-align: left;
    }  
    #unmatched-quality {
        margin-top: 60px;
        padding: 60px;
    }
    #unmatched-quality p {
        max-width: 600px;
    }
    #shop-vanities {
        height: 40vw;
    }
    #shop-vanities .banner-content {
        display: block;
        padding: 60px;
    }
    #shop-vanities-mobile-content {
        display: none;
    }
}

@media (min-width: 992px) {
    #top-banner .banner-content {
        padding: 80px;
    }
    #we-are-vanderloc {
        margin-top: 80px;
    }
    #we-are-vanderloc .section-image {
        flex: 5;
    }
    #we-are-vanderloc .section-content {
        flex: 2;
        text-align: left;
    }
    #we-are-vanderloc .section-content h2 {
        padding: 0 80px;
    }
    #we-are-vanderloc .section-content p {
        padding: 0 80px;
    }
    #our-team {
        margin-top: 80px;
        padding: 0 80px;
    }
    #unmatched-quality {
        margin-top: 80px;
    }
    #unmatched-quality p, #unmatched-quality hr {
        max-width: 800px;
    }
}

@media (min-width: 1200px) {
    #top-banner .banner-content {
        padding: 100px;
    }
    #we-are-vanderloc .section-image {
        flex: 3;
    }
    #we-are-vanderloc .section-content {
        flex: 2;
    }
    #we-are-vanderloc .section-content h2 {
        padding: 0 100px;
    }
    #we-are-vanderloc .section-content p {
        padding: 0 100px;
    }
    #our-team {
        padding: 0 100px;
        margin-left: auto;
        margin-right: auto;
        max-width: 1200px;
    }
    #unmatched-quality p, #unmatched-quality hr {
        max-width: 1000px;
    }
}

@media (min-width: 1400px) {
    #top-banner {
        height: 50vw;
    }
}