/*****************
 GLOBAL
*****************/

* { margin: 0; padding: 0; }

p { margin: 0.5em 0 1.0em 0; }

img { border-width: 0; }

h1 { margin: 0 0 0.2em 0; }
h2, h3, h4, h5, h6 { margin: 0.5em 0 0.2em 0; }

body {
	margin: 0;
	padding: 0;
	color: #000;
	background: #fff;
}

body, table {
	font-family:  arial, helvetica, helve, sans-serif;
	font-size: 16px;
}

	* html body, * html table  { font-size: medium; }

h1 { font-size: 2.2em; color: #168; line-height: 1.2em; font-weight: normal; font-family:  arial, helvetica, helve, sans-serif;}
h2 { font-size: 1.7em; color: #279; line-height: 1.2em; font-weight: normal; font-family:  arial, helvetica, helve, sans-serif;}
h3 { font-size: 1.4em; color: #38a; line-height: 1.2em; font-weight: normal; font-family:  arial, helvetica, helve, sans-serif;}

form { display: inline; }

.breaker { clear: both; }
.lbreaker { clear: left; }
.rbreaker { clear: right; }

ul.normal {padding: 5px 0 5px 25px;}
ol {padding: 5px 0 5px 25px;}

img.floatleft {
	float: left;
	margin: 0 10px 0 0;
}

img.floatright {
	float: right;
	margin: 0 0 0 10px;
}

div.floatright {
	float: right;
	margin: 0 0 10px 10px;
}

/**********************
 OVERALL LAYOUT
***********************/

#skiptomain { display: none; }

#wrapper {
	width: 1000px;
	margin: 0 auto;
	font-size: 0.85em;
	background: #fff;
}

	#pagecontainer {
		width: 960px;
		padding: 0 20px;
	}

		#header {
			width: 960px;
			margin: 0px 0px;
		}


			#toplogo {
				padding: 10px 0px 0px 0px;
				width: 250px;
				float: left;

			}

			#topmiddle {
				padding: 120px 20px 0px 20px;
				width: 250px;
				float: left;
				font-size: 0.9em;
				color: #68a;

			}


			#topright {
				padding: 10px 0px 0px 0px;
				width: 220px;
				float: right;
				font-size: 0.85em;
			}


				#topcontact {
					width: 110px;
					padding: 0px 0px 0px 0px;
					margin: 0px 10px 0px 0px;
					float: left;
				}

				#topsearch {
					width: 100px;
					padding: 0px 0px 0px 0px;
					margin: 0px 0px 0px 0px;
					float: left;
					text-align: center;
				}


		#topbar {
			width: 960px;
			margin: 0px 0px;
		}

			#topnav {
				padding: 10px 0px 0px 0px;
				width: 700px;
				float: left;

			}


			#topquote {
				padding: 10px 0px 0px 0px;
				width: 250px;
				float: right;
				font-size: 0.85em;
			}

				#topquote img {
					float: left;
					margin: 0 10px 0 0;
				}

				#topquote p {
					margin: 30px 0 0 0;
				}

				#topquote strong {
					font-size: 1.3em;
					color: #c08;
				}


			#topquote a:link, #topquote a:visited { color: #279; text-decoration: none; }
			#topquote a:hover { color: #279; text-decoration: underline; }


		#maincontent {
			clear: both;
			width: 960px;
			padding: 10px 0px 0px 0px;
			margin: 0px;
			color: #000;
			line-height: 1.5em;
			font-size: 0.95em;
		}

			#maincontent a:link, #maincontent a:visited { color: #279; text-decoration: none; }
			#maincontent a:hover { color: #279; text-decoration: underline; }

			#maincontentleft {
				padding: 0px 0px 0px 0px;
				width: 200px;
				float: left;

			}

			#maincontentright {
				padding: 0px 0px 0px 0px;
				width: 760px;
				float: right;
			}

			.homeimage {
				width: 400px;
				padding: 0px;
				margin: 0px 20px 0px 0px;
				float: left;
			}

			#belowimage {
				background: #279;
				color: #fff;
				padding: 10px
			}

			#belowimage a:link, #belowimage a:visited { color: #fff; text-decoration: none; }
			#belowimage a:hover { color: #fff; text-decoration: underline; }

			.bigimageleft {
				width: 450px;
				padding: 0px;
				margin: 0px 20px 0px 0px;
				float: left;
			}

			.bigimageright {
				width: 450px;
				padding: 0px;
				margin: 0px 0px 0px 20px;
				float: right;
			}

				#pageaudience {
					width: 540px;
					padding: 0px 0px 0px 0px;
					margin: 40px 0px 10px 0px;
					float: right;
				}




		#footer {
			clear: both;
			margin: 0px;
			width: 940px;
			padding: 10px 10px 50px 10px;
			color: #fff;
			font-size: 0.9em;
			text-align: center;
			background: #279 url(/images/footer-back.gif) no-repeat center bottom;
		}

		#belowfooter {
			clear: both;
			margin: 0px;
			width: 960px;
			padding: 0px;
			font-size: 0.9em;
			color: #333;
		}

			#belowfootertext {
				width: 520px;
				margin: 0px 20px 0 0;
				padding: 0px;
				float: left;
			}

			#belowfooterlogos {
				width: 350px;
				margin: 0px 0px 0px 0px;
				padding: 0px;
				float: right;
				text-align: right;
			}

			.footerlogo {
				margin-left: 10px;
			}

		#belowfooter a:link, #belowfooter a:visited { color: #279; text-decoration: none; }
		#belowfooter a:hover { color: #279; text-decoration: underline; }





/*****************
FLASH INTRO
*****************/


#flashcontainer {
	width: 960px;
	padding: 0px 20px 0px 20px;;
	color: #000;
	line-height: 1.5em;
	font-size: 0.95em;
	text-align: center;
	}

	#flashcontainer a:link, #flashcontainer a:visited { color: #279; text-decoration: none; }
	#flashcontainer a:hover { color: #279; text-decoration: underline; }




/*****************
LEFT SIDE LIST
*****************/

#maincontentleft ul {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 40px 0px;
	list-style: none;
	width: 180px;
}

	#maincontentleft ul li{
		margin: 0px;
		padding: 10px 10px 0px 10px;
		display: block;
		width: 160px;
		line-height: 1.9em;
		border-bottom: 1px solid #fff;
	}

	#maincontentleft ul li.first{
		padding: 20px 10px 0px 10px;
	}

#shows #maincontentleft ul {
	background: #a8c url(/images/leftshowsback.gif) no-repeat left bottom;
}

	#shows #maincontentleft ul a:link, #shows #maincontentleft ul a:visited{
		color: #fff;
		text-decoration: none;
	}

	#shows #maincontentleft ul a:hover, #shows #maincontentleft ul a:active {
		color: #fff;
		text-decoration: underline;
	}

	#shows #maincontentleft ul li.first{
		background: #a8c url(/images/leftshowstop.gif) no-repeat left top;
	}

#news #maincontentleft ul {
	background: #eb4 url(/images/leftnewsback.gif) no-repeat left bottom;
}

	#news #maincontentleft ul a:link, #news #maincontentleft ul a:visited{
		color: #fff;
		text-decoration: none;
	}

	#news #maincontentleft ul a:hover, #news #maincontentleft ul a:active {
		color: #fff;
		text-decoration: underline;
	}

	#news #maincontentleft ul li.first{
		background: #eb4 url(/images/leftnewstop.gif) no-repeat left top;
	}

#about #maincontentleft ul {
	background: #6a9 url(/images/leftaboutback.gif) no-repeat left bottom;
}

	#about #maincontentleft ul a:link, #about #maincontentleft ul a:visited{
		color: #fff;
		text-decoration: none;
	}

	#about #maincontentleft ul a:hover, #about #maincontentleft ul a:active {
		color: #fff;
		text-decoration: underline;
	}

	#about #maincontentleft ul li.first{
		background: #6a9 url(/images/leftabouttop.gif) no-repeat left top;
	}

#takeoff #maincontentleft ul {
	background: #936 url(/images/lefttakeoffback.gif) no-repeat left bottom;
}

	#takeoff #maincontentleft ul a:link, #takeoff #maincontentleft ul a:visited{
		color: #fff;
		text-decoration: none;
	}

	#takeoff #maincontentleft ul a:hover, #takeoff #maincontentleft ul a:active {
		color: #fff;
		text-decoration: underline;
	}

	#takeoff #maincontentleft ul li.first{
		background: #936 url(/images/lefttakeofftop.gif) no-repeat left top;
	}

#club #maincontentleft ul {
	background: #469 url(/images/leftclubback.gif) no-repeat left bottom;
}

	#club #maincontentleft ul a:link, #club #maincontentleft ul a:visited{
		color: #fff;
		text-decoration: none;
	}

	#club #maincontentleft ul a:hover, #club #maincontentleft ul a:active {
		color: #fff;
		text-decoration: underline;
	}

	#club #maincontentleft ul li.first{
		background: #469 url(/images/leftclubtop.gif) no-repeat left top;
	}


#contact #maincontentleft ul {
	background: #fb3 url(/images/leftcontactback.gif) no-repeat left bottom;
}

	#contact #maincontentleft ul a:link, #contact #maincontentleft ul a:visited{
		color: #fff;
		text-decoration: none;
	}

	#contact #maincontentleft ul a:hover, #contact #maincontentleft ul a:active {
		color: #fff;
		text-decoration: underline;
	}

	#contact #maincontentleft ul li.first{
		background: #fb3 url(/images/leftcontacttop.gif) no-repeat left top;
	}

/*****************
 BOTTOM NAV LIST
*****************/

ul#nav {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	list-style: none;
	width: 940px;
}

	ul#nav li {
		margin: 0px;
		padding: 0px;
		display: inline;
		line-height: 1.9em;
		border-right: 1px solid #fff;
	}

	ul#nav li.last {
		border: none;
	}

	ul#nav li a {
		display: inline;
		padding: 0px 9px 0px 9px;
		color: #fff;
		text-decoration: none;
	}

	ul#nav li a:hover {
		display: inline;
		padding: 0px 9px 0px 9px;
		color: #fff;
		text-decoration: underline;
	}

	ul#nav li.on-state {
		font-weight: bold;
		letter-spacing: -0.1em;
	}

 /**********************
  FLASH ANIMBLOCK
 ***********************/

#gallery, #gallery2 { position: relative; }

	#flashanim, #flashanim2 {
		background: #fff;
		margin: 0;
		padding: 0;
		overflow: hidden;
		z-index: 1;
	}

#minipics img, #minipics2 img { cursor: pointer; margin: 4px 2px; }

 /**********************
  FEATURES
 ***********************/


 .featureshows {
 	font-size: 0.9em;
   	width: 760px;
   	margin: 10px 0px 5px 0px;
 }

  .featureshows img.smallpic{
   	float: left;
   	margin-right: 20px;
 }

 .featureshowsright img.smallpic{
  	float: right;
   	margin-left: 20px;
 }

 .featuresmall {
 	font-size: 0.9em;
   	float: left;
   	width: 140px;
   	margin: 5px 15px 5px 0px;
 }

  .featuresmall p {
    	padding: 2px 5px;
    	height: 50px;
 }

 .featuresmallend {
    	margin: 5px 0px 5px 0px;
 }

  /**********************
   PORTRAITS
 ***********************/

   .portrait {
   	font-size: 0.9em;
     	float: left;
     	width: 225px;
     	margin: 5px 40px 5px 0px;
   }

    .portrait p {
      	padding: 2px 5px;
   }

   .portraitend {
      	margin: 5px 0px 5px 0px;
 }

  /**********************
   SHOW DETAIL PAGE
 ***********************/

  .scheduledates {
	float: left;
	width: 250px;
	padding: 0px;
	margin: 5px 0px;
 }

 .schedulevenue {
	float: right;
	width: 500px;
	padding: 0px;
	margin: 5px 0px;
 }

 .schedulevenue strong {
	font-size: 1.2em;
	color: #168;
 }


 /**********************
  QUIZ
 ***********************/

ol.quiz li {
	margin: 20px 0px;
}

input.quizinput { height: 18px; background: none; padding: 2px 20px 0px 4px; border: 1px solid #ccc; }
select.quizinput { height: 22px; background: none; padding: 2px 20px 0px 4px; border: 1px solid #ccc; width: 285px; }
input.wrong, select.wrong { color: #c00; background: url(/images/cross.gif) no-repeat right top;}
input.correct, select.correct { color: #0c0; background: url(/images/tick.gif) no-repeat right top;}


input.quizbutton { border: 1px solid #ccc; background: #eee; }

 /**********************
 SHOPCART FORM
 ***********************/

#cart-form {
	float:left;
	background:#eee;
	width:700px;
	border:1px solid #ddd;
	padding:10px;
	margin:0px;
}

.account-form-entry{
	clear:both;
	float:left;
	width:600px;
	padding:0px;
	margin:0px 0px 2px 0px;
}

.account-label {
	float:left;
	font-weight:bold;
	width:160px;
}

.account-label-error {
	float:left;
	font-weight:bold;
	width:160px;
	color:#c00;
}

.account-error-note {
	float:left;
	margin-left:160px;
	color:#c00;
	font-size:0.9em;
}

#cart-error {
	background:#fef;
	border: 2px solid #c00;
	padding:10px;
	color:#c00;
	font-weight: bold;
}


#confirmation-letter{
	float:left;
	width:750px;
	padding:10px;
	border-top:1px solid #ccc;
}

#con-address {
	float:left;
	width:300px;
	font-weight:bold;
}

#con-logo {
	float:right;
	width:360px;
}

#con-letter{
	clear:both;
}

.thdownloadlink {
	padding-top: 5px;
}

.thdownloadlink strong {
	position: relative;
	top: -5px;
	float: left;
	text-align: center;
	width: 30px;
	height: 30px;
	line-height: 30px;
	margin-right: 5px;
	font-size: 1.2em;
	color: #ffffff;
	background: url(/images/dlbg.gif) no-repeat top left;
}

#maincontent.takeoff {
	background-image:url(images/bg-takeoff.gif);
	background-repeat: no-repeat;
	background-position: 200px 200px;
}

	h2.tof-route-red, h4.tof-route-red {
		color: #b70050; /* d03762 */
		margin-bottom: 0;
	}

	h2.tof-route-blue, h4.tof-route-blue {
		color: #227799; /* 1c799e */
		margin-bottom: 0;
	}

	h2.tof-route-green, h4.tof-route-green {
		color: #2bafa4; /* 7ac4aa */
		margin-bottom: 0;
	}

	h2.tof-route-yellow, h4.tof-route-yellow {
		color: #fdb824; /* f0d495 */
		margin-bottom: 0;
	}

	p.tof-route-head {
		margin-top: 0;
	}

	.routes-row {
		width: 760px;
		margin: 0;
		padding: 0;
	}

		.routes-cell {
			width: 170px;
			float: left;
			padding: 5px 10px 5px 5px;
		}

			.routes-cell-red { border-left: 1px dashed #b70050; }
			.routes-cell-blue { border-left: 1px dashed #227799; }
			.routes-cell-green { border-left: 1px dashed #2bafa4; }
			.routes-cell-yellow { border-left: 1px dashed #fdb824; }

			.routes-cell p {
				margin: 10px 0;
				padding: 0;
				line-height: 1.3em;
			}

