* {
	padding:							0;
	margin:								0;
}

html, body {
	height:								100%;
}

#wrapper {
	display:							flex;
	align-items:						stretch;
	height:								100%;
}

#photo {
	-webkit-background-size:			cover;
	-moz-background-size:				cover;
	-o-background-size:					cover;
	background-size:					cover;
}

h1 {
	text-transform:						uppercase;
	font-size:							2em;
}

section#bio {
	flex:								1;
	padding:							0 10% 2em 10%;
}

section#bio p {
	padding:							0 0 1em 0;
}

section#bio p.t {
	color:								#666;
}

section#bio p.t, section#bio p.h {
	line-height:						1.5em;
}

section#bio p.b {
	padding-top:						2em;
	text-align:							center;
}

section#bio p.s {
	padding:							2em 0 0 0;
}

section#bio p.s a {
	opacity:							0.5;
}

section#bio p.b span.cb {
	background:							#d00;
	border-radius:						2em;
	padding:							0.5em 2em;
	color:								#fff;
	text-decoration:					none;
	font-size:							1.3em;
	cursor:								pointer;
}

#popup {
	position:							fixed;
	top:								0;
	left:								0;
	right:								0;
	bottom:								0;
	overflow:							auto;
	display:							block;
	z-index:							21;
}

#popup .wrapper {
	position:							relative;
	width:								100%;
	height:								100%;
	overflow:							hidden;
	padding:							0 0;
}

#contact-form {
	position:							absolute;
	background:							#fff;
	width:								90%;
	max-width:							600px;
	background:							#fff;
	-webkit-box-shadow:					0px 0px 8px 0px rgba(0,0,0,0.35);
	-moz-box-shadow:					0px 0px 8px 0px rgba(0,0,0,0.35);
	box-shadow:							0px 0px 8px 0px rgba(0,0,0,0.35);
	opacity:							0;
	left:								5%;
}

#contact-form fieldset {
	border:								none;
	padding:							2em 5%;
	position:							relative;
}

#contact-form fieldset .progress {
	display:							block;
	position:							absolute;
	top:								0;
	height:								3px;
	left:								0;
	background:							#d00;
}

#contact-form h2 {
	text-align:							center;
	border-bottom:						solid 1px #dfdfdf;
	padding-bottom:						0.2em;
	margin-bottom:						0.5em;
	font-size:							2em;
}

#contact-form textarea {
	width:								99%;
	height:								6em;
	font-size:							1.2em;
	outline:							none;
	resize:								none;
	padding:							0.2em 0.5%;
	-webkit-box-shadow:					inset 0px 0px 5px 0px rgba(0,0,0,0.2);
	-moz-box-shadow:					inset 0px 0px 5px 0px rgba(0,0,0,0.2);
	box-shadow:							inset 0px 0px 5px 0px rgba(0,0,0,0.2);
}

#contact-form small {
	display:							block;
	margin-bottom:						1em;
	color:								#999;
}

#contact-form .g-recaptcha {
	margin-bottom:						1em;
	opacity:		
}

#contact-form textarea.init {
	color:								#aaa;
}

#contact-form div.bw {
	text-align:							center;
	position:							relative;
}

#contact-form div.bw button {
	border-style:						solid;
	border-width:						1px;
	position:							relative;
	padding:							0.5em 0;
	cursor:								pointer;
}

#contact-form div.bw button span {
	padding:							0.5em 2em;
	font-size:							1.2em;
	margin-top:							1px;
	cursor:								pointer;
}

#contact-form div.bw button.g {
	background:							#d00000; /* Old browsers */
	background:							-moz-linear-gradient(top,  #d00000 0%, #c40000 100%); /* FF3.6-15 */
	background:							-webkit-linear-gradient(top,  #d00000 0%,#c40000 100%); /* Chrome10-25,Safari5.1-6 */
	background:							linear-gradient(to bottom,  #d00000 0%,#c40000 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter:								progid:DXImageTransform.Microsoft.gradient( startColorstr='#d00000', endColorstr='#c40000',GradientType=0 ); /* IE6-9 */
	border-color:						#a30000;
}

#contact-form div.bw button.g.disabled {
	opacity:							0.5;
}

#contact-form div.bw button.g.disabled span,
#contact-form div.bw button.g.disabled {
	cursor:								wait;
}

#contact-form div.bw button.g span {
	color:								#fff;
}

#contact-form div.bw button.a {
	background:							#f3f3f3; /* Old browsers */
	background:							-moz-linear-gradient(top,  #f3f3f3 0%, #dedede 100%); /* FF3.6-15 */
	background:							-webkit-linear-gradient(top,  #f3f3f3 0%,#dedede 100%); /* Chrome10-25,Safari5.1-6 */
	background:							linear-gradient(to bottom,  #f3f3f3 0%,#dedede 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter:								progid:DXImageTransform.Microsoft.gradient( startColorstr='#f3f3f3', endColorstr='#dedede',GradientType=0 ); /* IE6-9 */
	border-color:						#888;
}

#notification {
	position:							fixed;
	right:								2%;
	width:								80%;
	max-width:							350px;
	top:								0;
	opacity:							0;
	display:							block;
	z-index:							99;
	padding-top:						1em;
	padding-right:						1em;
	padding-bottom:						1em;
	padding-left:						calc(1em + 32px);
	font-size:							90%;
	background-position:				1em 50%;
	background-repeat:					no-repeat;
}

#notification.ok {
	background-color:					rgba(90, 191, 13, 0.9);
	background-image:					url("../images/icon-ok-16.png");
	color:								#fff;
}

#notification.error {
	background-color:					rgba(241, 50, 50, 0.9);
	background-image:					url("../images/icon-error-16.png");
	color:								#fff;
}

#notification.issue {
	background-color:					rgba(241, 184, 50, 0.9);
	background-image:					url("../images/icon-info-16.png");
	color:								#fff;
}

#notification.ok:before {
	display:							
}