/* Changes Specific for This Site */

/* Services We Offer Section */

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

	#block-columns-block_9f3a0e495961200ce22475018ecffd04 div.column:first-child,
	#block-columns-block_7aebb1b06d3e1591ae56decd7368e7f0 div.column:first-child {
		margin-bottom: 40px;
	}
	
} /* 800px */


/* Insurance Section */

@media only screen and (max-width: 800px) {
	
    #block-columns-block_c5273f56929c48980bde487fdf5f97ac > div,
	#block-columns-block_cb5a7f9fbe28f079c4a662c5d5084583 > div,
	#block-columns-block_2c93e500d954f6e5e0f6e03250345484 > div {
        flex-wrap: nowrap;
		padding: 0;
    }

		#block-columns-block_c5273f56929c48980bde487fdf5f97ac .column,
		#block-columns-block_cb5a7f9fbe28f079c4a662c5d5084583 .column,
		#block-columns-block_2c93e500d954f6e5e0f6e03250345484 .column {
			padding: 5px !important;
			width: inherit !important;
		}

} /* 800px */


/* About Us */

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

	#block-columns-block_0bbe925ad7b8492b65916889a8f49c6b .column {
        padding: 0 0 15px !important;
	}
	
    #block-columns-block_0bbe925ad7b8492b65916889a8f49c6b img {
		display: block;
		float: none;
		margin: 0 auto !important;
	}

} /* 600px */


/* Testimonials */

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

	#block-divider-block_97c804407b64469c317eb0f1a1a6d8c0 > div,
	#block-divider-block_97c804407b64469c317eb0f1a1a6d8c0 > div,
	#block-divider-block_97c804407b64469c317eb0f1a1a6d8c0 > div {
	 	height: 12px !important;
	}

} /* 800px */





/* Header */

#site-header {
    background: #fff;
    border-bottom: 1px solid #4b5d71;
    box-sizing: border-box;
    height: 115px;
    margin: 0 auto;
    max-width: 1440px;
	padding: 0 30px 11px;
	position: relative;
	z-index: 2;
}

	#desktop-nav {
		position: relative;
	}

		#site-header a {
			text-decoration: none;
		}

		#mobile-nav {
			display: none;
		}

		#site-header .logo {
			left: 0;
			margin-top: 6px;
			max-width: 250px;
			opacity: 1 !important;
			position: absolute;
			top: 50%;
			transform: translateY(-50%);
			transition: .3s max-width;
			z-index: 13;
		}

			#site-header .logo img {
				float: left;
				max-width: 100%;
			}

		#site-header .secondary-logo {
			left: 260px;
			margin-top: 6px;
			max-width: 150px;
			opacity: 1 !important;
			position: absolute;
			top: 50%;
			transform: translateY(-50%);
			transition: .3s max-width;
			z-index: 13;
		}

			#site-header .secondary-logo span {
				display: block;
				font-size: 12px;
				line-height: 12px;
				margin-bottom: 3px;
			}

			#site-header .secondary-logo img {
				float: left;
				max-width: 100%;	
			}

		.header-row-1 {
			min-height: 29px;
			padding: 15px 0 19px;
			position: relative;
			text-align: right;
			transition: .3s opacity;
		}

			.header-row-1 a.logout {
				font-size: 11px;
				margin-left: 5px;
				text-decoration: underline;
			}

			.header-row-1 a.tel {
				color: #0e1e2b;
				display: inline-block;
				text-decoration: none;
				vertical-align: middle;
			}

			.header-row-1 a.tel:hover,
			.header-row-1 a.tel:focus {
				text-decoration: underline;
			}

			.header-row-1 .btn {
				display: inline-block;
				margin-left: 20px;
				min-height: 30px;
				padding: 5px 10px;
				position: relative;
				text-transform: capitalize;
			}

				.header-row-1 .btn i {
					font-size: 19px;
					margin-right: 7px;
					display: inline-block;
					vertical-align: middle;
				}

				.header-row-1 .btn span {
					display: inline-block;
					vertical-align: middle;
				}


			/* Account Dropdown */

			#myAccountDropdown {
				display: inline-block;
				position: relative;
				z-index: 13;
			}

				#myAccountDropdown > div {
					display: none;
					border-top: 7px solid #fff;
					padding: 5px 0 10px;
					position: absolute;
					right: 0;
					text-align: left;
					top: 100%;
					width: 170px;
				}

				.sticky-header #myAccountDropdown > div {
					border: 0;
				}

				#myAccountDropdown:hover > div,
				#myAccountDropdown:focus > div {
					display: block;
				}

					#myAccountDropdown > div div {
						background: #4B5D71;
						border-radius: 4px;
						box-shadow: 0 0 10px rgba(0, 0, 0, 0.23);
						padding: 8px 0;
					}

						#myAccountDropdown > div a,
						#myAccountDropdown > div a.logout {
							color: #fff;
							display: block;
							font-size: 14px;
							margin-left: 0;
							padding: 6px 8px 5px 16px;
							text-decoration: none;
						}

							#myAccountDropdown > div a img {
								left: 3px;
								position: relative;
								top: 3px;
								width: 50px;
							}

						#myAccountDropdown > div a:first-child:before {
							border-left: 8px solid transparent;
							border-right: 8px solid transparent;
							border-bottom: 12px solid #4B5D71;
							content: "";
							height: 0;
							right: 61px;
							margin-left: -6px;
							position: absolute;
							top: -3px;
							width: 0;
						}

						.logged-in #myAccountDropdown > div a:first-child:before {
							right: 40px;
						}

						#myAccountDropdown > div a:hover,
						#myAccountDropdown > div a:focus {
							background: #7992B0;
							color: #fff;
						}
			
		.header-row-2 {
			position: relative;
			text-align: right;
			top: 0;
			transition: .3s opacity;
			z-index: 12;
		}

			#main-nav {
				display: inline-block;
				vertical-align: bottom;
			}

				#main-nav > div > ul {
					list-style: none;
					margin: 0;
					padding: 0;
				}

					#main-nav > div > ul li {
						display: inline-block;
						font-size: 21px;
						line-height: 28px;
						margin: 0;
						padding-bottom: 11px;
						position: relative;
					}

						#main-nav > div > ul li a {
							background-color: transparent;
							border-radius: 2px;
							color: #0e1e2b;
							font-size: 14px;
							font-weight: bold;
							line-height: 14px;
							padding: 4px 10px;
							transition: .3s all;
						}

							#main-nav > div > ul li a:hover,
							#main-nav > div > ul li a:focus,
							#main-nav > div > ul li.current-menu-item a,
							#main-nav > div > ul > li:hover a {
								color: #78c152;
							}

					/* Dropdown Menu */
					
					#main-nav > div > ul > li > ul {
						background: #4B5D71;
						border-radius: 4px;
						box-shadow: 0 0 10px rgba(0, 0, 0, 0.23);
						left: 50%;
						margin-left: -115px;
						margin-top: 30px;
						opacity: 0;
						padding: 7px 0;
						position: absolute;
						text-align: left;
						top: 38px;
						transition: opacity .3s, margin-top .3s;
						visibility: hidden;
						width: 230px;
					}
					
					#main-nav > div > ul > li:last-child > ul {
						right: -25px;
						left: auto;
					}

					#main-nav > div > ul > li:hover ul {
						margin-top: 0;
						opacity: 1;
						visibility: visible;
					}

						#main-nav > div > ul ul li {
							display: block;
							padding-bottom: 0;
						}

						#main-nav > div > ul ul li:first-child:before {
							border-left: 8px solid transparent;
							border-right: 8px solid transparent;
							border-bottom: 12px solid #4B5D71;
							content: "";
							height: 0;
							left: 50%;
							margin-left: -6px;
							position: absolute;
							top: -16px;
							width: 0;
						}

						#main-nav > div > ul li:last-child ul li:first-child:before {
							left: auto;
							right: 56px;
						}

							#main-nav > div > ul ul li a {
								color: #fff !important;
								display: block;
								font-size: 13px;
								padding: 8px 8px 8px 16px;
							}

							#main-nav > div > ul ul li a:hover,
							#main-nav > div > ul ul li a:focus {
								background: #7992B0;
								color: #fff;
							}

						/* Dropdown Menu - Child Pages */

						#main-nav > div > ul ul ul {
							box-shadow: none;
							margin: 0;
							padding: 0 0 0 17px;
						}

							#main-nav > div > ul ul ul li:first-child:before {
								display: none;
							}

								#main-nav > div > ul ul ul li a {
									font-size: 12px;
									padding: 7px 8px 7px 12px;
								}

			#search-form {
				background: #fff;
				border: 1px solid rgba(75, 93, 113, 0.3);
				border-radius: 2px;
				display: inline-block;
				font-size: 0;
				margin-left: 24px;
				padding: 0 0 0 10px;
				position: relative;
				top: -9px;
				vertical-align: bottom;
				white-space: nowrap;
			}

				#search-form label {
					color: #9B9B9B;
					display: inline-block;
					font-size: 16px;
					vertical-align: middle;
				}

				#search-form #s {
					border: 0;
					display: inline-block;
					height: 26px;
					margin: 0;
					min-height: 0;
					padding: 2px 6px;
					vertical-align: middle;
					width: 170px;
				}

				#search-form #s:focus {
					outline: none;
				}

				#search-form #searchsubmit {
					border-radius: 0 2px 2px 0;
					display: inline-block;
					font-size: 12px;
					height: 30px;
					margin: -1px;
					line-height: 12px;
					padding: 0 9px;
					vertical-align: middle;
					text-transform: capitalize;
				}


			/* WooCommerce - Header Cart Icon */

			.cart-contents {
				display: inline-block;
				margin: 0;
				position: relative;
				vertical-align: text-bottom;
				top: -5px;
			}

				.cart-contents-count {
					background: #D6594C;
					border-radius: 50%;
					display: inline-block;
					color: #fff;
					font-size: 12px;
					height: 20px;
					line-height: 20px;
					position: relative;
					right: -6px;
					text-align: center;
					top: -3px;
					width: 20px;
				}

				.cart-contents i {
					color: #9B9B9B;
					font-size: 25px;
				}


		/* Sticky Header */

		body.sticky-header {
			padding-top: 82px;
		}

			body.sticky-header #site-header {
				border: 0;
				box-shadow: 0 8px 6px -6px rgba(0, 0, 0, 0.16);
				height: 82px;
				padding: 10px 2% 0;
				position: fixed;
				top: 0;
				transition: .3s height;
				width: 100%;
				z-index: 9999;
			}

			body.sticky-header #desktop-nav {
				display: none;
			}

			body.sticky-header #mobile-nav {
				background: #fff;
				display: block;
			}

				body.sticky-header .header-row-1 {
					padding: 0;
					text-align: right;
					top: 0;
				}

					body.sticky-header #site-header .logo {
						margin-top: 0;
						height: 100%;
					}

						body.sticky-header #site-header .logo img {
							height: 100%;
						}

					body.sticky-header #site-header .secondary-logo {
						left: 120px;
						margin-top: 0;
						max-width: 80px;
						text-align: left;
						top: 0;
					    transform: translateY(0);
					}

						body.sticky-header #site-header .secondary-logo span {
							font-size: 9px;
							line-height: 9px;
							margin-bottom: 0;
						}

					body.sticky-header .cart-contents {
						vertical-align: middle;
						top: 0;
					}

				body.sticky-header .header-row-2 {
					border-top: 1px solid rgba(0, 0, 0, 0.15);
					margin: 7px 0 0;
					padding: 4px 0;
					text-align: right;
					top: 0;
				}

					body.sticky-header .header-row-2 a.tel {
						float: left;
						font-weight: bold;
					}
					
					/* Open/Close Icon */

					#site-header .icon-mobile-menu {
						color: #fff;
						display: inline-block;
						height: 26px;
						width: 27px;
						position: relative;
						text-align: left;
						top: 0;
					}

					#site-header .close-menu,
					#site-header .icon-mobile-menu:before,
					#site-header .icon-mobile-menu:after {
						background: #4b5d71;
						border-radius: 1px;
						content: "";
						display: inline-block;
						height: 4px;
						position: absolute;
						right: 0;
						text-indent: -9999px;
						transform: translateY(0);
						transition: all .4s;
						width: 27px;
					}

						#site-header .close-menu {
							font: 18px/18px 'arial', sans-serif;
							margin-top: -2px;
							top: 50%;
							transition: color .3s, height .2s, margin-top .2s, padding-top .2s;
							text-align: center;
						}

						#site-header .icon-mobile-menu:before,
						#site-header .icon-mobile-menu:after {
							left: 0;
							right: auto;
							top: 4px;
						}

						#site-header .icon-mobile-menu:after {
							bottom: 4px;
							top: auto;
						}

						#site-header .icon-mobile-menu:hover{
							color: #fff;
						}

						.mobile-menu-active #site-header .icon-mobile-menu:before {
							transform: translateY(-20px);
							opacity: 0;
						}

						.mobile-menu-active #site-header .icon-mobile-menu:after {
							transform: translateY(20px);
							opacity: 0;
						}

						.mobile-menu-active #site-header .icon-mobile-menu .close-menu {
							border-radius: 3px;
							color: #fff;
							height: 21px;
							margin-top: -13px;
							padding-top: 4px;
							text-indent: 0;
						}

						#site-header em {
							color: #4b5d71;
							font-size: 16px;
							font-style: normal;
							font-weight: bold;
							margin-left: -58px;
							position: relative;
							top: 2px;
						}	

			#mobile-menu > div {
				background: rgba(255, 255, 255, 0.85);
				height: 0;
				left: 0;
				overflow: hidden;
				position: absolute;
				top: 82px;
				transition: height .6s;
				width: 100%;
				z-index: 20;
			}

			body.sticky-header.mobile-menu-active #mobile-menu > div {
				box-shadow: 0 0 6px rgba(0, 0, 0, 0.16);
				height: auto;
				left: calc(50% - -400px);
				padding: 10px;
				position: fixed;
				top: 82px;
				width: 300px;
			}

				#mobile-menu > div > ul {
					background: #4b5d71;
					margin: 0 2%;
					padding: 0;			
				}

					#mobile-menu > div > ul li.active {
						border-bottom: 1px solid #fff;
					}

					#mobile-menu > div > ul li {
						list-style: none;
						margin: 0;
					}

						#mobile-menu > div > ul li a {
							border-bottom: 1px solid #fff;
							color: #fff;
							display: block;
							font-size: 13px;
							line-height: 22px;
							letter-spacing: .5px;
							padding: 5px 15px 5px 36px;
							position: relative;
							text-decoration: none;
						}

						#mobile-menu > div > ul > li.menu-item-has-children > a:before {
							content: '+';
							display: inline-block;
							font-size: 23px;
							height: 18px;
							left: 10px;
							line-height: 16px;
							margin-right: 10px;
							position: absolute;
							text-align: center;
							transition: transform .3s;
							top: 8px;
							width: 18px;
						}

						#mobile-menu > div > ul > li.menu-item-has-children.active > a:before {
							content: '-';
							-webkit-transform: rotate(-180deg);
							transform: rotate(-180deg);
						}

					/* 2nd Level */

					#mobile-menu > div > ul > li.menu-item-has-children > ul.sub-menu {
						background: #4B5D71;
						display: none;
						margin: 0;
						padding: 5px 0 5px 20px;
						transition: height .3s;
					}

						#mobile-menu > div > ul > li.menu-item-has-children ul.sub-menu li a {
							font-size: 13px;
							line-height: 17px;
							border: 0;
							font-weight: normal;
							padding: 4px 15px 4px 16px;
						}






/* Search Results */

body.search h1 {
	margin: 30px 0 20px;
}

body.search article {
	margin: 0 0 30px;
}

body.search .no-results form {
	margin: 20px 0 40px;
}

	body.search .no-results form {
		margin: 20px 0 40px;
	}

		body.search .no-results form > div {
			border: 1px solid rgba(75, 93, 113, 0.3);
			border-radius: 2px;
			display: inline-block;
			padding: 0;
			position: relative;
			white-space: nowrap;
		}

			body.search .no-results form label {
				display: none;
			}

			body.search .no-results form input[type="text"] {
				border: 0;
				float: left;
				height: 35px;
				padding: 0;
				width: 230px;
			}

			body.search .no-results form input[type="submit"] {
				float: left;
				height: 35px;
				padding: 0 20px;
			}



/* Footer */

footer {
	background: #4b5d71;
	clear: both;
}

	/* Footer - Newsletter Signup */

	#footer-signup {
		background-position: center center;
		background-repeat: no-repeat;
		background-size: cover;
		color: #fff;
		padding: 30px 50px;	
		text-align: center;
	}

		#footer-signup form {
			display: flex;
			flex-direction: column;
    		justify-content: center;
			margin: 0 auto;
			max-width: 850px;
		}

			#footer-signup h4 {
				font-size: 24px;
				line-height: 28px;
				margin: 0 0 12px;	
			}

			#footer-signup p {
				font-size: 14px;
				line-height: 20px;
				margin: 0;	
			}

			#footer-signup div {
				align-items: center;
				display: flex;
				justify-content: center;
				margin-top: 15px;
			}

				#footer-signup input[type="text"] {
					border-color: #fff !important;
					border-right-width: 0 !important;
					max-width: 400px;			
				}

				#footer-signup .btn {
					border: 1px solid #78c152;
					border-radius: 0 2px 2px 0;
					height: 36px;
					white-space: nowrap;			
				}

		/* Footer - Newsletter Signup - Customizer Option Text Size */

		#footer-signup.text-size-small h4 {
			font-size: 19px;
			line-height: 22px;
			margin: 0 0 2px;
		}

		#footer-signup.text-size-small p {
    		font-size: 12px;
		}

		#footer-signup.text-size-normal h4 {
			font-size: 24px;
		}

		#footer-signup.text-size-normal p {
			font-size: 14px;
		}

		#footer-signup.text-size-large h4 {
			font-size: 32px;
			line-height: 32px;
		}

		#footer-signup.text-size-large p {
			font-size: 20px;
			line-height: 24px;
		}

		#footer-signup.text-size-xl h4 {
			font-size: 44px;
			line-height: 44px;
		}

		#footer-signup.text-size-xl p {
			font-size: 22px;
			line-height: 26px;
		}


		/* Footer - Newsletter Signup - Alerts */

		.newsletter-alert {
			background: #42ca42;
			border-radius: 5px;
			box-shadow: 0 0 10px #00000054;
			color: #fff;
			cursor: pointer;
			left: 50%;
			padding: 10px 15px;
			position: absolute;
			text-align: center;
			top: 50%;
			transform: translateX(-50%);
			max-width: 300px;
			z-index: 99999;
		}

		.newsletter-alert.error {
			background: #ca424e;
		}

			.newsletter-alert i {
				font-size: 12px;
				position: relative;
				left: 7px;
				top: -7px;
			}


	#footer-columns {
		align-items: center;
		display: flex;
		overflow: hidden;
		padding: 40px 0;
	}

		#footer-columns > div {
			color: #fff;
			font-size: 12px;
			padding: 15px;
			position: relative;
			text-align: center;
			width: 25%;
		}

		#footer-columns.columns-2 > div {
			width: 50%
		}

		#footer-columns.columns-3 > div {
			width: 33.333333333%
		}

		#footer-columns > div:after {
			border-right: 1px solid rgba(255, 255, 255, 0.07);
			content: "";
			height: 500px;
			position: absolute;
			right: 0;
			top: -100px;
			width: 1px;
		}

		#footer-columns > div:last-child:after {
			display: none;
		}


		/* Footer - Logo */

		#footer-logo a {
			display: block;
			margin: 0 auto 5px;
			width: 130px;
		}

			#footer-logo img {
				width: 100%;
			}


		/* Footer - Social */

		#footer-social em {
			display: block;
			font-style: normal;
		}

			#footer-social em span {
				white-space: nowrap;
			}

		#footer-social > div {
			display: inline-block;
			vertical-align: middle;
			margin: 8px 0 0;
		}

			#footer-social a {
				color: #fff;
				display: inline-block;
				font-size: 25px;
				margin: 0 8px;
				vertical-align: middle;
			}


		/* Footer - Contact Us */

		#footer-contact-title {
			margin-bottom: 8px;
		}

			#footer-contact-phone a {
				color: #fff;
				font-size: 15px;
				text-decoration: none;
			}

		#footer-contact-email {
			display: inline-block;
			margin-top: 7px;
		}


		/* Footer Legal */

		#footer-legal {
			background: #2f3742;
			color: #fff;
			font-size: 11px;
			line-height: 11px;
			padding: 13px 30px;
			text-align: center;
		}

	#footer-copyright,
	#footer-nav  {
		display: inline-block;
		margin: 0 20px;
		vertical-align: middle;
	}

		#footer-nav ul {
			margin: 0;
			padding: 0;
		}

			#footer-nav li {
				display: inline-block;
				list-style: none;
				margin: 0 5px;
			}

				#footer-nav li a {
					color: #fff;
					text-decoration: underline;
				}

	#footer-bottom-text {
		margin-top: 8px;
	}

	/* Footer Layout 2 */

	#footer-columns.footer-layout-2 {
		align-items: flex-start;
		padding: 10px 0 15px;
	}

	#footer-columns.footer-layout-2 * {
		line-height: 22px;
	}

		#footer-columns.footer-layout-2 > div {
			text-align: left;
			padding: 5px 40px;
		}

			#footer-columns.footer-layout-2 h2 {
				font-family: gemcore_bold;
				font-size: 12px;
				margin: 15px 0 0;
				text-transform: uppercase;
			}

			#footer-columns.footer-layout-2 a {
				color: #fff;
				display: block;
				font-size: 11px;
				text-decoration: none;
			}

				#footer-columns.footer-layout-2 a:hover,
				#footer-columns.footer-layout-2 a:focus {
					text-decoration: underline;
				}

				#footer-contact-phone2 a i,
				#footer-contact-link i {
					display: inline-block;
					margin-right: 5px;
				}

			#footer-columns.footer-layout-2 #footer-copyright {
				display: block;
				margin: 15px 0;
			}

				#footer-columns.footer-layout-2 #footer-copyright span {
					display: block;
				}

			#footer-columns.footer-layout-2 #footer-social a {
				display: inline-block;
				font-size: 25px;
				margin: 0 10px 8px 0;
			}