@charset "utf-8";

/* NOTES
 * Property Order:
 *   - font-*, (other typography, line-height etc.)
 *   - color, text-*
 *   - display, float, clear, overflow, vertical-align
 *   - position, top, right, bottom, left, z-index
 *   - *-width, *-height, margin, padding
 *   - border-*
 *   - background-*
 *   - (other)
 */
 
/* CONTENT */

/* Text */

	html					{ font-size: 100%; }
	body					{ font-size: 75%; /* 16px */ font-family: Arial, Helvetica, sans-serif;	  
							  color: #333; }

/* Headers */

	h1, h2, h3, h4, h5, h6	{ color: #1a2674; }
	h1						{ font-size: 1.875em; /* 30px */  font-weight: normal;
							  margin: 1em 0 0 0; }
	h2						{ font-size: 1.666em; /* 24px */
							  margin: 1em 0 0 0; }
	h3						{ font-size: 1.166em; /* 18px */
							  margin: 1em 0 0 0; }
	h4						{ font-size: 1.0em; line-height: 1.375em;	
							  margin: 1em 0 0 0; }
	h5						{ font-size: 1.0em; line-height: 1.375em;	
							  margin: 1em 0 0 0; }
	h6						{ font-size: 1.0em; line-height: 1.375em;	
							  margin: 1em 0 0 0; }

/* Paragraphs */

	p						{ line-height: 1.375em;	
							  margin: 1em 0 0 0; }
	p.subtitle				{ font-size: 0.916em; color: #aaa; margin: 0.5em 0 0 0; }
	p.summary				{ font-weight: bold; font-size: 1.166em; }
							  
/* Lists */

	ul, ol					{ overflow: hidden;
							  margin: 1em 0 0 0; padding-left: 30px; }
	ul ul, ul ol,
	ol ol, ol ul			{ margin-top: 0; }
	dl						{ margin: 1em 0 0 0; }

	li 						{ line-height: 1.375em; }
	dt 						{ font-weight: bold; line-height: 1.375em; }
	dd 						{ line-height: 1.375em;
							  margin-left: 30px; }

	ul						{ list-style: disc; }
	ul ul					{ list-style: circle; }
	ul ul ul				{ list-style: square; }
	ol						{ list-style: decimal; }
	ol ol					{ list-style: lower-alpha; }
	ol ol ol				{ list-style: lower-roman; }

/* Links */
	
	a						{ color: #0099ff; }
	a:visited				{ }
	a:focus,
	a:hover,
	a:active				{ color: #0066cc; }

	a.pdf					{ display: block; width: 120px;
							  background: #fff url(../images/layout/pdf.png) 6px 6px no-repeat;
							  border:  1px solid #eee; padding: 8px 8px 8px 50px;
							  color: #333; text-decoration: none; }
	a.pdf .title			{ display: block; }
	a.pdf .info				{ display: block; color: #aaa; font-size:  0.916em;
							  margin: 0.25em 0 0 0; }

/* Emphasised Text */

	em						{ font-style: oblique; }
	strong					{ font-weight: bold; }

/* Quotes */

	blockquote				{ font-style: oblique;
							  margin: 0 20px; margin-top: 1em; }
	blockquote > *:first-child, 
							{ margin-top: 0; }
	blockquote .top-child	{ margin-top: 0; }

	q						{ quotes: '\201C' '\201D' '\2018' '\2019'; }
	q:before				{ content: open-quote; }
	q:after					{ content: close-quote; }

/* Preformatted Text & Code */

	pre, code				{ font-size: 0.875em; /* 14px */ font-family: Consolas, "Courier New", Courier, monospace;
							  line-height: 1.1428em;
							  background: #f2f2f2; }
	pre						{ margin: 1.1428em 0 0 0; padding: 10px;
							  white-space: pre-wrap; white-space: -moz-pre-wrap;
							  white-space: -pre-wrap; white-space: -o-pre-wrap;
							  word-wrap: break-word; }
	code					{ padding: 0 0.25em; }
	pre code				{ padding: 0; }

/* Abbreviations */

	abbr					{ border-bottom: 1px dotted; cursor: help; }

/* Superscript & Subscript Text */

	sup 					{ vertical-align: super; }
	sub 					{ vertical-align: sub; }

/* Deleted & Inserted Text */

	del 					{ text-decoration: line-through; }
	ins 					{ text-decoration: underline; }
	
/* Other Text Styles */

	.small 					{ font-size: 0.75em; /* 12px */ }
	.large 					{ font-size: 1.125em; /* 18px */ }
	.error 					{ color: #ff0066; }
	.note					{ color: #999999; }

/* Images & Objects */

	img, object				{ display: block;
							  margin: 1em 0 0 0;
							  border: 0; }

/* Tables */

	table					{ width: 100%; margin: 1em 0 0 0;
							  border-collapse: collapse; border-spacing: 0; }
	th, td 					{ line-height: 1.375em;	
							  vertical-align: top;
							  padding: 3px 0;
							  border: 0 solid #e7e7e7; }
	th						{ font-weight: bold;
							  text-align: left; }

	thead th				{ border-bottom-width: 2px; }
	tfoot th, tfoot td		{ font-weight: bold;
							  border-top-width: 2px; }
	tbody th, tbody td		{ border-bottom-width: 1px; }
	
	tbody tr:hover td		{ }

	caption					{ font-size: 0.75em; /* 12px */ font-style: oblique;
							  text-align: left;
							  margin: 0.5em 0 0 0;
							  caption-side: bottom; }
							  
	colgroup.prices			{ width: 60px; }

/* Figure */

	.figure					{ margin: 1em 0 0 0; }
	.figure > *:first-child, 
	.figure > a > *:first-child
							{ margin-top: 0; }
	.figure .top-child		{ margin-top: 0; }
	.figure .legend			{ font-size: 0.75em; /* 12px */ font-style: oblique;
							  display: block;
							  margin: 0.5em 0 0 0; }

/* Forms */

	form					{ }
	fieldset				{ margin: 0; padding: 0;
							  border: 0; }
	legend					{ display: none; }

	.form					{ margin: 1em 0 0 0; padding: 20px;
							  background: #f2f2f2; }
	.form > *:first-child 	{ margin-top: 0; }
	.form .top-child		{ margin-top: 0; }
	.form fieldset			{ margin: 1em 0 0 0; padding: 0.5em 0 0 0; }
	.form legend			{ font-weight: bold;
							  color: inherit;
							  display: block;
							  margin: 0; padding: 0; }
	.form legend span		{ }
	
	.form .control			{ overflow: hidden; margin-top: 0.5em; }
	.form .mandatory		{ }
	.form .description		{ float: left; width: 100px; }
	.form .fields			{ margin: 0 0 0 110px; }
	.form .fields p			{ font-size: 0.75em; /* 12px */
							  margin-top: 0.25em; }

	.form label				{ display: block; }
	.form .asterisk			{ float: right; font-size: 1em; color: #ccc; font-weight: normal; }

	.form .actions			{ padding: 0 0 0 110px; background: transparent; }
	.form .actions legend	{ display: none; }


	.form .field			{ }
	.form .field.part		{ display: inline-block;  }
	.form .affix			{ font-size: 12px; }

	.form .messages			{ margin-bottom: 0; }

/* Inputs */
	
	input, button, select,
	textarea				{ font-size: 1em; font-family: sans-serif;
							  text-rendering: optimizeSpeed; }
	textarea.monospaced		{ font-family: Consolas, "Courier New", Courier, monospace; }
	optgroup				{ font-style: normal; font-weight: bold; }

	input[type=text],
	input.type_text,
	input[type=password],
	input.type_password,
	textarea				{ margin: 0; padding: 2px; }
	select					{ margin: 0; padding: 2px; }
	optgroup				{ text-indent: 2px; }
	optgroup option			{ padding-left: 15px; }
	input[type=file],
	input.type_file			{ margin: 0; }

	input[type=radio], 
	input.type_radio, 
	input[type=checkbox],
	input.type_checkbox 	{ margin: 0; vertical-align: -0.15em; font-size: 0.85em; }
	
	.size_liquid			{ width: 97%; }

	input.size_xxs			{ width: 3em; }
	input.size_xs			{ width: 6em; }
	input.size_s			{ width: 12em; }
	input.size_m			{ width: 18em; }
	input.size_l			{ width: 24em; }
	input.size_xl			{ width: 30em; }
	input.size_xxl			{ width: 36em; }
	
	textarea.size_xs		{ height: 2.5em; }
	textarea.size_s			{ height: 5em; }
	textarea.size_m			{ height: 10em; }
	textarea.size_l			{ height: 20em; }
	textarea.size_xl		{ height: 40em; }
	
/* Rule */

	.rule					{ border-top: 1px solid #e7e7e7; margin: 1em 0 0 0; }
	.rule hr				{ display: none; }

/* Content */

	.c > *:first-child, 
	.c > .ba_left_wrap:first-child + *, 
	.c > .ba_right_wrap:first-child + *
							{ margin-top: 0 !important; }
	.c .top-child			{ margin-top: 0 !important; }

/* Box */
	
	.box					{ position: relative;
							  margin: 0 0 10px 0; }
	.box h1					{ color: #fff; font-size: 1.333em;
							  margin: 0; padding: 5px 10px 0 10px; height: 25px; }
	.box .body				{ padding: 10px;
							  background: url(../images/layout/box_bg.alpha.png); }
	.box .bottom			{ font-size: 0; line-height: 0; 
							  height: 10px; margin: 0;
							  position: absolute; top: 100%; }
	.box .body:last-child	{ padding-bottom: 0; }

	.fw_center .box h1		{ background-image: url(../images/layout/box_center_title_bg.alpha.png); } 
	.fw_center .box .bottom	{ width: 550px;
							  background-image: url(../images/layout/box_center_bg_bottom.alpha.png); } 

	.fw_half .box h1		{ background-image: url(../images/layout/box_title_bg.alpha.png); } 
	.fw_half .box .body		{ min-height: 240px; width: 250px; overflow: hidden; }
	.fw_half .box .bottom	{ width: 270px;
							  background-image: url(../images/layout/box_bg_bottom.alpha.png); } 

	.fw_right .box h1:first-child, 
	.fw_right .box h1.first-child
							{ background-image: url(../images/layout/box_right_title_bg.alpha.png); } 
	.fw_right .box h1		{ background-image: url(../images/layout/box_right_title_bg_alt.alpha.png); } 
	.fw_right .box .bottom	{ width: 220px;
							  background-image: url(../images/layout/box_right_bg_bottom.alpha.png); } 

/* Number */

	.event					{ margin: 5px 0 0 0; overflow: hidden; }

	.event .info			{ float: left; }
	.event .info			{ width: 325px; margin-left: 5px; padding: 1px 10px; }
	.event .info h2			{ font-size: 1em; margin: 0; font-weight: bold; }
	.event .info h2	a		{ color: #f28f1d; }
	.event .info p			{ font-size: 0.833em; margin: 0; line-height: 1.2; }
	
	.number					{ float: left; height: 41px; }
	.date					{ width: 60px; background: url(../images/layout/event_date.png); }
	.views					{ width: 115px; margin-left: 5px; background: url(../images/layout/event_views.png); }
	.day					{ width: 40px; background: url(../images/layout/event_day.png) center no-repeat; }
	.number p				{ margin: 0; text-align: center; line-height: 1.25; }
	.number .title			{ color: #fff; text-transform: lowercase; }
	.date .title			{ text-transform: uppercase; }
	.day .title				{ text-transform: uppercase; }
	.number .value			{ font-size: 1.666em; font-weight: bold; }
		
	.blue .date				{ background: url(../images/layout/event_date_blue.png); }
	.blue .views			{ background: url(../images/layout/event_views_blue.png); }
	.blue .info h2 a		{ color: #1c2674; }
	.blue .info				{ background: #ededed; }

/* Timeline */

	.timeline				{ position: relative; overflow: hidden;
							  height: 578px; width: 530px;
							  background: #fff; }
	.timeline .inner		{ position: absolute;
							  height: 100%; }
	.timeline .button		{ cursor: pointer;
							  position: absolute; top: 0; height: 417px; width: 41px;
							  text-indent: -10000px;
							  background: no-repeat; }
	.timeline .back			{ left: 0;
							  background-image: url(../images/layout/back.alpha.png); }
	.timeline .forward		{ right: 0;
							  background-image: url(../images/layout/forward.alpha.png); }

	.timeline ol			{ margin: 0; padding: 0; list-style: none;
							  position: absolute; top: 0; left: 0;
							  width: 100%; height: 100%; }
	
	.timeline .months li,
	.timeline .days li		{ float: left; height: 100%; }	
	.timeline .months li	{ font-size: 6em; color: #f2f2f2;
							  text-align: center; line-height: 417px;
							  text-transform: uppercase; }
	.timeline .days li		{ width: 41px;
							  background: url(../images/layout/line.png) center repeat-y; }
	.timeline .days .number	{ display: block; float: none;
							  margin: 492px 0 0 0; }

	.timeline .events li, 
	.timeline .blocks li	{ position: absolute; } 	
	.timeline .events		{ height: 417px; }
	.timeline .events li	{ padding: 10px; height: 81px; width: 281px;
							  background: url(../images/layout/timeline_bg.png); } 
	.timeline .events img	{ float: right; margin: 0 0 0 10px; }
	.timeline .events h2	{ margin: 0; font-size: 1em; } 
	.timeline .events p		{ margin: 0; } 
	.timeline .blocks		{ top: 417px; height: 75px; }
	.timeline .blocks li	{ height: 10px; font-size: 0; line-height: 0;
							  background: #00aeda; }

	.timeline .jumps		{ top: 537px; }
	.timeline .jumps li		{ float: left; height: 100%; width: 41px; cursor: pointer; }
	.timeline .jumps .day	{ background-image: url(../images/layout/event_day_orange.png); }

/* Text Alignment */

	.ta_center				{ text-align: center; }
	.ta_left				{ text-align: left; }
	.ta_right				{ text-align: right; }
	.ta_justify				{ text-align: justify; }

/* Block Alignment */
	
	.ba_center				{ margin-left: auto; margin-right: auto; }
	.ba_left				{ margin-left: 0; margin-right: auto; }
	.ba_right				{ margin-left: auto; margin-right: 0; }
	.ba_left_wrap			{ float: left; clear: left;
							  margin-left: 0; margin-right: 25px; margin-bottom: 25px; }
	.ba_right_wrap			{ float: right; clear: right;
							  margin-left: 25px; margin-right: 0; margin-bottom: 25px; }

/* Grid */

	.x						{ overflow: hidden;
							  margin: 10px 0 0 0; }
	.y						{ float: left;
							  margin: 0 0 0 10px; }
	.y:first-child,
	.y_first-child			{ margin-left: 0; }

/* Fixed Widths */

	.fw_left				{ width: 180px; padding-left: 10px; }
	.fw_center				{ width: 550px; }
	.fw_right				{ width: 220px; }
	.fw_half				{ width: 270px; overflow: hidden; }

/* Percentage Widths */
	
	.pw_05					{ width: 05%; }
	.pw_10					{ width: 10%; }
	.pw_15					{ width: 15%; }
	.pw_20					{ width: 20%; }
	.pw_25					{ width: 25%; }
	.pw_30					{ width: 30%; }
	.pw_35					{ width: 35%; }
	.pw_40					{ width: 40%; }
	.pw_45					{ width: 45%; }
	.pw_50					{ width: 50%; }
	.pw_55					{ width: 55%; }
	.pw_60					{ width: 60%; }
	.pw_65					{ width: 65%; }
	.pw_70					{ width: 70%; }
	.pw_75					{ width: 75%; }
	.pw_80					{ width: 80%; }
	.pw_85					{ width: 85%; }
	.pw_90					{ width: 90%; }
	.pw_95					{ width: 95%; }


/* PAGE LAYOUT */

/* Body & Wrapper */

	body					{ margin: 30px 0 0 0;
							  background: #f2f2f2; }
	#main					{ background: #e7e7e7;
							  border: dashed #fff; border-width: 1px 0; }
	#main					{ background: #e7e7e7 url(../images/layout/bg.jpg) top center no-repeat; }
	.wrapper				{ width: 980px; margin: 0 auto; }
	#main .wrapper			{ padding: 10px 0; }

/* Header */

	#header					{ padding-top: 25px; padding-bottom: 25px; }
	#header, #header a		{ color: #000; }

	#skip					{ position: absolute; width: 980px; margin: 0 0 0 -490px;
							  top: 0; left: 50%; text-align: right; padding: 7px 0; }
	#skip a					{ font-size: 0.833em; color: #aaa; }

	#logo					{ display: block;
							  margin: 0; }
	#donate					{ display: block;
							  margin: 15px 0 0 -6px; }
	#bottom					{ margin: 130px 0 0 0; }
	#signin					{ font-size: 0.833em; line-height: 1.2;
							  padding: 0 0 0 28px; margin: 0;
							  background: url(../images/layout/signin_bg.png) left no-repeat; }
	#search					{ margin: 10px 0 0 0; }
	#search .text			{ width: 90px; height: 17px; padding: 6px 6px 0 6px;
							  float: left;
							  background: url(../images/layout/search_bg.png) top no-repeat;
							  border: 0; }
	#search .button			{ padding: 0;
							  float: left; }

/* Navigation */

	#nav ul					{ margin: 10px 10px 0 0; padding: 0;
							  list-style: none; }
	#nav li					{ line-height: 1em; }
	#nav li:first-child,
	#nav li.first-child		{ margin-left: 0; }
	#nav a					{ color: #fff; text-decoration: none; font-size: 1.333em;
							  display: block;
							  padding: 8px 10px 0 10px; height: 22px; margin: 2px 0 0 0;
							  background: url(../images/layout/nav_bg.png); }
	#nav a:focus,
	#nav a:hover,
	#nav a:active,
	#nav li.active a		{ background-position: bottom; }

	#nav div				{ margin: 2px 0 0 0;
							  background: url(../images/layout/nav_sub_bg_bottom.png) bottom no-repeat; }
	#nav ul ul				{ padding: 10px 15px; margin: 0;
							  list-style: none;
							  background: url(../images/layout/nav_sub_bg_top.png) top no-repeat; }
	#nav ul ul	li			{ margin: 2px 0 0 0; }
	#nav ul ul	li:first-child,
	#nav ul ul	li.first-child
							{ margin-top: 0; }
	#nav ul ul	a			{ font-size: 1em;
							  padding: 0; margin: 0; height: auto;
							  background: transparent; }

/* Content */

	#content				{ padding-left: 10px; }

/* Sidebar */

	#sidebar				{ padding: 10px 0 0 0; }

/* Footer */

	#footer					{ font-size: 0.833em; /* 10px */
							  padding: 10px 0 0 0; }
	#footer, #footer a		{ color: #aaa; }

	#footer	p				{ margin: 0.5em 0 0 0; }
	#footer	img				{ margin: 0; }

	#social p				{ color: #000;
							  float: left; }
	#social img				{ float: right;
							  margin: 0 0 0 3px; }
