/* --------------- RESET --------------- */
html, body, div, span, object,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, strong, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0 solid #CCC;
	outline: 0;
}
body {
	line-height: 1;
}
h1, h2, h3, h4, h5, h6 {
	font-weight: normal;
	font-size: 12px;
}
blockquote, q {
	quotes: none;
}


/* --------------- LINKS --------------- */
a.external,
a.mailto,
a[href$='.doc'],
a[href$='.xls'],
a[href$='.pdf'],
a[href$='.mp3'],
a[href$='.avi'] {
	padding-right: 20px;
	background-position: center right;
	background-repeat: no-repeat;
}
a.external {
	background-image: url(/graphics/icon_external.gif);
}
a.mailto {
	background-image: url(/graphics/icon_mailto.gif);
}
a[href$='.doc'] {
	background-image: url(/graphics/icon_doc.gif);
}
a[href$='.xls'] {
	background-image: url(/graphics/icon_xls.gif);
}
a[href$='.pdf'] {
	background-image: url(/graphics/icon_pdf.gif);
}
a[href$='.mp3'] {
	background-image: url(/graphics/icon_audio.gif);
}
a[href$='.avi'] {
	background-image: url(/graphics/icon_video.gif);
}


/* --------------- TABLES --------------- */
table {
	border-collapse: separate;
	border-width: 1px 0 0 1px;
	border-spacing: 0;
	margin-bottom: 15px;
	clear: both;
}
table caption {
	font-size: 14px;
	font-variant: small-caps;
	text-align: center;
	font-weight: bold;
	margin-bottom: 2px;
}
table thead {
	font-size: 12px;
}
table tbody {
	font-size: 11px;
}
th,
td {
	border-width: 0 1px 1px 0;
}
th {
	padding: 5px;
	font-weight: bold;
	text-align: center;
}
td {
	padding: 4px;
}
td.lab {
	font-weight: bold;
}
table.labelled {
	background-color: transparent;
	clear: none;
}
table.labelled td {
	font-size: 12px;
	padding: 3px;
}
table.labelled td.lab {
	font-size: 13px;
	text-align: right;
	font-variant: small-caps;
	vertical-align: top;
}


/* --------------- FORMS --------------- */
form {
	font-size: 13px;
}
form fieldset {
	border-width: 1px;
	margin-bottom: 15px;
	padding: 10px 20px;
}
form p {
	margin-bottom: 7px;
}
form p:last-child {
	margin-bottom: 0;
}
form legend {
	font-size: 16px;
	font-variant: small-caps;
	letter-spacing: 0.5px;
	padding: 0 5px;
	margin-left: -10px;
	font-weight: bold;
}
form label {
	display: inline;
	font-weight: bold;
}


/* --------------- IMAGES --------------- */
.image,
.image img,
.image .caption {
	display: block;
}
.image {
	margin-bottom: 15px;
	clear: both;
}
.image img {
	border-width: 1px;
}
.image .caption {
	font-weight: bold;
	font-size: 10px;
	line-height: 1.2;
}
.image .caption .larger-version {
	margin-left: 5px;
	font-size: 10px;
	font-weight: normal;
}
.image a,
.image .caption a {
	padding-right: 0;
	background-image: none;
}
.align-left,
.align-right {
	margin-bottom: 5px;
}
.align-left {
	float: left;
	margin-right: 10px;
}
.align-right {
	float: right;
	margin-left: 10px;
}
.align-center {
	width: 100% !important;
	text-align: center;
}
.align-center img {
	display: inline !important;
	vertical-align: bottom;
}

.gallery {
	margin-bottom: 10px;
	width: 100%;
}
.gallery .image {
	clear: none;
	margin-bottom: 5px;
}
.gallery .image .caption {
	line-height: 1;
	font-size: 10px;
	font-weight: normal;
	margin-top: 1px;
}


/* --------------- TYPOGRAPHY --------------- */
h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child,
h2.first, h3.first, h4.first, h5.first, h6.first {
	margin-top: 0;
}
#content {
	line-height: 1.5;
}
p,
blockquote,
ul,
ol {
	margin-bottom: 10px;
}
blockquote {
	margin: 0 20px;
}

ul,
ol {
	margin-left: 35px;
}
li {
	margin-bottom: 2px;
}
ul.discrete,
ol.discrete,
ul.inline,
ol.inline {
	list-style-type: none;
	margin-left: 0;
}
ul.inline li,
ol.inline li {
	display: block;
	float: left;
	margin: 0 3px;
}
ul.inline :first-child,
ol.inline :first-child {
	margin-left: 0;
}
ul.discrete,
ol.discrete {
	line-height: 1.6;
}

ul.v-menu {
	list-style: none;
	line-height: 1.1;
	margin: 0;
}
ul.v-menu li {
	display: block;
	margin: 0;
	border-bottom-width: 1px;
}
ul.v-menu li a {
	display: block;
	color: #333;
	padding: 3px 0px 5px;
}

pre {
	font-family: "Courier New", monospace;
	font-size: 12px;
}


/* --------------- MISC --------------- */
.hr,
.hr-dashed {
	margin: 10px 0;
	height: 0;
	border-top-width: 1px;
	clear: both;
}
.hr-dashed {
	border-style: dashed;
}
.no-border,
.no-border img,
table.no-border th,
table.no-border td {
	border-width: 0 !important;
}
a.no-icon {
	background-image: none !important;
	padding-right: 0 !important;
}
.transparent {
	background-color: transparent !important;
	background-image: none !important;
}
.hidden {
	display: none;
}
.underline {
	text-decoration: underline;
}
.uppercase {
	text-transform: uppercase;
}
#process {
	position: absolute;
	right: 10px;
	top: 10px;
	text-align: right;
	font-family: "Courier New", monospace;
	font-size: 12px;
	color: black;
}
#counter {
	display: none;
}
/* http://sonspring.com/journal/clearing-floats */
.clear {
	clear: both;
	display: block;
	overflow: hidden;
	visibility: hidden;
	width: 0;
	height: 0;
}
/* http://perishablepress.com/press/2008/02/05/lessons-learned-concerning-the-clearfix-css-hack */
.clearfix:after {
	clear: both;
	content: ' ';
	display: block;
	font-size: 0;
	line-height: 0;
	visibility: hidden;
	width: 0;
	height: 0;
}
.clearfix {
	display: inline-block;
}
* html .clearfix {
	height: 1%;
}
.clearfix {
	display: block;
}


/* --------------- LIGHTBOX --------------- */
#lightbox{ position: absolute; left: 0; width: 100%; z-index: 100; text-align: center; line-height: 0;}
#lightbox img{ width: auto; height: auto;}
#lightbox a img{ border: none; }

#outerImageContainer{ position: relative; background-color: #fff; width: 250px; height: 250px; margin: 0 auto; }
#imageContainer{ padding: 10px; }

#loading{ position: absolute; top: 40%; left: 0%; height: 25%; width: 100%; text-align: center; line-height: 0; }
#hoverNav{ position: absolute; top: 0; left: 0; height: 100%; width: 100%; z-index: 10; }
#imageContainer>#hoverNav{ left: 0;}
#hoverNav a{ outline: none;}

#prevLink, #nextLink{ width: 49%; height: 100%; background-image: url(data:image/gif;base64,AAAA); /* Trick IE into showing hover */ display: block; }
#prevLink { left: 0; float: left;}
#nextLink { right: 0; float: right;}
#prevLink:hover, #prevLink:visited:hover { background: url(/graphics/lightbox_prevlabel.gif) left 15% no-repeat; }
#nextLink:hover, #nextLink:visited:hover { background: url(/graphics/lightbox_nextlabel.gif) right 15% no-repeat; }

#imageDataContainer{ font: 10px Verdana, Helvetica, sans-serif; background-color: #fff; margin: 0 auto; line-height: 1.4em; overflow: auto; width: 100% ; }

#imageData{ padding:0 10px; color: #666; }
#imageData #imageDetails{ width: 70%; float: left; text-align: left; } 
#imageData #caption{ font-weight: bold; font-size: 13px;}
#imageData #numberDisplay{ display: block; clear: left; padding-bottom: 1.0em; }   
#imageData #bottomNavClose{ width: 66px; float: right;  padding-bottom: 0.7em; outline: none;}   

#overlay{ position: absolute; top: 0; left: 0; z-index: 90; width: 100%; height: 500px; background-color: #000; }
