/* FRONTEND CSS
*********************************************/
html {
  overflow-y: scroll;
}
body {
	background: none repeat scroll 0% 0% #D9D9D9;
	color: #333;
}

img {
	max-width: 100%;
	height: auto;
}

h1 {
	font-size: 180%;
}

h1.front-page
{
	text-align: center;
	font-size: 30px;
	color: red;
}

h2
{
	color: red;
	text-align: left;
	margin-bottom: 0px;
	font-size: 2.5em;
	margin-top: 5px;
}


h3
{
	text-align: center;
	font-size: 2em;
	margin-bottom: 0px;
}


h4 {
	font-size: 100%;
	text-transform: uppercase;
}

p.small-light {
	color: white;
	font-size: 0.5em;
}

/* LAYOUT
*********************************************/
/* Floats */
.float-left {
  float: left;
}
.float-right {
  float: right;
}
.group:before,
.group:after {
  content: "";
  display: table;
}
.group:after {
  clear: both;
}
.ie7 .group {
  zoom: 1;
}

div#mainfloat {
	max-width: 960px;
	margin: 20px auto;
	border: 3px solid #30599F;
	box-shadow: 0px 0px 24px rgba(0, 0, 0, 0.5);
	border-radius: 12px;
	padding-bottom: 5px;
	background: #FFFFFF;
	overflow:hidden;
}

div#contentheader {
	background-color: #30599F;
}

div#contentheader p {
	text-align: center;
	margin:0px;
}

div#contentheader img {
	max-width: 75%;
}

div.images {
	padding-top:10px;
}

div.images:after {
	content:'';
	clear:both;
	display:block;
}

table.timetable td {
	padding-left: 0.5em;
	padding-right: 0.5em;
	border-width: 2px;
	border-style: solid;
	border-color: #B1CBE2;
	font-family: Helvetica, sans-serif;
	font-size: 12pt;
	text-align: center;
}

table.timetable {	
	border-collapse: collapse;
	margin: 1em;
}

.pricing {
	margin-left: 0px;
	padding-left: 0px;
	color: white;
	clear: both;
	display: inline-block;
}

.pricing ul {
	margin-left: 0px !important;
	padding-left: 0px !important;
	border: 0px solid rgb(204, 204, 204);
}

.pricing li {
	display: inline;
	float: left;
	width: 240px;
	margin-right: 1px;
	text-align: center;
	background: none !important;
	margin-bottom:15px;
}

.pricing .wrapper {
	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #3d94f6), color-stop(1, #1e62d0) );
	background:-moz-linear-gradient( center top, #3d94f6 5%, #1e62d0 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#3d94f6', endColorstr='#1e62d0');
	background-color:#3d94f6;
	position: relative;
	-webkit-border-top-left-radius:17px;
	-moz-border-radius-topleft:17px;
	border-top-left-radius:17px;
	-webkit-border-top-right-radius:17px;
	-moz-border-radius-topright:17px;
	border-top-right-radius:17px;
	-webkit-border-bottom-right-radius:17px;
	-moz-border-radius-bottomright:17px;
	border-bottom-right-radius:17px;
	-webkit-border-bottom-left-radius:17px;
	-moz-border-radius-bottomleft:17px;
	border-bottom-left-radius:17px;
	height: 415px;
	margin-right: 20px;
	padding: 5px;
}

.pricing h4 {
	font-size: 24px;
	text-transform: none;
}

.pricing .subheading {
	font-size: 14px;
}

.pricing .price {
	font-size: 22px;
}

.signupnow {
	-moz-box-shadow:inset 0px 1px 0px 0px #f29c93;
	-webkit-box-shadow:inset 0px 1px 0px 0px #f29c93;
	box-shadow:inset 0px 1px 0px 0px #f29c93;
	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #fe1a00), color-stop(1, #ce0100) );
	background:-moz-linear-gradient( center top, #fe1a00 5%, #ce0100 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fe1a00', endColorstr='#ce0100');
	background-color:#fe1a00;
	-webkit-border-top-left-radius:17px;
	-moz-border-radius-topleft:17px;
	border-top-left-radius:17px;
	-webkit-border-top-right-radius:17px;
	-moz-border-radius-topright:17px;
	border-top-right-radius:17px;
	-webkit-border-bottom-right-radius:17px;
	-moz-border-radius-bottomright:17px;
	border-bottom-right-radius:17px;
	-webkit-border-bottom-left-radius:17px;
	-moz-border-radius-bottomleft:17px;
	border-bottom-left-radius:17px;
	text-indent:0;
	border:1px solid #d83526;
	display:inline-block;
	color:#030303;
	font-family:Arial;
	font-size:20px;
	font-weight:bold;
	font-style:normal;
	height:60px;
	line-height:60px;
	width:146px;
	text-decoration:none;
	text-align:center;
	text-shadow:1px 1px 0px #b23e35;
}

div.success {
	border-width: 1px;
	border-style:solid;
	width:45%;
	box-shadow: 10px 10px 5px #888;
	border-radius: 5px;
	padding:4px;
}

.clearfix:after {
	clear: both;
	display: block;
	content: ".";
	height: 0;
	visibility: hidden;
}

body.page.shop div#mainfloat div#component {
	width:74%;
	float:left;
	overflow:hidden;
}

div#right {
	width:25%;
	float:right;
}

div#right h3 {
	margin: 0 -15px 10px;
	padding: 8px 15px 5px;
	border-bottom: 2px solid #F6F6F6;
	color: #30599F;
	font-size: 125%;
	font-weight: bold;
	text-transform: uppercase;
}

div#right div.moduletable {
	border-width:1px;
	border-color: lightgrey;
	border-style:solid;
	overflow: hidden;
	padding:5px;
	border-radius:5px;
	margin:5px;
}

div.cart-view h1 {
	color: red;
	font-size: 2em;
}

div.cart-view a.details {
	color: #000;
}

/* Main Menu 
*********************************************/

div#mainmenu {
	border-top: 1px solid #4394BD;
}

div#mainmenu li {
	list-style: none;
	display: block;
	float:left;
	padding:5px;
	border-left: 1px solid #30599f;
	border-right: 1px solid #30599f;
}

div#mainmenu li:last-child {
	border-right: 2px solid #30599f;
}

div#mainmenu li a {
	text-decoration: none;
	font-size:0.8em;
	color: white;
	font-weight: bold;
}

div#mainmenu li a span {
}

div#mainmenu li.active {
	background: url(../images/arrow2.png) no-repeat bottom center #30599f;
}

div#mainmenu li:hover {
	background: url(../images/arrow2.png) no-repeat bottom center #30599f;
}
div#mainmenu ul {
	background-color: #ff0000;
	padding-left: 20px;
	padding:0px;
	margin:0px;
}

div#mainmenu ul:after {
	content:'';
	clear:both;
	display:block;
}

/* Media Queries
*********************************************/
/* Retina */
@media screen and (-webkit-min-device-pixel-ratio: 2), screen and (max--moz-device-pixel-ratio: 2) {
  
}
/* Landscape phones and down */
@media (max-width: 480px) {
	.navicon {
		float: left;
		height: 6px;
		width: 2em !important;
		margin: 20px;
		border-top: 18px double #F00;
		border-bottom: 6px solid #F00;
		-moz-box-sizing: content-box;
		box-sizing: content-box;
		-webkit-box-sizing: content-box;
		position: absolute;
	}
	ul.naviconul {
		margin:0px;
		padding:0px;
	}
	div#contentheader img {
		padding-left: 5em;
		max-height: 4.5em;
	}
	div#contentheader {
		height: 4.5em;
	}
	div#mainmenu {
		display: none;
	}
	div#phonemenu ul ul {
    	display:none;
	}
	div#phonemenu ul:hover ul{
	    display:block;
    	width:100%;
		max-width:768px;
    	padding:0px;
	}
	div#phonemenu a span {
		color: #034af3;
		cursor: pointer;
		display: block;
		height: 2em;
		line-height: 2em;   
		text-indent: 1em;               
		text-decoration:none;
		font-weight: bold;
		width: 100%;
		font-size: 0.9em;
		color: white;
	}
	div#phonemenu ul ul {
		background: red;
		position: relative;
	}
	div#phonemenu ul ul li {
		list-style: none;   
		border-bottom: #30599F solid;
		border-width: 3px;
	}
	div#phonemenu li {
		list-style: none;
	}
	div#phonemenu a {
		text-decoration: none;
	}
	h2, h1.front-page, h3 {
		font-size: 1.2em;
	}
	div#mainfloat {
		margin-top:0px;
	}
	table.timetable td {
		font-size: 0.45em;
	}
}
/* Landscape phone to portrait tablet */
@media (max-width: 767px) {
	.navicon {
		float: left;
		height: 6px;
		width: 3em;
		margin: 20px;
		border-top: 18px double #F00;
		border-bottom: 6px solid #F00;
		-moz-box-sizing: content-box;
		box-sizing: content-box;
		-webkit-box-sizing: content-box;
		position: absolute;
	}
	ul.naviconul {
		margin:0px;
		padding:0px;
	}
	div#contentheader img {
		padding-left: 5em;
		max-height: 4.5em;
	}
	div#contentheader {
		height: 4.5em;
	}
	div#mainmenu {
		display: none;
	}
	div#phonemenu ul ul {
    	display:none;
	}
	div#phonemenu ul:hover ul{
	    display:block;
    	width:100%;
		max-width:768px;
    	padding:0px;
	}
	div#phonemenu a span {
		color: #034af3;
		cursor: pointer;
		display: block;
		height: 2em;
		line-height: 2em;   
		text-indent: 1em;               
		text-decoration:none;
		font-weight: bold;
		width: 100%;
		font-size: 0.9em;
		color: white;
	}
	div#phonemenu ul ul {
		background: red;
		position: relative;
	}
	div#phonemenu ul ul li {
		list-style: none;   
		border-bottom: #30599F solid;
		border-width: 3px;
	}
	div#phonemenu li {
		list-style: none;
	}
	div#phonemenu a {
		text-decoration: none;
	}
}

@media (min-width: 768px) and (max-width: 960px) {
	div#mainmenu li a {
		font-size:0.6em;
	}
	div#mainmenu li {
		padding:4px;
		line-height:0.8em;
	}
}



/* Portrait tablet to landscape and desktop */
@media (min-width: 768px) {
	.navicon {
		display: none;
	}
	div#phonemenu {
		display: none;
	}
}

li {
	padding-left: 30px;
}
