/*.row {
	margin-left: 0;
	margin-right: 0;
*/

.ellipsis {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	min-height:30px;
}

.farbe1 {
	color: #e74011;
}

.bgfarbe1 {
	background-color: #e74011;
}

.bgfarbe2 {
	background-color: #e2e2e2;
}

a {
	color: #e74011;
	padding:0;
	margin: 0;
}

a:hover {
	color: #ff7337;
}

a svg {
	margin-bottom: 5px;
}

.btn-ivmsearch, .btn-ivmsearch:hover {
	border-radius: 0;
	background-color: #e74011;
	padding: 10px;
	color: #fff;
	/*display: block;*/
	text-align: center;
	font-weight: bold;
}

.btn-ivmsearch:hover {
	transition-duration: 0.2s;
	background-color: #ff7337;
}

/*** Overlay ***/

#overlay{
	max-height: 700px;
}

#overlay img {
	padding: 5px;
	border: 1px solid #e8e8e8;
	height: 150px;
	width: 100%;
	object-fit: cover;
}

#overlay .successInfo,
#overlay_content .errInfo{
	padding-top:10%;
	text-align:center;
}

#overlay_bg {
	position: fixed;	
	display: none; /* Hidden by default */
	/* width: 100%;  Full width (cover the whole page) */
	/* height: 100%;  Full height (cover the whole page) */
	top: 0;
    right: 0;
    bottom: 0;
    left: 0;
	background-color: rgba(0,0,0,0.7);
 	z-index: 9999;
	overflow: hidden;
    -webkit-overflow-scrolling: touch;
}

#overlay {
  	position: absolute;
  	top: 5%;
	bottom: 5%;
  	left: 5%;
	right: 5%;
	/*width: 90%;*/
	background-color: white;
  	/*transform: translate(-50%);
  	-ms-transform: translate(-50%);*/
}
#overlay #close{
	position: absolute;
    top: -12px;
    right: -12px;
    padding: 4px 8px;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    color: #000;
    text-shadow: 0 1px 0 #fff;
    background-color: #fff;
    border-radius: 18px;
    border: 1px solid #9f9f9f;
    cursor: pointer;
	width: 30px;
}

#overlay_content{
	max-height:100%;
	overflow-y: auto;
	overflow-x: hidden;
	
}

/*** Ergebnisliste ***/


#ergebnisliste img {
	border: 0px solid #e8e8e8;
	height: 100%;
	width: 100%;
	object-fit: cover;
	opacity: 1;
  	transition: 0.3s;
}

#ergebnisliste img:hover {
	opacity: .6;
}

/*** Detailansicht ***/

#detailansicht {
	background-color: white;
}

.button_expose {
	background-image: url(../img/icon_expose.svg);
}

.button_grundriss {
	background-image: url(../img/icon_grundriss.svg);
}

.button_energiepass {
	background-image: url(../img/icon_energie.svg);
}

.button_objektdetails {
	width: 62px;
	display: inline-block;
	margin-left: 7px;
	padding: 50px 0 0;
	white-space: nowrap;
	background-color: #e8e8e8;
	border-radius: 0px;
	border: 0px solid #f0f0f0;
	background-size: 2.3em;
	background-position: center top 8px;
	background-repeat: no-repeat;
}

#detailansicht img {
	border: 0px solid #e8e8e8;
	margin-bottom: 10px;
	max-width: 580px;
	object-fit: contain;
}

#detailansicht .galerie {
	max-width: 580px;
}

#detailansicht .galerie img {
	padding: 2px;
	border: 0px solid #e8e8e8;
	margin-bottom: 3px;
	width: 60px;
	height: 60px;
	object-fit: contain;
}

#detailansicht .objektmerkmal {
	background-color: #e2e2e2;
	padding: 10px;
	margin: 5px 10px 5px 0;
}

#detailansicht .objektmerkmalhighlight {
	background-color: #398ccb;
	color: white;
	padding: 10px;
	margin: 5px 10px 5px 0;
}

#detailansicht ul {
	padding-left: 0px;
}

#detailansicht ul li:before {
	list-style-type: none;
	content: "\2713" " ";
	margin-left: 0px!important;
}

#merken .bi {
	font-size: 20px;
}

#detailansicht .btn-direkteanfrage {
	width: 100%;
  	background: transparent;
  	border: none;
  	padding: 10px 0px 10px 0;
  	color: white;
}

/*** Objektwunsch ***/

#objektwunsch-form h3 {
	font-size: 18px;
}

#objektwunsch-form label, 
#objektwunsch-form span {
    font-weight: normal!important;
    font-size: 1em!important;
}

/*** Merkliste Formular ***/

#merkliste-form label,
#merkliste-form span {
	font-weight: normal!important;
}

#merkliste-form .img-objekt {
	padding: 5px;
	border: 1px solid #e8e8e8;
	height: 100px;
	width: 100%;
	object-fit: cover;
}

#districts_container .form-check-inline {
	min-width: 15em;
}

.errmsg_label {
  color: red!important;
}

.errmsg_container {
  border: 1px solid red !important;
}

.form-control {
	font-size: .7rem;
}

#tafel img {
	padding: 5px;
	border: 1px solid #e8e8e8;
	height: 200px;
	width: 100%;
	object-fit: cover;
	opacity: 1;
  	transition: 0.3s;
}

#tafel img:hover {
	opacity: .6;
}

#tafel img a {
	border: 2px dotted red!important;
}

#tafel span a {
	border: 2px dotted red!important;
}


@media only screen and (min-width: 1200px) {
  
#ergebnisliste h3 {
	font-size: 18px;
}

}

@media only screen and (max-width: 992px) {
  
#detailansicht .objektmerkmal, #detailansicht .objektmerkmalhighlight {
	padding: 0;
	border-bottom: 0px solid #e8e8e8;
}

#ergebnisliste h3 {
	font-size: 18px;
}

}

@media only screen and (max-width: 768px) {
  
#ergebnisliste h3 {
	font-size: 18px;
}

}
.galerie {
    display: flex;
    flex-direction: row;   
    gap: 20px;              
    overflow-x: auto;      
    padding: 10px;
    max-width: 100%;
    box-sizing: border-box;
}

.galerie a {
    display: inline-flex;   
    flex-shrink: 0;      
    align-items: center;    
}

.galerie img {
    flex-shrink: 0;         
    height: auto;          
    width: auto;            
    max-height: 300px;     
    object-fit: contain;    
}


/* Suche */
/* Container-Styling */
.custom-search-bar {
    /*background-color: #f5f5f5;  Hellgrauer Hintergrund */
    padding: 15px 10px;
    position: sticky;
    top: 0;
    z-index: 999;
}

/* Flexbox-Container */
.custom-search-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px; /* Abstand zwischen den Elementen */
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}

/* Eingabefelder */
.custom-search-input {
    flex: 1; /* Eingabefelder nehmen den verfügbaren Platz ein */
}

.custom-search-input input {
    height: 45px;
    border: 1px solid #ccc;
    border-radius: 5px;
    padding: 5px 10px;
    font-size: 14px;
    width: 100%; /* Volle Breite innerhalb des flexiblen Containers */
    box-sizing: border-box;
	margin-bottom:0!important;
	max-width:none!important;
}

.custom-search-input select {
    height: 45px;
    border: 1px solid #ccc;
    border-radius: 2px;
    padding: 16px 20px;
    width: 100%; /* Volle Breite innerhalb des flexiblen Containers */
    box-sizing: border-box;
	margin-bottom:0!important;
	max-width:none!important;
}

/* Button */
.custom-search-button {
    flex: 0 0 auto; /* Der Button bleibt in seiner festen Breite */
}

.custom-search-button .btn {
    height: 45px;
    line-height: 45px; /* Text vertikal zentrieren */
    padding: 0 20px;
   	background-color: #e74011;
    color: #fff;
    border: none;
    border-radius: 2px;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
    transition: background-color 0.3s ease;
}

.custom-search-button .btn:hover {
    background-color: #ff7337;
	color:white;
}


/* Seitennummerierung */
.pagination {
  display: inline-block;
}

.pagination a {
  color: black;
  float: left;
  padding: 8px 16px;
  text-decoration: none;
  border: 1px solid #ddd;
  border-radius: 0px!important;
  box-shadow:none!important;
}

.pagination a.active {
  background-color: #e74011;
  color: white;
  border: 1px solid #e74011;
}

.pagination a:hover:not(.active) {
	background-color: #e74011;
	color: #fff;
}

.pagination a:first-child {
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
}

.pagination a:last-child {
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
}


/* Responsive Anpassungen */
@media (max-width: 768px) {
    .custom-search-container {
        flex-direction: column; /* Stapelt die Elemente */
        align-items: stretch;
    }

    .custom-search-input,
    .custom-search-button {
        width: 100%; /* Volle Breite */
        margin-bottom: 5px; /* Abstand zwischen den Elementen */
    }
	
	.custom-search-input select {
        width: 100%; /* Volle Breite */
        margin-bottom: 5px; /* Abstand zwischen den Elementen */
		padding: 6px 8px;
    }

    .custom-search-button .btn {
        width: 100%;
    }
}

.sticky-search {
	width:100%;
}

.environment {display:grid; grid-template-columns: auto auto}