section {
    padding: 5vw 0;
}

#banner-sec {
    background-color: #161E35;
    padding: 10vw 0 0 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    color: white;
    height: 32.5vw;
}

#banner-sec h1 {
    margin: 0;
}

#banner-sec > div:nth-child(1) {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    width: 60%;
}

#banner-sec > div:nth-child(2) {
    width: 100%;
    display: flex;
}

#banner-sec > div:nth-child(2) img{
    width: 70%;
}

#grid-cnt {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2vw;
    width: 100%;
}

.grid-card {
    border: solid #cbcdd7 0.1vw;
    padding: 2.5% 5% 5% 5%;
    border-radius: 0.5vw;
    color: black;
}

.grid-card h2 {
    font-size: 1.2vw;
    margin: 0.5vw 0;
}

.grid-card p {
    margin: 0;
}

.thumb-cnt {
    width: 100%;
    aspect-ratio: 267/200;
    overflow: hidden;
    border-radius: 0.5vw;
    position: relative;
}

.thumb-cnt img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: 0.5vw;
}

.grid-meta {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.grid-meta p {
    font-size: 0.8vw;
    color: #444444;
}

.grid-meta p:nth-child(1) {
    background-color: white;
    padding: 0.2vw 0.4vw;
    border: solid #cbcdd7 0.1vw;
    border-radius: 1vw;
}


@media (max-width:767px) {
    section {
        padding: 40px 0;
    }
    
    #banner-sec {
        padding: 25vw 0 0 0;
        height: unset;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }

    #banner-sec h1 {
        font-size: 8vw;
        line-height: 8vw;
    }

    #banner-sec p {
        font-size: 3.5vw;
    }

    #banner-sec > div:nth-child(1) {
        width: 90%;
    }

    #banner-sec > div:nth-child(2) img {
        width: 110%;
        position: relative;
        left: -15%;
    }

    #grid-cnt {
        grid-template-columns: repeat(2, 1fr);
    }

    #grid-cnt a {
        margin: 0;
    }

    .grid-card h2 {
        font-size: 14px;
    }

    .grid-meta p {
        font-size: 8px !important;
    }

    .grid-meta p:nth-child(1) {
        padding: 2px 8px;
        border-radius: 25px;
    }
}