/* ------------------------------

	   CONSISTENT CSS STYLES

--------------------------------- */

body {
    margin: 0;
	padding: 0;
    overflow-x: hidden;
	background-color: #fff;
	font: 400 15px/15px "Open Sans", sans-serif;
    color: #111;
	background: #030815 url('../images/bg-footer.png');
	-webkit-user-select: text;
	-webkit-text-size-adjust: none;
}

a {
	color: #095596;
}

img {
	max-width: 100% !important;
	border: 0;
}

sup {
	position: relative;
	vertical-align: baseline;
	top: -2px;
}

.non-cms-clear {
	clear: both;
	height: 0 !important;
	font-size: 0;
	line-height: 0;
}

.clearfix:after {
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0;
}

.btn-container {
	padding: 15px 0 20px;
}

.btn,
.btn-big,
.csFlexFrmBtn,
.csSorbothaneContactButton,
.csSorbothaneQuoteButton {
	padding: 5px 10px;
	border-radius: 3px;
	font: 600 15px/15px "Open Sans", sans-serif;
	text-decoration: none;
	text-transform: uppercase;
	color: #fff !important;
	cursor: pointer;	
	-webkit-appearance: none;
	-webkit-border-radius: 3px; 
}

.btn-big {
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-align: center;
	-webkit-align-items: center;
    align-items: center;
	padding: 10px;
	font-weight: 700;
}

	.btn img,
	.btn-big img {
		display: inline-block;
		position: relative;
		margin-left: 10px;
	}
	
	.btn img {
		top: 1px;
	}
	
	.btn-big img {
		width: 12px;
	}
	
	.btn-big strong {
		display: block;
		margin-bottom: 3px;
		font-size: 20px;
		line-height: 20px;
	}
	
.btn-fixed-width {
    max-width: 345px;
}	

.btn-blue {
	background-color: #0066b3;
	transition: background-color 0.2s;
}

.btn-blue:hover, 
.btn-blue:focus {
	background-color: #0a396a;
	transition: background-color 0.2s;
	outline: 0;
}

.btn-red,
.csFlexFrmBtn,
.csSorbothaneContactButton,
.csSorbothaneQuoteButton {
	background-color: #ed1c24;
	transition: background-color 0.2s;
}

.btn-red:hover, 
.btn-red:focus,
.csFlexFrmBtn:hover,
.csFlexFrmBtn:focus,
.csSorbothaneContactButton:hover,
.csSorbothaneContactButton:focus,
.csSorbothaneQuoteButton:hover,
.csSorbothaneQuoteButton:focus {
	background-color: #b6171b;
	transition: background-color 0.2s;
	outline: 0;
}

img.align-left {
	float: left;
	margin: 5px 45px 35px 0;
}

img.align-center {
	display: block;
	margin: 25px auto;
}

img.align-right {
	float: right;
	margin: 5px 0 35px 45px;
}

.schema-content-hide {
	height: 0;
	font-size: 0;
	line-height: 0;
}

/* HEADER */

.header {
	height: 102px;
	background: #0078c0;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#0078c0), to(#005ead));
	background-image: -webkit-linear-gradient(top, #0078c0, #005ead);
	background-image: -moz-linear-gradient(top, #0078c0, #005ead);
	background-image: -ms-linear-gradient(top, #0078c0, #005ead);
	background-image: -o-linear-gradient(top, #0078c0, #005ead);
	background-image: linear-gradient(top bottom, #0078c0, #005ead);
	border-bottom: 1px solid #043e76;
}

	.header-container {
		max-width: 1200px;
		margin: 0 auto;
	}
	
		.header-logo-container::after {
			content: "";
			display: block;
			clear: both;
		}
	
		.header-logo {
			float: left;
			width: 524px;
			height: 102px;
			background: url('../images/bg-header-circles.png') no-repeat right top;
		}
		
			.header-logo img {
				display: block;
				margin: 16px auto 0;
			}
			
			.header-logo .icon-mobile-menu {
				display: none;
			}
			
		.header-search {
			float: right;
			width: 300px;
			margin: 20px 6.1% 0 0;
		}

			.search-links {
				font: 600 12px/12px "Open Sans", sans-serif;
				color: #fff;
			}
			
				.search-links div, .search-links img, .search-links span {
					display: inline-block;
				}
				
				.search-links a {
					color: #fff;
					text-decoration: none;
				}
				
				.search-links a:hover, .search-links a:focus {
					text-decoration: underline;
					outline: 0;
				}
				
				.search-links .search-flag {
					width: 153px;
					text-align: left;
				}
				
					.search-flag img {
						position: relative;
						top: 2px;
						margin-right: 7px;
					}
				
				.search-links .search-contact {
					width: 85px;
					text-align: left;
				}
				
					.search-contact img {
						margin-right: 5px;
					}
							
			.search-bar {
				margin: 20px 0 0;
			}
			
			.search-bar input[type=text], .searchcontrols input[type=text] {
				width: 100%;
				height: 27px;
				margin: 0;
				padding: 0 0 0 9px;
				background: #c6d4e3;
				background-image: -webkit-gradient(linear, left top, left bottom, from(#c6d4e3), to(#e2e9f1));
				background-image: -webkit-linear-gradient(top, #c6d4e3, #e2e9f1);
				background-image: -moz-linear-gradient(top, #c6d4e3, #e2e9f1);
				background-image: -ms-linear-gradient(top, #c6d4e3, #e2e9f1);
				background-image: -o-linear-gradient(top, #c6d4e3, #e2e9f1);
				background-image: linear-gradient(top bottom, #c6d4e3, #e2e9f1);
				border: 1px solid #025399;
				border-radius: 3px;
				box-sizing: border-box;
				font: 400 12px "Open Sans", sans-serif;
				color: #363636;
			}
			
			.searchcontrols input[type=text] {
				max-width: 275px;
			}
			
			.search-bar input[type=submit], .searchcontrols input[type=submit] {
				width: 57px;
				height: 23px;
				margin: 2px 0 0 -60px;
				padding: 0;
				background: #0081c7;
				background-image: -webkit-gradient(linear, left top, left bottom, from(#0081c7), to(#0067b4));
				background-image: -webkit-linear-gradient(top, #0081c7, #0067b4);
				background-image: -moz-linear-gradient(top, #0081c7, #0067b4);
				background-image: -ms-linear-gradient(top, #0081c7, #0067b4);
				background-image: -o-linear-gradient(top, #0081c7, #0067b4);
				background-image: linear-gradient(top bottom, #0081c7, #0067b4);
				border: 0;
				border-radius: 3px;
				font: 600 12px/12px "Open Sans", sans-serif;
				text-transform: uppercase;
				color: #d1e1ef;
				cursor: pointer;
			}
			
			.searchcontrols input[type=submit] {
				margin: 2px 0 0 -62px;
			}
			
			.search-bar input[type=submit]:hover, .search-bar input[type=submit]:focus, .searchcontrols input[type=submit]:hover, .searchcontrols input[type=submit]:focus {
				background: #0063a7;
				background-image: -webkit-gradient(linear, left top, left bottom, from(#0063a7), to(#004f8a));
				background-image: -webkit-linear-gradient(top, #0063a7, #004f8a);
				background-image: -moz-linear-gradient(top, #0063a7, #004f8a);
				background-image: -ms-linear-gradient(top, #0063a7, #004f8a);
				background-image: -o-linear-gradient(top, #0063a7, #004f8a);
				background-image: linear-gradient(top bottom, #0063a7, #004f8a);
				outline: 0;
			}
					
					
/* DESKTOP NAVIGATION */

.desktop-navigation {
	background: #d1e2f0;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#d1e2f0), to(#d1e0ef));
	background-image: -webkit-linear-gradient(top, #d1e2f0, #d1e0ef);
	background-image: -moz-linear-gradient(top, #d1e2f0, #d1e0ef);
	background-image: -ms-linear-gradient(top, #d1e2f0, #d1e0ef);
	background-image: -o-linear-gradient(top, #d1e2f0, #d1e0ef);
	background-image: linear-gradient(top bottom, #d1e2f0, #d1e0ef);
	border-bottom: 1px solid #6b798c;
	text-align: center;	
}

	.desktop-navigation a {
		display: block;
		padding: 0 43px;
		border-right: 1px solid #96bede;
		text-decoration: none;
		text-transform: uppercase;
		color: #111;
		transition: color .2s;
		outline: 0;
	}
	
	.AspNet-Menu-Horizontal > ul > li:nth-of-type(2) > a {
		max-width: 110px;
	}
	
	.AspNet-Menu-Horizontal > ul > li:nth-of-type(3) > a {
		max-width: 150px;
	}
	
	.AspNet-Menu-Horizontal > ul > li:nth-of-type(4) > a {
		max-width: 150px;
	}
	
	.AspNet-Menu-Horizontal > ul > li:nth-of-type(5) > a {
		max-width: 120px;
	}
	
	.AspNet-Menu-Horizontal > ul > li:nth-of-type(6) > a {
		max-width: 110px;
		border-right: 0;
	}

	.desktop-navigation ul {
		display: inline-block;
		margin: 0;
		padding: 0;
	}
		
	.AspNet-Menu-Horizontal, .AspNet-Menu-Vertical, .AspNet-Menu {
		float: none !important;
	}
	
		.desktop-navigation ul li {
			float: none !important;
			display: inline-block;
			margin-left: -4px;
			padding: 10px 0;
			font-size: 14px;
			line-height: 17px;
			list-style-type: none;
			transition: background-color .2s;
		}
		
		.desktop-navigation ul li:hover, .desktop-navigation ul li:focus {
			background-color: #398dc2;
			transition: background-color .2s;
		}
		
			.desktop-navigation ul li:hover a, .desktop-navigation ul li:focus a {
				color: #fff;
				border-right: 0;
				transition: color .2s;
				outline: 0;
			}
		
			.desktop-navigation ul li.desktop-navigation-last a {
				border-right: 0;
				outline: 0;
			}
	
			.desktop-navigation ul li ul {
				display: none;
				width: 100%;
				z-index: 5;
				background-color: #125b8a;
				border-left: 1px solid #0e426a; 
				border-right: 1px solid #0e426a;
				border-radius: 0 0 3px 3px; 
				box-sizing: border-box;
			}
			
			.desktop-navigation ul li ul.android-list {
				display: block !important;
			}
	
				.desktop-navigation ul ul li {
					width: 100%;
					margin: 0 -2px;
					padding: 8px 0;
					font-size: 12px;
					line-height: 14px;
					font-weight: 600;
					text-align: left;
					border-top: 1px solid #0e426a;
					transition: background-color 0.2s;
				}
				
				.desktop-navigation ul ul li:last-of-type {
					border-radius: 0 0 3px 3px;
					border-bottom: 1px solid #0e426a;
				}
				
				.desktop-navigation ul ul li:hover, .desktop-navigation ul ul li:focus {
					background-color: #10436d !important;
					transition: background-color 0.2s;
				}
				
					.desktop-navigation ul ul li a {
						padding: 0 8px;
						text-transform: none;
						border: 0 !important;
						color: #d1e1ef !important;
						outline: 0;	
					}	
				
					.desktop-navigation ul ul li ul {
						display: none;
					}
				
/* mojoPortal classes used to create active states in the navigation */

.AspNet-Menu-SelectedLeaf, .AspNet-Menu-SelectedWithChildren {
	background-color: #398dc2;
}

.desktop-navigation ul ul li.AspNet-Menu-SelectedLeaf, .desktop-navigation ul ul li.AspNet-Menu-SelectedWithChildren {
	background: none;
}

.AspNet-Menu-SelectedLeaf a, .AspNet-Menu-SelectedWithChildren a {
	background: none;
	border-right: none;
	color: #fff !important;
}


/* MOBILE NAVIGATION */

li.mobile-navigation-link {
	display: none !important;
}

a#secondary-navigation {
	display: block;
	width: 100%;
	padding: 15px 0;
	font: 700 21px/21px "Open Sans Condensed", sans-serif;
	text-decoration: none;
	text-transform: uppercase;
	color: #0a396a;
}

	a#secondary-navigation img {
		position: relative;
		top: 1px;
		float: right;
	}
	
	a#secondary-navigation img::after {
		content: "";
		display: block;
		clear: both;
	}

.mobile-navigation, .secondary-navigation {
	display: none;
	opacity: 0.5;
	transition: max-height 0.2s, opacity 0.6s;
	text-align: center;
}

.mobile-navigation {
	background-color: #125b8a;
}

.secondary-navigation {
	background-color: #f1f1f1;
}

.active-nav {
	display: block;
	opacity: 1;
	transition: max-height 0.2s, opacity 0.6s;
}

.mobile-navigation.active-nav {
	border-top: 1px solid #d1e0ef;
}
	
	.mobile-navigation ul, .secondary-navigation ul {
		width: 100%;
		padding: 0;
		margin: 0;
		list-style-type: none;
	}
		
		.mobile-navigation ul li, .secondary-navigation ul li {
			opacity: 0;
			transition: opacity 0.8s;
		}
		
		.mobile-navigation ul li {
			border-bottom: 1px solid #0e426a;
		}
		
		.secondary-navigation ul li {
			border-bottom: 1px solid #c2c2c2;
		}
		
		.mobile-navigation ul > li:last-of-type {
			border-bottom: 0;
		}
		
		.active-nav ul li {
			opacity: 1;
			transition: opacity 0.8s;
		}	
		
			.mobile-navigation ul li a, .secondary-navigation ul li a {
				display: block;
				width: 100%;
				padding: 15px 0;
				font: 600 16px "Open Sans", sans-serif;
				text-decoration: none;
				outline: 0;
			}
			
			.mobile-navigation ul li a {
				color: #fff;
			}
			
			.secondary-navigation ul li a {
				color: #252525;
			}
			
		.mobile-navigation ul > ul {
			display: none;
		}
		
.secondary-navigation .AspNet-Menu-SelectedLeaf, .secondary-navigation .AspNet-Menu-SelectedWithChildren {
	background-color: transparent;
}

.secondary-navigation .AspNet-Menu-SelectedLeaf a, .secondary-navigation .AspNet-Menu-SelectedWithChildren a {
	color: #252525 !important;
	outline: 0;
}
			
	
/* FOOTER */

.footer {
	padding-bottom: 30px;
	background: #07112b;
	background-image: url('../images/bg-footer.png'), -webkit-gradient(linear, left top, left bottom, from(#07112b), to(#030815));
	background-image: url('../images/bg-footer.png'), -webkit-linear-gradient(top, #07112b, #030815);
	background-image: url('../images/bg-footer.png'), -moz-linear-gradient(top, #07112b, #030815);
	background-image: url('../images/bg-footer.png'), -ms-linear-gradient(top, #07112b, #030815);
	background-image: url('../images/bg-footer.png'), -o-linear-gradient(top, #07112b, #030815);
	background-image: url('../images/bg-footer.png'), linear-gradient(top bottom, #07112b, #030815);
	border-top: 6px solid #0066b3;
}

	.footer-usa {
		display: block;
		max-width: 625px;
		margin: 25px 0;
	}
	
		.footer-usa span, .footer-usa img {
			display: inline-block;
			font: italic 600 17px/17px "Open Sans", sans-serif;
		}
		
		.footer-usa span {
			padding: 4px 5px 6px;
			text-transform: uppercase;
			color: #fff;
		}
		
		.footer-usa span.usa-red {
			width: 84.8%;
			text-align: right;
			background-color: #ed1c24;
		}
		
		.footer-usa img {
			position: relative;
			top: 7px;
		}
	
	.footer-container {
		max-width: 985px;
		margin: 0 auto;
		padding-bottom: 30px;
		font: 400 13px "Open Sans", sans-serif;
		color: #fff;
	}
	
		.footer-container a {
			color: #63b3d3;
			text-decoration: none;
		}
		
		.footer-container a:hover, .footer-container a:focus {
			text-decoration: underline;
			outline: 0;
		}
		
			.footer-container a img {
				position: relative;
				top: 2px;
				margin-left: 8px;
			}
			
		.footer-container h3 {
			margin: 0;
			font-size: 16px;
			font-weight: 600;
			text-transform: uppercase;	
		}
		
			.footer-container h3 a img {
				top: 0;
			}
		
		
		.footer-container > div {
			display: inline-block;
			height: 170px;
			vertical-align: top;
		}
			
		.footer-container div.footer-links, .footer-container div.footer-company, .footer-container div.footer-contact {
			border-right: 1px solid #202a43;
			box-sizing: border-box;
		}
		
		.footer-container div.footer-links {
			width: 27.5%;
			line-height: 25px;
		}
		
			.footer-container div.footer-links a {
				position: relative;
				top: -4px;
			}
		
		.footer-container div.footer-company, .footer-container div.footer-contact, .footer-container div.footer-copyright {
			padding: 0 3.1%;
		}
		
		.footer-container div.footer-company, .footer-container div.footer-contact {
			line-height: 23px;
		}
		
		.footer-container div.footer-company {
			width: 23.7%;
		}
		
		.footer-container div.footer-links div, .footer-container div.footer-company div, .footer-container div.footer-contact div {
			padding-top: 10px;
		}
		
		.footer-container div.footer-contact {
			width: 22.7%;
		}
		
		.footer-container div.footer-copyright, .footer div.footer-copyright-mobile {
			font-size: 11px;
			color: #bbb !important;
		}
			
			.footer-container div.footer-copyright div p {
				margin: 0 0 23px;
			}
			
			.footer-container div.footer-copyright div p:last-of-type {
				margin: 0;
			}
			
			.footer-container div.footer-copyright a, .footer div.footer-copyright-mobile a {
				text-decoration: underline;
				color: #bbb;
			}
			
			.footer-container div.footer-copyright a:hover, .footer-container div.footer-copyright a:focus {
				text-decoration: none;
			}
			
			.footer div.footer-copyright-mobile {
				display: none;
				width: 100%;
				height: auto;
				text-align: center;
			}
			
				.footer div.footer-copyright-mobile p {
					margin: 0 0 5px;
				}
			
			
/* BACK TO TOP */

.back-to-top {
	z-index: 100;
	display: none;
	position: fixed;
	right: 30px;
	bottom: 85px;
	opacity: 0.5;
}			