:root{
  font-size: 18px;
}

div.grid-container{
	max-width: 1000px;
}

img{
	display: block;
	margin-left: auto;
	margin-right: auto;
}

body{
  font-family: 'Volkhov', serif;
  color: #242533;
  background-color: #FFF;
}

section{
	padding-top: 96px;
}

p{
	font-size: 1rem;
	color: #34364A;
	font-family: 'Volkhov', serif;
}

h1,h2,h3,h4 {
    font-family: 'Montserrat', sans-serif;
    color: #242533;
}

h1{
	font-size: 3rem;
	font-weight: 700;
}

h2{
	font-size: 2.5rem;
  	margin-top: 0.5rem;
  	margin-bottom: 1rem;
}

h3 {
	font-size: 2rem;
  	margin-bottom: 1rem;
}

h4{
	font-size: 1.5rem;
}

h5{
	font-size: 0.85rem;
	font-weight: 700;
  	text-transform: uppercase;
	color: #2B8BB2;
  	margin: 0;
}

#header{
	position: fixed;
	top: 0;
	width: 100%;
	transition: top 0.7s;
	background-color: #FFF;
	z-index: 2;
	height: 96px;
}

#header svg path{
	fill: #34364A;
}

nav{
	padding: 10px 0 10px 0px;
}
nav a{
	font-size: 1.25rem;
	font-family: 'Volkhov', serif;
	text-decoration: none;
	color: #34364A;
	position: relative;
}

nav div.grid-x{
	padding-top: .625rem;
	padding-bottom: .625rem;
}

nav a:hover, nav a:focus{
	color: #34364A;
}

a.text-link:before{
	content: "";
	position: absolute;
	width: 100%;
	height: 2px;
	bottom: 0;
	left: 0;
	background-color: #DD3629;
	visibility: hidden;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transition: all 0.3s ease-in-out 0s;
	transition: all 0.3s ease-in-out 0s;
}

a.text-link:hover:before{
	visibility: visible;
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
}

footer{
	background-color: #242533;
	color: #484A66;
	width: 100%;
	text-align: center;
	font-size: .85rem;
}

footer .grid-container{
	padding: 30px 0 30px 0;
}
footer .grid-container .cell.small-3.medium-1{
	padding: 20px 0 20px 0;
}

footer h4{
	color: white;
	font-weight: bold;
	font-family: 'Volkhov', serif;
	position: relative;
	padding-bottom: 20px;
}

footer h4:before{
	width: 70px;
    height: 2px;
    content: "";
    position: absolute;
	left: 50%;
	bottom: 0;
	-webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #DD3629;
}

footer a.swipe-up{
	border-color: #484A66;
}

footer a.swipe-up:before{
	background: #484A66;
}

footer a svg path{ 
  transition: 200ms;
  transition-timing-function: ease-in-out;
  -webkit-transition: 200ms;
  -webkit-transition-timing-function: ease-in-out;
  fill: #484A66;
}

footer a:hover svg path, footer a:focus svg path{
	fill: white;
}

input[type="text"], textarea, select, option{
	font-size: .85rem;
	font-family: 'Volkhov', serif;
}

input.contact, textarea.contact{
	background: none;
	box-shadow: none;
	border: none;
	border-bottom: 2px solid #282C37;
	-webkit-transition: all 0.3s ease-in-out 0s;
	transition: all 0.3s ease-in-out 0s;
}

input.contact:focus, textarea.contact:focus{
	border-bottom: 2px solid #D58E48;
}

button[type="submit"], a.button{
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	text-transform: uppercase;
	color: #DD3629;
}

button.swipe-up:hover, a.button.swipe-up:hover{
	background: none;
}

p.intro{
	font-size: 1.15rem;
}

button.swipe-up, a.swipe-up{
	border: 2px solid #DD3629;
	background: none;
	cursor: pointer;
	z-index: 1;
	position: relative;
  	font-size: 0.9rem;
}

button.swipe-up:before, a.swipe-up:before{
  content: "";
  position: absolute;
  background: #DD3629;
  bottom: 0;
  left: 0;
  right: 0;
  top: 100%;
  z-index: -1;
  -webkit-transition: top 0.1s ease-in-out;
}

button.swipe-up:hover:before, a.swipe-up:hover:before, button.swipe-up:focus:before, a.swipe-up:focus:before{
  top: 0;
}

button.swipe-up:focus, a.swipe-up:focus{
	background: none;
}

.overlay {
    height: 0%;
    width: 100%;
    position: fixed;
    z-index: 3;
    top: 0;
    left: 0;
    background-color: #34364A;
    overflow-y: hidden;
	transition: 0.5s;
}

.overlay a {
    padding: 8px;
    text-decoration: none;
    font-size: 36px;
    color: #FFFFFF;
	position: relative;
}

div.project{
	text-align: center;
}

.index span, .about span{
	color: #DD3629;
}

div.dark-div{
	background-color: #242533;
}

.dark-div p, .dark-div h2, .dark-div h3, .dark-div h4{
	color: white;
	position: relative;
}

.dark-div h3{
	padding-bottom: 20px;
}

.dark-div h3:before{
	width: 70px;
    height: 2px;
    content: "";
    position: absolute;
	left: 50%;
	bottom: 0;
	-webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #DD3629;
}

.bounce {
  -moz-animation: bounce 2s infinite;
  -webkit-animation: bounce 2s infinite;
  animation: bounce 2s infinite;
}

@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-30px);
  }
  60% {
    transform: translateY(-15px);
  }
}

input[type='text'], [type='email'], select, textarea {
	background: none;
  	border: none;
	border-bottom: solid 2px #474544;
	color: #474544;
	font-size: 1rem;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
  	padding-top: 5px;
  	padding-bottom: 5px;
  	margin-bottom: 30px;
}

input[type='text']:focus, [type='email']:focus, textarea:focus {
	outline: none;
}

select{
	outline: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	background: url('https://cdn4.iconfinder.com/data/icons/ionicons/512/icon-ios7-arrow-down-32.png') no-repeat right;
}

.index .grid-padding-x, .page-section .grid-padding-x{
	padding-top: 30px;
	padding-bottom: 30px;
}

div#hero .grid-padding-x{
	min-height: 500px;
}

.project-page h2{
	position: relative;
	padding-bottom: 20px;
}

.project-page h2:before{
	width: 70px;
    height: 2px;
    content: "";
    position: absolute;
	bottom: 0;
    background-color: #DD3629;
}

@media screen and (min-width: 50em){
	.two-cols {
		column-count: 2;
		column-gap: 5%;
	}
  	.index div#hero {
        background: url('/img/memphis-back.png') no-repeat;
        background-size: cover;
        background-position: center;
    }
  	#raytheon div#hero {
        background: url('/img/memphis-cyberhud.png') no-repeat;
        background-size: cover;
        background-position: center;
    }
}

@media screen and (max-width: 49.9375em){
	.two-cols {
		column-count: 1;
	}
  	.index div#hero {
	background: url('/img/memphis-back-mobile.png') no-repeat;
	}
  	#raytheon div#hero {
        background: url('/img/memphis-cyberhud-mobile.png') no-repeat;

    }
}

.gray-section{
	background-color: #EEECF2; 
}

@media screen and (max-width: 39.9375em){
	.about h2 {
   		text-align: center;   
  	}
}

.contact div#hero .grid-container{
	max-width: 680px; 
}

@media screen and (max-width: 39.9375em){
	.grid-padding-x{
		padding-left: 1.125rem;
      	padding-right: 1.125rem;
	}
}

.contact div#hero {
    background: url('/img/memphis-contact.png') no-repeat;
    background-size: cover;
    background-position: center;
}

.about div#hero {
    background: url('/img/memphis-about.png') no-repeat;
    background-size: cover;
    background-position: center;
}