/****************************************************/
/*    1. CSS-Modul: COLORS                          */
/****************************************************/
.neutralColorTrans {background-color: transparent;}
.neutralColorWhite {background-color: #FFFFFF;}
.neutralColorBlack  {background-color: #000000;}
.neutralColorStrong {background-color: #999999;}
.neutralColorMedium {background-color: #DDDDDD;}
.neutralColorLight {background-color: #E4E8EB;}

.teaserColor {background-color: #01509F;} /* -- Accent -- */

.secondColorStrong {background-color: #CCCCCC;} /* -- HG Dark -- */
.secondColorMedium {background-color: #E0E0E0;} /* -- HG Medium -- */
.secondColorLight {background-color: #F9F9F9;} /* -- HG Light -- */

.primColorStrong {background-color: #01509F;} /* -- Text Headline -- */
.primColorMedium {background-color: #333333;} /* -- Text Primary -- */
.primColorLight {background-color: #666666;} /* -- Text Secondary -- */




/****************************************************/
/*    2.  CSS-Modul: LAYOUT (PAGE REGIONS)          */
/****************************************************/
/* -- BODY ----------------------------------------------*/

* {margin:0; border:0; padding:0;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {display:block;}

body#web, body#webS {
  width:100%;
  height:100%;
  background:#e4e8eb;
  font-family:'Open Sans','Lucida Grande',Helvetica,Verdana,Arial,sans-serif;
  font-size:1em;
  line-height:1.25em;
  color:#333333;
}

/* -- TOP -----------------------------------------------*/
#top {
  position:relative;
  width:100%;
  background:transparent url(header-hg.gif) center 49px repeat-x;
  clear:both;
}
header {
  position:relative;
  width:85%;
  max-width:1180px;
  margin:0 auto;
  padding:25px 0 0;
}
.ie8 header {
  width:980px;
}
.logo {
  position:relative;
  display:inline-block;
  width:auto;
}
.logo a {
  display:block;
  padding:0;
}
.logo a img {
  display:block;
  width:auto;
  max-width:100%;
  height:auto;
}


/* --- Slide Navigation button --- */
#sTrigger {
  position:absolute;
  display:none;
  top:0;
  left:0;
  width:30px;
  height:25px;
  padding:15px;
  cursor:pointer;
}

#sTrigger span {
  position:absolute;
  top:15px;
  left:15px;
  width:30px;
  height:5px;
  border-radius:8px;
  background:rgba(1,80,159,0.7);
  box-shadow:-1px 1px 0 rgba(0,0,0,0.3) inset, -1px 1px 0 rgba(255,255,255,0.2);
}

#sTrigger span:before {
  content:"";
  position:absolute;
  top:9px;
  left:0;
  width:30px;
  height:5px;
  border-radius:8px;
  background:rgba(1,80,159,0.7);
  box-shadow:-1px 1px 0 rgba(0,0,0,0.3) inset, -1px 1px 0 rgba(255,255,255,0.2);
}
#sTrigger span:after {
  content:"";
  position:absolute;
  top:18px;
  left:0;
  width:30px;
  height:5px;
  border-radius:8px;
  background:rgba(1,80,159,0.7);
  box-shadow:-1px 1px 0 rgba(0,0,0,0.3) inset, -1px 1px 0 rgba(255,255,255,0.2);
}


/* -- MIDDLE --------------------------------------------*/
#middle {
  position:relative;
  width:100%;
  clear:both;
}

#page {
  position:relative;
  width:85%;
  max-width:1180px;
  margin:0 auto;
  padding:0 0 50px;
  background:#ffffff;
}
.ie8 #page {
  width:980px;
}

.hero {
  position:relative;
  height:auto;
  max-height:300px;
  padding:0 0 50px;
  overflow:hidden;
}
.hero img {
  display:block;
  width:100%;
  height:auto;
}
.vItem {
  position:absolute;
  bottom:65px;
  left:15px;
}
.vItem a {
  display:block;
  border-radius:4px;
  padding:5px 10px 5px 30px;
  background:#ffffff url(sprite-icons.png) -775px -472px no-repeat;
  color:#333333;
}

#content {
  position:relative;
  float:left;
  width:70%;
  min-height:100px;
  border-right:1px solid #01509f;
  padding:0 25px;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  -o-box-sizing:border-box;
  box-sizing:border-box;
}
#content.wide {
  width:100%;
  border:0;
}

#right {
  position:relative;
  float:left;
  width:30%;
  margin-left:-1px;
  border-left:1px solid #01509f;
  padding:0 25px;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  -o-box-sizing:border-box;
  box-sizing:border-box;
}


/* -- BOTTOM --------------------------------------------*/
#bottom {
  position:relative;
  display:block;
  width:100%;
  clear:both;
}

footer {
  width:85%;
  max-width:1180px;
  margin:5px auto 50px;
  border-top:15px solid #01509f;
  border-bottom:15px solid #01509f;
  padding:0;
  background:#01509f;
  clear:both;
  color:#ffffff;
  text-align:right;
  overflow:hidden;
}
.ie8 footer {
  width:980px;
}

footer section {
  position:relative;
  display:inline-block;
  width:23.333%;
  margin:0 0 -200px;
  border-right:1px solid #ffffff;
  padding:0 25px 200px;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  -o-box-sizing:border-box;
  box-sizing:border-box;
  vertical-align:top;
  text-align:left;
}
footer .strengths {
  border:0;
}

footer .copyright {
  width:30%;
  border-right:0;
  border-left:1px solid #ffffff;
}

footer a, footer span {
  display:block;
  padding:2px 0;
  font-size:0.85em;
  line-height:1.25em;
  color:#ffffff;
}

footer span a {
  display:inline;
  font-size:1em;
  line-height:1.25em;
  color:#ffffff;
}
footer a:hover {
  color:#ffffff;
  text-decoration:underline;
}

/*-- FLOATING ---------------*/
.clearing:after {
  content: "";
  position: relative;
  display: block;
  width: 100%;
  clear: both;
}

.floatRight {
  float:right;
}
.floatLeft {
  float:left;
}
img.imgNoborder {
  border:0px;
}

/****************************************************/
/*    3.  CSS-Modul: LAYOUT (PAGE ELEMENTS)         */
/****************************************************/
/* -- FORM -----------------------------------------*/
form input, form select, form textarea {
  position:relative;
  max-width:100%;
  margin:0;
  border: 1px solid #e0e0e0;
  border:1px solid rgba(0,0,0,0.3);
  border-radius:2px;
  padding:4px 6px;
  background:#f9f9f9;
  font-family:'Open Sans','Lucida Grande',Helvetica,Verdana,Arial,sans-serif;
  font-size:1em;
  line-height:1.25em;
  color:#333333;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  -o-box-sizing:border-box;
  box-sizing:border-box;
}

form input[type=radio], form input[type=checkbox] {
  width:16px;
  height:16px;
  margin:4px 5px;
  border:0;
  padding:0;
  background:transparent;
}

form .errField input, form .errField select, form .errField textarea {
  border:1px solid #CC0033;
  background:#EFD5DB;
}
form input.radio.error, form input.checkbox.error {
  border:2px solid #CC0033;
  outline:2px solid #CC0033;
  -webkit-appearance:none;
  -moz-appearance:none;
}
/* -- SITEMAP --------------------------------------*/

/* -- SEARCH ---------------------------------------*/

/* -- (Input) -- */
.search {
  float:right;
  width:225x;
  height:22px;
  margin:0 3px 0 0;
  border:1px solid #999999;
  border-radius:6px;
  background:#ffffff;
}
.searchLabel, .searchLabel, .searchElement, .searchText {
  font-size:0.85em;
}

.search input#raw {
  float:left;
  width:183px;
  height:15px;
  margin:0;
  border:0;
  border-radius:0;
  padding:4px 5px 3px 9px;
  background:transparent;
  box-shadow:none;
  color:#666666;
  font-size:0.9em;
  line-height:1.25em;
}

.search input.submit {
  float:right;
  width:35px;
  height:35px;
  margin:-7px -7px 0 0;
  border:0;
  padding:0;
  background:transparent url(common/sprite-icons.png) -50px -80px no-repeat;
  box-shadow:none;
  font-size:0px;
  line-height:1px;
  color:#dddddd;
  cursor:pointer;
}
.search input.submit:hover {
  background-position:-50px -130px;
}


/* -- (Results) -- */
div.navTop {
  border-bottom:1px solid #cccccc;
}
div.navBtm {
  margin-top:10px;
  border-top:1px solid #cccccc;
}
div.navTop a, div.navBtm a {
  padding:0 5px;
}

/* -- NEWS -----------------------------------------*/


/****************************************************/
/*    4.  CSS-Modul: NAVIGATION                     */
/****************************************************/

/* -- CHANNEL MENU ---------------------------------*/
#menu {
  position:relative;
  margin:15px 0 5px;
}
#menu:after {
  content:"";
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  height:30px;
  background:#01509f;
  z-index:-1;
}
#menu ul {
  margin:0;
  padding:0;
  list-style-type:none;
}
#menu ul li {
  display:inline-block;
  margin:0;
  padding:0;
  vetical-align:bottom;
  background:#e4e8eb;
}

#menu ul li a {
  display:block;
  padding:0 4px 0 0;
  text-decoration:none;
}
#menu ul li a span {
  display:block;
  height:20px;
  margin-top:6px;
  padding:4px 25px 6px;
  background:#01509f;
  color:#ffffff;
  -webkit-transition:all 0.5s;
  transition:all 0.5s;
}
#menu ul li a:hover span,
#menu ul li.active a span {
  margin-top:0;
  padding-top:10px;
}


/* -- MACRONAVIGATION ------------------------------*/
.macronav {
  display:block;
  margin:0 0 20px;
  overflow:hidden;
}
.macronav h1  {
  margin:0 0 5px 25px;
  font-size:1.6em;
  line-height:1.25em;
}
.macronav ul {
  width:100%;
  list-style-type:none;
  margin:0;
  padding:0;
}
.macronav ul li {
  width:100%;
  margin:0;
  padding:0;
}
.macronav ul li a {
  display:block;
  padding:0;
}
.macronav ul li a span {
  display:block;
  padding:7px 25px;
  background:transparent url(sprite-icons.png) -780px -470px no-repeat;
  color:#666666;
  text-decoration:none;
  -webkit-transition:all 0.5s;
  transition:all 0.5s;
}
.macronav ul li:first-child a span {
  border-top:0;
}

.macronav ul li a.active span,
.macronav ul li a.current span {
  color:#01509f;
  font-weight:bold;
}
.macronav ul li a:hover span, .macronav ul li a:active span {
  color:#01509f;
  text-decoration:none;
}

/* -- level 2 -- */
.macronav ul ul {
  padding:0;
}
.macronav ul li li a span {
  padding:5px 25px 5px 35px;
  background:transparent;
  font-size:0.85em;
  line-height:1.25em;
}


/* -- level 3 -- */
.macronav ul li li li a span {
  padding-left:45px;
}

/* -- level 4 -- */
.macronav ul li li li li a span {
  padding-left:55px;
}


/* -- METANAVIGATION -------------------------------*/
.metanav {
  position:relative;
  display:inline-block;
  width:70%;
  vertical-align:top;
  text-align:left;
  overflow:hidden;
}
.metanav section {
  position:relative;
  display:inline-block;
  width:auto;
  margin:0 0 -200px;
  border-right:1px solid #ffffff;
  padding:0 25px 200px;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  -o-box-sizing:border-box;
  box-sizing:border-box;
  vertical-align:top;
}
.metanav .strengths {
  border:0;
}

.metanav a, .metanav span {
  display:block;
  padding:2px 0;
  font-size:0.85em;
  line-height:1.25em;
  color:#ffffff;
}


/* -- SLIDE NAVIGATION -----------------------------*/
#bodyMask {
  position:fixed;
  top:0;
  right:0;
  bottom:0;
  left:0;
  background:transparent url(pixel-black-60.png) 0 0 repeat;
  background:rgba(0,0,0,0.6);
  z-index:-1;
  opacity:0;
  -webkit-transition:opacity 0.3s, z-index 0.3s;
  transition:opacity 0.3s, z-index 0.3s;
  cursor:pointer;
}

.ie8 #bodyMask {
  visibility:hidden;
}

#bodyMask.open {
  opacity:1;
  z-index: 8;
}

.ie8 #bodyMask.open {
  visibility:visible;
}


#sNav {
  display:block;
  position:fixed;
  top:0;
  bottom:0;
  left:-310px;
  width:300px;
  background:#e0e0e0;
  box-shadow:0 0 3px rgba(0,0,0,0.5);
  overflow-y:auto;
  overflow-x:hidden;
  z-index:9;
}

.csstransforms3d #sNav {
  left:0;
  -webkit-transform: translate3d(-310px, 0, 0);
  -ms-transform: translate3d(-310px, 0, 0);
  -o-transform: translate3d(-310px, 0, 0);
  transform: translate3d(-310px, 0, 0);
  -webkit-transition:-webkit-transform 0.3s ease, padding 0.3s;
  -ms-transition:-ms-transform 0.3s ease, padding 0.3s;
  -o-transition:-ms-transform 0.3s ease, padding 0.3s;
  transition:transform 0.3s ease, padding 0.3s;
}

#sNav.open {
  left:0;
}

.csstransforms3d #sNav.open {
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}


#sNav .macronav {
  width:100%;
  margin:55px 0 0;
  border-bottom:1px solid rgba(255,255,255,0.7);
  padding:0;
}
#sNav .macronav ul {
  background:rgba(0,0,0,0.06);
}

#sNav .macronav ul li a {
  width:100%;
  margin:0;
  border-top:1px solid rgba(255,255,255,0.7);
  border-bottom:1px solid rgba(0,0,0,0.3);
  padding:0;
}

#sNav .macronav ul li a span {
  height:auto;
  border:0;
  padding:12px 25px;
  background-position:-781px -465px;
  font-size:1.1em;
  line-height:1.25em;
}

/* --- 2te Ebene --- */
#sNav .macronav ul li li a span {
  padding-left:35px;
}

/* --- 3te Ebene --- */
#sNav .macronav ul li li li a span {
  padding:8px 25px 8px 45px;
}

/* --- 4te Ebene --- */
#sNav .macronav ul li li li li a span {
  padding:8px 25px 8px 55px;
  font-size:1em;
  line-height:1.25em;
}


/****************************************************/
/*    5.  CSS-Modul: TEXT                           */
/****************************************************/

/* -- STANDARD -------------------------------------*/
hgroup {
  margin:0 0 15px;
}
h1, h2,  h3, h4, h5 {
  color:#01509f;
  margin:25px 0 15px;
}

h1  {
  margin:0 0 15px;
  font-size:2.2em;
  line-height:1.25em;
}
hgroup h1 {
  margin:0;
}

h2  {
  font-size:1.6em;
  line-height:1.25em;
}
hgroup h2 {
  margin:0;
  font-size:1.2em;
  line-height:1.25em;
}
h3 {
  font-size: 1.4em;
  line-height:1.25em;
}
h4 {
  font-size: 1.2em;
  line-height:1.25em;
}
p {
  margin:15px 0;
}

ul {
  list-style:disc;
  margin:15px 0;
  padding:0 30px;
}

ol {
  list-style: decimal;
  margin:15px 0;
  padding:0 30px;
}
li {
  padding:2px 0;
}
dl {
  display:block;
  margin:15px 0;
}
dl dt {
  margin:0;
  padding:15px 0 0 0;
  color:#333333;
  font-weight:bold;
}
dl dt a {
  color:#01509f;
  font-weight:bold;
}
dl dt a:hover, dl dt a:active {
  color:#666666;
}
dl dd {
  color:#333333;
  margin:0;
  padding:0 0 15px;
}
dl dd a {
  font-weight:normal;
}
a {
  color:#01509f;
  text-decoration:none;
  -webkit-transition:all 0.3s;
  transition:all 0.3s;
  outline:none;
}

a:hover, a:active, a:focus {
  color:#01509f;
  text-decoration:none;
}
a span {
  cursor:pointer;
}
a img {
  border:none;
}

hr {
  margin:25px 0;
  height:1px;
  background:#cccccc;
}
/* -- ZMS FORMAT (Text Formats) --------------------*/
strong, b {
  font-weight:bold;
}
i, em {
  font-style:italic;
}
small, .small {
  font-size:0.85em;
  line-height:1.25em;
}
p.caption {
  font-size:0.9em;
  line-height:1.3em;
}
p.emphasis {
  position:relative;
  display:block;
  margin:30px;
  border-radius: 10px;
  padding:12px 15px;
  background:rgba(0,0,0,0.1);
  font-size:1.05em;
  line-height:1.5em;
  font-style:italic;
}
p.description {
  font-weight:bold;
  font-style:italic;
  margin-bottom:15px;
}
blockquote {
  margin:30px;
  border-left:2px solid #e0e0e0;
  padding:0 0 0 15px;
  font-size:1.05em;
  line-height:1.5em;
}

/****************************************************/
/*    6.  CSS-Modul: ZMS-DEFAULTS                   */
/****************************************************/
/* -- ZMS FILE / ZMS LINK --------------------------*/
div.ZMSLinkElement { 
  background-color:#f9f9f9;
  margin:10px;
  padding:7px 10px;
}
div.ZMSFile { 
  background-color:transparent;
  margin:10px 0;
  padding:0;
}

div.ZMSFile.none, div.ZMSLinkElement.none {
  background-color: transparent;
  border: 2px dashed #e0e0e0;
}

div.ZMSFile.floatleft, div.ZMSLinkElement.floatleft { 
  float:left;
  width:50%;
}

div.ZMSFile.floatright, div.ZMSLinkElement.floatright { 
  float:right;
  width:50%;
}

div.ZMSFile div.title, div.ZMSLinkElement div.title {
  font-size:1em;
}
div.ZMSFile div.title img, div.ZMSLinkElement div.title img {
  margin:-2px 5px 0 0;
}
div.ZMSFile div.title a, 
div.ZMSLinkElement div.title a {
  font-size:1em;
  font-weight:bold;
  text-decoration:none;
  color:#333333;
}

div.ZMSFile div.text, div.ZMSLinkElement div.text {
  padding-top:3px;
  font-size:1em;
}

div.ZMSFile div.description, div.ZMSLinkElement div.description {
  padding-top:3px;
  font-size:0.9em;
}

/* -- ZMS TABLES -----------------------------------*/
table.ZMSTable {
  margin:20px 0;
  border-spacing:0;
  border-collapse:collapse;
  padding:0 0 5px 0;
}
table.ZMSTable th { 
  background:#e0e0e0;
  vertical-align:bottom;
  color:#01509f;
  border-bottom:1px solid #dddddd;
}
table.ZMSTable tr th p {
  margin:0;
  padding:5px;
  color:#01509f;
  font-weight:normal;
  text-align:left;
}
table.ZMSTable tr td {
  border-bottom:1px solid #e0e0e0;
  vertical-align:top;
}
table.ZMSTable tr td p {
  margin:0;
  padding:5px;
  text-align:left;
}
table.ZMSTable caption {
  margin:0;
  padding:5px;
  background-color:transparent; 
  font-size:0.9em;
  line-height:1.25em;
  color:#666666;
  text-align:left;
}


/* -- ZMS GRAPHIC ----------------------------------*/
div.ZMSGraphic {
  position:relative;
  max-width:100%;
  background:transparent; 
  margin:0 0 15px;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  -o-box-sizing:border-box;
  box-sizing:border-box;
}
div.ZMSGraphic.none {
  display:inline-block;
  margin:0;
}
div.ZMSGraphic.left {
  float:left;
  width:100%;
  text-align:left;
}
div.ZMSGraphic.floatleft {
  float:left;
  margin-right:15px;
}
div.ZMSGraphic.right {
  float:right;
  width:100%;
  text-align:right;
}
div.ZMSGraphic.floatright {
  float:right;
  margin-left:15px;
}
div.ZMSGraphic.center {
  text-align:center;
}

div.ZMSGraphic div.graphic {
  display:block;
  position:relative;
  max-width:100%;
}
div.ZMSGraphic div.graphic a:hover, div.ZMSGraphic div.graphic a:active {
  border:0;
}

div.ZMSGraphic.center .graphic {
  margin:0 auto;
}
div.ZMSGraphic.right div.graphic {
  display:inline-block;
  width:auto;
}
/* --- text right of img --- */
div.ZMSGraphic div.graphic.left {
  float:left;
  margin:0 15px 0 0;
  text-align:right;
}
/* --- text left of img --- */
div.ZMSGraphic div.graphic.right {
  float:right;
  text-align:right;
  margin:0 0 0 15px;
}

div.ZMSGraphic div.graphic img {
  display:block;
  width:100%;
  max-width:100%;
  height:auto !important;
}
div.ZMSGraphic div.text {
  max-width:100%;
}
div.ZMSGraphic div.text p {
  margin:0;
  padding:0;
  font-size:0.9em;
  line-height:1.25em;
}

div.ZMSGraphic.none div.text p,
div.ZMSGraphic.floatleft div.text p,
div.ZMSGraphic.floatright div.text p,
div.ZMSGraphic.center div.text p {
  padding:5px 0;
}

div.graphic a.zoom, div.graphic a.imgUrl {
  position:relative;
  display:block;
  border:0;
  cursor:pointer;
}

div.graphic a.zoom span, div.graphic a.imgUrl span {
  position:absolute;
  display:block;
  bottom:0;
  right:0;
  width:35px;
  height:35px;
  border:0;
  background-color:#01509f;
  background-color:rgba(1,80,159,0.7);
  background-image:url(sprite-icons.png);
  background-repeat:no-repeat;
  cursor:pointer;
  opacity:0.3;
  transition:opacity 0.3s;
}

div.graphic a.zoom span {
  background-position:-516px -76px;
}

div.graphic a.imgUrl span {
  background-position:-435px -74px;
}

div.graphic a.zoom:hover span, div.graphic a.zoom:active span,
div.graphic a.imgUrl:hover span, div.graphic a.imgUrl:active span {
  opacity:1;
}

/* -- ZMS TEASER -----------------------------------*/
div#teaser {
  width:100%;
}
#teaser div.ZMSTeaserElement {
  margin-bottom:30px;
  border-bottom:1px solid #cccccc;
  padding:0 0 10px;
}
#teaser div.ZMSTeaserElement:first-child {
  border:0;
  padding:0;
}
#teaser .ZMSTeaserElement div.graphic {
  padding:15px 0 0;
  text-align:center;
}

#teaser .ZMSTeaserElement div.graphic img {
  display:inline-block;
  width:auto;
  max-width:100%;
  height:auto;
}
#teaser .ZMSTeaserElement .title {
  font-size:1.1em;
  line-height:1.25em;
  padding:5px 10px;
  color:#01509f;
}
div.ZMSTeaserElement img.title, #teaser .ZMSTeaserElement div.graphic .title {
  padding:0;
}
#teaser .ZMSTeaserElement .text {
  font-size:0.9em;
  line-height:1.25em;
  padding:6px 10px;
}
.linkItem {
  padding:0 0 0 5px;
}
/* -- ZMS LINK -------------------------------------*/

/****************************************************/
/*    7.  CSS-Modul: SPECIAL OBJECTS                */
/****************************************************/
/* -- BUTTONS --------------------------------------*/
.btn {
  display:inline-block;
  padding:4px 12px;
  margin:5px;
  border:1px solid #e0e0e0;
  border:1px solid rgba(0, 0, 0, 0.4);
  border-radius:2px;
  background-color:#cccccc;
  background-image:-webkit-linear-gradient(top, rgba(0,0,0,0.05), rgba(0,0,0,0.3));
  background-image:linear-gradient(to bottom, rgba(0,0,0,0.05), rgba(0,0,0,0.3));
  box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.1);
  font-size:1em;
  line-height:1.25em;
  color:#333333;
  text-align:center;
  text-shadow:0 1px 1px rgba(255, 255, 255, 0.75);
  vertical-align:middle;
  cursor:pointer;
  -webkit-transition:none;
  transition:none;
}

.btn:hover,
.btn:focus,
.btn.disabled,
.btn[disabled] {
  background-image:-webkit-gradient(linear, 0 0, 0 100%, from(rgba(0,0,0,0.05)), to(rgba(0,0,0,0.4)));
  background-image:linear-gradient(to bottom, rgba(0,0,0,0.05), rgba(0,0,0,0.4));
}

.btn:hover,
.btn:focus {
  color:#333333;
  text-decoration:none;
}

.btn:focus {
  outline:0;
}

.btn.active,
.btn:active {
  background-image:none;
  outline:0;
  box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
}


/* --- PRIMARY --- */
.btn-primary {
  background-color:#01509f;
  color:#ffffff;
  text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);
}
.btn-primary:hover,
.btn-primary:focus {
  color:#ffffff;
}

/* --- SECONDARY --- */


/* --- INVERSE --- */
.btn-inverse {
  background-color:#666666;
  color:#ffffff;
  text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);
}

.btn-inverse:hover,
.btn-inverse:focus,
.btn-inverse:active,
.btn-inverse.active {
  color:#ffffff;
}


/* -- PHOTO ALBUM ----------------------------------*/
/* --- PHOTOALBUM & VIDEOALBUM --- */
.tGrid {
  position:relative;
  display:block;
  width:100%;
  margin:15px 0;
  overflow:auto;
}

.tGrid h3 {
  margin-top:0;
}


/* --- DEFAULTS --- */
.tGrid .tImg a img {
  position:relative;
  display:block;
  width:100%;
  height:auto;
  border:0;
}

span.galZoom {
  position:absolute;
  top:0;
  right:0;
  bottom:0;
  left:0;
  background:transparent url(galzoom.png) center no-repeat;
  overflow:hidden;
  opacity:0;
  -webkit-transition:opacity 0.5s;
  transition:opacity 0.5s;
}
.ie8 span.galZoom {
  visibility:hidden;
}

a:hover span.galZoom, a:active span.galZoom {
  opacity:1;
}
.ie8 a:hover span.galZoom, .ie8 a:active span.galZoom {
  visibility:visible;
}


/* --- PHOTO THUMBNAILS --- */
.tGrid .tImg {
  position:relative;
  float:left;
  width:19.2%;
  margin:0.5%;
  overflow:hidden;
  -webkit-transition:width 0.3s, margin 0.3s;
  transition:width 0.3s, margin 0.3s;
}
.tGrid .full1 {
  margin-left:0;
  clear:left;
}
.tGrid .full5 {
  margin-right:0;
}

.tGrid .tImg a {
  position:relative;
  display:block;
  background:#999999;
  background:rgba(0,0,0,0.75);
  text-align:center;
  -webkit-transition:border 0.5s;
  transition:border 0.5s;
  overflow:hidden;
}



/* --- PAGE NAVIGATION --- */
.photoNav {
  display:block;
  float:left;
  width:100%;
  text-align:center;
}
.photoNav ul {
  position:relative;
  width:auto;
  margin:0;
  padding:5px 0 15px 0;
  list-style-type:none;
}
.photoNav li {
  position:relative;
  display:inline-block;
  width:auto;
  height:22px;
  padding:0 10px;
  font-size:1.1em;
  line-height:1.25em;
  vertical-align:middle;
}
.photoNav li.nav {
  width:7px;
  height:12px;
  padding:5px;
  background-color:rgb(1,80,159);
  background-image:url(sprite-icons.png);
  background-repeat:no-repeat;
  opacity:0.7;
  -webkit-transition:opacity 0.3s;
  transition:opacity 0.3s;
}
.photoNav li.prev {
  margin-right:5px;
  background-position:-295px -75px;
}

.photoNav li.next {
  margin-left:5px;
  background-position:-355px -75px;
}
.photoNav li.prev:hover, nav li.prev:active {
  opacity:1;
}
.photoNav li.next:hover, .photoNav li.next:active {
  opacity:1;
}
.photoNav li.prev.disabled {
  opacity:0.3;
}
.photoNav li.next.disabled {
  opacity:0.3;
}

.photoNav li.nav a {
  display:block;
  width:17px;
  height:22px;
  padding:0;
  cursor:pointer;
  color:#333333;
}



/* --- PHOTOALBUM - SLIDESHOW --- */
.thumbTab {
  position:relative;
  width:49%;
}
.thumbTab.left {
  float:left;
  margin:15px 15px 15px 0;
}
.thumbTab.right {
  float:right;
  margin:15px 0 15px 15px;
}

.thumbTab.center {
  width:100%;
  margin:15px 0;
}

/* container for slides */
.thumbImg {
  position:relative;
  width:100%;
  padding:0 0 65%;
}

/* single slide */
.thumbImg .slideImg {
  position:absolute;
  display:none;
  top:0;
  right:0;
  bottom:0;
  left:0;
  overflow:hidden;
}

.thumbImg .slideImg.active {
  display:block;
}

.thumbImg .slideImg span {
  position:absolute;
  display:block;
  top:0;
  right:0;
  bottom:0;
  left:0;
  overflow:hidden;
}

.thumbImg .slideImg img {
  display:block;
  width:100%;
  height:auto;
}

/* tabs (those little circles below slides) */
.slidetabs {
  margin:5px 0 0;
  text-align:center;
}

/* single tab */
.slidetabs a {
  display:inline-block;
  width:8px;
  height:8px;
  padding:6px;
  outline:none;
}

.slidetabs a span {
  display:block;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#e4e8eb;
  background:rgba(0,0,0,0.3);
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
  outline:none;
}

.slidetabs a:hover span, .slidetabs a:active span {
  background:#dddddd;
  background:rgba(0,0,0,0.7);
}

.slidetabs a.active span {
  background:#01509f;
}


/* --- NEW OVERLAY GALLERY --- */
#galOverlay {
  position:fixed;
  top:0;
  right:0;
  bottom:0;
  left:0;
  background:#000000;
  text-align:center;
  z-index:500;
  display:none;
  -webkit-transition:bottom 0.3s;
  transition:bottom 0.3s;
}

.contentGallery {
  position:relative;
  width:100%;
  text-align:center;
}
#galOverlay img {
  display:inline-block;
  width:auto;
  max-width:90%;
  height:auto;
  max-height:90%;
  vertical-align:middle;
}

.contentGallery img {
  display:inline-block;
  width:auto;
  max-width:90%;
  height:auto;
}
#galOverlay .mid {
  display:inline-block;
  width:1px;
  height:100%;
  vertical-align:middle;
}
#galOverlay .text {
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  padding:0 0 15px;
  color:#ffffff;
  color:rgba(255,255,255,0.7);
}

.contentGallery .text {
  position:relative;
  width:100%;
  text-align:center;
  padding:15px 0;
  color:#ffffff;
  color:rgba(255,255,255,0.7);
}

#galOverlay .close {
  position:absolute;
  right:15px;
  top:15px;
  width:20px;
  height:20px;
  padding:10px;
  background:transparent url(sprite-icons.png) 10px -70px no-repeat;
  cursor:pointer;
  z-index:501;
  opacity:0.5;
  -webkit-transition:opacity 0.3s;
  transition:opacity 0.3s;
}
#galOverlay .close:hover {
  opacity:1;
}

.close:after {
  content:"schließen";
  position:absolute;
  top:4px;
  right:50px;
  border-radius:30px;
  padding:7px 10px 6px;
  background:#ECECEC;
  background:rgba(255,255,255,0.9);
  opacity:0;
  font-size:0.85em;
  line-height:1.25em;
  -webkit-transition:opacity 0.3s;
  transition:opacity 0.3s;
}

.close:hover:after {
  opacity:1;
}
#galOverlay .loader {
  position:absolute;
  display:block;
  top:0;
  right:0;
  bottom:0;
  left:0;
  background:#111111 url(loader.gif) center center no-repeat;
  z-index:501;
}

#galOverlay .galNav {
  position:absolute;
  top:0;
  right:0;
  bottom:0;
  left:0;
  margin:0;
  padding:0;
  list-style-type:none;
}

.contentGallery .galNav {
  position:relative;
  width:100%;
  margin:20px 0;
  padding:0;
  list-style-type:none;
}

#galOverlay .galNav li {
  position:absolute;
  width:60px;
  top:0;
  bottom:0;
  padding:0;
  overflow:hidden;
}
.contentGallery .galNav li {
  position:relative;
  display:block;
  float:left;
  width:50%;
}
#galOverlay .galNav .prev {
  left:0;
}
.contentGallery .galNav .prev {
  text-align:right;
}
#galOverlay .galNav .next {
  right:0;
}
.contentGallery .galNav .next {
  text-align:left;
}
#galOverlay .galNav .disabled {
  display:none;
}

#galOverlay .galNav li a {
  display:block;
  width:100%;
  height:100%;
  opacity:0.5;
  background:transparent;
  -webkit-transition:opacity 0.5s;
  transition:opacity 0.5s;
}

.contentGallery .galNav li a {
  position:relative;
  display:inline-block;
  width:60px;
  height:60px;
  opacity:0.5;
  background:transparent;
  -webkit-transition:opacity 0.5s;
  transition:opacity 0.5s;
}

#galOverlay  li a:hover, #galOverlay  li a:active, 
.contentGallery  li a:hover, .contentGallery  li a:active {
  opacity:1;
}

#galOverlay .galNav li a span, .contentGallery .galNav li a span {
  position:absolute;
  display:block;
  top:50%;
  width:40px;
  height:40px;
  margin-top:-30px;
  padding:10px;
  background-image:url(sprite-icons.png);
  background-repeat:no-repeat;
  cursor:pointer;
}
#galOverlay .galNav .next a span, .contentGallery .galNav .next a span {
  right:0;
  background-position:-300px -230px;
}
#galOverlay .galNav .prev a span, .contentGallery .galNav .prev a span {
  left:0;
  background-position:-220px -230px;
}


#galOverlay .vPlayer {
  position:relative;
  display:inline-block;
  width:65%;
  height:0;
  padding:0 0 37%;
  vertical-align:middle;
}

#galOverlay .vPlayer #player {
  position:absolute;
  top:0;
  right:0;
  bottom:0;
  left:0;
}

#galOverlay .vPlayer .img {
  display:none;
}
#galOverlay .vPlayer .title {
  position:absolute;
  top:-25px;
  left:0;
  font-size:1.1em;
  line-height:1.25em;
  color:#ffffff;
}

/* -- FORM CSS -------------------------------------*/
/* --- CONTAINERS --- */
.conForm {
  position:relative;
  margin:30px 0;
}

.conForm:after {
  content:"";
  position:relative;
  display:block;
  width:100%;
  clear:both;
}

/* --- SECTIONS --- */
.conForm section {
  float:left;
  width:48.5%;
  padding:0 0 10px 0; 
}
.conForm .formName {
  padding-right:3%;
}

.conForm .formSend {
  width:100%;
  margin:0 0 20px;
  padding:0;
}

/* --- WRAPPERS --- */

.conForm div {
  position:relative;
  display:block;
  float:left;
  width:100%;
  padding:0 0 15px 0;
}

.conForm .wide {
  width:100%;
}
.conForm .double1 {
  width:32%;
  margin-right:5%;
  padding:0;
}
.conForm .double2 {
  width:63%;
  padding:0;
}
/* --- STANDARDS --- */
.conForm h1 {
  margin:0 0 20px;
  font-size:1.6em;
  line-height:1.25em;
}


.conForm h2 {
  margin-top:0;
}
.noJS .conForm .tabTitle {
  display:none;
}
.conForm h4 {
  margin:0 0 20px;
}
.conForm p {
  clear:both;
}
.star {
  padding:0 0 0 2px;
  opacity:0;
  font-size:1.1em;
  line-height:1em;
  font-weight:bold;
  color:#01509f;
  -webkit-transition:opacity 0.5s;
  transition:opacity 0.5s;
}
.ie8 .star {
  visibility:hidden;
}
.required .star {
  opacity:1;
}
.ie8 .required .star {
  visibility:visible;
}

/* --- LABELS --- */
.conForm label {
  position:relative;
  display:none;
  padding:0 0 2px 4px;
  color:#333333;
}

.conForm label.beside {
  display:block;
}


.conForm label.radio, .conForm .wide label.radio {
  display:block;
  float:left;
  width:auto;
  margin:0;
  padding:0 15px 0 0;
  color:#333333;
}

.conForm label#lCity, .conForm label#lShipcity {
  left:40%;
}

.conForm label.long, .conForm .wide label.long {
  display: inline-block;
  width: 75%;
  width: calc(100% - 30px);
  padding: 0;
  vertical-align: top;
}

/* --- INPUTS --- */

.conForm input {
  position:relative;
  float: left;
  width: 100%;
  margin: 0;
  z-index:0;
}
.conForm input.short {
  width:30%;
}
.conForm input.medium {
  width:40%;
  margin:0 3%;
}

.conForm input.radio, .conForm .required input.radio {
  margin-left:0;
}

.conForm input.btn {
  float:right;
  width:auto;
  margin:0 0 20px;
  padding:4px 20px 5px;
  font-size:1.1em;
  line-height:1em;
  letter-spacing:1px;
  color:#ffffff;
  white-space:normal;
}

.conForm .invalid input {
  border:1px solid #01509f;
}
.conForm .invalid input.radio, .conForm .invalid input.checkbox {
  border:2px solid #01509f;
  outline:2px solid #01509f;
}
/* --- SELECT --- */

.conForm select {
  position:relative;
  float:left;
  width: 100%;
  cursor:pointer;
}
.conForm select.short {
  width:60px;
}

.conForm option {
  color:#333333;
}

.conForm .invalid select {
  border:1px solid #01509f;
}
/* --- TEXTAREA --- */
.conForm textarea {
  float:left;
  width:100%;
  height:300px;
}

.conForm .invalid textarea {
  border:1px solid #01509f;
}
/* --- WALL --- */
.conForm .errors {
  float:none;
  display:none;
  width:auto;
  margin:0 0 30px;
  border-radius:2px;
  padding:16px 15px 20px;
  background:#f9f9f9;
  background:rgba(1,80,159,0.2);
  color:#01509f;
}
.noJS .conForm .errors.show {
  display:block;
}
/* title */
.conForm .errors h2 {
  margin:0 0 10px;
  font-size:1em;
  line-height:1.25em;
}

.conForm .errors p {
  margin:5px 0;
  color:#333333;
}
/* -- INDEX ----------------------------------------*/
/* -- INDEX ----------------------------------------*/
#index {
  position:relative;
  float:left;
  width:100%;
  margin:0;
  padding:0;
}

#index ul {
  margin:0;
  padding:0;
  list-style-type:none;
}

#index li {
  position:relative;
  padding:6px 0;
}
#index a {
  position:relative;
  display:block;
  border:1px solid #e0e0e0;
  padding:6px;
}
#index span {
  position:relative;
  display:block;
  color:#333333;
  text-decoration:none;
}
#index .btn {
  position:absolute;
  display:block;
  bottom:-24px;
  right:12px;
  width:auto;
  margin:0;
  border-radius:50%;
  padding:7px 12px 4px 16px;
  color:#ffffff;
  color:rgba(255,255,255,0.85);
  font-size:2.5em;
  line-height:1em;
  text-shadow: -1px 1px rgba(0,0,0,0.3);
  opacity:0;
  -webkit-transition:opacity 0.3s;
  transition:opacity 0.3s;
}
#index a:hover .btn, #index a:active .btn, #index a:focus .btn {
  opacity:1;
}

.ie8 #index .btn {
  visibility:hidden;
}
.ie8 #index a:hover .btn, .ie8 #index a:active .btn, .ie8 #index a:focus .btn {
  visibility:visible;
}
#index .ixImg {
  overflow:hidden;
}
#index .ixImg img {
  display:block;
  width:100%;
  height:auto;
}
#index .ixTitle {
  font-size:1.2em;
  line-height:1.25em;
  color:#01509f;
}

#index .ixDesc {
  padding:6px 0 0;
}
#index .ixMore {
  padding:6px 0 0;
  color:#01509f;
}
#index .ixMore span {
  display:inline-block;
  width:5px;
  height:5px;
  margin:0 5px 0 0;
}

#index a:hover, #index a:active, #index a:focus {
  background:#e4e8eb;
}

/* -- Titel mit Beschreibung -- */


/* -- Einspaltig - Bild, Titel und Beschreibung -- */
#index .ix1 a {
  overflow:auto;
}

#index .ix1 .ixImg {
  float:left;
  width:170px;
  margin: 0 15px 0 0;
}
#index .ix1 .col2 {
  margin-left:185px;
}

/* -- Dreispaltig - Bild und Titel -- */
#index .ix2 li {
  float:left;
  width:32.66667%;
  margin:0.5%;
  padding:0;
  overflow:hidden;
}

#index .ix2 .small1 {
  margin-left:0;
}
#index .ix2 .small3 {
  margin-right:0;
}
#index .ix2 a {
  overflow:hidden;
}

#index .ix2 .ixImg {
  width:100%;
  height:0;
  margin:0;
  padding:0 0 70%;
  overflow:hidden;
}
#index .ix2 .ixImg img {
  position:absolute;
  top:0;
  left:0;
  display:block;
  width:auto;
  min-width:100%;
  height:auto;
  min-height:100%;
}
#index .ix2 .ixTitle {
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  padding:5px;
  background:transparent url(pixel-white-80.png) top left repeat;
  background:rgba(255,255,255,0.8);
  font-size:1em;
  line-height:1.25em;
  color:#333333;
}
#index .ix2 .ixMore {
  display:none;
}

#index .ix2 a:hover, .ix2 a:active, .ix2 a:focus {
}
#index .ix2 a:hover .ixTitle, #index .ix2 a:active .ixTitle, #index .ix2 a:focus .ixTitle {
  text-decoration:underline;
}
/* -- GOOGLE MAP -----------------------------------*/
#map {
  position:relative;
  width:100%;
  height:350px;
  margin:0;
}



/* -- SCREEN SIZES ---------------------------------*/
@media (max-width:1100px) {
  header, #page, footer {
    width:94%;
  }

  #menu:after {
    height:28px;
  }
  #menu ul li a span {
    height:18px;
    padding:4px 15px 6px;
    font-size:0.9em;
    line-height:1.25em;
  }
  .macronav ul li a span {
    -webkit-hyphens:auto;
    -moz-hyphens:auto;
    hyphens:auto;
  }

  #index .ix1 .ixImg {
    width:35%;
    height:auto;
    margin:0 8px 5px 0;
  }
  #index .ix1 .col2 {
    margin-left:0;
  }

  #index .ix2 li {
    width:49.5%;
  }
  #index .ix2 .small1 {
    margin-left:0.5%;
    clear:none;
  }
  #index .ix2 .small3 {
    margin-right:0.5%;
  }
  #index .ix2 .odd {
    margin-left:0;
    clear:both;
  }
  #index .ix2 .even {
    margin-right:0;
  }

  .conForm section {
    width:100%;
  }

  .conForm .formName {
    padding-right:0;
  }

}




/* --- TABLET PORTRAIT --- */
/* --- IPAD PORTRAIT --- */

@media (max-width: 800px) {

  #top {
    position:fixed;
    top:0;
    left:0;
    height:55px;
    background-color:#ffffff;
    background-position:center 0;
    z-index:10;
  }

  header {
    width:auto;
    margin:0;
    padding:0;
    text-align:right;
  }
  #sTrigger {
    display:block;
  }

  .logo {
    width:200px;
    padding:3px 15px 0 0;
  }

  #menu, #right .macronav {
    display:none;
  }
  #right .ixSpecial {
    display:block;
  }
  #middle {
    margin-top:65px;
  }
  #page {
    width:auto;
    min-width:0;
    margin:0;
    padding:0;
  }
  #content, #webS #content {
    width:100%;
    border:0;
    padding:0 3% 25px;
  }

  #right {
    width:100%;
    border:0;
    padding:0 3% 25px;
  }
  #teaser {
    border-top:1px solid #e0e0e0;
    padding-top:20px;
    -webkit-columns:2 230px;
    -moz-columns:2 230px;
    -ms-columns:2 230px;
    -o-columns:2 230px;
    columns:2 230px;
    -webkit-column-gap:24px;
    -moz-column-gap:24px;
    -ms-column-gap:24px;
    -o-column-gap:24px;
    column-gap:24px;
  }

  #teaser div.ZMSTeaserElement {
    -webkit-column-break-inside:avoid;
    -moz-column-break-inside:avoid;
    -ms-column-break-inside:avoid;
    -o-column-break-inside:avoid;
    column-break-inside:avoid;
    display:inline-block;
    width:100%;
  }
  footer {
    width:94%;
    margin:0 auto 50px;
    border:0;
    padding:0 3% 15px;
    text-align:center;
  }
  footer section {
    width:100%;
    margin:0;
    border:0;
    border-bottom:1px solid #ffffff;
    padding:15px 0;
    text-align:center;
  }
  footer .strengths {
    border-bottom:1px solid #ffffff;
  }
  footer .copyright {
    width:100%;
    border:0;
    padding:15px 0 0;
  }
  footer a, footer span {
    display:inline-block;
    padding:2px 5px;
  }
  footer  .copyright span {
    display:block;
  }


  #searchForm {
    display:block;
  }
  div.graphic a.zoom span {
    display:none;
  }

  .tGrid .tImg {
    width:24.25%;
  }

  .tGrid .full1 {
    margin-left:0.5%;
    clear:none;
  }
  .tGrid .full5 {
    margin-right:0.5%;
  }

  .tGrid .med1 {
    margin-left:0;
    clear:left;
  }
  .tGrid .med4 {
    margin-right:0;
  }

  #vGrid .vImg, #aGrid .aImg {
    width:32%;
    margin:1%;
  }
  #vGrid .vImg.odd, #aGrid .aImg.odd {
    margin-left:1%;
  }
  #vGrid .vImg.even, #aGrid .aImg.even {
    margin-right:1%;
  }

  #vGrid .vImg.small1, #aGrid .aImg.small1 {
    margin-left:0;
  }
  #vGrid .vImg.small3, #aGrid .aImg.small3 {
    margin-left:0;
  }
  #index .ix1 .ixImg {
    width:30%;
  }
  #index .ix2 li {
    width:32%;
    margin:1%;
  }
  #index .ix2 .odd {
    margin-left:1%;
    clear:none;
  }
  #index .ix2 .even {
    margin-right:1%;
  }
  #index .ix2 .small1 {
    margin-left:0;
    clear:both;
  }
  #index .ix2 .small3 {
    margin-right:0;
  }


}


@media (max-width: 650px) {

  #index .ix1 .ixImg {
    width:40%;
  }

  #index .ix2 li {
    width:49%;
    margin:1%;
  }
  #index .ix2 .small1 {
    margin-left:1%;
    clear:none;
  }
  #index .ix2 .small3 {
    margin-right:1%;
  }
  #index .ix2 .odd {
    margin-left:0;
    clear:both;
  }
  #index .ix2 .even {
    margin-right:0;
  }

}

@media (max-width: 600px) {

  .tGrid .tImg {
    width:32%;
    margin:1%;
  }

  .tGrid .med1 {
    margin-left:1%;
    clear:none;
  }
  .tGrid .med4 {
    margin-right:1%;
  }

  .tGrid .small1 {
    margin-left:0;
    clear:left;
  }
  .tGrid .small3 {
    margin-right:0;
  }

  #vGrid .vImg, #aGrid .aImg {
    width:49%;
  }
  #vGrid .vImg.small1, #aGrid .aImg.small1 {
    margin-left:1%;
  }
  #vGrid .vImg.small3, #aGrid .aImg.small3 {
    margin-right:1%;
  }
  #vGrid .vImg.odd, #aGrid .aImg.odd {
    margin-left:0;
  }
  #vGrid .vImg.even, #aGrid .aImg.even {
    margin-right:0;
  }
}


/* --- SMARTPHONES QUERFORMAT --- */
/* --- SMARTPHONES QUERFORMAT --- */

@media (max-width: 550px) {

  .conForm .double1 {
    width:100%;
    margin:0;
    padding:0 0 15px;
  }
  .conForm .double2 {
    width:100%;
    margin:0;
  }

}


@media (max-width: 450px) {
  div.ZMSGraphic,
  div.ZMSGraphic.left,
  div.ZMSGraphic.right,
  div.ZMSGraphic.floatleft,
  div.ZMSGraphic.floatright {
    width:100%;
    max-width:100%;
    margin-left:0;
    margin-right:0;
  }

  div.ZMSGraphic div.graphic {
    width:100% !important;
  }
  div.ZMSGraphic img {
    width:100% !important;
  }
  .tGrid .tImg {
    width:49%;
  }
  .tGrid .small1 {
    margin-left:1%;
    clear:none;
  }
  .tGrid .small3 {
    margin-right:1%;
  }
  .tGrid .odd {
    margin-left:0;
    clear:left;
  }
  .tGrid .even {
    margin-right:0;
  }

  #index .ix1 .ixDesc {
    clear:both;
  }

  #index .ix2 li {
    width:100%;
    margin:10px 0;
  }
  #index .ix2 .small1,
  #index .ix2 .small3,
  #index .ix2 .even,
  #index .ix2 .odd {
    margin-right:0;
    margin-left:0;
  }
  #index .ix2 .ixImg {
    height:auto;
    margin:0;
    padding:0;
  }
  #index .ix2 .ixImg img {
    position:relative;
    top:auto;
    left:auto;
    width:100%;
    min-width:0;
    height:auto;
    min-height:0;
  }
  #index .ix2 .ixTitle {
    position:relative;
    right:auto;
    bottom:auto;
    left:auto;
  }


  #vGrid .vImg, #aGrid .aImg {
    width:100%;
    margin:10px 0;
  }

  #vGrid .vImg.small1, #aGrid .aImg.small1,
  #vGrid .vImg.odd, #aGrid .aImg.odd {
    margin-left:0;
  }
  #vGrid .vImg.small3, #aGrid .aImg.small3,
  #vGrid .vImg.even, #aGrid .aImg.even {
    margin-left:0;
  }

}


/* --- SMARTPHONES PORTRAIT --- */


/* --- SMARTPHONES PORTRAIT --- */

@media (max-width: 325px) {


}


/* -- COOKIE CONSENT -----------------------------------------------*/
.cookie-consent {
  position: fixed;
  display: block;
  right: 0;
  bottom: -100%;
  left: 0;
  padding: 1rem 0;
  background-color: rgb(238,238,238);
  box-shadow: 0 0 5px rgba(0,0,0,0.1);
  color: rgb(51,51,51);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  clear: both;
  z-index: 100;
}


.csstransforms .cookie-consent {
  bottom: 0;
  -webkit-transform: translate(0,110%);
  transform: translate(0,110%);
}


body[data-cookie="top"] .cookie-consent {
  top: -100%;
  bottom: auto;
}

.csstransforms body[data-cookie="top"] .cookie-consent {
  top: 0;
  bottom: auto;
  -webkit-transform: translate(0,-110%);
  transform: translate(0,-110%);
}

.cookie-consent.show {
  bottom: 0;
}

.csstransforms .cookie-consent.show {
  -webkit-transform: translate(0,0);
  transform: translate(0,0);
}


body[data-cookie="top"] .cookie-consent.show {
  top: 0;
  bottom: auto;
}

.csstransforms body[data-cookie="top"] .cookie-consent.show {
  -webkit-transform: translate(0,0);
  transform: translate(0,0);
}


.cookie-consent.show.hide {
  bottom: -100%;
}

.csstransforms .cookie-consent.show.hide {
  bottom: 0;
  -webkit-transform: translate(0,110%);
  transform: translate(0,110%);
}


.cookie-consent::after {
  content: "";
  position: relative;
  display: block;
  width: 100%;
  clear: both;
}

.cookie-consent > div {
  position: relative;
  width: 96%;
  max-width: 1280px;
  margin: 0 auto;
  font-size: 0.85em;
  text-align: left;
}


.cookie-consent p {
  width: auto;
  max-width: 100%;
  margin: 0;
  padding: 0;
  text-align: left;
}


.cookie-consent a {
  display: inline-block;
  text-decoration: underline;
}


.no-touch .cookie-consent a:hover, .no-touch .cookie-consent a:active {

}


.cookie-consent .btn {
  display: block;
  float: right;
  width: auto;
  margin: 0 0 5px 1rem;
  padding: 0.5rem 1rem;
  background-color: rgb(204,204,204);
  color: rgb(51,51,51);
}

.cookie-consent .btn > i {
  font-size: 1rem;
}



@media (max-width: 450px) {

  .cookie-consent > div {
    font-size: 0.8em;
  }

}




/****************************************************/
/*    8.  CSS-Modul: PRINT                          */
/****************************************************/


/****************************************************/
/*    9.  ZMI Management Interface                  */
/****************************************************/

.cmsTxtColorStrong0 { color: #436976; }
.cmsTxtColorStrong1 { color: #666666; }
.cmsBgColorStrong0  { background-color: #8CABB9; }
.cmsBgColorStrong1  { background-color: #CCCCCC; }
.cmsBgColorMedium0  { background-color: #DDE6EC; }
.cmsBgColorLight0   { background-color: #FFFFFF; }
div.ZMSTable table th { background-color:#DDEFFC; }
div.ZMSTable table td { background-color:#EEEEEE; }

.zmiTableRowEven {background-color:#eee;}
.zmiTableRowOdd {background-color:#ccc;}

.form-submit { font-size:12px; }

body.zmi h1, body.zmi h2, body.zmi h3, body.zmi h4, 
body.zmi h5, body.zmi h6  {
  font-family:'Lucida Grande',Helvetica,Verdana,Arial,Geneva,sans-serif;
  font-weight:bold;
  font-size:15px;
  line-height:1.25em;
} 
body.zmi p, body.zmi li, body.zmi blockquote  {
  font-family:'Lucida Grande',Helvetica,Verdana,Arial,Geneva,sans-serif;
  font-size:13px;
  line-height:1.25em;
} 
body.zmi form input,body.zmi form select, body.zmi form textarea {
  margin:1px;
  padding:1px;
  box-shadow:none;
}

/* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
 * +- Body
 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ */

body.print { 
  background-color:#fff; 
}

span.unicode { 
  font-family:"Arial Unicode MS", Verdana, Arial, Helvetica, sans-serif; 
}

span.highlight { 
  background-color:#cccccc;
  color:#cccccc;
  font-weight: bold;
  border:none; 
}

