/*
Theme Name: CBS
Theme URI: http://www.visionfactor.com.au/
Author: Nicole Paton
Author URI: http://www.visionfactor.com.au/
Description: <strong>UPDATE</strong> - 4.0+ is here, completely overhauled, yet again. As always, <a href="http://tidythemes.com/concept/#upgrading">use caution when upgrading</a> (tidythemes.com/concept/#upgrading) and <a href="http://tidythemes.com/concept/">learn the TidyThemes concept</a> (tidythemes.com/concept). &nbsp; &rarr; <em><strong>CAUTION</strong>: If you're child theming or have clients that are child theming on top of CBS (not the recommended use), please do not blindly upgrade to newer versions.</em> &nbsp; &rarr; <strong>DESCRIPTION</strong>: CBS is the definitive WordPress HTML5 boilerplate starter theme. We've carefully constructed the most clean and minimalist theme available anywhere for designers/developers to use as a base/foundation to build websites for clients or to build completely custom themes from scratch to release faster. Clean, semi-minified, unformatted and valid code, SEO-friendly, no programmer comments, standardized and as white label as possible and most importantly, CSS reset for cross-browser-compatability and no intrusive visual CSS styles added whatsoever. A perfect skeleton theme that blows any others like it (the subsequent underscores.me for example) completely out of the water, as they're simply too overcomplicated for what people really want in this kind of theme. Now comes with jQuery enqueued and ready to go. &nbsp; &rarr; <strong>SUPPORT</strong>: Please use the <a href="http://tidythemes.com/forum/">official support forum</a> (tidythemes.com/forum). Comments and suggestions for improving CBS, please see "<a href="http://tidythemes.com/tidythemes-sucks/">TidyThemes Sucks!</a>" (tidythemes.com/tidythemes-sucks). Just getting started? <a href="http://tidythemes.com/want-to-learn-css/">Want to learn CSS?</a> (tidythemes.com/want-to-learn-css) &nbsp; &rarr; <strong>WHAT'S NEW?</strong>: We stripped down as much custom, extraneous, superfluous junk code as we could and greatly improved the HTML5 structure. <a href="http://make.wordpress.org/themes/author/chipbennett/">Chip Bennett</a> (make.wordpress.org/themes/author/chipbennett), a highly experienced programmer and official WordPress administrator, worked closely with us to audit the theme code for quality. <a href="http://themes.trac.wordpress.org/changeset?old_path=/cbs/3.3&new_path=/cbs/4.0">See</a> (themes.trac.wordpress.org/changeset?old_path=/cbs/3.3&new_path=/cbs/4.0) just how much we've revamped things. Last, but not least, CBS has now been <a href="https://github.com/tidythemes/cbs">opened up on GitHub</a> (github.com/tidythemes/cbs) if anyone would like to make suggested code additions/improvements. Thank you for using CBS.
Version: 4.0.4
Tags: one-column, two-columns, custom-menu, featured-images, microformats, sticky-post, threaded-comments, translation-ready
Text Domain: cbs

CBS WordPress Theme © 2017 Vision Factor Design, Creative Pixel and CBS
*/

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{font-size:100%;font:inherit;padding:0;border:0;margin:0;vertical-align:baseline}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}table{border-collapse:collapse;border-spacing:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}.clear{clear:both}
.sticky{}.bypostauthor{}.wp-caption{}.wp-caption-text{}.gallery-caption{}.alignright{}.alignleft{}.aligncenter{}.screen-reader-text{clip:rect(1px, 1px, 1px, 1px);position:absolute !important}

.container{
	width: 100%;
	max-width: 1176px;
	margin: 0 auto;
}

.clear{
	clear: both;
	display: block;
}

.selfclear:after{
  content: "";
  display: table;
  clear: both;
}

textarea:focus, input:focus, *:focus, button:focus{
    outline: none;
}

#content{
	background-color: #fff;
	width: 100%;
	max-width: 1176px;
	margin: auto;
	padding: 30px 4% 40px 4%;
	box-sizing: border-box;
}

#content.padright article{
	width: calc(100% - 340px);
}

#footer .container{
	width: 100%;
	max-width: 1176px;
	margin: auto;
	padding: 30px 4% 40px 4%;
	box-sizing: border-box;
}


/* start editor styles */

body{
	font-family: arial, helvetica, sans-serif;
	font-size: 10pt;
	line-height: 1.25em;
	color: #002e6e;
}

a{
	color: #0371b5;
	font-weight: bold;
	text-decoration: none;
}

a:hover{
	color: #d2422c;
}

p{
	margin: 0 0 15px 0;
}

h1, h2, h3, h4, h5{
	font-weight: bold;
	color: #002e6e;
	margin: 0 0 15px 0;
	line-height: 1.2em;
}

h1{
	font-size: 20pt;
}

h2{
	font-size: 16pt;
}

h3{
	font-size: 14pt;
}


h4{
	font-size: 12pt;
}

h5{
	font-size: 10pt;
}

img{
	max-width: 100%;
	height: auto; 
}

ul{
	list-style-type: disc;
	margin: 0 0 18px 20px;
}

ul li{
	margin-bottom: 8px;
}

ol{
	list-style-type: decimal;
	margin: 0 0 18px 20px;
}

ol li{
	margin-bottom: 8px;
}

strong{
	font-weight: bold;
}

em{
	font-style: italic;
}

table{
	border-top: solid 1px #ccc;
	border-right: solid 1px #ccc;
	margin-bottom: 18px;
}

table td, table th{
	border-bottom: solid 1px #ccc;
	border-left: solid 1px #ccc;
	padding: 5px;
}

 table th{
 	background-color: #77bc43;
 	font-weight: bold;
 	color: #fff;
 }

 .alignleft{
 	float: left;
 	margin: 0 15px 10px 0;
 }

 .alignright{
	float: right;
 	margin: 0 0 10px 15px;
 }

 /* end editor styles */


 /* start sticky footer */

html, body {
  height: 100%;
}
#wrapper {
  min-height: 100%;
  margin-bottom: -282px; 
  background-image: url(images/wave-bg.jpg);
  background-position: bottom;
}
#wrapper:after {
  content: "";
  display: block;
}
#footer, #wrapper:after {
  height: 282px; 
}
#footer {
  background: #3f8fcd;
  color: #fff;
  padding: 15px 0;
  font-size: 10pt;
  box-sizing: border-box;
}

/* end sticky footer */

#footer{
	line-height: 1.2em !important;
}

#footer h5{
	color: #fff;
	font-weight: normal;
	font-size: 12pt;
}

#footer a{
	color: #fff;
	font-weight: normal;
	text-decoration: none;
}

#footer a:hover{
	text-decoration: underline;
}


#contactdetails{
	float: right;
	width: 32.5%;
	min-width: 200px;
	padding: 30px 0 20px 0;
}

.menu-footer-menu-container{
	display: inline-block;
	vertical-align: bottom;
}

#menu-footer-menu{
	list-style-type: none;
	margin: 0;
	padding: 0;
}

#menu-footer-menu li{
	 float: left;
	 margin: 0;
	padding: 0;
}


.cycle-slideshow{
	max-height: 390px;
	overflow: hidden;
}

.bannerwrap{
	position: relative;
	max-width: 100%;
	width: 100%;
	height: auto;
}

.bannerwrap img{
	display: block;
}

.captionwrap{
	position: absolute;
	width: 100%;
	top: 40%;
	font-size: 13pt;
}

.captionwrapinner{
	width: 96%;
	max-width: 1080px;
	margin: 0 auto;
}

.bannertitle{
	padding: 12px 20px;
	background-color: rgba(255, 255, 255, 0.65);
	float: left;
}

.bannercaption{
	padding: 12px 20px;
	color: #fff;
	background-color: rgba(35, 31, 32, 0.75);
	float: left;
}

.pager{
	width: 100%;
	height: 4px;
	background-color: #cfe3f2;
}

.pager span{
	display: block;
	float: left;
	width: 25%;
	height: 100%;
	text-indent: 1000px;
	overflow: hidden;
}

.pager span.cycle-pager-active{
	background-color: #87b9e0;
}

.viewrange{
	box-sizing: border-box;
	height: 86px;
	padding: 3% 0 3% 3%;
	background-color: #cfe3f2;
	float: left;
	width: calc(31% - 43px);
	font-size: 13pt;
	margin-bottom: 20px;
}

.rangeimgs{
	float: right;
	width: 65.5%;
	max-width: 686px;
	margin: 0 0 20px 0;
	display: flex;
	flex-flow: row;
	justify-content: space-between;
}




.rangeimg{
	display: block;
	margin-right: 3%;
}

.rangeimg:last-child{
	margin-right: 0;
}

.arrow-right {
  width: 0; 
  height: 0; 
  border-top: 43px solid transparent;
  border-bottom: 43px solid transparent;
  border-left: 43px solid #cfe3f2;
  float: left;
  margin-right: 3.5%;
}

.panel {
    display: block;
    float: left;
    width: 31%;
    margin-right: 3.5%;
    margin-bottom: 20px;
    background-color: #f1f2f2;
    box-sizing: border-box;
    text-decoration: none;
}

.panel:last-child{
	margin-right: 0;
}

.panel h2{
	margin-bottom: 0;
}

.panel h2 a{
	display: block;
	background-color: #00498f;
	color: #fff;
	letter-spacing: 2px;
	text-align: center;
	line-height: 20px;
	padding: 10px;
}

.panel img{
	display: block;
}


/* start suckerfish */

#menu{
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#d9e9f5+68,cedde8+100 */
	background: #d9e9f5; /* Old browsers */
	background: -moz-linear-gradient(top, #d9e9f5 68%, #cedde8 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, #d9e9f5 68%,#cedde8 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #d9e9f5 68%,#cedde8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d9e9f5', endColorstr='#cedde8',GradientType=0 ); /* IE6-9 */
}

#menu ul{
	float: left;
	list-style-type: none;
	margin: 0;
	padding: 0 0 0 0;
	}

#menu ul li{
	float: left;
	padding: 8px 0;
	margin: 0;
}

#menu ul li a{
	font-size: 12pt;
	font-weight: normal;
	display: block;
	padding: 2px 22px;
	line-height: 20px;
	color: #002e6e;
	text-decoration: none;
	letter-spacing: 2px;
	border-right: solid 1px #002e6e;
	}

#menu ul li a:hover{
	text-decoration: none;
}	

#menu .menu-main-menu-container > ul > li:hover, #menu .menu-main-menu-container > ul > li.current_page_item, #menu .menu-main-menu-container > ul > li.current_page_parent, #menu .menu-main-menu-container > ul > li.current_page_ancestor{
	background-color: #a8cae7;
}	

#menu ul li ul {
	position: absolute;
	width: 300px;
	left: -999em;
	padding: 0;
	background: none;
	z-index: 999;
	margin: 0;
	background: none;
	padding: 8px 0 0 0;
}

#menu li:hover ul {
	left: auto;
	margin: 0;
}

#menu li ul li{
	margin: 0;
	padding:0;
	float: none;
	background-color: #fff;
}

#menu li ul a{
	display: block;
	padding: 8px 22px;
	text-transform: none;
	font-size: 10pt;
	line-height: 16px;
	border-right: none;
	letter-spacing: normal;
}


#menu li ul a:hover{
	background-color: #d9e9f5;
}

#menu li:hover ul ul {
	left: -999em;
}

#menu li li:hover ul {
	left: auto;
	margin-left: 300px;
	margin-top: -32px;
}

#menu ul li ul ul{
	padding-top: 0;
}

/* end suckerfish */

#header{
	background-image: url(images/header_bg.jpg);
	background-repeat: no-repeat;
	background-position: top;
	height: 196px;
}

.logo{
	display: block;
	float: left;
	padding: 36px 40px;
}

.calltoaction, 
.calltoaction a{
	color: #fff;
	font-size: 14pt;
	line-height: 25px;
	float: right;
	width: 40%;
	padding-top: 48px;
	letter-spacing: 2px;
}

.calltoaction a{
	float: none;
	display: inline;
	font-weight: normal;
}

.calltoaction img{
	vertical-align: middle;
}

#searchsubmit{
	display: none;
}

form.searchform{
	display: inline-block;
	margin-left: 20px;
}

form.searchform input[type="text"]{
	border-radius: 12px;
	height: 24px;
	box-sizing: border-box;
	border: none;
	color: #3f8fcd;
	padding: 3px 10px;
	line-height: 18px;
	width: 252px;
	background-image: url(images/search-placeholder.png);
	background-position: center center;
	background-repeat: no-repeat;
}

form.searchform input[type="text"]:focus{
	background: none;
	background-color: #fff;
	outline: none;
}

body.blog #content{
	float: left;
	width: 73%;
	padding: 3%;
	box-sizing: border-box;
}

body.blog #sidebar{
	float: left;
	width: 26%;
	margin-left: 1%;
	margin-right: 0;
	padding: 3%;
	box-sizing: border-box;
	background-color: #fff;
}

.xoxo{
	margin: 0;
}

body.blog #sidebar ul{
	list-style-type: none;
}


.gform_wrapper{
	padding: 20px 3.5%;
	background-color: #d9e9f5;
	margin-top: 0;
	box-sizing: border-box;
}

#gform_wrapper_1{
	float: right;
	width: calc(100% - 275px);
}

.contact .entry-content{
	float: left;
}

.gform_wrapper .gform_footer input.button, .gform_wrapper .gform_footer input[type=submit], .gform_wrapper .gform_page_footer input.button, .gform_wrapper .gform_page_footer input[type=submit]{
	background-color: #002e6e;
	color: #fff;
	padding: 10px 25px;
	line-height: 16px;
	border: none;
	border-radius: 18px;
	cursor: pointer;
}

body .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), .gform_wrapper textarea.medium{
	border: none;
	border-radius: 15px;
	padding: 6px 10px;
}

.gform_wrapper .top_label .gfield_label{
	font-weight: normal;
}

body .gform_wrapper .top_label div.ginput_container{
	margin-top: 6px;
}

.gform_wrapper .gform_footer{
	margin-top: 0;
	padding-top: 0;
}

#field_1_1{
	float: left;
	width: 50%;
}

#field_1_2{
	float: left;
	width: 50%;
}

.gform_wrapper ul li#field_1_1, .gform_wrapper ul li#field_1_2{
	clear: none;
}

#field_1_3{
	padding-top: 6px;
}

#field_1_3:before{
	content: "";
  display: table;
  clear: both;
}

body.blog article{
	margin-bottom: 30px;
}

article.post h2.entry-title{
	margin-bottom: 3px;
}

.entry-meta{
	margin-bottom: 10px;
}

.menubannerwrap{
	float: left;
	width: calc(100% - 340px);
	height: 390px;
	background-color: #fff;
}

#side-menu{
	float: right;
	background-color: #fff;
	width: 340px;
	height: 390px;
	padding: 10px 0;
	box-sizing: border-box;
}

#side-menu ul{
	list-style-type: none;
	margin: 0;
	padding: 0;
}

#side-menu ul li{
	margin: 0;
}

#side-menu a{
	display: none;
	font-weight: normal;
	padding: 8px 22px;
}

#side-menu div > ul > li > ul{
	padding: 0;
}


#side-menu div > ul > li.current-menu-item > ul > li > a, #side-menu div > ul > li.current-menu-item > ul > li > ul > li > a, #side-menu div > ul > li.current-menu-parent > ul > li > a, #side-menu div > ul > li.current-menu-ancestor > ul > li > a, #side-menu div > ul > li.current-menu-ancestor > ul li ul li > a{
	display: block;
}

#side-menu ul ul li.menu-item-has-children > a:after{
	content: '\00a0\00a0\002b';
}

#side-menu ul ul li.menu-item-has-children ul{
	display: none;
}

#side-menu ul ul li.current-menu-item.menu-item-has-children, #side-menu ul ul li.current-menu-ancestor.menu-item-has-children{
	background-color: #d9e9f5;
}

#side-menu ul ul li.current-menu-item.menu-item-has-children ul, #side-menu ul ul li.current-menu-ancestor.menu-item-has-children ul{
	display: block;
}

#side-menu ul ul li.menu-item-has-children li a:before{
	content: '\2013\00a0';
}

#side-menu ul ul li.menu-item-has-children li {
	margin-bottom: 0;
}


@media (max-width: 1099px){
	#header{
		background-position: -1050px 0;
	}

	#content.padright article{
		float: none;
		clear: both;
		width: 100%;
		height: auto;
		box-sizing: border-box;
	}
}

@media (max-width: 799px){
	.viewrange, .rangeimgs, #contactdetails, .logo, .calltoaction, .captionwrapinner, .bannertitle, .bannercaption, #field_1_1, #field_1_2, #gform_wrapper_1, .contact .entry-content, body.blog #sidebar, body.blog #content, .menubannerwrap{
		float: none;
		clear: both;
		width: 100%;
		height: auto;
		box-sizing: border-box;
	}

	body.blog #sidebar{
		margin-left: 0;
	}

	#header{
		height: auto;
		background-color: #00498f;
	}

	.calltoaction{
		padding: 3%;
		text-align: center;
	}

	form.searchform{
		display: block;
		margin: 6px 0 0 0;
		clear: both;
		float: none;
	}

	.viewrange{
		padding: 3%;
		text-align: center;
	}

	.panel, .panel:last-child{
		float: none;
		clear: both;
		margin: 0 auto 30px auto;
		width: 100%;
		max-width: 345px;
	}

	.arrow-right{
		display: none;
	}

	.menutoggle {
	    width: 100%;
	    height: 36px;
	    background-color: #d9e9f5;
	    border-bottom: solid 1px #002e6e;
	    background-image: url(images/hamburger-navy.png);
	    background-position: center center;
	    background-size: 32px 32px;
	    background-repeat: no-repeat;
	    cursor: pointer;
	    margin: 0 0 0 0;
	}

	#menu{
		background-color: #d9e9f5;
		margin: 0;
		padding: 0;
		clear: both;
	}

	#menu ul{
		display: none;
		margin: 0;
		float: none;
	}

	#menu ul:after{
		visibility: hidden;
	    display: block;
	    font-size: 0;
	    content: " ";
	    clear: both;
	    height: 0;
	}

	#menu ul li {
	    float: none;
	    margin: 0;
	}

	#menu ul li {
	    border-bottom: solid 1px #002e6e;
	    padding: 0;
	}

	#menu > div > ul > li.current-menu-item{
		background-color: #d9e9f5;
	}

	#menu ul li a{
		display: block;
		padding: 10px 22px;
		border-right: none;
	}

	#menu ul li a:hover{
		background-color: #fff;
	}


	#menu ul li ul, #menu ul li ul ul{
		left: 0;
		position: static;
		display: none;
		width: 100%;
		background-color: #e7f1f7;
		padding: 0;
	}

	#menu ul li.current-menu-ancestor ul, #menu ul li.current-menu-parent ul, #menu ul li.current-menu-item ul, #menu ul li.current-menu-ancestor ul ul, #menu ul li.current-menu-parent ul ul, #menu ul li.current-menu-item ul ul{
		display: block;
	} 

	#menu ul li ul ul li{
		padding-left: 20px;
	}

	#menu ul li ul ul li a{
		font-size: 10pt;
		padding-top: 2px;
		padding-bottom: 2px;
	}

	#menu li li:hover ul{
		margin: 0;
	}

	#menu li li:last-child{
		padding-bottom: 8px;
	}

	#menu ul li ul li{
		border-bottom: none;
	}

	#menu ul li ul a{
		padding: 5px 16px 5px 26px;
	}

	.captionwrap{
		position: static;
	}

	#field_1_3{
		padding-top: 0;
	}

	#side-menu{
		display: none;
	}
}