/*** DEFAULT STYLESHEET ***/

/*________________________________________________________________________________ GENERAL ELEMENTS ___*/

* {
	background: no-repeat left top;
	margin: 0;
	padding: 0;
	border: none;
}

body {
	background: #ffffff;
	font-family: Trebuchet MS, Arial, Helvetica, sans-serif;
	font-size: 100%;
	line-height: 1.125em; /* Results in 18px. */
	color: #454547;
}

h1, h2, h3, h4, h5, h6, p {
	margin: 0 0 0.5em;
}

h1 {
	margin: 0 0 1em;
	font-size: 1.154em;
}

h2 {
	font-size: 1.077em;
}

h3, h4, h5, h6, p {
	font-size: 1em;
}

a {
	text-decoration: underline;
	color: #aa2d4b;
}

a:hover {
	text-decoration: none;
}

img {
	display: block;
}

hr {
	clear: both;
	height: 0;
	margin: 0 0 1em;
	border: none;
	border-bottom: 1px solid #cccccc;
	color: #cccccc;
}

ul {
	margin: 0 0 1em;
	padding: 0;
	list-style-type: none;
}

ul li {
	background: url(../siteimg/icon_arrow_small.png) no-repeat left 0.5em;
	margin: 0.25em 0;
	padding-left: 2em;
}

ol {
	margin: 0 0 1em 1.5em;
	padding: 0;
}

ol li {
	margin: 0.25em 0;
}

table {
	margin: 0.25em 0 1em;
	border: 2px solid #000000;
	font-size: 1em;
}

table th,
table td {
	padding: 0.5em 1em;
	border-top: 1px solid #000000;
	border-left: 1px solid #000000;
	vertical-align: top;
}

table thead th {
	border-top: none;
}

table th:first-child,
table td:first-child {
	border-left: none;
}

br {
	clear: both;
	height: 0;
	line-height: 0;
}

p.date {
	color: #aa2d4b;
}


/*________________________________________________________________________________ BASIC CLASSES ___*/

.clear {
	clear: both !important;
	height: 0 !important;
	text-indent: -9999px !important;
	line-height: 0 !important;
	font-size: 1px !important;
}

.hidden {
	display: none !important;
}

.noborder {
	border: none !important;
}

.nomargin {
	margin: 0 !important;
}


/*________________________________________________________________________________ GENERAL LAYOUT ___*/

div.pagewrapper {
	overflow: hidden;
	background: none;
	width: 960px;
	margin: 0 auto;
	padding: 0 20px;
	font-size: 0.813em; /* Results in 13px. */
}

div.col_small {
	float: left;
	width: 170px;
	margin: 0 71px 2em 0;
	border-right: 1px solid #b7b7b7;
}

div.col_medium {
	float: left;
	width: 550px;
	margin: 0 0 2em;
	padding: 0 130px 0 38px;
}

div.col_video {
	width: 640px;
	padding: 0 40px 0 38px;
}

div.col_home_center {
	float: left;
	width: 488px;
	margin: 0 0 2em 0;
	padding: 0 34px 0 0;
}

div.col_home_right {
	float: left;
	width: 155px;
	margin: 0 0 2em 0;
}


/*________________________________________________________________________________ HEADER ___*/

div#headerwrapper {
	overflow: hidden;
	background: url(../siteimg/bg_header.png) repeat-x left top;
	width: 100%;
	height: 107px;
	margin: 0 0 18px;
}

div#headerwrapper a#logo {
	float: left;
	display: block;
}

div#headerwrapper p.header_title {
	overflow: hidden;
	float: left;
	background: url(../siteimg/bg_header_title.png);
	width: 683px;
	height: 63px;
	text-indent: -9999px;
}


/*________________________________________________________________________________ CONTENT ___*/

div#contentwrapper {
	width: 100%;
}

div#contentwrapper div.pagewrapper {
	overflow: hidden;
}

div#contentwrapper img {
	float: left;
	padding: 0 1em 0.5em 0;
}

div#contentwrapper div.col_home_center img,
div#contentwrapper div.col_home_right img {
	float: none;
	padding: 0 0 1em;
}

p.subtext {
	font-size: 0.833em;
}



/*________________________________________________________________________________ FOOTER ___*/

div#footerwrapper {
	background: url(../siteimg/bg_footer.png) repeat-x left top;
	width: 100%;
	height: 30px;
	padding: 7px 0 0;
}

ul.footer_nav {
	float: right;
	margin: 0;
	padding: 0 70px 0 0;
	font-size: 0.75em;
}

ul.footer_nav li {
	float: left;
	background: none;
	margin: 0;
	padding: 0;
	color: #999999;
}

ul.footer_nav li a {
	text-decoration: none;
	color: #999999;
}

ul.footer_nav li a:hover {
	text-decoration: underline;
}

ul.footer_nav li span.divider {
	padding: 0 0.5em;
}


/*________________________________________________________________________________ MAIN NAV ___*/

ul.main_nav {
	margin: 0 0 2em 10px;
}

ul.main_nav li {
	background: url(../siteimg/icon_square.png) no-repeat left 10px;
	margin: 0 0 0.5em 0;
	padding: 0 0 0 10px;
	font-size: 1.154em;
}

ul.main_nav li.active {
	background-image: url(../siteimg/icon_square_active.png);
}

ul.main_nav li a {
	overflow: hidden;
	display: block;
	text-decoration: none;
	line-height: 1.25em;
	color: #454547;
	cursor: pointer;
}

ul.main_nav li:hover a,
ul.main_nav li.active a,
ul.main_nav li.open a {
	color: #aa2d4b;
}

ul.main_nav li a span {
	float: left;
}

ul.main_nav li a span.icon_arrow {
	display: none;
}

ul.main_nav li.active a span.icon_arrow,
ul.main_nav li a:hover span.icon_arrow {
	display: block;
	background: url(../siteimg/icon_arrow.png) no-repeat left top;
	width: 7px;
	height: 8px;
	margin: 7px 0 0 0.75em;
	text-indent: -9999px;
}

ul.main_nav ul {
	margin: 0;
	padding: 0.5em 0 0;
}

ul.main_nav ul li {
	margin: 0 0 0.75em;
}

ul.main_nav ul li,
ul.main_nav ul li.active {
	background: none;
	padding: 0;
	font-weight: normal;
	font-size: 0.733em;
}

ul.main_nav ul li.active a {
	font-weight: bold;
}

ul.main_nav ul li a span.listmarker {
	padding: 0 0.5em 0 0;
}

ul.main_nav li ul {
	display: none;
}

ul.main_nav li.active ul,
ul.main_nav li.open ul {
	display: block;
}

ul.main_nav li.active ul li a span.icon_arrow,
ul.main_nav li.open ul li a span.icon_arrow {
	display: none;
}

ul.main_nav li.open ul li.active a span.icon_arrow,
ul.main_nav li.open ul li a:hover span.icon_arrow {
	display: block;
	background: url(../siteimg/icon_arrow_small.png) no-repeat left top;
	width: 5px;
	height: 7px;
	margin: 3px 0 0 0.75em;
	text-indent: -9999px;
}

ul.main_nav li.open ul li.active ul li a span.icon_arrow {
	display: none;
}

ul.main_nav li.open ul li.active ul li a:hover span.icon_arrow {
	display: block;
	background: url(../siteimg/icon_arrow_small.png) no-repeat left top;
	width: 5px;
	height: 7px;
	margin: 3px 0 0 0.75em;
	text-indent: -9999px;
}

ul.main_nav li.open ul li.active ul li a span,
ul.main_nav li.active ul li.active ul li a span {
	font-size: 11px;
}

/*________________________________________________________________________________ HOME SLIDESHOW ___*/

ul.home_slideshow,
ul.home_slideshow li {
	width: 488px;
	height: 250px;
}

ul.home_slideshow {
	position: relative;
	margin: 0;
}

ul.home_slideshow li {
	visibility: hidden;
	position: absolute;
	top: 0;
	left: 0;
	background: none;
	padding: 0;
}

ul.home_slideshow li:first-child {
	visibility: visible;
}


/*________________________________________________________________________________ VIDEOPLAYER ___*/

#videoplayer {
	background: #ffffff;
	width: 640px;
	height: 392px;
	margin: 0 0 1em;
}


/*________________________________________________________________________________ FAQ LIST ___*/

ul.faq {
	margin: 0.5em 0 1.5em;
}

ul.faq li {
	background: none;
	margin: 0;
	padding: 0;
}

ul.faq li h2.question {
	margin: 0;
	font-style: italic;
	font-size: 1em;
	cursor: pointer;
}

div#contentwrapper ul.faq li h2.question img {
	float: none;
	display: inline;
	padding: 0 0.2em 0 0.4em;
}

ul.faq li div.answer {
	height: 0; /* Prevents closing of question on pageload. Only works in combination with 'display' option in Mootools Accordion Class, not with 'show'. */
	margin: 0.2em 0 1em;
	padding: 0;
}

ul.faq li div.answer p {
	margin: 0 0 0.5em;
}

ul.faq li div.answer h3 {
	margin: 0;
	font-weight: normal;
}

ul.faq li div.answer ul {
	list-style: disc;
	margin: 0 0 0.5em 1.5em;
}

ul.faq li div.answer ul li {
	margin: 0 0 0.5em;
}

ul.faq li div.answer ul ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

ul.faq li div.answer ul ul li {
	margin: 0;
	padding: 0;
}

ul.faq li div.answer ol {
	margin: 0 0 0.5em 2em;
}


/*________________________________________________________________________________ BASIC FORM ___*/

form {
	overflow: hidden;
	position: relative;
	width: 644px;
	margin: 0 -70px 1em -24px;
	padding: 0 0 3em;
}

form div.form_top,
form div.form_middle,
form div.form_bottom {	
	float: left;
	width: 644px;
	height: 19px;
	margin: 0;
}

form div.form_top {
	background: url(../siteimg/bg_form_top.png) no-repeat left top;
}

form div.form_bottom {
	background: url(../siteimg/bg_form_bottom.png) no-repeat left top;
}

form div.form_middle {
	position: relative;
	background: url(../siteimg/bg_form_middle.png) repeat-y left top;
	width: 596px;
	height: auto;
	padding: 0 24px;
}

form legend {
	display: none;
}

form fieldset {
	float: left;
	margin: 0 0 1em;
}

form fieldset br {
	clear: both;
	line-height: 0;
}

form fieldset label,
form fieldset p.label {
	position: relative;
	float: left;
	display: block;
	width: 115px;
	margin: 0 0 4px 0;
}

form fieldset label span,
form fieldset p.label span {
	position: absolute;
	right: 0;
	width: 10px;
	text-align: center;
}

form fieldset input.text,
form fieldset textarea,
form fieldset select,
form fieldset p.filled_out {
	background: #cfe0a7;
	border: none;
}

form fieldset input.text,
form fieldset textarea,
form fieldset select,
form fieldset p.filled_out,
form fieldset div.inputgroup {
	float: left;
	width: 200px;
	margin: 0 0 0.5em 0;
}

form fieldset input.text,
form fieldset input.submit,
form fieldset textarea,
form fieldset select {
	font-family: Trebuchet MS, Arial, Helvetica, sans-serif;
	font-size: 1em;
}

form fieldset input.text,
form fieldset select {
	height: 20px;
}

form fieldset input {
	padding: 2px 3px 0;
}

form fieldset textarea {
	width: 203px;
	height: 100px;
	padding: 0 0 0 3px;
}

form fieldset select {
	width: 206px;
	padding: 0;
}

form fieldset select option {
	padding: 0 3px;
}

form fieldset p.filled_out {
	background: none;
	border: none;
	text-align: left;
}

form fieldset label,
form fieldset p.label,
form fieldset p.filled_out {
	padding: 0.1em 10px 0 0;
}

form fieldset div.inputgroup input,
form fieldset div.inputgroup label {
	float: left;
	width: auto;
}

form fieldset div.inputgroup input {
	background: none;
	margin: 0.25em 0.5em 0 0;
	border: none;
}

form fieldset div.inputgroup label {
	margin: 0 1em 0 0;
	text-align: left;
}

form fieldset .error {
	background: #ffdddd !important;
	color: #ff3333;
}

form fieldset label .error {
	background: none !important;
	border: none;
}

form p.required_fields {
	clear: both;
	margin: 0 0 1em;
	padding: 0 24px;
	text-align: left;
	font-size: 0.8em;
}

form p.error_message {
	background: #ffdddd;
	margin: 0 0 1em;
	padding: 0.5em 1em 0.75em;
	color: #ff0000;
}

form fieldset div.form_error_report p {
	margin: 0;
	color: #ff0000;
}

form fieldset label.checkbox {
	width: 600px;
}

form fieldset label.checkbox input {
	margin: 0 0.5em 0 0;
}

form fieldset div.inputgroup label.radio {
	position: relative;
	margin-right: 0;
	padding: 0 0 0 20px;
}

form fieldset div.inputgroup label.radio input {
	position: absolute;
	top: 0;
	left: 0;
	width: 13px;
	height: 13px;
	margin: 3px 0 0;
}

form fieldset div.inputgroup label span {
	position: static;
	right: inherit;
	width: auto;
	text-align: inherit;
}

form fieldset div.remarks {
	position: absolute;
	left: 385px;
	bottom: 13px;
}

form fieldset div.remarks label,
form fieldset div.remarks textarea {
	float: none;
	display: block;
}

p.form_navigation {
	text-align: right;
}

a.submit {
	background: url(../siteimg/icon_arrow.png) no-repeat right center;
	padding: 0 15px 0 0;
	font-weight: bold;
}

form fieldset input.submit {
	position: absolute;
	right: 70px;
	bottom: -40px;
	background: url(../siteimg/icon_arrow.png) no-repeat right center;
	width: 160px !important;
	margin: 0;
	padding: 0 15px 0 0;
	font-weight: bold;
	text-decoration: underline;
	color: #aa2d4b;
	cursor: pointer;
}

form fieldset input.submit:hover {
	text-decoration: none;
}

form fieldset.contact_with {
	width: 600px;
}

form fieldset.contact_with p.label {
	width: 220px;
}

form fieldset.contact_with div.inputgroup {
	width: 370px;
}

form fieldset.contact_with div.inputgroup span.hint {
	font-size: 0.692em;
}

form fieldset.personal_details_right {
	padding-left: 24px;
}

form fieldset.personal_details_left input,
form fieldset.personal_details_right input,
form fieldset.personal_details_left div.inputgroup,
form fieldset.personal_details_right div.inputgroup {
	width: 150px;
}

form fieldset.personal_details_left select,
form fieldset.personal_details_right select {
	width: 156px;
}

form fieldset.contact_type p.label {
	width: 155px;	
}

form fieldset.contact_type div.inputgroup {
	width: 400px;
}

form fieldset.question input {
	width: 310px;
}

form fieldset.question textarea {
	width: 313px;
}


