body {
  background-image: url('/ui/fullbgtest.png');
  background-repeat: no-repeat;
  background-position: center center; 
  background-size: cover; 
  background-attachment: fixed;
  overflow: hidden;
  color: black;
  font-family: "Comic Neue", "LXGW WenKai Mono TC", Verdana;
  display: flex;
  overflow: auto;
  justify-content: center; 
  align-items: center; 
  min-height: 90vh;
  text-align: justify;
  font-size: 13px;
  margin: 0;
  padding: 0;
}
img {
		max-width: 100%; 
		height: auto;
		margin: 0;
	}

.page {
    margin: 0;
    padding: 0.5rem;
    height: 90vh;
    width: 75vw;
    display: grid;
    grid-template-areas: 
    "banner banner banner"
    "nav main main"
    "foot foot foot"    
    ;
    grid-template-columns: 2fr 10fr 1fr;
    column-gap: 2.5rem;
    grid-template-rows: auto 1fr auto;
    row-gap: .25rem;
}
main {
    grid-area: main;
    background-color: #FFF7E7;
    border: 30px solid black;
    border-image: url('/ui/layoutpieces3.png') 100 / 70px / 25px repeat;
    z-index: 90;
    padding: .25rem;
    padding-right: 0;
    column-gap: 1rem;
    display: grid;
    grid-template-columns: 2fr 2fr 2fr 4fr;
    grid-template-rows: auto;
    grid-template-areas:
    "com com cha men"
    "ite des des men"
    "ite des des men" 
    ;
}
.title {
    grid-area: top;
}
.comment {
    grid-area: com;
}
.character {
    grid-area: cha;
}
.item2 {
    grid-area: ite;
}
.description {
    grid-area: des;
}
.menu {
    grid-area: men;
    overflow: scroll;
    max-height: 500px;
    padding-right: 25px;
}
nav {
    grid-area: nav;
    border: 30px solid black;
    border-image: url('/ui/layoutpieces2.png') 100 / 40px / 12px repeat;
    background-color: #FFF7E7;
    padding: .25rem;
}
sub {
    grid-area: sub;
    background-color: rgba(255, 255, 255, 0.5);
    background-size: auto;
    padding: .25rem;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column
}
header {
    grid-area: banner;
    display: flex;
    justify-content: center; 
    align-items: center; 
}
footer {
    grid-area: foot;
    background-color: rgba(255, 255, 255, 0.5);
    margin: 1rem;
    padding: .25rem;
}
.button {
		width: 4rem; 
		height: auto;
		margin: 0;
	    }

/* Headers */
	h1 {
		font-family: "Protest Revolution", sans-serif;
	}
	h2 {
		font-family: "Protest Revolution", sans-serif;
		color: gray;
	}
	h3 {
		font-family: "Protest Revolution", sans-serif;
	}

    /* Shop */
    button {
    border: none;
    background: none;
    padding: 0;
    }
    .item {
    width: 100px;
    height: auto;
    margin-left:auto;
    margin-right:auto;
    }
    .itemlist {
    overflow: scroll; 
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
    grid-template-rows: repeat(auto, 1fr);
    }

    .homebutton {
    position: fixed;
    bottom: 0; 
    right: 0;  
    z-index: 999;
    }
    .frontdecal {
    position: fixed;
    pointer-events: none; /* Lets you click through image and interact regardless of z-index. */
    width: 100%;
    height: 100%;
    bottom: 0; 
    left: 0;  
    z-index: 900;
    }
@media (max-width: 700px) {
		.page {
			grid-template-rows: auto auto auto 1fr auto;
			grid-template-columns: 1fr;
			grid-template-areas: 
			"banner"
			"nav"
            "sub"
            "main"
			"foot";
		}
        .frontdecal, .homebutton {
        display: none;
        }
        nav, sub {
            flex-direction: unset;
            border-radius: 10px;
            padding: .25rem;
        }
        main {
        grid-area: main;
        background-color: #FFF7E7;
        border: 30px solid black;
        border-image: url('/ui/layoutpieces3.png') 100 / 40px / 10px repeat;
        z-index: 90;
        padding: .25rem;
        row-gap: 0.50rem;
        display: grid;
        grid-template-columns: auto;
        grid-template-rows: 1fr;
        grid-template-areas:
        "men"
        "ite"
        "des"
        "com"
        "cha" 
        ;
        }
        .title {
            grid-area: top;
        }
        .comment {
            grid-area: com;
        }
        .character {
            grid-area: cha;
        }
        .item2 {
            grid-area: ite;
        }
        .description {
            grid-area: des;
        }
        .menu {
            grid-area: men;
        }
        header {
            grid-area: banner;
        }
        footer {
            grid-area: foot;
            border-radius: 10px;
            padding: .25rem;
        }
		.button {
		width: 4rem; 
		height: auto;
		margin: 0;
	    }
        .item {
        width: 50px;
        height: auto;
        }
        .itemlist {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(50px, 1fr));
        grid-template-rows: repeat(auto, 1fr);
        }
	}