/*
	A. Kwan Home Base
	Version: 2.0.12;
	Author: A. Kwan;
*/

/*** MY COLORS ***/
/*
	--gold: #E0A225;
	--goldenrod: #FCCC2E;
*/

/*** GENERAL ***/

*, *:before, *:after {
	box-sizing: border-box;
}

html {
	border-top: 5px solid #FCCC2E;
}

body {
	background-color: #f8f8f8;
	font-size: 17px;
	line-height: 150%;
	margin: 0;
	text-align: justify;
}

h1, h2, h3, h4, h5, h6 {
	text-transform: uppercase;
	text-align: center;
	text-decoration: none;
	color: black;
	font-family: 'Trebuchet MS', sans-serif;
	font-weight: normal;
	letter-spacing: 2px;
	margin-bottom: 10px;
}

h2 {
	font-size: 26px;
}


a {
	color: #C52427;
	text-decoration: none;
	-webkit-transition-duration: .5s;
    -moz-transition-duration: .5s;
    -o-transition-duration: .5s;
    transition-duration: .5s;
}

a:hover {
	color: #f22a2e;
}

table {
	border-spacing: 0;
	margin: 0 auto;
}

caption {
	display: none;
}

th {
	font-family: 'Times New Roman', serif;
    font-weight: normal;
    text-transform: uppercase;
}

tr:first-of-type {
	background-color: #C52427;
	color: #fff;
}

td, th {
	border: 1px solid black;
	padding: 5px;
}

hr {
	border: 1px dashed #FCCC2E;
	max-width: 800px;	
	margin: 30px auto;
}

#wrapper {
	width: 100%;
	margin: 0px auto;
	/*background-color: #FFFFFF;*/
}

.clear {
	clear:both;
}


/*** HEADER ***/
header, footer {
	display: block;
	height: 80px;
	/*background-color: #E0A225;
	background-image: url('img/bg-diamonds-big.png');*/
}

div#title {
	position: absolute;
	left: 20px;
	top: 30px;
	z-index: 999;
}

h1#site-title {
	font-family: serif;
	letter-spacing: normal;
	margin: 0;
}

h1#site-title a {
	font-size: 1.2em;
	color: black;
	-webkit-font-smoothing: antialiased;
	text-decoration: none;
	text-transform: lowercase;
}


/*** NAVIGATION ***/
nav {
	display: block;
	width: 100%;
	height: 50px;
	padding-top: 25px;
}

.navbar-toggle {
	border: 2px solid #FCCC2E;
}

.navbar-toggle .icon-bar {
	background-color: #FCCC2E;
}

nav ul {
	list-style: none;
	display: table;
	table-layout: fixed;
	padding: 0;
	margin: 0 10px;
	float: right;
	z-index: 1000;
}

nav ul li {
	display: inline-block;
}

nav ul li:hover ul.dropdown {
	display: block;
}

nav ul li.subitem {
	display: none;
}

nav ul li a {
	padding: 0.3em 0.6em;
	font-size: 21px;
	font-family: serif;
	text-transform: lowercase;
	text-decoration: none;
	color: black;
	transition: all 0.3s ease-in-out;
	-webkit-font-smoothing: antialiased;
}

nav ul li a:hover {
	color: #E0A225 !important;
}


/*** CONTENT ***/
main {
	display: block;
	background-color: white;
	padding: 30px;
	width: 90%;
	max-width: 960px;
	margin: 30px auto 20px;
}

main a {
	color: #E0A225;
	border-bottom: 2px solid #E0A225;
}

main a:hover {
	color: #FCCC2E;
	text-decoration: none;
}

section, figure, figcaption {
	display: block;
}

form .row {
	width: 654px;
	max-width: 100%;
	margin: 0 auto;
}

form label {
	display: none;
}

input, textarea {
	border: 2px solid #c9c9c9;
	height: 45px;
	font-size: 14px;
	padding: 0 10px;
}

input[type=text], input[type=email] {
	width: 313px;
	max-width: 100%;
	margin: 0 0 5px 0;
}

input#subject {
	width: 630px;
}

input[type=submit] {
	display: block;
	margin: 0 auto;
	cursor: pointer;
}

textarea {
	width: 630px;
	max-width: 100%;
	padding-top: 15px;
	padding-bottom: 15px;
}


/*** HOME ***/
#home h2 {
	font-size: 100px;
	text-align: left;
}

#home h3 {
	text-transform: none;
	text-align: left;
}


/*** BIO ***/
#biopic {
	float: right;
	width: 30%;
	margin-right: 0;
	margin-bottom: 5px;
	text-align: right;
	font-size: 80%;
	font-style: italic;
}

#biopic img {
	width: 100%;
	height: auto;
	transition: all 0.2s linear;
}

#biopic img:hover {
	transform: rotate(3deg);
}

/*** RESUME ***/
#resume h3, #press h3 {
	margin-top: 50px;
	text-align: left;
	font-family: Arial, Helvetica, sans-serif;
	color: #C52427;
}

#resume h4 {
	text-align: left;
	font-weight: bold;
	margin-bottom: 0;
}

#resume h4 .location {
	font-weight: normal;
}

#resume h4 .position {
	text-transform: none;
	font-weight: normal;
}

#resume .dates {
	font-size: 80%;
	text-transform: uppercase;
}

#resume ul {
	margin: 0 0 30px;
}

/*** PROJECTS ***/
#projects a:hover {
	color: #000000;
}

#projects a:hover .project-text {
	border: 1px solid #C52427;
}

#projects a.project {
	display: block;
	width: 100%;
	margin-bottom: 20px;
	border: 0;
	padding: 0 9px;
	color: #3d3d3d;
}

#projects .project-heading {
	margin-top: 0;
	font-size: .9em;
}

#projects .project-text {
	border: 1px solid black;
	border-radius: 20px;
	padding: 9px;
}

#projects .project-desc {
	text-align: left;
	color: #3d3d3d;
	font-size: 14px;
}


/*** WEB PROJECTS ***/
#projects .work-item {
	padding: .9375rem;
	float: left;
	width: 50%;
}

#projects .work-item:hover {
	background-color: #eee;
	transition: all 0.3s ease-out;
}

#projects .work-item a {
	border: 0;
}

#projects .work-item img {
	height: auto;
	max-width: 100%;
}

#projects .work-item a h3 {
	display: none;
}

#projects .work-item .site-details img:hover {
	opacity: 0.1;
}

#projects .work-item .site-details .site-details-desc {
	position: absolute;
	left: 0;
	top: 0;
	width: 280px;
	height: 200px;
	/*padding-top: 20px;*/
	background: url('img/bg-shade3.png');
	opacity: 0;
	transition: all 0.3s ease-out;
	line-height: 1.25;
}

#projects .work-item .site-details .site-details-desc:hover {
	opacity: 1;
}

#projects .work-item .site-details a {
	font-weight: bold;
	font-size: 110%;
	color: white;
	border: none;
}

#projects .work-item .site-details h3 {
	margin: 40px 20px 10px;
	color: white;
}

#projects .work-item .site-details ul {
	list-style-type: none;
    padding: 0;
}

.work-item:hover .site-details {
	opacity: 1;
}

#project img {
	display: block;
	margin: 0 auto;
	max-width: 100%;
}

/*** READING ***/

	/*** RECOMMENDATIONS ***/
#filters {
	margin: 0 auto 10px;
}

#filters button {
	background-color: white;
	padding: 0;
	border: 1px solid #E0A225;
	border-radius: 5px;
	margin-top: 6px;
	margin-bottom: 1px;
	width: 75px;
	height: 40px;
	vertical-align: top;
	text-transform: uppercase;
	color: black;
	cursor: pointer;
	transition: all 0.14s ease-in-out
}

#filters button:hover {
	border: 1px solid #FCCC2E;
	color: #FCCC2E;
}

.grid-item {
	display: inline-block;
	vertical-align: top;
	width: 48%;
	margin-right: 15px;
	margin-bottom: 15px;
	clear: both;
}

.book-cover {
	display: inline-block;
	float: left;
	width: 150px;
	margin-right: 10px;
}

.book-cover img {
	width: 150px;
	height: auto;
}

.book-info {
	display: inline;
	font-size: 80%;
	line-height: 125%;
}

.book-info h3 {
	margin: 0;
	text-align: left;
}

.book-info .description {
	text-align: justify;
}


	/*** PULL LIST ***/

td[headers=title] {
	font-style: italic;
}

/*** CONTACT ***/
#contact p {
	text-align: center;
}


/*** FOOTER ***/
footer {
	position: relative;
	top: -20px;
	padding: 4em 0;
	text-align: center;
	clear: both;
	-webkit-font-smoothing: antialiased;
	font-style: italic;
}

footer a:hover { color: black }

/*** RESPONSIVE STYLES ***/
@media all and (max-width: 705px) {

	.small {
		display: block;
	}
	.big {
		display: none;
	}

	body {
		text-align: left;
	}

	div#title {
		position: relative;
		left: 0px;
	}

	nav ul {
		margin: 10px auto;
		float: none;
	}

	nav ul li:hover ul.dropdown {
		display: none;
	}

	nav ul li.subitem {
		display: block;
	}

	nav ul li a:hover {
		color: #C52427;
		border: none;
		text-decoration: none;
	}

	#content {
		margin-top: 100px;
	}

	#home h2 {
		font-size: 60px;
		text-align: center;
	}

	#bio figure#biopic {
		float: none;
		width: 65%;
		margin: 0 auto;
	}

	#projects .work-item {
		float: none;
	}

	#projects .work-item .site-details {
		width: 100%;
		height: auto;
	}

	#projects .work-item .site-details img:hover {
		opacity: 1;
	}

	#projects .work-item .site-details .site-details-desc:hover {
		opacity: 0;
	}

	.work-item:hover .site-details {
		opacity: 0;
	}

	#recs .grid-item {
		width: 100%;
	}

	#recs .book-cover {
		display: block;
		float: none;
		margin: 0 auto;
	}

	#contact input[type=text] {
		display: block;
	}

}

@media all and (max-width: 767px) {

	nav ul li a {
		padding: 0.3em 0.2em;
	}

	#projects .work-item {
	padding: .9375rem;
	float: left;
	width: 100%;
}

}

@media (min-width: 768px) and (max-width: 1050px) {

/*@media all and (max-width: 1050px) {*/

	.all-items {
		width: 100%;
		max-width: 700px;
		margin: 0 auto;
	}

	#filters {
		max-width: 480px;
	}

}

@media print {
	header {
		height: 80px;
	}

	nav ul {
		margin: 0 auto;
	}

	nav ul li {
		display: none;
	}

	main { 
		padding: 0;
		width: 100%;
		max-width: none;
	}

	footer .links {
		display: none;
	}
}