/*
	Theme Name: Sorbothane Insoles
	Theme URI: https://www.insoles-sorbothane.com
	Author: Evolve Creative Group
	Author URI: https://www.evolvecreativegroup.com
	Description: Sorbothane Insoles Custom WP Theme
*/


body {
	position: relative;
    margin: 0;
	padding: 0;
    overflow-x: hidden;
	background: #fff;
	font: 24px/30px "Roboto Light", sans-serif;
    color: #3c3c3c;
	-webkit-user-select: text;
	-webkit-text-size-adjust: none;
}

	body > iframe {
		position: absolute;
		top: -9999px;
	}

a {
	font-family: "Roboto Light", sans-serif;
	color: #3c3c3c;
	outline: 0;
}

a:hover {
	text-decoration: none;
}

b,
strong {
	font-weight: normal;
	font-family: "Roboto Bold", sans-serif;
}

em {
	font-style: normal;
	font-family: "Roboto Light Italic", sans-serif;
}

strong > em {
	font-family: "Roboto Bold Italic", sans-serif;	
}

h1,
h2,
h3,
h4 {
	margin: 0;
	padding: 0;
	font: 48px/50px "Roboto Black", sans-serif;
	font-weight: normal;
	text-transform: uppercase;
	color: #173f70;	
}

h1 {
	-webkit-margin-before: 0;
	-webkit-margin-after: 0;
}

h2,
h3,
h4 {
	padding: 30px 0 0;
}

	h2 + *,
	h3 + *,
	h4 + * {
		margin-top: 20px;
	}

	h1 + h2,
	h2 + h2,
	h2 + h3,
	h3 + h4,
	h4 + h5 {
		margin-top: 0;
	}


h2 {
	font-size: 36px;
	line-height: 38px;
}

h3 {
	font-size: 30px;
	line-height: 32px;
}

.blog-post h3 {
	font-size: 28px;
}

h4 {
	font-size: 26px;
	line-height: 28px;
}
	
hr {
	height: 1px;
	margin: 45px 0;
	border: 0;
	background-color: #adb8c1;
}

	hr + h2,
	hr + h3,
	hr + h4 {
		padding-top: 0;
	}

img {
	max-width: 100% !important;
	height: auto !important;
	border: 0;
}

main {
	position: relative;
	display: block;
	width: 100%;
	max-width: 1920px;
	margin: 0 auto;
	padding: 0;
	background: #fff;
}

ol,
ul {
	padding: 0 0 0 40px;
	margin-bottom: 16px;
}

	ol li,
	ul li {
		margin-bottom: 8px;
    	padding-left: 5px;
	}

	ol li.bullet-point-style-kill,
	ul li.bullet-point-style-kill {
		list-style-type: none;
	}
	
		ol ol,
		ol ul,
		ul ol,
		ul ul {
			padding: 8px 0 0 30px;
		}

			ol ol li,
			ol ul li,
			ul ol li,
			ul ul li {
				margin-bottom: 8px;
			}
						
	
sup {
	position: relative;
	vertical-align: baseline;
	top: -2px;
}

table, 
thead, 
tbody, 
tr, 
td {
    border-collapse: separate;
    border-spacing: 0;
    box-sizing: border-box;
}

.non-cms-clear::after {
	display: block;
	content: "";
	clear: both;
	height: 0;
	font-size: 0;
	line-height: 0;
}

img.align-left,
img.alignleft {
	float: left;
	margin: 5px 20px 10px 0;
}

img.align-center,
img.aligncenter {
	display: block;
	margin: 15px auto;
}

	img.align-center + h2,
	img.align-center + h3,
	img.aligncenter + h2,
	img.aligncenter + h3 {
		padding: 10px 0 0;
	}

img.align-right,
img.alignright {
	float: right;
	margin: 5px 0 10px 20px;
}

img.style-circle {
	border-radius: 50%;
}

.anchor-link {
	display: block;
	height: 0;
	font-size: 0;
	line-height: 0;
}

.btn-container {
	padding: 15px 0 25px;
}

.btn-container + hr,
.non-cms-clear + hr {
	margin-top: 30px;
}

.btn,
.gform_button {
	padding: 12px 35px;
	font: 18px/18px "Roboto Condensed", sans-serif;
	text-align: center;
	text-transform: uppercase;
	text-decoration: none;
	border-radius: 5px;
	cursor: pointer;
	outline: 0;	
	transition: all 0.2s;
}

.btn-blue {
	color: #fff;
	background-color: #23518b;
}

.btn-blue:hover {
	background-color: #0e2a4d;	
}

	.btn-blue i {
		margin-left: 8px;
		font-size: 13px;
	}

.btn-navy {
	background-color: #173f70;
	color: #fff;
	-webkit-box-shadow: 0 2px 0 0 rgba(18, 82, 162, 1);
	box-shadow: 0 2px 0 0 rgba(18, 82, 162, 1);	
}

.btn-navy span {
	color: #f5c01f;
}

.btn-navy:hover {
	background-color: #0e2a4d;	
}

.btn-navy.btn-insole,
.btn-navy.btn-navy-footer {
	-webkit-box-shadow: 0 3px 0 0 rgba(18, 82, 162, 1);
	box-shadow: 0 3px 0 0 rgba(18, 82, 162, 1);
}

.btn-navy.btn-insole span {
	color: #fff;
}

.btn-navy.btn-insole span span {
	color: #f5c01f;
}

.btn-white {
	color: #272727;
	background-color: #fff;
}

.btn-white i {
	color: #0c468f;
}

.btn-white:hover {	
	color: #fff;
	background-color: #0e2a4d;
}

.btn-white:hover i {
	color: #fff;
}	

.btn-style-kill {
	-webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0) !important;
	box-shadow: 0 0 0 0 rgba(0, 0, 0, 0) !important;
}	

.content-hero {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

.disclaimer {
	font: 16px/19px "Roboto Light", sans-serif !important;
}

.flexbox-content {
	display: flex;
	flex-flow: row wrap;
}

.non-cms-clear {
	display: block;
	content: "";
	clear: both;
	height: 0;
	font-size: 0;
	line-height: 0;
}

.stylized-bullet {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	margin-top: 8px;
	font: 33px/33px "Roboto Black", sans-serif;
	color: #fff;
	border-radius: 50%;
	box-sizing: border-box;
	border: 3px solid #aabbcf;
	background-color: #2160ae;
}

.video {
	position: relative;
   	width: 100%;
   	margin: 30px 0;
   	padding-top: 56.25%; /* 16:9 aspect ratio */;
}

.video iframe {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
}


/* HEADER */

header {
	background-color: #2b7adc;
}

header.active-menu-header {
	border-bottom: 0;
}

header > section {
	justify-content: space-between;
	align-items: center;
	width: 92.5%;
	max-width: 1315px;
	margin: 0 auto;
	padding: 15px 0;
	border-bottom: 1px solid #1e63b8;
}

header > section .header-logo {
	flex: 0 1 auto;
	margin-left: 2.7%;
}

.header-logo > a img {
	display: block;
}

.logo {
	width: 160px;
}

header > section > .header-cta {
	flex: 1 1 auto;
	justify-content: flex-end;
	align-items: center;
	margin-right: 5px;
}

.header-cta .header-btn-insole,
.header-cta .header-apma {
	flex: 0 1 auto;	
}	

.header-cta .header-btn-insole {
	margin-right: 2px;
}

.header-btn-insole .btn-container {
	padding: 10px 0;
}

.header-btn-insole .btn.btn-insole {
	justify-content: center;
	align-items: center;
	padding: 10px 18px 8px;
	font-size: 22px;
	line-height: 22px;
}

.header-btn-insole .btn.btn-insole i {
	line-height: 1 !important;
}

.header-btn-insole .btn.btn-insole .icon-insole-finder {
	margin-right: 10px;
	font-size: 40px;
}

.header-btn-insole .btn.btn-insole .icon-arrow {
	margin-left: 10px;
	font-size: 22px;
}



.miu-icon-container__mobile, 
.miu-icon-container__tablet, 
.miu-icon-container__desktop {
	background-color: white;
	border-radius: 5px;
	text-align: center;
	font-family: "Roboto Condensed Bold", sans-serif;
	text-transform: uppercase;
	display: flex;
	align-items: center;
}

.miu-icon-container__tablet, .miu-icon-container__desktop {
	flex-direction: row;
	padding: 12px 15px;
	display: none;
}

.miu-icon-container__mobile {
	width: 55px;
	padding: 5px 6px;
	flex-direction: column;
}

.miu-link {
	text-decoration: none;
}

.miu-link__mobile {
	display: block;
}

.miu-link__tablet, .miu-link__desktop {
	display: none;
	margin-left: auto;
	margin-right: 30px;
}


.miu-text {
	font-size: 10px;
	display: block;
	line-height: 1;
	color: #173f70;
}

.miu-icon {
	width: 40px;
	display: block;
	margin-top: 3px;
}

		
/* NAVIGATION ICON */
		
.btn-mobile-menu {
	display: none;
	width: 32px;
	min-height: 45px;
	font: 14px/14px "Roboto Condensed", sans-serif;
	color: #fff;
	text-transform: uppercase;
	cursor: pointer;
}

	.btn-mobile-menu span {
		display: inline-block;
		position: relative;
		width: 32px;
	}

	.btn-mobile-menu span::before, 
	.btn-mobile-menu span::after {
		content: "MENU";
		position: absolute;
		top: 0;
		left: -1px;
		right: 0;
		display: block;
		width: 32px;
		padding-top: 22px;
		opacity: 1;
		transition: opacity .5s ease-in-out;
	}

	.btn-mobile-menu span::after {
		content: "CLOSE";
		left: -2px;
		opacity: 0;
	}

	.btn-mobile-menu.active-menu-btn span::before {
		opacity: 0;
	}

	.btn-mobile-menu.active-menu-btn span::after {
		opacity: 1;
	}

		.btn-mobile-menu i, 
		.btn-mobile-menu i::before, 
		.btn-mobile-menu i::after {
			content: "";
			display: block; 
			position: absolute;
			left: 0;
			right: 0;
			width: 28px;
			height: 4px;
			background: #fff;
			transition: all 0.5s ease-in-out;
		}
		
		.btn-mobile-menu i::before {
			width: 24px;
			top: -9px;
		}
		
		.btn-mobile-menu i::after {
			bottom: -9px;
			width: 32px;
		} 
		
		.btn-mobile-menu.active-menu-btn i {
			background-color: transparent;
		}
		
		.btn-mobile-menu.active-menu-btn i::before, 
		.btn-mobile-menu.active-menu-btn i::after {
			top: 0;
		}
		
		.btn-mobile-menu.active-menu-btn i::before {
			width: 32px;
			-ms-transform: rotate(45deg);
			-webkit-transform: rotate(45deg);
			transform: rotate(45deg);
		}
		
		.btn-mobile-menu.active-menu-btn i::after {
			-ms-transform: rotate(-45deg);
			-webkit-transform: rotate(-45deg);
			transform: rotate(-45deg);
		}


/* COMMON NAVIGATION STYLES */

nav ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

	nav ul li {
		margin-bottom: 0;
		padding-left: 0;
		line-height: 0;
	}	

		nav ul li a {
			outline: 0;
			text-decoration: none;
			text-transform: uppercase;
		}


/* DESKTOP NAVIGATION */

nav.desktop-menu {
	padding: 15px 0;
	text-align: center;
}

	nav.desktop-menu ul {
		font-size: 0;
	}

		nav.desktop-menu ul li {
			display: inline-block;
			vertical-align: middle;
			padding: 0 15px 0;
			box-sizing: border-box;
			border-right: 1px solid #1e63b8;
		}	

		nav.desktop-menu ul li:first-child {
			padding-left: 0;
		}

		nav.desktop-menu ul li:last-child {
			padding-right: 0;
			border-right: 0;
		}

			nav.desktop-menu ul li a {
				font: 18px/18px "Roboto Condensed", sans-serif;
				color: #fff;
				transition: color 0.2s;
			}

			nav.desktop-menu ul li a:hover {
				color: #173f70;
			}

			nav.desktop-menu ul li.nav-search::after {
				display: inline-block;
				content: "s";
				margin-left: 5px; 
				font-size: 14px;
				line-height: 1;
				font-family: "Sorbothane Insoles";
				color: #fff;
				transition: color 0.2s;
			}

			nav.desktop-menu ul li.nav-search-active::after {
				display: inline-block;
				content: "s";
				margin-left: 5px; 
				font-size: 14px;
				line-height: 1;
				font-family: "Sorbothane Insoles";
				color: #173f70;
			}


/* MOBILE NAVIGATION */	

nav.mobile-menu,
nav.mobile-menu.open-menu {
	display: none;
}	

nav.mobile-menu {
	z-index: 3;
	position: relative;
}

	nav.mobile-menu > div > ul {
		z-index: 3;
		position: absolute;
	    top: 0;
	    overflow: hidden;
	    width: 100%;
		max-height: 0;
		padding: 0;
		background-color: #11335c;
		transition-duration: 0.5s;
		transition-timing-function: cubic-bezier(0, 1, 0.5, 1);	
	}	

	nav.mobile-menu.open-menu > div > ul {
		overflow: hidden;
		max-height: 2000px;
		transition-duration: 0.5s;
		transition-timing-function: ease-in;
	}

		nav.mobile-menu ul li {
			display: block;
			margin: 0;
			padding: 0;	
		}

			nav.mobile-menu > div > ul > li > .expand,
			nav.mobile-menu > div > ul > li > a {
				position: relative;
				display: block;
				padding: 15px 3.75%;
				font: 24px/24px "Roboto Condensed", sans-serif;
				color: #fff;
				text-transform: uppercase;
				border-bottom: 1px solid #1a4579;
			}

			nav.mobile-menu > div > ul > li:last-child > .expand,
			nav.mobile-menu > div > ul > li:last-child > a {
				border-bottom: 0;
			}		
				
			nav.mobile-menu > div > ul > li > .expand:hover {
				cursor: pointer;
			}	

			nav.mobile-menu > div > ul > li > .expand::before,
			nav.mobile-menu > div > ul > li > .expand::after {
				display: block;
				float: right;
				content: "";
				width: 4px; 
				height: 20px;
				margin-top: 5px;
				border-radius: 4px;
				background-color: #fff;
				-webkit-backface-visibility: hidden;
				backface-visibility: hidden;
				transition: all 0.5s;
			}

			/* IE11 Hack for calc */
			_:-ms-fullscreen, :root nav.mobile-menu > div > ul > li > .expand::before {
				margin-right: 15px;
				transform: rotate(-45deg) translateY(-50%); 
			}

			_:-ms-fullscreen, :root nav.mobile-menu > div > ul > li > .expand::after { 
				margin-right: -2px;
				transform: rotate(-135deg) translateY(50%);
			}
			/* End hack */

			nav.mobile-menu > div > ul > li > .expand:hover::before,
			nav.mobile-menu > div > ul > li > .expand:hover::after {
				background-color: #fff;
			}

			nav.mobile-menu > div > ul > li > .expand::before {
				margin-right: 16px;
				transform: rotate(-45deg) translateY(calc(-50% + 2px));
			}

			nav.mobile-menu > div > ul > li > .expand::after {
				margin-right: -5px;
				transform: rotate(-135deg) translateY(calc(50% - 2px));
			}

			nav.mobile-menu > div > ul > li > .expand.expanded::before,
			nav.mobile-menu > div > ul > li > .expand.expanded::after {
				margin-top: -6px;
			}	

			nav.mobile-menu > div > ul > li > .expand.expanded::before {
				transform: rotate(-45deg) translateY(calc(50% - 2px));
			}

			nav.mobile-menu > div > ul > li > .expand.expanded::after {
				margin-right: -3px;
				transform: rotate(-135deg) translateY(calc(-50% + 2px));
			}

			/* IE11 Hack for calc */
			_:-ms-fullscreen, :root nav.mobile-menu > div > ul > li > .expand.expanded::before { 
				margin-right: 15px;
				transform: rotate(-45deg) translateY(50%); 
			}

			_:-ms-fullscreen, :root nav.mobile-menu > div > ul > li > .expand.expanded::after { 
				margin-right: -6px;
				transform: rotate(-135deg) translateY(-50%);
			}
			/* End hack */	

				nav.mobile-menu > div > ul > li > ul {
					display: none;
					opacity: 1;
					margin: 0;
					padding: 0;
					background: #1a4476;
				}	

				nav.mobile-menu > div > ul > li > ul > li {
					margin-bottom: 0;
					padding-left: 0;
				}

					nav.mobile-menu > div > ul > li > ul > li > a {
						display: block;
						padding: 10px 5.25%;
						font: 20px/20px "Roboto Condensed", sans-serif;
						color: #fff;
					}

/* Header Message */
.header-message {
	background-color: #2b7adc;
	padding-top: 10px;
	padding-bottom: 10px;
	font-family: "Roboto Condensed", sans-serif;
	text-align: center;
	color: white;
	text-transform: uppercase;
	line-height: 1.5;
	font-size: 14px;
	padding-left: 15px;
	padding-right: 15px;
}

.header-message__content-desktop {
	display: none;
}


.header-message__link {
	color: white;
	text-decoration: underline;
	font-family: "Roboto Condensed", sans-serif;
}


/* PAGE BINS */

/* Uniform Styles */

.page-bins-row {
	justify-content: space-between;
	align-items: stretch;
}

	.page-bin {
		flex: 0 1 50%;
		justify-content: center;
		align-items: center;
		padding: 80px 0;
	}

	.page-bins-row:nth-child(2n) .page-bin.bin-text {
		order: 1;
	}

		.page-bin .bin-text-container {
			width: 85%;
			max-width: 550px;
			color: #fff;
		}

			.bin-text-container h2,
			.bin-text-container h3,
			.cta-testimonial .bin-text-container > span,
			.bin-text-container a h2.heading-link {
				font: 45px/45px "Roboto Black", sans-serif;
				text-transform: uppercase;
				color: #fff;
			}

			.bin-text-container a h2.heading-link {
				text-decoration: underline;
			}

			.bin-text-container h3 {
				font-size: 26px;
				line-height: 28px;
			}	

			.bin-text-container p.bin-intro-copy,
			.bin-text-container blockquote {
				font: 37px/42px "Roboto Light", sans-serif;
			}

			.bin-text-container p {
				font: 24px/36px "Roboto Light", sans-serif;
			}

			.bin-text-container blockquote {
				position: relative;	
				margin: 40px 0 50px;
			}	

				.bin-text-container blockquote::before {
					position: relative;
					top: -5px;
					left: -10px;
					display: inline-block;
					vertical-align: baseline;
					margin-right: 5px;
					font-size: 58px;
					font-family: "Sorbothane Insoles";
					content: 'q';
				}

				.bin-text-container blockquote span {
					display: block;
					margin: 35px 0 0;
				}

			.bin-text-container .btn-container {
				padding: 15px 0;
				text-align: center;
			}

				.page-bin .btn {
					font-size: 26px;
					line-height: 26px;
				}	

			.bin-text-container .bin-li {
				justify-content: space-between;
			}	

				.bin-li div {
					flex: 0 1 87.5%;
				}

					.bin-li div p {
						margin: 0 0 40px;
					}

					.bin-li:last-of-type div p:last-child {
						margin: 0;
					}	

		.page-bin.bin-visual {
			background-color: #e0e0e0;
		} 	

			.page-bin.bin-image div {
				width: 85%;
			}	

				.page-bin.bin-image img {
					display: block;
					margin: 0 auto;
				}

		.page-bin.bin-bg {
			background-repeat: no-repeat;
			background-position: center center;
			background-size: cover;
		}	

			.page-bin.bin-bg div,
			.cta-testimonial-img div {
				display: none;
				width: 100%;
				max-width: 550px;
			}

		.page-bin.bin-video {
			min-width: 0;
		}	

			.page-bin.bin-video .video {
				width: 85%;
				max-width: 85%;
				min-height: 315px;
				margin: 0;
				box-sizing: border-box;
				border: 4px solid #fff;
			}	


/* Specific Bin Styles */

/* Homepage */

	/* Doctor Recommended */ 

	.hp-page-bins .page-bins-row-1 .bin-text,
	.hp-page-bins .page-bins-row-1 .bin-visual {
		background-color: #de891b;
	}

		.hp-page-bins .page-bins-row-1 .bin-text h2 + * {
			margin-top: 25px;
		}

	.hp-page-bins .page-bins-row-1 .bin-bg {
		background-image: url('images/homepage/hp-bg-doctor-recommended.jpg');
		background-position: 0 0;
	}		

	/* Success Stories */	

	.hp-page-bins .page-bins-row-2 .bin-text,
	.hp-page-bins .page-bins-row-2 .bin-visual {
		background-color: #639add;
	}

	.hp-page-bins .page-bins-row-2 .bin-bg {
		background-image: url('images/homepage/hp-bg-success-story.jpg');
	}	

	/* Science */

	.hp-page-bins .page-bins-row-3 .bin-text {
		background-color: #cc402e;
	}

		.hp-page-bins .page-bins-row-2 .bin-text-container h2,
		.hp-page-bins .page-bins-row-3 .bin-text-container h2 {
			text-align: center;
		}

		.hp-page-bins .page-bins-row-3 .bin-text-container p {
			margin: 25px 0 45px;
		}	

/* Science */


	/* First Diagram */

	.science-bins .page-bins-row-1 .bin-text {
		background-color: #cc402e;
	}	

	/* Second Diagram */

	.science-bins .page-bins-row-2 .bin-text {
		background-color: #2160ae;
	}	

	/* What is Sorbothane? */

	.science-bins .page-bins-row-3 .bin-text {
		background-color: #093469;
	}		

		.science-bins .page-bins-row-3 .bin-text-container h2 {
			font-size: 26px;
			line-height: 26px;
		}

		.science-bins .page-bins-row-3 .bin-text-container p {
			margin: 8px 0 0;
		}


/* CTA - TESTIMONIAL */

.cta-testimonial {
	background-color: #639add;
}

	.cta-testimonial .bin-text-container > span {
		display: block;
		text-align: center;
	}


/* CTA - FINDER */

.cta-finder,
.cta-performance,
.cta-testimonial {
	margin: 15px 0;
}

.cta-finder,
.cta-performance {
	text-align: center;
}	

.cta-finder {
	background: #f5f2e3 url('images/universal/bg-cta-finder.jpg') no-repeat center center / cover;
}

.cta-testimonial + .cta-finder,
.cta-finder + .cta-performance {
	margin-top: 0;
}

	.cta-finder-content,
	.cta-performance-content {
		width: 92.5%;
		margin: 0 auto;
	}

	.cta-finder-content {
		max-width: 750px;
		padding: 60px 0;
	}

		.cta-finder-content > span,
		.cta-performance-content span {
			display: block;
		}	

		.cta-finder-content h1,
		.cta-finder-content span.cta-finder-header,
		.cta-finder-content span.cta-finder-tagline {
			color: #23262a;
		}

		.cta-finder-content h1,
		.cta-finder-content span.cta-finder-header {
			font: 28px/30px "Roboto Condensed Bold", sans-serif;
			text-transform: uppercase;
		}

		.cta-finder-content span.cta-finder-tagline {
			font: 48px/48px "Roboto Light", sans-serif;
			color: #23262a;
		}	

			.cta-finder-content h1 sup,
			.cta-finder-content span.cta-finder-header sup,
			.cta-finder-content span.cta-finder-tagline sup {
				top: 0;
				vertical-align: top;
			}

			.cta-finder-content h1 sup,
			.cta-finder-content span.cta-finder-header sup {
				font-size: 15px;
				font-family: "Roboto", sans-serif;	
			}

			.cta-finder-content span.cta-finder-tagline sup {
				top: -3px;	
				font-size: 25px;
			}	

		.cta-finder-content .btn-container {
			margin: 30px 0;
			padding: 0;
		}

			.cta-finder-content .btn.btn-insole {
				padding: 35px 85px;
				font-size: 0;
				line-height: 0;
			}

				.cta-finder-content .btn.btn-insole > * {
					display: inline-block;
					vertical-align: middle;
				}

				.cta-finder-content .btn.btn-insole i {
					line-height: 1 !important;
				}

				.cta-finder-content .btn.btn-insole .icon-insole-finder {
					margin-right: 20px;
					font-size: 70px;
				}

				.cta-finder-content .btn.btn-insole span {
					font-size: 28px;
					line-height: 28px;
				}

				.cta-finder-content .btn.btn-insole .icon-arrow {
					margin-left: 10px;
					font-size: 25px;
				}	


/* CTA - PERFORMANCE */

.cta-performance {	
	font-family: "Roboto Light", sans-serif;
	text-transform: uppercase;
	color: #272727;
	border-top: 12px solid #d8a919;
	border-bottom: 12px solid #d8a919;
	background-color: #f5c01f;
}

	.cta-performance-content {	
		max-width: 850px;
		padding: 30px 0;
	}

		.cta-performance-content span {
			font-size: 40px;
			line-height: 40px;
		}

		.cta-performance-content p {
			margin: 30px 0;
			font-size: 24px;
			line-height: 30px;
		}

		.cta-performance-content a {
			font: 30px/30px "Roboto Black", sans-serif;
			color: #000;
			text-decoration: none;
		}

			.cta-performance-content a i {
				margin-left: 8px;
				font-size: 22px;
				line-height: 1;
				text-decoration: none;
			}

/* BLOG POST BANNER */

.blog-posts-banner {
	background: url(images/homepage/blog-post-background.jpg) no-repeat center center / cover;
}		

.blog-posts-banner-content {
	padding: 70px 0;
	margin: 0 auto;
	max-width: 1380px;
	width: 92.5%;
}

	.blog-posts-banner-content span {
		margin: 0 auto;
		font-size: 40px;
		color: #23518b;
		text-transform: uppercase;
	}

	.blog-posts-banner-content .btn-container {
		margin: 0 auto;
		width: 223px;

	}

.posts {
	display: flex;
	font-size: 22px;
	padding: 0px;
	margin: 0 auto;
	margin-top: 30px;
	list-style-type: none;
}

	.posts li:nth-child(-n+2) {
		border-right: 1px solid #2b7adc;
	}

	.posts li {
		flex: 0 1 33.33%;
		padding-left: 0px;
		margin-bottom: 0px;
		box-sizing: border-box;
	}

	.posts li a {
		display: block;
		width: 65.2%;
		margin: 0 auto;
		margin: 20px auto;
		color: #23518b;
		font: 22px/22px “Roboto Black”, sans-serif;
	}

/* FORMS */

.gform_wrapper {
	margin: 35px 0 !important;
	padding: 20px 0 30px;
	background-color: #eff4fa;
}
	
	.gform_wrapper > form {
		width: 89.5%;
		margin: 0 auto;
	}

	.contact-form h3,
	.contact-form ul {
		margin: 0;
		padding: 0;
	}
	
		.contact-form li,
		.gform_wrapper .top_label .gfield_label {
			display: block;
			margin: 22px 0 0 !important;
			padding: 0 !important;
			font-weight: normal;
			font: 18px/24px "Roboto Bold", sans-serif !important;
			text-transform: uppercase;
			color: #173f70;	        
		}
		
		.gform_wrapper .top_label .gfield_label {
			display: block;
			margin: 0 !important;
		}
		
		.gform_wrapper .gfield_description,
		.gform_wrapper .field_sublabel_above .ginput_complex.ginput_container label {
			margin-top: 5px !important;
			padding: 0 !important;
			font: 14px/17px "Roboto Bold", sans-serif !important;		
			color: #2160ae;
		}

		.gform_wrapper .field_sublabel_above .ginput_complex.ginput_container label {
			margin: 10px 0 !important;
			letter-spacing: normal !important;
		}	
		
		.contact-form li.disclaimer {
			margin: 12px 0 0 !important;
		}
		
		.contact-form li.field-50 {
			display: inline-block;
			width: 48.5% !important;
		}
		
		.contact-form li.field-margin-right {
			margin-right: 3% !important;
		}
		
		.contact-form li.field-100 {
			width: 100% !important;
			padding: 0 !important;
		}
		
		.contact-form li.gfield_error {
			padding: 0 !important;
		}	
			
			.contact-form-disclaimer {
				font: 14px/14px "Roboto Bold", sans-serif !important;
				color: #173f70;
			}
			
				.contact-form-disclaimer span {
					color: #9a0002;
				}
			
			.contact-form label {
				display: none;
			}
			
			.contact-form .gfield_required {
				color: #9a0002 !important;
			}
	
			.contact-form input[type=text],
			.contact-form textarea {
				-webkit-appearance: none;
			}
	
			.contact-form input[type="text"],
			.contact-form input[type="tel"],
			.contact-form input[type="email"],
			.contact-form select,
			.contact-form textarea {
				width: 100%;
				height: 35px;
				padding: 0 10px !important;
				font: 18px/24px "Roboto Bold", Arial, Helvetica, sans-serif !important;
				color: #4e4e4e;
				background: #fff;
				box-sizing: border-box;
				border-radius: 5px;
				border: 1px solid #adb8c1;			
				transition: border 0.2s;
			}

			.contact-form select {
				background-image:
			    	linear-gradient(45deg, transparent 50%, #2160ae 50%),
			    	linear-gradient(135deg, #2160ae 50%, transparent 50%);
			    background-size:
			    	5px 5px,
			    	5px 5px;
			  	background-repeat: no-repeat;	
			  	background-position:
			    	calc(100% - 20px) calc(50%),
			    	calc(100% - 15px) calc(50%);
			    -webkit-appearance: none;
			    -moz-appearance: none;	
			}

			.contact-form select:focus {
				outline: 0;
			}

			.contact-form select:-moz-focusring {
				color: transparent;
			  	text-shadow: 0 0 0 #000;
			}

			.contact-form select::-ms-expand {
				display: none;
			}

			.gform_wrapper .top_label input.large.datepicker, 
			.gform_wrapper .top_label input.medium.datepicker, 
			.gform_wrapper .top_label input.small.datepicker {
				width: 100% !important;
			}
	
			.contact-form input:focus,
			.contact-form select:focus,
			.contact-form textarea:focus {
				border: 1px solid #23518b;
				outline: 0 !important;
			}
	
				::-webkit-input-placeholder {
				   color: #999;
				}
	
				:-moz-placeholder {
				   color: #999;  
				}
	
				::-moz-placeholder {
				   color: #999;  
				}
	
				:-ms-input-placeholder {  
				   color: #999;  
				}
	
			.contact-form textarea {
				height: 125px !important;
				padding: 10px !important;
				resize: none;
			}
			
			
			/* Custom Checkboxes */
		
			.contact-form .gfield_checkbox li {
				margin: 10px 0 0 !important;
				color: #3b4a53;
			}
			
			.contact-form .gfield_checkbox li:first-child {
				margin: 17px 0 0 !important;
			}
		
			.contact-form input[type="checkbox"] + label {
				padding-left: 25px !important;
				font-weight: normal !important;
				font-size: 18px !important;
			}
		
			.contact-form input[type="checkbox"]:not(:checked),
			.contact-form input[type="checkbox"]:checked {
				position: absolute;
				left: -9999px;
			}
			
			.contact-form input[type="checkbox"]:not(:checked) + label::before,
			.contact-form input[type="checkbox"]:checked + label::before {
				content: "";
				position: absolute;
				top: 6px;
				left: 0;
				width: 17px; 
				height: 17px;
				border: 1px solid #dadbdb;
				background: #fff;
				border-radius: 5px;
				transition: border 0.2s;
			}
			
			.contact-form input[type="checkbox"]:checked + label::before {
				border: 1px solid #005f9d;
			}
					
			.contact-form input[type="checkbox"]:not(:checked) + label::after,
			.contact-form input[type="checkbox"]:checked + label::after {
				display: block;
				content: "";
				position: absolute;
				top: 8px;
				left: 2px;
				width: 13px;
				height: 13px;
				border-radius: 5px;
				background: #005f9d;
				transition: all 0.2s;
			}		
			
			.contact-form input[type="checkbox"]:not(:checked) + label::after {
				opacity: 0;
				transform: scale(0);
			}
			
			.contact-form input[type="checkbox"]:checked + label::after {
				opacity: 1;
				transform: scale(1);
			}
			
			.contact-form label:hover::before {
				border: 1px solid #002a5c !important;
			}			
	
			.contact-form .gf_placeholder {
				display: none;
			}

			.contact-form .ginput_container_fileupload span {
				display: none !important;
			}
			
			.contact-form .gform_footer {
				margin: 0 !important;
				padding: 25px 0 10px !important;
			}
			
			.contact-form input[type="submit"] {
				width: auto !important;
				margin: 0 !important;
				padding: 12px 35px !important;
				font-size: 18px !important;
				line-height: 18px !important;
				font-family: "Roboto Condensed", sans-serif !important;
				color: #fff;
				background-color: #23518b;
				border: 0;
				border-radius: 5px;
				-webkit-appearance: none;
				-webkit-border-radius: 5px;
				transition: all 0.2s;
			}
	
			.contact-form input[type="submit"]:hover,
			.contact-form input[type="submit"]:focus {
				background-color: #0e2a4d;
			}
	
			.contact-form .gform_validation_container {
				display: none;
			}
	
	.contact-form .gform_ajax_spinner {
		left: 5px;
		position: relative;
		top: 0;
		width: 40px;
		vertical-align: top;
	}
	
	.contact-form .validation_error {
		color: #9a0002 !important;
		font-weight: normal !important;
		font-size: 16px !important;
		font-family: "Roboto Bold", sans-serif !important;
		margin-bottom: 25px;
		border-top: 1px solid #9a0002 !important;
		border-bottom: 1px solid #9a0002 !important;
		padding: 12px 0 !important;
		text-align: center;
	}
	
	.contact-form .gfield_error .validation_message {
		display: none;
	}
	
	.contact-form .gfield_error {
		margin-bottom: 0 !important;
		background-color: transparent !important;
		border-top: 0 !important;
		border-bottom: 0 !important;
	}
	
	.contact-form .gfield_error .gfield_label {
		color: #9a0002 !important;
	}
	
	.contact-form .gfield_error input[type="text"] {
		border: 1px solid #9a0002 !important;
	}

	.contact-form .gfield_error select {
		border: 1px solid #9a0002 !important;
		background-image:
	    	linear-gradient(45deg, transparent 50%, #9a0002 50%),
	    	linear-gradient(135deg, #9a0002 50%, transparent 50%);
	}	

	.gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half) {
		min-width: 100% !important;
	}	    	
	
/* FOOTER */

footer {
	padding: 50px 0;
	color: #fff;
	background-color: #0c468f;
}

	footer a {
		color: #fff;
		text-decoration: none;
	}

	footer a:hover {
		text-decoration: underline;
	}
	
		footer ul {
			margin: 0;
			padding: 0;
			list-style-type: none;
			font-size: 0;
			line-height: 0;
		}

			footer ul li {
				display: inline-block;
				vertical-align: top;
				margin: 0;
				padding: 0 10px;
			}

			footer ul li:first-child {
				padding-left: 0;
			}
			
			footer ul li:last-child {
				padding-right: 0;
				border-right: 0;
			}	

				footer nav ul li a {
					text-transform: uppercase;
				}

			footer .footer-ctas	{
				justify-content: space-between;
				align-items: center;
			}

				.footer-ctas > div {
					flex: 0 1 33%;
					font-size: 0;
					line-height: 0;
					text-transform: uppercase;
				}

					.footer-ctas .footer-usa {
						justify-content: flex-start;
						align-items: center;
					}
					
						.footer-usa .usa-blue,
						.footer-usa .usa-text {
							padding: 5px 0;
						}	

						.footer-usa .usa-blue {
							flex: 0 1 80%;
							text-align: right;
							background-color: #245fa9;
						}

							.footer-usa span,
							.footer-usa	div img {
								display: block;
							}

							.footer-usa span {
								padding: 0 5px;
								font: 17px/17px "Open Sans Semibold Italic", sans-serif;
							}

						.footer-usa	.usa-flag {
							flex: 0 1 7.7%;
						}				

				.footer-ctas .footer-social,
				.footer-ctas .footer-newsletter {
					justify-content: center;
					align-items: center;
				}

					.footer-social a:hover,
					.footer-newsletter a:hover {
						text-decoration: none;
					}

						.footer-social span,
						.footer-newsletter span {
							display: block;
							margin-right: 15px;
							font: 24px/24px "Roboto Light", sans-serif;
						}

						.footer-social i {
							font-size: 43px;
							transition: all 0.2s;
						}

						.footer-social a:hover i {
							color: #0e2a4d;
						}

						.footer-social .icon {
    						padding: 5px;
						}

					.footer-newsletter .btn-container {
						padding: 8px 0;
					}	

						.footer-newsletter .btn-white {
							padding: 6px 12px;
							font-size: 24px;
							line-height: 24px;
						}

							.footer-newsletter .btn-white i {
								position: relative;
								top: 3px;
								font-size: 24px;
							}	

			footer .footer-nav,
			footer .footer-information {
				width: 92.5%;
				margin: 0 auto;
				font: 16px/16px "Open Sans", sans-serif;
				text-align: center;
			}

			nav.footer-nav {
				padding: 90px 0 70px;
			}

				nav.footer-nav > div:first-child {
					padding-bottom: 20px;
				}

					nav.footer-nav ul li {
						vertical-align: middle;
						padding: 0 15px 0;
						box-sizing: border-box;
						border-right: 1px solid #1e63b8;
					}	

					nav.footer-nav ul li:first-child {
						padding-left: 0;
					}

					nav.footer-nav ul li:last-child {
						padding-right: 0;
						border-right: 0;
					}

						nav.footer-nav ul li a {
							font: 18px/18px "Roboto Condensed", sans-serif;
							color: #fff;
						}

			.footer-information .footer-address li {
				padding: 0 15px;
				font: 16px/16px "Open Sans", sans-serif;
				border-right: 1px solid #fff;
			}

			.footer-information .footer-address a,
			.footer-information .footer-evolve a {
				font-family: "Open Sans", sans-serif;
			}

			.footer-information .footer-address li:first-child,
			.footer-information .footer-address li:nth-child(2) {
				display: block;
				padding: 0 0 10px;
			}

			.footer-information .footer-address li:first-child,
			.footer-information .footer-address li:nth-child(2),
			.footer-information .footer-address li:last-child {
				border-right: 0;
			}	

			.footer-information .footer-copyright {
				margin: 30px 0 15px;
			}	

.footer-disclaimer {
	padding: 20px 0;
	background-color: #1b2430;
}

	.footer-disclaimer p {
		width: 92.5%;
		max-width: 1024px;
		margin: 0 auto;
		font: 14px/18px "Roboto Light Italic", sans-serif;
		color: #b3b4b6;
	}	


/* STICKY FOOTER */
.sticky-container {
	position: relative;
	width: 100%;
	max-width: 1920px;
}

.cta-sticky-footer {
	z-index: 999;
	position: fixed;
	bottom: 0;
	width: 100%;
	max-width: 1920px;
	padding: 15px 0;
	text-align: center;
	text-transform: uppercase;
	background-color: #f5d41f;
	-webkit-box-shadow: 0 -2px 10px 0 rgba(0, 0, 0, 0.55);
	box-shadow: 0 -2px 10px 0 rgba(0, 0, 0, 0.55);
}

	.cta-sticky-content {
		justify-content: space-between;
		align-items: center;
		width: 95%;
		max-width: 775px;
		margin: 0 auto;
		font-size: 0;
		line-height: 0;
	}
		
		.cta-sticky-content span:first-of-type {
			font: 22px/22px "Roboto", sans-serif;
			color: #2b2b2b;
		}	

		.cta-sticky-content span:last-of-type {
			font: 25px/25px "Roboto Condensed", sans-serif;
			color: #ad9511;
		}		
	
		.cta-sticky-content .btn-container {
			padding: 8px 0;
		}

			.cta-sticky-content .btn.btn-navy-footer {
				padding: 8px 20px;
			}

				.cta-sticky-content .btn.btn-navy-footer i {
					margin-left: 5px;
					font-size: 13px;
				}	

/* BACK TO TOP */

/*-------------------
Back To Top
-------------------*/
.back-to-top {
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
	width: 45px;
	height: 45px;
	position: fixed;
	z-index: 10;
	right: 15px;
	bottom: 75px;
	font-size: 11px;
	font-weight: 900;
	text-align: center;
	text-transform: uppercase;
	background-color: #173f70;
	border-radius: 50%;
	visibility: hidden;
	opacity: 0;
	transition: opacity 0.75s ease-in-out, visibility 0ms 0.75s ease-in-out;
}

.back-to-top.show {
	visibility: visible;
	opacity: 1;
	transition-delay: 0ms;
}

.back-to-top a {
	text-decoration: none;
	color: #fff;
	line-height: 1;
}

.back-to-top a:before {
	content: "a";
	display: block;
	rotate: 270deg;
	color: white;
	font-family: 'Sorbothane Insoles';
	font-weight: normal;
	font-size: 1.25rem;
	text-transform: none;
}

/* ACCESSIBE OVERRIDES */

.acsb-trigger {
	height: 40px !important;
	right: 2.75% !important;
	width: 40px !important;
}

/* CAPITALIZE */
.to-capitalize {
	text-transform: capitalize;
}

/*****************************************
		Media Queries 
*****************************************/
@media screen and (min-width: 375px) {
	.logo {
		width: 180px;
	}

	.miu-icon-container__mobile {
		width: 65px;
	}

	.miu-text {
		font-size: 12px;
	}
}

@media screen and (min-width: 425px) {
	.logo {
		width: 220px;
	}

	.header-message {
		font-size: 16px;
	}
}

@media screen and (min-width: 630px) {
	.logo {
		width: 300px;
	}

	.miu-link__mobile, .miu-icon-container__mobile {
		display: none;
	}

	.miu-link__tablet {
		display: block;
	}

	.miu-icon-container__tablet{
		display: flex;
	}

	.miu-text {
		font-size: 20px;
		order: 2;
		margin-left: 10px;
	}

	.miu-icon {
		width: 50px;
		margin-top: 0;
		margin-left: 0;
	}

	.header-message__content-mobile {
		display: none;
	}

	.header-message__content-desktop {
		display: block;
	}
}

@media screen and (min-width: 1025px) {
	.header-message {
		background-color: #163f70;
		font-size: 18px;
	}
	
	.miu-link__tablet, .miu-icon-container__tablet {
		display: none;
	}

	.miu-link__desktop {
		display: block;
	}

	.miu-icon-container__desktop {
		display: flex;
	}
}

@media screen and (min-width: 1200px) {
	.logo {
		width: 330px;
	}

	.miu-text {
		font-size: 24px;
	}
}