/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: May 30 2023 | 07:24:20 */
:root {
    --corporate: #876145 ;
  	--corporate40pc: #c69b7d;
  	--corporate20pc: #f7e6da;
  	--corporatedark: #4f321d;

  
  	--verkauft: #ff9380;
	--frei: #068891;
	--reserviert: #ffd280;
  	--verkauftlight: #ffe3dd;
	--freilight: #d7eced;
	--reserviertlight: #fff0d5;
  
	--contrast1: #2d899a; /* petrol */
	--contrast2: #35a7e0; /* blau */
	--contrast3: #10bec7; /* aqua */
	--contrast4: #98c710; /* maigruen */
  	--contrast5: #f56f04; /* rotorange */
  
  	--contrast: #2d899a; /* petrol */

}

/* remove for old FE state */

#configform {
	display: none;
}

#configoverlay #slidercontainer {
	width: 100%;
	padding: 0 10px 0 0px;
}

#price-sliderbox {
	display: none;
}

#configoverlay #configform2 {
	margin: 20px 0;
}

.exposePreis {
	display: none !important;
}

/* hide expose and agent links */
body:not(.elementor-elementor-active) #exposelink {
  display: none;
}
body:not(.elementor-elementor-active) #maklerlink {
  display: none;
}

/* filter: outdoor space */
body:not(.elementor-elementor-active) #configform {
 	/* visibility: hidden; */
}

/* hide the entire floorplan overlay table */
.exposeTabelle {
  display: none;
}
/* with the table gone, remove all horizontal rules */
#planText hr {
  display: none;
}
/* hide the availability status */
#planText p.available, #planText p.sold, #planText p.undefined {
  display: none;
}
/* hide the price column in the floorplan overlay table */
.exposeTabelle tbody tr td:nth-last-of-type(1) {
  display: none;
}

/* hide the expose text (and the first hr) */
#planText hr:nth-of-type(1) {
  display: none;
}
#planText .exposeText {
  display: none;
}
/* with all the other elements gone, shift up the price text and the whole lot down */
#planText .exposePreis {
  	position: relative;
    top: -20px;
    display: inline-block;
}
#planText {
  padding-top: 20px !important;
}


/* hide the zoom feature */
.zoomContainer {
  display: none !important;
}

/* hide the newsletter link for now */
body:not(.elementor-editor-active) .newsletterlink {
  display: none !important;
}

/* END OF Kundenanpassung STYLE FILE +++++++++++++++++++ */


/* GENERAL ----------------------------------------------------------------- */



body:not(.elementor-editor-active) * {
	font-family: 'Montserrat', Arial, sans-serif;	
}
@media only screen and (max-aspect-ratio: 1/1) {
	#content.site-content { font-size: 18px; line-height: 1em; }
}


/* LANGUAGES --------------------------------------------------------------- */

body.lang_DE:not(.elementor-editor-active) .langEN {
  display: none !important;
}
body.lang_EN:not(.elementor-editor-active) .langDE {
  display: none !important;
}

body:not(.elementor-editor-active) {
	text-align: center;	
  /*
	height: 100vh !important;
  */
	overflow: hidden !important;
	padding: 0;
	margin: 0 !important;
    font-size: 1em !important;
	background: #ffffff !important;
}

body:not(.elementor-editor-active)::-webkit-scrollbar { display: none; }
body:not(.elementor-editor-active) { -ms-overflow-style: none; scrollbar-width: none; }

/* IFRAME ------------------------------------------------------------------------- */

body:not(.elementor-editor-active) #flatfinder {
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	height: 100vh !important;
	width: 100vw !important;
  	background: #eeeeee;
	overflow: hidden;
}
body:not(.elementor-editor-active) #flatfinder iframe {
  	width: 67vw !important;
  	max-width: calc(100vw - 600px) !important;
  	position: absolute;
  	top: 100px;
  	right: 0;
  	height: calc(100vh - 100px);
	overflow: hidden;
}
body:not(.elementor-editor-active) #flatfinder::-webkit-scrollbar { display: none; }
body:not(.elementor-editor-active) #flatfinder { -ms-overflow-style: none; scrollbar-width: none; }
body:not(.elementor-editor-active) #flatfinder iframe::-webkit-scrollbar { display: none; }
body:not(.elementor-editor-active) #flatfinder iframe { -ms-overflow-style: none; scrollbar-width: none; }

@media screen and (max-width: 1200px) {
  	body:not(.elementor-editor-active) #flatfinder iframe { width: 50vw !important; max-width: calc(100vw - 400px) !important; }
}
@media screen and (max-aspect-ratio: 1/1) {
  #flatfinder { transition: all .5s ease-in-out; }
  body:not(.elementor-editor-active) #flatfinder iframe { width: 100vw !important; max-width: 100vw !important; height: calc(100vh - 50px) !important; top: 50px !important; }
}
@media screen and (max-width: 767px) {
  #flatfinder { transition: all .5s ease-in-out; }
  	body:not(.elementor-editor-active) #flatfinder iframe { width: 100vw !important; max-width: 100vw !important; height: calc(100vh - 50px) !important; top: 50px !important; }
}

#flatfindertint {
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.7);
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
}

@media screen and (max-aspect-ratio: 1/1) {
	#flatfindertint { background: rgba(255,255,255,0.75); }
}
@media screen and (max-width: 767px) {
	#flatfindertint { background: rgba(255,255,255,0.75); }
}


/* LOADING SCREEN ----------------------------------------------------------------- */

#loadingBG {
  display:none;
}

div.rtimg {
  display: none;
}
#loadingscreen {
	position: absolute;
	width: 100vw;
	height: 100vh;
	z-index: 10;
  	background: #ffffff;
	transition: all 0.5s ease;
	opacity: 1;
  display: none;
}

#loadingscreen #loadergraphic {
	width: 50px;
	height: 50px;
}
#loadingscreen #startgraphic {
	display: none;	
	width: 50px;
	height: 50px;
}
.loadercontainer {
  	position: absolute;
  	left: calc(50vw - 70px);
  	top: 45vh;
	width: 60px;
	height: 60px;
	padding: 5px;
	background: url('../Loader_BG.png') no-repeat;
}

/* LOADING SCREEN 2/3 ///////////////////////////////////////////////////////////////////////////////////////////////////////////// */

.loadingside, body:not(.elementor-editor-active) .loadingside {
	width: 33vw !important;
	min-width: 600px;
  	height: 100vh;
}
@media screen and (max-width: 1200px) {
  	.loadingside, body:not(.elementor-editor-active) .loadingside { width: 50vw !important; min-width: 400px; }
}
@media screen and (max-aspect-ratio: 1/1) {
  	.loadingside, body:not(.elementor-editor-active) .loadingside { width: 100vw !important; height: 250px !important; }
}
@media screen and (max-width: 767px) {
  	.loadingside, body:not(.elementor-editor-active) .loadingside { width: 100vw !important; height: 250px !important; }
}

.loadingmain, body:not(.elementor-editor-active) .loadingmain {
  width: 67vw !important;
  max-width: calc(100vw - 600px) !important;
  height: 100vh;
}
@media screen and (max-width: 1200px) {
  .loadingmain, body:not(.elementor-editor-active) .loadingmain { width: 50vw !important; max-width: calc(100vw - 400px) !important; }
}
@media screen and (max-aspect-ratio: 1/1) {
  	.loadingmain, body:not(.elementor-editor-active) .loadingmain { width: 100vw !important; max-width: 100vw !important; }
}
@media screen and (max-width: 767px) {
  	.loadingmain, body:not(.elementor-editor-active) .loadingmain { width: 100vw !important; max-width: 100vw !important; }
}

/* ////////////////////////////////////////////////////////////////////////////////////////////////////// */

/* TOGGLEBAR (OLD FLATFINDER VERSION) ---------------------------------------------------------------------------------------- */

#togglebar { display: none; }

/* FLOORPLAN OVERLAY ----------------------------------------------------------------------------------------------------------------------------- */

#planOverlay {
  width: 67vw;
  max-width: calc(100vw - 600px);
  transition: all .5s ease;
  padding-top: 3px;
  top: 25px;
  min-height: calc(100vh - 180px);
  position: fixed;
  overflow-y: auto;
  right: 100vw;
  z-index: 3;
	opacity: 0;
}
#planOverlay::-webkit-scrollbar { display: none; }
#planOverlay { -ms-overflow-style: none; scrollbar-width: none; }

body.elementor-editor-active #planOverlay {
  position: relative;
	top: 0;
  	right: 0;
	margin-top: 50px;
	padding-top: 50px;
	overflow-y: initial;
}


#planOverlay {
	height: 100%;
	background-color: white;
}

#planFrame {
  left: 0;
  width: 100%;
  height: calc(100% - 20px);
  position: relative;
  top: 70px;
  padding-top: 90px;
	background-color: white;	
	height: calc(100vh - 150px);
}
body.elementor-editor-active #planFrame {
  top: 0;
}
#planFrame .plancolumn {
  width: 55% !important;
}
#planFrame .infocolumn {
  width: 45% !important;
}
#planFrame > h1 {
  position: absolute;
  left: 30px;
  top: 30px;
  border-bottom: var(--corporate) 1px solid;
  color: var(--corporate);
  font-size: 32px !important;
  font-weight: 400;
  margin-bottom: 0;
  padding-bottom: 6px;
  width: calc(100% - 60px);
  letter-spacing: 0;
  text-align: left;
}

.planContainer {
	background: #ffffff;
	width: calc(100% - 30px);
  	height: calc(100vh - 140px);
  	overflow: hidden;
}

.planSpacer {
  	width: 100%;
	max-width: 100% !important;	
	margin-bottom: 1em;
	text-align: left !important;
}
#planImage {
  max-width: 100%;
  padding-left: 20px;
}

@media screen and (max-width: 1200px) {
  #planOverlay { width: 50vw; max-width: calc(100vw - 400px) !important; }
  #planOverlay .elementor-inner-section { width: calc(100% - 0px); padding-left: 0 !important; }
}
@media screen and (max-width: 1024px) {
  #planOverlay .elementor-inner-section { left: 0; }
  #planOverlay h2 { margin-top: 0; }
  #planFrame { top: 65px; }
}
@media screen and (max-aspect-ratio: 1/1) {
  	#planOverlay { right: 110vw; width: 100vw !important; max-width: 100vw !important; min-width: 100vw !important; top: 0 !important; bottom: 0 !important; padding-bottom: 140px; }
	#planFrame > .elementor-container { -webkit-box-shadow: 0px 8px 8px rgba(0, 0, 0, 0.15) !important; box-shadow: 0px 8px 8px rgba(0, 0, 0, 0.15) !important; }
  	#planFrame { top: 60px; }
  	#planFrame > h1 { left: 20px; width: calc(100% - 40px); font-size: 24px !important; }
	#planFrame > .elementor-container > .elementor-row { flex-wrap: wrap; }
  	#planFrame .plancolumn { width: 100% !important; }
  	#planFrame .infocolumn { width: 100% !important; }
  	#planFrame .planContainer { top: 0; position: relative; border-top: none; padding: 0 20px; width: 100%; height: auto; }
  	#planFrame .plancolumn .planContainer .planSpacer { border: var(--corporate40pc) 1px solid; background: #eeeeee; text-align: center !important; }
  	#planImage { padding-left: 0; width: 70vw; height: 70vw; min-height: 70vw; max-width: 70vw; mix-blend-mode: multiply; }
  	.planSpacer { margin-bottom: 0; }
}
@media screen and (max-width: 767px) {
  	#planOverlay { right: 110vw; width: 100vw !important; max-width: 100vw !important; min-width: 100vw !important; top: 0 !important; bottom: 0 !important; padding-bottom: 140px; }
	#planFrame > .elementor-container { -webkit-box-shadow: 0px 8px 8px rgba(0, 0, 0, 0.15) !important; box-shadow: 0px 8px 8px rgba(0, 0, 0, 0.15) !important; }
  	#planFrame { top: 70px; }
  	#planFrame > h1 { left: 20px; width: calc(100% - 40px); font-size: 24px !important; }
	#planFrame > .elementor-container > .elementor-row { flex-wrap: wrap; }
  	#planFrame .plancolumn { width: 100% !important; }
  	#planFrame .infocolumn { width: 100% !important; }
 	#planFrame .planContainer { top: 0; position: relative; border-top: none; padding: 0 20px; width: 100%; height: auto; }
  	#planFrame .plancolumn .planContainer .planSpacer { border: var(--corporate40pc) 1px solid; background: #eeeeee; text-align: center !important; }
  	#planImage { padding-left: 0; width: 70vw; height: 70vw; min-height: 70vw; max-width: 70vw; mix-blend-mode: multiply; }
  	.planSpacer { margin-bottom: 0; }
}

.zoomLens {
  border-color: var(--corporate);
}

#planText {
	color: #000000;
	padding: 10px 20px;
}
#planText h1 {
    display: inline-block;
    color: var(--corporate);
    font-size: 32px !important;
    font-weight: 400;
    margin-bottom: 0;
  	padding-bottom: 20px;
  	letter-spacing: 0;
}
#planText h2 {
    font-size: 20px !important;
  	font-weight: 500;
	color: #000000;
  	padding: 0;
  margin: 0;
}
#planText h3 {
    font-size: 20px !important;
  	font-weight: 300;
	color: #000000;
  	margin-top: 0.2em;
}
#planText p {
	color: #000000;
}
#planText hr {
  border-top: var(--corporate) 1px solid;
  opacity: 0.6;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}
@media screen and (max-aspect-ratio: 1/1) {
  #planText { padding: 10px 0; }
  .planContainer #planText h1 { font-size: 22px !important; }
  .planContainer #planText h2 { font-size: 18px !important; }
  .planContainer #planText h3 { font-size: 18px !important; }
}
@media screen and (max-width: 767px) {
  #planText { padding: 10px 0; }
  .planContainer #planText h1 { font-size: 22px !important; }
  .planContainer #planText h2 { font-size: 18px !important; }
  .planContainer #planText h3 { font-size: 18px !important; }
}

#floorplanpdflink {
  	border: var(--corporate) 1px solid;
  	background-color: var(--corporate);
  	background-image: url(../DownloadIcon_small.png);
  	background-size: 250px;
  	background-repeat: no-repeat;
  	background-position: -5px 50%;
    display: inline-block;
    color: var(--corporate);
    font-weight: 500;
    font-size: 22px;
    padding: 5px 10px 5px 37px;
  	margin-top: 10px;
    margin-bottom: 30px;
  	z-index: 2;
}
#floorplanpdflink:hover {
 	cursor: pointer; 
  	border: #222222 1px solid;
  	background-color: #222222;
  	color: #222222;
}
@media screen and (max-aspect-ratio: 1/1) {
  #floorplanpdflink { top: 70px; right: 20px; bottom: auto; position: absolute; }
}
@media screen and (max-width: 767px) {
  #floorplanpdflink { top: 70px; right: 20px; bottom: auto; position: absolute; }
}

#planText h1 {
  display: none;
}


a.addselection {
  display: table !important;
  margin-top: 10px;
}

.exposeTabelle {
  margin: 0;
  width: 100%;
  margin-bottom: 30px;
  border-top: #dddddd 1px solid;
}
.exposeTabelle > tbody > tr > td {
  padding-top: 2px;
  padding-bottom: 2px;
  border-bottom: #dddddd 1px solid;
}
.exposeTabelle td.raumnummer {
  width: 5%;
  color: #ffffff;
}
.exposeTabelle td.raumnummer span {
  display: inline-block;
  width: 20px;
  height: 20px;
  border-radius: 100%;
  overflow: hidden;
  color: #ffffff;
  background: var(--corporate);
  text-align: center;
  line-height: 22px;
  position: relative;
  top: 3px;
}
.exposeTabelle td.raumname {
  padding-left: 10px;
  width: 65%;
}
.exposeTabelle td.raumflaeche {
  padding-left: 10px;
  width: 30%;
  text-align: right;
}
	
#closefloorplan {
	position: absolute;
	right: 10px;
	top: 90px;
  	height: 40px;
  	width: 40px;
  	z-index: 3;
  background: #ffffff;
  border-radius: 100%;
	cursor: pointer;
}
#closefloorplan svg {
  width: 100%;
}
#closefloorplan svg path {
  fill: var(--corporate);
}
@media screen and (max-aspect-ratio: 1/1) {
  #closefloorplan { right: 15px; top: 78px; width: 35px; height: 35px; }
}
@media screen and (max-width: 767px) {
  #closefloorplan { right: 15px; top: 108px; width: 35px; height: 35px; }
}

p.available {
  /*
  	border: var(--green) 1px solid;
	padding: 2px 8px 3px 8px;
  */
	color: var(--green) !important;
  	font-size: 20px;
	display: inline-block;
	margin-bottom: 20px;
  	margin-top: 0;
}
.exposePreis {
  font-weight: 500;
  font-size: 20px;
  margin-top: 15px;
  display: inline-block;
}


body:not(.elementor-editor-active) #planButton {
  position: absolute;
  left: 30px;
  bottom: 53px;
  text-align: left;
}
#planInfos {
  padding: 15px 0 80px 0;
  border-top: var(--corporate) 1px solid;
  margin-left: 30px;
  margin-right: 30px;
  text-align: left;
}
#planInfos div {
  display: inline-block;
  margin-right: 40px;
  color: var(--corporate);
  padding: 3px 10px 3px 10px;
}
#planInfo1::before {
  content: "Wohnung ";
}
#planInfo2::before {
  content: "€ ";
}
#planInfo2::after {
  content: ",-";
}
#planInfo1 {
  padding-left: 0 !important;
}
#planInfo1, #planInfo2 {
  font-size: 22px;
  font-weight: 500;
}
#planInfo3, #planInfo4, #planInfo5 {
  border: var(--corporate) 1px solid;
  font-size: 18px;
  font-weight: 500;
  position: relative;
  top: -2px;
}
#planInfo3:hover, #planInfo4:hover, #planInfo5:hover {
  cursor: pointer;
  background: var(--corporate);
  color: #ffffff;
}
#planInfo5 {
  margin-right: 0 !important;
}
@media screen and (max-width: 1400px) {
	#planInfo1, #planInfo2 { font-size: 16px; }
	#planInfo3, #planInfo4, #planInfo5 {  font-size: 14px; }
  	#planInfos div { margin-right: 20px; padding: 2px 6px 2px 6px; margin-bottom:10px; }
}


a.addselection {    
  	padding: 3px 10px 3px 36px;
    color: #ffffff !important;
    height: 30px;
    background-repeat: no-repeat;
    background-position: 7px 5px;
    background-size: 20px;
    display: inline-block;
}
a.addselection:hover {   
  cursor: pointer;
  background-color: #000000;
}
a.addselection {
    background-color: var(--corporate);
    background-image: url(../Icon_addselection.png);
}
a.addselection.selected {
    background-color: #999999;
    background-image: url(../Icon_removeselection.png);
}
@media screen and (max-aspect-ratio: 1/1) {
  a.addselection { background-color: var(--contrast); position: absolute; top: 10px; right: 20px; max-width: 150px; font-size: 14px !important; }
}
@media screen and (max-width: 767px) {
  a.addselection { background-color: var(--contrast); position: absolute; top: 10px; right: 20px; max-width: 150px; font-size: 14px !important; }
}  
  
  
.selectionhint {
  	padding-left: 20px;
  	max-width: 300px;
  margin-top: -20px;
}
.selectionhint p {
  text-align: left;
  margin-top: 0;
  font-size: 15px;
  line-height: 1.4em;
}
@media screen and (max-width: 1024px) {
  .selectionhint { display: none; }
}
@media screen and (max-aspect-ratio: 1/1) {
  .selectionhint { display: none; }
}
@media screen and (max-width: 767px) {
  .selectionhint { display: none; }
}


/* DISPLAY RESULT -------------------------------------------------------------------------------------------------------------- */

#displayresult h2 {
  	padding-bottom: 0;
  	margin-bottom: 0; 
}
.displayflats {
  margin-bottom: 0;
  border-bottom: var(--corporate) 1px solid;
}
.displayflats img {
  width: 160px;
  height: 160px;
}









.contact-request-confirmation-wrapper {
  width: 67vw;
  max-width: calc(100vw - 600px);
  position: fixed;
  top: 100px;
  right: 0;
  height: calc(100vh - 100px);
  display: flex;
  pointer-events: none;
  align-items: center;
  justify-content: center;
  z-index: 99;
}

@media screen and (max-width: 1200px) {
  .contact-request-confirmation-wrapper { width: 100%; max-width: unset; right: unset; }
}






#contact-request-confirmation {
  width: 350px;
  height: 200px;
  z-index: 100;
  background-color: #fff;
  display: none;
  flex-direction: column;
  justify-content: space-around;
  border: solid 1px var(--corporate);
  pointer-events: all;
	
}

#contact-request-confirmation h1 {
  font-size: 24px;
}


#contact-request-confirmation .wrapper {
  display: flex;
  justify-content: space-around;
}

#contact-request-confirmation .wrapper button{
  width: 100px;
  height: 50px;
  outline: none;
  border: solid 1px black;
  background-color: var(--corporate);
  font-size: 20px;
  color: white;
}

#contact-request-confirmation .wrapper button:hover{
  background-color: #8fafff;
}







/* END OF Flatfinder STYLE FILE +++++++++++++++++++++++++++++++++++++++++++++ */








input, input:before, input:after {
      -webkit-user-select: initial !important;
      -khtml-user-select: initial !important;
      -moz-user-select: initial !important;
      -ms-user-select: initial !important;
      user-select: initial !important;
     } 



* {
  user-select: auto !important;
}
body.elementor-editor-active #loginformular {
  	display: block;
}
body:not(.elementor-editor-active) .jsblock {
  	display: none;
}	
body.elementor-editor-active .elementor-top-section {
  margin-top: 50px;
}
body.home #wpadminbar {
  display: none;
}
footer, .site-footer {
  	display: none;
}


html {
  	margin: 0 !important;
  	padding: 0 !important;	
  	width: 100vw !important;
  	overflow-x: hidden !important;
}
body {
	font-family: 'Montserrat', sans-serif;
  	margin: 0 !important;
  	padding: 0;	
  	font-size: 16px;
  	line-height: 1.6em;
  	color: #222222;
  	width: 100vw !important;
  	background: #ffffff;
  	overflow-x: hidden !important;
}
@media screen and (max-aspect-ratio: 1/1) {
  	body { min-height: 100vh; min-height: -webkit-fill-available; }
	html { height: -webkit-fill-available; }
}
@media screen and (max-width: 767px) {
  	body { min-height: 100vh; min-height: -webkit-fill-available; }
	html { height: -webkit-fill-available; }
}

.wp-block-image img{	
	height: auto !important;
}
img {
 	vertical-align: bottom; 
  	image-rendering: -webkit-optimize-contrast;
}
p { 
	font-family: 'Montserrat', sans-serif;
  	color: #222222;
  	font-weight: 400;
  	margin-top: 1em;
  	margin-bottom: 1em;
}
h1, h2, h3, h4, h5, h6 {
	font-family: 'Montserrat', sans-serif;
  	color: #222222;
  	font-weight: 300;
  	line-height: 1.4em;
}
a {
  	color: #222222;
}
a:hover {
  	color: var(--corporate);
}
h1 {
 	margin: 0;
  	font-size: 4em;
  	line-height: 1.2em;
  	letter-spacing: 0.1em;
}
h2 {
  	font-size: 26px;
  	color: #b8993c;
 	font-weight: 500;
}
h3 {
 	margin: 0;
  	font-size: 1.3em;
  	line-height: 1.1em;
}
h4 {
  	font-size: 22px;
  	color: #b8993c;
 	font-weight: 500;
}
@media screen and (max-aspect-ratio: 1/1) {
  	h1 { font-size: 2.5em; line-height: 1.1em; }
}
@media (max-width: 767px) {
  	h1 { font-size: 2.5em; line-height: 1.1em; }
}


.quote p {
 	font-size: 2em;
  	line-height: 1.2em;
  	font-weight: 300;
}
#content.site-content {
  	margin: 0;
  	padding: 0;	
}
#content .container {
 	width: 100%;
  	max-width: 100%;
}
.navbar-toggler, #main-nav {
 	display: none !important; 
}
.sectionanchor {
  	position: absolute;
  	top: -60px;
  	height: 0;
  	width: 0;
}
/* make the spacer elements more visible in the CMS (orange) */
body.elementor-editor-active .elementor-widget-spacer {
    background: #557d6b;
}

body.elementor-editor-active #page section.elementor-top-section:nth-of-type(1) {
 	margin-top: 100px;
}
body.elementor-editor-active #start {
 	background: #cbb59f;
}
body.elementor-editor-active #start .videocontainer {
 	height: 500px;
}
body.elementor-editor-active video {
 	display: none;
}


@media screen and (max-aspect-ratio: 1/1) {
	.elementor-column-wrap { padding-top: 0 !important; padding-bottom: 0 !important; }
}
@media (max-width: 767px) {
	.elementor-column-wrap { padding-top: 0 !important; padding-bottom: 0 !important; }
}

@media only screen and (max-aspect-ratio: 1/1) { /* portrait */
  	.elementor-spacer-inner { height: 40px !important; }
}

body:not(.requestsent) .requestwassent { display: none; }
body.requestsent .norequestwassent { display: none; }
body.elementor-editor-active .requestwassent { display: block; }
body.elementor-editor-active.requestsent .norequestwassent { display: block; }


/* MOBILE MENU ------------------------------------------------------------------------------------------------------------------------------ */

.mobmenu-overlay {
  background: rgba(255,255,255,0.5) !important;
}
.mob-menu-header-holder {
  width: 50px;
  z-index: 999999;
}
.mobmenu-panel {
  background: var(--corporate);
  z-index: 9999999 !important;
}
.mobmenur-container i {
    color: var(--corporate);
}
.mob-cancel-button {
    right: 8px;
    top: 10px;
    color: #ffffff !important;
    font-size: 24px !important;
}
.mobmenu-content {
  	border-top: var(--corporate40pc) 1px solid;
  	margin-top: 49px;
  	padding-top: 0;
}
.mobmenu-content li {
    text-align: left;
  	border-bottom: var(--corporate40pc) 1px solid;
}

/* FINAL OPTIONS --------------------------------------------------------------------------------------------------------------------------------- */

#finaloptions p {
  	display: inline;
  	margin: 0 40px;
}
@media only screen and (max-aspect-ratio: 1/1) { /* portrait */
  #finaloptions p { display: block; margin: 30px 20px;}
}
#finaloptions a {
  	background: #b8993c;
  	color: #ffffff;
  	font-weight: 400;
  	border-radius: 4px;
  	padding: 6px 12px;
  	margin: 0 40px;
}
#finaloptions a:hover {
  	background: #222222;
}


/* E-MAIL FORM ------------------------------------------------------------------------------------------------------------------------------------- */

body:not(.elementor-editor-active) #saveform, body:not(.elementor-editor-active) #reserveform {
  	display: none;
}
#mailconfig, #mailreserveconfig {
  	text-align: center;
}
#mailconfig input, #mailreserveconfig input {
  	text-align: center;
  	height: 36px;
  	width: 280px;
  	border: #b8993c 1px solid;
  	border-radius: 5px;
}



/* FINISH & FOOTER ------------------------------------------------------------------------------------------------------------------------------- */


#footer {
  	font-size: 0.9em;
  	height: 150px;
}
#footer p {
 	color: #ffffff; 
}
#footer ul, #footer ul li {
  	list-style: none;
  	margin: 0 !important;
  	padding: 0 !important;
}
#footer ul li a {
    color: #ffffff !important;
}
#footer ul li a:hover {
    color: #ffffff !important;
}

@media screen and (max-aspect-ratio: 1/1) {
  	#footer { height: 60px; padding-bottom: 20px; }
  	#footer img { max-width: 160px; }
}
@media (max-width: 767px) {
  	#footer { height: 60px; padding-bottom: 20px; }
  	#footer img { max-width: 160px; }
}

/* CHARTS & ANALYTICS ------------------------------------------------------------------------------------------------------------------------------ */

/* FLATFINDER ------------------------------------------------------------------------------------------------------------ */

.metext h1 {
  	color: #b8993c;
}
.metext h2 {
  	color: #ffffff;
}
.metext p {
  	color: #ffffff;
}

body.elementor-editor-active #flatfinder iframe {
 	display: none; 
}

/* STYLE & FEATURE SELECTION -------------------------------------------------------------------------------------------------------------- */

#selectstyle div, #selectfeatures div {
  	margin-bottom: 0 !important;
}
#selectstyle .elementor-widget-image, #selectfeatures .elementor-widget-image {
  	padding: 2px;
}
#selectstyle .elementor-image, #selectfeatures .elementor-image {
  	background: #000000;
}
#selectstyle .elementor-image a img, #selectfeatures .elementor-image a img {
	opacity: 0.75;
  	border: #000000 1px solid;
  	transition: opacity .3s;
}
#selectstyle .elementor-image a:hover img, #selectfeatures .elementor-image a:hover img {
	opacity: 1;
}
#selectstyle .elementor-image img.selected, #selectfeatures .elementor-image img.selected {
  	border: #ffffff 1px solid;
	opacity: 1;
}

.selectcircle {
  	position: absolute;
  	right: 10px;
  	bottom: 10px;
}
#selectstyle .caption, #selectfeatures .caption {
  	background: rgba(0,0,0,0.5);
	font-size: 12px;
  	color: #ffffff;
	text-align: left;
	display: inline-block;
  	position: absolute;
  	left: 3px;
  	bottom: 3px;
  	padding: 2px 8px;
}

/* SAVE CONFIG -----------------------------------------------------------------------------------------------------------------*/

.save_config_phase1, .reserve_config_phase1 {
  	text-transform: uppercase;
}
#configtest {
  	display: none;
}

/* KONTAKT -------------------------------------------------------------------------------------------------------------------- */

#weiter a {
  	color: #b8993c;
}
#weiter a:hover {
  	color: #ffffff;
}
#kontakt {
  	text-align: center;
}
#kontakt h1 {
  	display: inline-block;
  	margin: 0 auto;
  	border: #ffffff 1px solid;
  	line-height: 1em;
  	padding: 5px 15px 5px 20px !important;
  	border-radius: 5px;
}
#kontakt a {
  	display: inline-block;
  	margin: 0 auto;
  	color: #ffffff;
  	font-size: 36px;
}
#kontakt a:hover {
  	color: #b8993c;
}
@media screen and (max-aspect-ratio: 1/1) {
  	#kontakt h1 { font-size: 30px; }
  	#kontakt a { font-size: 26px; }
}
@media (max-width: 767px) {
  	#kontakt h1 { font-size: 30px; }
  	#kontakt a { font-size: 26px; }
}


/* PERSONALIZED RESULT PAGE --------------------------------------------------------------------------------------------------------------- */

body.result {
  	background: #575757;
}

#myexposeresult {
  	height: 100vh;
}
.arrowdown .elementor-widget-icon {
  	position: relative;
  	bottom: 80px;
  	left: 0;
}
@media screen and (max-aspect-ratio: 1/1) {
	#myexposeresult { padding-top: 25vh; }
}
@media (max-width: 767px) {
	#myexposeresult { padding-top: 25vh; }
}

/* other stuff -------------------------------------------------------------------------------------------------------------------------- */

.half {
 	max-width: 600px; 
}
.third {
 	max-width: 400px; 
}
.smaller {
  	font-size: 12px;
}
body:not(.elementor-editor-active) .hidden {
  	display: none; 	
}
.transparent {
 	opacity: 0; 
}
.white, .white h1, .white h2, .white h3, .white p {
 	color: #ffffff !important; 
}
.light, .light h2, .light p {
 	color: #dddddd; 
}
.bgwhite {
 	background-color: #ffffff; 
}
.borderwhite {
 	border: #ffffff 1px solid;
}
.bgdark p {
  	display: inline-block;
  	background: rgba(32,20,17,0.7); 
  	padding: 0 15px 5px 15px;
}
.bgblack {
 	background-color: #0c2b3b;
}
.green, .green h2 {
  	color: #82aa48;
}
.pale, .pale p {
  	color: #cccccc;
}
.fullheight {
  	height: 100vh;
}
@media screen and (max-aspect-ratio: 1/1) {
	.fullheight { height: 100vw; }
}
@media (max-width: 767px) {
	.fullheight { height: 100vw; }
}
.fullheightrel {
  	height: 100%;
}
.zeroheight {
	height: 0;
	margin-bottom: 0 !important;
}
.dark {
 	color: #0c2b3b; 
}
.dark p {
 	color: #000000 !important; 
}
.justified {
 	justify-content: left;
}
.roundcorners {
 	 border-radius: 40px !important;
}
.narrow {
  	max-width: 900px;
  	margin: 0 auto;
}

body:not(.elementor-editor-active) .mobile {
  	display: none;
}  
@media screen and (max-aspect-ratio: 1/1) {
  	body:not(.elementor-editor-active) .desktop { display: none !important; }
  	body:not(.elementor-editor-active) .mobile { display: block !important; }
  	#people .elementor-divider { text-align: left !important; }
}
@media (max-width: 767px) {
  	body:not(.elementor-editor-active) .desktop { display: none !important; }
  	body:not(.elementor-editor-active) .mobile { display: block !important; }
  	#people .elementor-divider { text-align: left !important; }
}
.elementor-widget-spacer.mobile {
 	padding: 0 !important;
  	margin: 0 !important;
}

.corporatecolour {
  color: var(--corporate);
}

body.loggedin .hideforloggedin {
  display: none;
}
body:not(.logged-in) .hideforloggedin {
  display: block;
}
body:not(.logged-in) .showforloggedin {
  display: none;
}
body.showforloggedin {
  display: block;
}


/* NEW FLATFINDER STARTS HERE //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */


/* LOADING SCREEN ------------------------------------------------------------------------------------------------------------ */


/* side panel */
.loadingstraplines {
  z-index: 102;
}
.loadingstraplines ul {
  padding: 0;
    margin-left: 1.1em;
}
.loadingstraplines ul li {
    font-size: 16px;
    line-height: 13px;
    font-weight: 500;
    margin-bottom: 15px;
    color: var(--corporate);
}

.habensiefragen {
  z-index: 102;
}

div.rtimg {
  display: none;
}
#ladelogo {
  position: absolute;
  top: calc(50% - 300px);
  left: 0;
  width: 100%;
  text-align: center;
  z-index: 10;
}
@media screen and (max-width: 1200px) {
  #ladelogo { top: calc(50% - 270px); }
}
@media screen and (max-width: 1024px) {
  #ladelogo { top: calc(50% - 220px); }
}
@media screen and (max-aspect-ratio: 1/1) {
  #ladelogo { top: calc(50% - 200px); }
}
@media screen and (max-width: 767px) {
  #ladelogo { top: calc(50% - 200px); }
}
body.elementor-editor-active #ladelogo {
  position: relative;
  top: 0;
}
#ladelogo svg {
  width: 300px;
  height: auto;
  margin: 0 auto;
}
#ladelogo svg g:nth-of-type(1) path {
  fill: var(--corporate) !important;
}
#ladelogo svg g:nth-of-type(2) path {
  fill: #ffffff !important;
}
#ladelogo svg circle {
  fill: var(--corporate) !important;
}
#ladeanimation {
  height: 100vh;
  min-height: 100vh;
  width: 100vw;
  z-index: 1;
  position: fixed;
  left: 0;
  top: 0;
}
body.elementor-editor-active #ladeanimation {
  position: relative;
  height: 320vh;
  min-height: 320vh;
}
body.elementor-editor-active #ladeanimation > .elementor-container {
  height: 100%;
}

.loadingscreens {
  height: 100vh;
  width: 100vw;
  opacity: 1;
  transition-property: opacity, left !important;
  transition-duration: 1s, 0.01s !important;
  transition-timing-function: ease-in-out, linear !important;
  transition-delay: 0s, 1s !important;
  position: absolute;
  left: 0;
  top: 0;
}
body.elementor-editor-active .loadingscreens {
  position: relative;
  margin-top: 100px;
}

.loadingscreens.removeLoadingscreen {
  opacity: 0;
  left: -9999px;
}
body.elementor-editor-active .loadingscreens.removeLoadingscreen {
  opacity: 1;
  left: 0;
}
.loadingscreens > .elementor-container {
  width: 100%;
  position: absolute;
  top: 38%;
  bottom: auto;
}
body.elementor-editor-active .loadingscreens > .elementor-container {
  height: auto !important;
  position: relative;
  bottom: 0; 
  top: auto;
}
#loadingscreen_01 { z-index: 3; }
#loadingscreen_02 { z-index: 2; }
#loadingscreen_03 { z-index: 1; }

#loadingscreen_03 .letsgobutton svg {
  width: 80px;
  height: 80px;
  background: #ffffff;
  border-radius: 100%;
}

#loadingscreen_03 .letsgobutton svg path {
  fill: var(--corporate) !important;
}

#loadingscreen_03 a:hover {
  cursor: pointer;
}

@media screen and (max-aspect-ratio: 1/1) {
  	.loadingside { display: none; }
  	.loadingscreens > .elementor-container { bottom: 38%; top: auto; }
  	#loadingscreen_03 .letsgobutton svg path { fill: var(--contrast) !important; }
}
@media screen and (max-width: 767px) {
  	.loadingside { display: none; }
  	.loadingscreens > .elementor-container { bottom: 38%; }
  	#loadingscreen_03 .letsgobutton svg path { fill: var(--contrast) !important; }
}


.loadingtext p {
  font-size: 36px;
  line-height: 1.5em;
  color: #333333;
  font-weight: 500;
  max-width: 800px;
  margin: 0 auto;
}

@media screen and (max-width: 1024px) {
  	.loadingtext p { font-size: 28px; line-height: 1.4em; }
}
@media screen and (max-aspect-ratio: 1/1) {
  	.loadingtext p { font-size: 22px; line-height: 1.2em; }
}
@media screen and (max-width: 767px) {
  	.loadingtext p { font-size: 22px; line-height: 1.2em; }
}


.ladedisplayouter {
  position: absolute;
  top: 65%;
  left: 0;
  z-index: 999;
}
body.elementor-editor-active .ladedisplayouter {
  position: relative;
  top: 0;
}
#ladedisplay {
  width: 100%;
  z-index: 10;
  text-align: center;
}
@media screen and (max-aspect-ratio: 1/1) {
  	.ladedisplayouter { top: 68vh; }
}
@media screen and (max-width: 767px) {
  	.ladedisplayouter { top: 68vh; }
}


#ladebalken {
  width: 300px;
  height: 10px;
  background: #dddddd;
  border: #333333 1px solid;
  border-radius: 5px;
  margin: 0 auto;
}
#ladestatus {
  width: 0;
 height: 100%;
  background: var(--corporate);
  border-radius: 4px;
}
#ladeprozent {
  padding-top: 20px;
  color: #333333;
  font-size: 20px;
  font-weight: 500;
}

/*HEADER ------------------------------------------------------------------ */
#masthead {
	display: none !important;
}

#wp-admin-bar-root-default, #wp-admin-bar-search, .avatar {
	display: none !important;
}
#wpadminbar, #wpadminbar *{
	cursor: inherit !important;
}
#wpadminbar {
	background: #32373c !important;
}
#wpadminbar .ab-item {
	transition: none !important;
	color: rgba(240,245,250,.6) !important;
}
#wpadminbar .ab-item:hover {
	transition: none !important;
	color: rgba(240,245,250,.6) !important;
}

#wp-admin-bar-user-actions li {
	display: none;
}
#wp-admin-bar-user-actions li:last-of-type {
	display: list-item;
}


/*HEADER*/

#flatfinder {
	background-color: #fff;
}

#sliderBG {
	position: fixed;
	left:0;
	top:0;
	width: 100vw;
	height: 100vh;
	background-color: red;
	z-index: 0;
}

/*REITER LOGGED IN*/

body:not(.home).logged-in #reiter {
	top: 30px !important;
}

#reiter .elementor-row .elementor-top-column:nth-of-type(1), #reiter .elementor-row .elementor-top-column:nth-of-type(3) {
  width: 250px;
}
#reiter .elementor-row > .elementor-top-column:nth-of-type(2) {
  width: calc(100% - 500px);
}
@media screen and (max-width: 1400px) {
  	#reiter .elementor-row .elementor-top-column:nth-of-type(1), #reiter .elementor-row .elementor-top-column:nth-of-type(3) { width: 200px; }
  	#reiter .elementor-row > .elementor-top-column:nth-of-type(2) { width: calc(100% - 400px); }
}
@media screen and (max-width: 1024px) {
  	#reiter .elementor-row .elementor-top-column:nth-of-type(1), #reiter .elementor-row .elementor-top-column:nth-of-type(3) { width: 180px; }
  	#reiter .elementor-row > .elementor-top-column:nth-of-type(2) { width: calc(100% - 360px); }
}
@media screen and (max-aspect-ratio: 1/1) {
  	#reiter .elementor-row .elementor-top-column:nth-of-type(1), #reiter .elementor-row .elementor-top-column:nth-of-type(3) { width: 0; }
  	#reiter .elementor-row > .elementor-top-column:nth-of-type(2) { width: 100%; }
}
@media screen and (max-width: 767px) {
  	#reiter .elementor-row .elementor-top-column:nth-of-type(1), #reiter .elementor-row .elementor-top-column:nth-of-type(3) { width: 0; }
  	#reiter .elementor-row > .elementor-top-column:nth-of-type(2) { width: 100%; }
}


#reiter {
	z-index: 999999;
	position: fixed;
	top: 0;
	left: 0;
	display: block;
	width: 100vw;
	text-align: left;
	vertical-align: middle;
	background-color: #fff;
	padding: 15px 10px 0 10px;
	-webkit-box-shadow: 0px 6px 6px rgba(0, 0, 0, 0.15) !important;
	box-shadow: 0px 6px 6px rgba(0, 0, 0, 0.15) !important;
	height: auto;	
}
@media screen and (max-aspect-ratio: 1/1) {
  	#reiter { height: 75px; padding: 0; }
}
@media screen and (max-width: 767px) {
  	#reiter { height: 75px; padding: 0; }
}

.reitertint {
  width: 100%;
  height: 100%;
  background: rgba(255,255,255,0.7);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 101;
}

body.elementor-editor-active #reiter {
	position: relative !important;
}
body.elementor-editor-active .reitertint {	
	position: relative !important;
  height: 50px;
}

#reiter .elementor-widget, #reiter .elementor-column-wrap {
	margin: 0 !important;
	padding: 0 !important;
}

@media screen and (max-aspect-ratio: 1/1) {
  .reitertint { height: 77px; }
}
@media screen and (max-width: 767px) {
  .reitertint { height: 75px; }
}

/* TOP NAVIGATION */

/* LOGO ---------------------------------------------------------------------------- */

#projektlogo {
  display: inline-block;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 9999999;
}
body.elementor-editor-active #projektlogo {
  position: relative;
}
#projektlogo img {
	max-width: 80px;
}

@media screen and (max-width: 1024px) {
  	#projektlogo img { width: 80px; }
}
@media screen and (max-aspect-ratio: 1/1) {
  	#projektlogo { left: -5px; top: -3px; }
  	#projektlogo img { width: 60px; }
}
@media screen and (max-width: 767px) {
  	#projektlogo { left: -5px; top: -3px; }
  	#projektlogo img { width: 60px; }
}

/* IMP & DAT MENU --------------------------------------------------------------------- */

#projektimpdat {
  width: auto;
  position: fixed;
  right: 10px;
  top: -0.5vw;
  display: inline-block;
  z-index: 9999999;
}
#projektimpdat br {
	display: none;
}
body.elementor-editor-active #projektimpdat {
  position: relative;
}
#projektimpdat a {
  color: var(--corporate);
  font-size: 13px;
}
#projektimpdat a:hover {
  color: #222222;
}
#projektimpdat a:nth-of-type(1) {
	border-right: #888888 1px solid;
	padding-right: 5px;
}
#projektimpdat a:nth-of-type(2) {
	padding-left: 5px;
}
@media screen and (max-width: 1024px) {
  	#projektimpdat a { font-size: 12px; }
}
@media screen and (max-aspect-ratio: 1/1) {
  	#projektname { display: none !important; }
  	#projektimpdat { top: 16px; }
}
@media screen and (max-width: 767px) {
  	#projektname { display: none !important; }
}
@media screen and (max-width: 500px) {
	#projektimpdat { top: 8px; line-height: 16px; }
	#projektimpdat a:nth-of-type(1) { border: none; padding-right: 0; }
	#projektimpdat a:nth-of-type(2) { padding-left: 0; }
	#projektimpdat br { display: block; }
}

#projektname, #projektname p {
	font-size: 20px;
	letter-spacing: 0.1em;
}
#projektname p {
	margin-top: 3px;
	margin-bottom: 3px;
}
#topnavbox {
  width: 100%;
}
#topnav {
  	text-align: right;
}
#topnav a {
	margin: 0 0 0 20px;
}
#topnav svg {
  	margin: -4px 5px 0 0;
}
#topnav svg path {
  fill: var(--corporate) !important;
}

@media screen and (max-aspect-ratio: 1/1) {
  #topnav .elementor-widget-container { padding-right: 220px; padding-top: 16px; }
  #topnav a { font-size: 14px; margin: 0 0 0 15px; }
}
@media screen and (max-width: 767px) {
  #topnav .elementor-widget-container { padding-right: 200px; padding-top: 15px; }
  #topnav a { font-size: 14px; margin: 0 0 0 15px; }
}
@media screen and (max-width: 500px) {
  #topnav .elementor-widget-container { padding-right: 120px; }
}

body:not(.logged-in) #logoutlink {
  display: none;
}



/* NEU! ------------------------------------------------------------------------------ */


#reiter .elementor-divider-separator {
	margin-top: 8px;
	margin-bottom: 12px;
}



/*
#reiter0 = Login-Tab
#reiter1 = Wohnungssuche-Tab
#reiter2 = Expose-Tab
*/

#reiterbox {
	width: 100% !important;
	display: block !important;
	font-size: 0;
	height: 30px;
	overflow: hidden;
}
body.elementor-editor-active #reiterbox { height: 150px; }

#reiterbox .reiterElem {
	display: inline-block;
	margin: 0;
	height: 30px;
	color: #ffffff;
  	width: 33%;
	position: relative;
	overflow: hidden;
}

/* 2 reiter (wohnungssuche, expose) ----------------------- */
#reiterbox #reiter0 { display: none !important; }
/* #reiterbox #reiter1 { width: calc(50% + 20px); z-index: 12; }   */
#reiterbox #reiter1 { width:100% }
#reiterbox #reiter1 svg { display:none }
#reiterbox #reiter1 {
	background-color: var(--corporate);
}
#reiterbox #reiter2 { display:none }
/* #reiterbox #reiter2 { width: 50%; margin-left: -20px !important; z-index: 11; } */
#reiterbox #reiter1 p { padding-left: 10px; }
/* #reiterbox #reiter2 p { padding-left: 30px; } */

@media screen and (max-aspect-ratio: 1/1) {
	#reiterbox #reiter1 { width: calc(50% + 15px); } 
	#reiterbox #reiter2 { margin-left: -15px !important; }
}
@media screen and (max-width: 767px) {
	#reiterbox #reiter1 { width: calc(50% + 15px); } 
	#reiterbox #reiter2 { margin-left: -15px !important; }
}
/* ---- */
body.elementor-editor-active #reiterbox { width: 100% !important; margin: 0 !important; }
body.elementor-editor-active #reiterbox div { display: block !important; }
body.elementor-editor-active #reiterbox p { display: inline-block !important; }
body.elementor-editor-active #reiterbox #reiter0 { display: block !important; }


#reiterbox .reiterElem:not(.activeElem) {
	filter: saturate(0) brightness(1) contrast(1);
}
#reiterbox .reiterElem:not(.activeElem):hover {
	filter: saturate(0) brightness(0.6) contrast(6);
	cursor: pointer;
}



#reiterbox .reiterElem svg {
	position: absolute;
	top: -15px;
	width: 2000px;
	height: 60px;
}
#reiterbox #reiter1 svg {
	right: 0;
}
#reiterbox #reiter2 svg {
	left: 0;
}
#reiterbox .reiterElem svg .st0 { fill: var(--corporate); }
#reiterbox .reiterElem svg .st1 { fill: #ffffff; }

#reiterbox .reiterElem p {
    position: absolute;
    left: 0;
    top: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	display: block;
	color: #ffffff;
	font-size: 16px;
	padding-top: 2px;
}
body.elementor-editor-active #reiterbox .reiterElem p { position: relative; width: auto; height: 30px; }


@media screen and (max-aspect-ratio: 1/1) {
  	#reiterbox { height: 22px; top: 19px; }
  	#reiterbox .reiterElem { height: 22px; }
	#reiterbox .reiterElem svg { top: -19px; }
  	#reiterbox .reiterElem p { padding-top: 2px; }
  	.reitertrenner { display: none !important; }
}
@media screen and (max-width: 767px) {
  	#reiterbox { height: 22px; top: 19px; }
  	#reiterbox .reiterElem { height: 22px; }
	#reiterbox .reiterElem svg { top: -19px; }
	#reiterbox .reiterElem p { padding-top: 2px; }
  	.reitertrenner { display: none !important; }
}

/* LINKER SEITENBEREICH ----------------------------------------------------------------------------- */

/*
.reiterElem0 = Willkommenstext
.reiterElem1 = Wohnungssuche: Filter, Thumbnails, Anfrage, etc.
.reiterElem2 = Expose-Download
*/

.seitentint {
  width: 100% !important;
  height: 100%;
  background: rgba(255,255,255,0.7);
  position: absolute;
  top: 0;
  left: -10px;
  z-index: 101;
}
body.elementor-editor-active .seitentint {	
	position: relative !important;
  	height: 50px !important;
}

@media screen and (max-width: 1200px) {
  .seitentint {  }
}
@media screen and (max-aspect-ratio: 1/1) {
  .seitentint { display: none !important; }
}
@media screen and (max-width: 767px) {
  .seitentint { display: none !important; }
}

.welcomeheading, .welcometext {
  z-index: 102;
}

.reiterElem0 > .elementor-container {
  height: 100%;
}

body:not(.elementor-editor-active) .reiterElem0, 
body:not(.elementor-editor-active) .reiterElem1,
body:not(.elementor-editor-active) .reiterElem2,
body:not(.elementor-editor-active) .reiterElem3,
body:not(.elementor-editor-active) .reiterElem4,
body:not(.elementor-editor-active) .reiterElem5,
body:not(.elementor-editor-active) .reiterElem6 {
	position: fixed !important;
	top: 5vh !important;
	left:-3000px;
	height: 95vh !important;
	transition: left .5s ease-in-out !important;
	background-color: #fff !important;
	-webkit-box-shadow: -8px 0px 49px 0px rgba(0,0,0,0.63);
	-moz-box-shadow: -8px 0px 49px 0px rgba(0,0,0,0.63);
	box-shadow: -8px 0px 49px 0px rgba(0,0,0,0.63);
}
.reiterElem1 {
	/* 
  	overflow-y: auto;
	*/
}

/* show the first side panel according to user status */

body:not(.logged-in) .reiterElem0 { left: 0; }
body:not(.elementor-editor-active).logged-in .reiterElem1 { left: 0; opacity: 1; } 
body:not(.elementor-editor-active).logged-in .reiterElem0 { visibility: hidden; }

/* mobile view: hide the panel at the top of the screen */
@media screen and (max-aspect-ratio: 1/1) {
  .elementor-section.reiterElem1.seitenreiter { margin-top: -273px; transition: margin .5s ease-in-out !important; }
	body:not(.elementor-editor-active).logged-in .reiterElem1 { opacity: 0; } 
}
@media screen and (max-width: 767px) {
  .elementor-section.reiterElem1.seitenreiter { margin-top: -225px; transition: margin .5s ease-in-out !important; }
	body:not(.elementor-editor-active).logged-in .reiterElem1 { opacity: 0; } 
}


/* elementor view only ------------------ */
body.elementor-editor-active .reiterElem0, body.elementor-editor-active .reiterElem1, body.elementor-editor-active .reiterElem2, body.elementor-editor-active .reiterElem3, body.elementor-editor-active .reiterElem4, body.elementor-editor-active .reiterElem5, body.elementor-editor-active .reiterElem6 {	
	position: relative !important;
	top: 0 !important;
	left: 0 !important;
	background-color: #fff !important;
}
/* -------------------------------------- */


body:not(.elementor-editor-active) .reiterElem0.seitenreiter,
body:not(.elementor-editor-active) .reiterElem1.seitenreiter,
body:not(.elementor-editor-active) .reiterElem2.seitenreiter,
body:not(.elementor-editor-active) .reiterElem3.seitenreiter,
body:not(.elementor-editor-active) .reiterElem4.seitenreiter,
body:not(.elementor-editor-active) .reiterElem5.seitenreiter,
body:not(.elementor-editor-active) .reiterElem6.seitenreiter {
	top: 0 !important;
    height: 100vh !important;
	-webkit-box-shadow: -8px 0px 20px 0px rgba(0,0,0,0.63);
	-moz-box-shadow: -8px 0px 20px 0px rgba(0,0,0,0.63);
	box-shadow: -8px 0px 20px 0px rgba(0,0,0,0.63);
}
.seitenreiter { /* = .reiterElem0, .reiterElem1 etc. */
	padding-top: 90px !important; /* verde: 50px; */
	padding-left: 30px;
	width: 33vw !important;
	min-width: 600px;
  	text-align: left;
  	z-index: 50;
	/* overflow-y: auto; */
}

.seitenreiter::-webkit-scrollbar { display: none; }
.seitenreiter { -ms-overflow-style: none; scrollbar-width: none; }


.seitenreiter > .elementor-container {
  height: 100%;
}


@media screen and (max-width: 1200px) {
  	.seitenreiter { width: 50vw !important; min-width: 400px; padding-left: 0; }
  	.seitenreiter > .elementor-container { /*width: calc(100vw - 0px); */ }
  	.seitenreiter > .elementor-container .elementor-column-wrap { margin: 0 !important; }
}

@media screen and (max-aspect-ratio: 1/1) {
  
	.reiterElem0.seitenreiter { display:none !important; width:0 !important; position:absolute !important; top: -9999px !important; }  
  	.reiterElem0 { -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; }
	.reiterElem2.seitenreiter { display:none !important; width:0 !important; position:absolute !important; top: -9999px !important; }  
  
	body:not(.elementor-editor-active) .reiterElem0.seitenreiter,
	body:not(.elementor-editor-active) .reiterElem1.seitenreiter,
	body:not(.elementor-editor-active) .reiterElem2.seitenreiter,
	body:not(.elementor-editor-active) .reiterElem3.seitenreiter,
	body:not(.elementor-editor-active) .reiterElem4.seitenreiter,
	body:not(.elementor-editor-active) .reiterElem5.seitenreiter,
	body:not(.elementor-editor-active) .reiterElem6.seitenreiter {
  	width: 100vw !important; height: auto !important; overflow: visible; }
  
  	.seitenreiter { padding-top: 65px !important; padding-left: 0; min-width: 0; font-size: 15px; }
  	.seitenreiter > .elementor-container { width: calc(100vw - 20px); }
  	.seitenreiter > .elementor-container .elementor-column-wrap { padding: 0 10px 0 10px !important; margin: 0 !important; }

}
@media screen and (max-width: 767px) {
  
	.reiterElem0.seitenreiter { display:none !important; width:0 !important; position:absolute !important; top: -9999px !important; }  
  	.reiterElem0 { -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; }
	.reiterElem2.seitenreiter { display:none !important; width:0 !important; position:absolute !important; top: -9999px !important; }  
  
	body:not(.elementor-editor-active) .reiterElem0.seitenreiter,
	body:not(.elementor-editor-active) .reiterElem1.seitenreiter,
	body:not(.elementor-editor-active) .reiterElem2.seitenreiter,
	body:not(.elementor-editor-active) .reiterElem3.seitenreiter,
	body:not(.elementor-editor-active) .reiterElem4.seitenreiter,
	body:not(.elementor-editor-active) .reiterElem5.seitenreiter,
	body:not(.elementor-editor-active) .reiterElem6.seitenreiter {
  	width: 100vw !important; height: auto !important; overflow: visible; }
  
  	.seitenreiter { padding-top: 60px !important; padding-left: 0; min-width: 0; font-size: 15px; }
  	.seitenreiter > .elementor-container { width: calc(100vw - 20px); }
  	.seitenreiter > .elementor-container .elementor-column-wrap { padding: 0 10px 0 10px !important; margin: 0 !important; }
  	.seitenreiter > .elementor-container .elementor-column-wrap .elementor-widget-wrap { padding: 0 !important; }

}



.filterheading .elementor-widget {
  margin-bottom: 0 !important;
}
.seitenreiter h2 { 
	font-weight: 400;
	color: #999999;
	border-bottom: #999999 1px solid;
  	font-size: 34px;
  	padding-bottom: 2px;
  	margin-top: 10px !important;
	margin-bottom: 0;
}
.seitenreiter h2 em { /* number */
	display: inline-block;
	width: 40px;
	height: 40px;
	text-align: center;
	color: var(--corporate);
	border: var(--corporate) 2px solid;
	border-radius: 100%;
	font-style: normal;
  	font-weight: 400;
}
.seitenreiter h2 strong { /* colour text */
	color: var(--corporate);
	font-style: normal;
	font-weight: 400;
}
.seitenreiter .flatfiltertextdiv h3 {
  font-weight: 600;
  font-size: 20px;
  color: var(--corporate);
  margin-top: 25px;
}
.seitenreiter .flatfiltertextdiv p {
  font-weight: 400;
  font-size: 15px;
  color: #333333;
  margin-top: 2px;
  margin-bottom: 20px;
}
.seitenreiter .flatfilterfilterButton {
  background-color: var(--corporate);
  color: var(--corporate);
  border: var(--corporate) 1px solid;
  margin-top: 6px;
  padding: 7px 8px 8px 43px;  
  font-weight: 500;
  background-image: url(../BG_Ratenrechner.png);
  background-repeat: no-repeat;
  background-position: -3px -5px;
}
.seitenreiter .flatfilterfilterButton:hover {
  background-color: #333333;
  color: #333333;
  border: #333333 1px solid;
  margin-top: 6px;
  padding: 7px 8px 8px 43px;  
  font-weight: 500;
  background-image: url(../BG_Ratenrechner.png);
  background-repeat: no-repeat;
  background-position: -3px -5px;
	cursor: pointer;
}

@media screen and (max-width: 1200px) {
  .seitenreiter h2 { margin-top: 20px; margin-bottom: 10px; }
  .seitenreiter .flatfiltertextdiv { padding-left: 10px; }
  .seitenreiter .flatfilterbuttondiv { margin-left: 10px; }
}
@media screen and (max-width: 1024px) {
  .seitenreiter h2 { margin-top: 0 !important; }
}
@media screen and (max-aspect-ratio: 1/1) {
  	.seitenreiter .flatfiltertextdiv { display: none; }
  	.seitenreiter .filterheading { display: none; }
  	.seitenreiter .flatfilterbuttondiv { position: absolute; right: -15px; top: 175px; z-index: 99; }
  	.seitenreiter .flatfilterfilterButton { background-image: url(../BG_Ratenrechner_mobil.png); background-color: var(--corporate) !important; color: #ffffff; }
    .seitenreiter .flatfilterfilterButton { margin-top: 0; font-size: 14px; height: 40px; border-bottom-left-radius: 20px; border-top-left-radius: 20px; background-position: -5px -6px; }
}
@media screen and (max-width: 767px) {
  	.seitenreiter .flatfiltertextdiv { display: none; }
  	.seitenreiter .filterheading { display: none; }
  	.seitenreiter .flatfilterbuttondiv { position: absolute; right: -15px; top: 175px; z-index: 99; }
  	.seitenreiter .flatfilterfilterButton { background-image: url(../BG_Ratenrechner_mobil.png); background-color: var(--corporate) !important; color: #ffffff; }
    .seitenreiter .flatfilterfilterButton { margin-top: 0; font-size: 14px; height: 40px; border-bottom-left-radius: 20px; border-top-left-radius: 20px; background-position: -5px -6px; }
}

/* CONFIG/FILTER OVERLAY ----------------------------------------------------------------- */


#configoverlay {
	display: block;
	padding-bottom: 0;
	text-align: left;
	transition: all 0.5s ease;
	font-size: 15px !important;  
  	width: 100%;
}
#slidercontainer {
	padding: 0;
	margin: 0 0 20px 0;
	position: relative;
  	width: 60%;
  	margin-right: 10%;
  	float: left;
}
.sliderbox {
	margin: 10px 0 !important;
	color: #222222 !important;
	width: 100% !important; 
	display: inline-block !important;
}
.sliderbox span {
	color: #222222 !important;
	padding-bottom: 10px !important;	
}

#price-sliderbox {
	display: none !important;
}

.slidergraphic {
	margin-top: 5px !important;
	width: calc(100% - 12px) !important;
	margin-left: 6px !important;	
}

.noUi-pips-horizontal {
    padding: 0 !important;
    height: 20px !important;
    left: 2px !important;
}
.noUi-value-horizontal {
    font-size: 11px;
  	line-height: 16px;
	font-family: 'Arial Narrow', 'Arial', sans-serif !important;
}
.noUi-marker-horizontal.noUi-marker {
	width: 1px !important;
    height: 5px !important;
  	background-color: #999999;
}
.noUi-marker-horizontal.noUi-marker-large {
	width: 1px !important;
    height: 8px !important; 
  	background-color: #999999;
}

/*
#nonlinear444 .noUi-pips div:nth-of-type(2) {
  transform: translate(-20%, 50%);
}
#nonlinear444 .noUi-pips div:nth-last-of-type(1) {
  transform: translate(-85%, 50%);
}
*/




#togglebuttonfilters {
  display: none;
}
@media screen and (max-width: 1024px) {
  	#slidercontainer { margin-bottom: 20px; }
  	.sliderbox { margin: 8px 0 !important; text-align: left; }
  	.sliderbox span { padding-bottom: 5px !important; }
}
@media screen and (max-aspect-ratio: 1/1) {
  	#configoverlay { position: relative; left: 0; padding-top: 20px; }
  	#slidercontainer { margin-bottom: 24px; }
  	.sliderbox { margin: 15px 0 !important; text-align: left; }
  	.sliderbox span { padding-bottom: 3px !important; }
  	.slidergraphic { margin-top: 6px !important; }
	.filterpanelspacer { display: none; }
  	#togglebuttonfilters { display: block; width: 60px; height: 31px; background: url('../Icon_Toggle_mobil.png') no-repeat; background-size: 40px; background-position: 50% 0; }
  	#togglebuttonfilters { position: absolute; bottom: -62px; left: calc(50% - 30px); z-index: 9999; }
  	#togglebuttonfilters.opened { background-image: url('../Icon_Toggle_mobil_opened.png'); }
}
@media screen and (max-width: 767px) {
  	#configoverlay { width: calc(100vw - 40px); position: relative; left: -10px; padding-top: 20px; }
  	#slidercontainer { width: 100%; margin-bottom: 24px; }
  	.sliderbox { margin: 7px 0 !important; text-align: center; }
  	.sliderbox span { padding-bottom: 3px !important; }
  	.slidergraphic { margin-top: 2px !important; }
	.filterpanelspacer { display: none; }
  	#togglebuttonfilters { display: block; width: 60px; height: 31px; background: url('../Icon_Toggle_mobil.png') no-repeat; background-size: 40px; background-position: 50% 0; }
  	#togglebuttonfilters { position: absolute; left: calc(50% - 30px); bottom: -31px; z-index: 9999; }
  	#togglebuttonfilters.opened { background-image: url('../Icon_Toggle_mobil_opened.png'); }
}




.noUi-horizontal {
    height: 6px !important;
}
.noUi-connect {
    background: #575757 !important;
}
.noUi-horizontal .noUi-handle {
    width: 14px !important;
    height: 14px !important;
	right: -9px !important;
	border: none !important;
    top: -6px !important;
	box-shadow: none;
    background: var(--corporate) !important;
	border: #ffffff 1px solid;
	border-radius: 18px;
}
.noUi-touch-area {
	width: 300%;
	height: 300%;
	position: relative;
	left: -100%;
	top: -100%;	
}
.noUi-target {
    background: #444444;
    border-radius: 2px;
    border: 1px solid #999999;
	box-shadow: none;
}
.noUi-handle::before, .noUi-handle::after {
    display: none !important;
}
.noUi-handle:hover {
	cursor: pointer;	
}


@media screen and (max-aspect-ratio: 1/1) {
	.noUi-horizontal { height: 6px !important; border: 1px solid #444444 !important; top: 2px; }
	.noUi-horizontal .noUi-handle { width: 16px !important; height: 16px !important; top: -6px !important; }
  	.noUi-connect {	background: #bbbbbb !important; }
}
@media only screen and (max-width: 767px) {	
	.noUi-horizontal { height: 6px !important; border: 1px solid #444444 !important; top: 2px; }
	.noUi-horizontal .noUi-handle { width: 16px !important; height: 16px !important; top: -6px !important; }
  	.noUi-connect {	background: #bbbbbb !important; }
}




#configform {
	padding-top: 35px;
  	width: 30%;
  	float: left;
}
#configform form, #configform form input {
	margin: 0;
	padding: 0;	
}
#configform div {
  margin-bottom: 4px;
}
#configform span {
	padding: 0;	
  	display: inline-block;
  	margin-left: 8px;
}

#configform2 {
  margin-top: 20px;
  width: 30%;
  float: left;
}
#configform2 span {
  padding: 0;
    display: inline-block;
}
@media only screen and (max-width: 1024px) {	
  #configform { padding-top: 14px; }
}
@media screen and (max-aspect-ratio: 1/1) {
  	#configform div { margin-bottom: 7.5px; }
  	#configform { padding-top: 20px; }
	#configform form { margin-top: 10px; }
  	#configform, #configform2 { /* display: none; */ }
}
@media only screen and (max-width: 767px) {	
  	#configform div { margin-bottom: 4px; }
  	#configform { padding-top: 14px; }
	#configform form { margin-top: 10px; }
  	#configform, #configform2 { display: none; }
}


#displayflatcount {
  border-top: #cccccc 1px solid;
  border-bottom: #cccccc 1px solid;
  clear: both;
  margin-top: 20px;
  padding: 7px 0 8px 0;
  position: relative;
}
#flatCount {
  color: var(--corporate);
  font-size: 24px;
  font-weight: 500;
  margin-right: 5px;
  display: inline-block;
}
.wohnungengefunden {
  display: inline-block;
}
@media screen and (max-width: 1024px) {
  	#displayflatcount { padding: 4px 0 4px 0; height: 33px; }
  	#flatCount { font-size: 26px; position: relative; top: 1px; }
}
@media screen and (max-aspect-ratio: 1/1) {
  	#displayflatcount { border-bottom: none !important; padding-top: 7px; height: 33px; }
  	#flatCount { font-size: 26px; position: relative; top: 1px; }
  	.wohnungengefunden { line-height: 1em; position: relative; top: -8px; }
}
@media screen and (max-width: 767px) {
  	#displayflatcount { border-bottom: none !important; padding-top: 5px; height: 33px; margin-top: 0; }
  	#flatCount { font-size: 26px; position: relative; top: 1px; margin-top: 0; }
  	.wohnungengefunden { line-height: 1em; position: relative; top: -8px; }
}

#resetconfig {
  display: inline-block;
  position: absolute;
  right: 0;
  top: 4px;
  background: var(--corporate);
  color: #ffffff;
  font-size: 16px;
  text-transform: uppercase;
  padding: 5px 10px 5px 10px;
	z-index: 99;
	display: block;
	font-size: 0.9em;
}
#resetconfig:hover {
 cursor: pointer; 
  background: #333333;
}

@media screen and (max-width: 1024px) {
  #resetconfig { padding: 2px 10px 2px 10px; top: 2px; }
}
@media screen and (max-aspect-ratio: 1/1) {
  #resetconfig { padding: 2px 10px 2px 10px; top: 6px; }
}
@media screen and (max-width: 767px) {
  #resetconfig { padding: 2px 10px 2px 10px; top: 5px; }
}


/* FLAT SELECTION DISPLAY (in sidepanel) ----------------------------------------------------------------------------------------------------- */

body.elementor-editor-active .showflatscontainersection { 
	display: block;
	height: auto;
}

#showflatscontainer {
  text-align: left;
  margin-top: 25px;
  min-height: 100px;
}
#togglebuttonthumbnails {
  display: none;
  position: absolute;
  top: -31px;
  transform: rotate(180deg);
  left: calc(50% - 30px);
  width: 60px;
  height: 31px;
  z-index: 0;
  background: url('../Icon_Toggle_mobil.png') no-repeat;
  background-size: 40px;
  background-position: 50% 0px; 
}
#placeholderfloorplans {
  font-size: 15px;
  color: #999999;
}
.showflats {
  	width: 15%;
  	display: inline-block;
  	padding: 0;
  	margin-right: 5%;
  margin-bottom: 10px;
  	position: relative;
}
.showflats img {
  	width: 100%;
  	height: auto;
    padding: 0;
    background: #ffffff;
  	border: var(--corporate) 1px solid;
}
.showflats img:hover {
  cursor: pointer;
}
.showflats p {
  	margin: 0 !important;
  	padding: 3px 0 0 0;
  font-size: 14px;
  line-height: 1.2em;
}
.showflats a {
  color: #ffffff;
  	background: url('../Icon_removeselection_grey.png') no-repeat 50% 50%;
  	padding: 0;
  	background-size: 20px;
    position: absolute;
    top: -10px;
    right: -10px;
    display: inline-block;
    width: 20px;
  	height: 20px;
  	background-color: #ffffff;
    border-radius: 100%;
}

.showflats a:hover {
  
}

#showflatscontainer_preview {
}
#closethumbnails {
  display: none;
}

@media screen and (max-width: 1200px) {
  #showflatscontainer { margin-top: 15px; min-height: 100px; }
}
@media screen and (max-width: 1024px) {
  #showflatscontainer { margin-top: 20px; min-height: 70px; }
  .showflats p { font-size: 12px; }
}
@media screen and (max-aspect-ratio: 1/1) {
	.showflatscontainersection { height: 0; }
  #showflatscontainer { width: 100vw; margin-top: 0; background: #ffffff; transition: all .4s ease-in-out; -webkit-box-shadow: 0px -6px 6px rgba(0, 0, 0, 0.15); box-shadow: 0px -6px 6px rgba(0, 0, 0, 0.15); }
  #showflatscontainer { min-height: 100px; height: 130px; position: fixed; bottom: -120px; left: 0; padding: 10px 0 10px 15px; }
  #togglebuttonthumbnails { display: inline-block; }
  #togglebuttonthumbnails.opened { background-image: url('../Icon_Toggle_mobil_opened.png'); }

  .showflats { width: 60px; margin-right: 11px; vertical-align: top; }
  .showflats:nth-last-of-type(1) { margin-right: 0; }
  .showflats img { width: 60px; height: 60px; }
  .showflats p { line-height: 1em; width: 60px; }
  .showflats a { display: none; }
  #closethumbnails { display: block; position: absolute; top: -1px; right: -30px; width: 30px; height: 120px; }
  #closethumbnails {  background: var(--corporate) url(../thumbnailsbutton_mobil.png) no-repeat; background-position: -30px 0; background-size: 60px; }
  #closethumbnails.open { background-position: 0 0; }
}

@media screen and (max-width: 767px) {
	.showflatscontainersection { height: 0; }
  #showflatscontainer { width: 100vw; margin-top: 0; background: #ffffff; transition: all .4s ease-in-out; -webkit-box-shadow: 0px -6px 6px rgba(0, 0, 0, 0.15); box-shadow: 0px -6px 6px rgba(0, 0, 0, 0.15); }
  #showflatscontainer { min-height: 100px; height: 130px; position: fixed; bottom: -120px; left: 0; padding: 10px 0 10px 15px; }
  #togglebuttonthumbnails { display: inline-block; }
  #togglebuttonthumbnails.opened { background-image: url('../Icon_Toggle_mobil_opened.png'); }

  .showflats { width: 60px; margin-right: 11px; vertical-align: top; }
  .showflats:nth-last-of-type(1) { margin-right: 0; }
  .showflats img { width: 60px; height: 60px; }
  .showflats p { line-height: 1em; width: 60px; }
  .showflats a { display: none; }
  #closethumbnails { display: block; position: absolute; top: -1px; right: -30px; width: 30px; height: 120px; }
  #closethumbnails {  background: var(--corporate) url(../thumbnailsbutton_mobil.png) no-repeat; background-position: -30px 0; background-size: 60px; }
  #closethumbnails.open { background-position: 0 0; }
}

#limitwarning {
  position: absolute;
  left: calc(100% + 10px);
  top: 10px;
  width: 360px;
  background: #222222;
  color: #ffffff;
  font-size: 15px;
  line-height: 1.4em;  
  -webkit-box-shadow: 10px 10px 10px 0px rgba(0, 0, 0, 0.4);
	box-shadow: 10px 10px 10px 0px rgba(0, 0, 0, 0.4);
  display: none;
}
body.elementor-editor-active #limitwarning {
  position: relative;
  left: 0;
  width: auto;
  display: block;
}
#limitwarning p {
  color: #ffffff;
  padding: 0 15px 0 20px;
}
#limitwarning strong {
  width: calc(100% - 20px);
  display: inline-block;
  color: var(--corporate40pc);
}
#limitwarning em {
  font-style: normal;
  color: #ffffff;
}
.limitwarningcloser {
  position: absolute;
  top: 10px;
  right: 15px;
  text-align: right;
}
.limitwarningcloser svg {
  width: 14px;
  height: 14px;
}
.limitwarningcloser svg path {
  	fill: #888888 !important;
}
@media screen and (max-aspect-ratio: 1/1) {
  #limitwarning { left: -25px; top: 50px; width: calc(100vw - 20px); }
}
@media screen and (max-width: 767px) {
  #limitwarning { left: -25px; top: 50px; width: calc(100vw - 20px); }
}

/* ANFRAGEBUTTON ----------------------------------------------------------------------------- */

.anfragebox {
  
}
.anfragebutton {
  z-index: 2;
  width: 100%;
  max-width: 100%;
	opacity: 0;
}
body.elementor-editor-active .anfragebutton {
  display: block;
  margin-top: 0;
}
.anfragebutton p {  
  background-color: #000000;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 40px;
  position: relative;
}
body.elementor-editor-active .anfragebutton p {
  height: auto;
}
.anfragebutton p.sent {
  background-color: var(--corporate);
}
.anfragebutton p.sent a {
  cursor: default;
  background-color: rgba(255,255,255,0);
}
.anfragebutton p.sent span {
  transition: all 0s;
}
.anfragebutton p span {
  background: var(--corporate);
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  opacity: 1;
  transition: width 1s ease-in-out, background 1s ease-in-out 1s, opacity .4s ease-in-out;
}
.anfragebutton p.sent span {
  transition: all 0s;
}
.anfragebutton.loaded p span {  
  width: 100%;
  background: var(--corporate40pc);
}
.anfragebutton.loaded.fading p span {  
  opacity: 0;
}
.anfragebutton a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background-color: rgba(255,255,255,0.26);
  background-image: url(../Icon_CTA_anfrage.png);
  background-repeat: no-repeat;
  background-size: 30px;
    background-position: 9px 9px;
    padding: 8px 10px 8px 46px;
  color: #ffffff !important;
  display: block;
    cursor: pointer;
  font-weight: 500;
}
.anfragebutton a:hover {
  background-color: rgba(255,255,255,0);
}
.anfragebutton a strong {
  font-weight: 500 !important;
}
.anfragebutton p.sent a {  
  background-image: url(../Icon_CTA_sent.png);
}
.anfragebutton em.default {
  font-style: normal;
}
.anfragebutton em.updated {
  display: none;
}
.anfragebutton em.returning {
  display: none;
}
.anfragebutton em.sent {
  display: none;
  font-style: normal;
}
body.elementor-editor-active .anfragebutton em {
  display: inline-block;
}
body.elementor-editor-active .anfragebutton a, body.elementor-editor-active .anfragebutton p {
  position: relative;
}

@media screen and (max-aspect-ratio: 1/1) {
  .anfragebox { position: absolute; bottom: 0; left: 0; width: 100vw; height: 35px; z-index: 99; }
  section.elementor-section.anfragebox .elementor-column-wrap { padding: 0 !important; }
  .anfragebutton { width: 300px; max-width: 300px; }
  .anfragebutton p { background-color: var(--contrast); }
  .anfragebutton a { background-size: 26px; background-position: 17px 9px; padding: 8px 10px 8px 52px; font-size: 14px; background-color: rgba(255,255,255,0); }
}

@media screen and (max-width: 767px) {
  .anfragebox { position: absolute; bottom: 0; left: 0; width: 100vw; height: 35px; z-index: 99; }
  section.elementor-section.anfragebox .elementor-column-wrap { padding: 0 !important; }
  .anfragebutton { width: 100%; max-width: 100%; }
  .anfragebutton p { background-color: var(--contrast); }
  .anfragebutton a { background-size: 26px; background-position: 17px 9px; padding: 8px 10px 8px 52px; font-size: 14px; background-color: rgba(255,255,255,0); }
}


@media screen and (max-width: 818px) and (min-width: 768px) {
  .anfragebutton p { height: 60px }
  .anfragebutton a { height: 100%; }
}

.anfragefeedback {
  display: none;
  background: rgba(0,0,0,0.85);
  position: absolute;
  top: -135px;
  left: 0;
  height: 130px;
  width: 100%;
}
body.elementor-editor-active .anfragefeedback {
  display: block;
  top: 0;
  position: relative;
  height: auto;
}

.anfragefeedback p:nth-of-type(1) {
  	font-size: 15px;
    line-height: 23px;
    color: #ffffff;
    text-indent: 30px;
    display: inline-block;
    padding: 10px 14px;
    background-image: url(../FeedbackTick_white.png);
    background-repeat: no-repeat;
    background-size: 26px;
    background-position: 12px 9px;
    margin: 0;
}
.anfragefeedback a {
  	font-size: 16px;
  	position: absolute;
  	right: 6px;
    bottom: 12px;
  	display: inline-block;
  	background-image: url(../Arrow_right.png);
  	background-repeat: no-repeat;
  	background-position: calc(100% - 8px) 50%;
    background-size: 24px;
    font-weight: 600;
    color: #ffffff;
    padding: 0 40px 0 10px;
}
.anfragefeedback a:hover {
  	color: var(--corporate);
}

body.elementor-editor-active .anfragefeedback a {
  height: auto;
  position: relative;
}
@media screen and (max-width: 1024px) {  
  .anfragefeedback { top: -130px; }
}
@media screen and (max-aspect-ratio: 1/1) { 
  .anfragefeedback { top: -130px; }
}
@media screen and (max-width: 767px) {  
  .anfragefeedback { top: -130px; }
}

.feedbackcloser {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 14px;
  height: 14px;
  margin: 0;
  padding: 0;
  display: inline-block;
  background-image: url(../CloserX_white.png);
  background-size: 14px;
  background-repeat: no-repeat;
  opacity: 0.5;
}
.feedbackcloser:hover {
  cursor: pointer;
  opacity: 0.8;
}

/* ZUM EXPOSE ---------------------------------------------------------------------------------- */

.gotoexpose {
  	position: absolute;
  	top: 0;
 	right: 0;
  	z-index: 9;
    max-width: 130px;
    height: 40px;
  	font-size: 14px;
}
body.elementor-editor-active .gotoexpose {
  display: block;
  position: relative;
  top: 0;
  right: 0;
}
.gotoexpose a {
  display: inline-block;
  width: 100%;
  height: 40px;
  background-color: var(--corporate);
  color: #ffffff;
  padding: 8px 12px;
}
.gotoexpose a:hover {
  background-color: #222222;
}
@media screen and (max-aspect-ratio: 1/1) {
  .gotoexpose { display: none; }
}
@media screen and (max-width: 767px) {  
  .gotoexpose { display: none; }
}

/* EMAIL TO USER AFTER REGISTRATION ------------------------------------------------------------ */

body.registrationmail.elementor-editor-active .maincontent {
  display: inline-block;
}

/* NEXT PAGE LINK ----------------------------------------------------------------------------- */

.nextpagelink {
  border-top: #cccccc 1px solid;
  text-align: right;
display: none;
}
body.elementor-editor-active .nextpagelink {
  display: block;
}

.nextpagelink p {
  font-size: 0;
  margin-top: 15px;
  background: #333333;
  clip-path: polygon(0% 0%, calc(100% - 15px) 0, 100% 50%, calc(100% - 15px) 100%, 0% 100%);
  clear: both;
  height: 32px;
  display: none;
}
.nextpagelink strong {
  font-size: 16px;
	display: inline-block;
	padding: 3px 30px 5px 5px;
	margin: 0;
	height: 32px;
	color: #ffffff;
  	background-color: var(--corporate);
	background-image: url(../NavArrowWedge_grey.png);
	background-position: 100% 50%;
	background-repeat: no-repeat;
  	font-weight: normal;
}
.nextpagelink a {
  font-size: 16px;
	display: inline-block;
	padding: 3px 20px 5px 10px;
	margin: 0;
	height: 32px;
	color: #ffffff;
  	font-weight: normal;
  background: var(--corporate);
}

/* CALL TO ACTION ------------------------------------------------------------------------- */

#ctacontainerdesktop {  
  position: fixed;
    width: calc(33vw - 90px);
	min-width: 510px;
    bottom: 60px;
    left: 60px;
    padding: 0;
    margin: 0;
    z-index: 9999;
  transition: all .5s ease-in-out;
	display: none;
}
body.logged-in #ctacontainerdesktop {
	display: block;
}
body.mobiledevice #ctacontainerdesktop {
	display: none !important;
}
body.elementor-editor-active #ctacontainerdesktop {
  position: relative;
  bottom: 0;
  left: 0;
  margin-top: 20px;  
	display: block !important;
}
#ctacontainerdesktop .elementor-widget {
  margin-bottom: 0;
}
body.elementor-editor-active .ctacontainer {
  margin-top: 20px;
}


.calltoaction {
    background: var(--corporate);
    float: left;
    width: calc(50% - 5px);
  /*
  	min-width: 225px;
  */
    color: #ffffff;
    padding: 8px 10px 8px 70px;
    line-height: 1.1em;
    background-repeat: no-repeat;
    background-size: 60px;
    background-position: 5px 5px;
  	text-align: left;
}
.calltoaction.ctabox1, .calltoaction.ctabox1:hover {
  background-image: url(../Portrait_Kontakt_Kalkmann_Witt.png);
  margin-right: 10px;
}
.calltoaction.ctabox2, .calltoaction.ctabox2:hover {
  background-image: url(../Portrait_Kontakt_EPPLE_Filsinger.png);
}
.calltoaction span.cta1 {
  font-size: 16px;
  font-weight: 500;
}
.calltoaction span.cta2 {
  font-family: 'Roboto Condensed', sans-serif;
  font-size: 15px;
  font-weight: 400;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: 14px;
  background-position: 10px 13px;
  margin-top: 4px;
}
.calltoaction span.cta3 {
  font-family: 'Roboto Condensed', sans-serif;
  font-size: 14px;
  font-weight: 400;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: 14px;
  background-position: 10px 13px;
  color: #ffffff;
}
.calltoaction span.cta2:hover, .calltoaction span.cta3:hover {
  color: #000000 !important;
  cursor: pointer;
}
.calltoaction span.cta1 a, .calltoaction span.cta2 a, .calltoaction span.cta3 a {
  font-family: 'Roboto Condensed', sans-serif;
  font-size: 14px;
  color: #ffffff;
}

/* bigger contacts on expose page */
.ctacontainer.ctabig .calltoaction {  
    padding: 128px 10px 8px 10px;
    background-size: 110px;
    background-position: 10px 10px;
  	line-height: 1.3em;
}
.ctacontainer.ctabig .calltoaction span.cta1 {
  font-size: 20px;
}
.ctacontainer.ctabig .calltoaction span.cta2 {
  font-size: 16px;
  padding-left: 20px;
  background-image: url(../Icon_CTA_phone_small.png);
    background-position: 0px 3px;
}
.ctacontainer.ctabig .calltoaction span.cta3 {
  font-size: 16px;
  padding-left: 20px;
  background-image: url(../Icon_CTA_mail_small.png);
    background-position: 0px 3px;
}


#ctacontainermobil {
  position: fixed;
  width: 100vw;
  height: 50px;
  bottom: 0;
  left: 0;
  padding-top: 5px;
  padding-left: 15px;
  z-index: 9999;
  background: var(--corporate);
  display: none;
}
body.elementor-editor-active #ctacontainermobil {
  position: relative;
  top: 0;
  display: block;
}
body.mobiledevice #ctacontainermobil {
	display: block;
}
.ctaboxmobil {
  text-align: left;
}
body.elementor-editor-active .ctaboxmobil { 
  display: block;
}
.ctaboxmobil .ctamail { 
  width: 40px; 
  height: 40px; 
  display: inline-block; 
  background-image: url(../Icon_CTA_mail.png); 
  background-size: 100%; 
  margin-right: 6px;
}
.ctaboxmobil .ctaphone { 
  width: 40px; 
  height: 40px; 
  display: inline-block; 
  background-image: url(../Icon_CTA_phone.png); 
  background-size: 100%;
}

@media screen and (max-width: 1200px) {
  #ctacontainerdesktop { width: calc(50vw - 60px); max-width: calc(600px - 60px); min-width: 1px; left: 30px; }
  .calltoaction { padding: 8px 10px 5px 55px; background-size: 40px; background-position: 7px 8px; }
  .calltoaction.ctaphone { margin-right: 2px; }
}
@media screen and (max-width: 1024px) {  
  .ctacontainer .calltoaction .cta3, .ctacontainer .calltoaction .cta3 a { font-size: 13px !important; }
}
@media only screen and (max-width: 1024px) {
  #ctacontainermobil { display: block; }
  #ctacontainerdesktop { display: none; }
  .ctacontainer, .ctacontainer.ctabig { position: fixed; bottom: 0; left: 0; background: var(--corporate); width: 100vw; height: 50px; padding-left: 15px; }
  .calltoaction { display: none; }
  .contentElem2.hauptcontent .ctacontainer.ctabig { position: relative; height: auto; margin: 20px; width: calc(100vw - 40px); background: #ffffff; min-height: 100px; }
  .contentElem2.hauptcontent .ctacontainer.ctabig .calltoaction { display: block; min-height: 80px; margin-bottom: 20px; width: calc(100vw - 40px); max-width: 400px; }
  .contentElem2.hauptcontent .ctacontainer .calltoaction { background-color: var(--corporate); background-size: 70px; background-position: 5px 5px; } 
  .contentElem2.hauptcontent .ctacontainer .calltoaction .cta3 { font-family: 'Montserrat', sans-serif; }
  .contentElem2.hauptcontent .ctacontainer .calltoaction .cta3 a { font-family: 'Montserrat', sans-serif; }
}
@media only screen and (max-width: 1024px) and (max-aspect-ratio: 3/2) {
  #ctacontainermobil { display: block; }
  #ctacontainerdesktop { display: none; }
  .ctacontainer, .ctacontainer.ctabig { position: fixed; bottom: 0; left: 0; background: var(--corporate); width: 100vw; height: 50px; padding-left: 15px; }
  .calltoaction { display: none; }
  .contentElem2.hauptcontent .ctacontainer.ctabig { position: relative; height: auto; margin: 20px; width: calc(100vw - 40px); background: #ffffff; min-height: 100px; }
  .contentElem2.hauptcontent .ctacontainer.ctabig .calltoaction { display: block; min-height: 80px; margin-bottom: 20px; width: calc(100vw - 40px); max-width: 400px; }
  .contentElem2.hauptcontent .ctacontainer .calltoaction { background-color: var(--corporate); background-size: 70px; background-position: 5px 5px; } 
  .contentElem2.hauptcontent .ctacontainer .calltoaction .cta3 { font-family: 'Montserrat', sans-serif; }
  .contentElem2.hauptcontent .ctacontainer .calltoaction .cta3 a { font-family: 'Montserrat', sans-serif; }
}
@media screen and (max-width: 767px) {  
  #ctacontainermobil { display: block; }
  #ctacontainerdesktop { display: none; }
  .ctacontainer, .ctacontainer.ctabig { position: fixed; bottom: 0; left: 0; background: var(--corporate); width: 100vw; height: 50px; padding-left: 15px; }
  .calltoaction { display: none; }
  .contentElem2.hauptcontent .ctacontainer.ctabig { position: relative; height: auto; margin: 20px; width: calc(100vw - 40px); background: #ffffff; min-height: 100px; }
  .contentElem2.hauptcontent .ctacontainer.ctabig .calltoaction { display: block; min-height: 80px; margin-bottom: 20px; width: calc(100vw - 40px); max-width: 400px; }
  .contentElem2.hauptcontent .ctacontainer .calltoaction { background-color: var(--corporate); background-size: 70px; background-position: 5px 5px; } 
  .contentElem2.hauptcontent .ctacontainer .calltoaction .cta3 { font-family: 'Montserrat', sans-serif; }
  .contentElem2.hauptcontent .ctacontainer .calltoaction .cta3 a { font-family: 'Montserrat', sans-serif; }
}
@media screen and (max-height: 700px) {
	#ctacontainermobil { height: 36px; padding-top: 3px; }
	.ctaboxmobil .ctamail, .ctaboxmobil .ctaphone { width: 30px; height: 30px; }
}

.callme {
    margin-top: -20px;
}
.callme p {
  background-color: #000000;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 40px;
  position: relative;
}
.callme p span {
  background: var(--corporate);
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  opacity: 1;
  transition: width 1s ease-in-out, opacity 1s ease-in-out 1s;
}
.callme.loaded p span {  
  width: 100%;
  opacity: 0;
}
.callme a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background-color: rgba(255,255,255,0.26);
  background-image: url(../Icon_CTA_callme.png);
  background-repeat: no-repeat;
  background-size: 30px;
    background-position: 9px 9px;
    padding: 8px 10px 8px 46px;
  color: #ffffff !important;
  display: block;
    cursor: pointer;
  font-weight: 500;  
  
}
.callme a:hover {
  background-color: rgba(255,255,255,0);
}
.callme a strong {
  font-weight: 500 !important;
}

body.elementor-editor-active .callme {
  margin-top: 0;
}
body.elementor-editor-active .callme p {
  height: auto;
}
body.elementor-editor-active .callme a {
  position: relative;
}

.callmefeedback {
  display:none;
  background: var(--corporate);
  position: absolute;
  top: 0;
  left: 0;
  height: 40px;
  width: 100%;
}
.callmefeedback p {
  color: #222222;
  font-weight: 700;
  padding: 0 10px 0 45px;
  background-image: url(../FeedbackTick.png);
  background-repeat: no-repeat;
  background-size: 26px;
  background-position: 9px 7px;
  line-height: 40px;
  margin: 0;
}
body.elementor-editor-active .callmefeedback {
  display: block;
  position: relative;
  height: auto;
}

/* ANMELDEN --------------------- */
.willkommenstext {
  position: relative;
  padding-left: 120px;
  padding-top: 10px;
  margin-bottom: 0;
}
.willkommenstext img {
  position: absolute;
  bottom: 20px;
  left: 0;
}

/* RECHTER HAUPTBEREICH --------------------------------------------------------------- */

.hauptcontent {
  width: 67vw;
  max-width: calc(100vw - 600px) !important; 
  text-align: left;
  z-index: 40;

}
body:not(.elementor-editor-active) .hauptcontent {
  min-height: calc(100vh - 100px);
  position: absolute;
  top: 60px;
  right: 0;
display:none;
}
body:not(.logged-in) .contentElem0 {
  display: block;
}
.hauptcontent .elementor-inner-section {
  width: calc(100% - 60px);
  position: relative;
  top: 30px;
  left: 10px;
  min-height: calc(100vh - 160px);
}
body.logged-in .hauptcontent .elementor-inner-section {
	left: 0;
}

.hauptcontent h2 { 
  font-weight: 400;
  color: var(--corporate);
  border-bottom: #999999 1px solid;
  font-size: 34px;
  padding-bottom: 2px;
  margin-top: 10px;
}
.hauptcontent h6 {
  font-size: 50px;
  font-weight: 700;
  color: var(--corporate);
}
@media screen and (max-width: 1200px) {
  .hauptcontent { width: 50vw; max-width: calc(100vw - 400px) !important; }
  .hauptcontent .elementor-inner-section { width: calc(100% - 0px); padding-left: 0 !important; }
}
@media screen and (max-width: 1024px) {
  .hauptcontent .elementor-inner-section { left: 0; }
  .hauptcontent h2 { margin-top: 0; }
}
@media screen and (max-aspect-ratio: 1/1) {
  .hauptcontent { width: 100vw; max-width: 100vw !important; font-size: 15px; }
  .hauptcontent .elementor-inner-section { max-width: 100vw !important; top: 0px; left: 0; } 
  .hauptcontent h2 { margin-top: 15px; }
}
@media screen and (max-width: 767px) {
  .hauptcontent { width: 100vw; max-width: 100vw !important; font-size: 15px; }
  .hauptcontent .elementor-inner-section { max-width: 100vw !important; top: 0px; left: 0; } 
  .hauptcontent h2 { margin-top: 15px; }
}



/* FLATFINDER FOOTER ---------------------------------------------------------------------------------------- */

.flatfinderfooter {
  	position: fixed;
    width: 100%;
    height: 40px;
    bottom: 0;
    -webkit-box-shadow: 0px -6px 6px rgba(0, 0, 0, 0.15) !important;
    box-shadow: 0px -6px 6px rgba(0, 0, 0, 0.15) !important;
    z-index: 999;
}
body.elementor-editor-active .flatfinderfooter { position: relative; margin-top: 100px; }

@media screen and (max-aspect-ratio: 1/1) {
  .flatfinderfooter { display: none; }
}
@media screen and (max-width: 767px) {
  .flatfinderfooter { display: none; }
}

/* INSTRUCTIONS BOX ---------------------------------------------------------------------------------------- */

.instructionsbox {
  display: inline-block;
  position: absolute;
  top: -200px;
  z-index: 999;
  text-align: left;
  transition: all .8s ease-in-out;
}
body.elementor-editor-active .instructionsbox {
  position: relative;
  top: 0;
}
.instructionsbox.down {
  top: 100px;
}
.instructionsbox em {
  font-size: 13px;
  font-style: normal;
  display: inline-block;
  position: relative;
  top: -4px;
}
.instructionsbox .elementor-row > .elementor-inner-column:nth-of-type(1) {  
  width: 33vw !important;
  min-width: 600px;
}
.instructionsbox .elementor-row > .elementor-inner-column:nth-of-type(2) {  
  width: 67vw;
  max-width: calc(100vw - 600px) !important; 
}
.instructionsbox .elementor-widget-text-editor .elementor-widget-container {
  padding: 30px 60px 15px 30px;
  background-color: #EEEEEECC;
}
.instructionsbox .modeldisclaimer {
  	display: block;
    margin-top: -20px;
    margin-left: 1.6em;
  	line-height: 1.2em;
    color: var(--corporate);
    font-style: normal !important;
    opacity: 1 !important;
}


@media screen and (max-width: 1200px) {
  .instructionsbox .elementor-row > .elementor-inner-column:nth-of-type(1) { width: 50vw !important; min-width: 400px; }
  .instructionsbox .elementor-row > .elementor-inner-column:nth-of-type(2) { width: 50vw; max-width: calc(100vw - 400px) !important; }
}
@media screen and (max-width: 1024px) {
  .instructionsbox .elementor-widget-text-editor .elementor-widget-container { max-width: 300px; padding: 20px 40px 20px 20px; }
  .instructionsbox ul li { line-height: 1.4em; }
  .instructionsbox br { display: none; }
  .instructionsbox em { font-style: italic; opacity: 0.5; display: inline-block; padding-left: 7px; top: 0; }
  .instructionsbox .modeldisclaimer { margin-left: 0.9em; }
}
@media screen and (max-aspect-ratio: 1/1) {
    .instructionsbox .elementor-row > .elementor-inner-column:nth-of-type(1) { display: none; }
  	.instructionsbox { display: none; }
}
@media screen and (max-width: 767px) {
    .instructionsbox .elementor-row > .elementor-inner-column:nth-of-type(1) { display: none; }
  	.instructionsbox { display: none; }
}

.instructionsbox .elementor-widget-wrap {
  display: inline-block;
  position: relative;
  width: auto;
}
.instructionsbox .elementor-widget-text-editor {
  display: inline-block;
  position: relative;
  width: auto;
}
.instructionsbox ul {
  padding: 0;
  margin-left: 1.3em;
  margin-bottom: 0;
}
.instructionsbox ul li {
  padding: 1px 0 9px 0;
  color: #222222;
}

.instructionscloser {
  position: absolute;
  top: 10px;
  right: 15px;
  text-align: right;
}
.instructionscloser svg {
  width: 14px;
  height: 14px;
}
.instructionscloser svg path {
  	fill: #666666 !important;
}

@media screen and (max-width: 1250px) {
  .instructionsbox.down { top: 115px; }
  .instructionscloser { top: 0; right: -30px; text-align: left; }
}
@media screen and (max-width: 1024px) {
  .instructionscloser { top: 0px; right: -20px; }
}
@media screen and (max-width: 800px) {
  .instructionsbox.down { top: 180px; }
}

/* PROJEKTLABEL ------------------------------------------------------------------------------------------------------------------ */

.projektlabelcontainer {
  display: inline-block;
  position: fixed;
  bottom: 38px;
  left: 0;
  z-index: 99;
  transition: all .4s ease-in-out;
	display: none;
}
body.elementor-editor-active .projektlabelcontainer {
  position: relative;
  top: 0;
}
body.logged-in .projektlabelcontainer {
	display: inline-block;
}
.projektlabel img {
  	max-width: 180px;
  	margin-left: 10px;
	margin-bottom: 12px;
}
@media screen and (max-width: 1650px) {
  .projektlabel img {  margin-left: 0; margin-bottom: 0; background: rgba(255,255,255,0.8); max-width: 160px; }
}
@media screen and (max-width: 1024px) {  
  .projektlabel img { max-width: 150px; }
}
.projektlabel .elementor-row > .elementor-inner-column:nth-of-type(1) {  
  width: 33vw !important;
  min-width: 600px;
}
.projektlabel .elementor-row > .elementor-inner-column:nth-of-type(2) {  
  width: 67vw;
  max-width: calc(100vw - 600px) !important; 
}
@media screen and (max-aspect-ratio: 1/1) {
  .projektlabel { display: none; }
}
@media screen and (max-width: 767px) {
  .projektlabel { display: none; }
}

/* FARBLEGENDE ----------------------------------------------------------------------------------------------- */

.availabilitylegende {
  display: inline-block;
  position: fixed;
  bottom: -30px;
  z-index: 999;
  text-align: left;
  transition: all .4s ease-in-out;
}
.availabilitylegende.down {  
  bottom: 35px;
}
body.elementor-editor-active .availabilitylegende {
  position: relative;
  top: 0;
}
.availabilitylegende .elementor-row > .elementor-inner-column:nth-of-type(1) {  
  width: 33vw !important;
  min-width: 600px;
}
.availabilitylegende .elementor-row > .elementor-inner-column:nth-of-type(2) {  
  width: 67vw;
  max-width: calc(100vw - 600px) !important; 
}
.availabilitylegende .elementor-row > .elementor-inner-column:nth-of-type(2) .elementor-column-wrap {
  justify-content: flex-start;
}

@media screen and (max-width: 1200px) {
  .availabilitylegende .elementor-row > .elementor-inner-column:nth-of-type(1) { width: 50vw !important; min-width: 400px; }
  .availabilitylegende .elementor-row > .elementor-inner-column:nth-of-type(2) { width: 50vw; max-width: calc(100vw - 400px) !important; }
}
@media screen and (max-aspect-ratio: 1/1) {
  .availabilitylegende { display: none; }
}
@media screen and (max-width: 767px) {
  .availabilitylegende { display: none; }
}

.availabilitylegende .elementor-widget-wrap {
  display: inline-block;
  position: relative;
  width: auto;
}
.availabilitylegende .elementor-widget-text-editor {
  display: inline-block;
  position: relative;
  width: auto;
}
.availabilitylegende p {
  display: inline-block;
    font-size: 14px;
    padding: 0;
    margin: 0;
    margin-right: 10px;
    margin-left: 5px;
}
.availabilitylegende p::before {
  content: '\2022';
  line-height: 0;
  font-size: 80px;
  vertical-align: top;
  line-height: 12px; 
}
.availabilitylegende p:nth-of-type(1)::before {
  color: #068891; 
}
.availabilitylegende p:nth-of-type(2)::before {
  color: #ffd280;
}
.availabilitylegende p:nth-of-type(3)::before {
  color: #ff9380;
}

@media screen and (max-width: 1024px) {
  .availabilitylegende p { font-size: 12px; margin-right: 5px; margin-left: 0px; }
}
@media screen and (max-width: 900px) {
  .availabilitylegende { bottom: 32px; }
  .availabilitylegende p { display: block; line-height: 18px; }
  .availabilitylegende p::before { line-height: 5px; }
}

/* HELP POPUP --------------------------------------------------------------------------------------------- */

.helpbubble {
  padding: 0;
  margin: 0;
  display: inline-block;
  width: 45px !important;
  height: 45px !important;
  position: absolute;
  right: 10px;
  top: 30px;
  z-index: 100;
  transition: all 0.2s ease-in-out;
}
body.elementor-editor-active .helpbubble {
  position: relative;
  right: 0;
}
.helpbubble a {
}
.helpbubble svg {
  width: 100%;
  height: 100%;
}
.helpbubble svg path {
  fill: #ffffff;
}
.helpbubble svg path.corporate {
  fill: var(--corporate) !important;
}
.helpbubble svg:hover path.corporate {
  fill: #333333 !important;
}

.helppopups {
	position: fixed;
    left: calc(33vw + 20px);
    top: 120px;
    width: 100%;
    max-width: 400px;
    display: none;
    z-index: 999999;
    overflow: visible;
    background: #ffffff;
    border: var(--corporate) 2px solid;
    text-align: left;
    -webkit-box-shadow: 10px 10px 10px 0px rgb(0 0 0 / 40%);
    box-shadow: 10px 10px 10px 0px rgb(0 0 0 / 40%);
}
body.elementor-editor-active .helppopups { position: relative; right: 0; top: 0; display: block; }

.helppopups h3 {
  width: 80%;
  font-weight: 500 !important;
  color: var(--corporate);
  line-height: 1.4em;
  margin-top: 6px;
  font-size: 18px;
}
.helppopups p {
  font-size: 15px;
} 

.closehelppopup {
  position: absolute;
  right: 0;
  top: 0;
  text-align: right;
  z-index: 2;
}
.closehelppopup a {
  background: #ffffff;
  border-radius: 100%;
  display: inline-block;
  width: 35px;
  height: 35px;
}
.closehelppopup svg {
  width: 100%;
  height: 100%;
}
.closehelppopup svg path {
  fill: var(--corporate) !important;
}

@media screen and (max-width: 1820px) {
	.helppopups { left: 620px; }
}
@media screen and (max-width: 1200px) {
  .closehelppopup { top: 10px; left: 0; }
	.helppopups { left: calc(50vw + 20px); }
}
@media screen and (max-aspect-ratio: 1/1) {
  .helpbubble { display: none !important; z-index: -10; }
  .helppopups { position: fixed; left: 0; right: auto; top: 75px; height: 100%; width: 100%; max-width: 100%; min-width: 100%; }
  .helppopups { z-index: 999999; background: rgba(0,0,0,0.6); border: none; }
  .helppopups .elementor-inner-column { padding: 15px 5px; max-width: 500px; }
  .helppopups .elementor-inner-column .elementor-widget-wrap { background: #ffffff; padding: 10px; border: var(--corporate) 3px solid; }
  .closehelppopup a { margin-right: 10px; }
}
@media screen and (max-width: 767px) {
  .helpbubble { display: none !important; z-index: -10; }
  .helppopups { position: fixed; left: 0; right: auto; top: 75px; height: 100%; width: 100%; max-width: 100%; min-width: 100%; }
  .helppopups { z-index: 999999; background: rgba(0,0,0,0.6); border: none; }
  .helppopups .elementor-inner-column { padding: 15px 5px; max-width: 500px; }
  .helppopups .elementor-inner-column .elementor-widget-wrap { background: #ffffff; padding: 10px; border: var(--corporate) 3px solid; }
  .closehelppopup a { margin-right: 10px; }
}


/* trackercode in elementor view ---------------------------------------- */

body.elementor-editor-active .trackercode { max-width: 800px !important; }



/* ######################################### */
/* ############# LISTENANSICHT ############# */
/* ######################################### */


#listenansicht {
  	background-color: rgb(238,238,238);
  	z-index: 1;
  	min-height: calc(100vh - 35px);
  	padding-bottom: 100px;
	margin-top: 40px;
}
#listenansicht h2 {
  color: var(--corporate);
  margin-top: 10px !important;
  margin-bottom: 0 !important;
}
.listviewhint {
  margin-top: -12px;
  padding-left: 2px;
  font-size: 15px;
}
.listviewhint p {
  margin-top: 0;
}


@media screen and (max-width: 1024px) {
  #listenansicht h2 { margin-top: 0 !important; }
}
@media screen and (max-aspect-ratio: 1/1) {
  #listenansicht { width: 100vw; max-width: 100vw; min-width: 100vw; min-height: calc(100vh - 100px); top: 300px !important; transition: margin .5s ease-in-out; }
  #listenansicht .elementor-column-wrap { padding: 0 !important; }
  #listenansicht.hauptcontent .elementor-inner-section { width: calc(100% - 10px); top: 30px; min-height: calc(100vh - 160px); padding-left: 10px !important; }
  #listenansicht h2 { text-align: center; }
  .listviewhint { display: none; }
}
@media screen and (max-width: 767px) {
  #listenansicht { width: 100vw; max-width: 100vw; min-width: 100vw; min-height: calc(100vh - 100px); top: 250px !important; transition: margin .5s ease-in-out; }
  #listenansicht .elementor-column-wrap { padding: 0 !important; }
  #listenansicht.hauptcontent .elementor-inner-section { width: calc(100% - 10px); top: 30px; min-height: calc(100vh - 160px); padding-left: 10px !important; }
  #listenansicht h2 { text-align: center; }
  .listviewhint { display: none; }
}

#listenbox table tbody {
  background-color: #fff;
}

#listenbox table th {
  font-weight: 500;
}
#listenbox table tbody tr.flatListStatus1 {  
  cursor: pointer;
}
#listenbox table tbody tr.flatListStatus1:hover {  
  background: #ffffff;
}

/* cell classes in the list view
whgname
whgrooms
whgfloor
whgsize
whgfreisitz
whgpreis
whgstatus
whgpreview
*/

#listenbox table td, #listenbox table th {
  border-bottom: 1px solid #000;
  padding: 15px 0;
  text-align: center;
  white-space: nowrap;
}
#listenbox table tr td.whgname, #listenbox table tr th.whgname {
  width: 120px;
}
#listenbox table tr td.whgsize, #listenbox table tr th.whgsize, #listenbox table tr td.whgpreis, #listenbox table tr th.whgpreis {
  text-align: right; 
}
#listenbox table tr td.whgsize::after {
  content: " m\00b2 \00a0";
}
#listenbox table tr td.whgfreisitz, #listenbox table tr th.whgfreisitz {
  display: none;
}
#listenbox table tr td.whgpreview, #listenbox table tr th.whgpreview {
  width: 120px;
}
#listenbox table tr td.whgfreisitz {
  text-transform: capitalize;
}
#listenbox table tr th.whgpreis::after {
  content: " (\20AC) ";
}
#listenbox table tr td.whgpreis::after {
  content: ",-";
}


.listviewlegend {
  display: none;
  padding-top: 8px;
  font-size: 13px !important;
  color: #444444;
}
.listviewlegend .dot0, .listviewlegend .dot1, .listviewlegend .dot2 {
  display: inline-block; 
  width: 10px;
  height: 10px;
  border-radius: 100%;
}
.listviewlegend .dot0 {
  background-color: var(--verkauft);
}
.listviewlegend .dot1 {
  background-color: var(--frei);
 	margin-left: 15px;
}
.listviewlegend .dot2 {
  background-color: var(--reserviert);
 	margin-left: 15px;
}

@media screen and (max-aspect-ratio: 1/1) {
  	#listenbox { padding-top: 10px; }
  	#listenbox table { max-width: calc(100vw - 20px) !important; border-top: #333333 1px solid; }
	#listenbox table tr th { white-space: initial; vertical-align: top; line-height: 1em; background: #ffffff; font-size: 13px !important; }
	#listenbox table tr td, #listenbox table tr th { width: auto !important; min-width: 40px; text-align: center !important; border-left: rgba(0,0,0,0.1) 1px solid; }
  	#listenbox table tr th { padding-left: 2px; padding-right: 2px; }
	#listenbox table tr td { font-size: 14px !important; }
	#listenbox table tr td.whgname, #listenbox table tr th.whgname { width: 70px !important; }
	#listenbox table tr td.whgpreview, #listenbox table tr th.whgpreview { width: 70px !important; border-right: rgba(0,0,0,0.1) 1px solid; }
  	#listenbox table tr th.whgsize::after { content: " m\00b2"; }
  	#listenbox table tr td.whgsize::after { content: ""; }
  	#listenbox table tr th.whgpreis::after { content: " \20AC"; }
  	#listenbox table tr td.whgstatus .statusdot { display: inline-block; width: 16px; height: 16px; border-radius: 100%; }
  	#listenbox table tr.flatListStatus0 td.whgstatus .statusdot { background: var(--verkauft); }
  	#listenbox table tr.flatListStatus1 td.whgstatus .statusdot { background: var(--frei); }
  	#listenbox table tr.flatListStatus2 td.whgstatus .statusdot { background: var(--reserviert); }
  	.listviewlegend { display: block; text-align: center; }
}
@media screen and (max-width: 767px) {
  	#listenbox { padding-top: 10px; }
  	#listenbox table { max-width: calc(100vw - 20px) !important; border-top: #333333 1px solid; }
	#listenbox table tr th { white-space: initial; vertical-align: top; line-height: 1em; background: #ffffff; font-size: 13px !important; }
	#listenbox table tr td, #listenbox table tr th { width: auto !important; min-width: 40px; text-align: center !important; border-left: rgba(0,0,0,0.1) 1px solid; }
  	#listenbox table tr th { padding-left: 2px; padding-right: 2px; }
	#listenbox table tr td { font-size: 14px !important; }
	#listenbox table tr td.whgname, #listenbox table tr th.whgname { width: 70px !important; }
	#listenbox table tr td.whgpreview, #listenbox table tr th.whgpreview { width: 70px !important; border-right: rgba(0,0,0,0.1) 1px solid; }
  	#listenbox table tr th.whgsize::after { content: " m\00b2"; }
  	#listenbox table tr td.whgsize::after { content: ""; }
  	#listenbox table tr th.whgpreis::after { content: " \20AC"; }
  	#listenbox table tr td.whgstatus .statusdot { display: inline-block; width: 16px; height: 16px; border-radius: 100%; }
  	#listenbox table tr.flatListStatus0 td.whgstatus .statusdot { background: var(--verkauft); }
  	#listenbox table tr.flatListStatus1 td.whgstatus .statusdot { background: var(--frei); }
  	#listenbox table tr.flatListStatus2 td.whgstatus .statusdot { background: var(--reserviert); }
  	.listviewlegend { display: block; text-align: center; }
}

/* hide the price */
#listenbox table tr th.whgpreis, #listenbox table tr td.whgpreis {
  display: none;
}
/* limit the table width if the price is hidden */
#listenbox table {
  max-width: 700px;
  margin: 0 auto;
}
/* --------------- */

.listPreview {
  cursor: pointer;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  vertical-align: middle !important;
}
.listPreview img {
  width: 34px;
  height: 29px;
  background-color: var(--corporate);
}
.listPreview svg path {
  fill: #444444;
}

#switchcontainer {
  z-index: 2;
  width: 195px;
  height: 40px;
  position: fixed;
  right: -200px;
  top: 135px;
  transition: right .4s ease-in-out .5s;
}
#switchcontainer.ausgeblendet {
  display: none !important;
  z-index: -1 !important
}
#switchcontainer.showSwitch {
  right: 0;
}
#displaySwitch {
  background-image: url('../switch_mobil.png');
  background-color: var(--corporate);
  background-repeat: no-repeat;
  color: transparent;
  width: 195px;
  height: 40px;
  background-position: 0 0;
}
body.lang_EN #displaySwitch {
  background-image: url('../switch_mobil_EN.png');
}
#displaySwitch:hover {
  cursor: pointer;
  background-image: url('../switch_mobil.png');
  background-position: 0 0;
  background-color: #333333;
}
body.lang_EN #displaySwitch:hover {
  background-image: url('../switch_mobil_EN.png');
}

@media screen and (max-width: 1024px) {
  #switchcontainer { top: 120px; }
}
@media screen and (max-aspect-ratio: 5/4) {
  #switchcontainer { z-index: 999999 !important; white-space: nowrap; position: absolute; top: 5px; right: -300px; left: auto; width: 180px; height: 40px; }
  #switchcontainer.showSwitch { right: 0; }
  #displaySwitch { position: relative; right: 0; top: 0; left: auto; width: auto; border: #ffffff 1px solid; border-right-width: 0; }
  #displaySwitch { background-color: rgba(0,0,0,0); }
  #displaySwitch:hover { background-color: rgba(0,0,0,0); } 
}
@media screen and (max-width: 767px) {
  #switchcontainer { z-index: 999999 !important; white-space: nowrap; position: absolute; top: 5px; right: -300px; left: auto; width: 180px; height: 40px; }
  #switchcontainer.showSwitch { right: 0; }
  #displaySwitch { position: relative; right: 0; top: 0; left: auto; width: auto; border: #ffffff 1px solid; border-right-width: 0; }
  #displaySwitch { background-color: rgba(0,0,0,0); }
  #displaySwitch:hover { background-color: rgba(0,0,0,0); } 
}
@media screen and (max-height: 700px) {
	#switchcontainer { top: -2px; }
}

body.elementor-editor-active #switchcontainer {
  position: relative;
  right: 0;
  top: 0;
}

/* EXPOSE FORMULAR -------------------------------------------------------------------------------------------------------- */

.exposedownloadcontainer {
	padding-bottom: 100px;
}
.exposedownloadcontainer .elementor-inner-column.textcolumn {
  width: 50%;
  min-width: 480px;
}
@media screen and (max-width: 1300px) {
  .exposedownloadcontainer .elementor-inner-column.textcolumn { min-width: 400px; width: 100% !important; }
}
@media only screen and (max-width: 1024px) {
  .exposespacer { display: none; } 
}
@media screen and (max-aspect-ratio: 1/1) {
  .contentElem2.hauptcontent { height: calc(100vh - 160px); overflow-y: scroll; padding-bottom: 20px; }
  .exposedownloadcontainer .elementor-inner-column.textcolumn { width: 100vw; min-width: 300px; }
  .exposedownloadcontainer .elementor-column-wrap { padding: 10px 20px !important; } 
}
@media screen and (max-width: 767px) {
  .contentElem2.hauptcontent { height: calc(100vh - 160px); overflow-y: scroll; padding-bottom: 20px; }
  .exposedownloadcontainer .elementor-inner-column.textcolumn { width: 100vw; min-width: 300px; }
  .exposedownloadcontainer .elementor-column-wrap { padding: 10px 20px !important; } 
}


#exposeauswahl {
 margin-top: -15px;
}
#exposeauswahl .row_auswahl:nth-of-type(1) {
  border-top: #dddddd 1px solid;
}
#exposeauswahl .thumbnails {
  
}
@media screen and (max-aspect-ratio: 1/1) {
  #exposeauswahl .row_auswahl:nth-of-type(1) { border-top: #cccccc 1px solid; }
}
@media screen and (max-width: 767px) {
  #exposeauswahl .row_auswahl:nth-of-type(1) { border-top: #cccccc 1px solid; }
}
.row_auswahl {
  border-bottom: #dddddd 1px solid;
  padding: 1px 0 1px 0;
}
.row_auswahl p {
  margin: 0;
}
.check_auswahl {
  display: inline-block;
    width: 34px;
    padding-left: 2px;
}
.tn_auswahl {
  display: inline-block;
  width: 20px;
  position: relative;
}
.tn_auswahl img {
  vertical-align: top;
 	padding-top: 2px;
}
.tn_auswahl img:hover {
  cursor: pointer;
}
.tn_auswahl .auswahlzoom {
  display: none;
  position: absolute;
  top: 30px;
  left: 30px;
  z-index: 9999;
  width: 300px;
  height: 300px;
}
.tn_auswahl .auswahlzoom img {
  width: 100%;
  height: auto;
  border: var(--corporate) 1px solid;
  -webkit-box-shadow: 6px 6px 6px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 6px 6px 6px 0px rgb(0 0 0 / 20%);
  background-color: #ffffff;
}

.text_auswahl {
  width: calc(100% - 60px);
  display: inline-block;  
  margin-left: 5px;
}
.text_auswahl span {
  display: inline-block;
  margin-left: 10px;
}
.text_auswahl .whgnummer {
  width: calc(30% - 10px);
}
.text_auswahl .whgsize {
  width: calc(35% - 15px);
  text-align: right;
}
.text_auswahl .whgpreis {
  width: calc(35% - 15px);
  text-align: right;
}

@media screen and (max-width: 1300px) {
	.text_auswahl .whgnummer { width: calc(20% - 10px); }
	.text_auswahl .whgsize { width: calc(40% - 15px); }
	.text_auswahl .whgpreis { width: calc(40% - 15px); }
}
@media screen and (max-aspect-ratio: 1/1) {
  	.tn_auswahl .auswahlzoom { left: 0; }  
}
@media screen and (max-width: 767px) {
  	.tn_auswahl .auswahlzoom { left: 0; }  
}  

#pleaseselectaflat {
  display: none;
  padding-bottom: 20px;
}
body.elementor-editor-active #pleaseselectaflat {
  display: block;
}
#pleaseselectaflat .elementor-text-editor {
  background: #444444;
  border-radius: 2px;
}
#pleaseselectaflat p {
  padding: 15px;
  margin: 0;
  color: #cccccc;
  font-style: italic;
}
#pleaseselectaflat p:nth-last-of-type(1) {
  padding-top: 0;
}
#pleaseselectaflat a {
  color: #ffffff;
  padding-left: 20px;
  background-image: url(../Arrow_left.png);
  background-repeat: no-repeat;
  background-size: 15px;
  background-position: 0 3px;
}
#pleaseselectaflat a:hover {
  color: var(--corporate);
}

/* nice checkboxes */
.nicecheckboxes label {
  margin-bottom: 0;
}
.nicecheckboxes .thumbnails label {
  top: -16px;
}

/* Base for label styling */
.nicecheckboxes [type="checkbox"]:not(:checked),
.nicecheckboxes [type="checkbox"]:checked {
    position: absolute;
    left: 0;
    opacity: 0.01;
  }
.nicecheckboxes [type="checkbox"]:not(:checked) + label,
.nicecheckboxes [type="checkbox"]:checked + label {
    position: relative;
    padding-left: 32px;
    font-size: 1em;
    line-height: 1.4em;
    cursor: pointer;
  }

  /* checkbox aspect */
.nicecheckboxes [type="checkbox"]:not(:checked) + label:before,
.nicecheckboxes [type="checkbox"]:checked + label:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 20px;
    height: 20px;
    border: 1px solid var(--corporate);
    background: var(--corporate);
    border-radius: .2em;
    /*
    box-shadow: inset 0 1px 3px rgba(0,0,0, .1), 0 0 0 rgba(203, 34, 237, .2);
    */
    -webkit-transition: all .475s;
        transition: all .475s;
  }

  /* checked mark aspect */
.nicecheckboxes [type="checkbox"]:not(:checked) + label:after,
.nicecheckboxes [type="checkbox"]:checked + label:after {
    content: '✕';
    content: '\2713';
    position: absolute;
    top: 10px;
    left: 2px;
    font-size: 18px;
    font-weight: bold;
    color: #ffffff;
    line-height: 0;
    -webkit-transition: all .2s;
        transition: all .2s;
  }

  /* checked mark aspect changes */
.nicecheckboxes [type="checkbox"]:not(:checked) + label:after {
    opacity: 0;
    -webkit-transform: scale(0) rotate(-180deg);
        transform: scale(0) rotate(-180deg);
  }

.nicecheckboxes [type="checkbox"]:checked + label:after {
    opacity: 1;
    -webkit-transform: scale(1) rotate(0);
        transform: scale(1) rotate(0);
  }

  /* Accessibility */
.nicecheckboxes [type="checkbox"]:checked:focus + label:before,
.nicecheckboxes [type="checkbox"]:not(:checked):focus + label:before {
    box-shadow: inset 0 1px 3px rgba(0,0,0, .1), 0 0 0 6px rgba(203, 34, 237, 0);
  }

@media screen and (max-aspect-ratio: 1/1) {
    .exposedownloadcontainer .exposecolumn .elementor-column-wrap { padding: 10px 20px !important; }
}
@media screen and (max-width: 767px) {
    .exposedownloadcontainer .exposecolumn .elementor-column-wrap { padding: 10px 20px !important; }
}

#exposeauswahl .extras {
  line-height: 1.8em;
}
#exposeauswahl .extras input {
  margin-right: 10px;
}

.exposevisual img {
  width: 100%;
  min-width: 140px;
  max-width: 400px;
}
.exposedownload {
  width: 11vw;
  max-width: 180px;
  padding: 12px;
  background: var(--corporate);
  border: #ffffff 5px solid;
  border-radius: 100%;
  -webkit-box-shadow: 10px 15px 15px 0px rgba(0, 0, 0, 0.3);
	box-shadow: 10px 15px 15px 0px rgb(0 0 0 / 30%);
    position: absolute;
    left: -70px;
    top: 150px;
  transition: all .4s ease-in-out;
}
body.elementor-editor-active .exposedownload {
  position: relative;
  left: 0;
  top: 0;
}
.exposedownload.over {
  background: #222222;
}
.exposedownload.pulse {
  transform: scale(1.05);
}
.exposedownload.disabled, .exposedownload.disabled.over {
  transform: scale(1) !important;
	background: #cccccc;
}

@media (max-width: 1400px) {
  .exposevisual .elementor-widget-container { margin: 0 !important; }
  .exposedownload { position: relative; left: -50px; top: -80px; }
}
@media only screen and (max-width: 1024px) {
  .exposedownload { left: 90%; top: -60%; }
}
@media screen and (max-aspect-ratio: 1/1) {
  .exposevisual { width: 60% !important; }
  .exposedownload { position: absolute; left: 50%; top: 10%; max-width: 160px; background: var(--contrast); }
}
@media (max-width: 767px) {
  .exposevisual { width: 60% !important; }
  .exposedownload { position: absolute; left: 50%; top: 10%; max-width: 160px; background: var(--contrast); }
}

/* team signoff and newsletter link */

.signoff {
  margin-bottom: 5px !important;
  text-align: left;
	display: none;
}
body.elementor-editor-active .signoff {
	background: #ffffff;
	display: block;
}
.signoff h4 {
  display: inline-block;
  margin-bottom: 0;
}
.signoff p {
}
.signoff span {
  position: relative;
  top: 2px;
  font-size: 18px;
}
.signoff a {
  font-weight: 500;
  font-size: 18px;
  color: var(--corporate);
  background-color: var(--corporate);
  background-image: url(../Arrow_Newsletter.png);
  background-repeat: no-repeat;
  background-position: -10px 50%;
  padding-left: 26px;
}
.signoff a:hover {
  color: #000000;
  background-color: #000000;
}

@media screen and (max-aspect-ratio: 1/1) {
  .signoff { position: relative; left: 0; bottom: 0; padding-left: 20px; }
  .signoff h4 { font-size: 19px; }
  .signoff a { display: none; }
}
@media (max-width: 767px) {
  .signoff { position: relative; left: 0; bottom: 0; padding-left: 20px; }
  .signoff h4 { font-size: 19px; }
  .signoff a { display: none; }
}

/* ############################################################ */
/* ##################### PDF GENERIERUNG ###################### */
/* ############################################################ */


/*ERSTELLUNG*/
#exposesBox {
    margin-top: 50px;
  display: none;
	
}
.exposeParents {
	width: fit-content;
    margin: 0 auto;
	margin-bottom: 50px;
}
.exposesHL {
	display: inline-block;
    text-align: left;
}
.exposeParents:hover .exposesHL {
	text-decoration: underline;
}
.pdfImage {
	width: 45px;
	margin-right: 25px;
}


/*ANZEIGE:*/
#pdfBG {
	position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0,0,0,.75);
}

#pdfBG iframe {
	width: 80vw;
    height: 85vh;
    margin: 10vh 10vw;
	background-color: #fff;
}

/* ############################################################ */
/* ################### END PDF GENERIERUNG #################### */
/* ############################################################ */


/* ############################################################ */
/* ######################## LOGIN FORM ######################## */
/* ############################################################ */


#loginformular {
  width: 100%;
  max-width: 100% !important;
  z-index: 51;
	/*
  display: none;
	*/
}

#loginformular .elementor-background-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
}
@media only screen and (max-width: 767px) {
  #loginformular .elementor-background-overlay { opacity: 0; }
}

body.elementor-editor-active #loginformular { position: relative !important; }
body.elementor-editor-active #loginformular .elementor-background-overlay { position: absolute !important; width: 100% !important; max-width: 100%; height: 100%; }



@media only screen and (max-aspect-ratio: 3/2) {
	#loginformular { position: fixed; top: 15px; left: 0; background-color: #ffffff; margin: 0; padding: 0; width: 100vw; height: 100vh; overflow-y: scroll; }
	#loginformular .elementor-column-gap-wider .elementor-row .elementor-column .elementor-element-populated { padding: 0; }
}
@media screen and (max-width: 1024px) {
	#loginformular { position: fixed; top: 15px; left: 0; background-color: #ffffff; margin: 0; padding: 0; width: 100vw; height: 100vh; overflow-y: scroll; }
	#loginformular .elementor-column-gap-wider .elementor-row .elementor-column .elementor-element-populated { padding: 0; }
}

.selected-flats-preview {
  flex: 1
}

#userRegBG {
	height: auto;
	width: auto;
	position: relative;
	top:0;
	left:0;
	z-index: 999;
  	text-align: center; 
    display: flex;
    width: 80%;
    margin: 0 auto;
}
body.mobiledevice #userRegBG {
	height: auto;
    min-height: 100vh;
	padding-top: 30px;
	overflow-y: scroll;
}
#userReg {
	position: relative;
	width: 100%;
  	min-width: 560px;
  	max-width: calc(100% - 60px);
	margin-top: 0;
  	display: inline-block;
  	text-align: left;
  	margin: 0 auto;
  	flex: 2;
}

@media screen and (max-width: 1024px) {
  #userReg { max-width: 500px; min-width: 500px; }
}
@media screen and (max-aspect-ratio: 1/1) {
  #userReg { width: 100vw; min-width: 100vw; max-width: 100vw; top: 10px; }
}
@media screen and (max-width: 767px) {
  #userReg { width: 100vw; min-width: 100vw; max-width: 100vw; top: 10px; }
}

#userRegText {
	margin: 15px;
	padding-top: 15px;
display: none;
}

.hint {
	color: var(--green);
}

.lrm-user-modal-container {
  margin-top: 30px !important;
}

.selected-flats-preview h3 {
  min-height: 44px;
  max-width: 80%;
  line-height: 44px;
  background-color: rgba(136,155,163,1);
  color: #333333;
  padding: 0 10px;
  height: auto;
  font-size: 16px;
  font-style: normal;
  font-variant-alternates: normal;
  font-variant-caps: normal;
  font-variant-east-asian: normal;
  font-variant-ligatures: normal;
  font-variant-numeric: normal;
  font-variant-position: normal;
  font-weight: 500;
  margin: 0 auto;
  margin-bottom: 20px;
}

#userRegCloser {
	position: absolute;
	cursor: not-allowed;
  	width: 40px;
  	height: 40px;
  	right: -40px;
  	top: -70px;
	border: var(--corporate) 2px solid;
	border-radius: 100%;
display:none;
}
/* from Bauwens */
#userRegCloser {
  	cursor: pointer;
	position: absolute;
  	width: 40px;
  	height: 40px;
  	right: -40px;
  	top: -70px;
	border: var(--corporate) 2px solid;
	border-radius: 100%;
}
/* --- */

#userRegCloser svg {
  	width: 40px;
	height: 40px;
	position: relative;
	left: -2px;
	top: -2px;
}
#userRegCloser svg path {
  fill: var(--corporate);
}
#userRegCloser:hover svg path {
	fill: #000000;
}


@media screen and (max-height: 700px) {
  #userRegBG { padding-top: 0; }
}

/* MODAL LOGIN & REGISTER /////////////////////////////////////////////////////////////////////////////////////////////// */

.lrm-user-modal-container {
  max-width: 700px;
  background: rgba(255,255,255,0);
  margin: 0 auto;
  border: none !important;
  width: 100%;
}
.lrm-user-modal-container * {
  font-weight: 500 !important;
}
.lrm-user-modal-container .lrm-switcher {
  background: var(--corporate);
  width: calc(100% - 40px);
  margin-left: 20px !important;
  margin-top: 6px !important;
}
.lrm-user-modal-container .lrm-switcher li a {
  height: 44px;
  line-height: 44px;
  background-color: #e2e2e2;
  color: #333333;
}
.lrm-user-modal-container .lrm-switcher li a {
 border-radius: 0 !important; 
}
.lrm-user-modal-container .lrm-switcher li a.selected {
  background-color: rgba(255,255,255,0.5) !important;
  color: #333333 !important;
}
.lrm-font-svg .lrm-switch-to-link::before {
    width: 0;
}
.lrm-user-modal-container-inner {
  background: rgba(255,255,255,0);
}
@media screen and (max-width: 1024px) {
  .lrm-user-modal-container { margin: 0 auto; }
}
@media screen and (max-aspect-ratio: 1/1) {
  .lrm-user-modal-container { width: 100% !important; }
  .lrm-user-modal-container .lrm-switcher { width: 100% !important; margin-left: 0 !important; margin-top: 0 !important; }
  .lrm-user-modal-container .lrm-switcher li a { font-size: 15px; }
}
@media screen and (max-width: 767px) {
  .lrm-user-modal-container { width: 100% !important; }
  .lrm-user-modal-container .lrm-switcher { width: 100% !important; margin-left: 0 !important; margin-top: 0 !important; }
  .lrm-user-modal-container .lrm-switcher li a { font-size: 15px; }
  
}

/* login form */
.notregistered {
  position: absolute;
  top: 44px;
  right: 10px;
  line-height: 30px;
  color: var(--corporate);
}
.notregistered svg {
  width: 16px;
    height: 18px;
    top: -3px;
    position: relative;
}
.notregistered svg path {
  fill: var(--corporate) !important;
}


.lrm-signup-section form.lrm-form {
  position: relative;
}
.lrm-signup-section .pflichtfeldhinweis {
  	display: block;
  	position: absolute;
  	top: 50px;
	right: 20px;
}
.lrm-signup-section .pflichtfeldhinweis span {
  font-size: 12px;
}	
@media only screen and (max-width: 900px) {
  .lrm-signup-section .pflichtfeldhinweis { top: 13px; }
}
@media only screen and (max-width: 380px) {
  .lrm-signup-section .pflichtfeldhinweis { display: none; }
}


.lrm-signin-section.is-selected .lrm-fieldset-wrap {
  width: 340px !important;
  margin: 0 auto;
}
.lrm-signin-section.is-selected .fieldset--submit button {
  width: 300px !important;
  margin: 0 auto;
}
@media screen and (max-aspect-ratio: 1/1) {
  .lrm-signin-section.is-selected .lrm-form { padding-top: 50px !important; }
}
@media screen and (max-width: 767px) {
  .lrm-signin-section.is-selected .lrm-form { padding-top: 50px !important; }
}

/* registration form */
.lrm-username {
  background-image: url(https://epple-hilde.flatfinder.de/wp-content/uploads/ff_icon_user.svg) !important;
  background-size: 30px !important;
}
.lrm-email {
  background-image: url(https://epple-hilde.flatfinder.de/wp-content/uploads/ff_icon_at.svg) !important;
  background-size: 30px !important;
}
.lrm-address {
  background-image: url(https://epple-hilde.flatfinder.de/wp-content/uploads/ff_icon_marker.svg) !important;
  background-size: 30px !important;
}
.lrm-phone {
  background-image: url(https://epple-hilde.flatfinder.de/wp-content/uploads/ff_icon_phone.svg) !important;
  background-size: 30px !important;
}
.lrm-password {
  background-image: url(https://epple-hilde.flatfinder.de/wp-content/uploads/ff_icon_key.svg) !important;
  background-size: 30px !important;
}

.lrm-form * {
  -webkit-user-select: initial;
    -ms-user-select: initial;
    user-select: initial;
}

.lrm-form {
  padding: 50px 0 0 !important;
  font-size: 14px !important;
}
.lrm-form div, .lrm-form label, .lrm-form input {
  font-size: 14px !important;
}
.lrm-user-modal-container input[type="text"], .lrm-user-modal-container input[type="url"], .lrm-user-modal-container select, .lrm-user-modal-container textarea {
    background-color: #ffffff;
    color: #444444;
    border-radius: 0;
}
.lrm-form input.has-border, .lrm-form select.has-border {
    border: 1px solid var(--corporate);
  border-radius: 0;
}
.lrm-form input.has-padding {
  	padding: 6px 10px 6px 38px;
}

form.lrm-form[data-action="login"] .fieldset {
  margin: 30px 0;
}

.lrm-form .fieldset--submit {
  text-align: center;
  margin-top: 40px;
  padding-top: 40px !important;
  padding-bottom: 20px !important;
	margin-bottom: 0;
  width: calc(100% - 40px);
	margin-left: 20px !important;
	margin-right: 20px;
}
.lrm-form button, .lrm-form button[type="submit"] {
  background: var(--corporate);
  font-size: 18px;
  font-weight: normal;
	padding: 6px 10px;
  border-radius: 0;
	width: auto !important;
}
@media screen and (max-aspect-ratio: 1/1) {
  .lrm-form button, .lrm-form button[type="submit"] { background: #444444; width: 100% !important; }
}
@media screen and (max-width: 767px) {
  .lrm-form button, .lrm-form button[type="submit"] { background: #444444; width: 100% !important; }
}

.lrm-form .trenner {
  width: 100%;
  padding: 10px 0;
  margin-top: 20px;
  border-top: var(--corporate) 1px solid;
  color: var(--corporate);
}
.rlm-form .trenner.shortversion {
	display: none;
}
.customfields {
  text-align: left;
  font-weight: normal;
}
.customfields label {
  font-weight: normal;
  margin-right: 10px;
}
.customfields .fieldset {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.etikett {
  display: inline-block;
  width: 170px;
}
.etikett.short {
  width: 70px;
}

.lrm-row {
  margin: 7px 0;
}
.lrm-col {
    padding: 0 !important;
}
.lrm-col-half-width, .lrm-col-1-2 {
  width: calc(50% - 5px);
}
.lrm-col-half-width:not(:nth-last-of-type(1)), .lrm-col-1-2:not(:nth-last-of-type(1)) {
  margin-right: 10px;
}

.lrm-form .fieldset {
  margin: 7px 0;
}
.fieldset--first-name {
  display: inline-block;
  width: calc(50% - 5px);
  margin-right: 0 !important;
}
.fieldset--last-name {
  display: inline-block;
  width: calc(50% - 5px);
  margin-left: 10px !important;
}
.fieldset--email {
  display: inline-block;
  width: calc(50% - 5px);
}
.fieldset--telefon {
  width: calc(50% - 5px);
  display: inline-block;
  margin-left: 10px !important;
}
.fieldset--strassenr {
  width: calc(50% - 5px);
  display: inline-block;
}
.fieldset--plzort {
  width: calc(50% - 5px);
  display: inline-block;
  margin-left: 10px !important;
}
.fieldset--username {
  display: inline-block;
  width: calc(50% - 5px);
}
.fieldset--password {
  width: calc(50% - 5px);
  display: inline-block;
  margin-left: 5px !important;
}
.lrm-pass-strength-result {
  position: absolute;
  left: -9999px;
  display:none;
}
.fieldset--terms {  
  border-top: var(--corporate) 1px solid;
}

.lrm-nice-checkbox__label .lrm-nice-checkbox__indicator {
    border: 1px solid var(--corporate);
}
.lrm-nice-checkbox__label input:checked ~ .lrm-nice-checkbox__indicator {
    background: var(--corporate);
    border-color: var(--corporate);
}
.lrm-nice-checkbox__label .lrm-nice-checkbox__indicator:after {
    top: 0px;
    left: 6px;
    width: 7px;
    height: 13px;
    transform: rotate(40deg); 
}

.lrm-form label.image-replace, .lrm-form .lrm-image-replace {
    left: 0;
    top: 50%;
    color: #ffffff;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-color: var(--corporate);
    width: 30px;
    height: 30px !important;
}  

@media screen and (max-width: 1024px) {
  .etikett:not(.short) { display: block; }
}
@media screen and (max-aspect-ratio: 1/1) {
  .lrm-form { padding-top: 12px !important; }
  .lrm-row { margin: 4px 0; }
  .lrm-form .fieldset { margin: 4px 0; }
  .fieldset--first-name { margin-right: 0 !important; }
  .fieldset--last-name { margin-left: 6px !important; }
  .fieldset--terms .lrm-nice-checkbox__label { margin: 10px 0 3px; line-height: 14px; font-size: 12px !important; }
  .lrm-form .fieldset--submit { padding-top: 8px !important; padding: 10px 0 20px 0 !important; }
  .etikett:not(.short) { display: block; }
  .lrm-form .trenner { margin-top: 10px; padding: 6px 0; }
}
@media screen and (max-width: 767px) {
  .lrm-form { padding-top: 12px !important; }
  .lrm-row { margin: 4px 0; }
  .lrm-form .fieldset { margin: 4px 0; }
  .fieldset--first-name { margin-right: 0 !important; }
  .fieldset--last-name { margin-left: 6px !important; }
  .fieldset--terms .lrm-nice-checkbox__label { margin: 10px 0 3px; line-height: 14px; font-size: 12px !important; }
  .lrm-form .fieldset--submit { padding-top: 8px !important; padding: 10px 0 20px 0 !important; }
  .etikett:not(.short) { display: block; }
  .lrm-form .trenner { margin-top: 10px; padding: 6px 0; }
}

@media screen and (max-height: 700px) {
  	#userRegBG { padding-top: 0; }
  	body.mobiledevice #userRegBG { padding-top: 0; }
	.lrm-user-modal-container .lrm-switcher li a { height: 30px; line-height: 30px; }
	.lrm-form label.image-replace, .lrm-form .lrm-image-replace { height: 24px !important; }
	.lrm-form input.has-padding { padding-top: 2px; padding-bottom: 2px; }
	.lrm-form .trenner.fullversion { display: none !important; }
	.lrm-form .trenner.shortversion { display: block; }
}



/* COOKIEHINWEIS ----------------------------------------------------------------------------------------------------------------------- */

/* 
body.c_c_r #tarteaucitronRoot { display: none !important; }
*/

#tarteaucitronAlertBig {
	background: rgba(0,0,0,0.8) !important;
	padding-top: 30px !important;
	padding-bottom: 50px !important;
}
#tarteaucitronDisclaimerAlert p {
	color: #ffffff !important;
	font-family: 'Montserrat', sans-serif !important;
}
#tarteaucitronDisclaimerAlert a {
	color: #ffffff !important;
	font-family: 'Montserrat', sans-serif !important;
	text-decoration: underline;
}
.tarteaucitronBorder {
	text-align: left;
}
#tarinner {
	margin: 0 auto;
	max-width: 900px;
}
.dsgvonoticebtns span {
	border-radius: 5px;
	font-weight: 600;
	background: var(--corporate) !important;
}
.dsgvonoticebtns span:nth-of-type(1) {
	background: #43b5b8 !important;
	color: #000000 !important;
}

div#tarteaucitronServices * {
    font-family: 'Montserrat', sans-serif !important;
}
#tarteaucitronClosePanel {
    font-family: 'Montserrat', sans-serif !important;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine {
    border-top-left-radius: 5px;
}
#tarteaucitron .tarteaucitronBorder {
    background: var(--corporate) !important;
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
}
.tarteaucitronName b {
	color: #ffffff !important;
}

@media only screen and (max-width: 800px) {
	.dsdvo-cookie-notice.style1 #tarteaucitronAlertBig { padding-top: 30px !important; padding-bottom: 50px !important; }
	.dsdvo-cookie-notice.style1 #tarteaucitronDisclaimerAlert { width: 80% !important; }
	.dsgvonoticebtns span { max-width: 150px; }	
	#tarteaucitron, #tarteaucitronAlertSmall #tarteaucitronCookiesListContainer { top: 50% !important; bottom: auto !important; margin: 5% !important; transform: translateY(-50%); }
	#tarteaucitron, #tarteaucitronAlertSmall #tarteaucitronCookiesListContainer { width: 90% !important; height: auto !important; background: rgba(0,0,0,0) !important; }
}
@media only screen and (max-width: 600px) {
	.dsdvo-cookie-notice.style1 #tarteaucitronAlertBig { padding-top: 30px !important; padding-bottom: 50px !important; }
	.dsdvo-cookie-notice.style1 #tarteaucitronDisclaimerAlert { width: 80% !important; }
	.dsgvonoticebtns span { max-width: 40%; display: block !important; margin: 0 auto !important; }
}



.fa, .far, .fas {
    font-family: "Font Awesome 5 Free" !important;
}

/* ######################## LOGIN FORM ######################## */
/* ############################################################ */

/* DREHWURM ----------------------------------------------------------------------------------- */
@media only screen and (min-aspect-ratio: 3/2) and (max-width: 767px) {
    #orientationWarning{
        position: fixed;
        left: 0;
        top: 0;
        color: #fff;
        background-color: var(--corporate);
        text-align: center;
        background-image: url('../warning.png');
        width: 100vw;
        height: 100vh;
        background-size: contain;
        z-index: 9999999999999999999;
        background-repeat: no-repeat;
        background-position: center;
        display: block;
    }
}

#displaydata {
display:none;
  position: fixed;
	width: 300px;
  top: 100px;
  left: 0;
  background: #000000;
  color: #ffffff;
  padding: 10px;
  z-index: 9999999;
  text-align: left;
	transition: all .2s ease-in-out;
}
#displaydata.open {
	left: 0;
	background: #000000;
}
#displaydata.hide {
	left: -280px;
	background: #ff0000;
}

.rangeleft {
  text-align: left !important;
}

/* legal stuff */
#datenschutzoverlay, #impressumoverlay {
  display: none;
  background: rgba(0,0,0,0.7);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999999999;
  text-align: center;
  width: 100vw;
  height: 100vh;
}
.impdatcontent {
  width: 95vw;
  max-width: 800px;
  margin: 10vh auto;
  height: 80vh;
  overflow-y: scroll;
  background: #ffffff;
  text-align: left;
}
.impdatcontent .elementor-inner {
  padding: 30px;
  margin-top: -100px;
}
.impdatcontent h1, .impdatcontent2 h1 {
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 0;
  color: var(--corporate);
}
.impdatcontent h2, .impdatcontent2 h2 {
  font-size: 24px;
  font-weight: normal;
  letter-spacing: 0;
  color: var(--corporate);
}
.impdatcontent h3, .impdatcontent2 h3 {
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0;
  color: var(--corporate);
}
.impdatcontent ul li, .impdatcontent2 ul li {
  color: #222222;
}
.impdatcontent a, .impdatcontent2 a {
  text-decoration: underline;
}
.impdatcontent td, .impdatcontent th, .impdatcontent2 td, .impdatcontent2 th {
  color: #222222;
  padding: 5px;
}
@media screen and (max-aspect-ratio: 1/1) {
  .impdatcontent tr td, .impdatcontent tr th { display: inline-block; width: 100%; padding: 0; }
  .impdatcontent tr td:nth-of-type(1) { font-weight: bold; }
  .impdatcontent tr td:nth-of-type(3) { padding-bottom: 8px; font-weight: 600;  font-style: italic; }
  .impdatcontent tr th:nth-of-type(3) { padding-bottom: 8px; }
}
@media screen and (max-width: 767px) {
  .impdatcontent tr td, .impdatcontent tr th { display: inline-block; width: 100%; padding: 0; }
  .impdatcontent tr td:nth-of-type(1) { font-weight: bold; }
  .impdatcontent tr td:nth-of-type(3) { padding-bottom: 8px; font-weight: 600;  font-style: italic; }
  .impdatcontent tr th:nth-of-type(3) { padding-bottom: 8px; }
}

#closedatenschutz, #closeimpressum {
  width: 25px;
  height: 25px;
  background-image: url(https://epple-hilde.flatfinder.de/wp-content/uploads/CloserX_white.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50% 50%;
  position: absolute;
  top: 5vh;
  right: calc(50% - 12px);
}
#closedatenschutz:hover, #closeimpressum:hover {
  cursor: pointer;
}

@media screen and (max-width: 1024px) {
   #userRegBG {
    flex-direction: column-reverse;
	width: 100%;
  }
  
  .flats-preview-wrapper {
    padding-bottom: 50px;
  }
  
  #userRegCloser {
    display: none;
  }
}

@media screen and (max-aspect-ratio: 1/1) {
  .impdatcontent .elementor-inner { padding: 15px; margin-top: -50px; }
  #closedatenschutz, #closeimpressum { right: 2.5vw; }
}
@media screen and (max-width: 767px) {
  .impdatcontent .elementor-inner { padding: 15px; margin-top: -50px; }
  #closedatenschutz, #closeimpressum { right: 2.5vw; }
  #userRegBG { background-color: white; }
}

/* datenschutz nicht im Popup, sondern auf normaler Seite */
.impdatcontent2 {
  text-align: left;
  max-width: 900px;
  margin: 0 auto;
}

.ctacontainer.frontpage-contact .elementor-container {
  margin-left: 0;
}

#huettig-und-rompf-snippet-1 .xHrSp:not(#nSpX) .modal__content {
  margin: 120px 0 60px;
}



.adblock-warning {
  height: 50px;
  background-color: #fffbaf;
  width: 1200px;
  margin: 0 auto;
  color: black;
  text-align: left;
  display: flex;
  align-items: center;
  font-size: 18px;
  padding: 20px 10px 10px 10px;
  justify-content: space-between;
}

.adblock-warning span {
  color: black;
}

.adblock-warning button {
  background-color: transparent;
  border-radius: 5px;
  border: solid 2px black;
  width: 30px;
  height: 30px;
  color: black;
}

#animation-pointer {
  pointer-events: none;
}

#animation-pointer {
  position: absolute;
  bottom: 10px;
  right: 10%;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  transform-origin: bottom;
}

    .bounce-1 {
        animation-name: bounce-1;
        animation-timing-function: linear;
    }
    @keyframes bounce-1 {
        0%   { transform: scale(1); }
        50%  { transform: scale(0.8); }
        100% { transform: scale(1); }
    }

#planImage {
  cursor: pointer;
}

#toggle-side-panel-button {
	
/*---original---*
  position: absolute;
  top: 50%;
  right: -50px;
  width: 50px;
  height: 50px;
  background-color: var(--corporate);
  cursor: pointer;
  line-height: 50px;
  text-align: center;
  font-size: 30px;
  color: #fff;
  opacity: 0.3;
*/	
	
	position: absolute;
    top: calc(50% - 30px);
    right: -30px;
    width: 60px;
    height: 60px;
    border: var(--white) 2px solid;
    cursor: pointer;
    font-size: 0;
    line-height: 0;
    color: #fff;
    border-radius: 100%;
    background: linear-gradient(-90deg, var(--corporate) 50%, rgba(255,255,255,0) 50%);
    opacity: 0.3;
}

#toggle-side-panel-button::after {
	content: '';
    position: absolute;
    right: 5px;
    top: 50%;
    display: inline-block;
    width: 14px;
    height: 14px;
    transform: translateY(-50%) rotate(-45deg);
    transform-origin: 50% 50%;
    border-left: var(--white) 3px solid;
    border-top: var(--white) 3px solid;
}
#toggle-side-panel-button.closed::after {
    right: 12px;
    transform: translateY(-50%) rotate(135deg);
}

#planFrame.big {
	width: 100% !important;
	margin: ato !important;
}

