/*
Theme Name: Surf Pacific Standard Responsive
Theme URI: http://www.surfpacific.com
Description: A responsive WordPress theme designed and built by Surf Pacific.
Author: Surf Pacific
Author URI: http://www.surfpacific.com
Version: 1.1
*/

/*------------------------------------*\
    CONTENTS
\*------------------------------------*/

/*

1. BASE.........Reset and default styles
2. LAYOUT.......Main and unique elements
3. MODULE............Reusable components
4. STATE..................Current states
5. THEME............Branding and colours

*/

/*------------------------------------*\
    1. $BASE
\*------------------------------------*/

html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, capt, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

* {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;	
}

ul, ol { list-style: none; }

body {
    background: #fff;
    font: normal 100%/1.618em 'Open Sans', Arial, Helvetica, sans-serif;
    color: #4b4b4b;
}

/* Give elements the same bottom margin to create consistent vertical rhythm */

p, ul, ol, blockquote, table, hr, iframe, .grid, .cta, .message, .button, .banner, .content, .has-mb { margin-bottom: 1.618em; } 

/*------------------------------------*\
    $TYPOGRAPHY
\*------------------------------------*/

h1, h2, h3, h4, h5, h6 { 
	font-weight: 700;
	color: #5a9ca5; 
}

h1, h2, h3, h4, h5, h6, .zag, .nav-primary, .nav-touch, .button, .feature, .banner { 
	font-family: 'Zag W90', Arial, Helvetica, sans-serif; 
	letter-spacing: 1px;
}	

.open-sans, .area-heading, .list-area-heading { font-family: 'Open Sans', Arial, Helvetica, sans-serif; }

h1, .alpha {
    font-size: 2.125em; /* 34px */
    line-height: 1.235em; /* 42px */
	margin-bottom: 0.618em; /* 21px */
}

h2, .beta {
    font-size: 1.625em; /* 26px */
    line-height: 1.308em; /* 34px*/
	margin-bottom: 0.808em; /* 21px*/
}

h3, .gamma {
    font-size: 1.25em; /* 20px*/
    line-height: 1.4em; /* 28px*/
	margin-bottom: 1.050em; /* 21px*/
}

h4, .delta {
    font-size: 1.125em; /* 18px*/
    line-height: 1.444em; /* 26px*/
	margin-bottom: 1.167em; /* 21px*/
}

h5, .epsilon {
	font-size: 1em; /* 16px*/
    line-height: 1.5em; /* 24px*/
	margin-bottom: 1.313em; /* 21px*/
}

h6, .zeta {
	font-size: 0.875em; /* 14px*/
	line-height: 1.571em; /* 22px*/
	margin-bottom: 1.5em; /* 21px*/
}

small, .small {
    font-size: 0.875em;
    line-height: 1.4em;
}

/*------------------------------------*\
    $LINKS
\*------------------------------------*/

a:link, a:visited {
    text-decoration: none;
    color: #42c3d3;
    font-weight: bold;
	-webkit-transition: all .25s ease-in-out;
       -moz-transition: all .25s ease-in-out;
        -ms-transition: all .25s ease-in-out;
         -o-transition: all .25s ease-in-out;
            transition: all .25s ease-in-out;
}

a:hover {
    color: #316b8c;
    text-decoration: underline;
    outline: none;
}

a:focus, a:active { outline: none }

a.no-td:hover { text-decoration: none; }

/*------------------------------------*\
    $BUTTONS
\*------------------------------------*/

a.button, button, input[type="submit"] {
	font-size: 1.375em;
    line-height: 1em;
    padding: 0.636em 1.818em;
    color: #fff;
	letter-spacing: 2px;
    background-color: #42c3d3;
	border: 2px solid #fff;
	text-transform: uppercase;
	-webkit-border-radius: 8px;
	   -moz-border-radius: 8px;
	        border-radius: 8px;
}

a.button {
    display: inline-block;
    zoom: 1;
    *display: inline;    
}

a.button:hover, button:hover, input[type="submit"]:hover {
    text-decoration: none;
    color: #fff;
    background-color: #316b8c;
}

a.button-alt {
	color: #fff;
	background-color: #316b8c;
}

a.button-alt:hover {
	color: #fff;
	background-color: #42c3d3;
}

a.button-outline {
	color: #316b8c;
	border-color: #316b8c;
	background-color: transparent;
}

a.button-outline:hover {
	background-color: #316b8c;
	color: #fff;
	border-color: #316b8c;
}

a.button-outline-white {
	color: #fff;
	border-color: #fff;
	background-color: transparent;
}

a.button-outline-white:hover {
	background-color: #316b8c;
	color: #fff;
	border-color: #fff;
}

a.button-full {
	width: 100%;
	display: block;
	text-align: center;
	padding-left: 0;
	padding-right: 0;
}

a.button-cta {
	font-size: 2em;
	font-weight: bold;
	margin-bottom: 0.469em;
}

.button + .button { margin-left: 0.75em; }

/*------------------------------------*\
    $FORMS
\*------------------------------------*/

input, select, textarea, button {
    font-family: inherit;
	font-size: inherit; 
    line-height: 1em;
    border: 1px solid #ddd;
	padding: 0.188em 0.313em; /* 3px 5px */
}

input[type="submit"], button {
	-webkit-appearance: none; /* Remove iOS default styles */
    cursor: pointer;
    border: none;
    -webkit-transition: all .1s linear;
       -moz-transition: all .1s linear;
        -ms-transition: all .1s linear;
         -o-transition: all .1s linear;
            transition: all .1s linear;
}

/*------------------------------------*\
    $OTHER ELEMENTS
\*------------------------------------*/

hr {
	border: solid #ddd;
    border-width: 1px 0 0 0;
    clear: both;
	width: 33%;
	margin: 2.5em auto;
}

img, iframe { 
	vertical-align: top; 
	max-width: 100%;
}





/*------------------------------------*\
    2. $LAYOUT
\*------------------------------------*/

.container, .header, .navigation, .main, .footer { width: 100%; }

.container {
	width: 17.5em;
	margin: 0 auto;
}

@media all and (min-width: 30em) { /* 480px */

	.container { width: 26.875em; }	

}

@media all and (min-width: 43.750em) { /* 700px */

	.container { width: 38.438em; }	

}

@media all and (min-width: 61.250em) { /* 980px */

	.container { 
		width: 61.250em; /* 980px */
		margin: 0 auto;
	}

}

/*------------------------------------*\
    $HEADER
\*------------------------------------*/

.logo { 
	text-align: center; 
	padding: 0.625em 0;
}

.logo img { width: 17.125em; }

.header .container { width: 100%; }

.nav-contact a {
	display: block;
	font-size: 1.375em;
	padding: 0.727em 1.182em;
	color: #fff;
	background-color: #333740;
	border-bottom: 2px solid #fff;
}

.nav-contact a:hover { text-decoration: none; }

a.nav-touch-toggle { background-color: #42c3d3; }

.nav-contact .icon { 
	margin-right: 1.125em; 
	width: 18px;
}

@media all and (min-width: 30em) { /* 480px */

	.nav-contact a { padding-left: 6.25em; }	

}

@media all and (max-width: 43.750em) { /* 700px */

	.not-home .nav-contact .is-nav-item { display: none; }
	
	.not-home .header { margin-bottom: 1.125em; }

}

@media all and (min-width: 43.750em) { /* 700px */

	.header {
		position: relative;
		z-index: 5;
		padding-bottom: 1em;
		background: url(images/bg-header-m.png) 50% 100% no-repeat;
	}

	.logo { 
		padding: 2em; 
		text-align: left; 
	}
	
	.logo img { width: 26.563em; }
	
	.contact {
		position: absolute;
		top: 0;
		right: 0;
		width: 11.250em;		
	}
	
	.nav-contact a {
		font-size: 1.063em;
		line-height: 1em;
		padding: 0.65em 0.765em;
	}
		
	.nav-contact .icon { margin-right: 0; }
	
	.nav-social {
		background-color: #31738c;
		background-image: -webkit-linear-gradient(bottom, rgba(0,0,0,.1), rgba(255,255,255,.1));
		background-image:    -moz-linear-gradient(bottom, rgba(0,0,0,.1), rgba(255,255,255,.1));
		background-image:      -o-linear-gradient(bottom, rgba(0,0,0,.1), rgba(255,255,255,.1));
		background-image:         linear-gradient(to top, rgba(0,0,0,.1), rgba(255,255,255,.1));
	}
	
	.nav-social a {
		width: 45px;
		height: 36px;
		position: relative;
		border-left: 1px solid #5a9ca5;
	}
			
	.nav-social .icon {
		position: absolute;
		top: 50%;
		left: 50%;
		margin-left: -12px;
		margin-top: -12px;
	}

}

@media all and (max-width: 61.188em) { /* 979px */

	.nav-social li:first-child a { border-left: none; }	

}

@media all and (min-width: 61.250em) { /* 980px */

	.header { background-image: url(images/bg-header.png); }
	
	.page-template-page-contact-php .header { margin-bottom: 2em; }
 
	.contact {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		width: 100%;
		background-color: #31738c;
		background-image: -webkit-linear-gradient(bottom, rgba(0,0,0,.1), rgba(255,255,255,.1));
		background-image:    -moz-linear-gradient(bottom, rgba(0,0,0,.1), rgba(255,255,255,.1));
		background-image:      -o-linear-gradient(bottom, rgba(0,0,0,.1), rgba(255,255,255,.1));
		background-image:         linear-gradient(to top, rgba(0,0,0,.1), rgba(255,255,255,.1));
	}
	
	.contact .container {
		width: 61.25em;
	}
	
	.nav-contact li { float: left; }
	
	.nav-contact a {
		height: 36px;
		line-height: 36px;
		border: none;
		padding: 0 1em;
		border-left: 1px solid #5a9ca5; 
		font-weight: 300;
	}
	
	.nav-contact .is-contact a { font-weight: 700; }
	
	.nav-contact .is-location a { background-color: transparent; }
	
	.nav-contact .is-location:hover .icon { background-position: -300px 0;}
	
	.nav-contact .is-number:hover .icon { background-position: 0 0; }
	
	.nav-contact .is-number a { background-color: #42c3d3; }
	
	.nav-contact .is-contact:hover .icon { background-position: -200px 0; }
	
	.nav-contact a:hover {
		color: #5a9ca5;
		background-color: #fff;
	}
	
	.nav-social li:last-child a { border-right: 1px solid #5a9ca5; }
	
	.nav-social a:hover { background-color: #fff; }
	
	.top { padding-top: 36px; }
	
	.logo {
		width: 100%;
		text-align: center;
		padding: 1.25em 0 0 0;
	}
	
	.logo img { width: 37.5em; }
	
	.navigation .container { width: 61.25em; }

}

/*------------------------------------*\
    
	$TOUCH NAV
	
	Only displayed on touch devices
	
\*------------------------------------*/

.nav-touch-top {
	padding: 1em 1.25em; 
	position: relative;
}

.nav-touch-search { width: 75%; }

.nav-touch-close { 
	position: absolute;
	top: 50%;
	right: 1em;
	width: 35px;
	height: 35px;
	margin-top: -18px;
	background-color: #42c3d3;
	-webkit-border-radius: 8px;
	   -moz-border-radius: 8px;
	        border-radius: 8px;
}

.nav-touch-close a, .nav-touch-close .icon {
	width: 35px;
	height: 35px;
}

.nav-touch {
	width: 100%;
	display: block;
	font-size: 0.938em;
}

.nav-touch a {
	display: block;
	width: 100%;
	background-color: #31738c;
	color: #fff;
	border-bottom: 2px solid #fff;
	font-weight: 700;
	font-size: 1.25em;
	padding: 0.625em 1em;
}

.nav-touch ul { display: none; }

.nav-touch a:hover ul { display: block; }

.nav-touch ul a { background-color: #42c3d3; }

.nav-touch .menu-item-has-children > a {
	padding-left: 2.25em;
	position: relative;
}

.nav-touch .menu-item-has-children > a:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 1em;
	width: 12px;
	height: 7px;
	margin-top: -3px;
	background: url(images/sprite.png) -400px -500px no-repeat;
}

.nav-touch ul ul a { 
	background-color: #c2e1e5;
	color: #000;
}

.nav-touch a:hover { text-decoration: none; }

.nav-touch .current-menu-item > a {
	text-decoration: none;
	color: #fff;
	background-color: #31738c;
}

/*------------------------------------*\
    $FULL SIZE NAV
\*------------------------------------*/

@media all and (min-width: 43.750em) { /* 700px */
	
	.nav-primary li {
		position: relative;
		z-index: 500;
	}
	
	.nav-primary > li { float: left; }
	
	.nav-primary a {
		color: #000;
		font-size: 1.125em;
		line-height: 2.5em;
		padding: 0 1.05em;
		text-align: left;
	}

	.nav-primary li:hover > a {
		color: #316b8c;
		text-decoration: none;
	}

	.nav-primary li:hover > ul { display: block }
	
	/*------------------------------------*\
		$2ND LEVEL
	\*------------------------------------*/
	
	.nav-primary ul, .nav-primary ul li { width: 20em; }
	
	.nav-primary ul {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		float: left;
		z-index: 99999;  
		-webkit-box-shadow: 0 5px 5px rgba(0,0,0,0.25);
		   -moz-box-shadow: 0 5px 5px rgba(0,0,0,0.25);
		        box-shadow: 0 5px 5px rgba(0,0,0,0.25);
	}
	
	.nav-primary ul a {
		background-color: #316b8c;
		color: #fff;
		line-height: 1.4em;
		padding: 0.5em 0.875em;
		width: 100%;
		height: auto;
	}
	
	.nav-primary ul :hover > a {
		background: #42c3d3;
		color: #fff;
	}
	
	.nav-primary ul li.menu-item-has-children:before {
		content: '>';
		position: absolute;
		top: 50%;
		right: 1em;
		color: #fff;
		width: 10px;
		height: 10px;
		line-height: 10px;
		margin-top: -5px;
	}
	
	/*------------------------------------*\
		$3RD LEVEL
	\*------------------------------------*/
	
	.nav-primary ul ul {
		left: 100%;
		top: 0;
	}
	
	/*------------------------------------*\
		$1ST LEVEL CURRENT
	\*------------------------------------*/
	
	.nav-primary li.current_page_item > a, .nav-primary li.current-menu-ancestor > a, .nav-primary li.current-menu-item > a, .nav-primary li.current-menu-parent > a {
		color: #5a9ca5;
	}
	
	* html .nav-primary li.current_page_item a, * html .nav-primary li.current-menu-ancestor a, * html .nav-primary li.current-menu-item a, * html .nav-primary li.current-menu-parent a, * html .nav-primary li a:hover {
		color: #5a9ca5;
	}
	
	/*------------------------------------*\
		$2ND LEVEL CURRENT
	\*------------------------------------*/
	
	.nav-primary ul li.current-menu-item > a, .nav-primary ul li.current-menu-parent > a { 
		background-color: #42c3d3;
		color: #fff;  
	}
	
}

@media all and (max-width: 61.188em) { /* 979px */

	.navigation .container {
		width: 43.75em;
		margin: 0 auto;
	}

}

@media all and (min-width: 61.250em) { /* 980px */

	.nav-primary a {
		font-size: 1.25em;
		padding: 0 1.125em;
	}	
	
	/*------------------------------------*\
		$EFFECTS
	\*------------------------------------*/
	
	.nav-primary > li > a:before, .nav-primary > li > a:after {
		display: inline-block;
		opacity: 0;
		-webkit-transition: -webkit-transform 0.3s, opacity 0.2s;
		   -moz-transition: -moz-transform 0.3s, opacity 0.2s;
		        transition: transform 0.3s, opacity 0.2s;
	}
	
	.nav-primary > li > a:before {
		margin-right: 10px;
		content: '[';
		-webkit-transform: translateX(20px);
		   -moz-transform: translateX(20px);
		        transform: translateX(20px);
	}
	
	.nav-primary > li > a:after {
		margin-left: 10px;
		content: ']';
		-webkit-transform: translateX(-20px);
		   -moz-transform: translateX(-20px);
		        transform: translateX(-20px);
	}
	
	.nav-primary > li > a:hover:before, .nav-primary > li > a:hover:after, .nav-primary > li > a:focus:before, .nav-primary > li > a:focus:after {
		opacity: 1;
		-webkit-transform: translateX(0px);
		   -moz-transform: translateX(0px);
		        transform: translateX(0px);
	}

}

/*------------------------------------*\
    $CAROUSEL
\*------------------------------------*/

@media all and (min-width: 43.750em) { /* 700px */

	.feature { 
		position: relative; 
		top: -16px;
		overflow: hidden;
		height: 21.875em;
		background-color: #5a9ca5;
	}
	
	.feature-content, .banner-content {
		position: absolute;
		top: 4.063em;
		right: 5em;
		width: 22.5em;
		padding: 0.813em;
		text-align: center;
		color: #3a7394;
		background-color: #fff;
		background-color: rgba(255,255,255,0.6);
		-webkit-border-radius: 5px;
		   -moz-border-radius: 5px;
		        border-radius: 5px;
	}
	
	.feature-heading, .banner-heading {
		color: #3a7394;
		font-size: 1.875em;
		line-height: 1.2em;
		margin-bottom: 0.5em;
		letter-spacing: 3px;
		text-transform: uppercase;
	}
	
	.feature p, .banner p {
		font-size: 1.25em;
		margin-bottom: 1em;
		font-weight: 700;
	}	
	
	.feature .button, .banner .button {
		font-size: 1em;
		margin-bottom: 0;
	}
	
	.feature-nav {
		position: absolute;
		z-index: 999;
		top: 50%;
		margin-top: -1.25em;
		right: 0;
		left: 0;
	}
	
}

@media all and (min-width: 61.250em) { /* 980px */

	.feature {
		top: -46px;
		height: 31.188em;
		overflow: hidden;
	}

	.feature .container {
		position: absolute;
		top: 0;
		left: 50%;
		margin-left: -30.625em;
	}
	
	.feature-content {
		top: 6.875em;
		right: 0;
		width: 33.125em;
		padding: 1.25em;
	}
	
	.feature-heading, .banner-heading {
		font-size: 2.813em;
		line-height: 1.2em;
		margin-bottom: 0.2em;
		letter-spacing: 4px;
	}
	
	.feature p, .banner p {
		font-size: 1.563em;
		line-height: 1.4em;
		margin-bottom: 0.840em;
		letter-spacing: 2px;
	}
	
	.feature .button, .banner .button {
		font-size: 1.375em;
		width: 10em;
		padding-left: 0;
		padding-right: 0;
		text-align: center;
	}
	
	.feature-nav { top: 12.5em; }

}

/*------------------------------------*\
    $FLEXSLIDER
\*------------------------------------*/

.flexslider {
	margin: 0; 
	padding: 0;
}

.flexslider .slides > li { display: none; }

.flexslider .slides img {
	display: block;
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: -30.625em; /* Half of width - 980px */
	max-width: none;
	width: auto;
}

.slides:after {
	content: "\0020"; 
	display: block; 
	clear: both; 
	visibility: hidden; 
	line-height: 0; 
	height: 0;
}

html[xmlns] .slides { display: block; }

* html .slides { height: 1%; }

.no-js .slides > li:first-child { display: block; }

@media all and (min-width: 61.250em) { /* 980px */

	.flexslider .slides img {
		margin-left: -60em; /* Half of width - 1920px */
	}

}

/*------------------------------------*\
    $DIRECTION NAV - ARROWS
\*------------------------------------*/

ul.flex-direction-nav { margin-bottom: 0; }

.flex-direction-nav a {
    width: 40px;
    height: 40px;
    display: block;
    position: absolute;
    z-index: 100000;
    cursor: pointer;
    text-indent: -9999px;
	background-color: #fff;
	background-color: rgba(255,255,255,0.5);
	-webkit-border-radius: 0 5px 5px 0;
	   -moz-border-radius: 0 5px 5px 0;
	        border-radius: 0 5px 5px 0;
}

.flex-direction-nav a:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 14px;
	height: 28px;
	margin-left: -7px;
	margin-top: -14px;
	background: url(images/sprite.png) -400px -600px no-repeat;
}

.flex-direction-nav a.flex-next {
	left: auto;
	right: 0;
	-webkit-border-radius: 5px 0 0 5px;
	   -moz-border-radius: 5px 0 0 5px;
	        border-radius: 5px 0 0 5px;
}

.flex-direction-nav a.flex-next:before { background-position: -300px -600px; }

@media all and (min-width: 61.250em) { /* 980px */

	.flex-direction-nav a {
		width: 80px;
		height: 80px;
	}
	
	.flex-direction-nav a:hover { background-color: #316b8c; }
	
	.flex-direction-nav a:before {
		width: 29px;
		height: 56px;
		margin-left: -14px;
		margin-top: -28px;
		background: url(images/sprite.png) 0 -600px no-repeat;
	}
	
	.flex-direction-nav a:hover:before { background-position: -200px -600px; }
	
	.flex-direction-nav a.flex-next:before { background-position: -500px -500px; }
	
	.flex-direction-nav a.flex-next:hover:before { background-position: -100px -600px; }

}

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {
	
    .flex-direction-nav a:before {
    	background-image: url(images/sprite@2x.png);
		background-size: 600px 800px;
	}
	
}

/*------------------------------------*\
    $CONTROL NAV - DOTS
\*------------------------------------*/

ol.flex-control-nav {
	margin-bottom: 0;
	text-align: center;
}

.flex-control-nav li {
    margin: 0 5px;
    display: inline-block;
    zoom: 1;
    *display: inline;
	text-indent: -9999em;
}

.flex-control-paging li a {
    width: 14px;
    height: 14px;
    display: block;
    background-color: #808080;
    cursor: pointer;
	-webkit-border-radius: 100%;
	   -moz-border-radius: 100%;
	        border-radius: 100%;
}

.flex-control-paging li a.flex-active {
    background-color: #ccc;
    cursor: default;
}

/*------------------------------------*\
    $PROMO
\*------------------------------------*/

.promo {
	background-color: #31738c;
	padding: 1em 0;
	text-align: center;
}

.promo .grid { margin-left: -2.5em; }

.promo .grid-item { 
	padding-left: 2.5em; 
	width: 50%;
}

.promo a { display: block; } 

.promo-item-image {
	margin: 0 auto 0.5em auto;
	border: 4px solid #fff;
	width: 107px;
	height: 107px;
	position: relative;
	-webkit-border-radius: 100%;
	   -moz-border-radius: 100%;
	        border-radius: 100%;
}

.promo-item-heading {
	font-size: 1.125em;
	line-height: 1.3em;
	margin-bottom: 1em;
	color: #fff;
}

@media all and (min-width: 30em) { /* 480px */

	.promo .grid { margin-left: -1.25em; }

	.promo .grid-item { 
		width: 25%; 
		padding-left: 1.25em;
	}
	
	.promo-item-image {
		width: 100px;
		height: 100px;
	}
	
	.promo-item-heading { margin-bottom: 0; }	

}

@media all and (min-width: 43.750em) { /* 700px */

	.promo {
		position: relative;
		z-index: 2;
		background: url(images/bg-promo-m.png) 50% 0 no-repeat;
		height: 17.813em;
		padding: 3em 0 0 0;
		top: -2.875em;
	}	
		
	.promo .grid { margin-left: -3.75em; }
	
	.promo .grid-item { padding-left: 3.75em; }
	
	.promo-item-01, .promo-item-04 { margin-top: 0.625em; }
	
	.promo-item-image {
		width: 107px;
		height: 107px;
	}

}

@media all and (min-width: 61.250em) { /* 980px */

	.promo {
		background-image: url(images/bg-promo.png);
		height: 30.063em;
		top: -7em;
		padding-top: 3.75em;
	}	
	
	.promo .container { width: 50em; }
	
	.promo .grid { margin-left: -5em; }
	
	.promo .grid-item { padding-left: 5em; }
	
	.promo-item-01, .promo-item-04 { margin-top: 0.813em; }
	
	.promo-item-image {
		width: 140px;
		height: 140px;
		margin-bottom: 1em;
	}
	
	.promo-item .is-hover {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 2;
		-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
           filter: alpha(opacity=0);
     -moz-opacity: 0;
   -khtml-opacity: 0;
          opacity: 0;
		-webkit-transition: all .25s ease-in-out;
		   -moz-transition: all .25s ease-in-out;
			-ms-transition: all .25s ease-in-out;
			 -o-transition: all .25s ease-in-out;
				transition: all .25s ease-in-out;
	}
	
	.promo-item:hover .is-hover {
		-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=1)";
           filter: alpha(opacity=1);
     -moz-opacity: 1;
   -khtml-opacity: 1;
          opacity: 1;
	}
	
	.promo-item-heading { font-size: 1.375em; }
	
	.promo-item .is-circle {
		position: absolute;
		z-index: 1;
		top: 50%;
		left: 50%;
		width: 0;
		height: 0;
		background-color: #fff;
		-webkit-border-radius: 100%;
		   -moz-border-radius: 100%;
		        border-radius: 100%;
	-webkit-transition: all .25s ease-in-out;
       -moz-transition: all .25s ease-in-out;
        -ms-transition: all .25s ease-in-out;
         -o-transition: all .25s ease-in-out;
            transition: all .25s ease-in-out;		
	}
	
	.promo a:hover .is-circle {
		width: 140px;
		height: 140px;
		margin-top: -70px;
		margin-left: -70px;
	}

}

/*------------------------------------*\
    $BANNER
\*------------------------------------*/

@media all and (min-width: 43.750em) { /* 700px */

	.banner {
		width: 100%;
		height: 21.875em;
		position: relative;
		background-position: 50% 0;
		background-repeat: no-repeat;
		background-size: cover;
		margin-top: -16px;
		background-color: #5a9ca5;
	}	
	
	.banner:before {
		content: '';
		position: absolute;
		bottom: -1px;
		left: 0;
		right: 0;
		height: 2.125em;
		background: url(images/bg-banner-m.png) 50% 0 no-repeat;
	}
	
	.banner-content { 
		right: 0.625em; 
		padding: 0.813em 1.625em;
	}
	
	.banner-heading { text-transform: uppercase; }
	
	.banner p { font-size: 1.125em; }

}

@media all and (min-width: 61.250em) { /* 980px */

	.banner { 
		background-size: auto; 
		margin-top: -42px;
		height: 31.25em;
	}
	
	.banner:before {
		background-image: url(images/bg-banner.png);
		height: 4.125em;
	}

	.banner-content { 
		position: relative; 
		float: right;
		top: 6.25em;
		right: 0;
		width: 34.375em;
		padding: 2.5em;
	}
	
	.banner p { font-size: 1.563em; }
	
	.banner .button { 
		width: auto; 
		padding-left: 1.818em;
		padding-right: 1.818em;
	}

}

/*------------------------------------*\
    $CONTENT
\*------------------------------------*/

.page-title { 
	font-size: 1.625em;
	line-height: 1.3em;
	letter-spacing: 2px;
	margin-bottom: 0.808em;
	color: #4b4b4b;
	text-align: center;
}

.page-subtitle {
	display: block;
	text-transform: uppercase;
	color: #5a9ca5;
	font-size: 0.643em;
	margin-bottom: 0;
}

.not-home .page-title {
	text-align: left;
	padding-bottom: 0.5em;
	border-bottom: 2px solid #42c3d3;
}

.content h2 { color: #427b94; }

@media all and (max-width: 43.750em) { /* 700px */

	.content h2, .content h3, .content h4, .content h5, .content h6 {
		font-size: 1.313em;
		line-height: 1.4em;
		margin-bottom: 1em;
	}

}

@media all and (min-width: 43.750em) { /* 700px */

	.content h2, .content h3 { letter-spacing: 2px; }	

}

@media all and (min-width: 61.250em) { /* 980px */

	.content {
		float: left;
		padding: 0;
		width: 40em; /* 640px */
	}
	
	.content-right { float: right; }
	
	.content-full { 
		float: none;
		width: 100%;
	}
	
	.page-title { letter-spacing: 3px; }
	
	.not-home .page-title { 
		font-size: 1.750em; 
		padding-bottom: 0.25em;
	}
	
}


/*------------------------------------*\
    $CONTENT TABLES
\*------------------------------------*/

.content table { border-collapse: collapse; }

.content table th, .content table td {
	padding: 0.625em;
	border-bottom: 1px solid #ddd;
}

.content table th {
    font-weight: bold;
	text-align: left;
}

/*------------------------------------*\
    $CONTENT LISTS
\*------------------------------------*/

.content ul, .content ol { margin-left: 1em; }

.content ul { list-style: disc; }

.content ol { list-style: decimal; }

.content li { margin-bottom: 0.875em; }

.content li > ul, .content li > ol { 
    margin-top: 0.625em; 
    margin-bottom: 0;
}

@media all and (min-width: 43.750em) { /* 700px */

	.content ul, .content ol { margin-left: 2.625em; } /* 42px */

}

/*------------------------------------*\
    $ORDERED LIST
\*------------------------------------*/

.content ol { 
	list-style: none;
	margin-left: 0;
	counter-reset: number-counter;
}

.content ol li { 
	margin-bottom: 0.875em; 
	padding-left: 2em;
	position: relative;
}

.content ol li:before {
	content: counter(number-counter);
	counter-increment: number-counter;
	position: absolute;
	top: 3px;
	left: 0;
	width: 22px;
	height: 22px;
	background: url(images/sprite.png) -500px -100px no-repeat;
	text-align: center;
	color: #fff;
	font-weight: 700;
	font-size: 14px;
	line-height: 22px; /* Same as icon height */
}

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {
	
 	.content ol li:before {
		background-image: url(images/sprite@2x.png);
		background-size: 600px 800px;
	}   
	
}

/*------------------------------------*\
    $TICKED LIST
\*------------------------------------*/

ul.list-ticked { 
	margin-left: 0;
	list-style: none; 
}

ul.list-ticked li { 
	margin-bottom: 0.875em; 
	padding-left: 2em;
	position: relative;
}

ul.list-ticked li:before {
	content: '';
	position: absolute;
	top: 3px;
	left: 0;
	width: 22px;
	height: 22px;
	background: url(images/sprite.png) -400px -100px no-repeat;
}

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {
	
 	ul.list-ticked li:before {
		background-image: url(images/sprite@2x.png);
		background-size: 600px 800px;
	}   
	
}

@media all and (min-width: 43.688em) { /* 699px */
	
	/* Two column list */

	ul.list-double {
		margin-left: 0;
		margin-bottom: 1em;
		clear: both;
		overflow: hidden;
	}
	
	ul.list-double li {
		float: left;
		width: 40%;
		margin-left: 10%;
	}

}

/* Page lists displayed with [list-pages] and [child-pages] */

ul.child-pages, ul.list-pages {
	list-style: none;
	margin-left: 0;
	border-top: 1px solid #ddd;
}

ul.child-pages li, ul.list-pages li { 
	border-bottom: 1px solid #ddd; 
	margin-bottom: 0;
}

ul.child-pages a, ul.list-pages a { 
	position: relative;
	display: block; 
	padding: 0.625em 0.313em;
}

ul.child-pages a:before, ul.list-pages a:before {
	content: '';
	position: absolute;
	top: 50%;
	right: 0.313em;
	display: block;
	width: 24px;
	height: 24px;
	margin-top: -12px;
	background: url(images/sprite.png) -100px -200px no-repeat;    
}

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {
	
    ul.child-pages a:before, ul.list-pages a:before {
        background-image: url(images/sprite@2x.png);
		background-size: 600px 800px;
    }
	
}

/*------------------------------------*\
    
	$CHILD PAGES WITH EXCERPT
	
	[child-pages-excerpt]
	
\*------------------------------------*/

ul.list-pages-excerpt { list-style: none; }

ul.list-pages-excerpt li { 
	margin-bottom: 0; 
	border-bottom: 1px solid #e8e8e8; 
}

ul.list-pages-excerpt a {
	display: block; 
	font-weight: normal;
	padding: 0.8em 1.875em 0.8em 0;
	position: relative;
}

.list-pages-excerpt .list-main { 
	overflow: hidden; 
	width: 100%;
}

.list-pages-excerpt .list-image, .list-pages-excerpt .list-content { float: left; }

.list-pages .list-heading { margin-bottom: 0.25em; }

.list-pages-excerpt .list-image { 
	width: 30%; 
	background-color: #29a2a2;
	height: 0;
	padding-bottom: 16%;
}

.list-pages-excerpt img { transition: all .25s linear; }

.list-pages-excerpt .list-content { width: 100%; }

ul.list-pages-excerpt p {
	color: #595959; 
	line-height: 1.4em;
	margin-bottom: 0; 
}

ul.list-pages-excerpt a:hover img { opacity: 0.5; }

@media all and (max-width: 43.688em) { /* 699px */

	.list-pages-excerpt a { padding-right: 1.25em; }

	.list-pages-excerpt .list-image { display: none; }

}

@media all and (min-width: 43.750em) { /* 700px */
	
	.list-pages-excerpt .list-content { 
		width: 70%;
		padding-left: 1em;
		padding-right: 2em;
	}

}

/*------------------------------------*\
    $BLOCKQUOTE
\*------------------------------------*/

blockquote {
	position: relative;
	font-size: 1.125em;
	line-height: 1.618em;
	text-align: center;
	font-weight: bold;
	font-style: italic;
}

blockquote p:last-child { margin: 0 }

@media all and (min-width: 43.750em) { /* 700px */

	blockquote {
		font-size: 1.25em;
		padding: 1.5em 2em;
	}	

}

/*------------------------------------*\
	$MESSAGES
\*------------------------------------*/

.message {
    padding: 0.875em 1.618em;
    border: 1px solid;
    color: #555;
}

.note {
	background: #fcffc5;
	border-color: #fbffa3;
}

.highlight {
	background: #A9E8FA;
	border-color: #79dbf7;
}

.warning {
    background-color: #ef1000;
    border-color: #cf0000;
    color: #fff;
}

/*------------------------------------*\
    $BLOG
\*------------------------------------*/

.post-divider {
    display: block;
    height: 1px;
    background: #ddd;
    width: 50%; 
	margin: 3em auto;
}

.post-meta p {
	font-size: 0.875em;
	line-height: 1.4em;
}

.post-navigation {
    font-size: 0.875em;
    line-height: 1.5em;
    border-top: 1px solid #ddd;
    padding: 1em 0;
}

.archive-navigation {
    display: block;
    clear: both;
    padding: 1em 0;
    text-align: center;
    border-top: 1px solid #ddd;
}

.archive-navigation span, .archive-navigation a {
    padding: 3px 6px;
    border: 1px solid #ddd;
	-webkit-border-radius: 2px;
     -opera-border-radius: 2px;
     -khtml-border-radius: 2px;
 	   -moz-border-radius: 2px;
            border-radius: 2px;
    
}

.post-share h5 {
	font-size: 0.875em;
	line-height: 1.5em;
    text-transform: uppercase;
}

@media all and (min-width: 43.750em) { /* 700px */

	.post-share h5 {
		float: left;
		margin: 0 0.616em 0 0;
	}

}

#___plusone_0 { vertical-align: top !important; }

/*------------------------------------*\
    $CONTENT IMAGES
\*------------------------------------*/

@media all and (max-width: 25.000em) { /* 400px */

	img.alignleft, img.alignright { 
		max-width: 50%;
		height: auto; 
	}

}

.alignright, a.alignright {
    float: right;
    margin: 0 0 1.618em 1.618em; /* 0 0 26px 26px */
}

.alignleft, a.alignleft {
    float: left;
    margin: 0 1.618em 1.618em 0; /* 0 26px 26px 0 */
}

.aligncenter, a .aligncenter {
    display: block;
    margin: 0 auto 1.618em auto; /* 0 auto 26px auto */
}

.alignnone, a .alignnone {
    display: block;
    margin-bottom: 1.618em; /* 26px */
}

img.no-image-border {
	padding: 0;
	border: none;
}

.wp-caption { margin-bottom: 1.618em; /* 26px */ } 

.wp-caption img {
    border: none;
    margin: 0;
    padding: 0;
}

.wp-caption p.wp-caption-text {
    font-size: 0.875em;
    line-height: 1.4em; 
	margin-bottom: 0;
	padding: 0.625em;
	font-style: italic;
}

#gallery-1 img {
    border: 1px solid #ddd !important;
    background: #fff;
    padding: 8px;
}

#gallery-1 img:hover { border: 1px solid #808080 !important }

/*------------------------------------*\
    $SIDEBAR
\*------------------------------------*/

@media all and (min-width: 61.250em) { /* 980px */

	.sidebar {
		float: right;
		width: 15.625em; /* 250px */
	}	

}

.sidebar > div, .sidebar-blog > div { margin-bottom: 2em; }

.sidebar-heading { 
	font-size: 1.750em; 
	padding-bottom: 0.25em;
	line-height: 1.3em;
	margin-bottom: 0.808em;
	letter-spacing: 3px;
	color: #4b4b4b;
	border-bottom: 2px solid #42c3d3;
}

/*------------------------------------*\
    $SIDEBAR CTA
\*------------------------------------*/

.sidebar-cta { 
	position: relative; 
	padding-top: 1.75em;
}

.sidebar-cta-image {
	position: absolute;
	top: 0;
	right: -65px;
	z-index: 2;
}

.sidebar-cta p { 
	width: 60%; 
	font-size: 0.875em;
	line-height: 1.4em;
}

/*------------------------------------*\
    $ISLAND
\*------------------------------------*/

.island {
	padding: 1em 1.168em;
	color: #fff;
}

.island-heading { color: #fff; }

/*------------------------------------*\
    $UI LIST
\*------------------------------------*/

.ui-list {
    list-style: none;
	margin: 0;
}

.ui-list li { border-bottom: 1px solid #ddd; }

.ui-list a {
    display: block;
    padding: 0.625em 0.313em;
	line-height: 1.4em;
	font-weight: normal;
}

.ui-list a:hover, .ui-list .current_page_item a { text-decoration: none; }

/*------------------------------------*\
    $SEARCH
\*------------------------------------*/

.form-search { position: relative; } 

.form-search input.search-input { 
	width: 100%;
	margin: 0;
	padding: 0.5em;
	color: #666;
	background-color: #ebebeb;
	border: none;
	-webkit-border-radius: 8px;
	   -moz-border-radius: 8px;
	        border-radius: 8px;
}

.form-search .search-submit {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 35px;
	border: none;
	text-indent: -9999em;
	margin: 0;
}

.form-search .search-submit:before {
	content: '';
	position: absolute;
	top: 50%;
	right: 50%;
	display: inline-block;
	width: 35px;
	height: 35px;
	margin-top: -17px;
	margin-right: -17px;
	background: url(images/sprite.png) -200px -100px no-repeat;
}

@media all and (min-width: 61.250em) { /* 980px */

	.sidebar .form-search .search-input, .content .form-search .search-input {
		border: solid #eee;
		border-width: 1px 0 1px 1px;
	}

}

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {
	
    .form-search .search-submit:before {
    	background-image: url(images/sprite@2x.png);
		background-size: 600px 800px;
	}
	
}

/*------------------------------------*\
    $SIDEBAR - LEFT
\*------------------------------------*/

.sidebar-left { margin-bottom: 1em; }

.sidebar-left .contact-detail {
    padding: 1em 0;
    border-bottom: 1px solid #ddd;
}

.sidebar-left h4 {
    font-size: 1.125em;
    line-height: 1em;
    font-weight: bold;
    text-transform: uppercase;
  	margin-bottom: 0.313em;
}

.sidebar-left .icon { vertical-align: top; }

.sidebar-left p, .sidebar-left table {
    font-size: 1em;
    line-height: 1.4em;
    margin: 0;
}

.sidebar-left p + p { margin: 10px 0 0 0 }

.sidebar-left .is-day, .sidebar-left .is-time { width: 50%; }

.sidebar-left a { font-weight: normal; }

@media all and (min-width: 43.750em) and (max-width: 61.188em) { /* 700px - 979px */

	.sidebar-left table { width: 50%; }
	
}

@media all and (min-width: 61.250em) { /* 980px */

	.sidebar-left {
		float: left;
		width: 18.750em; /* 300px */
		padding: 0;
		margin-bottom: 1em;
	}
		
	.sidebar-left h4 { margin-bottom: 0.875em; }
	
}

/*------------------------------------*\
    $CONTACT PAGE
\*------------------------------------*/

@media all and (min-width: 43.750em) and (max-width: 61.188em) { /* 700px - 979px */

	.page-template-page-contact-php .main { padding-top: 1.5em; }	
	
	.page-template-page-contact-php .sidebar-left {
		float: left;
		width: 39%; 
		padding: 0;
	}
	
	.page-template-page-contact-php .content {
		float: right;
		width: 57%;
		padding: 0;
	}

}

/*------------------------------------*\
    $FOOTER
\*------------------------------------*/

.footer {
	text-align: center;
	padding: 1.25em;
}

.footer-body {
	font-size: 0.813em;
    line-height: 1.4em;
}

.footer p, .footer a { color: #777; }

.footer a { font-weight: normal; }

.footer a:hover { color: #444 }

@media all and (max-width: 43.688em) { /* 699px */

	.footer { margin-bottom: 3.125em; } /* Height of call now button */

}

@media all and (min-width: 61.250em) { /* 980px */

	.footer { padding: 1.875em 0; }	

}





/*------------------------------------*\
    3. $MODULE
\*------------------------------------*/ 

/*------------------------------------*\
    $NAV
\*------------------------------------*/ 

ul.nav, .nav ul { 
    margin: 0;
    padding: 0;
}

.nav li { float: left; }

.nav a { display: block; }

ul.nav-stacked li { float: none; }

/*------------------------------------*\
    $HELPER
\*------------------------------------*/

.left { float: left }

.right { float: right }

.text-center { text-align: center; }

.text-right { text-align: right; }

.upper { text-transform: uppercase; }

.lower { text-transform: lowercase;}

.under { border-bottom: 1px solid; }

.spaced { letter-spacing: 2px; }

.no-mb { margin-bottom: 0; }

.is-relative { position: relative; }

.inline-block {
    display: inline-block;
    zoom: 1;
    *display: inline;
}

.cf:before, .cf:after, .grid:before, .grid:after, .main:before, .main:after, .content:before, .content:after, .nav-primary:before, .nav-primary:after, .container:before, .container:after, .top:before, .top:after, .navigation:before, .navigation:after {
    content: '';
    display: table;
}

.cf:after, .grid:after, .main:after, .content:after, .nav-primary:after, .container:after, .top:after, .navigation:after { clear: both; }

.cf, .grid, .main, .content, .nav-primary, .container, .top, .navigation { *zoom: 1; }

/*------------------------------------*\
    $GRID
\*------------------------------------*/ 

.grid { margin-left: -1.618em; }

.grid-item {
    display: block;
    float: left;
    padding-left: 1.618em;
    width: 100%;
}

@media all and (min-width: 18.750em) {

	.palm-whole .grid-item { width: 100%; }
	
	.palm-halves .grid-item { width: 50%; }
	
	.palm-thirds .grid-item { width: 33.3333333%; }
	
	.palm-fourths .grid-item { width: 25%; }
	
	.palm-fifths .grid-item { width: 20%; }

}

@media all and (min-width: 43.750em) and (max-width: 61.250em) {

	.lap-whole .grid-item { width: 100%; }
	
	.lap-halves .grid-item { width: 50%; }
	
	.lap-thirds .grid-item { width: 33.3333333%; }
	
	.lap-one-two-thirds .lap-one-third { width: 33.3333333%; }
	
	.lap-one-two-thirds .lap-two-thirds { width: 66.666667%; }
	
	.lap-fourths .grid-item { width: 25%; }
	
	.lap-fifths .grid-item { width: 20%; }
	
}

@media all and (min-width: 61.250em) { 

	.desk-whole .grid-item { width: 100%; }

	.desk-halves .grid-item { width: 50%; }
		
	.desk-thirds .grid-item { width: 33.3333333%; }
	
	.desk-one-two-thirds .desk-one-third { width: 33.3333333%; }
	
	.desk-one-two-thirds .desk-two-thirds { width: 66.666667%; }
	
	.desk-fourths .grid-item { width: 25%; }
	
	.desk-fifths .grid-item { width: 20%; }

}

/*------------------------------------*\
    $ICONS
\*------------------------------------*/

.icon {
    display: inline-block;
    zoom: 1;
    *display: inline;
    vertical-align: middle;
    width: 16px;
    height: 16px;
    background: url(images/sprite.png) 0 0 no-repeat;   
}

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {
	
	.icon {
		background-image: url(images/sprite@2x.png);			
		background-size: 600px 800px;
	}
		
}

.icon-m {
	width: 24px;
	height: 24px;
}

.icon-l {
	width: 32px;
	height: 32px;
}

.icon-xl {
	width: 64px;
	height: 64px;
}

/*------------------------------------*\
    $ROW 1
\*------------------------------------*/

.icon-phone { background-position: 0 0; }
.icon-fax { background-position: -100px 0; }
.icon-email { background-position: -200px 0; }
.icon-address { background-position: -300px 0; }
.icon-hours { background-position: -400px 0; }
.icon-payment { background-position: -500px 0; }

/*------------------------------------*\
    $ROW 2
\*------------------------------------*/

.icon-info { background-position: 0 -100px; }
.icon-file { background-position: -100px -100px; }
.icon-search { background-position: -200px -100px; }
.icon-cross { background-position: -300px -100px; }
.icon-tick { background-position: -400px -100px; }
.icon-user { background-position: -500px -100px; }

/*------------------------------------*\
    $ROW 3
\*------------------------------------*/

.icon-arrow-left { background-position: 0 -200px; }
.icon-arrow-right { background-position: -100px -200px; }
.icon-arrow-down { background-position: -200px -200px; }
.icon-arrow-up { background-position: -300px -200px; }
.icon-nav { background-position: -400px -200px; }
.icon-phone-white { background-position: -500px -200px; }

/*------------------------------------*\
    $ROW 4
\*------------------------------------*/

.icon-email-white { background-position: 0 -300px; }
.icon-address-white { background-position: -100px -300px; }
.icon-calendar-white { background-position: -200px -300px; }
.icon-calendar-green { background-position: -300px -300px; }
.icon-facebook { background-position: -400px -300px; }
.icon-googleplus { background-position: -500px -300px; }

/*------------------------------------*\
    $ROW 5
\*------------------------------------*/

.icon-twitter { background-position: 0 -400px; }
.icon-linkedin { background-position: -100px -400px; }
.nav-social a:hover .icon-facebook{ background-position: -200px -400px; }
.nav-social a:hover .icon-googleplus { background-position: -300px -400px; }
.nav-social a:hover .icon-twitter { background-position: -400px -400px; }
.nav-social a:hover .icon-linkedin { background-position: -500px -400px; }

/*------------------------------------*\
    $ROW 6
\*------------------------------------*/

.icon-emergency { background-position: 0 -500px; }
.icon-hours-white { background-position: -100px -500px; }
.icon-submit-arrow { background-position: -200px -500px; }
.icon-submit-arrow-white { background-position: -300px -500px; }

/*------------------------------------*\
    $EXTERNAL ICONS
\*------------------------------------*/

.icon-surf {
	background: url(http://www.surfpacific.com/sprite-logo.png);
	width: 137px;
	height: 34px;
	background-position: 0 0;
}

@media all and (max-width: 61.188em) { /* Up to 979px */

	.icon-surf {
		display: block;
		margin: 1em auto 0 auto;
	}	

}

@media all and (min-width: 61.250em) { /* 980px */

	.icon-surf { margin-left: 1em; }	

}

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {
	
    .icon-surf {
		background-position: -100px 0;			
		background-size: 300px 100px;
	}
	
}

/*------------------------------------*\
    $INLINE LIST
\*------------------------------------*/

.list-inline { list-style: none; }

.list-inline li { display: inline; }

.list-inline a {
    display: inline-block;
    zoom: 1;
    *display: inline;
}

/*------------------------------------*\
    $ICON LIST
\*------------------------------------*/

.list-icon { font-size: 0; }

.list-icon li { margin-left: 10px; }

.list-icon li:first-child { margin-left: 0; }

/*------------------------------------*\
    $ACCORDION LIST
\*------------------------------------*/

.list-accordion {
	margin-left: 0;
	border-top: 1px solid #ddd;
}

.list-accordion-title { 
	font-size: 1em;
	line-height: 1.3em;
	margin-bottom: 0;
	border-bottom: 1px solid #ddd; 
}

.list-accordion-title.open { border-bottom: none; }

.list-accordion-title a { 
	display: block; 
	position: relative; 
	padding: 0.625em 0.313em; 
}

.list-accordion-content {
	padding: 0.313em;
	border-bottom: 1px solid #ddd;
}

.list-accordion-title a:after {
	content: '';
	position: absolute;
	top: 50%;
	right: 0.313em;
	display: block;
	width: 24px;
	height: 24px;
	margin-top: -12px;
	background: url(images/sprite.png) -200px -200px no-repeat;   
}	
	
.list-accordion-title.open a:after { background-position: -300px -200px; }

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {
	
    .list-accordion-title a:after {
        background-image: url(images/sprite@2x.png);
		background-size: 600px 800px;
    }
	
}

/*------------------------------------*\
    $CALL NOW
\*------------------------------------*/

.call-now {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: 999;
}

.call-now a { 
	display: block;
	float: left;
	width: 50%;
	text-align: center;
	margin-bottom: 0;
	font-size: 1.375em;
	padding: 0.636em 0; 
	color: #fff;
	background-color: #333740;
	border: none;
	-webkit-border-radius: 0;
	   -moz-border-radius: 0;
	        border-radius: 0;
}

.call-now a:last-child { border-left: 2px solid #fff; }

.call-now a:hover {
	text-decoration: none;
	background-color: #316b8c;
}

/*------------------------------------*\
    
    $SIDR

	Slide out sidebar for touch devices

\*------------------------------------*/

.sidr {
    display: none;
    position: absolute;
    position: fixed;
    top: 0;
    height: 100%;
    z-index: 999999;
    width: 280px;
    overflow-x: none;
    overflow-y: auto;
	background-color: #fff;
	padding-bottom: 2em;
}

.sidr.right {
    left: auto;
    right: -280px;
}

/*------------------------------------*\
    $BREADCRUMBS
\*------------------------------------*/

.nav-breadcrumb {
	font-size: 0.875em;
	line-height: 1em;
	margin-bottom: 1em;	
}

.nav-breadcrumb a { font-weight: 400; }

/*------------------------------------*\
    $HOME PAGE
\*------------------------------------*/

.home-primary { padding: 1.625em 0; }

.home-primary .page-title { padding: 0 1em; }

.home-primary-content { text-align: center; }

.home-primary .grid-item-02 p { margin-bottom: 0; }

.home-secondary {
	background: #c2e1e5 url(images/bg-home-secondary-s.jpg) 50% 100% no-repeat;
	padding: 1.625em 0 19em 0; 
	text-align: center;
}

.home-secondary-heading { 
	font-size: 1.750em;
	line-height: 1.4em;
	margin-bottom: 0.75em;
	letter-spacing: 2px;
	color: #3a7394; 
}

@media all and (max-width: 29.938em) { /* upto 479px */

	.home-secondary .button {
		padding-left: 0;
		padding-right: 0;
		display: block;
		text-align: center;
	}

}

@media all and (min-width: 30em) { /* 480px */

	.home-primary .page-title { font-size: 1.750em; }

}

@media all and (min-width: 43.750em) { /* 700px */

	.home-primary { 
		padding: 1em 0 1.875em 0; 
		margin-top: -5em;
	}
	
	.home-secondary {
		background-image: url(images/bg-home-secondary-m.jpg);
		padding: 1.875em 0 25em 0;
	}	
	
	.home-tertiary > .container { width: 100%; }
	
	.home-tertiary-item { padding: 1.875em 0; }
		
	.home-tertiary-heading {
		font-size: 1.563em;
		letter-spacing: 2px;
	}

}

@media all and (min-width: 43.750em) and (max-width: 61.188em) { /* 700px to 979px */

	.home-tertiary .even {
		background-color: #c2e1e5;
		text-align: right;
	}
	
	.home-tertiary .even .home-tertiary-heading { color: #316b8c; }

}

@media all and (min-width: 61.250em) { /* 980px */

	.home-primary { margin-top: -14em; }	
	
	.home-primary-content { text-align: left; }
	
	.home-secondary { 		
		padding: 2.5em 0; 
		text-align: left;
		background: url(images/bg-home-secondary.jpg) 50% 0 no-repeat;
	}
	
	.home-secondary-content { width: 31.250em; }
	
	.home-tertiary { padding: 3.125em 0; }
	
	.home-tertiary > .container { width: 61.25em; }
	
	.home-tertiary-item .container { width: 100%; }
	
	.home-tertiary-item { 
		background-color: #fff; 
		padding: 0;
	}
	
	.home-tertiary-heading { color: #000; }
	
	.home-tertiary .grid { margin-left: -2em; }
	
	.home-tertiary .grid-item { padding-left: 2em; }

	.home-primary p, .home-secondary p, .home-tertiary p {
		font-size: 0.938em;
		line-height: 1.5em;
	}

}

/*------------------------------------*\
    $CTA GLOBAL
\*------------------------------------*/

.cta-global {
	padding: 1.375em 0;
	text-align: center;
	border: solid #3a7394;
	border-width: 2px 0;
	background-color: #3a7394;
	background-image: -webkit-linear-gradient(right, #5a9ca5, #3a7394);
	background-image:    -moz-linear-gradient(right, #5a9ca5, #3a7394);
	background-image:      -o-linear-gradient(right, #5a9ca5, #3a7394);
	background-image:         linear-gradient(to left, #5a9ca5, #3a7394);
}

.cta-global-heading {
	font-size: 1.563em;
	margin-bottom: 0.840em;
	font-weight: 300;
	letter-spacing: 2px;
	color: #fff;
}

.cta-global .button { 
	font-size: 1.375em;
	line-height: 1em;
	padding: 0.55em 0;
	margin-bottom: 0; 
	width: 12.750em;
}

@media all and (min-width: 61.250em) { /* 980px */

	.cta-global .grid { margin-left: -2em; }
	
	.cta-global .grid-item { padding-left: 2em; }
	
	.cta-global .grid-alpha { width: 33%; }	
	
	.cta-global .grid-beta { width: 67%; }
	
	.cta-global-heading {
		text-align: left;
		line-height: 2em;
		margin-bottom: 0;
	}
	
	.cta-global .button { width: 14em; }

}

/*------------------------------------*\
    $CONTENT FOOTER
\*------------------------------------*/

.content-footer {
	color: #fff;
	background-color: #3a7394;
	background-image: -webkit-linear-gradient(right, #5a9ca5, #3a7394);
	background-image:    -moz-linear-gradient(right, #5a9ca5, #3a7394);
	background-image:      -o-linear-gradient(right, #5a9ca5, #3a7394);
	background-image:         linear-gradient(to left, #5a9ca5, #3a7394);
}

.map {
	position: relative;
	height: 20.313em;
	background: url(images/map-s.png) 50% 0 no-repeat;
}

.map-link {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.contact-global-content {
	padding: 1.875em 0;
	text-align: center;
}

.content-footer-heading {
	font-size: 1.25em;
	line-height: 1.3em;
	margin-bottom: 0.313em;
	letter-spacing: 2px;
	color: #fff;
}

.contact-global-content a { color: #fff; }

@media all and (min-width: 43.750em) { /* 700px */

	.map {
		height: 20.25em;
		background-image: url(images/map-m.png);
	}
	
	.contact-global-content { text-align: left; }
	
	.contact-global-content .grid { margin-left: -4.688em; }
	
	.contact-global-content .grid-item { padding-left: 4.688em; }

}

@media all and (min-width: 61.250em) { /* 980px */

	.map {
		height: 27.5em;
		background-image: url(images/map.png);
	}	
	
	.contact-global-content .grid { margin-left: 0; }
	
	.contact-global-content .grid-item { padding-left: 0; }
	
	.contact-global-content .icon { width: 18px; }

}

/*------------------------------------*\
    $NEWSLETTER SUBSCRIPTION
\*------------------------------------*/

.subscribe-content p { margin-bottom: 0.75em; }

.form-subscribe input[type="text"] { 
	width: 100%;
	font-size: 1em;
	line-height: 1em;
	padding: 0.625em;
	background-color: #396570;
	color: #fff;
	border: none;
}

.subscribe-form-footer { margin-top: 0.875em; }

.subscribe-button {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	overflow: hidden;
	width: 40px;
	background-color: #fff;
	-webkit-border-radius: 0;
	   -moz-border-radius: 0;
	        border-radius: 0;	
}

.subscribe-button:hover { background-color: #42c3d3; }

.subscribe-button:before, .subscribe-button:after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 24px;
	height: 24px;
	margin-top: -12px;
	margin-left: -12px;
	background: url(images/sprite.png) -200px -500px no-repeat;
	-webkit-transition: all .25s ease-in-out;
       -moz-transition: all .25s ease-in-out;
        -ms-transition: all .25s ease-in-out;
         -o-transition: all .25s ease-in-out;
            transition: all .25s ease-in-out;
}

.subscribe-button:after {
	background-position: -300px -500px; 
	left: -24px;
}

.subscribe-button:hover:before { opacity: 0; }

.subscribe-button:hover:after { left: 50%; }

/*------------------------------------*\
    $CONTENT CTA
\*------------------------------------*/

.cta-content { 
	font-size: 1.25em; 
	line-height: 1.4em;
}

.cta-content a { 
	display: block;
	color: #1c7199; 
}

.cta-content a:hover { color: #42c3d3; }

/*------------------------------------*\
    $OFFERS
\*------------------------------------*/

@media all and (max-width: 43.750em) { /* 700px */

	.list-offer .button { 
		width: 100%; 
	}	

}

/*------------------------------------*\
    $LIST ALL PAGES
\*------------------------------------*/

.list-all-pages { margin-bottom: 1.618em; }

.list-all-pages a { 
	display: block; 
	font-weight: normal;
}

.list-all-pages a:hover { text-decoration: none; }

.list-all-pages .is-parent a {
	background-color: #5a9ca5;
}

.list-all-pages .is-parent .list-heading {
	color: #fff;
	text-transform: uppercase;
	font-size: 1em;
	padding: 0.5em 1em;
	margin-bottom: 0;
}

.list-all-pages .is-children a {
	padding: 1em 0;
	border-bottom: 1px solid #5a9ca5;
}

.list-all-pages .is-children .list-heading { 
	font-size: 1em; 
	line-height: 1.4em;
	margin-bottom: 0.5em;
}

.list-all-pages .is-children p { 
	color: #000; 
	margin-bottom: 0;
}

@media all and (min-width: 43.750em) { /* 700px */

	.list-all-pages .is-parent .list-heading { font-size: 1.25em; }	

	.list-all-pages .is-children .list-heading { font-size: 1.25em; }
	
	.list-all-pages .is-children p {
		padding-right: 5.625em;
		position: relative;
	}
	
	.list-all-pages .is-children p:before {
		content: '';
		position: absolute;
		right: 0;
		top: 50%;
		width: 43px;
		height: 64px;
		margin-top: -32px;
		background: url(images/sprite.png) -500px -600px no-repeat;
	}

}

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {
	
    .list-all-pages .is-children p:before { 
		background-image: url(images/sprite@2x.png);
		background-size: 600px 800px;
	}
		
}

/*------------------------------------*\
    $PASSWORD FORM
\*------------------------------------*/

.protected-post-form label {
	display: block;
	font-weight: bold;
	margin-bottom: 0.5em;
}

.protected-post-form br { display: none; }

.protected-post-form input {
	width: 100%;
	margin-bottom: 0.625em;
}

.protected-post-form input[type="password"] { padding: 0.625em; }

@media all and (min-width: 61.250em) { /* 980px */

	.protected-post-form .form-main { overflow: hidden; }
	
	.protected-post-form input { float: left; }
	
	.protected-post-form input[type="password"] {
		float: left;
		width: 70%;
		padding: 0.8em;
	}
	
	.protected-post-form input[type="submit"] {
		float: right;
		width: 28%
	}

}

/*------------------------------------*\
    $AREA
\*------------------------------------*/

.area {
	background-color: #316b8c;
	color: #fff;
	padding: 1.25em;
	line-height: 1.2em;
}

.area-heading, .list-area-heading { 
	display: inline; 
	color: #fff;
	font-size: 0.75em;
	line-height: 1.2em;
	margin-bottom: 0;
	font-weight: 300;
}

.area-heading { font-weight: 700; }

.list-area-heading a {
	color: #fff;
	font-weight: 300;
}






/*------------------------------------*\
    4. $STATE
\*------------------------------------*/

.is-hidden { display: none; }

@media all and (max-width: 43.688em) { /* 489px */

	.palm-is-hidden { display: none; }

}

@media all and (min-width: 43.688em) and (max-width: 61.188em) { /* 699px to 979px */

	.lap-is-hidden { display: none; }

}

@media all and (min-width: 61.250em) { /* 980px */

	.desk-is-hidden { display: none; }

}

.is-invisible {
       -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
           filter: alpha(opacity=0);
     -moz-opacity: 0;
   -khtml-opacity: 0;
          opacity: 0;
}

.no-transition {
	-webkit-transition: none;
       -moz-transition: none;
        -ms-transition: none;
         -o-transition: none;
            transition: none;
}

.spinner {
	height: 60px;
	width: 60px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -30px;
	margin-left: -30px;
	-webkit-animation: rotation 1s infinite linear;
	   -moz-animation: rotation 1s infinite linear;
	     -o-animation: rotation 1s infinite linear;
	        animation: rotation 1s infinite linear;
	border-left: 6px solid rgba(255,255,255,.15);
	border-right: 6px solid rgba(255,255,255,.15);
	border-bottom: 6px solid rgba(255,255,255,.15);
	border-top: 6px solid rgba(255,255,255,.8);
	border-radius: 100%;
}

@-webkit-keyframes rotation {
	from { -webkit-transform: rotate(0deg); }
	to { -webkit-transform: rotate(359deg); }
}

@-moz-keyframes rotation {
	from { -moz-transform: rotate(0deg); }
	to { -moz-transform: rotate(359deg); }
}

@-o-keyframes rotation {
	from { -o-transform: rotate(0deg); }
	to { -o-transform: rotate(359deg); }
}

@keyframes rotation {
	from { transform: rotate(0deg); }
	to { transform: rotate(359deg); }
}





/*------------------------------------*\
    5. $THEME
\*------------------------------------*/

/*------------------------------------*\
    $COLOURS
\*------------------------------------*/

/* Brand primary and secondary colours */
.bpc, blockquote { color: #42c3d3; }
.bsc { color: #316b8c; }

.text-white { color: #fff; }
.text-light { color: #eee; }
.text-neutral { color: #808080; }
.text-dark { color: #333; }

::selection {
    background: #1dbdef;
    color: #fff;
    text-shadow: none;
}

/*------------------------------------*\
    $BACKGROUNDS
\*------------------------------------*/

/* Brand primary and secondary background colours */
.bpb { background-color: #42c3d3; }
.bsb, .island { background-color: #316b8c; }

.bg-light { background-color: #eee; }
.bg-neutral { background-color: #808080; }
.bg-dark { background-color: #333; }




