@charset "utf-8";
@import url("style_reset.css");
@import url("style_core.css");

/* >>>>>>>>>>>>>>>>>>>>>>>> */
/* >   BEGIN GLOBAL CSS   > */
/* >>>>>>>>>>>>>>>>>>>>>>>> */
/* The elements and classes common to multiple sites. */

/* [----------------- Shared -----------------] */

h1,
h2,
h3,
ol,
ul,
dl,
p,
table,
fieldset,
form ol li,
ul.pagination,
ul.buttons,
div.joined_buttons,
.error_box,
.success_box,
.attention_box,
.information_box {
	margin-bottom:16px;
}

/* [------------ Main HTML Elements ------------] */

html {
	background-color:#000000;
}

body {
	background-color:#000000;
	color:#B5B5B5;
	font-family:Arial, Helvetica, sans-serif;
	margin:0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color:#FFFFFF;
	font-family:Arial, Helvetica, sans-serif;
}

h1 {
	font-size:2.7em;
	color:#FFFFFF;
	font-weight:bold;
}

h2 {
	font-size:1.7em;
	color:#FFFFFF;
	font-weight:bold;
}

h3 {
	font-size:1.4em;
}

h4 {
	font-size:1.2em;
	color:DEDEDE;
}

object {
	display:block;
}

hr {
	border:0;
	width:100%;
	color:#333;
	background-color:#333;
	height:2px;
	margin-bottom:16px;
}

blockquote {
	padding-left:0px;
	margin:0px;
	quotes:"“" "”" "‘" "’";
	quotes:none;
}

blockquote {
	background-image:url('../images/quote_open.png');
	padding-left:50px;
	background-position:top left;
	background-repeat:no-repeat;
	min-height:40px;
	margin-bottom:10px;
}

	blockquote p {
		background-image:url('../images/quote_close.png');
		padding-right:50px;
		background-position:bottom right;
		background-repeat:no-repeat;
		padding-top:10px;
		padding-bottom:6px;
		margin-bottom:14px;
	}

code {
	font-family:"Courier New", Courier, monospace;
}

/* Lists. */

ol, ul {
	padding:0px;
	margin-left:25px;
}

ol.contents {
	margin-left:0;
}

ol.contents,
ol.contents ol {
	list-style:none;
}

ul {
	list-style:square;
}

dt {
	font-weight:bold;
	color:#FFFFFF;
}

dd {
	margin-left:10px;
	margin-bottom:10px;
}

dd ol {
	margin:0 0 0 30px;
}

dfn {
	border-bottom:1px dotted #999;	
}

/* [------------ Links ------------] */

a:link,
a:visited {
	text-decoration:underline;
	color:#6D37FB;
}

a:active,
a:hover {
	text-decoration:underline;
	color:#8877FF;
}

a img {
	border:0;
	margin:0;
}

/* Heading links. */
h1 a,
h1 a:link,
h1 a:visited,
h2 a,
h2 a:link,
h2 a:visited {
	color:#FFF;
	text-decoration:none;
}

h1 a:hover,
h2 a:hover {
	text-decoration:underline;	
}

/* [------------ Tables ------------] */

table {
	border:1px solid #333333;
	clear:both;
	margin-left:0px;
	margin-right:2px;
}

thead th {
	border-bottom:1px solid #333333;
	background-color:#20004c;
	background-image:url('../images/bg_thead.png');
}

tbody th {
	border-bottom:1px dotted #333333;
	background-color:#050505;
}

tbody td {
	background-color:#050505;
}

th {
	font-weight:bold;
	color:#EEEEEE;
	text-align:center;
	padding:0.5em;
	vertical-align:top;
}

th a:link,
th a:visited {
	color:#FFFFFF;
}

td {
	padding:0.5em;
	border-bottom:1px dotted #333333;
	vertical-align:top;
	text-align:center;
}

table tr td:first-child {
	text-align:left;
}

table tr th:first-child {
	text-align:left;
}

table.cellpad tr th,
table.cellpad tr td {
	padding-bottom:10px;
}

tr.row2 td {
	background-color:#090909;
}

/* List Tables. */
table.list_table {
	background:none;
	border:0;
}

	table.list_table td,
	table.list_table th {
		border:0;
		padding:0;
		padding-bottom:8px !important;
		text-align:left;
		background:none;
	}

	table.list_table tr:last-child th,
	table.list_table tr:last-child td {
		padding-bottom:0 !important;
	}
	
	table.list_table th {
		font-weight:bold;
		color:#9999FF;	
	}
/* ---------- */

/* [----------------- Forms ------------------] */

form {
	border:0;
	clear:both;
	margin:0;
	padding:0;
}

input.tiny,
textarea.tiny,
select.tiny {
	width:40px;
}

input.short,
textarea.short,
select.short {
	width:80px;
}

input.med_short,
textarea.med_short,
select.med_short {
	width:240px;
}

input.medium,
textarea.medium,
select.medium {
	width:300px;
}

input.long,
textarea.long,
select.long {
	width:450px;
}

input.full,
textarea.full,
select.full {
	width:98.5%;
}

form fieldset {
	border:1px solid #191919;
	background-image:url('../images/bg_tbody.png');
	padding:0;
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
}

/* For IE background bug. */
form > fieldset {
	position:relative;
}

	form fieldset legend {
		color:#CCC;
		font-weight:bold;
		margin-left:10px;
		padding:0 6px 0 6px;
	}

	/* For IE background bug. */
	form > fieldset > legend {
		left:.2em;
		position:absolute;
		top:-.6em;
	}

	form ol {
		list-style:none;
		margin:0;
		margin-bottom:0;
		padding:12px 12px 4px 12px;
	}

	form ol li {
		clear:both;
	}

		form fieldset ol li label {
			display:block;
			font-weight:bold;
			margin-bottom:2px;
			text-align:left;
		}

		label.required:before {
			color:red;
			content:"* ";
			font-family:Arial, Helvetica, sans-serif;
			font-size:1.2em;
		}

		label span,
		legend span {
			display:block;
			font-size:0.9em;
			font-weight:normal !important;
		}

		fieldset li input,
		fieldset li textarea,
		fieldset li select {
			background-color:#000;
			border:1px solid #333;
			color:#CCC;
			font-family:Arial, Helvetica, sans-serif;
			font-size:1em;
			padding:3px;
			width:300px;
		}

		fieldset li select {
			width:auto;
		}

		fieldset li select {
			color:#CCC;
			font-size:1em;
			padding:2px;
		}

		select.sift {
			margin-right:5px;
			margin-top:2px;
		}

		button,
		input[type="submit"],
		input[type="reset"],
		input[type="button"] {
			color:#6D37FB;
			cursor:pointer;
			font-family:'Franklin Gothic Book', 'Calibri', Arial, Helvetica, sans-serif;
			font-size:1em;
			font-weight:bold;
			margin-right:5px;
			padding:1px 3px 1px 3px;
			width:auto;
		}

		button.big,
		input[type="submit"].big,
		input[type="reset"].big,
		input[type="button"].big {
			font-size:1.4em;
			padding:4px 8px 4px 8px;
		}

		input[type="checkbox"],
		input[type="radio"] {
			width:auto;
		}

		/* Nested fieldsets for radio buttons & checkboxes. */
		form fieldset ol li ol,
		form fieldset ol li ol li {
			margin:0;
			padding:0;
			width:auto;
		}

		form fieldset ol li ol li label {
			font-weight:normal;
			margin:0;
			text-align:left;
			width:auto;
		}

		form fieldset ol li ol li input {
			border:0;
			width:auto;
		}
		/* ---------- */

	/* Multi-column lists. */
	ol.dual_column li,
	ol.tri_column li,
	ol.quad_column li {
		clear:none;
		float:left;
	}

	ol.dual_column li {
		width:50%;
	}

	ol.tri_column li {
		width:33%;
	}

	ol.quad_column li {
		width:25%;
	}
	/* ---------- */

	form fieldset.submit {
		clear:both;
		float:none;
		margin:0;
		padding:10px;
		width:auto;
	}

	.mceContentBody {
		background:black;
		background-image:none;
		color:#CCC;
		padding:10px;
	}

/* Bar forms/fieldsets (e.g. search bars). */
form.bar fieldset,
fieldset.bar {
	border:0;
	border:1px solid #333;
	border-bottom:0;
	background:#222 none;
	margin-bottom:0;
	-moz-border-radius:0px;
	-webkit-border-radius:0px;
}

form.bar label,
fieldset.bar label {
	display:inline;	
}

form.bar input,
fieldset.bar input {
	width:auto;	
}

form.bar ol,
fieldset.bar ol {
	padding:8px;
}

form.bar ol li,
fieldset.bar ol li {
	clear:none;
	float:left;
	margin:0 16px 0 0;
	padding:0;
}
/* ---------- */

/* [------------ Pagination ------------] */

ul.pagination {
	float:left;
	font-size:0.9em;
	list-style:none;
	margin-left:0;
	padding:0;
}

	ul.pagination li {
		float:left;
		margin:0px 3px 0px 0;
	}
	
	ul.pagination li.ellipsis {
		border:none;
		padding-top:3px;
	}
	
	ul.pagination li.disabled,
	ul.pagination li.current,
	ul.pagination li a {
		background-color:#060606;
		border:1px solid #0066FF;
		padding:1px 4px 1px 4px;
		text-decoration:none;
	}
		
		ul.pagination li.disabled {
			border:1px solid #444;
			color:#333;
		}
	
		ul.pagination li.current {
			background-color:#2D1D7B;
			border:1px solid #6666CC;
			color:#FFF;
			font-weight:bold;
		}
	
		ul.pagination li a {
			border:1px solid #333333;
			color:#6644EE;
			display:block;
		}
		
		ul.pagination li a:active,
		ul.pagination li a:hover {
			border:1px solid #6666CC;
			color:#FFFFFF;
		}
		
/* [----------------- Buttons ----------------] */

ul.buttons {
	float:left;
	list-style:none;
	margin-left:0;
	padding:0;
}

ul.rightside {
	float:right;
}

	ul.buttons li {
		float:left;
	}

		ul.buttons li a,
		a.button {
			background:transparent url('../images/buttons/btn_left.png') no-repeat top left;
			color:#CCC;
			display:block;
			float:left;
			font-size:12px;
			height:24px; /* Height of button background image. */
			line-height:16px; /* This + 4px + 4px (top and bottom padding of span) must equal height of button background (default 23px). */
			margin-right:8px;
			padding-left:7px; /* Width of left button background. */
		}

		ul.rightside li a {
			margin-right:0;
			margin-left:8px;
		}

			ul.buttons li a span,
			a.button span {
				background:transparent url('../images/buttons/btn_right.png') no-repeat top right;
				display:block;
				font-weight:bold;
				padding:4px 10px 4px 6px;
				text-decoration:none;
			}

			ul.buttons li a:link,
			ul.buttons li a:visited,
			a.button:link,
			a.button:visited {
				text-decoration:none;
			}

			ul.buttons li a:hover,
			ul.buttons li.current a,
			a.button:hover {
				background-position:bottom left;
			}

			ul.buttons li a:hover span,
			ul.buttons li.current a span,
			a.button:hover span {
				background-position:bottom right;
			}

			ul.buttons li.current a,
			ul.buttons li.current a:link,
			ul.buttons li.current a:visited,
			ul.buttons li.current a:active,
			ul.buttons li.current a:hover {
				color:#666;
				cursor:default;
			}

/* [------------------ Tabs ------------------] */
			
ul.tabs {
	float:left;
	list-style:none;
	margin:0;
	padding:0;
}

	ul.tabs li {
		float:left;
	}

		ul.tabs li a {
			background:transparent url('../images/buttons/tab_left.png') no-repeat top left;
			color:#FFF;
			display:block;
			float:left;
			font-size:12px;
			height:27px; /* Height of button background image. */
			line-height:19px; /* This + 4px + 4px (top and bottom padding of span) must equal height of button background (default 27px). */
			margin-right:4px;
			padding-left:3px; /* Width of left button background. */
			text-decoration:none;
		}
		
			ul.tabs li a span {
				background:transparent url('../images/buttons/tab_right.png') no-repeat top right;
				display:block;
				font-weight:bold;
				padding:4px 10px 4px 6px;
			}

			ul.tab li a:link,
			ul.tab li a:visited {
				text-decoration:none;
			}

			ul.tabs li a:hover,
			ul.tabs li.current a {
				background-position:bottom left;
			}

			ul.tabs li a:hover span,
			ul.tabs li.current a span {
				background-position:bottom right;
			}

			ul.tabs li.current a,
			ul.tabs li.current a:link,
			ul.tabs li.current a:visited,
			ul.tabs li.current a:active,
			ul.tabs li.current a:hover {
				color:#CCC;
				cursor:default;
			}

/* [----------------- Boxes ------------------] */

.error_box,
.success_box,
.attention_box,
.information_box {
	background-position:10px 10px;
	background-repeat:no-repeat;
	padding:10px 10px 10px 36px;
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
}

.error_box {
	background-color:#1D0000;
	background-image:url('../images/icons/notify_error.png');
	border:1px solid #F13030;
	color:#F13030;
}

.success_box {
	background-color:#001500;
	background-image:url('../images/icons/notify_success.png');
	border:1px solid #090;
	color:#54CB5C;
}

.attention_box {
	background-color:#191905;
	background-image:url('../images/icons/notify_attention.png');
	border:1px solid #FC0;
	color:#FC0;
}

.information_box {
	background-color:#0D0E2B;
	background-image:url('../images/icons/notify_information.png');
	border:1px solid  #69C;
	color:#69C;
}

.error_box ul,
.success_box ul,
.attention_box ul,
.information_box ul {
	margin-bottom:0;
}

.generic_box_head {
	border:1px solid #191919;
	border-bottom:0;
	padding:8px 10px;
	background-color:#3d008f;
	margin-bottom:0;
	-moz-border-radius-topright:6px;
	-moz-border-radius-topleft:6px;
	-webkit-border-top-left-radius:6px;
	-webkit-border-top-right-radius:6px;
}

.generic_box_body {
	border:1px solid #191919;
	padding:10px;
	background-color:#040404;
	background-image:url('../images/bg_content_section.jpg');
	background-repeat:repeat-x;
}

.generic_box_footer {
	border:1px solid #191919;
	border-top:0;
	color:#888;
	padding:5px 10px 5px 10px;
	text-align:right;
	background-color:#0C0C0C;
	background-image:url('../images/bg_texture.jpg');
}

/* [------------ Generic Classes ------------] */

.bmargin {
	margin-bottom:16px !important;
}

.tmargin {
	margin-top:16px !important;
}

.rmargin {
	margin-right:16px !important;
}

.lmargin {
	margin-left:16px !important;	
}

/* >>>>>>>>>>>>>>>>>>>>>>>>>>> */
/* >   BEGIN MAIN SITE CSS   > */
/* >>>>>>>>>>>>>>>>>>>>>>>>>>> */
/* Classes and styles specific to this site. */

/* [------------ Layout Divisions ------------] */

#base_gradient {
	background-image:url('../images/base_gradient.png');
	background-position:center;
	background-repeat:repeat-x;
	position:absolute;
	top:466px;
	left:0px;
	width:100%;
	height:197px;
	z-index:0;
}

#base_layer {
	position:absolute;
	left:0;
	width:100%;
	z-index:1;
	background-image:url('../images/banner.jpg');
	background-position:top center;
	background-repeat:no-repeat;
}

#admin_bar_container {
	width:100%;
	background-image:url('../images/trans_bg_70.png');
	height:27px;
	border-bottom:1px solid #191919;
}

#admin_bar {
	width:892px;
	margin:0 auto;
	padding:6px;
}

#wrapper {
	width:892px;
	margin:0 auto;
}

#middle {
	margin-top:358px;
	background-image:url('../images/backpanel_bg.png');
	background-repeat:repeat-x;
	background-position:top left;
}

#middle_top {
	background-image:url('../images/backpanel_top.png');
	background-repeat:no-repeat;
	background-position:top left;
}

#middle_left {
	background-image:url('../images/backpanel_sides.png');
	background-repeat:no-repeat;
	background-position:top left;
}

#middle_right {
	background-image:url('../images/backpanel_sides.png');
	background-repeat:no-repeat;
	background-position:top right;
	width:868px;
	padding:12px;
}

#left_column {
	float:left;
}

	#navigation {
		float:left;
		font-size:0.95em;
		list-style:none;
		width:676px;
		margin:0;
		padding:0;
	}
			#navigation li {
				float:left;
			}

				#navigation li a {
					display:block;
					width:64px;
					border-bottom:0;
					text-align:center;
					padding:7px 5px 7px 5px;
					margin-right:1px;
					font-weight:bold;
					background-image:url('../images/buttons/nav_tab_top.png');
					background-repeat:no-repeat;
					background-position:top;
					text-decoration:none;
				}

					#navigation li a:hover {
						background-image:url('../images/buttons/nav_tab_top_hover.png');
						background-repeat:no-repeat;
						background-position:top;
						color:#AAAAAA;
					}

					#navigation li.current a {
						background-image:url('../images/buttons/nav_tab_top_hover.png');
						background-repeat:no-repeat;
						background-position:top;
						color:#FFFFFF;
						cursor:default;
						color:#FFFFFF;
					}

	#content_outer {
		padding:3px;
		background-color:#212121;
		float:left;
		width:669px;
		-moz-border-radius-bottomright:10px;
		-moz-border-radius-bottomleft:10px;
		-webkit-border-bottom-left-radius:10px;
		-webkit-border-bottom-right-radius:10px;
	}

		#content_pad {
			padding:3px;
			background-color:#000000;
			float:left;
			width:663px;
			-moz-border-radius-bottomright:8px;
			-moz-border-radius-bottomleft:8px;
			-webkit-border-bottom-left-radius:8px;
			-webkit-border-bottom-right-radius:8px;
		}

			#content {
				background-image:url('../images/bg_texture.jpg');
				background-color:#070707;
				padding:10px;
				padding-top:6px;
				float:left;
				width:643px;
				-moz-border-radius-bottomright:6px;
				-moz-border-radius-bottomleft:6px;
				-webkit-border-bottom-left-radius:6px;
				-webkit-border-bottom-right-radius:6px;
			}

#right_column {
	float:right;
}

	#sidebar_outer {
		padding:3px;
		background-color:#212121;
		float:right;
		width:176px;
		-moz-border-radius:10px;
		-webkit-border-radius:10px;
	}

		#sidebar_pad {
			padding:3px;
			background-color:#000000;
			float:left;
			width:170px;
			-moz-border-radius:8px;
			-webkit-border-radius:8px;
		}

			#sidebar {
				background-image:url('../images/bg_texture.jpg');
				background-color:#070707;
				padding:0px;
				float:left;
				width:170px;
				-moz-border-radius:6px;
				-webkit-border-radius:6px;
			}
			
				#sidebar h2 {
					margin:0;	
				}

				.sidebar_section {
					background-image:url('../images/bg_sidebar_div.png');
					background-color:#070707;
					background-repeat:no-repeat;
					background-position:top;
					font-size:0.9em;
					padding:5px;
					padding-bottom:10px;
				}
				
					.sidebar_section ul {
						padding:0px;
						margin-left:15px;
						margin-bottom:0;
						list-style:square;
					}

#footer {
	clear:both;
	width:100%;
	height:190px;
	background-color:#20004c;
	border-top:2px solid #333333;
	background-image:url('../images/bg_footer.png');
	background-repeat:repeat-x;
	text-align:center;
	padding-top:10px;
}

/* [------------ Site-Wide Classes -----------] */

.highlighted {
	color:#9999FF;
}

.large {
	font-size:120%;	
}

.small {
	font-size:70%;	
}

.inline_img {
	vertical-align:-3px;	
}

.no_rounding {
	-moz-border-radius:0;
	-webkit-border-radius:0;
}

/* [---------- Page Specific Classes ---------] */

/* Article. */

.subtitle {
	font-size:1.35em;
	font-weight:bold;
	font-style:italic;
}

.references {
	font-size:0.9em;
	color:#888888;
	font-weight:normal;
	margin-bottom:10px;
}

	.references p {
		margin-left:3em;
		text-indent:-3em;
	}

/* Blog */

.blog_title {
	border-bottom:8px solid #3d008f;
	clear:both;
	padding-bottom:4px;
}

.blog_main {
	border-bottom:1px dotted #222;
	padding-bottom:16px;
}

.blog_footer {
	border-bottom:1px solid #333;
	font-size:0.9em;
	margin-bottom:16px;
	padding:8px 0;
	text-align:right;	
}

.blog_date {
	height:64px;
	width:54px;
	background-image:url('../images/bg_blog_date.png');
	background-repeat:no-repeat;
	text-align:center;
	float:right;
	margin-left:10px;
	margin-bottom:2px;
	line-height:1.2;
}

.blog_date span.day {
	font-weight:bold;
	color:#FFFFFF;
	font-size:2.8em;
	font-family:Arial, Helvetica, sans-serif;
	display:block;
}

.blog_date span.month {
	font-size:1.4em;
	color:#6600FF;
	display:block;
	position:relative;
	top:-22px;
}

.youtube_movie {
	background:transparent;
	display:block;
	margin:0 auto;
}

.comment {
	clear:both;
	border-bottom:1px solid #333;
	margin-bottom:16px;
	padding-bottom:16px;
}

	.comment_left {
		float:left;
		width:25%;
	}
	
	.comment_left span {
		font-size:1.1em;	
	}
	
	.comment_right {
		float:right;
		width:74%;
	}
	
		.comment_response {
			border-left:1px solid #333;
			color:#888;
			font-style:italic;
			padding-left:16px;
			margin-top:16px;
		}

/* Admin. */

#admin_panel {
	margin:0;
	padding:0;
	width:641px;
}

	#admin_panel li  {
		display:block;
		float:left;
		margin-bottom:16px;
		text-align:center;
		width:25%;
	}

	#admin_panel li.w33  {
		width:33%;
	}
	
		#admin_panel li a {
			text-decoration:none;	
		}

/* Portfolio. */

a.portfolio_tab {
	float:left;
	display:block;
	width:95px;
	padding:5px 3px 5px 3px;
	border:1px solid #333;
	margin:2px;
	text-align:center;
	background-color:#1f134b;
	background-image:url('../images/buttons/btn_category_select_bg.jpg');
	background-repeat:repeat-x;
	color:#CCC;
	text-decoration:none;
	cursor:pointer;
	font-weight:bold;
}

div.portfolio_tab_disabled {
	float:left;
	width:95px;
	padding:5px 3px 5px 3px;
	border:1px solid #222;
	margin:2px;
	text-align:center;
	background-color:#111111;
	color:#999;
	text-decoration:none;
	cursor:default;
	font-weight:bold;
}

a.portfolio_tab:hover {
	border:1px solid #666;
	background-image:none;
	color:#FFF;
	background-color:#5533DD;
	cursor:pointer;
}

.thumb_row {
	margin-bottom:10px;
}

.thumb_cell {
	float:left;
	width:214px;
	text-align:center;
	margin-bottom:10px;
	background-image:url('../images/bg_thumbnail.png');
	background-position:top center;
	background-repeat:no-repeat;
	padding-top:10px;
	height:163px;
}

.thumb_cell img {
	width:163px;
	height:102px;
	border:1px solid #333333;
	margin-bottom:7px;
}

.thumb_cell img:hover {
	border:1px solid #666666;
}

.portfolio_item_name {
	font-size:1.3em;
	color:#6600FF;
}

img.mid_image {
	display:block;
	border:1px solid #191919 !important;
	margin:0 auto;
}

.bordered {
	border:1px solid #333333;
}

/* Music */

.music_box {
	border:1px solid #191919;
	border-left:12px solid #3d008f;
	padding:10px;
	background-color:#040404;
	background-image:url('../images/bg_content_section.jpg');
	background-repeat:repeat-x;	
}

	.music_box h3 {
		margin-bottom:6px;	
	}

.album_cover {
	border:1px solid #333333;
	margin:0 10px 10px 0;
	float:left;
}

.js_mp3 {
	display:block;
	padding:0px;
	margin-bottom:4px;
	height:20px;
	overflow:hidden;
}
