/*
CSS Hacks:
floating object with nonzero margin must be "inline" for IE6
*/

/**
 * The general setup
 */
html {
  height: 100%;
}

body {
  height: 100%;
  min-width:76em; /** left and right frame-cutoff margins + left and right div.body margins + dialog width + link_box width */
/*  _width:expression(((document.compatMode && document.compatMode=='CSS1Compat') ? document.documentElement.clientWidth : document.body.clientWidth) < 700? "700px": "auto");*/
  margin:0;
  padding:0;
  background:#eeffdd;
  color:#fbfbfb;
  background-image: url(/static/themes/leftborder.png);
  background-repeat: repeat-y;
  background-position: 0 0;
}

body, th, td {
  font:12px/1.4em Verdana,sans-serif;
}


div.quote, div.lastquote {
  font: 1.4em/1.8em Georgia, "Times New Roman", Times, serif;
  max-width: 36em;
}


div.quote {
  margin-bottom: 4em;
}


blockquote {
  _height: 0;
  background: url(/static/themes/close-quote.gif) no-repeat right bottom;
  padding-left: 18px;
  padding-right: 18px;
  text-indent: -18px;
}

blockquote:first-letter {
  background-image: url(/static/themes/open-quote.gif);
  background-repeat: no-repeat;
  background-position: 0px 0px;
  padding-left: 18px;
  font: italic 1.6em Georgia, "Times New Roman", Times, serif;
}

div.cite {
  font:12px/1.4em Verdana,sans-serif;
  margin-top: 2em;
  margin-right: 36px;
  text-align: right;
}


/* special page styles */
div.ie_thumbnail_container
{
  width:100%;
}


.thumbnail
{
  float: left;
  width: 150px;
  margin: 0 45px 15px 0;
  padding: 5px;
}

.thumbnail img {
  border: 1px #000000 solid;
}

div.thumbnail_text {
  height: 10em;
}

div.thumbnail_image {
  text-align: left;
}

/* LINKS */
a {
  text-decoration: none;
}

a:link, a:visited {
  color:#ff5d01;
}

a:hover {
  color:#ffa231;
}

a:active {
  color:#f02d00;
  background-color:transparent;
  font-weight:bold;
}

a:focus {
  color:#f02d00;
  font-weight:bold;
}

/* CONTENT */

h1,h2,h3 {
  margin-top:.8em;
  font-family:"Microsoft Sans Serif",sans-serif;
  font-weight:normal;
}

h1 {
  font-size:218%;
  margin-top:.6em;
  margin-bottom:.6em;
  color:#092e20;
  line-height:1.1em;
}

h2 {
  font-size:150%;
  margin-top:1em;
  margin-bottom:.2em;
  line-height:1.2em;
  color:#092e20;
}

h3 {
  font-size:125%;
  font-weight:bold;
  margin-bottom:.2em;
  color:#487858;
}

h4 {
  font-size:93%;
  font-weight:bold;
  margin-bottom:.5em;
  margin-top:2em;
  text-transform:uppercase;
  letter-spacing:1px;
}

h4 pre, h4 tt, h4 .literal {
  text-transform:none;
}

h5 {
  font-size:1em;
  font-weight:bold;
  margin-top:1.5em;
  margin-bottom:3px;
}

p, ul, dl {
  margin-top:.6em;
  margin-bottom:.8em;
}

img {
  border-width: 0;
}

.wrapper, div#headerbar, div#headerlogo, div#headerrightcorner,
div#footerleftcorner, div#footerrightcorner, div#footer {
  width: 100%;
  padding: 0;
  margin: 0;
}

/*
The frame of the site
*/
div#headerbar {
  height: 124px;                                 /*###headerHeight + tabHeight - overlap*/
  background-color: #eeffdd;
  background-image: url(/static/themes/titlebar002.png);
  background-repeat: repeat-x;
  background-position: 0 0;
}

div#headerlogo {
  float: left;
  height: 124px;                                 /*###headerHeight + tabHeight - overlap*/
  background-image: url(/static/themes/titlelogo002.png);
  background-repeat: no-repeat;
  background-position: 0 0;
}

div#headerrightcorner {
  height: 124px;
  background-image: url(/static/themes/titlerightcorner002.png);
  background-repeat: no-repeat;
  background-position: right 100%;
}

#frame-cutoff {
/*  margin: 7% 40px 1px 40px;*/
  margin: 0 10px 0 10px; /*###real visible width of left and right page-frame*/
  padding: 0;
}

#body {
/*  margin: 7% 40px 1px 40px;*/
  margin: 40px;
  padding: 0;
}

#nonfooter {
  margin: 0 0 -87px 0;                           /*###footerHeight*/
  padding: 0;
  min-height: 100%;
  background-image: url(/static/themes/rightborder.png);
  background-repeat: repeat-y;
  background-position: right 0;
}

* html #nonfooter {
  height: 100%;
}

div#clearfooter, div#footerleftcorner, div#footerrightcorner, div#footer {
  height: 87px                                   /*###footerHeight*/
}

div#clearfooter {
  margin: 0;
  padding: 0;
}

div#footerleftcorner, div#footerrightcorner {
  position: relative;
  top: -37px;                                   /*### corner is 37px higher than footer*/
  width: 20px;                                  /*### width of corner images*/
  background-repeat: no-repeat;
}

div#footerleftcorner {
  float: left;
  background-image: url(/static/themes/footerleftcorner.png);
  background-position: 0 0;
}

div#footerrightcorner {
  float: right;
  background-image: url(/static/themes/footerrightcorner.png);
  background-position: right 0;
}

div#footer {
  clear: both;
  color: #eeffdd;
  font-size:90%;
  width: auto;
  background-image: url(/static/themes/footerbar.png);
  background-repeat: repeat-x;
  background-position: 0 100%;
}

/**
 * Text elements for the header and footer
 */
div#headerwrapper {
  position: relative;
  top: -40px;
  padding: 0;
  margin: 0 0 -40px 0;
  height: 40px;
}

div#headerarea {
  padding: 0;
  margin:0 20px; /*### width of corner images*/
}

div#footerarea {
  padding: 30px 30px 0px 30px;
  _padding: 0;
  margin: 0;
  _margin: 30px 30px 0px 30px;
}


ul.banner {
  list-style-type: none;
  text-align: left;
  vertical-align: middle;
  padding: 0;
  margin: 0;
}


li.banner {
  list-style-type: none;
  padding: 0;
  margin: 2em 2em 0 0;
}


div.banner {
  float:   left;
  margin:  0em 1em 1em 0em;
  padding: 0;
}


ul.horizontal {
  list-style-type: none;
  text-align: center;
  padding: 0;
  margin: 0;
  display: inline;
}

/*
The buttons of the site
*/
.active_button, .passive_button, .active_button a, .passive_button div.tab_text {
  width: 200px;                 /*## button width */
  height: 40px;                 /*## button height */
  white-space: nowrap;
}

.active_button, .passive_button {
/*  margin: 10px 0 10px 20px;*/
  margin-bottom: 10px;
  padding: 0;
  _overflow: hidden;
  background-image: url(/static/themes/button.png);
  background-repeat: no-repeat;
  background-position: 0 0;
}

.active_button a, .passive_button div.tab_text {
  display: block;
  width: 170px;                 /*## button width  - left-padding*/
  height: 28px;                 /*## button height - top-padding*/
  margin: 0;
  padding: 12px 0px 0px 30px;
  font-weight: bold;
  color: #fbfbfb;
  text-decoration: none;
  background-color: transparent;
}

.active_button {
  background-image: url(/static/themes/button.png);
  background-repeat: no-repeat;
  background-position: 0 0;
}

.passive_button {
  background-image: url(/static/themes/button.png);
  background-repeat: no-repeat;
  background-position: 0 -40px;  /*## button height */
}

.active_button:hover {
  background-image: url(/static/themes/button.png);
  background-position: 0 -40px;  /*## button height */
}

/*
The tabs of the site
*/
div.tab_text {
  display: inline;
  margin: 0;
  padding: 0;
  white-space: nowrap;
  cursor: default;
}

li.active_tab {
  margin: 0;
  padding: 0;
  white-space: nowrap;
}

li.passive_tab {
  margin: 0;
  padding: 0;
  white-space: nowrap;
}

ul li.active_tab, ul li.passive_tab {
  float: right;
  _display: inline;
  list-style-type: none;
  padding: 0;
  margin: 0 11px 0 1px; /* 1px space between neighbouring tabs 10px space for "sliding-door" */
  _margin: 0px 1px 0px 1px;
  _height: 40px;
  _overflow: hidden;
  background-repeat: no-repeat;
  background-position: 0 0;
}

ul li.active_tab {
  background-image: url(/static/themes/tab_selectable_begin.png);
}

ul li.passive_tab {
  background-image: url(/static/themes/tab_unselectable_begin.png);
}

ul li.active_tab a, ul li.passive_tab div.tab_text {
  display: block;
  padding: 8px 10px 8px 10px; /* horizontal and vertical positioning of text */
  margin: 0 -10px 0 0;        /* take the 10px space for the "sliding-door" */
  _margin: 0;
  _width: 0;
  height: 24px;               /* 24px+8px+8px = 40px height of image        */
  _height: 40px;              /*## height of tab image*/
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: right 0;
  white-space: nowrap;
  font-weight: bold;
  color: #fbfbfb;
  text-decoration: none;
}

ul li.active_tab a {
  background-image: url(/static/themes/tab_selectable_end.png);
}

ul li.passive_tab div.tab_text {
  background-image: url(/static/themes/tab_unselectable_end.png);
}

ul li.active_tab:hover {
  background-image: url(/static/themes/tab_selectable_begin.png);
  background-position: 0 -40px;      /*## height of tab image*/
}

ul li.active_tab:hover a {
  background-image: url(/static/themes/tab_selectable_end.png);
  background-position: right -40px;  /*## height of tab image*/
}


/*******************************************************************************
form styles needed for django
********************************************************************************/
ul.errorlist {
  list-style-type: none;
  text-align: left;
  padding: 0;
  margin: 0;
  display: inline;
}

ul.errorlist li {
  color: #ff0000;
}

p.error {
  color: #ff0000;
}

hr.vspace {
  size:2em;
  width:0;
}

table.form, table.address {
  outline-style: none;
  text-align: left;
  padding: 0;
  margin: 2em 0 2em 0;
  border: 0;
  cellpadding: 0;
  cellspacing: 0;
  frame: void;
  rules: none;
}


table.address tr td {
  margin: 0;
  padding: 0;
}


table.address tr td.bold {
  font-weight: bold;
}


table.address tr td.indent {
  padding: 0 2em 0 3em;
}


table.products {
  outline-style: none;
  text-align: left;
  padding: 0;
  margin: 2em 0 2em 0;
}

table.products tr th.visible {
  color: #fbfbfb;
  background-color: #1e6a2c;
  font-weight:bold;
  text-align: right;
  padding: .5em 1em .5em 1em;
}

table.products tr td.visible {
  background-color: #eeffdd;
  text-align: right;
  padding: 0 1em 0 1em;
}

table.products tr th.hidden {
  font-weight:bold;
  text-align: left;
  padding: .5em 1em .5em 1em;
}

table.products tr td.hidden {
  text-align: left;
  padding: 0 1em 0 1em;
}

div.form_container {
  margin-left: 1em;
  text-align:  left;
}

div.form_headline {
  margin: 1.5em 0 .8em 0;
}

div.checkbox_select_multiple ul {
  list-style-type:none;
  margin: 2em 0 2em 0;
}

/*******************************************************************************
footerlist
********************************************************************************/
li.alignleft, li.alignright {
  list-style-type: none;
  padding: 0;
  color: #fbfbfb;
}

li.alignleft {
  float: left;
  margin: 0 2em 0 0;
}

li.alignright {
  float: right;
  margin: 0 0 0 2em;
}

/*******************************************************************************
the link box on the left side of the main area
********************************************************************************/
.link_box {
  width: 240px;  /*## button width + div.body margin to make left and right margin equal (not neccessary)*/
  height: 300px;
  padding: 0;
  margin: 0;
}


.dialog_area {
  margin:-300px 0 0 0; /*put dialog area at the right side of link_box*/
}

/*******************************************************************************
box with rounded corners
********************************************************************************/
.dialog {
  padding:0;
  margin:0 0 0 240px; /*## width of link_box*/
  min-width: 360px;
  max-width: 1400px; /* I only cut the left background images out to 800px. You could do much larger, etc. */
/*  _width:expression(((document.compatMode && document.compatMode=='CSS1Compat') ? document.documentElement.clientWidth : document.body.clientWidth) > 1783 ? "1400px" : (((document.compatMode && document.compatMode=='CSS1Compat') ? document.documentElement.clientWidth : document.body.clientWidth) < 743 ? "360px" : "auto"));*/
  color: #000000;
}

.dialog .hd .c,
.dialog .ft .c {
  font-size: 1px; /* ensure minimum height */
  height: 11px;
}

.dialog .ft .c {
 height: 11px;
}

.dialog .hd {
  background-image: url(/static/themes/tl001.png);
  background-repeat: no-repeat;
  background-position: 0 0;
  margin-right: 11px; /* space for right corner */
}

.dialog .hd .c {
  background-image: url(/static/themes/tr001.png);
  background-repeat: no-repeat;
  background-position: right 0;
  margin-right: -11px; /* pull right corner back over "empty" space (from above margin) */
}

.dialog .bd {
  background-image: url(/static/themes/ml001.png);
  background-repeat: repeat-y;
  background-position: 0 0;
  margin-right: 11px;
}

.dialog .bd .c {
  background-image: url(/static/themes/mr001.png);
  background-repeat: repeat-y;
  background-position: right 0;
  margin-right: -11px;
}

.dialog .bd .c .s {
  margin:0 8px 0 8px;
  padding: 1em;
}

.dialog .ft {
  background-image: url(/static/themes/bl001.png);
  background-repeat: no-repeat;
  background-position: 0 0;
  margin-right: 11px;
}

.dialog .ft .c {
  background-image: url(/static/themes/br001.png);
  background-repeat: no-repeat;
  background-position: right 0;
  margin-right: -11px;
}
