body{
	font-family: Arial, Helvetica, sans-serif;
	font-size: calc(0.8rem + 0.3vw);
	padding: 0;
	margin: 0;
}
h1,h2,h3,h4,h5,h6{
	clear: left;
	margin-top: 0.3rem;
	margin-bottom: 0.5rem;
}
h1{
	font-size: 2rem;
}

main{
	min-height: calc(100vh - 7rem);
	max-width: 100vw;
	overflow-wrap: anywhere;
}
main section, main aside {
	padding-top:0.5rem;
}
#headerSpaceHolder{
	width: calc(100vw - 3rem);
	height:3rem;
	margin:auto;
	margin-bottom: 0.5rem;
}
header{
	width: calc(100vw - 0.5rem);
	height:3rem;
	margin:auto;
	background: rgba(173, 216, 230, 0.85);
	background: var(--headerbox-bkg);
	border: 1px solid brown;
	border: 1px solid var(--headerbox-border);
	border-bottom: none;
	top:0;
	left:0;
	position: fixed;
	padding: 0 1rem;
	z-index: 1;
}
#headerTitle{
	display:block;
	font-style: oblique;
	font-size: 120%;
	text-shadow: 1px 1px black;
	margin-top: 0.3rem;
	margin-left: 0.3rem;
	float:left;
	color: blue;
	color: var(--headerbox-color);
}
footer{
	background: rgba(173, 216, 230, 0.85);
	background: var(--headerbox-bkg);
	border: 1px solid brown;
	border: 1px solid var(--headerbox-border);
	border-top: none;
	color: grey;
	min-height: 2rem;
	width: calc(100vw - 3rem);
	margin:auto;
	padding: 0 1rem;
}
footer a{
	color: grey;
}
#StoreDiv{
	width:100%;
	display: grid;
	grid-gap: 0.2rem;
	row-gap:0.5rem;
	padding:0.2rem;
}
.StoreItem{
	padding:0.2rem;
}
.StoreItemImage{
	width:90%;
	border: grey 1px solid;
}
@media screen and (max-width: 768px){
	/* small screens Phones Tablets */	
	#headerTitle{
		display:none;
	}
	#StoreDiv{
		grid-template-columns:1fr;
	}
}
@media screen and (min-width: 768px){
	/* bigger screens Notebooks laptops Desktops */
	main{
		max-width: calc(1200px - 0.5rem);
		margin: auto;
		display: grid;
		grid-template-columns: 73% 0.5rem 1fr;
	}
	.singleColumn{
		display: block;
	}
	main section{
		grid-column-start: 1;
		grid-column-end: 2;
	}
	main aside{
		grid-row-start: 1;
		grid-column-start: 3;
	}
	#StoreDiv{
		grid-template-columns:1fr 1fr;
	}
}
@media screen and (min-width: 1200px){
	/* very large screens */
	#StoreDiv{
		grid-template-columns:1fr 1fr 1fr;
	}
}

/*OLDER SETTINGS-----------------------------------------*/

#SiteGRMenuBar{
	position: fixed;
	right: 3px;
	top:3px;
	z-index: 2;
}
#SiteGRMenuBar img{
    height: 2rem;
    width:2rem;
    float:right;
    border: solid blue 1px;
    border-radius: 0.3rem;
    cursor: pointer;
    margin:0.1rem;
    background: rgba(255,255,255,0.6);
}
#SiteGRMenu{
	min-width: 300px;
	display: none;
	clear: right;
	background: white;
	border: blue solid 1px;
	color: blue;
	padding: 0.3rem;
	margin: 3px;
	text-align: right;
}
#fbStatusDiv{
	display: none;
}
.AdminBox{
	border: 1px blue solid;
	border-bottom: none;
}

#LogoDiv{
	height:2.9rem;
	width:5.8rem;
	float:left;
	background-size: 100%;
	border: none;
}

.pSection{
	background: var(--mainbox-bkg);
	clear: both;
	padding: 0.3rem;
}
#cookiesConsent{
	width:97vw;
	position:fixed;
	padding:0.1rem;
	background:lightgrey;
	bottom:0.2rem;
	left:1vw;
	color:black;
	z-index:2;
	opacity:0.99;
	border:black 1px solid;
}

/* Nav Menu Style*/
nav ul {
	display: none;	
}
.btn-menu {
	display: block;
	float: left;
	margin:0.8rem;
	border: 0;
	width: 40px;
	height: 25px;
	background-color: transparent;
	cursor: pointer;
	display: block;
	position: relative;
}
.btn-menu:focus {
	outline: 1px dotted #E0AE19;	
}
.show_menu .btn-menu:focus {
	outline: none;	
}
.btn-menu .text {
	display: block;
	text-indent: 150%;
	white-space: nowrap;
	overflow: hidden;	
}
.btn-menu .bar,
.btn-menu .bar:before,
.btn-menu .bar:after {
	display: block;
	position: absolute;
	width: 40px;
	height: 5px;
	background-color: #fff;
	background-color: var(--headerbox-color);
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.btn-menu .bar {
	top: 10px;
	left: 0;	
}
.btn-menu .bar:before {
	position: absolute;
	content: '';
	top: 10px;
	left: 0;
}
.btn-menu .bar:after {
	position: absolute;
	content: '';
	top: -10px;	
	left: 0;
}
.show .btn-menu .bar {
	background-color: transparent;	
}
.show .btn-menu .bar:before {
	top: 0;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);	
}
.show .btn-menu .bar:after {
	top: 0;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);	
}
.mobile-nav {
	height: 0;
	max-height: 90vh;
	position: absolute;
	top: 3rem;
	left: 0;
	width:auto;
	max-width:100vw;
	min-width:20rem;
	overflow: auto;
	background: lightblue;
	background-color: var(--nav-bkg);
	border: 1px solid green;
	border: 1px solid var(--nav-border);
	border-top: none;
	border-bottom: none;
	-webkit-transition: height 0.3s ease-in-out;
	transition: height 0.3s ease-in-out;	
}

.mobile-nav a {
	text-decoration: none;
	color: #fff;
	color: var(--nav-color);
	font-family: "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, sans-serif;
	font-size: 18px;
	text-indent: 10px;
	display: block;
	line-height: 42px;
	border-bottom: 1px solid var(--nav-border);	
}

.mobile-nav a:focus,
.mobile-nav a:hover,
.mobile-nav a:active {
	background-color: grey;	
	background-color: var(--nav-focus);	
}

.mobile-nav li:first-child a {
	border-top: 1px solid var(--nav-border);	
}
.show .mobile-nav {
	height: auto;
}
.show .mobile-nav ul{
	display:block;
}
.mobile-nav .dd + ul {
	height: 0;
	overflow: hidden;
	background-color: grey;
	background-color: var(--nav-sub-bkg);
	-webkit-transition: height 0.3s ease-in-out;
	transition: height 0.3s ease-in-out;	
}

.mobile-nav .dd + ul a {
	text-indent: 30px;	
}

.mobile-nav .dd + ul a:focus,
.mobile-nav .dd + ul a:hover,
.mobile-nav .dd + ul a:active {
	background-color: lightgrey;
	background-color: var(--nav-sub-focus);	
}

.mobile-nav .dd:after {
	content: '\25BC';
	margin-left: 5px;
	font-size: 12px;	
}

.mobile-nav .dd-show + ul {
	height: auto;	
}

/* Loader animation */
.loader {
  border: 0.3rem solid lightgrey;
  border-radius: 50%;
  border-top: 0.3rem solid darkblue;
  width: 1rem;
  height: 1rem;
  -webkit-animation: spin 2s linear infinite; /* Safari */
  animation: spin 2s linear infinite;
}

/* Safari */
@-webkit-keyframes spin {
  0% { -webkit-transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
