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

body {
	color: #333;
	background: #fff;
	font-family: 'Source Sans Pro', sans-serif;
	/* Margin bottom by footer height */
	margin-bottom: 50px;
}

/* ---------- Personal --------- */

.kill-row-padding { padding-left: 0; padding-right: 0; }
.kill-row-margin { margin-left: 0; margin-right: 0; }

@media (min-width: 481px) { .one-line { display: inline; } }

.right-then-center { text-align: right;	}
@media (max-width: 767px) {	.right-then-center { text-align: center; } }
@media (max-width: 767px) {	.then-center { text-align: center; } }

.text-white { color: #fff; }


/* ---------- Buttons --------- */

.btn {
	text-shadow: 1px 1px 0px rgba(0,0,0,0.15);
	letter-spacing: 0.25px;
	line-height: 20px;
}

.btn-sm {
	font-size: 13px;
	min-width: 100px;
	border-radius: 6px;
	padding: 4px 10px;;
}

.btn-lg {
	min-width: 200px;
	min-height: 56px;
	border-radius: 30px;
	padding: 20px 0;
	font-size: 18px;
	letter-spacing: 1px;
	text-transform: uppercase;
	font-weight: 300;
	margin-top: 15px;
	margin-bottom: 15px;
}

/* ---------- Headings --------- */

h2 {
	font-size: 36px;
	font-weight: 600;
	text-transform: uppercase;
	margin: 10px 0;
	letter-spacing: 2px;
}

h3 {
	font-size: 30px;
	font-weight: 700;
	margin: 10px 0 20px;
}

/* ---------- Navbar --------- */

.top-grey {
	background: #e6e6e7;
	height: 4px;
	font-size: 1px;
	line-height: 1px;
}

.navbar {
	border-radius: 0;
	border: none;
	box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.10);
	font-size: 15px;
	letter-spacing: 0.25px;
	line-height: 20px;
	margin-bottom: 20px;
	font-weight: 600;
	margin-bottom: 0;
}

.navbar-nav > li > a {
	padding-top: 5px;
	padding-bottom: 5px;
	padding-left: 0px;
	padding-right: 0px;
	margin-left: 20px;
	margin-right: 20px;
}

.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus {
	border-bottom: 3px solid red;
	background: transparent;
}

.navbar > .container .navbar-brand, .navbar > .container-fluid .navbar-brand {
	padding-top: 16px;
	margin-left: 0;
}

@media (max-width: 768px) {
	.navbar > .container .navbar-brand, .navbar > .container-fluid .navbar-brand {
		margin-left: 15px;
	}
}

.top-hat {
	text-align: right;
	font-weight: 300;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin-bottom: 10px;
}

.top-hat .flags {
	max-width: 24px;
	margin-right: 5px;
}

.top-hat > li > a {
	color: #999;
	margin-left: 10px;
	font-weight: 300;
}

.top-hat .dropdown {
	padding-top: 10px;
	padding-bottom: 8px;
	padding-right: 10px;
	font-weight: 400;
}

.top-hat .dropdown.open {
	background: #eaf7fd;
	border-bottom: none;
}

.top-hat .dropdown a {
	color: #6bb6ee;
}

.top-hat .dropdown .dropdown-menu {
	margin-top: -1px;
	border-radius: 0;
	box-shadow: 0 0 0;
	background: #eaf7fd;
	border: none;
	font-size: 12px;
	text-transform: none;
	min-width: 280px;
	padding: 10px 15px;
}

.top-hat .dropdown-menu > li > a {
	padding: 0;
	text-align: left;
}

div.navbar-collapse.collapse.navbar-responsive-collapse > ul > li.dropdown.open > ul > li > ul > li {
	margin-top: 2px;
	margin-bottom: 2px;
}

.dropdown-h1 {
	font-size: 18px;
	text-align: left;
	margin-top: 5px;
	margin-bottom: 10px;
	font-weight: 500;
}

.dropdown-menu .heading {
	font-size: 13px;
	font-weight: 600;
	margin-top: 10px;
}


/* ---------- Hamburger --------- */

.navbar-toggle {
	margin: 35px 30px 0 0;
	border: 0;
	border-radius: 0;
	padding: 0;
}

.navbar-toggle .icon-bar + .icon-bar {
	margin-top: 7px;
}

.navbar-default .navbar-toggle .icon-bar {
	background-color: #333;
}

.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus, .navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus, .navbar-default .navbar-collapse, .navbar-default .navbar-form {
	background-color: transparent;
	border: none;
	box-shadow: 0 0 0;
}

.navbar-toggle .icon-bar {
	display: block;
	width: 36px;
	height: 3px;
	border-radius: 0;
}

/* ---------- Footer --------- */

.footer {
	background: #e6e6e6;
	font-size: 13px;
	color: #555;
	line-height: 17px;
	text-align: left;
	padding-top: 18px;

	position: absolute;
	bottom: 0;
	width: 100%;
	/* Set the fixed height of the footer here */
	min-height: 50px;
}

.footer a {
	color: #555;
}

/* ---------- Hero --------- */

.hero {
	min-height: 440px;
	background-image: linear-gradient(-180deg, #18A3EA 0%, #1CBBEF 51%, #1992E6 100%);
	padding-top: 30px;
	position: relative;
}

.slogan-small {
	color: #fff;
	text-transform: uppercase;
	font-size: 22px;
	line-height: 28px;
	letter-spacing: 2px;
	font-weight: 300;
	margin-top: 20px;
}

.slogan-main {
	color: #fff;
	font-size: 42px;
	line-height: 52px;
	margin-top: 30px;
	font-weight: 700;
	letter-spacing: .75px;
	max-width: 500px;
	margin-bottom: 20px;
}

.hero .col-sm-5 {
	position: relative;
	min-height: 440px;
}

.report {
	max-height: 440px;
	position: absolute;
	bottom: 0;
}

@media (max-width: 1200px) {
	.report {
		max-height: none;
		width: 95%;
	}
}

@media (max-width: 1024px) {
	.slogan-main {
		font-size: 40px;
		line-height: 44px;
		margin-top: 30px;
	}
}

@media (max-width: 767px) {
	.hero {
		text-align: center;
	}
	
	.slogan-main {
		max-width: none;
	}
	
	hr.divider-left {
		text-align: center; 
		margin: 20px auto;
	}
	
	.hero .col-sm-5 {
		min-height: 320px;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
	}
	
	.report {
		max-width: 280px;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
		right: 7.5%;
	}
	
}

.divider-left {
	width: 60px;
	border: 1px solid #333;
	margin: 20px 0;
}

.divider-center {
	width: 60px;
	border: 1px solid #333;
	text-align: center; 
	margin: 20px auto;
}

.yellow {
	border: 1px solid #fdce2f;
}

.dark-yellow {
	border: 1px solid #d7982e;
}

.red {
	border: 1px solid #e80d1d;
}

.landing-white-block {
	min-height: 320px;
	padding: 80px 10px;
}

.block-content {
	margin: 20px 0;
}

.what-we-offer {
	min-height: 360px;
	background: #eccb30;
	padding: 50px 0 60px;
}

.weo-icons > li img {
	padding: 30px 65px;
}

@media (max-width: 768px) {
	.weo-icons > li img {
		padding: 30px;
	}
}

.based-in-science {
	min-height: 320px;
	padding: 60px 10px;
}

.testimonials {
	/*background-image: linear-gradient(-180deg, #89C240 0%, #81C148 50%, #61B84A 100%);*/
	background-image: url('../images/bg-testimonials.png');
	background-size: cover;
	min-height: 280px;
	padding: 60px 10px 60px;
}

@media (max-width: 768px) {
	.testimonials {
		background-position: center top;
	}
}

.testimonials .arrow img {
	max-width: 24px;
}

.testimonials .arrow {
	background-color: rgba(255,255,255,0.5);
	width: 60px;
	height: 60px;
	text-align: center;
	border-radius: 30px;
	padding-top: 17px;
	margin: 30px 0;
	margin-left: auto;
	margin-right: auto;
}

.test-quote {
	color: #fff;
	font-weight: 200;
	font-size: 22px;
	text-align: center;
	margin: 15px 0;
}

.test-name {
	text-align: center;
	color: #fff;
	text-transform: uppercase;
	font-weight: 600;
	font-size: 18px;
	margin-top: 20px;
}

.test-title {
	text-align: center;
	font-size: 15px;
}

.landing-contact-us {
	min-height: 320px;
	background: #333;
	padding: 60px 10px;
}


.nav-footer .navbar-nav > li > a {
	padding-top: 38px;
}

@media (max-width: 767px) {
	.nav-footer .navbar-nav > li > a {
		padding-top: 5px;
		text-align: center;
	}
}


/* ---------- Services Page --------- */

.services-slogan {
	min-height: 300px;
	background: #000;
	padding: 100px 20px;
	color: #fff;
	font-weight: 300;
	font-size: 32px;
	background-image: url('../images/bg-slogan.png');
	background-size: cover;
}

.content {
	margin: 60px 15px 120px;
	font-size: 16px;
}

.emphasis {
	font-weight: 700;
}

.content ul {
	margin: 10px 0;
	font-size: 14px;
}

.content ul > li {
	margin: 5px 0;
}

.content h5 {
	margin-top: 60px;
	padding-bottom: 10px;
	border-bottom: 1px solid #ddd;
	margin-bottom: 20px;
}

.content .form-group label {
	font-size: 14px;
}

.content .form-control {
	height: 36px;
	background-color: #fafafa;
	border-radius: 0;
}

.content textarea.form-control {
	height: auto;
}

/* ----------- About Page ----------- */

.about-top-block {
	min-height: 240px;
	padding: 60px 10px 10px;
}

.content-about {
	margin: 40px 15px 120px;
	font-size: 16px;
}

.content-about h5 {
	margin-top: 40px;
	padding-bottom: 10px;
	border-bottom: 1px solid #ddd;
	margin-bottom: 20px;
}

/* --------- Science Page ------------ */

.science-top-block {
	min-height: 240px;
	padding: 60px 10px 10px;
}