/* reset
-----------------------------------*/
html, body, div, h1, h2, h3, h4, h5, h6, ul, ol, dl, li, dt, dd, p, blockquote,  
/*pre, form, fieldset, table, th, td { margin: 0; padding: 0; }*/
pre, form, fieldset { margin: 0; padding: 0; }


/* main containers
-----------------------------------------------------------*/
body { font-family: Arial, Helvetica, sans-serif; }
#wrapper { display: block; width: 900px; margin: 0 auto; text-align: center;}


/* type
--------------------------------------------------------*/	
p { padding: 0 0 15px 0; font-size: 11px; line-height: 18px; color: #666; }
p.line { line-height: 0; border-top: 1px solid #ccc; }
p.right { text-align: right;}
span.right { float: right; }

h1 {
	margin-bottom: 7px;
	padding-bottom: 5px;
	border-bottom: 4px solid #ccc;
	font-size: 11px;
	font-weight: bold;
	line-height: 16px;
	color: #666;
}

h2 {
	padding-bottom: 5px;
	font-size: 12px;
	font-weight: bold;
	line-height: 15px;
	color: #666;
}

h3 {
	padding-bottom: 5px;
	font-size: 10px;
	font-weight: bold;
	line-height: 15px;
	color: #666;
}

h1.red { color: #C1272D;}
h2.line { margin-bottom: 12px; border-bottom: 2px solid #999;}

a { color: #C1272D; text-decoration:none; }
a:hover { text-decoration: underline;}
a img { border: none; }
a.imageBlock { display: block; padding: 68px 8px 0 8px; height: 57px;}
a.imageBlock:hover { text-decoration: none; }

a.leftArrow { display: inline-block; padding: 0 0 10px 8px; background: url(../images/arrow-red-left.gif) left 6px no-repeat; font-size: 10px;}
a.rightArrow { display: inline-block; padding: 0 8px 10px 0; background: url(../images/arrow-red.gif) right 7px no-repeat; font-size: 10px;}

span.right a.rightArrow { background-position: right 5px;}



/* lists
------------------------------------------*/
ul, ol {
	margin: 0 0 15px 0;
	padding: 0 10px 0 0; 
	font-size: 11px; 
	line-height: 18px;
	color: #666;
}
ul { padding: 0 0 0 5px;}
ul li { padding: 0 0 5px 15px; background: url(../images/list-grey.gif) left 5px no-repeat; list-style: none; }
ol { padding: 0 0 0 20px;}



/* tables
------------------------------------------*/
table { font-size: 11px; line-height: 16px; }
tr.dark { background: #D9D9D9;}
/*td { padding: 10px; margin: 0; }
td.colspan { width: auto !important;}
th, td { vertical-align: top; text-align: left; }*/
th { padding: 0 10px 5px 10px; font-size: 11px; line-height: 16px; font-weight: bold; }
/*
th.right, td.right { text-align: right; }
th.center, td.center { text-align: center; }
th.middle, td.middle { vertical-align: middle; }
th.bottom, td.bottom { vertical-align: bottom; }
*/

/* generic form elements
--------------------------------------------------------*/	
label { vertical-align: top; font-size: 10px; font-weight: bold; color: #666; }
input, textarea, select {
	margin: 0;
	background: #fff;
	border: 1px solid #ccc
	font-family: Arial, Helvetica, sans-serif;
	font-size: 11px;
	line-height: 13px;
	color: #000;
}

input {	height: 19px; }
input.donate { padding: 0; height: 23px; border: 0; }
select { height: 22px; padding: 2px;}

.inactive { color: #999999;}

span.charcount-limit { color:#990000; }
span.charcount-safe { color:#006600; }

div.formContainer dl { display: block; white-space: nowrap;}

dt {
	clear: left;
	float: left;
	position: relative;
	padding: 5px 0 0 0;
	width: 142px;
}

dd { padding: 0 0 7px 0; font-size: 11px; line-height: 13px; }
dd.right { text-align: right; padding: 0 2px 7px 0;}



div.formContainer .width20 { width: 20px;}
div.formContainer .width100 { width: 100px;}
div.formContainer .width179 { width: 179px;}
div.formContainer .width200 { width: 200px;}
div.formContainer .width250 { width: 250px;}
div.formContainer .width270 { width: 270px;}
div.formContainer .width300 { width: 300px;}
div.formContainer .width325 { width: 325px;}
div.formContainer .width350 { width: 350px;}
div.formContainer .width400 { width: 400px;}
div.formContainer .width420 { width: 412px;}
div.formContainer .width450 { width: 450px;}
div.formContainer .width500 { width: 500px;}
div.formContainer .width550 { width: 550px;}
div.formContainer .width723 { width: 723px;}
div.formContainer .width729 { width: 729px;}

div.formContainer textarea.row1 { height: 15px;}
div.formContainer textarea.row2 { height: 30px;}
div.formContainer textarea.row3 { height: 45px;}
div.formContainer textarea.row4 { height: 60px;}
div.formContainer textarea.row5 { height: 75px;}
div.formContainer textarea.row6 { height: 90px;}
div.formContainer textarea.row7 { height: 105px;}
div.formContainer textarea.row8 { height: 120px;}
div.formContainer textarea.row9 { height: 135px;}
div.formContainer textarea.row10 { height: 150px;}

div.formContainer select.width100 { width: 120px;}
div.formContainer select.width250 { width: 258px;}
div.formContainer select.width270 { width: 278px;}

input.submit {
	padding-right: 6px;
	height: auto;
	background: none;
	background-image: url(../images/arrow-red.gif);
	background-position: right center;
	background-repeat: no-repeat;
	border: none;
	font-weight: bold;
	text-transform: uppercase;
	color: #C1272D;
}

input.submit:hover { text-decoration:underline; cursor:pointer; }

input.radio { display: inline-block; width: 12px;}
label.radio { display: inline-block; padding: 0 10px 0 3px;}


/* messages
-----------------------------------------------------------*/s

.message { clear: both; margin: 0 0 20px 0; padding: 20px; font-size: 10px; }

.message.errors {	background-color: #FFECEC; color: #af1724; }
.message.errors strong { color: #af1724; }
.message.errors a { color: #af1724; text-decoration: underline; }
.message.errors a:hover { text-decoration: none; }

.message.success { border: 1px solid #006600; background-color: #E2F9E3; color: #006600; }
.message.success strong { color: #006600; }
.message.success a { color: #006600; text-decoration: underline; }
.message.success a:hover { text-decoration: none; }

.message.warning { border: 1px solid #CC6600; background-color: #FEFEC3; color: #CC6600; }
.message.warning strong { color: #CC6600; }
.message.warning a { color: #CC6600; text-decoration: underline; }
.message.warning a:hover { text-decoration: none; }

.message.notice { border: 1px solid #D1D1D1; background-color: #d8d8ea; }
.message.notice a { text-decoration: underline; }
.message.notice a:hover { text-decoration: none; }

.error { color: #af1724; }

.error, .error span, .error label { font-weight: bold; color: #af1724;}




/* header
--------------------------------------------------------*/	
#header { padding: 4px 0 0 57px; height: 158px; width: 843px; text-align: left; color: #fff;}

#header div.logo a { float: left; height: 148px; width: 231px;}




/* main
--------------------------------------------------------*/
#main {
	display: inline-block;
	float: 	left;
	padding: 30px 30px 20px 30px;
	width: 840px;
	text-align: left;
}

#sidebar { /*float: left;*/ padding-right: 15px; width: 155px;}

#sidebar ul {
	display: block;
	margin: 0 0 15px 0;
	padding: 12px 0;
	border-top: 4px solid #ccc;
	border-bottom: 4px solid #ccc;
	list-style: none; 
	font-size: 11px;
	font-weight: bold;
	line-height: 14px;
	text-transform: uppercase;
}

#sidebar ul li { background: none; list-style: none; padding: 3px 0;}
#sidebar ul li a { color: #666;}
#sidebar ul li.selected a { color: #000;}

#sidebar ul li ul {
	margin: 0;
	padding: 0 0 10px 0;
	border: none;
	font-size: 10px;
	font-weight: bold;
	line-height: 13px;
	text-transform: capitalize;
}

#sidebar ul li ul { padding: 0 0 10px 0; background: none; list-style: none;}

#sidebar ul li ul li a { color: #999;}
#sidebar ul li ul li.selected a { color: #C1272D;}

#sidebar div.flashWrapper p { text-align: right;}
#sidebar div.flashWrapper p a {	margin-top: 7px;}




/* container
--------------------------------------------------------*/	
#container { display: inline-block; float: right; width: 670px;}

#container div.flashWrapper { display: block; padding-bottom: 25px;}

#container table.threeCol { width: 650px;}
#container table.threeCol tr td p { padding: 0; line-height: 13px; color: #fff;}
#container table.threeCol tr td.left { padding: 0 16px 0 0; width: 195px;}
#container table.threeCol tr td.left a.imageBlock { background: url(../images/ticket-sales.jpg) left top no-repeat;}
#container table.threeCol tr td.center { padding: 0 16px; width: 195px; text-align: left;}
#container table.threeCol tr td.center a.imageBlock { background: url(../images/film-lineup.jpg) left top no-repeat;}
#container table.threeCol tr td.right { padding: 0 0 0 16px; width: 195px; text-align: left;}
#container table.threeCol tr td.right a.imageBlock { background: url(../images/official-venues.jpg) left top no-repeat;}
#container table.threeCol tr td a.rightArrow {
	float: right;
	margin-top: 7px;
	background-position: right 7px;
}

#container div.rightCol { display: block; float: right; padding-left: 15px; width: 195px;}
#container div.rightCol div.section a.imageBlock.film { display: block; padding: 70px 8px 0 8px; height: 57px; background: url(../images/ticket-sales.jpg) left top no-repeat;}
#container div.rightCol div.section a.imageBlock p { padding: 0; line-height: 15px; color: #fff;}
#container div.rightCol div.section div.formContainer { display: inline-block; margin-bottom: 15px; padding: 8px; width: 179px; background: #E6E6E6;}
#container div.rightCol div.section div.formContainer select { width: 179px;}
#container div.rightCol div.section div.formContainer p.noPad { padding: 5px 0; width: 179px;}
#container div.rightCol div.section div.formContainer p.right { padding: 0 5px 0 0; width: 174px;}
#container div.rightCol div.search { display: block; margin-bottom: 15px; padding: 9px; height: 24px; width: 179px; background: url(../images/search.gif) left top no-repeat;}
#container div.rightCol div.search input.search { width: 165px; background: #fff; border: none;}

#container div.leftCol { clear: left; float: left; width: 460px; }

#container div.box { display: inline-block; padding: 20px; padding-bottom: 40px; width: 630px; background: #E6E6E6 url(../images/greyBox-bottom.gif) left bottom no-repeat;}
#container div.box h1 { margin-bottom: 15px; border-bottom: 4px solid #999; color: #C1272D;}
#container div.box div.left { float: left; width: 305px;}
#container div.box div.right { float: right; width: 305px;}

#container div.leftCol div.box { display: inline-block; width: 420px;}
#container div.leftCol div.box div.left { float: left; width: 205px;}
#container div.leftCol div.box div.right { float: right; width: 195px;}
#container div.leftCol div.box p.price { font-size: 14px; font-weight: bold;}
#container div.leftCol div.box p.price a { font-size: 11px; line-height: 18px; font-weight: normal;}

#container div.box table.eventLineup td.colspan { padding: 40px 0 5px 0;}
#container div.box table.eventLineup td.top { padding: 10px 0 5px 0;}
#container div.box table.eventLineup h2.line { margin: 0;}

#container div.box table.list tr td { padding: 20px 0 0 0; border-bottom: 1px solid #ccc;}
#container div.box table.list p.prices { display: inline-block;}
#container div.box table.list p.right { clear: both; display: inline-block; float: right; padding: 0 17px 0 0;}
#container div.box table.list tr td.right { padding: 10px 0 0 10px; text-align: left;}
#container div.box table.list tr td.right p.right { padding: 0 8px 0 0;}

#container div.box table.pageLinks a { display: inline-block; padding: 0 3px;}

#container div.leftCol div.plain { display: inline-block; padding-top: 20px; width: 460px;}
#container div.leftCol div.plain div.tabs {
	margin-bottom: 7px;
	border-bottom: 4px solid #ccc;
}

#container div.leftCol div.plain div.tabs a {
	display: inline-block;
	margin-right: 3px;
	padding: 9px 0 0 9px;
	height: 18px;
	width: 111px;
	background: #ebebeb url(../images/tab.gif) right top no-repeat;
	font-size: 10px;
	font-size: 12px;
}

#container div.leftCol div.plain div.tabs a:hover {	background: #dedede url(../images/tab.gif) right -30px no-repeat; text-decoration: none;}
#container div.leftCol div.plain div.tabs a.selected { background: #dedede url(../images/tab.gif) right -30px no-repeat; color: #666;}

#container div.leftCol div.plain div.share { display: inline-block; padding-bottom: 20px; width: 460px;}

#container div.leftCol div.plain div.related { display: inline-block; width: 460px;}
#container div.leftCol div.plain div.related img { margin-bottom: 5px;}
#container div.leftCol div.plain div.related div.right { float: right; padding-left: 25px; width: 195px;}
#container div.leftCol div.plain div.related div.left { float: left; padding-right: 25px; width: 195px;}



/* highlights
--------------------------------------------------------*/	
#highlightWrapper { clear: both; margin: 0 auto; background: #E6E6E6; text-align: center;}
#highlightWrapper div.highlight { margin: 0 auto; padding: 20px 30px 20px 220px; width: 650px; text-align: left; color: #808080;}

#highlightWrapper div.highlight h1 { margin: 0; border: none; color: #C1272D;}

#highlightWrapper div.highlight ul {
	display: block;
	margin-bottom: 15px;
	padding: 0;
	border-top: 4px solid #999;
	border-bottom: 4px solid #999;
	font-size: 12px;
}

#highlightWrapper div.highlight ul li { padding: 15px 0 0 15px; background: url(../images/list-grey.gif) left 20px no-repeat; list-style: none; color: #808080;}

#highlightWrapper div.highlight p { font-size: 12px; color: #808080;}
#highlightWrapper div.highlight p span { font-size: 14px;}
#highlightWrapper div.highlight p.right { padding: 0 2px 0 0;}
#highlightWrapper div.highlight p.right a.rightArrow { background-position: right 8px;}


/* events
--------------------------------------------------------*/	
#container table.events { width: 100%;}
#container table.events tr td.thumb { padding-right: 0px; width: 110px;}


/* shop
--------------------------------------------------------*/	
#container div.box table.products tr td { width: 305px; padding-right: 20px; }

#container div.box table.cart { width: 610px;}
#container div.box table.cart tr td, #container div.box table.cart tr th { width: 67px;}
#container div.box table.cart tr td.thumb, #container div.box table.cart tr th.thumb { width: 48px; padding-right: 0px;}
#container div.box table.cart tr td.title, #container div.box table.cart tr th.title { width: 164px;}
#container div.box table.cart tr td.quantity, #container div.box table.cart tr th.quantity {text-align: center;}
#container div.box table.cart tr td.quantity a { font-size: 10px;}
#container div.box table.cart tr td textarea { height: 20px; width: 25px; text-align: center; vertical-align: middle;}


/* footer
-----------------------------------*/
#footerWrapper { clear: both; margin: 0 auto; height: 220px; background: #a30234 url(/shop/images/footer.gif) center top repeat-x; text-align: center; color: #fff;}
#footerWrapper div.footer { display: block; margin: 0 auto; padding-right: 30px; width: 870px; height: 94px; text-align: left; }

#footerWrapper div.footer h1 { padding-bottom: 2px; border-bottom: 4px solid #fff; color: #fff;}
#footerWrapper div.footer p { color: #fff;}

#footerWrapper div.footer div.right { display: block; float: right; padding-top: 50px; width: 300px; text-align: right;}

#footerWrapper div.footer div.right label { display: block; padding-bottom: 7px; font-size: 14px; color: #fff;}
#footerWrapper div.footer div.right input.newsletter { padding: 6px; height: 25px; width: 254px; border: none; text-align: right;}
#footerWrapper div.footer div.right a {
	display: inline-block;
	margin-top: 7px;
	padding-right: 8px;
	background-image: url(../images/arrow-white.gif);
	background-position: right 5px;
	background-repeat: no-repeat;
	font-size: 14px;
	font-weight: bold;
	text-transform: uppercase;
	color: #fff;
}

#footerWrapper div.footer div.left { float: left; padding: 50px 0 0 0;}

#footerWrapper div.footer div.left ul { margin: 0; padding: 5px 0 27px 0; list-style: none; font-size: 10px; letter-spacing: 1px; font-weight: bold;}
#footerWrapper div.footer div.left ul li { padding: 2px 0; background: none; list-style: none;}
#footerWrapper div.footer div.left ul li a { color: #fff;}