/* Main CSS File */

/*---------------------------------------------------------------------------*\
	Document
\*---------------------------------------------------------------------------*/
	html.noscroll {
		position: fixed; 
		overflow-y: scroll;
		width: 100%;
	}	
	
	html.noscroll .mobile-nav{
		filter: none !important;
	}

	body{
		width:100%;
	}
	
	.section {
		margin-bottom: 40px; 
	}
	
	.section.remove-margin{
		margin-bottom: 0!important;
	}
	
	.section.margin-bottom-sm{
		margin-bottom: 10px;
	}
	
	.grey-bg{
		background-color: #333;
	}
	
	.bg-colour{
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.divider{
		height: 2px;
		background-color: #333;
		width: 150px;
		margin-right: auto;
	}
	
	.divider.center{
		margin: auto;
	}
	
	.dotted-divider{
		border-bottom: 3px dotted #797979; 
		max-width: 300px;
		margin: 0 auto 40px auto;
	}
	
	.testimonials .dotted-divider{
		margin: 0 auto 20px auto;
	}
	
	@media(min-width: 767px)
	{
		.section {
			margin-bottom: 50px; 
		}
		
		.bg-colour{
			padding-top: 50px;
			padding-bottom: 50px;
		}
		
		.section.margin-bottom-sm{
			margin-bottom: 20px;
		}
		
		.dotted-divider{
			margin: 0 auto 50px auto;
		}
		
		.testimonials .dotted-divider{
			margin: 0 auto 30px auto;
		}
	}
	
	@media(min-width: 992px)
	{
		.section {
			margin-bottom: 70px; 
		}
		
		.bg-colour{
			padding-top: 70px;
			padding-bottom: 70px;
		}
		
		.section.margin-bottom-sm{
			margin-bottom: 30px;
		}
		
		.dotted-divider{
			margin: 0 auto 70px auto;
		}
		
		.testimonials .dotted-divider{
			margin: 0 auto 40px auto;
		}
	}
	
	
	h3{
		margin-top: 0;
		line-height: 1.7;
	}

/*---------------------------------------------------------------------------*\
	TYPOGRAPHY
\*---------------------------------------------------------------------------*/
	/*---------------------------------------------------------------------------*\
		Font Size
	\*---------------------------------------------------------------------------*/
		/*---------------------------------------------------------------------------*\
			Font Size - Root
		\*---------------------------------------------------------------------------*/
			/*Set up Responsive Root font sizes*/
			/* Older browsers */
			html { 
				font-size: 16px; 
			}
				
			/*Make sure body is not overwriting html root font size*/
			body { 
				font-size: 1em; 
			}
			
			strong{
				font-weight: bold;
			}
			
			
		/*---------------------------------------------------------------------------*\
			Font Size - Mobile
		\*---------------------------------------------------------------------------*/
			h1{
				font-size: 1.602rem;
			}
					
			h2{
				font-size: 1.424rem;
			}
			
			h3{
				font-size: 1.266rem;
			}
			
			h4{
				font-size: 1.125rem;
			}
					
			li,
			p,
			.button{
				font-size: 1rem;
			}
					
			a, 
			span,
			i{
				font-size: inherit;
			}
				
			.small{
				font-size: 0.8rem
			}
				
				
			/*---------------------------------------------------------------------------*\
				Font Size - Mobile - Special sizes
			\*---------------------------------------------------------------------------*/
				.loading-overlay p,
				.loading-overlay i{
					font-size: 1.5rem;
				}
				
				header#primary nav#main-nav-desktop a{
					font-size: 0.8rem;
				}
				
				header#primary nav#main-nav-desktop .sub-menu a {
					font-size: 0.7rem;
				}
				
				header#secondary p{
					font-size: 0.8rem; 
				}
				
				header#secondary i{
					font-size: 1rem;
				}
				
				.hero-image-with-text-wrp .headline-wrp h1{
					font-size: 1.2rem;
				}
				
				.hero-image-with-text-wrp .tagline-wrp h2{
					font-size: 2.5rem;
				}
				
				.testimonial-cite{
					font-size: 0.8rem;
				}
				
				.pre-footer-wrp .tel{
					font-size: 1.5rem;
				}
				
				.form-field-wrp input[type=text],
				.form-field-wrp textarea{
					font-size: 0.9rem;
				}
				
				footer #main-footer ul li{
					font-size: 0.8rem;
				}
				
				footer #main-footer .social-wrp i{
					font-size: 1.4rem;
				}
				
				footer #copyright-footer *{
					font-size: 0.7rem;
				}
				
				.social-wrp.large i{
					font-size: 1.6rem;
				}
	
			
		/*---------------------------------------------------------------------------*\
			Font Size - Tablets/Laptops
		\*---------------------------------------------------------------------------*/
			@media(min-width:767px)
			{
				
				h1{
					font-size: 2.074rem;
				}
					
				h2{
					font-size: 1.728rem;
				}
			
				h3{
					font-size: 1.44rem;
				}
			
				h4{
					font-size: 1.2rem;
				}
					
				li,
				p,
				.button{
					font-size: 1rem;
				}
					
				a, 
				span,
				i{
					font-size: inherit;
				}
				
				.small{
					font-size: 0.833rem;
				}
					
					
				/*---------------------------------------------------------------------------*\
					Font Size - Tablets/Laptops - Special Sizes
				\*---------------------------------------------------------------------------*/
					/* Title Area -e.q. of a H4 */
					.loading-overlay p,
					.loading-overlay i{
						font-size: 2rem;
					}
					
					header#primary nav#main-nav-desktop a{
						font-size: 0.8rem;
					}
					
					header#primary nav#main-nav-desktop .sub-menu a {
						font-size: 0.7rem;
					}
					
					header#secondary p{
						font-size: 0.9rem; 
					}
					
					header#secondary i{
						font-size: 1.1rem;
					}
					
					.hero-image-with-text-wrp .headline-wrp h1{
						font-size: 1.5rem;
					}
					
					.hero-image-with-text-wrp .tagline-wrp h2{
						font-size: 3.3rem;
					}
					
					.testimonial-cite{
						font-size: 0.8rem;
					}
					
					.pre-footer-wrp .tel{
						font-size: 2rem;
					}
					
					.form-field-wrp input[type=text],
					.form-field-wrp textarea{
						font-size: 0.9rem;
					}
					
					footer #main-footer ul li{
						font-size: 0.8rem;
					}
					
					footer #main-footer .social-wrp i{
						font-size: 1.7rem;
					}
					
					footer #copyright-footer *{
						font-size: 0.8rem;
					}
					
					.social-wrp.large i{
						font-size: 1.7rem;
					}
		
			}
			
			
		/*---------------------------------------------------------------------------*\
			Font Size - Desktop
		\*---------------------------------------------------------------------------*/	
			@media(min-width:1170px)
			{
				h1{
					font-size: 2.441rem;
				}
					
				h2{
					font-size: 1.953rem;
				}
			
				h3{
					font-size: 1.563rem;
				}
			
				h4{
					font-size: 1.25rem;
				}
					
				li,
				p,
				.button{
					font-size: 1rem;
				}
					
				a, 
				span,
				i{
					font-size: inherit;
				}
					
				.small{
					font-size: 0.8rem;
				}
					
					
				/*---------------------------------------------------------------------------*\
					Font Size - Desktop - Special Sizes
				\*---------------------------------------------------------------------------*/
					.loading-overlay p,
					.loading-overlay i{
						font-size: 3rem;
					}
					
					header#primary nav#main-nav-desktop a{
						font-size: 0.9rem;
					}
					
					header#primary nav#main-nav-desktop .sub-menu a {
						font-size: 0.8rem;
					}
					
					header#secondary p{
						font-size: 1rem; 
					}
					
					header#secondary i{
						font-size: 1.2rem;
					}
					
					.hero-image-with-text-wrp .headline-wrp h1{
						font-size: 1.7rem;
					}
					
					.hero-image-with-text-wrp .tagline-wrp h2{
						font-size: 4.5rem;
					}
					
					.testimonial-cite{
						font-size: 0.9rem;
					}
					
					.pre-footer-wrp .tel{
						font-size: 3rem;
					}
					
					.form-field-wrp input[type=text],
					.form-field-wrp textarea{
						font-size: 1rem;
					}
					
					footer #main-footer ul li{
						font-size: 0.9rem;
					}
					
					footer #main-footer .social-wrp i{
						font-size: 1.9rem;
					}
					
					footer #copyright-footer *{
						font-size: 0.9rem;
					}
					
					.social-wrp.large i{
						font-size: 1.9rem;
					}
			}
				
				
		/*---------------------------------------------------------------------------*\
			Margin Spacing
		\*---------------------------------------------------------------------------*/
			h1,
			h2,
			h3,
			h4,
			p{
				margin-bottom: 10px;
			}
				
				
		/*---------------------------------------------------------------------------*\
			Font Color
		\*---------------------------------------------------------------------------*/
			h1{
				color:#333;
			}
					
			h2{
				color:#333;
			}
			
			h3{
				color: #333;
			}
			
			h4{
				color: #595959;
			}
			
			h5{
				color: #595959;
			}
					
			li,
			p,
			a,
			i{
				color: #333;
			}
			
			
			/*---------------------------------------------------------------------------*\
				Font Color - Light
			\*---------------------------------------------------------------------------*/	
				.light h1,
				.light h2{
					color:#ffffff !important; 
				}
			
				.light h3{
					color:#ffffff !important; 
				}
				
				.light h4,
				.light h5,
				.light p,
				.light li,
				.light a{
					color:#fff !important; 
				}
				
				.light .button a{
					border: 2px #ffffff solid !important;
					background-color: transparent;
				}
				
				.light .button a:hover{
					border: 2px #ffffff solid !important;
				}
				
		
		/*---------------------------------------------------------------------------*\
			Font Family
		\*---------------------------------------------------------------------------*/
			h1, 	
			h2,
			h3{
				font-family: 'Montserrat', sans-serif;
			}
			
			
			h4, 
			p{
				font-family: 'Open sans', sans-serif;
			}
			
			a, 
			span{
				font-family: inherit;
			}

			
		/*---------------------------------------------------------------------------*\
			Links
		\*---------------------------------------------------------------------------*/
			a{
				text-decoration:none;
				font-weight: inherit;
				transition: 0.4s;
				color: #333333;
			}
			
			a:hover{
				color: #333333;
				text-decoration:none;
				outline:none;
				cursor: pointer;
			}

			
/*---------------------------------------------------------------------------*\
	Header
\*---------------------------------------------------------------------------*/
	/*---------------------------------------------------------------------------*\
		Primary Header
	\*---------------------------------------------------------------------------*/		
		header#primary{
			padding: 10px 0;
			border-bottom: 1px solid #efefef;
		}
		
		header#primary .logo{
			max-width: 150px; 
		}
		
		/*Desktop Nav*/
		header#primary nav#main-nav-desktop > ul > li{
			display:inline-block;
			margin-right: 20px; 
			position: relative;
		}
		
		header#primary nav#main-nav-desktop > ul > li.has-children{
			margin-right: 40px; 
		}
		
		header#primary nav#main-nav-desktop > ul > li.has-children:before{
			font-weight: 900;
			position: absolute;
			left: 100%;
			font-family: "Font Awesome 5 Free";
			top: 50%;
			transform: translateY(-50%);
		}
		
		header#primary nav#main-nav-desktop > ul > li.has-children.closed:before{
			content: "\f0d7";
		}
		
		header#primary nav#main-nav-desktop > ul > li.has-children.open:before{
			content: "\f0d8";
		}
		
		header#primary nav#main-nav-desktop > ul > li:last-child{
			margin-right: 0;
		}
		
		header#primary nav#main-nav-desktop > ul > li:last-child > a{
			padding-right: 0;
		}
		
		header#primary nav#main-nav-desktop a{
			font-family: 'Montserrat', sans-serif;
			text-transform: uppercase;
			font-weight: bold;
			letter-spacing: 1px;
			padding: 11px 15px;
			display: inline-block;
		}
		
		header#primary nav#main-nav-desktop a:hover{
			color: #777777;
		}
		
		header#primary nav#main-nav-desktop > ul > li .sub-menu{
			display: none;
			position: absolute;
			top: 100%;
			left: 50%;
			transform: translateX(-50%);
			min-width: 250px;
			list-style: none;
			padding: 12px;
			background-color: #1E73BE;
			border-top: 5px solid #333;
			z-index: 999;
			
			/*Box Shadow*/
			-webkit-box-shadow: 7px 7px 4px 0px rgba(0,0,0,0.6);
			-moz-box-shadow: 7px 7px 4px 0px rgba(0,0,0,0.6);
			box-shadow: 7px 7px 4px 0px rgba(0,0,0,0.6);
		}
		
		header#primary nav#main-nav-desktop > ul > li .sub-menu:before{
			content: "";
			width: 0;
			height: 0;
			border-style: solid;
			border-width: 0 7px 7px 7px;
			border-color: transparent transparent #333 transparent;
			position: absolute;
			left: 50%;
			top: -12px;
			transform: translateX(-50%);
		}
		
		header#primary nav#main-nav-desktop .sub-menu a {
			width: 100%;
			font-weight: semi-bold;
			color: #efefef;
		}
		
		header#primary nav#main-nav-desktop .sub-menu a:hover{
			color: #fff;
		}
		
		header#primary nav#main-nav-desktop .sub-menu > li:last-child > a {
			border-bottom-width: 0;
		}
		
		
		/*---------------------------------------------------------------------------*\
			Primary Header - Responsive
		\*---------------------------------------------------------------------------*/	
			/*Switch between mobile nav and desktop nav*/
			header#primary nav#main-nav-desktop .main-menu.desktop{
				display:none;
			}
			
			@media(min-width:1140px)
			{
				header#primary nav#main-nav-desktop .main-menu.desktop{
					display:block;
				}
				
				header#primary nav#main-nav-desktop .hamburger{
					display: none;
				}
			}
			
			/*Adjust logo width*/
			@media(min-width: 767px)
			{
				header#primary .logo{
					max-width: 200px; 
				}
			}
			
			
	/*---------------------------------------------------------------------------*\
		Secondary Header
	\*---------------------------------------------------------------------------*/	
		header#secondary{
			background-color: #333;
			padding: 10px 0;
		}
		
		header#secondary p{ 
			margin:0;
			padding:0;
		}
		
		header#secondary i{
			display: inline-block;
			margin-right: 5px; 
		}
		
		header#secondary i{
			vertical-align: middle;
		}


	/*---------------------------------------------------------------------------*\
		Hero Image with text
	\*---------------------------------------------------------------------------*/
		
		.hero-image-with-text-wrp .content-wrp{
			padding: 20px 10px;
			text-align: center;
			background-attachment: fixed;
			-webkit-background-size: cover;
			-moz-background-size: cover;
			-o-background-size: cover;
			background-size: cover;
			background-position: center center;
			position:relative;
		}
		
		.safari .hero-image-with-text-wrp .content-wrp{
			background-attachment: scroll !important;
		}
		
		@media(min-width: 767px)
		{
			.hero-image-with-text-wrp .content-wrp{
				padding: 40px 10px;
			}
		}
		
		@media(min-width: 992px)
		{
			.hero-image-with-text-wrp .content-wrp{
				padding: 60px 20px;
			}
		}
		
		.hero-image-with-text-wrp .txt-wrp{
			position:relative;
			z-index: 4;
		}
		
		.hero-image-with-text-wrp .headline-wrp{
			animation-delay: 0s;
			animation-duration: 1.3s;
		}
		
		.hero-image-with-text-wrp .headline-wrp h1{
			text-transform: uppercase;
			letter-spacing: 2px;
			margin: 0;
			color: #fff;
			text-shadow: 2px 2px 4px #333;
			font-family: 'Montserrat', sans-serif;
		}
		
		.hero-image-with-text-wrp .tagline-wrp h2{
			text-transform: uppercase;
			letter-spacing: 1px;
			margin: 0;
			color: #fff;
			text-shadow: 2px 2px 4px #333;
			font-family: 'Montserrat', sans-serif;
		}
		
		.hero-image-with-text-wrp .tagline-wrp{
			animation-delay: 0s;
			animation-duration: 1.3s;
		}
		
		.hero-image-with-text-wrp .tagline-wrp h2{
			letter-spacing: 1px;
			margin: 0;
			margin-bottom: 30px;
			color: #fff;
			font-weight: 400;
			font-family: 'Montserrat', sans-serif;
			text-shadow: 2px 2px 4px #333;
		}
		
		.hero-image-with-text-wrp .divider{
			width: 220px;
			background-color: #fff;
			height: 2px;
			margin: 20px auto;
			animation-delay: 0.5s;
			animation-duration: 0.8s;
		}
		
		.hero-image-with-text-wrp .button{
			animation-delay: 1s;
		}
		
		.hero-image-with-text-wrp .button a{
			background-color: #1E73BE !important; 
			border-color:#1E73BE !important; 
		}
		
		.hero-image-with-text-wrp .overlay{
			background-color: #000;
			background-color: rgba(0,0,0,0.4);
			position:absolute;
			top:0;
			left:0;
			bottom:0;
			right:0;
		}
		

	/*---------------------------------------------------------------------------*\
		Text Row
	\*---------------------------------------------------------------------------*/		
		.text-row-wrp p{
			text-align: center;
			line-height: 1.7;
			letter-spacing: 1px;
		}
		
		.text-row-wrp a{
			color: #696969;
			text-decoration: underline;
		}
		
		
	/*---------------------------------------------------------------------------*\
		AAT Row
	\*---------------------------------------------------------------------------*/	
		.aat-row-wrp p{
			text-align: center;
			line-height: 1.7;
			letter-spacing: 1px;
		}
		
		.aat-row-wrp h3{
			text-align: center;
		}
		
		.aat-row-wrp img{
			display: block;
			margin-bottom: 30px !important;
		}
		
		.aat-row-wrp .img-wrp{
			max-width: 180px;
			margin-left: auto;
			margin-right: auto;
		}
		
		.aat-row-wrp .divider{
			height: 2px;
			background-color: #fff;
			width: 150px;
			margin: auto;
		}
	
		.aat-row-wrp h3{
			margin-top: 10px;
		}
		
		@media(min-width: 992px)
		{
			.aat-row-wrp *{
				text-align: left !important;
			}
			
			.aat-row-wrp img{
				display: block;
				margin-bottom: 0 !important;
			}
			
			.aat-row-wrp .divider{
				margin-right: auto;
				margin-left: 0;
			}
			
			.aat-row-wrp .img-wrp{
				max-width: 250px;
			}
		}

	
	
	/*---------------------------------------------------------------------------*\
		Services blurbs
	\*---------------------------------------------------------------------------*/	
		.services-blurbs-wrp{
			text-align:center;
		}
		
		.services-blurbs-wrp img{
			display:block;
		}
		
		.services-blurbs-wrp .details-wrp{
			padding: 30px;
		}
		
		.services-blurbs-wrp .details-wrp.grey{
			background-color: #333;
		}
		
		.services-blurbs-wrp .details-wrp.blue{
			background-color: #1E73BE;
		}
		
		.services-blurbs-wrp .details-wrp h3{
			margin-top: 10px;
		}
		
		.services-blurbs-wrp .details-wrp h3,
		.services-blurbs-wrp .details-wrp p{
			color: #ffffff;
		}
		
		.services-blurbs-wrp .main-title-wrp{
			margin-bottom: 30px;
		}
		
		.services-blurbs-wrp .divider{
			height: 2px;
			background-color: #fff;
			width: 150px;
			margin: auto;
		}
		
		.services-blurbs-wrp .details-wrp.grey .button a:hover,
		.services-blurbs-wrp .details-wrp.blue .button a:hover
		{
			color: #fff;
		}
		
		.services-blurbs-wrp .details-wrp.blue .button a{
			background-color: #333;
			border:solid #333 2px;
		}
		
		.services-blurbs-wrp .details-wrp.blue .button a:hover{
			border:solid #333 2px;
			background-color: transparent;
			color: #fff;
		}
		
		.services-blurbs-wrp .blurb-wrp{
			display:flex;
			flex-direction: column;
			flex-grow: 1;
		}
		
		.services-blurbs-wrp .details-wrp{
			display:flex;
			flex-direction: column;
			flex-grow: 1;
		}
		
		.services-blurbs-wrp .details-wrp .description-wrp{
			flex-grow: 1;
		}
		
		
	/*---------------------------------------------------------------------------*\
		Homepage
	\*---------------------------------------------------------------------------*/	
		.homepage .hero-image-with-text-wrp .content-wrp{
			padding: 70px 10px;
		}
		
		@media(min-width: 767px)
		{
			.homepage .hero-image-with-text-wrp .content-wrp{
				padding: 120px 10px;
			}
		}
		
		@media(min-width: 992px)
		{
			.homepage .hero-image-with-text-wrp .content-wrp{
				padding: 200px 10px;
			}
		}
		
		.homepage .services-blurbs-wrp .blurb-wrp{
			margin: 5px;
		}
	
	/*---------------------------------------------------------------------------*\
		Services 
	\*---------------------------------------------------------------------------*/
		.services .services-blurbs-wrp .blurb-wrp{
			margin: 5px;
		}
	
	/*---------------------------------------------------------------------------*\
		Testimonials 
	\*---------------------------------------------------------------------------*/
	

	/*---------------------------------------------------------------------------*\
		Terms 
	\*---------------------------------------------------------------------------*/
		.terms p{
			line-height: 1.7;
			letter-spacing: 1px;
			text-align: left;
		}
		
		.terms h3{
			margin-top: 20px;
		}
	
	/*---------------------------------------------------------------------------*\
		Privacy 
	\*---------------------------------------------------------------------------*/
		.privacy p{
			line-height: 1.7;
			letter-spacing: 1px;
		}
		
		.privacy h3{
			margin-top: 20px;
		}
		
		.privacy li{
			line-height: 1.7;
			letter-spacing: 1px;
			font-family: 'Open Sans', sans-serif;
			margin-bottom: 10px;
		}
		
		.privacy ul{
			margin-top: 10px;
			bottom: 10px;
		}
	
	
	/*---------------------------------------------------------------------------*\
		Testimonials
	\*---------------------------------------------------------------------------*/	
		
		.testimonials .hero-image-with-text-wrp{
			margin-bottom: 40px;
		}
		
		.testimonial-content{
			padding: 20px;
			text-align: center;
		}
		
		.testimonial-body{
			letter-spacing: 1px;
			line-height: 1.7;
		}
		
		.testimonial-cite{
			color: #595959;
			font-weight: bold;
			font-family: 'Montserrat', sans-serif;
			font-style: italic;
		}
		
		
		/*---------------------------------------------------------------------------*\
			Testimonials - Carousel
		\*---------------------------------------------------------------------------*/	
			.testimonials-carousel h3{
				margin-top: 0;
			}
			
			.testimonials-carousel .divider{
				margin: 20px auto;
			}
			
			.testimonials-carousel .testimonial-content{
				padding-top: 0;
			}
			
			.testimonials-carousel .testimonials-title{
				text-align:center;
			}

	
	/*---------------------------------------------------------------------------*\
		Contact
	\*---------------------------------------------------------------------------*/	
		.contact-details-wrp .divider{
			height: 2px;
			background-color: #333;
			max-width: 70px;
			width: 100%;
			margin: 5px auto 5px 0;
		}
		
		/*Contact Form*/
		#form-msg-wrp{
			display: none;
			padding: 5px 15px;
			margin-top: 10px;
		}
		
		#form-msg-wrp.error{
			background-color: #FFCCCC;
			border: 1px #990000 solid;
			color: #4C0000;
		}
		
		#form-msg-wrp.error p{
			color: #4C0000;
		}
		
		#form-msg-wrp.success{
			background-color: #d7f0d5;
			border: 1px #4BB543 solid;
			color: #347d2e;
		}
		
		#form-msg-wrp.success p{
			color:#1d4519;
		}
		
		.form-field-wrp{
			margin-bottom: 20px;
		}
		
		.form-field-wrp p{
			margin: 0;
		}
		
		.form-field-wrp input[type=text],
		.form-field-wrp textarea{
			border: 1px solid #595959;
			padding: 10px 9px;
			width: 100%;
			font-family: 'Montserrat', sans-serif;	
			margin-bottom: 4px;
			display:block;
		}
		
		.error-msg{
			color: #990000;
		}
		
		.form-field-wrp.error input,
		.form-field-wrp.error textarea{
			border-color: #990000;
		}
		
		.form-field-wrp input[type=submit]
		{
			-webkit-appearance: none !important;
			padding: 10px 15px !important;
			border: 2px solid #1E73BE !important;
			background-color: #1E73BE !important;
			color: #fff !important;
			letter-spacing: 1px;
			transition: 0.4s;
			border-radius: 0;
		}
		
		.form-field-wrp input[type=submit]:hover
		{
			-webkit-appearance: none !important;
			background-color: transparent !important;
			color: #1E73BE !important;
			cursor: pointer !important;
		}
		
		p.gdpr-text{
			margin-bottom: 25px;
		}
		
		
	/*---------------------------------------------------------------------------*\
		The Honeypot
	\*---------------------------------------------------------------------------*/	
		.form-field-wrp.address{
			display:none;
		}
	

/*---------------------------------------------------------------------------*\
	Footer
\*---------------------------------------------------------------------------*/	
	/*---------------------------------------------------------------------------*\
		Pre-footer
	\*---------------------------------------------------------------------------*/	
		.pre-footer-wrp{
			background-position: center center;
			background-size: cover;
			position: relative;
			padding: 50px 0;
			text-align: center;
		}
		
		.pre-footer-wrp .overlay{
			position:absolute;
			top: 0;
			bottom: 0;
			left: 0;
			right: 0;
			background-color: #000;
			background-color: rgba(0,0,0,0.8);
		}
		
		.pre-footer-wrp h3{
			margin-top: 10px;
		}
	
	
	/*---------------------------------------------------------------------------*\
		Main Footer
	\*---------------------------------------------------------------------------*/	
		footer #main-footer{
			background-color: #222;
			padding: 50px 0;
		}
		
		footer #main-footer h3{
			margin-top: 30px;
			line-height: 1;
			font-family: 'Montserrat', sans-serif;
			letter-spacing: 2px;
		}
		
		footer #main-footer *{
			color: #fff !important;
		}
		
		footer #main-footer .logo-wrp{
			max-width: 220px;
			margin-bottom: 10px;
		}
		
		footer #main-footer .divider{
			width: 70px;
			height: 2px;
			background-color: #fff;
			margin-left: 0;
			margin-right: auto;
			margin-top: 15px;
			margin-bottom: 15px;
		}
		
		footer #main-footer ul{
			list-style: none;
			margin:0;
			padding: 0;
		}
		
		footer #main-footer ul li{
			font-family: 'Montserrat', sans-serif;
			padding: 8px 0;
			letter-spacing: 1px;
		}
		
		footer #main-footer .social-wrp{
			margin: 10px 0;
		}
		
		footer #main-footer .social-wrp i{
			margin-right: 10px; 
		}
		
		@media(min-width: 767px)
		{
			footer #main-footer h3{
				margin-top: 0;
			}
			
			footer #main-footer .menu-wrp{
				text-align: right;
			}
			
			footer #main-footer .divider{
				margin-left: auto;
				margin-right: 0;
			}
		}
		
	
	/*---------------------------------------------------------------------------*\
		Copyright Footer
	\*---------------------------------------------------------------------------*/	
		footer #copyright-footer{
			background-color: #222;
			border-top: 1px solid #fff;
			padding: 5px 0;
		}
		
		footer #copyright-footer *{
			color: #fff;
			font-family: 'Montserrat', sans-serif;
			letter-spacing: 1px;
		}
		
		footer #copyright-footer span{
			margin: 0 10px;
		}
		
		
/*---------------------------------------------------------------------------*\
	General
\*---------------------------------------------------------------------------*/	
	/*---------------------------------------------------------------------------*\
		Button
	\*---------------------------------------------------------------------------*/	
		div.button{
			width:auto;
			transition: 0.4s;
			margin-top: 15px;
			display: inline-block;
		}
		
		.button a{
			font-family: 'Montserrat', sans-serif;
			font-weight:bold;
			display: inline-block;
			text-align: center;
			padding:7px 18px;
			border: 2px #1E73BE solid;
			color: #ffffff;
			background-color: #1E73BE;
			cursor: pointer;
			width:auto;
			transition: 0s;
		}
		
		.button a span {
			cursor: pointer;
			display: inline-block;
			position: relative;
			transition: 0.4s;
			letter-spacing: 2px;
		}
		
		.button a span:after {
			content: '»';
			position: absolute;
			opacity: 0;
			top: 0;
			right: -20px;
		}
		
		.button a:hover  span {
			padding-right: 25px;
		}
		
		.button a:hover span:after {
			opacity: 1;
			right: 0;
		}
		
		.button a:hover{
			background-color:transparent;
			border: 2px #1E73BE solid; 
			color: #1E73BE;	
		}
		
		.button a span.back:before {
			content: '<<';
			position: absolute;
			opacity: 0;
			top: 0;
			left: -5px;
			text-align: left !important;
		}
		
		.button a:hover  span.back {
			padding-left: 25px;
		}
		
		.button a:hover span:before {
			opacity: 1;
			right: 0;
		}
		
		.button a span.back:after {
			content: '';
			position: absolute;
			opacity: 0;
			top: 0;
			right: 0;
		}
		
		.button a:hover  span.back {
			padding-right: 0;
		}
		
		.button a:hover span.back:after {
			opacity: 0;
			right: 0;
		}
		
		.button.hover-white a:hover span{
			color:#fff;
		}
		
		/* .button.light a{ */
			/* color: #fff; */
			/* border: 2px #fff solid; */
			/* background-color: transparent; */
		/* } */
	
	
	/*---------------------------------------------------------------------------*\
		Social Icons
	\*---------------------------------------------------------------------------*/	
		.social-wrp i{
			margin-right: 10px;
		}
		
		.social-wrp.dark i{
			color: #333;
		}	
	
	
	/*---------------------------------------------------------------------------*\
		Mobile Nav
	\*---------------------------------------------------------------------------*/	
		/*Main Nav*/
		nav#main-nav-mobile{
			width:100%;
			background-color: #333;
			height: 100vh;
			position: fixed;
			top:0;
			left:-100%;
			z-index: 9999;
			overflow-y: auto;
		}
		
		nav#main-nav-mobile .top,
		nav#main-nav-mobile .bottom{
			margin-top: 15px;
			margin-bottom: 15px;
		}
		
		nav#main-nav-mobile .bottom{
			margin-top: 30px;
			padding-bottom: 40px;
		}
		
		nav#main-nav-mobile .top p{
			margin: 0;
		}
		
		nav#main-nav-mobile .main-menu.mobile{
			list-style:none;
			padding: 0;
			margin:0;
			width: auto;
			text-align: center;
			display: block;
			overflow-y: auto;
		}
		
		nav#main-nav-mobile ul > li{
			color: #fff;
			font-family: 'Montserrat', sans-serif;
			display:block;
			position:relative;
		}
		
		nav#main-nav-mobile ul > li > a{
			display: block;
			color: #fff;
			font-family: 'Montserrat', sans-serif;
			padding: 25px 15px;
			letter-spacing: 1px;
			position:relative;
		}
		
		nav#main-nav-mobile .main-menu.mobile > li.has-children > a:after{
			font-weight: 900;
			font-family: "Font Awesome 5 Free";
			padding-left: 15px;
		}
		
		nav#main-nav-mobile .main-menu.mobile > li.has-children.closed > a:after{
			content: "\f0d7";
		}
		
		nav#main-nav-mobile .main-menu.mobile > li.has-children.open > a:after{
			content: "\f0d8";
		}
		
		nav#main-nav-mobile .sub-menu{
			display:none;
			background-color: #fff;
			width: 100%;
			padding: 0;
		}
		
		nav#main-nav-mobile .sub-menu li a{
			color: #333;
			border-bottom: 1px solid #f7f7f7;
		}
		
		/*Social Icons*/
		nav#main-nav-mobile .mobile-social-icon-wrp a{
			padding-right: 15px; 
			display: inline-block;
		}
		
		nav#main-nav-mobile .mobile-social-icon-wrp a i{
			font-size: 1.5rem
		}
		
		/*hamburger*/
		.mobile-hamburger-wrp.light .hamburger-icon-wrp .hamburger-icon span{
			background: #fff;
		}
		
		
	/*---------------------------------------------------------------------------*\
		Hamburger
	\*---------------------------------------------------------------------------*/	
		.hamburger{
			display: table;
			height: 100%;
		}
		
		.hamburger .hamburger-icon-wrp{
			display: table-cell;
			vertical-align: middle;
		}
		
		.hamburger .hamburger-icon-wrp .hamburger-icon{
			width: 40px;
			height: 35px;
			position: relative;
			margin: 10px auto;
			-webkit-transform: rotate(0deg);
			-moz-transform: rotate(0deg);
			-o-transform: rotate(0deg);
			transform: rotate(0deg);
			-webkit-transition: .5s ease-in-out;
			-moz-transition: .5s ease-in-out;
			-o-transition: .5s ease-in-out;
			transition: .5s ease-in-out;
			cursor: pointer;
		}
	
		.hamburger .hamburger-icon-wrp .hamburger-icon span{
			display: block;
			position: absolute;
			height: 5px;
			width: 100%;
			background: #333333;
			opacity: 1;
			left: 0;
			-webkit-transform: rotate(0deg);
			-moz-transform: rotate(0deg);
			-o-transform: rotate(0deg);
			transform: rotate(0deg);
			-webkit-transition: .25s ease-in-out;
			-moz-transition: .25s ease-in-out;
			-o-transition: .25s ease-in-out;
			transition: .25s ease-in-out;
		}
		
		.hamburger .hamburger-icon-wrp .hamburger-icon span:nth-child(1) {
			top: 0px;
		}
		
		.hamburger .hamburger-icon-wrp .hamburger-icon span:nth-child(2) {
			top: 15px;
		}
		
		.hamburger .hamburger-icon-wrp .hamburger-icon span:nth-child(3) {
			top: 30px;
		}
		
		.hamburger.open .hamburger-icon-wrp .hamburger-icon span:nth-child(1) {
			top: 18px;
			-webkit-transform: rotate(135deg);
			-moz-transform: rotate(135deg);
			-o-transform: rotate(135deg);
			transform: rotate(135deg);
		}
		
		.hamburger.open .hamburger-icon-wrp .hamburger-icon span:nth-child(2) {
			opacity: 0;
			left: -60px;
		}
		
		.hamburger.open .hamburger-icon span:nth-child(3) {
			top: 18px;
			-webkit-transform: rotate(-135deg);
			-moz-transform: rotate(-135deg);
			-o-transform: rotate(-135deg);
			transform: rotate(-135deg);
		}
		
		.hamburger .hamburger-text p{
			margin: 0;
			padding: 0;
			font-weight: bold;
			margin-left: 10px;
		}
		
		.hamburger .hamburger-text{
			display:table-cell;
			vertical-align:middle;
		}
		
		.hamburger.open .closed-text{
			display:none;
		}
		
		.hamburger.closed .open-text{
			display:none;
		}
	
	
	/*---------------------------------------------------------------------------*\
		Loading
	\*---------------------------------------------------------------------------*/		
		/*Loading - Overlay*/
		.loading-overlay{
			position: fixed;
			background-color: rgba(0,0,0,0.90);
			top: 0;
			bottom: 0;
			left: 0;
			right: 0;
			z-index: 999999999999999999999999;
			display:none;
		}
		
		.loading-overlay .loading-text-wrp{
			display:table;
			height:100%;
			width:100%;
		}
		
		.loading-overlay .loading-text{
			display:table-cell;
			vertical-align: middle;
			width:100%;
			text-align: center;
		}
		
		.loading-overlay p,
		.loading-overlay i{
			color: #fff;
		}
		
		/*Loading - 3 dots*/
		@keyframes blink {
			0% {
			  opacity: 0.1;
			  transform: scale(0.9);
			}
			20% {
			  opacity: 1;
			  transform: scale(1.3);
			}
			100% {
			  opacity: 0.1;
			  transform: scale(0.9);
			}
		}

		.loading-text p span {
			display: inline-block;
			animation-name: blink;
			animation-duration: 1.2s;
			animation-iteration-count: infinite;
			animation-fill-mode: both;
		}

		.loading-text p span.second {
			animation-delay: .2s;
		}

		.loading-text p span.third {
			animation-delay: .4s;
		}
	
	
	/*---------------------------------------------------------------------------*\
		On/Off Switch
	\*---------------------------------------------------------------------------*/	
		/*The Switch*/
		.onoffswitch {
			position: relative; width: 76px;
			-webkit-user-select:none; -moz-user-select:none; -ms-user-select: none;
			display: inline-block;
			vertical-align:middle;
			margin: 5px 0;
		}
		
		.onoffswitch-checkbox {
			display: none;
		}
		
		.onoffswitch-label {
			display: block; overflow: hidden; cursor: pointer;
			border: 1px solid #E3E3E3; border-radius: 5px;
		}
		
		.onoffswitch-inner {
			display: block; width: 200%; margin-left: -100%;
			transition: margin 0.3s ease-in 0s;
		}
		
		.onoffswitch-inner:before, .onoffswitch-inner:after {
			display: block; float: left; width: 50%; height: 32px; padding: 0; line-height: 32px;
			font-size: 14px; color: white; font-family: Trebuchet, Arial, sans-serif; font-weight: normal;
			box-sizing: border-box;
		}
		
		.onoffswitch-inner:before {
			content: "Yes";
			padding-left: 10px;
			background-color: #309cf3; color: #FFFFFF;
		}
		
		.onoffswitch-inner:after {
			content: "No";
			padding-right: 10px;
			background-color: #eeeeee; color: #333333;
			text-align: right;
		}
		
		.onoffswitch-switch {
			display: block; width: 32px; margin: 3px;
			background: #FFFFFF;
			position: absolute; top: 0; bottom: 0;
			right: 39px;
			border: 1px solid #E3E3E3; border-radius: 5px;
			transition: all 0.3s ease-in 0s; 
		}
		
		.onoffswitch-checkbox:checked + .onoffswitch-label .onoffswitch-inner {
			margin-left: 0;
		}
		
		.onoffswitch-checkbox:checked + .onoffswitch-label .onoffswitch-switch {
			right: 0px; 
		}
		
		/*checkbox label*/
		.checkbox-label{
			display: inline-block;
		}
		
		.checkbox-label.left{
			padding-right: 15px;
			text-align:left;
		}
		
		.checkbox-label.right{
			padding-left: 15px;
			text-align:right;
		}
		
		/*checkboxes*/
		.form-field-wrp input[type=checkbox].checkbox
		{
			display: inline-block;
			vertical-align: middle;
			width:auto;
		}
	
	