
/* 
ExtraHell: #ededed
Hellgrau: #dedede
Mittelgrau: #b3b3b3
Dunkelgrau: #484848

*/



html,body {
	font-family: "Trebuchet MS", Tahoma, sans-serif;
	
	margin: 0;
	padding: 0;
	overflow-x: hidden;
	/*height: 200%;*/
	font-size: 100%;
	background-color: #ffffff;
	box-sizing: border-box;
}

#searchTimeout {
	display: none;
}

.searchTimeoutfade-in {
	opacity: 1;
	animation-name: fadeInOpacity;
	animation-iteration-count: 1;
	animation-timing-function: ease-in;
	animation-duration: 2s;
}

@keyframes fadeInOpacity {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

.spinner {
   --d: 38.7px;
   width: 7px;
   height: 7px;
   border-radius: 50%;
   color: #7ebcff;
   box-shadow: calc(1*var(--d))      calc(0*var(--d))     0 0,
          calc(0.707*var(--d))  calc(0.707*var(--d)) 0 1.8px,
          calc(0*var(--d))      calc(1*var(--d))     0 3.5px,
          calc(-0.707*var(--d)) calc(0.707*var(--d)) 0 5.3px,
          calc(-1*var(--d))     calc(0*var(--d))     0 7px,
          calc(-0.707*var(--d)) calc(-0.707*var(--d))0 8.8px,
          calc(0*var(--d))      calc(-1*var(--d))    0 10.6px;
   animation: spinner-a90wxe 1.4s infinite steps(8);
   top: 50%;
    left: 50%;
    position: absolute;
}

@keyframes spinner-a90wxe {
   100% {
      transform: rotate(1turn);
   }
} 

/* Coloring */
.fc0 {
	color: #000000;
}

.fc1 {
	color: #ffffff;
}

.fc2 {
	color: #484848;
}

.fc3 {
	color: #b3b3b3;
}

.fc4 {
	color: #dedede;
}

.fc5 {
	color: #ededed;
}

.bc0 {
	color: #000000;
}

.bc1 {
	border-color: #ffffff;
}

.bc2 {
	border-color: #484848;
}

.bc3 {
	border-color: #b3b3b3;
}

.bc4 {
	border-color: #dedede;
}

.bc5 {
	border-color: #ededed;
}

.bc6 {
	border-color: #f3f3f3;
}

.bcblue1 {
	border-color: #7ebcff;
}

.bcgreen {
	border-color: #337860;
}
.fcblue1 {
	color: #7ebcff;
}

.fcwhite {
	color: #ffffff;
}

.fcgreen {
	color: #337860;
}

.bgwhite {
	background-color: #ffffff;
}

.bgblue1 {
	background-color: #7ebcff;
}

.bggreen {
	background-color: #eeffec;
}

.bgblue2 {
	background-color: #f6faff;
}
.bgorange1 {
	background-color: ##ffd325
}
.bgorange2 {
	background-color: #fed4250a
}
.bggrey1 {
	background-color: #484848;
}	

.bggrey2 {
	background-color: #b3b3b3;
}

.bggrey3 {
	background-color: #dedede;
}

.bggrey4 {
	background-color: #ededed;
}	

.bgblue1Gradient {
	background: #ffffff;
	background: linear-gradient(0deg,rgba(255, 255, 255, 1) 0%, rgba(126, 188, 255, 1) 10%, rgba(126, 188, 255, 1) 90%, rgba(255, 255, 255, 1) 100%);
}

/*Sizing */
.fs200 {
	font-size: 200%;
}
.fs150 {
	font-size: 150%;
}
.fs100 {
	font-size: 100%;
}
.fs120 {
	font-size: 120%;
}
.fs90 {
	font-size: 90%;
}

.fs80 {
	font-size: 80%;
}
.fs70 {
	font-size: 70%;
}

.fs60 {
	font-size: 60%;
}

/* BasicElement */
.pageElement {
	width: 100%; 
	padding-top: 40px; 
	padding-bottom: 40px; 
	border-bottom: 1px solid #f3f3f3; 
	margin-left: auto; 
	margin-right: auto;
}
.wrapper1200 {
	width: 100%;
	max-width: 1200px;
	margin-left: auto; 
	margin-right: auto;
}

.pointer {
	cursor: pointer;
}

.pd5 {
	padding: 5px;
}

.pd10 {
	padding: 10px;
}



.mrg5 {
	margin: 5px;
}
.mrg10 {
	margin: 10px;
}

.mrgr5 {
	margin-right: 5px;
}

.mrgr10 {
	margin-right: 10px;
}

.mrgr20 {
	margin-right: 20px;
}

.mrgl10 {
	margin-left: 10px;
}

.mrgb5 {
	margin-bottom: 5px;
}

.mrgt5 {
	margin-top: 5px;
}

.mrgb10 {
	margin-bottom: 10px;
}

.mrgb25 {
	margin-bottom: 25px;
}

.mrgt10 {
	margin-top: 10px;
}

.pdb10 {
	padding-bottom: 10px;
}
.pdb5 {
	padding-bottom: 5px;
}

.pdt5 {
	padding-top: 5px;
}
.pdt10 {
	padding-top: 10px;
}

.pdl10 {
	padding-left: 10px;
}

.pdr10 {
	padding-right: 10px;
}

.pdb20 {
	padding-bottom: 20px;
}

.pdl20 {
	padding-left: 20px;
}

.pdt20 {
	padding-top: 20px;
}

.pdt30 {
	padding-top: 30px;
}

.lh2{
	line-height: 1.2em;
	min-height: 2.4em;
}

.ellipsis {
    display: inline;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font: inherit;
    text-decoration: none;
}	



a:link,a:hover,a:visited {
	text-decoration:none;
	color:#3271da
}

a.whiteLink:link,a.whiteLink:visited {
color:#ffffff;
text-decoration:none
}

a.whiteLink:hover {
color:#ebebeb;
text-decoration:none
}

a.greyLink:link,a.greyLink:visited {
color:#6f6f6f;
text-decoration:none
}

a.fc2:link,a.fc2:visited {
color:#484848;
text-decoration:none
}



.borderRad {
	border-radius: 10px;
}

.borderTop {
	border-top-style: solid;
    border-top-width: 1px;
}

.borderTop2 {
	border-top-style: dotted;
    border-top-width: 1px;
}

.borderFilter {
	border-left-style: dotted;
    border-left-width: 1px;
}

.borderFilter2 {
	border-bottom-style: dotted;
    border-bottom-width: 1px;
}

.borderBottom {
	border-bottom-style: solid;
    border-bottom-width: 1px;
}

.borderBottomDotted {
	border-bottom-style: dotted;
    border-bottom-width: 1px;
}

.borderTopDotted {
	border-top-style: dotted;
    border-top-width: 1px;
}

.yesBorder {
	border-style: solid;
    border-width: 1px;
}
.yesBorderDotted {
	border-style: dotted;
    border-width: 1px;
}


.noBorder {
	border: 0px solid #ffffff;
}

/* HEADER - MENU - HAMBURGER */

#header {
	position: fixed;
	width: 100%;
	top:0;
	height: auto;
	z-index: 2;
	background-color: #ffffff;
	box-sizing: border-box;
	
}

#logo,#signet {
	align-self:center;
	padding:2px;
	z-index:6;
}
#logo img {
	max-height:35px
}

#signet img {
	max-height:35px
}

.navbar {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #ffffff;
	width: 100%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	height: 70px;
}

.logoArea {
	z-index: 300;
	display: flex;
	flex-wrap: nowrap;
}

.menu {
	display: flex;
	font-size: 90%;
}

.menu a, #pin a {
	color: #484848;
	text-decoration: none;
	padding: 10px;
}

.menu a:hover, #pin a:hover {
	color: #b3b3b3;
}

.menu-toggle {
	display: none;
}

.menu-btn {
	display: none;
	flex-direction: column;
	justify-content: space-between;
	width: 30px;
	height: 25px;
	cursor: pointer;
	z-index: 200;
	color: #484848
}

.menu-btn span {
	display: block;
	height: 14px;
	width: 16px;
	font-size: 140%;
	transition: 0.3s;
}

#pin {
	order: 2;
	font-size: 90%;
}

/* SEARCHBAR */	

.search-fixed-top {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100;
}
.search-fixed-all{
  position: relative;
  top: 0px;
  width: 100%;
  z-index: 100;
  left: 0px;
}

.search-fixed-none {
	position: absolute;
	top: 450px;
}

#searchArea {
	width: 100%;
	z-index: 1100;
	height: 60px;
	margin-top: 10px
}

#searchBar {
	display: flex;
	flex-direction: row;
	width: calc(100% - 20px);
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 10px;
	padding-right: 10px;

}

.searchfield {
	position: relative;
	width: 30%;
}

.sf1 {
	background-color: #ffffff;
	border-top: 1px solid;
	border-bottom: 1px solid;
	border-left: 1px solid;
	border-top-left-radius: 10px;
	border-bottom-left-radius: 10px;
	height: max-content;
	padding: 3px;
	border-color: #ffffff;
}

.sf2 {
	background-color: #ffffff;
	border-top: 1px solid;
	border-bottom: 1px solid;
	height: max-content;
	padding: 3px;
	border-color: #ffffff;
}

.sf3 {
	background-color: #ffffff;
	border-top: 1px solid;
	border-bottom: 1px solid;
	border-right: 1px solid;
	border-top-right-radius: 10px;
	border-bottom-right-radius: 10px;
	height: max-content;
	padding: 3px;
	border-color: #ffffff;
}

.sf4 {
	background-color: #ffffff;
	border: 1px solid;
	border-radius: 10px;
	height: max-content;
	padding: 3px;
	
}
 

 
.searchInput {
	border: 0px;
	padding: 5px;
	padding-left:30px;
	width: calc(100% - 37px);
	height: 30px;
	font-size: 90%;
}

.searchInputBorder {
	border-right: 1px dotted #7ebcff;
}


.searchButton {
	position: relative;
	width: 10%;
	background-color: #7ebcff;
	color: #ffffff;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 40px;
}


.searchIcon {
	position: absolute;
	left: 5px;
	top: 14px;
	color: #b3b3b3;
}

.searchIconDelete, .searchIconCancel {
	position: absolute;
	right: 10px;
	top: 14px;
	color: #b3b3b3;
	cursor: pointer;
}	

#resultsWhat, #resultsWhere {
    background: #fff;
    font-family: inherit;
	font-size: inherit;
    width: calc(100% + 1px);
    outline: 0;
    height: auto;
	position: absolute;
	min-width: 300px;
	border: 1px;
	border-radius: 5px;
	z-index: 2;
	left: -1px;
}

.resultRowTitle {
	padding: 10px;
	border-bottom: 1px solid #dedede;
	color: #b3b3b3;
	font-size: 90%;
}

.resultRow {
	display: flex;
	flex-direction: row;
	padding: 5px;
	color: #484848;
	font-size: 90%;
}

.resultRow:hover {
	cursor: pointer;
	background-color: #ededed
}

.resultRowIcon {
	width: auto;
	color: #b3b3b3;
	padding: 5px;
}

.resultRowName {
	width: 60%;
	padding: 5px;
	flex-grow: 1;
}

.resultRowCount {
	width: auto;
	padding: 5px;
	background: #b3b3b3;
	color: #ffffff;
	border-radius: 3px;
	height: 1em;
	white-space:nowrap;
}

.searchErrorMsg {
	position: absolute;
    top: 50px;
    background-color: #ae232f;
    padding: 5px;
    border-radius: 10px;
    color: #ffffff;
    font-size: 80%;
}

.searchInputSort {
	font-family: inherit;
    color: #484848;
	border-color: #dedede;
}

/*MainImage*/
/*
#mainImage {
	width: 100%;
	height: 50vh;
	overflow: hidden;
	position: relative;
}

#mainImage::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 30%;
	background: linear-gradient(to top, #ffffff, transparent);
}

#mainImage img {
	width: 100%;
	height: auto;
}

.mainImgText {
	position: absolute;
	top: 16vh;
	width: 100%;
	color: #ffffff;
	font-size: 250%;
	padding: 20px;
	text-shadow: 1px 2px 4px rgba(0,0,0,0.6);
}
*/

/* Funktionen */
h1,h2,h3,h4 {
	margin:0;
	font-size:inherit;
	font-weight:inherit
}

.hideDesktop {
	display: none;
}

.placeholder {
	flex-grow: 2;
}

textarea, input {
		font-family: "Trebuchet MS", Tahoma, sans-serif;
		color: #484848;
}

textarea:focus, input:focus{
    outline: none;
}

input::placeholder {
	color: #484848;
	font-family: "Trebuchet MS", Tahoma, sans-serif;
}

.messageHide {
	display: none;
}

.messageHideMobile {
	display: block;
}

.shadow{
	-webkit-box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.1);
	-moz-box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.1);
	box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.1);
}
 .content{
	 width: 100%;
 }
 
 #searchMobile {
	 display: none;
 }
 
 .borderBottomTopGrey {
	border-bottom: 1px solid #dedede;
	border-top: 1px solid #dedede;
 }

.flexContainerRow {
	display: flex;
    flex-direction: row;
}
.flexStyleWrap {
    flex-wrap: wrap;
}
.flexStyleNoWrap {
    flex-wrap: nowrap;
}

.flexItemsCenter {
	align-items: center;
}

.flexiBox-spacebetween {
    justify-content: space-between;
}

.flexiBox-spacearound {
    justify-content: space-around;
}


.flexiBox-baseline {
	align-items: baseline;
}
.flexiBox-center {
    justify-content: center;
}

.flexiBox-end {
    justify-self: end;
}

.flexiBox-auto {
	 width: auto;
}

.flexiBox-grow {
	flex-grow: 1;
}

.box40a {
	width: 40%
}

.box60a {
	width: 60%
}

.box20 {
	width: 20%
}

.box20a {
	width: 20%
}

.box25 {
	width: 25%
}

.box25a {
	width: 25%
}

.box30 {
	width: 30%;
}

.box30a {
	width: 30%;
}

.box33 {
	width: 33.3333%
}



.box70 {
	width: 70%;
}

.box70a {
	width: 70%;
}


.box75 {
	width: 75%;
}

.box75a {
	width: 75%;
}


.box80 {
	width: 80%;
}

.box80a {
	width: 80%;
}

.box90 {
	width: 90%
}

.box10 {
	width: 10%
}

.box100 {
	width: 100%
}

@keyframes heartbeat {
  0% {
    transform: scale( 1 );    
  }
  20% {
    transform: scale( 1.25 ) 
      translateX(5%) 
      translateY(5%);
  } 
  40% {
    transform: scale( 1.5 ) 
      translateX(9%) 
      translateY(10%);
  }
}
.beating {
  animation: heartbeat 0.5s 1; 
  
}

.searchInputResult {
	padding-left: 20px;
	width: calc(100% - 20px);
	
}
.searchIconResult {
	position: absolute;
    left: 5px;
    top: 7px;
    color: #b3b3b3;
	font-size: 80%;
	
}

.overflowH {
    overflow: hidden;
}
.overlayFix {
	height: 1000px;
	background: rgba(255, 255, 255, 0.3);
	width: 100%;
}

.searchResultImgHeight img {
	height: 300px;
}	

.searchResultImg img {
	width: 100%;
	display: block;
	object-fit: cover;
	transition: all .5s ease;
	object-position: center;
	
}

.searchResultImg img:hover {
	transform: scale(1.2);
}

.searchResultImg {
	width: 100%;
	overflow: hidden;
	position: relative;
	border-radius: 10px;
	min-width: 360px;
}

.normalHidden {
	display: none;
}

.txtWrap {
    -ms-word-break: break-all;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
    word-wrap: break-word;
}
#filter, .requestBottom, #thisCities, #thisCats{
	padding-left: 20px
}


/* => MAX 768 <= */
@media (max-width: 768px) {
	
	#filterOverlay {
	position: fixed;
	z-index: 4;
	left: 0px;
	background-color: #ffffff;
	height: 100% !important;
	overflow: scroll;
	}
	
	.searchInputResult {
		font-size: 90%;
	}
	
	.searchIconResult {
		top: 13px;
		font-size: 100%;
		font-size: #484848;
	}
	
	.borderFilter {
	border-left-style: unset;
    border-left-width: 0px;
}

.borderFilter2 {
	border-bottom-style: dotted;
    border-bottom-width: 1px;
}
	
.messageHideMobile {
	display: none;
}
.messageShowMobile {
	display: block;
}

#filter, .requestBottom {
	padding-left: 0px
}

#thisCities, #thisCats {
	padding: 20px;
}

.requestBottom {
	position: fixed;
    bottom: 0px;
    z-index: 6;
    background-color: #ffffff;
	padding-top: 10px;
	-webkit-box-shadow: 5px 0px 5px 0px rgba(0,0,0,0.1);
	-moz-box-shadow: 5px 0px 5px 0px rgba(0,0,0,0.1);
	box-shadow: 5px 0px 5px 0px rgba(0,0,0,0.1);
	width: calc(100% - 10px);
	padding-right: 10px;
}
#filter {
	overflow: scroll;
    height: calc(100% - 110px);
}
.normalHidden {
	display: flex;
}

	.fs200 {
		font-size: 140%;
	}
	.fs100, .fs90 {
	font-size: 80%;
	}


	/* BasicElement */
	.pageElement {
		width: calc(100% - 20px);
		padding-left: 10px;
		padding-right: 10px;
		padding-top: 25px; 
	padding-bottom: 25px; 
	
	}
	.navbar {
		height: 60px;
	}
	
	/* HEADER - MENU - HAMBURGER */
	.menu {
		display: flex;
		flex-direction: column;
		position: fixed;
		top: 0;
		left: -100%;
		width: 100%;
		max-width: 100vw;
		height: 100%;
		background: #ffffff;
		padding-top: 60px;
		transition: left 0.3s ease-in-out;
		font-size: 90%;
		z-index: 2;
	}

	.menu a {
		text-align: left;
		display: block;
		border-top: 1px solid #dedede;
	}
	
	.menu-toggle:checked ~ .menu {
		left: 0;
	}
	
	.menu-btn {
		display: flex; 
		position: absolute;
		top: 18px;
		right: 15px;
	}
	
	.menu-toggle:checked ~ .menu-btn span:nth-child(1) {
		transform: rotate(90deg) translate(3px, -3px);
	}
			
	#logo {
		padding: 15px 2px 5px 7px;
	}

	#logo img {
		max-height:35px;
		width: auto;
	}
	
	#signet {
		padding: 15px 2px 5px 0px;
	}
	
	#signet img {
		max-height: 35px;
		width: auto;
	}
	
	#pin {
		margin-right: 60px;
		z-index: 300;
		font-size: 140%;
		order:1
	}	
	#searchMobile {
		margin-right: 15px;
		z-index: 300;
		font-size: 140%;
		order:1
	}		
	
	/* SEARCHBAR */	

	#searchArea {
		width: 90%;
		background-color: #ffffff;
		z-index: 1;
		position: absolute;
		-webkit-box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.1);
		-moz-box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.1);
		box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.1);
		margin-left: 5%;
		margin-right: 5%;
		padding-top: 5px;
		padding-bottom: 5px;
		border-radius: 10px;
		height: auto;
		margin-top: 0px;
	}
	
	.search-fixed-all{
	  
	  top: 60px;
	  width: 100%;
	  z-index: 100;
	  left: 0px;
	}

	.mobileMenuHidden {
		display: none;
	}

	.searchInputBorder	{
		border-right: 0px;
	}
	
	.sf2 {
		border-top: 1px dotted #dedede;
		border-bottom: 0px dotted #dedede;
		border-left: 1px solid #ffffff;
	}	
	.sf3 {
		border: 1px solid;
		border-radius: 10px;
	}

	.searchInput {
		padding: 10px;
		padding-left: 30px;
	}
	.searchIcon, .searchIconCancel, .searchIconDelete {
		top: 20px;
	}

	#searchBar {
		flex-direction: column;
		padding-left: 0px;
		padding-right: 0px;
	}
	
	.searchfield {
		width: calc(100% - 8px);		
	}
	
	.searchButton {
		width: calc(100% - 28px);
		margin: 5px 10px 5px 10px;
	}

	/*MainImages*/
	#mainImage {
		width: auto;
		height: 80vh;
		overflow: hidden;
	}
	
	#mainImage img {
		width: auto;
		height: 100%;
		transform: translate(-25%, 0);
	}
	/*
	.mainImgText {
		top: 12vh;
		width: calc(100% - 40px);
		color: #ffffff;
		font-size: 175%;
	}	*/ 

	.hideMobile {
		display: none;
	}

	.hideDesktop {
		display: block;
	}
	
	#footer {
		text-align: center;
	}

.box25a, .box75a, .box40a, .box60a, .box70a, .box30a {
	width: 100%
}	
.mobileBox40{
	width: 40% !important;
}
	.elementX {
		margin-left: 20px;
		margin-right: 20px;
	}
	.marker-link.borderBottom{
		border-bottom: 0px solid;
	}
	.mobile_mrgt10 {
		margin-top: 10px;
	}
	
	.objMobile {
        -webkit-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.1);
        -moz-box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.1);
        box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.1);
        border: 1px solid #f3f3f3;
        border-radius: 10px;
	}
		

}

/* ÜBERNAHMEN AUS ALTER CSS */
#breadcrumbSearch {
position:relative;
width:100%
}

.breadcrumb {
position:relative;
/*z-index:2;*/
width:100%;
padding-top:5px;
padding-bottom:5px
}

ol.strBreadcrumb {
	list-style: none;
	margin: 0;
	padding: 0;
}

ol.strBreadcrumb li {
	display: inline;
}

ol.strBreadcrumb li+li:before {
    padding: 8px;
    
	content: "\21d2";
}
@media (max-width: 768px) {

	#breadcrumbSearch {
	display:none
	}

}