		body,html {
			background-color: #fff;
			font-family: Helvetica;
		}
		body {
		}

		body *{
			-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
			-moz-box-sizing: border-box;    /* Firefox, other Gecko */
			box-sizing: border-box; 			
		}
		#container {
			margin: 0px auto;
			background-color: #f8f8f8;
			border: 1px solid #eaeaea;
			-webkit-box-shadow: #e8e8e8 0px 0px 50px 4px;
			padding: 20px;
			margin-top: 20px;
		}
		@media( min-width: 850px ){
			#container {
				width: 800px;
			}			
		}
		@media( max-width: 849px ){
			#container {
				width: 100%;
			}			
		}
		h1 {
			font-weight: bold;
			font-size: 32px;
			line-height: 36px;
			margin: 0px 0px 20px 0px;
			font-family: Arial;
		}
		h2 {
			font-weight: bold;
			font-size: 18px;
			color: #333;
			line-height: 24px;
			margin: 0px 0px 12px 0px;
			font-family: Arial;
		}
		h3 {
			font-weight: bold;
			font-size: 16px;
			line-height: 20px;
			margin: 0px 0px 12px 0px;
			font-family: Arial;
		}
		h3.input_title {
			margin-top: 15px;
			margin-bottom: 0px;
		}
		.box {
			background-color: #eaeaea;
			border: 1px solid #d5d5d5;
			padding: 8px;
			margin-top: 10px;
		}
		.box:hover {
			cursor: pointer;
		}
		.courseDescription {
			background-color: #fff;
			border: 1px solid #eaeaea;
			border-top: 0px;
			padding: 8px 8px;
			margin-bottom: 10px;
		}
		.courseDescription p, .courseDescription ul {
			font-size: 12px;
			margin: 0px;
		}
		.box h3 {
			float: left;
			margin-bottom: 7px;
			margin-top: 7px;
		}
		.box.active,.box.active:hover {
			background-color: #009ddb;
			border: 1px solid #eaeaea;
		}
		.box.active h3 {
			color: white;
		}
		.box h3.price {
			float: right;
			color: #1bc3ff;
			text-align: right;
		}
		.box.active h3.price {
			color: white;
		}
		.clear {
			clear: both;
		}
		#show_gender .g-button {
			width: auto;
		}
		.box .description {
			color: #666;
		}
		.box.heading {
			background-color: inherit;
			border: 0px;
			font-weight: bold;
			margin: 0px;
			padding-bottom: 0px;
		}
		.box .description,p.description {
			font-size: 12px;
			font-family: Verdana;
			line-height: 8px;
		}
		p.description.big {
			font-size: 16px;
			line-height: 24px;
			font-family: Verdana;
		}
		.box.active .description {
			color: #fff;
		}
		.group {
			border-top: 1px solid #d5d5d5;
			padding-top: 10px;
			margin-top: 20px;
		}
		.group.description {
			display: block;
			border: 0px;
			padding-top: 0px;
			margin-top: 0px;
			font-family: Georgia;
		}
		.bottom-bar {
			border-top: 1px solid #d5d5d5;
			padding-top: 10px;
			margin-top: 20px;
		}
		.box span {
			font-size: 14px;
			float: left;
			width: 180px;
			display: block;
			line-height: 16px;
			padding-left: 10px;
			border-right: 1px solid #ccc;
		}
		.box.active span {
			border-right: 1px solid #fff;
		}
		.box.heading span {
			border: 0px;
		}
		.box span:first-child {
			padding-left: 0px;
		}
		.box span:last-child {
			border: 0px;
		}
		.box span.date {
			width: 100px;
		}
		.box span.slots {
			width: 120px;
		}
		.box span.slots_x2 {
			width: 240px;
		}
		.box span.time {
			width: 80px;
			text-align: center;
			padding-left: 0px;
		}
		.box span.price {
			width:128px;
		}
		.box span.info {
			float: right;
			width: auto;
			color: #1bc3ff;
		}
		.box.active span {
			color: white;
		}
		.box span.info:hover {
			text-decoration: underline;;
		}
		input[type="text"],input[type="password"] {
			background-color: #fff;
			border: 1px solid #AEAFB1;
			outline: 0;
			padding: 8px 5px;
			font-size: 14px;
		}

		input[type="text"]:focus,input[type="password"]:focus {
			background-color: #fff;
			border: 1px solid #000;
		}
		input[type="text"].small {
			width: 70px;
			margin-right: 7px;
		}

		@media( min-width: 850px ){

			input[type="text"].medium {
				width: 357px;
			}
			input[type="text"].large {
				width: 450px;
			}

			div.course .priceInfo {
				display: none;
			}

		}
		@media( max-width: 849px ){

			input[type="text"].medium {
				width: 80%;
				max-width: 250px;
			}
			input[type="text"].large {
				width: 100%;
				max-width: 300px;
			}

			.course.heading {
				display: none;
			}

			div.course > span {
				border: none !important;
				width: auto !important;
				display: block;
				float: none;
				text-align: left !important;
				padding: 0;
				clear: both;
				margin-bottom: 0.4rem;
			}

				div.course .date, div.course .time {
					float: left;
					clear: none;
				}

				div.course .date:after {
					content: '\00a0';
				}

				div.course .time:before {
					content: 'kl. ';
				}

				div.course .name {
					font-size: 120%;
					font-weight: bold;
				}

				div.course .price {
					margin-bottom: 0;
				}

				div.course .priceInfo {
					display: inline;
					font-weight: bold;
				}

			.box span {
				float: none;
				width: auto;
			}

		}

		.g-button,input[type="submit"],input[type="button"], .end-button {
			background-color: #F2F1EF;
			border: 1px solid #d5d5d5;
			margin: 0px;
			cursor: pointer;
			padding: 8px 20px;
			font-size: 16px;
			outline: 0;
			font-family: Arial;
		}
		.end-button:link, .end-button:visited, .end-button:hover, .end-button:active {
			color: black;
			text-decoration: none;
		}
		input[type="submit"] {
			background-color: #009ddb;
			color: white;
		}
		input[type="submit"].disabled {
			background-color: #71aadf;
			color: #fff;
			opacity: 0.5;
		}
		.g-button {
			width: 50px;
			text-align: center;
			padding: 15px 15px;
			display: block;
			float: left;
		}
		.g-button:focus,input[type="submit"]:focus {
			border: 1px solid #000;
		}
		.g-button:hover {
			background-color: #eaeaea;
		}
		.g-button.active {
			background-color: #009ddb;
			color: white;
		}
		.button-left {
			border-right: 0px;
		}
		.hidden-input {
			visibility: hidden;
		}
		.right {
			float: right;
		}
		.right.double {
			margin-right: 5px;
		}
		.no-top-margin {
			margin-top: 0px;
		}
		p.description {
			line-height: 18px;
		}
		.error {
			color: #F1B351;
			font-size: 12px;
			font-weight: normal;
		}
		#terms {
			background-color: #1bc3ff;
			padding: 0px 8px;
			border: 1px solid #d5d5d5;
			margin-bottom: 20px;
			height: 300px;
			overflow-y: scroll;
		}
		#terms p.description.big {
			font-size: 14px;
		}
		#terms-check {
			width: 15px;
			height: 15px;
			background-color: #fff;
			border: 1px solid #d5d5d5;
			display: block;
			float: left;
			margin-right: 15px;
			cursor: pointer;
		}
		#terms-check.active {
			background-color: #1bc3ff;
			border: 1px solid #1bc3ff;
		}
		.warning {
			background-color: #fff;
			border: 1px solid pink;
			padding: 0px 10px;
			-webkit-box-shadow: rgba(0, 0, 0, 0.0976563) 1px 1px 1px 0px;
		}

		.errorbox {
			padding: 0px 10px;
			border: 1px solid red;
			background-color: pink;
		}
		.fullCourseNotice {
			display: block;
			padding: 5px 5px;
			border: 1px solid red;
			background-color: pink;
			margin-bottom: 10px;
		}

		.btn {
			color: white;
			width: 150px;
			height: auto;
			padding: 8px;
			text-decoration: none;
			float: none;
			display: block;
		}

		.btn:hover, .btn:active {
			opacity: 0.6;
		}

