@charset "UTF-8";

body,
body,
html {
  height: 100%;
  margin: 0;
  padding: 0;
  position: relative;
}

#sitecontainer {
  width: 100%;
  position: relative;
}

/* Header */
#sitecontainer #header {
  position: fixed;
  width: 100%;
  background-color: white;
  z-index: 10;
  padding: 10px 0px;
  border-bottom: solid #cfcfcf 2px;
}
body.celementsmenubarvisible #sitecontainer #header {
  top: 28px;
}
#sitecontainer #header #background {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  color: white;
  z-index: -1;
}
#sitecontainer #header #headerWrapper {
  display: flex;
}
#sitecontainer #header #headerWrapper #menuPoint {
  margin-left: 60px;
  margin-right: 20px;
}
@media (max-width: 1109px) {
  #sitecontainer #header #headerWrapper #menuPoint {
    margin-left: 30px;
  }
}

/* Header Logos */
#sitecontainer #header #headerLogo {
  margin-left: auto;
  margin-right: 60px;
  height: 45px;
  overflow: hidden;
}
#sitecontainer #header #headerLogo a {
  padding-left: 8px;
}
#sitecontainer #header #headerLogo a.swissdance,
#sitecontainer #header #headerLogo a.spotify {
  padding-left: 32px;
}
#sitecontainer #header #headerLogo a {
  padding-left: 8px;
}
@media (max-width: 1109px) {
  #sitecontainer #header #headerLogo {
    margin-right: 30px;
  }
}
@media (max-width: 857px) {
  #sitecontainer #header #headerLogo a.idta,
  #sitecontainer #header #headerLogo a.adtv {
    display: none;
  }
}
@media (max-width: 677px) {
  #sitecontainer #header #headerLogo a.swissdance,
  #sitecontainer #header #headerLogo a.spotify,
  #sitecontainer #header #headerLogo a.fb {
    padding-left: 8px;
  }
}
@media (max-width: 620px) {
  #sitecontainer #header #headerLogo a.swissdance {
    display: none;
  }
}

/* Menu */
#sitecontainer #menu {
  position: absolute;
  top: 68px;
  margin-left: -100px;
  max-width: 1110px;
  width: 100%;
  overflow: hidden;
  padding: 0px 40px;
  background-color: #000000a5;
  visibility: hidden;
  opacity: 0;
  max-height: 0;
  -webkit-transition: visibility 0.6s ease-in, opacity 0.6s ease-in, max-height 0.3s ease-out, padding 0.3s ease-out;
  -moz-transition: visibility 0.6s ease-in, opacity 0.6s ease-in, max-height 0.3s ease-out, padding 0.3s ease-out;
  -o-transition: visibility 0.6s ease-in, opacity 0.6s ease-in, max-height 0.3s ease-out, padding 0.3s ease-out;
  transition: visibility 0.6s ease-in, opacity 0.6s ease-in, max-height 0.3s ease-out, padding 0.3s ease-out;
  transition-delay: 0.4s;
}
/*#sitecontainer #menuPoint:hover + #headerWrapperMenu #menu,
#sitecontainer #headerWrapperMenu:hover #menu,*/
#sitecontainer .openNavigation #menu {
  visibility: visible;
  opacity: 1;
  max-height: 1000px;
  padding-top: 20px;
  padding-bottom: 20px;
  -webkit-transition: visibility 0s, opacity 0.3s linear, max-height 0.6s ease-in;
  -moz-transition: visibility 0s, opacity 0.3s linear, max-height 0.6s ease-in;
  -o-transition: visibility 0s, opacity 0.3s linear, max-height 0.6s ease-in;
  transition: visibility 0s, opacity 0.3s linear, max-height 0.6s ease-in;
}
#sitecontainer #menu li.layout_onepageNoMenuLayout {  
  display: none;
}
body.celementsmenubarvisible #sitecontainer #menu li.layout_onepageNoMenuLayout {
  display: block;
  opacity: 0.6;
  text-decoration: line-through;
}
#sitecontainer #menu li a {
  color: white;
  text-decoration: none;
  text-transform: lowercase;
  font-size: 35px;
  line-height: 50px;
  font-weight: bold;
}
@media (max-width: 857px) {
  #sitecontainer #menu li a {
    font-size: 25px;
    line-height: 40px;
  }
}
#sitecontainer #menu li a::after {
  content: "_";
}
#sitecontainer #menu li a.active,
#sitecontainer #menu li a:hover {
  color: #FF0505;
}
#sitecontainer #menu li a.active:hover {
  cursor: default;
}
#sitecontainer #menu .navigation-clear {
  clear: both;
}
#sitecontainer #content .cel_pagetype_OnePage > .cel_cm_presentation > .presentationList > ul > li > div > div {
  padding: 35px 60px;
}
#sitecontainer #content .cel_pagetype_OnePage > .cel_cm_presentation > .presentationList > ul > li.cel_fluidresizeWidth > div > div {
  padding: 0;
}
#sitecontainer #content .cel_pagetype_OnePage > .cel_cm_presentation > .presentationList > ul > li.cel_nav_nodeName_Kontakt > div > div.rteContent {
  padding: 35px 60px;
  box-sizing: border-box;
}
@media (max-width: 1109px) {
  #sitecontainer #content .cel_pagetype_OnePage > .cel_cm_presentation > .presentationList > ul > li > div > div,
  #sitecontainer #content .cel_pagetype_OnePage > .cel_cm_presentation > .presentationList > ul > li.cel_nav_nodeName_Kontakt > div > div.rteContent {
    padding-left: 30px;
  }
}

/* Submenu */
#sitecontainer #content li.cel_nav_hasChildren div.onePage_subMenu {
  position: absolute;
  right: 0;
  top: 180px;
  z-index: 5;
  width: auto;
}
#sitecontainer #content li.cel_nav_hasChildren div.onePage_subMenu ul > li,
#sitecontainer #content li.cel_nav_hasChildren div.onePage_subMenu ul > li.first {
  float: right;
  clear: right;
  height: 30px;
  margin-bottom: 2px;
  padding: 8px 4px 8px 8px;
  background-color: #383e42;
  cursor: pointer;
}
#sitecontainer #content li.cel_nav_hasChildren div.onePage_subMenu ul a {
  float: right;
  margin-top: 3px;
  margin-right: 30px;
  overflow: hidden;
  color: lightgray;
  text-decoration: none;
  max-width: 0;
  padding-right: 0;
  -webkit-transition: max-width 0.6s ease, padding-right 0.6s linear;
  -moz-transition: max-width 0.6s ease, padding-right 0.6s linear;
  -o-transition: max-width 0.6s ease, padding-right 0.6s linear;
  transition: max-width 0.6s ease, padding-right 0.6s linear;
}
#sitecontainer #content li.cel_nav_hasChildren div.onePage_subMenu ul i:hover + a,
#sitecontainer #content li.cel_nav_hasChildren div.onePage_subMenu ul li:hover img + a,
#sitecontainer #content li.cel_nav_hasChildren div.onePage_subMenu ul li.showText img + a {
  max-width: 1000px;
  padding-right: 6px;
  -webkit-transition: max-width 0.4s ease, padding-right 0.6s linear;
  -moz-transition: max-width 0.4s ease, padding-right 0.6s linear;
  -o-transition: max-width 0.4s ease, padding-right 0.6s linear;
  transition: max-width 0.4s ease, padding-right 0.6s linear;
}
#sitecontainer #content li.cel_nav_hasChildren div.onePage_subMenu ul img {
  width: 23px;
  height: 30px;
  position: absolute;
  right: 8px;
}
/* Hide Geschichte Menu entry in Mobile-Layout */
@media (max-width: 1109px) {
  .onePage_subMenu li.cel_nav_nodeName_Geschichte {
    display: none;
  }
}

/* Content */
#sitecontainer #content {
	padding-top: 68px;
}
body.celementsmenubarvisible #sitecontainer #content {
	 /* when logged in a margin-top too large (42) is added to the body, actual height is 28 */
  padding-top: 54px; /* 68 - (42 - 28) */
}
#sitecontainer #content > div.cel_pagetype_OnePage > div > div.presentationList > ul > li {
  float: none;
  position: relative;
}
#sitecontainer #headerWrapper,
#sitecontainer #content ul > li > div,
#sitecontainer #content ul > li div.rteContent ul,
#sitecontainer #content ul > li.cel_nav_nodeName_Kontakt div.rteContent {
  margin-left: auto;
  margin-right: auto;
  max-width: 1190px;
  width: 100%;
}
#sitecontainer #content ul > li.layout_onepageNoMenuLayout > div > div.rteContent {
  padding: 0;
}

/* Tables */
#sitecontainer #content table {
  margin: 20px 0px;
}
#sitecontainer #content table tr th,
#sitecontainer #content table tr td {
  padding-bottom: 10px;
}
#sitecontainer #content table tr.table_header td,
#sitecontainer #content .accordeon .accordeon_title {
  position: relative;
  color: white;
  background-color: #FF0505;
  font-weight: bold;
  padding: 5px 50px 5px 10px;
  cursor: pointer;
}
#sitecontainer #content .accordeon .accordeon_title::after {
  position: absolute;
  right: 15px;
  top: 5px;
  content: "\276e";
  transform: rotate(270deg);
  -webkit-transition: transform 0.5s linear;
  -moz-transition: transform 0.5s linear;
  -o-transition: transform 0.5s linear;
  transition: transform 0.5s linear;
}
#sitecontainer #content .accordeon .accordeon_open .accordeon_title::after {
  content: "\276e";
  float: right;
  transform: rotate(90deg);
  -webkit-transition: transform 0.5s linear;
  -moz-transition: transform 0.5s linear;
  -o-transition: transform 0.5s linear;
  transition: transform 0.5s linear;
}
#sitecontainer #content table tr.table_header+tr td {
  padding-top: 10px;
}

/* Angebot Table */
#sitecontainer #content table.angebot tr th,
#sitecontainer #content table.angebot tr td {
  display: inline-block;
}
#sitecontainer #content table.angebot .cel_from_niveau {
  min-width: 300px;
}
#sitecontainer #content table.angebot .cel_from_date {
  min-width: 385px;
}
#sitecontainer #content table.angebot .cel_from_time {
  min-width: 185px;
}
@media (max-width: 1109px) {
  #sitecontainer #content table.angebot tr th {
    display: none;
  }
  #sitecontainer #content table.angebot .cel_from_niveau {
    min-width: 1000px;
  }
}
@media (max-width: 500px) {
  #sitecontainer #content table.angebot .cel_from_niveau,
  #sitecontainer #content table.angebot .cel_from_date {
    min-width: unset;
  }
}
#sitecontainer #content .accordeon_box .accordeon_content {
  overflow: hidden;
  max-height: 12px;
  -webkit-transition: max-height 1s ease;
  -moz-transition: max-height 1s ease;
  -o-transition: max-height 1s ease;
  transition: max-height 1s ease;
}
#sitecontainer #content .accordeon_box.accordeon_open .accordeon_content {
  max-height: 2000px;
  -webkit-transition: max-height 1s ease;
  -moz-transition: max-height 1s ease;
  -o-transition: max-height 1s ease;
  transition: max-height 1s ease;
}

/* Ueber uns */
#sitecontainer #content .cel_nav_nodeName_UeberUns .presentationList ul {
  display: flex;
  flex-wrap: wrap;
}
#sitecontainer #content .cel_nav_nodeName_UeberUns .presentationList ul > li {
  flex: 0 1 auto;
  padding: 30px;
}
#sitecontainer #content .cel_nav_nodeName_UeberUns ul > li.first {
  height: auto;
}
#sitecontainer #content .cel_nav_nodeName_UeberUns ul > li > div > div.rteContent {
  position: relative;
  width: 240px;
  height: 360px;
  overflow: hidden;
  padding: 0;
}
#sitecontainer #content .cel_nav_nodeName_UeberUns ul > li > div > div.rteContent img {
  width: 100%;
  height: 100%;
  cursor: pointer;
}
#sitecontainer .cel_nav_nodeName_UeberUns .rteContent p:last-of-type {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 0 12px;
  background-color: #ffffffe0;
  word-wrap: break-word;
  font-size: 12px;
  line-height: 16px;
  visibility: hidden;
  opacity: 0.3;
  max-height: 0;
  -webkit-transition: visibility 1s, opacity 1s linear, max-height .8s ease, padding 1s ease;
  -moz-transition: visibility 1s, opacity 1s linear, max-height .8s ease, padding 1s ease;
  -o-transition: visibility 1s, opacity 1s linear, max-height .8s ease, padding 1s ease;
  transition: visibility 1s, opacity 1s linear, max-height .8s ease, padding 1s ease;
}
#sitecontainer .cel_nav_nodeName_UeberUns .rteContent:hover p:last-of-type,
#sitecontainer .cel_nav_nodeName_UeberUns .rteContent.showText p:last-of-type {
  visibility: visible;
  opacity: 1;
  max-height: 1000px;
  padding: 16px 12px;
  -webkit-transition: opacity 0.6s linear, max-height 1.2s ease, padding 1s ease;
  -moz-transition: opacity 0.6s linear, max-height 1.2s ease, padding 1s ease;
  -o-transition: opacity 0.6s linear, max-height 1.2s ease, padding 1s ease;
  transition: opacity 0.6s linear, max-height 1.2s ease, padding 1s ease	;
}
