/************************************************************************************************************************************************************************
Copyright: Shawn-Verne van Biljon
Date: 11 November 2013
version: B+ V3.0
*************************************************************************************************************************************************************************/


/************************************************************************************************************************************************************************
SOME RESETS
*************************************************************************************************************************************************************************/

html, body, div, a, img {
margin:0;
padding:0;
outline:0;
text-decoration: none;
outline: 0; /*removes dotted line around image links*/
}






/*************************************************************************************************************************************************************************
TEXT
*************************************************************************************************************************************************************************/

body {
	font-family: Century Gothic, Arial, Helvetica, sans-serif;
}

h1 {
	font-family: Century Gothic, Arial, Helvetica, Verdana, sans-serif;
	font-size: 23pt;
	color: #026D77;
	vertical-align: center;
	text-align: left;
	margin: 17pt 10pt 17pt 10pt;
	font-weight: normal;
}
h2 {
	font-family: Century Gothic, Arial, Helvetica, Verdana, sans-serif;
	font-size: 18pt;
	color: #026D77;
	vertical-align: center;
	text-align: left;
	margin: 17pt 10pt 10pt 10pt;
	font-weight: normal;
}
h3 {
	font-family: Century Gothic, Arial, Helvetica, Verdana, sans-serif;
	font-size: 18pt;
	color: #026D77;
	vertical-align: center;
	text-align: center;
	margin: 10pt 10pt 17pt 10pt;
	font-weight: normal;
	line-height: 40px;
}
h6 {
	font-family: Century Gothic, Arial, Helvetica, Verdana, sans-serif;
	font-size: 31pt;
	color: #bbbbbb;
	vertical-align: center;
	text-align: left;
	margin: 17pt 10pt 17pt 10pt;
	font-weight: normal;
}

p {
font-size: 19px;
margin: 20px;
text-align:justify;
font-family: calibri, arial, verdana, sans-serif;
color: #888888;
}

p.paracenter {
text-align:center;
}

p.paraleft {
text-align:left;
}






/*************************************************************************************************************************************************************************
STRUCTURE
*************************************************************************************************************************************************************************/

body {
background: url(images/bg.jpg) top center no-repeat #000000;
}

#socialwrapper {
	width: 1024px;
	max-width: 100%; /*screen width responds immediately to scaling below the 1024 width*/
	margin: auto;
	z-index:6000;
	margin-top: 5px;
	margin-bottom: 0px;
    overflow: auto;
	text-align:right;
}

@media screen and (max-width: 550px) {
#socialwrapper {
display: none;
}
}

#pagewrap {
	width: 1024px;
	max-width: 100%; /*screen width responds immediately to scaling below the 1024 width*/
	margin: auto;
	z-index:10;
	border: #dddddd solid 1px;
	-moz-border-radius: 10px;
    border-radius: 10px;
	margin-top: 3px;
	margin-bottom: 30px;
	background: #ffffff;
	padding: 20px;
    overflow: auto;
}

@media screen and (max-width: 1050px) {
#pagewrap {
	padding: 0px; /*removes the padding on anything smaller than full screen*/
	margin-bottom: 0px;
}
}

@media screen and (max-width: 550px) {
#pagewrap {
	margin-top: 20px; /*adjusts margin top after social icons are removed on mobile*/
}
}

header {
	display: table; 
	width: 100%;
	position: relative; /*allows tagline to be absolute*/
}










/*************************************************************************************************************************************************************************
BODY AREA CONTENT COLUMNS
*************************************************************************************************************************************************************************/

#aside {
float: left;
width: 250px;
}

@media screen and (max-width: 920px) {
#aside {
display: none;
}
}

#content {
float: right;
width: 73%;
margin:  0px;
padding: 0px;
}

@media screen and (max-width: 920px) {
#content {
width: 100%;
}
}



contentfullwidth{
width: 100%;
clear: none;
float: left;
}




/*************************************************************************************************************************************************************************
LOGO
*************************************************************************************************************************************************************************/
#logo {
	overflow: hidden;
	min-width: 100px; /*limits scaling*/
	float: left;
	z-index:30;
}

#logo img {
    display: block;
    max-width: 100%;
    height: auto;
	margin: auto;
}

@media screen and (max-width: 2000px) {
#logo {
    display:block;
    width: 100%;
	float: none;
	margin: auto;	
}
}






/*************************************************************************************************************************************************************************
FOOTER
*************************************************************************************************************************************************************************/
footer {

height: auto;
margin: 0 auto;
background: #1c1c1c;
overflow: hidden;
clear:left;
display: none;
}

#footercontentwrap {
width: 1060px;
max-width: 100%; /*screen width responds immediately to scaling below the 980 width*/
margin: auto;
}

.footercontentcolumn {
float:left;
width: 25%;
margin: 0px;
padding: 0px;
}

.footyboxy {
margin: 10px;
margin-top: -7px;
background:#282828;
min-height: 138px;
}

p.parafooty {
font-size: 13px;
line-height: 20px;
padding: 15px;
text-align:left;
font-family: Arial, Helvetica, sans-serif;
color: #bbbbbb;
}

p.parafootycenter {
font-size: 13px;
line-height: 20px;
padding: 10px;
text-align:center;
font-family: Arial, Helvetica, sans-serif;
color: #bbbbbb;
}

@media screen and (max-width: 850px) {
.footercontentcolumn {
width: 100%; /* makes Boxes full width on mobile */
}
}

@media screen and (max-width: 850px) {
.footyboxy {
margin-top: -7px;
margin-bottom: -20px; /* removes excess margin when vertical on mobile     ?????????????? */ 
min-height: inherit;
}
}

@media screen and (max-width: 850px) {
p.parafooty {
text-align:center;
font-size: 17px;
line-height: 25px;
}
}

.footytitle {
color: #757575;
font-weight:bold;
font-size: 15px;
line-height: 30px;
}







/*************************************************************************************************************************************************************************
NAV
*************************************************************************************************************************************************************************/
#nav-wrap {
clear: none;  /* menu drops below logo if "clear:left" */
margin: auto;
margin-top: 45px; /* menu top margin "relative" to logo */
height: 39px;
background-color:#fff;
z-index:35;
}


@media screen and (max-width: 860px) {
#nav-wrap {
height: 70px;
}
}

@media screen and (max-width: 550px) {
#nav-wrap {
height: 42px;
}
}



@media screen and (max-width: 2000px) {
#nav-wrap {
clear: left;  /* drops menu below logo after set width */
margin-top: 0px; /* menu top margin "relative" to logo */
}
}

/* menu icon GET BACK TO THIS ONE*/
#menu-icon {
	display: none; /* hide menu icon initially */
}

ul#nav {
text-align: center;
}

#nav, 
#nav li {
	margin: 0;
	padding: 0;
	list-style: none;
	display: inline-block;
}

/* nav link */
#nav a {
	padding: 8px 15px 11px 15px;
	display: block;
	color: #888888;
	-moz-border-radius: 7px;
    border-radius: 7px;
}

#nav a:hover {
	background: #eeeeee;
}

/* nav dropdown */
#nav ul {
		background: #fff;
	padding: 2px 2px 1px 2px;
	position: absolute;
	display: none; /* hide dropdown */
	width: 250px;
	border-radius: 0px 0px 4px 4px;	
	z-index: 10001;
}

#nav ul li {
	float: none;
	margin: 0;
	padding-top: 1px;
	padding-left: 0px;
	padding-bottom: 1px;
	border-radius: 4px 4px 4px 4px;	
	display: block;
}

/* dropdown bg color*/
#nav ul li a {
background: #f6f6f6;
	-moz-border-radius: 2px;
    border-radius: 2px;
}

/* dropdown hover bg color*/
#nav ul li a:hover {
background: #f9f9f9;
}

#nav li:hover > ul {
	display: block; /* show dropdown on hover */
}




/*************************************************************************************************************************************************************************
MOBILE NAV
*************************************************************************************************************************************************************************/
@media screen and (max-width: 550px) {

	/* nav-wrap */
	#nav-wrap {
		position: relative;
	}

	/* mobile menu bar */
	#menu-icon {
		color: #555555;
		font-size: 18px;
		height: 35px;
		background: #f4f4f4 url(../images/icon-toggle-open.png)top right no-repeat;
		padding: 8px 32px 0 32px;
		cursor: pointer;
		border-radius: 1px 1px 1px 1px;
		display: block; /* show menu icon */
		border-bottom:#999999 solid 0px;	
	}
	#menu-icon:hover {
		background-color: #f4f4f4;
	}
	#menu-icon.active {
		background: #fff url(../images/icon-toggle-close.png)top right no-repeat;
	}
	
	/* main nav */
	#nav {
	    width: 100%;
		clear: both;
		position: absolute;
		top: 40px;
		z-index: 10000;
		padding: 0px 0px 0px 0px;
		margin:  0px 0px 0px 0px;
		background: #ffffff;
		border-radius: 0px 0px 6px 6px;
		display: none; /* visibility will be toggled with jquery */
	}
	#nav li {
		clear: both;
		float: none;
		margin: 3px 0px 3px 0px;
		display: block;
	}
	#nav a, 
	#nav ul a {

		background-color:#dddddd;
		border-radius: 1px;
		display: block;
		padding: 20px;
		color: #444444;
		border: none;
	}
	#nav a:hover, 
	#nav ul a:hover {
		background: #eaeaea;
		color: #000;
	}
	
	/* dropdown */
	#nav ul {
		position: static;
		display: block;
		border: none;
		background: inherit;
		width: 100%;
		margin-bottom: -4px;
	}

	#nav ul li a {
		padding-left: 25px;
	}
	
}

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

	/* ensure #nav is visible on desktop version */
	#nav {
		display: block !important;
	}

}





/*************************************************************************************************************************************************************************
CAROUSEL
*************************************************************************************************************************************************************************/

#carousel {
display: block;
margin-top: 10px;
margin-bottom: 10px; /*puts the horizontal rule (bottom-border) below the carousel 10px down*/
width: 100%;
clear: left;
float: left;
z-index: 50;
}

/* removes carousel div on anything smaller than specified width */
@media screen and (max-width: 550px) {
#carousel {
display: none;
}
}

.rslides {
  position: relative;
  list-style: none;
  overflow: hidden;
  width: 100%;
  padding: 0;
  margin: 0;
  }

.rslides li {
  -webkit-backface-visibility: hidden;
  position: absolute;
  display: none;
  width: 100%;
  left: 0;
  top: 0;
  }

.rslides li:first-child {
  position: relative;
  display: block;
  float: left;
  }

.rslides img {
  display: block;
  height: auto;
  float: left;
  width: 100%;
  border: 0;
  }






/************************************************************************************************************************************************************************
LISTS
*************************************************************************************************************************************************************************/

ul.ListA {
	font-family: calibri, arial, verdana, sans-serif;
	font-size: 19px;
	color: #888888;
	text-align: justify;
	vertical-align: top;
	top: auto;
	margin: 20px;
	}

ul.ListA li {margin: .6em 0}






/*************************************************************************************************************************************************************************
IMAGES THAT SCALE
*************************************************************************************************************************************************************************/

.scaly {
    display: block;
    max-width: 100%;
    height: auto;
	margin:auto;
  }






/*************************************************************************************************************************************************************************
3 BOXES (Vertical / Horizontal)
*************************************************************************************************************************************************************************/

#threeboxes {
display:block;
width:100%;
margin-top: 0px;
}
  
#threeboxes div {
display: inline;
width: 33.3%;
float: left;
margin: 0px;
padding: 0px;
}

@media screen and (max-width: 550px) {
#threeboxes div {
width: 100%; /* makes Boxes full width on mobile */
}
}






/*************************************************************************************************************************************************************************
SLIDE BACK TO TOP BUTTON
*************************************************************************************************************************************************************************/
#back-top {
	position: fixed;
	bottom: 30px;
	margin-left: 1060px;
	

}
#back-top a {
	width: 108px;
	height: 108px;
	display: block;
	margin-bottom: 7px;
	background: #ddd url(images/up-arrow.png) no-repeat center center;
	/* rounded corners */
	-webkit-border-radius: 54px;
	-moz-border-radius: 54px;
	border-radius: 54px;
	/* background color transition */
	-webkit-transition: 1s;
	-moz-transition: 1s;
	transition: 1s;
}

#back-top a:hover {
	background: #bbbbbb url(images/up-arrow.png) no-repeat center center;
}


@media screen and (max-width: 1340px) {
#back-top {
margin-left: 5000px;
}
}






/************************************************************************************************************************************************************************
LISTS
*************************************************************************************************************************************************************************/

ul.ListA {
	font-family: calibri, arial, verdana, sans-serif;
	font-size: 19px;
	color: #888888;
	text-align: justify;
	vertical-align: top;
	top: auto;
	margin: 20px;
	}

ul.ListA li {margin: .6em 0}






/************************************************************************************************************************************************************************
LINKS
*************************************************************************************************************************************************************************/

/* primary link styling relates mostly to Blog integration */
a:link {color:#555555;}    /* unvisited link */
a:visited {color:#555555;} /* visited link */
a:hover {color:#555555;}   /* mouse over link */
a:active {color:#555555;}  /* selected link */

/* customised links */
a.internallink:link {color: #083869; text-decoration: none; }
a.internallink:visited {color: #083869; text-decoration: none; }
a.internallink:hover {color: #0063C5; text-decoration: none; }
a.internallink:active {color: #083869; text-decoration: none; }

a.footerlink:link {color: #999999; text-decoration: none; }
a.footerlink:visited {color: #999999; text-decoration: none; }
a.footerlink:hover {color: #666666; text-decoration: none; }
a.footerlink:active {color: #999999; text-decoration: none; }


 /* remove apple auto number styling */
a[href^=tel]{
    color:inherit;
    text-decoration:none;
}









a.enquirelink {
	display: block;
	padding: 15px;
	width: 220px;
	background:#FF9600;
	-moz-border-radius: 10px;
    border-radius: 10px;
	border: 2px solid #FF7E00;
	text-align:center;
	font-size: 20px;
	margin: auto;
	}

a.enquirelink:link {color: #ffffff; text-decoration: none;  }
a.enquirelink:visited {color: #ffffff; text-decoration: none; }
a.enquirelink:hover {color: #ffffff; text-decoration: none; background: #FFA800; }
a.enquirelink:active {color: #ffffff; text-decoration: none; }






/************************************************************************************************************************************************************************
CUSTOM CSS
*************************************************************************************************************************************************************************/












