/* Layout styles */

#wrapper {
	min-height: 100%;
	height: auto !important;
	height: 100%;
	margin: 0 auto -33px;
}

#footer, #push {
	clear: both;
	height: 33px;
}

#footer {
	background: #cec8ae url(../images/back-footer.jpg) repeat-x;
	color: #68634e;
	line-height: 33px;
	padding: 0 20px;
}

#footer p {
	margin: 0;
}

#header {
	background: #9e0145 url(../images/back-header.jpg) repeat-x;
	height: 80px;
}

#logo {
	float: left;
	margin-top: 20px;
}

#login {
	background: url(../images/back-login.png) no-repeat;
	color: #FFF;
	float: right;
	font-size: 83%;
	font-weight: bold;
	line-height: 28px;
	margin-right: 0;
	text-align: center;
	width: 295px;
}

#login a {
	color: #2cc5d9;
}

#nav-bar {
	background: #FFF url(../images/back-nav.jpg) repeat-x;
	border-bottom: 1px solid #cdcdcd;
	height: 35px;
	margin-bottom: 15px;
}

#slogan {
	color: #61002a;
	float: left;
	font-size: 92%;
	font-weight: bold;
	line-height: 35px;
	margin-left: 5px;
}

#banner-wrapper {
	border: 1px solid #d9d9d9;
	margin-bottom: 15px;
}

#banner {
	margin: 18px;
}

#intro-wrapper {
	background: url(../images/back-home.png) right top no-repeat;
	border: 1px solid #d9d9d9;
	margin-bottom: 15px;
	min-height: 130px;
}

#intro {
	margin: 18px;
	width: 75%;
}

#intro h1 {
	color: #770034;
	font-size: 133%;
}

#intro h2 {
	color: #0e94bc;
	font-size: 133%;
	font-weight: normal;
	margin-bottom: 15px;
}

#article {
	margin-bottom: 15px;
}

/* Primary navigation */

ul.nav {
	float: right;
	font-size: 92%;
	line-height: 35px;
	list-style-type: none;
}

ul.nav li {
	background: url(../images/back-nav-item.jpg) no-repeat left center;
	display: block;
	float: left;
	font-weight: bold;
	margin: 0;
	padding-right: 1px;
	position: relative;
	z-index: 500;
	text-align: center; 
	text-transform: uppercase;
} 

ul.nav li.first {
	background-image: none;
}

ul.nav li a {
	color: #000;
	display: block;
	padding: 0 7px 0 10px;
}

ul.nav li ul {
	border-top: 1px solid #cdcdcd;
	display: none;
	left: 0;
	margin: 0;
	padding: 0;
	position: absolute;
}

ul.nav li ul li {
	background: #fff;
	border-color: #cdcdcd; 
	border-style: solid;
	border-width: 0 1px 1px 1px; 
	float: left;
	font-weight: normal;
	line-height: 22px;
	width: 140px;
	text-align: left;
	text-transform: none;
}

ul.nav li ul li:hover {
	background: #efefef;
} 

ul.nav li ul li a {
	color: #333;
	display: block;
	text-decoration: none;
}

*html ul.nav ul {
	margin: 0 0 0 -2px; 
}

/* Sub navigation */

ul.sub-nav {
	border-top: 1px solid #d9d9d9;
	list-style-type: none;
	margin: 0 0 15px 0;
}

ul.sub-nav li {
	border-color: #d9d9d9; 
	border-style: solid;
	border-width: 0 0 1px 0;
	line-height: 26px;
	margin: 0;
}

ul.sub-nav li a:hover,
ul.sub-nav li a.active {
	background: #efefef;
} 

ul.sub-nav li a {
	color: #898989;
	display: block;
	padding: 0 7px 0 20px;
	text-decoration: none;
}

ul.sub-nav li ul {
	background: #fff;
	border-top: 1px solid #d9d9d9;
	list-style-type: none;
	margin: 0;
}

ul.sub-nav li ul li:last-child {
	border: none;
	
}

ul.sub-nav li ul li a {
	padding: 0 7px 0 35px;
}

ul.sub-nav li ul li ul li a {
	padding: 0 7px 0 55px;
}

/* Box styles */

.box {
	background: url(../images/back-box.jpg) bottom repeat-x;
	border: 1px solid #d9d9d9;
	color: #898989;
	margin-bottom: 15px;
	padding: 10px 10px 15px 10px;
}

.box h2 {
	border-bottom: 1px solid #d9d9d9;
	color: #5e0029;
	font-size: 92%;
	margin: -10px -10px 10px -10px;
	padding: 10px 20px;
	text-transform: uppercase;
}

.box ul.menu {
	list-style-type: none;
}

.box ul.menu li {
	margin: 0 0 10px 12px;
	background: url(../images/bullet.jpg) left no-repeat;
	background-position: 0 6px;
	padding-left: 10px;
	color: #898989;
}

.box ul.menu li a {
	color: #898989;
}

.box p {
	padding-left: 10px;
}

.box p.view-all {
	margin: 18px 0 10px 2px;
	padding-left: 10px;
}

.box p.view-all a, a.button {
	background-color: #000;
	color: #FFF;
	font-size: 75%;
	font-weight: bold;
	padding: 4px 10px;
	text-transform: uppercase;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}

.box p.view-all a:hover {
	text-decoration: none;
}

.box p.tag-cloud a {
	color: #898989;
}

.box p.tag-cloud .smallest { 
	font-size: 83%; 
}

.box p.tag-cloud .small { 
	font-size: 100%; 
}

.box p.tag-cloud .medium { 
	font-size: 117%; 
}

.box p.tag-cloud .large { 
	font-size: 150%; 
}

.box p.tag-cloud .largest { 
	font-size: 183%; 
}

.box div.comment {
	margin: 0 0 10px 10px;
}

.box div.comment h4 {
	font-size: 108%;
	font-weight: normal;
	margin-bottom: 3px;
}

.box div.comment h4 a {
	color: #000;
}

.box div.comment div.meta {
	margin-bottom: 4px;
}

.box div.comment div.excerpt a.read-more {
	background: url(../images/back-more.png) right no-repeat;
	color: #000;
	font-size: 83%;
	font-weight: bold;
	padding-right: 8px;
	text-transform: uppercase;
}

/* Pagination styles */
.pagination {
	clear: both;
	margin: 10px 0;
	text-align: center;
}

.pagination a,
.pagination span {
	padding: 2px 5px 2px 5px;
	margin: 2px;
}

.pagination a {
	border: 1px solid #898989;
	color: #898989;
	text-decoration: none;
}

.pagination a:hover, 
.pagination a:active,
.pagination span.current {
	background-color: #898989;
	border: 1px solid #898989;
	color: #FFF;
}

.pagination span.current {
	font-weight: bold;
}

.pagination span.disabled {
	border: 1px solid #d9d9d9;
	color: #d9d9d9;
}

.pagination .previous:before {
	content: "« ";
}

.pagination .next:after {
	content: " »";
}

/* Comments styles */

.comments {
	clear: both;
}

.comments h3 {
	background-color: #f2f0e5;
	color: #000;
	font-size: 125%;
	font-weight: normal;
	padding: 5px;
}

.comments ol.comment-list {
	list-style-type: none;
}

.comments ol.comment-list li {
	border: 1px solid #d9d9d9;
	margin: 10px 0;
	padding: 10px 10px 5px 10px;
}

.comments div.comment-meta .name a {
	color: #6c002f;
}

.comments div.comment-content {
	padding: 10px 0 5px 0;
}

.respond {
	clear: both;
}

.comment-form fieldset {
	background: none;
	border: none;
	padding: 0;
}

.comment-form legend {
	border: none;
	color: #000;
	font-size: 125%;
	font-weight: normal;
	padding: 0 0 10px 0;
}

.comment-form div.body {
	border: 1px solid #d9d9d9;
	margin: 10px 0;
	padding: 10px 10px 5px 10px;
}

.comment-form label {
	color: #000;
	font-size: 92%;
	font-weight: bold;
	display: block;
	margin-bottom: 5px;
}

.comment-form input[type=text] {
	background-color: #e4f2f4;
	border: 1px solid #c0dee4;
	margin-bottom: 3px;
	width: 99%;
}

.comment-form textarea {
	background-color: #e4f2f4;
	border: 1px solid #c0dee4;
	width: 99%;
}

/* Title styles */

#article .page-title {
	color: #0e93b6;
	font-size: 167%;
	font-weight: bold;
	margin-bottom: 20px;
}

#article .filtered-title {
	color: #0e93b6;
	font-size: 150%;
	font-weight: normal;
	margin-bottom: 15px;
}

/* Content entry styles */

.entry {
	margin-bottom: 20px;
	overflow: hidden;
}

.entry:last-child {
	margin-bottom: 5px;
}

.entry .thumb {
	float: left;
	margin-right: 10px;
}

.entry .thumb img {
	background-color: #FFF;
	border: 1px solid #d9d9d9;
	height: 100px;
	padding: 5px;
	position: relative;
	width: 100px;
}

.entry .thumb a img:hover {
	background-color: #d9d9d9;
}

.entry .thumb .caption {
	font-size: 92%;
	width: 110px;
}

.entry .details {
	overflow: hidden;
}

.entry h3 {
	color: #000;
	font-size: 142%;
	font-weight: normal;
}

.entry h3 a {
	color: #000;
}

.entry h4 {
	color: #000;
	font-size: 125%;
	font-weight: normal;
}

.entry h5, 
.entry div.category,
.entry div.email,
.entry div.location,
.entry div.phone,
.entry div.tags {
	font-size: 100%;
	font-weight: normal;
}

.entry h5 a, 
.entry div.category a,
.entry div.email a,
.entry div.location a,
.entry div.phone a,
.entry div.tags a {
	color: #6c002f;
}

.entry div {
	margin-bottom: 5px;
}

.entry a[rel=tag] {
	margin-right: 3px;
}

.entry div.bio,
.entry div.content,
.entry div.description {
	border-top: 1px solid #d9d9d9;
	padding-top: 5px;
	width: 100%;
}

.entry div.bio a.more,
.entry div.content a.more,
.entry div.description a.more {
	background: url(../images/back-more.png) right no-repeat;
	color: #000;
	font-size: 83%;
	font-weight: bold;
	padding-right: 8px;
	text-transform: uppercase;
}

.entry div.attachment,
.entry div.link {
	background-color: #f2f0e5;
	clear: both;
	float: left;
	padding: 3px;
}

.entry div.comment-links {
	clear: both;
}

/* Content detail styles */

.detail {
	margin-bottom: 5px;
	overflow: hidden;
}

.detail h2 {
	color: #000;
	font-size: 158%;
	font-weight: normal;
}

.detail h2 a {
	color: #000;
}

.detail h3 {
	color: #000;
	font-size: 142%;
	font-weight: normal;
}

.detail h4, 
.detail div.category,
.detail div.email,
.detail div.location,
.detail div.phone,
.detail div.tags {
	font-size: 100%;
	font-weight: normal;
}

.detail h4 a, 
.detail div.category a,
.detail div.email a,
.detail div.location a,
.detail div.phone a,
.detail div.tags a {
	color: #6c002f;
}

.detail div {
	margin-bottom: 5px;
}

.detail a[rel=tag] {
	margin-right: 3px;
}

.detail div.bio,
.detail div.content,
.detail div.description {
	border-top: 1px solid #d9d9d9;
	padding-top: 5px;
}

.detail div.bio .photo,
.detail div.content .photo,
.detail div.description .photo {
	float: left;
	margin-right: 10px;
}

.detail div.bio .photo img,
.detail div.content .photo img,
.detail div.description .photo img {
	background-color: #FFF;
	border: 1px solid #d9d9d9;
	height: 150px;
	padding: 5px;
	position: relative;
	width: 150px;
}

.detail div.content .photo .caption,
.detail div.description .photo .caption {
	font-size: 92%;
	width: 160px;
}

.detail div.attachment, 
.detail div.link {
	background-color: #f2f0e5;
	clear: both;
	float: left;
	padding: 3px;
}

/* File library styles */

.file-library {
	border: none;
	margin-bottom: 5px;
}

.file-library td, 
.file-library th { 
	vertical-align: middle; 
}

.file-library th {  
	border-left: 1px solid #d9d9d9; 
	border-top: 1px solid #d9d9d9; 
	height: 30px; 
	text-align: center;  
}

.file-library td { 
	border-left: 1px solid #d9d9d9; 
	text-align: center; 
	height: 30px; 
}

.file-library td:first-child, .file-library th:first-child { 
	border-left: none; 
}

.file-library td:first-child {
	padding-left: 15px;
	text-align: left;
}

/* TODO: add in support for IE */
.file-library tr:nth-child(even) {
	background-color: #f2f0e5;
}

.file-library a.icon {
	background: no-repeat 0 50%;
	padding: 3px 0 3px 21px;
}

.file-library a.download {
	background: no-repeat 0 50%;
	padding: 3px 7px 3px 13px;
}

.file-library a.details {  
	background: no-repeat 0 50%;
	padding: 3px 0 3px 21px; 
}

.file h2.icon { 
	background: no-repeat 0 50%;
	padding: 3px 0 3px 21px; 
}

.file div.info {
	float: left; 
	width: 50%;
}

.file div.download {
	background-color: #f2f0e5;
	border: 1px solid #d9d9d9;
	float: right;
	margin-right: 50px;
	margin-top: 15px;
	padding: 10px;
	text-align: center;
	width: 110px;
}

.file div.download a { 
	background: no-repeat 0 70%;
	font-size: 117%;
	font-weight: bold;
	padding-left: 12px;
}

/* Photo gallery styles */

.album.entry .content,
.album.entry .description {
	border: none;
	padding: 0;
}

.album.entry .thumb img {
	height: auto;
	width: auto;
}

.album.detail .content,
.album.detail .description {
	border: none;
	padding: 0;
}

.album.detail .content {
	margin-bottom: 10px;
}

.album.detail .photos {
	overflow: hidden;
}

.album.detail .photo.entry {
	float: left;
	margin: 0px 5px 5px 0px;
}

.album.detail .photo.entry .title {
	color: #000;
	font-size: 117%;
}

.album.detail .photo.entry .title a {
	color: #000;
}

.album.detail .photo.entry .thumb img {
	height: auto;
	width: auto;
}

.photo.detail .image img {
	background-color: #FFF;
	border: 1px solid #d9d9d9;
	max-width: 650px;
	padding: 5px;
}

/* Video vault styles */

.video.entry .thumb img {
	height: auto;
	width: auto;
}

/* Login styles */

.password-title,
.username-title,
.reset-title {
	color: #000;
	font-size: 142%;
	font-weight: normal;
	margin-bottom: 10px;
}

.password-instructions,
.username-instructions,
.reset-instructions {
	margin-bottom: 15px;
}

/* Profile styles */

.account-form {
	margin-bottom: 30px;
}

/* Form validation messages */
div.validation h3 {
	font-size: 117%;
	margin: 10px 0;
	font-style: normal;
}

div.validation dl {
	font-size: 92%;
}

div.validation dt label {
	font-weight: bold;
	text-decoration: underline;
}

div.validation dt label:hover {
	font-weight: bold;
	text-decoration: none;
}

div.validation dd {
	margin-left: 10px;
}

/* Kwicks styles */
.kwicks .details {
	padding-left: 10px;
}
.kwicks .details h2 {
	color: #000;
	font-size: 158%;
	font-weight: normal;
	margin-bottom: 10px;
}
.kwicks .details h2 a {
	color: #000;
}
.kwicks .details .description {
	margin-bottom: 10px;
}
.kwicks .details a.more {
	background: url(/assets/images/back-more.png) right no-repeat;
	color: #000;
	font-size: 83%;
	font-weight: bold;
	padding-right: 8px;
	text-transform: uppercase;
}