.my_dark_overlay {
  flex-direction: column;
  overflow:hidden;
}

 .my_dark_overlay .container > * {
            margin-bottom: 20px; /* Abstand zwischen den Elementen */
        }
        .my_dark_overlay .container > *:last-child {
            margin-bottom: 0; /* Entfernt den unteren Abstand des letzten Elements */
        }

.sentence-break p::after {
            content: "\A";
            white-space: pre;
        }

.category-list {
 line-height: 30px; 
}

    .flex-card {
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            height: 100%;
        }
        .flex-card img {
            width: 100%;
            height: auto;
        }
.card {
    background: #f6f8fa;
    border: none;
    padding: 2rem;
    border-radius: 8px;
    border: 3px solid #F6F8FA;
    transition: background 0.2s ease-in;
}

.card:hover {
    background: #fff;
}

img.card-img-top {
    width: 25%;
}

.card-body {
  padding:0;
  padding-top:10px;
}

.card-text {
  font-size: 12px;
}

  .flip-card {
    perspective: 1000px;
    width: 100%;
    height: 300px;
}

.flip-card-inner {
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
    text-align: center;
    transition: transform 0.6s;
    transform-style: preserve-3d;
}

.flip-card:hover .flip-card-inner {
    transform: rotateY(180deg);
}

.flip-card-front,
.flip-card-back {
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
    backface-visibility: hidden;
    border-radius: 8px;
    background: #f6f8fa;
    border: none;
    padding: 2rem;
    position: absolute;

}

.card_ {

}


.flip-card-front {
    background-color: #f6f8fa;
    color: #000;
}

.flip-card-back {
    transform: rotateY(180deg);
}



.card-img-top {
    max-height: 200px;
    object-fit: cover;
}

:root {
  --form-control-color: #fff;
  --form-control-disabled: #ccc;
}

button.remove-filter {
    background: transparent;
    border: none;
    font-family: 'Lexend';
    display: flex;
    font-weight: 300;
}

#preloader {
            position: fixed;
            left: 0;
            top: 0;
            width: 100%;
            height: 100%;
            z-index: 9999;
            background-color: #fff;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        /* Verstecken Sie den Inhalt, bis das Preloading abgeschlossen ist */
        .hidden {
            display: none;
        }

.listing-container {
  display: flex;
  gap: 20px;
  margin: 0 auto;
  padding: 20px;
  padding-top: 0;

}

/* PRODUCT DETAILS */

.tooltip .tooltip-arrow {
            display: none;
 }

.tooltip {
  height: 30px;
}


.product-info {
    padding: 20px 0;
    position: relative;
   user-select: none;
}

.product-details-list {
    list-style: none;
    padding: 0;
    margin: 0 0 20px;
    list-style-type: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: 2fr 2fr;
    gap: 10px;

}

.product-details-list i {
    font-size: 24px;
    color: #424242;
}

.product-details-list li {
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 0;
}

.product-details-list li span {
  font-size: 14px;
  width: auto;
  font-weight: normal;
}


.additional-info {
  padding-top: 10px;
   display: flex;
    flex-direction: column;
}

.additional-info ul{
  padding-left: 0;
      display: flex;
  flex-direction: column;
  margin-top: auto;
  margin-bottom: 0;
}

.additional-info span,.additional-info p {
 font-size: 12px;
  color: #424242 !important;
}

.spinner-border {
  color: #242424 !important;
}

/* ICON GRID */
.accordion-item.product_category {
    background: #fff;
    color: #262626;
    border: 3px solid #262626;
}

.product_category button.accordion-button {
    color: #262626 !important;
      box-shadow: none !important;
}

.product_category .accordion-button:after,.product_category .accordion-button:not(.collapsed) {
  color: #262626 !important;
}

.category-filter-options {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* 3er-Grid */
    gap: 10px; /* Abstand zwischen den Icons */
}

.category-filter-options .filter-option {
    display: flex;
    align-items: center;
    justify-content: center;
}

h1 span{
    background-image: linear-gradient(to right, #369369, #2dd087);
    -webkit-background-clip: text;
    -moz-background-clip: text;
    -webkit-text-fill-color: transparent;
    -moz-text-fill-color: transparent;
}





.category-filter-options .filter-option label {
    display: flex;
    flex-direction: column;
    align-items: center;
    cursor: pointer;
    font-size: 12px; /* Schriftgröße anpassen */
}

.category-filter-options .filter-option input[type="checkbox"] {
    display: none; /* Checkbox verbergen */
}

.category-filter-options .filter-option label img.category-icon {
    width: 40px; /* Icon Größe anpassen */
    height: 40px; /* Icon Größe anpassen */
    margin-bottom: 5px;
}

.category-filter-options .filter-option label span {
    text-align: center;
    font-size: 12px; /* Schriftgröße anpassen */
}

/* ICON GRID ENDE */
.accordion-item {
    background-color: rgba(38, 38, 38, 1);
    border-radius: 8px;
    color: #fff;
}

.accordion-button,.accordion-button:not(.collapsed) {
  background: transparent;
  color: #fff;
  text-transform: uppercase;
  font-weight: 900;
}

.filter-sidebar {
   /* position: sticky; */
    top: 100px;
    height: 100%;
    min-width: 275px !important;
}

.filter-sidebar h3 {
  margin-bottom: 20px;
  font-size: 24px;
  color: #333;
}

.accordion-button:after {
   background-image: none;
    content: "+";
    flex-shrink: 0;
    height: var(--bs-accordion-btn-icon-width);
    margin-left: auto;
    transition: unset;
    width: unset;
    color: #fff;
}

.accordion-button:not(.collapsed):after {
    background-image: none;
    transform: none;
    content: "-";
}

.accordion-header {
    color: #fff !important;
}

.accordion-body {
  padding: 10px 20px;
}

.form-select {
  width: 100%;
  padding: 5px;
  border: 1px solid #ccc;
  border-radius: 4px;
}

.btn-primary {
  background-color: #333;
  border-color: #333;
  color: white;
  padding: 10px 20px;
  cursor: pointer;
  border-radius: 4px;
  transition: background-color 0.3s;
}

.btn-primary:hover,
.btn-primary:focus {
  background-color: #555;
  border-color: #555;
}

.top_listing-container {
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    padding-left: 20px;
    align-content: center;
    align-items: bottom;
      margin-bottom: 10px;
}

/* Sortierung */
/* Active Filter */
.active-filters {
    position: static;
    width: 100%;
}

#active-filters-list {
    gap: 10px;
    display: flex;
    flex-wrap: wrap;
}

.active-filter {
    background-color: #262626;
    padding: 5px 10px;
    border-radius: 5px;
    display: inline-flex;
    align-items: center;
    color: #fff;
    font-weight: 900;
}

.active-filter span {
    margin-right: 5px;
}

.remove-filter {
    cursor: pointer;
    color: #fff;
}

input[type="checkbox"] {
  /* Add if not using autoprefixer */
  -webkit-appearance: none;
  /* Remove most all native input styles */
  appearance: none;
  /* For iOS < 15 */
  background-color: var(--form-background);
  /* Not removed via appearance */
  margin: 0;
  font: inherit;
  color: currentColor;
  width: 1.15em;
  height: 1.15em;
  border: 0.15em solid currentColor;
  border-radius: 0.15em;
  transform: translateY(-0.075em);
  margin-right: 5px;
  display: inline-grid;
  place-content: center;
}

input[type="checkbox"]::before {
  content: "";
  width: 0.65em;
  height: 0.65em;
  clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
  transform: scale(0);
  transform-origin: bottom left;
  transition: 120ms transform ease-in-out;
  box-shadow: inset 1em 1em var(--form-control-color);
  /* Windows High Contrast Mode */
  background-color: CanvasText;
}

input[type="checkbox"]:checked::before {
  transform: scale(1);
}

input[type="checkbox"]:focus {
}

input[type="checkbox"]:disabled {
  --form-control-color: var(--form-control-disabled);
  color: var(--form-control-disabled);
  cursor: not-allowed;
}

/* Product List */
.product-list {

    max-width: 100%;
    display: flex;
  flex-direction: column;

}

.hhs-auto-grid-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; /* Abstand zwischen den Karten */
}

.auto-index__post {
  box-sizing: border-box;
  border-radius: 8px;
  background: #F6F8FA;
  border: 3px solid #F6F8FA;
  transition: background 0.2s ease-in;
}

.auto-index__post a {
    text-decoration: none !important;
  cursor: pointer; 
}

.auto-index__post:hover {
    background: #fff;
}

.hhs-auto-card-inner {
  background: rgba(#null, 0.0);
    padding: 20px;
  border-radius: 10px;
  margin-bottom: 0px !important;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  height: 100%;
  
}

.auto-index__post-image img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 8px;
  padding:20px;
}

.mixitup-page-list {
    text-align: center;
}

.modal-details {
    margin-top: auto;
    text-decoration: underline;
    display: inline;
    padding-left: 15px;
    width: auto;
    font-weight: 300;
}

button.mixitup-control {
    border: 0;
    background: transparent;
    border-radius: 8px;
    color: #242424;
    padding: 0px 12px;
  font-size: 13px;
}

button.mixitup-control.mixitup-control-active {
    background: #f6f8fa;
    font-weight: bold;
}

button.mixitup-control:hover {
    background: #f6f8fa;
}

.auto-index__post-content {
  flex-grow: 1;
    padding: 15px;
      padding-bottom: 0;
    display: flex;
    flex-direction: column;
  justify-content: space-between;
}

.card_post_title a {
  font-size: 18px;
  color: #333;
  text-decoration: none;
  margin-bottom: 8px;
  display: block;
}

.card_post_title a:hover {
  text-decoration: underline;
}

h4.card_post_title span {
    font-size: 16px;
    display: block;
  font-weight: 400;
}

.auto-details {
  font-size: 14px;
  color: #555;
}

.leasing-rate {
  color: #000;
  margin-top: 10px;
  font-weight: 900;
     margin-top: auto; /* Schiebt das Element nach unten */
  display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.leasing-price {
      background-image: linear-gradient(to right, #369369, #2dd087);
    -webkit-background-clip: text;
    -moz-background-clip: text;
    -webkit-text-fill-color: transparent;
    -moz-text-fill-color: transparent;
  font-size: 1.8em;
   align-items: flex-start;
    display: flex;
    flex-direction: row;
    font-weight: 900;
    margin-top: auto;
    align-items: baseline;
    gap: 10px;
}

.leasing-rate .per-month {
  font-size: 12px;
  font-weight: normal;
  color: #555;
}

input.price-input {
    width: 100%;
}

.category-filter-options .filter-option.active label {
    color: #DA7118;
}

.product_tags_wrapper {
  display: flex; /* Ändere display auf flex */
  flex-wrap: wrap; /* Ermöglicht das Umbrechen der Elemente */
  gap: 10px; /* Setzt den Abstand zwischen den Flex-Elementen */
  padding-bottom: 20px;
}

.product_tags_wrapper span {
    color: #242424;
    font-size: 14px;
    font-weight: 500;
    display: inline-flex;
    flex-direction: row;
}

.product_tag_1 {
  border-bottom: 2px solid #9E2034;
}

.product_tag_2 {
  border-bottom: 2px solid #DA7118;
}

.product_tag_3 {
  border-bottom: 2px solid #369369;
}

.auto-index__post-button {
  margin-top: auto;
  padding: 8px 16px;
  background-color: #0073e6;
  color: #fff;
  text-decoration: none;
  border-radius: 4px;
  text-align: center;
  display: block;
}

.auto-index__post-button:hover {
  background-color: #005bb5;
}

@media (max-width: 1140px) {

.hhs-auto-grid-cards {
    grid-template-columns: repeat(2, 1fr);
}
  
  @media (max-width: 1023px) {

.modal-details {
  display: block;
  }
    
     a#return-to-top {
    background: rgba(2,2,2,0.5) !important;
       display:none !important;
     
}

}


@media (max-width: 991px) {
  .res-p-fix-0 {
      padding: 0 !important;
}
      .res-m-fix-0 {
      margin: 0 !important;
}
  .res-mt-fix-2 {
    margin-top:2rem;
  }
  
    .filter-sidebar {
    width: 100%;
      position: relative;
    top: unset;
  }



.container.top_listing-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
  padding-right: 0;
}

#active-filters {

}

#clear-filters {
  cursor: pointer;
  align-self: end;
  padding-bottom: 10px;
}

.sort-options {
    display: flex;
    justify-content: flex-end;
}

.sort-options select {
    width: 200px;
}
}

/* Optional: Responsive Anpassungen */


@media (max-width: 768px) {
    .auto-index__post {
        flex: 1 1 calc(100% - 20px); /* Einspalten-Layout für kleine Bildschirme */
    }
  .product_tags_wrapper {
    flex-wrap: wrap;
}
.hhs-auto-grid-cards {
    grid-template-columns: repeat(1, 1fr);
}
    
}
  
.featured-products .row {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory; /* Optionale Snap-Funktion */
    padding-bottom: 1rem; /* Platz für Scrollbar */
}

.featured-products .col {
    flex: 0 0 auto;
    width: 250px; /* Oder gewünschte Breite */
    margin-right: 1rem;
    scroll-snap-align: start;
}

@media (max-width: 575px) {
  .hhs-auto-grid-cards {
    grid-template-columns: 1fr; /* Eine Spalte auf Mobilgeräten */
  }
  .container.listing-container {
    flex-direction: column;
}
  
  .my_dark_overlay {
    padding:2rem;
  }
  #active-filters-list {
    gap: 10px;
    display: flex;
    flex-wrap: wrap;
    margin-bottom:10px;
}
.container.top_listing-container {
    display: flex;
    flex-direction: column;
    gap: 10px; /* Optional: Abstand zwischen den Elementen */
}



  .sort-options {
        order: 3;
        width: 100%;
        padding-right: 20px;
        margin: 0 auto;
    }

  .sort-options select {
    width: 100%;
  }


/* Ändern der Reihenfolge */
#clear-filters {
    order: 1; /* Zweiter Platz */
  padding-right: 20px;
  cursor: pointer !important;
}
  

.active-filters {
    order: 2; /* Letzter Platz */
}
  
  .modal-body .product-details-list {
    grid-template-columns: 1fr;
}
  .auto-index__post-content,.modal-details {
    padding:0;
}
        .modal-details button {
            font-size: 12px !important;
            background: transparent;
            color: #242424;
            padding: 5px 10px;
        }
  
          .modal-details button:focus {
            
            background: transparent;
        }
}
