/* General */

label {
	display: block;
	font-size: 15px;
	font-weight: bold;
	/*letter-spacing: 0.1em;*/
	letter-spacing: 0.05em;
	line-height: 28px;
	margin-bottom: 6px;
	text-transform: uppercase;
}

input[type="text"], input[type="email"], input[type="tel"], input[type="number"], button, select, textarea, .inputnumber {
	background-color: #f3f3f3;
	/*border: 1px solid #f3f3f3;*/
	-webkit-border-radius: 3px;
	border-radius: 3px;
	color: #333333;
	font-size: 17px!important;
	font-weight: 400;
	line-height: 20px;
	margin-bottom: 15px;
	min-height: 42px;
	padding: 10px 20px;
	text-align: left;
	-webkit-transition: border-color 0.5s, background-color 0.5s;
	-o-transition: border-color 0.5s, background-color 0.5s;
	transition: border-color 0.5s, background-color 0.5s;
	width: 100%;
}
input:focus, button:focus, select:focus, textarea:focus, .dropdown.open > button {
	background-color: #e6e6e6;
	border-color: #cdcdcd;
}

form {
	margin: 10px 0;
	width: 100%;
}
.filter form {
	margin: 0;
}

.filtertitle {
	display: none;
}


/* custom checkbox group */
.customcheckboxgroup {
	margin-top: 5px;
}
.customcheckboxgroup label {
	color: #000;
	cursor: pointer;
	display: block;
	font-size: 16px;
	font-weight: normal;
	letter-spacing: 0;
	line-height: 30px;
	margin-bottom: 0;
	text-transform: none;
}
.customcheckboxgroup label.active {
	font-weight: 700;
	color: #ef114c;
}
.customcheckboxgroup label.active input + span {
	border-color: #ef114c;
}
.customcheckboxgroup label.active input:checked + span:before {
	font-weight: 700;
}
.customcheckboxgroup label.disabled {
	color: #c8c8c8;
	cursor: default;
}
.customcheckboxgroup input[type="checkbox"], .customcheckboxgroup input[type="radio"] {
	display: none;
}
.customcheckboxgroup input + span {
	border: 2px solid #000000;
	display: inline-block;
	height: 14px;
	margin-right: 10px;
	position: relative;
	text-align: center;
	vertical-align: -1px;
	width: 14px;
}
.customcheckboxgroup label.disabled input + span {
	border-color: #c8c8c8;
}
.customcheckboxgroup input:checked + span:before {
	font-family: 'icomoon' !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	letter-spacing: 0;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;

	content: "\e906";
	font-size: 10px;
	position: absolute;
	right: -1px;
	top: 1px;
}


/* custom checkbox */
.customcheckbox {
	background-color: #cacaca;
	-webkit-border-radius: 12px;
	border-radius: 12px;
	cursor: pointer;
	display: inline-block;
	height: 24px;
	line-height: 24px;
	margin-bottom: 0;
	margin-left: 10px;
	position: relative;
	-webkit-transition: background-color 0.3s;
	-o-transition: background-color 0.3s;
	transition: background-color 0.3s;
	vertical-align: -6px;
	width: 40px;
}
.customcheckbox.checked {
	background-color: #ef114c;
}
.customcheckbox input[type="checkbox"], .customcheckbox input[type="radio"] {
	display: none;
}
.customcheckbox span {
	background-color: #fff;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	color: #333333;
	display: inline-block;
	height: 16px;
	margin: 4px;
	overflow: hidden;
	-webkit-transition: transform 0.3s, background-color 0.3s;
	-o-transition: transform 0.3s, background-color 0.3s;
	-webkit-transition: background-color 0.3s, -webkit-transform 0.3s;
	transition: background-color 0.3s, -webkit-transform 0.3s;
	transition: transform 0.3s, background-color 0.3s;
	transition: transform 0.3s, background-color 0.3s, -webkit-transform 0.3s;
	position: relative;
	width: 18px;
}
.customcheckbox  span:before, .customcheckbox span:after {
	font-family: 'icomoon' !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	letter-spacing: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;

	display: block;
	font-size: 8px;
	left: 0px;
	line-height: 16px;
	position: absolute;
	text-align: center;
	top: 0;
	-webkit-transition: opacity 0.3s;
	-o-transition: opacity 0.3s;
	transition: opacity 0.3s;
	width: 18px;
	z-index: 1;
}
.customcheckbox span:before {
	content: "\e91d";
	opacity: 1;
}
.customcheckbox span:after {
	content: "\e906";
	opacity: 0;
}
.customcheckbox input:checked + span {
	-webkit-transform: translate3d(14px, 0, 0);
	-ms-transform: translate3d(14px, 0, 0);
	transform: translate3d(14px, 0, 0);
}
.customcheckbox input:checked + span:before {
	opacity: 0;
}
.customcheckbox input:checked + span:after {
	opacity: 1;
}


.customcheckboxlabel, .RequestForm .customcheckboxlabel {
	display: inline-block;
	line-height: 32px;
	margin-bottom: 15px;
	padding-top: 5px;
	padding-bottom: 5px;
}
label.customcheckboxlabel, .RequestForm label.customcheckboxlabel {
	font-size: 18px;
	font-weight: normal;
	letter-spacing: 0;
	text-transform: none;
}


.onlybookablecaption {
	display: block;
	line-height: 24px;
	margin-bottom: 10px;
	min-width: 250px;
}
.onlybookablecaption:after {
	content: '';
	clear: both;
	display: table;
}
.onlybookablecaption .customcheckbox {
	float: right;
}


/* custom number inputs */
.inputnumber {
	display: inline-block;
	line-height: 42px;
	overflow: hidden;
	padding: 0;
	padding-left: 20px;
	padding-right: 84px;
	position: relative;
	vertical-align: top;
	width: auto;
}
.dropdown .inputnumber {
	margin-bottom: 0;
	margin-right: 20px;
}
.inputnumber.adults {
	min-width: 220px;
}
.inputnumber.kids {
	min-width: 170px;
}
.inputnumber span {
	display: inline-block;
	white-space: nowrap;
}
.inputnumber button {
	background-color: #cacaca;
	border: 0;
	-webkit-border-radius: 0;
	border-radius: 0;
	font-weight: bold;
	height: 100%;
	margin: 0;
	padding: 0;
	position: absolute;
	right: 0;
	text-align: center;
	top: 0;
	width: 32px;
	-ms-touch-action: manipulation;
	touch-action: manipulation;
}
.inputnumber button.sub {
	right: 32px;
}
.inputnumber button:hover {
	background-color: #c3c3c3;
}


/* Filter */
.filter {
	background-color: #f3f3f3;
	left: 0;
	margin: 0 -30px;
	padding: 15px 10px;
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	z-index: 100;
}
.filter.vertical {
	margin: 0;
	padding: 20px 30px 30px;
	position: relative;
	top: 0 !important;
}
.filter.hastooltip {
	margin-top: 70px;
}
body.scrollheader .filter {
	top: 80px;
}
.filter.no-stycky {
	position: static;
}
.filter.vertical ul li {
	font-weight: 400;
}
.filter.vertical label {
	margin-bottom: 0;
}
.filter.vertical .btn {
	margin-top: 10px;
}
.filter.vertical .tooltip.fake {
	left: 20px;
	opacity: 1;
	top: -34px;
}
.filter.vertical .tooltip.fake .tooltip-arrow {
	border-width: 8px 6px 0;
	border-top-color: #ef164c;
	height: 0;
	left: 25px;
	margin-left: -6px;
	width: 0;
}
.filter .hidebyresorttype {
	display: none !important;
}


/* Dropdown Allgemein */
/* ################## */
.dropdown {
	margin-bottom: 15px;
}
.dropdown > button {
	margin-bottom: 0;
	white-space: nowrap;
}
.dropdown > button .icon-arrow-down {
	bottom: 0;
	font-size: 7px;
	line-height: 42px;
	position: absolute;
	pointer-events: none;
	right: 20px;
	top: 0;
}


/* Dropdown mit erweiterten Funktionen */
/* ################################### */
.customdropdown {
	display: inline-block;
	margin-bottom: 0;
	margin-right: 40px;
}
.filter .customdropdown {
	margin-right: 0;
}
.filter.vertical > .customdropdown {
	display: block;
	margin-bottom: 15px;
}
.customdropdown.open:before {
	background-color: rgba(255, 255, 255, 0.85);
	bottom: 0;
	content: '';
	display: block;
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	z-index: -1;
}
.customdropdown.select.open:before/*, #headercover .customdropdown.open:before*/ {
	content: none;
	display: none;
}
.customdropdown .customdropdown {
	margin-right: 20px;
}
.customdropdown > button {
	background-color: transparent;
	-webkit-border-radius: 0;
	border-radius: 0;
	border: 0;
	line-height: 30px;
	min-height: 0;
	padding: 0;
	display: block;
}
.filter .customdropdown > button {
	padding-left: 20px;
	padding-right: 20px;
}
.filter.vertical > .customdropdown > button {
	line-height: 24px;
	padding: 0;
}
.customdropdown.open > button {
	background-color: transparent;
	-webkit-border-radius: 0;
	border-radius: 0;
	border-color: transparent;
}
.customdropdown.selectpreview:not(.select) > button {
	color: #ef114c;
	font-weight: bold;
}
.filter.vertical .customdropdown.selectpreview:not(.select) > button, .additionalfilter .customdropdown.selectpreview:not(.select) > button {
	color: #333333;
	font-weight: 400;
}
.customdropdown > button span[class^="icon-"] {
	margin-right: 10px;
}
.customdropdown > button .icon-arrow-down {
	line-height: normal;
	margin-left: 10px;
	margin-right: 0;
	position: static;
	vertical-align: middle;
}
.customdropdown > button .icon-datepicker {
	font-size: 20px;
}
.customdropdown > button > .selectpreviewvalue, .customdropdown.selectpreview > button > .default {
	display: none;
}
.customdropdown.selectpreview > button > .selectpreviewvalue {
	display: inline-block;
}
.customdropdown.selectpreview:not([class*="dates"]):not([class*="overflow-auto"]) > button > .selectpreviewvalue {
	float: left;
	overflow: hidden;
	max-width: 90%;
	max-width: calc(100% - 20px);
}
.customdropdown .placeholder {
	color: #333;
	opacity: 0.5;
	font-style: italic;
}
.customdropdown.select.selectpreview .placeholder {
	display: none;
}
.customdropdown .inputicon, .inputicon {
	padding: 12px;
	pointer-events: none;
	position: absolute;
	right: 0;
}
.additionalfilter .icon-search, .dropdown .icon-search {
	cursor: pointer;
	pointer-events: auto;
}
.customdropdown .inputicon-left, .inputicon-left {
	right: auto;
	left: 0;
}
.customdropdown .dropdown-menu {
	background-color: #ffffff;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	border: 1px solid #b6b6b6;
	-webkit-box-shadow: 0px 10px 35px rgba(0, 0, 0, 0.25);
	box-shadow: 0px 10px 35px rgba(0, 0, 0, 0.25);
	font-size: 17px;
	margin-top: 8px;
	min-width: 260px;
	padding: 10px 20px;
}
.customdropdown.rightalign .dropdown-menu {
	left: auto;
	right: 0;
}
.customdropdown .dropdown-menu:before, .customdropdown .dropdown-menu:after {
	content: '';
	display: block;
	height: 0;
	left: 30px;
	position: absolute;
	top: -8px;
	width: 0;
}
.filter.vertical .customdropdown .dropdown-menu:before, .filter.vertical .customdropdown .dropdown-menu:after {
	left: auto;
	right: 30px;
}
.filter.vertical .customdropdown .dropdown-menu:after {
	right: 31px;
}
.customdropdown .dropdown-menu:before {
	border-style: solid;
	border-width: 0 7px 8px 7px;
	border-color: transparent transparent #b6b6b6 transparent;

}
.customdropdown .dropdown-menu:after {
	border-style: solid;
	border-width: 0 6px 7px 6px;
	border-color: transparent transparent #ffffff transparent;
	left: 31px;
	top: -7px;
}
.customdropdown .dropdown-menu li {
	padding-left: 0;
}
.customdropdown .dropdown-menu li:before {
	content: none;
	display: none;
}
.customdropdown .dropdown-menu li:after {
	content: '';
	clear: both;
	display: table;
}
.customdropdown .dropdown-menu li > a {
	clear: none;
	display: block;
	line-height: inherit;
	padding: 0;
	white-space: normal;
}
.customdropdown .dropdown-menu li > a:hover, .customdropdown .dropdown-menu li > a:focus {
	background-color: rgba(0, 0, 0, 0.1);
	background-image: none;
}
.customdropdown .dropdown-menu li > a.reset:hover, .customdropdown .dropdown-menu li > a.reset:focus {
	background-color: transparent;
	background-image: none;
}
.customdropdown .dropdown-menu li {

}
.customdropdown .reset, .additionalfilter .reset, .resetlink {
	color: #000;
	float: left;
	font-size: 13px;
	text-decoration: underline;
}
.resetlink {
	float: none;
	margin-left: 60px;
	position: relative;
}
.customdropdown .apply, .customdropdown .dropdown-menu li > a.apply {
	background-color: #ef114c;
	-webkit-border-radius: 7px;
	-moz-border-radius: 7px;
	border-radius: 7px;
	color: #fff;
	display: block;
	font-size: 14px;
	float: right;
	font-weight: bold;
	line-height: 34px;
	margin-top: 0;
	padding: 0 15px;
	text-decoration: none;
}
.showmap {
	cursor: pointer;
	float: right;
	margin-right: 20px;
	margin-top: 3px;
	position: relative;
}


/* Dropdown als Select darstellen */
/* ############################## */
.customdropdown.select > button {
	background-color: #f3f3f3;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	padding: 6px 20px;
}
.customdropdown.select.open > button {
	-webkit-border-radius: 3px 3px 0 0;
	border-radius: 3px 3px 0 0;
}
.customdropdown.select > button .icon-arrow-down {
	margin-left: 15px;
	margin-right: 0;
}
.customdropdown.select .dropdown-menu {
	background-color: #f3f3f3;
	border: 0;
	-webkit-border-radius: 0 0 3px 3px;
	border-radius: 0 0 3px 3px;
	margin-top: 0;
	/*min-width: 160px;
	width: 100%;*/
	min-width: 100%;
	padding-left: 0;
	padding-right: 0;
	width: auto;
}
.customdropdown.select .dropdown-menu:before, .customdropdown.select .dropdown-menu:after {
	content: none;
	display: none;
}
.customdropdown.select .dropdown-menu a {
	line-height: 30px;
	padding-left: 20px;
	padding-right: 20px;
}
.shortrequest .col-lg-4 > .customdropdown.select .dropdown-menu a {
	white-space: nowrap;
}

.filter .customdropdown.priceregulator .customdropdown.select .dropdown-menu a, .filter .additionalfilter .customdropdown.select .dropdown-menu a , .customdropdown.guests .customdropdown.select .dropdown-menu a {
	white-space: nowrap;
}

/* Forms in Dropdown */
.form-inline {
	font-size: 0;
	line-height: 42px;
	margin-bottom: 20px;
	white-space: nowrap;
}
.form-inline .form-group, .form-inline > * {
	font-size: 17px;
	vertical-align: top;
}
.kidsage {
	display: block;
	margin-top: 20px;
	margin-right: 20px;
	margin-bottom: -10px;
	vertical-align: middle;
	white-space: normal;
	width: 100%;
}
.kidsage .inputnumber {
	margin-left: 20px;
	margin-right: 0;
	/*margin-bottom: 0;*/
	margin-bottom: 10px;
	min-width: 125px;
}
.kidsage > span {
	float: left;
	line-height: 40px;
	margin-bottom: 15px;
	vertical-align: bottom;
}
.roomselect {
	display: none;
	position: relative;
}
.roomselect.show {
	display: block;
}
.room label {
	margin-bottom: 10px;
}
.customdropdown .rooms {
	display: none;
}
.customdropdown .rooms:after {
	content: '';
	display: table;
	clear: both;
}
.rooms .addroom, .rooms .removeroom {
	color: #ef114c;
	display: inline-block;
	font-size: 13px;
	line-height: 30px;
	margin-bottom: 10px;
}
.rooms .addroom {
	float: right;
}
.rooms .removeroom {
	float: left;
	/*color: #ef114c;
	font-size: 10px;
	line-height: 38px;
	position: absolute;
	text-align: center;
	bottom: 0;
	right: -20px;
	width: 40px;*/
}
.roomsinfo {
	margin-bottom: 10px;
	white-space: nowrap;
}
.roomsinfo a {
	text-decoration: underline;
}
.foto .roomsinfo a {
	display: inline-block;
}


/* Weitere Filter */
.additionalfilter {
	background-color: #fff;
	border: 0;
	-webkit-border-radius: 0;
	border-radius: 0;
	bottom: 0;
	-webkit-box-shadow: 0px 10px 35px rgba(0, 0, 0, 0.25);
	box-shadow: 0px 10px 35px rgba(0, 0, 0, 0.25);
	display: block;
	left: -640px;
	margin: 0;
	opacity: 0;
	overflow: hidden;
	/*padding: 20px 20px 30px;*/
	padding: 0;
	position: fixed;
	-webkit-transition: left 0.5s, opacity 0.5s 0.5s;
	-o-transition: left 0.5s, opacity 0.5s 0.5s;
	transition: left 0.5s, opacity 0.5s 0.5s;
	top: 170px;
	width: 640px;
	z-index: 90;
}
body.scrollheader .additionalfilter {
	display: -webkit-box !important;
	display: -webkit-flex !important;
	display: -ms-flexbox !important;
	display: flex !important;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: start;
	-webkit-justify-content: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	top: 140px;
}
.additionalfilter.show {
	left: 0;
	opacity: 1;
	-webkit-transition: left 0.5s;
	-o-transition: left 0.5s;
	transition: left 0.5s;
}
.additionalfilter label {
	margin-bottom: -3px;
}
.additionalfilter label .amount {
	font-size: 14px;
	font-style: italic;
}
.additionalfilter .form-group {
	margin-bottom: 12px;
	position: relative;
}
.additionalfilteractions {
	background-color: #fff;
	bottom: 0;
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
	left: 0;
	padding: 20px;
	position: absolute;
	right: 0;
}
.additionalfilter .additionalfilteractions {
	margin-top: 25px;
}
.additionalfilter {

}

.additionalfilterscroll {
	margin-bottom: 113px;
	overflow: auto;
	padding: 20px 20px 0;
}
.additionalfilter .apply {
	display: block;
	margin-top: 15px;
}
.additionalfilter + .applyoverlay {
	background-color: rgba(255, 255, 255, 0.85);
	bottom: 0;
	content: '';
	display: block;
	left: 0;
	opacity: 0;
	position: fixed;
	pointer-events: none;
	right: 0;
	top: 0;
	/*z-index: 80;*/
	z-index: -1;
}
.additionalfilter.show + .applyoverlay {
	opacity: 1;
	pointer-events: auto;
}
.additionalfilter .abort {
	float: right;
	font-size: 13px;
	font-weight: bold;
}
.additionalfilter .customcheckboxgroup {
	-webkit-column-count: 2;
	-moz-column-count: 2;
	column-count: 2;
	-webkit-column-gap: 30px;
	-moz-column-gap: 30px;
	column-gap: 30px;
}


/* Preisregler */
.filter .noUi-target, form .noUi-target {
	background-color: transparent;
	border: 0;
	border-left: 2px solid #000;
	border-right: 2px solid #000;
	-webkit-border-radius: 0;
	border-radius: 0;
	-webkit-box-shadow: none;
	box-shadow: none;
	clear: both;
	height: 12px;
	margin-bottom: 8px;
	margin-top: 6px;
	padding-left: 12px;
	position: relative;
}
.filter .noUi-target:after, form .noUi-target:after {
	background-color: #000000;
	content: '';
	display: block;
	height: 2px;
	left: 0;
	position: absolute;
	right: 0;
	top: 5px;
}
.filter .noUi-connect, form .noUi-connect {
	background-color: #ee114c;
	height: 4px;
	top: 4px;
}

.filter .noUi-horizontal .noUi-handle, html:not([dir=rtl]) .filter .noUi-horizontal .noUi-handle,
form .noUi-horizontal .noUi-handle, html:not([dir=rtl]) form .noUi-horizontal .noUi-handle {
	background-color: #ef114c;
	border: 0;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-webkit-box-shadow: none;
	box-shadow: none;
	height: 12px;
	right: 0px;
	top: 0px;
	width: 12px;
}
.filter .noUi-handle:before, .filter .noUi-handle:after, form .noUi-handle:before, form .noUi-handle:after {
	display: none;
}
.filter #pricerange, .starsrange {
	min-width: 200px;
}
.starsrange {
	margin-bottom: 4px;
}
/*
.starsslider {
	margin-right: 20px;
}
*/
.filter .pricerangestart, .filter .pricerangeend, .starsrangestart, .starsrangeend {
	display: inline-block;
	font-size: 17px;
	line-height: 32px;
}
.starsrangestart, .starsrangeend {
	float: left;
	font-size: 10px;
	line-height: 26px;
}
.filter .pricerangeend, .starsrangeend {
	float: right;
}
.filter .pricerangestart:after, .filter .pricerangeend:after {
	content: ' €';
}

/* slider touch area */
.noUi-touch-area {
	width: 40px!important;
	height: 40px!important;
	position: absolute;
	bottom: 0;
	cursor: pointer;
}
.noUi-handle-lower .noUi-touch-area {
	right: -14px;
}
.noUi-handle-upper .noUi-touch-area {
	left: -14px;
}


/* Anfrageformular */
.RequestForm fieldset {
	margin-bottom: 30px;
}
.RequestForm label {
	line-height: 36px;
	margin-bottom: 0;
}
.RequestForm label.customcheckbox {
	margin-left: 0;
	margin-right: 10px;
}
.RequestForm fieldset.col-md-6 label.customcheckboxlabel {
	display: inline;
}
.RequestForm legend {
	margin-bottom: 20px;
}
.RequestForm legend a.offerchange {
	float: right;
	border-bottom: none;
	color: #7f7f7f!important;
	font-size: 14px;
	line-height: 30px;
}

.hasavailability, .hasnotavailability, .hasavailability, .roomhasnotavailability {
	display: inline-block;
	font-size: 15px;
	line-height: 24px;
}
.hasavailability span[class^="icon-"], .hasnotavailability span[class^="icon-"], .roomhasnotavailability span[class^="icon-"] {
	float: left;
	font-size: 24px;
	margin-top: 12px;
	margin-right: 10px;
}
.priceoverview .hasnotavailability, .priceoverview .roomhasnotavailability {
	padding: 20px 15px 0;
}
.priceoverview.roompriceavailability .hasnotavailability, .priceoverview.roompriceavailability .roomhasnotavailability {
	padding-left: 0;
	padding-right: 0;
}
.priceoverview .hasnotavailability span[class^="icon-"], .priceoverview .roomhasnotavailability span[class^="icon-"] {
	margin-top: 0;
}

.RequestForm input:focus {
	border: 2px solid #cdcdcd;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}
.RequestForm .validationcontainer {
	position: relative;
}
.RequestForm input.invalid, .RequestForm .validationcontainer.invalid input { /* .RequestForm input[required],  */
	border: 2px solid #ee164c;
	background-color: #ffe9ee;
	-webkit-box-shadow: 0 0 0px 1000px #ffe9ee inset;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}
.RequestForm .inputnumber.validationcontainer.invalid {
	background-color: #ffe9ee;
	border: 2px solid #ee164c;
}
.RequestForm .inputnumber.validationcontainer.valid {
	border: 2px solid #34ab37;
	background-color: #e7f3e7;
}
/*.RequestForm .inputnumber.validationcontainer.invalid button {
	background-color: #ee164c;
	color: #fff;
}
.RequestForm .inputnumber.validationcontainer.invalid button:hover {
	background-color: #d61344;
}*/
.RequestForm label.invalid, .RequestForm .validationcontainer.invalid {
	color: #ee164c;
}
.RequestForm input.valid, .RequestForm .validationcontainer.valid input { /* input[required]:valid, */
	border: 2px solid #34ab37;
	background-color: #e7f3e7;
	-webkit-box-shadow: 0 0 0px 1000px #e7f3e7 inset;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}
.RequestForm .tooltip {
	z-index: 100;
}
.RequestForm textarea {
	min-height: 100px;
	min-width: 100%;
	max-width: 100%;
}
.RequestForm .inputnumber {
	width: 100%;
}
.RequestForm .kidsage {
	margin-bottom: 0;
	margin-right: 0;
	margin-top: 0;
	width: auto;
}
.RequestForm .kidsage .inputnumber {
	margin-bottom: 15px;
	margin-left: 0;
	margin-right: 15px;
	width: auto;
}
.RequestForm .customdropdown.select {
	display: block;
	margin-bottom: 15px;
	width: 100%;
}
.RequestForm .customdropdown.select > button .icon-arrow-down {
	float: right;
	margin-top: 12px;
}
.RequestForm .room {
	-webkit-box-shadow: 0 0 35px rgba(0, 0, 0, 0.15);
	-moz-box-shadow: 0 0 35px rgba(0, 0, 0, 0.15);
	box-shadow: 0 0 35px rgba(0, 0, 0, 0.15);
	margin: 0 0 20px;
	padding: 15px 20px 5px;
	position: relative;
}
.RequestForm .room:before {
	background-color: #cacaca;
	border-radius: 50%;
	color: #333;
	font-size: 14px;
	font-weight: bold;
	height: 26px;
	line-height: 26px;
	opacity: 1;
	position: absolute;
	right: -10px;
	text-align: center;
	top: -10px;
	width: 26px;
	z-index: 99;
}
.RequestForm .room:nth-of-type(1):before {
	content: '1';
}
.RequestForm .room:nth-of-type(2):before {
	content: '2';
}
.RequestForm .room:nth-of-type(3):before {
	content: '3';
}
.RequestForm .room:nth-of-type(4):before {
	content: '4';
}
.RequestForm .room:nth-of-type(5):before {
	content: '5';
}
.RequestForm .room:nth-of-type(6):before {
	content: '6';
}
.RequestForm .room:nth-of-type(7):before {
	content: '7';
}
.RequestForm .room:nth-of-type(8):before {
	content: '8';
}
.RequestForm .room:nth-of-type(9):before {
	content: '9';
}
.RequestForm .room:nth-of-type(10):before {
	content: '10';
}
.RequestForm .addroom, .RequestForm .removeroom {
	font-size: 13px;
	/*border-bottom-width: 1px !important;*/
	border: 0 !important;
	margin-top: -5px;
	margin-bottom: 10px;
	line-height: 24px;
}
.article .contentcontainer .addroom, .article .contentcontainer .removeroom {
	color: #ef114c;
}
.RequestForm .addroom {
	float: right;
}
.RequestForm .removeroom {
	float: left;
}
.RequestForm.preventchange .addroom, .RequestForm.preventchange .removeroom {
	display: none!important;
}
.RequestForm .addroom span, .RequestForm .removeroom span {
	font-size: 11px;
	margin-right: 5px;
	vertical-align: 1px;
}
.RequestForm .requesttraveldatesdropdown, .priceoverview .requestdropdown {
	margin-right: 0;
	width: 100%;
}
/*
.RequestForm.sumrequest .requesttraveldatesdropdown {
	pointer-events: none;
}
*/
.RequestForm.sumrequest legend .backtosearch {
	float: right;
	margin: -2px 0 10px;
}
.RequestForm .requesttraveldatesdropdown .dropdown-toggle, .priceoverview .requestdropdown > .dropdown-toggle {
	border: 2px solid #ee164c;
	background-color: #ffe9ee;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	color: #333333;
	font-size: 17px;
	font-weight: 400;
	line-height: 20px;
	padding: 10px 20px;
}
.priceoverview .requestdropdown.board > .dropdown-toggle {
	border-color: #f3f3f3;
	background-color: #f3f3f3;
}
.priceoverview .requestdropdown.board > .dropdown-toggle .icon-arrow-down {
	float: right;
	margin-top: 5px;
}
.RequestForm .requesttraveldatesdropdown.selectpreview .dropdown-toggle, .priceoverview .requestdropdown.selectpreview > .dropdown-toggle, .priceoverview .customdropdown.select.preselected .dropdown-toggle {
	border: 2px solid #34ab37;
	background-color: #e7f3e7;
	color: #333333;
	font-weight: 400;
}
.RequestForm .requesttraveldatesdropdown .dropdown-toggle .icon-datepicker, .priceoverview .requestdropdown > .dropdown-toggle .icon-datepicker {
	vertical-align: -2px;
}
.priceoverview .requestdropdown > .dropdown-menu > li > .reset {
	display: none;
}
.RequestForm.preventsubmit input[type="submit"].btn.btn-secondary, .additionalfilter.preventsubmit .additionalfilteractions a.btn.apply {
	background: #be1945 url('../img/load-white.gif') center center no-repeat;
	background-size: 26px 26px;
	border-color: #be1945;
	color: transparent;
	cursor: default;
	pointer-events: none;
}

/* roomsummary section */
.RequestForm .roomsummarysection .table tfoot.animalplace > tr > td {
	padding: 0 5px;
}
.RequestForm .roomsummarysection .table tfoot.animalplace > tr > td > .row {
	margin: 0;
}
.roomsummarysection .table tr td label {
	text-align: left;
}

/* Formwidget */
.formwidget .el-submit {
	float: right;
}
.formwidget .el-submit .btn-success {
	background-color: #ef114c;
	border: 2px solid #ef114c;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	border-radius: 4px;
	color: #fff;
	font-size: 15px !important;
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 22px;
	padding: 7px 18px;
	text-shadow: none;
	text-transform: uppercase;
	-webkit-transition: color 0.3s, background-color 0.3s, border-color 0.3s;
	-moz-transition: color 0.3s, background-color 0.3s, border-color 0.3s;
	-ms-transition: color 0.3s, background-color 0.3s, border-color 0.3s;
	-o-transition: color 0.3s, background-color 0.3s, border-color 0.3s;
	transition: color 0.3s, background-color 0.3s, border-color 0.3s;
}
.formwidget .el-submit .btn-success:hover, .formwidget .el-submit .btn-success:active, .formwidget .el-submit .btn-success:focus {
	background-color: #be1945;
	border-color: #be1945;
}


/* Short-Request */
.shortrequest {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	left: 0;
	margin: 0 auto;
	max-width: 945px;
	position: absolute;
	right: 0;
	/*
	top: 50%;
	*/
	top: 55%;
	z-index: 100;
}
.articlebase .leftcontent .shortrequest {
	max-width: none;
}
.shortrequest.light {
	display: block;
	margin: 0 -15px;
	position: static;
	width: auto;
}
.shortrequest.light.formonly {
	background-color: #f3f3f3;
	/*display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;*/
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin: 0 0 30px;
	max-width: none;
	padding: 5px 20px;
	position: -webkit-sticky;
	position: sticky;
	top: 80px;
	width: 100%;
}
.indexmenu .shortrequest.light.formonly {
	display: block;
	margin: 0;
	padding: 10px 15px 15px;
}
.indexmenu .shortrequest.light.formonly:after {
	content: '';
	clear: both;
	display: table;
}
.indexmenu .shortrequest.light.formonly .item {
	margin-bottom: 5px;
}
.shortrequest.light.formonly .btn {
	margin: 0;
	width: auto;
}.indexmenu .shortrequest.light.formonly .btn {
	 margin-top: 5px;
	 width: 100%;
 }
.shortrequest .left {
	background-color: rgb(0, 0, 0);
	background-color: rgba(0, 0, 0, 0.6);
	-webkit-border-radius: 3px;
	border-radius: 3px;
	-webkit-box-flex: 1;
	-webkit-flex: 1 1 725px;
	-ms-flex: 1 1 725px;
	flex: 1 1 725px;
	padding: 20px 15px;
}
.shortrequest.light .left {
	background: transparent;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	padding: 0;
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
}
.shortrequest.light .left .col-lg-4, .shortrequest.light .left .col-md-4 {
	width: auto;
}
.shortrequest .right {
	-webkit-border-radius: 3px;
	border-radius: 3px;
	-webkit-box-flex: 1;
	-webkit-flex: 1 1 200px;
	-ms-flex: 1 1 200px;
	flex: 1 1 200px;
	margin-left: 20px;
	overflow: hidden;
}
.shortrequest input[type="submit"] {
	font-size: 15px;
	font-weight: bold;
	height: 100%;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	width: 100%;
}
.shortrequest:not(.ready) input[type="submit"], #RequestForm.sumrequest input[type="submit"].attendance {
	background: #be1945 url(/fileadmin/template/img/load-white.gif) center center no-repeat;
	background-size: 26px 26px;
	border-color: #be1945;
	color: transparent;
	cursor: default;
	pointer-events: none;
}
.shortrequest.light input[type="submit"], .shortrequest.light button[type="submit"] {
	margin-top: 12px;
}
.shortrequest .col-lg-4 > label {
	color: #fff;
	margin-bottom: 4px;
}
#headercover .shortrequest .left > div > label:before, #fullscreenmenu .shortrequest .left > div > label:before, .shortrequest .priceoverview .left > div > label:before {
	bottom: -20px;
	content: '';
	cursor: pointer;
	display: block;
	left: 0;
	position: absolute;
	right: 0;
	top: -20px;
}
.shortrequest .priceoverview .left > div > label:before {
	bottom: 0;
	top: 0;
}
.shortrequest .col-lg-4 > .customdropdown {
	color: #000;
}
.shortrequest.light .col-lg-4 > .customdropdown {
	margin-right: 20px;
}
.shortrequest.light .col-lg-4 > .customdropdown.select {
	margin-right: 0;
}
.shortrequest .col-lg-4 > .customdropdown > button {
	color: #fff;
	font-weight: 400;
}
.shortrequest .col-lg-4 > .customdropdown > button span[class^="icon-"], .shortrequest.light.formonly .item > .customdropdown > button span[class^="icon-"] {
	font-size: 19px;
	margin-right: 10px;
	vertical-align: top;
}
.shortrequest.light.formonly .item:last-of-type {
	-webkit-flex: 1 1 auto;
	-ms-flex: 1 1 auto;
	flex: 1 1 auto;
}
.shortrequest.light.formonly .customdropdown > button > span[class^="icon-"] {
	vertical-align: baseline;
}
.shortrequest .col-lg-4 > .customdropdown > button span.icon-persons {
	font-size: 17px;
}
.shortrequest .col-lg-4 > .customdropdown > button span.icon-arrow-down {
	font-size: 7px;
	float: right;
	margin: 10px 0 0 15px;
	line-height: normal;
}
.shortrequest .col-lg-4 > .customdropdown > button span[class^="icon-"]:before {
	display: inline-block;
	/*padding-top: 4px;*/
	padding-top: 0;
	vertical-align: -2px;
}
.shortrequest .col-lg-4 > .customdropdown > button span.icon-persons:before {
	padding-top: 2px;
}
.shortrequest .col-lg-4 > .customdropdown > button > .placeholder {
	color: #fff;
	font-size: 15px;
	font-weight: 300;
	opacity: 0.6;
}
.shortrequest.light .col-lg-4 > label, .shortrequest.light .col-lg-4 > .customdropdown > button, .shortrequest.light .col-lg-4 > .customdropdown > button > .placeholder {
	color: #000;
}


/* Hotelsuche */
#freeRoomsForm {
	width: auto;
}
#freeRoomsForm:before {
	background-color: #f3f3f3;
	bottom: 0;
	content: '';
	display: block;
	top: 0;
	left: 0;
	position: absolute;
	right: 0;
	z-index: 0;
}

.hiddenclone {
	display: none;
}

.tooltipdescriptions {
	margin-bottom: 20px;
	margin-top: 10px;
}
.tooltipdescription {
	font-size: 14px;
	line-height: 28px;
}
.tooltipdescription .tooltipcolor {
	background-color: #000;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	display: inline-block;
	height: 8px;
	margin-right: 10px;
	margin-left: 20px;
	vertical-align: 1px;
	width: 8px;
}

.datepickererror {
	padding-top: 5px;
	text-align: center;
}
.datepickererror span {
	background-color: #ef164c;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	box-shadow: 0 0 1px 1px rgba(255, 255, 255, 0.7);
	color: #fff;
	display: inline-block;
	font-size: 14px;
	line-height: 20px;
	margin: 0 auto;
	padding: 6px 10px;
	position: relative;
}
.datepickererror span:before {
	border-style: solid;
	border-width: 0 5px 5px;
	border-color: transparent transparent #ef164c transparent ;
	content: '';
	left: 50%;
	margin-left: -5px;
	position: absolute;
	top: -5px;
}


/* Booking Südtirol */
.fancybox-slide.fancybox-slide--html:before {
	height: 0;
}
#bookingwrapper > h3 {
	margin-bottom: 30px;
}
body #ltswidget-booking {
	font-family: 'Fira Sans', sans-serif;
	/*min-width: 1000px;
	max-width: 1440px;*/
	max-width: 1440px;
	width: 100%;
}
body #ltswidget-booking #booking .booking-summary .title, body #ltswidget-booking #booking .booking-block .title, body #ltswidget-booking .booking-steps .step.done {
	background: #ef164c;
}
body #ltswidget-booking .booking-steps .step.done {
	border-color: #ef164c;
	border-right-color: #fff;
}
body #ltswidget-booking .booking-steps .step.active {
	background-color: #be1945;
	border-color: #be1945;
}
body #ltswidget-booking #booking .row {
	margin: 0;
}
body #ltswidget-booking #booking .row:before, body #ltswidget-booking #booking .row:after {
	display: none;
}
body #ltswidget-booking label {
	display: inline;
	text-transform: none;
	letter-spacing: 0;
	line-height: normal;
	margin: 0;
}
body #ltswidget-booking a {
	cursor: pointer;
}
body .contentcontainer #ltswidget-booking a:not(.btn) {
	border: 0;
}

body #ltswidget-booking #booking .button-color, body #ltswidget-booking #booking .button-gray, body #ltswidget-booking #booking .box-search-request .search-button {
	background-color: #000000;
	background-color: rgba(0, 0, 0, 0.75);
	border: 0;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	color: #ffffff;
	font-size: 16px;
	height: auto;
	letter-spacing: 0;
	padding: 9px 15px;
	text-transform: none;
	background-image: none;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	font-weight: bold;
	line-height: 22px;
	text-shadow: none;
	-webkit-transition: background-color 0.3s, color 0.3s;
	-moz-transition: background-color 0.3s, color 0.3s;
	-ms-transition: background-color 0.3s, color 0.3s;
	-o-transition: background-color 0.3s, color 0.3s;
	transition: background-color 0.3s, color 0.3s;
}
body #ltswidget-booking #booking .button-gray {
	background-color: transparent;
	border: 2px solid #333333;
	color: #333333;
	font-size: 15px;
	letter-spacing: 0.1em;
	padding: 7px 18px;
	text-transform: uppercase;
}
body #ltswidget-booking #booking .button-gray:hover, body #ltswidget-booking #booking .button-gray:focus, body #ltswidget-booking #booking .button-gray:active {
	background-color: #333333;
	color: #ffffff;
}
/*body #ltswidget-booking #booking .button-row.step2 .button-gray {
	display: none;
}*/
body #ltswidget-booking #booking .button-color {
	background-color: transparent;
	border: 2px solid #ef114c;
	color: #ef114c;
	font-size: 15px;
	letter-spacing: 0.1em;
	padding: 7px 18px;
	text-transform: uppercase;
}
body #ltswidget-booking #booking .button-color:hover, body #ltswidget-booking #booking .button-color:active, body #ltswidget-booking #booking .button-color:focus {
	background-color: #ef114c;
	border-color: #ef114c;
	color: #ffffff;
}
body #ltswidget-booking #booking .box-search-request .search-button {
	background-color: #ef114c;
	border-color: #ef114c;
	color: #ffffff;
}
body #ltswidget-booking #booking .box-search-request .search-button:hover, body #ltswidget-booking #booking .box-search-request .search-button:active, body #ltswidget-booking #booking .box-search-request .search-button:focus {
	background-color: #be1945;
	border-color: #be1945;
}
body #ltswidget-booking select, body #ltswidget-booking input[type="text"] {
	min-height: 34px;
}
body #ltswidget-booking .row .input-number, body #ltswidget-booking #booking .box-search-request .block-room .input-number {
	float: left;
	margin: 0 0 0 10px;
	max-width: 60px;
}
body #ltswidget-booking .row .input-number input {
	margin-bottom: 0;
}
body #ltswidget-booking .age:first-child {
	clear: both;
	padding-top: 10px;
}
body #ltswidget-booking #booking .box-search-request .block-room .block-numbers .desc {
	margin-top: 8px;
}
body #ltswidget-booking .lts-ajax-loadoverlay .loading {
	height: auto;
	width: auto;
}
body #ltswidget-booking #booking .step4 .button-color .arrow {
	display: none;
}
body #ltswidget-booking #booking .booking-summary a {
	text-decoration: none;
}
body #ltswidget-booking span#ctl00_ButtonSuccess {
	float: right;
}
#ltswidget-booking.responsive-s span#ctl00_ButtonSuccess {
	float: none;
}
body .contentcontainer #ltswidget-booking ul {
	-webkit-column-count: 1;
	-moz-column-count: 1;
	column-count: 1;
}
body .contentcontainer #ltswidget-booking ul li {
	padding-left: 0;
}
body .contentcontainer #ltswidget-booking ul li:before {
	content: none;
	display: none;
}
body #ltswidget-booking .flex-direction-nav {
	position: absolute;
	top: 50%;
	width: 100%;
}
body #ltswidget-booking .thumbs .flex-viewport {
	z-index: 100;
}
body #ltswidget-booking .lcswdgtbox-content {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
body #ltswidget-booking #booking .box-search-request .block-room {
	-webkit-box-flex: 1;
	-webkit-flex: 1 1 auto;
	-ms-flex: 1 1 auto;
	flex: 1 1 auto;
	margin-left: 15px;
}
body #ltswidget-booking #booking .box-search-request .row-calendar {
	/*margin-bottom: 40px;*/
}
body #ltswidget-booking #booking .box-search-request .block-room .room-search {
	padding-bottom: 10px;
}
body #ltswidget-booking #booking .box-search-request .block-room .room-search:after {
	content: '';
	display: block;
	clear: both;
}
body #ltswidget-booking #booking .box-search-request .row-mealplan {
	top: 148px;
}
body #ltswidget-booking #booking .box-search-request .search-button {
	display: inline-block;
	float: right;
	position: static;
}
body #ltswidget-booking .lcswdgtbox-content .buttons {
	width: 100%;
}

body .row-calendar .box-calendar input:focus {
	background-color: #fecddb;
	color: inherit;
}
#ltswidget-booking .hotel-detail .block-images {
	float: left;
	width: 30%;
}
body #ui-datepicker-div.lts.ui-datepicker {
	z-index: 99993!important;
}
body #ui-datepicker-div.lts th {
	background-color: #ee164c;
}
body #ui-datepicker-div.lts .ui-datepicker-calendar tr td a.ui-state-hover, body #ui-datepicker-div.lts .ui-datepicker-calendar tr td a.ui-state-highlight, body #ui-datepicker-div.lts .ui-datepicker-calendar tr td.ui-datepicker-today a.ui-state-highlight.ui-state-hover, body #ui-datepicker-div.lts .ui-datepicker-calendar tr td a.ui-state-active {
	border-color: #ee164c;
	background: #ee164c;
}
body #ui-datepicker-div.lts .ui-datepicker-calendar tr td.ui-datepicker-today a.ui-state-highlight {
	background-color: #fecddb;
	color: #4a4a4a;
}
body #ltswidget-booking .hotel-detail .fancybox-lts {
	display: none;
}

/* Solr */
.progress-bar {
	background-image: none;
	background-color: #ef114c;
	height: 5px;
}
.result-found {
	display: none;
}
.tx-indexedsearch-res, .results-list {
	-webkit-box-shadow: 0 0 35px rgba(0, 0, 0, 0.15);
	-moz-box-shadow: 0 0 35px rgba(0, 0, 0, 0.15);
	box-shadow: 0 0 35px rgba(0, 0, 0, 0.15);
	margin: 40px 0;
	padding: 15px 20px 5px;
	position: relative;
}
.tx-indexedsearch-res h3 {
	margin: 0;
}
.tx-indexedsearch-res > h3 {
	margin-bottom: 20px;
	margin-top: 10px;
}
.tx-indexedsearch-res h3 a {
	font-size: 20px;
	margin-bottom: 0;
	text-decoration: underline;
}
.results-list h4.results-topic a {
	text-decoration: underline;
}
.tx-indexedsearch-res .article {
	margin-bottom: 20px;
}
.tx-indexedsearch-res .article .contentcontainer p {
	margin-bottom: 20px;
}

.results-list {
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	padding: 0;
}
.results-list .list-group-item {
	padding: 20px;
}
.results-list .list-group-item:first-child, .results-list .list-group-item:last-child {
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
}

body .tx-solr-autosuggest {
	margin-top: -1px;
	padding: 15px;
}
body .tx-solr-autosuggest strong {
	color: #ef114c;
}
body .tx-solr-autosuggest em {
	color: #ef114c;
}
body .tx-solr-autosuggest .autocomplete-group {
	border-top: 1px solid #ccc;
	font-weight: 700;
	margin-top: 10px;
	padding: 10px 5px;
}
body .tx-solr-autosuggest .autocomplete-selected {
	background-color: #f3f3f3;
	cursor: pointer;
}

/* klaro consent */
#gnconsent .klaro .cookie-modal .cm-btn, #gnconsent .klaro .context-notice .cm-btn, #gnconsent .klaro .cookie-notice .cm-btn, div[data-type="placeholder"] .klaro .context-notice .cm-btn {
	width: auto;
	font-size: 16px!important;
	text-align: center;
}
#gnconsent .klaro .cookie-modal .cm-btn.cm-btn-success:not(.cm-btn-outline), #gnconsent .klaro .context-notice .cm-btn.cm-btn-success:not(.cm-btn-outline), #gnconsent .klaro .cookie-notice .cm-btn.cm-btn-success:not(.cm-btn-outline),
div[data-type="placeholder"] .klaro .context-notice .cm-btn.cm-btn-success-var {
	background-color: #34ab37;
}
#gnconsent .klaro .cookie-modal .cm-list-input:checked + .cm-list-label .slider, #gnconsent .klaro .context-notice .cm-list-input:checked + .cm-list-label .slider, #gnconsent .klaro .cookie-notice .cm-list-input:checked + .cm-list-label .slider {
	background-color: #ef114c;
}

#gnconsent .klaro .cookie-modal .cm-list-input.required:checked + .cm-list-label .slider, #gnconsent .klaro .context-notice .cm-list-input.required:checked + .cm-list-label .slider, #gnconsent .klaro .cookie-notice .cm-list-input.required:checked + .cm-list-label .slider {
	background-color: #f595af;
}
/* END klaro consent */

/* chatbot ai kosmo */
#chatbot-widget {
	position: relative;
	z-index: 999;
}
/* END chatbot ai kosmo */

/* Desktop */
@media (max-width: 1440px) {
	.filter {
		margin-left: -20px;
		margin-right: -20px;
	}
	body.scrollheader .filter {
		top: 56px;
	}

	.showmap {
		margin-right: 10px;
	}

	/* Dropdown */
	.filter .customdropdown > button {
		padding-left: 10px;
		padding-right: 10px;
	}
	.customdropdown .placeholder {
		font-size: 15px;
	}

	.customdropdown.select > button .icon-arrow-down {
		margin-left: 10px;
	}


	/* Shortrequest */
	.shortrequest {
		max-width: 630px;
	}
	.shortrequest.light {
		margin-left: -10px;
		margin-right: -10px;
	}
	.shortrequest.light.formonly {
		top: 56px;
	}
	.shortrequest .left {
		-webkit-flex: 1 1 470px;
		-ms-flex: 1 1 470px;
		-webkit-box-flex: 1;
		flex: 1 1 470px;
		padding: 10px 10px 13px;
	}
	.shortrequest.light .left {
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.shortrequest .right {
		-webkit-flex: 1 1 150px;
		-ms-flex: 1 1 150px;
		-webkit-box-flex: 1;
		flex: 1 1 150px;
	}
	.shortrequest.light input[type="submit"], .shortrequest.light button[type="submit"] {
		margin-left: 0;
		margin-top: 10px;
	}
	#headercover .shortrequest .selectpreviewvalue {
		font-size: 16px;
	}

	#headercover .shortrequest .left > div > label:before, #fullscreenmenu .shortrequest .left > div > label:before {
		bottom: -13px;
		top: -10px;
	}

	/* Weitere Filter */
	.additionalfilter {
		top: 136px;
	}
	body.scrollheader .additionalfilter {
		top: 116px;
	}

	body #ltswidget-booking {
		min-width: 800px;
	}

	.RequestForm .roomsummarysection .table tfoot.animalplace > tr > td {
		padding: 0 10px!important;
	}
}

.customdropdown.guests:not(.overflow-auto) .customdropdown.select.dropup .dropdown-menu {
	top: 100%;
	bottom: auto;
	margin-bottom: 0;
	margin-top: 2px;
}
.customdropdown.guests:not(.overflow-auto) .customdropdown.select.dropup > button .icon-arrow-down:before {
	display: inline-block;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
}


@media (min-width: 1081px) {
	.customdropdown .dropdown-menu {
		max-height: 80vh;
	}
	/*.customdropdown:not(.guests) .dropdown-menu, .customdropdown.guests.overflow-auto .dropdown-menu {
		overflow: auto;
	}*/
	/* this rule hides the arrow of the dropdown, but otherwise it is too high (POI categories) */
	.company-list .customdropdown .dropdown-menu {
		overflow: auto;
	}
}


/* Tablet */
@media (max-width: 1080px) {
	.filter {
		padding-bottom: 8px;
		padding-top: 8px;
	}
	.resetlink {
		margin-left: 30px;
	}
	.showmap {
		margin-top: 3px;
	}
	#freeRoomsForm:after {
		clear: both;
		content: '';
		display: table;
	}

	.additionalfilter {
		top: 122px;
	}
	body.scrollheader .additionalfilter {
		top: 102px;
	}

	/* Dropdowns */
	.customdropdown > button span[class^="icon-"] {
		margin-left: 5px;
		margin-right: 0;
	}
	.RequestForm .requesttraveldatesdropdown > .dropdown-toggle > .icon-datepicker {
		margin-left: 0;
		margin-right: 10px;
	}
	.priceoverview .col-md-6 > .customdropdown > button > span[class^="icon-"] {
		margin-left: 0;
	}
	.customdropdown > .dropdown-menu, .customdropdown.rightalign > .dropdown-menu {
		border: 0;
		-webkit-border-radius: 0;
		border-radius: 0;
		height: 100%;
		left: -670px;
		margin: 0 !important;
		max-width: 670px;
		overflow: auto;
		padding: 70px 20px 40px;
		position: fixed;
		top: 0;
		-webkit-transition: left 0.5s;
		-o-transition: left 0.5s;
		transition: left 0.5s;
		-webkit-transform: none;
		-ms-transform: none;
		transform: none;
		width: 100%;
		z-index: 9999;
	}
	.customdropdown:not(.select) > .dropdown-menu {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		/*-webkit-box-pack: center;
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center;*/
		-webkit-box-pack: start;
		-webkit-justify-content: flex-start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		opacity: 0;
		-webkit-transition: left 0.5s, opacity 0.5s 0.5s;
		-o-transition: left 0.5s, opacity 0.5s 0.5s;
		transition: left 0.5s, opacity 0.5s 0.5s;
	}
	.filter .customdropdown.open {
		z-index: 100;
	}
	.customdropdown.open > .dropdown-menu {
		left: 0;
		opacity: 1;
		-webkit-transition: left 0.5s, opacity 0.5s;
		-o-transition: left 0.5s, opacity 0.5s;
		-webkit-transition: left 0.5s, opacity 0s;
		-o-transition: left 0.5s, opacity 0s;
		transition: left 0.5s, opacity 0s;
	}
	.customdropdown:not(.select) > .placeholder {
		opacity: 0.6;
		font-weight: 300;
	}
	.customdropdown.guests > button > .placeholder {
		display: none;
	}

	.customdropdown.select > .dropdown-menu {
		position: absolute;
		top: auto;
		padding: 10px 0;
		height: auto;
	}

	/* custom number inputs */
	.inputnumber.adults {
		min-width: 210px;
	}

	/* Forms in Dropdown */
	.form-inline .form-group, .form-inline > * {
		font-size: 16px;
	}
	.dropdown .inputnumber, .customdropdown .customdropdown {
		margin-right: 10px;
	}
	.kidsage {
		white-space: normal;
	}
	.kidsage > span {
		float: left;
		margin-bottom: 15px;
	}
	.kidsage .inputnumber {
		margin-bottom: 10px;
	}
	.rooms .removeroom {
		bottom: auto;
		top: 0;
	}
	.roomsinfo {
		white-space: normal;
	}

	/*.filter.child-dropdown-open {
		z-index: 1000;
	}*/

	/* Shortrequest */
	.shortrequest {
		margin-top: 10px;
		max-width: 490px;
	}
	.indexmenu .shortrequest.light.formonly {
		display: none;
	}
	.shortrequest .left {
		background-color: rgba(0, 0, 0, 0.75);
		/*-webkit-flex: 1 1 324px;
		-ms-flex: 1 1 324px;
		-webkit-box-flex: 1;
		flex: 1 1 324px;*/
	}
	.shortrequest .right {
		margin-left: 10px;
	}
	.shortrequest .col-lg-4 > .customdropdown {
		max-width: 100%;
	}
	#headercover .shortrequest .col-lg-4 > .selectpreviewvalue {
		max-width: 85%;
		overflow: hidden;
		-ms-text-overflow: ellipsis;
		-o-text-overflow: ellipsis;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
	#headercover .shortrequest .col-lg-4 > .customdropdown {
		display: block;
		height: 30px;
	}

	.tooltipdescription .tooltipcolor {
		margin-left: 0;
	}

	body #ltswidget-booking {
		min-width: 0;
		width: 100%;
	}

	.additionalfilter #pricerangecloned, .additionalfilter .starsslider {
		margin-left: 20px;
		margin-right: 20px;
	}
	.additionalfilter .pricerangestart {
		margin-left: 20px;
	}
	.additionalfilter .pricerangeend {
		margin-right: 20px;
	}
}


@media (max-width: 800px) {
	.RequestForm.sumrequest legend .backtosearch {
		display: table;
		float: none;
		margin-top: 0;
	}
}


/* Smartphone */
@media (max-width: 640px) {
	@media (max-width: 500px) {
		.additionalfilter .customcheckboxgroup {
			-webkit-column-count: 1;
			-moz-column-count: 1;
			column-count: 1;
		}
	}

	label {
		margin-bottom: 3px;
	}
	.inputnumber, .inputnumber button {
		line-height: 38px;
		min-height: 38px;
		vertical-align: middle;
	}

	.form-inline {
		line-height: 38px;
		white-space: normal;
	}
	.form-inline > .dropdown, .form-inline > .inputnumber, .form-group > .dropdown, .form-group > .inputnumber {
		display: block;
		margin-bottom: 10px;
		margin-right: 0;
	}

	.filter {
		padding-bottom: 5px;
		padding-top: 5px;
	}
	#freeRoomsForm {
		min-height: 70px;
	}
	/*body.scrollheader .filter {
		top: 0;
	}*/
	.filter.child-dropdown-open, .filter.child-additionalfilter-open {
		z-index: 990;
	}
	.showmap {
		display: inline-block;
		/*
		float: none;
		*/
		margin-bottom: 3px;
		margin-left: 10px;
	}

	.additionalfilter {
		left: -100%;
		padding-top: 0;
		width: 100%;
		/*top: 108px;*/
		top: 0;
	}
	body.scrollheader .additionalfilter {
		padding-top: 0;
		/*top: 89px;*/
		top: 0;
	}
	.additionalfilterscroll {
		margin-bottom: 105px;
		margin-top: 50px;
	}
	.additionalfilter .form-group {
		margin-bottom: 15px;
	}
	.additionalfilteractions {
		padding-top: 15px;
	}

	/* Shortrequest */
	#headercover .shortrequest {
		bottom: 0;
		display: block;
		padding: 0 10px;
		top: auto;
	}
	#headercover .shortrequest label {
		line-height: 20px;
		margin-bottom: 4px;
	}
	#headercover .shortrequest .left {
		padding: 10px 5px;
	}
	#headercover .shortrequest .left:after {
		content: '';
		clear: both;
		display: table;
	}
	#headercover .shortrequest .col-lg-4 > .customdropdown {
		height: 20px;
		margin-right: 0;
	}
	#headercover .shortrequest .col-lg-4 > .customdropdown > button {
		line-height: 20px;
	}
	#headercover .shortrequest .col-lg-4 > .customdropdown > button .placeholder {
		font-size: 13px;
	}
	#headercover .shortrequest .col-lg-4 > .customdropdown > button span[class^="icon-"] {
		margin-left: 0;
	}
	#headercover .shortrequest .col-lg-4 > .customdropdown > button span[class^="icon-"]:before {
		padding-top: 0;
	}
	#headercover .shortrequest .col-lg-4 > .customdropdown > .dropdown-menu {
		padding: 0 0 53px;
	}
	#headercover .shortrequest .col-lg-4 > .customdropdown > .dropdown-menu > li {
		max-height: 100%;
		overflow: auto;
		/*padding: 40px 20px 0;*/
		padding: 90px 20px 0;
	}
	#headercover .shortrequest .right {
		margin: 10px 0;
	}
	#headercover .shortrequest input[type="submit"] {
		padding-bottom: 8px;
		padding-top: 8px;
	}

	.shortrequest.light input[type="submit"], .shortrequest.light button[type="submit"] {
		min-height: 0;
	}

	.leftcontent .shortrequest.light {
		margin-top: 30px;
	}
	.leftcontent .shortrequest.light .left .col-lg-4 {
		margin-top: 10px;
		width: 100%;
	}
	.leftcontent .shortrequest.light .customdropdown.guests > button > .placeholder {
		display: inline-block;
	}
	.leftcontent .shortrequest.light .customdropdown.guests.selectpreview > button > .placeholder {
		display: none;
	}
	.leftcontent .shortrequest.light .col-lg-4 > .customdropdown > button span.icon-persons {
		line-height: 22px;
	}

	#headercover .shortrequest .left > div > label:before, #fullscreenmenu .shortrequest .left > div > label:before {
		bottom: -10px;
	}

	.shortrequest.light.formonly {
		bottom: 0;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-align: stretch;
		-ms-flex-align: stretch;
		align-items: stretch;
		margin: 0;
		opacity: 0;
		-webkit-transition: opacity 0.5s;
		-moz-transition: opacity 0.5s;
		-ms-transition: opacity 0.5s;
		-o-transition: opacity 0.5s;
		transition: opacity 0.5s;
		padding: 0;
		position: fixed;
		top: auto;
	}
	.shortrequest.light.formonly.ready {
		opacity: 1;
	}
	.shortrequest.light.formonly > .item {
		display: none;
	}
	.shortrequest.light.formonly > .btn {
		-webkit-border-radius: 0;
		-moz-border-radius: 0;
		border-radius: 0;
		margin: 0;
		padding: 10px 15px;
	}

	/* Dropdown */
	/* not working properly */
	/*.customdropdown:before, .additionalfilter.show + .applyoverlay {
		opacity: 0;
		-webkit-transition: opacity 0.5s;
		-moz-transition: opacity 0.5s;
		-ms-transition: opacity 0.5s;
		-o-transition: opacity 0.5s;
		transition: opacity 0.5s;
	}*/
	.customdropdown.open:before, .additionalfilter.show + .applyoverlay {
		border: 1px solid #ccc;
		-webkit-border-radius: 50%;
		border-radius: 50%;
		bottom: auto;
		content: "×";
		display: block;
		font-size: 24px;
		height: 30px;
		left: auto;
		line-height: 28px;
		opacity: 1;
		text-align: center;
		/*
		right: 10px;
		top: 10px;
		*/
		right: 20px;
		top: 10px;
		width: 30px;
		z-index: 10000;
	}
	#fullscreenmenu .customdropdown.open:before {
		/*right: 20px;
		top: 20px;*/
	}
	.additionalfilter.show + .applyoverlay:before {
		content: "×";
	}
	.customdropdown > button {
		white-space: normal;
	}
	.customdropdown.selectpreview > button > .selectpreviewvalue {
		display: inline;
	}
	.customdropdown.selectpreview:not([class*="dates"]):not([class*="overflow-auto"]) > button > .selectpreviewvalue {
		float: none;
		max-width: none;
		overflow: auto;
	}

	.customdropdown.select > button {
		line-height: 26px;
	}

	.customdropdown > .dropdown-menu, .customdropdown.rightalign > .dropdown-menu {
		left: -100%;
	}

	.customdropdown.traveldatesdropdown > ul.dropdown-menu:not(.select) > li:after, .customdropdown.guests > ul.dropdown-menu:not(.select) > li:after {
		content: '';
		position: absolute;
		display: block;
		left: 0;
		bottom: 0;
		right: 0;
		height: 53px;
		background-color: #fff;
		-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
		box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
	}
	body.browser-safari .customdropdown.traveldatesdropdown > ul.dropdown-menu:not(.select) > li:after, body.browser-safari .customdropdown.guests > ul.dropdown-menu:not(.select) > li:after {
		height: 119px;
	}
	body.browser-safari-x .customdropdown.traveldatesdropdown > ul.dropdown-menu:not(.select) > li:after, body.browser-safari-x .customdropdown.guests > ul.dropdown-menu:not(.select) > li:after {
		height: 129px;
	}

	.customdropdown:not(.select) > .dropdown-menu {
		padding: 0 0 53px;
	}
	body.browser-safari .customdropdown:not(.select) > .dropdown-menu {
		padding-bottom: 119px;
	}
	body.browser-safari-x .customdropdown:not(.select) > .dropdown-menu {
		padding-bottom: 129px;
	}
	.customdropdown:not(.select) > .dropdown-menu > li {
		max-height: 100%;
		overflow: auto;
		/*padding: 70px 20px 0;*/
		padding: 90px 20px 0;
		position: static;
		height: 100%;
	}

	.customdropdown.select .dropdown-menu {
		padding-left: 0;
		padding-right: 0;
	}
	.customdropdown.select .dropdown-menu a {
		line-height: 20px;
		padding: 7px 20px;
	}

	.customdropdown .filtertitle, .additionalfilter .filtertitle {
		background-color: #fff;
		-webkit-box-shadow: 0 0 35px rgba(0, 0, 0, 0.25);
		box-shadow: 0 0 35px rgba(0, 0, 0, 0.25);
		display: block;
		/*left: -641px;*/
		left: -100%;
		line-height: 30px;
		padding: 10px 20px;
		/*padding: 20px;*/
		position: fixed;
		top: 0;
		-webkit-transition: left 0.5s;
		-o-transition: left 0.5s;
		transition: left 0.5s;
		width: 100%;
		z-index: 9999;
	}
	.customdropdown.open .filtertitle, .additionalfilter.show .filtertitle {
		left: 0;
	}

	.customdropdown .apply, .customdropdown .reset {
		margin-bottom: 20px;
	}
	.customdropdown:not(.select) > .dropdown-menu {
		bottom: 0;
		height: 100%;
	}
	/*.customdropdown .dropdown-menu li:after {
		background-color: #fff;
		bottom: 0;
		display: block;
		height: 55px;
		left: -100%;
		position: fixed;
		-webkit-transition: left 0.5s;
		-moz-transition: left 0.5s;
		-ms-transition: left 0.5s;
		-o-transition: left 0.5s;
		transition: left 0.5s;
		width: 100%;
		z-index: 1;
	}
	.customdropdown.open .dropdown-menu li:after {
		left: 0;
	}*/
	.customdropdown .apply, .customdropdown .reset {
		bottom: 0;
		position: absolute;
		margin-bottom: 10px;
		z-index: 5;
	}
	body.browser-safari .customdropdown .apply, body.browser-safari .customdropdown .reset {
		margin-bottom: 76px;
	}
	body.browser-safari-x .customdropdown .apply, body.browser-safari-x .customdropdown .reset {
		margin-bottom: 86px;
	}
	.customdropdown .apply {
		right: 20px;
	}
	.customdropdown .reset {
		left: 20px;
		margin-bottom: 15px;
	}
	body.browser-safari .customdropdown .reset {
		margin-bottom: 81px;
	}
	body.browser-safari-x .customdropdown .reset {
		margin-bottom: 91px;
	}

	.kidsage > span {
		margin-bottom: 0;
		width: 100%;
	}
	.kidsage .inputnumber {
		margin-left: 0;
		margin-right: 8px;
		/*width: 50%;*/
	}
	/*.kidsage .inputnumber:nth-of-type(2n) {
		margin-right: 0;
	}*/


	/*.RequestForm .removeroom {
		float: right;
	}*/
	.RequestForm .removeroom, .RequestForm .addroom, .rooms .removeroom, .rooms .addroom {
		float: none;
		display: block;
		text-align: right;
	}
	.rooms .addroom, .rooms .removeroom {
		margin-bottom: 0;
	}
	.RequestForm .removeroom span, .rooms .removeroom span {
		font-size: 9px;
	}
	.rooms .addroom span {
		font-size: 11px;
	}
	.RequestForm .requesttraveldatesdropdown .dropdown-toggle .icon-datepicker {
		display: block;
		left: 20px;
		position: absolute;
		top: 50%;
		-webkit-transform: translateY(-50%);
		-moz-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		-o-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	.customdropdown.selectpreview.requesttraveldatesdropdown > button > .selectpreviewvalue, .customdropdown.requesttraveldatesdropdown > button > .placeholder {
		display: inline-block;
		padding-left: 30px;
	}
	.customdropdown.selectpreview.requesttraveldatesdropdown > button > .placeholder {
		display: none;
	}

	.RequestForm legend a.offerchange {
		line-height: 26px;
	}

	.starsslider {
		margin-left: 20px;
	}

	.RequestForm .roomsummarysection .table tfoot.animalplace > tr > td {
		padding: 0 5px 15px 10px!important;
	}
	.RequestForm .roomsummarysection .table tfoot.animalplace > tr > td > .row > div[class^="col-"] .inputnumber, .RequestForm .roomsummarysection .table tfoot.animalplace > tr > td > .row > div[class*=" col-"] .inputnumber, .RequestForm .roomsummarysection .table tfoot.animalplace > tr > td > .row .animalsdescription input {
		margin-bottom: 0;
	}

	/* klaro consent */
	#gnconsent .klaro .cookie-modal .cm-btn, #gnconsent .klaro .context-notice .cm-btn, #gnconsent .klaro .cookie-notice .cm-btn {
		font-size: 14px!important;
	}
	/* END klaro consent */

	@media (max-width: 480px) {
		body #ltswidget-booking .lcswdgtbox-content {
			-webkit-box-orient: vertical;
			-webkit-box-direction: normal;
			-webkit-flex-direction: column;
			-ms-flex-direction: column;
			flex-direction: column;
		}
		body #ltswidget-booking.responsive-s #booking .box-search-request .row-calendar {
			margin-left: auto;
			margin-right: auto;
		}
		body #ltswidget-booking .row .block-right {
			float: left;
			margin-left: 0;
		}
		body #ltswidget-booking .privacy-row {
			clear: both;
		}
		body #ltswidget-booking span#ctl00_ButtonSuccess {
			float: none;
		}
		body #ltswidget-booking .booking-steps .step.done, body #ltswidget-booking .booking-steps .step.active {
			border-bottom-color: #fff;
		}
		body #ltswidget-booking .booking-steps .step.done:nth-child(2n) {
			border-right-color: #ef164c;
		}
	}
}
