
/* ----------------------------------------------------------------
/* CUSTOM */
/* ---------------------------------------------------------------- */

:root {
	--GolfGreenLight:#50a982;
	--GolfGreen: 	#1C5C40;
	--GolfGreenDark: #004226;
	--colorClose:  var(--GolfGreenLight);
	--colorFree:  var(--GolfGreen);
	--colorOccupied: #b0b0b0;
	--globalFont: 'Lora', serif;
	--globalSecondaryFont: 'Trirong', serif;
}

/*
Klasse .fewoPortal kann zum Wrappen von Styles verwendet werden,
damit die Styles der Webseite nicht überschrieben werden.
*/

@font-face {
    font-family: MyriadPro;
    src: url(/booking2020/fonts/MyriadPro-Regular.otf);
}
@font-face {
    font-family: NexaBold;
    src: url(/booking2020/fonts/NexaBold.otf);
}

:root {
	--lightColor: 	var(--GolfGreen);	/* +15 */
	--normalColor: 	var(--GolfGreenDark); 	/* Standard Farbe wie bei der Homepage */
	--boldColor: 	var(--GolfGreenDark); 	/* -15 */
}


/*===========================
	General Styles
===========================*/
::selection {
	background: var(--GolfGreenDark);
    color: #FFF;
    text-shadow: none;
}
.fewoPortal body,
body.fewoPortal /*falls iframe (Pauschalen)*/
{
	margin: 0;
	min-height: 350px;
	padding-top: 0px;
	font-family: 'NexaBold'!important;
	font-size: 12px;
	background-color: transparent;
}

.fc-header-title h2, #Description h2, #Book h2 {
	color: var(--GolfGreenDark);
}

.fewoPortal h1 {
	color: var(--normalColor);
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 10px;
	text-transform: uppercase;
}

.fewoPortal h2 {
	margin-bottom: 5px;
	color: var(--normalColor);
	font-size: 21px;
	font-weight: bold;
}

h2 + * {
	margin-top: 0px;
}

h3 {
	color: var(--GolfGreenDark);
	font-size: 1.17em
}

h3.immoTitle {
	color: white!important;
}

h3 span {
	display: inline;
	/*line-height: 42px;*/
	font-size: inherit;
}

#OBdiv {
	margin-top: -80px;
	z-index: 1;
	position: relative;
}
#OBdiv #slideshow a {
	color: #fff;
	text-decoration: none;
}

#OBdiv #slideshow a:hover {
	color: #fff;
	text-decoration: none;
}

#mainContainer {
	position: relative;
}

/* Override Bootstrap */
.col-md-9 {
	padding: 0;
}
.naviText a {
	color: rgba(255,255,255,.8);
}
.MainNavi a:hover {
	color: rgba(255,255,255,.8);
	text-decoration: none;
}

.ActiveMainNavi a:hover {
	color: white;
	text-decoration: none;
}

/*===========================
	Links
===========================*/
a, a:hover, a:focus {
	color: inherit;
	outline: 0;
}


/*===========================
	Buttons
===========================*/

.availabilityCalendar .controllButton {
	width: 31.4%;
	background: var(--normalColor);
	padding: 10px 16px;
	margin-left: 5px;
}

.fewoPortal button,
.fewoPortal input[type=button],
.fewoPortal input[type=submit],
.fewoPortal input[type=submit],
#contactForm input[type=submit],
#bookingForm input[type=submit] {
	border: none;
	cursor: pointer;
	background: var(--normalColor);
	padding: 10px;
	width:100%;
	margin: 5px 0 20px 0;
	height: auto;
	border: none!important;
	color: white;
}
.blueButton {
	background: var(--normalColor)!important;
}
.blueButton:hover {
	background: var(--boldColor)!important;
}
.fewoPortal button:hover,
.fewoPortal input[type=button]:hover,
.fewoPortal input[type=submit]:hover,
.fewoPortal .availabilityCalendar button:hover {
	background: var(--boldColor);
	border: 1px solid var(--boldColor);
}
.fewoPortal button:hover, input[type=button]:focus, input[type=submit]:focus {
	outline: none;
}

#contactForm input[type=submit]{
	background-color: #fff;
	border: 1px solid #A9A9A9!important;
}

.fewoPortal input[type=submit]:hover,
.fewoPortal #contactForm input[type=submit]:hover,
.fewoPortal #bookingForm input[type=submit]:hover  {
	background: rgba(29,78,108, 0.9);
}

.searchSmallFrameButton {
	width: 95.7%;
}

#filterContainer .filterButton {
	background-color: var(--lightColor);
	color: white;
	margin-top: 0px;
	transition: .1s;
}
#filterContainer .filterButton:hover {
	background-color: var(--normalColor);
	color: white;
}

/*
.fc-day{
	background-color: var(--GolfGreenDark);
	color: white!important;
}
.besetzt{
	background-color: #E6211C!important;
}
.startReservation{
	background-image: linear-gradient(to right bottom, var(--GolfGreenDark) 50%, #E6211C 50%) !important;
}
.endReservation{
	background-image: linear-gradient(to right bottom, #E6211C 50%, var(--GolfGreenDark) 50%) !important;
}
*/
.fc-day{
	color: white!important;
	background: var(--colorFree);
	text-align: center;
	font-size: smaller;
}
td.fc-day{
	padding:8px 5px !important;
}
.many{
	background: var(--colorFree)!important;
}
.besetzt.low{
	background:   var(--colorClose)!important;
	color: black!important;
}
.fc-day.besetzt.none{
	background:  var(--colorOccupied)!important;
	color: black!important;
    cursor: not-allowed;
    pointer-events: none;
}
.explanation.besetzt{
	background:  var(--colorOccupied)!important;
	color: black!important;
}
.explanation.close{
	background:  var(--colorClose)!important;
	margin-top: 13px;
}
td.fc-past,
td.fc-past.low,
td.fc-past.besetzt,
td.fc-past.besetzt.low {
	background: var(--colorOccupied)!important;
    color: black!important;
    cursor: not-allowed;
    pointer-events: none;
}
td.fc-other-month{

	background: #eee!important;
}
#minPriceImmo {
	font-size: 34px;
}
#minPriceImmo span {
	font-size: 0.6em;
	text-transform: lowercase;
	vertical-align: baseline;
}
#minPriceImmo i {
	font-size: 0.8em;
	vertical-align: baseline;
}


/*===========================
	Forms
===========================*/
.form-style-1 {
	margin:10px auto;
}

.form-style-1 .col-sm-9 {
	display: inline-block;
	width: 45%;
}

.form-style-1 li {
	padding: 0;
	display: block;
	list-style: none;
	margin: 10px 0 0 0;
}
.form-style-1 label{
	margin:0 0 3px 0;
	padding:0px;
	display: inline-block;
	font-weight: bold;
	width: 50%;
	margin-top: 25px;
}

.filterContainer input[type=text],
.form-style-1 input[type=text],
.filterContainer input[type=date],
.form-style-1 input[type=date],
.filterContainer input[type=datetime],
.form-style-1 input[type=datetime],
.filterContainer input[type=number],
.form-style-1 input[type=number],
.filterContainer input[type=search],
.form-style-1 input[type=search],
.filterContainer input[type=tetimext],
.form-style-1 input[type=time],
.filterContainer input[type=url],
.form-style-1 input[type=url],
.filterContainer input[type=email],
.form-style-1 input[type=email],
.filterContainer textarea,
.form-style-1 textarea,
.filterContainer select,
.form-style-1 select{
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	border:1px solid #BEBEBE;
	padding: 7px;
	margin:0px;
	-webkit-transition: all 0.30s ease-in-out;
	-moz-transition: all 0.30s ease-in-out;
	-ms-transition: all 0.30s ease-in-out;
	-o-transition: all 0.30s ease-in-out;
	outline: none;
	width: 100%;
}
.form-style-1 input[type=text]:focus,
.form-style-1 input[type=date]:focus,
.form-style-1 input[type=datetime]:focus,
.form-style-1 input[type=number]:focus,
.form-style-1 input[type=search]:focus,
.form-style-1 input[type=time]:focus,
.form-style-1 input[type=url]:focus,
.form-style-1 input[type=email]:focus,
.form-style-1 textarea:focus,
.form-style-1 select:focus{
	-moz-box-shadow: 0 0 8px #88D5E9;
	-webkit-box-shadow: 0 0 8px #88D5E9;
	box-shadow: 0 0 8px #88D5E9;
	border: 1px solid #88D5E9;
}
.form-style-1 .field-divided{
	width: 49%;
}

.form-style-1 .field-long{
	width: 100%;
}
.form-style-1 .field-select{
	width: 100%;
}
.form-style-1 .field-textarea{
	height: 100px;
}
.form-style-1 input[type=submit], .form-style-1 input[type=button]{
	background: #4B99AD;
	padding: 8px 15px 8px 15px;
	border: none;
	color: #fff;
}
.form-style-1 input[type=submit]:hover, .form-style-1 input[type=button]:hover{
	background: #4691A4;
	box-shadow:none;
	-moz-box-shadow:none;
	-webkit-box-shadow:none;
}
.form-style-1 .required{
	color:red;
}

.fancybox-button {
	background-color: transparent;
}

#contactForm input[type=email],
#contactForm input[type=text],
#bookingForm input[type=text],
select.betten,
select.personen,
select.personenK,
select.personenK6,
ul.chosen-choices {
	height: 31px!important;
	padding-left: 10px;
}

.chosen-container-multi .chosen-choices li.search-choice {
	background: none;
	border: none;
	box-shadow: none;
}


/*===========================
	Backgrounds
===========================*/
#resLocation ul {
	background: white;
}

#resLocation .curStep {
	background: var(--lightColor);
	color: white;
}

.header {
	background: #eee;
}

.immoCatTable .tableHeader{
	background: #eee;
}

/*===========================
	Tables
===========================*/
.immoCatTable tr:nth-child(even){
	background-color: #f2f2f2;
}

.addressTable tr:nth-child(even) {
	/*background-color: #f2f2f2;*/
}

.servicesTable .header {
	background: white!important;
}
.servicesTable tr:nth-child(odd) {
	/*background-color: #f2f2f2;*/
}
.immoItem {
	padding-right: 0px!important;
	padding-left: 0px!important;
}

.filterItem {
	padding-right: 0!important;
	padding-left: 0!important;
}

#rightContainer {
	position: relative;
	z-index: 999;
}

/*===========================
	Diverses
===========================*/
.noObjectsFound {
	min-height: 150px;
}

.trFont9 td {
	font-size: 10px;
}

.calendarContainer .fc-other-month .fc-day-number {
	display: none;
}

/*
*
* Slideshow
*
 */

.slideout-open .slideout-menu {
	display: block;
}

.slideout-menu {
	position: fixed;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	z-index: 0;
	width: 256px;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	display: none;
}

#slideshow .prev:hover, #slideshow .next:hover {
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=90)";
	filter: alpha(opacity=0.9);
	-moz-opacity: 0.9;
	-khtml-opacity: 0.9;
	opacity: 0.9;
}

#resLocation .curStep {
	background: var(--lightColor);
	color: white;
}

#immoInfos .tabs a:hover, #immoInfos .tabs a.active {
	border-top: 3px solid var(--lightColor);
	background-color: #fff;
	font-weight: bold;
}

#immoInfos .tabs a:nth-of-type(3) {
	color: white!important;
	background: var(--normalColor)!important;
}
#immoInfos .tabs a:nth-of-type(3):hover, #immoInfos .tabs a:nth-of-type(3).active {
	border-top: 3px solid var(--boldColor);
}

.ActiveMainNavi,
.MainNavi {
	padding: 0;
	padding-top: 10px;
}

.resBoxRightContent, .resBoxLeftContent {
	background-color: rgba(255,255,255,0.8);
}

#resBox{
	width: 100%!important;
	margin-top:50px
}

#resBox h1{
	font-size:40px;
}

#primary-menu > .container {
	width: auto;
}

#primary-menu > div > ul > li > a{
	color: black!important;
}

/* FIX FANCYBOX*/
.fancybox-slide>*{
	display: inherit!important;
}

/* FIX Reservationen */
.container{
	padding-left: 0px!important;
	padding-right: 0px!important;
}

/* Lage und Preis nicht anzeigen */
.priceContainer, .preisAbContainer, .locationTabLink{
	display: none!important;
}

/* FIX H2 */
h2{
	padding-bottom:  10px;
}

#filterContainer{
	display: none;
}

#immoInfos{
	padding-top: 0px;
    background-color: #fff;
}
#Book br{
	display: none;
}

.hasDatepicker{
	width: calc(100% - 10px)!important; /* wegen padding-left wäre sonst verschoben */
}

#slideshow{
	min-height: 200px; /* Prevent the bounce :); */
}

@media screen and (min-width: 768px) {
  #slideshow{
		min-height: 300px; /* Prevent the bounce :); */
	}
}

@media screen and (min-width: 1200px) {
  #slideshow{
		min-height: 450px; /* Prevent the bounce :); */
	}
}

@media (max-width: 768px) {
	h2{
		margin-top: 5px;
	}
	#resBox{
		width: 100%!important;
		margin-left: 0px;
		margin-right: 0px;
	}
	.availabilityCalendar{
		margin-top: 10px!important;
	}
	.box-3>.container{
		width: 95%;
	}
	.container-fluid{
		padding-left: 0px;
		padding-right: 0px;
	}
}


h1{font-size:48px;}
h2{font-size:40px;}
h3{font-size:32px;}
h4{font-size:28px;}

.heading-block h2,.text-light{
	color:#fff!important;
}
.ui-datepicker.ui-widget {
	font-size:18px;
}
.dropdown-menu.open .inner{
	z-index:99;
	max-height:200px!important;
}
.dropdown-menu.open .inner .selected{
	background-color:#cfcfcf;
}
.dropdown-menu{
	font-size:12px !important;

}
#immoDetailContent{
	padding:30px 15px;
}
#content .container{

	padding:0 30px;
}
.p-0{
	padding:0;
}

#gmapSection #map {
	height: 40rem!important;
}
#RatingLabel .ratingPlus{
	font-size: 29px;
	margin-top: -2px;
	float: right;
}
.label.badge .ratingPlus{
	float: right;
	font-size: 18px;
	margin-top: -1px;
	margin-left: 2px;
}
.label.badge [class^="icon-"]{
	margin-top: 1px;
}
.expand-link{
	margin-top: 30px
}
#slider #transparenzHeader{
	height:100%
}
.fslightbox-slide-btn-container{
	top:65px!important;
	padding:0!important;
}
.fslightbox-absoluted{
	top: 23px!important;
	align-items: start!important;
}
/* #bookingForm .form-group{
	margin:0;
}
#bookingForm .form-group::before{
	display: table;
  	content: " ";
}
#bookingForm .form-group::after{
	clear: both;
	display: table;
  	content: " ";
} */

/* .heading-block h2{
	text-transform: none;
	font-size:36px
} */

#rightContainer h2,#Description h2,#Book h2{
	font-size:26px;
	margin:0!important;
}

.slider-detail {
	padding:0 15px !important;
}

#mainContainer #immoInfos .tabs {
  border-left: 1px solid #DDD;
  border-bottom: 1px solid #DDD;
  border-right: none;
}
#mainContainer #slideshow{
	background-color: transparent;
}
#mainContainer #slideshowWrapper {
  background-color: #f1f1f1;
  padding: 15px;
  margin-bottom: 15px;
}
div#slideshow .slide, div#slideshow  .prev, div#slideshow  .next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

#rightContainer h1{
	display:none;
}


@media screen and (min-width: 770px) {
	#rightContainer h1{
		display:block;
	}
}

#immoInfos .tabs a{
	width: 50%!important;
}

.availabilityCalendar .fc-widget-header, .availabilityCalendar .fc-widget-content{
	border: 1px solid #DDD;
}

button.backBtn {
	float: right;
	margin-top: 30px;
	background: none;
	border: none;
	color: white;
	font-size: 26px;
}

input.form-control[type=text]{
	border-color: #ccc !important;
}
#resBox h1{
	margin:0!important;
}

.slider-availability {
	background: linear-gradient( rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.85) ), url('../images/sliderAvailabilityImage.jpg');
	background-size: cover;
	background-position: center;
}


#availabilityTable table{
	width:100%
}

#availabilityTable td{
	border-top: 8px solid white;
}

#availabilityTable th,#availabilityTable td{
	padding: 5px;
}

#availabilityTable tr{
	height: 40px;
}

#availabilityTable .placeRow th{
	border-left:none;
	padding-top:20px;
}


#availabilityTable .besetzt{
	background-color: var(--colorOccupied);
	box-shadow: -1px 0px #7a0b0b;
}

#availabilityTable .endReservation{
	background: linear-gradient(to bottom right, var(--colorOccupied) 50%, var(--colorFree) 50%)!important;
	box-shadow: -1px 0px #7a0b0b;
}

#availabilityTable .startReservation{
	background: linear-gradient(to bottom right, var(--colorFree) 50%, var(--colorOccupied) 50%)!important;
	box-shadow: -1px 0px #1b5e1f;
}

#availabilityTable .frei{
	background-color: var(--colorFree);
	box-shadow: -1px 0px #1b5e1f;
}

#availabilityTable td.isWeekend {
	 border-top: 8px solid #c1c1c1;
}


#availabilityTable td.availabilityDay {
	color: #ffffff4f !important;
	font-size: 10px;
	vertical-align: bottom;
	text-align: end;
}

#availabilityTable .isWeekend:not(td) {
	background:  #c1c1c1;
}

#availabilityTable .firstDayOfMonth {
  	border-left: 2px solid #c1c1c1;
}

#availabilityTable .immoRow td:nth-of-type(2) {
  	border-left: none;
}
#availabilityTable .immoRow .tdImmoName {
  	box-shadow: inset 0px -1px #c1c1c1;
}



/* ----------------------------------------------------------------
	Bootstrap Adjustments
-----------------------------------------------------------------*/

.container {
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 768px) {
	.container { max-width: 767px; }
}

@media (min-width: 992px) {
	.container { max-width: 1024px; }
}

@media (min-width: 1200px) {
	.container { max-width: 1140px; }
}

@media (max-width: 1200px) {
	.bottommargin-sm { margin-bottom: 15px !important; }
	.slider-element{
		padding: 75px 15px ;
	}
	.section{
		padding:0!important;
	}
}



.slider-element .real-estate-info-wrap{
	left:0!important;
	padding: 0 15px;
}

.no-padding{
	padding: 0 !important;
}

/* ----------------------------------------------------------------

/* LOADER */


.lds-ellipsis {
  display: inline-block;
  position: relative;
  width: 80px;
  height: 80px;
  zoom: 200%;
}
.lds-ellipsis div {
  position: absolute;
  top: 33px;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background: var(--GolfGreen);
  animation-timing-function: cubic-bezier(0, 1, 1, 0);
}
.lds-ellipsis div:nth-child(1) {
  left: 8px;
  animation: lds-ellipsis1 0.6s infinite;
}
.lds-ellipsis div:nth-child(2) {
  left: 8px;
  animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(3) {
  left: 32px;
  animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(4) {
  left: 56px;
  animation: lds-ellipsis3 0.6s infinite;
}
@keyframes lds-ellipsis1 {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes lds-ellipsis3 {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(0);
  }
}
@keyframes lds-ellipsis2 {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(24px, 0);
  }
}

            .blockUI.blockMsg.blockPage{
                top: 0 !important;
            }
/* LOADER DONE */