/*
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: #edece8;
    font: 400 100%/1.618em 'Perpetua W01', Arial, Helvetica, sans-serif;
    color: #393939;
}

/* 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
\*------------------------------------*/

.sans { font-family:'Neue Helvetica W01'; }

h1, h2, h3, h4, h5, h6 { 
	font-weight: 400; 
	color: #393939;
}

h1, .alpha {
    font-size: 2.875em;
    line-height: 1.235em; /* 42px */
	margin-bottom: 0.457em; /* 21px */
}

h2, .beta {
    font-size: 1.438em; /* 23px */
    line-height: 1.348em; /* 31px*/
	margin-bottom: 0.913em; /* 21px*/
}

h3, .gamma {
    font-size: 1.188em; /* 19px*/
    line-height: 1.421em; /* 27px*/
	margin-bottom: 1.105em; /* 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;
    font-weight: 700;
    color: #c28a44;
	transition: all .25s ease-in-out;
}

a:hover {
    text-decoration: underline;
    outline: none;
    color: #ac723c;
}

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: 1.375em;
    line-height: 1em;
    padding: 0.5em 2.5em;
    color: #e8e8e8;
    background-color: #c28a44;
    border: 2px solid #c28a44;
    text-transform: lowercase;
    font-weight: 400;
}

a.button {
    display: inline-block;
    zoom: 1;
    *display: inline;    
}

a.button:hover, button:hover, input[type="submit"]:hover {
    text-decoration: none;
    color: #e8e8e8;
    background-color: #ac723c;
    border-color: #ac723c;
}

a.button-alt {
	color: #ac723c;
	background-color: transparent;
	border-color: #ac723c;
}

a.button-alt:hover {
	color: #fff;
	background-color: #ac723c;
}

a.button-full {
	width: 100%;
	display: block;
	text-align: center;
	padding-left: 0;
	padding-right: 0;
}

a.button-cta {
	font-size: 2em;
	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.5em;
}

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 #393939;
    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: 40em; }	/* 640px */

}

@media all and (min-width: 61.250em) { /* 980px */

	.container { width: 61.25em; } /* 980px */
	
}

@media screen and (min-width: 87.5em) {

	.container { width: 75em; }
	
}

/*------------------------------------*\
    $SITE
\*------------------------------------*/

@media screen and (max-width: 43.6875em) {

	.site-top { padding-top: 2.8125em; } /* Padding for .nav-cta-mobile */

	.not-home .site-top { 
		padding-top: 9.75em; 
	}
	
}

@media screen and (max-width: 43.6875em) {

	.not-home .site-top { background: url(images/bg-site.jpg) !important; }

	.not-home.dark-theme .site-top { background: url(images/bg-parallax.jpg) !important; }
	
}

@media screen and (min-width: 43.75em) {

	.not-home .site-top { 
		padding-top: 14.125em; 
		background-image: url(images/bg-site.jpg);
		background-position: 100% 0;
		background-repeat: no-repeat;
		background-attachment: fixed;
		background-size: cover;
	}
	
}

@media screen and (min-width: 61.25em) {

	.not-home .site-top { 
		padding-top: 16em;
		background-position: 50% 0; 
		min-height: 100vh;
	}
	
	.site-top {
		position: relative;
    	z-index: 2;
    	margin-bottom: 851px;
    	background-color: #fff;
    	box-shadow: 0 0 15px 5px rgba(0,0,0,0.5);
	}

	.page-template-page-contact .site-top { margin-bottom: 0; }

	.site-bottom {
	    position: fixed;
	    z-index: 1;
	    bottom: 0;
	    left: 0;
	    right: 0;
	}
	
}

/*------------------------------------*\
    $HEADER
\*------------------------------------*/

.header {
	position: absolute;
	z-index: 250;
	top: 2.8125em;
	right: 0;
	left: 0;
	background-color: #000;
	background-color: rgba(0, 0, 0, 0.75);
}

.top { 
	padding: 0.625em 0;
	text-align: center; 
}

.logo {	width: 115px; }

@media screen and (min-width: 43.75em) {

	.header { top: 0; }

	.top { padding: 1.5625em 0; }

	.logo { 
		width: 160px; 
		margin-bottom: 20px;
	}
	
}

/*------------------------------------*\
    $HEADER - STICKY
\*------------------------------------*/

.header-stuck { height: 80px; }

.header-stuck.fixed {
	position: fixed;
	top: 0;
}

.logo-text { margin-bottom: 5px; }

.logo-heading, .logo-subheading { 
	display: inline;
	margin-bottom: 0; 
}

.logo-heading {
	font-size: 1.75em;
	line-height: 1em;
	color: #fff;
}

.logo-subheading {
	font-size: 0.875em;
	line-height: 1em;
	color: #a66e3a;
	text-transform: lowercase;
	margin-left: 10px;
}

.not-home .header-stuck { 
	top: -80px;
	opacity: 0;
	transition: all .25s ease-in-out;
}

.not-home .header-stuck.fixed {
	opacity: 1;
	top: 0;
}

@media screen and (min-width: 61.25em) {

	.header-stuck .grid-item { width: 34%; }

	.header-stuck .grid-beta { width: 66%; }

	.logo-text { text-align: left; }

	.logo-heading, .logo-subheading { display: block; }

	.logo-subheading { margin-left: 0; }
	
}

/*------------------------------------*\
    
	$TOUCH NAV
	
	Only displayed on touch devices
	
\*------------------------------------*/

.nav-touch-toggle {
	position: absolute;
	top: 50%; 
	right: 1em;
	margin-top: -22px;
	width: 45px;
	height: 45px;
	text-indent: -9999em;
	background: url(images/sprite.png) 0 -300px 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.938em;
}

.nav-touch a {
	position: relative;
	display: block;
	width: 100%;
	background-color: #121212;
	color: #fff;
	border-top: 1px solid #333;
	font-weight: normal;
	text-transform: lowercase;
	font-size: 1.25em;
	padding: 0.625em 1em;
}

.nav-touch .menu-item-has-children > a:before, .nav-touch ul ul a:before {
	content: '';
	position: absolute;
	top: 50%;
	right: 1em;
	width: 11px;
	height: 11px;
	margin-top: -5px;
	background: url(images/sprite.png) 0 -300px no-repeat;
}

.nav-touch ul { display: none; }

.nav-touch ul a {
	background-color: #c28a44;
}

.nav-touch ul ul a {
	padding-right: 1em;
	padding-left: 2em;
	background-color: #393939;
}

.nav-touch ul ul a:before {
	right: auto;
	left: 1em;
	background-position: -500px -200px;
}

.nav-touch a:hover ul { display: block; }

.nav-touch a:hover { text-decoration: none; }

.nav-touch .current-menu-item > a, .nav-touch .current-menu-ancestor > a {
	text-decoration: none;
	color: #c28a44;
	font-weight: 700;
}

.nav-touch ul .current-menu-item > a, .nav-touch ul .current-menu-ancestor > a {
	font-weight: 700;
	color: #fff;
}

.nav-touch ul ul .current-menu-item > a, .nav-touch ul ul .current-menu-ancestor > a {
	font-weight: 700;
	color: #c28a44;
}

/*------------------------------------*\
    $FULL SIZE NAV
\*------------------------------------*/

@media all and (min-width: 43.75em) { /* 700px */

	.nav-primary li {
		z-index: 500;
		text-align: center;
		text-transform: lowercase;
	}
	
	.nav-primary > li { float: left; }
	
	.nav-primary a {
		color: #fff;
		font-size: 1.125em;
		line-height: 1em;
		padding: 0 0.5em;
		font-weight: 400;
		letter-spacing: 0.5px;
	}

	.nav-primary .nav-description {
		display: block;
		color: #c48e4f;
		font-size: 0.727em;
		line-height: 1em;
		margin-top: 5px;
	}
	
	.nav-primary li:hover > a {
		background-color: transparent;
		color: #fff;
		text-decoration: none;
	}
	
	/*------------------------------------*\
		$2ND LEVEL
	\*------------------------------------*/
	
	.nav-primary .mega-menu {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		width: 100%;
	}

	.nav-primary li:hover > .mega-menu { display: block }

	.nav-primary .mega-menu-main {
		padding: 1em 1em 2em 1em;
		background-color: #000;
    	background-color: rgba(0, 0, 0, 0.75);
		overflow: hidden;
	}

	.nav-primary .sub-menu > li {
		float: left;
		width: 33.333%;
	}

	.nav-primary .sub-menu > li > a {
		color: #c28a44;
		font-size: 1.5em;
		font-weight: 700;
	}

	.nav-primary .sub-menu-secondary li {
		float: none;
		display: block;
	}

	.nav-primary ul a {
		color: #fff;
		line-height: 1.2em;
		padding: 0.25em 1em;
		width: 100%;
		height: auto;
	}
	
	.nav-primary ul :hover > a {
		color: #c28a44;
	}
	
	/*------------------------------------*\
		$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: transparent;
		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: transparent;
		color: #fff;
	}
	
	/*------------------------------------*\
		$2ND LEVEL CURRENT
	\*------------------------------------*/
	
	.nav-primary ul li.current-menu-item > a { 
		background-color: transparent;
		color: #fff;  
	}
	
}

@media screen and (min-width: 61.25em) {

	.navigation-primary {
		width: 55em;
		margin: 0 auto;
	}

	.nav-primary a { font-size: 1.375em; }

	.nav-primary > li > a { 
		padding: 0 0.8em; 
	}
	
}

/*------------------------------------*\
    $STICKY FULL SIZE NAV
\*------------------------------------*/

.header-stuck .nav-description { display: none; }

.header-stuck .top { padding: 1em 0; }

.header-stuck .nav-primary a {
	font-size: 1.125em;
}

@media screen and (min-width: 61.25em) {

	.header-stuck .navigation-primary {
		width: 100%;
	}

	.header-stuck .nav-primary > li > a {
		line-height: 48px;
	}
	
}

/*------------------------------------*\
    $CAROUSEL
\*------------------------------------*/

.feature { 
	position: relative; 
	overflow: hidden;
	height: 20.3125em;
	background-color: #4c4546;
}

.feature-bg {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-size: cover; 
	background-position: 50% 0;
	background-repeat: no-repeat;
	opacity: 0;
	transition: all .3s ease-in-out;
}

.feature-content, .banner-content {
	position: absolute;
	z-index: 2;
	bottom: 5em;
	left: 0;
	right: 0;
	color: #fff;
	text-align: center;
	opacity: 0;
	transition: all .4s ease-in-out;
}

.feature-heading {
	color: #fff;
	font-size: 1.750em;
	line-height: 1.2em;
	margin-bottom: 0;
	font-weight: 700;
}
/*
.feature-word {
	position: absolute;
	left: 0;
}
*/
@media screen and (min-width: 43.75em) {

	.feature { height: 50.625em; }

	.feature-content { bottom: 13.4375em; }

	.feature-heading { font-size: 4em; }
	
}

@media all and (min-width: 61.250em) { /* 980px */

	.feature {
		height: 50em;
		height: 100vh;
	}

	.feature-content { bottom: 15em; }

	.feature-heading { font-size: 5.875em; }

}

@media screen and (min-width: 87.5em) {

	.feature-heading { font-size: 6.875em; }
	
}

/*------------------------------------*\
    $FLEXSLIDER
\*------------------------------------*/

.flexslider .slides > li { display: none; }

.flexslider .slides img {
	display: block;
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: -30.625em;
	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; }

}

/*------------------------------------*\
    $FEATURE NAV
\*------------------------------------*/

.feature-nav {
	position: absolute;
	z-index: 999;
	bottom: 1em;
	right: 0;
	left: 0;
}

/*------------------------------------*\
    $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
\*------------------------------------*/

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;
	border-radius: 100%;
}

.flex-control-paging li a.flex-active {
    background-color: #ccc;
    cursor: default;
}

/*------------------------------------*\
    $PROMO
\*------------------------------------*/

.promo {
	background-color: #ab723b;
	color: #fff;
	padding: 1.25em 0;
	overflow: hidden;
}

.promo .container { width: 100%; }

.promo-item-body { position: relative; }

.promo-item a {
	position: absolute;
	z-index: 5;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.promo-item-heading {
	font-size: 1.875em;
	line-height: 1.4em;
	padding: 0.5em 0;
	margin-bottom: 0.5em;
	background-color: #b2783e;
	color: #fff;
	text-align: right;
	transition: all .25s ease-in-out;
	padding-right: 0.875em;
}

.promo-item-heading .container {
	width: 280px;
}

.promo-item:hover .promo-item-heading { background: #c28a44; }

.promo-image {
	position: absolute;
	z-index: 4;
	top: 0;
	left: 1em;
	width: 185px;
}

@media screen and (min-width: 43.75em) {

	.promo { padding: 8em 0 10em 0; }

	.promo-item-heading { padding: 1em 0; }

	.promo-image { 
		left: 100px;
		width: 250px;
	}

}

@media screen and (min-width: 61.25em) {

	.promo { 
		padding: 0; 
		overflow: hidden;
	}

	.promo-image {
		position: absolute;
		top: 140px;
		left: 50%;
		width: auto;
		margin-left: -600px;
	}

	.promo .nav-tab, .promo .tab-main {
		float: left;
		width: 48%;
	}

	.promo .tab-main {
		width: 52%;
		background-color: #edece8;
	}

	.nav-tab {
		text-align: right;
		margin-top: 160px;
	}

	.nav-tab li { 
		margin-bottom: 1em; 
		color: #fff;
		background-color: #b2783e;
		font-size: 2.875em;
		line-height: 1em;
		padding: 0.5em 1em;
		font-weight: 400;
		transition: all .25s ease-in-out;
	}

	.nav-tab-item { position: relative; }

	.nav-tab a {
		position: absolute;
		z-index: 5;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		display: block;
	}

	.nav-tab li:hover, .nav-tab li.active {
		text-decoration: none;
		background-color: #c28a44;
		color: #fff;
	}

	.tab-main {
		padding: 160px 50px;
		height: 800px;
	}

	.tab-heading {
		font-size: 2.875em;
		line-height: 1em;
		margin-bottom: 0.25em;
		padding: 0.5em 0;
	}

	.tab-content { color: #393939; }
	
}

@media screen and (min-width: 87.5em) {

	.tab-content { max-width: 40em; }
	
}

/*------------------------------------*\
    $TRANSITIONS FOR TABS
\*------------------------------------*/

@keyframes fadeIn {

  0% { opacity: 0; }

  100% { opacity: 1; }

}

.animation-ready {
	animation-duration: 1s;
	animation-fill-mode: both;
}

.tab-content { opacity: 0; }

.tab-main .animation-ready { animation-name: fadeIn; }

/*------------------------------------*\
    $HOME PAGE CONTENT
\*------------------------------------*/

.section-padding { padding: 1.5em 0; }

@media all and (min-width: 43.75em) { /* 700px */
	
	.section-padding { padding: 3.125em 0; }
	
}		

@media all and (min-width: 61.25em) { /* 980px */
	
	.section-padding { padding: 3.75em 0; }  
	
}		

/*------------------------------------*\
    $INTRO
\*------------------------------------*/

.intro {
	background: #474240 url(images/bg-parallax.jpg) 50% 0 no-repeat;
	background-attachment: fixed;
	background-size: cover;
	color: #e8e8e8;
}

.intro-header { text-align: center; }

.intro-logo { margin-bottom: 1.875em; }

.intro-logo img { width: auto; }

.intro-heading {
	font-size: 2.1875em;
	line-height: 1.4em;
	color: #fff;
}

.intro-subheading {
	display: block;
	font-size: 0.457em;
	line-height: 1.3em;
	margin-top: 0.5em;
	margin-bottom: 0;
	text-transform: uppercase;
}

.intro .button { padding: 0.5em 1.5em; }

.intro .nav-testimonial { float: right; }

.intro .nav-testimonial .is-title { display: none; }

@media screen and (max-width: 43.6875em) {

	.intro .nav-testimonial .is-heading { display: none; }
	
}

@media screen and (min-width: 43.75em) {

	.intro-header { text-align: left; }

	.intro-heading { 
		font-size: 2.875em; 
		line-height: 1em;
	}

	.intro-subheading { 
		font-size: 0.348em; 
		margin-top: 0;
	}
	
}

@media screen and (min-width: 61.25em) {

	.intro { 
		position: relative; 
		overflow: hidden;
		padding: 7.5em 0 5.625em 0;
	}

	.intro-image {
		position: absolute;
		bottom: 0;
		right: -150px;
	}

	.intro .container { padding-right: 25em; }
	
}

@media screen and (min-width: 87.5em) {

	.intro-image { right: 0; }
	
}

/*------------------------------------*\
    $TESTIMONIAL NAV
\*------------------------------------*/

.nav-testimonial .is-heading { font-size: 1.125em; }

.nav-testimonial li {
	display: inline-block;
	margin-left: 10px;
}

.nav-testimonial .icon {
	width: 50px;
	height: 50px;
}

.nav-testimonial a { font-weight: 400; }

/*------------------------------------*\
    $HOME PRIMARY
\*------------------------------------*/	

.home-primary .button { padding: 0.65em 1.5em; }

@media screen and (min-width: 43.75em) {

	.home-primary { 
		padding: 5em 0; 
		background: url(images/home-03.jpg) 50% 0 no-repeat;
		background-size: cover;
	}

	.home-primary-heading {
		font-size: 2.875em;
		margin-bottom: 0.5em;
	}
	
}

@media screen and (min-width: 61.25em) {

	.home-primary { padding: 13.4375em 0; }

	.home-primary .container { width: 50em; }
	
}

@media screen and (min-width: 87.5em) {

	.home-primary .container { width: 61.25em; }
	
}

/*------------------------------------*\
    $CONTENT FOOTER
\*------------------------------------*/

.content-footer { 
	background-color: #393939;
	color: #edece8;
	padding-bottom: 1em;
}

.content-footer-heading {
	font-size: 2.1875em;
	line-height: 1.4em;
	margin-bottom: 0.5em;
	color: #edece8;
}

@media screen and (min-width: 61.25em) {

	.content-footer { padding: 5.625em 0 1em 0; }

	.content-footer .grid { margin-left: -2.5em; }

	.content-footer .grid-item { padding-left: 2.5em; }

	.content-footer-heading { font-size: 2.875em; }
	
}

/*------------------------------------*\
    $FEED
\*------------------------------------*/

.feed .grid { margin-left: -1.875em; }

.feed .grid-item {
	width: 33.333%;
	padding-left: 1.875em;
}

.feed .grid-beta { width: 66.667% !important; }

.list-feed-item a {
	position: absolute;
	z-index: 2;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
}

.list-feed-heading {
	font-size: 1.875em;
	line-height: 1em;
	margin-bottom: 0.15em;
	color: #edece8;
}

@media screen and (min-width: 87.5em) {

	.feed .grid-item { width: 39% !important; }

	.feed .grid-beta { width: 61% !important; }

	.list-feed-item { margin-bottom: 1.875em; }

	.list-feed-heading {
		font-size: 2.875em;
		line-height: 1em;
	}

	.list-feed p { 
		font-size: 1.25em; 
		margin-bottom: 0;
	}
	
}

/*------------------------------------*\
    $CONTACT GLOBAL
\*------------------------------------*/

.contact-detail-subheading {
	font-size: 1em;
	line-height: 1em;
	margin-bottom: 1em;
	color: #edece8;
}

.contact-detail a {
	display: block;
	color: #edece8;
	font-weight: 400;
}

.contact-detail a:hover { color: #c28a44; }

.contact-detail table { 
	word-wrap: break-word;
	word-break: break-all;
	table-layout: fixed;
	width: 100%;
}

.contact-detail td {
	line-height: 1.3em;
	padding-bottom: 10px;
}

.contact-detail tr:last-child td { padding-bottom: 0; }

.contact-detail .table-heading { width: 40%; }

.contact-global .nav-testimonial li {
	display: block;
	margin-left: 0;
	margin-bottom: 10px;
}

.contact-global .nav-testimonial .is-heading { display: none; }

@media screen and (min-width: 700px) {

	.contact-global .nav-testimonial .icon { margin-right: 10px; }
	
}

@media screen and (min-width: 61.25em) {

	.contact-detail-subheading {
		font-size: 1.25em;
	}

	.contact-detail table {
		border-left: 5px solid #c28a44;
		padding-left: 1em;
	}

	.contact-detail .table-heading { width: 24%; }
	
}

@media screen and (min-width: 87.5em) {

	.contact-global .nav-testimonial {
		font-size: 1.1875em;
		margin-bottom: 0.75em;
	}

	.contact-detail-subheading {
		font-size: 1.625em;
		line-height: 1.1em;
		margin-bottom: 0.5em;
	}

	.contact-detail table { font-size: 1.125em; }

	.contact-detail .table-heading { width: 30%; }
	
}

/*------------------------------------*\
    $LIST LOGO 
\*------------------------------------*/

.list-logo { text-align: center; }

@media screen and (max-width: 43.6875em) {

	.list-logo-item { margin-bottom: 1em; }
	
}

@media screen and (min-width: 43.75em) {

	.list-logo-item {
		display: inline-block;
		padding: 0 0.625em;
	}
	
}

@media screen and (min-width: 43.75em) and (max-width: 61.1875em) {

	.list-logo-item img { height: 60px; }
	
}

/*------------------------------------*\
    $BANNER
\*------------------------------------*/

.banner {
    width: 100%;
    height: 10em;
	position: relative;
	background-position: 50% 0;
	background-repeat: no-repeat;
	background-size: cover;
}

@media all and (min-width: 61.250em) { /* 980px */

	.banner { background-size: auto; }

	.banner-content { position: relative; }	

}

/*------------------------------------*\
    $CONTENT
\*------------------------------------*/

.text-content {
	font-size: 1.1875em;
	line-height: 1.5em;
}

.text-content .button { font-size: 1.158em; }

.content-cta .button { margin-bottom: 0; }

/*------------------------------------*\
    $DARK THEME FOR CONTENT
\*------------------------------------*/

.dark-theme .content h1, .dark-theme .content h2, .dark-theme .content h3, .dark-theme .content h4, .dark-theme .content h5, .dark-theme .content h6, .dark-theme .content {
	color: #e8e8e8;
}

.dark-theme .content hr { border-color: #e8e8e8;}

.single .content-cta { margin-bottom: 1.618em; }

@media all and (max-width: 43.750em) { /* 700px */

	.page-title {
		font-size: 1.875em;
		line-height: 1.3em;
		margin-bottom: 0.875em;
	}

	.content h2, .content h3, .content h4, .content h5, .content h6 {
		font-size: 1.25em;
		line-height: 1.2em;
		margin-bottom: 1.167em;
	}	

	.content-cta .button {
		padding: 0.65em 1.5em; 
	}

}

@media screen and (min-width: 43.75em) {
	
	.content-main {
		background-color: #fff;
		background-color: rgba(255, 255, 255, 0.9);
		padding: 1.25em;
	}

	.dark-theme .content-main {
		background-color: #393939;
		background-color: rgba(57, 57, 57, 0.9);
	}

	.content-cta { padding-top: 1.25em; }
	
}

@media all and (min-width: 61.250em) { /* 980px */

	.category-questions .page-title { font-size: 1.875em; }

	.content-main, .dark-theme .content-main {
		padding: 0;
		background-color: transparent;
	}

	.content {
		float: left;
		padding: 0;
		width: 40em;
		margin-bottom: 2.5em;
	}

	.blog .content, .archive .content, .single-post .content { width: 50em; }

	.tax-sp_gallery_category .content { width: 100%; }
	
	.content-right { 
		float: right; 
		width: 34em;
	}
	
	.content-full { 
		float: none;
		width: 100%;
	}

	.content-cta { padding-top: 0; }
	
}

@media screen and (min-width: 87.5em) {

	.content-right { width: 46em; }
	
}

/*------------------------------------*\
    $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: 700;
	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: #888;
	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.list-pages-shortcode {
	list-style: none;
	margin-left: 0;
	border-top: 1px solid #ac723c;
}

ul.list-pages-shortcode li { 
	border-bottom: 1px solid #ac723c; 
	margin-bottom: 0;
}

ul.list-pages-shortcode a { 
	position: relative;
	display: block; 
	color: #ac723c;
	padding: 0.625em 2em 0.625em 0.625em;
}

ul.list-pages-shortcode a:hover {
	background-color: #ac723c;
	color: #fff;
	text-decoration: none;
}

ul.list-pages-shortcode a:before {
	content: '';
	position: absolute;
	top: 50%;
	right: 0.625em;
	display: block;
	width: 24px;
	height: 24px;
	margin-top: -12px;
	background: url(images/sprite.png) -100px -500px no-repeat;    
}

ul.list-pages-shortcode a:hover:before { background-position: -100px -200px; }

/*------------------------------------*\
    $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;
	padding: 1em;
}

blockquote p:last-child { margin: 0 }

@media all and (min-width: 61.250em) { /* 980px */

	blockquote { padding: 1.5em 2em; }

}

/*------------------------------------*\
    $LAYOUT THUMB CONTENT
\*------------------------------------*/

@media screen and (max-width: 43.6875em) {

	.layout-thumb-content .layout-image { margin-bottom: 1em; }
	
}

@media screen and (min-width: 43.75em) {

	.layout-thumb-content .grid-item { width: 40%; }

	.layout-thumb-content .grid-beta { width: 60%; }
	
}

/*------------------------------------*\
    $BLOG
\*------------------------------------*/

.post-meta p {
	font-size: 1em;
	line-height: 1.4em;
}

.post-navigation {
    font-size: 0.875em;
    line-height: 1.5em;
    border-top: 1px solid #393939;
    padding: 1em 0;
}

.archive-navigation {
    display: block;
    clear: both;
    padding: 1em 0;
    text-align: center;
    border-top: 1px solid #393939;
}

.archive-navigation span, .archive-navigation a {
    padding: 3px 6px;
    border: 1px solid #393939;
	border-radius: 2px;
}

/*------------------------------------*\
    $CONTENT IMAGES
\*------------------------------------*/

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;
	border-bottom: 1px solid #ddd;
}

/*------------------------------------*\
    $GALLERY
\*------------------------------------*/

.gallery { 
	overflow: hidden;
	margin-left: -0.625em; 
}

.gallery .gallery-item { 
	float: left;
	width: 33.333%;
	padding-left: 0.625em;
	padding-bottom: 0.625em; 
	transition: all .25s ease-in-out;
}

.gallery br { display: none; }

.gallery img {
	width: 100%;
	height: auto !important;
}

@media screen and (min-width: 43.75em) {

	.gallery { margin-left: -1em; }

	.gallery .gallery-item {
		padding-left: 1em;
		padding-bottom: 1em;
	}

	.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;
	}	

}

.sidebar > div, .sidebar-blog > div { margin-bottom: 2em; }

.sidebar-heading { 
	font-size: 1.875em;
	line-height: 1.3em;
	margin-bottom: 0.5em;
}

/*------------------------------------*\
    $ISLAND
\*------------------------------------*/

.island {
	padding: 1em 1.168em;
	color: #fff;
}

.island-heading { color: #fff; }

/*------------------------------------*\
    $UI LIST
\*------------------------------------*/

.ui-list {
    list-style: none;
    border-top: 1px solid #393939;
	margin: 0;
	font-size: 1.25em;
}

.ui-list li { border-bottom: 1px solid #393939; }

.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;
}

@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;
	}

}

/*------------------------------------*\
    $SIDEBAR - LEFT
\*------------------------------------*/

.sidebar-left { 
	background-color: #393939;
	color: #fff;
	padding: 1.25em;
	margin-bottom: 1em; 
}

.sidebar-left .contact-detail-subheading { font-size: 1.5em; }

.sidebar-left .contact-detail .table-heading { width: 30%; }

@media screen and (min-width: 61.25em) {

	.sidebar-left {
		float: left;
		width: 25em;
	}

	.sidebar-left .contact-detail .table-heading { width: 25%; }

	.sidebar-left .contact-detail-subheading { font-size: 1.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 0; }	
	
	.page-template-page-contact-php .sidebar-left {
		float: left;
		width: 45%; 
	}
	
	.page-template-page-contact-php .content {
		float: right;
		width: 50%;
	}

}

/*------------------------------------*\
    $FOOTER
\*------------------------------------*/

.footer {
	background-color: #393939;
	color: #edece8;
	text-align: center;
	padding: 1.25em;
}

.footer-body {
	font-size: 0.813em;
    line-height: 1.4em;
}

.footer p, .footer a { color: #edece8; }

.footer a { font-weight: 400; }

.footer a:hover { color: #edece0 }





/*------------------------------------*\
    3. $MODULE
\*------------------------------------*/ 

/*------------------------------------*\
    $NAV
\*------------------------------------*/ 

ul.nav, .nav ul { 
    margin: 0;
    padding: 0;
}

.nav li { float: left; }

.nav a { display: block; }

.nav a:hover { text-decoration: none; }

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; }

.wrapped-link {
	white-space: pre;           /* CSS 2.0 */
	white-space: pre-wrap;      /* CSS 2.1 */
	white-space: pre-line;      /* CSS 3.0 */
	white-space: -pre-wrap;     /* Opera 4-6 */
	white-space: -o-pre-wrap;   /* Opera 7 */
	white-space: -moz-pre-wrap; /* Mozilla */
	white-space: -hp-pre-wrap;  /* HP Printers */
	word-wrap: break-word;      /* IE 5+ */
}

/*------------------------------------*\
    $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-arrow-left-s { background-position: -400px -200px; }
.icon-arrow-right-s { background-position: -500px -200px; }

/*------------------------------------*\
    $ROW 4
\*------------------------------------*/

.icon-arrow-down-s { background-position: 0 -300px; }
.icon-arrow-up-s { background-position: -100px -300px; }
.icon-phone-grey { background-position: -200px -300px; }
.icon-location-grey { background-position: -300px -300px; }
.icon-nav-grey { background-position: -400px -300px; }

/*------------------------------------*\
    $ROW 5
\*------------------------------------*/

.icon-realself, a[href*="realself.com"] .icon { background-position: 0 -400px; }
.icon-googleplus, a[href*="plus.google.com"] .icon { background-position: -100px -400px; }
.icon-zoom { background-position: -200px -400px; }
.icon-page-previous { background-position: -300px -400px; }
.icon-page-next { background-position: -400px -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, .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, .nav-touch .menu-item-has-children > a:before, .nav-touch ul ul 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;
}

.icon-surf-white { background-position: 0 -100px; }

@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;
	}

	.icon-surf-white { background-position: -100px -50px; }
	
}

/*------------------------------------*\
    $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 { border-bottom: 1px solid #ac723c; }

.list-accordion-title { 
	font-size: 1em;
	margin-bottom: 0;
	border-top: 1px solid #ac723c; 
}

.list-accordion-title.open { border-bottom: none; }

.list-accordion-title a { 
	display: block; 
	position: relative; 
	padding: 0.625em 2em 0.625em 0.625em;
	color: #ac723c; 
}

.list-accordion-title a:hover, .list-accordion-title.open a {
	background-color: #ac723c;
	color: #fff;
	text-decoration: none;
}

.list-accordion-content { padding: 0.625em 0.625em 0 0.625em; }

.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 -500px no-repeat;   
}	

.list-accordion-title a:hover:before { background-position: -200px -200px; }
	
.list-accordion-title.open a:before { background-position: -300px -200px; }

/*------------------------------------*\
    $CTA MOBILE
\*------------------------------------*/

.cta-mobile {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 999;
	background-color: #111;
	border-bottom: 1px solid #453629;
}

.nav-cta-mobile { 
	font-size: 0.875em; 
	text-transform: uppercase;
	text-align: center;
}

.nav-cta-mobile li { 
	width: 33.333%;
	border-right: 1px solid #5e5042;
	border-left: 1px solid #453629; 
}

.nav-cta-mobile .icon {
	width: 18px;
	height: 18px;
}

.nav-cta-mobile a {
	color: #fff;
	padding: 0.75em 0;
}

.nav-cta-mobile a:hover {
	background-color: #ac723c;
	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: #121212;
	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
\*------------------------------------*/

.form-subscribe input[type="text"] { 
	padding: 0.5em; 
	margin-bottom: 0.313em; /* 5px */
	width: 100%;
	font-size: 1em;
	line-height: 1em;
}

.form-subscribe input[type="submit"] { padding: 0.75em; }

/*------------------------------------*\
    $BREADCRUMBS
\*------------------------------------*/

.nav-breadcrumb {
	font-size: 0.875em;
	line-height: 1em;
	margin-bottom: 1em;	
}

/*------------------------------------*\

    $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; }

}


/*------------------------------------*\
    $AREA
\*------------------------------------*/

.area {
    color: #fff;
    background-color: #808080;
    padding: 1.125em 0;
}

.area-heading, .list-area-heading { 
    display: inline; 
    color: #fff;
    font-size: 0.875em;
    line-height: 1.3em;
    margin-bottom: 0;
    font-weight: 400;
}

.area-heading { font-weight: 700; }

.list-area-heading a {
    color: #fff;
    font-weight: 400;
}

/*------------------------------------*\
    $CONTENT GALLERY
\*------------------------------------*/

.gallery-content {
	display: none;
	background-color: #fff;
}

/*------------------------------------*\
    $GALLERY PREVIEW
\*------------------------------------*/

.gallery-preview .gallery-item { 
	text-align: center; 
	margin-bottom: 1.5em;
}

.gallery-preview-heading {
	font-size: 1.25em;
	line-height: 1.3em;
	margin-bottom: 0;
}

.gallery-preview-thumbnail { margin-bottom: 5px; }

.gallery-preview .gallery-popup-link {
	position: absolute;
	z-index: 10;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.gallery-preview-images {
	height: 0;
	padding-bottom: 100%;
	position: relative;
	margin-bottom: 0.625em;
}

.gallery-preview-images img { 
	transition: all .25s ease-in-out; 
	-webkit-backface-visibility: hidden;
}	

.gallery-preview-images:before {
	content: '';
	position: absolute;
	z-index: 5; 
	top: 50%;
	left: 50%;
	width: 65px;
	height: 65px;
	margin-left: -32px;
	margin-top: -32px;
	background: url(images/sprite.png) -200px -400px no-repeat;
	opacity: 0;
	transition: all .25s ease-in-out;
}

@media screen and (min-width: 43.75em) {

	.gallery-preview .gallery-item:hover .gallery-preview-images img { opacity: 0.25; }

	.gallery-preview .gallery-item:hover .gallery-preview-images:before { opacity: 1; }

	.gallery-preview-heading {
		font-size: 1.625em;
		line-height: 1.2em;
	}
	
}

/*------------------------------------*\
    $GALLERY POPUP
\*------------------------------------*/

.gallery-popup {
	position: relative;
	background-color: #393939;
	color: #fff;
	padding: 2.5em;
}

.gallery-popup-heading { 
	font-size: 1.25em;
	line-height: 1.3em;
	margin-bottom: 0.5em;
	color: #fff; 
}

.gallery-popup-images { margin-bottom: 1em; }

.gallery-popup-gallery-item { margin-bottom: 5px; }

.gallery-popup .mfp-close { color: #fff !important; }

.gallery-popup-gallery {
	margin-left: -10px;
	margin-bottom: 0;
	overflow: hidden;
}

.gallery-popup-gallery-item {
	padding-left: 10px;
	float: left;
	width: 100%;
}

@media screen and (min-width: 43.75em) {

	.gallery-popup {
		width: 40em;
		margin: 0 auto;
	}

	.gallery-popup-heading {
		font-size: 2.875em;
	}

	.gallery-popup-gallery-item { 
		width: 50%; 
		margin-bottom: 10px;
	}

	.gallery-popup-gallery-item.item-01 { width: 100%; }
	
}

@media screen and (min-width: 61.25em) {

	.gallery-popup { width: 39.375em; }
	
}

/*------------------------------------*\
    $GALLERY ALL
\*------------------------------------*/

.gallery-all-section-heading {
	background-color: #c28a44;
	padding: 1em 0;
	margin-bottom: 1.25em;
}

.gallery-all-heading {
	color: #fff;
}

.gallery-all-section-heading .button {
	background-color: #ac723c;
	border-color: #ac723c;
	font-size: 1em;
}

.gallery-all-section-heading .button:hover {
	background-color: #393939;
	border-color: #393939;
}

@media screen and (min-width: 43.75em) {

	.gallery-all-section-heading { padding: 1.25em 0; }

	.gallery-all-heading {
		font-size: 2.875em;
		line-height: 1.1em;
		margin-bottom: 0;
		display: inline-block;
		margin-right: 40px;
	}

	.gallery-all-section-heading .button {
		font-size: 1.375em;
		padding: 0.5em 1.25em;
	}
	
}

/*------------------------------------*\
    $PAGE NAV
\*------------------------------------*/

.page-nav a {
	position: absolute;
	top: 37.5em;
	left: 1em;
	height: 40px;
	color: #c28a44;
	font-size: 1.125em;
	font-weight: 400;
	text-transform: capitalize;
}

.page-nav a.page-nav-next {
	left: auto;
	right: 1em;
}

.page-nav .icon {
	width: 40px;
	height: 40px;
	margin-right: 10px;
}

.page-nav-next .icon {
	margin-right: 0;
	margin-left: 10px;
}



/*------------------------------------*\
    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: #c28a44; }
.bsc { color: #ac723c; }

.text-white { color: #fff; }
.text-light { color: #eee; }
.text-neutral { color: #808080; }
.text-dark { color: #393939 ; }

::selection {
    background: #ac723c;
    color: #fff;
    text-shadow: none;
}

/*------------------------------------*\
    $BACKGROUNDS
\*------------------------------------*/

/* Brand primary and secondary background colours */
.bpb { background-color: #c28a44; }
.bsb, .island { background-color: #ac723c; }

.bg-light { background-color: #eee; }
.bg-neutral { background-color: #808080; }
.bg-dark { background-color: #393939 ; }




