/* ------------------------------- :::: denkfabrik 2013 :::: ------------------------------- */

/*------ GRUNDGERÜST ----- */
body {
  font: 0.9em 'Source Sans Pro', Helvetica, Geneva, sans-serif;
  line-height: 1.3em;
  padding: 0;
  margin: 0;
  color: #818487;
  background: #fff;
  text-align: center;
}

h1, h2 {
  padding: 0.5em 1em;
  margin: 0;
  color: #43464C;
  font-size: 1.4em;
  line-height: 1.2em;
}

iframe {
  margin: 0 10px 1em 0 !important;
}

.wrapper h1, .wrapper h2 {
  margin: 0 0 1em 0;
  padding: 0;
  font-size: 1.5em;
  line-height: 1.2em;
  border-bottom: 1px solid #a41e36;  
  color: #a41e36;
  display: inline-block;
  font-weight: bold;
}

.inhalt #c89 .csc-textpic-imagecolumn {border: none !important;}

p {padding: 0 0 1em 0;margin: 0;}
a img {border: none;}
img {vertical-align: bottom; max-width: 100%; width: auto; height: auto;}
a {text-decoration: none;}
a:link, a:visited {color: #a41e36;}
a:hover {color:#818487;}

.clear {
  clear: both;
  line-height: 0;
  height: 0;
  font-size: 0;
}

.spalte-links  {
  float: left;
  width: 48%;
}
.spalte-rechts {
  float: right;
  width: 48%;
}

.slider {
  position: relative;
  width: 100%;
  z-index: 1;
  border-bottom: 7px solid #a41e36;

}

#header {
  position: relative;
  padding: 1em;
  background: #a41e36;
  margin: 0;
  padding: 0;
  width: 100%;
}

.header-inner {
  max-width: 980px;  
  margin: 0 auto;
}

#logo {
  float: left;
  padding: 0 0 0.5em 0;
}

.box {
  float: left;
  width: 32%;
  padding: 0;
  padding: 0.5%;  
}

.box h2, .box h2 a {
  color: #ececec;  
  text-align: center;
  font-size: 1em;
  padding: 0.5em;
}

.wrapper {
  position: relative;
  z-index: 2;
  margin: 2em auto 1em;
  width: 100%;
  max-width: 980px;
  padding: 0;
  text-align: left;
}

.links {
  float: left;
  width: 21%;
}

.inhalt {
  width: 75%;
  float: right;
  padding: 0 0 25px 0\9;
}

.inhalt .csc-textpic-imagecolumn {
  border: 0.5em solid #F0F0F0 !important; 
}

.rot{
  color: #9D2235;  
}

.pfeilunten {
  width: 26px;
  height: 26px;
  position: absolute;
  right: 15px;
  top: -30px;
  cursor: pointer;
}

.pfeiloben {
  width: 26px;
  height: 26px;
  position: absolute;
  right: 15px;
  top: -30px;
  cursor: pointer;
  display: none;
}

#footer{
  background: #009B77;  
  margin: 2em 0 0 0;
  font-size: 0.9em;
  -webkit-border-radius: 1px;
  -khtml-border-radius: 1px;
  -moz-border-radius: 1px;
  border-radius: 5px;  
  color: #ECECEC;
}

.printfooter {
  padding: 1em;
  background: #ececec;
  -webkit-border-radius: 1px;
  -khtml-border-radius: 1px;
  -moz-border-radius: 1px;
  border-radius: 5px;  
}

.copy {
  float: left;  
  margin: 0.4em 0;  
  padding: 0.4em 0.8em;  
}

.link {
  float: left;  
  margin: 0.4em 0;
  padding: 0.4em 0.8em; 
  border-left: 1px solid #ECECEC; 
}

.socialmedia {
  float: right;
  padding: 0.5em;  
}

.socialmedia .none {
  display: none;  
}

#footer a {
  color: #ECECEC;
}


.oben {
  display: none;  
}

.inhalt ul, .inhalt ol {
  padding: 0 0 0 15px;
  margin: 0 0 15px 0;
}

.inhalt li {
  list-style: circle;  
}

.oben-rechts {
  float: right;  
}

.printfooter td {
  padding: 0.5em;  
}

.wrapper .csc-frame-frame1 {
  background: url(../images/en.jpg) left top no-repeat #ececec;
  padding: 2em 1em 1em 1em;
  margin: 0.6em 0;
  -webkit-border-radius: 1px;
  -khtml-border-radius: 1px;
  -moz-border-radius: 1px;
  border-radius: 5px;
}

.kontaktbox {
  background: #ececec;
  padding: 1em;
  margin: 0;
  -webkit-border-radius: 1px;
  -khtml-border-radius: 1px;
  -moz-border-radius: 1px;
  border-radius: 5px;
}

.elastic-video {
  position: relative;
  padding-bottom: 55%;
  padding-top: 15px;
  height: 0;
  overflow: hidden;
  margin: 0 0 1em 0;
}

.elastic-video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

UL.csc-uploads {
  padding: 0 0 15px 0;
  margin: 0;
}

UL.csc-uploads LI {
  background: url(../images/icon-sprites.png) no-repeat;
  padding-left: 25px;
  padding-bottom: 7px;      
  background-position: 0 0;  
  margin: 0;
}

UL.csc-uploads LI a, UL.csc-uploads SPAN.csc-uploads-fileName {
  text-decoration: none;
  font-weight: bold;
}

/*------ NEWS ----- */
.news-list-item  {
  padding: 0 0 0.5em 0;
  margin: 0 0 0.5em 0;  
  border-bottom: 1px solid #ececec;
}

.news-list-item:last-child {
  border: none;  
}

.news-single-img {
  float: left;
  padding: 0 2em 0 0;
}

.flexslider  {
  width: 100%;
  height: auto;
}

.flexslider {margin: 0; padding: 0;}
.flexslider .slides > figure {display: none; -webkit-backface-visibility: hidden; margin: 0;}
.flexslider .slides img {width: 100%; display: block; height: auto; min-height: auto;}
.flex-pauseplay span {text-transform: capitalize;}

.slides:after {content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0;} 
html[xmlns] .slides {display: block;} 
* html .slides {height: 1%;}

.flex-viewport {max-height: 2000px; -webkit-transition: all 1s ease; -moz-transition: all 1s ease; transition: all 1s ease;}
.flexslider .slides {zoom: 1; position: relative; z-index: 1;}

.flex-direction-nav, .flex-direction-nav li {display: none;}

/*------ NAVIGATION ----- */
#navi {
  text-transform: uppercase;
  border-bottom: 1px solid #ececec;
}

#navi ul, #subnavi ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

#navi ul li, #subnavi ul li {
  float: left;
  display: block;
  padding: 0 0.5em 0 0;
  position: relative;
  z-index: 8;
}

.navilink a:link, .navilink a:visited {
  width: 8em;
  float: left;
  color: #ececec;
  padding: 2.5em 0 1em 0;
  margin: 0;
  text-align: center;
}
.navilink a:hover, .navilinkaktiv a:link, .navilinkaktiv a:visited  {
  width: 8em;
  float: left;
  color: #ececec;
  padding: 2.5em 0 1em 0;
  margin: 0;
  text-align: center;
}

#navi ul li ul {
  position: absolute;
  left: 0;
  top: -0.2em;
  margin: 3.9em 0 0 0;
  padding: 1.1em 0 0 0;
  display: none;
}

#navi ul li ul li {
  border-top: 1px solid #ececec;
  border-left: 1px solid #ececec;
  border-right: 1px solid #ececec;  
  background: #ececec;
  padding: 0;
}

.subnavilink a:link, .subnavilink a:visited {
  padding: 0.5em;   
  color: #818487;
  background: #f0f0f0;
}

.subnavilink a:hover, .subnavilinkaktiv a:link, .subnavilinkaktiv a:visited {
  background: #a41e36;
  color: #fff;
  padding: 0.5em;     
}

#subnavi ul li {
  padding: 0;
  border: none;
  display: block;
  width: 100%;
}

.sublink a:link, .sublink a:visited {
  border-bottom: 1px solid #ececec;
  padding: 0.5em 1em;
  display: block;
  color: #9D2235;  
}

.sublink a:hover, .sublinkaktiv a:link, .sublinkaktiv a:visited {
  border-bottom: 1px solid #818487;    
  padding: 0.5em 1em;
  background: #F0F0F0;
  display: block;  
  color: #9D2235;
}

#navi select {
  margin: 1em; 
  background: #F0F0F0;
  color: #818487;
  border: 1px solid #9D2235;
}

/*------ KONTAKT ----- */
.tx-powermail fieldset {margin: 0;padding: 0;border: none;}
.tx-powermail form {margin: 0;padding: 0;}
.tx-powermail legend, .tx-powermail h3 {display: none;}

.powermail_message.powermail_message_error {
  display: none;  
}

.tx-powermail label {
  display: block;
  float: left;
  width: 80px;
  font: 0.9em 'Source Sans Pro', Helvetica, Geneva, sans-serif;
  line-height: 18px;
  color: #818487;
}

.tx-powermail input {
  width: 180px;
  margin: 2px 0 0 0;
  padding: 0;
  border: 1px solid #818487;
  height: 16px;
  font: 0.7em 'Source Sans Pro', Helvetica, Geneva, sans-serif;
  color: #818487;
  background: #ffffff;
}

.tx-powermail .powermail_submit {
  width: 182px;
  margin: 10px 0 20px 80px;
  border: none;
  height: 25px;
  font: 0.9em 'Source Sans Pro', Helvetica, Geneva, sans-serif;
  color: #fff;
  font-weight: bold;
  background: #9D2235;  
  cursor: pointer;
}

.tx-powermail textarea {
  width: 180px;
  border: 1px solid #818487;
  margin: 2px 0 0 0;
  padding: 0;
  height: 160px;
  font: 0.7em 'Source Sans Pro', Helvetica, Geneva, sans-serif;
  color: #818487;
  overflow: auto;
  background: #ffffff;
}

.powermail_mandatory_js {
  color: #f00000;
  padding: 0 0 4px 80px;
  font-size: 10px;
}

.inhalt table {
  padding: 0;
  margin: 0 0 1em 0;
  border-top: 1px solid #ECECEC;  
  border-left: 1px solid #ECECEC;  
  border-collapse: collapse;
}

.inhalt table td {
  margin: 0;
  padding: 5px;
  border-bottom: 1px solid #ECECEC;  
  border-right: 1px solid #ECECEC;    
  vertical-align: top;
}

#powermaildiv_uid19, #powermaildiv_uid25 {
  font-weight: bold;
  padding: 0.5em 0;
}

#powermaildiv_uid28 {
  padding: 0.5em 0;  
}

#c112 .powermail_fieldset_2 label {
  width: 230px;  
}

.tx-powermail-pi1 select {
  width: 182px;
  margin: 2px 0 0 0;
  padding: 0;
  border: 1px solid #818487;
  height: 18px;
  font: 0.7em 'Source Sans Pro', Helvetica, Geneva, sans-serif;
  color: #818487;
  background: #ffffff;
}

/*------ Accordion ----- */
.accordion-box {
  padding: 1em 0 0 0;  
}

.accordion-box h2 {
  padding: 0.4em 0.4em 0.5em 0.5em;
  margin: 0 0 0.5em 0;  
  cursor: pointer;
  background: #A41E36;
  color: #ECECEC;
  -webkit-border-radius: 1px;
  -khtml-border-radius: 1px;
  -moz-border-radius: 1px;
  border-radius: 5px;   
  border-bottom: 1px solid #ececec;
  width: 97.5%;
}

.ui-icon-triangle-1-s {
  width: 26px;
  height: 26px;
  margin: 0 0 0 0.5em;
  background: url(../images/tab-oben.png) right top no-repeat;
  float: right;
}

.ui-icon-triangle-1-e {
  width: 26px;
  height: 26px;
  margin: 0 0 0 0.5em;  
  background: url(../images/tab-unten.png) right top no-repeat;
  float: right;
}

/*------ ICON-SET ----- */
.pdf-icon, .word-icon, .excel-icon, .text-icon, .bild-icon, .film-icon, .mail-icon, .telefon-icon,
.kommentar-icon, .lupen-icon, .drucker-icon, .info-icon, .hilfe-icon  {
  background: url(../images/icon-sprites.png) no-repeat;
  padding-left: 19px;
  padding-bottom: 3px;  
}

.pdf-icon {background-position: 0 0;}
.word-icon {background-position: 0 -96px;}
.excel-icon {background-position: 0 -192px;}
.text-icon {background-position: 0 -288px;}
.bild-icon {background-position: 0 -384px;}
.film-icon {background-position: 0 -480px;}
.mail-icon {background-position: 0 -576px;}
.telefon-icon {background-position: 0 -672px;}
.kommentar-icon {background-position: 0 -768px;}
.lupen-icon {background-position: 0 -864px;}
.drucker-icon {background-position: 0 -960px;}
.info-icon {background-position: 0 -1056px;}
.hilfe-icon {background-position: 0 -1152px;}

/*------ Anfahrt ----- */  

#c27 .tx-tgmsimplegooglemap-pi1 fieldset {
  padding: 8px 0;
  border: none;
}

#c27 legend {
  display: none;  
}

#c27 select {
  margin: 2px 0 0 0;
  padding: 2px;
  border: 1px solid #818487
  height: 20px;
  font: 0.9em 'Source Sans Pro', Helvetica, Geneva, sans-serif;
  color: #818487;
  background: #ffffff;
}

#c27 .form_start_point {
  float: none;  
}

#c27 .clearer input {
  width: 160px;
  margin: 5px 0 0 0;
  border: none;
  height: 25px;
  font: 11px verdana, arial, helvetica, sans-serif;
  color: #fff;
  font-weight: bold;
  background: #9D2235;  
  cursor: pointer;
}

#c27 .form_end_point {
  display: none;
}

#c27 #map_canvas {
  max-width: 600px;
  width: 100% !important;
}

/*------ Print ----- */  
.printfooter {display: none;}

@media only screen and (max-width: 1023px) { 
  .header-inner, .wrapper {
    padding: 0 2%;
    width: 96%;
  }
}

@media only screen and (max-width: 820px) { 
  .links {
    display: none;
  }
  .inhalt {
    width: 100%;
  }
  #navi a {
    width: auto;
    padding: 2.5em 1em;
  }
  .box {
    font: 0.8em/1.3em 'Source Sans Pro',Helvetica,Geneva,sans-serif;
  }
  .oben-rechts {
    width: 50%;
  }
  .printfooter {
    display: block;
  }
  .oben {
    display: block;
  }
  #footer .oben a {
    color: #000;
  }
}

@media only screen and (max-width: 680px) { 

  .box h2 {
    padding: 0 !important;
    margin: 0.5em 0;
  }

  .box {
    width: 100%;
    padding: 0 !important;
    margin: 0 0 1px 0;  
  }
  .arrow {
    border: 6px solid #000;
    font-size:0;line-height:0;height:0;padding:0;margin:0;
    border-top-color:    transparent;
    border-right-color:  transparent;
    border-left-color:   transparent;  
    vertical-align: super;
  }
  #logo {
    text-align: center;
  }
}

@media only screen and (max-width: 540px) { 
  .copy {
    width: 95%;
    border: none;
    margin: 0;
  }
  #footer .impressum {
    border-left: 1px solid #F0F0F0;
  }
  #c27 .form_start_point {
    width: 100%;
  }   
  #navi select {
    margin: 0.5em 0;
  }
}

@media only screen and (max-width: 400px) { 
  #navi select {
    margin: 1em 0.5em;
  }
  
  #logo {
    width: 95%;
    text-align: center;
  }
  .news-single-img {
    float: none;
    width: auto;
  }
  .oben-rechts {
    width: 100%;
  }
}
