body, html {
    margin:0px; padding:0;
    font-size: 100%;
}

body {
    min-width:980px;
    background:#fff;
}

body, td, th {
    font-family:verdana, Arial, Helvetica, sans-serif; 
    font-size:12px;
    color:#666;
}


/*-- General --*/


th, td { vertical-align:top; }
th { text-align:left; }

img { border:none; }

.left  { float:left; }
.right { float:right; }
.nowrap { white-space: nowrap; }


.error, .msg, .success {
	font-weight:bold;
	border-style:solid;
	border-width:1px 0px;
	padding:2px 0px;
	margin:2px 0px;
}

.error {
	color:#ff0909;
	border-color:#ff0909;
}

.msg, .success {
	color:#393;
	border-color:#393;
}

a:link { color:#bc2b1c; text-decoration:underline; }
a:visited { color:#551a8b; text-decoration:underline; }

h2 { margin-top:0px; }

/*-- page layout - columns --*/

.div { border:1px solid #fff; }	

#bodywrap {
	width:980px;
    margin:10px;
}
#narrowbodywrap {
	width:640px;
    margin:10px;
}

#content {
	position: relative;

    height: auto !important;
    height: 600px;	/* space for rh boxes + logos */
    min-height: 600px;
}


#leftcolumn {
	margin:0; padding: 0;
	width:179px;
	float:left;
}

#widecolumn {
	width:571px;
	overflow:hidden;	/* for IE5.5/IE6 */
	margin:0px 25px;
	float:left;
}

#rightcolumn {
	margin:0; padding: 0;
	width:180px;
	float:right;

	/* put it here for IE5+*/
    height: auto !important;
    height: 600px;	/* space for rh boxes + logos */
    min-height: 600px;
}

#rightcolumn #panels {
	font-size:85%;
	font-weight:normal;
	color:#f54b00;
}

#rightcolumn #logos {
	position: absolute;
	bottom: 0px;
	right:30px;
}

.clearer { 
	clear: both;
	line-height: 1px;
} 

* html #content {
        height: 1%;
}

/*-- right hand column --*/
.panel {
	margin-bottom:1em; 
}


/*-- left hand menu --*/
div#navmenu ul  {
	margin:0; padding:0;
}

div#navmenu li  {
	display: inline;
	list-style: none;
	margin:0; padding: 0;
	text-align: left;
}

/*-- header bar --*/
#header {
	background: #fff url('header_line.gif') bottom right no-repeat;
	padding:0px 12px 6px 0px;
	margin-bottom:20px;
}

/*-- footer --*/

#footer {
	padding:30px 20px 10px 20px;
	background: #fff url('footer_line.gif') top left no-repeat;
	font-size:85%;
}

#footer a { 
	color:#666;
}

#footer ul  {
	margin:0; padding:0;
	display: inline;
}

#footer li  {
	display: inline;
	list-style: none;
	margin:0; padding: 0;
	margin-left:12px;
}


/*-- bodytext --*/

div.bodytext {
	line-height:160%;
	padding:0px 20px;
}

div.bodytext p:first-child {
	/* margin-top:0px; */
}	

.topimage {
	position:relative;
	width:571px; height:260px;
	z-index:1;
}	

.topimage h1 {
	margin:0;padding:0;
}
.topimage p {
	position:absolute;
	color:#fff;
	margin:0;padding:0;
	line-height:160%;
	left:20px; bottom:20px;
	width:520px;
	z-index:2;
}

.em {
	color:#bc2b1c;
	font-weight:bold;
	font-size:110%;
}

/*-- forms and fieldsets --*/
input.button {
    background-color:#7597b3;
    border:1px outset #666;
    color:#fff;
	font-family:verdana,arial,sans-serif;
	font-size:11px;
}

form { 
  margin:0;
  padding:0;
}

fieldset {
	border:1px solid #ccc ;
	padding: 10px; 
	margin: 0;
	margin-bottom:10px;
}

td.label, .label {
	width: 120px; 
}

td.data {
}

form label { 
	display: block;  /* block float the labels to left column, set a width */
	float: left; 
	width: 120px; 
	padding:0; 
	margin-right:5px;
	margin-bottom:5px;
	XXmargin: 5px 0 0 0; /* set top margin same as form input - textarea etc. elements */
	text-align: right; 
}

form input, form textarea, form select {
    font-family:verdana, Arial, Helvetica, sans-serif; 
    font-size:12px;
}


form .field {
	display: block;
	margin: 5px 0 0 130px;
}
form .hint {
	display: block;
	margin: 0 0 0 130px;
	padding: 1px 0px;
}

form br {
	clear:left;
}

.inputbox {
	border:1px solid #6a6a6a;
}

/*-- box with rounded corners and texture --*/
.texture {
	background:#fff url(texture-top-left.gif) top left no-repeat;
	margin-bottom:12px;
}

.texture .b2 {
	background:transparent url(texture-bottom-right.gif) bottom right no-repeat;
}

.texture .b3 {
	background:transparent url(texture-bottom-left.gif) bottom left no-repeat;
}

.texture .b4 {
	padding:12px;
	background:transparent url(texture-top-right.gif) top right no-repeat;

    height: auto !important;
    height: 50px;
    min-height: 50px;
}


/*-- box with rounded corners --*/
.rounded {
	background: #fff url(rounded-top-left.gif)  top left no-repeat;
}

.rounded .b2 {
	background:transparent url(rounded-bottom-right.gif)  bottom right no-repeat;
}

.rounded .b3 {
	background:transparent  url(rounded-bottom-left.gif)  bottom left no-repeat;
}

.rounded .b4 {
	min-height:50px;
	background: transparent url(rounded-top-right.gif) top right no-repeat;
}
.rounded form {
	padding:12px;
}	

/*-- courses --*/
div.coursedates {
	width:400px;
}
div.nodates {
	margin-right:20px;
}
table.coursedates {
	border-collapse: collapse;
	width:390px;
	margin:0px 5px;
}
table.coursedates th {
	color:#6a6a6a;
	font-weight:bold;
}	
table.coursedates td, table.coursedates th {
	padding:4px 8px;
}
table.coursedates td {
	border-bottom:1px solid #cfc4b8;
}	




/*-- progress bar for shopping cart */
div#progressbar ul  {
	margin:0; padding:0;
	display: inline;
}

div#progressbar li  {
	display: inline;
	list-style: none;
	margin:0; padding: 0;
	text-align: left;
	border: 1px solid #bc2b1c;
	padding:3px 6px;
	color:#666;
	font-size:10px;
}
div#progressbar li.done { 	
	background-color:#f7d0cc;
}
div#progressbar li.this {
	font-weight:bold;
	background-color:#f7d0cc;
}
div#progressbar a { text-decoration:none;color:#666; }


/*-- courses --*/

tr.heading td { background-color:#cfc4b8;font-weight:bold; }
th.price, td.price { 
	text-align:right; 
	font-weight:bold;
	white-space: nowrap
}

div.coursebooking {
	width:530px;
	margin-bottom:20px;
}
table.coursebooking {
	border-collapse: collapse;
	width:520px;
	margin:0px 5px;
}
table.coursebooking th {
	color:#6a6a6a;
	font-weight:bold;
	white-space:nowrap;
}	
table.coursebooking td, table.coursebooking th {
	padding:4px 8px;
}

tr.separator td { 
	border-bottom:1px solid #cfc4b8; 
	padding-bottom:8px;
}

div.texture h3 { margin-top:0px; }

div.button {
	text-align:right;
	margin-bottom:20px;
	margin-right:15px;
}	

#addcourseform label , #loginform label { width:80px; }

/*-- courses --*/
div.coursedates {
	width:430px;
}
table.coursedates {
	border-collapse: collapse;
	width:420px;
	margin:0px 5px;
}
table.coursedates th {
	color:#6a6a6a;
	font-weight:bold;
}	
table.coursedates td, table.coursedates th {
	padding:4px 8px;
}
table.coursedates td {
	border-bottom:1px solid #cfc4b8;
}

#toggler img {
	cursor:pointer;
}

#toggler a {
	background: #fff url('location_button.gif') top left no-repeat;
	font-family:verdana,helvetica,arial,sans-serif;
	font-size:9px;
	font-weight:bold;
	text-align:center;
	width:67px;
	height:22px;
	margin-right:2px;
	color:#6b6b6b;
	float:left;
	display:block;
	text-decoration:none;
	cursor:pointer;
}

#toggler a:hover, #toggler a.active {
	background: #fff url('location_button_over.gif') top left no-repeat;
}


#toggler {
	margin-bottom:1em;
}
