/* CSS Document */

/*
colours
========================
red			#9b0024
grey		#6d6d6d
green		#8c9163
blue		#0b3258

*/

/* @group site defaults */

* { margin: 0; padding: 0; }

html { }

body { color: #666; font: 0.9em/1.4em Helvetica, Arial, sans-serif; margin: 0px auto; background: #fff; }
/*body { color: #666; font: 0.9em/1.4em "Myriad Pro", Helvetica, Arial, sans-serif; margin: 0px auto; background: #fff; }*/

a { color: #9b0024; text-decoration: none; border-bottom: 1px dotted #e7aab8; }
a:hover { background: #efefef; border-bottom: 1px dotted #666; color: #0b3258; }

/* Button: button */
.button { display: block; width: 170px; text-align: center; height: 25px; line-height: 25px; background: url(/site/images/bg_topbar.png) repeat-x top left; xfont-weight: bold; color: white; border: 0; }
a.button:hover { background: url(/site/images/bg_topbar.png) repeat-x top left;  border: 0; color: #222; }

p { display: block; padding: 10px 0; }
h1, h2 { display: block; }
h1 { font-size: 1.7em; }
h2 { font-size: 1.4em; }
h3 { font-size: 1.2em; }

hr { display: block; border-top: dotted 1px #cecece !important; height: 1px; margin: 20px 0; clear: both; color: transparent; border: 0px none;}

.left { float: left; }
.right { float: right; }
.clear { clear: both; }

.red { color: #9b0024; }

p span { color: #6d6d6d; }

img.left { margin: 4px 20px 10px 0px;  }
img.right { margin: 4px 0px 10px 20px; }
img.center { display: block; margin: 0px auto; }

img.small { width: 100px; } 	/* Small: small=100x0@100% */
img.medium { width: 265px; }	/* Medium: medium=265x0@100% */
img.large { width: 530px; }		/* Large: large=530x0@100% */
img.sidebar { width: 190px; }	/* Sidebar: sidebar=190x0@100% */

.error { display:none; font-size: 14px; color: red; }
.navbar { background: #eee; padding: 3px 10px; letter-spacing: 0.11em; margin-top: 10px; color: #6d6d6d; }

img,
a img { border: 1px solid #bcbcbc; padding: 2px;  }


table { width: 80%; border-collapse: collapse; }
table th { background: url(/site/images/bg_topbar.png) repeat-x top left; color: #fff; padding: 2px; border: #fff solid 1px; }
table td { padding: 1px 2px; border: #fff solid 1px; }
table tr td.floatright { text-align: right; }

#basket .button { padding: 1px 5px; border: #ccc solid 1px; }
#basket input.addfield { text-align: center; border: #ccc solid 1px; }

/* @end */

/* @group main layout */

#container { margin: 0px auto; display: block; width: 880px; clear: both; }
#container #logo { display: block; margin: 30px auto 50px; border: 0; }

#menu { position: relative; height: 35px; background: url(/site/images/bg_menu.png) no-repeat center 24px; xborder: 1px solid red; }

/* set menu width and link colours */

#menu,
#menu .primary :hover div,
#menu .primary div.current { width: 880px; }
#menu a { font-size: 1em; color: #5d5d5d; text-decoration: none; background: 0; border: 0; }
#menu a:hover,
#menu a.current { color: #9b0024; }

#menu .table { display: table; margin: 0 auto; }

#menu .primary { display: table-cell; white-space: nowrap; }
#menu ul { list-style: none; }
#menu li { height: auto; float: left; }

#menu .primary a { display: block; height: 30px; line-height: 30px; float: left; padding: 0 26px 0 26px; white-space: nowrap; }

#menu .primary a:hover, 
#menu .primary li:hover a { cursor: pointer; }

#menu ul li div { display: none; }

#menu table { border-collapse: collapse; margin: -1px; font-size: 1em; width: 0; height: 0; }

#menu ul li div ul { display: table; margin: 0 auto; }

#menu ul.courses li div ul { margin: 0; padding-left: 60px; }
#menu ul.library li div ul { margin: 0; float: right; padding-right: 60px; }

#menu .primary :hover div,
#menu .primary div.current { display: block; position: absolute; top: 30px; left: 0; text-align: center; background: #fff; }

.current { z-index: 1; }
#menu .primary :hover div { z-index: 100; }

#menu .primary :hover ul li a,
#menu .primary .current ul li a, { display: block; float: left; padding: 0 26px 0 26px; white-space: nowrap; }
#menu .primary :hover ul li a:hover,
#menu .primary .current ul li a:hover { visibility: visible; }

/* @end */


/* @group header */

#header {  margin: 0px auto; display: block; height: 25px; background: url(/site/images/bg_topbar.png) repeat-x top left; }

#topbar { margin: 0px auto; display: block; width: 820px; height: 25px; color: white; }
#topbar a { color: #fff; }
#topbar a:hover { background: none; border: 0; }

#searchform { display: block; float: right; clear: none; color: #fff; width: 300px; display: inline; }
#searchform input { margin-top: 4px; padding: 2px; width: 200px; height: 13px; font-size: 12px; }
#searchform #submit { width: auto; height: auto; padding: 0; vertical-align: top; }

/* @end */


/* @group content */

#leftcontent,
#rightcontent { display: block; padding: 0 0 40px 0; float: left; margin-top: 40px; }

#leftcontent ol,
#leftcontent ul { margin-left: 20px; padding-bottom: 10px; }

#leftcontent { width: 550px; margin-right: 20px; padding-left:  40px;  min-height: 400px; }
#leftcontent p { display: block; padding: 10px; }
#leftcontent h1,
#leftcontent h2 { display: block; padding: 10px 10px 10px 10px; color: #0b3258; font-weight: normal; }
#leftcontent h3 { display: block; padding: 15px 10px 5px 10px; }
#leftcontent .imgwithmenu { float: right; padding: 10px; }
#leftcontent ul.menuwithimg { width: 300px; float: left; }
#leftcontent ul { display: block; padding: 10px 10px 10px 10px; }
#leftcontent ul li a { color: #9b0024; font-size: 1em; }
#leftcontent ul li a:hover { color: #0b3258; }

#leftcontent .placeholder { padding: 10px 0; }

#leftcontent .searchitem,
#leftcontent .product { border-bottom: #5d5d5d dotted 1px; padding: 10px 0; }
#leftcontent .searchitem strong,
#leftcontent .product strong { color: #9b0024; }

#leftcontent ul#searchtabs { list-style: none; height: 26px; border-bottom: #9b0024 solid 1px; margin: 0; padding: 10px 0 0 20px; }
#leftcontent ul#searchtabs li { display: block; float: left; }
#leftcontent ul#searchtabs li a { display: block; float: left; height: 25px; line-height: 25px; padding: 0 10px; border: #9b0024 solid 1px; border-width: 1px 1px 0 1px; margin-left: 3px; color: #9b0024; }
#leftcontent ul#searchtabs li a.selectedtab { border: #9b0024 solid 1px; border-bottom: #fff solid 1px; }
#leftcontent ul#searchtabs li a:hover { background: #9b0024; color: #fff; border: #9b0024 solid 1px; }
#leftcontent ul#searchtabs li a:hover.selectedtab { border: #9b0024 solid 1px; border-bottom: #fff solid 1px; background: #fff; color: #9b0024; }

#flashcontent { padding: 10px; }

#rightcontent img { xmargin-left: 30px; }
#rightcontent { width: 210px; background: url(/site/images/right_dot.png) repeat-y top left; padding-left: 17px; }
#rightcontent p { display: block; padding: 10px 10px 0 10px; font-size: 0.9em; }
#rightcontent h2 { display: block; padding: 10px 10px 0 10px; color: #0b3258; font-weight: normal; font-size: 1.3em; }
#rightcontent ul { display: block; list-style: none; padding: 10px 10px 10px 10px; }
#rightcontent ul li a { display: block; line-height: 25px; color: #8c9163; font-size: 0.9em; text-decoration: none; }
#rightcontent ul li a:hover { color: #9b0024; }

#rightcontent .placeholder { padding: 10px 10px 0 10px; }


#image-scroller { width: 530px; padding: 10px; height: 270px; }
#image-scroller img { padding: 0; border: 0; width: 530px; }

.news { margin-bottom: 10px; }

/* @end */


/* @group footer */

#footer { margin: 0px auto; clear: both; display: block; height: 145px; background: url(/site/images/bg_bottombar.png) repeat-x top left; margin-top: 30px; color: #fff; font-size: 0.9em; }
#footer a { color: white; }
#footer a:hover { border: 0; background: none; }

#footer #bottombar { margin: 0px auto; display: block; width: 820px; height: 145px; }
#footer #bottombar #sitelinks { text-align: center; clear: both; }
#footer #bottombar #quicklinks ul { display: block; list-style: none; float: left; padding: 30px 0 30px 30px; width: 240px; }
x#footer #bottombar #quicklinks ul.left { xpadding-left: 150px; }
#footer #bottombar #quicklinks ul li { display: block; }

/* @end */




/* @group form layout - wufoo */

/* form */

form.padded { padding: 0 0 0 10px; margin: 20px 0; border-top: #0b3258 dotted 1px; }

input { border: 0 none; padding: 0; }

form ol { margin: 0 !important; padding: 0 !important; list-style-type: none; width: 100%; }
form li { margin: 0; width: 62%; padding: 4px 5px 2px 9px; position: relative; }
form li ol li { width: auto; }

form li:after,
.buttons:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }

form li,
.buttons { display: inline-block; }
* html form li,
* html .buttons { height: 1%; }

form li,
.buttons { display: block; }

form li ol li { margin: 0 4px 0 0; padding: 0 0 8px 0; }
form li ol li { float: left; }
form li.left { display: inline; width: 48%; }
form li.right { display: inline; width: 48%; }
form li.left .medium,
form li.right .medium { width: 100%; }

form li ol li label { padding-top: 3px; clear: both; color: #999; display: block; }
form li .datepicker { float: left; margin: .1em 5px 0 0; padding: 0; width: 16px; height: 16px; cursor: pointer !important; }

.info,
fieldset { border-style: none; border-bottom: 1px dotted #5d5d5d; margin: 1.5em 0; padding-bottom: 1em; }
legend { font-size: 120%; font-weight: bold; color: #9b0024; margin-left: -7px; }
fieldset>legend { margin-left: 0; }

/* ----- fields and labels ----- */

label.desc { display: block; padding: 0 0 1px 0; line-height: 1.5; color: #000; font-weight:bold; }

input.text,
input.file,
textarea.textarea,
select.select { margin: 0; font-size: 100%; color: #000; }

input.text,
textarea.textarea,
.firefox select.select { border-top: 1px solid #7c7c7c; border-left: 1px solid #c3c3c3; border-right: 1px solid #c3c3c3; border-bottom: 1px solid #ddd; background: #fff url(/site/images/fieldbg.gif) repeat-x top; }

input.text,
input.file { padding: 2px 0 2px 0; }

input.checkbox,
input.formradio { display: block; line-height: 1.4em; margin: 6px 0 0 3px; width: 13px; height: 13px; }
label.choice { display: block; line-height: 1.4em; margin: -1.55em 0 0 25px; padding: 4px 0 5px 0; width: 90%; }
label.list { margin-left: 50px; }

textarea.textarea{ font-family: "Tahoma", Arial, Verdana, sans-serif; }

select.select { margin: 1px 0; padding: 1px 0 0 0; }
select.select[class]{ margin: 0; padding: 1px 0 1px 0; }
*:first-child+html select.select[class]{ margin: 1px 0; }
.safari select.select { margin-bottom: 1px; font-size: 120% !important; }

/* sizes */

.third { width: 32% !important; }
.half { width: 48% !important; }
.full { width: 100% !important; }

input.tiny,
select.tiny { width: 40px; }

input.small,
select.small { width: 25%; }

input.medium,
select.medium { width: 50%; }

input.large,
select.large,
textarea.textarea { width: 100%; }

textarea.small { height: 5.5em; }
textarea.medium { height: 10em; }
textarea.large { height: 20em; }

/* required */

form .req { float: none; color: red; font-weight: bold; }

/* instructions */

form li.focused { background: #9b0024; }
form li.focused label { color: #fff; }
form .instruct { position: absolute; top: 0; left: 100%; z-index: 1000; width: 42%; margin: 0 0 0 8px; padding: 8px 10px 9px 10px !important; border: 1px solid #8c9163; background: #8c9163; line-height: 130%; font-size: 90%; color: #fff; visibility: hidden; }
form .instruct small { font-size: 105%; }
form li.focused .instruct,
form li:hover .instruct{ visibility: visible; }

/* buttons */

.buttons { clear: both; margin-top: 10px; margin-bottom: 20px; border-top: 1px dotted #fff; padding-top: 10px; }
.buttons input { width: auto; overflow: visible; border: 1px solid #7c7c7c; margin: 0px 10px; padding: 0px 10px; }

/* @end */
