/*------------------- CSS RESET ---------------------
---------------------------------------------------*/
* {
padding: 0;
margin: 0;
font-size: 100%;
font-weight: normal;
}

ul,
ol {
list-style: none;
}

b,
strong {
font-weight: bold;
}

img,
a img {
border: none;
}

/*------------------SCHRIFT / GRÖSSE ----------------
---------------------------------------------------*/

body {
font-family: 'Tahoma', sans-serif;
color: #000;
line-height: 1.5em;
font-size: 0.8em;
text-align: left;
background: #fff;
height: 100%;
}

h1,
h2,
h3 {
font-family: 'Tahoma', sans-serif;
font-weight: bold;
}

h1_impr {
font-size: 1.5em;
font-weight: bold;
color: #FF9934;
}

h2_impr {
font-size: 1.1em;
font-weight: bold;
top-margin: 20px;
bottom-margin 20px;
color: #FF9933;
}

h1 {
font-size: 2.5em;
}

h2 {
font-size: 1.6em;
padding-top: 20px;
padding-bottom: 20px;
text-align: center;
}

h3 {
font-size: 1.1em;
color: #505862;
margin-left: 13px;
}

p {
padding: 0.9em;
}

p.willkommen {
padding: 0em;
}

#navi a:link,
#navi a:visited {
color: #fff;
text-decoration: none;
}

#navi a:hover,
#navi a:focus,
#navi a:active {
color: #fff;
text-decoration: none;
font-size: 1.2em;
}

#footerlinks a:link,
#footerlinks a:visited {
color: #2e4f8f;
text-decoration: none;
}

#footerlinks a:hover,
#footerlinks a:focus,
#footerlinks a:active {
text-decoration: none;
font-weight: bold;
}

#footerrechts a:link,
#footerrechts a:visited {
color: #2e4f8f;
text-decoration: none;
}

#footerrechts a:hover,
#footerrechts a:focus,
#footerrechts a:active {
text-decoration: none;
font-weight: bold;
}

#ambiente a:link,
#ambiente a:visited {
color: #2e4f8f;
text-decoration: none;
}

#ambiente a:hover,
#ambiente a:focus,
#ambiente a:active {
color: #2e4f8f;
text-decoration: none;
font-weight: bold;
}

#strich a:link,
#strich a:visited {
color: #2e4f8f;
text-decoration: none;
}

#strich a:hover,
#strich a:focus,
#strich a:active {
color: #2e4f8f;
text-decoration: none;
font-weight: bold;
}


/*------------------- LAYOUT ---------------------
---------------------------------------------------*/

#container {
position: relative;
width: 1000px;
min-width: 1000px;
max-width: 1200px;
background: transparent;
/*------------------------*/
min-height: 100%;
height: auto !important;
height: 100%;
margin: 20px auto 0px auto;
padding: 0;
/*------------------------*/
}

#top {
position: relative;
height: 190px;
background: transparent url(img/bg_top.png) repeat-x left top;
margin-bottom: 2px;
}

#toplinks {
margin-top: 168px;
float: left;
height: 25px;
width: 49%;
bottom: 0px;
background: transparent;
color: #2e4f8f;
text-align: left;
padding-left: 1%;
line-height: 1.7em;
}

#toprechts {
margin-top: 168px;
float: left;
height: 25px;
width: 49%;
bottom: 0px;
background: transparent;
color: #2e4f8f;
text-align: right;
padding-right: 1%;
line-height: 1.7em;
}

#willkommen {
position: relative;
height: 160px;
background: #2e4f8f;
color: #fff;
margin-bottom: 2px;
line-height: 2.0em;
font-size: 1.2em;
font-family: 'Calibri Light', sans-serif;
text-align: center;
}

#willkommen_unterseite {
position: relative;
height: 120px;
background: #2e4f8f;
color: #fff;
margin-bottom: 2px;
line-height: 2.0em;
font-size: 1.2em;
font-family: 'Calibri Light', sans-serif;
text-align: center;
}

#strich {
position: relative;
height: 14px;
background: #f7f411;
margin-bottom: 2px;
padding-left: 10px;
font-family: 'Calibri Light', sans-serif;
font-size: 0.9em;
color: 2e4f8f;
line-height: 1.2em;
}

#navi {
position: relative;
height: 360px;
background: transparent url(img/bg_navi.png) repeat-x left top;
margin-bottom: 2px;
}

#ambiente {
position: relative;
background: #f5f5f5;
margin-bottom: 2px;
font-family: 'Calibri Light', sans-serif;
color: #000;
text-align: center;
font-size: 1.7em;
line-height: 1.3em;
}

#kontakt {
position: relative;
background: #f5f5f5;
margin-bottom: 2px;
font-family: 'Calibri Light', sans-serif;
color: #000;
text-align: center;
font-size: 1.3em;
line-height: 1.3em;
}

#navititel {
position: relative;
height: 70px;
background: transparent;
font-family: 'Calibri Light', sans-serif;
color: #fff;
font-size: 2.5em;
text-align: center;
}

#navititelbox1 {
float: left;
height: 70px;
width: 220px;
margin-left: 24px;
display: flex;
align-items: center;
justify-content: center;
}

#navititelbox2 {
float: left;
height: 70px;
width: 220px;
margin-left: 24px;
display: flex;
align-items: center;
justify-content: center;
}

#navititelbox3 {
float: left;
height: 70px;
width: 220px;
margin-left: 24px;
display: flex;
align-items: center;
justify-content: center;
}

#navititelbox4 {
float: left;
height: 70px;
width: 220px;
margin-left: 24px;
display: flex;
align-items: center;
justify-content: center;
}

#navibilder {
position: relative;
height: 180px;
background: transparent;
}

#navibilderbox1 {
float: left;
height: 180px;
width: 220px;
margin-left: 24px;
background: green;
}

#navibilderbox2 {
float: left;
height: 180px;
width: 220px;
margin-left: 24px;
background: blue;
}

#navibilderbox3 {
float: left;
height: 180px;
width: 220px;
margin-left: 24px;
background: yellow;
}

#navibilderbox4 {
float: left;
height: 180px;
width: 220px;
margin-left: 24px;
background: red;
}

#navitexte {
position: relative;
height: 110px;
background: transparent;
font-family: 'Calibri Light', sans-serif;
color: #fff;
text-align: center;
font-size: 1.7em;
line-height: 1.3em;
}

#navitextebox1 {
float: left;
height: 110px;
width: 220px;
margin-left: 24px;
display: flex;
align-items: center;
justify-content: center;
}

#navitextebox2 {
float: left;
height: 110px;
width: 220px;
margin-left: 24px;
display: flex;
align-items: center;
justify-content: center;
}

#navitextebox3 {
float: left;
height: 110px;
width: 220px;
margin-left: 24px;
display: flex;
align-items: center;
justify-content: center;
}

#navitextebox4 {
float: left;
height: 110px;
width: 220px;
margin-left: 24px;
display: flex;
align-items: center;
justify-content: center;
}

#footerlinks {
float: left;
height: 25px;
width: 49%;
bottom: 0px;
background: #f7f411;
color: #2e4f8f;
text-align: left;
padding-left: 1%;
line-height: 1.7em;
}

#footerrechts {
float: right;
height: 25px;
width: 49%;
bottom: 0px;
background: #f7f411;
color: #2e4f8f;
text-align: right;
padding-right: 1%;
line-height: 1.7em;
}

#servicelinks {
float: left;
width: 49%;
background: green;
color: #2e4f8f;
text-align: right;
padding-right: 1%;
line-height: 1.7em;
}

#servicerechts {
float: left;
width: 49%;
background: #f7f411;
color: #2e4f8f;
text-align: right;
padding-right: 1%;
line-height: 1.7em;
}

#servicemitte {
position: relative;
width: 419px;
margin: 0px auto 90px;
}

#servicemittelinks {
float: left;
width: 209px;
text-align: left;
color: #2e4f8f;
}

#servicemitterechts {
float: left;
width: 210px;
text-align: right;
color: #2e4f8f;
}

#kontaktlinks {
float: left;
width: 35%;
text-align: left;
}

#kontaktrechts {
float: left;
width: 65%;
text-align: left;
}

#impressummitte {
position: relative;
width: 800px;
margin: 0px auto;
font-size: 90%;
}

#navi li {
position: relative;
top: 150px;
left: 35px;
display: inline;
color: #dcdcdc;
/*alter Wert für padding war 1.6em*/
padding-left: 1.2em;
padding-right: 1.2em;
font-variant:small-caps;
font-size: 120%;
background: url(img/platzhalter.jpg) no-repeat left center;
}

#navi a {
}

#content {
background: transparent;
margin-top: 25px;
margin-left: 50px;
margin-right: 50px;
font-size: 1.2em;
}

#footer p {
}

/*------------------- ALLGEMEIN --------------------
---------------------------------------------------*/

.pi {
padding: 0.3em;
}

.fl {
float: left;
padding-right: 1em;
}

.fr {
float: right;
padding-left: 1em;
}

.clearfloat {
clear: both;
height: -1em;
line-height: 0.5em;
}

.ut {
color: #000;
font-size: 0.65em;
font-weight: bold;
font-variant: small-caps;
font-family: Tahoma,Arial,Helvetica,sans-serif;
margin-right: 30px;
display: block;
text-align: right;
}

.fade {
   opacity: 0.7;
   transition: opacity .50s ease-in-out;
   -moz-transition: opacity .50s ease-in-out;
   -webkit-transition: opacity .50s ease-in-out;
   }

   .fade:hover {
      opacity: 1;
      }

.zentriert {
text-align: center;
}

.rechts {
text-align: right;
}

.mehrInfo {
font-size: 0.8em;
margin-top: 8px;
display: block;
text-align: right;
}

.mehrInfo a:link,
.mehrInfo a:visited {
padding: 2px 20px;
background: url(img/mehrInfo.gif) no-repeat right 0;
}

.mehrInfo a:hover,
.mehrInfo a:focus,
.mehrInfo a:active {
text-decoration: none;
background: url(img/mehrInfo.gif) no-repeat right -38px;
}

.quicknavi {
font-size: 0.8em;
margin-top: 8px;
display: block;
text-align: center;
}


/*-----------------TABELLE-------------------------------------
----------------------------------------------------------------*/
.downloads {
width: 90%;
margin-left: 15px;
background: #f0f0f0;
color: #000;
border-collapse: collapse;
}

.downloads td,
.downloads th {
border: 1px solid #fff;
padding: 3px 8px;
}
.downloads th {
background: #ff9933;
color: #fff;
font-weight: bold;
}
.downloads tr.alt{
background: #e2e7ed;
}
.downloads tr:hover{
background: #ffd8b0;
}
.downloads tfoot {
border-bottom: 2px solid #ff9933;
font-size: 0.8em;
text-align: right;
}
.downloads tfoot td {
padding: 0px 8px;
}
.downloads tfoot tr:hover {
background: none;
}

#ambiente ol {
list-style-type: circle;
}

/*-----------------BILDER-------------------------------------
----------------------------------------------------------------*/

img.stolzes {
margin: auto;
position: absolute;
top: 20px;
left: 0px;
right: 0px;
}

img.willkommen {
margin: 0px auto -15px auto;
}

img.navibilder {
border: 1px solid #fff;
}

/*------------BILDUNTERSCHRIFTEN----------------------------------
----------------------------------------------------------------*/

figure,
figcaption {
        margin: 0;
        padding: 1px;
}

figure.einzel {
        position: relative;
        display: inline-block;

}

figure img {
        width: 100%;
        display: block;
  border: 1px solid #ff9933;
  padding: 1px;
}

figcaption {
        position: absolute;
        bottom: 0;
        width: 100%;
        text-align: center;
  font-size: 0.8em;
        line-height: 2em;
        color: white;
        background: rgba(0, 0, 0, 0.2);
}

/*-----------TOOLTIP--------------------------------------------------
---------------------------------------------------------------------*/

a.tooltip {
  position: relative;
  text-decoration: none;
}
a.tooltip:after {
  content: attr(data-tooltip);
  position: absolute;
  bottom: 130%;
  left: 20%;
  background: #ffcb66;
  padding: 5px 15px;
  color: #1E4389;
  -webkit-border-radius: 10px;
  -moz-border-radius : 10px;
  border-radius : 10px;
  white-space: nowrap;
  opacity: 0;
  -webkit-transition: all 0.8s ease;
  -moz-transition : all 0.8s ease;
  transition : all 0.8s ease;
}
a.tooltip:before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-top: 20px solid #ffcb66;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  -webkit-transition: all 0.8s ease;
  -moz-transition : all 0.8s ease;
  transition : all 0.8s ease;
  opacity: 0;
  left: 30%;
  bottom: 90%;
}
a.tooltip:hover:after {
  bottom: 100%;
}
a.tooltip:hover:before {
  bottom: 70%;
}
a.tooltip:hover:after, a:hover:before {
  opacity: 1;
}