@charset "UTF-8";

.cursor-help {
  cursor: help;
}

.preloader {
  overflow: hidden;
  display: none;
}

.preloader .preloader-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #666;
}

.preloader .lds-ring {
  display: inline-block;
  position: relative;
  width: 80px;
  height: 80px;
  margin-bottom: 10px;
}

.preloader .lds-ring div {
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 64px;
  height: 64px;
  margin: 8px;
  border: 8px solid #666;
  border-radius: 50%;
  animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  border-color: #666 transparent transparent transparent;
}

.preloader .lds-ring div:nth-child(1) {
  animation-delay: -0.45s;
}

.preloader .lds-ring div:nth-child(2) {
  animation-delay: -0.3s;
}

.preloader .lds-ring div:nth-child(3) {
  animation-delay: -0.15s;
}

@keyframes lds-ring {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

.paginacion-mx {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.5rem 0;
}

.paginacion-mx select {
  height: 32px;
  margin-left: 5px;
  margin-right: 5px;
}

.prev-next-page {
  white-space: nowrap;
  color: #000;
  font-size: 15px;
}

.prev-next-page.prev {
  margin-right: auto;
}

.prev-next-page.next {
  margin-left: auto;
}

.prev-next-page i {
  font-size: 12px;
}

span.prev-next-page {
  opacity: 0.5;
  cursor: default;
}

a.prev-next-page {
  color: #000;
  font-weight: 700;
}

a.prev-next-page,
a.prev-next-page:hover {
  text-decoration: none;
}

a.prev-next-page:hover {
  color: #0076ff;
}

.paginacion-mx--info {
  margin-left: 5px;
  margin-right: 5px;
  color: #000;
}

.paginacion-mx--pages-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
}

.paginacion-mx--pages-nav .page-numbers {
  color: #000;
  padding-left: 3px;
  padding-right: 3px;
  margin-left: 3px;
  margin-right: 3px;
  padding-bottom: 2px;
  display: block;
  line-height: 17px;
}

.paginacion-mx--pages-nav span.page-numbers:not(.dots) {
  opacity: 0.5;
  cursor: default;
  box-shadow: 0 -2px 0 #000 inset;
}

.paginacion-mx--pages-nav a.page-numbers {
  color: #000;
}

.paginacion-mx--pages-nav a.page-numbers,
.paginacion-mx--pages-nav a.page-numbers:hover {
  text-decoration: none;
}

.paginacion-mx--pages-nav a.page-numbers:hover {
  color: #0076ff;
}

@media only screen and (max-width: 767px) {
  .paginacion-mx {
    flex-wrap: wrap;
    padding: 1rem 0;
  }

  .paginacion-mx:before {
    content: "";
    width: 100%;
    order: 5;
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
  }

  .paginacion-mx select.items_per_page {
    margin-right: 0;
  }

  .paginacion-mx select.paginacion-mx--orderby {
    margin-left: auto;
  }

  .prev-next-page {
    display: flex;
    align-items: center;
  }

  .prev-next-page.prev {
    justify-content: flex-start;
    order: 6;
  }

  .prev-next-page.next {
    justify-content: flex-end;
    order: 8;
  }

  .paginacion-mx--info,
  .paginacion-mx--pages-nav {
    order: 7;
  }
}

.mx-custom-grid-item {
  display: flex;
  flex-wrap: wrap;
}

.mx-custom-grid-item > .vc_grid-item.vc_col-sm-3,
.mx-custom-grid-item > .vc_grid-item.vc_col-sm-4 {
  float: none;
  width: 100%;
}

@media only screen and (min-width: 576px) {
  .mx-custom-grid-item > .vc_grid-item.vc_col-sm-3,
  .mx-custom-grid-item > .vc_grid-item.vc_col-sm-4 {
    width: 100%;
  }
}

@media only screen and (min-width: 768px) {
  .mx-custom-grid-item > .vc_grid-item.vc_col-sm-3,
  .mx-custom-grid-item > .vc_grid-item.vc_col-sm-4 {
    width: 50%;
  }
}

@media only screen and (min-width: 992px) {
  .mx-custom-grid-item > .vc_grid-item.vc_col-sm-3,
  .mx-custom-grid-item > .vc_grid-item.vc_col-sm-4 {
    width: 33.33%;
  }
}

@media only screen and (min-width: 1200px) {
  .mx-custom-grid-item > .vc_grid-item.vc_col-sm-3 {
    width: 25%;
  }
}

@media only screen and (min-width: 1200px) {
  .mx-custom-grid-item > .vc_grid-item.vc_col-sm-4 {
    width: 33.33%;
  }
}

@media only screen and (max-width: 767px) {
  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-1,
  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-2,
  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-3,
  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-4,
  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-5,
  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-6,
  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-7,
  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-8,
  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-9,
  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-10,
  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-11,
  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-12 {
    float: left;
  }

  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-12 {
    width: 100%;
  }

  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-11 {
    width: 91.66666667%;
  }

  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-10 {
    width: 83.33333333%;
  }

  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-9 {
    width: 75%;
  }

  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-8 {
    width: 66.66666667%;
  }

  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-7 {
    width: 58.33333333%;
  }

  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-6 {
    width: 50%;
  }

  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-5 {
    width: 41.66666667%;
  }

  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-4 {
    width: 33.33333333%;
  }

  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-3 {
    width: 25%;
  }

  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-2 {
    width: 16.66666667%;
  }

  .mx-custom-grid-item .vc_grid-item .vc_gitem_row .vc_col-sm-1 {
    width: 8.33333333%;
  }
}

.mx-custom-grid-item .swiper-container {
  min-width: 100%;
}

.mx-custom-grid-item .swiper-container.swiper-container--conbullets {
  padding-bottom: 50px;
}

.mx-custom-grid-item .swiper-container.swiper-container--conbullets .swiper-pagination.swiper-pagination-bullets {
  display: flex;
  align-items: center;
}

.mx-custom-grid-item .swiper-container.swiper-container--conbullets .swiper-pagination.swiper-pagination-bullets .swiper-pagination-bullet {
  background-color: #000;
  min-width: 12px;
  width: 12px;
  height: 12px;
  opacity: 1;
}

/*
 * El grid legacy (controladores/grid-box/mx-grid.php) inyecta, sin scopear por instancia,
 * un background-image !important sobre .swiper-button-next/-prev para pintar su propia
 * flecha en color de marca, y solo anula el icono ::after por defecto de swiper.min.css
 * dentro de su propio contenedor. En páginas donde también hay un slider Core, ese
 * background-image se cuela aquí y se suma al icono ::after (nunca anulado para este
 * componente), mostrando las dos flechas superpuestas. Se neutraliza el background-image
 * con mayor especificidad para que solo quede el icono ::after nativo de swiper.
 */
.mx-custom-grid-item .swiper-container .swiper-button-next,
.mx-custom-grid-item .swiper-container .swiper-button-prev {
  background-image: none !important;
}

.mx-custom-grid-item .swiper-container .swiper-button-next.swiper-button-disabled,
.mx-custom-grid-item .swiper-container .swiper-button-prev.swiper-button-disabled {
  opacity: 0;
}

.mx-preloader-blur {
  filter: blur(6px);
  transition: all 0.3s;
}

.mx-custom-preloader {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.5);
  z-index: 9;
  transition: all 0.3s;
}

.mx-custom-grid-item .vc_grid-item {
  display: flex;
  justify-content: center;
}

.mx-custom-grid-item .vc_grid-item > .vc_grid-item-mini {
  display: flex;
  flex-direction: column;
  max-width: 100%;
}

@media only screen and (min-width: 769px) {
  .mx-custom-grid-item .vc_grid-item > .vc_grid-item-mini {
    width: 100%;
  }
}

@media only screen and (max-width: 768px) {
  .mx-custom-grid-item .vc_grid-item > .vc_grid-item-mini {
    width: 345px;
  }
}

.mx-custom-grid-item .vc_grid-item > .vc_grid-item-mini .vc_gitem-zone.vc_gitem-zone-c {
  display: flex;
  height: 100%;
}

.mx-custom-grid-item .vc_grid-item > .vc_grid-item-mini .vc_gitem-zone.vc_gitem-zone-c > .vc_gitem-zone-mini {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
}

.mx-custom-grid-item .vc_grid-item > .vc_grid-item-mini .item-veh--estado {
  position: absolute;
  visibility: hidden;
  opacity: 0;
}

.mx-custom-grid-item .vc_grid-item > .vc_grid-item-mini:hover img.item-lista--img-veh.item-lista--img-veh--hover {
  opacity: 1;
}

.mx-custom-grid-item .vc_grid-item.vendido > .vc_grid-item-mini,
.mx-custom-grid-item .vc_grid-item.reservado > .vc_grid-item-mini {
  position: relative;
  overflow: hidden;
}

.mx-custom-grid-item .vc_grid-item.vendido > .vc_grid-item-mini .item-veh--estado,
.mx-custom-grid-item .vc_grid-item.reservado > .vc_grid-item-mini .item-veh--estado {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  background: rgba(255, 255, 255, 0.5);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  z-index: 99;
  visibility: visible;
  opacity: 1;
}

.mx-custom-grid-item .vc_grid-item.vendido > .vc_grid-item-mini .item-veh--estado.etiqueta,
.mx-custom-grid-item .vc_grid-item.reservado > .vc_grid-item-mini .item-veh--estado.etiqueta {
  position: static;
  background: transparent;
}

.mx-custom-grid-item .vc_grid-item.vendido > .vc_grid-item-mini .item-veh--estado .item-veh--estado--img,
.mx-custom-grid-item .vc_grid-item.reservado > .vc_grid-item-mini .item-veh--estado .item-veh--estado--img {
  order: 1;
}

.mx-custom-grid-item .vc_grid-item.vendido > .vc_grid-item-mini .item-veh--estado .item-veh--estado--texto,
.mx-custom-grid-item .vc_grid-item.reservado > .vc_grid-item-mini .item-veh--estado .item-veh--estado--texto {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  background-color: #0076ff;
  color: #fff;
  text-align: center;
  font-weight: 700;
  font-size: 18px;
  height: 36px;
  order: 2;
}

.mx-custom-grid-item .vc_gitem-zone-a .vc_gitem-row-position-bottom {
  top: 0;
}

.mx-custom-grid-item .vc_gitem-zone-a .vc_gitem-row-position-bottom > .vc_gitem-col {
  height: 100%;
}

.mx-custom-grid-item img.item-lista--img-veh {
  position: absolute;
  left: 15px;
  top: 0;
  width: calc(100% - 30px);
  max-width: calc(100% - 30px);
}

.mx-custom-grid-item img.item-lista--img-veh.item-lista--img-veh--hover {
  position: absolute;
  left: 15px;
  top: 0;
  width: calc(100% - 30px);
  max-width: calc(100% - 30px);
  opacity: 0;
  transition: opacity 250ms;
}

.lista--boton-caja {
  display: flex;
}

.lista--boton-caja.boton-con-icono-right .lista--boton {
  flex-direction: row-reverse;
}

a.lista--boton,
a.lista--boton:hover {
  text-decoration: none;
}

.lista--boton {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  cursor: pointer;
  transition: all 0.2s;
  font-size: 16px;
  font-weight: 500;
  background-color: transparent;
  color: #000000;
  border: solid 0 transparent;
  border-radius: 0;
  height: 40px;
}

.lista--boton:hover {
  border-color: transparent;
  color: #343434;
  background-color: transparent;
}

.tm-tooltip-hotspot {
  position: relative;
}

.tm-tooltip-hotspot .tm-tooltip {
  position: absolute;
  margin-top: 8px;
  left: 50%;
  transform: scale(0);
  opacity: 0;
  transition: all 0.18s;
  z-index: 1000;
  border-radius: 3px;
  background-color: #0076ff;
  color: #fff;
  white-space: nowrap;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  font-size: 12px;
}

.tm-tooltip-hotspot .tm-tooltip:before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  left: 50%;
  transform: translateX(-50%);
}

.tm-tooltip-hotspot .tm-tooltip.tm-tooltip-top {
  margin-bottom: 6px;
  bottom: 100%;
}

.tm-tooltip-hotspot .tm-tooltip.tm-tooltip-top:before {
  top: 100%;
  border-width: 6px 6px 0 6px;
  border-color: #0076ff transparent transparent transparent;
}

.tm-tooltip-hotspot .tm-tooltip.tm-tooltip-bottom {
  margin-top: 6px;
  top: 100%;
}

.tm-tooltip-hotspot .tm-tooltip.tm-tooltip-bottom:before {
  bottom: 100%;
  border-width: 0 6px 6px 6px;
  border-color: transparent transparent #0076ff transparent;
}

.tm-tooltip-hotspot .tm-tooltip.tm-tooltip-left {
  left: auto;
  right: 0;
}

.tm-tooltip-hotspot .tm-tooltip.tm-tooltip-left:before {
  left: auto;
  right: 5px;
}

.tm-tooltip-hotspot .tm-tooltip.tm-tooltip-right {
  left: 0;
}

.tm-tooltip-hotspot .tm-tooltip.tm-tooltip-right:before {
  left: 12px;
}

.tm-tooltip-hotspot:hover .tm-tooltip,
.tm-tooltip-hotspot:focus .tm-tooltip {
  visibility: visible;
  opacity: 1;
}

.tm-tooltip-hotspot:hover .tm-tooltip.tm-tooltip-top:not(.tm-tooltip-left),
.tm-tooltip-hotspot:hover .tm-tooltip.tm-tooltip-bottom:not(.tm-tooltip-left),
.tm-tooltip-hotspot:focus .tm-tooltip.tm-tooltip-top:not(.tm-tooltip-left),
.tm-tooltip-hotspot:focus .tm-tooltip.tm-tooltip-bottom:not(.tm-tooltip-left) {
  transform: translateX(-50%) scale(1);
}

.tm-tooltip-hotspot:hover .tm-tooltip.tm-tooltip-top.tm-tooltip-left,
.tm-tooltip-hotspot:hover .tm-tooltip.tm-tooltip-top.tm-tooltip-right,
.tm-tooltip-hotspot:hover .tm-tooltip.tm-tooltip-bottom.tm-tooltip-left,
.tm-tooltip-hotspot:hover .tm-tooltip.tm-tooltip-bottom.tm-tooltip-right,
.tm-tooltip-hotspot:focus .tm-tooltip.tm-tooltip-top.tm-tooltip-left,
.tm-tooltip-hotspot:focus .tm-tooltip.tm-tooltip-top.tm-tooltip-right,
.tm-tooltip-hotspot:focus .tm-tooltip.tm-tooltip-bottom.tm-tooltip-left,
.tm-tooltip-hotspot:focus .tm-tooltip.tm-tooltip-bottom.tm-tooltip-right {
  transform: scale(1);
}

.item-veh--certificacion-marca {
  z-index: 6;
}

.item-veh--certificacion-marca .tm-tooltip {
  white-space: normal;
  line-height: 13px;
  padding: 10px;
  width: 210px;
}

.item-veh--certificacion-marca ul.item-veh--certificacion-marca--lista {
  margin: 0;
  max-height: 120px;
  overflow: auto;
}

.item-veh--certificacion-marca ul.item-veh--certificacion-marca--lista li {
  margin: 0;
  font-size: 11px;
  text-align: left;
}

.item-veh--certificacion-marca--img {
  height: 40px;
}

.item-veh--certificacion-marca--img img {
  height: 100%;
  width: auto;
}

span.item-veh--dato > div.item-veh--dato--valor {
  display: inline;
}

.item-veh--etiqueta,
.item-veh--etiqueta-inner {
  display: flex;
}

.item-veh--etiqueta {
  flex-wrap: wrap;
}

.item-veh--etiqueta-inner {
  align-items: center;
  justify-content: center;
}

.item-veh--etiqueta i {
  display: flex;
  align-items: center;
}

.item-veh--medioambiental {
  width: 50px;
  height: 50px;
}

.contenedor-mx-core-vehicle-grid .mx-core-vg-items {
  align-items: stretch;
}

.contenedor-mx-core-vehicle-grid .mx-core-vg-items > .mx-grid-item-advertisement {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}

.mx-grid-item-advertisement__inner {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}

.mx-grid-item-advertisement__inner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/*
 * El contenido de la publicidad se edita con WPBakery, que arrastra margin/padding por
 * defecto (bootstrap "vitaminado" .row/.col-*, .vc_column-inner, .wpb_wrapper, separación
 * entre elementos .wpb_content_element). Se resetean aquí para que el contenido se adapte
 * al 100% del hueco de la card. Se usa :where() para no sumar especificidad: así, si el
 * editor añade manualmente padding/margin desde WPBakery (CSS por elemento, inyectado como
 * <style> justo después del HTML del anuncio), esa regla sale más tarde en la cascada y
 * gana el empate frente a este reset.
 */
:where(.mx-grid-item-advertisement__inner) .bakery_row,
:where(.mx-grid-item-advertisement__inner) .row,
:where(.mx-grid-item-advertisement__inner) .vc_row,
:where(.mx-grid-item-advertisement__inner) [class*="col-"],
:where(.mx-grid-item-advertisement__inner) .vc_column-inner,
:where(.mx-grid-item-advertisement__inner) .wpb_wrapper,
:where(.mx-grid-item-advertisement__inner) .wpb_content_element {
  margin: 0;
  padding: 0;
}
