@font-face {
  font-family: 'Continuo';
  src: url("../fonts/Continuo.otf") format("truetype"); }  
 @font-face {
  font-family: 'SourceSansProLight';
  src: url("../fonts/source-sans-pro.light.ttf") format("truetype"); }  
  
html {width: 100%;} 
body {width: 100%; background: #FFF; margin: 0 auto; font-size: 18px; line-height: 1.5; font-family: SourceSansProLight; color: #18435f;}
p {line-height: 1.5; font-family: SourceSansProLight; color: #18435f;}
li {color: #18435f;}
a {text-decoration: none; color: #333;}
a.ext {}
/*a.ext:after {content: "\f08e"; padding-left: 5px; font-family: FontAwesome;}*/
a.email {font-weight: bold;}
a.email:hover, a.email:focus {color: #18435f;}
a.phone { font-weight: bold;}
a.phone:hover, a.phone:focus {color: #18435f;}
/*a.phone:before {color: #002a4e; font-size: 14px; content: "\f095"; padding-left: 5px; padding-right: 5px; font-family: FontAwesome;}*/
a.download {color: #002a4e; text-decoration: none; font-weight: bold;}
a.download:before {content: "\f019"; padding-right: 5px; font-family: FontAwesome;}
a.facebook:before {content: "\f09a"; padding-right: 5px; font-family: FontAwesome;}
a.instagram:before {content: "\f16d"; padding-right: 5px; font-family: FontAwesome;}
a img:hover {/*opacity: 0.8;*/} 

a.button, a.button:hover, a.button:focus, input[type="submit"] {background-color: #18435f; color: #fff !important; display: inline-block; padding: 15px 40px; font-family: SourceSansProLight, Arial; text-decoration: none; font-size: 22px; cursor: pointer; border: 0; font-weight: bold; border-radius: 40px; }
a.button:hover, a.button:focus, input[type="submit"]:hover, input[type="submit"]:focus {background-color: #333;}
span.arrow:after {content: "\f061"; font-family: FontAwesome; margin-left: -30px; color: #FFF;}

.white a.button {background-color: #FFF; color: #18435f !important; text-transform: uppercase;}
.right.white a.button {margin-right: 5px;}

.white a.button:hover, .white a.button:focus {background-color: #18435f; color: #FFF !important;}
 
.left {text-align: left;}
.right {text-align: right;}
.justify {text-align: justify;}
.center {text-align: center;}
.blue {color: #18435f;}
.nomobile {display: block;} 
.mobileonly {display: none;} 

p.icon {text-align:center; margin-top: 30px;}
i.fa-dollar-sign:before {padding-right: 5px; font-size: 30px; color: #18435f;}
i.fa-check:before {padding-right: 5px; font-size: 30px; color: #18435f;}
i.fa-sun:before {padding-right: 5px; font-size: 30px; color: #18435f;}
i.fa-broom:before {padding-right: 5px; font-size: 30px; color: #18435f;}
i.fa-fast-forward:before {padding-right: 5px; font-size: 30px; color: #18435f;}
i.fa-flag-checkered:before {padding-right: 5px; font-size: 30px; color: #18435f;}

div.pool-colours img{width: 100%;}

img {max-width: 100%;}
img.pool-design {max-width: 800px;}
img.right {float: right; padding-left: 10px; max-width: 420px; padding-bottom: 6px;}
img.left {float: left; padding-right: 10px; max-width: 420px; padding-bottom: 6px;}
#clear, .clear {clear: both;}
.printonly, .element-invisible { display: none !important;}

*:focus {/*border: 3px solid #18435f; margin: -3px;*/}

h1, h2, h3, h4, h5, h6,
p.h1, p.h2, p.h3, p.h4, p.h5, p.h6 
{color: #18435f; font-weight: bold; line-height: 110%;}
h1, p.h1 {font-size: 38px; font-family: SourceSansProLight; font-weight: normal;}
h1.feature {font-size: 30px; font-family: SourceSansProLight; font-weight: normal}
h2, p.h2 {font-size: 32px; font-family: SourceSansProLight; font-weight: normal; margin-bottom: 0}
h3, p.h3 {font-size: 26px; font-family: SourceSansProLight; font-weight: normal;}
h4, p.h4 {font-size: 14px; text-transform: uppercase;}

h1 {text-align: center; margin-top: 30px;}

p.error {font-weight: bold; background-color: #18435f; color: #FFF; padding: 5px;}
p.warning {font-weight: bold; background-color: #fdc039; color: #FFF; padding: 5px;}
p.success {font-weight: bold; background-color: limegreen; color: #FFF; padding: 5px;}

div#content a, div#content a:visited {color: #18435f; text-decoration: none; font-weight: bold;}
div#content a:hover, div#content a:focus {color: #1f6196; text-decoration: none; -webkit-transition: all, 0.25s, ease-in-out; -moz-transition: all, 0.25s, ease-in-out; -ms-transition: all, 0.25s, ease-in-out; -o-transition: all, 0.25s, ease-in-out; transition: all, 0.25s, ease-in-out;}

div.one {float: left; width: 8.33333333%; }
div.two {float: left; width: 16.66666667%; }
div.three {float: left; width: 25%; }
div.four {float: left; width: 33.33333333%; }
div.five {float: left; width: 41.66666667%; }
div.six {float: left; width: 50%; }
div.seven {float: left; width: 58.33333333%; }
div.eight {float: left; width: 66.66666667%; }
div.nine {float: left; width: 75%; }
div.ten {float: left; width: 83.33333333%; }
div.eleven {float: left; width: 91.66666667%; }
div.twelve {float: left; width: 100%; }

.padding1 {padding: 1px;}
.padding5 {padding: 5px;}
.padding10 {padding: 10px;}
.padding15 {padding: 15px;}
.padding20 {padding: 20px;}
.padding25 {padding: 25px;}
.padding30 {padding: 30px;}
.padding35 {padding: 35px;}
.padding40 {padding: 40px;}

div.feature-block { min-height: 250px; background-size: cover; background-repeat: no-repeat;}
div.feature-block.white { min-height: 395px; padding-top: 235px;}
div.feature-block p.title { font-size: 48px; margin-bottom: 0; padding-left: 10px; color: #18435f;}
div.feature-block.white p.title { color: #FFF; font-size: 72px; margin-right: 20px;}
div.feature-block div.summary { font-size: 26px;  margin-right: 20px;}
div#slideshow div.feature-block.white div.summary { font-size: 45px; margin-top: -15px;}
div.feature-block.white div.summary p { color: #FFF; margin: 0; letter-spacing: 3px; margin-top: 10px;}
div.feature-block p.buttonlink { font-size: 18px; padding-left: 10px; margin-top: 0;  margin-right: 20px;}
div.feature-block.testimonials p.buttonlink { text-align: center; font-size: 20px; margin-top: 15px;}
div.feature-block.white p.buttonlink { color: #FFF;}

div.feature-block.hero {position: relative;}
div.feature-block.hero div.padding5 {position: absolute; right: 20px; bottom: 20px;}

div.feature-block.testimonials {/*min-height: 450px; background-size: cover; background-repeat: no-repeat; background-position-y: -300px; background-image: url(/images/home-hero1.jpg) !important;*/}
div.feature-block.white.testimonials div.undslider {color: #FFF !important; text-align: center;}
nav.unslider-nav {display: none;}
div.unslider span.previous:before {content: "\f060"; color: #18435f; font-family: FontAwesome; font-size: 42px;}
div.unslider span.next:before {content: "\f061"; color: #18435f; font-family: FontAwesome; font-size: 42px;}
div.unslider p, div.unslider ul { color: #18435f; text-align: center; font-size: 26px; line-height: 30px;}

div.homepage-video {margin-top: 44px; margin-bottom: 44px;}

div#phocagallery-module-ri {margin-top: 5px !important;}
div.image-hover {position: absolute; background: rgba(255, 255, 255, 0.5); width: 80%; overflow: hidden; text-align: center; left: 10%; height: 0; bottom: 15%;}
div.image-hover p {margin: 0; font-size: 20px; color: #000;}

div.mosaic .padding5 {margin-bottom: -5px;}

div#top {width: 100%; /*position: fixed; */background-color: #FFF; z-index: 2; /*box-shadow: -30px -30px 69px 1px #000;*/}
div#logo-wrapper { width: 35%; float: left;}
div#name-wrapper { width: 0%; float: left; display: none;}
div#logo p {margin: 0px; text-align: left;}
div#name p {font-family: Continuo; font-size: 40px; color: #18435f;}
div#logo p img {max-height: 275px;}
div#logo p img.small {max-width: 220px;}
div#body {max-width: 1280px; margin: 0 auto;}

div#phone-wrapper { display: none; z-index:12;}
div#phone p {text-align: center; font-size: 24px; margin: 10px; color: #18435f;}
/*div#phone p a:before {content: "\f095"; padding-right: 10px; font-family: FontAwesome;}*/


div#menu {margin: 0 auto; padding-top: 220px;}

div#menu-toggle {display: none; position: relative; z-index: 99999; float: left; width: 100%;}
span.menu-toggle {background: #FFF; display: block; position: absolute; right: 0; top: -52px; z-index: 99999;}
span.menu-toggle:after {content: "\f0c9"; color: #000; padding: 15px; font-family: FontAwesome; font-size: 32px; cursor: pointer;}


div#menu ul.nav.menu { width: 100%; padding: 0; margin: 0; text-align: right;}
div#menu ul.nav.menu li { display: inline-block; list-style-type: none; position: relative;}
div#menu ul.nav.menu li a, div#menu ul.nav.menu li span.separator {font-size: 32px; line-height: 40px; font-family: SourceSansProLight; font-weight: 0; text-decoration: none; color: #18435f; text-transform: lowercase; padding: 15px; text-transform: capitalize;}
div#menu ul.nav.menu li a:hover, div#menu ul.nav.menu li a:focus {color: #333; border-bottom: 0px solid #333;}
/*div#menu ul.nav.menu li a {color: #FFF; padding: 10px; font-weight: bold; text-decoration: none; font-size: 24px; display: block;}*/
div#menu ul.nav.menu li.active > a {color: #333;}
div#menu ul.nav.menu li.active ul li.active a{color: #333;}
div#menu ul.nav.menu li a:hover {color: #333;}
div#menu ul.nav.menu li a:focus {color: #333;}

div#menu > ul { width: 100%; margin: 0 auto !important;}
div#menu ul.nav.menu { list-style: none; padding: 0; margin: 0;}
/*div#menu ul.nav.menu li.parent > a:after, div#menu ul.nav.menu li.parent > span.separator:after { font-family: FontAwesome; content: "\f0d7"; position: absolute; right: 0px; font-size: 16px;}*/
div#menu ul.nav.menu li a.dropdown:after {top: 13px; }
div#menu ul.nav.menu li ul {height: 0; list-style: none; margin: 0; overflow: hidden; padding: 0; border-radius: 0; position: absolute; z-index: 9999999; text-align: left;margin-top: 14px; margin-left: 7px; min-width: 120px;}

div#menu ul.nav.menu li ul.show-menu, div#menu ul.nav.menu li:hover ul, div#menu ul.nav.menu li:focus ul, div#menu ul.nav.menu li:active ul {background: rgba(255,255,255,1); -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.5); box-shadow: 0 3px 6px rgba(0, 0, 0, 0.25); height: auto; max-width: 200px;}
div#menu ul.nav.menu li ul li { float: none; border: none; width: 100%; background: #FFF;}
div#menu ul.nav.menu li ul li { float: none; border: none; width: 100%; background: #FFF; font-size: 16px;}
div#menu ul.nav.menu li ul li:last-child { border-right: none; }
div#menu ul.nav.menu li ul li a:hover, div#menu ul.nav.menu li ul li span.separator:hover, div#menu ul.nav.menu li ul li a:focus, div#menu ul.nav.menu li ul li span.separator:focus { color: #18435f; border-bottom: 0;}
div#menu ul.nav.menu li ul li a { padding: 0; padding-left: 10px; font-size: 24px; font-family: SourceSansProLight; text-transform: capitalize; }
div#menu ul.nav.menu li a:focus + ul, div#menu ul.nav.menu li span.separator:focus + ul{height: auto; z-index: 999999;}
div#menu ul.nav.menu li span.text {padding: 10px 30px 10px 15px; display: block;}

div#main-menu-toggle-wrapper {display: none;}
span.menu-toggle-icon {display: block; line-height: 40px; height: 40px; cursor: pointer; background: #777; font-size: 20px; color: #FFF; text-align: center;}
span.menu-toggle-icon:after { font-family: FontAwesome; content: "\f0c9"; position: absolute; right: 10px; font-size: 30px; color: #FFF;}


div#home-first { padding-top: 20px; padding-bottom: 20px;}
div#home-first div.feature { background: #000; color: #FFF; min-height: 400px; position: relative; background-size: cover;}
div#home-first div.feature.commercial { background-image: url(/images/commercial.jpg); }
div#home-first div.feature.residential { background-image: url(/images/residential.jpg); }
div#home-first div.feature.general { background-image: url(/images/general.jpg); }

div#home-first div.feature a {position: absolute; text-transform: uppercase; font-family: Continuo; top: 50%; line-height: 36px; left: 10%; right: 10%; background: rgba(255,255,255,0.7); border: 3px solid; font-size: 32px; transition: .3s all ease-in-out; text-align: center; margin: -25px 0 0; padding: 12px;}
div#home-first div.feature a:hover, div#home-first div.feature a:focus, a.mod-articles-category-title:hover, a.mod-articles-category-title:focus {background: rgba(255,255,255,1.0);}

a.mod-articles-category-title {position: absolute; text-transform: uppercase; font-family: Continuo; bottom: 0; line-height: 26px; left: 0; background: rgba(255,255,255,0.7); font-size: 18px; transition: .3s all ease-in-out; text-align: left; margin: 0; padding: 12px; width: 100%;
}

div#home-second { padding-top: 20px; padding-bottom: 20px; position: relative; background-size: cover; background-image: url(/images/pool.jpg);}

div#home-second div.feature { padding: 80px; background: #FFF; color: #000; min-height: 370px; position: relative; text-align: center; border: 3px solid #000;}
div#home-second div.feature p.heading { text-transform: uppercase; font-family: Continuo; font-size: 32px; margin-top: 0; line-height: normal;}
div#home-second div.feature p.heading:after { display: block; content: ""; width: 80px; border-bottom: 3px solid #000; margin: 20px auto;}

img.margin-top {margin-top: 58px;}

.article-info, div.icons {display: none;}

iframe.youtube-video {width: 100%; max-width: 640px; min-height: 360px;}
iframe.youtube-video-tile {width: 100%; min-height: 260px;}
.highslide img {width: 100% !important;}
div.contact-form-wrapper input[type="text"], div.contact-form-wrapper textarea, div.contact-form-wrapper select {display: block; height: 40px; width: 93%; background-color: #eee; border: 1px solid #eee; border-radius: 0; color: #333; line-height: 20px; padding: 0px 12px; margin-bottom: 5px; margin-top: 5px; line-height: 110%; font-size: 16px; font-family: Arial;}

div.contact-form-wrapper select {width: 97%; color: #666; margin-bottom: 15px;}
div.contact-form-wrapper input#sourceother {display: none;}

div.contact-form-wrapper textarea {padding-top: 16px; height: 80px;}
.error {font-weight: bold; color: #C03;}
input.error {border: 1px solid #C03 !important;}

/*############### FOOTER ##################*/
div#footer-wrapper {width: 100%; background: #18435f; color: #FFF;}
div#footer-wrapper p {color: #FFF;}
div#footer-wrapper a {color: #FFF; font-weight: bold;}
div#footer-wrapper a:hover {text-decoration: underline;}
div#footer-wrapper a.ext:after {content: "\f08e"; padding-left: 5px; font-family: FontAwesome;}
div#footer-content-wrapper {width: 100%; padding-top: 10px; padding-bottom: 10px;}
div#footer-content-wrapper-wrapper {max-width: 1280px; margin: 0 auto; position: relative; text-align: center;}
span.spacer {padding-left: 10px; padding-right: 10px;}
span.spacer:before {content: "|";}

/*############### FOOTER ##################*/

@media screen and (max-width: 1751px){
	
	div#logo-wrapper {width: 30%;}
	div#menu-wrapper {width: 70%;}
	div#name p {font-size: 28px; padding-top: 7px;}
}

@media screen and (max-width: 1621px){
	
}

@media screen and (max-width: 1521px){
	
	div#logo-wrapper {width: 100%; text-align: center;}
	div#logo p {text-align: center;}
	div#logo p img {max-height: 160px;}
	div#name-wrapper {width: 100%; text-align: center;}
	div#name p {margin: 0;}
	div#menu-wrapper {width: 100%;}
	div#menu { padding: 15px;}
	div#menu ul.nav.menu {text-align: center;}
	div.feature-block.testimonials {background-position-y: -200px;}
}

@media screen and (max-width: 1321px){
	
	div.feature-block.testimonials {background-position-y: 0px;}
}

@media screen and (max-width: 1061px){
	
	div#menu ul.nav.menu li a, div#menu ul.nav.menu li span.separator {font-size: 20px;}
}

@media screen and (max-width: 981px){
	
}

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

	.nomobile {display: none;}
	.mobileonly {display: block;}
	
	div.image-hover {display: none;}
	div.image-hover p {display: none;}
	
	img.margin-top {margin-top: -40px;}
	img.pool-design {max-width: 100%;}
	ul.pool-colour {margin:0;}
	div.one, div.two, div.three, div.four, div.five, div.six, div.seven, div.eight, div.nine, div.ten, div.eleven, div.twelve {width: 100% !important; min-height: auto;}
	
	div.feature-block.hero div.padding5 { position: relative; right: 0; bottom: 0;}
	
	div.pool-colours div.two {width: 50% !important;}
	
	div#top {position: relative;}
	div#logo-wrapper {width: 100%;}
	div#logo {width: 100%;}
	div#logo p {padding-bottom: 0px; text-align: center;}
	div#logo p  img{max-height: 150px;}
	
	div#name-wrapper {width: 100%;}
	div#name p {font-size: 24px; text-align: center; margin-top: 0; margin-bottom: 12px;}
	
	div#phone-wrapper { display: block; float: left; width: 100%;}
	div#home-first div.feature {min-height: 220px;}
	div#home-first div.feature a {font-size: 22px;}
	
	div#menu-toggle {display: block;}
	div#menu-wrapper {background: transparent; height: auto; width: 100%; float: left;}
	div#menu {background: #FFF; padding-bottom: 0px; padding-top: 10px;}
	div#menu ul.nav.menu { display: none; width: 100%; padding: 0; margin: 0; text-align: center;}
	div#menu ul.nav.menu li { display: block; list-style-type: none; position: relative;}
	div#menu ul.nav.menu li a, div#menu ul.nav.menu li span.separator {font-size: 26px; line-height: 44px; font-weight: 0; text-decoration: none; color: #000; text-transform: uppercase; padding: 15px;}
	div#menu ul.nav.menu li a:hover, div#menu ul.nav.menu li a:focus {color: #AAA;}
	div#menu ul.nav.menu li.active > a{color: #AAA;}
	div#menu ul.nav.menu li.active ul li.active a{color: #AAA;}
	div#menu ul.nav.menu li a:hover {color: #18435f;}
	div#menu ul.nav.menu li a:focus {color: #18435f;}
	
	div#menu ul.nav.menu > li.parent > a:after {content: "\f107"; padding-left: 5px; font-family: FontAwesome;}
	div#menu ul.nav.menu li ul {height: auto;}
	
	div#menu ul.nav.menu li ul {width: 100%; max-width: 100% !important; position: relative; margin: 0; text-align: center; box-shadow: none !important;}
	
	div#home-second div.feature {padding: 20px;}
	div#home-second div.feature p.heading {font-size: 22px;}
	
	div.feature-block p.title {margin: 0; font-size: 32px; padding-left: 0; margin-top: 10px; margin-bottom: -10px;}
	div.feature-block.white p.title {font-size: 28px; margin-top: 20px; text-align: center; margin-right: 0;}
	.right.white a.button {margin-right: 0;}
	div.feature-block div.summary, div.feature-block p.buttonlink {margin-right: 0; font-size: 20px;}
	div.feature-block.white div.summary, div.feature-block.white p.buttonlink {margin-right: 0px; text-align: center;}
	
	.unslider-arrow {display: none;}
	
	iframe.youtube-video {min-height: 199px;}
	
	div.feature-block.white {min-height: 235px;}
	div.feature-block.white div.summary p {font-size: 20.5px;}
	div.feature-block.white div.summary p.right {text-align: center; margin-top: 15px; letter-spacing: 1px;}
	div.homepage-video {margin-top: 0px; margin-bottom: 0px;}
	
	a.button, a.button:hover, a.button:focus, input[type="submit"] {font-size: 18px;}
	
	div.feature-block.white {padding-top: 45px;}
	
	div.feature-block.testimonials {background-position-y: 0;}
	div.unslider p, div.unslider ul {font-size: 20px; line-height: 20px;}
	
	p.icon {display: none;}
	
	h2.cost:before {content: "\f155"; font-family: FontAwesome; margin-right: 15px; color: #18435f;}
	h2.warranty:before {content: "\f00c"; font-family: FontAwesome; margin-right: 15px; color: #18435f;}
	h2.warmer:before {content: "\f185"; font-family: FontAwesome; margin-right: 15px; color: #18435f;}
	h2.maintenance:before {content: "\f1fc"; font-family: FontAwesome; margin-right: 15px; color: #18435f;}
	h2.install:before {content: "\f050"; font-family: FontAwesome; margin-right: 15px; color: #18435f;}
	h2.finish:before {content: "\f11e"; font-family: FontAwesome; margin-right: 15px; color: #18435f;}
	
	img.right, img.left {padding: 0; max-width: 100%; padding-bottom: 10px;}
	
	div.testimonials h2 {font-size: 26px;}
	div.contact-form-form textarea {width: 92%;}
	div.services div.four div.padding10 {border: 0; min-height: 1px !important;}
	
	span.spacer {display: block; height: 0px; content: "";}
	span.spacer:before {content: "";}
	
	input {-webkit-appearance: none !important;}
	div.contact-form-wrapper select {width: 100%;}
	
	div#footer-wrapper {font-size: 16px;}
	div.testimonials div.padding40 {padding: 0;}
	div.testimonials div.padding20 {padding: 10px;}
	
}

@media screen and (max-device-width: 681px){
	
}

@media screen and (max-device-width: 481px){

}

@media screen and (max-device-width: 415px){ /* iPhone 6 Plus Portrait -  414x736 */

}

@media screen and (max-device-width: 376px){ /* iPhone 6 Portrait -  375x667 */

}

@media screen and (max-device-width: 321px){ /* iPhone 5 Portrait - 320x568 */


}