/* 
   css Copyright (c) 2005-2009 Karelia Software. All Rights Reserved.
   css released under Creative Commons License 
        - http://creativecommons.org/licenses/by-sa/2.5/ 
   All associated graphics belong to their respective owners 
        and are licensed separately. 
*/


/*
GLOBAL

Try to define style properties as globally as possible. E.g. the basic font setting should be right there for the body element
*/

* { 
	margin:0px;
	padding:0px;
}

body {
	font-family: Georgia, Palatino, Times, "Times New Roman", serif;
	font-size: 76%; /* as recommended in CSS guide */
	background-color:#eee;
	color:#111;
	word-wrap:break-word;
	line-height:1.6;
}

body.allow-sidebar {
	background-color:#fff;
	background-image:url(background.gif);
	background-position: 0% 0%;
	background-repeat: repeat-y;
}

#sidebar, .callout, #page-top, h1, h2, h3, h4, h5, h6 {
	font-family:Optima, Tahoma, sans-serif;
	font-weight:normal;
	color:#000;
	background-color:inherit;
}

h1, h2, h3 {
	margin-bottom:0.5em;
}

h4, h5, h6 {
	font-size: 100%;
	font-weight:bold;
}

p {
	margin-bottom:0.5em;
	max-width:70em;
}

a {
	color:#09c;
	text-decoration:none;
	font-weight:600;
}

a:hover {
	color:#07a;
	text-decoration:underline;
}

a img {
	border:none;
}

ul, ol {
	padding-left:24px;
	margin-bottom:10px;
	max-width: 70em;
}

#sitemenu ul {
	margin-bottom:0px;
}

dl {
	max-width: 70em;
}

dt {
	font-style: italic;
}

dd {
	padding-left: 24px;
}


/* 
GENERAL LAYOUT FOR HEADER AND SIDEBAR 
float them on the left if there is a sidebar, this way we can unify them into a single structure. Have the header on top if there is no sidebar.
*/
.allow-sidebar #page-top, #sidebar-container {
	float:left;
	width:220px;
	clear:left;
}

#title, #sitemenu-container, #sidebar-container #sidebar {
	padding:14px;
}

.no-sidebar #title {
	float:left;	
	position:relative;
	width:55%;
	height:100%;
	padding:0px;
}

.no-sidebar h1 {
	padding:14px 0px 0px 20px;
	padding-bottom:0px;
}

h1 a {
	color:inherit;
	font-weight: inherit;
}

.no-sidebar #title p {
	padding:0px 0px 0px 20px;
}

#sitemenu-container {
	padding-top:0px;
}

#sitemenu-container .currentParent a {
	color:#000;
}

#sitemenu-container .currentParent a:hover {
	color:#07a;
}

.no-sidebar #sitemenu-container {
	float:left;
	position:relative;
	width:43%;
	padding:14px 5px 3px 0px;
}

.no-sidebar #sitemenu-container ul {
	list-style-type:none;
	height:100%;
}

.no-sidebar #sitemenu-container li {
	display:inline;	
}

.no-sidebar #sitemenu-container li.currentPage {
	font-weight:bold;
}

.no-sidebar #sitemenu-container li:before {
	content: " | ";
	font-weight:normal;
}

.no-sidebar #sitemenu-container li.i1:before {
	content:"";
	display:none;
}

/* IE Hack as IE can't do :after, emulate the effect using borders */
/* Hides from IE5-mac \*/
* html .no-sidebar #sitemenu-container li {
	margin:0px;
	padding-left:4px;
	border-left:#999 solid 2px;
}
* html .no-sidebar #sitemenu-container li.i1 {
	border:none;
	padding:0px;
}
/* End hide from IE5-mac */



.no-sidebar #page-top + .clear {
	display:block;
	height:5px;
	background-color:Green;
	width:100%;
	border-bottom:3px #999 dashed;
	background-color: #eee;
}

/* IE Hack as IE can't do adjacent selectors, use a top border on #main-content instead, to get roughly the same effect */
/* Hides from IE5-mac \*/
* html .no-sidebar #main-content{
	border-top:3px #999 dashed;
}
/* End hide from IE5-mac */


.no-sidebar #main {
	background-color:#fff;
	color:inherit;
}

.allow-sidebar #main {
	position:absolute;
	top:0px;
	left:250px;
}

/* IE Hack */

/* Hides from IE5-mac \*/
* html .allow-sidebar #main {
	margin-left:0px;
}
/* End hide from IE5-mac */


.allow-sidebar #main-top {
	/* set up minimum width for page */
	display:block;
	width:520px;
}


#main-content {
	padding:20px 10px 5px 20px;
}



/* 
TITLE
Centre smaller logos within their 200px container and, in turn, that container in its container.
*/
#title {
	width:100%;
}

#logo-container {
	display:block;
	width:200px;
	text-align:center;
	margin:auto;
}

.no-sidebar #logo-container {
	float:right;
	width:auto;
}

/*
PAGELETS & CALLOUTS
*/
.callout {
	float:right;
	width:250px;
	padding: 0px 0px 0px 24px;
}

.no-sidebar .callout {
	margin-left:8px;
}

#sidebar {
	width:100%;
}

#sidebar .pagelet.bordered {
	border-top: 1px #999 solid;
}

.pagelet {
	min-width:204px;
}

.pagelet + .pagelet {
	margin-top:12px;
}

.callout .pagelet.bordered {
	color:#000;
	background-color:#eee;
	border: dashed #999 3px;
	margin-bottom:12px;
	padding:2px 6px 0px 7px;
}

.callout .pagelet.bordered:hover {
	border-color:#666;
}

.pagelet h4 {
	margin:1.2em 0em 0.4em 0em;
}

.callout .pagelet.bordered h4 {
	margin-top:0.5em;
}

/*
ACTUAL CONTENT
*/

.article h3 {
	margin-top:1em;
}



/* 
PHOTO GRID PAGE
*/

.photogrid-index {
    text-align: center;
    margin: auto;
    overflow: auto;
}

.photogrid-index a {
	background-color:inherit;
	color:#000;
	text-decoration:none;
}
.photogrid-index h3 a:hover {
	text-decoration:underline;
}

.gridItem {
    float: left;
    position:relative;
    width:150px;
    height:180px;	/* room for caption */
	margin:5px;
    padding-top: 10px;
    background-color: #fff;
    color:inherit;
    overflow: hidden;
}

.gridItem h3 {
    font-size: 0.9em;
    font-weight: normal;
	background-color:inherit;
    color: #000;
    margin-top: 4px;
    margin-left: 7px;
    margin-right: 7px;
    position:absolute;
	top: 140px; /* needs to leave 38px from the bottom of the gridItem */
	width: 136px;
}

.gridItem img {
    border: 1px solid #807973;
    margin: auto;
    display:block;
    position: absolute;
    top: 0;
    bottom: 40px;
    right: 0;
    left: 0;
}

/* IE Hack */
/* Hides from IE5-mac \*/
* html .gridItem img {
	position: relative;
	top:0px;
}

* html .gridItem h3 {
	position: relative;
	top: 0px;
}
/* End hide from IE5-mac */




/*
PHOTO NAVIGATION
*/

.photo-navigation {
	position:relative;
    height: 21px;
    width:200px;
    margin:0px auto 8px auto;
}

.photo-navigation div {
	width:34px;
	height:21px;
	position: absolute;
    text-indent: -5000em;
}

.photo-navigation a {
	border-bottom:none;
	display:block;
	width:100%;
	height:100%;
}

#previous-photo	{
    background: url(photo-prev-off.gif)		no-repeat;
    left: 42px;
}
#previous-photo a {
    background: url(photo-prev.gif)		no-repeat;
}

#next-photo {
    background: url(photo-next-off.gif)		no-repeat;
    left: 124px; 
}
#next-photo a {
    background: url(photo-next.gif)		no-repeat;
}

#photo-list {
    background: url(photo-list-off.gif)		no-repeat;
    left: 83px;
}
#photo-list a {
    background: url(photo-list.gif)		no-repeat;
}

.image-controls a {
	border-bottom:none !important;
}


/*
PAGE BOTTOM
*/
.article-info {
	clear:both;
}

#page-bottom {
	padding:0px 14px;
	width:220px;
}

.no-sidebar #page-bottom {
	width:93%;
}


#page-bottom p {
	margin:0px;
}

/* 
SANDVOX INTERNALS
	
these should be present in every style sheeto ensure that certain classes used by Sandvox to hide and clear elements are respected.
Don't change them unless you have very good reason to do so.
*/

.clear {clear: both; height: 0;}
.hidden {display:none;}
img.narrow {float: right; margin:0em 0em 0.8em 0.8em;}
img.wide {display: block;}
.ImageElement, .VideoElement { text-align:center;}
.ImageElement p, .VideoElement p { margin:auto; }
