body, html {
	margin:auto;
	height:100%;
	text-align:center;
	background-color:#e5e5e5;
	font-family: Arial, Calibri, sans-serif;
}
img {max-width:100%}
a { color:#333; text-decoration: none; }
a:hover, a:active {color:#000; text-decoration: underline; }
.clearfix {
	display:block;
	float:none;
	clear:both;
}

#wrapper {
	position: relative;
	width:96%;
	max-width:1020px;
	margin:1% auto;
	background-color: #fff;
	border-radius: 4px;
	box-shadow: 1px 2px 3px rgba(0,0,0,0.25);
}
#header {
	position:relative;
	margin-bottom:1em;
}
#header #logo {
	position:relative;
	display:inline-block;
	width:38%;
	text-align:right;
	vertical-align:middle;
	margin:1em 1em 0 1em;
}
#header #logo #logotext {
	font-size:2.5em;
	text-align:right;
	margin:0;
	line-height:90%;
}

#header #nav {
	display:inline-block;
	width:58%;
	font-weight:bold;
}
#header #nav a {
	display:inline-block;
	color:#333;
	text-decoration:none;
	font-weight:normal;
}
#header #nav a:hover, #nav a:active {
	color:#000;
	text-decoration:none;
	font-weight:bold;
}
#nav a.home {
	width:14%;
}
#nav a.about {
	width:15%;
}
#nav a.projects {
	width:19%;
}
#nav a.workshop {
	width:20%;
}
#nav a.contact {
	width:19%;
}

.hidden {
display:none;
}
h1 {
	font-size:2em;
	margin:0;
	font-weight:bold;
}
#content {
	position:relative;
	display:block;
	width:100%; height:auto; 
	text-align:left;
}
#full-width {
	position:relative;
	display:block;
}
#full-width .keytext {
	display:inline-block;
	position:absolute;
	bottom:0; right:0;
	z-index:100;
	padding:1em;
	margin-bottom:2em;
	background-color:black;
	filter: alpha(opacity=70);
	background-color:rgba(0, 0, 0, 0.7);
	color:#fff;
}
#content #keyphoto {
	position:relative;
	display:inline-block;
	margin-right:8px;
	width:58.75%;
	float:right;
	vertical-align: bottom;
}
.about-key {
	background-image: url(../images/keyphoto-shawn.jpg);
	height:477px;
}
#keyphoto .keytext {
	display:block;
	position:absolute;
	bottom:0;
	z-index:100;
	padding:1em;
	margin-bottom:2em;
	background-color:#000;
	filter: alpha(opacity=70);
	background-color:rgba(0, 0, 0, 0.7);
}
#keyphoto .previous {
	display:none;
	position:absolute;
	top:0; left:0;
	float:left;
	height:inherit;
	z-index:200;
	padding:10em 2em;
}
#keyphoto .next {
	display:none;
	position:absolute;
	top:0; right:0;
	float:right;
	height:inherit;
	z-index:200;
	padding:10em 2em;
}
#keyphoto:hover .previous, #keyphoto:hover .next {
	display:inline-block;
}
.keytext p, .keytext h1 {
	color:#fff; margin:0;
	filter: alpha(opacity=100);
}
.keytext a {
	color:#ddd;
}
.keytext a:hover, .keytext a:active {
	color:#fff; text-decoration: underline; 
}
#left {
	display:inline-block;
	width:39%;
	margin-left:8px;
}
#left .left {
	display:inline-block;
	width:49%;
	float: left;
}
#left .right {
	display:inline-block;
	width:49%;
	float: right;
}
#full-width {
	
}
#tagline {
	padding:.5em 0;
	border-top:2px solid #03981c;
	border-bottom:2px solid #03981c;
	text-align:center;
	font-size:2em;
	font-weight:bold;
}
#thumbnails {
	display: block;
	text-align:center;
	margin:0 .25%;
}
#thumbnails .thumbnail {
	display:inline-block;
	width:19.5%;
	float:left;
	margin:.10% .25%;
}
.thumbnail a:hover, .thumbnail a:active  {
	box-shadow: inset 0 0 10px rgba(0,0,0,0.5);
}

a img {
	border:0;
	}
#wrapper #footer {
	display:block;
	width:100%;
	position:relative;
	text-align:left;
	padding-top:1em;
	clear:both;
}
#footer a {  }
#footer a:hover, #footer a:active {
	text-decoration:underline;	
}
#fb, #ig, #yt { margin-right: .5em; }
#copyright {
	position:relative;
	display:inline-block;
	float: right;
	margin:1em;
	font-size:.5em;
	font-family: Tahoma, Arial, sans-serif;
	text-align:right;
}
#copyright a { font-weight:normal; }
#copyright a:hover { color:#000; }
#social {
	position: relative;
	display:inline-block;
	vertical-align:bottom;
	margin:0 1em 1em 1em;
}
@media only screen and (min-device-width : 320px) and (max-device-width : 480px) 
{
#header #logo {
	position:relative;
	display:block;
	width:90%;
	vertical-align:middle;
	text-align:right;
	margin:1em 1em 0 1em;
}
#header #logo #logotext {
	font-size:2.5em;
	text-align:right;
	margin:0;
}

#header #nav {
	display:block;
	width:100%;
	padding:.5em 0;
	font-weight:bold;
	font-size:.9em;
}
#header #nav a {
	display:inline-block;
	color:#333;
	text-decoration:none;
	font-weight:normal;
}

#nav a:hover, #nav a:active {
	color:#000;
	text-decoration:none;
	font-weight:bold;
}
#content #keyphoto {
	position:relative;
	display:block;
	width:100%;
	float:none;
	vertical-align: bottom;
}
#keyphoto .keytext, #full-width .keytext {
	position:relative;
	top:-5px;
	bottom:auto;
	z-index:100;
	padding:1em;
	margin-bottom:.5em;
	background-color:#000;
	filter: alpha(opacity=70);
	background-color:rgba(0, 0, 0, 0.7);
}
#left {
	display:block;
	width:100%;
	margin-left:0;
}
#left .left {
	display:inline-block;
	width:100%;
	margin-top:.25em;
	float: left;
}
#left .right {
	display:inline-block;
	width:100%;
	margin-top:.25em;
	float: right;
}
h1 {
	font-size:1.5em;
	margin:0;
}
#thumbnails .thumbnail {
	display:inline-block;
	width:31%;
	float:left;
	margin:1%;
}
}