body,
body *{
    box-sizing: border-box;
    margin-block-start: 0;
    margin-block-end: 0;
    user-select: none;
}

body {
	font-family: monospace;
	font-size: 12px;
	color: #fcfcfc;
	margin: 0;
	height: auto;
	width: 100%;
	background: url('../images/wheat.png') repeat 0 0;
	background-size: 750px auto;
	background-attachment: fixed;
	vertical-align: top;
    overflow-x: hidden;
}

a:link,
a:hover,
a:visited{
    color: #fcfcfc;
    text-decoration: none;
}

a.anchor {
    display: block;
    position: relative;
    top: -5em;
    visibility: hidden;
}

nav{
    height: 5em;
    position: fixed;
    z-index: 2;
    padding: 0 10px;
    width: 100%;
    background: #031014;
    border-bottom: solid 1px #1D3245;
    display: flex;
    flex-direction: row;
  	align-items: center;
  	flex-wrap: nowrap;
  	justify-content: space-between;
  	box-shadow: 1em 1em 1em rgba(10,10,10,0.7);
  	text-shadow: 1px 1px 1px rgba(0,0,0,0.9);
}

#nav-logo{
    background: url('../images/logo_inverted.png') no-repeat 50% .5em;
    background-size: 4.5em auto;
    height: 5em;
    width: 5em;
    display: block;
    flex: 0 0 5em;
}

#title-menu{
    height: 100%;
    display: flex;
    flex-direction: column;
  	align-items: stretch;
  	flex-wrap: nowrap;
  	justify-content: space-between;
}

h1{
    font-family: "Neucha";
    font-size: 2.8em;
    white-space: nowrap;
}

h2{
    font-family: "Neucha";
    font-size: 3em;
    margin-bottom: .5em;
    margin-top: 3rem;
    color: #793F43;
}

h3{
    font-family: "Neucha";
    font-size: 1.3em;
    margin-bottom: 1em;
    color: #793F43;
}

h3 b{
    color: #fcfcfc;
    font-weight: normal;
}

#menu{
    font-family: "Neucha";
    font-size: 1.4em;
    margin-bottom: .5em;
    display: flex;
    flex-direction: row;
  	align-items: center;
  	flex-wrap: nowrap;
  	justify-content: space-between;
}

#menu a{
    padding-right: .75em;
}

#menu a:last-of-type{
    padding-right: 0;
}

#menu a:hover{
    text-decoration: underline;
}

nav .social-links{
    display: flex;
    flex-direction: column;
  	align-items: center;
  	flex-wrap: nowrap;
  	justify-content: space-between;
  	width: 69px;
  	height: 100%;
  	padding: .5em 0;
}

nav .social-links > a{
    flex: 0 0 33%;
    height: 33%;
    display: block;
    background-size: auto;
    text-align: right;
}

nav  .social-links > a:link{
    text-decoration: none;
}

nav .social-links > a > img{
    width: 65%;
}

#content{
    padding: 13em 2em 2em 2em;
    margin: 0 2em;
    overflow: hidden;
    background: rgba(5,20,25,.85);
    border-left: solid 2px #1D3245;
    border-right: solid 2px #1D3245;
    box-shadow: 0 0 2em rgba(10,10,10,0.7);
    text-shadow: 1px 1px 1px rgba(0,0,0,0.9);
    backdrop-filter: blur(3px);
}

#content img{
    width: 100%;
}

.image-border{
    border: solid 1px #8B6564;
    border-radius: 0;
}

.image-shadow{
    box-shadow: 3px 3px 10px rgba(128,128,128,0.2);
}

#content p{
    font-family: "Neucha";
    font-size: 1.5em;
}

#content p{
    margin: 0;
}

#gallery{
    display: flex;
    flex-direction: row;
  	align-items: center;
  	flex-wrap: wrap;
  	justify-content: space-between;
}

#gallery > img{
    flex: 0 1 32%;
    width: 32%;
    margin-bottom: 1.5em;
}

.order-item-info{
    margin-bottom: 2em;
}

.order-item-description{
    font-family: "Neucha";
    font-size: 1.5em;
    margin: 0 0 2em 0;
}

.order-item-description ul{
    margin: .75em 0;
}

.order-item-description ul li{
    margin-bottom: .25em;
}

#footer{
    font-family: "Neucha";
    display: flex;
    flex-direction: row-reverse;
  	align-items: center;
  	flex-wrap: nowrap;
  	justify-content: space-between;
  	padding-top: 2em;
  	margin-top: 2em;
  	border-top: solid 1px #1D3245;
}


#footer .social-links{
    display: flex;
    flex-direction: row;
  	align-items: center;
  	flex-wrap: nowrap;
  	justify-content: space-between;
  	flex: 0 0 60%;
}

#footer .social-links > a{
    flex: 0 0 33%;
    height: 33%;
    display: flex;
    flex-direction: row;
  	align-items: center;
  	flex-wrap: nowrap;
  	justify-content: flex-end;
}

#footer .social-links > a:hover{
    text-decoration: underline;
}

#footer .social-links > a > img{
    width: 2.5em;
    margin-right: .5em;
}

@media only screen and (max-width: 550px){
    #menu{
        display: none;
    }

    #gallery > img{
        flex: 0 0 100%;
        width: 100%;
        margin: 0 0 2em 0;
    }

    #footer{
        flex-direction: column;
        align-items: stretch;
    }

    #footer #ownership{
        margin: 1.5em 0 0 1em;
    }
}

@media only screen and (max-width: 750px){
    nav .social-links{
        display: none;
    }

    body{
        background-size: 400px auto;
    }
}

@media only screen and (max-width: 750px) and (min-width: 551px){
    #gallery > img{
        flex: 0 0 47%;
        width: 47%;
        margin: 0 3% 2em 0;
    }
}

@media only screen and (min-width: 551px){
    .order-item-info{
        display: flex;
        flex-direction: row;
  	    align-items: flex-start;
  	    flex-wrap: nowrap;
  	    justify-content: flex-start;
    }

    .order-item-info img,
    .order-item-info p{
        flex: 0 0 50%;
    }

    .order-item-info img{
        max-width: 40%;
    }

    .order-item-description{
        margin-left: 2em;
    }
}


@media only screen and (max-width: 1100px){
    #title-menu{
        flex-direction: row;
        flex: 1 1 90%;
        height: auto;
        padding: 0 1em;
    }

    #nav-logo{
        background-position: 0 25%;
    }

    #menu{
        margin-bottom: 0;
        flex: 0 0 35%;
    }

    nav .social-links{
        flex-direction: row;
      	width: auto;
      	height: auto;
      	padding: 0 2em 0 0;
      	flex: 0 0 25%;
    }

    nav .social-links > a{
        height: 3em;
    }

    nav .social-links > a >  img{
        height: 100%;
        width: auto;
    }

    #content{
        padding-top: 7em;
    }

}

@media only screen and (min-width: 1100px){
	body{
	    font-size: 14px;
	}

	h1{
	    font-size: 5em;
	}

	nav{
		 padding: 0 10vw;
		 height: 10em;
	}

	a.anchor {
        top: -10em;
    }

	#nav-logo{
        height: 10em;
        width: 10em;
        background-size: 9em auto;
        flex: 0 0 10em;
    }

	#content{
       margin: 0 10vw;
    }

}

@media only screen and (min-width: 1500px){
	body{
	    font-size: 16px;
	}

	nav{
		 padding: 0 15vw;
	}

	#content{
       margin: 0 15vw;
    }
}


@media only screen and (min-width: 2000px){
	body{
	    font-size: 18px;
	}

	nav{
		 padding: 0 25vw;
	}

	#content{
       margin: 0 25vw;
    }
}


