* {
    margin: 0; padding: 0; border: 0; box-sizing: border-box; /* reset rule */
}

img, video, figure {
    max-width: 100%; /* a good default setting like the reset rule */
}

:root {
    font-size: 62.5% /* makes standard rem = px */
}

body {
    height: 200vh;
    max-width: 1800px; 
    background-image: linear-gradient(pink, #c77dff, #70d6ff);
}

    #container {
        width: 95vw;
        height: 95%;
        margin: 2vh auto;
        /* border: 2px solid orange; */
    } 
    
        #top {
            height: 20vh;
            margin-bottom: 10px;
            font-size: 4rem;
            line-height: 15vh;
        }

            .logo {
                height: 13vh; aspect-ratio: 4/4;
                float: left;
                padding: 1vh 0 1vh 1vw;
                position: absolute;
            }

            #title {
                border: 2px solid purple;
                width: 100%;
                height: 65%;
                background-image: radial-gradient(Blue, lightblue);
                
            }

            h2 {
                height: 100%;
            }

                #store_name {
                    max-height: 100%;
                    text-align: center;
                    font-family: 'Rochester', cursive;
                    font-size: 6vh;
                    color: #034403;
                    line-height: 5vh;
                    padding-top: 1vh;
                }

                    #slogan {
                        max-height: 100%;
                        max-width: 50%;
                        margin-top: 4vh;
                        margin-left: 45%;
                        text-align: center;
                        font-size: 3vh;
                        color: #034403;
                        line-height: 1vh;
                        padding-right: 5vw;
                    }

                ul {
                    display: flex;
                    list-style-type: none; 
                    justify-content: space-evenly;
                }

                    #main-nav > li {
                        display: block;
                        border: 2px solid purple;
                        width: 22%; height: 20%;
                        text-align: center;
                        line-height: 5vh;
                        font-size: 3vh;
                        background-image: radial-gradient(#c77dff, #70d6ff, #034403);
                        margin: 1vh auto 1vh auto;
                        border-radius: 20px;
                    }

                        #main-nav a {
                            display: block;
                            width: 100%; height: 100%;
                            text-decoration: none;
                            color: purple;
                            font-weight: bold; 
                        }

    .middle {
        height: 165vh;
        /* border: 2px solid red; */
        display: flex; 
    }

        #sidebar_nav {
            height: 65vh;
            width: 20vw;
            font-size: 2rem;
            border: 5px solid hotpink;
            background-color:#83C5BE;
            margin-top: 5vh;   
        }

            #sidebar_nav ul {
                display: block;
                height: 165vh;
                width: 95%;
                font-size: 2rem;
                margin: auto;
                justify-content: space-between;
            }

                ul li #jewelry_accessories {
                    background-color: blue;
                }
            
                #sidebar_nav a {
                    margin-top: 5%;
                    display: block;
                    text-decoration: none;
                    padding: 2%;
                    border: 2px solid purple;  
                    background-color: #c77dff;
                    color: white;
                }

                    

                    #sidebar_nav a:hover {
                        background-color: darkorchid;
                    }

                    


        .sub_shop_nav {
            /* border: 2px solid orangered; */
            display: flex;
            width: 75%;
            height: 60%;
            margin-top: 2vh;
            margin-left: 2vw;
            text-align: center;
        }

            section {
                
                margin: 5px auto;
                width: 90%;
                min-height: 12vh;
                text-align: center;
            
            }

                #sub_shop_nav {
                    display: flex;
                    flex-flow: row wrap;
                    justify-content: space-between;
                }

                    #sub_shop_nav li {
                        display: flex;
                        width: 22%;
                        aspect-ratio: 4/4;
                        margin-top: 3vh;
                        
                    }
                    
                        #sub_shop_nav li a {
                                border: 2px solid #31572c;
                                width: 100%;
                                font-size: 5vh;
                                text-decoration: none;
                                font-family: 'Courier New', Courier, monospace;
                                font-weight: bold;
                                color: darkgreen;
                                background-size: cover;
                                display: block;
                                text-decoration: none;
                                overflow: hidden; /* hides overflowing text */
                                transition: all 300ms ease-in-out;
                                
                            }

                                

                                #sub_shop_nav li a span {
                                        /* background-color:pink; */
                                        padding: 5px 5px;
                                        display: inline-block;
                                        transform: translateY(-175px);
                                        transition: all 300ms ease-in-out;
                                        border: 2px solid pink;
                                        background: palegoldenrod;
                                        width: 100%;
                                    }
                                    
                                    #sub_shop_nav li a:hover span {
                                        transform: translateY(-5px); /* makes hidden text re-appear when hover, adjusted text location */
                                    }
                            
                            #sub_shop_nav li:nth-child(1) a {
                                background-image: url(../tpt_images/dangle_earrings.jpg);
                            }

                            #sub_shop_nav li:nth-child(2) a {
                                background-image: url(../tpt_images/studs_unsplash.jpg); 
                            }

                            #sub_shop_nav li:nth-child(3) a {
                                background-image: url(../tpt_images/necklace_unsplash.jpg); 
                            }
                            
                            #sub_shop_nav li:nth-child(4) a {
                                background-image: url(../tpt_images/bracelet1.jpg); 
                                
                            }

                            #sub_shop_nav li:nth-child(5) a {
                                background-image: url(../tpt_images/keychain_unsplash.jpg); 
                            }
                            
                            #sub_shop_nav li:nth-child(6) a {
                                background-image: url(../tpt_images/kids_unsplash.jpg); 
                            }

                            #sub_shop_nav li:nth-child(7) a {
                                background-image: url(../tpt_images/trinket_box.jpg); 
                            }

                            #sub_shop_nav li:nth-child(8) a {
                                background-image: url(../tpt_images/other_unsplash.jpg); 
                                font-size: x-large;
                            }