/**
 * general profile page styles
 */
#outershell {
	padding-bottom: 100px !important;
	min-height: 700px !important;
}
section {
	padding-top: 30px !important;
}
.timeacle_button {
	width: 320px;
	height: 50px;
	overflow: hidden;
	cursor: pointer;
	font-family: "timeacle-medium", Tahoma, Verdana, Arial, sans-serif;
	font-size: 16px;
	line-height: 55px;
	text-align: center;
	border: none;
	margin-bottom: 10px;
}
.timeacle_button h2 {
	text-transform: uppercase;
	text-align: center;
	line-height: 55px;
}
.white_button {
	background-color: white;
	color: #393939;
}
.white_button:hover {
	background-color: #f7f7f7;
}
.white_button h2 {
	color: #393939;
	text-transform: none;
}
.blue_button {
	background-color: #279DE1;
	color: white;
}
.blue_button:hover {
	background-color: #248AC4;
}
.blue_button h2 {
	color: white;
}
.grey_button {
	background-color: #EDEDED;
	color: #393939;
}
.grey_button:hover {
	background-color: #EDEDED;
}
.grey_button h2 {
	color: #393939;
}
input:focus,
select:focus,
textarea:focus,
button:focus {
	outline: none;
}
p, h1, h2, h3, h4 {
	margin: 0;
}

/**
* Map
*/
#profile_map {
	width: 660px;
	height: 250px;
	background-image: url('/images/layout/map_blurred.png');;
	text-align: center;
}
#profile_map #profile_no_map {
	margin: 70px 10% 0;
}
#profile_map #profile_map_additional_info {
	margin: 10px 0 20px;
}
#profile_map iframe {
	width: 100%;
	height: 100%;
}

/**
* Slideshow
*/
#profile_slideshow {
	width: 320px;
	height: 250px;
	background: #EDEDED;
	overflow: hidden;
}
#slideshow div {
	width: 320px;
	height: 250px;
	display: grid!important;
	place-items: center;
	overflow: hidden;
	background-color: #EDEDED;
}
#slideshow img {
	max-height: 100%;
	max-width: 100%;
}
#slideshow img.placeholder {
	max-width: 80%;
}
#prev_slide, #next_slide {
	display: none;
	height: 250px;
	position: absolute;
	width: 35px;
	z-index: 90;
}
#prev_slide {
	background-image: url('/images/buttons/links.png');
}
#next_slide {
	background-image: url('/images/buttons/rechts.png');
	margin: 0 0 0 285px;
}

/**
* Infos
*/
.profile_h2_title {
	padding-bottom: 10px;
}
#profile_infos_left {
	width: 660px;
}
#profile_infos_right {
	width: 320px;
}
#profile_times_container {
	max-width: 210px;
}
#profile_logo_container {
	max-width: 100px;
	max-height: 40px;
}
#profile_logo {
	max-width: 100%;
	max-height: 100%;
}
#profile_contact_container {
	width: 180px;
	padding-right: 20px;
}
#profile_info_container {
	width: 400px;
}

/**
* Booking
*/
#profile_booking_section {
	width: 320px;
}
#profile_booking_container {
	width: 320px;
}
.rowSelection_section {
	margin-bottom: 10px;
}
#waitingrow_selection {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background: url('/images/layout/droparrow_white.png') no-repeat right transparent;
	background-color: #279DE1;
	border-radius: 0;
	height: 50px;
	font-family: "timeacle-medium", Tahoma, Geneva, Verdana, sans-serif;
	font-size: 18px;
	padding-left: 10px;
	padding-right: 30px;
	line-height: 27px;
	color: #FFFFFF;
	border: none ;
	width: 320px;
    white-space: nowrap;
    text-overflow: ellipsis;
}
select#waitingrow_selection.nostyle {
	background-color: #279DE1;
}
select#waitingrow_selection.nostyle.grey {
	background-color: #EDEDED;
}
#waitingrow_selection.grey {
	background: url('/images/layout/droparrow_black.png') no-repeat right transparent;
	background-color: #EDEDED;
	color: #393939;
}

#waitingrow_selection[disabled], #waitingrow_selection.disabled {
	background: #EDEDED;
}
div#waitingrow_selection {
	height: 29px;
	padding-top: 5px;
	width: 300px;
}

.blue_background {
	background-color: #279DE1 !important;
	color: #ffffff;
}

.icon {
	display: block;
	float: left;
	height: 20px;
	width: 19px;
	padding-left: 2px;
}

/**
* Subsection
*/
.profile_booking_subsection {
	width: 660px;
	padding-bottom: 30px;
}
.profile_booking_subsection p {
	letter-spacing:normal;
}
.profile_booking_subsection p.confirmation_ds_text{
	margin: 10px 0 30px;
}
/**
* Services Selection
*/
.service_quantity_select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background: url('/images/layout/droparrow_black.png') no-repeat right transparent;
	background-color: #EDEDED;
	border-radius: 0;
	height: 34px;
	font-family: "timeacle-light", Tahoma, Geneva, Verdana, sans-serif;
	font-size: 18px;
	padding-left: 10px;
	padding-right: 10px;
	color: #393939;
	width: 50px;
	border: none;
}
.service_option {
	height: 35px;
	margin-bottom: 5px;
	clear: both;
}
.service_list {
	margin: 0 10px;
}
.control_container {
	width: 600px;
}
#service_select, #place_select {
	font-size: 16px;
	line-height: 30px;
	background-color: #DFDFDF;
	font-family: "advent-Bd1",Verdana,Arial,sans-serif;
	height: 30px;
	padding: 0 5px;
	width: 250px;
	color: #279DE1;
	display: block!important;
	cursor: pointer;
}
.customStyleSelectBoxInner.default {
	color: #808080;
}
#service_select .customStyleSelectBoxInner,
#place_select .customStyleSelectBoxInner{
	width: 225px!important;
}
#service_select .customStyleSelectBoxArrow,
#place_select .customStyleSelectBoxArrow {
	background-image: url(/images/layout/arrow_grey_down.png);
	background-position: right center;
	background-repeat: no-repeat;
	width: 20px;
	height: 30px;
}
#service_selection_container,
#place_selection_container {
	position: relative;
}
#service_selection_overlay,
#place_selection {
	width: 782px;
}
.service_level {
	background-color: #EDEDED;
	overflow: auto;
}
#service_selection_container.service_selection_reservation .service_level {
	padding: 5px 10px 5px 5px;
	width: 245px;
}
.place_level {
	background-color: #EDEDED;
	overflow: auto;
	padding: 5px 10px 5px 5px;
	width: 245px;
}
#service_level1,
#place_level1 {
	border: none;
}
.place_list li {
	cursor: pointer;
	font-family: "timeacle-light", Tahoma, Geneva, Verdana, sans-serif;
	font-size: 18px;
	height: 23px;
	margin-bottom: 10px;
}
.service_list li span.left {
	cursor: pointer;
	font-family: "timeacle-thin", Tahoma, Geneva, Verdana, sans-serif;
	font-size: 18px;
	margin-top: 10px;
	max-width: 75%;
}
.service_list li span.right {
	cursor: pointer;
	font-family: "timeacle-thin", Tahoma, Geneva, Verdana, sans-serif;
	font-size: 18px;
	margin-top: 6px;
}
.service_list li span.right span {
	margin-top: 4px;
	display: inline-block;
}
.place_list li:hover {
	color: #279DE1;
}
.service_list li span.left:hover {
	color: #279DE1;
}
#service_quantities_container,
#participants_container {
	width: 634px;
}
.service_quantity_option,
.participants_option {
	background-color: #EDEDED;
	height: 30px;
	line-height: 30px;
	margin: 0 5px 5px 0;
	text-align: center;
	width: 30px;
	cursor: pointer;
}
.service_category_heading {
	background-color: #e1e1e1;
	height: 40px;
	padding: 0 10px;
	font-family: "timeacle-regular", Tahoma, Geneva, Verdana, sans-serif;
	overflow: hidden;
}
.service_category {
	line-height: 40px!important;
	color: #000000;
}
#booking_type_options select,
#service_options select {
	background-color: transparent;
	font-family: "timeacle-thin", Tahoma, Geneva, Verdana, sans-serif;
	font-size: 18px;
}
.service_option .customStyleSelectBoxArrow {
	background-image: url("/images/icons/business_page.png");
	background-position: 2px 8px;
	height: 30px!important;
	width: 16px!important;
	float: right;
}
.service_option.active {
	color: #279DE1;
}
.service_apply_button_arrow {
	background-image: url("/images/layout/droparrow_black.png");
	height: 7px;
	width: 11px;
	margin-left: 5px;
	margin-right: 3px;
	margin-bottom: 2px;
	display: inline-block;
}
#service_apply_button {
	background-color: #e7e7e7;
	cursor: pointer;
	margin-top: 10px;
	width: 100%;
}
#service_apply_button:hover {
	color: white;
	background-color: #279DE1;
}
#service_apply_button:hover .service_apply_button_arrow {
	background-image: url("/images/layout/droparrow_white.png");
}
#service_apply_button_label_text {
	margin: 0 2px 0 6px;
}

/**
* Steps
*/
#step_overview_box {
	margin-left: 660px;
	position: fixed;
	top: 472px;
	width: 300px;
	background-color: #EDEDED;
	padding: 10px;
}
#step_overview_box.fixed-top {
	top: 10px;
}
#step_overview_box h3 {
	opacity: 0.25;
	margin-top: 0;
}
#step_checklist h2 {
	margin-top: 0;
	color: #808080;
}
#step_checklist h2.blue {
	color: #279DE1;
}
.step_number {
	background: none repeat scroll 0 0 #000000;
	border-radius: 50%;
	color: #FFFFFF;
	height: 30px;
	line-height: 30px;
	text-align: center;
	width: 30px;
	display: inline-block;
	font-family: "timeacle-regular",Tahoma,Verdana,Arial,sans-serif;
	font-size: 18px;
}
.step_number.blue{
	background-color: #279DE1;
}
.step_number.grey{
	background-color: #808080;
}
.step_container {
	width: 30px;
	margin-right: 10px;
	margin-bottom: 5px;
}
.step_caption {
	line-height: 35px;
}

/**
 * calendar styles
 */
#calendar_container {
	position: relative;
	width: 206px;
	padding-bottom: 20px;
}
.ui-datepicker-inline {
	width: auto;
}
.ui-datepicker-inline .ui-datepicker-calendar {
	background: none;
}
.ui-datepicker-inline th {
	text-align: left;
}
.ui-datepicker-inline .ui-datepicker-header {
	background: none;
	padding: 0;
	position: inherit;
}
.ui-datepicker-inline .ui-datepicker-title, .ui-timepicker .ui-timepicker-title {
	color: #000000;
	font-family: "timeacle-regular",Tahoma,Verdana,Arial,sans-serif;
	font-size: 30px;
	opacity: 0.5;
	text-align: left;
	margin: 0;
}
.ui-datepicker-inline td span, .ui-datepicker-inline td a {
	background-color: #dfdfdf;
	border: medium none;
	font-size: 12px;
	font-weight: normal;
	height: 20px;
	padding: 0;
	width: 25px;
	margin: 0 5px 5px 0;
	line-height: 20px;
	color: #000000;
}
.ui-datepicker-inline .ui-state-highlight {
	background-color: #dfdfdf!important;
	color: #000000!important;
	font-weight:normal;
}
.ui-datepicker-inline td span {
	opacity: 0.5;
}
.ui-datepicker-collective .ui-datepicker-calendar .ui-state-highlight .ui-state-default,
.ui-datepicker-current-day .ui-state-active{
	background-color: #279DE1!important;
	color: #ffffff!important;
	opacity: 1;
	background-image: none;
	font-weight: bold;
}
.ui-datepicker-collective .ui-datepicker-current-day .ui-state-active {
	background-color: #dfdfdf!important;
	color: #000000!important;
	font-weight: normal;
}
.ui-datepicker-inline td.ui-state-highlight {
	background:none!important;
}
.ui-datepicker-inline table {
	width: auto;
}
.ui-datepicker-inline .ui-datepicker-calendar thead th {
	font-size: 12px;
	font-weight: normal;
	padding: 0 0 2px;
	color: #808080;
}
.ui-datepicker-inline .ui-datepicker-header .ui-datepicker-prev, .ui-datepicker-inline .ui-datepicker-header .ui-datepicker-next {
	bottom: 0;
	top: auto;
	width: auto;
}
.ui-datepicker-inline .ui-datepicker-prev span,
.ui-datepicker-inline .ui-datepicker-next span {
	color: #808080;
	font-family: "timeacle-regular",Tahoma,Verdana,Arial,sans-serif;
	margin: 5px 0;
	position: relative;
	width: auto;
	top: 0;
	left: 0;
	padding: 2px;
}
.ui-datepicker-inline .ui-datepicker-current-day .ui-state-default {
	background-color: #dfdfdf;
}

/*
** Times Selection
*/
.time_option {
	background-color: #EDEDED;
	height: 30px;
	line-height: 30px;
	margin: 0 5px 5px 0;
	text-align: center;
	width: 55px;
	cursor: pointer;
}

/*
** Confirmation
*/
.confirmation_section input {
	background-color: #EDEDED;
	border: medium none;
	border-radius: 0;
	color: #808080;
	height: 35px;
	margin: 0 10px 10px 0;
	width: 270px;
	padding: 0 10px;
	font-family: "timeacle-light", Tahoma, Geneva, Verdana, sans-serif;
	font-size: 18px;
	line-height: 40px;
}
.confirmation_section textarea {
	resize: none;
	background-color: #EDEDED;
	border: medium none;
	border-radius: 0;
	color: #000000;
	height: 70px;
	margin: 0 10px 10px 0;
	width: 570px;
	padding: 10px;
	font-family: "timeacle-thin", Tahoma, Geneva, Verdana, sans-serif;
	font-size: 16px;
	line-height: 20px;
}
.booking_service_notice{
	margin: 10px 0;
}
.booking_prereservation_notice {
	font-weight: bold;
}
#booking_button {
	width: auto;
	padding-left: 30px;
	padding-right: 30px;
	float: left;
}
.booking_submit_container {
	clear: both;
}
#register_form_container #fieldset-buttons {
	margin-bottom: 20px;
}

#agb_footnote {
	margin-top: 30px;
}
.confirmation_section input, .confirmation_section select.nostyle {
	background-color: #EDEDED;
	border: medium none;
	border-radius: 0;
	color: #000000;
	font-size: 16px;
	height: 35px;
	margin: 0 10px 10px 0;
	width: 270px;
	padding: 0 10px;
	font-family: "timeacle-thin", Tahoma, Geneva, Verdana, sans-serif;
}
.confirmation_section select.nostyle {
	width: 290px;
}
#required_data_container ul {
	font-weight: bold;
	margin-top: 0;
}
#register-form .form-inputs,
#login-form .form-inputs {
	display: inline-block;
	position: relative;
}
#register-form .checkbox {
	margin-bottom: 15px;
}
#register-form .tac-text {
	min-height: 42px;
	margin-top: 5px;
	width: 540px;
	padding-right: 25px;
}
#register-form .errors,
#login-form .errors {
	background: url("/images/icons/form-error.png") no-repeat scroll center center rgba(0, 0, 0, 0);
	height: 40px;
	margin: 0;
	position: absolute;
	right: 10px;
	top: -2px;
	width: 30px;
	z-index: 1;
}
#register-form .errors li,
#login-form .errors li {
	background-color: #ec0000;
	color: #ffffff;
	display: none;
	margin-left: -260px;
	margin-top: 40px;
	padding: 10px;
	width: 270px;
	z-index: 50;
}
#register-form .tac-checkbox .errors {
	left: 560px;
}
#already_customer, #no_customer {
	cursor: pointer;
}
#already_customer_section #login-form .form-inputs {
	float: left;
}
#login_form_container {
	height: 69px;
	width: 590px;
}
#login_password {
	margin-right: 0;
}
#info_no_booking {
	width: 260px;
}
.preview{
	display: none;
}
#instant_info_icon{
	position: absolute;
	margin-left: 90px;
}
.booking_overview_item {
	height: 25px;
}
.booking_overview_item h3 {
	width: 180px
}
.booking_overview_caption {
	width: 192px;
}
#last_rating {
	width: 300px;
}
.profile_body_right_right {
	width: 265px;
}
.service_info_icon {
	vertical-align: middle;
	margin-left: 5px;
}
.overview_service_description {
	font-size: 14px;
	font-style: italic;
	margin: 0;
}
.booking_overview_value {
	font-size: 18px;
	font-family: "timeacle-regular", Tahoma, Geneva, Verdana, sans-serif;
	color: #279DE1;
}
.booking_overview_value.red {
	color: #ec0000;
}
#print_service_info {
	margin-left: 10px;
	cursor: pointer;
}
.preview_container {
	width: 380px;
}
.print_ticket_container label {
	height: 42px;
	margin-top: 5px;
	width: 565px;
	float: right;
}
fieldset#fieldset-covid_checkbox4 {
	margin-bottom: 20px;
}
/*
 * Overlays
 */
.shop-window {
	width: 900px!important;
	overflow: hidden;
	left: 48%!important;
}
#shop-overlay-caption {
	margin: 0 0 0 20px;
}
#ui-widget-overlay {
	height: 100%;
	position:absolute;
	left:0;
	top:0;
	background-color:#000000;
	display:none;
	width: 100%;
	z-index:490;
}
#dialog {
	background-color: #F2F2F2;
	height:auto;
	min-height: 586px;
	width:825px;
	top: 50px;
}
#dialog .close{
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 10;
}
.window {
	display:none;
	height:480px;
	left:50%;
	margin-left: -423px;
	padding:10px;
	position:absolute;
	top:100px;
	width:845px;
	z-index:500;
}
#shop-frame {
	border: none;
}
#dialog.coupons {
	font-family: "advent-Bd2", Verdana, Arial, sans-serif;
	height: auto;
	padding: 5px 30px 20px;
	width: 390px;
}
.coupons.window {
	margin-left: -215px;
}
.coupons .coupon_wrapper {
	font-size: 20px;
	margin-bottom: 10px;
	position: relative;
	text-align: center;
}
.coupons .coupon_container {
	background-color: #FFFFFF;
	cursor: pointer;
	padding: 15px 15px 10px;
}
.coupons .coupon_container .right {
	margin-top:10px;
	text-align: end;
}
.coupons .blue {
	font-size: 14px;
}
.coupons .saved {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 70px;
	padding-top: 30px;
	font-family: "advent-Bd2", Verdana, Arial, sans-serif;
	font-size: 22px;
	color: #CD4F39;
	z-index: 2;
}
.coupons .sold_out {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 70px;
	padding-top: 30px;
	font-family: "advent-Bd2", Verdana, Arial, sans-serif;
	font-size: 22px;
	z-index: 2;
}
.coupon_image {
	margin-top: 10px;
}
#coupon_image, #shop_image {
	line-height: 10px;
	margin-right: 10px;
}
#coupon_button, #shop_button {
	line-height: 40px;
	margin-right: 20px;
	cursor: pointer;
}
.subheading {
	letter-spacing: 1px;
	font-family: "timeacle-thin", Tahoma, Verdana, Arial, sans-serif;
	font-size: 16px;
	font-weight: normal;
}
.ui-datepicker table thead {
	border-left: 1px solid #B2B2B2;
	border-right: 1px solid #B2B2B2;
}
.ui-datepicker table tbody {
	border-right: 1px solid #B2B2B2;
	border-bottom: 1px solid #B2B2B2;
}

#date_selection_container .ui-datepicker table thead {
	border-left: none;
	border-right: none;
}
#date_selection_container .ui-datepicker table tbody {
	border-right: none;
	border-bottom: none;
}
.collective_appointment_widget {
	position: fixed;
	top: 20px;
	color: #FFF;
	width: 100%;
	left: 0;
	height: 0;
	z-index: 1000;
}
.collective_appointment_widget_inner {
	background-color: #279DE1;
	margin: 0 auto;
	height: 50px;
	line-height: 50px;
	font-size: 18px;
	border-radius: 25px;
	display: table;
	padding: 0 20px;
}
.info-boxes{
    /*width:33%;*/
    margin-right:30px;
    margin-bottom:5px;
    margin-top:20px;
}
.info-boxes-container{
    display:flex;
    flex-direction: row;
    flex-wrap: wrap;
	width: 66%;
}
.last{
    margin-right: 0;
}
.info-boxes #profile_info_container{
    width: 200px;
}
.info-boxes #profile_info_container p {
    position: relative;
    width: 340px;
}
.info-boxes #profile_booking_section{
    width: 360px;
}
.info-box-booking{
    display:none;
    float: left;
    width: 100%;
    height: auto;
}
.info-boxes-image {
	height: 180px;
}
.info-boxes img {
	max-width: 100%;
	max-height: 170px;
}
.layout-extra-booking{
    height:100px;
}
.btn_deactivated{
    opacity:0.5;
}
.info-box-booking{
    margin-top:30px;
}
fieldset#fieldset-covid_checkbox5 {
	margin-bottom: 20px;
}
.layout-extra-logo{
    max-width: 130px !important;
}
.grid-view{
    overflow: hidden;
    overflow-y: scroll;
}
.grid-view header,.grid-view footer{
    display:none;
}
.grid-view #outershell{
    min-width: 0;
}
.grid-view section{
    padding-top:20px !important;
}
.grid-view #klaro-ticketarea{
    display:none;
}
.queue_info_section {
	margin-top: 20px;
}
.info_overlay .ui-dialog-content font, #booking_overview font{
    background-color: transparent !important;
}
.info_overlay .ui-widget-content a{
    color: #ffffff !important;
}
.booking_submit_container select {
	height: 50px!important;
	cursor: pointer;
}
.booking_submit_container span.customStyleSelectBox {
	background-color: #248AC4;
	height: 30px;
	margin-left: -5px;
	padding: 10px 10px 10px 12px;
}
.booking_submit_container span.customStyleSelectBox:hover {
	background-color: #248AC4;
}
.booking_submit_container span.customStyleSelectBoxInner.left {
	display: none!important;
}
.booking_submit_container span.customStyleSelectBoxArrow.left {
	height: 8px!important;
	float: none;
	margin-top: 13px;
	background-image: url(/images/layout/droparrow_white_thick.png);;
}
.info-boxes-container .info-boxes {
	width: 45%;
	margin-right: 30px;
	margin-bottom: 5px;
	margin-top: 20px;
}
.info-boxes.last {
	width: 25%;
	margin-right: 30px;
	margin-bottom: 5px;
	margin-top: 20px;
}
.info-boxes .timeacle_button {
	width: 290px;
}
