/* Generic Site Styles */
.clear { clear: both; font-size: 0px; line-height: 0px; margin: 0px; padding: 0px; height: 0px; }
.left { float: left; }
.right { float: right; }
.center { text-align: center; width: 100%; }
.alignLeft { width: 100%; text-align: left; }
.alignRight { width: 100%; text-align: right; }
.justify { text-align: justify; }
.noDisplay { display: none; }
input { border: solid 1px #c0c0c0; font-family: Arial; font-size: 13px; font-weight: normal; padding: 0; margin: 0; }
input.noBorder { border: none; }
.noborder { border: none; }
textarea { border: solid 1px #c0c0c0; font-family: Arial; font-size: 11px; padding: 0px; margin: 0; }
select { border: solid 1px #c0c0c0; font-family: Arial; font-size: 11px; height: 16px; padding: 0; margin: 0; }
img { margin: 0; padding: 0; border: none; }
.required { background-color: #efefef; } 
.texttop { vertical-align: text-top; }
.middle { vertical-align: middle; }
.top { vertical-align: top; }
.bottom { vertical-align: bottom; }
.subtitle { color: #066; font-size: 1.5em; xfont-weight: bold; }
.intro { font-size: 1.4em; line-height: 1.2em; color: #066; xfont-weight: bold;}
.red { color: #c00; }
.black { color: #000; }
.smalltext { font-size: 0.9em; line-height: 1.4em; }
.fieldHdr { font-weight: bold; }
.spacer10 { clear: both; font-size: 0px; line-height: 0px; margin: 0px; padding: 0px; height: 10px; }
.spacer16 { clear: both; font-size: 0px; line-height: 0px; margin: 0px; padding: 0px; height: 16px; }
.bordertop { border-top: 1px dashed #A7A7A7; }
hr { border: 1px; color: #c8c8c8; background-color: #c8c8c8; height: 1px; clear: both; }

/* default page stuff */
#contentwrapper { display: inline; float: right; margin: 0 auto; width: 754px; padding:0 0 0 25px; }
div.bdrdash { float: left; margin: 0; padding: 0; height: 100%; border: 1px dashed #A7A7A7; }
div.bdrline img { border: 1px solid #CDCDCD; }
#feature { position: relative; float: left; margin: 0; padding: 0; width: 100%; }
#feature .pic { display: inline; float: left; margin: 0; padding: 0; width: 120px; }
#feature .title { font-size: 18px; font-weight: normal; color: #000; margin: 0 0 0 20px; padding: 0; }
#feature .txt { display: inline; position: relative; float: left; margin: 0; padding: 0; width: 70%; }
#feature .txt ul { float: left; margin: 10px 0 0 0; padding: 0; border: 0; }
#feature .txt li { margin-left: 35px; list-style-type: disc; font-weight: normal; line-height: 1.6em; }

/* typography */
h2 { font-family: Georgia, serif; font-size: 20px; font-weight: bold; color: #000; margin: 10px 0 5px 0; padding: 0;}
h3 { font-size: 20px; font-weight: normal; color: #000; margin: 0 0 5px 0; padding: 0; line-height: 1.2em; }
h4 { font-size: 13px; font-weight: bold; color: #000; margin: 0 0 3px 0; padding: 0;}
.bigredtext { font-family: Georgia, serif; font-size: 24px; color: #C00; font-weight: bold; }
.biggreytext { font-family: Georgia, serif; font-size: 24px; color: #707070; font-weight: bold; }
.bigblacktext { font-family: Georgia, serif; font-size: 24px; color: #000; font-weight: bold; line-height: 30px; }
.telno { font-family: Georgia, serif; font-size: 20px; font-weight: bold; color: #000; margin: 0 0 5px 0; padding: 0;}

/* home page stuff */
#bigpromobox { float: left; margin: 0 10px 0 0; padding: 0; width: 300px; xheight: 436px; }
#bigpromo { position: relative; float: left; text-align: left; background-color: #CCE5F2; width: 298px; xheight: 100px; }
#bigpromo .display { float: left; margin-bottom: 10px; padding: 0; }
#bigpromo .desc { position: relative; margin-left: 10px; width: 278px; }
#bigpromo .btns { float: left; position: relative; margin: 10px 0 0 10px; padding-bottom: 6px; display: inline; }
#bigpromo .btns img { margin-right: 6px; }

#smallpromobox { float: left; margin: 0 10px 0 0; padding: 0; width: 274px; }
#smallpromo { position: relative; float: left; text-align: left; background-color: #CCE5F2; width: 272px; height: 100px; }
#smallpromo .icon { float: left; margin-right: 10px; padding: 0; }
#smallpromo .desc { position: relative; margin-top: 6px; }
#smallpromo .btns { position: absolute; bottom: 6px; left: 110px; display: inline; margin-top: 10px; }
#smallpromo .btns img { margin-right: 6px; }

/* whats on stuff */
#whatson_tbl { width: 100%; font-size: 1.1em; margin-bottom: 10px; }
#whatson_tbl td { text-align: left; height: 24px; border-bottom: 1px dotted #CDCDCD; }
#whatson_tbl .date { width: 80px; }
#whatson_tbl .book { width: 100px; text-align: right; font-size: 0.9em; }
#whatson_tbl a { display: block; color: #707070; text-decoration: none; font-weight: normal; }
#whatson_tbl a:hover { color: #C00; text-decoration: none; font-weight: normal; }

/* events stuff */
#eventsbox { float: left; margin: 0 0 20px 30px; padding: 0; width: 564px; height: 260px; }
#events { position: relative; float: left; text-align: left; background-color: #CCE5F2; width: 562px; height: 260px; }
#events .display { float: left; margin: 0; padding: 0; }
#events .desc { float: left; position: relative; margin: 10px 0 0 10px; width: 150px; font-weight: bold; }
#events .btns { position: absolute; bottom: 6px; left: 490px; display: inline; margin-top: 10px; }
#events .btns img { margin-right: 6px; }
.quote { width: 100%; margin: 6px 0 6px 0; padding: 4px 0 4px 0; border-top: 1px dotted #CDCDCD; border-bottom: 1px dotted #CDCDCD; }
.quotetext { color: #808080; font-size: 1.2em; font-style: italic;  }

#err{
  text-align:left;
  margin: 0 0 12px 25px;
}

#success{
  color:green;
}

#error{
  color:red;
}

#mandatory{
  color:orange;
}
