/* Styles for Christine Olson's Portfolio - February 2019 */

/* Reset Browser Styles */

html, body, div, span, 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%;
	vertical-align: baseline;
	list-style-type: none;
}

/* Non-layout Styles */

.withBg {
	position: relative;
  width: 100%;
  height: 800px;
  display: block;
  background: url(images/home-image2.jpg)  center center no-repeat;
  background-size: auto 100%;
	padding: 10% 0;
}

html {
	background-color: #003742;
}

body {
  background-color: #fff;
  font-family: 'Raleway', sans-serif;
  color: #000;
	max-width: 1900px;
	margin: 0 auto;
}

h1 {
  font-family: 'Eczar', serif;
  color: #003742;
  font-size: 3em;
  font-weight: 600;
	letter-spacing: .02em;
	border-bottom: 3px solid #003742;
	line-height: 1.1em;
	margin-bottom: .5em;
}

h2 {
  font-family: 'Eczar', serif;
  color: #003742;
  font-size: 2em;
  font-weight: 600;
}

aside {
	grid-area: sidebar;
	background-color: #005f73;
	color: #fff;
	padding: 1% 3% 3% 3%;
}

.sideInner {
	position: static;
	width: 100%;
}

.coPic {
	grid-area: portrait;
	width: 50%;
	margin: 0 auto;
}

.coPic img {
	width: 100%;
}

.sideText {
	grid-area: title;
	text-align: center;
	margin-top: 10%;
}

.sideText h1 {
	color: #fff;
	font-size: 2.3em;
	border: none;
	margin-bottom: 0;
}

.sideText p {
	font-size: 1.4em;
}

.hamburger {
	color: #fff !important;
	background-color: #005f73;
	text-align: left;
	font-size: 2em;
	width: 100%;
	padding-top: 3%;
}

.hamburger a {
	text-decoration: none;
	color: #fff !important;
}

#mainNav {
	grid-area: navigation;
	background-color: #005f73;
	width: 80%;
	z-index: 5;
}

a.close {
	font-size: 1.5em;
	font-weight: bold;
	line-height: 1.5em;
	color: #fff;
	text-decoration: none;
	padding-left: 1em;
}

#mainNav ul li {
	font-family: 'Eczar', serif;
	font-weight: 400;
	color: #fff;
	font-size: 1.4em;
	letter-spacing: .01em;
	line-height: 1.5em;
	text-align: left;
	padding: 0 3em;
}

#mainNav ul li a {
	color: #fff;
	text-decoration: none;
}

#mainNav ul li:hover {
	background-color: #003742;
	transition: 1s;
}

#mainNav ul li.current {
	background-color: #003742;
}

section {
	grid-area: content;
	background-color: #fff;
	padding: 5%;
}

@keyframes appear {
	0% { opacity: 0; }
	100% { opacity: 1; }
}

#fadeIn {
	opacity: 0;
	animation: .7s ease-in 0s 1 appear;
	animation-fill-mode: forwards;
}

section p {
	margin-bottom: 1em;
	line-height: 1.35em;
}

section a {
	color: #017eac;
}

section a:hover {
	background-color: #5f008c;
	transition: .5s;
}

.noPad {
	padding: 0;
}

.homePage {
	background-color: #005f73;
	width: 100%;
  text-align: center;
  overflow: hidden;
}

.homeText h1 {
	color: #fff !important;
	border: 0;
}

.homeText p {
	color: #fff !important;
	font-size: 1.5em;
	font-weight: 600;
}

@keyframes appear1 {
	0% { opacity: 0; }
	100% { opacity: 1; }
}

@keyframes appear2 {
	0% { opacity: 0; }
	100% { opacity: 1; }
}

@keyframes bgColor {
	0% { background-color: transparent; }
	100% { background-color: rgba(0,55,66,.5); }
}

.load1 {
	opacity: 0;
	animation: .7s ease-in .5s 1 appear1;
	animation-fill-mode: forwards;
}

.load2 {
	opacity: 0;
	animation: .7s ease-in 1s 1 appear2;
	animation-fill-mode: forwards;
}

.homeText {
	width: 90%;
	margin: 0 auto;
	background-color: transparent;
	padding: 2%;
	border-radius: 50px;
	animation: .7s ease-in 1s 1 bgColor;
	animation-fill-mode: forwards;
}

.load2 a {
	display: block;
	width: 75%;
	color: #fff !important;
	font-family: 'Eczar', serif;
	font-weight: 500;
	font-size: 1.7em;
	text-decoration: none;
	margin: 10px auto;
	border: 2px solid #fff;
	border-radius: 10px;
}

.proPic {
	grid-area: half-picture;
}

.proPic img {
	width: 100%;
}

.proText {
	grid-area: half-text;
	margin-top: 2em;
}

.protext h2 {
	grid-area: project-title;
}

a.proButton {
	display: inline-block;
	color: #fff;
	background-color: #005f73;
	font-family: 'Eczar', serif;
	font-weight: 600;
	font-size: 1.5em;
	text-align: center;
	text-decoration: none;
	padding: .2em;
	width: 70%;
	margin-top: 3%;
	margin-left: 14%;
	border-radius: 10px;
}

.dashedLine {
	border-top: 3px dashed #003742;
	margin-bottom: 4%;
}

.marginText {
	display: block;
	width: 80%;
	margin: 5% auto;
}

.marginText p {
	font-size: 1.2em;
}

.centerVid {
	display: block; s
	width: 95%;
	text-align: center;
}

.centerVid iframe {
	width: 100%;
}

a.resButton {
	display: inline-block;
	color: #fff;
	background-color: #005f73;
	font-family: 'Eczar', serif;
	font-weight: 600;
	font-size: 1.5em;
	text-align: center;
	text-decoration: none;
	padding: .2em;
	width: 50%;
	margin-top: 1%;
	margin-bottom: 2%;
	border-radius: 10px;
}

.boxOutline {
	border: 2px solid #003742;
	padding: 1em 2em;
}

.boxOutline ul {
	list-style: square outside url(images/diamond.png);
	font-size: 1.3em;
	margin-top: .5em;
}

.sk1 {
	grid-area: skills1;
}

.sk2 {
	grid-area: skills2;
}

.sk3 {
	grid-area: skills3;
}

.itemList ul {
	list-style: square inside url(images/diamond.png);
	margin-bottom: 3%;
}

.itemList ul li {
	margin-bottom: 1em;
}

.historyM {
	margin-bottom: 3%;
}

.conPic {
	grid-area: contact-pic;
}

.conPic img {
	width: 100%;
}

.conText {
	grid-area: contact-info;
	margin-top: 2em;
}

.conText p {
	font-size: 1.7em;
}

a.largeButton {
	display: inline-block;
	color: #fff;
	background-color: #005f73;
	font-family: 'Eczar', serif;
	font-weight: 600;
	font-size: 1.5em;
	text-align: center;
	text-decoration: none;
	padding: .2em;
	width: 60%;
	margin: 5% auto;
	border-radius: 10px;
}

a.iconLink:hover {
	background-color: #fff;
}

a.elink:hover {
	background-color: #fff;
	color: #5f008c;
}

footer {
	grid-area: footer;
	background-color: #005f73;
	color: #fff;
	padding: 1.7%;
}

footer p {
	font-size: 1.3em;
	text-align: right;
}

/* Layout Styles */

.sideInner {
	display: grid;
	grid-template-columns: 2fr 3fr ;
	ms-grid-columns: 2fr 3fr;
	grid-template-areas:
	"navigation navigation"
	"portrait title";
}

.project {
	display: grid;
	grid-template-columns: 1fr;
	ms-grid-columns: 1fr;
	grid-template-areas:
	"project-title"
	"half-picture"
	"half-text";
	margin-bottom: 5%;
}

.historyD {
	display: none;
}

.contact {
	display: grid;
	grid-template-columns: 1fr;
	ms-grid-columns: 1fr;
	grid-template-areas:
	"contact-info"
	"contact-pic";
	margin-bottom: 5%;
}

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

	h2 {
		line-height: 1em;
		margin: 7% auto;
	}

	section p {
		font-size: 1.2em;
	}

	.coPic {
		display: none;
	}

	.sideInner {
		display: grid;
		grid-template-columns: 1fr;
		ms-grid-columns: 1fr;
		grid-template-areas:
		"navigation"
		"title";
	}

	.sideText {
		margin: 7% 0;
	}

	.sideText h1 {
		font-size: 2.3em;
		margin-bottom: 0;
	}

	.sideText p {
		font-size: 1.2em;
	}

	#mainNav ul li {
		font-size: 1.5em;
		letter-spacing: .01em;
		line-height: 1.5em;
		text-align: left;
		padding: .2em 3em;
	}

	.homeText h1 {
		font-size: 2.3em;
	}

	a.resButton {
		width: 95%;
	}

	a.proButton {
		width: 95%;
		margin: 3% auto;
	}

	.marginText {
		width: 90%;
	}

	.resumeList ul li {
		font-size: 1.2em;
	}

	.conText p {
		font-size: 1.4em;
	}

}
@media screen and (max-width: 899px) {

	#mainNav {
        position: fixed;
        top: 0;
        bottom: 0;
				width: 200px;
        left: -240px;
        transition: transform .3s ease-in-out;
  }

	#mainNav:target {
    transform: translateX(240px);
  }

}

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

	.sideText {
		grid-area: title;
		margin-top: 10%;
	}

	.sideText h1 {
		color: #fff;
		font-size: 2.3em;
		border: none;
		margin-bottom: 0;
	}

	.sideText p {
		font-size: 1.4em;
	}

	.centerVid iframe {
		width: 560px;
	}

}

@media screen and (min-width: 900px) {

	.hamburger {
		display: none;
	}

	.toggle {
    display: none;
  }

	aside {
		padding: 3%;
	}

	.sideInner {
		padding-bottom: 0;
		display: grid;
		grid-template-columns: 1fr 2fr 2fr;
		ms-grid-columns: 1fr 2fr 2fr;
		grid-template-areas: "portrait title navigation";
	}

	.coPic {
		width: 100%;
	}

	.sideText {
		margin-top: 20%;
		text-align: center;
	}

	#mainNav {
		margin: 6% 0 0 auto;
		width: 55%;
	}

	#mainNav ul li {
		font-size: 1.9em;
		text-align: right;
		border-right: 7px solid #005f73;
		padding: 0 1em 0 0 ;
	}

	@keyframes menuSel {
		0% { border-right: 7px solid #005f73; }
		100% { border-right: 7px solid #5f008c; }
	}

	#mainNav ul li.current {
		border-right: 7px solid #005f73;
		animation: .2s ease-in 0s 1 menuSel;
		animation-fill-mode: forwards;
	}

	.homeText {
		width: 85%;
	}

	.load2 a {
		width: 55%;
	}

	.project {
		grid-template-columns: 1fr 1fr;
		ms-grid-columns: 1fr 1fr;
		grid-template-areas:
		"project-title project-title"
		"half-text half-picture";
	}

	.boxOutline {
		display: grid;
		grid-template-columns: 3fr 7fr 5fr;
		ms-grid-columns: 3fr 7fr 5fr;
		grid-template-areas: "skills1 skills2 skills3";
		margin-bottom: 5%;
	}

	.historyM {
		display: none;
	}

	.historyD {
		display: block;
		margin-bottom: 3%;
	}

	table.history {
		width: 95%;
	}

	.contact {
		grid-template-columns: 1fr 1fr;
		ms-grid-columns: 1fr 1fr;
		grid-template-areas: "contact-info contact-pic";
		margin: 10% 0 5% 0;
	}
}

@media screen and (min-width: 1200px) {

	body {
		display: grid;
		grid-template-columns: 320px auto;
		ms-grid-columns: 320px auto;
		grid-template-areas:
		"sidebar content"
		"sidebar footer";
	}

	aside {
		padding: 0;
	}

	.sideInner {
		width: 300px;
		position: fixed;
		margin-left: 10px;
		margin-top: 20px;
		margin-bottom: 20px;
		display: grid;
		grid-template-columns: 1fr;
		ms-grid-columns: 1fr;
		grid-template-areas:
		"portrait"
		"title"
		"navigation";
	}

	#mainNav {
		width: 80%;
		margin: 20% auto;
	}

	#mainNav ul li {
		font-size: 1.5em;
		padding-left: 1em;
		border-left: 7px solid #005f73;
		border-right: 7px solid #005f73;
		text-align: left;
	}

	@keyframes menuSelW {
		0% { border-left: 7px solid #005f73; }
		100% { border-left: 7px solid #5f008c; }
	}

	#mainNav ul li.current {
		border-left: 7px solid #005f73;
		animation: .2s ease-in 0s 1 menuSelW;
		animation-fill-mode: forwards;
	}

	.coPic {
		width: 55%;
	}

	.sideText {
		margin-top: 5%;
	}

	.sideText h1 {
		font-size: 2.1
	}

	.sideText p {
		font-size: 1.3em;
	}

	.homeText {
		width: 80%;
	}

}

@media screen and (min-width: 1400px) {

	body {
		display: grid;
		grid-template-columns: 320px auto;
		ms-grid-columns: 320px auto;
		grid-template-areas:
		"sidebar content"
		"sidebar footer";
	}

	aside {
		padding: 0;
	}

	.sideInner {
		width: 300px;
		position: fixed;
		margin-left: 10px;
		margin-top: 20px;
		margin-bottom: 20px;
		display: grid;
		grid-template-columns: 1fr;
		ms-grid-columns: 1fr;
		grid-template-areas:
		"portrait"
		"title"
		"navigation";
	}

	#mainNav {
		width: 80%;
		margin: 20% auto;
	}

	#mainNav ul li {
		font-size: 1.9em;
	}

	@keyframes menuSelW {
		0% { border-left: 7px solid #005f73; }
		100% { border-left: 7px solid #5f008c; }
	}

	#mainNav ul li.current {
		border-left: 7px solid #005f73;
		animation: .2s ease-in 0s 1 menuSelW;
		animation-fill-mode: forwards;
	}

	.coPic {
		width: 65%;
	}

	.sideText {
		margin-top: 5%;
	}

	.sideText h1 {
		font-size: 2.3;
	}

	.sideText p {
		font-size: 1.4em;
	}

	.homeText {
		width: 80%;
	}

}

@media screen and (min-width: 1400px) {
	.proText {
		margin-top: 4em;
	}
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {

	body {
		display: block;
	}

	aside {
		background-color: #005f73;
		color: #fff;
		display: block;
		overflow: hidden;
		width: 100%;
	}

	.sideInner {
		display: block;
		width: 100%;
		padding: 2% 2% 7% 2%;
		margin: 0;
		position: static;
	}

	.coPic {
		display: block;
		float: left;
		width: 15%;
		margin: 0 auto;
	}

	.coPic img {
		width: 100%;
	}

	.sideText {
		display: block;
		float: left;
		width: 30%;
		text-align: center;
	}

	#mainNav {
		display: block;
		float: right;
		width: 30%;
		margin: 0;
		margin-bottom: 30px;
	}

	#mainNav ul {
		padding-right: 100px;
	}

	.withBg {
		height: 600px;
	}

	section {
		display: block;
	}

	.project {
		display: block;
		overflow: hidden;
	}

	.contact {
		display: block;
		overflow: hidden;
		margin: 5% auto;
	}

	.proPic, .conPic {
		display: block;
		float: right;
		width: 50%;
	}

	.proText, .conText {
		display: block;
		float: left;
		width: 45%;
		margin-top: 50px;
	}

	.boxOutline {
		display: block;
		overflow: hidden;
	}

	.sk1 {
		display: block;
		float: left;
		width: 15%;
	}

	.sk2 {
		display: block;
		float: left;
		width: 40%;
	}

	.sk3 {
		display: block;
		float: left;
		width: 40%;
	}

}
