#projWrapper {
    width: 100vw;
    height: 100vh;

    display: grid;
    grid-template-columns: 16px 1fr 1fr 16px;
    grid-template-rows: auto auto 1fr 16px;
}

/* Projects */
#projList {
    grid-column: 2/4;
    grid-row: 2;
    
    width: 100%;
    margin-top: 8px;

    /* First banner (has the ascii art) */
    .topBanner {
        display: grid;
        grid-template-columns: 10% 2.5% 12.5% 20% auto 10% 10%;
        grid-template-rows: 35% 45% 20%;
        
        .bgImg {
            grid-column: 2/7;
            grid-row: 1/4;

            width: 100%;
        }

        .icon {
            grid-column: 4/5;
            grid-row: 2/3;

            width: 75%;

            display: flex;
            justify-self: center;
            align-self: center;
        }

        .text {
            grid-column: 5/6;
            grid-row: 2/3;

            width: 100%;
            height: 100%;
            text-align: center;
            font-size: 2.5vw;

            
            h2 {
                margin-top: 8px;
                margin-bottom: 8px;
            }

            p {
                margin: 0;
            }
        }
    }

    /* Every other banners css */
    .banner {
        display: grid;
        grid-template-columns: 10% 2.5% 12.5% 20% auto 10% 10%;
        grid-template-rows: 27% 53% 20%;

        margin: -16px 0 -16px 0;

        .bgImg {
            grid-column: 3/7;
            grid-row: 1/4;

            width: 100%;
        }

        .icon {
            grid-column: 4/5;
            grid-row: 2/3;

            width: 75%;

            display: flex;
            justify-self: center;
            align-self: center;
        }

        .text {
            grid-column: 5/6;
            grid-row: 2/3;

            width: 100%;
            height: 100%;
            text-align: center;
            font-size: 2.5vw;

            
            h3 {
                margin-top: 8px;
                margin-bottom: 8px;
            }

            p {
                margin: 0;
            }
        }
    }
}

/* Cat */
#cat2 {
    grid-column: 2/4;
    grid-row: 3;

    font-size: 4.5vw;
    align-self: self-end;
}




@media (min-width: 768px) {
    #projWrapper {
        width: 100vw;
        height: 100vh;

        display: grid;
        grid-template-columns: 16px 3fr 32px 2fr 16px;
        grid-template-rows: auto 1fr 16px;
    }

    /* Projects */
    #projList {
        grid-column: 4;
        grid-row: 1/3;

        width: 100%;
        height: fit-content;
        margin-top: 16px;

        /* First banner (has the ascii art) */
        .topBanner {
            display: grid;
            grid-template-columns: 10% 2.5% 12.5% 20% auto 10% 10%;
            grid-template-rows: 35% 45% 20%;
        
            .bgImg {
                grid-column: 2/7;
                grid-row: 1/4;

                width: 100%;
            }

            .icon {
                grid-column: 4/5;
                grid-row: 2/3;

                width: 75%;

                display: flex;
                justify-self: center;
                align-self: center;
            }

            .text {
                grid-column: 5/6;
                grid-row: 2/3;

                width: 100%;
                height: 100%;
                text-align: center;
                font-size: 1vw;

                
                h2 {
                    margin-top: 8px;
                    margin-bottom: 8px;
                }

                p {
                    margin: 0;
                }
            }
        }

        /* Every other banners css */
        .banner {
            display: grid;
            grid-template-columns: 10% 2.5% 12.5% 20% auto 10% 10%;
            grid-template-rows: 27% 53% 20%;
        
            margin: -16px 0 -16px 0;
            height: fit-content;

            .bgImg {
                grid-column: 3/7;
                grid-row: 1/4;

                width: 100%;
            }

            .icon {
                grid-column: 4/5;
                grid-row: 2/3;

                width: 75%;

                display: flex;
                justify-self: center;
                align-self: center;
            }

            .text {
                grid-column: 5/6;
                grid-row: 2/3;

                width: 100%;
                height: 100%;
                text-align: center;
                font-size: 1vw;

                
                h3 {
                    margin-top: 8px;
                    margin-bottom: 8px;
                }

                p {
                    margin: 0;
                }
            }
        }
    }

    /* Cat */
    #cat2 {
        grid-column: 2;
        grid-row: 2;

        font-size: 2vw;
        align-self: self-end;
        justify-self: center;
    }
}
