html {
	position: relative;
	min-height: 100%;
}

body {
	font-family: Roboto, sans-serif;
	margin: 0px;
	background-color: black;
	font-size: 13px;
	margin-top: 80px;
}

header {
	background-color: white;
	/*height: 80px;*/
	position: fixed;
	padding: 0px 25px;
	padding-bottom: 22px;
	box-sizing: border-box;
	width: 100%;
	top: 0px;
	z-index: 99;
}

header .logo {
	position: absolute;
	top: 50%;
	left: 25px;
	margin-top: -7px;
}

footer {
	background-color: white;
	height: 250px;
	position: absolute;
	bottom: 0px;
	width: 100%;
	padding: 0px 25px;
	box-sizing: border-box;
	-moz-box-sizing: border-box;

	-webkit-transition-property: -webkit-transform, position;
     -moz-transition-property:    -moz-transform, position;
      -ms-transition-property:     -ms-transform, position;
       -o-transition-property:      -o-transform, position;
          transition-property:         transform, position;

    -webkit-transition-duration: 0.8s;
     -moz-transition-duration: 0.8s;
      -ms-transition-duration: 0.8s;
       -o-transition-duration: 0.8s;
          transition-duration: 0.8s;
}

footer .copyright {
	position: absolute;
	bottom: 15px;
	right: 0px;
}

footer .upper {
	height: 70px;
	position: relative;
	border-bottom-style: dashed;
	border-bottom-width: 1px;
	border-bottom-color: black;
}

footer .lower img {
	margin-right: 20px;
	vertical-align: middle;
}


footer .lower {
	padding-top: 17px;
}

footer .logo {
	position: absolute;
	bottom: 15px;
}


nav {
	height: 100%;
}

.nav {
	float: right;
	vertical-align: middle;
	padding: 0px;
	margin: 0px;
	height: 100%;
	display: block;
	margin-top: 32px;
}

.nav .menu-item  {
	float: left;
	list-style-type: none;
	text-transform: uppercase;
	font-size: 12px;
	margin: 0px 7.5px;
}

.nav .menu-item a, .nav .menu-item a:hover {
	color: black;
	text-decoration: none;
	background-color: transparent;
}

.getBlog, .getBook {
	float:right;
	border-width: 1px;
	border-style: solid;
	border-color: #cecece;
	text-transform: uppercase;
	padding: 5px;
	color: #9e9e9e;
	margin: 26px 10px 0px;
	background-image: url('/images/newsletter-arrow.png');
	background-repeat: no-repeat;
	background-position: right 10px center;
	padding-right: 28px;
	cursor: pointer;
}

.twitter {
	float: right;
	margin-top: 29px;
	margin-left: 5px;
}

.instagram {
	float: right;
	margin-top: 29px;
	margin-left: 10px;
}

table.details {
    text-transform: uppercase;
    margin-bottom: 35px;
    width: 100%;
    text-align: left;
}

table.details tr {
    border-bottom-width: 1px;
    border-bottom-color: #bebebe;
    border-bottom-style: solid;
}


table.details th {
    font-weight: 800;
    width: 125px;
    vertical-align: top;
}

.mobile-menu-icon {
    float: right;
    margin-top: 29px;
    margin-left: 5px;
    padding-left: 20px;
}

/* mobile menu styling */
.mobile-menu{
    display: none;
    position: fixed;
    width: 250px;
    right: -250px;
    height: 100%;
    background-color: black;
    z-index: 999;
    margin-top: -71px;
}

.mobile-menu .mobile-close-button{
    position: absolute;
    top: 20px;
    right: 20px;
    font-size: 20px;
    cursor: pointer;
    color: #fff;
}

.mobile-menu .twitter,
.mobile-menu .mobile-menu-icon{
    display: none;
}

.mobile-menu .getBlog,
.mobile-menu .getBook{
    float: none;
    position: absolute;
    width: 230px;
    box-sizing: border-box;
    color: black;
    background-color: white;
    font-size: 11px;
}

.mobile-menu .getBlog{
    bottom: 20px;
}

.mobile-menu .getBook{
    bottom: 60px;
}

.mobile-menu .nav .menu-item{
    clear: both;
    padding: 0 0 0 20px;
    margin: 0;
}

.mobile-menu .nav .menu-item a,
.mobile-menu .nav .menu-item a:hover {
    color: white;
    text-decoration: none;
    background-color: transparent;
}

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

	body {
		margin-top: 114px;
	}

	.nav {
		float: none;
		margin-top: 72px;
	}

	.nav .menu-item.f {
		margin-left: 0px;
	}

	header .logo {
		top: 33px;
		margin: 0px;
	}

        footer .logo,
        footer .copyright {
                position: static;
        }

        footer .copyright{
            float: none;
            display: block;
            padding-top: 20px;
        }

        footer .upper{
            height: auto;
            padding-top: 20px;
            padding-bottom: 20px;
        }
}

@media screen and (min-width: 768px){
    header .mobile-menu-icon {
        display: none;
    }
}

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

    body {
	margin-top: 71px;
    }

    header .getBook,
    header .getBlog,
    header .nav{
        display: none;
    }

    /* modal styling for mobile */
    .modal{
        width: 100%;
        margin-left: 0px;
        left: 0%;
        box-sizing: border-box;
    }

    .modal input{
        width: 90%;
    }

    .form-horizontal .controls {
        margin-left: 130px;
    }

    .modal .form-horizontal .control-label{
        width: 100px;
    }
}

/* shrink header more on mobile landscape orientation */
@media screen and (max-width: 767px) and (orientation:landscape){
	body{
            margin-top: 48px;
	}
	header{
            padding-bottom: 12px;
	}
	header .logo {
	    top: 20px !important;
	}
	header .twitter{
            margin-top: 16px;
	}
	header .mobile-menu-icon{
            margin-top: 17px;
	}
	.mobile-menu {
            margin-top: -49px
	}
}

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

    header .logo{
        top: 34px;
        width: 50%;
    }

}
