/* init */

* {
	margin: 0;
	padding: 0;
}

body,
html {
	background: #12171e;
	height: 100%;
}

body {
	color: #9ba2ac;
	padding-right: 12px; /* see div#content-wrapper */
}

dd, dt, h1, h2, h3, li, p, td, th {
	font: 11px/16px Verdana, Geneva, Arial, Helvetica, sans-serif;
}

.clearfix
{
	min-height: 1%;
}

* html .clearfix
{
	height: 1%;
}

.clearfix:after
{
	content: ".";
	display: block;
	height: 0;
	clear: both;
	font-size: 0;
	visibility: hidden;
}

/* std elements */

a {
	color: #9ba2ac;
	border-bottom: 1px solid #565d65;
	text-decoration: none;
}

a:hover {
	border-bottom-color: #9ba2ac;
}

a img {
	border: 0;
}

del {
	color: #555c64;
	text-decoration: line-through;
}

ol, ul {
	list-style: none;
}

/* logo headline */

h1 {
	display: inline; /* dbl margin bug IE6 */
	float:left;
	margin: 0 0 0 12px;
	width: 118px;
}

h1 a,
h1 span {
	background: url(img/foto.olafschneider.de.gif) no-repeat 0 -18px;
	border: none;
	display: block;
	height: 18px;
	overflow: hidden;
	position: relative;
	text-indent: -6174em;
	width:118px;
	z-index: 1;
}

h1 a:hover,
h1 span {
	background-position: 0 0;
}

/* grid */

div#content-wrapper {
	clear: left;
	margin: 0 auto;
	padding-left: 12px; /* see body */
	position: relative;
	width: 930px;
}

/* admin related */

div#admin,
div#unpublished {
	background: url(img/admin.gif) no-repeat;
	height: 17px;
	position: absolute;
	top: 0;
}

div#admin {
	background-position: -58px 0;
	right: 12px;
	width: 44px;
}

div#unpublished {
	right: 58px;
	width: 58px;
}

  /* --------------------------------------------------------------- */
 /* content page                                                    */
/* --------------------------------------------------------------- */

body.content-page h1 {
	height: 50px;
}

body.content-page div.content {
	border: 1px solid #565d65;
	margin-bottom: 50px;
	padding: 10px 16px;
	min-height: 300px; /* @@! QS: IE6 */
}

body.content-page h2 {
	font-size: 13px;
	padding: 0 0 16px;
	text-align: center;
}

body.content-page h3 {
	font-weight: bold;
	padding: 0 0 10px;
}

body.content-page div.content p {
	padding: 0 0 10px;
}

  /* --------------------------------------------------------------- */
 /* content page + index page                                       */
/* --------------------------------------------------------------- */

body.index-page div.content {
	background: url(img/index-bg.gif) no-repeat right center;
}

body.index-page dl {
	padding: 0 0 16px;
}

body.index-page dt {
	color: #00828f;
	font-size: 13px;
	padding: 6px 0;
}

body.index-page dd {
	padding: 0 0 2px;
}

body.index-page dd.new {
	background: url(img/new.gif) no-repeat left center;
	padding-left: 26px;
}

body.index-page dd span {
	border-bottom: 1px solid #12171e;
	color: #565D65;
	display: none;
	position: relative;
}

*+html body.index-page dd span {
	top: 1px;
}

* html body.index-page dd span {
	top: 1px;
}

body.index-page dd a:hover span {
	display: inline;
}

p#blog-link {
	background: #00828f;
	font-size: 13px;
	line-height: 18px;
	margin: 5px 130px 16px 0;
	padding: 0;
}

p#blog-link a {
	border: none;
	color: #fff;
	display: block;
	padding: 6px 10px;
	text-decoration: none;
}

p#blog-link a:hover {
	text-decoration: underline;
}

  /* --------------------------------------------------------------- */
 /* photo page                                                      */
/* --------------------------------------------------------------- */

body.photo-page h1 {
	height: 50%;
}

body.photo-page div.content {
	left: 12px;
	position: absolute;
	top: 20px;
	width: 930px;
}

body.photo-page ol#images li {
	float: left;
}

body.photo-page ol#images a {
	border: none;
	display: inline-block;
	outline: none;
}

body.photo-page ol#images img {
	border: 1px solid #b6bdc7;
}

body.photo-page h2 {
	height: 16px;
	padding: 4px 0 3px;
	text-align: center;
}

/* navigation */

ol#nav {
	height: 19px;
	margin-top: 49px;
	width: 930px;
}

ol#nav li {
	float: left;
	margin-right: 2px;
	height: 19px;
	width: 19px;
}

ol#nav li.void {
	border: 1px solid #22262c;
	height: 17px;
	width: 38px;
}

ol#nav li.first a,
ol#nav li.previous a,
ol#nav li.next a,
ol#nav li.last a {
	background: url(img/nav-icons.gif) no-repeat;
	border: none;
	display: block;
	height: 19px;
	overflow: hidden;
	width: 19px;
}

ol#nav li.first a          { background-position: -19px 0; }
ol#nav li.previous a       { background-position: -19px -19px; }
ol#nav li.next a           { background-position: -19px -38px; }
ol#nav li.last a           { background-position: -19px -57px; }
ol#nav li.first a:hover    { background-position: 0 0; }
ol#nav li.previous a:hover { background-position: 0 -19px; }
ol#nav li.next a:hover     { background-position: 0 -38px; }
ol#nav li.last a:hover     { background-position: 0 -57px; }

ol#nav li.breadcrumb { /* extends ol#nav li */
	border: 1px solid #22262c;
	height: 17px;
	margin: 0;
	padding: 0 96px 0 10px;
	position: relative;
	text-align: left;
	width: 738px;
}

ol#nav li.breadcrumb span {
	position: absolute;
	right: 10px;
	top: 0px;
}

/* preload and progress */

ul.preload-images {
	height: 1px;
	left: -6174px;
	overflow: hidden;
	position: absolute;
	width: 1px;
}

div#progress-bar {
	background: url(img/loader.gif);
	display: none;
	height: 16px;
	left: 147px;
	overflow: hidden;
	position: absolute;
	top: 1px;
	width: 16px;
}

  /* --------------------------------------------------------------- */
 /* photo page > layout 1 (300px height)                            */
/* --------------------------------------------------------------- */

body.album-layout-1 h1 {
	margin-bottom: -217px;
}

body.album-layout-1 div#content-wrapper,
body.album-layout-1 div.content {
	height: 395px;
}

body.album-layout-1 ol#images {
	height: 302px;
}

body.album-layout-1 ol#images img {
	height: 300px;
	width: 300px;
}

body.album-layout-1 ol#images img.landscape {
	width: 928px;
}

body.album-layout-1 img.left,
body.album-layout-1 img.center {
	margin-right: 12px;
}

  /* --------------------------------------------------------------- */
 /* photo page > layout 2 (407px height)                            */
/* --------------------------------------------------------------- */

body.album-layout-2 h1 {
	margin-bottom: -270px;
}

body.album-layout-2 div#content-wrapper,
body.album-layout-2 div.content {
	height: 502px;
}

body.album-layout-2 ol#images {
	height: 409px;
}

body.album-layout-2 ol#images img {
	height: 407px;
}

body.album-layout-2 img#landscape {
	width: 928px;
}

/* @@! todo: widths of small and large image independently of left and right */

body.album-layout-2 img.left {
	margin-right: 12px;
}
