@import url('https://fonts.googleapis.com/css?family=Josefin+Sans&display=swap');

body, html{
	max-width: 100%;
    overflow-x: hidden;
}
body{
	background-color:var(--backgroundColor);
	height: 100%;
	/*font-family: 'Nunito Sans', sans-serif;*/
}

.main_content{
	display: block;
	position: relative;
	min-height: 100vh;
	width: 100%;
}

/* COLOR VARIABLES */
:root {
	--navColor: #ece2af;
	--hoverColor: #a7cae9;
	--lightYellow: #f5f5d1;
	--darkBlue: #161828;
	--navyBlue: #0d1033;
	--lightBlue: #576f84;
	--backgroundColor: #1a1b1f;
}

/* NAVIGATION */

#top-logo{
	width: 2em;
	height: auto;
	padding-top: 25px;
	position: relative;
	opacity: 100%;
}

#top-logo:hover{
	opacity: 0%;
}

#top-logo2{
	width: 2em;
	height: auto;
	padding-top: 25px;
	position: absolute;
	opacity: 0%;
}

#top-logo, #top-logo2, #top-name{
	transition: all 0.2s ease-in-out;
  	-webkit-transition: all 0.2s ease-in-out;
  	-moz-transition: all 0.2s ease-in-out;
}

#top-logo2:hover{
	opacity: 100%;
}

#top-logo:hover{
	background:url("img/logo2.svg");
}
#top-name{
	padding-left: 30px;
	padding-top: 35px;
	font-size: 1em;
	letter-spacing: .3em;
	color: var(--navColor);
	width: 100%;
}
#top-name:hover{
	color: var(--hoverColor);
}
nav ul{
	list-style-type: none;
	padding: 0;
}

nav .right-nav li{
	display: inline-flex;
}

nav .logo li{
	display: inline-flex;
}

nav a{
	text-decoration: none;
	color: var(--navColor);
	transition: all 0.2s ease-in-out;
  	-webkit-transition: all 0.2s ease-in-out;
  	-moz-transition: all 0.2s ease-in-out;
}

nav a:hover{
	color: var(--hoverColor);
}

.right-nav{
	padding-top: 45px;
	text-align: right;
	letter-spacing: .08em;
	margin-right: 10%;
}

.left-nav{
	margin-left: 20%;
}

.right-nav li{
	padding-left: 30px;
}

#desktop-header{
	position: sticky;
	top: 0;
	clear: all;
	transition: 0.2s;
	z-index: 10;
	animation: loadIn 2s;
}

/* MOBILE NAV */
#mobile-header{
	width: 100%;
	position: sticky;
	top: 0;
	left: 0;
	z-index: 10;
	transition: 0.2s;
	background-color: var(--backgroundColor);
	padding-bottom: 1px;
}

.mobile-nav li{
	display: inline-flex;
}

.mobile-nav{
	padding-top: 15px;
}
.mobile-nav{
	text-align: center;
	font-size: 1em;
	animation: loadIn 2s;
}

#center-link{
	padding-left: 40px;
	padding-right: 40px;
}

#mobile-logo{
	width:2em;
	height: auto;
	margin: 0 auto;
	padding-top: 25px;
	position: sticky;
	top: 0;
	clear: all;
	animation: loadIn 2s;
}


/* DESKTOP FOOTER */

#desktop-footer, #mobile-footer{
	color: var(--navColor);
	position: absolute;
	bottom: 0;
	width: 100%;
	padding-top: 2rem;
	z-index: 9;
}

#desktop-footer .bottom-links li{
	display: inline-flex;
}

#desktop-footer ul{
	list-style-type: none;
	padding: 0;
}

#desktop-footer a{
	color: var(--navColor);
	text-decoration: none;
	transition: all 0.2s ease-in-out;
  	-webkit-transition: all 0.2s ease-in-out;
  	-moz-transition: all 0.2s ease-in-out;
}

#desktop-footer a:hover{
	color: var(--hoverColor);
}

.bottom-links li{
	padding-right: 30px;
}

.copyright{
	text-align: right;
}

.leftFooter{
	margin-left: 10%;
}

.rightFooter{
	margin-right: 10%;
}

/* MOBILE FOOTER */
#mobile-footer{
	left: 0;
	width: 100%;
	z-index: 10;
}
.copyright-mobile{
	text-align: center;
}

/* CONTACT BOX */
#contactBox{
	background-color: var(--navColor);
	width: 745px;
	height: 100vh;
	position: fixed;
	display: none;
	left: -745px;
	top: 0;
	z-index: 100;
}

#contactBox #page-wrap #contact-area{
	margin-top: 20px;
}

#contactTitle{
	font-weight: bold;
}

#page-wrap{
	margin: 0 auto;
	width: 75%;
}

#contact-area{
	padding-top: 20px;
}

#close-button{
  margin: auto;
  width: 40px;
  height: 40px;
  margin-left: 80%;
  position: relative;
  cursor: pointer;
  border: none;
}

.leftright{
  height: 4px;
  width: 40px;
  left: 5px;
  margin-top: 50px;
  position: absolute;
  background-color: var(--darkBlue);
  border-radius: 2px;
  transform: rotate(45deg);
  transition: all .3s ease-in;
}

.rightleft{
  height: 4px;
  width: 40px;
  left: 5px;
  margin-top: 50px;
  position: absolute;
  background-color: var(--darkBlue);
  border-radius: 2px;
  transform: rotate(-45deg);
  transition: all .3s ease-in;
}

.close{
  color: white;
  font-size: .6em;
  text-transform: uppercase;
  letter-spacing: 2px;
  transition: all .3s ease-in;
  margin-top: 75px;
  left: 6px;
  position: absolute;
  color: var(--darkBlue);
  opacity: 0;
}

#close-button:hover .leftright{
  transform: rotate(-45deg);
  background-color: var(--hoverColor);
}
#close-button:hover .rightleft{
  transform: rotate(45deg);
  background-color: var(--hoverColor);
}
#close-button:hover label{
  opacity: 1;
}

.contactResume{
	margin-left: 100px;
	width: 100px;
}

.resume_link{
	font-size: 1em;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--backgroundColor);
	position: absolute;
	margin-left: 200px;
	margin-top: -30px;
	font-weight: bold;
}

.resume_link:hover{
	color: var(--hoverColor);
	text-decoration: none;
	transition: all 0.2s ease-in-out;
  	-webkit-transition: all 0.2s ease-in-out;
  	-moz-transition: all 0.2s ease-in-out;
}

#contactBox #page-wrap #contact-area .submit-button{
	width: 120px;
	background-color: var(--darkBlue);
	border: none;
    border-radius: 0;
    text-shadow: none;
    color: var(--navColor);
    transition: all 0.2s ease-in-out;
  	-webkit-transition: all 0.2s ease-in-out;
  	-moz-transition: all 0.2s ease-in-out;
  	font-size: 1em;
}

#contactBox #page-wrap #contact-area .submit-button:hover{
	background-color: var(--lightBlue);
	color: var(--lightYellow);
}

input[type=text], textarea{
	width: 100%;
}

textarea{
	resize: none;
	height: 200px;
}

textarea, #page-wrap #contact-area input{
	border-radius: 0px;
}

textarea:focus, #page-wrap #contact-area input:focus{
	border: 2px solid var(--darkBlue);
}

#contact-area label{
	font-size: 1.2em;
	font-weight: normal;
}

/* ANIMATION */

.wipe{
	background-color: var(--darkBlue);
	width: 100%;
	height: 100vh;
	z-index: 10000;
	position: absolute;
}


.wipe{
	-webkit-animation: screenwipe 1s; /* Safari, Chrome and Opera > 12.1 */
       -moz-animation: screenwipe 1s; /* Firefox < 16 */
        -ms-animation: screenwipe 1s; /* Internet Explorer */
         -o-animation: screenwipe 1s; /* Opera < 12.1 */
            animation: screenwipe 1s;
}

@keyframes screenwipe {
    from { width: 100%; }
    to   { width: 0%; }
}

@keyframes loadIn{
	from{opacity: 0;}
	to{opacity: 100;}
}

/* Firefox < 16 */
@-moz-keyframes screenwipe {
    from { width: 100%; }
    to   { width: 0%; }
}

/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes screenwipe {
    from { width: 100%; }
    to   { width: 0%; }
}

/* Internet Explorer */
@-ms-keyframes screenwipe {
    from { width: 100%; }
    to   { width: 0%; }
}

/* Opera < 12.1 */
@-o-keyframes screenwipe {
    from { width: 100%; }
    to   { width: 0%; }
}

/* Archive Page */
.archives{
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-direction: row;
}

.archive_thumbWrapper{
	width: 25%;
	padding-top: 14%;
	position: relative;
	overflow: hidden;
}

.archive_thumb{
	z-index: 4;
	width: 100%;
	height: auto;
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
	transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
}

.archive_title, .archive_desc{
	text-align: center;
}

.archive_title{
	font-weight: bold;
    letter-spacing: .04em;
    font-size: 1.5em;
}

.archive_desc{
	font-size: 1em;
    font-style: italic;
    letter-spacing: .07em;
    margin-top: -20px;
}

.archiveDescWrapper{
	color: var(--navColor);
	margin-top: -35%;
	z-index: 6;
	position: relative;
	transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out; 
}

.archiveDescWrapper:hover{
	color: var(--hoverColor);
}

.archiveProjectLink{
	text-decoration: none;
}

/* ERROR and CONTACT SUCCESS*/

.contact_end{
	padding-top: 15%;
	width: 80%;
	margin: 0 auto;
	color: var(--lightYellow);
	text-align: center;
}

.contact_end .quote-header{
	font-size: 3em;
}

.redirect{
	font-style: italic;
}

.redirect a{
	text-decoration: none;
	font-weight: bold;
	color: var(--navColor);
	transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out; 
}

.redirect a:hover{
	color: var(--hoverColor);
}