/* Colors:

Blue: 1675a9
Dark Blue: 0075a8
Tan: caa977
Grey: b3b2b3

*/

@import url('https://fonts.googleapis.com/css?family=Lato:400,700,900');

/* Dev */

.columns {
	/*border: 1px solid #d4d4d4;*/
}

body {
	font-family: 'Lato', sans-serif;
}

.row {
	max-width: 100rem;
}

h1 {
	font-family: 'Lato', sans-serif;
	font-weight: 900;
	font-size: 3.5em;
	line-height: 1em;
	letter-spacing: -.04em;
	color: #fff;
	text-shadow: 2px 2px 10px rgba(0,0,0,1);
}

	@media only screen and (max-width: 40em) { h1 { font-size: 2.25em; } } /* small */

.callout.large {
	padding-top: 12em;
	padding-bottom: 12em;
	margin-bottom: 0;
	border: 0;
}

	@media only screen and (max-width: 40em) { .callout.large { padding-top: 6em; padding-bottom: 6em; } } /* small */

/* Title-bar: Home Page */

.title-bar {
	background: url('../images/Header-Background.jpg');
	background-size: cover;
	padding: 0;
}

.logo {
	margin: 1.5vw auto 1.5vw auto;
	max-width: 280px;
	height: auto;
	/*max-width: 385px;*/
}
	@media only screen and (max-width: 40em) { .logo { width: 80%; height: auto; margin: 1em 0 2em 0; } } /* small */

/* Title-Bar: Secondary */

body.tier2 .title-bar {
	background: #fff;
}

body.tier2 .logo {
	margin: 1.5em 0 1.5em 0;
	/*max-width: 385px;*/
}
	@media only screen and (max-width: 40em) { body.tier2 .logo { width: 80%; height: auto; margin: 1em 0 1em 10%; } } /* small */
	@media only screen and (min-width: 40.063em) and (max-width: 64em) { body.tier2 .logo { margin-top: 1em; } } /* medium */

/* Home Navigation Menu */

.menu {
	background: #fff;
}

.menu li a {
	text-transform: uppercase;
	font-weight: 900;
	font-size: 1.4em;
	padding: 1.5vw 0 1.5vw 0;
	color: #b3b2b3;
	text-align: center;
}

	@media only screen and (max-width: 40em) { .menu li a { font-size: 13px; padding-top: 4vw; padding-bottom: 4vw; } } /* small */
	@media only screen and (min-width: 40.063em) and (max-width: 64em) { .menu li a { font-size: 18px; padding-top: 2vw; padding-bottom: 2vw; } } /* medium */

.menu li a:hover {
	color: #fff;
	background: #0e74a7;
}

.menu li {
	width: 24.5%;
	display: inline-block;
}

	@media only screen and (max-width: 40em) { .main-navigation .row, .main-navigation .columns { padding-left: 0; padding-right: 0; } }

	@media only screen and (max-width: 40em) { .menu li { width: 25%; display: block; float: left; text-align: center; } } /* small */
	@media only screen and (min-width: 40.063em) and (max-width: 64em) { .menu li { width: 24.5%; display: block; float: left; text-align: center; } } /* medium */

.menu li:last-child {
	border: 0;
}

.menu li a.current {
	color: #1f1f1f;
}

/* Tier 2 Navigation Menu */

body.tier2 .menu {
	margin-top: 8%;
	float: right;
}
	@media only screen and (max-width: 40em) { body.tier2 .menu { width: 100%; margin-top: 1em; margin-bottom: 1em; } } /* small */
	@media only screen and (min-width: 40.063em) and (max-width: 64em) { body.tier2 .menu { margin-top: 8vw; } } /* medium */

body.tier2 .menu li a {
	text-transform: uppercase;
	font-weight: 900;
	font-size: 1.4em;
	padding: 0 1em 0 1em;
	color: #b3b2b3;
}

	@media only screen and (max-width: 40em) { body.tier2 .menu li a { font-size: 13px; padding: 0; } } /* small */
	@media only screen and (min-width: 40.063em) and (max-width: 64em) { body.tier2 .menu li a { font-size: .85em; } } /* medium */

body.tier2 .menu li a:hover {
	color: #1f1f1f;
	background: #fff;
}

body.tier2 .menu li {
	border-right: 3px solid #b3b2b3;
}

	@media only screen and (max-width: 40em) { body.tier2 .menu li { width: 24.25%; display: inline-block; text-align: center; border-right: 0; } } /* small */
	@media only screen and (min-width: 40.063em) and (max-width: 64em) { body.tier2 .menu li { border-right: 2px solid #b3b2b3; } } /* medium */

body.tier2 .menu li:last-child {
	border: 0;
}

body.tier2 .menu li a.current {
	color: #1f1f1f;
}

/* Footer */

.footer {
	background: #000;
	color: #fff;
	padding-top: 2em;
	padding-bottom: 4em;
	margin-bottom: 0;
}

.footer a {
	color: #caa977;
}

.footer p {
	font-size: 1.3em;
	font-weight: 700;
	letter-spacing: -.04em;
}

	@media only screen and (max-width: 40em) { .footer p { font-size: 1.25em; } } /* small */
	@media only screen and (min-width: 40.063em) and (max-width: 64em) { .footer p { font-size: 1em; } } /* medium */

.footer strong {
	font-weight: 900;
}

.footer .columns {
	padding-left: 2em;
	padding-right: 2em;
	border-left: 1px solid #1675a9;
}

	@media only screen and (max-width: 40em) { .footer .columns { border: 0; } } /* small */
	@media only screen and (min-width: 40.063em) and (max-width: 64em) { .footer .columns { padding-left: 1em; padding-right: 1em; } } /* medium */

.footer .columns:first-child {
	border: none;
}

.footer img {
	width: 80%;
	height: auto;
	margin-top: 1em;
}

	@media only screen and (max-width: 40em) { .footer img { width: 40%; margin-left: 30%; margin-bottom: 2em; } } /* small */
	
img.nsi-badge {
	max-width: 80px;
	margin-top: 0;
	margin-bottom: 0;
}

@media only screen and (min-width: 40.063em) and (max-width: 64em) { img.nsi-badge { max-width: 64px; }}

@media only screen and (max-width: 40em) { img.nsi-badge { max-width: 84spx; width: 60%; } }

/* Buttons */

.button.large {
	text-transform: uppercase;
	font-weight: 900;
	font-size: 2em;
	letter-spacing: -.04em;
	border: 3px solid #fff;
	border-radius: .5em;
	background: #0075a8;
	padding: .75em 1.75em .75em 1.75em;
	margin-top: 1em;
}

	@media only screen and (max-width: 40em) { .button.large { font-size: 1.25em; } } /* small */

/* Sections */

.tan {
	color: #fff;
	background: #caa977;
	padding: 3em 0 2em 0;
}

.tan p {
	font-size: 1.75em;
	padding-left: 2em;
	padding-right: 2em;
	line-height: 1.25em;
	font-weight: 700;
	letter-spacing: -.04em;
}

	@media only screen and (max-width: 40em) { .tan p { font-size: 1.25em; padding-left: 0; padding-right: 0; } } /* small */
	@media only screen and (min-width: 40.063em) and (max-width: 64em) { .tan p { padding-left: 0; padding-right: 0; } } /* medium */

.tan .button {
	background: url('../images/bg-button-blue.gif');
	background-size: auto 100%;
}

.white {
	color: #1f1f1f;
	background: #fff;
	padding: 3em 0 2em 0;
}

.white p {
	font-size: 1.75em;
	padding-left: 2em;
	padding-right: 2em;
	line-height: 1.25em;
	font-weight: 700;
	letter-spacing: -.04em;
}

	@media only screen and (max-width: 40em) { .white p { font-size: 1.25em; padding-left: 0; padding-right: 0; } } /* small */
	@media only screen and (min-width: 40.063em) and (max-width: 64em) { .white p { padding-left: 0; padding-right: 0; } } /* medium */

.white .button {
	background: url('../images/bg-button-tan.gif');
	background-size: auto 100%;
}

.blue {
	color: #fff;
	background: #0076a8;
	padding: 3em 0 2em 0;
}

.blue p {
	font-size: 1.75em;
	padding-left: 2em;
	padding-right: 2em;
	line-height: 1.25em;
	font-weight: 700;
	letter-spacing: -.04em;
}

	@media only screen and (max-width: 40em) { .blue p { font-size: 1.25em; padding-left: 0; padding-right: 0; } } /* small */
	@media only screen and (min-width: 40.063em) and (max-width: 64em) { .blue p { padding-left: 0; padding-right: 0; } } /* medium */

.blue .button {
	background: url('../images/bg-button-tan.gif');
	background-size: auto 100%;
}

/* Content */

.content {
	padding: 2em 0 2em 0;
}

	@media only screen and (max-width: 40em) { .content { padding: .5em 0 .5em 0; } } /* small */

.content h2 {
	font-size: 1.75em;
	font-weight: 900;
	text-align: center;
	font-family: 'Lato', sans-serif;
	letter-spacing: -.04em;
}

.content p {
	font-size: 1.35em;
	padding-left: 2em;
	padding-right: 2em;
	line-height: 1.25em;
	font-weight: 400;
	letter-spacing: -.04em;
}

	@media only screen and (max-width: 40em) { .content p { font-size: 1.25em; padding-left: 0; padding-right: 0; } } /* small */

.content strong {
	font-weight: 900;
}

.content a {
	color: #0076a9;
	text-decoration: underline;
}

.content a:hover {
	color: #caa977;
}

/* Tier 2 */

body.tier2 .callout.large {
	padding-top: 16em;
	padding-bottom: 5em;
	margin-bottom: 2em;
}

	@media only screen and (max-width: 40em) { body.tier2 .callout.large { padding-top: 6em; padding-bottom: 6em; } } /* small */

body.tier2 h1 {
	padding-left: 4em;
	padding-right: 4em;
}

	@media only screen and (max-width: 40em) { body.tier2 h1 { padding-left: 0; padding-right: 0; } } /* small */
	@media only screen and (min-width: 40.063em) and (max-width: 64em) { body.tier2 h1 { padding-left: 0; padding-right: 0; } } /* medium */

body.tier2 h2 {
	background: url(../images/Logo-Product-Header.png) no-repeat;
	background-position: top center;
	margin-top: 3em;
	padding: 4em 0 1em 0;
}

	@media only screen and (max-width: 40em) { body.tier2 h2 { margin-top: 0; } } /* small */
	@media only screen and (min-width: 40.063em) and (max-width: 64em) { body.tier2 h2 { margin-top: 0; } } /* medium */

body.tier2 hr {
	border: 0;
    height: 0;
    border-top: 2px solid #1f1f1f;
    width: 80%;
    margin: 4em auto 4em auto;
}

body.tier2 .footer {
	margin-top: 6em;
}

/* Products */

@media only screen and (max-width: 40em) { body.products .content img { margin-top: 1em; } } /* small */
@media only screen and (min-width: 40.063em) and (max-width: 64em) { body.products .content img { margin-top: 1em; } } /* medium */

/* Services */

body.services .photo-services {
	margin: 2em 0 2em 0;
}

body.services .button {
	background: url('../images/bg-button-red.gif');
	background-size: auto 100%;
	color: #fff;
	text-decoration: none;
}

/* About */

body.about .photo-about {
	margin: 2em 0 2em 0;
}

body.about .button {
	background: url('../images/bg-button-red.gif');
	background-size: auto 100%;
	color: #fff;
	text-decoration: none;
}

/* Contact */

body.contact .button.large {
	background: url('../images/bg-button-blue.gif');
	background-size: auto 100%;
	color: #fff;
	text-decoration: none;
	padding-left: 3.5em;
	padding-right: 3.5em;
}

body.contact form label {
	font-size: 1.25em;
}

body.contact form p {
	padding-left: 0;
	padding-right: 0;
}

.affiliate-logos {
	margin-top: 6em;
}

.affilate-logos img {
	width: 80%;
	max-width: 80% !important;
	height: auto;
}

/* Videos */

body.video .content {
	padding-top: 0;
}

body.video .content p {
	margin-bottom: 1em;
}

body.video .button {
	background: url('../images/bg-button-red.gif');
	background-size: auto 100%;
	color: #fff;
	text-decoration: none;
}

@media only screen and (max-width: 40em) { .embed-container { margin-bottom: 3em; } } /* small */
@media only screen and (min-width: 40.063em) and (max-width: 64em) { .embed-container { margin-bottom: 3em; } } /* medium */