/***************/
/* main layout */
/***************/
body { margin: 0; padding: 0; /* backgrounds? */ }

#bodyWrapper { width: 927px; margin: auto; }

/* specific link colours for this site */
a         { color: #791d7e; text-decoration: none; }
a:link    { color: #791d7e; text-decoration: none; }
a:visited { color: #791d7e; text-decoration: none; }
a:hover   { color: #791d7e; text-decoration: underline; }
a:active  { color: #791d7e; text-decoration: underline; }


/*******************/
/* header elements */
/*******************/
#header { margin-bottom: 10px; }

#logo { float: left; margin-top: 36px; }

#top-nav {
	color: #76297e; 
	float: right;
	font-size: 1.182em;
	margin-top: 103px;
}
#top-nav li   { float: left;}
#top-nav li a { color: #76297e; padding: 0 5px; }


/********************/
/* content elements */
/********************/

#side { float: left;  width: 265px; }
#main { float: right; width: 646px; }


/***********/
/* sidebar */
/***********/

/* sorry about the !importants, it's because another rule is (rightly) more specific */
.side-box {
	margin-bottom: 17px !important;
	padding: 9px 9px 10px 12px !important;
	width: 244px;
}
.side-box h1 {
	background: #77297e;
	color: #fff;
	font-size: 1.364em;
	font-weight: normal;
	line-height: 2em;
	padding: 0 5px;
}
#side-nav {
	background: #f3f3f3;
	line-height: 1.818em;
}
#side-nav li a                      { color: #333; }
#side-nav li li a                   { margin-left: 8px;  color: #77297e; }
#side-nav li li li a                { margin-left: 16px; color: #333; }
#side-nav li li li li a             { margin-left: 24px; color: #77297e; }
#side-nav li li li li li a          { margin-left: 32px; color: #333; }
#side-nav li li li li li li a       { margin-left: 40px; color: #77297e; }
#side-nav li li li li li li li a    { margin-left: 48px; color: #333; }
#side-nav li li li li li li li li a { margin-left: 56px; color: #77297e; }

#side-nav li li                   { background: #eee; }
#side-nav li li li li             { background: #e7e7e7; }
#side-nav li li li li li li       { background: #dbdbdb; }
#side-nav li li li li li li li li { background: #cacaca; }

#side-nav li.current { background: #ddc8e1 !important; }

#side-contact {
	background: #ddc8e1;
}
#map-link {
	float: right;
}
#side-search,
#side-login {
	background: #f1f1f1;
	padding: 9px 9px 10px 12px;
}
#side-search h1,
#side-login h1 { background: #666; }

#side-search form,
#side-login form { margin-top: 10px; line-height: 2.727em; }

#q,
#side-login #username,
#side-login #password { border: none; padding: 1px 3px 2px; }

#side-login #login-button { border: none; background: transparent; }

#search-form    { margin-bottom: 30px; margin-left: 10px; margin-top: 10px; }
#search-form #q { border: 1px solid #999; }
.result-box     { margin-top: 20px; }
.result-box ul  { list-style: none; margin: 0; margin-left: 10px; padding: 0; }


/*************/
/* main area */
/*************/

#flash-header      { width: 649px; height: 186px; margin-bottom: 10px; }
#home-flash-header { width: 927px; height: 256px; margin-bottom: 10px; }

.home-box {
	float: left;
	margin-bottom: 17px;
	margin-right: 17px;
	overflow: hidden;
}
.home-box h1 {
	background: #77297e;
	color: #fff;
	font-size: 1.364em;
	font-weight: normal;
	line-height: 2em;
	padding: 0 5px;
}

#home-b1 {
	background: #fff;
	height: 238px;
	padding: 9px 9px 10px 12px;
	width: 244px;
}
#home-b2 {
	background: #f1f1f1;
	height: 234px;
	padding: 13px 13px 10px 12px;
	width: 289px;
}
#home-b3 {
	background: #ddc8e1;
	height: 234px;
	margin-right: 0;
	padding: 13px 13px 10px 12px;
	width: 289px;
}
#home-b3 img { border: 2px solid #af81b3; }
#home-b4-b5 { width: 265px; }
#home-b4 {
	background: #ddc8e1;
	height: 212px;
	padding: 9px 9px 10px 12px;
	width: 244px;
}
#home-b5 {
	background: #f1f1f1;
	height: 100px;
	padding: 9px 9px 10px 12px;
	width: 244px;
}
#home-b5 h1 { background: #666; }
#home-b5 form { margin-top: 10px; line-height: 2.727em; }
#home-b6 {
	background: #fff;
	height: 350px;
	padding: 13px 13px 10px 12px;
	width: 289px;
}
#home-b7 {
	background: #ddc8e1;
	height: 350px;
	margin-right: 0;
	padding: 13px 13px 10px 12px;
	width: 289px;
}

.alt-text { color: #791d7e; }

.page-content { font-size: 1em; line-height: 1.818em; }
.page-content h1,
.page-content h2,
.page-content h3,
.page-content h4,
.page-content h5,
.page-content h6 { color: #77297e; }

#page-footer { font-size: 0.909em; color: #444; }

span.rel { font-size: 0.846em; float: right; }

.news_search {background: #f1f1f1; padding:10px; }

/************/
/* training */
/************/
#search-dates   { float: left;  width: 49%; }
#search-details { float: right; width: 49%; }

#training-details    { font-size: 1.091em; margin-bottom: 15px; }
#training-details tr {  }
#training-details th { color: #75287d; font-weight: normal; text-align: right; vertical-align: top; }
#training-details td { background: #f3f3f3; }

#course-enquire, #course-book {
	background: #656565;
	color: #fff;
	float: left;
	font-size: 1.455em;
	padding: 10px 15px;
}
#course-enquire { margin-left: 85px; margin-right: 18px; }

#enquire-form { margin: auto; width: 425px; }
#enquire-form div.formrow { margin-bottom: 4px; }
#enquire-form div.formrow label  { color: #75287d; line-height: 26px; width: 100px; }
#enquire-form div.formrow.indent { margin-left: 110px; }
#enquire-form .text {
	background: #f3f3f3;
	border: 1px solid #bababa;
	padding: 4px;
	width: 305px;
}

#book-form { margin: auto; width: 440px; }
#book-form div.formrow { margin-bottom: 4px; }
#book-form div.formrow label  { color: #75287d; line-height: 26px; width: 115px; }
#book-form div.formrow.indent { margin-left: 125px; margin-bottom: 8px; }
#book-form .text {
	background: #f3f3f3;
	border: 1px solid #bababa;
	padding: 4px;
	width: 305px;
}
#book-form div.formrow.indent label {
	color: #000;
	float: right;
	font-size: 0.909em;
	line-height: 1.4em;
	text-align: left;
	width: 275px;
}
#book-info { font-size: 0.909em; line-height: 1.6em; }


/************/
/* coaching */
/************/

#coaching-login {  }
#coaching-login div.formrow label  { width: 85px; }
#coaching-login div.formrow.indent { margin-left: 95px; }

#coaching-register {  }
#coaching-register div.formrow label  { width: 118px; }
#coaching-register div.formrow.indent { margin-left: 128px; }

#coaching-profile {  }
#coaching-profile div.formrow label  { width: 118px; }
#coaching-profile div.formrow.indent { margin-left: 128px; }

#coaching-photo {  }
#coaching-photo div.formrow label  { width: 35px; }
#coaching-photo div.formrow.indent { margin-left: 45px; }

#coaching-areas { float: left; width: 165px; }

#coaching-sessions table th:last-child,
#coaching-sessions table td:last-child { text-align: right; }

#coaching-sessions td span { color: #f00; font-size: 0.818em; }

#no-sessions { text-align: center !important; padding: 6px; }

#coaching-session-add  {  }
#coaching-session-edit {  }


#coaching-session-add  div.formrow label,
#coaching-session-edit div.formrow label  { width: 110px; }
#coaching-session-add  div.formrow.indent,
#coaching-session-edit div.formrow.indent { margin-left: 120px; }

#coach-profile-image   { float: left; width: 200px; }
#coach-profile-details { float: right; width: 430px; }

#coach-profile-image input { margin-top: 15px; }

#pagination { margin-bottom: 10px; }
#pagination li { float: left; margin-right: 10px; }

span.heading { font-weight: bold; }


/******/
/* hr */
/******/

#hr-login-form .formrow label  { width: 140px; }
#hr-login-form .formrow.indent { margin-left: 150px; }

#hr-forgotten-form .formrow label  { width: 85px; }
#hr-forgotten-form .formrow.indent { margin-left: 95px; }

#hr-account-form .formrow label  { width: 90px; }
#hr-account-form .formrow.indent { margin-left: 100px; }

form .static { font-weight: bold; }
form .note   { font-size: 0.909em; margin-left: 10px; }

/* this one's quite important */
.nothere {
	display: block !important;
	height: 0 !important;
	margin: 0 !important;
	overflow: hidden !important;
	padding: 0 !important;
	width: 0 !important;
}

ul#breadcrumbs { list-style: none; margin-bottom: 6px; }
ul#breadcrumbs h1 { margin: 0; }
ul#breadcrumbs li {
	background: transparent url(../images/arrow.gif) no-repeat scroll left center;
	float: left;
	padding-left: 12px;
	margin-right: 6px;
}
ul#breadcrumbs li:first-child { background: none; padding: 0; }

#faqs h1,
#document-library h1 {  }
#faqs h2,
#document-library h2 { margin: 10px 0; }
#faqs h3,
#document-library h3 { margin-bottom: 0; }

#faqs ul.indent,
#document-library ul.indent { margin-left: 10px; }

#faqs-list { margin-bottom: 20px; }
.faq { float: left; }
.back-to-top { float: right; }

#faqs-list li  { margin-bottom: 10px !important; }

#document-library ul#document-list li { margin-bottom: 15px; }

#document-library dl { margin: 0; }
#document-library dt { color: #791d7e; float: left; margin-right: 3px; }
#document-library dd { margin: 0; }

#document-actions { margin-top: 4px; }
#document-library .file-download { font-size: 1.182em; float: left; }
#document-library .document-delete {
	background: transparent url(../images/cross.png) no-repeat scroll left center;
	border: none;
	color: #bc0e3f;
	float: right;
	padding: 0;
	padding-left: 14px;
}


/************/
/* calendar */
/************/

#prevLink { float: left;  width: 15%; text-align: left;   line-height: 2em; }
#midLink  { float: left;  width: 69%; text-align: center; line-height: 2em; }
#nextLink { float: right; width: 15%; text-align: right;  line-height: 2em; }

#calendar_selection { margin: 20px 0; }

#calendar { margin-top: 10px; border-left: 1px solid #333; border-top: 1px solid #333; }
#calendar th, #calendar td {  border-right: 1px solid #333; border-bottom: 1px solid #333; }
#calendar th { background: #eee; }
#calendar td { height: 100px; background: #f3eaf7; }
#calendar td.notInMonth { background: #d997e1; }

#calendar .event { font-size: 0.909em; line-height: 1.3em; }
#calendar .event a,
#calendar .event a:link,
#calendar .event a:visited,
#calendar .event a:hover,
#calendar .event a:active  { color: #000; }

.event-info span { font-weight: bold; }

/*********/
/* items */
/*********/
.item          { margin-bottom: 10px !important; }
.item .title   { color: #791d7e; font-size: 1.182em; font-weight: normal; margin: 0; }
.item .date    { color: #666; font-size: 0.909em; }
.item .content { margin: 18px 0; }
.item .image   { float: left; margin-right: 5px; margin-bottom: 5px; }
.item .more    { text-decoration: underline; }



/*******************/
/* footer elements */
/*******************/
#footer {
	background: #9a9494;
	color: #fff;
	font-size: 1.091em;
	line-height: 3.5em;
	margin-top: 17px;
}

#footer-nav      { float: left; padding: 0 10px 0;  }
#footer-nav li   { float: left;}
#footer-nav li a { color: #fff; padding: 0 5px; }

#footer-ccc { float: right; padding: 0 15px 0; }
#footer-ccc a { color: #fff; }

/***********************/
/* general form styles */
/***********************/
label.required:after { color: #f00; content: ' *'; }

/* all form elements are contained within a formrow div, with a label and
 *  then the element, this is the best way (but still not good) to emulate
 *  a table */
div.formrow {
  clear: both;
  text-align: left;
  margin-bottom: 10px;
}

div.formrow label {
  float: left;
  text-align: right;
  margin-right: 10px;
  width: 80px; /* default width for a default form, add new form ids and override */
}
div.formrow.indent { margin-left: 90px; } /* label width + label margin-right, override as above */
div.formrow label.radio {
	float: none;
	text-align: inherit;
	margin-right: 0;
	width: auto;
}

/* message and error boxes, not just useful in contact form */
#messages,
#errors,
#warnings,
#info { margin-bottom: 10px; }
.message { border: 1px solid #080; background: #efe; color: #080; padding: 3px 5px; margin-bottom: 15px; float: left; } /* you may need to clearfix this */
.message.nomargin { margin-bottom: 0; } /* if before something with a margin-top */
.message.info { border-color: #880; background: #ffe; color: #880; } /* info box in yellow */
.message.warn { border-color: #f40; background: #ffe; color: #f40; } /* warning box in orange */
.message.error { border-color: #f00; background: #fee; color: #f00; } /* error box in red */


