/*== Reset ==*/

h1, h2, h3, h4, h5, h6{
	padding: 0;
	margin: 0;
}
/*-- END Reset --*/

/*== debug ==*/

.debug{
	background: rgba(0,0,0,0.05);
}
/*-- END Reset --*/

/*== utility ==*/
.foreground{
	z-index: 1000;
}

/*-- END utility --*/

/*//// universal styles ////*/

/*== fonts ==*/
body, h1, h2, h3, a, p, span{
	font-family: motiva-sans, sans-serif;
}
body, h1, h1 a, h2, h3, a, p, span{
	letter-spacing: 0.07em;
}
body, p, span, nav a{
	font-weight: 300;
}
h2, h2 a, h3, a, strong{
	font-weight: 500;
}
h1, h1 a{
	font-weight: 700;
}
h1{
	text-transform: uppercase;
}
h2, nav a{
	text-transform: capitalize;
}
p#specs{
	font-style: italic;
}
/*-- END fonts --*/

/*== link treatments ==*/
a{
	font-weight: 700;
	text-decoration: none;
}
p a:hover{
	padding: 0.5rem 0;
	border-bottom: 1px solid #777;
}
nav.mainNav a{
	text-decoration: none;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	text-transform: uppercase;
}
nav.mainNav a:hover{
	color: #fff;
	background: #333;
}
body#home nav.mainNav a#home, body#catagory-2d nav.mainNav a#catagory-2d, body#catagory-3d nav.mainNav a#catagory-3d, body#about nav.mainNav a#page-about{
	font-weight: 700;
	text-transform: uppercase;
}
body#home nav.mainNav a#home:hover, body#catagory-2d nav.mainNav a#catagory-2d:hover, body#catagory-3d nav.mainNav a#catagory-3d:hover{
	color:#333;
	background: none;
}
/*-- END link treatments --*/

/*== colors ==*/
body, p, span, h1, h2, h3, a, nav.mainNav a, h1 a{
	color:#333;
}
/*-- END colors --*/

/*== home page ==*/
body.home#home section#page_content h2{
	position: fixed;
	width: auto;
	left: -300%;
	top:-300%;
}
/*-- END home page --*/

/*== post page ==*/
body.post section#page_content{
	border:0px solid #777;
	border-width: 1px 0;
}
/*-- END post page --*/

/*\\\\ END universal styles \\\\*/

/*//// mobile first styles ////*/

/*== moible font sizes ==*/
body, h3, a, p, span{
	font-size:5vw;
	line-height: 7vw;
}
h1, h1 a{
	font-size:12.5vw;
	line-height: 17vw;
}
h2{
	font-size:8vw;
	line-height: 10vw;
}
nav.mainNav a{
	font-size: 4vw;
}
/*-- END moible font sizes --*/

body{
	padding: 2rem 2rem;
}
header.site_header{
	padding: 1rem 0;

	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: stretch;
}
nav.mainNav{
	display: flex;
	flex-direction: row;
	justify-content:space-between;
	margin-top: 4vw;
}
nav.mainNav a{
	padding-left: 0;
	padding-right: 0;
}
/*== home page ==*/
body.home section#page_content{
	position: relative;
	/* show as flexbox on mobile*/
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	padding: 2rem 0;
}
body.home section#page_content h2{
	display: block;
	position: relative;
	width: 100%;
	padding: 2rem 0 4rem 0;
	border-top: 0px solid #777;
}
body.home section#page_content a.post{
	display: block;
	position: relative;
	/*width: 100%;
	padding: 0;*/

	text-decoration: none;
	text-transform: capitalize;
}
body.home section#page_content a.post span, body.home section#page_content a.post.feature span{
	position: relative;
	opacity: 1;
	left: 0;
	right: 0;
	top:auto;
	bottom: auto;
	margin: 0;
	padding: 0;
	padding: 1rem 0;

	border-top:0px solid #777;
	background: #fff;
	color: #333;
}
body.home section#page_content a.post img, body.post section#page_content section#images img{
	position: relative;
	width: 100%;
	height: auto;
	outline: 0;
}
/*-- END home page --*/

/*== post page ==*/
body.post section#page_content{
	flex-direction: column;
	justify-content: flex-start;
	padding: 4rem 0;
}
body.post section#page_content section#info{
	margin: 0 0.15rem;
	padding-bottom: 4rem;

	display: flex;
	flex-direction: column;
}
body.post section#page_content section#info div#title_specs{
	width: 100%;
}
body.post section#page_content section#info h2, body.post section#page_content section#info p{
	width: auto;
	padding-bottom: 0.5rem;
}
body.post section#page_content section#info p#description{
	margin-top: 1rem;
}
body.post section#page_content section#images{
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: center;
	padding: 0;
}
body.post section#page_content section#images img{
	width: auto;
	height: auto;
	max-width: 100%;
	outline: 0;
	outline-offset:0;
	margin: 0.25rem 0;
	padding: 0;
}
/*-- END post page --*/

/*\\\\ END mobile first styles \\\\*/

/*//// desktop styles ////*/
@media screen and (min-width: 769px){
	/*== desktop font sizes ==*/
	body, h3, a, p, span{
		font-size: 1rem;
		line-height: 200%;
	}
	h1, h1 a{
		font-size: 1.1rem;
		line-height: 125%;
	}
	h2{
		font-size:1.25rem;
		line-height: 125%;
		padding: 0 !important;
	}
	nav.mainNav a{
		font-size: 1rem;
	}
	/*-- END desktop font sizes --*/

	body{
		padding: 2rem 6rem;
		padding-top: 0.25rem;

	}
	header.site_header{
		display: flex;
		flex-basis: 1;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content:space-between;
		align-items:center;

		/*left: 0rem;
		right: 0rem;
		top:0rem;
		height: 8rem;*/
		margin:0 0.15rem;
		padding-bottom: 1rem;
	}
	nav.mainNav{
		margin: 0;
	}
	nav.mainNav a{
		padding-left: 0.5rem;
		padding-right: 0.5rem;
	}

	/*== home page ==*/
	body.home section#page_content{
		/*flex-direction: row;
		flex-wrap: wrap;
		padding: 0;*/

		/* show as grid */
		display: grid;
		grid-gap: 0;
		grid-template-columns: 1fr 1fr;
		/*grid-auto-columns: 1fr;
		grid-auto-rows:1fr;*/
		grid-auto-flow: row dense;
	}
	body.home section#page_content h2{
		padding-left: 0.15rem;
		padding-right: 0.15rem;
	}
	body.home section#page_content a.post{
		padding: 50% 0;
		margin: 0;
	}
	body.home section#page_content a.post.feature{
		grid-column: 1/3;
		padding: 50% 0 0 0;
	}
	body.home section#page_content a.post span, body.home section#page_content a.post.feature span{
		display: block;
		position: absolute;
		opacity: 0;

		bottom: .5rem;
		right: 0.5rem;
		left: 50%;
		padding: 0.5rem 1rem;
		z-index: 1000;

		background: rgba(0,0,0,0.8);
		color:#eee;

		font-size: 0.8rem;
		font-weight: 500;
		text-transform: capitalize;

		transition: opacity 300ms;
	}
	body.home section#page_content a.post img{
		position: absolute;
		top:0;
		left: 0;
		max-width: 100%;
		max-height: 100%;

		/*outline: 0.2rem solid #fff;
	    outline-offset: -0.15rem;
		object-fit: cover;*/

		transition: outline 150ms, outline-offset 150ms;

		/* use this if you are imitiating "cover"
		display: block;
		position: absolute;
		max-width: 100%;
		height: auto;

		top:50%;
		margin-top: -50%;*/
	}
	body.home section#page_content a.post:hover span{
		opacity: 1;
	}
	body.home section#page_content a.post:hover img{

	}
	/*-- END home page --*/

	/*== post page ==*/
	body.post section#page_content{
		padding-top: 2rem;
	}
	body.post section#page_content section#info{
		flex-direction: row;
		flex-wrap: nowrap;
		justify-content: space-between;
		align-items: flex-start;
	}
	body.post section#page_content section#info div#title_specs{
		position: relative;
		width: 45%;
	}
	body.post section#page_content section#info h2{
		margin: 0;
	}
	body.post section#page_content section#info p{
		margin: 0;
	}
	body.post section#page_content section#info p#description{
		width: 50%;
		margin: 0;
	}
	/*-- END post page --*/

	/*== about page ==*/
	body#about section#page_content{
		display: flex;
		flex-direction: row;
	}
	body#about .left-column{

	}
	body#about .right-column{
		max-width: 50rem;
		margin-left: auto;
		margin-right: auto;
	}
	body#about nav.pageNav{

		margin-right: 2rem;
	}

	body#about nav.pageNav a{
		display: block;
		text-transform: uppercase;
		border-bottom: 0px solid;
		white-space: nowrap;
	}
	body#about nav.pageNav a:hover{
		background: #333;
		color: #fff;
	}
	body#about img{
		width: 100% !important;
		height: auto;
	}
	body#about article{
		margin-top: 2rem;
	}
	body#about article p{
		max-width: 35rem;
	}

	/*-- END about page --*/
}
/*//// END desktop styles ////*/
