#cms #content-wrapper p,
#cms #content-wrapper h2,
#cms #content-wrapper h1 {
  display: block;
  float: left;
  clear: left;
  line-height: 29px;
}

#wrapper p *,
#wrapper p:not(.text2):not(.text3) {
  font-size: 15px;
  line-height: 27px;
  margin-top: 0px;
  margin-bottom: 0px;
}

#wrapper p span {
  display: initial !important;
  float: none !important;
}
/*#wrapper .alquilerm p, #wrapper .alquilerm p *{
	color: #444 !important;
    font-size: 13px !important;
    line-height: 18px !important;
    font-weight: 100 !important;


}*/

#botonprovincia > a > div {
  display: block !important;
  margin: 0 auto !important;
  float: none !important;
  width: 200px !important;
}

#botonprovincia p,
#botonprovincia span,
#botonprovincia span strong {
  float: none !important;
  color: white !important;
  text-align: center !important;
}

#bannerprovincias .cn__element p {
  text-align: center !important;
}

h1,
h1 * {
  width: 100%;
  text-align: center;
  font-size: 24px;
  font-weight: 700;
  color: #444;
}

h2,
h2 * {
  width: 100% !important;
  text-align: left;
  font-size: 20px;
}

h1,
h2 {
  margin: 17px 0;
}

p:not(#parrillaproductos p) {
  width: 100%;
  float: left;
}

#parrillaproductos p {
  float: none !important;
}

#bannernavidadescritorio {
  padding: 0px;
}

p * {
  text-align: left;
}

ul {
  padding-left: 25px;
}

#main ol *,
#main ul * {
  float: none;
  font-size: 15px;
}

#main li {
  margin: 15px 0;
  line-height: 29px;
}

#main li:before {
  content: " ";
  display: table;
  width: 10px;
  height: 10px;
  background-color: #98ad8c;
  float: left;
  margin-right: 7px;
  margin-top: 10px;
  border-radius: 50%;
}

.ui-accordion .ui-accordion-icons {
  float: left;
  display: flex !important;
}

.ui-accordion .ui-accordion-header {
  width: 100%;
}
.ui-accordion .ui-accordion-content {
  padding: 0px !important;
}

.bx-prev {
  height: 45px !important;
  width: 45px !important;
  background-image: url(/img/iconos-web.png);
  background-size: 323px;
  background-position: 1243px 546px;
}

.bx-next {
  height: 45px !important;
  width: 45px !important;
  background-image: url(/img/iconos-web.png);
  background-size: 323px;
  background-position: 1243px 546px;
  transform: rotate(180deg);
}

.bx-prev::before,
.bx-next::before {
  content: "";
}
a.btn {
  color: white !important;
}

#reacondicionado1 {
  background-image: url("/img/cms/empresa/fondo1.jpg");
  background-size: cover;
  margin-top: 20px;
}
#reacondicionado2 {
  background-image: url("/img/cms/empresa/fondo3.jpg");
  background-size: cover;
  margin-top: 20px;
}
#reacondicionado3 {
  background-image: url("/img/cms/empresa/fondo1.jpg");
  background-size: cover;
  margin-top: 20px;
}

#reacondicionado4 {
  background-image: url("/img/cms/empresa/fondo3.jpg");
  background-size: cover;
  margin-top: 20px;
}

#listavision li:before {
  margin-top: 5px;
}

#listamision li:before,
#listavision li:before {
  content: " ";
  display: table;
  width: 7px;
  height: 7px;
  background-color: #00488e;
  float: left;

  margin-right: 7px;
}

@media (min-width: 992px) {
  .textoreacondicionado1 {
    padding-right: 175px;
    padding-top: 65px;
  }

  .textoreacondicionado2 {
    padding-left: 175px;
    padding-top: 60px;
  }

  .textoreacondicionado3 {
    padding-right: 20px;
    padding-top: 25px;
  }

  .textoreacondicionado4 {
    padding-left: 60px;
    padding-top: 60px;
  }

  .imagensostenibilidad img {
    padding-bottom: 30px;
  }
  .textosostenibilidad1 p,
  .textosostenibilidad2 p,
  .textosostenibilidad3 p,
  .textosostenibilidad4 p {
    text-align: justify;
  }
  .textosostenibilidad1,
  .textosostenibilidad3 {
    padding-right: 50px;
  }

  .textosostenibilidad2,
  .textosostenibilidad4 {
    padding-left: 50px;
  }

  .alquiler-ofirenting {
    padding: 30px 40px 30px 0px;
  }
}

@media (min-width: 768px) {
  .hide-xs-up {
    display: none;
  }
}

@media (max-width: 791px) {
  p * {
    text-align: left;
    word-break: break-word;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
  }

  ul {
    padding-left: 10px;
  }

  .mision-empresa ul li,
  .vision-empresa ul li {
    line-height: 22px !important;
  }

  .vision-empresa h2,
  .vision-empresa p,
  .vision-empresa ul li,
  .mision-empresa h2,
  .mision-empresa p,
  .mision-empresa ul li {
    text-align: left !important;
  }
  #silleria {
    text-align: left !important;
  }

  #listamision li:before,
  #listavision li:before {
    margin-top: 7px;
  }

  #main {
    padding: 0px 7px;
  }
}

.ui-widget-content {
  border: 0px !important;
}

h3 {
  display: block;
  float: left;
}

h1,
h2,
h3 {
  color: black !important;
}

.tg {
  border-collapse: collapse;
  border-spacing: 0;
}
.tg td {
  border-color: black;
  border-style: solid;
  border-width: 1px;
  font-family: Arial, sans-serif;
  font-size: 14px;
  overflow: hidden;
  padding: 10px 5px;
  word-break: normal;
}
.tg th {
  border-color: black;
  border-style: solid;
  border-width: 1px;
  font-family: Arial, sans-serif;
  font-size: 14px;
  font-weight: normal;
  overflow: hidden;
  padding: 10px 5px;
  word-break: normal;
}
.tg .tg-0lax {
  text-align: left;
  vertical-align: top;
}

.sliderValueCtl {
  overflow: hidden;
}

body .eCalculadoraCetelem input.inputCtl {
  font-size: 17px;
  margin-bottom: 1px;
}

body .eCalculadoraCetelem .rangoCtl.info .bloqueFinanciacionCtl {
  padding: 0px 0px;
  min-height: 36px;
}

/*---------- Landing Design ----------*/
/* Solo en la landing CMS 165 */
body.cms-id-165 #wrapper,
body.cms-id-165 .mx-w,
body.cms-id-165 .cn__slides {
  max-width: none !important;
  margin: 0 !important;
  width: 100% !important;
}

body.cms-id-165 #main li,
body.cms-id-165 #main li::before {
  all: unset; /* borra todas las propiedades heredadas por CSS del tema */
  display: list-item; /* vuelve a ser un <li> normal */
}

.text-design-wrap {
  width: 100%;
  display: flex !important;
  justify-content: center !important;
  margin-top: 30px;
  flex-direction: column !important;
  align-items: center !important;
}

.text-design-wrap p {
  color: #000000 !important;
  max-width: 75%;
  align-items: center !important;
  font-size: 1.35em;
  padding: 15px !important;
  margin: 0px !important;
}

.strong-black {
  color: #000000 !important;
  font-size: 0.9em;
}

.reset-list ul {
  all: unset; /* elimina TODOS los estilos heredados */
  display: block; /* vuelves a darle comportamiento de lista */
  margin: 1em 0;
  padding-left: 40px; /* típico margen para listas */
  list-style: disc; /* viñetas normales */
}

.reset-list li {
  all: unset;
  display: list-item; /* vuelve a comportarse como <li> */
  margin: 0.25em 0;
}

.reset-list strong {
  all: unset;
  font-weight: bold; /* vuelves a definir solo lo que quieras */
  color: #000;
}

.reset-list ul {
  margin: 1em 0;
  padding-left: 40px;
  list-style: disc;
}

.reset-list li {
  margin: 0.25em 0;
  font-size: 1.25em; /* mismo tamaño que tus <p> */
  line-height: 1.5em; /* opcional: mejora la legibilidad */
}

.reset-list {
  max-width: 75%;
}

.grid-design-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  margin-block: 30px;
}

.grid-landing-design {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-template-rows: repeat(8, 1fr);
  max-width: 75%;
  gap: 1px !important;
}

.grid-design {
  padding: 0px !important;
}

.grid-design-img {
  padding: 0px !important;
}

.div1 {
  grid-column: span 2 / span 2;
  grid-row: span 5 / span 5;
  gap: 0px !important;
  padding: 0px !important;
}

.div2 {
  grid-column: span 2 / span 2;
  grid-row: span 5 / span 5;
  grid-column-start: 3;
}

.div3 {
  grid-column: span 2 / span 2;
  grid-row: span 5 / span 5;
  grid-column-start: 5;
}

.div4 {
  grid-column: span 3 / span 3;
  grid-row: span 3 / span 3;
  grid-row-start: 6;
}

.div5 {
  grid-column: span 3 / span 3;
  grid-row: span 3 / span 3;
  grid-column-start: 4;
  grid-row-start: 6;
}

.design-categories-wrap {
  display: flex;
  justify-content: center;
  width: 100%;
}

.design-categories {
  display: flex;
  justify-content: center;
  max-width: 75%;
  gap: 1px !important;
}

.design-categories div {
  margin: 0px !important;
  padding: 0px !important;
}

.design-categories div > img {
  margin: 0px !important;
  padding: 0px !important;
}

/* --- Hover overlay para las 5 imágenes del grid --- */
.grid-landing-design .grid-card {
  position: relative;
  display: block;
  overflow: hidden; /* recorta el overlay dentro de la imagen */
  border-radius: 10px; /* quita si no quieres esquinas redondeadas */
}

.grid-landing-design .grid-card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1); /* efecto sutil al hover */
  transition: transform 0.35s ease;
}

.grid-landing-design .grid-card:hover img,
.grid-landing-design .grid-card:focus-visible img {
  transform: scale(1.03);
}

.grid-landing-design .grid-overlay {
  position: absolute;
  inset: 0; /* top/right/bottom/left:0 */
  background: rgba(0, 0, 0, 0); /* empieza transparente */
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 16px;
  opacity: 0;
  transition: opacity 0.35s ease, background-color 0.35s ease;
  pointer-events: none; /* no bloquea el click en el <a> */
}

.grid-overlay-text {
  color: #fff !important;
  font-size: 2em !important;
}

.grid-landing-design .grid-card:hover .grid-overlay,
.grid-landing-design .grid-card:focus-visible .grid-overlay {
  opacity: 1;
  background: rgba(0, 0, 0, 0.45); /* grisáceo */
}

.grid-landing-design .grid-overlay-text {
  font-weight: 700;
  line-height: 1.3;
  font-size: clamp(1rem, 1.8vw, 1.25rem);
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
}

/* Contenedor: centra el botón */
.button-all-design {
  display: flex;
  justify-content: center;
  margin: 24px 0;
}

/* Botón negro simple (letra más grande) */
.button-all-design button {
  background: #000;
  color: #fff;
  border: 0;
  padding: 15px;
  margin-top: 40px;
  border-radius: 6px;
  font: inherit;
  font-weight: 700;
  font-size: 1.25rem;
  line-height: 1;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
}

/* Hover visible */
.button-all-design button:hover {
  background: #222; /* más claro que #111 para que se note */
  transform: translateY(-1px);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.126);
}

.button-all-design button:active {
  transform: translateY(0);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

/* Accesible */
.button-all-design button:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
}

/* ===== Overlay categorías (Nuevo / Reacondicionado) ===== */
.design-categories .cat-card {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 12px; /* opcional */
}

.design-categories .cat-card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1);
  transition: transform 0.35s ease;
}

.design-categories .cat-card:hover img,
.design-categories .cat-card:focus-within img {
  transform: scale(1.03);
}

/* Capa gris + contenido (título + lista de links) */
.design-categories .cat-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0);
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 12px;
  text-align: center;
  padding: 18px;
  opacity: 0;
  transform: translateY(6px);
  transition: opacity 0.35s ease, background-color 0.35s ease,
    transform 0.35s ease;
  pointer-events: auto; /* permite clicar los enlaces dentro */
}

.design-categories .cat-card:hover .cat-overlay,
.design-categories .cat-card:focus-within .cat-overlay {
  opacity: 1;
  background: rgba(0, 0, 0, 0.48);
  transform: translateY(0);
}

.cat-title {
  font-weight: 800;
  font-size: clamp(1.3rem, 2.1vw, 1.5rem);
  margin: 0;
  color: #fff !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
}

.cat-title:hover {
  background: rgba(255, 255, 255, 0.2);
  transform: translateY(-1px);
  padding: 10px !important;
  border-radius: 10px;
}

.cat-links {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
}

.cat-links a {
  color: #fff;
  text-decoration: none;
  font-weight: 600;
  display: inline-block;
  padding: 6px 12px;
  border-radius: 10px;
  transition: background-color 0.2s ease, transform 0.2s ease;
}

.cat-links a:hover {
  background: rgba(255, 255, 255, 0.2);
  transform: translateY(-1px);
}

/* (Opcional) mostrar siempre overlay en pantallas táctiles */

@media (hover: none) {
  .design-categories .cat-overlay {
    opacity: 1;
    background: rgba(0, 0, 0, 0.48);
    transform: none;
  }
}

/* ===== Carrusel simple con flechas fijas y centradas sobre las imágenes ===== */

/* Contenedor alineado con bandas laterales */
.designers {
  width: 100%;
  max-width: 75%;
  margin: 0 auto 40px;
  float: none !important;
  clear: both;
  display: block;
}

/* Título */
.designers__title {
  text-align: center;
  font-weight: 800;
  font-size: clamp(1.6rem, 2.2vw, 2.4rem);
  margin: 20px 0 16px;
  color: #000;
}

/* Wrapper del carrusel: referencia para flechas (no se desplaza) */
.designers .stage {
  position: relative; /* <- flechas absolutas referencian aquí */
}

/* --- RESET local para evitar estilos globales --- */
.designers .track,
.designers .card,
.designers .card img,
.designers figure {
  all: unset;
}
.designers figure {
  display: block;
}
.designers .card img {
  display: block;
}

/* Pista con scroll horizontal y snap (esta sí se desplaza) */
.designers .track {
  display: flex;
  gap: 24px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  padding: 6px 2px;
  padding-block: 6px;
  padding-inline: 0;
  scroll-padding-inline: 0;
}

/* Ocultar barra WebKit */
.designers .track::-webkit-scrollbar {
  height: 0;
}

/* Tarjetas */
.designers .card {
  scroll-snap-align: start;
  flex: 0 0 calc((100% - 3 * 24px) / 4); /* ~4 visibles desktop */
  aspect-ratio: 4 / 5;
  border-radius: 12px;
  overflow: hidden;
  background: #eee;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
  min-width: 0;
}
.designers .card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Flechas: fijas sobre el wrapper, centradas verticalmente sobre la pista */
.nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
  width: 50px;
  height: 50px;
  border-radius: 999px;
  background: #000;
  color: #fff;
  border: 0;
  cursor: pointer;
  display: grid;
  place-items: center;
  font-size: 36px;
  line-height: 1;
  opacity: 0.95;
  transition: opacity 0.2s, transform 0.2s;
}
.nav:hover {
  opacity: 1;
  transform: translateY(-50%) scale(1.04);
}
.nav--prev {
  left: -28px;
}
.nav--next {
  right: -28px;
}

/* Responsive */
@media (min-width: 900px) and (max-width: 1199.98px) {
  .designers .card {
    flex-basis: calc((100% - 2 * 24px) / 3);
  } /* 3 visibles */
}
@media (min-width: 600px) and (max-width: 899.98px) {
  .designers .card {
    flex-basis: calc((100% - 1 * 24px) / 2);
  } /* 2 visibles */
}
@media (max-width: 599.98px) {
  .designers {
    max-width: 92%;
  }
  .designers .card {
    flex-basis: 85%;
    margin-inline: auto;
  } /* 1 visible */
  .nav--prev {
    left: -18px;
  }
  .nav--next {
    right: -18px;
  }
}

/* Adaptación a Móvil */

/* Solo para móviles hasta 768px */
@media (max-width: 768px) {
  .text-design-wrap p {
    font-size: 0.85em;
    line-height: 22px !important;
    max-width: 85%;
  }

  .strong-black {
    line-height: 22px !important;
  }

  .grid-landing-design {
    display: flex;
    flex-direction: column;
    max-width: 100%;
  }

  .grid-overlay-text {
    font-size: 1em !important;
  }

  .design-categories {
    display: flex;
    flex-direction: column;
    max-width: 100%;
  }

  .button-all-design button {
    font-size: 0.75em;
  }

  .design-landing h2 {
    font-size: 1.35em !important;
  }

  .design-landing h3 {
    font-size: 1.15em !important;
    max-width: 85% !important;
  }

  .reset-list li {
    margin: 0.25em 0;
    font-size: 0.9em;
    line-height: 22px;
  }
}

/* ===== MÓVIL: imagen completa clicable al link principal ===== */
@media (hover: none) and (pointer: coarse), (max-width: 768px) {
  /* 1) Ocultamos las subcategorías */
  .design-categories .cat-links {
    display: none !important;
  }

  /* 2) La tarjeta como botón, con pequeño feedback al pulsar */
  .design-categories .cat-card {
    position: relative; /* referencia para el link absoluto */
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
  }
  .design-categories .cat-card img {
    transition: transform 0.25s ease;
  }
  .design-categories .cat-card:active img {
    transform: scale(1.02);
  }

  /* 3) El overlay NO bloquea el tap (pero puede quedar invisible) */
  .design-categories .cat-overlay {
    opacity: 0;
    background: transparent;
    transform: none;
    padding: 0;
    pointer-events: auto; /* permitirá hacer clic en el <a> que ponemos encima */
  }

  /* 4) El <a class="cat-title"> ocupa toda la tarjeta y recibe el tap */
  .design-categories .cat-title {
    position: absolute !important;
    inset: 0 !important; /* top/right/bottom/left: 0 */
    display: block !important;
    z-index: 3; /* por encima de la imagen */
    pointer-events: auto; /* asegura que capta el toque */
    /* ocultamos visualmente el texto, pero accesible para lectores */
    text-indent: -9999px;
    overflow: hidden;
    white-space: nowrap;
    background: transparent !important;
    padding: 0 !important;
    border-radius: 0 !important;
  }
  /* por si el <h3> aporta espacios/márgenes */
  .design-categories .cat-overlay h3 {
    margin: 0 !important;
  }

  /* 5) Anulamos estilos de hover pensados para desktop en móvil */
  .design-categories .cat-card:hover img {
    transform: none;
  }
  .design-categories .cat-card:hover .cat-overlay {
    opacity: 0;
  }
  .cat-title:hover {
    background: transparent;
    transform: none;
  }
}

/*---------- Landing Recompras ----------*/
.buyback-landing {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.buyback-landing h1 {
  color: #48603a !important;
  margin-top: 20px;
  margin-bottom: 0px;
}

.buyback-landing strong {
  color: #48603a !important;
  font-size: xx-large;
}

.buyback-landing p > strong {
  color: #5c4f4c !important;
  font-size: medium;
}

.buyback-landing h2 {
  color: #98ad8c !important;
  text-align: center;
  font-size: xx-large;
}

.buyback-landing_program * {
  font-size: 16px;
  align-items: center;
}

.buyback-landing_program img {
  margin-top: 30px !important;
  margin-bottom: 30px !important;
}

.buyback-landing_program:first-child {
  display: flex;
}

#buyback-landing-program-wrap {
  display: flex;
  justify-content: center;
  margin-bottom: 30px !important;
  gap: 30px !important;
}

#buyback-landing-program-wrap img {
  max-width: 330px;
  max-height: 220px;
  border-radius: 20px !important;
  margin-block: 30px;
}

.buyback-landing_benefits {
  margin-block: 20px;
}

.buyback-landing_benefits_wrap {
  display: flex;
  gap: 40px;
  justify-content: center;
}

.buyback-landing_benefits img {
  margin-top: 30px !important;
  margin-bottom: 30px !important;
}

.buyback-landing_benefits_wrap div > h2 {
  color: #48603a !important;
  font-weight: 500;
}

.buyback-landing_benefits * {
  font-size: 15px;
}

.buyback-landing_info * {
  font-size: 15px;
}

.buyback-landing_info div > ul > li > strong {
  font-size: 16px;
  color: #5c4f4c !important;
}

.buyback-landing_info h2 {
  font-weight: 200 !important;
  color: #48603a !important;
  margin-bottom: 20px;
}

.buyback-landing_info img {
  margin-top: 30px !important;
  margin-bottom: 40px !important;
}

.buyback-landing_info_wrap {
  display: flex;
  justify-content: center;
  align-items: flex-start; /* alineados arriba */
  margin-block: 25px;
  gap: 30px;
}

.buyback-landing_info_wrap > div {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.buyback-landing_info_wrap div > h2 {
  font-weight: 500 !important;
  line-height: 1;
}

.buyback-landing_info_wrap div > img {
  max-height: 230px;
  border-radius: 20px;
  max-width: fit-content;
}

.buyback-landing_info div > ul > li {
  margin: -5px 0 !important;
}

.buyback-landing_info_wrap div > ul > li {
  margin: -5px 0 !important;
}

/* === Banderas centradas === */
.buyback-landing_info_wrap_flags > div {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 30px !important;
}

.buyback-landing_info_wrap_flags div > img {
  max-height: 220px;
  border-radius: 20px;
  max-width: 330px;
}

#title-buyback-info {
  margin-block: 40px !important;
}

.buyback-landing button {
  background-color: #98ad8c;
  padding: 30px;
  font-size: 20px;
  font-weight: 900;
  margin: 20px;
  border-radius: 20px;
}

.buyback-landing_benefits_p {
  margin-block: 10px !important;
}

.buyback-form-button {
  display: flex;
  justify-content: center;
}

.buyback-form-button {
  display: flex;
  justify-content: center;
}

.buyback-form-button button > span > strong {
  color: #ffffff;
  font-size: large !important;
}

#radio_valor-1 {
  width: 10%;
  margin: 10px !important;
  max-width: 15px;
}

label:has(#radio_valor-1) {
  display: flex;
}

/*---------- Landing Recompras Móvil ----------*/

@media (max-width: 640px) {
  .buyback-landing h1 > strong {
    font-size: x-large !important;
  }

  .buyback-landing p > strong {
    font-size: large !important;
  }

  #buyback-landing-program-wrap {
    display: none !important;
  }

  .buyback-landing_benefits_wrap {
    display: block;
  }

  .buyback-landing_info div > ul > li > strong {
    font-size: large !important;
  }

  .buyback-landing_info_wrap {
    display: block !important;
  }

  .buyback-flags {
    display: none;
  }

  #europe-spain-flag {
    max-height: 220px;
    border-radius: 20px;
    max-width: 330px;
  }

  .buyback-landing button {
    background-color: #98ad8c;
    padding: 15px;
    font-size: 15px;
    font-weight: 900;
    margin: 20px;
    border-radius: 12px;
  }
}

@media (min-width: 641px) {
  #europe-spain-flag {
    display: none !important;
  }
}

/* ---------- Landing Presupuestos ---------- */

/* Solo en la landing CMS 168 */
body.cms-id-93 #wrapper,
body.cms-id-93 .mx-w,
body.cms-id-93 .cn__slides {
  max-width: none !important;
  margin: 0 !important;
  width: 100% !important;
}

:root {
  --brand-green: #899c7e;
  --text-dark: #2e3a21;
  --card-bg: #efe6db;
  --bg: #ffffff;
  --radius: 16px;
}

.quote-landing {
  color: var(--text-dark);
  background: var(--bg);
  text-align: center;
  padding: 8px 16px 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  font-family: Arial, Helvetica, sans-serif;
}

.quote-landing h1 {
  margin: 0 0 8px;
  font-size: 36px;
  line-height: 1.1;
  margin: 50px;
  font-weight: 800;
  letter-spacing: 0.5px;
  color: #48603a !important;
}

.quote-landing h3 {
  color: #48603a !important;
  margin-bottom: 30px !important;
  margin-top: 0px !important;
  max-width: 900px;
  font-size: 18px;
  font-weight: 700;
  color: #445239;
}

.parent {
  display: grid;
  grid-template-columns: repeat(5, 1fr); /* <-- 5 columnas */
  grid-template-rows: repeat(7, 1fr) !important;
  gap: 12px;
  max-width: 1100px;
  height: 680px; /* maqueta */
  margin: 0 auto;
}

/* Tarjetas */
.box {
  background: var(--card-bg);
  border: 2px solid var(--brand-green);
  border-radius: var(--radius);
  padding: 18px;
  display: grid;
  place-items: center;
  text-align: center;
}
.box p {
  color: #48603a !important;
}

.title-xl {
  margin: 0 !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  line-height: normal !important;
}

.subtitle {
  margin: 6px 0 0 !important;
  font-size: 25px !important;
  line-height: normal !important;
  font-weight: 500 !important;
}

.form-area {
  grid-column: 4 / 6;
  grid-row: 1 / 8;
  overflow: auto;
}

/* Asegurar 100% de ancho del widget Connectif */
.form-area > *,
.form-area form,
.form-area [class*="connectif"],
.form-area .connectif-form,
.form-area .c-form {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box;
}

/* Panel visual del formulario */
.form-box {
  padding: 22px;
  background: #fff;
  border: 2px solid var(--brand-green);
  border-radius: var(--radius);
}

.offer-box {
  grid-column: 1 / 2;
  grid-row: 1 / 3;
}

.warranty-box {
  grid-column: 2 / 4;
  grid-row: 1 / 3;
}

.brands-box {
  grid-column: 1 / 3;
  grid-row: 3 / 6;
}

.advisor-box {
  grid-column: 3 / 4;
  grid-row: 3 / 6;
}

.finance-box {
  grid-column: 1 / 4;
  grid-row: 6 / 8;
}

/* --- tipografía más compacta dentro de tarjetas altas --- */
.brands-box .title-xl {
  font-size: 26px;
}
.finance-box .title-xl,
.advisor-box .title-xl,
.warranty-box .title-xl {
  font-size: 26px;
}
.finance-box .subtitle,
.advisor-box .subtitle,
.warranty-box .subtitle {
  font-size: 18px;
}

/* === Banner clientes === */
.banner-quote {
  width: 100%;
  height: 80vh;
  text-align: center;
  position: relative;
  margin-top: 200px;
}

.banner-quote .slider-quote {
  position: absolute;
  width: 200px;
  height: 250px;
  top: 10%;
  left: calc(50% - 100px);
  transform-style: preserve-3d;
  transform: perspective(1000px);
  animation: autoRun 38s linear infinite;
}

@keyframes autoRun {
  from {
    transform: perspective(1000px) rotateX(-16deg) rotateY(0deg);
  }
  to {
    transform: perspective(1000px) rotateX(-16deg) rotateY(360deg);
  }
}

.banner-quote .slider-quote .item-quote {
  position: absolute;
  inset: 0 0 0 0;
  transform: rotateY(
      calc((var(--position) - 1) * (360 / var(--quantity)) * 1deg)
    )
    translateZ(475px);
}

.banner-quote .slider-quote .item-quote img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 20px;
}

.content-quote {
  position: absolute !important;
  top: -75px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: min(1400px, 100vw) !important;
  max-width: 100vw !important;
  height: max-content !important;
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
}

#client-quote-title {
  font-size: 5em !important;
  color: #48603a !important;
  font-weight: 800;
  padding-bottom: 100px;
  text-align: center;
}

.quote-text {
  max-width: 80%;
  text-align: left;
  display: flex;
  flex-direction: column;
}
.quote-text p {
  font-size: 19px !important;
  font-weight: 400;
}
.bold {
  font-size: large !important;
  font-weight: 800;
}

.quote-landing button {
  background-color: #98ad8c;
  padding: 15px;
  font-size: 15px;
  font-weight: 900;
  margin: 20px;
  border-radius: 12px;
  cursor: pointer;
}

/* Variables para el carrusel (sin inline styles) */
.banner-quote .slider-quote {
  --quantity: 10;
}

/* Posiciones de cada item vía CSS */
.banner-quote .slider-quote .item-quote:nth-child(1) {
  --position: 1;
}
.banner-quote .slider-quote .item-quote:nth-child(2) {
  --position: 2;
}
.banner-quote .slider-quote .item-quote:nth-child(3) {
  --position: 3;
}
.banner-quote .slider-quote .item-quote:nth-child(4) {
  --position: 4;
}
.banner-quote .slider-quote .item-quote:nth-child(5) {
  --position: 5;
}
.banner-quote .slider-quote .item-quote:nth-child(6) {
  --position: 6;
}
.banner-quote .slider-quote .item-quote:nth-child(7) {
  --position: 7;
}
.banner-quote .slider-quote .item-quote:nth-child(8) {
  --position: 8;
}
.banner-quote .slider-quote .item-quote:nth-child(9) {
  --position: 9;
}
.banner-quote .slider-quote .item-quote:nth-child(10) {
  --position: 10;
}

.textolegal p {
  padding: 0px !important;
}

.cn_content {
  background: transparent !important;
}

#presupuestos button {
  background-color: #48603a !important;
  color: #ffffff !important;
  border-radius: 8px !important; /* opcional, más suave que el 3px que trae */
  border: none !important;
  font-size: 14pt !important;
  padding: 10px 40px !important;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.cn_element.cn_button_submit button > span {
  color: #ffffff !important;
}
/* Hover para efecto */
.cn_element.cn_button_submit button:hover {
  background-color: #98ad8c !important; /* un verde más oscuro al pasar el ratón */
}

.button-quote-form {
  display: flex;
  justify-content: center;
}

/* ===== MOBILE LAYOUT (≤ 767px) ===== */
@media (max-width: 767px) {
  /* Grid móvil: 2 columnas × 10 filas (auto) */
  .parent {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(10, auto);
    gap: 8px;
    height: auto;
    max-width: 100%;
    padding: 0 10px;
  }

  .form-area {
    align-self: start; /* se ajusta al alto de su contenido */
    height: auto; /* ignora la fracción del grid */
  }

  /* Fila 1: dos cajas lado a lado (como en el mock) */
  .offer-box {
    grid-column: 1 / 2;
    grid-row: 1;
  }
  .warranty-box {
    grid-column: 2 / 3;
    grid-row: 1;
  }

  /* Filas completas debajo (puedes cambiar el orden si prefieres) */
  .brands-box {
    grid-column: 1 / 3;
    grid-row: 2;
  }
  .advisor-box {
    grid-column: 1 / 3;
    grid-row: 3;
  }
  .finance-box {
    grid-column: 1 / 3;
    grid-row: 4;
  }

  /* Bloque grande para el formulario */
  .form-area {
    grid-column: 1 / 3;
    grid-row: 5 / 11; /* ocupa varias filas (5→10) */
    overflow: visible; /* sin scroll interno en móvil */
    align-self: stretch;
  }
  /* Tarjetas */
  .box {
    background: var(--card-bg);
    border: 2px solid var(--brand-green);
    border-radius: var(--radius);
    padding: 16px 12px; /* padding más contenido, menos aire */
    display: flex; /* mejor que grid */
    flex-direction: column;
    justify-content: center; /* centra vertical, pero sin huecos extras */
    align-items: center;
    text-align: center;
  }

  .title-xl {
    margin: 0;
    font-size: 24px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important; /* menos espacio entre líneas */
  }

  .subtitle {
    margin: 4px 0 0 !important;
    font-size: 16px !important;
    line-height: 1.3 !important; /* más compacto */
    font-weight: 500 !important;
  }

  .banner-quote .slider-quote .item-quote {
    position: absolute;
    inset: 0 0 0 0;
    transform: rotateY(
        calc((var(--position) - 1) * (360 / var(--quantity)) * 1deg)
      )
      translateZ(375px);
  }

  #client-quote-title {
    font-size: 2em !important;
    color: #48603a !important;
    font-weight: 800;
    text-align: center;
  }

  @keyframes autoRun {
    from {
      transform: perspective(1000px) rotateX(-19deg) rotateY(0deg);
    }
    to {
      transform: perspective(1000px) rotateX(-19deg) rotateY(360deg);
    }
  }

  .content-quote {
    top: -100px !important;
  }

  .quote-landing h1 {
    margin: 30px !important;
  }
}

/* ---------- Campaña Otoño Reacondicionado ---------- */

/* Bloque: el <a> hace de contenedor */
.promo-img-1,
.promo-img-2,
.promo-img-3 {
  border-radius: 10px !important;
  overflow: hidden !important; /* para que el borde redondo recorte la imagen al hacer scale */
  line-height: 0 !important; /* elimina espacios fantasmas con <img> inline */
}

/* Imagen: transición suave */
.promo-img-1 img,
.promo-img-2 img,
.promo-img-3 img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.35s ease, box-shadow 0.35s ease;
  will-change: transform;
}

/* Efecto: al hacer hover en el enlace, escala la imagen */
.promo-img-1:hover > img,
.promo-img-2:hover > img,
.promo-img-3:hover > img,
.promo-img-1:focus-visible > img,
.promo-img-2:focus-visible > img,
.promo-img-3:focus-visible > img {
  transform: scale(1.05);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22);
}

/* ---------- Landing Fundown ---------- */

#title-fundown {
  color: #48603a !important;
}

#landing-fundown > p:first-of-type {
  margin-block: 30px !important;
  max-width: 90%;
}

#landing-fundown {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  align-items: center;
}

#landing-fundown strong {
  color: #48603a !important;
}

#landing-fundown ul > li {
  margin: 0px !important;
}

.wrap-info-fundown h2 {
  color: #48603a !important;
  font-weight: 500 !important;
}

.wrap-info-fundown h3 {
  color: #48603a !important;
  font-size: 16px !important;
  font-weight: 500 !important;
}

.wrap-info-fundown {
  display: flex;
  flex-direction: column;
  margin-top: 15px !important;
  margin-bottom: 30px !important;
}

#wrap-work-fundown {
  gap: 10px !important;
  display: flex;
  justify-content: center;
  align-items: center;
}

.img-work-fundown {
  max-width: 325px;
  max-height: 400px;
  border-radius: 20px;
  padding-inline: 1px;
}

.video-container-fundown {
  display: flex;
  align-items: center;
  justify-content: center;
}

#wrap-pen-fundown {
  gap: 10px !important;
  display: flex;
  justify-content: center;
  align-items: center;
}

.img-pen-fundown {
  max-width: 300px;
  max-height: 470px;
  padding-inline: 20px;
}

@media (max-width: 640px) {
  #landing-fundown {
    max-width: 90vw;
  }

  .video-container-fundown iframe {
    width: 100%;
    aspect-ratio: 16 / 9;
    height: auto;
    border: 0;
    border-radius: 10px;
  }

  #wrap-work-fundown {
    flex-direction: column;
  }

  #wrap-pen-fundown {
    flex-direction: column;
  }
}

/* ---------- Landing Halloween ---------- */

.text-landing-halloween {
  margin-block: 30px !important;
}

/* ---------- Landing Black Friday ---------- */

body.cms-id-172 #wrapper,
body.cms-id-172 .mx-w,
body.cms-id-172 .cn__slides {
  max-width: none !important;
  margin: 0 !important;
  width: 100% !important;
}

/* === Contenedores de botones === */
.boton-centro-reacondicionado-black-friday,
.boton-centro-nuevo-black-friday {
  text-align: center;
  margin-bottom: 30px;
  display: flex;
  justify-content: center;
}

/* === Botón Reacondicionado === */
.button-reacondicionado-black-friday {
  background-color: #000000;
  color: #ffffff;
  border: none;
  padding: 12px 28px;
  border-radius: 6px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
  transition: all 0.3s ease;
  display: inline-block;
}

.button-reacondicionado-black-friday:hover {
  background-color: #292626;
  transform: scale(1.05);
  color: rgb(255, 255, 255) !important;
}

/* === Botón Nuevo === */
.button-nuevo-black-friday {
  background-color: #000000;
  color: #ffffff;
  border: none;
  padding: 12px 28px;
  border-radius: 6px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
  transition: all 0.3s ease;
  display: inline-block;
}

.button-nuevo-black-friday:hover {
  background-color: #292626;
  transform: scale(1.05);
  color: rgb(255, 255, 255) !important;
}

#black-friday-summary {
  display: flex;
  justify-content: center;
  margin-block: 40px;
}

#black-friday-text-info {
  display: flex;
  justify-content: center;
}

#black-friday-summary-p {
  margin-block: 30px;
  font-family: Arial, sans-serif;
  font-size: 16px;
  color: #000000;
  line-height: 1.6;
  text-align: left;
  max-width: 75%;
}

/* ======== TÍTULOS BLACK FRIDAY ======== */

/* Estilos generales (desktop por defecto) */
.title-black-friday {
  font-size: 30px;
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
  margin: 40px 0 20px;
  color: #000;
}

.title-black-friday-2x1 {
  font-size: 40px;
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
  margin: 40px 0 20px;
  color: #000;
}

.title-black-friday-home {
  font-size: 26px !important;
}

/* ======== Versión móvil ======== */
@media (max-width: 768px) {
  .title-black-friday {
    font-size: 20px !important;
    white-space: normal !important;
    margin: 20px 0 10px;
  }

  .title-black-friday-2x1 {
    font-size: 20px !important;
    white-space: normal !important;
    margin: 20px 0 10px;
  }

  #black-friday-summary-p {
    margin-block: 30px;
    font-family: Arial, sans-serif;
    font-size: 10px !important;
    color: #000000;
    line-height: 20px !important;
    text-align: left;
    max-width: 95%;
  }

  .strong-black-friday {
    font-size: 10px !important;
    line-height: 20px !important;
  }

  .title-black-friday-home {
    font-size: 20px !important;
  }
}

/* ======== LANDING OFIRENTING ======== */

.information-text-renting {
  padding-inline: 100px;  
  text-align: center;
}

.text-renting {
  margin: 3px; 
  font-size: 15px;
}

.video-renting {
  display: flex; 
  justify-content: center; 
}

.video-renting iframe{
  border-radius: 10px;
}

.row-dobleform {
  display: flex;
  justify-content: center;
  align-items: flex-start; 
  gap: 20px;               
  width: 100%;
  margin-top: 35px;
}

.wrapper-img-renting {
  display: flex;
  flex-direction: column;
  width: auto;  
}

.wrapper-form-renting {
  display: flex;
  justify-content: center;
  max-width: 50%;
}

.img-renting {
  max-width: 317px;
  max-height: 200px;
}

.wrapper-button {
  display: flex;
  flex-direction: row;
  justify-content: center;
  padding-block: 35px;
}

.button-renting {
  cursor: pointer;
  background: #98ad8c;
  color: white !important;
  font-weight: 600;
  font-size: 20px;
  padding: 15px;
  border-radius: 10px; 
  transition: 0.3s;
}

.button-renting:hover {
  background-color: #e0e6dd !important;
  border-color: #98ad8c !important;
  color: #48603a !important;
}


/* ======== Versión móvil ======== */
@media (max-width: 768px) {
  .information-text-renting {
    padding-inline: 20px;  
  }

  .text-renting {
    margin: 3px; 
    font-size: 12px;
    line-height: 15px;
  }

  .video-renting {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-inline: 20px;
    margin-top: 20px;
  }

  .video-renting iframe {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    border-radius: 10px;
  }

  .row-dobleform {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-block: 20px;
  }

  .wrapper-img-renting {
    display: grid;
    justify-items: center;
    grid-template-columns: 1fr 1fr; 
    grid-template-rows: auto auto;
    gap: 5px; 
    max-width: none !important;
    padding-inline: 16px;
  }

  .wrapper-img-renting img:nth-child(1) {
      grid-column: 1;
  }

  .wrapper-img-renting img:nth-child(2) {
      grid-column: 2;
  }

  .wrapper-img-renting img:nth-child(3) {
      grid-column: 1 / span 2;
      max-width: 100%;
      max-height: 100%;
  }

  .wrapper-form-renting {
      max-width: 100%;
      display: flex;
      justify-content: center; 
  }

  .button-renting {
    font-size: 15px;
    padding: 6px;
  }
}