.ir-immobilien-uebersicht {
    display: flex;
    flex-wrap: wrap;
    gap: 20px; /* Abstand zwischen den Kacheln */
	margin-left:5px;
}

.ast-article-single{
	padding:60px 0 !important;
}

/* Für ein 2er-Grid */
.ir-immobilien-uebersicht.two-columns .ir-immobilie {
    flex: 0 0 48%; /* 100% / 2 - gap */
}

/* Für ein 3er-Grid */
.ir-immobilien-uebersicht.three-columns .ir-immobilie {
    flex: 0 0 32%; /* 100% / 3 - gap */
}

/* Für ein 4er-Grid */
.ir-immobilien-uebersicht.four-columns .ir-immobilie {
    flex: 0 0 23%; /* 100% / 4 - gap */
}

.ir-immobilien-uebersicht h4, .ir-immobilien-uebersicht .entry-content h4{
	font-size:1.1rem;
	margin-top:15px;
	line-height:1.8rem;
}

.ir-immobilie {
/* border:1px solid #F4F2F0; */
-webkit-box-shadow: 10px 10px 5px -6px rgba(0,0,0,0.1);
-moz-box-shadow: 10px 10px 5px -6px rgba(0,0,0,0.1);
box-shadow: 10px 10px 5px -6px rgba(0,0,0,0.1);
    background-color: #ffffff;
    box-sizing: border-box;
	position:relative;
	min-height:650px;
	opacity: 0;
    transform: translateY(20px);
    transition: opacity 1s ease, transform 1s ease;
}

.ir-immobilie.fade-in {
    opacity: 1;
    transform: translateY(0);
}

.ir-immobilie .teaserpicture img {
  width: 100%; /* Breite auf 100% des Elternelements setzen */
  height: 100%; /* Höhe auf 100% des Elternelements setzen */
  object-fit: cover; /* Bild so anpassen, dass der Container voll ausgefüllt wird, überschüssige Teile werden abgeschnitten */
  display: block; /* Entfernt den Abstand unter dem Bild, der durch die Inline-Eigenschaft verursacht wird */
}

.ir-immobilie-content{
padding:0px 20px 0 20px;

}

.ir-immobilie h4,.ir-slide-content h4{
/*	text-transform: none;*/
} 

.ir-immobilie h4 a, .ir-slide-content h4 a{
	color:#3F4448;
}

.immobilien-grundriss-image {
    max-width: 33%;
    padding:15px;
	cursor: pointer; /* Zeigt an, dass das Bild klickbar ist */
    transition: transform 0.3s ease;
	height:auto;
}

.immobilien-grundriss-image:hover {
    transform: scale(1.05); /* Leichtes Zoom beim Hover */
}

.ir-immobilie p.read-more a{
text-transform: uppercase;
font-size: 16px;
}

.ir-immobilie .teaserpicture {
  width: 100%;
  height: 230px;
  overflow: hidden;
  position:relative;
}


.ir-slick-slide .ir-slide-content p {
	display: flex;
    align-items: center; 
}

.ir-slick-slide .ir-slide-content p span:first-child {
    flex-basis: 150px; /* Stellt die Basisbreite des ersten <span> ein */
    flex-shrink: 0; /* Verhindert, dass der Beschriftungs-<span> schrumpft */
    /* font-weight: bold; Optional: macht die Beschriftung fett */
}

.ir-slick-slide .ir-slide-content p span:nth-child(2) {
    flex-grow: 1; /* Erlaubt dem Inhalt, den verbleibenden Platz zu füllen */
    text-align: left; /* Optional: richtet den Text rechts aus */
}

.header-slider-wrapper {
    position: relative;
}

.header-slider {
    width: 100%;
}



.thumbnail-image {
    width: 90px;
    height: 90px;
    object-fit: cover;
    cursor: pointer;
}

.thumbnail-slider .slick-slide{
	box-shadow: none !important;
  background: none !important;
  margin:0 5px !important;

}

.thumbnail-slider {
    display: flex;
    justify-content: center;
    gap: 10px; /* Abstand zwischen den Thumbnails */
    margin-top: 10px;
	background-color: #f4f2f0;
}





.ir-slick-slide .ir-slide-content p a{
	transition:0.5s all;
}

.ir-slick-slide {
	position:relative;
}


.ir-slick-slide .ir-slide-content p.read-more{
	margin-top:15px;
	position:absolute;
	bottom: 5px;
	left:18px;
}

.ir-slick-slide .ir-slide-content p.mb15, .ir-immobilie p.mb15{
	margin-bottom:15px !important;
}

.ir-slick-slide .ir-slide-content p a:hover{
	text-decoration:underline;
}

.ir-slick-slide .teaserpicture {
    width: 100%;
    max-height: 230px;
    overflow: hidden;
	margin-bottom:15px;
}

.ir-slick-slide .teaserpicture img {
  width: 100%;
  height: 230px; /* feste Höhe für das Bild */
  object-fit: cover; /* skaliert und schneidet das Bild zu */
}

.ir-slick-slide{
	
	background-color:white;
	margin: 0 7px;
	min-height:615px;
}

@media screen and (max-width:650px){
	.ir-slick-slide .ir-slide-content p {
  display: block !important;
 
}
}


.ir-immobilie p, .ir-slick-slide .ir-slide-content p {
	display: flex;
    align-items: center; /* Zentriert die Inhalte vertikal */
    
}

.ir-immobilie p span:first-child, .ir-slick-slide .ir-slide-content p span:first-child {
    flex-basis: 150px; /* Stellt die Basisbreite des ersten <span> ein */
    flex-shrink: 0; /* Verhindert, dass der Beschriftungs-<span> schrumpft */
    /* font-weight: bold; Optional: macht die Beschriftung fett */
}

.ir-immobilie p span:nth-child(2), .ir-slick-slide .ir-slide-content p span:nth-child(2) {
    flex-grow: 1; /* Erlaubt dem Inhalt, den verbleibenden Platz zu füllen */
    text-align: left; /* Optional: richtet den Text rechts aus */
}


.ir-immobilie p a{

	transition:0.5s all;
}

.ir-immobilie p a:hover{
	text-decoration:underline;
}


.single-post-immobilie{
	width:100%;
}

.single-post-immobilie .header-slider .slick-slide{
	padding:5px;
}

.single-post-immobilie .header-slider{
	position: relative;
    min-height: 200px; /* Mindesthöhe, anpassbar je nach Bedarf */
}

.single-post-immobilie  .spinner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 1.5em;
    color: #555;
    display: block;
}

.single-post-immobilie{
	margin:120px 0;
	
}

.single-post-immobilie h1{
	font-size:2rem;
	margin-top:30px;
	line-height: 2.5rem;
	text-transform: none; 
}


.single-post-immobilie {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto !important;
    max-width: 1200px; /* Oder eine andere Breite nach deinem Design */
	margin:120px 0;
}

.single-post-immobilie > .col-6 {
    flex: 0 0 50%; /* Nimmt 50% der Breite des Elternelements ein */
    max-width: 50%; /* Verhindert, dass die Box breiter als 50% wird */
    padding: 15px; /* Ein bisschen Abstand um den Inhalt */
    box-sizing: border-box; /* Stellt sicher, dass Padding und Border in die Breite inkludiert sind */
}

.single-post-immobilie > .col-12 {
    flex: 0 0 100%; /* Nimmt 100% der Breite des Elternelements ein */
    max-width: 100%; /* Verhindert, dass die Box breiter als 100% wird */
    padding: 15px; /* Ein bisschen Abstand um den Inhalt */
    box-sizing: border-box; /* Stellt sicher, dass Padding und Border in die Breite inkludiert sind */
}

.single-post-immobilie .header-slider .slick-list{
	max-height: 385px;
}

.header-slider .slick-slide img {
    width: 100%; /* Stellt sicher, dass Bilder innerhalb der Slides responsiv sind */
    height: auto; /* Erhält das Seitenverhältnis der Bilder */
}

.immobilien-details{
	border:1px solid #ddd;
	margin-top:15px;
}

.immobilien-details .immobilien-panel-headline {
    font-size: 1.2rem; /* Beispiel für eine Schriftgrößenanpassung */
    margin-bottom: 10px; /* Abstand unterhalb der Überschrift */
	background-color: #f5f5f5;
	border:1px solid #ddd;
	padding:8px 15px;
	position:relative;
}

.immobilien-details .immobilien-panel-content p{
	
    align-items: center; /* Zentriert die Inhalte vertikal */
    margin-bottom: 5px; /* Fügt Abstand zwischen den Zeilen hinzu */
}

.immobilien-details .immobilien-panel-content p a{
	color: rgb(141, 141, 141);
}

.immobilien-details .immobilien-panel-content p button{
  padding: 7px;
  width: 100%;
  font-size: 1rem;
}

.immobilien-panel-content p span:first-child {
    flex-basis: 250px; /* Stellt die Basisbreite des ersten <span> ein */
    flex-shrink: 0; /* Verhindert, dass der Beschriftungs-<span> schrumpft */
    /*font-weight: bold;  Optional: macht die Beschriftung fett */
}

.immobilien-panel-content p span:nth-child(2) {
    flex-grow: 1; /* Erlaubt dem Inhalt, den verbleibenden Platz zu füllen */
    text-align: left; /* Optional: richtet den Text rechts aus */
}

.view-toggle{
	margin-bottom:30px;
}

.immobilien-panel-content-contact {
    display: flex;
    align-items: center;
    gap: 20px;
}

.immobilien-panel-content-contact .left-picture-container {
    flex-shrink: 0;
	padding-left: 15px;
}

.immobilien-panel-content-contact .kontaktbild {
    width: 130px;
    height: 130px;
    object-fit: cover;
}

.immobilien-panel-content-contact .right-text-container {
    display: flex;
    flex-direction: column;
    gap: 5px;
}


.slick-slider > button::before{
	display:none;
	content: "";
	background:transparent;
} 

 .slick-slider > button{
	background:transparent; 
 }


.slick-arrow i::before {
  color: black;
  font-size: 1.5rem;
}

#toggle-filter-wrapper{
	position:relative;
	margin-bottom: 50px;
	height:50px;
}

#mapContainer{
	margin-bottom:30px;
}

#object_id{
  height: 40px;
  border: none;
  margin-right: 25px;
   width: 190px;
  font-size: 16px;
}

#sortForm #sort{
box-shadow: none;
  border-radius: 5px;
  height: 50px;
  width: 150px;
  font-size: 16px;
  background-color: white;
  border: none;
  font-family: "Nunito Sans", sans-serif;
}

.immobilien-details .immobilien-panel-content p, .immobilien-details .immobilien-panel-content h3, .immobilien-details .immobilien-panel-content h4, .immobilien-details .immobilien-panel-content h5 {
    margin-bottom: 0px; /* Abstand zwischen den Absätzen */
	padding:5px 15px;
}

.immobilien-details .immobilien-panel-content p:last-child{
	margin-bottom:15px;
}

.single-post-immobilie .slick-arrow{
 
    background: transparent;
} 

.single-post-immobilie .slick-prev:hover, .single-post-immobilie .slick-next:hover{


	background:transparent;
}

.single-post-immobilie .slick-prev::before, .single-post-immobilie .slick-next::before {
    color: transparent;
    outline: none;
    background: transparent;
}

.ir-contact-form {
    max-width: 100%; /* oder 100%, abhängig von deinem Layout */
    margin: auto;
    padding: 1rem;
    background-color: transparent; /* Hintergrundfarbe */
}

.ir-contact-form .form-row {
    display: flex;
    margin-bottom: 1rem;
	width: 95%;
}

.ir-contact-form .form-group {
    flex: 1; /* Felder nehmen verfügbaren Platz ein */
    margin-right: 1rem; /* Abstand zwischen den Feldern */
}

.ir-contact-form .form-group label {
    display: block; /* Label über dem Inputfeld */
    margin-bottom: 0.5rem;
}


.ir-contact-form .form-group.col-4 {
    flex: 0 0 29.3%; /* Nimmt 50% der Breite des Elternelements ein */
    max-width: 29.3%; /* Verhindert, dass die Box breiter als 50% wird */
    padding: 5px 2%;/* Ein bisschen Abstand um den Inhalt */
    box-sizing: border-box; /* Stellt sicher, dass Padding und Border in die Breite inkludiert sind */
}

.ir-contact-form .form-group.col-6 {
    flex: 0 0 47%; /* Nimmt 50% der Breite des Elternelements ein */
    max-width: 48%; /* Verhindert, dass die Box breiter als 50% wird */
    padding: 5px 2%; /* Ein bisschen Abstand um den Inhalt */
    box-sizing: border-box; /* Stellt sicher, dass Padding und Border in die Breite inkludiert sind */
	margin-left:5px;
}

.ir-contact-form .form-group.col-8 {
    flex: 0 0 66.6%; /* Nimmt 50% der Breite des Elternelements ein */
    max-width: 66.6%; /* Verhindert, dass die Box breiter als 50% wird */
    padding: 5px 15px; /* Ein bisschen Abstand um den Inhalt */
    box-sizing: border-box; /* Stellt sicher, dass Padding und Border in die Breite inkludiert sind */
}

.ir-contact-form .form-group.col-12 {
    flex: 0 0 100%; /* Nimmt 50% der Breite des Elternelements ein */
    max-width: 100%; /* Verhindert, dass die Box breiter als 50% wird */
    padding: 5px 15px; /* Ein bisschen Abstand um den Inhalt */
    box-sizing: border-box; /* Stellt sicher, dass Padding und Border in die Breite inkludiert sind */
}

.ir-contact-form .form-control {
    width: 100%; /* Felder nehmen verfügbaren Platz ein */
    padding: 0.375rem 0.75rem;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
    line-height: 1.5;
}

.ir-contact-form .btn-primary {
    padding: 7px 15px;
  font-size: 1.1rem;
    margin-left:15px;
}

.ir-immobilie p, .ir-slick-slide .ir-slide-content p{
	margin: 3px !important;
}

.ir-immobilie p.read-more, .ir-slick-slide .ir-slide-content p.read-more{
	margin-top:15px !important; 
}

.ir-immobilie p.read-more{
	position:absolute;
	bottom:30px;
	left:15px;
}

.ir-slick-slide .ir-slide-content{
	position:relative;
	min-height: 330px;
	padding:0 20px;
}

.ir-immobilien-pagination-container {
    text-align: center;
    margin: 30px 0;
}

.slick-initialized .slick-slide {
  /* border: 1px solid black; */
  -webkit-box-shadow: 10px 10px 5px -6px rgba(0,0,0,0.1);
-moz-box-shadow: 10px 10px 5px -6px rgba(0,0,0,0.1);
box-shadow: 10px 10px 5px -6px rgba(0,0,0,0.1);
    background-color: #F4F2F0;
    box-sizing: border-box;
}


.ir-contact-form .form-group.label{
	padding:0 15px;
	margin-top:15px;
}

.ir-contact-form .form-group.label label{
font-weight:bold;	
}


.immobilien-panel-content.accordion {
   /* display: none; */
}

.immobilien-details.contact-panel .immobilien-panel-headline{
background-color: #B79853;
color:white;
}

.accordion-toggle {
    cursor: pointer;
    display: inline-block;
    transition: transform 0.3s ease; /* Weiche Animation für das Drehen des Pfeils */
	position:absolute;
	right:10px;
	top:10px;
	
}

.accordion-toggle.active .chevron-down {
    transform: rotate(180deg); /* Dreht den Pfeil um, wenn das Panel aktiv ist */
}

/* Stile für Checkboxen und Radiobuttons entsprechend anpassen */

/* Allgemeiner Container für die Sortierung */
.sortierungen {
    text-align: right;
  margin: 015px;
  position: absolute;
  top: 0;
  right: 0;
  font-family: "Nunito Sans", sans-serif;
}

/* Styling für das Formular und die Select-Box */
.sortierungen form {
    display: inline-block; /* Stellt sicher, dass das Formular nicht die ganze Breite einnimmt */
}

/* Styling für die Dropdown-Liste */
.sortierungen select {
    padding: 5px 10px; /* Innenabstand für bessere Lesbarkeit und Griffigkeit */
    margin-left: 5px; /* Abstand zwischen Label und Select-Box */
    cursor: pointer; /* Cursor-Stil ändern, um Interaktivität zu signalisieren */
    border: 1px solid #ccc; /* Leichte Umrandung für das Feld */
    border-radius: 5px; /* Abgerundete Ecken für moderneres Aussehen */
    transition: all 0.3s ease; /* Glatte Übergänge bei Stiländerungen */
}

.sortierungen select[name='objekttyp']{
	margin-right:30px;
}

/* Hover- und Fokus-Stile für die Dropdown-Liste */
.sortierungen select:hover, .sortierungen select:focus {
    border-color: #888; /* Dunklere Umrandung beim Überfahren oder Fokussieren */
    box-shadow: 0 2px 8px rgba(0,0,0,0.2); /* Stärkerer Schatten für hervorgehobene Interaktion */
}

/* Option-Elemente innerhalb der Select-Box */
.sortierungen option {
    padding: 5px; /* Innenabstand für jede Option */
}

/* Responsives Verhalten */
@media (max-width: 600px) {
    .sortierungen {
        text-align: center; /* Zentriere das Formular auf kleineren Bildschirmen */
        margin-top: 10px; /* Geringerer Abstand oben auf kleineren Bildschirmen */
    }
}


@media screen and (max-width:1024px){
	.single-post-immobilie > .col-6 {
  flex: 100%;
  max-width: 100%;
}
	
}


@media screen and (max-width:650px){
.immobilien-details .immobilien-panel-content p{
	display: block;
    
}


.ir-immobilien-uebersicht {
  display: block;
  margin-left: 0;
  
}

.immobilien-panel-content-contact {
  display: block;
}
.immobilien-panel-content-contact .left-picture-container{
	margin-bottom:15px;
}

.ir-immobilien-uebersicht .ir-immobilie{
	margin-bottom:15px;
}

.ir-immobilie p, .ir-slick-slide .ir-slide-content p {
display: block !important;
}

.page-id-25962 #primary{
	padding-left:5px !important;
	padding-right:5px !important;
}

.ir-immobilien-uebersicht{
	margin-top:150px;
}

.ir-immobilien-uebersicht.three-columns .ir-immobilie {
  width: 99% !important;
}


}