/*  //meyerweb.com/eric/tools/css/reset/ 
	v2.0 | 20110126
	License: none (public domain)
	CSS3 modified initial reset */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
	height: 100%;	
}
p {
	line-height: 1.3em;
}
br {
	margin-bottom: 2px;
}
em {
	font-style: italic;
}
h1, h2 {
	margin: 0 0 10px 0;
}
blockquote {
	margin: 10px 0 10px 15px;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
img {
	max-width: 100%;
	height: auto;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
.clearfix:after {
	content: "";
	display: table;
	clear: both;
}

/*  ==============================================
	CSS3  stylesheet */
	
@font-face {
	font-family: 'icomoon';
	src:url('/fonts/icomoon.eot');
	src:url('/fonts/icomoon.eot?#iefix') format('embedded-opentype'),
		url('/fonts/icomoon.ttf') format('truetype'),
		url('/fonts/icomoon.woff') format('woff'),
		url('/fonts/icomoon.svg#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
}

[class^="icon-"], [class*=" icon-"] {
	font-family: 'icomoon';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;

	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.icon-phone:before {
	content: "\e600";
}
.icon-phone-hang-up:before {
	content: "\e601";
}
.icon-envelop:before {
	content: "\e602";
}
.icon-search:before {
	content: "\e603";
}
.icon-menu:before {
	content: "\e604";
}
.icon-menu3:before {
	content: "\e605";
}
.icon-circle-up:before {
	content: "\e610";
}
.icon-mail:before {
	content: "\e606";
}
.icon-mail2:before {
	content: "\e607";
}
.icon-mail3:before {
	content: "\e608";
}
.icon-mail4:before {
	content: "\e609";
}
.icon-facebook:before {
	content: "\e60a";
}
.icon-facebook2:before {
	content: "\e60b";
}
.icon-facebook3:before {
	content: "\e60c";
}
.icon-twitter:before {
	content: "\e60d";
}
.icon-twitter2:before {
	content: "\e60e";
}
.icon-twitter3:before {
	content: "\e60f";
}

html {
	font-family: 'Raleway', sans-serif;
	font-weight: 400;
	font-size: 1em;
	color: #000;	
}

#container {
	position: relative;
	width: 100%;
	min-height: 100%;
}

header { 
	position: fixed;
	left: 0; top: 0; width: 100%;
	height: auto;
	z-index: 1000;
	background: #09A8C5;
	padding: 0 0 0 0;
}

#banner-strap-large {
	font-family: 'Oswald', sans-serif;
	font-weight: 300;
	background: #F2F2F2;
	text-align: right;  
	padding: 10px 1% 10px 0;
}

#banner-img {
	position: absolute;
	z-index: 2000;
	top: 15px; left: 2%;
}
#banner-img img {
	border: ;
}

#main-nav {
	float: right;
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
	margin: -10px 1% -5px 0;
}
#main-nav li {
	display: inline;
	float: left;
}
#main-nav a {
	display: block;
	color: #FFF; 
	text-decoration: none;
	padding: 27px 10px 28px 10px;
	margin-top: -2px;
}
#main-nav .current a {
	color: #A4CB69; 
}
#main-nav a:hover {
	color: #A4CB69; 
	text-decoration: none;
	background: #FFF;
}
#main-nav .current a:hover {
	color: #A4CB69; 
	text-decoration: none;
	background: #FFF;
}
#main-nav .search-button {
	margin-top: ;
}
#logo-spacer {
	padding-top: 40px;
	background: #FFF;
}

#small-nav {
	font-variant: small-caps;
	margin-bottom: 10px;
}
#small-nav .nav-button { 
	float: right;
	margin: 20px 1% 0 0;
	background: transparent; 
	border-bottom: 10px double #FFF; 
	border-top: 3px solid #FFF;
	height: 4px; 
	width: 19px;
}
#small-nav .nav-button:hover { 
	border-bottom: 10px double #A4CB69; 
	border-top: 3px solid #A4CB69;
}
#small-nav .search-button {
	float: right;
	margin: 0px 20px 0 0;	
}
#small-nav .icon-search {
	font-size: 1.4em;
	color: #FFF;
}
#small-nav .icon-search:hover {
	color: #A4CB69;
}
#small-nav ul {
	list-style-type: none;
	margin: 0;
	border-top: ; 
	background: #09A8C5;

}
#small-nav li {
	text-indent: ;
	padding: 0;
	border-bottom: 1px solid #DCDCDC;
	text-align: right;
}
#small-nav a {
	color: #FFF; 	
	display: block;
	text-decoration: none;
	padding: 20px 0;
}
#small-nav ul a:hover {
	color: #09A8C5; 
	background: #FFF;
}
#small-nav .current a {
	color: #A4CB69; 
	font-weight: bold;
}
#small-nav .current a:hover {
	color: #A4CB69; 
	background: #FFF;
	font-weight: bold;
}
#small-nav label {  
	cursor: pointer;
}
#small-nav #menu-toggle {
	display: none; /* hide the checkbox */
}
#small-nav #menu {
    opacity: 0; 
    height: 0;
    overflow: hidden;
	-webkit-transition: opacity 1.5s ease;
	-moz-transition: opacity 1.5s ease;
	-o-transition: opacity 1.5s ease;	
    transition: opacity 1.5s ease;
}
#small-nav #menu-toggle:checked + #menu {
    opacity: 1;
    height: auto;
}
#small-nav-menu {
		
}

.slider {
	position: relative;
	margin: 140px 0 0 0;
}

.page-banner-image {
	padding-top: 125px;
	position: relative;
	margin: 20px auto;
	overflow: hidden;
	width: auto;
	border-radius: ;
}
.page-banner-image img {
	display: block;
	height: auto;
	float: left;
	width: 100%;
	border: 0;
}

main {
	display: block;
	position: relative;
	margin: 0 auto;
	overflow: hidden;
	padding: 0 0 930px 0;
}

.main-content-top {
	padding: 10px 1% 10px 1%;
	background: #FFF;
	text-align: center;
	width: 85%; 
	margin: 0 auto;
}
.main-content {
	padding: 10px 1% 10px 1%;
	background: #FFF;
}
.main-content-bg {
	padding: 10px 1% 10px 1%;
	background: url(/images/beach-bg.jpg) no-repeat center center fixed; 
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}
.content-bg {
	padding: 1px 1% 1px 1%;
	background: #E8E8E8;
}
.content-narrow {
	margin: 0 auto;
	width: 85%; 
}
.directory-top {
	margin: 0 auto;
	width: 85%; 
}
.directory {
	margin: 20px auto;
	width: 85%;
}
.directory h2 {
	border-bottom: 2px solid #09A8C5;
	padding-bottom: 3px;
}

.directory-wrapper {
	padding-bottom: 10px;
}
.directory-inner {
	float: left; 
	width: 13%;	
	padding-right: 3%;
}
.directory-inner  ul {
	list-style-type: none;
	list-style-image: none;
	padding: 0;
	margin: 0;
}
.directory-inner  li {
	margin-bottom: 5px;
}
.directory-inner  h3 {
	padding-bottom: 15px;
	color: #A4CB69;
}
.directory-inner  h3 a {
	color: #A4CB69;
}
.directory-inner-lower {
	margin-top: 10px;
}

.featured-wrapper {
	margin: 0 auto;	
	padding: 10px 0;
	width: 85%;
}
.featured-wrapper h4, .featured-wrapper h4 a{
	color: #A4CB69;
}
.featured-wrapper h4 a:hover {
	color: #BACE9B;
}
.featured {
	float: left; 
	width: 46%;
	line-height: 1.3em;
	padding-right: 4%;
}
.featured-top {
	float: left;
	width: 50%;
}
.featured-lower {
	float: left;
	width: 50%;
}
.featured a {
	color: #000;
}
.featured a:hover {
	text-decoration: none;
}
.float-right-image {
	float: right; 
	margin: 0 0 0 1%;
}

.listing-wrapper {
	margin: 20px auto;
	width: ;
	padding-bottom: 20px;
	border-bottom: 1px solid #D3D3D3;
}

.listing-left {
	float: left;
	width: 30%;
	margin-right: 3%;
}
.listing-left-info {
	float: right;
	width: 67%;
	margin-right: ;
}
.listing-right {
	float: left;
	line-height: 1.3em;
	width: 65%;
}
.listing-right img {
	float: right;
	margin-left: 1%;
}

#content-spacer {
	position: relative;
	padding-top: ;
}

footer {
	position: absolute;
	bottom: 0; left: 0; right: 0;	
	font-size: 0.9em;
	background: #F2F2F2;
	padding: 10px 1% 25px 1%;
}
footer a {
	color: ;
}
footer a:hover {
	color: ;
	text-decoration: underline;
}
footer hr {
	color: #D3D3D3; 	
	background: #D3D3D3; 
}
#footer-content {
	margin: 0 auto;		
}

.quicklinks-wrapper {
	padding-bottom: 10px;
}
.quicklinks {
	float: left; 
	width: 13%;	
	padding-right: 3%;
}
.quicklinks ul {
	list-style-type: none;
	list-style-image: none;
	padding: 0;
	margin: 0;
}
.quicklinks li {
	margin-bottom: 5px;
}
.quicklinks h3 {
	padding-bottom: 15px;
}
.quicklinks-lower {
	margin-top: 10px;
}

#footer-lower-wrapper {
	padding-top: 10px;
}
#footer-logo {
	float: right;
	max-width: 50%;
}
#footer-lower-left {
	float: left;
	width: 25%;
	padding-right: 2%;	
}
#footer-social-media {
	font-variant: small-caps;
}
.fa-facebook-square {
	font-size: 1.8em;
	color: #3B5997;
}
.fa-facebook-square:hover {
	color: #000;
}
#footer-menu-divider-lower {
	display: none;
}
#footer-nav-left, #footer-nav-right {
	float: left;
	width: 12%;
	padding-right: 2%;
	font-variant: small-caps;
}
#footer-nav-left ul, #footer-nav-right ul, #footer-social-media ul {
	list-style-type: none;
	list-style-image: none;
	padding: 0;
	margin: 0;
}
#footer-nav-left li, #footer-nav-right li {
	margin-bottom: 5px;
	padding: 5px 0;
}
#footer-copy {
	font-size: 0.9em;
	padding: 20px 0 20px 0;
}

a { 
	color: #3866B0;
	text-decoration: none;
}
a:hover { 
	color: #696969;
	text-decoration: underline;
}
ol {
	list-style-type: lower-roman;
	margin: 10px 0 10px 25px;
}
ul { 
	list-style-type: none;
	list-style-image: url(/images/double-arrow.gif);
	margin: 10px 0 10px 15px;
}
ul.fa-ul {
	list-style-image: none;
	margin: 10px 0 10px 25px;
}
ul.sub { 
	list-style-type: circle;
	list-style-image: none;
	padding: 0;
	margin: 10px 0 10px 15px;
}
li {
	line-height: 1.2em;
	padding: 2px 0 2px 0;
}
li i.fa-li {
	line-height: 1.2em;
	color: #A4CB69;
}
hr {
	color: #696969; 	
	background: #696969; 
	border: 0;
	height: 1px;
}
h1 {
	font-family: 'Oswald', sans-serif;
	font-weight: 700;
	font-size: 2em;
	color: #09A8C5;
	padding: 15px 0 10px 0;
}
h2 {
	font-family: 'Raleway', sans-serif;
	font-weight: 500;
	font-size: 1.5em;
	color: #09A8C5;
	padding: 10px 0 10px 0;	
}
h3 {
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
	color: #A4CB69;
	font-size: 1.2em;
	padding: 4px 0;
}
h3 a{
	color: #A4CB69;
	text-decoration: none;
}
h3 a:hover {
	color: #BACE9B;
	text-decoration: none;
}
h4 {
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
	font-size: 1.2em;
	font-variant: small-caps;
	color: #09A8C5;
	margin: 10px 0;
}
strong {
	font-weight: 600;
}
b {
	font-weight: 500;
}

.subheader {
	font-size: 1.3em;
	font-weight: 500;
	color: #A4CB69;
}
.boldtext {
	font-weight: 500;
	color: #A4CB69;	
}
.smalltext {
	font-size: 0.9em;
	font-style: normal;
}
.border {
	padding: 2px;
	border: 1px solid #C0C0C0;
}

.infocentre {
	margin-top: -15px;
}
.form_box input[type="text"] {
	width: 50%;
	height: 30px;
	border: 1px solid #C0C0C0;
}
.infocentre input[type="text"] {
	width: 98%;
}
.form_box textarea {
	width: 50%;
	resize: none;
}
.infocentre textarea {
	width: 98%;
	border: 1px solid #C0C0C0;
}
.form_box select {
	width: 50%;
	height: 30px;
	color: #808080;
	border: 1px solid #C0C0C0;
}
.infocentre select {
	width: 98%;
}
.form_box input,select,textarea {
	margin-bottom: 5px;
}
.form_box input[type="button"], input[type="submit"] {
	margin: 10px 0 5px 0;
	width: 100px;
	height: 40px;
}

.form_box #captcha {
	margin: 0 1% -3px 0;
}

#slideshow a.slideshow img {
	border: 1px solid #E8E8E8;
	padding: 3px;
	margin: 0 0.5% 5px 0;
	max-width: 31%;
}
#slideshow a.slideshow:hover {
	color: #DAA520; /* irelevant definition to overcome IE bug */
}

#map-canvas-container {
  	height: 0;
  	padding-bottom: 75%; /* 860:350 */
  	position: relative;
  	width: 100%;
}
#map-canvas-container img {
	max-width: inherit;
}
#map_canvas {
  	height: 100%;
  	left: 0;
  	position: absolute;
  	top: 0;
  	width: 100%;
}

.float-left {
	float: left; 
	margin: 0 20px 20px 0;
}
.float-right {
	float: right; 
	margin: 0 0 20px 20px;
	max-width: 30%;
	clear: both;
}

.img-expand {
	position: relative;
	margin: 20px auto;
	overflow: hidden;
	width: auto;
	border-radius: ;
}
.img-expand img {
	display: block;
	height: auto;
	float: left;
	width: 100%;
	border: 0;
}

.video {
  	height: 0;
  	padding-bottom: 55%; /* 176:120 or whatever aspect ratio*/
  	position: relative;
  	width: 98%;
}
.video iframe, .video object {
  	height: 100%;
  	left: 0;
  	position: absolute;
  	top: 0;
  	width: 100%;
	border: none;
}

.top-link {
	position: fixed;
	display: none;
	bottom: 10px; right: 50%;
}
.top-link a {
	text-decoration: none;
	color: #A9A9A9;
}
.top-link a:hover {
	text-decoration: none;
	color: #000;
}
.icon-circle-up {
	font-size: 2em;
	cursor: pointer;
}

@media only screen and (device-width: 768px) { /* for ipad and iphone */
	.main-content-bg {
		background: #F1F2F4; 
	}
}

@media screen and (max-width: 900px) {
	header {
		display: none;
	}
	#banner-strap-small {
		font-family: 'Oswald', sans-serif;
		font-weight: 300;
		background: #F2F2F2;
		text-align: right;  
		padding: 10px 1% 10px 0;
	}
	#banner-small {
		position: relative;
		display: block;
		background: #09A8C5;
	}
	#banner-tiny-img {
		display: block;
		position: absolute;
		left: 1%; top: 27px;
		z-index: 2000;
	}
	.slider {
		margin: 42px 0 0 0;
	}
	.page-banner-image {
		padding-top: 25px;
	}
	.directory-top, .directory, .content-narrow {
		width: auto; 
	}
	.float-right-image {
		display: none;
	}
	#content-spacer {
		padding-top: 50px;
	}
	h1 {
		font-size: 1.7em;
		padding: 25px 0 10px 0;
	}
	h2 {
		font-size: 1.3em;
	}
}
@media screen and (min-width: 901px) {
	#banner-small { 
		display: none;
	}
}

@media screen and (max-width: 800px) {
	main {
		padding-bottom: 1200px;
	}
	.directory-inner {
		float: none; 
		width: auto;	
		padding-right: 0;
	}
	.directory-inner-lower {
		margin-top: 0;
	}
	.directory-inner  h3 {
		padding-top: 20px;
	}
	.featured-top {
		width: auto;
		padding-bottom: 20px;
	}
	.featured-lower {
		float: none;
		width: auto;
	}
	.listing-wrapper {
		width: auto;
	}
	#content-spacer {
		padding-top: 20px;
	}
	.quicklinks {
		float: none; 
		width: auto;	
		padding-right: 0; padding-top: 10px;
	}
	.quicklinks ul {
		display: none;
	}
	.quicklinks-lower {
		margin-top: 0;
	}
	#footer-logo, #footer-lower-left, #footer-nav {
		float: none;
		display: block;
		width: auto;
	}
	#footer-menu-divider-lower {
		display: block;
	}
	#footer-social-media {
		padding-top: 20px;
	}
	#footer-nav-left, #footer-nav-right {
		padding-top: 10px;
		width: 40%;
	}
	#slideshow a.slideshow img {
		max-width: 46%;
	}
	input[type="text"], textarea, select {
		width: 98%;
	}
	input[type="button"] {
		margin-top: ;
	}
	.infocentre select, .infocentre input[type="text"], .infocentre textarea {
		width: 100%;
	}
}

@media screen and (max-width: 600px) {
	.main-content-bg {
		background: #F1F2F4; 
	}
	.listing-left, .listing-left-info {
		float: none;
		width: 98%;
		margin-bottom: 10px;
	}
	.listing-right {
		float: none;
		width: auto;
	}
	.infocentre {
		margin-top: 0;
	}
}

@media screen and (max-width: 500px) {
	#banner-small-text {
		font-size: 1.5em;		
	}
	#banner-strap-tiny {
		font-family: 'Oswald', sans-serif;
		font-weight: 300;
		background: #F2F2F2;
		text-align: right;  
		padding: 10px 1% 10px 0;
	}
	#banner-small-img {
		display: none;
	}
	.listing-right img {
		max-width: 40%;
	}
}
@media screen and (min-width: 501px) {
	#banner-strap-tiny {
		
	}
}

@media screen and (min-width: 2000px) {
	main, #footer-content {
		max-width: 2000px;
	}	
}

@media print {
	#small-nav, #main-nav, footer {
    	display: none;
	}
}
