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

* { margin: 0px; padding: 0px; -webkit-font-smoothing:antialiased; -webkit-text-size-adjust:none; box-sizing: border-box; -webkit-box-sizing: border-box; }
html, body { width: 100%; font-size: 14px; color: #545765; font-family: 'Lato', sans-serif; background: #fff; }
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video { margin: 0; padding: 0; border: 0; vertical-align: baseline; }

article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section { display: block; }
.centering { max-width: 1170px; position: relative; margin: auto; }
.container { max-width: 1860px; position: relative; margin: auto; }

*::-webkit-input-placeholder{ opacity: 1; } 
*::-moz-placeholder{ opacity: 1; } 
*:-ms-input-placeholder{ opacity: 1; }
[href^="tel"] { cursor: default; color: #fff !important; font-size: 21px !important; }
[href^="tel"]:hover { text-decoration: none !important; }
.rounded { border-radius: 6px; -webkit-border-radius: 6px; }
.circle { border-radius: 50%; -webkit-border-radius: 50%; }

/* common */
a { text-decoration: none; outline: none; transition: all 0.3s; -webkit-transition: all 0.3s; }
ul { list-style: none; margin: 0px; }
.clear { clear: both; overflow: hidden; }
img { border: 0px; outline: none; display: block; max-width: 100%; }
p { margin-bottom: 20px; line-height: 22px; color: #545765; font-size: 17px; }
h1, h2, h3, h4, h5, h6 { margin-bottom: 20px; font-weight: normal; }
h1 { font-size: 36px; }
h2 { font-size: 40px; line-height: 45px; font-weight: 300; }
h3 { font-size: 30px; line-height: 35px; }
h4 { font-size: 18px; line-height: 24px; }
h5 { font-size: 14px; line-height: 20px; }
h6 { font-size: 12px; line-height: 18px; }


input, textarea { font-family: Arial; transition: all 0.3s; -webkit-transition: all 0.3s; -webkit-appearance: none; }
input:focus, textarea:focus { outline: none; }


#back-to-top { position: fixed; bottom: 60px; display: none; right: 15px; z-index: -1; width: 34px; height: 34px; cursor: pointer; border-radius: 50%; -webkit-border-radius: 50%; transition: opacity 0.2s ease-out; -webkit-transition: opacity 0.2s ease-out; opacity: 0; background: #3c2a1d url('../images/top_btn.png') center center no-repeat; }
#back-to-top.show { opacity: 0.8; z-index: 9999; }
#back-to-top.show:hover { opacity: 1; }

/* wrapper */
#wrapper { width: 100%; min-height: 100%; position: relative; padding-bottom: 1000px; }
.internal #wrapper { padding-bottom:0; }


.top-bar { overflow: hidden; position: relative; }
.top-bar.fixed .sticky-top { display: block; position:fixed; left:0; top:0; z-index:1; width:100%;} 
.internal .top-bar.fixed .sticky-top { z-index:9999; top:47px }

.top-bar:before { content: ""; position: absolute; bottom: -1px; left: 0px; width: 100%; height: 20px; z-index: 9999; background: url(../images/banner-shadow.png) repeat-x; }
  
	/* header-part */
	header { padding: 15px 60px; width: 24.7%; float: left; height: 100%; min-height: 780px; position: relative; text-align: center; letter-spacing: 1px; text-transform: uppercase; z-index: 99999; overflow: hidden; -webkit-box-shadow: 8px 0 22px -5px #2A2A2A; box-shadow: 8px 0 22px -5px #2A2A2A; background: url(../images/header-bg.png) no-repeat left top; background-size: 100% auto; }
	header a.logo { margin: 37px 0 30px; display: inline-block; } 
	header .tagline { color: #b6b6b6; font-size: 15px; }		
	header .nav_sec { margin: 23px 0; width: 100%; float: left; position: relative; }
	header .nav_sec ul { list-style: none; }
	header .nav_sec li { padding: 0 18px; width: 100%; float: left; position: relative; line-height: 35px; }
	header .nav_sec li a { display: block; color: #1e9dbe; font-size: 17px; }
	header .nav_sec li ul { padding: 10px 0; display: none; position: absolute; left: 0px; width: 100%; z-index: 999; background: #fff; }
	header .nav_sec li:hover ul { display: block; }
	header .nav_sec li ul li { border-bottom: 1px solid rgba(28,140,197,0.2); }
	header .nav_sec li.active a { color: #9f9f9f; }
	header .nav_sec li:hover a { color: #9f9f9f; }
	header .nav_sec li:hover ul li a { color: #1e9dbe; }
	header .nav_sec li ul li:hover a { color: #9f9f9f; }
	header .nav_sec a.mobilemenu { display: none; }
	header .nav_sec a.close { display: none; }
	header .enquiry { margin-top: 130px; width: 100%; float: left; position: absolute; bottom: 30px; left: 0px; padding: 0 42px; }
	header .enquiry li { margin-bottom: 17px; width: 100%; float: left; }
	header .enquiry li a { padding: 16px 0; width: 196px; color: #fff; font-size: 17px; display: inline-block; background: #1c8cc5; }
	header .enquiry li a:hover { background: #9f9f9f; }
	header .enquiry p { color: #b6b6b6; font-size: 18px; }
	header .enquiry  ul { margin-bottom: 22px; float: left; width: 100%; }
	header .enquiry a.number { padding: 3px 0 3px 22px; margin-top: 5px; display: inline-block; color: #b6b6b6 !important; font-size: 16px; background: url(../images/phone-img.png) no-repeat left center; font-size: 16px !important; }
	
	.sticky-top { padding: 20px 0; width: 100%; float: left; display: none;  -webkit-animation:stickyhead ease-in-out 0.7s 0.1s both;-moz-animation:stickyhead ease-in-out 0.7s 0.1s both;animation:stickyhead ease-in-out 0.7s 0.1s both; box-shadow: 0 0 7px rgba(0,0,0,.3); background: #fff; }
	.sticky-top .sticky-logo { width: 166px; float: left; }
	.sticky-top .sticky-menu { padding: 22px 0 22px 30px; width: 1000px; float: left; }
	.home .sticky-top .sticky-menu { width:100%; }
	.home .sticky-top .sticky-logo { display:none; }
	.sticky-top li { padding: 0 8px; float: left; position: relative; line-height: 22px; text-transform: uppercase; border-right: 1px solid #cec1b6; }
	.sticky-top li.border { border: 0px; }
	.sticky-top li a { display: block; color: #1e9dbe; font-size: 16px; }
	.sticky-top li a:hover { color: #afafaf; }
	.sticky-top li.active a { color: #afafaf; }
	.sticky-top a.mobilemenu { display: none; }
	.sticky-top a.close { display: none; }
	.sticky-top .none { display: none; }
	.sticky-top .help { display: none; }
	
	.sticky-top li ul { padding: 10px 0; display: none; position: absolute; left: 0px; top: 100%; width: 100%; z-index: 999; background: #fff; }
	.sticky-top li:hover ul { display: block; }
	.sticky-top li ul li { padding: 5px 10px; white-space: normal; width: 100%; border-bottom: 1px solid rgba(28,140,197,0.2); border-right: 0px; }
	.sticky-top li:hover a { color: #9f9f9f; }
	.sticky-top li:hover ul li a { color: #1e9dbe; }
	.sticky-top li ul li:hover a { color: #9f9f9f; }
	
	@-webkit-keyframes stickyhead{  0%{opacity:0;-webkit-transform:translateY(-100%) } 100%{opacity:1;-webkit-transform:translateY(0)} }	
	@-moz-keyframes stickyhead{ 0%{opacity:0;-moz-transform:translateY(-100%)} 100%{opacity:1;-moz-transform:translateY(0)} }
	@keyframes stickyhead{ 0%{opacity:0;-webkit-transform:translateY(-100%);-moz-transform:translateY(-100%);-ms-transform:translateY(-100%);-o-transform:translateY(-100%);transform:translateY(-100%)} 100%{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);-ms-transform:translateY(0);-o-transform:translateY(0);transform:translateY(0)} }

	
	/* banner */
	.home .banner_sec { width: 75.3%; float: left; position: relative; }
	.internal .banner_sec { width: 100%; float: left; position: relative; }
	.banner_sec .help { padding: 14px 20px; width: 100%; float: left; text-align: right; position: absolute; z-index: 9999; letter-spacing: 0.3px; background: #1c8cc5; }
	.internal .banner_sec .help { position:fixed; text-align:center; }
	.banner_sec .help span { color: #fff; text-transform: uppercase; font-size: 16px; }
	.banner_sec .help strong { font-weight: 900; }
	.banner_sec .help em { padding-left: 15px; font-style: normal; }
	.banner_sec .help [href^="tel"] { font-size: 15px !important; }
	.banner_sec .title h2 { margin-bottom: 0px; color: #04527b; font-size: 35px; position: relative; text-transform: uppercase; line-height: 40px; font-weight: 500; letter-spacing: 2px;  }
	.banner_sec .title h1 { margin-bottom: 0px; color: #04527b; font-size: 44px; font-family: 'Pacifico', cursive; line-height: 52px; }
	.banner_sec .title { width: 500px; text-align: center; position: absolute; bottom: 14%; z-index: 999; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); -o-transform: translateX(-50%); }

		/* content-part */
		#content-part { width: 100%; float: left; position: relative; }

			/* service-bar */
			.service-bar { width: 100%; position: relative; float: left; position: relative; text-align: center; background: url(../images/service-bg.jpg) repeat; }
			.service-bar .inner { margin: 0 15px 30px;  margin-top:34px; position: relative; overflow: hidden; }  
			.service-bar .image { position: relative; background-position: center center; cursor: pointer; background-size: 105%; width: 100%; height: 100%; transition: all .3s ease-in-out; -webkit-transition: all .3s ease-in-out; }
			.service-bar .image:hover { transition: all .3s ease-in-out; -webkit-transition: all .3s ease-in-out; background-size: 110%; }
			.service-bar h3 { padding: 22px 0; margin-bottom: 0px; color: #a6e5f6; letter-spacing: 1px; font-size: 29px; text-transform: uppercase; background: #1c8cc5; }
			.service-bar .column { width: 75.6%; float: left; }
			.service-bar .column:last-child { position:absolute; right:0px; top:0; height: 100%; width: 24.4%; float: left; padding: 0 15px;}
			.service-bar ul { width: 100%; float: left; margin-bottom: -30px; }
			.service-bar li { padding: 0 15px; margin-bottom: 30px; width: 33.33%; float: left; position: relative; transition: all .3s ease-in-out; -webkit-transition: all .3s ease-in-out; }
			.service-bar span { padding: 10px; width: 100%; float: left; color: #e5e5e5; font-size: 25px; position: absolute; left: 0px; bottom: 0px; font-weight: 300; background: rgba(0,0,0,0.8); }
			.service-bar li a { width: 100%; float: left; height: 100%; position: relative; overflow: hidden; }
			.service-bar li img { width: 100%; }
			.service-bar .column:last-child li { padding: 0px; width: 100%; }
			.service-bar .poolservicing { display: none; }
			.service-bar li a:hover img { transform: scale(1.1); -webkit-transform: scale(1.1); -ms-transform: scale(1.1); -moz-transform: scale(1.1); }
			.service-bar li a img { transform: scale(1); -webkit-transform: scale(1); -ms-transform: scale(1); -moz-transform: scale(1); transition: all .3s ease-in-out; -webkit-transition: all .3s ease-in-out; }
			
			/* sunshine-bar */
			.sunshine-bar { width: 100%; float: left; position: relative; }
			.sunshine-bar .column { width: 60%; float: left; }
			.sunshine-bar .column:last-child { width: 40%; float: left; padding: 70px 89px 65px 90px; }
			.sunshine-bar h2 { margin-bottom: 27px; color: #646464; }
			.sunshine-bar h4 { margin-bottom: 25px; font-size: 22px; color: #646464; line-height: 29px; }
			.sunshine-bar p { font-size: 18px; line-height: 26px; }
			.sunshine-bar a.btn { padding: 15px 30px; font-size: 17px; color: #fff; display: inline-block; text-transform: uppercase; letter-spacing: 1px; background: #1c8cc5; }
			.sunshine-bar a.btn:hover { background: #9f9f9f; }
			.sunshine-bar img { width: 100%; height: 100%; }
			.sunshine-bar .inner { width: 100%; float: left; }
			.sunshine-bar .column:first-child { position: absolute; right: 0px; top: 0; height: 100%; background-position: center bottom; background-size:cover;  }
			.sunshine-bar .sun-img { display: none; }


			.vc_content { padding-top:20px; }
			 /* node-bar */
			.node-bar { width: 100%; float: left; position: relative; }
			.node-bar .column { width: 60%; float: left; }
			.node-bar .column:last-child { width: 40%; float: left; padding: 70px 89px 65px 90px; }
			.node-bar h2 { margin-bottom: 27px; color: #646464; }
			.node-bar h4 { margin-bottom: 25px; font-size: 22px; color: #646464; line-height: 29px; }
			.node-bar p { font-size: 16px; line-height: 21px; }
			.node-bar ul { margin-left:20px; margin-bottom:10px; }
			.node-bar li { list-style:disc; font-size: 16px; line-height: 26px; }
			.node-bar a.btn { padding: 15px 30px; font-size: 17px; color: #fff; display: inline-block; text-transform: uppercase; letter-spacing: 1px; background: #1c8cc5; }
			.node-bar a.btn:hover { background: #9f9f9f; }
			.node-bar img { width: 100%; height: 100%; }
			.node-bar .inner { width: 100%; float: left; background:#efefef }
			.node-bar .column:first-child { position: absolute; right: 0px; top: 0; height: 100%; background-position: center bottom; background-size:cover;  }
			.node-bar .sun-img { display: none; }
			
			.node-bar-content-right .column:first-child { position: absolute; left: 0px; right:auto; top: 0; height: 100%; background-position: center bottom; background-size:cover;  }
			.node-bar-content-right .column:last-child { width: 40%; float: right; padding: 70px 89px 65px 90px; }

			.page-heading { padding: 22px 0; margin-bottom: 0px; color: #a6e5f6; letter-spacing: 1px; font-size: 29px; text-transform: uppercase; background: #1c8cc5; text-align:center; }
			h5.page-heading { line-height:30px; width:100%; float:left; }

			/* whyus-bar */
			.whyus-bar { width: 100%; float: left; position: relative; background: url(../images/service-bg.jpg); }
			.whyus-bar .left { padding: 60px 0; width: 675px; float: left; }
			.whyus-bar .right { padding: 70px 0; width: 473px; float: right; }
			.whyus-bar h2 { margin-bottom: 10px; color: #fff; }
			.whyus-bar p { color: #fff; font-size: 19px; line-height: 26px; font-weight: 300; }
			.whyus-bar ul { margin-right: 15px; float: left; }
			.whyus-bar ul:last-child { margin-right: 0px; }
			.whyus-bar li { font-size: 18px; color: #fff; font-weight: 300; line-height: 30px; }
			.whyus-bar li span { padding-right: 10px; font-size: 22px; color: #58baec; font-family: 'Pacifico', cursive; }

			/* feature-bar */
			.feature-bar { width: 100%; float: left; position: relative; overflow-x: hidden; background: #000; }
			.feature-bar .column { width: 50%; float: left; min-height: 530px; position: relative; border-right: 1px solid #000; background: url(../images/featured-bg1.png) no-repeat; background-size: cover; }
			.feature-bar .column:last-child {  border-left: 1px solid #000;  border-right: 0; background: url(../images/featured-bg2.png) no-repeat; }
			.feature-bar .column:last-child .text { padding: 30px 85px 30px; }
			.feature-bar .text { padding: 30px 70px 30px; width: 560px; float: left; position: absolute; top: 50%; left: 50%;  transform:translate(-50%,-50%); -webkit-transform:translate(-50%,-50%); -ms-transform:translate(-50%,-50%); background: #fff; }
			.feature-bar h3 { margin-bottom: 32px; font-size: 35px; color: #646464; font-weight: 300; text-align: center; }
			.feature-bar h3 span { font-weight: 500; }
			.feature-bar img { padding-right: 20px; float: left; }
			.feature-bar h4 { margin-bottom: 2px; color: #646464; font-size: 17px; font-weight: 600; }
			.feature-bar p { line-height: 26px; color: #646464; }
			.feature-bar a { padding: 10px 25px; color: #fff; text-transform: uppercase; font-weight: 500; font-size: 16px; display: inline-block; position: absolute; bottom: -17px; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); -o-transform: translateX(-50%); background: #1c8cc5; }
			.feature-bar a:hover { background: #9f9f9f; }
			.feature-bar .column:last-child p { text-align: center; }	
			
			/* testimonial-bar */
			.testimonial-bar { padding: 70px 0; width: 100%; float: left; position: relative; background: url(../images/service-bg.jpg); }		
			.testimonial-bar p.quote { margin-bottom: 3px; text-indent: 35px; color: #fff; font-size: 22px; line-height: 35px; font-weight: 300; background: url(../images/testi-arrow.png) no-repeat left top; }
			.testimonial-bar span { color: #fff; font-size: 22px; font-weight: 500; }
			
		/* footer */
		footer { width: 100%; float: left; position: relative; }
		
			/* footer-bar */
			.footer-bar { padding: 80px 0 0; width: 100%; float: left; background: url(../images/footer-bg.jpg);  }
			.footer-bar .row { padding: 20px 0 15px; width: 100%; float: left; background: #fff; }
			.footer-bar .column { width: 317px; float: left; }
			.footer-bar .column:last-child { width: 380px; }
			.footer-bar .row ul { width: 190px; float: left; position: relative; }
			.footer-bar .swim_girl { position: absolute; right: 145px; }
			.footer-bar .row li { padding-bottom: 5px; text-transform: uppercase; text-transform: uppercase; }
			.footer-bar .row li a { color: #1c8cc5; font-size: 15px; }
			.footer-bar .row li a:hover { text-decoration: underline; } 
			.footer-bar .address { padding: 70px 0 50px; width: 100%; float: left; }
			.footer-bar .address ul { width: 340px; float: left; }
			.footer-bar .address li { padding: 0px 10px 14px 26px; text-transform: uppercase; }
			.footer-bar .address li a {  color: #fff; font-size: 17px; }
			.footer-bar .address li a:hover { text-decoration: underline; }
			.footer-bar .address li:first-child { border-bottom: 2px solid #37bee0; background: url(../images/phone-footer.png) no-repeat left 3px; }
			.footer-bar .address li:last-child { margin-top: 14px; background: url(../images/address-icon.png) no-repeat left 3px; }
			.footer-bar .address li a.mail { font-size: 13.50px; }
			.footer-bar .logo { padding-top: 6px; display: inline-block; }
			
			/* copyright-bar */
			.copyright-bar { padding: 30px 0 25px; width: 100%; float: left; background: #034675; }
			.copyright-bar .left { width: auto; float: left; }
			.copyright-bar .right { width: auto; float: right; }
			.copyright-bar span { color: #fff; font-size: 13px; text-transform: uppercase; letter-spacing: 1px; }
			.copyright-bar span a { color: #fff; }
			.copyright-bar span a:hover { text-decoration: underline; } 
			
			textarea { max-height:100px; }
			.wpcf7-text, textarea { padding:8px; border:1px solid #ccc; width:100% }

			.wpb_text_column h3 { 
				font-size: 24px;
				line-height: 30px;
			}

		
			.wpb_text_column a.btn { padding: 15px 30px; font-size: 17px; color: #fff; display: inline-block; text-transform: uppercase; letter-spacing: 1px; background: #1c8cc5; }
			.wpb_text_column a.btn:hover { background: #9f9f9f; }

			.wpcf7-submit { padding: 15px 30px; font-size: 17px; color: #fff; display: inline-block; text-transform: uppercase; letter-spacing: 1px; background: #1c8cc5; border:0 }

.photo_gallery_row .wpb_single_image { margin-bottom:6px !important; margin-right:6px; }
.photo_gallery_row .wpb_single_image img, .gallery_single_image { width:100%; }