/* -----------------------------------------------------------------------------------------
  DECAF° agentur für digitale kommunikation
  www.decaf.de
  ----------------------------------------------------------------------------------------- */



/* -----------------------------------------------------------------------------------------
  general
  ----------------------------------------------------------------------------------------- */



/* --------------------------------------------------------
    html and body
  -------------------------------------------------------- */

  html {
    height: 100.1%; /* always show scrollbars */
  }


  body {
    background: #fff; color: #000;
    font-family: Georgia, "Times New Roman", Times, serif; font-size: 94%;
    margin: 0; padding: 0;
    width: 100%;
  }




/* --------------------------------------------------------
    typo
  -------------------------------------------------------- */

  p {
    font-size: 1em; line-height: 1.8em; font-weight: normal;
    margin: 0 0 1em 0; padding: 0;
  }
  .w-sidebar p {
    font-size: 0.91em;
  }
  #footer {
    font-size: 0.79em; line-height: 1.6em;
  }



  h5, h6 {
    font-family: "Gotham", Verdana, Helvetica, Arial, sans-serif;
    font-size: 0.91em; line-height: 1.5em; font-weight: bold;
    margin: 0 0 0.2em 0; padding: 0;
  }
  h3, h4 {
    font-family: "Gotham", Verdana, Helvetica, Arial, sans-serif;
    font-size: 1em; line-height: 1.2em; font-weight: bold;
    margin: 0 0 0.8em 0; padding: 0;
    color: #000;
  }
  h2 {
    font-family: "Gotham", Verdana, Helvetica, Arial, sans-serif;
    font-size: 1.2em; line-height: 1.2em;
    font-weight: bold;
    margin: 0 0 0.8em 0; padding: 0.3em 0;
    color: #000;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
  }
  h1,
  body#home h3 {
    font-family: "Gotham", Verdana, Helvetica, Arial, sans-serif;
    font-weight: bold;
    font-size: 1.8em;
    line-height: 1.2em;
    margin: 0 0 1em 0; padding: 0;
    color: #000;
    letter-spacing: -0.04em;
    position: relative; left: -2px;
	display: block;
	clear: both;
	zoom: 1;
  }
  body#home h1 {
    left: 0;
  }

  .w-full h1,
  .w-full h2,
  .w-full h3,
  .w-full h4,
  .w-full h5,
  .w-full h6,
  .w-content h1,
  .w-content h2,
  .w-content h3,
  .w-content h4,
  .w-content h5,
  .w-content h6,
  .w-sidebar h1,
  .w-sidebar h2,
  .w-sidebar h3,
  .w-sidebar h4,
  .w-sidebar h5,
  .w-sidebar h6 {
    margin-left: 0;
  }

  body#home h1,
  body#home h2 {
    margin: 0;
    padding: 0;
    border: 0;
  }



/* --------------------------------------------------------
    links
  -------------------------------------------------------- */

  a {
    color: #C00418;
    text-decoration: none;
    border-bottom: 1px dotted #999;
    font-style: italic;
  }
  a:hover,
  a:focus {
    text-decoration: none;
    border-bottom: 1px solid #999;
    color: #EE7F00;
    outline: none;
  }


  a.more {
    font-weight: bold;
  }

  .noscreen {
    position: absolute; left: -990px; width: 990px;
    overflow: hidden;
    z-index: -1; /* opera */
    border: 0; /* opera */
  }


/* --------------------------------------------------------
    images
  -------------------------------------------------------- */

  img {
    border: 0;
    padding: 0;
    margin: 0;
    display: block;
  }
  img.inline {
    display: inline;
  }



/* -----------------------------------------------------------------------------------------
    vcard
  ----------------------------------------------------------------------------------------- */

  .vcard {
    margin: 0 0 0.5em 0;
  }
  .vcard .adr .country-name {
    display: none;
  }






  #site-wrapper {
    min-width: 800px;
    padding-bottom: 20px;
    position: relative; /* make parent */
    border-top: 1px solid black; /* avoid opera bug */
  }

  #site {
    width: 800px;
    margin: 0 auto;
  }


  body#home h1,
  body#home h2 {
    margin: 0;
    padding: 0;
  }
  img#logo {
    margin: 0 0 20px 0;
  }
  img#slogan {
    position: absolute;
    left: 540px;
    top: -141px;
    z-index: 20;
  }


  #content {
    width: 745px; /* +5 gentle px */
    margin: 0 0 0 30px; /* 44-30px */
    padding-top: 55px;
	zoom: 1;
  }


  .block {
    clear: both;
    margin: 0 0 3em 0;
	zoom: 1;
  }
  .block:after {
    content: " "; clear: both; display: block; height: 0; overflow: hidden; visibility: hidden;
  }


  .w-full {
    width: 710px;
    margin: 0 0 0 0;
    overflow: hidden;
    float: left;
  }
  .w-full a {
    position: relative; z-index: 10000;
    display: block;
    border: none;
  }

  .w-content {
    width: 480px;
    margin: 0 20px 0 0;
    padding-right: 2px;
    overflow: hidden;
    float: left;
  }

  .w-sidebar {
    width: 210px;
    margin: 0 0 0 0;
    overflow: hidden;
    float: left;
  }



  #footer {
    clear: both;
    width: 770px;
    margin: 0 0 0 30px;
  }


  ul.news {
    padding: 0;
    margin: 0;
  }
  ul.news li {
    padding: 0;
    margin: 0 0 1em 0;
    list-style-type: none;
  }

  img.homepage {
    margin: 10px 0 0 0;
  }
	a#homepage_teaser {
		border: 0;
	}

  p.download {
    background: url(/static/images/icon-download.png) no-repeat;
    height: 28px;
    display: block;
    color: #666;
    margin-left: 1em;
  }
  p.download a {
    margin: 0 5px 0 32px;
    display: inline;
  }

  p.info {
    background: url(/static/images/icon-info.png) no-repeat;
    height: 28px;
    display: block;
    color: #666;
    margin-left: 1em;
  }

  p.info a {
    margin: 0 5px 0 32px;
  }

  p.ok {
    background: url(/static/images/icon-info.png) no-repeat;
    display: block;
    color: #666;
    padding-left: 3em;
  }

  p.err {
    background: url(/static/images/icon-info.png) no-repeat;
    display: block;
    color: #666;
    margin-left: 1em;
  }


	div.block ul {
    margin-left: 0;
    padding-left: 3px;		
	}
  div.block ul li {
    padding: 0 0 0 20px;
    margin: 0 0 0.5em 0;
    list-style-type: none;
    line-height: 1.2em;
	background: url(/static/images/bullet.plus.gif) 0 3px no-repeat;
  }


  #gmap_container {
    xdisplay: none;
  }

  #gmap {
    width: 100%;
    height: 300px;
  }

   ul.decaf_gallery {
    margin: 0 !important;
    padding: 0 !important;
   }

   ul.decaf_gallery li {
    float: left;
    list-style-type:  none !important;
    margin: 0 !important;
    padding: 0 !important;
   }

   div.block ul.decaf_gallery li:before {
     content: "";
   }

   ul.decaf_gallery li a {
     display: block;
     text-decoration: none !important;
     border: none !important;
     margin: 2px 4px 2px 0 !important;
     padding: 2px !important;
   }

   ul.decaf_gallery li a:hover {
     background-color: #C00418;
     text-decoration: none !important;
   }

/* -----------------------------------------------------------------------------------------
  extras
  ----------------------------------------------------------------------------------------- */

  div#header {
    background: #000;
    width: 800px;
  }

  div#header img#claim_header {
    float: left;
    margin: 40px;
  }

  div#header img#logo {
    float: right;
    margin: 45px 40px 40px;
  }

  #navigation {
    z-index: 10;
    background: #000;
    position:relative;
    overflow: hidden;
  }

  #navigation ul {
    width: 600;
    height: 42px;
    display: block;
    padding: 0;
    margin: 0 26px;
    background: #000;
    /* overflow: hidden; */
    z-index: 50;
    float: left;
    position:relative;
  }

  div.product p {
    margin: 0 26px;
  }
  div.product ul {
    margin: 0 42px 0 26px;
  }

  #navigation ul li {
    float: left;
    list-style: none;
  }

  #navigation ul li a {
    text-indent: -1000px;
    display: block;
    float: left;
    height: 42px;
    position: relative;
    z-index: 70;
    overflow: hidden;
    border: 0;
    outline: none;
  }

  #nav_0_de a {
    background: url('../images/nav_0_de.png') no-repeat center;
    width: 114px;
    height: 42px;
  }

  #nav_0_en a {
    background: url('../images/nav_0_en.png') no-repeat center;
    width: 82px;
    height: 42px;
  }

  #nav_2_de a {
    background: url('../images/nav_2_de.png') no-repeat center;
    width: 108px;
    height: 42px;
  }

  #nav_2_en a {
    background: url('../images/nav_2_en.png') no-repeat center;
    width: 107px;
    height: 42px;
  }

  #nav_3_de a {
    background: url('../images/nav_3_de.png') no-repeat center;
    width: 99px;
    height: 42px;  }

  #nav_3_en a {
    background: url('../images/nav_3_en.png') no-repeat center;
    width: 94px;
    height: 42px;
  }

  #nav_4_de a {
    background: url('../images/nav_4_de.png') no-repeat center;
    width: 237px;
    height: 42px;
  }

  #nav_4_en a {
    background: url('../images/nav_4_en.png') no-repeat center;
    width: 202px;
    height: 42px;
  }

  #navigation li.background {
    background: url('../images/nav_bg_hi_r.png') no-repeat top right;
    z-index: 65;
    position: absolute;
    visibility: hidden;
  }

  #navigation .background .left {
    background: url('../images/nav_bg_hi.png') no-repeat top left;
    height: 48px;
    margin-right: 13px;
  }


  ul#langchooser {
    height: 42px;
    width: 106px;
    display: block;
    padding: 0;
    margin: -2px 40px 0 0;
    background: #000;
    overflow: hidden;
    float: right;
  }



/* -----------------------------------------------------------------------------------------
  Formular
  ----------------------------------------------------------------------------------------- */

  /*
  =================================================================
  Basisstyleangaben - Vorsicht mit Änderungen!
  basic styles - be careful with changes!
  ================================================================= */


  /*
  -----------------------------------------------------------------
  form
  ----------------------------------------------------------------- */

  form.dm_form {
    width: 100%;
    font-family: "Gotham", Verdana, Helvetica, Arial, sans-serif; font-size: 0.91em;
    margin: 0;
    padding: 0;
    border: 0;
  }
  form.dm_form div.form_wrapper {
    margin: 0 -1%;
    padding: 0;
	zoom: 1;
  }
  form.dm_form fieldset {
    clear: both;
    margin: 0 0 20px 0;
    padding: 0;
    border: 0;
  }


  /*
  ---------------------------
  labels and wrappers
  --------------------------- */

  form.dm_form label {
    margin: 0 1%;
    padding: 0;
    border: 0;
    float: left;
    display: table;
    width: 1%;
  }
  form.dm_form span.wrapper {
    margin: 0;
    padding: 0;
    display: table-cell;
    width: 1%; /* firefox */
  }


  /*
  ---------------------------
  width
  --------------------------- */

  form.dm_form label.w100 {
    width: 98%;
    display: block;
  }
  form.dm_form label.w75 {
    width: 73%;
    display: block;
  }
  form.dm_form label.w50 {
    width: 48%;
    display: block;
  }
  form.dm_form label.w25 {
    width: 23%;
    display: block;
  }


  /*
  ---------------------------
  position
  --------------------------- */

  form.dm_form label.p25 {
    margin-left: 26%;
  }
  form.dm_form label.p50 {
    margin-left: 51%;
  }
  form.dm_form label.p75 {
    margin-left: 76%;
  }


  /*
  ---------------------------
  title and examples
  --------------------------- */

  form.dm_form label span.title {
  }
  form.dm_form label span.example {
    color: #999;
    font-style: italic;
  }


  /*
  ---------------------------
  input/select fields
  --------------------------- */

  form.dm_form label input.field,
  form.dm_form label select.field,
  form.dm_form label textarea.field {
    width: 100%;
    display: block;
    border: 1px solid #000;
    border-left: 3px solid #000;
    background: #eee;
    padding: 4px;
    font-family: "Gotham", Verdana, Helvetica, Arial, sans-serif; font-size: 1.2em;
    box-sizing: border-box;
    -moz-box-sizing: border-box; /* firefox */
    -webkit-box-sizing: border-box;
  }

  form.dm_form label select.field {
    padding: 4px 1px 1px 1px; /* have to try out */
  }

  /* Pflichtfelder
    mandatory fields */
  form.dm_form label.mandatory input.field,
  form.dm_form label.mandatory select.field,
  form.dm_form label.mandatory textarea.field {
    border: 1px solid #000;
    border-left: 8px solid #000;
  }
  form.dm_form label.mandatory span.title {
    font-weight: bold;
  }

  form.dm_form label input.field:focus,
  form.dm_form label select.field:focus,
  form.dm_form label textarea.field:focus {
    border-color: #000;
    background: #fff;
  }

  /* Kalenderfelder
    calendar fields */
  form.dm_form label.calendar input.field {
    padding-right: 25px;
  }


  /*
  ---------------------------
  checkboxes and radios
  --------------------------- */

  form.dm_form input.select {
    display: block;
    float: left;
    margin: 0;
  }


  /*
  ---------------------------
  submit button
  --------------------------- */

  form.dm_form input.submit {
    width: 100%;
    background: #000;
    color: #fff;
    padding: 2px 0;
    font-size: 1em;
  }

  form.dm_form input.submit:hover,
  form.dm_form input.submit:focus {
    background: #c50105;
    /* cursor: pointer;  sorry, can't use that one in front of Opera */
  }


  /*
  ---------------------------
  errors
  --------------------------- */

  form.dm_form label.error input.field,
  form.dm_form label.error select.field,
  form.dm_form label.error textarea.field {
    border-color: #dd1100 !important;
  }

  form.dm_form label.error span.title {
    color: #dd1100 !important;
  }


  /*
  ---------------------------
  additional styles for
  input/select fields
  --------------------------- */

  form.dm_form label.inputselect span.title {
    margin: 0 0 2px 0;
    display: table; /* act as inline-block */
  }

  form.dm_form label span.title:hover,
  form.dm_form label span.title:focus {
    color: #000;
    cursor: pointer;
  }

  form.dm_form label br {
    margin: 0 0 2px 0;
  }


  /*
  ---------------------------
  additional styles for
  checkboxes and radios
  --------------------------- */

  form.dm_form label.wauto {
    width: auto;
    margin-right: 15px;
  }
  form.dm_form label.radiocheck {
    margin-bottom: 10px;
  }
  form.dm_form label.radiocheck span.wrapper {
    padding-right: 0;
  }
  form.dm_form label.wauto span.wrapper {
    display: inline;
  }
  form.dm_form label.radiocheck span.title {
    display: block;
    margin: 0 0 0 20px;
    padding: 0;
  }


  /*
  ---------------------------
  clearing elements
  --------------------------- */

  .clear {
    clear: both;
    display: block;
    padding: 0 0 10px 0;
  }
  .mb0 {
    margin-bottom: 0 !important;
  }

  .pb20 {
    padding-bottom: 20px !important;
  }


  /*
  ---------------------------
  form content
  --------------------------- */

  form.dm_form p,
  form.dm_form h3 {
    margin: 0 1% 10px 1%;
  }

  div.errors {
    display: none; /* JS toggle */
    margin: 0 1% 30px 1%;
    padding: 5px 10px;
    background: #dd1100;
  }
  div.errors p {
    color: #fff;
    margin: 0 0 0.5em 0;
  }
  div.errors ul {
    margin: 0 0 0 1.6em;
    padding: 0;
  }
  div.errors ul li {
    margin: 0;
    padding: 0;
    color: #fff;
    list-style-type: square;
  }

  p.err {
    padding-left: 3em;
    padding-bottom: 1em;
  }





  /* DECAF */

  a#decafmedia,
  a#decafmedia:hover,
  a#decafmedia:focus {
      width:12px;
      height:64px;
      border:0;
      margin-top:-64px;
      position: absolute; left: 5px;
      text-decoration:none;
      border:none;
      background:none;
      outline: none;
  }

  div.clear { clear: both; }

