body { margin: 0; padding: 0; font-family: Arial, Helvetica, sans-serif; font-size: 76%; }

img { border: 0; }

a { color: #6e2636; }

h1, #content div.right h2 { margin: 0 0 0.6em; font-weight: normal; font-size: 200%; color: #002469; }
#content div.right h2 {  }
h2 { font-size: 160%; }
h4.floatleft { width: 130px; margin: 3px 0 0; }
h4.nowidth { padding-right: 10px; }
h5 { font-size: 100%; margin: 1em 0 0; }

tr.nopaddingtop td { padding-top: 0 !important; }
tr.nopaddingbottom td { padding-bottom: 0 !important; }

p.submit { padding-top: 1em; #padding-bottom: 1em; }
p.error { margin: 0 0 1px 0; padding: 0.5em; background: #555; color: white; font-weight: bold; }

ol ol li { list-style-type: lower-alpha; }

label { float: left; width: 160px; height: 20px; line-height: 20px; }
label.checkbox_label { width: auto !important; padding-right: 10px; }
label.block { display: block; float: none !important; }

input, textarea { font-family: Arial, Helvetica, sans-serif; font-size: 100%; }
input.text { width: 130px; #width: 130px; }
input.button { margin: 0; padding: 0 3px; height: 24px; line-height: 24px; background: url(../graphics/button.gif); border: 0; color: white; }
#content input.button { padding: 0 20px !important; }
input.checkbox, input.radio { float: left; }
input.digits { width: 40px; }
input.readonly { color: #555; }

select.maxwidth { width: 250px !important; #width: 320px !important; margin-right: 12px; #margin-right: 17px; }

form { float: left; position: relative; }
* html form table { float: left; margin-right: -298px; }
form p { clear: both; }
form h3 { margin: 0; font-size: 110%; }
form h4 { margin: 0 0; font-size: 100%; white-space: normal; }
form h4.largewidth { width: 295px !important; }
form td { white-space: nowrap; position: relative; padding: 1em 10px; }
form th { padding: 4px 0; }
form table table th { text-align: left; padding-left: 1em; }
form tr.notoppadding td { padding: 0 10px 1em 10px !important; }
form tr.alt td, form tr.alt th, p.alt { background: #e4ebf3; }
p.alt { padding: 1em 10px; }
form td label { float: none; position: absolute; }
form td label.checkbox_label { position: relative; float: left; width: 50px; }
form td input.text, form td textarea { margin-left: 115px; }
form td p input.text { margin-left: 0; }
form td input.checkbox_text { margin-left: 0; width: 100px; }
form td textarea { width: 430px; #width: 400px; height: 100px; }
form td textarea.smallmargin { margin-left: 20px; }
form td textarea.tinywidth { width: 130px !important; #width: 130px !important; }
form td textarea.smallwidth { width: 300px !important; }
form td textarea.medwidth { width: 380px; #width: 360px; }
form td textarea.centre { margin-left: 50px; }
legend, form p { padding: 0 10px; }

fieldset { border: 0; margin: 1em 0 0; padding: 0; }
fieldset.shiftright { padding-left: 10px; padding-bottom: 15px; }
fieldset.shiftright legend { margin: 0 0 -10px -10px; }
fieldset.shiftright h4 { margin: 20px 0 10px; }

legend { font-weight: bold; font-size: 120%; margin: 0 0 1em; }

.clear { clear: both; line-height: 0; }
.bold { font-weight: bold !important; }
.fixed { width: 770px; margin: 0 auto; position: relative; }
.block form { padding: 12px; }
.floatleft { float: left; }
.block { display: block; }
.floatright { float: right; position: relative; right: 50px; }
.nofloat { float: none !important; }
.nowidth { width: auto !important; }
.smallwidth { width: 80px !important; }
.largewidth { width: 220px !important; }
.nomargin { margin: 0 !important; }
.automargin { margin: 0 auto !important; }
.smallpositionleft { position: relative; left: 20px; }
.nobold { font-weight: normal !important; }
.wrap { white-space: normal; }
.uppercase { text-transform: uppercase !important; }
.italics { font-style: italic !important; }
.borderright { border-right: 1px solid #9fa4aa; }
.alignright { text-align: right !important; }

.clear2:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.clear2 { display: inline-block; }
/* \*/
.clear2 { display: block; }
/* */

#shell { width: 860px; margin: 0 auto; }

#wrapper { position: relative; }

#header { position: relative; height: 208px; background: url(../graphics/header.gif) repeat-x; }

#logo { position: absolute; top: 11px; left: 22px; }

#sidebar { position: relative; top: -25px; width: 214px; float: left; }
#sidebar div.block { position: relative; left: -2px; width: 189px; margin-top: 20px; clear: both; }
#sidebar h3 { margin: 0; background: url(../graphics/heading3.gif); height: 33px; line-height: 33px; font-size: 120%; color: white; padding: 0 12px; }
#sidebar p { margin: 0; }

#member_navigation div { padding: 8px 10px; font-weight: bold; }
#sidebar #member_navigation ul { background: none; min-height: 1px !important; }
* html #sidebar #member_navigation ul { height: 1px !important; }

#content { position: relative; left: -4px; margin-left: 214px; padding: 20px 0; }
* html #content { left: -20px; margin-left: 230px; }
#content div.left { float: left; width: 310px; padding: 0 20px 0 0; border-right: 1px solid #abbdd3; }
* html #content div.left { width: 340px; position: relative; left: 0px; height: 470px; }
#content div.right { width: 210px; #width: 205px; margin-left: 330px; padding: 0 0 0 20px; }
* html #content div.right { width: 190px; position: absolute; right: -30px; }

#content p { margin-top: 0; }
#content form { border: 1px solid #bccce0; min-width: 550px; }
#content form.search { border: 0 none; }

#footer { background: url(../graphics/footer.gif) repeat-x; height: 154px; }

div.footer { height: 100px; margin-bottom: -100px; position: relative; z-index: 500; }
div.footer p { margin-top: 0; padding-top: 1em; font-size: 90%; color: #9c9a9a; }
div.footer p span { font-size: 110%; color: #6e2636; }

#crumbs { position: absolute; bottom: 0; left: 212px; height: 35px; line-height: 35px; color: white; font-size: 85%; }
#crumbs a { color: white; }

#search { background: url(../graphics/search.gif) repeat-x; border: 1px solid #cecece; }
#search form { float: none; #margin-bottom: -1px; }
#search input.text { border: 1px solid #cecece; width: 105px; #width: 95px; height: 20px; position: relative; top: -4px; #top: 0; }
* html #search input.text { width: 90px; }

#login { background: url(../graphics/login.gif) repeat-x 0 33px; border: 1px solid #bccce0; min-height: 180px; }
* html #login { height: 168px; }
#login form { #margin-top: 0; }
#login input.text { border: 1px solid #8da6c5; width: 120px; height: 20px; margin-bottom: 5px; }
* html #login input.text { width: 110px; }
#login input.submit { float: right; margin-right: 3px; }
#login a { float: left; width: 120px; #width: 115px; height: 20px; line-height: 20px; }
* html #login a { width: 118px; }
#login label { width: 40px; color: #9ca1c7; }
#login p { white-space: nowrap; padding-top: 0.7em; font-size: 90%; text-align: center; color: #5f6a83; line-height: 1em; }
#login p a { float: none; }

#pagetools { position: absolute; right: 0; top: 0; background: #d7d6d6; padding: 0 15px 15px; }
#pagetools ul { margin: 0; padding: 0; }
#pagetools li { list-style-type: none; float: left; }
#pagetools li a { float: left; height: 33px; line-height: 33px; padding: 0 15px; font-weight: bold; }

#photos { height: 160px; position: relative; }
* html #photos { left: -3px; }
#photos ul { position: absolute; margin: 0; padding: 0; height: 160px; width: 600px; }
#photos li { list-style-type: none; float: left; width: 140px; height: 140px; background-repeat: no-repeat; background-position: top center; }
#photos li.a1 { background-image: url(../graphics/photos/1.jpg); }
#photos li.a2 { background-image: url(../graphics/photos/2.jpg); }
#photos li.a3 { background-image: url(../graphics/photos/3.jpg); }
#photos li.a4 { background-image: url(../graphics/photos/4.jpg); }

a.email, a.print { background: white; padding: 0 15px 0 40px !important; color: #042a4f; }
a.email { background: white url(../graphics/email.gif) no-repeat 10px 11px; }
a.print { background: white url(../graphics/print.gif) no-repeat 10px 11px; }
a.to_top { margin-left: 15px; color: white; background-position:  0 -10px; }

#last_updated { clear: both; text-align: right; font-size: 90%; font-style: italic; padding-top: 15px; color: #777; margin-bottom: -15px; }

#enrolment_form { border: 0 none !important; }
* html #enrolment_form { width: 540px; }
* html #enrolment_form table { width: 240px; }
#enrolment_form p.alt { #width: 500px; #float: left; }
#enrolment_form p { padding-top: 1em; }
#enrolment_form fieldset { border: 1px solid #bccce0; width: 520px; position: relative; #top: 15px; left: 15px; }
* html #enrolment_form fieldset { width: 510px !important; }
#enrolment_form fieldset.shiftright { width: 510px; #width: 510px !important; }
* html #enrolment_form fieldset.shiftright { width: 500px !important; }
#enrolment_form input.submit { position: relative; top: 10px; #top: 20px; left: 5px; }
#enrolment_form legend { margin: 0 !important; }

#calendar { background: #f1f0f0; }
#calendar h2 { position: relative; height: 36px; line-height: 36px; background: url(../graphics/calendar_heading.gif) repeat-x; color: #6e2636; padding: 0 40px; margin: 0; border-bottom: 1px solid white; font-size: 110%; text-decoration: underline; cursor: pointer; }
#calendar h2.active { text-decoration: none; cursor: auto; color: black; }
#calendar h2 img { position: absolute; top: 0; left: 16px; }
#calendar div.inner { padding: 8px 40px; background: #f1f0f0; border-bottom: 1px solid white; }
#calendar div a { display: block; line-height: 1.7em; }

#programme { width: 100%; }
* html #programme { width: 535px; }
#programme th { text-align: left; padding: 0 0.7em; height: 36px; line-height: 36px; background: url(../graphics/calendar_heading.gif) repeat-x; font-size: 150%;  border-bottom: 1px solid white; }
#programme th a { padding-left: 20px; float: right; font-size: 70%; height: 36px; background: url(../graphics/calendar_arrow_left.gif) no-repeat;  }
#programme td { padding: 0.8em; vertical-align: top; }
#programme td.left { white-space: nowrap; background: #f1f0f0; border-bottom: 1px solid white; }
#programme td.left p.time { color: #716f6e; }
#programme td.right { width: 100%; border-bottom: 1px solid #c4c3c3; }
#programme td.base { border-bottom: 0 none !important; }
#programme p { margin: 0; line-height: 1.3em; }

#venue { border: 1px solid #c4c3c3; padding: 1em; }
#venue span { font-weight: bold; float: left; }
/*#venue p { margin: 0 0 0 90px; }*/

#credit_cards { margin: 0; padding: 0; float: right; }
#credit_cards li { list-style-type: none; display: inline; padding-right: 0.5em; }

/****************************************************************************************************/
/* #gallery styles */
/****************************************************************************************************/

#gallery { margin: 0; padding: 0; }
#gallery li { list-style-type: none; float: left; width: 140px; height: 140px; background: #9a9994; margin: 0 7px 7px 0; text-align: center; }
#gallery li a { vertical-align: middle; width: 140px; height: 140px; #width: 110px; #height: 110px; display: table-cell; text-align: center; #position: relative; #top: 50%; }
#gallery li a img { position: relative; #bottom: 25%; }

.tool-tip,keTip-tip {
	color: #fff;
	z-index: 13000;
}
 
.tool-title, .keTip-title, .tip-text {
	display: none;
}
 
.tool-text,.keTip-text,.tip-title {
	font-size: 11px;
	margin: 0;
	color: white;
	padding: 4px 8px;
	background: black;
	font-weight: bold;
}
* html .tool-text, * html .keTip-text {
	float: left;
}
.keTip-tip { width: 400px; text-align: left !important; }


a.rss { background: url(../graphics/rss_icon.gif) no-repeat center left; padding-left: 20px; display: block; height: 18px; }
a.home_rss { position: absolute; top: 25px; right: 15px; }

#body_copy { position: relative; }