/* source-sans-pro-300italic - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: italic;
  font-weight: 300;
  src: url('../Fonts/source-sans-pro-v18-latin-300italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../Fonts/source-sans-pro-v18-latin-300italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/source-sans-pro-v18-latin-300italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/source-sans-pro-v18-latin-300italic.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/source-sans-pro-v18-latin-300italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../Fonts/source-sans-pro-v18-latin-300italic.svg#SourceSansPro') format('svg'); /* Legacy iOS */
}

/* source-sans-pro-regular - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 400;
  src: url('../Fonts/source-sans-pro-v18-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../Fonts/source-sans-pro-v18-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/source-sans-pro-v18-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/source-sans-pro-v18-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/source-sans-pro-v18-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../Fonts/source-sans-pro-v18-latin-regular.svg#SourceSansPro') format('svg'); /* Legacy iOS */
}

/* source-sans-pro-300 - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 300;
  src: url('../Fonts/source-sans-pro-v18-latin-300.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../Fonts/source-sans-pro-v18-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/source-sans-pro-v18-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/source-sans-pro-v18-latin-300.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/source-sans-pro-v18-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../Fonts/source-sans-pro-v18-latin-300.svg#SourceSansPro') format('svg'); /* Legacy iOS */
}

/* source-sans-pro-italic - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: italic;
  font-weight: 400;
  src: url('../Fonts/source-sans-pro-v18-latin-italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../Fonts/source-sans-pro-v18-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/source-sans-pro-v18-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/source-sans-pro-v18-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/source-sans-pro-v18-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../Fonts/source-sans-pro-v18-latin-italic.svg#SourceSansPro') format('svg'); /* Legacy iOS */
}

/* source-sans-pro-600 - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 600;
  src: url('../Fonts/source-sans-pro-v18-latin-600.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../Fonts/source-sans-pro-v18-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/source-sans-pro-v18-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/source-sans-pro-v18-latin-600.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/source-sans-pro-v18-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../Fonts/source-sans-pro-v18-latin-600.svg#SourceSansPro') format('svg'); /* Legacy iOS */
}

/* source-sans-pro-600italic - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: italic;
  font-weight: 600;
  src: url('../Fonts/source-sans-pro-v18-latin-600italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../Fonts/source-sans-pro-v18-latin-600italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/source-sans-pro-v18-latin-600italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/source-sans-pro-v18-latin-600italic.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/source-sans-pro-v18-latin-600italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../Fonts/source-sans-pro-v18-latin-600italic.svg#SourceSansPro') format('svg'); /* Legacy iOS */
}

/* source-sans-pro-700 - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 700;
  src: url('../Fonts/source-sans-pro-v18-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../Fonts/source-sans-pro-v18-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/source-sans-pro-v18-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/source-sans-pro-v18-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/source-sans-pro-v18-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../Fonts/source-sans-pro-v18-latin-700.svg#SourceSansPro') format('svg'); /* Legacy iOS */
}

/* source-sans-pro-700italic - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: italic;
  font-weight: 700;
  src: url('../Fonts/source-sans-pro-v18-latin-700italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../Fonts/source-sans-pro-v18-latin-700italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/source-sans-pro-v18-latin-700italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/source-sans-pro-v18-latin-700italic.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/source-sans-pro-v18-latin-700italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../Fonts/source-sans-pro-v18-latin-700italic.svg#SourceSansPro') format('svg'); /* Legacy iOS */
}

@font-face {
  font-family: "FreestyleScriptCom-Bold";
  font-style: normal;
  font-weight: 400;
  src: url('../Fonts/FreestyleScriptCom-Bold.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FreestyleScriptCom-Bold.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FreestyleScriptCom-Bold.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FreestyleScriptCom-Bold.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../Fonts/FreestyleScriptCom-Bold.svg#FreestyleScriptComBold') format('svg'); /* Legacy iOS */
}

html {
  font-size: 62.5%;
  line-height: 1.2;
}
body, body.cke_editable, body.cke_ltr {
  background: #FFF;
  font-family: 'Source Sans Pro', Arial, sans-serif;
  color: #00505a;
  color: #000;
  background: #fff;
  font-size: 1.8rem;
  font-weight: 300;
  text-align: center;
}
body.cke_editable, body.cke_ltr {
  padding: 5px;
  font-size: 1.8rem;
  line-height: 1.8;
  text-align: left;
}
.cke_panel_listItem.cke_selected a, .cke_panel_listItem a:hover, .cke_panel_listItem a:focus, .cke_panel_listItem a:active {
  background: #eee;
  color: #000 !important;
}
.cke_panel_listItem * {
  font-size: 14px !important;
}
b, strong {
  font-weight: 600;
}

img, embed, object, video {
  max-width: 100%;
  height: auto;
  width: auto;
}
iframe {
  display: block;
}

.video-embed,
.mediaelement-video {
  position: relative;
  padding-bottom: 56.25%; /* Default for 1600x900 videos 16:9 ratio*/
  padding-top: 0px;
  height: 0;
  overflow: hidden;
}
.video-embed iframe,
.mediaelement-video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/* ----------------------- Farben ---------------------- */

.schwarz {
  color: #000;
}
.grau {
  color: #888;
}
.dunkelblau {
  color: #00505a;
}
.hellblau {
  color: #78c9f0;
}
.gelb {
  color: #ffdc0b;
}
.orange {
  color: #d55d00;
}
.rot {
  color: #e2001a;
}
.violett {
  color: #A5577C;
}
.weiss {
  color: #fff;
}

/* ----------------------- Container ---------------------- */

#noscript {
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  background: #ffb400;
  color: #fff;
  font-size: 1.6rem;
  padding: 10px;
  width: 100%;
}
.page-loading {
  position: fixed;
  z-index: 0;
  width: 196px;
  height: 196px;
  top: 50%;
  left: 50%;
  margin: -98px 0 0 -98px;
  -webkit-animation: spin 2s linear infinite;
  -moz-animation: spin 2s linear infinite;
  animation: spin 2s linear infinite;
}
@-webkit-keyframes pulse {
    0% { -webkit-transform: scale(1); }
    50% { -webkit-transform: scale(0.9); }
    100% { -webkit-transform: scale(1); }
}
@keyframes pulse {
    0% { transform: scale(1); }
    50% { transform: scale(0.8); }
    100% { transform: scale(1); }
}
@-moz-keyframes spin { 100% { -moz-transform: rotate(-360deg); } }
@-webkit-keyframes spin { 100% { -webkit-transform: rotate(-360deg); } }
@keyframes spin { 100% { -webkit-transform: rotate(-360deg); transform:rotate(-360deg); } }


#page {
  position: relative;
  z-index: 1;
  min-width: 360px;
}

.container-fluid {
  max-width: 1140px;
  min-width: 320px;
  margin: 0 auto;
  text-align: left;
}
.container-fluid .container-fluid {
  min-width: 0;
}
/* volle Bildschrimbreite */
section.layout_1 > .container-fluid {
  max-width: 100%;
  padding: 0;
}
.col1 > .row {
  margin-left: 0;
  margin-right: 0;
}

div.no-padding {
  padding: 0 !important;
}


#page > header {
  position: fixed;
  left: 0;
  width: 100%;
  z-index: 10;
  min-height: 80px;
  transition: all 300ms ease;
  background: url(gfx/bg_header.png) top center no-repeat;
  background-size: 0;
}
.sauna #page > header {
  background-image: url(gfx/bg_header_sauna.png);
}
.wellness #page > header {
  background-image: url(gfx/bg_header_wellness.png);
}
.kurse #page > header {
  background-image: url(gfx/bg_header_kurse.png);
}
#page > header.with-bg {
  background-size: cover;  
}


a#home_link {
  position: absolute;
  right: 5%;
  bottom: -115px;
  width: 200px;
  transition: all 500ms ease;
  z-index: 19;
}

@media(min-width:1600px) {
  #page.with-slider a#home_link {
    width: 240px;
    bottom: -120px;    
  }  
}


a#home_link img {
  width: 100%;
  height: auto;
  display: block;
}
.scrolled a#home_link {
  /*! right: 7%; */
  bottom: -70px;
  /*! width: 140px; */
}



#topbar {
  text-align: right;
  max-width: 70%;
  padding-top: 15px;
  transition: all 500ms ease;
  position: relative;
  top: 0;
  z-index: 13;
  height: auto;
}
header.open #topbar {
  width: 100%;
  top: -50px;
  padding-top: 0;
  max-width: 100%;
}

#topbar > div {
  display: inline-block;
  margin-left: 20px;
}
header.open #topbar > div {
  display: none;
}

#icons .ce-column {
  margin-right: 20px;
}
#icons img {
  max-height: 30px; 
}
#icons a:focus img {
  background: #fff;
  border-radius: 5px;
}

#social .ce-column {
  margin-right: 10px;
}
#social img {
  max-height: 30px; 
}
#social a:focus img {
  background: #fff;
  border-radius: 10px;
}
header.open #social {
  display: block !important;
  position: relative;
  top: 100px;
  margin: 0;
  left: 50%;
  margin-left: -45px;
  margin-top: -30px;
}

#topnav ul {
  margin: 0;
  position: relative;
  top: -5px;
}
#topnav li {
  display: inline-block;  
  float: left;
}
#topnav li > a {
  display: block;
  line-height: 1.5;
  padding: 0 15px;
  color: #000;
  font-weight: 400;
  font-size: 1.6rem;
  text-transform: uppercase;
  letter-spacing: 2px;
  border-right: 1px solid #000;
}
#topnav li > a:hover,
#topnav li > a:focus,
#topnav li.active > a {
  color: #00505a;
  text-decoration: none;
}
#topnav li > a:focus {
  background: #fff;  
}
#topnav li.active > a {
  font-weight: 600;
}
#topnav li:last-child > a {
  border-right: 0;
}

header > nav {
  max-width: 1312px;
  margin: 0 auto;
  padding: 20px;
  position: relative;
  z-index: 12;
}
header.open > nav { 
   background: #ffdc0b;
   padding: 15px 20px;
}
#search {
  float: left;
  margin-left: 30px;
  padding-top: 3px;
  position: relative;
  top: 0;
  transition: all 200ms ease;  
}
header.open #search {
  top: -500px;
}

#fullnav {
  position: fixed;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;  
  height: 0;
  visibility: hidden;
  overflow: hidden;
  overflow-y: scroll;
  background: #ffdc0b;
  padding-top: 95px;
  transition: all 200ms ease;
}
header.open #fullnav {
  visibility: visible;
  height: 100%;
  height: 100vh;
}


#fullnav > .top > div {
  display: inline-block;
}

#buehne {
  clear: both;
  position: relative;
  z-index: 1;
}

#breadcrumb {
  margin: 2.5% 0px 0px 1.5%;
  font-size: 1.2rem;
  text-align: left;
  display: none;
}
#breadcrumb .arrow:before {
  content: ' \2192 ';
  padding: 0 5px;
}

#content {
  position: relative;
  z-index: 2;
  line-height: 1.6;
  padding: 0 0 80px;
  background: #fff;
  min-height: calc(100vh - 220px);
}

#title {
  position: relative;
  z-index: 8;
  padding: 10px 0;  
  width: 100%;
  background: #fff;
}
.titleholder {
  display: none;
}
@media(min-width:961px) and (min-height:800px) {
  #title {
    position: absolute;
  }
  .titleholder {
    display: block;
  }
  .scrolled #title {
    position: fixed;
    top: 134px;

  }
}

#main {
  position: relative;
  z-index: 7;
}
#main > section {
  max-width: 1170px;
  margin-left: auto;
  margin-right: auto;
}


main > .container-fluid > div {
  padding: 0 15px;
}
#main > section.layout_0 {
  max-width: 100%;
}
#main > section.layout_0:first-child,
#main > section.layout_0 + section.layout_0 {
  padding-top: 0;
}

.frame {
  width: 100%;
}

#page > footer {
  font-size: 1.2rem;
  position: relative;
  z-index: 9;
}
.footerholder {
  background: #fff;
}

#quicklinks {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  right: 0;
  background: #fff;
  box-shadow: 0 0 10px rgba(0,0,0,0.3);
  z-index: 1000;
  display: none;
  transition: all 500ms ease;
}
#quicklinks.off {
  bottom: -100px;
}
@media (min-height:640px) {
  #quicklinks {
    display: block;
  }
}


#quicklinks ul {
  margin: 0;
}
#quicklinks li {
  display: inline-block;
  padding: 15px;
  transition: all 300ms ease;
}
#quicklinks li:last-child {

}
#quicklinks li a {
  font-size: 2.2rem;
  color: #000;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 2px;
  display: block;
  padding: 10px 12px;
}
#quicklinks li:hover > a,
#quicklinks li a:focus {
  text-decoration: none;
  color: #d55d00;
}
#quicklinks li a img {
  max-height: 32px;
  margin-right: 15px;
}
#quicklinks li a:focus {
  border: 1px solid #d55d00;
}

#quicklinks.small li {
  padding-top: 5px;
  padding-bottom: 5px;  
}
#quicklinks.small.small li a {
  font-size: 1.8rem;
}
#quicklinks.small li a img {
  max-height: 24px;
}

#popup {
  max-width: 800px; 
  margin: 0; 
  font-size: 1.5rem;
}
#popup h2 {
  margin-top: 0;
}


/* ----------------------- Navigation ---------------------- */

nav > ul {
  margin: 0;
  text-align: left;
  float: left;
  height: auto;
  transition: all 300ms ease;
}
header.open > nav > ul {
  overflow: hidden;
  visibility: hidden;
  height: 0;
}
nav li {
  display: inline-block;
  position: relative;
}
nav li > a {
  display: block;
  padding: 12px 20px;
  font-size: 2.4rem;
  line-height: 1;
  font-weight: 600;
  line-height: 20px;
  color: #000;
  text-transform: uppercase;
  letter-spacing: 2px;
}
nav li > a:focus,
nav li:hover > a,
nav li.active > a {
  color: #d55d00;
  text-decoration: none;
}

/* 2.Ebene */
nav li > ul {
  position: absolute;
  top: 40px;
  left: 20px;
  min-width: 100%;
  padding: 10px 0 0;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all .30s ease;
     -moz-transition: all .30s ease;
      -ms-transition: all .30s ease;
       -o-transition: all .30s ease;
          transition: all .30s ease;
}
nav li:hover > ul {
  top: 44px;
  opacity: 1;
  visibility: visible;
}
.scrolled nav li > ul {
  padding: 5px 0;
  background: #fff;
  box-shadow: 0 3px 3px rgba(0,0,0,0.2);
}
nav li li {
  float: none;
  display: block;
}
nav li li > a {
  float: none;
  padding: 5px 10px;
  background: #fff;
  margin-bottom: 2px;
  font-size: 2rem;
  white-space: nowrap;
  letter-spacing: 1px;  
}

nav li li.active > a {
  color: #d55d00;
}


#nav_button {
  float: left;
  position: relative;
  width: 40px;
  height: 40px;
  padding-left: 40px;
  font-size: 2.4rem;
  line-height: 1;
  font-weight: 600;
  line-height: 20px;
  color: #000;
  text-transform: uppercase;
  letter-spacing: 2px;
  line-height: 40px;
  color: #d55d00;
  cursor: pointer;
  text-indent: -10000px;
  margin-right: 20px;
}
header.open  #nav_button {
  padding-left: 60px;
  text-indent: 0;
  width: auto;
}


/* burger menu */
#nav_button .btn-toggle {
  position: absolute;
  display: block;
  background-color: #d55d00;
  top: 50%;
  left: 0px;
  margin-top: -1px;
  z-index: 1;
  width: 40px;
  height: 6px;
}
#nav_button .btn-toggle:before,
#nav_button .btn-toggle:after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: rotate(0);
  -moz-transform: rotate(0);
  -ms-transform: rotate(0);
  -o-transform: rotate(0);
  background-color: #d55d00;
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}
#nav_button .btn-toggle:before { top: -12px; }
#nav_button .btn-toggle:after { bottom: -12px; }

/* open */
#nav_button.open .btn-toggle {
  background-color: transparent;
  box-shadow: none;
}
#nav_button.open .btn-toggle:before {
  background-color: #d55d00 !important;
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 0;
  box-shadow: none;
}
#nav_button.open .btn-toggle:after {
  background-color: #d55d00 !important;
  -moz-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  bottom: 0;
  box-shadow: none;
}


/* fullnav */
#fullnav .special ul {
  margin-bottom: 30px;
}
#fullnav .special li {
  display: inline-block;
  margin: 0 15px;
}
#fullnav .special li > a {
  color: #000;
  font-weight: 400;
  position: relative;
  text-align: center;
}
#fullnav .special li > a span {
  position: absolute;
  top: 36px;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  font-size: 12px;
  text-transform: uppercase;  
  opacity: 0;
  transition: all 200ms ease;
}
#fullnav .special li:hover > a span,
#fullnav .special li > a:focus span {
  opacity: 1;
}
#fullnav .special li img {
  max-height: 32px;
}


#fullnav .main > ul {
  margin: 0;
}
#fullnav .main > ul > li {
  padding: 10px 0 5px;
  transition: all 300ms ease;
  background: transparent;
  margin-block: 2px;
}
#fullnav .main > ul > li:hover,
#fullnav .main > ul > li.active {
  background: #fff;
}
#fullnav .main > ul > li > a {
  font-family: "FreestyleScriptCom-Bold";
  font-size: 6rem;
  line-height: 1;
  position: relative;  
}
#fullnav .main > ul > li > a[title="Wellness"]::after {
  content: "";
  position: absolute;
  top: 0;
  right: -150px;
  background: url(gfx/vitamare_klein.png) 0 0 no-repeat;
  background-size: contain;
  display: block;
  width: 112px;
  height: 56px;
}
#fullnav .main > ul > li > a:hover {
  text-decoration: none;
  color: inherit;
}
#fullnav .main ul > li > ul {
  margin-bottom: 0;
  padding: 0 15px 10px;
}
#fullnav .main ul > li li {
  font-size: 2.4rem;
  display: inline-block;
}
#fullnav .main ul > li li::after {
  content: "/";
  color: #000;
}
#fullnav .main ul > li li:last-child::after {
  display: none;
}
#fullnav .main ul > li li > a {
  color: #000;
  padding: 5px 10px;
}
#fullnav .main ul > li li:hover > a,
#fullnav .main ul > li li > a:focus {
  color: #d55d00;
  text-decoration: none;
}

#fullnav .footer {
  padding-bottom: 80px;
  padding-top: 20px;
}
#fullnav .footer::before {
  content: "";
  display: block;
  width: 100%;
  height: 82px;
  background: url(gfx/footer_linie.png) center center no-repeat;
  margin-bottom: 30px;
}
@media(min-height:890px) {
  #fullnav .footer {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  #fullnav .footer::before {
    margin-bottom: 50px;
  }
}
@media(min-height:940px) {
  #fullnav .footer {
    padding-top: 50px;
  }
  #fullnav .footer::before {
    margin-bottom: 60px;
  }
}
#fullnav .footer ul {
  margin: 0;
  padding: 0 20px;
}
#fullnav .footer li {
   display: inline-block;
}
#fullnav .footer li > a {
  font-size: 1.7rem;
  color: #000;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 2px;
  padding: 2px 15px;
}
#fullnav .footer li::after {
  content: "|";
  color: #000;
}
#fullnav .footer li:last-child::after {
  display: none;
}
#fullnav .footer li:hover > a,
#fullnav .footer li > a:focus { 
  color: #00505a;
  text-decoration: none;
}

/* ----------------------- Headerslider -------------------- */

.headerslider {
  position: fixed;
  width: 100%;
  height: 100%;
  height: 100vh;
  overflow: hidden;
}
@media (min-width:1080px) and (min-height:800px) {
  .headerslider {
    max-height: calc(100vh - 80px);
  }
}

.headerslider .content {
  position: relative;
  z-index: 3;
  top: 250px;
  max-width: 1250px;
  margin: 0 auto;
  text-align: left;
  padding: 0 30px;
}
.headerslider .content .title {
  text-transform: uppercase;
  letter-spacing: 0.5rem;
  max-width: 500px;
}
.headerslider .content .symbol {
  position: absolute;
  z-index: 3;
  top: -65px;
  left: -65px;
}
.headerslider .content .textslider {
  max-width: 410px;
  margin: 20px 0 0 !important;
  width: 45%;
}
.headerslider .content .textslide {
  font-size: 120%;
}
.headerslider .content .textslide > img {
  margin-bottom: 30px;
  position: relative;
  left: -40px;
}
.headerslider .content .textslide blockquote {
  font-size: 8rem;
  line-height: 0.9;
}
.headerslider .z_overlay {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;  
  background: url(gfx/z_layer_bad.png) top center no-repeat;
  background-size: cover;
}
.headerslider.overlay_sauna .z_overlay {
  background-image: url(gfx/z_layer_sauna.png);
}
.headerslider.overlay_wellness .z_overlay {
  background-image: url(gfx/z_layer_wellness.png);
}
.headerslider.overlay_kurse .z_overlay {
  background-image: url(gfx/z_layer_kurse.png);
}
.headerslider .background {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 45%;
  width: 55%;
  height: 100%;  
}
.headerslider .background img {
  object-fit: cover;
  height: 100%;
  width: 100%;
  object-position: center center;
}

@media(min-width:1600px) {
  .headerslider .content .textslide blockquote {
    font-size: 10rem;
  }
}


/* ----------------------- Klappinhalte ---------------------- */


.accordion {
  margin-bottom: 15px;
  transition: all 0.2s;
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
}

/* Standard / Bad */
.accordion .header {
  font-weight: 300;
  color: inherit;
  color: #00505a;  
  letter-spacing: 0.2rem;  
  padding: 5px;
  cursor: pointer;
  margin: 0px;
  background: #dff1fc;  
  transition: all 0.2s;
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
}
/* Sauna */
.accordion.layout_3 .header {
  background: #ecdce3;
}
/* Wellness */
.accordion.layout_4 .header {
  background: #f4cfb2;
}
/* Kurse */
.accordion.layout_5 .header {
  background: #bbe1e1;
}


/* Standard / Bad */
.accordion .header:hover {
  background: #ffdc0b;
}
.accordion.open .header{
  background: #fff;
  color: #d55d00;
}
/* Sauna */
.accordion.layout_3 .header:hover {
  background: #e48b49;
}
.accordion.layout_3:hover .header {
  color: #fff;
}
.accordion.layout_3.open .header {
  background: #fff;
  color: #e48b49;
}
/* Wellness */
.accordion.layout_4:hover .header {
  background: #a45576;
  color: #fff;
}
.accordion.layout_4.open .header {
  background: #fff;
  color: #a45576;
}
/* Kurse */
.accordion.layout_5:hover .header {
  background: #FFDB0A;
}
.accordion.layout_5.open .header {
  background: #fff;
  color: #00505a;
}


.accordion.open .header {
  font-weight: 600;
}
.accordion .header:before {
  content: '+';
  padding-right: 15px;
  margin-left: -40px;
}
.accordion.open .header:before {
  content: '–';
}

.accordion .content {
  height: 0;
  overflow: hidden;
  transition: all 0.2s;
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
}
.accordion.open .content {
  height: auto;
  padding-top: 20px;
  padding-bottom: 20px;
}



/* ----------------------- Tabs ---------------------- */

#content .tab-container { padding: 40px 0; }
#content .etabs { margin: 0; padding: 0; text-align: center; border-bottom: 1px solid #ddd;}
.tab { display: inline-block; zoom:1; *display:inline; }
.tab a { display: block; padding: 5px 15px; margin: 5px 3px 0; text-transform: uppercase; background: #dff1fc;}
.tab a:focus,
.tab a:hover { 
  text-decoration: none;
  background: #ffdc0b;
}
.tab a.active { 
  background: #ffdc0b; 
} 
.tab a > h3,
.tab a > h4 { 
  margin: 0;
  font-weight: 300;
  text-transform: none;
  letter-spacing: 0;
}

#content .tab-item {
  width: 100%;
  padding: 20px;
  background: #f5f5f5;
}
.tab-item table {
  max-width: 100%;
}

/* Sauna */

.sauna .tab a {
  background: #ecdce3; 
}
.sauna .tab a:focus,
.sauna .tab a:hover,
.sauna .tab a.active { 
  text-decoration: none;
  background: #e48b49;
  color: #fff;
} 
.sauna .tab a:focus h3,
.sauna .tab a:hover h3,
.sauna .tab a.active h3 { 
  color: #fff;
} 

/* Wellness */
.wellness .tab a {
  background: #f4cfb2;
}
.wellness .tab a:focus,
.wellness .tab a:hover,
.wellness .tab a.active { 
  text-decoration: none;
  background: #a45576;
  color: #fff;
} 
.wellness .tab a:focus h3,
.wellness .tab a:hover h3,
.wellness .tab a.active h3 { 
  color: #fff;
}

/* Kurse  */
.kurse .tab a {
  background: #bbe1e1;
}
.kurse .tab a:focus,
.kurse .tab a:hover,
.kurse .tab a.active { 
  text-decoration: none;
  background: #FFDB0A;
} 
.kurse .tab a:focus h3,
.kurse .tab a:hover h3,
.kurse .tab a.active h3 { 

}

/* ----------------------- Bilderleiste ---------------------- */

.frame-layout-6 .ce-gallery {
  float: none;
  margin: 10px -10px;
  text-align: center;
}
.frame-layout-6 .ce-row,
.frame-layout-6 .ce-row:last-child,
.frame-layout-6 .ce-column,
.frame-layout-6 .ce-column:last-child {
  display: inline-block;
  margin-right: 0;
  margin-bottom: 0;
}
.frame-layout-6 .image {
  display: block;
  margin: 5px;
}
.frame-layout-6 a,
.frame-layout-6 img {
  display: block;
 
}

/* ----------------------- verschiedenes ---------------------- */

.ce-gallery figure {
  display: block;
}

.fa, .cke_editable .fa {
  min-width: 25px;
  text-align: center;
  padding-right: 5px;
}


.align-left,
.text-left {
  text-align: left;
}
.align-center,
.text-center {
  text-align: center;
}
.align-right,
.text-right {
  text-align: right;
}
.align-justify,
.text-justify {
  text-align: justify;
}
.clear {
  clear: both;
}

.spacing {
  letter-spacing: 0.15rem;
}


main ul, .cke_editable ul, .frame-default table {
  padding: 0;
  overflow: visible;
}
p {
  margin: 0 0 15px;
}
.ce-bodytext p:last-child {
  margin-bottom: 0;
}

blockquote {
  margin: 0 0 15px;
  padding: 0;
  border: 0;
  font-family: "FreestyleScriptCom-Bold";
  font-size: 6rem;
  color: #00505a;
}
h2.title:empty {
  display: none;
}
h1, h2, h3, h4, h5, h6 {
  line-height: 1.4;
  color: #00505a;  
}
h1 {
  font-family: "FreestyleScriptCom-Bold";
  font-size: 450%;
  line-height: 1;
  margin-top: 10px;
  margin-bottom: 20px;
}
h2 {
  font-size: 160%;
  font-weight: 600;
}
h2:empty {
  display: none;
}
h3 {
  font-size: 140%;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
}
h4 {
  font-size: 125%;
  font-weight: 700;
}
h5 {
  font-size: 100%;
  font-weight: 700;
}
h6 {
  font-size: 85%;
  font-weight: 700;  
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  color: inherit;
}

a {
  color: #00505a;
  text-decoration: none;
  transition: all 300ms ease;
}
a:hover {
  color: #bd5a0e;
  text-decoration: underline;
}
a img { border: 0; }

a.button,
.btn-primary {
  background: #ffdc0b;
  display: inline-block;
  border-radius: 30px;
  padding: 6px 30px 8px;
  color: #000;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 2px;
}
a.button.blau {
  background: #006777;
  color: #fff;
}
a.button.violett {
  background: #A5577C;
  color: #fff;
}
a.button:hover,
a.button.active,
a.button:focus,
.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus {
  background: #d55d00;
  color: #fff;
  text-decoration: none;
}
a.button .fa {
  min-width: 1px;
}
a.btn {
  font-size: inherit;
}

a.button.small {
  font-size: 85%;
  letter-spacing: 0;
  padding: 2px 15px 3px;  
  line-height: 1.2;
  text-transform: none;
  font-weight: bold;
}


.textslider a.button {
  background: #fff;
}
.textslider a.button:focus,
.textslider a.button:hover,
.textslider a.button.active {
  background: #d55d00;
  color: #fff;
}

a.iframe {
  position: relative;
  display: inline-block;
  max-width: 100%;
  vertical-align: top;
}
span.play {
  position: absolute;
  z-index: 2;
  bottom: 7%;
  right: 7%;
  width: 82px;
  height: 82px;
  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKQAAACkCAMAAAAua3VzAAAAe1BMVEUAAAD/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/2wr/////4jj/7YX/4C3/3Rn//fH/8qQcX4xRAAAAIXRSTlMABQi/YhHWT+6zkUnlqC34xvvc6LaWjIiFWkM8GXIacRuDNUgHAAAEDUlEQVR42szX3XLbIBCGYQkEEvqx5P/YcZz53KTt/V9h655s2k5iLYiF98Snz6DZBRdLVpaluvf7t8ita/faOtvg7xrr2tfuWqTP1Efd4KsafaxNkSzVtRbzsm2nCvlMtRvBadxVsgeqTm4Ev9GdxM5z1TbwrWlXhUCdRli6K+JWVhbh2YrWaATiBsu0icasLZbL1kWEVhrLphcfIbPH8u3Nsl+6R4z6esFjHBCrYanDPPeIV39eZO8cELdD+Da6TIjddAk0Pm8Rv+1zkLFaQ6J1FWB8glRP3iMzQK7Bb3yUg2RO+Rg1ZNOKb5wg3aRyP0ePsywdUuRY0zMgTUOW+9F/X1ZIVzX3vl4jXet59/hli5RtL3MGe0LaphkjfkDqDg+NZ6Tv/MBoeqSvN3lucc5Or5FHde4f+9EH3yOX9p8aV8in1WdIjXzSmU/NV7NTWuSULYMfaO9v3xEc/9FWbsDo2+1HbOamDDvIO/IWzuQfpQWjOzI60/5n7MDpjozPrIN2JCGjMnXQZUPIACb/2mnBiZBxmW3xMdWAEyHjMhv1EXkCK0JGZp4+Ih1YETIy0xWUGcGIkNGZo/G7bQgpwawIuQMjQgowdzTbIxgRUoA5Kp8rkZAyzM5nkxNShtn6PIAIKcGkp5ABI0IKMY3HHzBCSjDpvXYEI0IKMY8eT0lCSjDpUdmAESGFmM0f4xWcCCnFvPJXOSEFmLTOX8CJkFLMF/59Q0gpZst/8BJSiun4lyIhpZiWv4EIKcCkHQRWhBRjSiL5TEKWYEVIMWYZAcln5ou83d5APUAqUJLIn++YmYqA5BPzRP5DzBH5q7yzW0EQCoJwP+oxjSIJogvDbnr/RwyjmosUkmlgJ78HiA/E1LO7sx+K8SQnKEKSvrt5xVh/QSOKkSSnKkKSf3bzilFeMKA4HeJ9UqwISu2bORQZCuU3DhQ5NrqvRSiyVKrvbijytKoTDCjy1KqzICjyXESnalDkKVXnk1DkWRMnvWJFcCLOzMWKIBHVB7EiyIk6jlYRFExFTKsIKqa2qFUENVOlFSuiSsvXu6Eo4kh3DkBRRkb2YEBRxz6nulmgqGTD9QVBUcmZ67CCopByxfWqQVFIxXX93aAoZBe4x/zFOnaT+Vireawu854i1hzgMNlgn3ksmmWwkcohMtvZh2A3eDKex/GYbLKYEfOYtgtz7yT7CdAYF3yb/8FUssd8t8ekvEXmgEd6g0cOhkeiiEc2i0fKjUVekEfykkeGlUcamEeumkdCnUnWn0dqokf+pEeSp0cmqkm6rEdOr0nisUd2dE9qfqjYJPzw7PLMPZLhHyQ6Y3/sQs9tW8Fz78PhOp3Dl3sfZrRBw2UXictWlzdd3Y7sx2nrbhGNyJuG5NwBqUZYFEtntTkAAAAASUVORK5CYII=) 0 0 no-repeat;
  background-size: contain;
  opacity: 0.8;
  -webkit-transition: 300ms;
  -moz-transition: 300ms;
  transition: 300ms;
}
a.iframe:hover span.play {
  opacity: 1;
}

ol, ul {
  padding-left: 0;
  margin: 0 0 15px;
}
ul, li {
  list-style: none;
}
.frame-type-text li, .ce-bodytext li, .ce-menu li, .teaser-text li, .news-single li, .fancybox-inner li, .cke_editable li {
  padding-left: 0.5em;
  text-indent: -0.5em;
}
.frame-type-text li:before, .ce-bodytext li:before, .ce-menu li:before, .teaser-text li:before, .news-single li:before, .fancybox-inner li:before, .cke_editable li:before {
    content: "• ";
}

.ce-gallery figcaption {
  display: block;
}

table {
  border-collapse: collapse;
  border-spacing: 0 0;
  margin: 0 auto 15px;
  font-size: 1em;
}
@media(max-width:1140px) {
  table {
    width: auto !important;
  }
}
table p {
  margin-bottom: 0;
}
table th,
table td {
  background: #0074BB;
  color: #FFF;
  padding: 5px 10px;
  vertical-align: top;
  border: 2px solid #FFF;
}
table td.lighter {
  background: #5EA7D4;
}

table.sauna th,
table.sauna td {
  background: #e48b49;
}
table.sauna td.lighter {
  background: #f4b17e;
}

table.wellness th,
table.wellness td {
  background: #a45576;
}
table.wellness td.lighter {
  background: #c17997;
}

table.kurse th,
table.kurse td {
  background: #FFDB0A;
  color: #00505a;
}
table.kurse td.lighter {
  background: #F9E67D;
}

table a,
table a:hover,
table a:focus {
  color: #fff;
}

table span.small {
  font-size: 12px;
  display: block;
  line-height: 1.3;
}

/* Preistabelle */
.price-table {
  width: 100%;
  color: #fff;
}

.price-table tr {
}

.price-table td {
  border: 1px solid #fff;
  border-right: 0;
  border-top: 0;
  border-color: rgba(255, 255, 255, 0.3);
  font-size: 18px;
  text-align: center;
  padding: 10px;
  vertical-align: middle;
  height: 29px;
  line-height: 1.2;
}

.price-table td:first-child {
  text-align: left;
  padding: 10px;
  border-right: 0;
}

.price-table td.no-border {
  border: 0;
}

.price-table td.bad-3d {
  height: 20px;
  padding: 0;
  background: url(gfx/bad-3d.png), url(gfx/bad-3d.png);
  background-repeat: no-repeat;
  background-position: left 0px, right -20px;
  background-color: #024561;
}

.price-table td.sauna-3d {
  height: 20px;
  padding: 0;
  background: url(gfx/sauna-3d.png), url(gfx/sauna-3d.png);
  background-repeat: no-repeat;
  background-position: left 0px, right -20px;
  background-color: #7a5c02;
}

.price-table td.geldwert-3d {
  height: 20px;
  padding: 0;
  background: url(gfx/geldwert-3d.png), url(gfx/geldwert-3d.png);
  background-repeat: no-repeat;
  background-position: left 0px, right -20px;
  background-color: #603602;
}

.price-table td.bonus-3d {
  height: 20px;
  padding: 0;
  background: url(gfx/bonus-3d.png), url(gfx/bonus-3d.png);
  background-repeat: no-repeat;
  background-position: left 0px, right -20px;
  background-color: #603602;
}

.price-table div.bonuskarte {
  background: url(gfx/bonuskarte_big.png) no-repeat 50% 0;
  background-size: contain;
  font-size: 14px;
  width: calc(50% - 20px);
  height: 130px;
  text-align: center;
  vertical-align: top;
  padding: 10px;
  float: left;
  color: #000;
  margin-top: 20px;
  position: relative;
}

.price-table div.bonuskarte h1 {
  font-size: 18px;
  color: #d65e00;
}

.price-table td.uhr {
  background: url(gfx/uhr.svg) no-repeat 50% 50%;
  background-size: contain;
  min-width: 35px;
  width: 10%;
}

.price-table td.erwachsene {
  background: url(gfx/erwachsene.png) no-repeat 50% 50%;
  background-size: contain;
}

.price-table td.kinder {
  background: url(gfx/kinder.png) no-repeat 50% 50%;
  background-size: contain;
}

.price-table td.familie {
  background: url(gfx/familie.svg) no-repeat 50% 50%;
  background-size: contain;
}

.price-table td.plus1 {
  background: url(gfx/plus3.png) no-repeat 50% 50%;
  background-size: contain;
}
.price-table td.behindert {
  background: url(gfx/behindert.svg) no-repeat 50% 50%;
  background-size: contain;
}
.price-table td.gruppe {
  background: url(gfx/gruppe.svg) no-repeat 50% 50%;
  background-size: contain;
}

@media(min-width: 800px) {
  .price-table td.behindert,
  .price-table td.gruppe {
    background-size: 50px;
  }
}

/*
.price-table td.erwachsene-white {
  background: url(gfx/erwachsene_white.svg) no-repeat 50% 50%;
  background-size: contain;
}

.price-table td.kinder-white {
  background: url(gfx/kinder_white.svg) no-repeat 50% 50%;
  background-size: contain;
}

.price-table td.familie-white {
  background: url(gfx/familie_white.svg) no-repeat 50% 50%;
  background-size: contain;
}

.price-table td.plus1-white {
  background: url(gfx/plus2_white.svg) no-repeat 50% 50%;
  background-size: contain;
}

.price-table td.behindert-white {
  background: url(gfx/behindert_white.svg) no-repeat 50% 50%;
  background-size: contain;
}

.price-table td.gruppe-white {
  background: url(gfx/gruppe_white.svg) no-repeat 50% 50%;
  background-size: contain;
}
*/
.price-section {
  color: #fff;
  width: calc(100% - 420px);
  margin: 0 10px;
  min-width: 300px;
  float: left;
  font-size: 18px;
}

.price-subsection {
  font-size: 14px;
  line-height: 20px;
}

.price-wrapper ul {
  padding: 0;
  margin: 0;
  float: left;
  width: 400px;
  min-width: 320px;
}

.price-wrapper li {
  list-style: none;
  float: left;
  color: #fff;
  padding: 0 5px;
  width: 88px;
  text-align: center;
  font-size: 18px;
}

.price-black {
  color: #fff;
  font-size: 11px;
}

.price-watch {
  font-size: 12px;
  position: absolute;
  right: 30px;
  top: 0;
  height: 100%;
}

.badSauna {
  width: 141px;
  height: 44px;
  background: url(gfx/badSauna.png) no-repeat 0 0;
  padding: 0;
}

.saunaBad {
  width: 141px;
  height: 44px;
  background: url(gfx/saunaBad.png) no-repeat 0 0;
  padding: 0;
}

.uebergang {
  font-size: 16px;
  vertical-align: middle;
  padding-left: 10px;
  padding-right: 50%;
  color: #000;
}

.ermaesigt {
  font-size: 14px;
  vertical-align: top;
  text-align: right;
  color: #000;
  padding: 10px;
}

@media screen and (max-width: 799px) {
  .price-table td {
      font-size: 12px;
  }

  .uebergang {
      font-size: 12px;
  }

  .ermaesigt {
      font-size: 12px;
  }

  .price-table div.bonuskarte {
      float: none;
      background: url(gfx/bonuskarte.png) no-repeat 50% 0;
      font-size: 11px;
      width: 280px;
      height: 100px;
      left: calc(50% - 155px);
  }

  .price-table div.bonuskarte h1 {
      font-size: 14px;
  }

  #price-mehrfach .mehrfach-content {
      text-align: center;
  }

  #price-mehrfach .mehrfach-content > div {
      float: none;
      margin: 0 auto;
  }
}

@media screen and (max-width: 479px) {
  .price-table td {
      padding: 5px 0;
  }

  .price-table td:first-child {
      padding-left: 5px;
  }

  .price-table td:last-child {
      padding-right: 5px;
  }

  .uebergang {
      padding-right: 10px;
  }

  .ermaesigt {
      padding: 10px;
      text-align: left;
  }

  #price-bad .icon,
  #price-sauna .icon,
  #price-geldwert .icon,
  #price-bonus .icon {
      display: none;
  }
}

.price-ffda00,
.price-ffda00 td {
  background-color: #ffda00;
  color: #000;
}

.price-0086bc {
  background-color: #0086bc;
}

.price-0477bf {
  background-color: #0477bf;
}

.price-d65e00 {
  background-color: #d65e00;
}

.price-ffab00 {
  background-color: #ffab00;
}

.price-empty {
  background: url(gfx/leerzelle.png);
}

fieldset {
  border: 0;
}
label {
  font-weight: inherit;
}

select,
textarea,
input {
  background: #FFF;
  border: 1px solid #AAA;
  padding: 10px;
  width: 100%;
  font-family: 'Source Sans Pro', Arial, sans-serif;
  font-size: 100%;
  margin-bottom: 2%;
}
form textarea:focus,
form input[type="text"]:focus,
form select:focus {
  border-color: #777;
}

input[type="radio"] {
  width: 20px !important;
}
input[type="checkbox"] {
  width: 16px !important;
  position: relative !important;
}
.checkbox { margin-top: 0; }

input[type="submit"],
.frame-type-form_formframework .btn-primary {
  background: #00505a;
  border-color: #00505a;
  margin: 30px auto;
  text-transform: uppercase;
  cursor: pointer;
  color: #FFF;
  max-width: 320px;
  border-radius: 30px;
  letter-spacing: 2px;
}
input[type="submit"]:hover,
.frame-type-form_formframework .btn-primary:hover,
.frame-type-form_formframework .btn-primary:focus {
  background: #088828;
}

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #888;
}
::-moz-placeholder { /* Firefox 19+ */
  color: #888;
}
:-ms-input-placeholder { /* IE 10+ */
  color: #888;
}
:-moz-placeholder { /* Firefox 18- */
  color: #888;
}



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

.frame-type-form_formframework {
  max-width: 600px;
  margin: 0 auto;
  background: #eee;
  padding: 10px 25px 20px;
}

.frame-type-form_formframework form > h2 + div > div > label {
  display: none;
}
.frame-type-form_formframework label[for="kontaktformular-53-name"],
.frame-type-form_formframework label[for="kontaktformular-53-email"],
.frame-type-form_formframework label[for="kontaktformular-53-telefon"],
.frame-type-form_formframework label[for="kontaktformular-53-nachricht"] {
  display: none;
}
.form-group .radio {
  display: inline-block;
  margin-right: 10px;
}
textarea.form-control {
  min-height: 100px;
}
.help-block {
  font-size: 12px;
}
.frame-type-form_formframework .btn-primary {
  padding: 10px 30px;
}
/* easycaptcha */
label[for="kontaktformular-53-captcha"],
#tts-play {
  display: none;
}
.easycaptcha > .easycaptcha {
  float: left;
}
.easycaptcha > .form-group {
  clear: left;
}

#captcha-image {
  margin-right: 15px;
}
#refresh-button img,
#refresh-button svg {
  width: 24px;
  height: 24px;  
}
#kontaktformular-53-captcha {
  max-width: 140px;
}

/* ------------------- powermail ---------------------- */
#page div.tx-powermail {
  width: 100%;
}
.tx-powermail > .container-fluid {
  padding: 0;
}
.tx-powermail form > h3 {
  margin-bottom: 20px;
}
#page .powermail_fieldset {
  background: none;
  border: none;
  padding: 0 0 10px;
}
#page .powermail_fieldwrap_radio,
#page .powermail_fieldwrap_check {
  padding-bottom: 20px;
}
#page .powermail_legend {
  display: none;
}
#page .powermail_label {
  padding-top: 10px;
  float: left;
  width: 30%;
  font-weight: normal;
  border: none;
  font-size: inherit;
}
#page .powermail_field,
#page .powermail_radio_outer,
#page .powermail_captcha_outer,
#page .powermail_check_outer,
#page .powermail_fieldwrap_file_inner ul:not(.parsley-errors-list) {
  float: left;
  width: 69%;
  max-width: 585px;
  font-family: 'Source Sans Pro', Arial, sans-serif;
}
#page .powermail_fieldwrap_type_text .powermail_field {
  float: none;
  width: 100%;
  margin-bottom: 20px;
}

#page .powermail_fieldwrap_type_check {
  margin-bottom: 20px;
}

/* submit */
#page .powermail_fieldwrap_type_submit > .powermail_field {
  float: none;
  width: 100%;
  max-width: 100%;
}

/* Formular Layout 1 = ohne labels */
#page .powermail_form.layout1 label.powermail_label {
  display: none;
  float: none;
}
#page .powermail_form.layout1 .powermail_legend {
  display: block;
  padding: 10px 0;
  color: #a7c9e3;
  text-transform: uppercase;
  border-bottom: 2px solid #cfe1ef;
}

#page .powermail_fieldwrap_type_check label.powermail_label {
  display: block !important;
}

#page .powermail_form.layout1 .powermail_field,
#page .powermail_form.layout1 .powermail_radio_outer,
#page .powermail_form.layout1 .powermail_captcha_outer,
#page .powermail_form.layout1 .powermail_check_outer,
#page .powermail_form.layout1 .powermail_fieldwrap_file_inner ul:not(.parsley-errors-list) {
  float: none;
  width: 100%;
}
#page .powermail_form.layout1 input,
#page .powermail_form.layout1 select,
#page .powermail_form.layout1 textarea {
  width: 100%;
}

#page .powermail_form input[type="submit"].waiting {
  background: #c00 url("gfx/ajax-loader.gif") 15px 45% no-repeat;
}

/* Felder-Layout 1 / 2 = 50% links / rechts */
#page .powermail_fieldwrap.layout1 {
  clear: both;
  float: left;
  width: 48%;
  margin-right: 2%;
}

#page .powermail_fieldwrap.layout2 {
  float: right;
  width: 48%;
  margin-left: 2%;
}
#page .powermail_fieldwrap.layout2 .powermail_submit {
  margin: 0 auto !important;
  width: 100%;
  max-width: 300px;
}

#page .powermail_field .radio {
  display: inline-block;
}

#page .powermail_radio_outer,
#page .powermail_captcha_outer,
#page .powermail_check_outer,
#page .powermail_fieldwrap_text,
#page .powermail_fieldwrap_file_inner ul:not(.parsley-errors-list) {
  background: none;
  border: none;
}
#page .powermail_check_inner,
#page .powermail_radio_inner {
  display: inline-block;
  margin-right: 20px;
}
#page .powermail_submit {
  float: none;
  margin-left: 30% !important;
  max-width: 300px;
}
#page .parsley-errors-list li {
  clear: left;
  padding: 0;
  text-indent: 0;
  color: #c00;
}
#page .powermail_check_outer .parsley-errors-list li,
#page .powermail_radio_outer .parsley-errors-list li {
  margin-left: 0;
}

dl.powermail_all > dt {
  clear: left;
  float: left;
  width: 30%;
  font-weight: bold;
}
dl.powermail_all > dt:after {
  content: ': ';
  padding-right: 5px;
}
dl.powermail_all > dd {
  float: left;
  margin-bottom: 10px;
}

input.powermail_confirmation_form,
input.powermail_confirmation_submit {
  width: 45%;
  margin: 2% 3% 2% 0;
  float: left;
}
input.powermail_confirmation_form {
  background: #777;
}
.powermail_confirmation h4 {
  font-size: 120%;
  margin-bottom: 10px;
}

/* reCaptcha */
.g-recaptcha {
  clear: both;
  margin-left: 30%;
}

/* GoogleMaps */
#map {
  height: 300px;
}
@media ( min-height: 480px ) { #map { height: 360px; } }
@media ( min-height: 600px ) { #map { height: 400px; } }
@media ( min-height: 800px ) { #map { height: 440px; } }
input#saddr,
input#addr_submit {
  float: left;
  width: 40%;
  margin: 10px 5px 10px 0;
}
input#addr_submit {
  width: 55%;
  padding: 4px 5px;
}




/*------------------- news ---------------------------- */

/* filter */
.newsfilter {
  margin: 0 0 20px;
}
.newsfilter .button {
  margin: 0 10px 10px 0;
}
/* teaser home */
.article_teaser {
  display: block;
  /*! width: 400px; */
  height: 320px;
  background: url(gfx/bg_aktuelles.png) 0 0 no-repeat;
  background-size: contain;
  position: relative;
}
.article_teaser .content_wrap {
  position: relative;  
  top: 53%;
  left: 15%;
  -webkit-transform: translateY(-50%) rotate(-6deg);
  -moz-transform: translateY(-50%) rotate(-6deg);
  -ms-transform: translateY(-50%) rotate(-6deg);
  -o-transform: translateY(-50%) rotate(-6deg);
  transform: translateY(-50%) rotate(-6deg);
  width: 75%;
  max-height: 40%;
  text-align: center;
  /*! max-width: 400px; */
}
.article_teaser .content_wrap p {
  margin-bottom: 5px;
}
.article_teaser .content_wrap a:hover {
  text-decoration: none;
}
.article_teaser .content_wrap .headline {
  font-family: "FreestyleScriptCom-Bold";
  font-size: 200%;
  line-height: 1;
  margin-bottom: 15px;
} 
.article_teaser .content_wrap a.button {
  border: 1px solid #005D6E;
}

/* list */
.news-list-view .col-sm-6:nth-child(2n+1){
  clear: left;
}
.news-list-view .article {
  margin-bottom: 30px;
}
.news-list-view .news-img-wrap img {
  width: 100%;
}
.news-list-view .teaser-text {
  background: #eee;
  padding: 10px 20px 20px;
}

@media(min-width: 768px) {
  .news-list-view .teaser-text > h4 {
    min-height: 65px;
  }
  .news-list-view .teaser-text > div {
    min-height: 140px;
  }  
}


/* pagination */
.news .page-navigation {
  clear: both;
  margin: 0 15px 30px;
}
.news .page-navigation > p {
  display: none;
}
.news .page-navigation > ul li {
  margin: 0 10px 10px 0;
  display: inline-block;
  width: 40px;
  height: 40px;
  text-align: center;
  line-height: 40px;
  background: #555;
}
.news .page-navigation > ul li.first,
.news .page-navigation > ul li.last {
  display: none;
}
.news .page-navigation > ul li > a {
  display: block;
  color: #DDD;
}
.news .page-navigation > ul li:not(.current):hover,
.news .page-navigation > ul li.current,
.news .page-navigation > ul li > a:focus,
.news .page-navigation > ul li:hover > a {
  background: #333;
  color: #FFF;
  text-decoration: none;
}
/* detail */
.news-single .header h2 {
}
.news-single .content {
}
.news-single .news-img-wrap {
  float: right;
  margin: 0 0 15px 30px;
  width: 45%;
}
.news-single .news-img-wrap .outer {
  display: inline-block;
  width: 30%;
  margin: 0 3.333% 15px 0;
}
.news-single .news-img-wrap .outer img {
  width: 100%;
}
.news-single .news-img-wrap .outer:first-child {
  width: 100%;
}
.news-single .news-img-wrap .outer:nth-child(3n+1) {
  margin-right: 0;
}
.news-single .news-img-wrap .outer:first-child img {
  width: 100%;
}

.news-single .news-date {
  display: block;
  margin-top: 40px;
}

.news-backlink-wrap {
  margin-top: 50px;
}
.news-backlink-wrap .fa {
  font-size: 85%;
}

/*------------------ sf_event_mgt ------------- */


.kurs-list-row .point {
  display: inline-block;
  width: 24px;
  height: 24px;
  line-height: 22px;
  border-radius: 50%;
  background: #333;
  font-size: 80%;
  font-weight: bold;
  text-align: center;
  margin: 0 5px 4px 0;
  border: 1px solid #FFF;
}

.kurs-list-row .hint {
  display: inline-block;
  font-size: 14px;
}

.point.red {
  background-color: #d55d00;
  color: #FFF;
}
.point.yellow {
  background-color: #ffdc0b;
  color: #000;
}
.point.green {
  background-color: #13a538;
  color: #FFF;
}

.event-registration {
  max-width: 800px;
  margin: 20px auto;
}
.event-registration form {
  margin: 20px 0 50px;
}
.event-registration-field {
  margin-bottom: 10px;
}
.event-registration-field.tc {
  margin-bottom: 0px;
}
.event-registration-field > label {
  font-weight: 400;
}
.event-registration .error {
  color: #d55d00;
  font-weight: 400;
}
.event-footer {
  margin: 15px 0;
}

/*------------------- indexed_search ---------------------------- */

#search #tx_indexedsearch {
  border: 0;
  position: relative;
}
#search #tx_indexedsearch .tx-indexedsearch-form label {
  position: absolute;
  top: -20px;
  left: 15px;
  font-weight: 400;
  font-size: 12px;
}
#search .tx-indexedsearch-searchbox {
  width: 200px;
}
#search .tx-indexedsearch-searchbox-sword {
  background: transparent;
  border: 1px solid #fff;
  padding: 8px 40px 8px 15px;
  width: 200px;
  height: 40px;

  color: #000;
  border-radius: 30px;
  margin: 0;
  font-weight: 600;
}
#search .tx-indexedsearch-searchbox-sword:hover,
#search .tx-indexedsearch-searchbox-sword:focus {
  color: #000;
}

#search .tx-indexedsearch-searchbox-button {
  position: absolute;
  top: 0;
  right: 5px;
  width: 40px;
  height: 40px;
  border: none;
  margin-top: 0;
  text-indent: -100000px;
  overflow: hidden;
  cursor: pointer;
  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAMAAAAp4XiDAAAAn1BMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8Kd3m4AAAANHRSTlMA9xIE8KAWCPvqZ1dA5N3Bbkoc5rSvp5R9TUQ1Jh8O9NfHuZ2agC8KzcSYjodhUTvhy39d5ZNvJQAAAcpJREFUSMfFlttygkAMhhcQBEQQKgoIoiKez+77P1ubZSoICaU37X/DTDLf5rAhwP5N/bmsyXKfdZTiTj54IckZyR0I0+ZVSVPtB2Cz43X1zFbiLHFE/pYmgu9sxsHgchmpQ15oOaeIEReyzdep1rgw7YnmucKr52/uqIikooRmiGKjmlleCmaAIWtRxaxh3wrmAyknJg/TxM0+iCATukij0YF+D0r3GKoVmkAI1ozhitAMjmCNGCGoxqgbHWiXQiEqHJgg59xZ61xYNaMusqV0weqnpwJkgfuMIHQUF4sCA+aQiAmIWzPeYSRJZApIjM3LjEIWX860fgVPQI7URgDnqm6Vdchs23KTza3hg/mEB4HjpOZGuwKiY9UoYlEdqAkfekRaUoIgsQQuu+5SMg4KWnaSEb4ZPafYSqGMMhkX8jdlH/NUmG5WOkYRxeeFdrkba8nV9CUuNLRunOc4c+CYFpYNj5ChevaaRBYa4tmLcUY76O/AMjq+olHb3Hssym+Lao2MEocWUNQgmKrrkzlTYO4rCrp9Op0qc+3EaENOpEZrJpVIyrrpzEt1I6otsLsiyp6DiHewvQX2nHVWIlq98n73JwS/QX+qT8Ijcp5P86rXAAAAAElFTkSuQmCC) center center no-repeat;
  background-size: 25px;
  margin: 0;
}
#search .tx-indexedsearch-searchfor,
#search .tx-indexedsearch-browsebox,
#search .tx-indexedsearch-res,
#search .noresult {
  display: none;
}

/* Seite: Suche */
#main .tx-indexedsearch-searchbox {
  display: none;
}

.tx-indexedsearch-noresults {
  font-style: italic;
}

.tx-indexedsearch-searchfor .sword {
  text-transform: capitalize;
}
.tx-indexedsearch-searchfor .sword:before,
.tx-indexedsearch-searchfor .sword:after {
  content: '"';
}

.tx-indexedsearch-icon {
  display: none;
}
.tx-indexedsearch-title a[href$='.pdf'],
.tx-indexedsearch-title a[href$='.PDF'] {
  padding: 0;
  background: none;
}
.tx-indexedsearch-result-number {
  display: inline-block;
  border-radius: 50%;
  background: #eee;
  width: 32px;
  height: 32px;
  text-align: center;
  font-size: 80%;
  line-height: 32px;
  margin-right: 10px;
}
.tx-indexedsearch-title {
  text-transform: none;
  letter-spacing: 0;
  font-size: 100%;
}
.tx-indexedsearch-percent {
  color: #aaa;
  font-size: 80%;
  padding-left: 10px;
}
.tx-indexedsearch-description {
  margin-bottom: 0;
}

.tx-indexedsearch-info {
  display: none;
}
.tx-indexedsearch-path a {
  color: #AAA;
  text-decoration: underline;
}

.tx-indexedsearch-browsebox ul {
  padding-bottom: 20px;
}
#content .tx-indexedsearch-browsebox li:before {
  content: "";
  display: none;
}
#content .tx-indexedsearch-browsebox li {
  background: none;
  padding: 0;
  float: left;
  display: inline;
  margin-right: 10px;
  text-indent: 0;
}
.tx-indexedsearch-browsebox a {
  display: block;
  padding: 6px 13px;
  text-decoration: none;
  background: #ffdc0b;
  color: #00505a;
}
#content .tx-indexedsearch-browsebox a:hover,
.tx-indexedsearch-browselist-currentPage a {
  background: #00505a;
  color: #FFF !important;
  text-decoration: none;
}


#cookieman-modal {
  top: 90px;  
  z-index: 10001;
}
@media(min-width:992px) {
  #cookieman-modal {
    top: 170px;
  }
}
#cookieman-modal .modal-xl {
  max-width: 800px;
}
#cookieman-modal .btn {
  font-size: 14px !important;
}
.cookie-consent-container {
  font-family: inherit !important;
  font-weight: 500 !important;
  font-size: 18px !important;
  text-align: left !important;
  color: #333 !important;
}
.cookie-consent-container .consent-modal .cookie-headline {
  font-size: 1.6rem !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
}
.cookie-consent-container a.show-details, .cookie-consent-container a:visited.show-details, .cookie-consent-container a:active.show-details, .cookie-consent-container a:focus.show-details, .cookie-consent-container a:focus:active.show-details,
.cookie-consent-container .buttons .btn {
  font-size: 1.6rem !important;
}
.cookie-consent-container a, .cookie-consent-container a:visited, .cookie-consent-container a:active, .cookie-consent-container a:focus, .cookie-consent-container a:focus:active,
.cookie-consent-container .buttons .btn {
  color: #333 !important;
  font-weight: 600 !important;
  font-size: 2rem !important;  
}
.cookie-consent-container .buttons .btn {opacity: 0.8 !important;}
.cookie-consent-container .label {
  font-size: inherit !important;
  font-weight: 500 !important;
}
.cookie-consent-container .detail.open {
  font-size: 100% !important;
}
.cookie-consent-container .consent-modal .option-wrapper .option-detail-wrapper .option-detail {
  font-size: 80% !important;
}
.cookie-consent-container small {
  font-size: 16px;
}
.modal-backdrop {
  z-index: 10000;
}
.modal-backdrop.show {
  z-index: 0.65;
}



/*Filter styles*/
.saturate {-webkit-filter: saturate(3); filter: saturate(3);}
.grayscale {-webkit-filter: grayscale(100%); filter: grayscale(100%);}
.contrast {-webkit-filter: contrast(160%); filter: contrast(160%);}
.brightness {-webkit-filter: brightness(0.25); filter: brightness(0.25);}
.blur {-webkit-filter: blur(3px); filter: blur(3px);}
.invert {-webkit-filter: invert(100%); filter: invert(100%);}
.sepia {-webkit-filter: sepia(100%); filter: sepia(100%);}
.huerotate {-webkit-filter: hue-rotate(180deg); filter: hue-rotate(180deg);}
.rss.opacity {-webkit-filter: opacity(50%); filter: opacity(50%);}