*{
    margin: 0; padding: 0; border: 0;
    box-sizing: border-box;
}

/* ===================== Mobile/Portrait Tablet styles and Bigger ================ */

body{
    background-color: rgb(24, 76, 81);
    color:rgb(0, 0, 0);
    font-family: Verdana, Geneva, Tahoma, sans-serif;
    max-height: 100vh;

}

.container{
    display: flex;
    margin: 4px 8px;
    min-height: 100vh;
    flex-direction: column;
}

main {
    display: flex;
    flex-flow: column wrap;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    position: relative;
    width: 100%; 
}

nav {
    flex-grow:0;
    gap: 10px;
    justify-content: center;
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    padding: 10px;
    margin-top: 10px;
}

nav a {
    background-color: yellow;
    width: 40%;
    text-align: center;
    padding: 6px 4px;
    margin:0px 10px;
    text-decoration: none;
    color: black;
    font-size: .8em;
    text-transform: uppercase;
    font-weight: bold;
    border: 6px groove rgb(255, 238, 0);
}

h2 {
    text-align: center;
    color: transparent;
    font-size: 1em;
    font-weight: lighter;
    width: 100%;
}

.hero {
 background-color: pink;
 flex-grow:1;
 flex-basis: auto;
 margin:20px 0px;
 aspect-ratio: 1/1;
 width: 100%;
}

.grid {
 display: grid;
 grid-template-columns: 1fr 1fr; 
 grid-template-rows: 1fr 1fr;
 flex-grow:1;
 flex-basis: auto;
 margin: 20px 0px;
 aspect-ratio: 1/1;
 width: 100%;
 gap: 10%
}

.grid div {
    background-color: yellow;
    aspect-ratio: 1/1;
}

/* ================ Landscape Tablet and Bigger =========== */

@media screen and (min-width: 1040px) {

.container {
    max-height: 100vh;
}


nav a {
 width: auto;

}

main {
     flex-flow: row wrap;
     gap: 80px;
     padding: 10%;
}

h2 {
    text-align: right;
    position: absolute; 
    color: gray;
    top: 140px; 
    right: 20px;
}

.hero {
 flex-grow:0;
 flex-basis: 300px;
 aspect-ratio: 1/1;
 margin:20px 40px;
 width: auto;
}

.grid {
 flex-grow:0;
 flex-basis: 300px;
 aspect-ratio: 1/1;
 margin:20px 40px;
 width: auto;
}

}
/* end of wide-screen styles */
