body { color:#333; font-family:Verdana, Helvetica, sans-serif; font-size:70%; margin:0; padding:0; text-align:center; background:#989999; }

/* Accessibility links */
#accessibility { position:absolute; left:-99999px; }

/* Layout styles */
#contentArea { width:750px;padding:0 9px; background:url(/images/shared/shadow.gif) top center repeat-y; margin:0 auto; text-align: left; }
#mainContent { margin:0; background:#fff; }
#mainContentInner { padding:0 0 155px 0; height: 1%; /* Trigger hasLayout in IE6 to fix bottom padding issue */}
#content { width:447px; margin:0; padding:190px 22px 0 36px; float:right; line-height:1.5em; }
#info { width:238px; float:left; margin:0; padding:0 0 0 5px; }

/* Site search and home link */
#siteSearch { background:#fff; color:#333; margin:0; padding:15px 22px 5px 22px; height:34px; }
#siteSearch a { text-decoration:none; }
#siteSearch a:link { text-decoration:none; }
#siteSearch a:visited { text-decoration:none; }
#siteSearch a:hover, #siteSearch a:focus { text-decoration:underline; }
#siteSearch a:active { text-decoration:none; }
#siteSearch #homeLink { float:left; margin:2px 20px 0 0; padding:0; font-weight:bold; }
#siteSearch #homeLink p { margin:0; padding:0; }
#siteSearch #homeLink a { padding:0 0 0 18px; background:url(/images/shared/mini-logo.gif) left no-repeat; }
#siteSearch fieldset { margin:0; padding:0; border:none; }
#siteSearch fieldset legend { display:none; }
#siteSearch fieldset label { position:absolute; left:-99999px; }
#siteSearch fieldset input { margin:0; padding:0; }
#siteSearch fieldset.courses { float:left; }
#siteSearch fieldset.search { float:right; }

/* Site navigation */
#siteNav { padding:0; }
#siteNav ul {list-style-type:none; margin:0; padding:1px 0 0 0; }
#siteNav ul li { float:left; padding:0; margin:0 1px 0 0; font-size:1.1em; text-align:center; }

#siteNav a { display:block; padding:8px; font-weight: bold; text-decoration:none; color:#333; background:#e4e4e4; }
#siteNav a:link { text-decoration:none; }
#siteNav a:visited { text-decoration:none; }
#siteNav a:hover, #siteNav a:focus { text-decoration:underline; }
#siteNav a:active { text-decoration:none; }

/* Site footer */
#siteFooter { width:750px; padding:25px 4px 10px 4px; margin:0 auto; background:url(/images/shared/footer.gif) top left no-repeat; }
#siteFooter ul { margin:0; padding:0; display:inline; list-style-type:none; }
#siteFooter ul li { display:inline; margin-right:5px; }
#siteFooter a { text-decoration:none; }
#siteFooter a:link { text-decoration:none; }
#siteFooter a:visited { text-decoration:none; }
#siteFooter a:hover, #siteFooter a:focus { text-decoration:underline; }
#siteFooter a:active { text-decoration:none; }

/* Branding */
#branding { margin:0; padding:23px 0 0 36px; }

/* Section nav */
#info ul.sectionNav { list-style-type:none; margin:29px 0 29px 36px; padding:0; }
.sectionNav li { margin:8px 0; }
.sectionNav a { padding: 2px; font-weight: bold; text-decoration:none; }
.sectionNav a:link { text-decoration:none; }
.sectionNav a:visited { text-decoration:none; }
.sectionNav a:hover, .sectionNav a:focus { text-decoration:none; }
.sectionNav a:active { text-decoration:none; }

/* Section sub-nav */
.sectionSubNav { margin:0; }
.sectionSubNav li { margin:5px 0; }
.sectionSubNav a { padding:0; font-weight: normal; text-decoration:none; background:none; }
.sectionSubNav a:link { text-decoration:none; background:none; }
.sectionSubNav a:visited { text-decoration:none; background:none; }
.sectionSubNav a:hover, .sectionSubNav a:focus { text-decoration:underline; background:none; }
.sectionSubNav a:active { text-decoration:none; background:none; }

/* contentNav */
#contentNav { padding:18px 0 0px 0; }
#contentNav ul { display:inline; list-style-type:none; margin:0; padding:0; }
#contentNav ul li { float:left; padding:0; margin:0 1px 0 0; font-size:1.1em; background:#e2e7e7; text-align:center; }

#contentNav a { display:block; padding:8px; font-weight: bold; text-decoration:none; color:#333; }
#contentNav a:link { text-decoration:none; }
#contentNav a:visited { text-decoration:none; }
#contentNav a:hover, #contentNav a:focus { text-decoration:underline; }
#contentNav a:active { text-decoration:none; }

/* Blockquote styles */
#info .quote { width:197px; margin:20px 0 40px 0; padding:0 0 0 34px;}
#info blockquote { margin:0; padding:0 31px 0 0; font-weight:bold; font-style:italic; line-height:1.8em; }
#info cite { display:block; font-weight:normal; font-style:normal; margin-top:30px; }

/* Information boxes */
#info #subscribeBox { margin:0 0 20px 36px; padding:39px 75px 13px 5px; }
#info #subscribeBox p { margin:0; padding:0; }
#info #prospectusBox { margin:0 0 20px 36px; padding:40px 0px 13px 0; }
#info #prospectusBox label { position:absolute; left:-99999px; }
#info #prospectusBox #prospectus { width:160px; }
#info #prospectusBox .buttons { margin-top:5px; }
#info #prospectusBox #prospectusType { margin-left: 5px; }

#subscribeBox a, #prospectusBox a { font-weight: bold; text-decoration:none; }
#subscribeBox a:link, #prospectusBox a:link { text-decoration:none; }
#subscribeBox a:visited, #prospectusBox a:visited { text-decoration:none; }
#subscribeBox a:hover, #subscribeBox a:focus, #prospectusBox a:hover, #prospectusBox a:focus { text-decoration:underline; }
#subscribeBox a:active, #prospectusBox a:active { text-decoration:none; }

/* Feature boxes */
.featureBox { width:126px; margin:20px 2px 0 0; padding:33px 10px 10px 10px; float:left; min-height:270px; }
.featureBox h2 { font-weight:bold; font-size:1.2em; margin:0; padding:0; line-height:1.3em; }
.featureBox img { border:3px solid #fff; margin:0 0 12px 0; padding:0; }

/* Form post confirmation */
#confirmText {
	margin-left: 114px;
}

/* In-page image styles */
/* Note on use of images:
This style is for banner type images across the top of a page running full width.
images are sized to a 3 column grid - the image should be either 146px, 294px or 442px wide depending on layout.
Layout can be 3 x 146px, 1 x 146px + 1 x 294px or 1 x 442px in any order.
Each image chould have  the following class asigned to the <img> tag. */
.pageImage { float:left; padding:0; margin:0 1px 10px 0; }

/* If we're just dropping a single image into the page flow set the following class on the <img> tag.
The image should be sized to 146px wide. This maintains the grid and allows a good balance of image to text. */
.singleImage { float:right; padding:0; margin:0 0 10px 10px; }

/* Header styles
Note - there's no css for an <h1> as one is generated automatically in each page and hidden. There should not be any other <h1>'s on the page so start with <h2>. */
h2 { font-size:2em; font-weight:bold; line-height:1em; }
h3 { font-size:1.5em; font-weight:bold; }
h4{ font-size:1.2em; font-weight:bold; }
h5 { font-size:1.1em; font-weight:bold; }
h6 { font-size:1em; font-weight:bold; }
h3, h4, h5, h6 { margin-bottom:5px; }

/* Course title styles */
.course-title { padding:0; }
.course-title h2 { font-size:2em; margin:30px 0 10px 0; padding:10px 0; border-top:1px solid #000; border-bottom:1px solid #000; }

/* Download files link styles */
.downloadFile { font-weight:bold; padding:12px 0; border-top:1px solid #ccc; border-bottom:1px solid #ccc; }
.downloadFile a.pdf { background:url(/images/icons/pdf.gif) top left no-repeat; padding:10px 0 10px 40px; }
.downloadFile a.doc { background:url(/images/icons/doc.gif) top left no-repeat; padding:10px 0 10px 40px; }
/* And smaller versions for displaying in, e.g. job vacancies table */
.downloadFileSm a.pdf { background:url(/images/icons/pdf_sm.gif) top left no-repeat; padding:5px 0 5px 25px; }
.downloadFileSm a.doc { background:url(/images/icons/doc_sm.gif) top left no-repeat; padding:5px 0 5px 25px; }

/* Generic 'article' styles */
.backLink {
	font-weight: bold;
}

/* Payment - Accepted cards */
.acceptedCards img { margin:0 0 0 3px; }
.acceptedCards .protx { margin:0 10px 0 0; }

/* Generic form styles */
form { margin:0; padding:0; }
form input, form select, form textarea { color:#333; font-family:Verdana, Helvetica, sans-serif; font-size:1em; }

fieldset { margin:10px 0; padding: 0 10px 10px 10px; border:1px solid #ccc;  }
fieldset legend { color:#333; font-size:1.5em; font-weight:bold; margin-bottom: 10px;}
.form-row { clear:left; margin:5px 0; }
.form-gap { clear:left; margin-top:15px; }
.label { float:left; margin-right:5px; width:145px; text-align:right; }
.input { margin-left:150px; vertical-align:top; }
.tick-item { position:absolute; margin-left:-4px; margin-top:-2px; }
.tick-text { display:block; padding-left:18px; }

/* Used for textfields, selects.. */
.formItem { width:200px; border:1px solid #999; }

/* Used for textareas */
.textarea { width:400px; height:50px; border:1px solid #999; }

.buttons { clear:both; padding:5px 0; }
.error { color:#900; background:#eee url(/images/error_icon.gif) 2px 2px no-repeat; padding:3px 2px 5px 23px; margin:0 0 5px 0; }
.errorFlag { color:#900; font-weight:bold; }
.note { color:#900; background:#eee; padding:2px; }

/* Table styles */
table	{ border-collapse:collapse; border:1px solid #ccc; width:100%; font-size:1em; margin:1em 0; }
table td { padding:5px; }
table tr.row0, table tr.even { background-color:#f6f2e8; }
table tr.row1, table tr.odd { background-color:#ffffff; }
table th { text-align:left; padding:5px; background-color:#333; color:#fff; }
table .action { text-align:left; padding:5px; background-color:#bbb; color:#fff; }
table .num { text-align:right; white-space:nowrap; }
table th input, table th select { font-weight:normal; }

/* Common typogaphic styles */
.large { font-size:1.3em; }
.small { font-size:0.8em; }
ul { clear:both; list-style-type:square; padding-left:1em; }
ul li { margin: 10px 0; }

/* Two column split */
.col { width:45%; float:left; margin-right:5%; }

.singleSmallCol { width: 75%; }

/* Miscellaneous styles */
img { border:none; }
.clear { clear:both; }
.hide { position:absolute; left:-99999px; }
/* Bug fix for IE6 to prevent textfields with 'hidden' labels goin out of alignment */
.form-row .hide { position:relative; color:#fff; }
.hr	{ border:none; background:#ccc; height:1px; }
.hr hr { display:none; }
.print-page { background:url(/images/print.gif) top left no-repeat; padding:5px 0 5px 25px; }
.dark { color:#000; }
.printOnly { display: none; }
ul.message { padding: 0; margin: 0; }
.message li { list-style: none; }
p {
	/* Explcitly set top margin to overcome inconsistencies between default browser styles (Mainly IE6) */
	margin-top: 1em;
}
.print-only { display: none; }