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

body {
	margin: 0;
	background-color: #fff; 
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 14px;
	color: #6b6b6b;
	line-height: 24px; }

.textlink {color: #4b7ad3;}

.implink {color: #fff;}

h1 {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 26px;
	color: #6b6b6b;
	text-transform: uppercase;
}

h2 {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 22px;
	color: #6b6b6b;
	text-transform: uppercase;
	}
	
#top {
	text-align: center;
	padding-top: 15px;
	padding-bottom: 15px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #6b6b6b;
	}
	
hr {  border: 0; height: 1px; background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(57, 94, 226, 0.75), rgba(0, 0, 0, 0));  }

img {
	max-width: 100%;
	height: auto;
	text-align:center;
}

#wrapp-menu {
	text-align: center; margin: 0 auto;
	width: 60%;
	}

#cssmenu,
#cssmenu ul,
#cssmenu ul li,
#cssmenu ul li a,
#cssmenu #menu-button {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
  line-height: 1;
  display: block;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;

}
#cssmenu:after,
#cssmenu > ul:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

#cssmenu #menu-button {
  display: none;
}

#cssmenu {
	width: auto;
	font-family: 'Open Sans', Helvetica, sans-serif;
	background: #fff;	
}
#cssmenu > ul {
	margin-left: 3%;

}
#cssmenu.align-right > ul > li {
  float: right;
}
#cssmenu > ul > li {
  float: center;
  display: inline-block;

}
#cssmenu.align-center > ul {
  float: none;
  text-align: center;

}
#cssmenu.align-center > ul > li {
  float: none;
}
#cssmenu.align-center ul ul {
  text-align: left;  

}
#cssmenu > ul > li > a {
  padding: 10px 10px 10px 17px;
  text-decoration: none;
  font-size: 13px;
  color: #6b6b6b;
  text-transform: uppercase;
  letter-spacing: 1px;
}


#cssmenu > ul > li:hover > a,
#cssmenu > ul > li > a:hover,
#cssmenu > ul > li.active > a {
	color: #fff;
 	background-color: #4b7ad3;
	-webkit-transition: All 2s ease;
 	-moz-transition: All 2s ease;
  	-o-transition: All 2s ease;
  	-ms-transition: All 2s ease;
  	transition: All 2s ease;
}
#cssmenu > ul > li.has-sub > a {
  padding-right: 45px;
}


#cssmenu > ul > li.has-sub > a::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-top-color: #6b6b6b;
  right: 17px;
  top: 22px;
}
#cssmenu > ul > li.has-sub.active > a::after,
#cssmenu > ul > li.has-sub:hover > a {
  border-top-color: #6b6b6b;
}
#cssmenu ul ul {
  position: absolute;
  left: -9999px;
  top: 50px;
  padding-top: 6px;
  font-size: 13px;
  opacity: 0;
  -webkit-transition: top 0.2s ease, opacity 0.2s ease-in;
  -moz-transition: top 0.2s ease, opacity 0.2s ease-in;
  -ms-transition: top 0.2s ease, opacity 0.2s ease-in;
  -o-transition: top 0.2s ease, opacity 0.2s ease-in;
  transition: top 0.2s ease, opacity 0.2s ease-in;
  z-index: 100;
}
#cssmenu.align-right ul ul {
  text-align: right;
}
#cssmenu > ul > li > ul::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border: 5px solid transparent;
  border-bottom-color: #6b6b6b;
  top: -4px;
  left: 20px;
}
#cssmenu.align-right > ul > li > ul::after {
  left: auto;
  right: 20px;
}
#cssmenu ul ul ul::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border: 5px solid transparent;
  border-right-color: #ffffff;
  top: 11px;
  left: -4px;
}
#cssmenu.align-right ul ul ul::after {
  border-right-color: transparent;
  border-left-color: #ffffff;
  left: auto;
  right: -4px;
}
#cssmenu > ul > li > ul {
  top: 120px;
}
#cssmenu > ul > li:hover > ul {
  top: 30px;
  left: 0px;
  opacity: 1;
}
#cssmenu.align-right > ul > li:hover > ul {
  left: auto;
  right: 0;
}
#cssmenu ul ul ul {
  padding-top: 0;
  padding-left: 6px;
}
#cssmenu.align-right ul ul ul {
  padding-right: 6px;
}
#cssmenu ul ul > li:hover > ul {
  left: 180px;
  top: -0px;
  opacity: 1;
}
#cssmenu.align-right ul ul > li:hover > ul {
  left: auto;
  right: 100%;
  opacity: 1;
}
#cssmenu ul ul li a {
	text-decoration: none;
	font-weight: 400;
	padding: 11px 10px;
	width: 180px;
	color: #333333;
	background: #ffffff;
	box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1), 1px 1px 1px rgba(0, 0, 0, 0.1), -1px 1px 1px rgba(0, 0, 0, 0.1);
	border-bottom: 1px solid #6b6b6b;
}
#cssmenu ul ul li:hover > a,
#cssmenu ul ul li.active > a {
  color: #333;

}
#cssmenu ul ul li:first-child > a {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}
#cssmenu ul ul li:last-child > a {
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
}
#cssmenu > ul > li > ul::after {
  position: absolute;
  display: block;
}
#cssmenu ul ul li.has-sub > a::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border: 4px solid transparent;
  border-left-color: #777777;
  right: 17px;
  top: 14px;
}
#cssmenu.align-right ul ul li.has-sub > a::after {
  border-left-color: transparent;
  border-right-color: #777777;
  right: auto;
  left: 17px;
}
#cssmenu ul ul li.has-sub.active > a::after,
#cssmenu ul ul li.has-sub:hover > a::after {
  border-left-color: #333333;
}
#cssmenu.align-right ul ul li.has-sub.active > a::after,
#cssmenu.align-right ul ul li.has-sub:hover > a::after {
  border-right-color: #333333;
  border-left-color: transparent;
}

#header {
	background-color: #4b7ad3;
	height: auto;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #6b6b6b;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #6b6b6b;
	}
	
	
#foto{
	text-align:center;
}

#wrapper {
	text-align: center; margin: 0 auto;
	max-width: 60%;
	}

#content {
	padding: 30px 60px;
	text-align:left;
	min-height: 300px;
	}
	
#col1 {
	width: 48%;
	float: left;
	padding-bottom: 30px;
	}
	
#col2 {
	width: 48%;
	float: right;
	padding-bottom: 30px;
	}
	
.infobox {
	background-color: #4b7ad3;
	padding: 20px;
	color: #fff;
	}
	
.footer {
	text-align: center;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 14px;
    background-color: #4b7ad3;
	color: #fff;
	height: auto;
	padding: 10px 0 10px 0;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #999;
	clear: both;
	}
	
.footer1 {
	text-align:center;
	height: auto;
	padding: 10px 0 10px 0; 
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #6b6b6b;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #6b6b6b;	
	}
	
.footer2 {
	text-align:center;
	padding: 10px 0 10px 0; 
	height: auto;
	background-color: #fff;
	}
	
	
		
/* ----- Styles fuer die Preisliste und kalkulator ----- */

.preisliste, .konfigurator {font-size:12px;}
.preisliste table.liste{border-collapse:collapse; width:100%}
.preisliste table.liste thead{
	background-color: #FFFFFF !important;
	border: 1px solid #000;
	border-bottom-width: 0
}
.preisliste .kurs, .konfigurator .titel{}/* ----- Styles nichtumbruch bei Kurstitel ----- */

.konfigurator .einheiten{text-align:center !important;}
.preisliste table.liste tr, .konfigurator table.liste tr{border-bottom:1px solid black; border-left:1px solid #999; border-right:1px solid #999}
.preisliste table.liste td, .preisliste table.liste th, .konfigurator table.liste td, .konfigurator table.liste th{padding:3px 2px 3px 2px;text-align:left; vertical-align:top; line-height:100%; font-size:12px}
.preisliste table.liste th.dauer{text-align:left}
.preisliste table.liste th.wochen{padding-left:0}
.preisliste h2, .konfigurator h2{
	font-size: 14px;
	margin: 0 0 0.5em 0;
	color: #da094e;
	text-transform: uppercase;
}
.preisliste .datum{width:6em; margin-right:0.5em; padding:0.1em; background-color:#eee}
.preisliste .abschnitt, .konfigurator .abschnitt{width:90%; font-size:12px; border:1px solid #ddd; padding:0.5em 15px; margin:0.5em 0}
.preisliste .zebra0, .konfigurator .zebra0  {background-color:#EEEEEE}
.konfigurator table.liste thead{color:#000; background-color:#ccc !important; border:1px solid #999; border-bottom-width:0}
.konfigurator select{margin:1px; border: 1px solid #ccc;}
#auswahl td, #auswahl th{vertical-align:bottom; font-size:12px;}
#auswahl input.submit{font-weight:bold; padding:0 1em; margin:0}
#filter label, #anfrage label{display:inline-block; width:10em; text-align:right}
.muss label{font-weight:bold}
.fehler{color:darkred; border:1px solid darkred}
#filter select, #anfrage select, #filter input.text, #anfrage input.text{width:20em}
#anfrage textarea{width:20em; height:3em}
table.liste thead th.woche{padding-left:0.75em}
table.liste th.dauer{text-align:right}
table.liste th.wochen{padding-left:0}
#name, #strasse, #telefon, #geburt{margin-top:1em}
#submit{font-weight:bold; font-size: 1.2em; padding-left:10em; margin-top:1em}
#submit input.submit{width:20em;}
input, select{
	font-family: Arial, Helvetica, sans-serif;
	}
#auswahl td, #auswahl th{vertical-align:bottom}
.muss label{font-weight:bold}
.fehler{color:darkred; border:1px solid darkred}
#filter select, #anfrage select, #filter input.text, #anfrage input.text{width:20em; font-size:12px}
#anfrage textarea{width:20em; height:3em}
table.liste thead th.woche{padding-left:0.75em}
#name, #strasse, #telefon, #geburt{margin-top:1em}
div.basiswoche {
	float: right;
}

div.basiswoche input.submit {
	margin-left: 5px;
}


@media all and (max-width: 800px), only screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 1024px), only screen and (min--moz-device-pixel-ratio: 2) and (max-width: 1024px), only screen and (-o-min-device-pixel-ratio: 2/1) and (max-width: 1024px), only screen and (min-device-pixel-ratio: 2) and (max-width: 1024px), only screen and (min-resolution: 192dpi) and (max-width: 1024px), only screen and (min-resolution: 2dppx) and (max-width: 1024px) {
 
 h1 {
	font-size: 1.5em;
}

h2 {
	font-size: 1.125em;
	padding: 20px 0 20px 0;
	}
	

#cssmenu {
    background: #fff;
  }
  #cssmenu > ul {
    display: none;
	box-shadow: none;
	background-image: none;
  }
  #cssmenu > ul.open {
    display: block;
    border-top: 1px solid #fff;
  }
  #cssmenu.align-right > ul {
    float: none;
  }
  #cssmenu.align-center > ul {
    text-align: left;
  }
  #cssmenu > ul > li,
  #cssmenu.align-right > ul > li {
    float: none;
    display: block;
	border-top: 1px solid #999;

  }
  #cssmenu > ul > li > a {
    padding: 18px 25px 18px 25px;
    border-right: 0;
  }
  #cssmenu > ul > li:hover > a,
  #cssmenu > ul > li.active > a {
  }
  #cssmenu #menu-button {
    display: block;
    text-decoration: none;
    font-size: 13px;
   /* font-weight: 700;*/
    color: /*#d3eced*/ #fff;
    padding: 18px 25px 18px 25px;
    text-transform: uppercase;
    letter-spacing: 1px;
    background: #4b7ad3;
    cursor: pointer;
  }
  #cssmenu ul ul,
  #cssmenu ul li:hover > ul,
  #cssmenu > ul > li > ul,
  #cssmenu ul ul ul,
  #cssmenu ul ul li:hover > ul,
  #cssmenu.align-right ul ul,
  #cssmenu.align-right ul li:hover > ul,
  #cssmenu.align-right > ul > li > ul,
  #cssmenu.align-right ul ul ul,
  #cssmenu.align-right ul ul li:hover > ul {
    left: 0;
    right: auto;
    top: auto;
    opacity: 1;
    width: 100%;
    padding: 0;
    position: relative;
    text-align: left;
  }
  #cssmenu ul ul li {
    width: 100%;
  }
  #cssmenu ul ul li a {
    width: 100%;
    box-shadow: none;
    padding-left: 35px;
  }
  #cssmenu ul ul ul li a {
    padding-left: 45px;
  }
  #cssmenu ul ul li:first-child > a,
  #cssmenu ul ul li:last-child > a {
    border-radius: 0;
  }
  #cssmenu #menu-button::after {
    display: block;
    content: '';
    position: absolute;
    height: 3px;
    width: 22px;
    border-top: 2px solid #fff;
    border-bottom: 2px solid #fff;
    right: 25px;
    top: 18px;
  }
  #cssmenu #menu-button::before {
    display: block;
    content: '';
    position: absolute;
    height: 3px;
    width: 22px;
    border-top: 2px solid #fff;
    right: 25px;
    top: 28px;
  }
  #cssmenu > ul > li.has-sub > a::after,
  #cssmenu ul ul li.has-sub > a::after {
    display: none;
  }
  
#wrapper {
	text-align: center; margin: 0 auto;
	max-width: 70%;
	}
	  
  #content {
	padding: 50px;
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	line-height: 24px;
	color: #1A1A1A;
	max-width: 100%;
	height: auto;
}

#col1 {
	width: 100%;
	}
	  
#col2 {
	width: 100%;

	}


td tr {padding: 0px; }
input  {
	max-width: 30% !important;
}

input[type='radio'] {
	
	width: 50px;

	
}

@media screen and (max-width: 500px) {
	
	img {
	max-width: 100%;
	height: auto;
}
 h1 {
	font-size: 1.5em;
	padding-top: 20px;
}
#wrapp-menu {
	width: 100%;
	}

#wrapper {
	text-align: center; margin: 0 auto;
	max-width: 90%;
	}
#header {
	display: none;}	  

  #content {
	padding: 0;
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	line-height: 20px;
	color: #1A1A1A;
	max-width: 100%;
	height: auto;

}

.footer1 {
font-size: 12px;
	}
	
.footer2 {
font-size: 12px;
	}

