body {
  margin: 0;
  padding: 8px 0 0 0;
  font-family: "Lucida Grande", Verdana, sans-serif;
  font-size: small;
  line-height: 1.5;
  text-align: left;
  color: #333;
  background-color: #fff;
  }
/*-----------------------------------------------------------------------------

  hyperlinks
-----------------------------------------------------------------------------*/
a:link,
a:visited {
  color: #00f;
  text-decoration: none;
  }
a:hover {
  text-decoration: underline;
  }
/*-----------------------------------------------------------------------------

  link & image
-----------------------------------------------------------------------------*/
a img {
  border: none;
  }
/*-----------------------------------------------------------------------------

  external links - http://www.maxdesign.com.au/presentation/external/
-----------------------------------------------------------------------------*/
a.external span {
  position: absolute;
  left: -5000px;
  width: 4000px;
  }
a.external:link {
  background: url(images/bg_external.gif) no-repeat 100% 0; 
  border: 0px none;
  padding: 0 20px 0 0;
  }
a.external:visited {
  background: url(images/bg_external.gif) no-repeat 100% -100px;
  padding: 0 20px 0 0;
  }
a.external:hover {
  background: url(images/bg_external.gif) no-repeat 100% -200px;
  padding: 0 20px 0 0;
  }
/*-----------------------------------------------------------------------------

  generic stuff
-----------------------------------------------------------------------------*/
hr {
  display: none;
  }
p {
  margin: 0;
  padding: .5em 0;
}
h1 {
  font-size: 180%;
  font-weight: normal;
  color: #666;
  }
h2 {
  color: #310;
  font-weight: normal;
  margin-bottom: 1em;
  padding-bottom: 0;
  text-shadow: #fff 0px 1px 1px;
  }
h3 {
  padding-top: 0em;
  padding-bottom: 0;
  margin-bottom: 0;
  color: #999;
  font-size: 110%;
  text-transform: uppercase;
  font-weight: normal;
  letter-spacing: 1px;
}
address {
  font-style: normal;
  padding-bottom: 2em;
}
/*-----------------------------------------------------------------------------

  logo
-----------------------------------------------------------------------------*/
#logo {
  width: 750px;
  margin: 2em 0;
  }
#logo span, #logo a {
  display: block;
  float: right;
  width: 140px;
  height: 40px;
  background: transparent url(images/logo.jpg) top left no-repeat;
  outline: none; /* hides linkborders in FF */
  }
#logo img  {
  display: block;
  width: 0;
  }
#logo a:hover {
  background: url(images/logo_hover.jpg) top left no-repeat;
  }
  

/*----------------------------------------------------------------------------

  flash messages
-----------------------------------------------------------------------------*/
#form_error_message {
	background-color: #fee;
	font-weight: bold;
	color: #ff0000;
	border: 1px solid #fcc;
	border-right: 1px solid #faa;
	border-bottom: 1px solid #faa;
	padding: 0px 10px 0 10px;
	line-height: 18px;
	margin: 0 60px 2em 250px;
	width: 480px;
}

#form_error_message p, #login_form_error_message p {
	font-weight: bold;
	color: #a00;
	padding: 3px 0;
	background: #fee url(../images/warning.gif) 9px 5px no-repeat;
	padding: 5px 27px 5px 36px;
}

#flash_error {
	font-weight: bold;
	color: #a00;
	background: #fee url(../images/warning.gif) 9px 10px no-repeat;
	padding: 9px 27px 9px 36px;
	border: 1px solid #fcc;
	border-right: 1px solid #faa;
	border-bottom: 1px solid #faa;
	line-height: 22px;
	/* margin: 9px 0 27px 0; */
	margin: 9px 60px 27px 250px;
	width: 500px;
}

#flash_success {
	font-weight: bold;
	color: #390;
	border: 1px solid #C6E897;
	background: #f3ffe0 url(../images/success.gif) 9px 10px no-repeat;
	padding: 9px 27px 9px 36px;
	border: 1px solid #C6E897;
	border-right: 1px solid #8AD32F;
	border-bottom: 1px solid #8AD32F;
	line-height: 22px;
	/* margin: 9px 0 27px 0; */
	margin: 9px 60px 27px 250px;
	width: 500px;
}
  
  
/*-----------------------------------------------------------------------------

  projects
-----------------------------------------------------------------------------*/
#projects {
  background: #FFF8EC; /* switch to #eee (or sth similar along those lines) to get grey background (#ffd for yellow) for projects */
  padding: 16px 0 4em 250px;
  margin: 0 0 3em 0;
  }
#projects h2 {
  width: 500px;
  }
dl {
  margin: 0;
  padding: 0;
  width: 500px;
  }
dt {
  margin: 0;
  padding: 0;
  float: right;
  clear: right;
  padding-top: 1em;
  }
dt a {
  display: block;
  margin: 0 0 2px 10px;
  padding: 2px;
  border: 3px solid #ddd;
  background: #fff;  
  }
dt a:hover {
  padding: 2px;
  border-color: #fff;
  background: #fff;  
  }
dd {
  margin: 0;
  padding: 0;  
  }
dd.link {
  padding-top: 1em;
  }
dd em {
  color: #999;
  padding-top: .5em;
  font-style: normal;
  text-transform: uppercase;
  font-size: 84%;
  letter-spacing: 1px;
  }
dd.responsibilities {
  margin: .5em 0 .5em 0;
  }
dd.information {
  font-size: 90%;
  padding-bottom: 1em;
  }
/*-----------------------------------------------------------------------------

  content
-----------------------------------------------------------------------------*/
#content {
  width: 750px;
  }
#content h1,
#content h2,
#content h3,
#content ul,
#content address,
#content p {
  margin-left: 250px;
  margin-right: 60px;
  }
#impressum #content h3,
#impressum #content p {
  margin-right: 30px;
}
#about, #content {
  padding: 0 0 2em 0;
  }
ul {
  margin: .5em 0;
  padding: 0;
  }
li {
  padding: 0 0 1em 0;
  }
li em {
  font-style: normal;
  font-weight: bold;
  color: #000;
}

/*-----------------------------------------------------------------------------

  contact form
-----------------------------------------------------------------------------*/
form {
  padding: 1.5em 0 0 0;
}
label {
  width: 230px;
  text-align: right;
  float: left;
  color: #777;
  display: block;
  margin: 5px 0 0 0;
  font-weight: bold;
  }
input.inset, textarea.inset {
  font-size: 140%;
  display: block;
  margin: 0 0 1.5em 250px;
  background: #f2f2f2;
  border: 1px solid #ddd;
  border-left: 1px solid #bbb;
  border-top: 1px solid #bbb;
  width: 350px;
  padding: 2px;
  font-family: "Lucida Grande", Verdana, sans-serif;
  }
input.button {
  margin: 0 0 1.5em 250px;
  }
input:focus,
textarea:focus {
  background-color: #FFF7F6;
  border-color: #f96;
  border-left: 1px solid #fc9;
  border-top: 1px solid #fc9;
  }
/*-----------------------------------------------------------------------------

  footer
-----------------------------------------------------------------------------*/
#footer {
  margin: 1em 0 0 250px;
  padding: 0 0 6em 0;
  width: 500px;
  font-size: 90%;
  }
#footer p {
  float: right;
  }
#footer p.copyright {
  width: 250px;
  height: 16px;
  position: relative;
  float: left;  
  }
#footer p.copyright span {
  position: absolute;
  width: 100%;
  height: 100%;
  background: #fff url(images/logo_footer.gif) top left no-repeat;
  }
#footer p a {
  color: #999;
  }
/*-----------------------------------------------------------------------------

  self-clearing floats
-----------------------------------------------------------------------------*/
#logo:after,
#footer p.copyright:after {
  content: "."; 
  display: block; 
  height: 0; 
  clear: both; 
  visibility: hidden;
  }
