@-webkit-keyframes slide {
	0% {
		-webkit-transform: translate(0,-20px); 
		opacity: 0;
	}
	70% {
		-webkit-transform: translate(0,-20px); 
		opacity: 0;
	}
	90% {
		-webkit-transform: translate(0,3px); 
		opacity: 1;
	}
	100% {
		-webkit-transform: translate(0,0); 
	}
}

@-webkit-keyframes reveal {
	0% {
		-webkit-transform: translate(0,0); 
		opacity: 0;
		width: 0;
	}
	70% {
		-webkit-transform: translate(0,0); 
		opacity: 1;
		width: 0;
	}
	100% {
		-webkit-transform: translate(0,0); 
		opacity: 1;
		width: 100%;
	}
}

@-webkit-keyframes fade {
	0% {
		-webkit-transform: translate(0,0); 
		opacity: 0;
	}
	60% {
		-webkit-transform: translate(0,0); 
		opacity: 0;
	}
	100% {
		-webkit-transform: translate(0,0); 
		opacity: 1;
	}
}

html {
	font-size: 62.5%;
}

body {
	background-color: #fafafa;
	font-family: HelveticaNeue, "Helvetica Neue", Helvetica, Arial, sans-serif;
	-webkit-font-smoothing: subpixel-antialiased;
}

#main {
	width: 400px;
	margin: 0 auto;
	padding: 15%;
}

#logo {
	width: 30px;
	background-color: #fafafa;
	-webkit-animation-name: slide; 
  	-webkit-animation-duration: 2500ms; 
  	-webkit-animation-iteration-count: 1; 
	-webkit-animation-timing-function: ease-out;
}

h1 {
	margin: 18px 0 0 0;
	font: bold 4.0em/48px HelveticaNeue, "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #293337;
	background-color: #fafafa;
	-webkit-animation-name: fade; 
  	-webkit-animation-duration: 1500ms; 
  	-webkit-animation-iteration-count: 1; 
	-webkit-animation-timing-function: ease-out;
}

#vcard {
	margin-top: 60px;
	padding-top: 30px;
	border-top: 1px solid #293337;
	background-color: #fafafa;
	-webkit-animation-name: reveal; 
  	-webkit-animation-duration: 3500ms; 
  	-webkit-animation-iteration-count: 1; 
	-webkit-animation-timing-function: ease-out;
}

h2#fn {
	float: left;
	font: bold 1.6em HelveticaNeue, "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #293337;
	background-color: #fafafa;
	-webkit-animation-name: fade; 
  	-webkit-animation-duration: 6000ms; 
  	-webkit-animation-iteration-count: 1; 
	-webkit-animation-timing-function: ease-out;
}

a#email {
	float: right;
	font: bold 1.6em HelveticaNeue, "Helvetica Neue", Helvetica, Arial, sans-serif;
	text-decoration: none;
	color: #293337;
	background-color: #fafafa;
	border-bottom: none;
	-webkit-animation-name: fade; 
  	-webkit-animation-duration: 6000ms; 
  	-webkit-animation-iteration-count: 1; 
	-webkit-animation-timing-function: ease-out;
}

a#email img {
	width: 17px;
}

a#email span {
	display: none;
}

a {
	padding-bottom: 1px;
	font-weight: bold;
	color: #293337;
	text-decoration: none;
	border-bottom: 1px dotted #293337;
}

p {
	margin-bottom: 16px;
	font-size: 1.6em;
	line-height: 24px;
	color: #293337;
}

h1.error {
	font: bold 8.0em/80px HelveticaNeue, "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #293337;
	-webkit-animation-name: none; 
}

h2.error {
	font: bold 3.6em/40px HelveticaNeue, "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #293337;
}

#error-message {
	margin-top: 60px;
	padding-top: 30px;
	border-top: 1px solid #293337;
}

.uri {
	padding: 3px 7px;
	background-color: rgba(0,0,0,0.1);
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}

.button {
	padding: 3px 11px 4px 11px;
	color: #446d7a;
	background: -moz-linear-gradient(
		top,
		#b1d5e0 0%,
		#6f8c9c);
	background: -webkit-gradient(
		linear, left top, left bottom, 
		from(#b1d5e0),
		to(#6f8c9c));
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border: 1px solid #a0b2ba;
	-moz-box-shadow:
		0px 1px 2px rgba(000,000,000,0.1),
		inset 0px 1px 1px rgba(255,255,255,0.5);
	-webkit-box-shadow:
		0px 1px 2px rgba(000,000,000,0.1),
		inset 0px 1px 1px rgba(255,255,255,0.5);
	text-shadow:
		/* 0px -1px 0px rgba(000,000,000,0.7), */
		0px 1px 0px rgba(255,255,255,0.3);
	text-decoration: none;
}

/* a#email:hover span {
	display: inline;
} */

@media only screen and (max-width: 700px) {

	#main {
		width: 300px;
		padding: 10%;
	}

	#logo {
		width: 22px;
	}

	h1 {
		margin: 10px 0 0 0;
		font: bold 3.0em/38px HelveticaNeue, "Helvetica Neue", Helvetica, Arial, sans-serif;
	}

	#vcard {
		margin-top: 30px;
		padding-top: 15px;
	}

}

