

.auto3-grid-section{
  max-width: 1300px;
  margin: 0 auto;
  padding: 20px;
}


.auto3-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 20px;
  width:100%;
}


.auto3-card {
  display: flex;
  flex-direction: column;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.05);
  overflow: hidden;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}



.auto3-card-img img {
  width: 100%;
  height: 240px;
  object-fit: cover;
  display: block;
}



.auto3-grid-section .numberofoffers{
font-size:24px;
color:#fff!important;
}



.auto3-price,
.numberofoffers{
 color:#054163!important;
}



.card-title-section{
  border-bottom:1px solid #dee2e6;
  padding:15px;
}


.card-emmision-section{
  border-top:1px solid #dee2e6;
  padding-top:10px;
}


.auto3-card-content{
   display: flex;
   flex-direction: column;
}


.card-title-section h3 {
  font-size: 1rem;
  font-weight: 400;
  margin:0;
  color: #111!important;
  line-height: 1.3;

}



.card-emmision-section p{ 
 padding-left: 15px;
}



.model-description{ 
color:#868e96;
font-size: 14px;
font-weight: 400;
margin-bottom:0;
}


.card-body-section {
  padding: 15px;
}



.card-body-section p.auto3-price{
  font-size:16px;
font-weight:500;
}


.card-body-section p.auto3-price + p.auto3-price{
  font-size:20px;

}


.fahrzeugliste-slider a:hover,
.auto3-grid a:hover{
  text-decoration:none;
}


.auto3-price {
  font-weight: bold;
  font-size: 1.1rem;
  margin-bottom: 6px;
}

.auto3-km {
  color: #555;
  font-size: 0.9rem;
}


.spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 50px;
  height: 50px;
  border: 5px solid #ccc;
  border-top: 5px solid #007aff;
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
  transform: translate(-50%, -50%);
  z-index: 9999;
}

@keyframes spin {
  to { transform: translate(-50%, -50%) rotate(360deg); }
}

.swiper {
  opacity: 0; /* hidden until loaded */
  transition: opacity 0.3s ease;
}

.fahrzeugliste-slider { position: relative; opacity: 0; transition: opacity .3s ease; }
.fahrzeugliste-spinner {
  position: absolute; inset: 0; display:flex; align-items:center; justify-content:center;
  z-index:10; background: rgba(255,255,255,0); /* or 0.6 for veil */
}
.fahrzeugliste-spinner::before{
  content:''; width:40px; height:40px; border:4px solid #ccc; border-top-color:#007aff;
  border-radius:50%; animation: fahrzeugliste-spin .8s linear infinite;
}
@keyframes fahrzeugliste-spin { to { transform: rotate(360deg); } }



.card-body-section{
  font-weight:500;
}

.card-emmision-section p,
.card-body-section p{
  font-weight: 400;
    font-size: 12px;
    font-family: "Poppins", sans-serif;
    margin-bottom: 3px;
}


.d-flex-date{
  display: flex;
  flex-wrap:wrap;
  width: 100%;
  align-items: center;
 font-size:15px;
align-items:anchor-center;
}


.d-flex-date p{
  display: flex;
  color: #111!important;
font-weight:400;
}

.card-emmision-section p{
color: #000;
font-size: 10px;
margin-bottom: 10px;
}


.d-flex-date p + p{
  margin-left: 10px;
}

.d-flex-date p.seatbells + p.seatbells{
  margin-left:0px;

}

.d-flex-date p span {
  margin-right: 2px;
}

/* pagination */


.pagination.auto3-pagination{
 text-align:center;
 margin-top:60px;
display:block;
}

.pagination-dots,
.auto3-page-link,
.page-numbers{
 text-align: center;
 position: relative;
 margin: 2px;
 font-size: 20px;
 display: inline-block;
 height: 37px;
 line-height: 34px;
 text-align: center;
 width: auto;
 min-width: 37px;
 border-radius: 4px;
 -webkit-transition: all .3s;
 -o-transition: all .3s;
 transition: all .3s;
 vertical-align: top;
border: 2px solid #054163!important;;
color: #054163!important;
background-color:#fff!important;
}





.pagination auto3-pagination .current,
.auto3-page-link.active{
  background-color:#054163!important;
   color:#fff!important;
}

.disabled{
  display:none;
}


/* slider */


#auto3-slider.fahrzeugliste-slider {
  width: 100%;
  max-width: 1200px;
height: 100%;
}

#auto3-slider.slider-wrapper{
  max-width:1300px;
  margin:auto;
  padding:100px 0;
}

#auto3-slider.slider-wrapper .swiper-slide {
  display: flex;
  align-items: stretch;
}


 #auto3-slider.swiper-slide .auto3-card {
  width: 100%;
  display: flex!important;
  flex-direction: column!important;
}

.slider-wrapper .auto3-prev,
.slider-wrapper .auto3-next {
  cursor: pointer;
  font-size: 2rem;
  user-select: none;
  padding: 10px;
  color: #333;
}



.slider-wrapper .swiper-button-next, .slider-wrapper .swiper-button-prev {
color:#fff!important;
}


.slider-wrapper .swiper-button-next{
right:-3%!important
}
 
.slider-wrapper .swiper-button-prev {
left:-3%!important;
}

/* Optional: if slider is overflow:hidden, force visibility */
.fahrzeugliste-slider-wrapper {
  position: relative;
  overflow: visible; /* important */
}




.slider-wrapper .swiper-button-next:after,
.slider-wrapper .swiper-button-prev:after {
 
   font-family:"Font Awesome 5 Free"!important;
   font-weight: 600 !important;
}


.slider-wrapper .swiper-button-next:after{
   content: "\f105"!important; /* Font Awesome icon for arrow right */

}

.slider-wrapper .swiper-button-prev:after {
   content:"\f104"  /* Font Awesome icon for arrow left */

}




/* Optional: responsive text tweaks */


@media (max-width: 1265px) {
.slider-wrapper .swiper-button-next,
.slider-wrapper .swiper-button-prev{
bottom: 3px;
top: auto;
}


.slider-wrapper .swiper-button-prev {
    left: 50%!important;
    transform: translateX(-100%)!important;
    /* optional: Abstand zum rechten Pfeil */
    margin-right: 10px!important;
  }

  /* rechter Pfeil: bei 50% der Breite, kein Rück-Offset */
.slider-wrapper .swiper-button-next {
    left: 50%!important;
    transform: translateX(0)!important;
    margin-left: 10px!important;
  }


}

@media (max-width: 1230px) {
 .slider-wrapper {
 padding-left:20px;
 padding-right:20px;
  }

}

@media (max-width: 1160px) and (min-width: 1100px) {
.d-flex-date.getrieb p+p {
    margin-left: 0px;
}

.d-flex-date.getrieb {
  flex-direction: column;
  align-items: baseline;
}

}

@media (min-width: 830px) and (max-width: 874px) {
 .d-flex-date.getrieb p+p {
    margin-left: 0px;
}

.d-flex-date.getrieb {
  flex-direction: column;
  align-items: baseline;
}
}





@media (max-width: 767px) {
  .auto3-card-img img {
    height: 100%;
  }
}




@media (max-width: 500px) {
  .auto3-card-content h3 {
    font-size: 0.95rem;
  }
  .auto3-price {
    font-size: 1rem;
  }
}


/* 1) Slides stretch to same height */
.fahrzeugliste-slider .swiper-wrapper { align-items: stretch; }
.fahrzeugliste-slider .swiper-slide {
  display: flex;          /* let the slide be a flex box */
  height: auto;           /* let it grow to tallest row-mate */
}

/* 2) Card fills the slide height */
.fahrzeugliste-slider .auto3-card,
.fahrzeugliste-slider .swiper-slide > a {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;         /* fill available height */
  height: 100%;
}

/* 3) Make image area consistent */
.fahrzeugliste-slider .auto3-card-img {
  width: 100%;
  overflow: hidden;
}
.fahrzeugliste-slider .auto3-card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;      /* prevents tall/short images from changing card height */
  display: block;
}

/* Ensure content can stretch but not overflow weirdly */
.fahrzeugliste-slider .auto3-card-content { display: flex; flex-direction: column; }
.fahrzeugliste-slider .card-body-section { flex: 1 1 auto; }


.card-emmision-section{ display: flex;
    flex-grow: 1;
    align-items: center; }