/************************************************************************************************************************************************************************
Copyright: Cranberry CCMS
*************************************************************************************************************************************************************************/


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

html, body, div, a, img {
margin:0;
padding:0;
border: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: 26pt;
	color: #1e549a;
	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: #22a94b;
	vertical-align: center;
	text-align: left;
	margin: 17pt 10pt 10pt 10pt;
	font-weight: normal;
}

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: 16px;
	margin: 20px;
	text-align: justify;
	font-family: "Century Gothic", Arial, Helvetica, Verdana, sans-serif;
	color: #000000;
}

p.paracenter {
text-align:center;
}

p.paraleft {
text-align:left;
}






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

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

#socialwrapper {
display: none;
	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: hidden;
	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: 20px;
	margin-bottom: 30px;
	background: #ffffff;
	padding: 20px;
    overflow: hidden;
}

@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;
	font-size: 16px;
}

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

#content {
	float: right;
	width: 100%;
	margin: 0px;
	padding: 0px;
	font-size: 16px;
}

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



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




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

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


@media screen and (max-width: 1050px) {
#logo {
	margin-top: 20px; /* counteracts pagewrap padding falling away below 1050 */
}
}





/*************************************************************************************************************************************************************************
FOOTER
*************************************************************************************************************************************************************************/
footer {
height: auto;
margin: 0 auto;
background: #1c4d8f;
overflow: hidden;
clear:left;
}

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

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

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

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

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

@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: #ffffff;
font-weight:bold;
font-size: 15px;
line-height: 30px;
}




/*************************************************************************************************************************************************************************
CONTACT
*************************************************************************************************************************************************************************/
contact {
height: auto;
margin: 0 auto;
background: #1c4d8f;
overflow: hidden;
clear:left;
}

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

.contactcontentcolumn {
float:left;
width: 45%;
margin: 0px;
padding: 5px;
}

.contactboxy {
border-radius: 10px;
margin: 10px;
margin-top: -7px;
background:#edeef0;
min-height: 138px;
}

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

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

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

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

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

.contacttitle {
color: #22a94b;
font-weight:bold;
font-size: 15px;
line-height: 30px;
}



/*************************************************************************************************************************************************************************
SOLUTIONS
*************************************************************************************************************************************************************************/
solutions {
height: auto;
margin: 0 auto;
background: #1c4d8f;
overflow: hidden;
clear:left;
}

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

.solutionscontentcolumn {
float:left;
width: 32%;
margin: 0px;
padding: 2px;
}

.solutionsboxy {
border-radius: 10px;
margin: 10px;
margin-top: -7px;
background:#fbfdfb;
min-height: 400px;
}

p.parasolutions {
font-size: 16px;
line-height: 20px;
padding: 5px;
text-align:left;
font-family: Arial, Helvetica, sans-serif;
color: #000000;
}

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

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

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

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

.solutionstitle {
color: #22a94b;
font-weight:light;
font-size: 18px;
line-height: 30px;
}





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

@media screen and (max-width: 970px) {
#nav-wrap {
margin-bottom: 30px; /* menu spacing allows for 2nd line to be visible when scaled below set width */
}
}

@media screen and (max-width: 550px) {
#nav-wrap {
margin-bottom: 4px; /* spacing below mobile menu removed */
}
}




#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: 5px 30px 8px 30px;
	display: block;
	color: #24aa4b;
	-moz-border-radius: 7px;
    border-radius: 7px;
}

#nav a:hover {
	background: #1e549a;
	color: #ffffff;
}

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

}



/*************************************************************************************************************************************************************************
SLIDER
*************************************************************************************************************************************************************************/

.slider-holder { position: relative; margin-bottom:30px;   }

.slider { background: url(images/slider-bg.jpg) no-repeat 0 0; width: 938px; height: 417px; position:relative; overflow: hidden; padding:0 21px; }
.slider ul { list-style:none; list-style-position: outside; }
.slider ul li { float: left; width: 938px; height: 417px; }
.slider .slide-cnt { width: 450px; height: 220px; position:relative; overflow: hidden; float: right; padding-top: 30px;  }

.slider h4 { color:#fff; font-size: 16px; font-family: 'Raleway', sans-serif;  font-weight: 500; text-shadow: rgba(0,0,0,0.5) 0px 1px 0px; text-transform: uppercase; }
.slider h2 { color:#f8f8f8; font-family: 'Raleway', sans-serif; font-size: 56px; line-height:56px; padding-bottom: 12px; font-weight: 700; text-shadow: rgba(0,0,0,0.5) 0px 1px 0px; }
.slider p { color:#fff; }
.slider p a { color:#fff; text-decoration: underline; }
.slider p a:hover { text-decoration: none; }

.slider img { float:left; margin-right:50px; margin-left: 24px;  }
.slider .socials { width: 158px; margin-left: auto; padding-top:18px;  }
.slider .socials a { width: 31px; height: 30px; float:left; margin-left: 6px;  background: url(images/socials.png) no-repeat 0 0; font-size: 0; line-height: 0; text-indent: -4000px; }

.slider .socials a.facebook-ico { background-position: 0 0; }
.slider .socials a.facebook-ico:hover { background-position:0 bottom; }

.slider .socials a.twitter-ico { background-position:-37px 0; }
.slider .socials a.twitter-ico:hover { background-position:-37px bottom; }

.slider .socials a.skype-ico { background-position:-75px 0; }
.slider .socials a.skype-ico:hover { background-position:-75px bottom; }

.slider .socials a.rss-ico { background-position: -114px 0; }
.slider .socials a.rss-ico:hover { background-position: -114px bottom; }


/*************************************************************************************************************************************************************************
SLIDER
*************************************************************************************************************************************************************************/

#slider {
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) {
#slider {
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;
  }






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

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






/*************************************************************************************************************************************************************************
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: 16pt;
	color: #333333;
	text-align: justify;
	vertical-align: top;
	top: auto;
	margin: 20px;
	}

ul.ListA li {
	margin: .6em 0;
	font-family: calibri, arial, verdana, sans-serif;
}






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

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

/* customised links */
a.internallink:link {color: #1e549a; text-decoration: none; }
a.internallink:visited {color: #1e549a; text-decoration: none; }
a.internallink:hover {color: #1e549a; text-decoration: underline; }
a.internallink:active {color: #1e549a; 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;
	font-size: 12px;
}


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




/************************************************************************************************************************************************************************
CUSTOM CSS
*************************************************************************************************************************************************************************/
.porty {
	font-size: 16px;
}
.pd {
	font-size: 16px;
}
.con {
	font-size: 16pt;
	color: #333333;
}
#aside p .con em3 {
	font-size: 10pt;
}
#aside p .con em3 {
	font-size: 10pt;
}
#aside p em {
	color: #000000;
}
#aside p em {
	color: #333333;
}
.down {
	color: #22a94b;
}
.down {
	color: #22a94b;
}
#pagewrap #content #solutionscontentwrap .solutionscontentcolumn .solutionsboxy ul li {
	color: #333333;
}
#pagewrap #content #solutionscontentwrap .solutionscontentcolumn .solutionsboxy ul li {
	text-align: justify;
}
#pagewrap #content #solutionscontentwrap .solutionscontentcolumn .solutionsboxy ul li {
	font-size: 15px;
}
#pagewrap #content #solutionscontentwrap .solutionscontentcolumn .solutionsboxy ul li {
	text-align: left;
}
