/*
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;
}

* { box-sizing: border-box;	}

ul, ol { list-style: none; }

body {
    background: #fff;
    font: normal 100%/1.618em 'Droid Serif', Arial, Helvetica, sans-serif;
    color: #7e8083;
}

/* 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: normal; 
	color: #00a99d;
}

h1, .alpha {
    font-size: 1.875em; 
    line-height: 1.26em;
	margin-bottom: 0.7em; 
	color: #7e8083;
}

h2, .beta {
    font-size: 1.125em; /* 18px*/
    line-height: 1.444em; /* 26px*/
	margin-bottom: 1.167em; /* 21px*/
}

h3, .gamma {
    font-size: 1em; /* 16px*/
    line-height: 1.5em; /* 24px*/
	margin-bottom: 1.313em; /* 21px*/
}

h4, .delta {
    font-size: 1em; /* 16px*/
    line-height: 1.5em; /* 24px*/
	margin-bottom: 1.313em; /* 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;
    font-weight: 400;
    color: #009de0;
	transition: all .25s ease-in-out;
}

a:hover {
    text-decoration: underline;
    outline: none;
    color: #1cbbb4;
}

a:focus, a:active { outline: none }

a.no-td:hover { text-decoration: none; }

a.block-link { display: block; }

/*------------------------------------*\
    $BUTTONS
\*------------------------------------*/

a.button, button, input[type="submit"] {
	font-size: 1em;
    line-height: 1em;
    padding: 1.125em 1.875em;
    font-weight: 700;
	background-color: #009de0;
	color: #fff;
	border-radius: 5px;
	box-shadow: 0 3px 6px rgba(3,3,3,.35);
}

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: #1cbbb4;
}

a.button-alt {
	color: #fff;
	background-color: #1cbbb4;
}

a.button-alt:hover {
	color: #fff;
	background-color: #009de0;
}

a.button-outline {
	padding: 0.75em 1.5em;
	color: #7e8083;
	background-color: transparent;
	border: 1px solid #b29b93;
	border-radius: 1000px;
	box-shadow: none;
}

a.button-outline:hover {
	background-color: #b29b93;
	color: #fff;
}

a.button-outline:hover strong { color: #fff; }

a.button-white {
	color: #fff;
	border-color: #fff;
}

a.button-white:hover {
	background-color: #fff;
	color: #009de0;
}

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 {
    cursor: pointer;
    border: none;
	transition: all .25s ease-in-out;
	-webkit-appearance: none; /* Remove iOS default styles */
}

/*------------------------------------*\
    $OTHER ELEMENTS
\*------------------------------------*/

hr {
	border: solid #d8cdc8;
    border-width: 1px 0 0 0;
    clear: both;
	width: 100%;
	margin: 2.5em auto;
}

img, iframe { 
	vertical-align: top; 
	max-width: 100%;
}





/*------------------------------------*\
    2. $LAYOUT
\*------------------------------------*/

.header, .navigation, .main, .footer { width: 100%; }

.container {
	width: 18.125em; /* 290px */
	margin: 0 auto;
}

@media all and (min-width: 30em) { /* 480px */

	.container { width: 26.875em; } /* 430px */	

}

@media all and (min-width: 43.750em) { /* 700px */

	.container { width: 41.25em; }

}

@media all and (min-width: 61.250em) { /* 980px */

	.container { width: 61.25em; } /* 980px */
	
}

/*------------------------------------*\
    $HEADER
\*------------------------------------*/

.top { padding: 0.813em 0; }

.logo { 
	display: block;
	width: 15em; 
}

@media screen and (min-width: 30em) {

	.logo { width: 18em; }
	
}

@media screen and (max-width: 43.6875em) {

	.not-home .header { 
		border-bottom: 1px solid #d8cdc8; 
		margin-bottom: 1.5em;
	}
	
}

@media screen and (min-width: 43.75em) {

	.top { padding: 1.5em 0; }

	.logo { 
		margin-top: 5px;
		width: 26.25em; 
	}

	.top .grid { margin-left: -0.5em; }

	.top .grid-item { 
		width: 43%; 
		padding-left: 0.5em;
	}

	.top .grid-beta { width: 57%; }

	.contact .button {
		padding: 0.5em 1em;
		font-size: 0.875em;
	}
	
}

@media screen and (min-width: 61.25em) {

	.nav-detail { 
		font-size: 0.875em; 
		line-height: 1em;
	}

	.nav-detail li { margin-right: 1em; }

	.nav-detail li:last-child { margin-right: 0; }

	.nav-detail .is-heading {
		display: inline-block;
		padding: 0.75em 0.75em;
	}

	.nav-detail li.has-sub-menu { float: right; }

	.nav-social li {
		margin-top: 5px;
		margin-right: 0;
		margin-left: 5px;
	}

	.nav-social .icon {
		width: 25px;
		height: 25px;
	}

	.top { padding: 2em 0; }

	.logo { width: 570px; }

	.contact .button {
		font-size: 1.25em;
		padding: 0.35em 1.25em;
	}
	
}

/*------------------------------------*\
    
	$TOUCH NAV
	
	Only displayed on touch devices
	
\*------------------------------------*/

.nav-touch-toggle {
	position: absolute;
	top: 0; 
	right: 0;
	bottom: 0;
	width: 45px;
	text-indent: -9999em;
	background-color: #009de0;
}

.nav-touch-toggle:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 18px;
	height: 16px;
	margin-left: -9px;
	margin-top: -8px;
	background: url(images/sprite.png) -400px -200px no-repeat;
}

.nav-touch-top {
	padding: 1em 1.25em; 
	position: relative;
}

.nav-touch-search { width: 75%; }

.nav-touch-close { 
	position: absolute;
	top: 50%;
	right: 1em;
	width: 24px;
	height: 24px;
	margin-top: -12px;
}

.nav-touch {
	width: 100%;
	display: block;
	font-size: 0.875em;
	text-transform: uppercase;
}

.nav-touch a {
	position: relative;
	display: block;
	width: 100%;
	background-color: #b29b93;
	color: #fff;
	border-top: 1px solid #d8cdc8;
	padding: 0.625em 1em;
}

.nav-touch .menu-item-has-children > a:before, .nav-touch ul a:before {
	content: '';
	position: absolute;
	top: 50%;
	right: 1em;
	width: 12px;
	height: 12px;
	margin-top: -6px;
	background: url(images/sprite.png) -200px -300px no-repeat;
}

.nav-touch ul { display: none; }

.nav-touch ul a:before {
	background-position: -100px -300px;
}

.nav-touch ul ul a {
	padding-right: 1em;
	padding-left: 2em;
}

.nav-touch ul ul a:before {
	right: auto;
	left: 1em;
	background-position: -100px -300px;
}

.nav-touch a:hover ul { display: block; }

.nav-touch a:hover { text-decoration: none; }

.nav-touch .current-menu-item > a {
	text-decoration: none;
	color: #fff;
	background-color: #009de0;
}

/*------------------------------------*\
    $FULL SIZE NAV
\*------------------------------------*/

@media all and (min-width: 43.75em) {

	.navigation { border-top: 1px solid #d8cdc8; }

	.nav-primary {
		text-transform: uppercase;
		font-size: 0.875em;
	}
	
	.nav-primary li {
		position: relative;
		z-index: 500;
	}
	
	.nav-primary > li { float: left; }
	
	.nav-primary a {
		color: #7e8083;
		font-size: 0.938em;
		line-height: 3em;
		padding: 0 1em;
		text-align: left;
	}

	.nav-primary li:hover > a {
		background-color: #b29b93;
		color: #fff;
		text-decoration: none;
	}

	.nav-primary li:hover > ul { display: block }
	
	/*------------------------------------*\
		$2ND LEVEL
	\*------------------------------------*/
	
	.nav-primary ul, .nav-primary ul li { width: 18em; }
	
	.nav-primary ul {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		float: left;
		z-index: 99999;  
	}
	
	.nav-primary ul a {
		background-color: #b29b93;
		border-bottom: 1px solid #d8cdc8;
		color: #fff;
		line-height: 1.4em;
		padding: 0.75em 0.875em;
		width: 100%;
		height: auto;
	}
	
	.nav-primary ul :hover > a {
		background-color: #009de0;
		color: #fff;
	}
	
	/*------------------------------------*\
		$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 {
		background-color: #b29b93;
		color: #fff;
	}
	
	* 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 {
		background-color: #b29b93;
		color: #fff;
	}
	
	/*------------------------------------*\
		$2ND LEVEL CURRENT
	\*------------------------------------*/
	
	.nav-primary ul li.current-menu-item > a, .nav-primary ul li.current-menu-ancestor > a { 
		background-color: #009de0;
		color: #fff;
	}
	
}

@media screen and (min-width: 61.25em) {

	.no-banner .navigation { 
		border-bottom: 10px solid #b29b93; 
		margin-bottom: 2em;
	}

	.nav-primary a { 
		font-size: 1em;
		padding: 0 2.75em; 
	}

}

/*------------------------------------*\
    $CAROUSEL
\*------------------------------------*/

.feature { 
	position: relative; 
	overflow: hidden;
	height: 15em;
	background-color: #15a0cf;
}

.feature-mobile { 
	background-position: 50% 0;
	background-repeat: no-repeat;
}

.feature-content, .banner-content {
	position: absolute;
	top: 30%;
	left: 1.25em;
	width: 50%;
	color: #fff;
	text-align: center;
}

.feature-heading {
	color: #fff;
	font-size: 0.875em;
	line-height: 1em;
	text-transform: uppercase;
}

.feature-subheading {
	display: block;
	margin-top: 0.25em;
	font-size: 1.5em;
	line-height: 1.2em;
	text-transform: capitalize;
}

.feature .button {
	font-size: 0.875em;
	line-height: 1.2em;
}

@media screen and (min-width: 43.75em) {

	.feature { 
		height: 20em; 
		margin-bottom: 1em;
	}

	.feature-content {
		top: 2.5em;
		left: 2em;
		width: 20em;
	}

	.feature p {
		font-size: 0.875em;
		line-height: 1.5em;
	}
	
}

@media all and (min-width: 61.250em) { /* 980px */

	.feature { 
		height: 28.125em; 
		margin-bottom: 0;
	}

	.feature .container {
		position: absolute;
		top: 0;
		bottom: 0;
		left: 50%;
		margin-left: -30.625em;
	}

	.feature-content {
		top: 5.625em;
		left: 1em;
		width: 29em;
	}

	.feature-heading { font-size: 1em; }

	.feature-subheading { font-size: 2.375em; }

	.feature p { font-size: 1em; }

	.feature .button {
		font-size: 1.25em;
		padding: 0.5em 1.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: 24px;
    height: 24px;
    display: block;
    position: absolute;
	top: 50%;
	left: 5%;
	margin-top: -12px;
    z-index: 100000;
    cursor: pointer;
    text-indent: -9999px;
    background: url(images/sprite.png) 0 -200px no-repeat;
}

.flex-direction-nav a.flex-next {
	left: auto;
	right: 5%;
	background-position: -100px -200px;
}

/*------------------------------------*\
    $CONTROL NAV - DOTS
\*------------------------------------*/

.feature-nav {
	position: absolute;
	z-index: 999;
	bottom: 0;
	right: 0;
	left: 0;
	padding: 5px 0;
	background-color: #b29b93;
}

ol.flex-control-nav {
	margin-bottom: 0;
	text-align: center;
	height: 10px;
}

.flex-control-nav li {
    margin: 0 2px;
    display: inline-block;
    zoom: 1;
    *display: inline;
	text-indent: -9999em;
}

.flex-control-paging li a {
    width: 8px;
    height: 8px;
    display: block;
    background-color: #fff;
    cursor: pointer;
	border-radius: 100%;
}

.flex-control-paging li a.flex-active {
    background-color: #008dd6;
    box-shadow: inset 0 2px 3px rgba(0,122,199,.75);
    cursor: default;
}

@media screen and (min-width: 61.25em) {

	.feature-nav { 
		height: 22px; 
		padding: 7px 0;
	}
	
}

/*------------------------------------*\
    $PROMO
\*------------------------------------*/

.promo-intro, .promo-heading { color: #8e604f; }

.promo-intro {
	text-align: center;
	padding: 1.25em 0;
}

.promo-heading { 
	font-size: 1.5em; 
	line-height: 1.3em;
	margin-bottom: 0.75em;
}

.promo-intro p {
	font-size: 0.875em;
	line-height: 1.5em;
}

.promo-main .container { width: 100%; }

.promo .grid { margin-left: 0; }

.promo .grid-item { padding-left: 0; }

.promo-item { 
	position: relative; 
	text-align: center;
	padding-bottom: 1em;
}

.promo-item a {
	position: absolute;
	z-index: 5;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.promo-item-heading {
	font-size: 0.875em;
	line-height: 1.2em;
	text-transform: uppercase;
	color: #009de0;
}

.promo-item-subheading {
	display: block;
	font-size: 0.938em;
	text-transform: lowercase;
	font-style: italic;
	color: #8e604f;
}

.promo-item-image { 
	border-top: 1px solid #009de0;
	background-color: #009de0; 
}

@media screen and (min-width: 30em) and (max-width: 43.75em) {

	.promo-main .container { width: 30em; }
	
}

@media screen and (min-width: 43.75em) {

	.promo-intro { padding: 1.875em 0; }

	.promo-heading { font-size: 1.875em; }
	
}

@media screen and (min-width: 61.25em) {

	.promo-intro { padding: 1.25em 0; }

	.promo-intro .container { width: 50em; }

	.promo-main .container { width: 61.25em; }
	
	.promo .grid { margin-left: -0.625em; }

	.promo .grid-item { padding-left: 0.625em; }

	.promo-item-heading {
		font-size: 0.938em;
		line-height: 1.2em;
		margin-bottom: 0.5em;
	}

	.promo-item-heading br { display: none; }

	.promo-item-image { position: relative; }

	.promo-item-image:before, .promo-item-content { transition: all .25s ease-in-out; }

	.promo-item-content {
		position: absolute;
		bottom: -75px;
		left: 0;
		right: 0;
		font-size: 0.875em;
		line-height: 1.3em;
		padding: 1em;
		font-style: italic;
		color: #fff;
		-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
	    filter: alpha(opacity=0);
		opacity: 0;
	}

	.promo-item-image:before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: -1px;
		left: 0;
		background-color: #05a2d8;
		-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
	    filter: alpha(opacity=0);
		opacity: 0;
	}

	.promo-item:hover .promo-item-image:before { opacity: 0.5; }

	.promo-item:hover .promo-item-content { 
		bottom: 0; 
		-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	    filter: alpha(opacity=100);
		opacity: 1;
	}

	.promo-item p { margin-bottom: 1em; }

	.promo-item .is-link {
		display: inline-block;
		padding-top: 0.5em;
		text-transform: uppercase;
		border-top: 1px solid #fff;
		font-style: normal;
	}

}

/*------------------------------------*\
    $HOME INTRO
\*------------------------------------*/

.intro, .intro-heading { color: #8e604f; }

.intro { 
	padding: 1.25em 0;
	text-align: center; 
}

.intro-heading {
	font-size: 1.5em;
	line-height: 1.2em;
}

.intro-subheading {
	display: block;
	margin-top: 0.5em;
	text-transform: uppercase;
	font-size: 0.65em;
	line-height: 1.4em;
}

.intro p {
	font-size: 0.875em;
	line-height: 1.5em;
}

@media screen and (min-width: 43.75em) {

	.intro { padding: 1.875em 0; }

	.intro-heading { font-size: 1.875em; }

	.intro-subheading { 
		font-size: 0.6em; 
		margin-top: 0.3em;
	}
	
}

/*------------------------------------*\
    $HOME CONTENT
\*------------------------------------*/

.home-primary, .home-primary-heading { color: #8e604f; }

.home-primary { overflow: hidden; }

.not-home .home-primary { border-top: 1px solid #ebebeb; }

.home-primary .item-odd { background-color: #ebebeb; }

.home-primary-main { padding: 1.875em 0; }

.item-even .home-primary-main { padding: 4.375em 0 2em 0; }

.home-primary-content { 
	position: relative;
	z-index: 2;
	width: 20.3125em; 
}

.home-primary-content p { font-size: 0.875em; }

.home-primary-content .button { 
	font-size: 1.25em; 
	padding: 0.8em 1.5em;
}

.item-even .home-primary-content { float: right; }

.home-primary-image {
	position: absolute;
	bottom: 0;
	right: -90px;
	width: 30.4375em;
}

.item-even .home-primary-image {
	left: -90px;
	right: auto;
}

@media screen and (min-width: 61.25em) {

	.home-primary-main { padding: 3.4375em 0 1.875em 0; }

	.home-primary-heading {
		font-size: 1.875em;
		line-height: 1.3em;
		margin-bottom: 0.5em;
	}

	.home-primary-content { width: 30.625em; }

	.home-primary-image {
		width: 30.4375em;
		right: 0;
	}

	.item-even .home-primary-main { padding: 5em 0 3.75em 0; }

	.item-even .home-primary-image { left: 0; }

	.home-primary-content .button { margin-bottom: 0; }
	
}

/*------------------------------------*\
    $BANNER
\*------------------------------------*/

.banner {
    width: 100%;
    height: 10em;
	position: relative;
	background-position: 50% 0;
	background-repeat: no-repeat;
	background-size: cover;
}

@media screen and (min-width: 43.75em) {

	.banner { 
		height: 18.75em; 
		border-bottom: 10px solid #b29b93;
	}

	.banner-heading {
		font-size: 1.875em;
		line-height: 1.3em;
		margin-bottom: 0; 
		color: #fff; 
	}

	.banner p { font-size: 1em; }
	
}

@media all and (min-width: 61.250em) { /* 980px */

	.banner { 
		background-size: auto; 
		border-bottom-width: 20px;
		height: 23.75em;
	}

	.banner-content { 
		position: relative; 
		width: 30.625em;
		top: 7.1875em;
		left: 0;
	}	

	.banner-heading { font-size: 2.5em; }

	.banner p { 
		font-size: 1.125em; 
		margin-bottom: 1em;
	}

	.banner .button { 
		font-size: 1.25em; 
		padding: 0.5em 1.5em;
		margin-bottom: 0;
	}

}

/*------------------------------------*\
    $CONTENT
\*------------------------------------*/

.content h3, .content h4, .content h5, .content h6 { text-transform: uppercase; }

@media all and (max-width: 43.750em) { /* 700px */

	.page-title { font-size: 1.5em; }

	.content h2, .content h3, .content h4, .content h5, .content h6 {
		font-size: 1em;
		line-height: 1.4em;
		margin-bottom: 1.167em;
	}	

}

@media all and (min-width: 61.250em) { /* 980px */

	.content {
		float: left;
		padding: 0;
		width: 38.75em;
	}
	
	.content-right { float: right; }
	
	.content-full { 
		float: none;
		width: 100%;
	}
	
}

/*------------------------------------*\
    $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 */

}

/*------------------------------------*\
    $NUMBERED 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: 24px;
	height: 24px;
	text-align: center;
	background-color: #b29b93;
	color: #fff;
	font-size: 14px;
	line-height: 24px; /* Same as height */
	border-radius: 100%;
}

/*------------------------------------*\
    $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: 16px;
	height: 16px;
	background: url(images/sprite.png) -400px -100px no-repeat;
}

@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 {	
	margin-left: 0; 
	list-style: none;
}

ul.child-pages li, ul.list-pages li { 
	border-bottom: 1px solid #fff; 
	margin-bottom: 0;
}

ul.child-pages a, ul.list-pages a { 
	position: relative;
	display: block; 
	padding: 1em 2em 1em 1em;
	background-color: #009de0;
	color: #fff;
}

ul.child-pages a:hover, ul.list-pages a:hover {
	text-decoration: none;
	background-color: #1cbbb4;
}

ul.child-pages a:before, ul.list-pages a:before {
	content: '';
	position: absolute;
	top: 50%;
	right: 1em;
	display: block;
	width: 24px;
	height: 24px;
	margin-top: -12px;
	background: url(images/sprite.png) -100px -200px no-repeat;    
}

/*------------------------------------*\
    $BLOCKQUOTE
\*------------------------------------*/

blockquote {
	position: relative;
	font-size: 1.125em;
	line-height: 1.618em;
	text-align: center;
	font-style: italic;
	border: solid #eee;
	border-width: 10px 0;
}

blockquote p:last-child { margin: 0 }

@media all and (min-width: 61.250em) { /* 980px */

	blockquote { padding: 1.5em 2em; }

}

/*------------------------------------*\
    $BLOG
\*------------------------------------*/

.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;
	border-radius: 2px;
}

/*------------------------------------*\
    $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 0;
	font-style: italic;
	border-bottom: 1px solid #ddd;
}

/*------------------------------------*\
    $GALLERY
\*------------------------------------*/

.gallery-item { padding-bottom: 0.625em; }

.gallery br { display: none; }

.gallery img {
	width: 100%;
	height: auto !important;
    border: 1px solid #ddd !important;
    background: #fff;
    padding: 8px;
}

.gallery img:hover { border: 1px solid #808080 !important }

@media screen and (min-width: 43.75em) {

	.gallery { 
		overflow: hidden;
		margin-left: -1em; 
	}

	.gallery-item {
		float: left;
		width: 100%;
		padding-left: 1em;
		padding-bottom: 1em;
		transition: all .25s ease-in-out;
	}

	.gallery-columns-2 .gallery-item { width: 50%; }

	.gallery-columns-3 .gallery-item { width: 33.333%; }

	.gallery-columns-4 .gallery-item { width: 25%; }

	.gallery-columns-5 .gallery-item { width: 20%; }

	.gallery-columns-6 .gallery-item { width: 16.667%; }

	.gallery-columns-7 .gallery-item { width: 14.285%; }

	.gallery-columns-8 .gallery-item { width: 12.5%; }

	.gallery-columns-9 .gallery-item { width: 11.1%; }

}

/*------------------------------------*\
    $SIDEBAR
\*------------------------------------*/

@media all and (min-width: 61.250em) { /* 980px */

	.sidebar {
		float: right;
		width: 18.75em;
		padding-top: 1.75em;
	}	

}

.sidebar > div, .sidebar-blog > div { margin-bottom: 2em; }

.sidebar-heading { 
	font-size: 1.875em;
  	line-height: 1.26em;
  	margin-bottom: 0.7em;
  	color: #7e8083;
}

.sidebar p {
	color: #00a99d;
}

/*------------------------------------*\
    $ISLAND
\*------------------------------------*/

.island {
	padding: 1em 1.168em;
	color: #fff;
}

.island-heading, .island p { color: #fff; }

/*------------------------------------*\
    $UI LIST
\*------------------------------------*/

.ui-list {
    list-style: none;
    border-top: 1px solid #ddd;
	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;
	border: solid #eee;
	border-width: 1px 0 1px 1px;
}

.form-search .search-submit {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 45px;
	border: none;
	text-indent: -9999em;
	margin: 0;
}

.form-search .search-submit:before {
	content: '';
	position: absolute;
	top: 50%;
	right: 50%;
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-top: -8px;
	margin-right: -8px;
	background: url(images/sprite.png) -200px -100px no-repeat;
}

/*------------------------------------*\
    $SIDEBAR - LEFT
\*------------------------------------*/

.sidebar-left { 
	margin-bottom: 1em;
	border-top: 1px solid #d8cdc8;
}

.sidebar-left .contact-detail {
    padding: 1em 0;
    border-bottom: 1px solid #d8cdc8;
}

.sidebar-left h4 {
    font-size: 0.938em;
    line-height: 1em;
    font-weight: bold;
    text-transform: uppercase;
  	margin-bottom: 0.313em;
  	color: #b29b93;
}

.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%; }

.is-hours { display: block; }

.top-bar .is-hours { display: inline-block; }

@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: 1.5em 1.875em 2.5em 1.875em; }	
	
	.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 */

}





/*------------------------------------*\
    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;   
}

.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-arrow-left-s { background-position: 0 -300px; }
.icon-arrow-right-s { background-position: -100px -300px; }
.icon-arrow-down-s { background-position: -200px -300px; }
.icon-arrow-up-s { background-position: -300px -300px; }
.icon-facebook { background-position: -400px -300px; }
.icon-googleplus { background-position: -500px -300px; }

/*------------------------------------*\
    $ROW 5
\*------------------------------------*/

.icon-address-white { background-position: 0 -400px; }
.icon-hours-white { background-position: -100px -400px; }

/*------------------------------------*\
    $RETINA ICONS
\*------------------------------------*/

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {
	
	.icon, .nav-touch-toggle:before, .nav-touch .menu-item-has-children > a:before, .nav-touch ul a:before, .flex-direction-nav a, ul.list-ticked li:before, ul.child-pages a:before, ul.list-pages a:before, .form-search .search-submit:before, .list-accordion-title a:before  {
		background-image: url(images/sprite@2x.png);			
		background-size: 600px 800px;
	}
		
}

/*------------------------------------*\
    $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-title { 
	font-size: 1em;
	line-height: 1.3em;
	margin-bottom: 1px;
}

.list-accordion-title.open { 
	text-decoration: none;
	border-bottom: none; 
}

.list-accordion-title a { 
	display: block; 
	position: relative; 
	padding: 1em 2em 1em 1em;
	background-color: #009de0;
	color: #fff;
}

.list-accordion-title a:hover, .list-accordion-title.open a {
	background-color: #1cbbb4;
	text-decoration: none;
}

.list-accordion-content {
	padding: 1em;
}

.list-accordion-title a:before {
	content: '';
	position: absolute;
	top: 50%;
	right: 1em;
	display: block;
	width: 24px;
	height: 24px;
	margin-top: -12px;
	background: url(images/sprite.png) -200px -200px no-repeat;   
}	
	
.list-accordion-title.open a:before { background-position: -300px -200px; }

/*------------------------------------*\
    $CTA MOBILE
\*------------------------------------*/

.cta-mobile {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 999;
}

.nav-cta-mobile { 
	font-size: 1.25em; 
	text-transform: uppercase;
	text-align: center;
}

.nav-cta-mobile li { width: 100%; }

.nav-cta-mobile a {
	padding: 0.75em 0;
	font-weight: 700;
	background: #05a2d8; /* Old browsers */
	background: linear-gradient(to right, #05a2d8 0%,#17b5bc 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#05a2d8', endColorstr='#17b5bc',GradientType=1 ); /* IE6-9 */
	color: #fff;	
}

.nav-cta-mobile a:hover {
	text-decoration: none;
}

/*------------------------------------*\
    
    $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;
}

.site { position: relative; }

.site:before {
	content: '';
	transition: background .3s ease-in-out;	
}

.sidr-open .site:before {
	content: '';
	position: absolute;
	z-index: 9999;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: rgba(0,0,0,.75);
}

/*------------------------------------*\
    $NEWSLETTER SUBSCRIPTION
\*------------------------------------*/

.subscribe { 
	padding: 1.875em 0; 
	text-align: center;
}

.subscribe-heading, .subscribe p { display: inline; }

.subscribe p {
	color: #8e604f;
	font-style: italic;
	font-size: 0.875em;
}

.form-subscribe { padding-top: 1em; }

.form-subscribe input { 
	margin-bottom: 0.313em; /* 5px */
	font-size: 1em;
	line-height: 1em;
}

.form-subscribe input[type="text"] { 
	padding: 0.5em; 
	color: #8e604f;
	font-style: italic;
}

.form-subscribe input[type="submit"] { 
	padding: 0.7em 1em; 
	box-shadow: none;
}

@media screen and (min-width: 61.25em) {

	.subscribe .grid { margin-left: 0; }

	.subscribe .grid-item {
		padding-left: 0;
		width: 54%;
	}

	.subscribe .grid-beta { width: 46%; }

	.subscribe-content { 
		text-align: left; 
		padding-top: 0.3125em;
	}

	.subscribe-heading { font-size: 0.938em; }

	.subscribe p { font-size: 0.75em; }

	.form-subscribe { padding-top: 0; }

	.subscribe input[type="text"] { width: 11em; }
	
}

/*------------------------------------*\
    $BREADCRUMBS
\*------------------------------------*/

.nav-breadcrumb {
	font-size: 0.813em;
	line-height: 1.2em;
	margin-bottom: 1em;	
}

@media screen and (min-width: 43.75em) {

	.nav-breadcrumb {
		font-size: 0.875em;
	}
	
}

/*------------------------------------*\

    $CONVERSION PAGE

	page-conversion.php

\*------------------------------------*/

.page-conversion { background-color: #f9f9f9; }

.page-conversion .page-title { font-size: 1.875em; }

.page-conversion-intro h2 { font-size: 1.125em; }

.page-conversion ul.list-ticked { margin-bottom: 1.618em; }

.page-conversion .list-ticked li { margin-bottom: 0.75em; }

.page-conversion-intro .intro-image {
	overflow: hidden;
	padding: 9px;
	background-color: #fff;
	border: 1px solid #ccc;
	border-radius: 15px;
}

.page-conversion-intro img { border-radius: 10px; }

.page-conversion-cta { text-align: center; }

.page-conversion-quote img {
	margin-right: 1em;
	padding: 9px;
	background-color: #fff;
	border: 1px solid #ccc;
	border-radius: 100%;
}

.page-conversion-quote, .page-conversion-footer { 
	background-color: #fff; 
	border: solid #eee;
	border-width: 1px 0; 
}

.page-conversion-intro, .page-conversion-quote, .page-conversion-content, .page-conversion-footer { padding: 1.25em; }

.page-conversion-form-heading { 
	text-align: center;
	text-transform: uppercase;
}

.page-conversion-form-heading { font-size: 1.5em; }

.page-conversion-cta { font-size: 1.25em; }

.page-conversion a.button-cta { font-size: 1em; }

@media all and (max-width: 43.688em) { /* 699px */
	
	.page-conversion-cta .is-alternative {
		display: block;
		margin: 0.313em 0;
	}

	.page-conversion a.button-cta { 
		text-align: center;
		display: block;
	}		
	
	.page-conversion-quote .grid-alpha {
		width: 45%;
		padding-right: 1em;
	}
	
	.page-conversion-quote .grid-beta { float: none; }

}

@media all and (min-width: 43.750em) { /* 700px */
	
	.page-conversion .page-title { font-size: 3em; }
	
	.page-conversion-intro h2 { 
		font-size: 1.5em;
		width: 72%;
		margin: 0 auto 1.5em auto;
	}
	
	.page-conversion ul.list-ticked { margin-bottom: 0; }
	
	.page-conversion .list-ticked li {
		font-size: 1.125em; 
		margin-bottom: 1em; 
	}
	
	.page-conversion-intro .intro-image { margin-bottom: 1.618em; } 
	
	.page-conversion-quote .quote-content { text-align: center; }
	
	.page-conversion-quote .grid { margin-left: -2em; }
	
	.page-conversion-quote .grid-item { padding-left: 2em; }
	
	.page-conversion-quote .grid-alpha { width: 23%; }
	
	.page-conversion-quote .grid-beta { width: 77%; }
	
	.page-conversion-quote p { 
		font-size: 1.25em; 
		line-height: 1.5em;
	}

	.page-conversion-intro, .page-conversion-quote, .page-conversion-content, .page-conversion-footer { padding: 3em 2em; }
	
	.page-conversion-cta { font-size: 1.5em; }
	
	.page-conversion-cta .is-alternative { margin: 0 1em; }

}

@media all and (min-width: 61.250em) { /* 980px */

	.page-conversion ul.list-ticked { margin-top: 3em; }
	
	.page-conversion .list-ticked li { font-size: 1.25em; }

	.page-conversion-quote .quote-content { padding-top: 1.5em; }

	.page-conversion-form {
		width: 62%;
		margin: 0 auto;
	}
	
	.page-conversion-intro, .page-conversion-quote, .page-conversion-content, .page-conversion-footer { padding: 2em 0; }
	
	.page-conversion-cta { font-size: 1.875em; }
	
	.page-conversion-content .page-conversion-cta { margin-top: 1em; }

}

/*------------------------------------*\
    $CONTACT GLOBAL
\*------------------------------------*/

.contact-global { position: relative; }

.map-link {
	display: block;
	height: 15em;
	background: url(images/map.jpg) 50% 0 no-repeat;
}

.contact-global-content {
	background-color: #7e8083;
	background-color: rgba(126, 128, 131, 0.8);
	padding: 1.25em 0;
	color: #fff;
}

.contact-global-heading {
	font-size: 1em;
	margin-bottom: 0.1em;
	font-weight: 700;
	color: #fff;
	text-transform: uppercase;
}

.contact-global p {
	font-size: 0.875em;
	line-height: 1.4em;
}

.contact-global-content a { color: #fff; }

@media screen and (min-width: 43.75em) {

	.contact-global, .map-link { height: 23.75em; }

	.map-link {
		position: absolute;
		z-index: 1;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	}

	.contact-global-content {
		position: absolute;
		z-index: 2;
		bottom: 0;
		left: 0;
		right: 0;
	}

	.contact-global p { margin-bottom: 0; }
	
}

@media screen and (min-width: 61.25em) {

	.contact-global-content { padding: 1.875em 0; }
	
}

/*------------------------------------*\
    $AREA
\*------------------------------------*/

.area {
    color: #fff;
    background: #05a2d8; /* Old browsers */
    background: linear-gradient(to right, #05a2d8 0%,#17b5bc 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#05a2d8', endColorstr='#17b5bc',GradientType=1 ); /* IE6-9 */
    padding: 1em 0;
}

.area-heading, .list-area-heading { 
    display: inline; 
    color: #fff;
    font-size: 1em;
    line-height: 1.3em;
    margin-bottom: 0;
    font-weight: normal;
}

.area-heading { font-weight: 700; }

.list-area-heading a {
    color: #fff;
    font-weight: normal;
}






/*------------------------------------*\
    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);
	   opacity: 0;
}

.no-transition { transition: none; }

.spinner {
	height: 60px;
	width: 60px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -30px;
	margin-left: -30px;
	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%;
}

@keyframes rotation {
	from { transform: rotate(0deg); }
	to { transform: rotate(359deg); }
}





/*------------------------------------*\
    5. $THEME
\*------------------------------------*/

/*------------------------------------*\
    $COLOURS
\*------------------------------------*/

/* Brand primary and secondary colours */
.bpc { color: #b29b93; }
.bsc { color: #009de0; }

.text-white { color: #fff; }
.text-light { color: #eee; }
.text-neutral { color: #808080; }
.text-dark { color: #333; }

::selection {
    background: #009de0;
    color: #fff;
    text-shadow: none;
}

/*------------------------------------*\
    $BACKGROUNDS
\*------------------------------------*/

/* Brand primary and secondary background colours */
.bpb { background-color: #b29b93; }
.bsb, .island { background-color: #009de0; }

.bg-light { background-color: #e9e9e9; }
.bg-neutral { background-color: #808080; }
.bg-dark { background-color: #333; }




