@charset "UTF-8";
/* CSS Document */

/* ************************************************
                    GENERAL STYLES
   ************************************************ */

body {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  color:#3a4244;
}

* {
  margin:0;
  padding:0;
}

a img {
	border: none;
}

.fltrt {
	float: right;
	margin-left: 10px;
}

.fltlft {
	float: left;
	margin-right: 10px;
}

.clearfloat {
	clear:both;
	height:0;
	font-size: 1px;
	line-height: 0px;
}

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

header, section, footer, aside, article, figure {
	display: block;
}

.clear {
  clear:both;
}


/* ************************************************
                         GRID
   ************************************************ */

#content, div.page, div#visualHeadline {
  margin: 0 auto;
  width:980px;
}

header #loginBar {
  height: 20px;
  background: #009EE0;
  color: #FFF;
  font-size: 12px;
  line-height: 20px;
  text-align: right;
}

header #loginBar a {
  display: inline-block;
  background: #004494;
  padding: 0 10px;
  margin-left: 10px;
  color: #FFF;
  text-decoration: none;
}

header #loginBar a:hover {
  background: #515859;
}

header #logo {
  position:absolute;
  box-shadow: 0px 2px 6px #000;
  z-index:10;
}

header #logo img {
  display:block;
}

#visualHeadline {
  position:relative;
  padding-top: 90px;
  height: 380px;
  color: #FFFFFF;
  z-index:0;
}

#content {
  padding: 45px 0px;
}

#content.novisual {
  padding: 75px 0px;
}

article {
  
}

article#short {
  float:left;
  width:644px;
}

#sidebar {
  float:right;
  width: 306px;
}

footer {
  background:#3a4244;
  color: #FFFFFF;
  padding:33px 0px 10px;
  font-size:14px;
}

/* ************************************************
                    Navigation
   ************************************************ */
  
#navigationHolder {
  background:#252e30;
  height: 60px;
}

#subnavigationHolder {
  position: absolute;
  top: 80px;
  width: 100%;
  background: #009ee0;
  box-shadow: inset 0px 0px 10px #515859;
  z-index:9;
}

nav#navigation, nav#subnavigation {
  padding-left:200px;
}

nav ul {
  list-style: none;
}

nav li {
  float:left;
}

nav#navigation a {
  display:block;
  line-height:60px;
  vertical-align: middle;
  padding-left: 40px;
  padding-right: 40px;
  color:#FFFFFF;
  font-size:16px;
  text-transform:uppercase;
  text-decoration:none;
}

nav#navigation a.active, nav#navigation a:hover {
  background:#515859;
}

nav#subnavigation a {
  display:block;
  line-height:46px;
  padding-left: 11px;
  padding-right: 11px;
  color:#FFFFFF;
  font-size:16px;
  text-transform:none;
  text-decoration:none;
}

nav#subnavigation a.active, nav#subnavigation a:hover {
  background:#004494;
}


/* ************************************************
                       VISUAL-HEADLINE
   ************************************************ */

#visualHeadline h1 {
  font-family: 'Roboto Condensed', sans-serif;
  font-size: 50px;
  text-transform: uppercase;
  line-height: 60px;
  margin-bottom: 20px;
  text-shadow: 2px 2px 10px #000;
}

#visualHeadline p {
  font-size: 18px;
  font-style:italic;
  margin-bottom: 30px;
}


/* ************************************************
                        CONTENT
   ************************************************ */

#content h1, #content h2, #content h3 {
  font-family: 'Roboto Condensed', sans-serif;
}

#content h1, #content h2, #content p {
  margin-bottom:20px;
}

#content h2 {
  font-size: 26px;
  color: #004494;
}

#content h3 {
  font-size: 20px;
  color: #004494;
  margin-bottom:10px;
}

#content p {
  line-height: 24px;
}

#content p.alert {
  color: #ff0000;
  border: 1px solid #ff0000;
  padding: 10px;
}

#content li {
  margin:0 0 10px 15px;
}

#content a {
  text-decoration: none;
  color: #009ee0;
}

#content div.news-entry {
  padding: 20px 0;
  border-top: 1px solid #e9eaea;
  border-bottom: 1px solid #e9eaea;
}

#content .listnavi {
  font-size:12px;
  display:block;
  text-align:center;
  padding: 5px 0;
  background: #e9eaea
}

/* ***********  BUTTONS *********** */

#content ol {
    counter-reset:li; /* Initiate a counter */
    margin-left:0; /* Remove the default left margin */
    padding-left:0; /* Remove the default left padding */
}

#content ol > li {
    position:relative; /* Create a positioning context */
    margin:0 0 6px 2em; /* Give each list item a left margin to make room for the numbers */
    padding:4px 8px; /* Add some spacing around the content */
    list-style:none; /* Disable the normal item numbering */
}
#content ol > li:before {
    content:counter(li); /* Use the counter as content */
    counter-increment:li; /* Increment the counter by 1 */
    /* Position and style the number */
    position:absolute;
    top:-2px;
    left:-2em;
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    width:2em;
    /* Some space between the number and the content in browsers that support
       generated content but not positioning it (Camino 2 is one example) */
    margin-right:8px;
    padding:4px;
    color:#fff;
    background:#004494;
    font-weight:normal;
    text-align:center;
}

#content li ol, #content li ul {margin-top:6px;}
#content ol ol li:last-child {margin-bottom:0;}


/* ************************************************
                       BUTTONS 
   ************************************************ */

a.blueButton {
  display:inline-block;
  padding: 8px 20px;
  background: #009ee0;
  color:#FFFFFF !important;
  border-radius: 6px;
  font-size:14px;
  font-weight:bold;
  text-decoration:none;
}

a.blueButton:hover {
  background: #004494;
}


/* ************************************************
                    STARTSEITEN STYLES
   ************************************************ */

div.box-line {
  margin-bottom: 60px;
}

div.service-box {
  float: left;
  width: 310px;
  margin-right: 25px;
}

div.service-box.last {
  margin-right: 0px;
}

div.service-box img {
  display: block;
  margin-bottom: 15px;
}

div.service-box h3 {
  font-size: 20px !important;
  margin-bottom: 15px !important;
}

div.service-box h3 a {
  color: #004494 !important;
}

div.service-box p {
  margin-bottom: 10px !important;
}


/* ************************************************
                    IMAGE-SLIDER
   ************************************************ */

#image-gallery, #image-gallery #slider-left, #image-gallery #slider-right, #image-gallery #slidecontainer, #image-gallery #slidecontainer #slide {
  height:122px;
}

#image-gallery {
  margin-top: 20px;
  margin-bottom: 40px;
  position:relative;
}

#image-gallery #slider-left, #image-gallery #slider-right {
  cursor:pointer;
  width:20px;
  position:absolute;
  top:0px;
}

#image-gallery #slider-left {
  background: url(/images/system/arrow-left.png) center center no-repeat #e9eaea;
  left: -20px;
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px;
}

#image-gallery #slider-left:hover {
  background: url(/images/system/arrow-left-over.png) center center no-repeat #999;
}

#image-gallery #slider-right {
  background: url(/images/system/arrow-right.png) center center no-repeat #e9eaea;
  right: -20px;
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px;
}

#image-gallery #slider-right:hover {
  background: url(/images/system/arrow-right-over.png) center center no-repeat #999;
}

#image-gallery #slidecontainer {
  position: relative;
  top: 0px;
  left: 0px;
  width: 980px;
  overflow: hidden;
}

#image-gallery #slidecontainer #slide {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 10000px;
}

#image-gallery img {
  border: 1px solid #999;
}

#image-gallery a {
  float: left;
  margin-right: 15px;
}

#image-gallery a.last {
  margin-right:0px;
}


/* ************************************************
                       SIDEBAR
   ************************************************ */

.greyBox {
  background: #e9eaea;
  padding: 20px;
  margin-bottom: 20px;
}


/* ************************************************
                   KONTAKTFORMULAR
   ************************************************ */

.formularfeld {
  padding:15px 0;
  margin-top:20px;
  border-top: 1px solid #e9eaea;
  border-bottom: 1px solid #e9eaea;
}

.formularfeld td {
  padding:0px 10px 5px 0px;
}

.formularfeld input.standard {
  width:450px;
  padding:5px;
}

.formularfeld input.zip {
  width:40px;
  margin-right:5px;
  padding: 5px;
}

.formularfeld input.city {
  width:390px;
  padding:5px;
}

.formularfeld textarea {
  width:462px;
  height:170px;
}

input.anfragebutton {
  border:none;
  padding: 8px 20px;
  background: #009ee0;
  color:#FFFFFF !important;
  border-radius: 6px;
  font-size:14px;
  font-weight:bold;
  text-decoration:none;
  cursor:pointer;
}

input.anfragebutton:hover {
	background: #004494;
}


/* ************************************************
                       LOGIN 
   ************************************************ */

table.login {
  margin-bottom: 20px;
}

table.login td {
  padding: 7px 10px 7px 0px;
}

table.login td input {
  width: 200px;
}

/* ************************************************
                        FOOTER
   ************************************************ */

footer .column {
    float: left;
    height: 230px;
    margin-bottom: 10px;
    width: 306px;
}

footer .column.middle {
    background: url("/images/system/anfahrtsskizze-arnold.png") 20px 15px no-repeat transparent;
    border-left: 1px solid #FFFFFF;
    border-right: 1px solid #FFFFFF;
    margin-right: 30px;
    padding: 0 30px;
    width: 276px;
}

footer .column.first {
    padding-right: 35px;
    width: 290px;
}

footer h2, 
footer address, 
footer p {
  margin-bottom: 20px;
}

footer h2 {
  font-size: 18px;
  font-weight: normal;
}

footer address {
  font-style:normal;
}

footer .small {
  font-size: 12px;
}

footer a {
  color: #009ee0;
  text-decoration:none;
}

footer a:hover {
  text-decoration:underline;
}

footer a.white {
  color: #FFFFFF;
}

/* --------------------------------------------
                Cookie-Alert
   -------------------------------------------- */

.cookie-msg {
    position: fixed;
    bottom: 0;
    right: 0;
    left: 0;
    padding: 15px 20px;
    color: white;
    z-index: 9999;
    text-align: left;
    display: none;

    background-color: rgba(0,0,0,0);
    background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(0,0,0,0.9)), color-stop(100%, rgba(0,0,0,0.75)));
    background-image: -webkit-linear-gradient(top, rgba(0,0,0,0.9),rgba(0,0,0,0.75));
    background-image: -moz-linear-gradient(top, rgba(0,0,0,0.9),rgba(0,0,0,0.75));
    background-image: -o-linear-gradient(top, rgba(0,0,0,0.9),rgba(0,0,0,0.75));
    background-image: linear-gradient(top, rgba(0,0,0,0.9),rgba(0,0,0,0.75));
    background-image: linear-gradient(to bottom, rgba(0,0,0,0.9),rgba(0,0,0,0.75));
}

.cookie-msg p {
	padding-right: 70px;
	margin-bottom: 0;
	margin-top: 0;
}

.cookie-msg .btn-accept {
	position: absolute;
	right: 20px;
	top: 15px;
    display: inline-block;
	padding: 5px 15px;
	background-color: #009EE0;
	border: 1px solid white;
	cursor: pointer;
}

.dataprivacylink {
    color: #009EE0;
}