/* Menu */
  
  /* reset */
* {
  margin: 0;
  padding: 0;

}

.buttonTitel{
  font-size:12px;
}

.tingle-modal {
  background: rgb(0 0 0 / 42%) !important;
}

.tingle-modal__closeLabel {
  display:none !important;
}

.tingle-modal__closeIcon{
  margin-right: 0px !important;
}

body{
  background-color: #ffffff;
  font-family: 'Montserrat', sans-serif;
}

.clickMap{
  margin-bottom: 20px;
  width: 100%;
}

.clickMap svg {
  width: 100%;
  height: auto;
  display: block;
}

label {
  cursor: pointer;
}
label:focus {
  outline: none;
}


#info {
  display: table;
  background: rgba(0, 0, 0, 0.4);
  height: 100%;
  width: 100%;
}
#info #info-content {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  text-transform: uppercase;
  color: #fff;
  font-size: 12px;
}
#info #info-content h1 {
  color: #fff;
  border: 3px solid #fff;
  text-align: center;
  background: rgba(0, 0, 0, 0.1);
  font-size: 22px;
  font-weight: normal;
  padding: 20px;
  margin: 10px;
  display: inline-block;
}
#info #info-content h1 strong {
  display: block;
  font-size: 26px;
}
  
.sliderTitel{
  padding-bottom:10px;
}


  /* Algemeen */

  body{
    margin:0px;
  }

  .terugKnop{
    z-index: 10;
    position: absolute;
    left: 20px;
    top: 20px;
    box-shadow: 5px 5px 9px -10px rgb(0 0 0);
    background-color:white;
  }
  
  .terugKnop a{
    display: block;
    width: 170px;
    height: 30px;
    line-height: 30px;
    font-size: 14px;
    font-family: 'Montserrat', sans-serif;
    text-decoration: none;
    color: black;
    border: 1px solid black;
    letter-spacing: 2px;
    text-align: center;
    position: relative;
    transition: all .35s;
    text-transform:uppercase;
  }
  
  .terugKnop a span{
    position: relative;
    z-index: 2;
  }
  
  .terugKnop a:after{
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background: #ffffff;
    transition: all .35s;
    border-radius:5px;
  }
  
  .terugKnop a:hover{
    color: black;
  }
  
  .terugKnop a:hover:after{
    width: 100%;
  }

  .thumbGebouwAaantal{
    font-weight:bold !important;
  }

  .thumbGebouwBaantal{
    font-weight:bold !important;
  }

  .thumbGebouwCaantal{
    font-weight:bold !important;
  }

  .thumbGebouwDaantal{
    font-weight:bold !important;
  }

  .thumbGebouwEaantal{
    font-weight:bold !important;
  }

  .huur {
      fill: #00000037;
      stroke: white;
      stroke-width: 2px;
      transition: fill .3s ease-out;
      outline: none;
      cursor: pointer;
  }
  
  .tippy-box[data-theme~='custom'] {
      background-color: rgba(0, 0, 0, 0.9);
      color: white;
      font-family: 'Montserrat', sans-serif;  /* Montserrat font */
      font-size: 16px;  /* Increased from 14px */
      font-weight: 300;  /* Adding light weight for modern look */
      padding: 0;
      border-radius: 3px;
      box-shadow: none;
      width: auto !important;
      white-space: nowrap;
      letter-spacing: 0.5px;  /* Added letter spacing for modern look */
  }
  
  .tippy-box[data-theme~='custom'] .tippy-content {
      padding: 6px 12px;
      width: auto !important;
  }
  
  .tippy-content {
      width: auto !important;
      padding: 0;
      margin: 0;
      background-color: transparent;
  }


.svgVlak[status="beschikbaar"]{
  fill: #46b40780;
  stroke: white;
  stroke-width: 2px;
  transition: fill .3s ease-out;
  outline: none;
}

.svgVlakModal[status="beschikbaar"]{
  fill: #46b40780;
  stroke: white;
  stroke-width: 2px;
  transition: fill .3s ease-out;
  outline: none;
}

.svgVlak[status="optie"]{
  fill: #cab30780;
  stroke: white;
  stroke-width: 2px;
  transition: fill .3s ease-out;
  outline: none;
}

.svgVlakModal[status="optie"]{
  fill: #cab30780;
  stroke: white;
  stroke-width: 2px;
  transition: fill .3s ease-out;
  outline: none;
}
.svgVlak[status="verkocht"]{
  fill: #ca461672;
  stroke: white;
  stroke-width: 2px;
  transition: fill .3s ease-out;
  outline: none;
}

.svgVlakModal[status="verkocht"]{
  fill: #ca461672;
  stroke: white;
  stroke-width: 2px;
  transition: fill .3s ease-out;
  outline: none;
}
.svgVlak[status="onbeschikbaar"]{
  fill: #63636372;
  stroke: white;
  stroke-width: 2px;
  transition: fill .3s ease-out;
  outline: none;
}

.svgVlakModal[status="onbeschikbaar"]{
  fill: #63636372;
  stroke: white;
  stroke-width: 2px;
  transition: fill .3s ease-out;
  outline: none;
}
.svgVlak[status="gereserveerd"]{
  fill: #ca6d1672;
  stroke: white;
  stroke-width: 2px;
  transition: fill .3s ease-out;
  outline: none;
}

.svgVlakModal[status="gereserveerd"]{
  fill: #ca6d1672;
  stroke: white;
  stroke-width: 2px;
  transition: fill .3s ease-out;
  outline: none;
}
.svgVlak:hover{
    fill:#0000005a;
}

.svgVlakGebiedBerging{
  fill:#0000005a;
  stroke: #ffffff;
  stroke-width: 10;
  transition: fill .3s ease-out;
  outline: none;
}

.svgVlakGebiedBerging:hover{
  fill:#000000de;
}

.svgVlakGebied{
  fill:#0000005a;
  stroke:#ffffff;
  stroke-width:2;
  transition: fill .3s ease-out;
  outline: none;
}

.svgVlakGebied:hover{
  fill:#0000005a;
}

.img-overlay{
    position: relative;
    width: 100%;
}

/* Tooltip */

.tippy-content {
  padding:0px;
  margin:0px;
  color:black;
  background-color:white;
  width: 160px;
  border: 1px solid #e0e0e0;
}

.tooltipEigenschappen{
  font-family: 'Montserrat', sans-serif;
  height: auto;
  text-align: left;
  display: flex;
  flex-direction: column;
  padding: 0;
  margin: 0;
  font-weight: 400;
  font-size: 14px;
  color: #333;
}


.thumbGebouw{
  font-size:17px;
  font-weight:bold;
}

.thumbBouwnummer{
  padding: 8px;
  font-weight: 600;
  font-size: 16px;
  text-align: center;
  border-bottom: 1px solid #e0e0e0;
  margin: 0;
  background-color: white;
}

.thumbSoort{
  font-size: 13px;
  font-weight: normal;
  text-transform: uppercase;
  padding: 5px 10px;
  text-align: left;
  color: #666;
}

.thumbWoonoppervlakte{
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items:center;
  padding: 5px 10px;
  width: 100%;
}

.thumbWoonoppervlakte img{
  margin-right:7px;
  width:20px;
}

.thumbBuitenruimte{
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items:center;
  padding: 5px 10px;
  width: 100%;
}

.thumbBuitenruimte img{
  margin-right:7px;
  width:20px;
}

.thumbPrijs{
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 5px 10px;
  width: 100%;
}

.thumbPrijs img{
  margin-right:7px;
  width:20px;
}

/* Tooltip price display - 2 lines on desktop */
.thumbPrijs .prijs-text {
  display: flex;
  flex-direction: column;
}

.thumbPrijs .prijs-van {
  display: block;
  line-height: 1.2;
}

.thumbPrijs .prijs-dash {
  display: none; /* Hide dash in tooltip */
}

.thumbPrijs .prijs-tot {
  display: block;
  line-height: 1.2;
}

.thumbLigging{
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  padding: 5px 10px;
  width: 100%;
}

.thumbLigging img{
  margin-right:7px;
  width:20px;
}


.thumbAfbeeling{
  margin: 0;
  padding: 0;
}

.thumbAfbeeling img{
  object-fit: cover;
  height:125px;
  display: block;
  margin: 0;
  padding: 0;
}

@media (hover: none) {
  .tippy-box{
    display:none;
  }
}

.modalAlgemeenContent {
  max-height: 400px;
  overflow-y: auto;
  padding-right: 10px;
  margin-top: 15px;
}

.modalAlgemeenContent::-webkit-scrollbar {
  width: 8px;
}

.modalAlgemeenContent::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 4px;
}

.modalAlgemeenContent::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 4px;
}

.modalAlgemeenContent::-webkit-scrollbar-thumb:hover {
  background: #555;
}

.modalTabs {
  display: flex;
  border-bottom: 1px solid #ddd;
  background-color: #f9f9f9;
  margin: 20px 0;
}

.modalTabs button{
  font-weight: 300;
  font-family: 'Montserrat', sans-serif;
}

.modalTab {
  background: none;
  border: none;
  padding: 10px 20px;
  cursor: pointer;
  font-weight: bold;
  opacity: 0.6;
  font-family: 'Montserrat', sans-serif;
}

.modalTab.active {
  opacity: 1;
  border-bottom: 2px solid #000;
}

.modalTabContent {
  display: none;
}

.modalTabContent.active {
  display: block;
}
.modalDocumenten {
  max-height: 250px; /* Adjust this value as needed */
  overflow-y: auto;
  padding-right: 10px;
  margin-top: 15px;
}

/* Optional: Custom scrollbar styling */
.modalDocumenten::-webkit-scrollbar {
  width: 8px;
}

.modalDocumenten::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 4px;
}

.modalDocumenten::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 4px;
}

.modalDocumenten::-webkit-scrollbar-thumb:hover {
  background: #555;
}

.modalDocumentItem {
  padding: 10px;
  border-bottom: 1px solid #eee;
}

.modalDocumentItem a {
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #000;
}

.modalDocumentItem img {
  width: 24px;
  margin-right: 10px;
}

/* Modal */

.ag-full-width-row a{
  color: inherit; /* blue colors for links too */
  text-decoration: inherit; /* no underline */
}

.tingle-modal{
  /* Remove aspect-ratio: 20 / 10; */
  background: rgb(0 0 0 / 42%) !important;
}

.tingle-modal-box{
  width: 95% !important; /* Change from 100% to 95% to create some space on sides */
  /* max-width: 1200px; */
  border-radius: 0px !important;
  margin: 0 auto; /* Center the modal */
}

.tingle-modal-box__content{
  padding: 0px !important;
  font-family: 'Montserrat', sans-serif;
}


.modelBwnrPlattegrondVlak{
    border: 1px solid #515151;
    padding: 10px;
    margin-top: 20px;
    width:290px;
}

.modelBwnrPlattegrondVlak a{
  text-decoration: none;
  text-align:left;
}

.modelBwnrPlattegrondAfbeelding{
  width: 30px;
  margin: auto;
}

.modelBwnrPlattegrondTekst{
  text-transform: uppercase;
  font-size: 13px;
  font-weight: bold;
  text-align: left;
  color: black;
}

.modelInschrijvenVlak{
  border: 1px solid #515151;
  padding: 10px;
  margin-top: 10px;
  width:290px;
}

.modelInschrijvenVlak a{
  text-decoration: none
}

.modelBwnrInschrijvenTekst{
  text-transform: uppercase;
  font-size: 13px;
  font-weight: bold;
  text-align: left;
  color: black;
}

.modalBwnr{
  font-size:26px;
  font-weight: 300;
}

/* Status badges in pill form */
.modalStatusbeschikbaar,
.modalStatusoptie,
.modalStatusverkocht,
.modalStatusonbeschikbaar,
.modalStatusgereserveerd {
  font-size: 14px;
  font-weight: 500;
  color: white;
  padding: 6px 14px;
  border-radius: 20px; /* Rounded corners for pill shape */
  display: inline-block;
  text-align: center;
  text-transform: capitalize; /* Capitalize first letter */
  box-shadow: 0 2px 4px rgba(0,0,0,0.1); /* Subtle shadow for depth */
  margin-top: 5px;
  margin-bottom: 10px;
  min-width: 100px;
}

.modalStatusbeschikbaar {
  background-color: #4c9a46;
}

.modalStatusoptie {
  background-color: #e2d99d;
  color: #333; /* Darker text for better contrast on light background */
}

.modalStatusverkocht {
  background-color: #e1b09f;
}

.modalStatusonbeschikbaar {
  background-color: #b9b9b9;
}

.modalStatusgereserveerd {
  background-color: #e2c0a2;
}

.modalGroupTitel1{
  margin-top: 25px;
  margin-bottom: 10px;
}

.modalGroupTitel2{
  margin-top: 5px;
  margin-bottom:5px;
}

.modalAlgemeenVak{
  padding-top: 10px;
  border-top: 1px solid #c2c2c2;
  font-size: 15px;
  font-weight: 300;
}

.modalOverigVak{
  padding-top: 5px;
  border-top: 1px solid #c2c2c2;
  font-size: 15px;
  font-weight: 300;
}

.modalKenmerkenGroup{
  display:flex;
  flex-direction: row;
  line-height:1.5;
}

.modalKenmerkItem1{
  flex-basis: 40%;
  min-width: 40%;
}

.modalKenmerkItem1bvoKenmerk{
  flex-basis: 40%;
  min-width: 40%;
}


.modalKenmerkItem2{
  flex-basis: 60%;
  min-width: 60%;
}

.modalKenmerkItem3{
  flex-basis: 20%;
  min-width: 20%;
}

.modalKenmerkItem4{
  flex-basis: 80%;
  min-width: 80%;
}

.modalBwnrAfbeelding {
  width: 50%; /* Ongeveer 8/12 van de beschikbare ruimte */
  background-color: #e5e5e5;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 400px;
}

.modalBwnrEigenschappen {
  width: 50%; /* Ongeveer 4/12 van de beschikbare ruimte */
  padding: 20px;
  overflow-y: auto; /* Voeg scroll toe indien nodig */
}

.modalBwnrKolom {
  display: flex;
  width: 100%;
}

/* @media only screen and (max-width: 800px) {
  .modalBwnrAfbeelding {
    width: 100%;
    min-height: 300px;
  }

  .modalBwnrEigenschappen {
    width: 100%;
    padding: 15px;
  }
  
  .modalBwnrKolom {
    flex-direction: column;
  }
} */

.modalBwnrEigenschappen2{
  padding:25px;
  width:640px;
  padding-top: 15px;
  padding-bottom: 15px;
}

.modalBwnrKolom{
  display:flex;
}

.tingle-modal__close{
  color:white !important;
  width: 1.5rem ;
  height: 1.5rem ;
}

@media (max-width: 540px) {
  .tingle-modal__close {
    background-color: transparent !important
  }
}
.ag-root-wrapper{
  border:none !important;
}

/* Laadcirkel */

.lds-ellipsis {
  display: inline;
  position: fixed;
  height: 100%;
  width: 100%;
  background-color: #f3f3f2;
  z-index: 9999;
}
.lds-ellipsis div {
position: absolute;
top: 25%;
width: 11px;
height: 11px;
border-radius: 50%;
background: #ababab;
left: 50% !important;
animation-timing-function: cubic-bezier(0, 1, 1, 0);
}
.lds-ellipsis div:nth-child(1) {
left: 6px;
animation: lds-ellipsis1 0.6s infinite;
}
.lds-ellipsis div:nth-child(2) {
left: 6px;
animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(3) {
left: 26px;
animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(4) {
left: 45px;
animation: lds-ellipsis3 0.6s infinite;
}
@keyframes lds-ellipsis1 {
0% {
  transform: scale(0);
}
100% {
  transform: scale(1);
}
}
@keyframes lds-ellipsis3 {
0% {
  transform: scale(1);
}
100% {
  transform: scale(0);
}
}
@keyframes lds-ellipsis2 {
0% {
  transform: translate(0, 0);
}
100% {
  transform: translate(19px, 0);
}
}


/* Filter */
#woonoppervlakteSlider{
  margin-top: 35px;
  margin-left: 13px;
  margin-right: 20px;
  margin-bottom: 10px;
}

#buitenruimteSlider{
  margin-top: 35px;
  margin-left: 13px;
  margin-right: 20px;
  margin-bottom: 10px;
}

#eenKamerSlider{
  height: 35px;
  margin-top: 7px;
}

#tweeKamerSlider{
  height: 35px;
  margin-top: 7px;
}

#drieKamerSlider{
  height: 35px;
  margin-top: 7px;
}

#vierKamerSlider{
  height: 35px;
  margin-top: 7px;
}

.aantalKamersVlak{
  margin: 12px;
  margin-top: 0px;
  margin-bottom: 0px;
}

.aantalKamersNummer{
  margin: 3px;
  margin-top: 7px;
  margin-bottom: 13px;
}

.sliderVakBuitenruimte{
  width:100%;
}

.sliderVakWoonoppervlakte{
  width:100%;
}

.sliderVakKamers{
  display:flex;
}

.svgVlak[soortfilter="uit"] {
  fill: rgb(231 231 231 / 89%) !important;
  pointer-events:none;
}

.svgVlak[woonoppervlaktefilter="uit"] {
  fill: rgb(231 231 231 / 89%) !important;
  pointer-events:none;
}

.svgVlak[buitenruimtefilter="uit"] {
  fill: rgb(231 231 231 / 89%) !important;
  pointer-events:none;
}

.svgVlak[eenkamerfilter="uit"] {
  fill: rgb(231 231 231 / 89%) !important;
  pointer-events:none;
}

.svgVlak[tweekamerfilter="uit"] {
  fill: rgb(231 231 231 / 89%) !important;
  pointer-events:none;
}

.svgVlak[driekamerfilter="uit"] {
  fill: rgb(231 231 231 / 89%) !important;
  pointer-events:none;
}

.svgVlak[vierkamerfilter="uit"] {
  fill: rgb(231 231 231 / 89%) !important;
  pointer-events:none;
}

.noUi-connect{
  background:#7a7a7a !important;
}

.noUi-horizontal {
  height: 10px !important;
}

.noUi-horizontal .noUi-handle {
  width: 20px !important;
  height: 20px !important;
  right: -13px !important;
  top: -6px !important;
  border-radius: 50% !important;
}

.noUi-handle:after, .noUi-handle:before {
  background: none !important;
}

.noUi-tooltip {
  background: #7a7a7a !important;
  color: #fff !important;
  font-weight:700 !important;
  padding: 3px !important;
}

.noUi-vertical{
  width:12px !important;
}

.noUi-vertical .noUi-handle{
  width: 20px !important;
  height: 20px !important;
  right: -5.5px !important;
  bottom: -10px !important;
  border-radius: 0px !important;
}

/* List Grid*/

.full-width-panel:hover{
  background-color: #d9d9d9;
  cursor: pointer;
}



#kenmerken{
  position:absolute;
}

#myGrid{
  margin: 25px;
  margin-bottom: 0px;
  margin-right: 0px;
  height:500px;
  margin-top:60px;
  margin-left:0px;
}

.lijstThumbnail{
  padding:15px;
}

.lijstThumbnail img{
  width:75px;
  height:65px;
  border-radius:5px;
  object-fit: cover;
}

.full-width-panel{
  display:flex;
  margin-right: 15px;
}

.lijstEigenschappen{
  display:flex;
  width: 100%;
  justify-content: space-between;
  align-items: center;
}

#woningenGrid{
  display:flex;
  padding-left:25px;
  padding-right:25px;
  padding-bottom:25px;
  padding-top: 10px;
  position: relative;
  left: 0;
  right: 0;
  background-color: #ffffff;
}

#gridFilter{
  margin:0px;
}

#myGrid{
  width:100%;
  margin-top: 20px;
}

.ag-header {
  border-bottom: 0px !important;
}

.lijstKenmerken{
  margin-top:5px;
}


.legenda{
  margin-top: 10px;
  display:flex;
  flex-direction: row;
  justify-content: center;
}

.legenda p{
  margin-left: 5px;
  margin-right: 15px;
  color: black;
  font-family: 'Montserrat', sans-serif;
}

.legendaitem1{
  display: flex;
  flex-direction: row;
}

.legendaitem2{
  display: flex;
  flex-direction: row;
}

.legendaitem3{
  display: flex;
  flex-direction: row;
}

.legendaitem1 .swatch{
  background-color: #458f1b;
  height: 20px;
  width: 20px;
}

.legendaitem2 .swatch{
  background-color: #cab307;
  height: 20px;
  width: 20px;
}

.legendaitem3 .swatch{
  background-color: #ca6d16;
  height: 20px;
  width: 20px;
}

.woningStatusbeschikbaar{
  background-color:#4c9a46 !important;
}

.woningStatusoptie{
  background-color:#e2d99d !important;
}

.woningStatusverkocht{
  background-color:#e1b09f !important;
}

.woningStatusonbeschikbaar{
  background-color:#b9b9b9 !important;
}

.woningStatusongereserveerd{
  background-color:#e2c0a2 !important;
}

.rechterKolomGrid{
  width:100%;
}

.sorteerKnoppen{
  font-family: 'Montserrat', sans-serif;
  font-weight: bold;
  font-size: 13px;
  position: absolute;
  right: 25px;
  margin-top: 10px;
  color: black;
  z-index: 10;
}

.soortKnoppen{
  font-family: 'Montserrat', sans-serif;
  font-weight: bold;
  font-size: 13px;
  position: absolute;
  left: 25px;
  margin-top: 10px;
  color: black;
  z-index: 10;
}

.sorteerKnop{
  padding:8px;
  background-color:white;
  border:1px rgb(218, 218, 218) solid;
  font-weight:bold;
  font-size: 13px;
}

.activeKnop{
  background-color:#89ac7c;
}


/* Modern dropdown styling */
.soortKnoppen label,
.sorteerKnoppen label {
  display: inline-block;
  margin-right: 18px;
  margin-bottom: 0;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 14px;
  color: #333;
  letter-spacing: 0.5px;
  vertical-align: middle;
}

.soortKnoppen select,
.sorteerKnoppen select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: #ffffff;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 16px;
  border: 2px solid #e0e0e0;
  border-radius: 8px;
  padding: 12px 40px 12px 16px;
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: #333;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
  min-width: 180px;
  vertical-align: middle;
  display: inline-block;
}

.soortKnoppen select:hover,
.sorteerKnoppen select:hover {
  border-color: #619661;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  transform: translateY(-1px);
}

.soortKnoppen select:focus,
.sorteerKnoppen select:focus {
  outline: none;
  border-color: #619661;
  box-shadow: 0 0 0 3px rgba(97, 150, 97, 0.2);
}

.soortKnoppen select:active,
.sorteerKnoppen select:active {
  transform: translateY(0);
}

/* Form container styling */
.soortKnoppen form,
.sorteerKnoppen form {
  background-color: #ffffff;
  padding: 16px;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  border: 1px solid #f0f0f0;
}

/* Option styling */
.soortKnoppen select option,
.sorteerKnoppen select option {
  padding: 12px;
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  color: #333;
  background-color: #ffffff;
}

.soortKnoppen select option:hover,
.sorteerKnoppen select option:hover {
  background-color: #f8f9fa;
}

.soortKnoppen select option:checked,
.sorteerKnoppen select option:checked {
  background-color: #619661;
  color: white;
}

/* 3-column filter controls layout */
.filter-controls-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 100%;
  padding: 15px 20px;
  background-color: #f8f9fa;
  border-radius: 12px;
  margin-bottom: 20px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  box-sizing: border-box;
  overflow: hidden;
}

.legend-center {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 15px;
  flex: 1;
  max-width: 300px;
}

.legend-center .legendaitem1,
.legend-center .legendaitem2,
.legend-center .legendaitem3 {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.legend-center .swatch {
  height: 16px;
  width: 16px;
  border-radius: 3px;
  margin-right: 8px;
}

.legend-center .legendaitem1 .swatch {
  background-color: #458f1b;
}

.legend-center .legendaitem2 .swatch {
  background-color: #cab307;
}

.legend-center .legendaitem3 .swatch {
  background-color: #ca6d16;
}

.legend-center p {
  margin: 0;
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  font-weight: 500;
  color: #333;
}

/* Update dropdown positioning for new layout */
.filter-controls-container .soortKnoppen,
.filter-controls-container .sorteerKnoppen {
  position: static;
  margin: 0;
  flex: 0 0 auto;
  min-width: 0;
}

.filter-controls-container .soortKnoppen form,
.filter-controls-container .sorteerKnoppen form {
  margin: 0;
  padding: 0;
  background: none;
  box-shadow: none;
  border: none;
}

.filter-controls-container .soortKnoppen select,
.filter-controls-container .sorteerKnoppen select {
  min-width: 140px;
  max-width: 180px;
}

/* Responsive design for smaller screens */
@media only screen and (max-width: 1024px) {
  .filter-controls-container {
    padding: 12px 15px;
    gap: 10px;
  }
  
  .legend-center {
    gap: 10px;
    max-width: 250px;
  }
  
  .filter-controls-container .soortKnoppen select,
  .filter-controls-container .sorteerKnoppen select {
    min-width: 120px;
    max-width: 150px;
  }
}

@media only screen and (max-width: 768px) {
  .filter-controls-container {
    flex-direction: column;
    align-items: center;
    gap: 20px;
    padding: 20px 3%;
    width: 94%;
    margin: 0 auto 20px auto;
    box-sizing: border-box;
  }
  
  #woningenGrid {
    padding-left: 3%;
    padding-right: 3%;
  }
  
  .legend-center {
    order: 1;
    width: 100%;
    justify-content: center;
  }
  
  .filter-controls-container .soortKnoppen {
    order: 2;
    width: 100%;
  }
  
  .filter-controls-container .sorteerKnoppen {
    order: 3;
    width: 100%;
  }
  
  .filter-controls-container .soortKnoppen,
  .filter-controls-container .sorteerKnoppen {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    text-align: left;
  }
  
  .filter-controls-container .soortKnoppen form,
  .filter-controls-container .sorteerKnoppen form {
    width: 95%;
    max-width: 450px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }
  
  .filter-controls-container .soortKnoppen label,
  .filter-controls-container .sorteerKnoppen label {
    width: 100%;
    text-align: left;
    margin-bottom: 8px;
    margin-right: 0;
  }
  
  .filter-controls-container .soortKnoppen select,
  .filter-controls-container .sorteerKnoppen select {
    width: 100%;
    max-width: 100%;
    min-width: auto;
  }
  
  /* Mobile price display - 2 lines */
  .prijs-container {
    align-items: flex-start !important;
  }
  
  .prijs-text {
    display: flex;
    flex-direction: column;
  }
  
  .prijs-van {
    display: block;
    line-height: 1.2;
  }
  
  .prijs-dash {
    display: none; /* Hide dash on mobile */
  }
  
  .prijs-tot {
    display: block;
    line-height: 1.2;
  }
}

@media only screen and (max-width: 800px) {

  .tingle-modal{
    aspect-ratio: auto;
  }

  .sorteerKnoppen{
    margin-top:50px;
    left:25px;
    right:auto;
  }

  .modalBwnrKolom{
    flex-flow: column wrap;
  }

  .modalBwnrAfbeelding{
    width:100%;
  }

  .modalBwnrEigenschappen{
    width:100%;
  }

  .modalKenmerkItem1{
    flex-basis: 40%;
    min-width: 40%;
  }

  .modalKenmerkItem1bvoKenmerk{
    flex-basis: 40%;
    min-width: 40%;
    margin-top: 3px;
  }

  .modalKenmerkItem2{
    flex-basis: 60%;
    min-width: 60%;
  }

  .modalKenmerkItem3{
    flex-basis: 40%;
    min-width: 40%;
  }

  .modalKenmerkItem4{
    flex-basis: 60%;
    min-width: 60%;
  }

  .tingle-modal--overflow {
    padding-top: 0vh !important;
  }

  .tingle-modal-box__content {
    overflow-y: auto !important;
  }

  .modalBwnrEigenschappen2{
    width:100%;
  }

  .modelBwnrPlattegrondVlak{
    width:100%;
  }

}

@media only screen and (max-width: 1024px) {
  #myGrid {
    margin: 0px;
    margin-top:80px;
  }

  .lijstKenmerken{
    display:flex;
    flex-wrap:wrap;
  }

  #gridFilter {
    margin: 0px;
  }

  #woningenGrid{
    margin:0px;
    margin-right:0px;
    padding:0px;
  }

}


@media only screen and (max-width: 700px) {


  .modelBwnrPlattegrondVlak a {
    display: inline;
  }
  
  .terugknop{
    right:5px !important;
    top:5px !important;
  }

  .terugKnop a{
    width: 110px;
    height: 20px;
    line-height: 20px;
    font-size: 10px;
    padding: 3px;
  }

  .menu{
    width:auto;
    margin-top:10px;
    display:flex;
  }

  .menu span{
    font-size:13px;
    line-height: 25px;
    margin-left: 13px;
  }

  .menu label.menu-toggle{
    height:25px;
  }
  
  #myGrid{
    margin:0px;
    margin-top:20px;
    padding: 0px;
    height:500px;
  }

  .filterKnop{
    display:inline;
  }

  #gridFilter{
    z-index: 1;
    margin:0px;
    width:100%;
    margin: auto;
  }

  #woonoppervlakteSlider{
    margin-left:15px;
    margin-right:25px;
    margin-top:30px;
  }
  
  #buitenruimteSlider{
    margin-left:25px;
    margin-right:20px;
    margin-top:30px;
  }

  .sliderVakBuitenruimte{
    margin-top:0px;
  }

  .lijstKenmerken{
    display:flex;
    flex-wrap:wrap;
  }

  .sliderTitel{
    text-align:center;
  }

  .sliderTitelKamers{
    text-align:center;
  }

  .sliderVaksliderCat{
    display:flex;
    width: 66.6%;
  }

  .sliderVakAantalKamers{
    width: 33.3%;
  }

  .sliderVakKamers{
    justify-content:center;
  }

  .verdiepingsButtons{
    right:0px;
    top: 0px;
    width: 83px;
  }

  .verdiepingsButtons a{
    font-size:9px;
    width:auto;
  }

  .terugKnop{
    top:5px;
    left:5px;
  }

  .terugKnop a {
    width: 75px;
    font-size: 10px;
    letter-spacing: 0px;
  }

  .buttonTitel{
    font-size:11px;
    margin-bottom:1px;
  }

  .verdiepingsKnop{
    height:23px;
  }


  .verdiepingsButtons a{
    line-height:25x;
  }

}

@media only screen and (max-width: 420px) {
.woningStatusbeschikbaar{
  padding: 5px;
  font-size: 12px;
  font-weight: bold;
  margin-right: 10px;
}

.gridVerdieping{
  display:none;
}

  .eigenschappenLinks p{
    font-size:13px !important;
    display:grid;
  }

  #myGrid{
    margin-top:20px;
  }
  
  #gridFilter {
    width: 100%;
  }

  .lijstEigenschappen{
    flex-wrap:auto;
  }

  .sliderVaksliderCat{
    flex-wrap:wrap;
    width:50%;
  }

  .sliderVakAantalKamers{
    width:50%;
  }

  .sorteerKnoppen{
    margin-top:50px;
    left:25px;
    right:auto;
  }

}