/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain) */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; }
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
body { line-height: 1; }
ol, ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
table { border-collapse: collapse; border-spacing: 0; }
html { box-sizing: border-box; }
*, *:before, *:after { box-sizing: inherit; }


/* ========== LAYOUT ========== */

html, body {
	height: 100%;
}

body {
	background-color: #dadada;
	color: #444444;
	font-family: 'Press Start 2P', Arial, sans-serif;
	font-size: 18px;
	line-height: 1.2;
	margin: 0;
	padding: 0;
}
.disable-scroll {
	overflow-y: scroll;
	position: fixed;
	width: 100%;
}
.disable-scroll-nav {
	overflow-y: hidden;
	height: 100%;
}
.nowrap {
	white-space: nowrap;
}
.outer {
	height: 100%;
}

.hero {
	background: url("../img/hero1.png") no-repeat 50% 0%;
	background-size:cover;
  background-position:center center;

	position: relative;
	width: 100%;
	height: 100%;
}
.hero__attach {
	background-attachment: fixed;
}
.hero-mask__elem {
	background: #333;
	height: 100%;
	left: 0;
	opacity: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 3;
}

a {
	color: #95d0aa;
}

/* ========== NAV STYLES ========== */

nav {
	margin: 0 auto 0 auto;
	position: fixed;
	text-align: center;
	top: 15px;
	width: 100%;
	z-index: 10;
}
.nav-wrap__mod {
	opacity: 0;
}
.nav-mask {
	display: none;
	height: 100%;
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	z-index: 9;
}
.collapsing {
  -webkit-transition: none;
  transition: none;
}
.navbar__elem {
	position: relative;
	z-index: 10;
}
.navbar-wrap {
	background: #080808;
	padding: 3px 3px 3px 3px;
	padding-bottom: 3px;
	text-align: center;
	width: 100%;
}
.navbar-wrap label {
	background: #080808;
	color: #edf2f4;
	font-size: 18px;
	left: 0;
	margin: 0 auto 0 auto;
	position: absolute;
	right: 0;
	top: 0;
	width: 180px;
}
.navbar-wrap ul {
	border: 5px solid #edf2f4;
	font-size: 0;
	padding: 24px 0 0 0;
	text-align: left;
}
.navbar-wrap ul li {
	display: inline-block;
	position: relative;
	text-align: center;
	width: 25%;
}
.navbar-wrap ul li img {
	position: absolute;
	left: -25px;
}
.navbar-wrap ul li a {
	color: #edf2f4;
	cursor: pointer;
	display: inline-block;
	font-size: 18px;
	padding: 14px 0 14px 0;
	position: relative;
	text-decoration: none;
	text-transform: uppercase;
}
.btn-mobile-nav {
	position: absolute;
	right: -11px;
	top: -17px;
	z-index: 9;
}
.cursor {
	animation: blink 1s;
  animation-iteration-count: infinite;

	visibility: hidden;
}

p {
	font-size: 20px;
	padding: 20px 0 0 0;
}

/* ========== INTRO STYLES ========== */

.hello__elem {
	background: none;
	border-bottom: 15px solid rgba(0,0,0, .25);
	display: table;
	height: 100%;
	min-height: 350px;
	opacity: 0;
	position: absolute;
	text-align: center;
	top: 0;
	width: 100%;
	z-index: 3;
}
.hello__elem .intro-text {
	display: table-cell;
	margin: 0 auto 0 auto;
	vertical-align: middle;
	z-index: 10;
}

.hello__elem .intro-text h1 {
	color: #edf2f4;
	font-size: 30px;
	line-height: 45px;
	margin: 0 auto 20px auto;
	padding: 0 20px 0 20px;

	text-align: center;
	text-shadow: 3px 3px #080808;
	text-transform: uppercase;
}
.hello__elem .intro-text h2 {
	color: #edf2f4;
	font-size: 30px;
	line-height: 45px;
	margin: 0 auto 0 auto;
	padding: 0 20px 0 20px;
	text-align: center;
	text-shadow: 3px 3px #080808;
	text-transform: uppercase;
	width: 100%;
}

/* ========== CONTENT STYLES ========== */

.content-wrap {
	display: block;

	padding: 120px 0 100px 0;
	position: relative;
	text-transform: uppercase;
	width: 100%;
	z-index: 3;
}
.skills__elem.content-wrap__mod {
	background: #95d0aa;
	border-top: 15px solid #433c39;
	border-bottom: 15px solid #433c39;
	color: #080808;
}
.work__elem.content-wrap__mod {
	background: #edf2f4;
	border-top: 15px solid #433c39;
	border-bottom: 15px solid #433c39;
	color: #080808;
}
.experience__elem.content-wrap__mod {
	background: #b7b195;
	border-top: 15px solid #433c39;
	border-bottom: 15px solid #433c39;
	color: #433c39;
}
.contact__elem.content-wrap__mod {
	background: #71613d;
	border-top: 15px solid #433c39;
	color: #edf2f4;
}
.content-wrap h3 {
	display: block;
	margin: 30px 0 0 0;
}
.content-wrap h3 a {
	font-weight: bold;
}
.content-wrap .subheader {
	color: #080808;
	font-size: 14px;
	line-height: 30px;
	padding: 20px 40px 60px 40px;
	text-align: center;
}
.content-wrap .col-skills .icon {
	display: block;
	margin: 0 auto 20px auto;
}
.content-wrap h2 {
	font-size: 24px;
	line-height: 35px;
	padding: 0 0 20px 0;
	text-align: center;
	width: 100%;
}
.content-wrap .col-skills h3 {
	color: #080808;
	font-size: 20px;
	padding: 0 0 20px 0;
	text-align: center;
	width: 100%;
}
.content-wrap .col-skills p {
	color: #080808;
	font-size: 10px;
	line-height: 25px;
	padding: 0 0 60px 0;
	text-align: center;
}

/* ========== SKILL STYLES ========== */

.skill-wrap {
	display: table;
	padding: 0 0 10px 0;
	width: 100%;
}
.skill-label {
	display: table-cell;
	font-size: 11px;
	height: 40px;
	line-height: 17px;
	text-align: center;
	width: 40%;
	vertical-align: middle;
}
.skill-rating {
	display: table-cell;
	font-size: 0;
	text-align: center;
	width: 60%;
	vertical-align: middle;
}
.skill-rating img {
	display: inline-block;
	float: none;
	padding: 0;
	margin: 0;
	width: 24px;
}

/* ========== WORK STYLES ========== */

.work-item {
	display: table;
	padding: 40px 0 40px 0;
	width: 100%;
}
.work-image {
	max-width: 378px;
	width: 100%;
}
.work-image-wrap {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	width: 50%;
}
.work-content {
	display: table-cell;
	height: 100%;
	text-align: center;
	vertical-align: middle;
	width: 50%;
}
.work-content h2 {
	font-size: 20px;
}
.work-content h3 {
	font-size: 15px;
	line-height: 30px;
	margin: 0;
}
.work-content p {
	font-size: 10px;
	line-height: 25px;
	padding: 15px 0 20px 0;
}

.cta,
.cta:active,
.cta:visited,
.cta:link {
	background: #95d0aa;
	border: 5px solid #b7b195;
	color: #433c39;
	display: inline-block;
	font-size: 14px;
	padding: 10px 20px 10px 20px;
	text-decoration: none;
}
.cta:hover {
	color: #edf2f4;
	text-decoration: none;
}

/* ========== HISTORY STYLES ========== */

.experience__elem h3 {
	font-size: 14px;
}
.experience__elem h5 {
	font-size: 14px;
	font-weight: bold;
	line-height: 24px;
	padding: 0 0 40px 24px;
}
.experience__elem p {
	font-size: 12px;
	line-height: 30px;
	padding: 0 0 40px 24px;
}
.experience__elem a,
.experience__elem a:visited,
.experience__elem a:active,
.experience__elem a:link {
	background: #95d0aa;
	border: 5px solid #edf2f4;
	color: #433c39;
	display: inline-block;
	font-size: 14px;
	line-height: 25px;
	margin: 0 0 20px 0;
	padding: 5px 20px 5px 20px;
	text-decoration: none;
}
.experience__elem a:hover {
	color: #edf2f4;
	text-decoration: none;
}

/* ========== CONTACT STYLES ========== */

.email-wrap {
	display: block;
	text-align: center;
	margin: 0 0 60px 0;
	padding: 40px 0 0 0;
	width: auto;
}
.resume-wrap {
	display: block;
	text-align: center;
	margin: 0 0 30px 0;
	width: auto;
}
.link-contact,
.link-contact:active,
.link-contact:visited,
.link-contact:link {
	color: #95d0aa;
	display: inline-block;
	font-size: 18px;
	text-align: center;
	text-decoration: none;
}
.link-contact:hover {
	color: #edf2f4;
	text-decoration: none;
}
.social {
	text-align: center;
}

.cta-social {
	display: inline-block;
	margin: 80px 0 300px 0;
	padding: 0;
}
.cta-social img {
	border: none;
}

footer {
	background: #433c39;
	display: block;
	height: 30px;
	position: relative;
	z-index: 3;
}
footer p {
	color: #edf2f4;
	display: block;
	font-size: 12px;
	line-height: 30px;
	margin: 0;
	padding: 0;
	text-align: center;
	text-transform: uppercase;
}

/* ========== NAV CURSOR BLINK ANIMATION ========== */

@keyframes blink {
	0% {
		opacity: 1;
	}
	49% {
		opacity: 1;
	}
	50% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}

/* =================================== */
/* ========== MEDIA QUERIES ========== */
/* =================================== */

@media (max-width: 991px) {
	.content-wrap .col-skills p {
		text-align: left;
	}
	.skill-label {
		display: block;
		height: auto;
		padding: 0 0 10px 0;
		text-align: left;
		vertical-align: top;
		width: 100%;
	}
	.skill-rating {
		display: block;
		padding: 0 0 15px 0;
		text-align: left;
		vertical-align: top;
		width: 100%;
	}
	.work-content {
		padding: 0 0 0 20px;
	}
}

@media (max-width: 875px) {
	.navbar-wrap label {
		font-size: 16px;
		width: 160px;
	}
	.navbar-wrap ul li a {
		font-size: 14px;
	}

}

@media (max-width: 767px) {
	.navbar-wrap ul li {
    display: block;
    width: 100%;
	}
	.navbar-wrap label {
		font-size: 18px;
		width: 180px;
	}
	.navbar-wrap ul li a {
		font-size: 16px;
	}
	.hello__elem .intro-text {
		top: 40%;
	}
	.hello__elem .intro-text h1 {
		font-size: 20px;
	}
	.hello__elem .intro-text h2 {
		font-size: 20px;
	}
	.skill-label {
		display: table-cell;
		height: auto;
		padding: 0 0 10px 0;
		text-align: right;
		vertical-align: top;
		width: 40%;
	}
	.skill-rating {
		display: table-cell;
		padding: 0 0 15px 0;
		text-align: center;
		vertical-align: top;
		width: 60%;
	}

	.work-image-wrap {
		text-align: center;
	}

	.experience__elem h5 {
		padding: 0 0 20px 24px;
	}

	.icon--top-gap {
		padding-top: 20px;
	}
	.social {
		padding: 0 0 20px 0;
	}

	.email-wrap {
		margin: 0 0 40px 0;
	}
	.resume-wrap {
		margin : 0 0 45px 0;
	}
	.link-email {
		font-size: 12px;
		margin: 20px 0 20px 0;
		text-align: center;
		word-break: break-all;
	}
	.cta-social {
		margin : 20px 0 20px 0;
	}
}

@media (max-width: 600px) {
	.work-image-wrap {
		display: block;
		width: 100%;
	}
	.work-content {
		display: block;
		padding: 0;
		width: 100%;
	}
	.work-content h2 {
		padding: 20px 0 20px 0;
	}
	.work-content h3 {
		margin: 0;
	}
}

@media (max-width: 480px) {
	.nowrap {
		white-space: normal;
	}
	.hello__elem .intro-text {
		top: 38%;
	}
	.content-wrap {
		padding: 40px 0 40px 0;
	}
	.content-wrap h2 {
		font-size: 22px;
	}
	.content-wrap .subheader {
		padding: 20px 0 60px 0;
	}
	.content-wrap .col-skills p {
    padding: 0 0 30px 0;
  }

	.skill-label {
		display: block;
		height: auto;
		padding: 0 0 10px 0;
		text-align: center;
		vertical-align: top;
		width: 100%;
	}
	.skill-rating {
		display: block;
		padding: 0 0 15px 0;
		text-align: center;
		vertical-align: top;
		width: 100%;
	}

	.work-content h2 {
		font-size: 18px;
	}
	.work-content h3 {
		font-size: 14px;
		line-height: 30px;
		margin: 0;
	}
	.work-content p {
		font-size: 10px;
		line-height: 25px;
		padding: 20px 0 20px 0;
	}
	.experience__elem h3 {
		text-align: center;
	}
	.experience__elem h5 {
		font-size: 12px;
    margin: 0 0 20px 0;
		padding: 0;
		text-align: center;
	}
	.experience__elem p {
		font-size: 10px;
		padding: 0 0 20px 0;
	}
	.link-contact {
		font-size: 14px;
		padding: 0 20px 0 20px;
		word-break: break-all;
	}
}


/* High DPI aware devices (aka retina) */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {}
