.banner {
    display: flex;
    flex-direction: column;
    padding: 20px 40px;
}

.banner-top {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 50px;
}

.banner-text {
    width: 60%;
    padding-top: 40px;
}

.banner-top h1 {
    font-size: 6.5vw;
    text-transform: uppercase;
}

.banner-image {
    width: 40%;
}

.banner-image img {
    width: 50%;
}

.banner-bottom {
    height: 290px;
}

.banner-bottom img {
    width: 40%;
    position: relative;
    top: -85px;
}

.subpages {
    display: flex;
    flex-direction: column;
    padding: 110px 0px;
    gap: 140px;
}

.lookbook,
.trends,
.celebrity-fits {
    display: flex;
    justify-content: center;
    align-items: center;
    background-position: center;
    position: relative;
    min-height: 37vw;
    background-size: cover;
}

.lookbook {
    background-image: url("../images/lookbook.jpeg");
}

.trends {
    background-image: url("../images/trends.jpeg");
}

.celebrity-fits {
    background-image: url("../images/celebrityfits.jpeg");
}

.subpages a {
    text-decoration: none;
    color: inherit;
}

.subpages a .lookbook,
.subpages a .trends,
.subpages a .celebrity-fits {
    transition: filter 0.3s ease;
}

.subpages a:hover .lookbook,
.subpages a:hover .trends,
.subpages a:hover .celebrity-fits {
    filter: brightness(70%);
    cursor: pointer;
}

.lookbook-text,
.trends-text,
.celebrity-fits-text {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}

.lookbook-text h2,
.trends-text h2,
.celebrity-fits-text h2 {
    color: white;
    text-transform: uppercase;
    font-size: 3vw;
    text-align: center;
    position: relative;
    padding-bottom: 8px;
    font-weight: 400;
}

.lookbook-text h2::after,
.trends-text h2::after,
.celebrity-fits-text h2::after {
    content: '';
    display: block;
    width: 180px;
    height: 1px;
    background-color: white;
    margin: 8px auto 0 auto;
}

@media (max-width: 1400px) {
    .banner-bottom img {
        top: -65px;
    }
}

@media (max-width: 1150px) {
    .banner-bottom img {
        top: -45px;
    }

    .banner-bottom {
        height: 200px;
    }
}

@media (max-width: 768px) {
    .banner-text h1 {
        font-size: 10vw;
    }

    .banner-bottom img {
        top: -25px;
    }

    .banner-image {
        display: flex;
        justify-content: right;
    }

    .banner-bottom {
        height: 180px;
    }

    .subpages {
        padding: 50px 0px;
        gap: 70px;
    }
}

@media (max-width: 650px) {
    .banner-bottom {
        height: 130px;
    }
}

@media (max-width: 500px) {
    .banner-bottom {
        height: 100px;
    }
}