body {
	background: #eee url(/css/bg.png) fixed top left repeat-x;
	font-family: Arial, sans-serif;
	font-size: 100%;
	color: #333;
	margin: 0;
	padding: 0;
	text-align: center;
	}
	
h1 {
	line-height: 1em;
	font-size: 3em;
	font-weight: normal;
	margin: 0 0 0.5em 0;
	text-align: center;
	display: none;
	}
h2, #lightboxCaption {
	font-weight: 100;
	font-size: 1.5em;
	line-height: 1em;
	margin: 1em 0;
	}
h3, h4 {
	font-size: 1em;
	font-weight: bold;
	line-height: 1.5em;
	margin: 1.5em 0 0 0;
	}

p, ol, ul {
	line-height: 1.5em;
	margin: 0 0 1.5em 0;
	}

a {
	color: #459;
	text-decoration: none;
	position: relative;
	}
a:visited {color: #459;}
a:hover, a:focus, a:active {color: #89e;}
p a {text-decoration: underline;}

a.lightbox, .piece-home a {
	display: block;
	overflow: hidden;
}

a .title-overlay {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	background-image: url(/css/overlay.png);
	background: rgba(0,0,0,0.5);
	color: #cd5;
	padding: 0.5em;
	font-size: 1.5em;
	font-weight: 100;
	opacity: 0;
	margin-bottom: -10em;
	-moz-transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	-0-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
a:hover .title-overlay, .piece-home .title-overlay {
	opacity: 1;
	margin-bottom: 0;
}

img {
	border: 0;
	max-width: 100%;
	vertical-align: bottom;
}

.clear {clear: both;}

/* ------------ about page -------- */

.headshot {
	width: 320px;
	float: right;
	margin-left: 3%;
	margin-bottom: 2em;
	max-width:  100%;
}

/* ------------ pieces -------- */

.piece, .col2, .col3 {
	width: 48.4%;
	margin-right: 1.5%;
	float: left;
	margin-bottom: 3em;
}
.piece-narrow, .col3 {
	width: 31.8%;
	margin-right: 1.5%;
}
.piece-wide {
	width: 65.1%;
}
.piece-full {
	width: 100%;
	margin-right: 0;
	float: none;
	clear:  both;
}

.piece .img-wrap {
	position: relative;
	display: block;
	overflow: hidden;
}
.piece .img-wrap .detail {
	position: absolute;
	right: 1em;
	top: 1em;
	opacity: 0;
	margin-right: -16em;
	-moz-transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	-0-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
.piece .img-wrap .detail-2 {
	top: 8em;
}
.piece .img-wrap:hover .detail {
	opacity: 1;
	margin-right: 0;
}
.piece .img-wrap .detail .title-overlay {font-size: 1em;}

/* ------------ home page -------- */

.piece-home {
	width: 48.4%;
	margin-right: 1.5%;
	float: left;
	margin-bottom: 1.5%;
	position: relative;
	background: #ccc;
}

/* ------------ page layout -------- */

#wrapper {
	margin: 0 auto;
	width: 70em;
	padding: 2em 3em;
	text-align: left;
	background: #fff;
}

#header {
	height: 100px;
	background: url(/css/header-new.png) top center no-repeat;
	margin: 0 0 1.5em 0;
	border-bottom: 0.5em solid #cd5;
}

#header a {
	display: block;
	height: 100px;
	text-decoration: none;
}

#header a i {visibility: hidden;}

#content {
	clear: both;
	float: left;
	width: 100%;
	margin-bottom: 2em;
}
	
#footer {
	float: none;
	clear: both;
	padding: 1.5em;
	border-top: 0.5em solid #459;
	text-align: center;
}
	
/* ------------ nav menu -------- */

#menu ul {
	list-style-type: none;
	padding: 0;
	float: left;
	clear: both;
	width: 100%;
	margin: 0 0 2em 0;
	}
#menu li {display: inline;}

#menu ul a {
	display: block;
	width: auto;
	float: left;
	text-decoration: none;
	margin-bottom: 0.5em;
	font-size: 1.2em;
	line-height: 1.5em;
	padding: 0.5em 1.5em;
	text-align: center;
	font-weight: bold;
	color: #459;
	}

#menu ul a:hover, #menu ul a:focus,
body.about #menu_about,
body.events #menu_events,
body.sculpture #menu_sculpture,
body.beds #menu_beds,
body.cabinets #menu_cabinets,
body.chairs #menu_chairs,
body.kitchen #menu_kitchen,
body.tables #menu_tables {
	background: #459;
	color: #fff;
	}

/* ------------ lightbox -------- */

#content #lightbox img {
	margin: 0;
	float: none;
	}

#lightbox {
	background-color: #f9f9f9;
	padding: 1em;
	border: 0.5em solid #666;
	max-width: 90% !important;
	max-width: 90vw !important;
	}
#lightboxDetails {
	padding-top: 0.5em; 
	max-width: 100% !important;
}	
#lightboxCaption {float: left; margin: 0;}
#keyboardMsg {float: right;}

#overlay { 
	background-image: url(/css/overlay.png);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 90;
	width: 100%;
	height: 100%;
	filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="/css/overlay.png", sizingMethod="scale");
	}
	
/* ------------ tablet -------- */

@media screen and (max-width: 76em) {
	
	body{ background: #fff;}

	#wrapper {
		width: auto;
	}
	
	#header, #header a {
		height: 120px;
		height: 16vw;
		background-size: 100% auto;
	}
	
	#menu ul a {
		margin-bottom: 0.5em;
		font-size: 1em;
		line-height: 1.5em;
		padding: 0.5em 1.2em;
	}
	
	a .title-overlay {
		display: none;
	}
	a:hover .title-overlay, .piece-home .title-overlay {
		display: block;
	}

}

/* ------------ phone -------- */

@media screen and (max-width: 520px) {
    
    #wrapper {
    	padding: 1em;
    }
    
    #menu ul a {
		font-size: 0.9em;
		padding: 0.5em;
	}

	.piece, .piece-narrow, .piece-wide, .piece-home {
		width: 100%;
		margin-right: 0;
		float: none;
	}
	
	.headshot {
		margin-left: 0;
		float: none;
	}
	
	.clear {clear: none;}

}