html { 
	height: 100%; 
	margin-bottom: 1px; 
}


body {
	background-color: #fff;
	color: #000;
	text-align: center;
	margin: 0;
	padding: 0;
	font: 0.8em/1.4 Arial, Helvetica, sans-serif;
}

#inner {
	background-color: #e23643;
	color: #fff;
	background-image: url(/assets/img/background.jpg);
	background-repeat: repeat-x;
	background-position: top center;
	padding: 20px 0 0 0;
}



#wrapper {
	width: 996px;
	background-image: url(/assets/img/flowers.png);
	background-repeat: no-repeat;
	background-position: bottom center;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}

#footer {
	background-image: url(/assets/img/grass.png);
	background-repeat: repeat-x;
	background-position: top center;
	margin: -40px 0 0 0;
	padding: 30px 0 0 40px;
}

#footer .social {
	padding: 0 0 20px 0;
}

#footer .social ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

#footer .social li {
	float: left;
	width: 60px;
}

#footer .badges {
	position: absolute;
	top: -40px;
	right: 0;
	width: 176px;
	height: 240px;
	background-image: url(/assets/img/badge-footer.png);
	background-repeat: no-repeat;
}

#footer .inner {
	width: 820px;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
	color: #bf0e82;
	position: relative;
}

#footer .navlist, #footer .logo {
	float: left;
	width: 180px;
	margin: 0;
	padding: 0;
}

#footer .navlist li {
	font-size: 90%;
	font-weight: bold;
	line-height: 1.6;
}

#footer .navlist li a:link, #footer .navlist li a:visited {
	color: #bf0e82;
	text-decoration: none;
}

#footer .navlist li a:hover {
	border-bottom: 1px dotted #cf0e82;
}

#footer .credits {
	clear: both;
	padding: 1.4em 0 0 0;
	font-size: 90%;
}

#footer .credits a:link,
#footer .credits a:visited {
	text-decoration: none;
	color: #bf0e82;
	border-bottom: 0;
}

#footer .credits a:hover,
#footer .credits a:active {
	text-decoration: none;
	border-bottom: 1px dotted #bf0e82;
}

#footer .credits .sponsors {
	padding: 1.4em 0 0 0;
}

#footer .credits .sponsors img {
	margin: 0 30px 0 0;
}

/* header */
#header {
	margin: 0 77px 0 77px;
	padding: 0 0 0 10px;
	height: 220px;
}

#header #logo {
	height: 174px;
	width: 223px;
	float: left;
	background-image: url(/assets/img/logo.png);
	border: 0;
	text-decoration: none;
}

#header #nav {
	width: 503px;
	float: right;
	position: relative;
}

#header #nav .contact {
	position: absolute;
	top: 0;
	left: -120px;
	width: 4.7em;
	padding: 0 0 0 32px;
	background-image: url(/assets/img/arrow.png);
	background-position: right 3px;
	background-repeat: no-repeat;
}

#header #nav .contact a:link,
#header #nav .contact a:visited {
	display: block;
	text-decoration: none;
	font-weight: bold;
	color: #bd0f81;
	margin-right: 12px;
}

#header #nav .contact a:hover,
#header #nav .contact a:active {
	border-bottom: 1px dotted #bd0f81;
}

#header #nav .navlists {
	background-image: url(/assets/img/dotty.gif);
	background-repeat: repeat-y;
	background-position: right top;
	margin: 20px 10px 0 0;
	padding-right: 10px;
	float: right;
}

#header #nav ul.navlist {
	float:left;
	width: 220px;
	background-image: url(/assets/img/dotty.gif);
	background-repeat: repeat-y;
	padding: 0 0 0 10px;
	margin: 0 0 0 10px;
	list-style: none;
	font-size: 130%;
	font-weight: bold;
}

#header #nav ul.navlist a:link, #header #nav ul.navlist a:visited {
	color: #bd0f81;
	text-decoration:none;
	background-image: 0;
	display: block;
	padding: 0.1em 0 0 10px;
	min-height: 28px;
}

#header #nav ul.navlist a:hover {
	background-image: url(/assets/img/nav-hover.png);
	background-repeat: no-repeat;
	color: #fff;
}

#header #nav ul.navlist li.cur a:link, #header #nav ul.navlist li.cur a:visited, #header #nav ul.navlist li.cur a:hover  {
	background-image: url(/assets/img/nav-on.png);
	background-repeat: no-repeat;
	color: #bd0f81;
}

#header #search {
	float: right;
	margin-right: 22px;
}

#header #search input.text {
	width: 155px;
	font-family: Arial, Helvetica, sans-serif;
}

#header #search button#btnSearch {
	background: none;
	border: 0;
	padding: 0;
	margin: -2px 0 0 0;
	vertical-align: top;
	height: 23px;
}

#header #newsletter {
    float: right;
    margin-right: 18px;
}

#header #newsletter h3 {
	margin: 0;
	padding: 0 0 0.3em 0;
	font-size: 110%;
	color: #BD0F81;
}

#header #newsletter input.text {
    width: 155px;
    font-family: Arial, Helvetica, sans-serif;
}

#header #newsletter label {
	padding: 0 5px 0 0;
	font-weight: bold;
}

#header #newsletter input.btn {
    background-color: #BD0F81;
    border: 0;
    padding: 2px 0 2px 0;
    margin: 0;
    vertical-align: top;
    color: #fff;
    text-transform: uppercase;
    font-size: 90%;
}

#main {
	background-image: url(/assets/img/line.png);
	background-repeat: no-repeat;
	padding: 2px 0 0 0;
	margin: 0 68px 0 68px;
	min-height: 200px;
}

#feature {
    padding: 0 0px 10px 0px;
    position: relative;
}

#feature .feature-container {
	margin: 0 20px;
}

body.dynamic #feature .feature-container {
	overflow: hidden;
	position: relative;
	height: 365px;
}

#feature .badges1 {
    background-image: url(/assets/img/badge-home-tr.png);
    width: 160px;
    height: 129px;
    position: absolute;
    top: -40px;
    right: -30px;
    z-index:10;
}

#feature .badges2 {
    background-image: url(/assets/img/badge-home-bl.png);
    width: 78px;
    height: 74px;
    position: absolute;
    bottom: 70px;
    left: 4px;
    z-index:10;
}

.feature-content {
    background-image: url(/assets/img/feature-bg.jpg);
    background-repeat: no-repeat;
    min-height: 365px;
    background-color: #990970;
    color: #fff;
}

body.dynamic .feature-content {
	float: left;
	width: 820px;
}

body.dynamic #scrollplane {
	width: 10000000px;
	position: absolute;
	left: 0;
}

.screen1 .img {
    background-image: url(/assets/img/feature-thefestival-bg-1.png);
    background-repeat: no-repeat;
    height: 365px;
    width: 360px;
    float: left;
}

body.dynamic .screen1 .img {
	background-image: none;
	position: relative;
}

body.dynamic .screen1 .img img {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}

.screen2 .img {
    background-image: url(/assets/img/feature-artistlineup-bg.jpg);
    background-repeat: no-repeat;
    height: 365px;
    width: 360px;
    float: left;
}

.screen3 .img {
    background-image: url(/assets/img/feature-buytickets-bg.jpg);
    background-repeat: no-repeat;
    height: 365px;
    width: 360px;
    float: left;
}

.screen4 .img {
    background-image: url(/assets/img/feature-faqsinfo-bg.jpg);
    background-repeat: no-repeat;
    height: 365px;
    width: 360px;
    float: left;
}

.feature-content .text {
    padding: 20px 0;
	width: 420px;
	float: left;
}

.feature-content a:link, .feature-content a:visited {
    color: #fff;
}

.feature-content h1 {
    margin: 0;
    padding: 0;
    font-weight: normal;
    font-size: 220%;
    text-transform: uppercase;
}

.feature-content p {
    font-size: 90%;
    line-height: 1.6;
	/*margin-left: 80px;*/
}

.feature-content p.intro {
    font-size: 130%;
    font-weight: bold;
    line-height: 1.4;
	margin-top: 0.8em;
}

.feature-content .sub {
    font-size: 120%;
	margin-top: -0.5em;
}

.feature-content a.btnregister {
	display: block;
	width: 200px;
	height: 26px;
	background-image: url(/assets/img/register-details.png);
	background-position: left top;
	background-repeat: no-repeat;
	overflow: hidden;
}

.feature-content a.btnlineup {
	display: block;
	width: 199px;
	height: 26px;
	background-image: url(/assets/img/official-lineup.png);
	background-position: left top;
	background-repeat: no-repeat;
	overflow: hidden;
}

.feature-content a.btntickets {
	display: block;
	width: 261px;
	height: 26px;
	background-image: url(/assets/img/ticket-prices.png);
	background-position: left top;
	background-repeat: no-repeat;
	overflow: hidden;
}

.feature-content a.btnregister span,.feature-content a.btnlineup span,.feature-content a.btntickets span {
	display: block;
	text-indent: -999em;
}

.feature-content a.btnfaqs {
	display: block;
	width: 200px;
	height: 26px;
	background-image: url(/assets/img/btnfaqs.png);
	background-position: left top;
	background-repeat: no-repeat;
	overflow: hidden;
}

.feature-content a.btnfaqs span {
	display: block;
	text-indent: -999em;
}

dl.featurefaq {
	margin: 1em 0 0 0;
	padding: 0;
	font-size: 130%;
	font-weight: bold;
	list-style: none;
}

dl.featurefaq dt {
	color: #f7eb49;
}

dl.featurefaq dd {
	color: #fff;
	padding: 0 0 1em 0;
	margin: 0;
}

dl.featurefaq .qa {
	float: left;
	width: 2em;
}

dl.featurefaq .at {
	display: block;
	padding-left: 2em;
}

#feature-tabs {
    background-image: url(/assets/img/feature-tabs-bg.gif);
    background-repeat: no-repeat;
    height: 56px;
	margin: 0 20px;
	clear: left;
}

#feature-tabs ul {
    margin: 0;
    padding: 0 0 0 50px;
    list-style: none;
}

#feature-tabs li {
    float:left;
    height: 61px;
    
}

#feature-tabs a, #feature-tabs .cur {
    border: 0;
    margin: -1px 0 0 0;
    display: block;
    height: 61px;
	overflow: hidden;
}

#feature-tabs a span, #feature-tabs .cur span {
    margin-left: -4000px;
}

#feature-tabs li.thefestival a {
    background-image: url(/assets/img/feature-tab-thefestival.gif);
    width: 180px;
}

#feature-tabs li.thefestival .cur {
    background-image: url(/assets/img/feature-tab-thefestival-cur.gif);
    width: 180px;
}

#feature-tabs li.artistlineup a {
    background-image: url(/assets/img/feature-tab-artistlineup.gif);
    width: 181px;
}

#feature-tabs li.artistlineup .cur {
    background-image: url(/assets/img/feature-tab-artistlineup-cur.gif);
    width: 181px;
}

#feature-tabs li.buytickets a {
    background-image: url(/assets/img/feature-tab-buytickets.gif);
    width: 180px;
}

#feature-tabs li.buytickets .cur {
    background-image: url(/assets/img/feature-tab-buytickets-cur.gif);
    width: 180px;
}

#feature-tabs li.faqsandinfo a {
    background-image: url(/assets/img/feature-tab-faqsinfo.gif);
    width: 182px;
}

#feature-tabs li.faqsandinfo .cur {
    background-image: url(/assets/img/feature-tab-faqsinfo-cur.gif);
    width: 182px;
}

#feature-tabs li.thefestival a:hover, #feature-tabs li.artistlineup a:hover, #feature-tabs li.buytickets a:hover, #feature-tabs li.faqsandinfo a:hover {
    background-position: 0 61px;
}

.promos {
	margin: 0 0 0 20px;
	clear: both;
}

.promos .promo {
	width: 420px;
	position: relative;
	float: left;
	min-height: 280px;
	background-repeat: no-repeat;
	background-position: left top;
}

.promos .promo .inner {
	padding: 0 20px 0 15px;
	color: #bd0f81;
	font-weight: bold;
}

.promos .promo h2 {
	text-indent: -999em;
}

.promos .promo a.btnmore {
	display: block;
	width: 121px;
	height: 26px;
	background-image: url(/assets/img/btn-more.gif);
	background-position: left top;
	background-repeat: no-repeat;
	overflow: hidden;
}

.promos .promo a.btnmore:hover {
	background-image: url(/assets/img/btn-more-over.gif);
}

.promos .promo a.btnmore span {
	display: block;
	text-indent: -999em;
}

.promos div.food {
	background-image: url(/assets/img/boxout-nosh.png);
}

.promos div.food .inner {
	padding-right: 170px;
}

.promos div.camping {
	background-image: url(/assets/img/boxout-camping.png);
}

.promos div.camping .inner {
	padding-right: 240px;
}

.promos div.tickets {
	background-image: url(/assets/img/boxout-tickets.png);
}

.promos div.tickets .inner {
	padding-right: 240px;
}

.promos div.moorings {
	background-image: url(/assets/img/boxout-moorings.png);
}

.promos div.moorings .inner {
	padding-right: 240px;
}

/* child pages */

.page {
    margin: 0 20px 10px 20px;
    background-image: url(/assets/img/page-bottom.gif);
    background-repeat: no-repeat;
    background-position: bottom left;
    padding-bottom: 9px;
    position: relative;
}

.page .polaroids {
    position: absolute;
    top: -50px;
    right: -20px;
}

.page .badge1 {
    position: absolute;
    background-image: url(/assets/img/badge-page-1.png);
    width: 102px;
    height: 129px;
    top: -40px;
    right: -40px;
}

.page .badge2 {
    position: absolute;
    background-image: url(/assets/img/badge-page-2.png);
    width: 77px;
    height: 77px;
    top: -12px;
    right: 190px;
}

.pagetop {
    min-height: 97px;
    background-image: url(/assets/img/header-bg.jpg);
    margin: 0;
}

.pagebody {
    background-color: #fff;
    color: #ae0884;
    padding: 30px 300px 0 20px;
    min-height: 500px;
}

.pagebody .cimage {
    float:right;
    margin-right: -200px;
}

.pagebody .iimage {
    float:right;
    padding: 0 0 5px 5px;
}

.pagebody a:link,
.pagebody a:visited {
	color: #ae0884;
	border-bottom: 1px dotted #ae0884;
	text-decoration: none;
}

.pagebody a:hover,
.pagebody a:active {
	color: #333;
	border-bottom: 1px dotted #333;	
}

.pagetop h1 {
    margin: 0;
    padding: 20px 0 0.2em 20px;
    font-weight: normal;
}

.pagetop .sub {
    font-size: 120%;
    padding: 0 0 0 20px;
}

.page h2 {
    font-size: 170%;
    margin: 0;
    padding: 0 0 1em 0;
	font-weight: bold;
	letter-spacing: -0.6px;
	line-height: 1.15em;
}

.page h3 {
    font-size: 130%;
    margin: 0;
    padding: 0;
}

.page p {
    padding: 0 0 1em 0;
    margin: 0;
}

.page p.intro:first-child {
	font-size: 170%;
}

.page p.intro {
    font-size: 150%;
    font-weight: bold;
	letter-spacing: -0.6px;
	line-height: 1.15em;
}

ul.col-a, ul.col-b {
    margin: 0;
    padding: 0 10px 0 0;
    list-style: none;
    float: left;
    width: 240px;
    font-size: 120%;
    font-weight: bold;
    line-height: 1.7;
	letter-spacing: -0.6px;
}

ul.col-a a:link, ul.col-b a:link,
ul.col-a a:visited, ul.col-b a:visited {
    color: #ae0884;
    text-decoration: none;
}

ul.col-a a:hover, ul.col-b a:hover {
    border-bottom: 1px dotted #ae0884;
}

ul#faqs {
    margin: 0;
    padding: 2em 20px 0 0;
    list-style: none;
    clear: both;
}

ul#faqs li {
    border-top: 1px dotted #ae0884;
    padding: 1.4em 0 0.6em 0;
    font-size: 120%;
    font-weight: bold;
	letter-spacing: -0.6px;
}

ul#faqs li h2 {
    margin: 0;
    padding: 0;
    font-size: 100%;
}

ul#faqs li .qa {
    float:left;
    width: 2em;
}

ul#faqs li .qabody {
	margin-left: 2em;
}

div.lineup .lineup-saturday {
    float:left;
    width: 45%;
}

div.lineup .lineup-sunday {
    float:left;
    width: 45%;
}

div.lineup .note {
   clear:both;
}

div.lineup ul {
    margin: 0;
    padding: 1em 0 1em 0;
    list-style: none;
    font-size: 150%;
    font-weight: bold;
    letter-spacing:-0.6px;
line-height:1.15em;
}

div.lineup h3 {
    font-size: 150%;
    font-weight: bold;
    letter-spacing:-0.6px;
line-height:1.15em;
}

ul.searchresults {
    margin: 0;
    padding: 2em 20px 0 0;
    list-style: none;
    clear: both;
}

ul.searchresults li {
    border-top: 1px dotted #ae0884;
    padding: 1.4em 0 0.6em 0;
    font-size: 120%;
    font-weight: bold;
}

ul.searchresults li h3 {
    margin: 0;
    padding: 0;
    font-size: 100%;
}

ul.searchresults li h3 a:link, ul.searchresults li h3 a:visited {
    color: #ae0884;
    text-decoration: none;
}

.logoblock {
    background-image: url(/assets/img/logoblock_bg.gif);
    background-repeat: no-repeat;
    clear: left;
    padding: 0 0 1em 0;
    min-height: 110px;
}

.logoblock a:link, .logoblock a:visited {
    color: #ae0884;
}

.logoblock .inner {
    padding-top: 1em;
    margin-left: 152px;
}

.page .logoblock h3 {
    margin-top: -0.8em;
}

.logoblock img {
    margin: 6px 30px 2em 6px;
    float: left;
    width: 116px;
}

.tickets h2 {
	font-size: 150%;
}


table#tickets {
	font-size: 130%;
	font-weight: bold;
	width: 100%;
	border-collapse: collapse;
	margin: 2em 0 1em 0;
}

table#tickets th,
table#tickets td {
	border-bottom: 1px dotted #ecc2e0;
	padding: .2em 0;
}

table#tickets td.price {
	text-align: right;
}

p.action {
    font-size: 120%;
    font-weight: bold;
    padding: 1em 0 0 0;
}

p.action + h3 {
    padding-top: 1em;
}

p.smallprint,
div.smallprint,
form.register p.smallprint {
	color: #999;
	font-size: 90%;
	font-weight: bold;
	margin-bottom: 0;
	padding-bottom: 1em;
}

.smallprint a:link,
.smallprint a:visited {
	text-decoration: underline;
	color: #999;
	border: 0;
}


.smallprint a:hover,
.smallprint a:active {
	color: #333;
}

div.register,
form.register {
	color: #bf0e82;
	background-color: #f6f6f6;
	padding: 10px;
}

form.contact {
	margin-bottom: 2em;
}

form.register label {
	color: #666;
	width: 86px;
	float: left;
	text-align: right;
	padding-right: 4px;
}

form.register div {
	padding: 2px;
	margin-bottom: .5em;
}

form.register div.submit {
	margin: 0 0 0 90px;
}

form.register p.errmsg {
	margin: 1em 0 0 90px;
	font-size: 100%;
	padding: 0;
}

form.register input.submit {
	margin: 1em 0 2em 0;
	color: #fff;
	background-color: #bf0e82;
	font-weight: normal;
	text-transform: uppercase;
	border: 0;
	font-size: 100%;
}

form.register button {
	background: transparent;
	border: 0;
	padding: 0;
	margin: 1em 0 2em -4px;
}

form.register input {
	border: 1px solid #999;
	color: #999;
	background-color: #fff;
	padding: 4px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 100%;
}

form.register textarea {
	font-family: Arial, Helvetica, sans-serif;
}

form.register img.success,
form.register img.error {
	vertical-align: bottom;
	margin-left: 1em;
}

form.register .error {
	color: #fd0606;
	background-color: #f7d2d2;
	font-weight: bold;
}

div.register p,
form.register p {
	font-size: 120%;
	font-weight: bold;
	letter-spacing: -0.6px;
}

form.register input.name {
	width: 14em;
}

form.register input.email,
form.register input.tel {
	width: 26em;
}

.clear {
	clear: both;
	height: 1px;
	line-height: 1;
	font-size: 1px;
}

a img {
    border: 0;
}