/* ADADP - Ajustes de categorías y filtros */
@media (min-width: 992px) {
  body#category #left-column {
    flex: 0 0 30% !important;
    max-width: 30% !important;
    width: 30% !important;
  }

  body#category #content-wrapper {
    flex: 0 0 70% !important;
    max-width: 70% !important;
    width: 70% !important;
  }

  body#category #search_filters,
  body#category #search_filters .facet,
  body#category #search_filters .facet-label,
  body#category #search_filters .facet-title,
  body#category #search_filters label,
  body#category #search_filters a,
  body#category #search_filters span {
    font-size: 13px !important;
    line-height: 1.35 !important;
  }

  /* Mostrar completos los nombres largos de categorías/filtros */
  body#category #search_filters .facet-label,
  body#category #search_filters .facet-label a,
  body#category #search_filters .facet-label span,
  body#category #search_filters label {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    height: auto !important;
    max-height: none !important;
  }

  body#category #search_filters .facet-label a {
    display: inline-block !important;
    max-width: calc(100% - 36px) !important;
    vertical-align: top !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
  }
}

/* ADADP - Casillas de filtros azules */
body#category #search_filters .facet-label .custom-checkbox {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 16px !important;
  min-width: 16px !important;
  height: 16px !important;
  margin-right: 8px !important;
  vertical-align: middle !important;
}

body#category #search_filters .facet-label .custom-checkbox > span {
  width: 14px !important;
  height: 14px !important;
  min-width: 14px !important;
  border: 2px solid #078fd6 !important;
  border-radius: 3px !important;
  background: #ffffff !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  box-shadow: none !important;
  transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease !important;
}

body#category #search_filters .facet-label .custom-checkbox > span .checkbox-checked,
body#category #search_filters .facet-label .custom-checkbox > span i {
  display: none !important;
}

body#category #search_filters .facet-label .custom-checkbox input:checked + span {
  background: #078fd6 !important;
  border-color: #078fd6 !important;
  box-shadow: 0 0 0 3px rgba(7, 143, 214, 0.12) !important;
}

body#category #search_filters .facet-label .custom-checkbox input:checked + span .checkbox-checked,
body#category #search_filters .facet-label .custom-checkbox input:checked + span i {
  display: inline-flex !important;
  color: #ffffff !important;
  font-size: 12px !important;
  line-height: 1 !important;
}

body#category #search_filters .facet-label:hover .custom-checkbox > span {
  border-color: #078fd6 !important;
  background: #f4fbff !important;
  box-shadow: 0 0 0 3px rgba(7, 143, 214, 0.15) !important;
}

body#category #search_filters .facet-label:hover a,
body#category #search_filters .facet-label:hover span {
  color: #078fd6 !important;
}

body#category #search_filters .facet-label:hover .custom-checkbox input:checked + span {
  background: #078fd6 !important;
  border-color: #078fd6 !important;
}


/* ADADP - Bloque de texto de portada más compacto */
body#index #custom-text {
  padding: 30px 24px !important;
  margin-bottom: 20px !important;
}

body#index #custom-text p,
body#index #custom-text h1,
body#index #custom-text h2,
body#index #custom-text h3 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

@media (max-width: 767px) {
  body#index #custom-text {
    padding: 20px 16px !important;
  }
}


/* ADADP - Menú principal de cabecera */
@media (min-width: 992px) {
  #_desktop_top_menu .top-menu > li > a,
  #_desktop_top_menu .top-menu a[data-depth="0"] {
    color: #0B4F8A !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    letter-spacing: 0.1px !important;
    transition: color .2s ease !important;
  }

  #_desktop_top_menu .top-menu > li > a:hover,
  #_desktop_top_menu .top-menu a[data-depth="0"]:hover,
  #_desktop_top_menu .top-menu .current > a {
    color: #078FD6 !important;
  }
}

/* ADADP - Botón VER CATÁLOGO entre el texto y el banner principal */
body#index .adadp-home-cta {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: -4px 0 18px;
  position: relative;
  z-index: 5;
}

body#index .adadp-home-cta a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 154px;
  padding: 10px 23px;
  border: 2px solid rgba(214, 160, 41, .95);
  border-radius: 999px;
  background: #0B4F8A;
  color: #ffffff !important;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .45px;
  text-decoration: none !important;
  box-shadow: 0 5px 14px rgba(0, 38, 82, .20);
  transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

body#index .adadp-home-cta a::after {
  content: "→";
  font-size: 17px;
  line-height: 1;
  margin-top: -1px;
}

body#index .adadp-home-cta a:hover,
body#index .adadp-home-cta a:focus {
  background: #078FD6;
  border-color: #d6a029;
  color: #ffffff !important;
  transform: translateY(-1px);
  box-shadow: 0 7px 18px rgba(7, 91, 160, .24);
}

@media (max-width: 767px) {
  body#index .adadp-home-cta {
    margin: -2px 0 14px;
  }

  body#index .adadp-home-cta a {
    min-width: 145px;
    padding: 9px 19px;
    font-size: 13px;
  }
}


/* ADADP - Categoría principal de libros: cabecera más limpia y compacta */
body#category.adadp-books-category .block-category {
  min-height: 0 !important;
  padding: 22px 26px !important;
  margin-bottom: 24px !important;
}

body#category.adadp-books-category .block-category .category-cover,
body#category.adadp-books-category .block-category .category-cover img {
  display: none !important;
}

body#category.adadp-books-category .block-category h1,
body#category.adadp-books-category .block-category .h1 {
  margin: 0 0 8px 0 !important;
  font-size: 31px !important;
  line-height: 1.15 !important;
  color: #111111 !important;
}

body#category.adadp-books-category #category-description,
body#category.adadp-books-category .block-category .category-description {
  margin: 0 !important;
  padding: 0 !important;
  max-width: 820px !important;
  color: #5f6368 !important;
  font-size: 18px !important;
  line-height: 1.35 !important;
}

body#category.adadp-books-category #category-description p,
body#category.adadp-books-category .block-category .category-description p {
  margin: 0 !important;
}

@media (max-width: 767px) {
  body#category.adadp-books-category .block-category {
    padding: 16px 18px !important;
    margin-bottom: 18px !important;
  }

  body#category.adadp-books-category .block-category h1,
  body#category.adadp-books-category .block-category .h1 {
    font-size: 25px !important;
  }

  body#category.adadp-books-category #category-description,
  body#category.adadp-books-category .block-category .category-description {
    font-size: 16px !important;
  }
}

/* ADADP - Tarjetas de subcategorías más limpias y visuales */
body#category #subcategories ul li,
body#category #subcategories .subcategory-card,
body#category #subcategories .subcategory-item {
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease;
}

body#category #subcategories ul li {
  border: 1px solid #e7edf3 !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  overflow: hidden !important;
  cursor: pointer !important;
}

body#category #subcategories ul li:hover,
body#category #subcategories ul li:focus-within {
  transform: translateY(-3px);
  border-color: rgba(7, 143, 214, .45) !important;
  box-shadow: 0 8px 20px rgba(11, 79, 138, .12) !important;
  background: #fbfdff !important;
}

body#category #subcategories ul li .subcategory-image,
body#category #subcategories ul li .subcategory-image a,
body#category #subcategories ul li .subcategory-image img {
  border-radius: 8px !important;
}

body#category #subcategories ul li .subcategory-image img {
  transition: transform .2s ease, filter .2s ease;
}

body#category #subcategories ul li:hover .subcategory-image img,
body#category #subcategories ul li:focus-within .subcategory-image img {
  transform: scale(1.025);
  filter: saturate(1.03);
}

body#category #subcategories ul li a.subcategory-name,
body#category #subcategories ul li .subcategory-name,
body#category #subcategories ul li h5 a,
body#category #subcategories ul li .h5 a {
  color: #0B4F8A !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: color .18s ease;
}

body#category #subcategories ul li:hover a.subcategory-name,
body#category #subcategories ul li:hover .subcategory-name,
body#category #subcategories ul li:hover h5 a,
body#category #subcategories ul li:hover .h5 a,
body#category #subcategories ul li:focus-within a.subcategory-name,
body#category #subcategories ul li:focus-within .subcategory-name {
  color: #078FD6 !important;
}

/* Foco de teclado visible al hacer toda la tarjeta navegable */
body#category #subcategories ul li.adadp-subcategory-clickable:focus {
  outline: 2px solid #078FD6 !important;
  outline-offset: 3px !important;
}

@media (max-width: 767px) {
  body#category #subcategories ul li:hover,
  body#category #subcategories ul li:focus-within {
    transform: none;
    box-shadow: 0 5px 14px rgba(11, 79, 138, .10) !important;
  }
}

/* ADADP - Alinear los checkboxes azules con el texto del filtro */
body#category #search_filters .facet .facet-label {
  display: flex !important;
  align-items: flex-start !important;
  gap: 8px !important;
}

body#category #search_filters .facet .custom-checkbox {
  position: relative !important;
  top: 5px !important;
  margin-right: 0 !important;
  flex: 0 0 16px !important;
}

body#category #search_filters .facet .facet-label > a,
body#category #search_filters .facet .facet-label > span,
body#category #search_filters .facet .facet-label > label {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

/* Mantener bien alineados los textos largos que ocupan dos líneas */
body#category #search_filters .facet .facet-label a {
  line-height: 1.35 !important;
  padding-top: 0 !important;
}


/* ADADP - Descripción más visible en la ficha de producto */
body#product .adadp-product-description-top,
body#product .adadp-short-description-top {
  margin: 10px 0 20px !important;
  padding: 14px 16px !important;
  border: 1px solid #cfe3f7 !important;
  border-radius: 10px !important;
  background: #f8fbfe;
  box-sizing: border-box !important;
  color: #333333;
  font-size: 16px;
  line-height: 1.55;
}

body#product .adadp-product-description-title {
  margin: 0 0 8px 0;
  color: #0B4F8A;
  font-size: 18px;
  font-weight: 700;
}

body#product .adadp-product-description-content p,
body#product .adadp-short-description-top p {
  margin: 0 0 10px 0;
}

body#product .adadp-product-description-content p:last-child,
body#product .adadp-short-description-top p:last-child {
  margin-bottom: 0;
}

body#product .adadp-original-description-hidden,
body#product .adadp-description-tab-hidden {
  display: none !important;
}

@media (max-width: 767px) {
  body#product .adadp-product-description-top,
  body#product .adadp-short-description-top {
    padding: 12px 13px !important;
    font-size: 15px;
  }
}


/* ADADP - “Detalles del producto” inmediatamente bajo la descripción */
body#product .adadp-product-details-top {
  margin: 0 0 20px !important;
  border: 1px solid #cfe3f7 !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

body#product .adadp-product-details-summary {
  position: relative;
  display: block;
  padding: 13px 44px 13px 18px !important;
  color: #0B4F8A !important;
  background: #f7fbff !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  cursor: pointer !important;
  list-style: none !important;
  user-select: none;
  transition: background-color .18s ease, color .18s ease;
}

body#product .adadp-product-details-summary::-webkit-details-marker {
  display: none !important;
}

body#product .adadp-product-details-summary::after {
  content: "+";
  position: absolute;
  right: 17px;
  top: 50%;
  transform: translateY(-50%);
  color: #078FD6;
  font-size: 25px;
  font-weight: 400;
  line-height: 1;
}

body#product .adadp-product-details-top[open] .adadp-product-details-summary::after {
  content: "−";
}

body#product .adadp-product-details-summary:hover,
body#product .adadp-product-details-summary:focus {
  background: #eef8ff !important;
  color: #078FD6 !important;
  outline: none !important;
}

body#product .adadp-product-details-content {
  display: block !important;
  padding: 15px 18px 18px !important;
  margin: 0 !important;
  color: #444444 !important;
  background: #ffffff !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
}

body#product .adadp-details-tab-hidden {
  display: none !important;
}

@media (max-width: 767px) {
  body#product .adadp-product-details-summary {
    padding: 12px 40px 12px 14px !important;
    font-size: 16px !important;
  }

  body#product .adadp-product-details-content {
    padding: 13px 14px 15px !important;
    font-size: 14px !important;
  }
}


/* ADADP - Ocultar el CTA superior duplicado de reseñas */
body#product .adadp-review-cta-hidden {
  display: none !important;
}

/* ADADP - Ocultar el stock dentro de “Detalles del producto” */
body#product .adadp-product-details-content .product-quantities,
body#product .adadp-product-details-top .product-quantities {
  display: none !important;
}


/* ADADP - Portada: acercar los dos banners sin recortarlos */
body#index .adadp-home-large-banner-wrap {
  min-height: 0 !important;
  height: auto !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 6px !important;
  overflow: visible !important;
}

body#index .adadp-home-large-banner {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 !important;
}

/* No recortar el primer banner: conservar logo, borde y botones completos */
body#index .adadp-home-large-banner-1 {
  height: auto !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
}

/* Segundo banner: mismo tratamiento y separación reducida */
body#index .adadp-home-large-banner-wrap-2 {
  margin-top: 4px !important;
  margin-bottom: 8px !important;
  overflow: visible !important;
}

body#index .adadp-home-large-banner-2 {
  height: auto !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
}

@media (max-width: 767px) {
  body#index .adadp-home-large-banner-wrap {
    margin-bottom: 5px !important;
  }

  body#index .adadp-home-large-banner,
  body#index .adadp-home-large-banner-1,
  body#index .adadp-home-large-banner-2 {
    height: auto !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
  }
}


/* ADADP 3.8 - Categorías principales mostradas como tarjetas en la landing de libros */
body#category .adadp-wingest-no-products-hidden {
  display: none !important;
}

body#category .adadp-wingest-categories {
  margin: 18px 0 28px !important;
  padding: 24px 26px 28px !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
}

body#category .adadp-wingest-categories > h2 {
  margin: 0 0 22px !important;
  color: #222222 !important;
  font-size: 28px !important;
  font-weight: 500 !important;
}

body#category .adadp-wingest-category-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 24px !important;
}

body#category .adadp-wingest-category-card {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 285px !important;
  padding: 26px 18px 14px !important;
  border: 1px solid #e2ebf3 !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  color: #0B4F8A !important;
  text-align: center !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  box-shadow: 0 2px 8px rgba(11, 79, 138, .03) !important;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease !important;
}

body#category .adadp-wingest-category-card:hover,
body#category .adadp-wingest-category-card:focus {
  transform: translateY(-3px) !important;
  border-color: #bcdcf2 !important;
  box-shadow: 0 8px 20px rgba(11, 79, 138, .11) !important;
  color: #078FD6 !important;
  outline: none !important;
}

body#category .adadp-wingest-category-image {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 185px !important;
  margin-bottom: 12px !important;
}

body#category .adadp-wingest-category-image img {
  display: block !important;
  width: auto !important;
  max-width: 190px !important;
  max-height: 190px !important;
  object-fit: contain !important;
  transition: transform .18s ease !important;
}

body#category .adadp-wingest-category-card:hover .adadp-wingest-category-image img {
  transform: scale(1.025) !important;
}

body#category .adadp-wingest-category-name {
  width: 100% !important;
  color: inherit !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}

body#category #search_filters .adadp-wingest-category-facet {
  display: block !important;
  margin-top: 18px !important;
}

body#category #search_filters .adadp-wingest-category-facet .facet-title {
  margin-bottom: 10px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #222222 !important;
}

body#category #search_filters .adadp-wingest-category-filter-list {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body#category #search_filters .adadp-wingest-category-filter-list li {
  margin: 0 0 7px !important;
  padding: 0 !important;
}

body#category #search_filters .adadp-wingest-category-filter-link {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  color: #222222 !important;
  text-decoration: none !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

body#category #search_filters .adadp-wingest-category-filter-box {
  position: relative !important;
  top: 5px !important;
  flex: 0 0 14px !important;
  width: 14px !important;
  height: 14px !important;
  border: 2px solid #078FD6 !important;
  border-radius: 3px !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
}

body#category #search_filters .adadp-wingest-category-filter-link:hover,
body#category #search_filters .adadp-wingest-category-filter-link:focus {
  color: #078FD6 !important;
  outline: none !important;
}

@media (max-width: 991px) {
  body#category .adadp-wingest-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 575px) {
  body#category .adadp-wingest-categories {
    padding: 18px 14px 22px !important;
  }
  body#category .adadp-wingest-category-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
}


/* ADADP - Botón para volver a la página filtrada desde un producto */
body#product .adadp-back-results {
  margin: 4px 0 18px;
}

body#product .adadp-back-results-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 15px;
  border: 1px solid #0B4F8A;
  border-radius: 999px;
  background: #ffffff;
  color: #0B4F8A !important;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .15px;
  text-decoration: none !important;
  box-shadow: 0 2px 8px rgba(11, 79, 138, .10);
  transition: background-color .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease;
}

body#product .adadp-back-results-link:hover,
body#product .adadp-back-results-link:focus {
  background: #0B4F8A;
  color: #ffffff !important;
  box-shadow: 0 4px 12px rgba(11, 79, 138, .18);
  transform: translateY(-1px);
}

@media (max-width: 767px) {
  body#product .adadp-back-results {
    margin-bottom: 14px;
  }

  body#product .adadp-back-results-link {
    padding: 8px 13px;
    font-size: 12px;
  }
}


/* ADADP 4.1 - Botón de retorno al catálogo principal desde categorías */
body#category .adadp-back-categories {
  margin: 0 0 14px !important;
}

body#category .adadp-back-categories-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 9px 16px !important;
  border: 1px solid #0B4F8A !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: #0B4F8A !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: .15px !important;
  text-decoration: none !important;
  box-shadow: 0 2px 8px rgba(11, 79, 138, .10) !important;
  transition: background-color .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease !important;
}

body#category .adadp-back-categories-link:hover,
body#category .adadp-back-categories-link:focus {
  background: #0B4F8A !important;
  color: #ffffff !important;
  box-shadow: 0 4px 12px rgba(11, 79, 138, .18) !important;
  transform: translateY(-1px) !important;
  outline: none !important;
}

@media (max-width: 767px) {
  body#category .adadp-back-categories {
    margin-bottom: 12px !important;
  }

  body#category .adadp-back-categories-link {
    padding: 8px 13px !important;
    font-size: 12px !important;
  }
}

/* ADADP 4.2 - En el carrito mostrar solo FINALIZAR COMPRA.
   Los botones de pago exprés (PayPal / financiación) seguirán disponibles
   en el checkout final, pero no se muestran en la página del carrito. */
body#cart .checkout.cart-detailed-actions .text-sm-center > *:not(a.btn.btn-primary) {
  display: none !important;
}

/* Refuerzo para integraciones que inyectan el contenido directamente */
body#cart .checkout.cart-detailed-actions .text-sm-center iframe,
body#cart .checkout.cart-detailed-actions .text-sm-center [data-pp-message],
body#cart .checkout.cart-detailed-actions .text-sm-center [id*="paypal" i],
body#cart .checkout.cart-detailed-actions .text-sm-center [class*="paypal" i],
body#cart .checkout.cart-detailed-actions .text-sm-center [id*="ps_checkout" i],
body#cart .checkout.cart-detailed-actions .text-sm-center [class*="ps_checkout" i] {
  display: none !important;
}


/* ADADP 4.3 - Ocultar TODO el bloque PayPal/Pay Later/"Pagos seguros" en el carrito.
   Solo afecta a body#cart; el checkout final conserva todos los métodos de pago. */
body#cart .cart-grid-right [id*="paypal" i],
body#cart .cart-grid-right [class*="paypal" i],
body#cart .cart-grid-right [data-pp-message],
body#cart .cart-grid-right iframe[src*="paypal" i],
body#cart .cart-grid-right [id*="paylater" i],
body#cart .cart-grid-right [class*="paylater" i],
body#cart .cart-grid-right [id*="pay-later" i],
body#cart .cart-grid-right [class*="pay-later" i],
body#cart .cart-grid-right .adadp-hide-cart-paypal {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
}

/* El botón principal debe seguir visible. */
body#cart .cart-grid-right a.btn.btn-primary,
body#cart .cart-grid-right .checkout a,
body#cart .cart-grid-right .checkout .btn-primary {
  display: flex !important;
  visibility: visible !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: inherit;
  padding: inherit;
  overflow: visible !important;
}

/* ADADP 4.4 - Checkout limpio antes del paso final de pago.
   Oculta botones exprés PayPal/Pay Later y mensajes promocionales en datos personales
   y en la columna de resumen. NO oculta las opciones del paso final de pago. */
body#checkout #checkout-personal-information-step iframe[src*="paypal" i],
body#checkout #checkout-personal-information-step [data-pp-message],
body#checkout #checkout-personal-information-step [id*="paypal" i],
body#checkout #checkout-personal-information-step [class*="paypal" i],
body#checkout #checkout-personal-information-step [id*="paylater" i],
body#checkout #checkout-personal-information-step [class*="paylater" i],
body#checkout #checkout-personal-information-step [id*="pay-later" i],
body#checkout #checkout-personal-information-step [class*="pay-later" i],
body#checkout #checkout-personal-information-step .adadp-hide-checkout-paypal,
body#checkout .cart-grid-right .adadp-hide-checkout-paypal,
body#checkout #js-checkout-summary .adadp-hide-checkout-paypal {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
}

/* Asegurar que el paso final de pago siga visible y operativo. */
body#checkout #checkout-payment-step,
body#checkout #checkout-payment-step .payment-options,
body#checkout #checkout-payment-step .payment-option,
body#checkout #checkout-payment-step [class*="paypal" i],
body#checkout #checkout-payment-step [id*="paypal" i] {
  visibility: visible !important;
  max-height: none !important;
  overflow: visible !important;
}


/* ADADP 4.5 - Página de contacto más compacta y coherente con la identidad ADADP */
body#contact .contact-rich,
body#contact .contact-form {
  background: #ffffff !important;
  border: 1px solid #dce8f3 !important;
  border-radius: 12px !important;
  box-shadow: 0 3px 14px rgba(11, 79, 138, .07) !important;
}

body#contact .contact-rich {
  padding: 24px 22px !important;
}

body#contact .contact-form {
  padding: 24px 28px !important;
}

body#contact .contact-rich h4,
body#contact .contact-form h3,
body#contact .contact-form .h3 {
  color: #0B4F8A !important;
  margin-top: 0 !important;
  margin-bottom: 20px !important;
}

body#contact .contact-rich .block {
  margin-bottom: 18px !important;
  padding-bottom: 16px !important;
}

body#contact .contact-rich .block:last-child {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

body#contact .contact-form .form-group {
  margin-bottom: 14px !important;
}

body#contact .contact-form input.form-control,
body#contact .contact-form select.form-control,
body#contact .contact-form textarea.form-control,
body#contact .contact-form .form-control {
  border: 1px solid #cfdbe7 !important;
  border-radius: 6px !important;
  box-shadow: none !important;
}

body#contact .contact-form input.form-control:focus,
body#contact .contact-form select.form-control:focus,
body#contact .contact-form textarea.form-control:focus {
  border-color: #078FD6 !important;
  box-shadow: 0 0 0 3px rgba(7, 143, 214, .10) !important;
}

body#contact .contact-form .btn-primary,
body#contact .contact-form button[type="submit"],
body#contact .contact-form input[type="submit"] {
  background: #0B4F8A !important;
  border-color: #0B4F8A !important;
  color: #ffffff !important;
  border-radius: 6px !important;
  padding: 11px 24px !important;
  font-weight: 700 !important;
  box-shadow: 0 3px 10px rgba(11, 79, 138, .16) !important;
  transition: background-color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease !important;
}

body#contact .contact-form .btn-primary:hover,
body#contact .contact-form .btn-primary:focus,
body#contact .contact-form button[type="submit"]:hover,
body#contact .contact-form button[type="submit"]:focus,
body#contact .contact-form input[type="submit"]:hover,
body#contact .contact-form input[type="submit"]:focus {
  background: #078FD6 !important;
  border-color: #078FD6 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 5px 14px rgba(7, 143, 214, .22) !important;
}

body#contact .adadp-contact-privacy {
  margin-top: 14px !important;
  padding-top: 12px !important;
  border-top: 1px solid #e7eef5 !important;
  color: #6d7782 !important;
  font-size: 12.5px !important;
  line-height: 1.45 !important;
  text-align: right !important;
}

body#contact .adadp-contact-privacy a {
  color: #0B4F8A !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
}

body#contact .adadp-contact-privacy a:hover,
body#contact .adadp-contact-privacy a:focus {
  color: #078FD6 !important;
}

@media (max-width: 767px) {
  body#contact .contact-rich,
  body#contact .contact-form {
    padding: 18px 16px !important;
    border-radius: 9px !important;
  }

  body#contact .adadp-contact-privacy {
    text-align: left !important;
  }
}

/* ADADP 4.6 - Unificar azules en cabecera y página de contacto */
/* Carrito de la cabecera */
#header .header-nav .cart-preview.active,
#header .header-nav .cart-preview,
#_desktop_cart .blockcart.active,
#_desktop_cart .blockcart {
  background: #0B4F8A !important;
  border-color: #0B4F8A !important;
}

#header .header-nav .cart-preview a,
#header .header-nav .cart-preview i,
#header .header-nav .cart-preview .cart-products-count,
#_desktop_cart .blockcart a,
#_desktop_cart .blockcart i,
#_desktop_cart .blockcart .cart-products-count {
  color: #ffffff !important;
}

#header .header-nav .cart-preview:hover,
#_desktop_cart .blockcart:hover {
  background: #078FD6 !important;
  border-color: #078FD6 !important;
}

/* Botón de seleccionar archivo en Contacto */
body#contact .contact-form .input-group-btn .btn,
body#contact .contact-form .file-input .btn,
body#contact .contact-form .bootstrap-filestyle .btn,
body#contact .contact-form .btn-file,
body#contact .contact-form [class*="file"] .btn,
body#contact .contact-form label[for*="file"] .btn,
body#contact .contact-form .group-span-filestyle .btn {
  background: #0B4F8A !important;
  border-color: #0B4F8A !important;
  color: #ffffff !important;
}

body#contact .contact-form .input-group-btn .btn:hover,
body#contact .contact-form .file-input .btn:hover,
body#contact .contact-form .bootstrap-filestyle .btn:hover,
body#contact .contact-form .btn-file:hover,
body#contact .contact-form [class*="file"] .btn:hover,
body#contact .contact-form .group-span-filestyle .btn:hover {
  background: #078FD6 !important;
  border-color: #078FD6 !important;
}

/* Correo mostrado en Datos de contacto */
body#contact .contact-rich a[href^="mailto:"] {
  color: #0B4F8A !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

body#contact .contact-rich a[href^="mailto:"]:hover,
body#contact .contact-rich a[href^="mailto:"]:focus {
  color: #078FD6 !important;
  text-decoration: underline !important;
}

/* ADADP 4.7 - Newsletter y títulos del pie en azul corporativo */
/* Botón SUSCRIBIRSE */
#footer .block_newsletter .btn-primary,
#footer .block_newsletter button[type="submit"],
#footer .block_newsletter input[type="submit"],
.footer-container .block_newsletter .btn-primary,
.footer-container .block_newsletter button[type="submit"],
.footer-container .block_newsletter input[type="submit"] {
  background: #0B4F8A !important;
  border-color: #0B4F8A !important;
  color: #ffffff !important;
  transition: background-color .2s ease, border-color .2s ease !important;
}

#footer .block_newsletter .btn-primary:hover,
#footer .block_newsletter .btn-primary:focus,
#footer .block_newsletter button[type="submit"]:hover,
#footer .block_newsletter button[type="submit"]:focus,
#footer .block_newsletter input[type="submit"]:hover,
#footer .block_newsletter input[type="submit"]:focus,
.footer-container .block_newsletter .btn-primary:hover,
.footer-container .block_newsletter .btn-primary:focus {
  background: #078FD6 !important;
  border-color: #078FD6 !important;
}

/* Correo del pie */
#footer a[href^="mailto:"],
.footer-container a[href^="mailto:"] {
  color: #0B4F8A !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

#footer a[href^="mailto:"]:hover,
#footer a[href^="mailto:"]:focus,
.footer-container a[href^="mailto:"]:hover,
.footer-container a[href^="mailto:"]:focus {
  color: #078FD6 !important;
  text-decoration: underline !important;
}

/* Títulos de las columnas inferiores */
#footer .links .h3,
#footer .links .h4,
#footer .links .title,
#footer .block-contact-title,
#footer .block-contact .h4,
.footer-container .links .h3,
.footer-container .links .h4,
.footer-container .block-contact-title {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}

/* ADADP - asegurar color azul en título SU CUENTA del pie */
#footer .block-contact-title,
#footer .myaccount-title,
#footer .account-title,
#footer .footer-block h3,
#footer .footer-block h4,
#footer .links .h3,
#footer .links .h4,
#footer .links .title,
#footer .links .collapse-icons + span,
#footer .links .wrapper > .h3,
#footer .links .wrapper > .h4 {
  color: #0B4F8A !important;
}

/* ADADP v4.9 - Forzar título "SU CUENTA" en azul corporativo */
#footer #block_myaccount_infos .myaccount-title,
#footer #block_myaccount_infos .myaccount-title a,
#footer #block_myaccount_infos .h3,
#footer #block_myaccount_infos .h3 a,
#footer [id*="myaccount"] .h3,
#footer [id*="myaccount"] .h3 a,
#footer [class*="myaccount"] .h3,
#footer [class*="myaccount"] .h3 a,
.footer-container #block_myaccount_infos .myaccount-title,
.footer-container #block_myaccount_infos .myaccount-title a,
.footer-container [id*="myaccount"] .h3,
.footer-container [id*="myaccount"] .h3 a {
  color: #0B4F8A !important;
  opacity: 1 !important;
}

/* Si el título "SU CUENTA" usa la estructura genérica de enlaces del tema */
#footer .links .wrapper > p.h3,
#footer .links .wrapper > p.h3 > a,
#footer .links .wrapper > .h3,
#footer .links .wrapper > .h3 > a {
  color: #0B4F8A !important;
}

/* ADADP v4.9 - Ocultar el crédito "Ecommerce desarrollado por PrestaShop" */
#footer a[href*="prestashop-project.org"],
#footer a[href*="prestashop.com"][class*="_blank"],
.footer-container a[href*="prestashop-project.org"],
.footer-container a[href*="prestashop.com"][class*="_blank"] {
  display: none !important;
}

/* Quitar también el espacio del párrafo del crédito en navegadores modernos */
#footer p:has(> a[href*="prestashop-project.org"]),
.footer-container p:has(> a[href*="prestashop-project.org"]) {
  display: none !important;
}


/* ADADP 5.1 - Asunto libre en el formulario de contacto */
body#contact .contact-form .adadp-contact-routing-select {
  display: none !important;
}

body#contact .contact-form .adadp-contact-subject-text {
  width: 100% !important;
  min-height: 48px !important;
  border: 1px solid #cfe0ef !important;
  border-radius: 8px !important;
  padding: 10px 14px !important;
  background: #ffffff !important;
  color: #222222 !important;
  box-shadow: none !important;
}

body#contact .contact-form .adadp-contact-subject-text:focus {
  border-color: #0B4F8A !important;
  box-shadow: 0 0 0 3px rgba(11, 79, 138, .10) !important;
  outline: none !important;
}


/* =========================================================
   ADADP 5.2 - Página NUESTRA HISTORIA
   ========================================================= */
body.adadp-history-page .adadp-history-content {
  max-width: 1120px !important;
  margin: 0 auto 42px !important;
  padding: 28px 34px 36px !important;
  background: #ffffff !important;
  border: 1px solid #e5edf5 !important;
  border-radius: 16px !important;
  box-shadow: 0 8px 28px rgba(11, 79, 138, .07) !important;
  color: #343b43 !important;
}

body.adadp-history-page .adadp-history-main-title,
body.adadp-history-page #content h1,
body.adadp-history-page .page-header h1 {
  color: #0B4F8A !important;
  text-align: center !important;
  font-size: clamp(30px, 4vw, 46px) !important;
  line-height: 1.12 !important;
  font-weight: 800 !important;
  letter-spacing: .4px !important;
  margin: 4px 0 8px !important;
  text-transform: uppercase !important;
}

body.adadp-history-page .adadp-history-subtitle {
  display: block !important;
  text-align: center !important;
  color: #8b6a1e !important;
  font-size: clamp(18px, 2.1vw, 24px) !important;
  font-weight: 600 !important;
  font-style: italic !important;
  margin: 0 0 30px !important;
}

body.adadp-history-page .adadp-history-content > p:first-of-type {
  font-size: 17px !important;
  line-height: 1.75 !important;
  background: #f7fbff !important;
  border: 1px solid #dbeaf7 !important;
  border-left: 4px solid #0B4F8A !important;
  border-radius: 10px !important;
  padding: 18px 20px !important;
  margin: 0 0 22px !important;
}

body.adadp-history-page .adadp-history-section {
  position: relative !important;
  margin: 18px 0 !important;
  padding: 22px 24px 20px !important;
  background: #ffffff !important;
  border: 1px solid #e3ebf3 !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 16px rgba(15, 67, 112, .05) !important;
}

body.adadp-history-page .adadp-history-section::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 18px !important;
  bottom: 18px !important;
  width: 4px !important;
  border-radius: 0 4px 4px 0 !important;
  background: linear-gradient(180deg, #0B4F8A, #C7A349) !important;
}

body.adadp-history-page .adadp-history-section h3 {
  color: #0B4F8A !important;
  font-size: 21px !important;
  line-height: 1.3 !important;
  font-weight: 750 !important;
  margin: 0 0 12px !important;
}

body.adadp-history-page .adadp-history-content p,
body.adadp-history-page .adadp-history-section p {
  font-size: 16px !important;
  line-height: 1.72 !important;
  margin: 0 0 14px !important;
}

body.adadp-history-page .adadp-history-content p:last-child,
body.adadp-history-page .adadp-history-section p:last-child {
  margin-bottom: 0 !important;
}

body.adadp-history-page .adadp-history-mission {
  margin: 20px 0 !important;
  padding: 18px 22px !important;
  background: linear-gradient(135deg, #eef7ff 0%, #fffaf0 100%) !important;
  border: 1px solid #d9e7f4 !important;
  border-radius: 12px !important;
  color: #0B4F8A !important;
  font-size: 17px !important;
  line-height: 1.6 !important;
  font-weight: 700 !important;
  text-align: center !important;
}

body.adadp-history-page .adadp-history-final-quote {
  margin: 30px auto 8px !important;
  padding: 22px 26px !important;
  max-width: 820px !important;
  text-align: center !important;
  color: #0B4F8A !important;
  background: #f7fbff !important;
  border: 1px solid #d9e8f5 !important;
  border-radius: 14px !important;
  font-size: 23px !important;
  line-height: 1.4 !important;
  font-weight: 800 !important;
  box-shadow: 0 6px 18px rgba(11, 79, 138, .07) !important;
}

body.adadp-history-page .adadp-history-final-quote::before,
body.adadp-history-page .adadp-history-final-quote::after {
  color: #C7A349 !important;
  font-size: 29px !important;
  line-height: 1 !important;
}
body.adadp-history-page .adadp-history-final-quote::before { content: '“'; }
body.adadp-history-page .adadp-history-final-quote::after { content: '”'; }

body.adadp-history-page .adadp-history-catalog-cta {
  display: flex !important;
  justify-content: center !important;
  margin: 28px 0 2px !important;
}

body.adadp-history-page .adadp-history-catalog-cta a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 170px !important;
  padding: 11px 26px !important;
  border-radius: 999px !important;
  background: #0B4F8A !important;
  border: 1px solid #C7A349 !important;
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: .35px !important;
  text-decoration: none !important;
  box-shadow: 0 4px 14px rgba(11, 79, 138, .16) !important;
  transition: all .2s ease !important;
}

body.adadp-history-page .adadp-history-catalog-cta a:hover,
body.adadp-history-page .adadp-history-catalog-cta a:focus {
  background: #078FD6 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 18px rgba(7, 143, 214, .20) !important;
}

@media (max-width: 767px) {
  body.adadp-history-page .adadp-history-content {
    padding: 20px 16px 26px !important;
    border-radius: 12px !important;
  }
  body.adadp-history-page .adadp-history-section {
    padding: 18px 17px 17px 20px !important;
  }
  body.adadp-history-page .adadp-history-section h3 {
    font-size: 19px !important;
  }
  body.adadp-history-page .adadp-history-content p,
  body.adadp-history-page .adadp-history-section p {
    font-size: 15px !important;
  }
  body.adadp-history-page .adadp-history-final-quote {
    font-size: 20px !important;
    padding: 18px 18px !important;
  }
}


/* =========================================================
   ADADP 5.3 - NUESTRA HISTORIA: columna de lectura centrada
   ========================================================= */
body.adadp-history-page .adadp-history-content {
  overflow: hidden !important;
}

/* Centrar el contenido real dentro de la tarjeta, sin centrar
   el texto largo: así queda más elegante y más fácil de leer. */
body.adadp-history-page .adadp-history-content > p,
body.adadp-history-page .adadp-history-content > h2,
body.adadp-history-page .adadp-history-content > h3,
body.adadp-history-page .adadp-history-content > h4,
body.adadp-history-page .adadp-history-content > div:not(.adadp-history-catalog-cta),
body.adadp-history-page .adadp-history-section {
  width: 100% !important;
  max-width: 920px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
  float: none !important;
}

body.adadp-history-page .adadp-history-content p,
body.adadp-history-page .adadp-history-section p {
  width: 100% !important;
  max-width: 920px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  text-align: left !important;
  box-sizing: border-box !important;
  overflow-wrap: anywhere !important;
}

/* El párrafo inicial sí puede ir centrado y destacado. */
body.adadp-history-page .adadp-history-content > p:first-of-type {
  max-width: 920px !important;
  text-align: center !important;
  padding: 18px 24px !important;
}

/* Título y subtítulo perfectamente centrados */
body.adadp-history-page .adadp-history-main-title,
body.adadp-history-page .adadp-history-subtitle {
  max-width: 920px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

/* Neutralizar márgenes/anchos inline que puedan venir del editor CMS */
body.adadp-history-page .adadp-history-content [style*="margin-left"],
body.adadp-history-page .adadp-history-content [style*="width"] {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 920px !important;
}

@media (max-width: 991px) {
  body.adadp-history-page .adadp-history-content > p,
  body.adadp-history-page .adadp-history-content > h2,
  body.adadp-history-page .adadp-history-content > h3,
  body.adadp-history-page .adadp-history-content > h4,
  body.adadp-history-page .adadp-history-content > div:not(.adadp-history-catalog-cta),
  body.adadp-history-page .adadp-history-section,
  body.adadp-history-page .adadp-history-content p,
  body.adadp-history-page .adadp-history-section p {
    max-width: 100% !important;
  }
}

/* =========================================================
   ADADP 5.4 - NUESTRA HISTORIA: página más ancha y equilibrada
   ========================================================= */
@media (min-width: 992px) {
  body.adadp-history-page #wrapper > .container,
  body.adadp-history-page #wrapper .container {
    width: 94% !important;
    max-width: 1450px !important;
  }

  body.adadp-history-page #content-wrapper,
  body.adadp-history-page #content {
    width: 100% !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

body.adadp-history-page .adadp-history-content {
  width: 100% !important;
  max-width: 1320px !important;
  margin: 0 auto 34px !important;
  padding: 30px 42px 34px !important;
  overflow: visible !important;
}

/* Columna de lectura amplia, centrada y sin desplazamientos laterales */
body.adadp-history-page .adadp-history-content > p,
body.adadp-history-page .adadp-history-content > h2,
body.adadp-history-page .adadp-history-content > h3,
body.adadp-history-page .adadp-history-content > h4,
body.adadp-history-page .adadp-history-content > div:not(.adadp-history-catalog-cta),
body.adadp-history-page .adadp-history-section {
  width: 100% !important;
  max-width: 1160px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  float: none !important;
  box-sizing: border-box !important;
}

/* Texto normal: alineado a la izquierda, cómodo de leer y sin grandes huecos */
body.adadp-history-page .adadp-history-content p,
body.adadp-history-page .adadp-history-section p,
body.adadp-history-page .adadp-history-content div p {
  max-width: 1160px !important;
  margin: 0 auto 16px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  text-align: left !important;
  font-size: 16px !important;
  line-height: 1.68 !important;
  font-weight: 400 !important;
  color: #4a5560 !important;
}

/* Título y subtítulo realmente centrados */
body.adadp-history-page .adadp-history-main-title,
body.adadp-history-page .adadp-history-subtitle {
  width: 100% !important;
  max-width: 1160px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

/* Introducción destacada, pero sin ocupar una caja enorme */
body.adadp-history-page .adadp-history-content > p:first-of-type {
  max-width: 1080px !important;
  margin: 18px auto 24px !important;
  padding: 14px 18px !important;
  text-align: center !important;
  font-size: 17px !important;
  line-height: 1.6 !important;
  font-style: italic !important;
  font-weight: 500 !important;
  color: #173f6d !important;
  background: #f8fbfe !important;
  border: 1px solid #dbe8f3 !important;
  border-radius: 10px !important;
}

/* La misión debe ser un destacado compacto, no una caja gigante */
body.adadp-history-page .adadp-history-mission {
  display: block !important;
  width: 100% !important;
  max-width: 1080px !important;
  margin: 20px auto !important;
  padding: 16px 20px !important;
  text-align: center !important;
  font-size: 17px !important;
  line-height: 1.55 !important;
  font-weight: 650 !important;
  color: #0B4F8A !important;
  background: linear-gradient(135deg, #f2f8fd 0%, #fffaf1 100%) !important;
  border: 1px solid #dbe7f2 !important;
  border-radius: 12px !important;
}

/* Si el editor CMS trae estilos inline, neutralizarlos en la zona de lectura */
body.adadp-history-page .adadp-history-content p[style],
body.adadp-history-page .adadp-history-content div[style] {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 1160px !important;
}

/* Menos aire vertical entre bloques */
body.adadp-history-page .adadp-history-section {
  margin-top: 14px !important;
  margin-bottom: 14px !important;
  padding: 20px 24px 18px !important;
}

@media (max-width: 991px) {
  body.adadp-history-page .adadp-history-content {
    max-width: calc(100% - 24px) !important;
    padding: 22px 18px 26px !important;
  }

  body.adadp-history-page .adadp-history-content > p,
  body.adadp-history-page .adadp-history-content > h2,
  body.adadp-history-page .adadp-history-content > h3,
  body.adadp-history-page .adadp-history-content > h4,
  body.adadp-history-page .adadp-history-content > div:not(.adadp-history-catalog-cta),
  body.adadp-history-page .adadp-history-section,
  body.adadp-history-page .adadp-history-content p,
  body.adadp-history-page .adadp-history-section p {
    max-width: 100% !important;
  }
}


/* =========================================================
   ADADP 5.5 - NUESTRA HISTORIA: centrado real y sin desbordes
   ========================================================= */

/* En Nuestra Historia no tiene sentido mostrar el botón de volver a categorías. */
body.adadp-history-page .adadp-back-categories {
  display: none !important;
}

/* Tarjeta principal bien centrada y proporcionada. */
body.adadp-history-page .adadp-history-content {
  width: calc(100% - 32px) !important;
  max-width: 1280px !important;
  margin: 0 auto 36px !important;
  padding: 30px 36px 34px !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

/* Evitar estilos pegados desde el editor que fuerzan líneas o anchos extraños. */
body.adadp-history-page .adadp-history-content,
body.adadp-history-page .adadp-history-content p,
body.adadp-history-page .adadp-history-content div,
body.adadp-history-page .adadp-history-content blockquote,
body.adadp-history-page .adadp-history-content span,
body.adadp-history-page .adadp-history-content em,
body.adadp-history-page .adadp-history-content strong {
  white-space: normal !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}

/* La columna de lectura queda centrada dentro de la tarjeta. */
body.adadp-history-page .adadp-history-content > p,
body.adadp-history-page .adadp-history-content > h1,
body.adadp-history-page .adadp-history-content > h2,
body.adadp-history-page .adadp-history-content > h3,
body.adadp-history-page .adadp-history-content > h4,
body.adadp-history-page .adadp-history-content > blockquote,
body.adadp-history-page .adadp-history-content > div:not(.adadp-history-catalog-cta),
body.adadp-history-page .adadp-history-section {
  width: 100% !important;
  max-width: 1080px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
  float: none !important;
}

/* El bloque que llega del editor como cita ya no puede salirse por la derecha. */
body.adadp-history-page .adadp-history-content blockquote {
  display: block !important;
  width: 100% !important;
  max-width: 1080px !important;
  margin: 18px auto 22px !important;
  padding: 22px 28px !important;
  box-sizing: border-box !important;
  background: #f7fbff !important;
  border: 1px solid #d9e8f5 !important;
  border-radius: 14px !important;
  color: #3f4c58 !important;
  box-shadow: 0 5px 18px rgba(11, 79, 138, .05) !important;
  overflow: hidden !important;
  text-align: left !important;
}

body.adadp-history-page .adadp-history-content blockquote p,
body.adadp-history-page .adadp-history-content blockquote div {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
  text-align: left !important;
}

body.adadp-history-page .adadp-history-content blockquote p {
  margin-bottom: 16px !important;
}

body.adadp-history-page .adadp-history-content blockquote p:last-child {
  margin-bottom: 0 !important;
}

/* Introducción: centrada, con ancho cómodo y sin salirse en una sola línea. */
body.adadp-history-page .adadp-history-content > p:first-of-type {
  width: 100% !important;
  max-width: 1020px !important;
  margin: 16px auto 20px !important;
  padding: 12px 18px !important;
  text-align: center !important;
  white-space: normal !important;
}

/* Título y subtítulo con menos separación artificial entre letras. */
body.adadp-history-page .adadp-history-main-title {
  max-width: 1080px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.adadp-history-page .adadp-history-subtitle {
  max-width: 1080px !important;
  margin: 0 auto 22px !important;
  letter-spacing: .28em !important;
}

/* Neutralizar de forma más firme anchos/márgenes inline del CMS. */
body.adadp-history-page .adadp-history-content [style*="width"],
body.adadp-history-page .adadp-history-content [style*="margin-left"],
body.adadp-history-page .adadp-history-content [style*="left"],
body.adadp-history-page .adadp-history-content [style*="position"] {
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  left: auto !important;
}

@media (max-width: 767px) {
  body.adadp-history-page .adadp-history-content {
    width: calc(100% - 16px) !important;
    padding: 22px 16px 26px !important;
  }

  body.adadp-history-page .adadp-history-content blockquote {
    padding: 18px 16px !important;
    margin: 14px auto 18px !important;
  }

  body.adadp-history-page .adadp-history-subtitle {
    letter-spacing: .16em !important;
  }
}

/* =========================================================
   ADADP 5.6 - NUESTRA HISTORIA: lectura más estrecha y fondos renovados
   ========================================================= */
body.adadp-history-page #wrapper,
body.adadp-history-page #main,
body.adadp-history-page .wrapper {
  background: linear-gradient(180deg, #eef4f8 0%, #f6f3ed 100%) !important;
}

body.adadp-history-page .adadp-history-content {
  width: calc(100% - 40px) !important;
  max-width: 1240px !important;
  margin: 28px auto 42px !important;
  padding: 42px 54px 48px !important;
  background: #fffdf9 !important;
  border: 1px solid #d9e5ef !important;
  border-radius: 22px !important;
  box-shadow: 0 14px 34px rgba(11, 79, 138, .08) !important;
  overflow: hidden !important;
}

body.adadp-history-page .adadp-history-content > p,
body.adadp-history-page .adadp-history-content > h2,
body.adadp-history-page .adadp-history-content > h3,
body.adadp-history-page .adadp-history-content > h4,
body.adadp-history-page .adadp-history-content > blockquote,
body.adadp-history-page .adadp-history-content > div:not(.adadp-history-catalog-cta),
body.adadp-history-page .adadp-history-section {
  width: 100% !important;
  max-width: 820px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

body.adadp-history-page .adadp-history-content p,
body.adadp-history-page .adadp-history-section p,
body.adadp-history-page .adadp-history-content div p {
  max-width: 820px !important;
  margin: 0 auto 18px !important;
  text-align: left !important;
  font-size: 17px !important;
  line-height: 1.72 !important;
  color: #3e4a56 !important;
}

body.adadp-history-page .adadp-history-main-title {
  max-width: 900px !important;
  margin: 0 auto 8px !important;
  text-align: center !important;
}

body.adadp-history-page .adadp-history-subtitle {
  max-width: 900px !important;
  margin: 0 auto 24px !important;
  text-align: center !important;
  letter-spacing: .18em !important;
  color: #9b7a52 !important;
}

body.adadp-history-page .adadp-history-content > p:first-of-type {
  max-width: 780px !important;
  margin: 16px auto 30px !important;
  padding: 16px 20px !important;
  text-align: center !important;
  font-size: 17px !important;
  line-height: 1.62 !important;
  color: #173f6d !important;
  background: #fff8ec !important;
  border: 1px solid #ead8b2 !important;
  border-radius: 14px !important;
}

body.adadp-history-page .adadp-history-content blockquote {
  width: 100% !important;
  max-width: 820px !important;
  margin: 22px auto 28px !important;
  padding: 26px 30px !important;
  background: #f4f8fb !important;
  border: 1px solid #cfdeeb !important;
  border-radius: 16px !important;
  box-shadow: none !important;
  color: #3e4a56 !important;
  text-align: left !important;
}

body.adadp-history-page .adadp-history-content blockquote p,
body.adadp-history-page .adadp-history-content blockquote div {
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
}

body.adadp-history-page .adadp-history-section {
  max-width: 820px !important;
  margin: 20px auto !important;
  padding: 24px 28px 20px !important;
  background: #ffffff !important;
  border: 1px solid #e2e8ee !important;
  border-radius: 15px !important;
  box-shadow: 0 5px 16px rgba(11, 79, 138, .04) !important;
}

body.adadp-history-page .adadp-history-mission {
  max-width: 800px !important;
  margin: 24px auto !important;
  padding: 18px 22px !important;
  background: #fff7e8 !important;
  border: 1px solid #e7d39e !important;
  border-radius: 14px !important;
  color: #0B4F8A !important;
}

body.adadp-history-page .adadp-history-content [style*="width"],
body.adadp-history-page .adadp-history-content [style*="margin-left"],
body.adadp-history-page .adadp-history-content [style*="left"],
body.adadp-history-page .adadp-history-content [style*="position"] {
  max-width: 820px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  left: auto !important;
}

@media (max-width: 991px) {
  body.adadp-history-page .adadp-history-content {
    width: calc(100% - 20px) !important;
    padding: 30px 24px 34px !important;
    border-radius: 16px !important;
  }

  body.adadp-history-page .adadp-history-content > p,
  body.adadp-history-page .adadp-history-content > h2,
  body.adadp-history-page .adadp-history-content > h3,
  body.adadp-history-page .adadp-history-content > h4,
  body.adadp-history-page .adadp-history-content > blockquote,
  body.adadp-history-page .adadp-history-content > div:not(.adadp-history-catalog-cta),
  body.adadp-history-page .adadp-history-section,
  body.adadp-history-page .adadp-history-content p {
    max-width: 100% !important;
  }
}

@media (max-width: 767px) {
  body.adadp-history-page .adadp-history-content {
    width: calc(100% - 12px) !important;
    padding: 24px 16px 28px !important;
    margin-top: 14px !important;
  }

  body.adadp-history-page .adadp-history-content blockquote,
  body.adadp-history-page .adadp-history-section {
    padding: 18px 16px !important;
  }

  body.adadp-history-page .adadp-history-content p {
    font-size: 16px !important;
    line-height: 1.64 !important;
  }
}

/* =========================================================
   ADADP 5.7 - NUESTRA HISTORIA: texto más estrecho + menos margen exterior
   ========================================================= */
/* Aprovechar mejor el ancho útil de la página CMS, reduciendo el gran margen
   lateral del contenedor general sin ensanchar la columna de lectura. */
body.adadp-history-page #wrapper > .container,
body.adadp-history-page #wrapper .container,
body.adadp-history-page #main > .container,
body.adadp-history-page #main .container {
  width: calc(100% - 24px) !important;
  max-width: 1540px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
  box-sizing: border-box !important;
}

/* La tarjeta ocupa más ancho de página, pero la lectura queda más estrecha. */
body.adadp-history-page .adadp-history-content {
  width: 100% !important;
  max-width: 1480px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 38px 44px 44px !important;
  box-sizing: border-box !important;
}

/* Columna real de lectura: más compacta y centrada. */
body.adadp-history-page .adadp-history-content > p,
body.adadp-history-page .adadp-history-content > h2,
body.adadp-history-page .adadp-history-content > h3,
body.adadp-history-page .adadp-history-content > h4,
body.adadp-history-page .adadp-history-content > blockquote,
body.adadp-history-page .adadp-history-content > div:not(.adadp-history-catalog-cta),
body.adadp-history-page .adadp-history-section,
body.adadp-history-page .adadp-history-content p,
body.adadp-history-page .adadp-history-section p,
body.adadp-history-page .adadp-history-content div p {
  width: 100% !important;
  max-width: 700px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
}

body.adadp-history-page .adadp-history-content > p:first-of-type {
  max-width: 680px !important;
}

body.adadp-history-page .adadp-history-content blockquote,
body.adadp-history-page .adadp-history-section {
  max-width: 720px !important;
}

body.adadp-history-page .adadp-history-mission {
  max-width: 700px !important;
}

/* Título centrado de forma independiente de la columna de lectura. */
body.adadp-history-page .adadp-history-main-title,
body.adadp-history-page .adadp-history-subtitle {
  width: 100% !important;
  max-width: 860px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

/* Neutralizar estilos inline que puedan empujar texto hacia la derecha. */
body.adadp-history-page .adadp-history-content [style*="margin-right"],
body.adadp-history-page .adadp-history-content [style*="padding-right"],
body.adadp-history-page .adadp-history-content [style*="right"] {
  margin-right: auto !important;
  right: auto !important;
}

@media (max-width: 991px) {
  body.adadp-history-page #wrapper > .container,
  body.adadp-history-page #wrapper .container,
  body.adadp-history-page #main > .container,
  body.adadp-history-page #main .container {
    width: calc(100% - 12px) !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
  }

  body.adadp-history-page .adadp-history-content {
    padding: 28px 22px 34px !important;
  }

  body.adadp-history-page .adadp-history-content > p,
  body.adadp-history-page .adadp-history-content > h2,
  body.adadp-history-page .adadp-history-content > h3,
  body.adadp-history-page .adadp-history-content > h4,
  body.adadp-history-page .adadp-history-content > blockquote,
  body.adadp-history-page .adadp-history-content > div:not(.adadp-history-catalog-cta),
  body.adadp-history-page .adadp-history-section,
  body.adadp-history-page .adadp-history-content p {
    max-width: 100% !important;
  }
}


/* =========================================================
   ADADP 5.8 - NUESTRA HISTORIA: desplazar conjunto hacia la izquierda
   ========================================================= */
@media (min-width: 992px) {

  /* Desplazamos el área completa de la página hacia la izquierda,
     sin tocar el resto de la tienda. */
  body.adadp-history-page #wrapper > .container,
  body.adadp-history-page #wrapper .container,
  body.adadp-history-page #main > .container,
  body.adadp-history-page #main .container {
    width: calc(100% - 80px) !important;
    max-width: 1540px !important;
    margin-left: 0 !important;
    margin-right: 80px !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  /* La tarjeta principal sigue al nuevo eje izquierdo. */
  body.adadp-history-page .adadp-history-content {
    margin-left: 0 !important;
    margin-right: auto !important;
  }

  /* También desplazamos la columna de lectura,
     manteniendo el texto estrecho y cómodo de leer. */
  body.adadp-history-page .adadp-history-content > p,
  body.adadp-history-page .adadp-history-content > h2,
  body.adadp-history-page .adadp-history-content > h3,
  body.adadp-history-page .adadp-history-content > h4,
  body.adadp-history-page .adadp-history-content > blockquote,
  body.adadp-history-page .adadp-history-content > div:not(.adadp-history-catalog-cta),
  body.adadp-history-page .adadp-history-section,
  body.adadp-history-page .adadp-history-content p,
  body.adadp-history-page .adadp-history-section p,
  body.adadp-history-page .adadp-history-content div p {
    margin-left: 70px !important;
    margin-right: auto !important;
    max-width: 700px !important;
  }

  /* Título y subtítulo acompañan al resto del contenido. */
  body.adadp-history-page .adadp-history-main-title,
  body.adadp-history-page .adadp-history-subtitle {
    margin-left: 70px !important;
    margin-right: auto !important;
    max-width: 860px !important;
    text-align: center !important;
  }
}


/* =========================================================
   ADADP 5.9 - NUESTRA HISTORIA
   - mover todo el bloque hacia la izquierda
   - subir el botón VER CATÁLOGO
   - ocultar el bloque "No hay productos disponibles"
   ========================================================= */

@media (min-width: 992px) {
  /* Desplazar la tarjeta completa hacia la izquierda sin afectar al resto de páginas */
  body.adadp-history-page .adadp-history-content {
    position: relative !important;
    left: -90px !important;
    margin-left: 0 !important;
    margin-right: auto !important;
  }

  /* El texto acompaña al desplazamiento y queda algo más cerca del borde izquierdo */
  body.adadp-history-page .adadp-history-content > p,
  body.adadp-history-page .adadp-history-content > h2,
  body.adadp-history-page .adadp-history-content > h3,
  body.adadp-history-page .adadp-history-content > h4,
  body.adadp-history-page .adadp-history-content > blockquote,
  body.adadp-history-page .adadp-history-content > div:not(.adadp-history-catalog-cta),
  body.adadp-history-page .adadp-history-section,
  body.adadp-history-page .adadp-history-content p,
  body.adadp-history-page .adadp-history-section p,
  body.adadp-history-page .adadp-history-content div p {
    margin-left: 38px !important;
    margin-right: auto !important;
  }

  body.adadp-history-page .adadp-history-main-title,
  body.adadp-history-page .adadp-history-subtitle {
    margin-left: 38px !important;
    margin-right: auto !important;
  }
}

/* Botón más cerca del último contenido real */
body.adadp-history-page .adadp-history-catalog-cta {
  margin-top: 12px !important;
  margin-bottom: 0 !important;
}

/* Ocultar cualquier listado vacío de productos en Nuestra Historia */
body.adadp-history-page .adadp-history-no-products-hidden {
  display: none !important;
}


/* =========================================================
   ADADP 6.0 - NUESTRA HISTORIA
   Integrar completamente los bloques de color dentro de la tarjeta blanca
   ========================================================= */

/* La tarjeta blanca contiene todo su contenido */
body.adadp-history-page .adadp-history-content {
  overflow: hidden !important;
}

/* Bloques de color: nunca pueden sobresalir de la tarjeta */
body.adadp-history-page .adadp-history-section,
body.adadp-history-page .adadp-history-content blockquote,
body.adadp-history-page .adadp-history-mission {
  width: calc(100% - 76px) !important;
  max-width: 820px !important;
  margin-left: 38px !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

/* El texto DENTRO de esos bloques no hereda los márgenes exteriores
   que estaban provocando el desbordamiento hacia la derecha. */
body.adadp-history-page .adadp-history-section > *,
body.adadp-history-page .adadp-history-section p,
body.adadp-history-page .adadp-history-section div,
body.adadp-history-page .adadp-history-section h2,
body.adadp-history-page .adadp-history-section h3,
body.adadp-history-page .adadp-history-section h4,
body.adadp-history-page .adadp-history-content blockquote > *,
body.adadp-history-page .adadp-history-content blockquote p,
body.adadp-history-page .adadp-history-mission > * {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}

/* Algo más de aire interior, pero sin hacer el bloque demasiado grande */
body.adadp-history-page .adadp-history-section,
body.adadp-history-page .adadp-history-content blockquote {
  padding-left: 30px !important;
  padding-right: 30px !important;
}

/* En pantallas medianas y móviles, ocupar casi todo el ancho disponible */
@media (max-width: 991px) {
  body.adadp-history-page .adadp-history-section,
  body.adadp-history-page .adadp-history-content blockquote,
  body.adadp-history-page .adadp-history-mission {
    width: calc(100% - 24px) !important;
    max-width: none !important;
    margin-left: 12px !important;
    margin-right: 12px !important;
  }
}


/* =========================================================
   ADADP 6.1 - NUESTRA HISTORIA: texto corrido, sin bloques de color
   ========================================================= */
body.adadp-history-page .adadp-history-plain-text {
  width: min(760px, calc(100% - 80px)) !important;
  max-width: 760px !important;
  margin: 26px auto 10px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #334155 !important;
  box-sizing: border-box !important;
}

body.adadp-history-page .adadp-history-plain-text p {
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 22px !important;
  padding: 0 !important;
  font-size: 17px !important;
  line-height: 1.72 !important;
  font-weight: 400 !important;
  text-align: left !important;
  color: #46515f !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.adadp-history-page .adadp-history-plain-text p strong {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}

/* Anular el aspecto de las antiguas tarjetas sombreadas */
body.adadp-history-page .adadp-history-section,
body.adadp-history-page .adadp-history-content blockquote,
body.adadp-history-page .adadp-history-mission {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.adadp-history-page .adadp-history-catalog-cta {
  margin-top: 16px !important;
}

@media (max-width: 767px) {
  body.adadp-history-page .adadp-history-plain-text {
    width: calc(100% - 30px) !important;
    margin-top: 20px !important;
  }
  body.adadp-history-page .adadp-history-plain-text p {
    font-size: 16px !important;
    line-height: 1.65 !important;
    margin-bottom: 18px !important;
  }
}


/* =========================================================
   ADADP 6.2 - NUESTRA HISTORIA: tipografía editorial
   ========================================================= */

body.adadp-history-page .adadp-history-plain-text {
  max-width: 760px !important;
  margin-top: 22px !important;
}

/* Texto general */
body.adadp-history-page .adadp-history-plain-text p {
  position: relative;
  font-size: 18px !important;
  line-height: 1.78 !important;
  color: #384657 !important;
  margin-bottom: 24px !important;
  letter-spacing: .05px !important;
}

/* Primer párrafo como entradilla editorial, sin caja */
body.adadp-history-page .adadp-history-plain-text p:first-child {
  font-size: 19px !important;
  line-height: 1.72 !important;
  color: #183a63 !important;
  font-weight: 500 !important;
  padding-left: 18px !important;
  border-left: 3px solid #d9ad47 !important;
  margin-bottom: 30px !important;
}

/* Separador muy discreto entre párrafos largos */
body.adadp-history-page .adadp-history-plain-text p:not(:first-child):not(:last-child)::after {
  content: "";
  display: block;
  width: 34px;
  height: 1px;
  margin-top: 20px;
  background: rgba(11, 79, 138, .18);
}

/* Frases importantes */
body.adadp-history-page .adadp-history-plain-text strong {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}

/* Última frase con cierre visual elegante */
body.adadp-history-page .adadp-history-plain-text p:last-child {
  margin-top: 30px !important;
  padding: 18px 22px !important;
  border-radius: 10px !important;
  background: #f8fbff !important;
  border: 1px solid #d9e8f6 !important;
  color: #26384a !important;
}

/* Enlaces dentro del texto */
body.adadp-history-page .adadp-history-plain-text a {
  color: #0B4F8A !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px !important;
}

@media (max-width: 767px) {
  body.adadp-history-page .adadp-history-plain-text p {
    font-size: 16.5px !important;
    line-height: 1.7 !important;
  }

  body.adadp-history-page .adadp-history-plain-text p:first-child {
    font-size: 17px !important;
    padding-left: 14px !important;
  }
}


/* =========================================================
   ADADP 6.3 - PÁGINA COMPLEMENTOS
   ========================================================= */

/* Cabecera más compacta */
body.adadp-complements-category .block-category {
  padding: 26px 30px !important;
  margin-bottom: 24px !important;
  border-radius: 14px !important;
  border: 1px solid #dce8f3 !important;
  background: #ffffff !important;
  box-shadow: 0 8px 22px rgba(11,79,138,.06) !important;
}

/* Ocultar la imagen superior repetida */
body.adadp-complements-category .block-category .category-cover,
body.adadp-complements-category .block-category .category-cover img,
body.adadp-complements-category .block-category > img {
  display: none !important;
}

/* Título y texto introductorio */
body.adadp-complements-category .block-category h1,
body.adadp-complements-category #content-wrapper h1 {
  color: #0B4F8A !important;
  margin-bottom: 10px !important;
}

body.adadp-complements-category .adadp-complements-intro,
body.adadp-complements-category #category-description,
body.adadp-complements-category .category-description {
  max-width: 760px !important;
  margin: 0 !important;
  color: #4b5563 !important;
  font-size: 17px !important;
  line-height: 1.55 !important;
}

/* Bloque de categorías */
body.adadp-complements-category #subcategories {
  padding: 28px 28px 30px !important;
  border-radius: 14px !important;
  background: #ffffff !important;
}

body.adadp-complements-category #subcategories > h2,
body.adadp-complements-category #subcategories .subcategory-heading {
  color: #0B4F8A !important;
  font-size: 28px !important;
  margin-bottom: 24px !important;
}

/* Centrar y agrandar las dos tarjetas */
body.adadp-complements-category #subcategories ul {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 28px !important;
  padding: 0 !important;
  margin: 0 auto !important;
}

body.adadp-complements-category #subcategories ul li {
  float: none !important;
  width: 280px !important;
  max-width: 280px !important;
  margin: 0 !important;
}

body.adadp-complements-category #subcategories .subcategory-image {
  min-height: 230px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 18px !important;
}

body.adadp-complements-category #subcategories .subcategory-image img {
  max-width: 205px !important;
  max-height: 205px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}

/* Que los nombres nunca se corten con puntos suspensivos */
body.adadp-complements-category #subcategories .subcategory-name,
body.adadp-complements-category #subcategories a.subcategory-name {
  display: block !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  min-height: 52px !important;
  padding: 12px 12px 14px !important;
  line-height: 1.25 !important;
  text-align: center !important;
  color: #0B4F8A !important;
  font-weight: 700 !important;
}

/* Reducir huecos externos */
body.adadp-complements-category #content-wrapper {
  padding-top: 0 !important;
}

@media (max-width: 767px) {
  body.adadp-complements-category .block-category {
    padding: 20px !important;
  }

  body.adadp-complements-category #subcategories {
    padding: 22px 16px !important;
  }

  body.adadp-complements-category #subcategories ul li {
    width: 100% !important;
    max-width: 320px !important;
  }
}


/* =========================================================
   ADADP 6.7 - COMPLEMENTOS
   Ocultar SOLO el aviso de "No hay productos disponibles"
   sin tocar las categorías de complementos.
   ========================================================= */
body.adadp-complements-category .adadp-empty-products-notice {
  display: none !important;
}


/* =========================================================
   ADADP 6.9 - COMPRA EN PRODUCTOS / COMPLEMENTOS
   ========================================================= */

/* Ocultar de forma visual los elementos PayPal exprés/promocionales
   en ficha de producto. El método de pago PayPal del checkout final no se toca. */
body#product .adadp-paypal-product-hidden {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
}

/* Refuerzo para selectores habituales de PayPal / PrestaShop Checkout */
body#product .ps_checkout-express-button,
body#product .ps_checkout-express-button-container,
body#product [id*="ps_checkout_express" i],
body#product [class*="ps_checkout_express" i],
body#product [id*="paypal-button" i],
body#product [class*="paypal-button" i],
body#product [id*="paypal-message" i],
body#product [class*="paypal-message" i],
body#product [data-pp-message],
body#product [class*="paylater" i],
body#product [class*="pay-later" i],
body#product iframe[src*="paypal" i],
body#product iframe[title*="paypal" i] {
  display: none !important;
}

/* En Complementos, forzar la visibilidad de las acciones nativas */
body.adadp-complement-product .product-actions,
body.adadp-complement-product .product-add-to-cart,
body.adadp-complement-product #add-to-cart-or-refresh,
body.adadp-complement-product [data-button-action="add-to-cart"],
body.adadp-complement-product .wishlist-button-add,
body.adadp-complement-product .wishlist-button-product {
  visibility: visible !important;
  opacity: 1 !important;
}

/* Botón de compra nativo en azul ADADP */
body.adadp-complement-product [data-button-action="add-to-cart"] {
  background: #24b7d3 !important;
  border-color: #24b7d3 !important;
  color: #fff !important;
  min-height: 52px !important;
  font-weight: 700 !important;
}

/* Wishlist/corazón nativo */
body.adadp-complement-product .wishlist-button-add,
body.adadp-complement-product .wishlist-button-product {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Listados de productos de categorías de Complementos */
body.adadp-complement-listing .product-miniature,
body.adadp-complement-listing .js-product-miniature {
  position: relative !important;
}

body.adadp-complement-listing .product-miniature .wishlist-button-add,
body.adadp-complement-listing .js-product-miniature .wishlist-button-add {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  z-index: 9 !important;
}

/* Cesta rápida que añadimos solo cuando la tarjeta no trae una nativa */
body.adadp-complement-listing .adadp-complement-cart {
  position: absolute !important;
  right: 14px !important;
  bottom: 14px !important;
  width: 46px !important;
  height: 46px !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: #0B4F8A !important;
  color: #fff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 8 !important;
  box-shadow: 0 5px 14px rgba(11,79,138,.22) !important;
  font-size: 0 !important;
}

body.adadp-complement-listing .adadp-complement-cart::before {
  content: "🛒";
  font-size: 22px;
  line-height: 1;
}

body.adadp-complement-listing .adadp-complement-cart:hover {
  background: #078FD6 !important;
}

body.adadp-complement-listing .product-description {
  padding-bottom: 58px !important;
}


/* =========================================================
   ADADP 7.0 - CESTA RÁPIDA EN TODOS LOS LIBROS DE CATEGORÍAS
   ========================================================= */

/* Tarjeta preparada para botón flotante */
body#category .product-miniature,
body#category .js-product-miniature {
  position: relative !important;
}

/* Botón cesta ADADP */
body#category .adadp-category-cart {
  position: absolute !important;
  right: 14px !important;
  bottom: 14px !important;
  width: 46px !important;
  height: 46px !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: #0B4F8A !important;
  color: #fff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 12 !important;
  box-shadow: 0 5px 14px rgba(11,79,138,.22) !important;
  transition: background .15s ease, transform .15s ease, box-shadow .15s ease !important;
  font-size: 0 !important;
}

body#category .adadp-category-cart::before {
  content: "🛒";
  font-size: 22px !important;
  line-height: 1 !important;
}

body#category .adadp-category-cart:hover {
  background: #078FD6 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 7px 18px rgba(11,79,138,.28) !important;
}

body#category .adadp-category-cart[disabled] {
  opacity: .55 !important;
  cursor: wait !important;
}

/* Un poco de aire para que no tape precio/nombre */
body#category .product-miniature .product-description,
body#category .js-product-miniature .product-description {
  padding-bottom: 60px !important;
}

/* Mantener visible el corazón nativo si ya existe */
body#category .product-miniature .wishlist-button-add,
body#category .js-product-miniature .wishlist-button-add,
body#category .product-miniature .wishlist-button-product,
body#category .js-product-miniature .wishlist-button-product {
  visibility: visible !important;
  opacity: 1 !important;
  z-index: 13 !important;
}

@media (max-width: 767px) {
  body#category .adadp-category-cart {
    width: 42px !important;
    height: 42px !important;
    right: 10px !important;
    bottom: 10px !important;
  }

  body#category .adadp-category-cart::before {
    font-size: 20px !important;
  }
}


/* =========================================================
   ADADP 7.1 - REDISEÑO PÁGINA COMPLEMENTOS
   Aspecto alineado con la página principal de categorías.
   ========================================================= */

body.adadp-complements-category .block-category {
  position: relative !important;
  overflow: hidden !important;
  min-height: 220px !important;
  padding: 36px 48% 34px 38px !important;
  margin-bottom: 28px !important;
  border: 1px solid #d6e4f1 !important;
  border-radius: 16px !important;
  background:
    linear-gradient(90deg, #ffffff 0%, #ffffff 48%, rgba(255,255,255,.88) 58%, rgba(255,255,255,.2) 100%) !important;
  box-shadow: 0 10px 28px rgba(11,79,138,.06) !important;
}

body.adadp-complements-category .block-category::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 48% !important;
  background-image: var(--adadp-complements-hero, none) !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  z-index: 0 !important;
}

body.adadp-complements-category .block-category > * {
  position: relative !important;
  z-index: 2 !important;
}

body.adadp-complements-category .adadp-complements-eyebrow {
  display: block !important;
  margin: 0 0 8px !important;
  color: #6f94bd !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}

body.adadp-complements-category .block-category h1,
body.adadp-complements-category #content-wrapper .block-category h1 {
  margin: 0 0 12px !important;
  color: #0B4F8A !important;
  font-size: 42px !important;
  line-height: 1.05 !important;
  font-weight: 800 !important;
  letter-spacing: -.02em !important;
}

body.adadp-complements-category .adadp-complements-intro,
body.adadp-complements-category #category-description,
body.adadp-complements-category .category-description {
  max-width: 620px !important;
  margin: 0 !important;
  color: #66717d !important;
  font-size: 17px !important;
  line-height: 1.55 !important;
}

/* Ocultar la portada antigua de la categoría */
body.adadp-complements-category .block-category .category-cover,
body.adadp-complements-category .block-category .category-cover img,
body.adadp-complements-category .block-category > img {
  display: none !important;
}

/* Caja de categorías */
body.adadp-complements-category #subcategories {
  padding: 26px 30px 34px !important;
  border: 1px solid #e1eaf3 !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 8px 24px rgba(11,79,138,.035) !important;
}

body.adadp-complements-category #subcategories > h2,
body.adadp-complements-category #subcategories .subcategory-heading {
  position: relative !important;
  margin: 0 0 26px !important;
  padding: 0 0 14px !important;
  color: #0B4F8A !important;
  font-size: 31px !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
}

body.adadp-complements-category #subcategories > h2::after,
body.adadp-complements-category #subcategories .subcategory-heading::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 1px !important;
  background: #dbe7f2 !important;
}

/* Tarjetas de categorías con aspecto de las categorías principales */
body.adadp-complements-category #subcategories ul {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: stretch !important;
  gap: 30px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.adadp-complements-category #subcategories ul li {
  float: none !important;
  width: 310px !important;
  max-width: 310px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #d7e3ef !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  overflow: hidden !important;
  box-shadow: 0 5px 16px rgba(11,79,138,.04) !important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}

body.adadp-complements-category #subcategories ul li:hover {
  transform: translateY(-3px) !important;
  border-color: #bcd3e8 !important;
  box-shadow: 0 10px 24px rgba(11,79,138,.10) !important;
}

body.adadp-complements-category #subcategories .subcategory-image {
  min-height: 245px !important;
  height: 245px !important;
  margin: 0 !important;
  padding: 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  background: #ffffff !important;
}

body.adadp-complements-category #subcategories .subcategory-image a {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.adadp-complements-category #subcategories .subcategory-image img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 210px !important;
  max-height: 210px !important;
  object-fit: contain !important;
  margin: auto !important;
}

body.adadp-complements-category #subcategories .subcategory-name,
body.adadp-complements-category #subcategories a.subcategory-name {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 70px !important;
  padding: 13px 18px 17px !important;
  margin: 0 !important;
  border-top: 1px solid #edf2f7 !important;
  color: #0B4F8A !important;
  font-size: 17px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  text-align: center !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

/* Mantener oculto el aviso de listado vacío */
body.adadp-complements-category .adadp-empty-products-notice {
  display: none !important;
}

/* Ajuste de columna de filtros para que visualmente quede como el resto de categorías */
@media (min-width: 992px) {
  body.adadp-complements-category #left-column {
    flex: 0 0 28% !important;
    max-width: 28% !important;
    width: 28% !important;
  }

  body.adadp-complements-category #content-wrapper {
    flex: 0 0 72% !important;
    max-width: 72% !important;
    width: 72% !important;
  }
}

@media (max-width: 991px) {
  body.adadp-complements-category .block-category {
    min-height: 0 !important;
    padding: 28px !important;
    background: #ffffff !important;
  }

  body.adadp-complements-category .block-category::after {
    display: none !important;
  }

  body.adadp-complements-category .block-category h1,
  body.adadp-complements-category #content-wrapper .block-category h1 {
    font-size: 34px !important;
  }
}

@media (max-width: 767px) {
  body.adadp-complements-category .block-category {
    padding: 22px 20px !important;
    border-radius: 12px !important;
  }

  body.adadp-complements-category .block-category h1,
  body.adadp-complements-category #content-wrapper .block-category h1 {
    font-size: 30px !important;
  }

  body.adadp-complements-category #subcategories {
    padding: 22px 14px 26px !important;
  }

  body.adadp-complements-category #subcategories > h2,
  body.adadp-complements-category #subcategories .subcategory-heading {
    font-size: 25px !important;
  }

  body.adadp-complements-category #subcategories ul li {
    width: 100% !important;
    max-width: 340px !important;
  }
}


/* =========================================================
   ADADP 7.2 - RESTAURAR "FILTRAR POR" EN CATEGORÍAS DE LIBROS
   ========================================================= */

/* Forzar la columna izquierda cuando estamos en el catálogo de libros */
body.adadp-books-filter-restored #left-column {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.adadp-books-filter-restored #search_filters,
body.adadp-books-filter-restored .adadp-books-filter-box {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Caja creada por ADADP cuando PrestaShop no genera filtros en la portada de libros */
body.adadp-books-filter-restored .adadp-books-filter-box {
  padding: 28px 24px 26px !important;
  margin: 0 0 24px !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
}

body.adadp-books-filter-restored .adadp-books-filter-heading {
  margin: 0 0 22px !important;
  color: #1f1f1f !important;
  font-size: 26px !important;
  line-height: 1.1 !important;
  font-weight: 400 !important;
  text-transform: uppercase !important;
}

body.adadp-books-filter-restored .adadp-books-category-facet {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.adadp-books-filter-restored .adadp-books-category-facet .facet-title {
  margin: 0 0 12px !important;
  color: #202020 !important;
  font-size: 14px !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
}

body.adadp-books-filter-restored .adadp-books-category-list {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.adadp-books-filter-restored .adadp-books-category-list li {
  margin: 0 0 9px !important;
  padding: 0 !important;
}

body.adadp-books-filter-restored .adadp-books-category-link {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  color: #202020 !important;
  text-decoration: none !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

body.adadp-books-filter-restored .adadp-books-category-box {
  position: relative !important;
  top: 2px !important;
  flex: 0 0 16px !important;
  width: 16px !important;
  height: 16px !important;
  border: 2px solid #078FD6 !important;
  border-radius: 3px !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
}

body.adadp-books-filter-restored .adadp-books-category-link:hover,
body.adadp-books-filter-restored .adadp-books-category-link:focus {
  color: #078FD6 !important;
}

/* Categoría actual: marcar el cuadrado en azul */
body.adadp-books-filter-restored .adadp-books-category-link.is-current .adadp-books-category-box {
  background: #078FD6 !important;
  box-shadow: inset 0 0 0 3px #ffffff !important;
}

@media (min-width: 992px) {
  body.adadp-books-filter-restored #left-column {
    flex: 0 0 30% !important;
    max-width: 30% !important;
    width: 30% !important;
  }

  body.adadp-books-filter-restored #content-wrapper {
    flex: 0 0 70% !important;
    max-width: 70% !important;
    width: 70% !important;
  }
}


/* =========================================================
   ADADP 7.3 - MOSTRAR TÍTULO "FILTRAR POR"
   ========================================================= */
body.adadp-books-filter-restored .adadp-filter-title-restored {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  margin: 0 0 22px !important;
  padding: 0 !important;
  color: #1f1f1f !important;
  font-size: 26px !important;
  line-height: 1.1 !important;
  font-weight: 400 !important;
  text-transform: uppercase !important;
}

/* Si el tema ya trae un título parecido pero lo oculta, volverlo visible */
body.adadp-books-filter-restored #left-column .block-title,
body.adadp-books-filter-restored #left-column .facet-title-main {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}


/* =========================================================
   ADADP 7.4 - COLOR AZUL EN TÍTULOS DE CATEGORÍAS
   ========================================================= */
body#category.adadp-books-category .block-category h1,
body#category.adadp-books-category .block-category .h1 {
  color: #0B4F8A !important;
}

body#category .adadp-wingest-categories > h2 {
  color: #0B4F8A !important;
}

body.adadp-books-filter-restored .adadp-filter-title-restored,
body.adadp-books-filter-restored #left-column .block-title,
body.adadp-books-filter-restored #left-column .facet-title-main {
  color: #0B4F8A !important;
}


/* =========================================================
   ADADP 9.0 - FILTRAR POR LIBROS IGUAL VISUALMENTE A COMPLEMENTOS
   ========================================================= */

body.adadp-books-filter-v90 #left-column {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.adadp-books-filter-v90 .adadp-books-filter-shell {
  background: #ffffff !important;
  padding: 28px 24px 26px !important;
  margin: 0 0 24px !important;
  box-sizing: border-box !important;
}

body.adadp-books-filter-v90 .adadp-books-filter-main-title {
  display: block !important;
  margin: 0 0 22px !important;
  padding: 0 !important;
  color: #0B4F8A !important;
  font-size: 26px !important;
  line-height: 1.1 !important;
  font-weight: 400 !important;
  text-transform: uppercase !important;
}

body.adadp-books-filter-v90 .adadp-books-category-navigation {
  display: block !important;
  margin: 18px 0 0 !important;
  padding: 0 !important;
}

body.adadp-books-filter-v90 .adadp-books-category-navigation .facet-title {
  margin: 0 0 12px !important;
  color: #202020 !important;
  font-size: 14px !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
}

body.adadp-books-filter-v90 .adadp-books-navigation-list {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.adadp-books-filter-v90 .adadp-books-navigation-list li {
  margin: 0 0 9px !important;
  padding: 0 !important;
}

body.adadp-books-filter-v90 .adadp-books-navigation-link {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  color: #202020 !important;
  text-decoration: none !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  cursor: pointer !important;
}

body.adadp-books-filter-v90 .adadp-books-navigation-link:hover,
body.adadp-books-filter-v90 .adadp-books-navigation-link:focus {
  color: #078FD6 !important;
  text-decoration: none !important;
}

body.adadp-books-filter-v90 .adadp-books-navigation-box {
  position: relative !important;
  top: 2px !important;
  flex: 0 0 16px !important;
  width: 16px !important;
  height: 16px !important;
  border: 2px solid #078FD6 !important;
  border-radius: 3px !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
}

body.adadp-books-filter-v90 .adadp-books-navigation-link.is-current
  .adadp-books-navigation-box {
  background: #078FD6 !important;
  box-shadow: inset 0 0 0 3px #ffffff !important;
}

body.adadp-books-filter-v90 .adadp-books-navigation-link.is-current
  .adadp-books-navigation-text {
  color: #078FD6 !important;
  font-weight: 600 !important;
}

@media (min-width: 992px) {
  body.adadp-books-filter-v90 #left-column {
    flex: 0 0 30% !important;
    max-width: 30% !important;
    width: 30% !important;
  }

  body.adadp-books-filter-v90 #content-wrapper {
    flex: 0 0 70% !important;
    max-width: 70% !important;
    width: 70% !important;
  }
}


/* =========================================================
   ADADP 9.1 - DISPONIBILIDAD GLOBAL EN LIBROS
   El número es la suma de artículos de todas las categorías.
   ========================================================= */

body.adadp-books-filter-v90 .adadp-books-availability {
  display: block !important;
  margin: 0 0 22px !important;
  padding: 0 !important;
}

body.adadp-books-filter-v90 .adadp-books-availability .facet-title {
  margin: 0 0 12px !important;
  color: #202020 !important;
  font-size: 14px !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
}

body.adadp-books-filter-v90 .adadp-books-availability-row {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  color: #202020 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

body.adadp-books-filter-v90 .adadp-books-availability-box {
  position: relative !important;
  top: 2px !important;
  flex: 0 0 16px !important;
  width: 16px !important;
  height: 16px !important;
  border: 2px solid #078FD6 !important;
  border-radius: 3px !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
}

body.adadp-books-filter-v90 .adadp-books-availability-text {
  color: #202020 !important;
}


/* =========================================================
   ADADP 9.3 - TARJETAS DE LIBROS MÁS UNIFORMES Y PROFESIONALES
   Solo afecta a listados de productos en páginas de categoría.
   No toca filtros, categorías, Wingest ni funcionamiento del carrito.
   ========================================================= */

body#category #products .products,
body#category .featured-products .products,
body#category .product-list .products {
  align-items: stretch !important;
}

body#category .product-miniature,
body#category .js-product-miniature {
  height: 100% !important;
  margin-bottom: 24px !important;
}

body#category .product-miniature .thumbnail-container,
body#category .js-product-miniature .thumbnail-container {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  min-height: 500px !important;
  margin: 0 !important;
  overflow: hidden !important;
  border: 1px solid #dbe6ef !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  box-shadow: 0 5px 18px rgba(11,79,138,.055) !important;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease !important;
}

body#category .product-miniature .thumbnail-container:hover,
body#category .js-product-miniature .thumbnail-container:hover {
  transform: translateY(-3px) !important;
  border-color: #c7dbea !important;
  box-shadow: 0 10px 24px rgba(11,79,138,.11) !important;
}

/* Zona de imagen: misma altura para todas las portadas */
body#category .product-miniature .product-thumbnail,
body#category .js-product-miniature .product-thumbnail {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 300px !important;
  min-height: 300px !important;
  padding: 20px 18px 14px !important;
  overflow: hidden !important;
  background: #ffffff !important;
}

body#category .product-miniature .product-thumbnail img,
body#category .js-product-miniature .product-thumbnail img {
  position: static !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 262px !important;
  margin: auto !important;
  object-fit: contain !important;
  transform: none !important;
}

/* Zona inferior uniforme */
body#category .product-miniature .product-description,
body#category .js-product-miniature .product-description {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  width: 100% !important;
  min-height: 182px !important;
  padding: 15px 18px 66px !important;
  border-top: 1px solid #edf2f6 !important;
  background: #ffffff !important;
  text-align: center !important;
}

/* Títulos: máximo 3 líneas para que no descuadren la cuadrícula */
body#category .product-miniature .product-title,
body#category .js-product-miniature .product-title {
  min-height: 61px !important;
  margin: 0 0 9px !important;
  padding: 0 !important;
  text-align: center !important;
}

body#category .product-miniature .product-title a,
body#category .js-product-miniature .product-title a {
  display: -webkit-box !important;
  overflow: hidden !important;
  color: #0B4F8A !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 3 !important;
}

body#category .product-miniature .product-title a:hover,
body#category .js-product-miniature .product-title a:hover {
  color: #078FD6 !important;
}

/* Precio siempre alineado abajo */
body#category .product-miniature .product-price-and-shipping,
body#category .js-product-miniature .product-price-and-shipping {
  margin-top: auto !important;
  padding-top: 2px !important;
  min-height: 30px !important;
  text-align: center !important;
}

body#category .product-miniature .price,
body#category .js-product-miniature .price {
  color: #202020 !important;
  font-size: 18px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
}

/* Etiquetas discretas y ordenadas */
body#category .product-miniature .product-flags,
body#category .js-product-miniature .product-flags {
  top: 10px !important;
  left: 10px !important;
  z-index: 4 !important;
}

body#category .product-miniature .product-flag,
body#category .js-product-miniature .product-flag {
  border-radius: 6px !important;
  box-shadow: none !important;
}

/* Corazón en la esquina superior derecha */
body#category .product-miniature .wishlist-button-add,
body#category .js-product-miniature .wishlist-button-add,
body#category .product-miniature .wishlist-button-product,
body#category .js-product-miniature .wishlist-button-product {
  position: absolute !important;
  top: 10px !important;
  right: 10px !important;
  z-index: 15 !important;
  margin: 0 !important;
}

/* Carrito: misma posición y tamaño en todas las tarjetas */
body#category .adadp-category-cart {
  position: absolute !important;
  right: 14px !important;
  bottom: 14px !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  box-shadow: 0 4px 12px rgba(11,79,138,.2) !important;
}

body#category .adadp-category-cart:hover {
  transform: translateY(-2px) scale(1.03) !important;
}

/* Quitar movimientos internos del tema que pueden desalinear tarjetas */
body#category .product-miniature .highlighted-informations,
body#category .js-product-miniature .highlighted-informations {
  position: static !important;
  min-height: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
}

/* Tablet */
@media (max-width: 991px) {
  body#category .product-miniature .thumbnail-container,
  body#category .js-product-miniature .thumbnail-container {
    min-height: 470px !important;
  }

  body#category .product-miniature .product-thumbnail,
  body#category .js-product-miniature .product-thumbnail {
    height: 275px !important;
    min-height: 275px !important;
  }

  body#category .product-miniature .product-thumbnail img,
  body#category .js-product-miniature .product-thumbnail img {
    max-height: 238px !important;
  }
}

/* Móvil */
@media (max-width: 575px) {
  body#category .product-miniature .thumbnail-container,
  body#category .js-product-miniature .thumbnail-container {
    min-height: 0 !important;
    border-radius: 12px !important;
  }

  body#category .product-miniature .product-thumbnail,
  body#category .js-product-miniature .product-thumbnail {
    height: 260px !important;
    min-height: 260px !important;
    padding: 16px !important;
  }

  body#category .product-miniature .product-thumbnail img,
  body#category .js-product-miniature .product-thumbnail img {
    max-height: 225px !important;
  }

  body#category .product-miniature .product-description,
  body#category .js-product-miniature .product-description {
    min-height: 170px !important;
    padding: 14px 15px 62px !important;
  }

  body#category .product-miniature .product-title,
  body#category .js-product-miniature .product-title {
    min-height: 58px !important;
  }

  body#category .product-miniature .product-title a,
  body#category .js-product-miniature .product-title a {
    font-size: 14px !important;
  }
}


/* ADADP 9.4 - productos sin foto ocultos del bloque de Novedades */
[data-adadp-no-image-hidden="1"] {
  display: none !important;
}


/* =========================================================
   ADADP 9.5 - PORTADA EDITORIAL + CATEGORÍAS HTML
   ========================================================= */

/* Recorta únicamente la antigua tira inferior de categorías
   que estaba integrada dentro de la imagen. La parte superior
   del banner no se redibuja ni se modifica. */
body#index .adadp-home-large-banner-wrap-1.adadp-home-editorial-crop {
  position: relative !important;
  height: var(--adadp-editorial-crop-height, auto) !important;
  min-height: 0 !important;
  overflow: hidden !important;
  margin-bottom: 0 !important;
  border-radius: 14px !important;
}

/* Ligero zoom para que el marco azul exterior se vea más fino. */
body#index .adadp-home-large-banner-wrap-1.adadp-home-editorial-crop
  .adadp-home-large-banner-1 {
  width: calc(100% + 8px) !important;
  max-width: none !important;
  margin-left: -4px !important;
  margin-top: -3px !important;
}

/* Bloque independiente y realmente clicable. */
body#index .adadp-home-editorial-categories {
  width: 100% !important;
  margin: 10px 0 26px !important;
  padding: 22px 20px 20px !important;
  border: 1px solid #dce8f3 !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 7px 22px rgba(11,79,138,.06) !important;
  box-sizing: border-box !important;
}

body#index .adadp-home-editorial-categories h2 {
  margin: 0 0 17px !important;
  color: #0B4F8A !important;
  font-size: 26px !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
  text-align: left !important;
}

body#index .adadp-home-editorial-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

body#index .adadp-home-editorial-card {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 0 !important;
  min-height: 116px !important;
  padding: 15px 10px 13px !important;
  border: 0 !important;
  border-radius: 14px !important;
  color: #ffffff !important;
  text-align: center !important;
  text-decoration: none !important;
  box-shadow: 0 5px 13px rgba(20,45,70,.12) !important;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease !important;
}

body#index .adadp-home-editorial-card:hover,
body#index .adadp-home-editorial-card:focus {
  transform: translateY(-3px) !important;
  filter: brightness(1.035) !important;
  box-shadow: 0 9px 18px rgba(20,45,70,.18) !important;
  color: #ffffff !important;
  outline: none !important;
}

body#index .adadp-home-editorial-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 41px !important;
  height: 41px !important;
  margin: 0 0 8px !important;
}

body#index .adadp-home-editorial-icon svg {
  display: block !important;
  width: 39px !important;
  height: 39px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2.4 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

body#index .adadp-home-editorial-icon svg path[fill],
body#index .adadp-home-editorial-icon svg circle[fill] {
  fill: currentColor !important;
}

body#index .adadp-home-editorial-name {
  display: block !important;
  color: #ffffff !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
}

/* Tonos inspirados en las tarjetas del banner original */
body#index .adadp-home-editorial-blue { background: linear-gradient(145deg,#0879dc,#0753b8) !important; }
body#index .adadp-home-editorial-red { background: linear-gradient(145deg,#e42a33,#bb1928) !important; }
body#index .adadp-home-editorial-gold { background: linear-gradient(145deg,#ffc21a,#eca800) !important; }
body#index .adadp-home-editorial-burgundy { background: linear-gradient(145deg,#c6233a,#9f142a) !important; }
body#index .adadp-home-editorial-cyan { background: linear-gradient(145deg,#10a9c7,#0789aa) !important; }
body#index .adadp-home-editorial-green { background: linear-gradient(145deg,#2f9956,#1d713e) !important; }
body#index .adadp-home-editorial-violet { background: linear-gradient(145deg,#7146cf,#4c28ad) !important; }
body#index .adadp-home-editorial-royal { background: linear-gradient(145deg,#1676d4,#0754af) !important; }
body#index .adadp-home-editorial-slate { background: linear-gradient(145deg,#6687a5,#496780) !important; }
body#index .adadp-home-editorial-forest { background: linear-gradient(145deg,#36945a,#267343) !important; }

@media (max-width: 1199px) {
  body#index .adadp-home-editorial-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 991px) {
  body#index .adadp-home-editorial-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  body#index .adadp-home-editorial-categories {
    margin-top: 8px !important;
    padding: 17px 12px 14px !important;
    border-radius: 12px !important;
  }

  body#index .adadp-home-editorial-categories h2 {
    margin-bottom: 13px !important;
    font-size: 21px !important;
  }

  body#index .adadp-home-editorial-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 9px !important;
  }

  body#index .adadp-home-editorial-card {
    min-height: 96px !important;
    padding: 12px 8px 10px !important;
    border-radius: 11px !important;
  }

  body#index .adadp-home-editorial-icon {
    width: 32px !important;
    height: 32px !important;
    margin-bottom: 6px !important;
  }

  body#index .adadp-home-editorial-icon svg {
    width: 31px !important;
    height: 31px !important;
  }

  body#index .adadp-home-editorial-name {
    font-size: 13px !important;
  }
}


/* =========================================================
   ADADP 9.6 - CATEGORÍAS DE PORTADA CON EL MISMO ESTILO
   QUE LAS TARJETAS ACTUALES DE TIENDA ONLINE
   ========================================================= */

/* Neutralizamos los degradados/colores de v9.5 únicamente
   en las nuevas tarjetas v9.6. */
body#index .adadp-home-editorial-categories-v96 {
  padding: 24px 26px 28px !important;
  background: #ffffff !important;
}

body#index .adadp-home-category-grid-v96 {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

body#index .adadp-home-category-card-v96 {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-width: 0 !important;
  min-height: 245px !important;
  padding: 20px 14px 14px !important;
  border: 1px solid #e2ebf3 !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  color: #0B4F8A !important;
  text-align: center !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  box-shadow: 0 2px 8px rgba(11,79,138,.03) !important;
  transition:
    transform .18s ease,
    border-color .18s ease,
    box-shadow .18s ease,
    color .18s ease !important;
}

body#index .adadp-home-category-card-v96:hover,
body#index .adadp-home-category-card-v96:focus {
  transform: translateY(-3px) !important;
  border-color: #bcdcf2 !important;
  box-shadow: 0 8px 20px rgba(11,79,138,.11) !important;
  color: #078FD6 !important;
  outline: none !important;
}

body#index .adadp-home-category-image-v96 {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 165px !important;
  margin-bottom: 11px !important;
}

body#index .adadp-home-category-image-v96 img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 165px !important;
  max-height: 165px !important;
  object-fit: contain !important;
  transition: transform .18s ease !important;
}

body#index .adadp-home-category-card-v96:hover
  .adadp-home-category-image-v96 img {
  transform: scale(1.025) !important;
}

body#index .adadp-home-category-name-v96 {
  width: 100% !important;
  color: inherit !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}

/* Tablet grande */
@media (max-width: 1199px) {
  body#index .adadp-home-category-grid-v96 {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

/* Tablet */
@media (max-width: 991px) {
  body#index .adadp-home-category-grid-v96 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }

  body#index .adadp-home-category-card-v96 {
    min-height: 225px !important;
  }

  body#index .adadp-home-category-image-v96 {
    min-height: 145px !important;
  }

  body#index .adadp-home-category-image-v96 img {
    max-width: 145px !important;
    max-height: 145px !important;
  }
}

/* Móvil: 2 columnas */
@media (max-width: 767px) {
  body#index .adadp-home-editorial-categories-v96 {
    padding: 18px 12px 16px !important;
  }

  body#index .adadp-home-category-grid-v96 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  body#index .adadp-home-category-card-v96 {
    min-height: 185px !important;
    padding: 13px 8px 11px !important;
    border-radius: 10px !important;
  }

  body#index .adadp-home-category-image-v96 {
    min-height: 120px !important;
    margin-bottom: 8px !important;
  }

  body#index .adadp-home-category-image-v96 img {
    max-width: 118px !important;
    max-height: 118px !important;
  }

  body#index .adadp-home-category-name-v96 {
    font-size: 13px !important;
  }
}


/* =========================================================
   ADADP 9.7 - COLOR DEL TEXTO ESCRITO EN EL BUSCADOR
   ========================================================= */

/* Texto que escribe el usuario */
#search_widget input[type="text"],
.search-widget input[type="text"],
.search-widget input[type="search"],
.ui-autocomplete-input,
input[name="s"] {
  color: #0B4F8A !important;
  caret-color: #0B4F8A !important;
  font-weight: 500 !important;
  opacity: 1 !important;
  -webkit-text-fill-color: #0B4F8A !important;
}

/* Placeholder: se mantiene más suave para distinguirlo del texto escrito */
#search_widget input[type="text"]::placeholder,
.search-widget input[type="text"]::placeholder,
.search-widget input[type="search"]::placeholder,
.ui-autocomplete-input::placeholder,
input[name="s"]::placeholder {
  color: #8A96A3 !important;
  opacity: 1 !important;
  -webkit-text-fill-color: #8A96A3 !important;
}

/* Compatibilidad navegadores */
#search_widget input[type="text"]::-webkit-input-placeholder,
.search-widget input[type="text"]::-webkit-input-placeholder,
.search-widget input[type="search"]::-webkit-input-placeholder,
.ui-autocomplete-input::-webkit-input-placeholder,
input[name="s"]::-webkit-input-placeholder {
  color: #8A96A3 !important;
}

#search_widget input[type="text"]::-moz-placeholder,
.search-widget input[type="text"]::-moz-placeholder,
.search-widget input[type="search"]::-moz-placeholder,
.ui-autocomplete-input::-moz-placeholder,
input[name="s"]::-moz-placeholder {
  color: #8A96A3 !important;
  opacity: 1 !important;
}


/* =========================================================
   ADADP 9.9 - SLIDER PRINCIPAL MÁS ANCHO
   ========================================================= */

body#index .adadp-main-slider-wide-v99 {
  width: min(96vw, 1600px) !important;
  max-width: min(96vw, 1600px) !important;
  margin-left: 50% !important;
  margin-right: 0 !important;
  transform: translateX(-50%) !important;
  box-sizing: border-box !important;
}

/* No modificar la proporción de los banners del slider */
body#index .adadp-main-slider-wide-v99 img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

/* Ocultar solo el banner principal anterior, no el slider */
body#index .adadp-old-main-banner-hidden-v99 {
  display: none !important;
}

/* Mensaje institucional entre slider y categorías */
body#index .adadp-editorial-message-v99 {
  width: min(96vw, 1480px) !important;
  max-width: min(96vw, 1480px) !important;
  margin: 18px auto 16px !important;
  padding: 18px 24px 16px !important;
  text-align: center !important;
  background: #ffffff !important;
  border-radius: 12px !important;
  box-sizing: border-box !important;
}

body#index .adadp-editorial-message-v99 h2 {
  margin: 0 0 6px !important;
  color: #0B4F8A !important;
  font-size: 27px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
}

body#index .adadp-editorial-message-v99 p {
  max-width: 900px !important;
  margin: 0 auto !important;
  color: #3f4a54 !important;
  font-size: 17px !important;
  line-height: 1.55 !important;
}

body#index .adadp-editorial-message-line-v99 {
  display: block !important;
  width: 64px !important;
  height: 3px !important;
  margin: 12px auto 0 !important;
  border-radius: 999px !important;
  background: #d6a029 !important;
}

@media (max-width: 767px) {
  body#index .adadp-main-slider-wide-v99 {
    width: 100vw !important;
    max-width: 100vw !important;
  }

  body#index .adadp-editorial-message-v99 {
    width: calc(100% - 20px) !important;
    padding: 15px 14px 13px !important;
    margin-top: 12px !important;
  }

  body#index .adadp-editorial-message-v99 h2 {
    font-size: 21px !important;
  }

  body#index .adadp-editorial-message-v99 p {
    font-size: 14px !important;
  }
}


/* =========================================================
   ADADP 10.0 - ORDEN DE PORTADA
   MENSAJE -> VER CATÁLOGO -> SLIDER -> CATEGORÍAS
   ========================================================= */

/* El mensaje nuevo sustituye al antiguo texto de portada */
body#index #custom-text.adadp-old-home-text-hidden-v100 {
  display: none !important;
}

/* Más compacto al ir arriba del todo */
body#index .adadp-editorial-message-v99 {
  margin: 14px auto 10px !important;
  padding: 14px 22px 12px !important;
}

body#index .adadp-editorial-message-v99 h2 {
  margin-bottom: 4px !important;
  font-size: 28px !important;
}

body#index .adadp-editorial-message-v99 p {
  font-size: 16px !important;
}

body#index .adadp-editorial-message-line-v99 {
  margin-top: 9px !important;
}

/* El botón queda justo después del mensaje y antes del slider */
body#index .adadp-home-cta {
  margin: 2px 0 18px !important;
}

@media (max-width: 767px) {
  body#index .adadp-editorial-message-v99 {
    margin: 10px auto 8px !important;
    padding: 12px 12px 10px !important;
  }

  body#index .adadp-editorial-message-v99 h2 {
    font-size: 21px !important;
  }

  body#index .adadp-editorial-message-v99 p {
    font-size: 14px !important;
    line-height: 1.45 !important;
  }

  body#index .adadp-home-cta {
    margin: 0 0 14px !important;
  }
}


/* =========================================================
   ADADP 10.1 - CORRECCIÓN DEL ANCHO DEL SLIDER
   Mantiene el slider grande, pero sin desbordamiento horizontal.
   No toca autoplay, flechas, tiempos, orden ni altura.
   ========================================================= */

body#index {
  overflow-x: hidden !important;
}

body#index .adadp-main-slider-wide-v99 {
  width: calc(100% - 20px) !important;
  max-width: 1600px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  transform: none !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

/* Asegura que la imagen completa entre dentro del slider */
body#index .adadp-main-slider-wide-v99 img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

/* Evitar que elementos internos del carrusel generen ancho extra */
body#index .adadp-main-slider-wide-v99 .carousel-inner,
body#index .adadp-main-slider-wide-v99 .carousel-item,
body#index .adadp-main-slider-wide-v99 .homeslider-container,
body#index .adadp-main-slider-wide-v99 .homeslider-wrapper,
body#index .adadp-main-slider-wide-v99 ul,
body#index .adadp-main-slider-wide-v99 li {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

@media (max-width: 767px) {
  body#index .adadp-main-slider-wide-v99 {
    width: calc(100% - 10px) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    transform: none !important;
  }
}


/* =========================================================
   ADADP 10.2 - ICONO EDITORIAL + SLIDER UN POCO MÁS COMPACTO
   ========================================================= */

/* Icono azul/dorado visualmente integrado en el bloque superior */
body#index .adadp-editorial-icon-v102 {
  width: 58px !important;
  height: 46px !important;
  margin: 0 auto 5px !important;
  color: #0B4F8A !important;
}

body#index .adadp-editorial-icon-v102 svg {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}

/* Punto solar dorado sobre el libro */
body#index .adadp-editorial-icon-v102::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
}

/* Reducir proporcionalmente los 3 banners del slider.
   No se toca el propio contenido ni la configuración del carrusel. */
body#index .adadp-main-slider-wide-v99 {
  width: min(92%, 1450px) !important;
  max-width: min(92%, 1450px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  transform: none !important;
}

/* Al reducir el ancho, la altura baja proporcionalmente */
body#index .adadp-main-slider-wide-v99 img {
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

@media (max-width: 991px) {
  body#index .adadp-main-slider-wide-v99 {
    width: 95% !important;
    max-width: 95% !important;
  }
}

@media (max-width: 767px) {
  body#index .adadp-editorial-icon-v102 {
    width: 48px !important;
    height: 38px !important;
    margin-bottom: 4px !important;
  }

  body#index .adadp-main-slider-wide-v99 {
    width: calc(100% - 10px) !important;
    max-width: calc(100% - 10px) !important;
  }
}


/* =========================================================
   ADADP 10.3 - ICONO REAL + SLIDER MÁS CORTO
   ========================================================= */

/* Sustituimos el icono SVG por la imagen que has elegido */
body#index .adadp-editorial-icon-v103 {
  width: 92px !important;
  margin: 0 auto 10px !important;
  line-height: 0 !important;
}

body#index .adadp-editorial-icon-v103 img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 auto !important;
}

/* Ajuste adicional: el slider queda menos largo en horizontal */
body#index .adadp-main-slider-wide-v99 {
  width: min(86%, 1320px) !important;
  max-width: min(86%, 1320px) !important;
}

@media (max-width: 1199px) {
  body#index .adadp-main-slider-wide-v99 {
    width: min(92%, 1180px) !important;
    max-width: min(92%, 1180px) !important;
  }
}

@media (max-width: 991px) {
  body#index .adadp-editorial-icon-v103 {
    width: 78px !important;
    margin-bottom: 8px !important;
  }

  body#index .adadp-main-slider-wide-v99 {
    width: 95% !important;
    max-width: 95% !important;
  }
}

@media (max-width: 767px) {
  body#index .adadp-editorial-icon-v103 {
    width: 70px !important;
    margin-bottom: 6px !important;
  }

  body#index .adadp-main-slider-wide-v99 {
    width: calc(100% - 16px) !important;
    max-width: calc(100% - 16px) !important;
  }
}


/* =========================================================
   ADADP 10.4 - MISMO ANCHO: BLOQUE EDITORIAL Y SLIDER
   ========================================================= */

/* Escritorio: exactamente el mismo ancho que el slider */
body#index .adadp-editorial-message-v99 {
  width: min(86%, 1320px) !important;
  max-width: min(86%, 1320px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* Tablet grande: mismo comportamiento que el slider */
@media (max-width: 1199px) {
  body#index .adadp-editorial-message-v99 {
    width: min(92%, 1180px) !important;
    max-width: min(92%, 1180px) !important;
  }
}

/* Tablet */
@media (max-width: 991px) {
  body#index .adadp-editorial-message-v99 {
    width: 95% !important;
    max-width: 95% !important;
  }
}

/* Móvil */
@media (max-width: 767px) {
  body#index .adadp-editorial-message-v99 {
    width: calc(100% - 16px) !important;
    max-width: calc(100% - 16px) !important;
  }
}


/* =========================================================
   ADADP 10.14 - Botón VOLVER AL CARRITO en datos personales
   ========================================================= */
body#checkout #checkout-personal-information-step .adadp-checkout-action-row {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
}

body#checkout #checkout-personal-information-step .adadp-back-cart-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  min-height: 48px !important;
  padding: 0 22px !important;
  border: 2px solid #0b57a4 !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  color: #0b57a4 !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  box-shadow: 0 8px 18px rgba(11, 87, 164, 0.08) !important;
  transition: all 0.18s ease !important;
  cursor: pointer !important;
}

body#checkout #checkout-personal-information-step .adadp-back-cart-btn::before {
  content: "←";
  font-size: 18px;
  line-height: 1;
}

body#checkout #checkout-personal-information-step .adadp-back-cart-btn:hover,
body#checkout #checkout-personal-information-step .adadp-back-cart-btn:focus {
  background: #0b57a4 !important;
  color: #ffffff !important;
  text-decoration: none !important;
  outline: none !important;
}

@media (max-width: 767px) {
  body#checkout #checkout-personal-information-step .adadp-checkout-action-row {
    align-items: stretch !important;
  }

  body#checkout #checkout-personal-information-step .adadp-checkout-action-row > .adadp-back-cart-btn,
  body#checkout #checkout-personal-information-step .adadp-checkout-action-row > .btn,
  body#checkout #checkout-personal-information-step .adadp-checkout-action-row > button,
  body#checkout #checkout-personal-information-step .adadp-checkout-action-row > input[type="submit"] {
    width: 100% !important;
  }
}


/* =========================================================
   ADADP 10.15 - Checkout: botones Volver / Continuar refinados
   ========================================================= */

body#checkout #checkout-personal-information-step .adadp-checkout-action-row {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
}

/* Base común */
body#checkout #checkout-personal-information-step .adadp-checkout-action-row > .adadp-back-cart-btn,
body#checkout #checkout-personal-information-step .adadp-checkout-action-row > .btn,
body#checkout #checkout-personal-information-step .adadp-checkout-action-row > button,
body#checkout #checkout-personal-information-step .adadp-checkout-action-row > input[type="submit"] {
  min-height: 52px !important;
  height: 52px !important;
  padding: 0 26px !important;
  border-radius: 10px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  box-sizing: border-box !important;
  transition: all .18s ease !important;
}

/* VOLVER AL CARRITO: secundario */
body#checkout #checkout-personal-information-step .adadp-back-cart-btn {
  background: #FFFFFF !important;
  color: #0B4F8A !important;
  border: 1.5px solid #0B4F8A !important;
  box-shadow: 0 3px 10px rgba(11,79,138,.08) !important;
}

body#checkout #checkout-personal-information-step .adadp-back-cart-btn:hover,
body#checkout #checkout-personal-information-step .adadp-back-cart-btn:focus {
  background: #F1F7FC !important;
  color: #0B4F8A !important;
  border-color: #078FD6 !important;
  box-shadow: 0 5px 14px rgba(11,79,138,.12) !important;
  transform: translateY(-1px) !important;
}

/* CONTINUAR: acción principal */
body#checkout #checkout-personal-information-step .adadp-checkout-action-row > .btn-primary,
body#checkout #checkout-personal-information-step .adadp-checkout-action-row > button[type="submit"],
body#checkout #checkout-personal-information-step .adadp-checkout-action-row > input[type="submit"] {
  background: #0B4F8A !important;
  color: #FFFFFF !important;
  border: 1.5px solid #0B4F8A !important;
  box-shadow: 0 5px 14px rgba(11,79,138,.22) !important;
  min-width: 190px !important;
}

body#checkout #checkout-personal-information-step .adadp-checkout-action-row > .btn-primary:hover,
body#checkout #checkout-personal-information-step .adadp-checkout-action-row > button[type="submit"]:hover,
body#checkout #checkout-personal-information-step .adadp-checkout-action-row > input[type="submit"]:hover {
  background: #078FD6 !important;
  border-color: #078FD6 !important;
  color: #FFFFFF !important;
  box-shadow: 0 6px 16px rgba(7,143,214,.26) !important;
  transform: translateY(-1px) !important;
}

/* Flecha visual al avanzar */
body#checkout #checkout-personal-information-step .adadp-checkout-action-row > .btn-primary::after,
body#checkout #checkout-personal-information-step .adadp-checkout-action-row > button[type="submit"]::after {
  content: "→";
  margin-left: 8px;
  font-size: 18px;
  line-height: 1;
}

/* Mantener la flecha de volver proporcionada por la versión anterior */
body#checkout #checkout-personal-information-step .adadp-back-cart-btn::before {
  content: "←";
  margin-right: 8px;
  font-size: 18px;
  line-height: 1;
}

@media (max-width: 767px) {
  body#checkout #checkout-personal-information-step .adadp-checkout-action-row {
    gap: 10px !important;
    align-items: stretch !important;
  }

  body#checkout #checkout-personal-information-step .adadp-checkout-action-row > .adadp-back-cart-btn,
  body#checkout #checkout-personal-information-step .adadp-checkout-action-row > .btn,
  body#checkout #checkout-personal-information-step .adadp-checkout-action-row > button,
  body#checkout #checkout-personal-information-step .adadp-checkout-action-row > input[type="submit"] {
    width: 100% !important;
    min-width: 100% !important;
  }
}


/* =========================================================
   ADADP 10.16 - Checkout unificado
   ========================================================= */

/* Todos los botones principales CONTINUAR del checkout */
body#checkout .checkout-step .continue,
body#checkout .checkout-step button[name="confirm-addresses"],
body#checkout .checkout-step button[name="confirmDeliveryOption"],
body#checkout .checkout-step button[type="submit"].btn-primary,
body#checkout .checkout-step input[type="submit"].btn-primary,
body#checkout .checkout-step .btn-primary.continue,
body#checkout .checkout-step .form-footer .btn-primary {
  min-height: 52px !important;
  height: 52px !important;
  padding: 0 28px !important;
  border-radius: 10px !important;
  border: 1.5px solid #0B4F8A !important;
  background: #0B4F8A !important;
  color: #FFFFFF !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  box-shadow: 0 5px 14px rgba(11,79,138,.22) !important;
  transition: all .18s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
}

body#checkout .checkout-step .continue:hover,
body#checkout .checkout-step button[name="confirm-addresses"]:hover,
body#checkout .checkout-step button[name="confirmDeliveryOption"]:hover,
body#checkout .checkout-step button[type="submit"].btn-primary:hover,
body#checkout .checkout-step input[type="submit"].btn-primary:hover,
body#checkout .checkout-step .btn-primary.continue:hover,
body#checkout .checkout-step .form-footer .btn-primary:hover {
  background: #078FD6 !important;
  border-color: #078FD6 !important;
  color: #FFFFFF !important;
  box-shadow: 0 6px 16px rgba(7,143,214,.26) !important;
  transform: translateY(-1px) !important;
}

/* Enlaces secundarios del checkout */
body#checkout .checkout-step .adadp-billing-different-v116 {
  color: #0B4F8A !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

body#checkout .checkout-step .adadp-billing-different-v116:hover {
  color: #078FD6 !important;
  text-decoration: underline !important;
}

@media (max-width: 767px) {
  body#checkout .checkout-step .continue,
  body#checkout .checkout-step button[name="confirm-addresses"],
  body#checkout .checkout-step button[name="confirmDeliveryOption"],
  body#checkout .checkout-step button[type="submit"].btn-primary,
  body#checkout .checkout-step input[type="submit"].btn-primary,
  body#checkout .checkout-step .btn-primary.continue,
  body#checkout .checkout-step .form-footer .btn-primary {
    width: 100% !important;
    min-width: 100% !important;
  }
}


/* =========================================================
   ADADP 10.17 - Checkout colors
   ========================================================= */

/* Enlaces "modificar" en el checkout */
body#checkout .checkout-step.-complete .step-edit,
body#checkout .checkout-step.-complete .step-edit *,
body#checkout .checkout-step .step-edit,
body#checkout .checkout-step .step-edit *,
body#checkout .checkout-step a[href*="edit"],
body#checkout .checkout-step a[href*="modify"] {
  color: #0B4F8A !important;
}

body#checkout .checkout-step.-complete .step-edit:hover,
body#checkout .checkout-step.-complete .step-edit:hover *,
body#checkout .checkout-step .step-edit:hover,
body#checkout .checkout-step .step-edit:hover *,
body#checkout .checkout-step a[href*="edit"]:hover,
body#checkout .checkout-step a[href*="modify"]:hover {
  color: #078FD6 !important;
}

/* Contador / texto de artículos del carrito en la columna derecha */
body#checkout #js-checkout-summary .cart-summary-products,
body#checkout #js-checkout-summary .cart-summary-products *,
body#checkout #js-checkout-summary .cart-products-count,
body#checkout #js-checkout-summary .cart-products-count *,
body#checkout #js-checkout-summary .summary-label,
body#checkout #js-checkout-summary .label,
body#checkout #js-checkout-summary .card-block .text-muted,
body#checkout #js-checkout-summary .block-promo .promo-name {
  color: #0B4F8A !important;
}


/* =========================================================
   ADADP 10.19 - Limpiar pie de página durante el checkout
   ========================================================= */

/* Ocultar el copyright "Software Ecommerce desarrollado por PrestaShop"
   y el enlace "Términos y condiciones de uso" solamente en el proceso de compra. */
body#checkout footer .copyright,
body#checkout footer .footer-copyright,
body#checkout footer .copyright-container,
body#checkout footer [class*="copyright" i],
body#checkout footer a[href*="terms-and-conditions"],
body#checkout footer a[href*="condiciones"],
body#checkout footer a[href*="terms"],
body#checkout footer .cms-page-link,
body#checkout #footer .copyright,
body#checkout #footer .footer-copyright,
body#checkout #footer [class*="copyright" i] {
  display: none !important;
}

/* Por si el tema imprime esa línea como texto suelto en el footer */
body#checkout footer .container > .row:last-child,
body#checkout #footer .container > .row:last-child {
  margin-bottom: 0 !important;
}


/* =========================================================
   ADADP 10.20 - Ocultar definitivamente pie inferior del checkout
   ========================================================= */
body#checkout .adadp-checkout-footer-hidden {
  display: none !important;
}

body#checkout #footer .footer-container > .container > .row:last-child,
body#checkout footer .footer-container > .container > .row:last-child,
body#checkout #footer .container-fluid > .row:last-child,
body#checkout footer .container-fluid > .row:last-child {
  margin: 0 !important;
}


/* =========================================================
   ADADP 10.21 - Ocultar banner copyright PrestaShop en checkout
   ========================================================= */
body#checkout .adadp-hide-prestashop-copyright {
  display: none !important;
}

/* Selectores habituales del pie inferior de PrestaShop */
body#checkout #footer .copyright,
body#checkout #footer .footer-copyright,
body#checkout #footer .copyright-footer,
body#checkout footer .copyright,
body#checkout footer .footer-copyright,
body#checkout footer .copyright-footer,
body#checkout #footer p.text-sm-center,
body#checkout footer p.text-sm-center {
  display: none !important;
}


/* =========================================================
   ADADP 10.22 - Títulos de los 4 pasos del checkout en azul
   ========================================================= */

/* DATOS PERSONALES, DIRECCIONES, MÉTODO DE ENVÍO y PAGO */
body#checkout .checkout-step .step-title,
body#checkout .checkout-step h1.step-title,
body#checkout .checkout-step h2.step-title,
body#checkout .checkout-step .step-title span:not(.step-number),
body#checkout .checkout-step .step-title .step-title-label {
  color: #0B4F8A !important;
}

/* Mantener los números de paso con su diseño original */
body#checkout .checkout-step .step-title .step-number {
  color: #FFFFFF !important;
}

/* Mantener los iconos de pasos completados sin cambios */
body#checkout .checkout-step.-complete .step-title .done {
  color: inherit;
}


/* =========================================================
   ADADP 10.23 - Datos personales: textos legales más limpios
   ========================================================= */
body#checkout #checkout-personal-information-step .adadp-legal-clean {
  color: #222 !important;
  line-height: 1.45 !important;
}

body#checkout #checkout-personal-information-step .adadp-legal-clean a {
  color: #0B4F8A !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

body#checkout #checkout-personal-information-step .adadp-legal-clean a:hover {
  color: #078FD6 !important;
  text-decoration: underline !important;
}

/* Textos secundarios cortos y discretos */
body#checkout #checkout-personal-information-step .adadp-legal-help {
  display: block !important;
  margin-top: 3px !important;
  color: #6B7280 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  font-style: normal !important;
}

/* Ocultamos únicamente los párrafos explicativos antiguos y repetitivos */
body#checkout #checkout-personal-information-step .adadp-hide-old-legal-copy {
  display: none !important;
}


/* =========================================================
   ADADP 10.24 - Datos personales más limpios
   ========================================================= */

/* Fecha de nacimiento: no la utilizamos en ADADP */
body#checkout #checkout-personal-information-step .adadp-hide-birthday {
  display: none !important;
}

/* Bloques de consentimiento mejor alineados */
body#checkout #checkout-personal-information-step .adadp-legal-row {
  margin-top: 13px !important;
  margin-bottom: 13px !important;
}

body#checkout #checkout-personal-information-step .adadp-legal-row .custom-checkbox label,
body#checkout #checkout-personal-information-step .adadp-legal-row > label {
  display: flex !important;
  align-items: flex-start !important;
  gap: 9px !important;
  margin: 0 !important;
  color: #222 !important;
  font-size: 15px !important;
  line-height: 1.42 !important;
  font-weight: 400 !important;
}

/* El cuadrado de la casilla mantiene su tamaño y no se deforma */
body#checkout #checkout-personal-information-step .adadp-legal-row .custom-checkbox label > input[type="checkbox"],
body#checkout #checkout-personal-information-step .adadp-legal-row .custom-checkbox label > span:first-of-type {
  flex: 0 0 auto !important;
  margin-top: 2px !important;
}

/* Texto generado por ADADP */
body#checkout #checkout-personal-information-step .adadp-legal-text-v124 {
  display: inline-block !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

body#checkout #checkout-personal-information-step .adadp-legal-help-v124 {
  display: block !important;
  margin-top: 3px !important;
  color: #6B7280 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  font-style: normal !important;
}

/* Enlaces legales */
body#checkout #checkout-personal-information-step .adadp-legal-text-v124 a {
  color: #0B4F8A !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

body#checkout #checkout-personal-information-step .adadp-legal-text-v124 a:hover {
  color: #078FD6 !important;
  text-decoration: underline !important;
}


/* =========================================================
   ADADP 10.25 - Corrección de alineación en Datos personales
   ========================================================= */

/* Cada consentimiento ocupa su propia fila y no puede solaparse */
body#checkout #checkout-personal-information-step .adadp-legal-row {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  clear: both !important;
  float: none !important;
  width: 100% !important;
  height: auto !important;
  min-height: 48px !important;
  margin: 0 0 14px !important;
  padding-top: 2px !important;
  padding-bottom: 2px !important;
  overflow: visible !important;
}

/* Las columnas Bootstrap del formulario deben crecer con el texto */
body#checkout #checkout-personal-information-step .adadp-legal-row > [class*="col-"] {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}

/* Contenedor de checkbox */
body#checkout #checkout-personal-information-step .adadp-legal-row .custom-checkbox,
body#checkout #checkout-personal-information-step .adadp-legal-row.custom-checkbox {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 26px !important;
  position: relative !important;
  overflow: visible !important;
}

/* Casilla a la izquierda + texto a la derecha */
body#checkout #checkout-personal-information-step .adadp-legal-row .custom-checkbox label,
body#checkout #checkout-personal-information-step .adadp-legal-row.custom-checkbox label,
body#checkout #checkout-personal-information-step .adadp-legal-row > label {
  display: grid !important;
  grid-template-columns: 22px minmax(0, 1fr) !important;
  column-gap: 9px !important;
  row-gap: 0 !important;
  align-items: start !important;
  width: 100% !important;
  height: auto !important;
  min-height: 24px !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: normal !important;
}

/* Cuadrado visual del checkbox */
body#checkout #checkout-personal-information-step .adadp-legal-row .custom-checkbox label > span:not(.adadp-legal-text-v124),
body#checkout #checkout-personal-information-step .adadp-legal-row.custom-checkbox label > span:not(.adadp-legal-text-v124) {
  grid-column: 1 !important;
  grid-row: 1 !important;
  align-self: start !important;
  margin: 2px 0 0 !important;
}

/* Texto legal */
body#checkout #checkout-personal-information-step .adadp-legal-row .adadp-legal-text-v124 {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: block !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #222 !important;
  font-size: 15px !important;
  line-height: 1.42 !important;
  white-space: normal !important;
}

/* Texto secundario del boletín */
body#checkout #checkout-personal-information-step .adadp-legal-help-v124 {
  display: block !important;
  margin: 4px 0 0 !important;
  color: #6B7280 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

/* Evitar que la fila de botones suba y se monte encima de las casillas */
body#checkout #checkout-personal-information-step .adadp-checkout-action-row {
  clear: both !important;
  float: none !important;
  margin-top: 22px !important;
  position: relative !important;
  z-index: 1 !important;
}

/* Un poco más de aire antes del siguiente paso */
body#checkout #checkout-personal-information-step {
  padding-bottom: 10px !important;
}

@media (max-width: 767px) {
  body#checkout #checkout-personal-information-step .adadp-legal-row {
    min-height: 0 !important;
    margin-bottom: 16px !important;
  }

  body#checkout #checkout-personal-information-step .adadp-legal-row .adadp-legal-text-v124 {
    font-size: 14px !important;
  }
}


/* =========================================================
   ADADP 10.26 - Ajuste fino datos personales
   - desplaza consentimientos a la columna derecha
   - alinea mejor los checkbox
   ========================================================= */
@media (min-width: 768px) {
  body#checkout #checkout-personal-information-step .adadp-legal-row {
    margin-left: calc(33.3333% + 12px) !important;
    width: calc(66.6667% - 12px) !important;
  }

  body#checkout #checkout-personal-information-step .adadp-checkout-action-row {
    margin-left: calc(33.3333% + 12px) !important;
    width: calc(66.6667% - 12px) !important;
  }
}

body#checkout #checkout-personal-information-step .adadp-legal-row input[type="checkbox"] {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  margin: 2px 0 0 !important;
  align-self: start !important;
  justify-self: start !important;
  vertical-align: top !important;
  position: relative !important;
  top: 0 !important;
}

body#checkout #checkout-personal-information-step .adadp-legal-row .custom-checkbox label > span:not(.adadp-legal-text-v124),
body#checkout #checkout-personal-information-step .adadp-legal-row.custom-checkbox label > span:not(.adadp-legal-text-v124) {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  justify-self: start !important;
}

body#checkout #checkout-personal-information-step .adadp-legal-row .adadp-legal-text-v124 {
  padding-top: 0 !important;
}

body#checkout #checkout-personal-information-step .adadp-legal-row .adadp-legal-help-v124 {
  margin-left: 0 !important;
}

@media (max-width: 767px) {
  body#checkout #checkout-personal-information-step .adadp-legal-row,
  body#checkout #checkout-personal-information-step .adadp-checkout-action-row {
    margin-left: 0 !important;
    width: 100% !important;
  }
}


/* =========================================================
   ADADP 10.27 - Alineación real de consentimientos
   ========================================================= */

/* En escritorio usamos la misma lógica visual que el resto del formulario:
   columna izquierda para etiquetas y columna derecha para campos/contenido. */
@media (min-width: 768px) {
  body#checkout #checkout-personal-information-step .adadp-legal-row {
    display: grid !important;
    grid-template-columns: 205px minmax(0, 1fr) !important;
    column-gap: 0 !important;

    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
  }

  /* Si PrestaShop mete el checkbox dentro de una columna Bootstrap,
     la anulamos y la colocamos en la segunda columna. */
  body#checkout #checkout-personal-information-step .adadp-legal-row > [class*="col-"] {
    grid-column: 2 !important;
    width: 100% !important;
    max-width: none !important;
    flex: none !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Si el custom-checkbox cuelga directamente de la fila */
  body#checkout #checkout-personal-information-step .adadp-legal-row > .custom-checkbox {
    grid-column: 2 !important;
  }
}

/* El checkbox queda separado del texto mediante posicionamiento,
   evitando que se monte encima de la primera letra. */
body#checkout #checkout-personal-information-step .adadp-legal-row .custom-checkbox label,
body#checkout #checkout-personal-information-step .adadp-legal-row.custom-checkbox label,
body#checkout #checkout-personal-information-step .adadp-legal-row > label {
  display: block !important;
  position: relative !important;

  width: 100% !important;
  min-height: 24px !important;
  margin: 0 !important;
  padding: 0 0 0 31px !important;

  white-space: normal !important;
  box-sizing: border-box !important;
}

/* Input nativo: ocupa la zona reservada del checkbox, no el texto */
body#checkout #checkout-personal-information-step .adadp-legal-row input[type="checkbox"] {
  position: absolute !important;
  left: 0 !important;
  top: 2px !important;

  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  min-height: 20px !important;
  margin: 0 !important;

  z-index: 2 !important;
}

/* Cuadrado visual que utiliza el tema Classic */
body#checkout #checkout-personal-information-step .adadp-legal-row input[type="checkbox"] + span,
body#checkout #checkout-personal-information-step .adadp-legal-row .custom-checkbox label > span:not(.adadp-legal-text-v124) {
  position: absolute !important;
  left: 0 !important;
  top: 2px !important;

  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  min-height: 20px !important;
  margin: 0 !important;

  box-sizing: border-box !important;
}

/* Texto */
body#checkout #checkout-personal-information-step .adadp-legal-row .adadp-legal-text-v124 {
  display: block !important;
  position: static !important;

  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;

  color: #222 !important;
  font-size: 15px !important;
  line-height: 1.42 !important;
}

/* Separación entre opciones */
body#checkout #checkout-personal-information-step .adadp-legal-row {
  margin-bottom: 17px !important;
}

/* Los botones vuelven a su alineación normal; no los desplazamos artificialmente */
@media (min-width: 768px) {
  body#checkout #checkout-personal-information-step .adadp-checkout-action-row {
    margin-left: 0 !important;
    width: auto !important;
  }
}

@media (max-width: 767px) {
  body#checkout #checkout-personal-information-step .adadp-legal-row {
    display: block !important;
    width: 100% !important;
    margin-left: 0 !important;
  }
}


/* =========================================================
   ADADP 10.42 - COMPLEMENTOS más compacto
   ========================================================= */

/* Banner algo más compacto y descripción en una sola línea en escritorio */
@media (min-width: 992px) {
  body.adadp-complements-category .block-category {
    padding: 22px 30px !important;
    margin-bottom: 14px !important;
  }

  body.adadp-complements-category .adadp-complements-intro,
  body.adadp-complements-category #category-description,
  body.adadp-complements-category .category-description {
    max-width: none !important;
    width: 100% !important;
    white-space: nowrap !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
  }

  /* Subir el bloque de PUZLES / OTROS */
  body.adadp-complements-category #subcategories {
    padding: 20px 24px 22px !important;
    margin-top: 0 !important;
  }

  body.adadp-complements-category #subcategories > h2,
  body.adadp-complements-category #subcategories .subcategory-heading {
    font-size: 26px !important;
    margin-bottom: 14px !important;
  }

  body.adadp-complements-category #subcategories ul {
    gap: 22px !important;
  }

  /* Tarjetas algo más pequeñas */
  body.adadp-complements-category #subcategories ul li {
    width: 235px !important;
    max-width: 235px !important;
  }

  body.adadp-complements-category #subcategories .subcategory-image {
    min-height: 185px !important;
    padding: 12px !important;
  }

  body.adadp-complements-category #subcategories .subcategory-image img {
    max-width: 165px !important;
    max-height: 165px !important;
  }

  body.adadp-complements-category #subcategories .subcategory-name,
  body.adadp-complements-category #subcategories a.subcategory-name {
    min-height: 44px !important;
    padding: 10px 10px 12px !important;
  }
}

/* En móvil permitimos que la descripción se adapte normalmente */
@media (max-width: 991px) {
  body.adadp-complements-category .adadp-complements-intro,
  body.adadp-complements-category #category-description,
  body.adadp-complements-category .category-description {
    white-space: normal !important;
  }
}


/* =========================================================
   ADADP 10.43 - Complementos más estrecho + ocultar Selecciones
   ========================================================= */
@media (min-width: 992px) {
  /* Banner de COMPLEMENTOS más estrecho (menos alto) */
  body.adadp-complements-category .block-category {
    padding: 16px 26px !important;
    margin-bottom: 10px !important;
    min-height: auto !important;
  }

  body.adadp-complements-category .block-category h1,
  body.adadp-complements-category #content-wrapper .block-category h1 {
    margin-bottom: 10px !important;
    font-size: clamp(2.4rem, 4vw, 3.45rem) !important;
    line-height: 1.02 !important;
  }

  body.adadp-complements-category .adadp-complements-eyebrow {
    margin-bottom: 8px !important;
  }

  body.adadp-complements-category .adadp-complements-intro,
  body.adadp-complements-category #category-description,
  body.adadp-complements-category .category-description {
    font-size: 15px !important;
    line-height: 1.35 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  /* Subcategorías un poco más arriba y compactas */
  body.adadp-complements-category #subcategories {
    padding-top: 16px !important;
    margin-top: -4px !important;
  }

  body.adadp-complements-category #subcategories > h2,
  body.adadp-complements-category #subcategories .subcategory-heading {
    margin-bottom: 10px !important;
  }
}

/* Quitar el bloque "Selecciones" del filtro en COMPLEMENTOS */
body.adadp-complements-category #search_filters .facet:nth-of-type(2),
body.adadp-complements-category #left-column #search_filters .facet:nth-of-type(2),
body.adadp-complements-category #search_filters_wrapper .facet:nth-of-type(2) {
  display: none !important;
}

/* Por si el tema usa otro marcado para el título del bloque */
body.adadp-complements-category #search_filters .facet .facet-title {
  visibility: visible;
}


/* =========================================================
   ADADP 10.44 - Banner PUZLES más compacto
   ========================================================= */
@media (min-width: 992px) {
  body.adadp-puzzles-category .block-category {
    min-height: 150px !important;
    padding: 18px 205px 18px 24px !important;
    margin-bottom: 22px !important;
  }

  body.adadp-puzzles-category .block-category h1,
  body.adadp-puzzles-category .block-category .h1 {
    margin: 0 0 8px !important;
    font-size: 30px !important;
    line-height: 1.1 !important;
  }

  body.adadp-puzzles-category #category-description,
  body.adadp-puzzles-category .block-category .category-description {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 16px !important;
    line-height: 1.35 !important;
  }

  body.adadp-puzzles-category #category-description p,
  body.adadp-puzzles-category .block-category .category-description p {
    margin: 0 !important;
  }

  body.adadp-puzzles-category .block-category .category-cover {
    width: 155px !important;
    max-width: 155px !important;
    right: 22px !important;
  }

  body.adadp-puzzles-category .block-category .category-cover img,
  body.adadp-puzzles-category .block-category > img {
    max-width: 145px !important;
    max-height: 120px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
  }
}

@media (max-width: 991px) {
  body.adadp-puzzles-category .block-category {
    min-height: 0 !important;
    padding: 16px 18px !important;
  }

  body.adadp-puzzles-category .block-category .category-cover img,
  body.adadp-puzzles-category .block-category > img {
    max-height: 90px !important;
    width: auto !important;
  }
}

/* =========================================================
   ADADP 10.49 - Banner PUZLES más estrecho + imagen más grande y más arriba
   ========================================================= */
@media (min-width: 992px) {
  body.adadp-puzzles-category .block-category,
  body.adadp-puzzles-category #js-product-list-header .block-category,
  body.adadp-puzzles-category #content-wrapper .block-category {
    min-height: 112px !important;
    padding: 14px 230px 12px 24px !important;
    margin-bottom: 18px !important;
    position: relative !important;
    overflow: hidden !important;
  }

  body.adadp-puzzles-category .block-category h1,
  body.adadp-puzzles-category .block-category .h1,
  body.adadp-puzzles-category #js-product-list-header .block-category h1,
  body.adadp-puzzles-category #content-wrapper .block-category h1 {
    margin: 0 0 6px !important;
    font-size: 28px !important;
    line-height: 1.05 !important;
  }

  body.adadp-puzzles-category #category-description,
  body.adadp-puzzles-category .block-category .category-description {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    max-width: none !important;
  }

  body.adadp-puzzles-category #category-description p,
  body.adadp-puzzles-category .block-category .category-description p {
    margin: 0 !important;
  }

  body.adadp-puzzles-category .block-category .category-cover,
  body.adadp-puzzles-category #js-product-list-header .block-category .category-cover,
  body.adadp-puzzles-category #content-wrapper .block-category .category-cover {
    position: absolute !important;
    top: 8px !important;
    right: 22px !important;
    width: 190px !important;
    max-width: 190px !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
    margin: 0 !important;
  }

  body.adadp-puzzles-category .block-category .category-cover img,
  body.adadp-puzzles-category .block-category > img,
  body.adadp-puzzles-category #js-product-list-header .block-category .category-cover img,
  body.adadp-puzzles-category #content-wrapper .block-category .category-cover img {
    width: 170px !important;
    max-width: 170px !important;
    max-height: 170px !important;
    height: auto !important;
    object-fit: contain !important;
    margin: 0 auto !important;
  }
}

@media (max-width: 991px) {
  body.adadp-puzzles-category .block-category,
  body.adadp-puzzles-category #js-product-list-header .block-category,
  body.adadp-puzzles-category #content-wrapper .block-category {
    min-height: 0 !important;
    padding: 14px 16px !important;
    margin-bottom: 16px !important;
  }

  body.adadp-puzzles-category .block-category .category-cover,
  body.adadp-puzzles-category #js-product-list-header .block-category .category-cover,
  body.adadp-puzzles-category #content-wrapper .block-category .category-cover {
    margin-top: 6px !important;
  }

  body.adadp-puzzles-category .block-category .category-cover img,
  body.adadp-puzzles-category .block-category > img,
  body.adadp-puzzles-category #js-product-list-header .block-category .category-cover img,
  body.adadp-puzzles-category #content-wrapper .block-category .category-cover img {
    max-height: 110px !important;
    width: auto !important;
  }
}

/* =========================================================
   ADADP 10.50 - Banner PUZLES equilibrado: menos vacío, imagen más arriba y mejor encajada
   ========================================================= */
@media (min-width: 992px) {
  body.adadp-puzzles-category .block-category,
  body.adadp-puzzles-category #js-product-list-header .block-category,
  body.adadp-puzzles-category #content-wrapper .block-category {
    min-height: 126px !important;
    padding: 16px 214px 14px 24px !important;
    margin-bottom: 18px !important;
    position: relative !important;
    overflow: hidden !important;
  }

  body.adadp-puzzles-category .block-category h1,
  body.adadp-puzzles-category .block-category .h1,
  body.adadp-puzzles-category #js-product-list-header .block-category h1,
  body.adadp-puzzles-category #content-wrapper .block-category h1 {
    margin: 0 0 6px !important;
    font-size: 28px !important;
    line-height: 1.05 !important;
  }

  body.adadp-puzzles-category #category-description,
  body.adadp-puzzles-category .block-category .category-description {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    max-width: none !important;
  }

  body.adadp-puzzles-category #category-description p,
  body.adadp-puzzles-category .block-category .category-description p {
    margin: 0 !important;
  }

  body.adadp-puzzles-category .block-category .category-cover,
  body.adadp-puzzles-category #js-product-list-header .block-category .category-cover,
  body.adadp-puzzles-category #content-wrapper .block-category .category-cover {
    position: absolute !important;
    top: 50% !important;
    right: 34px !important;
    transform: translateY(-58%) !important;
    width: 184px !important;
    max-width: 184px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
  }

  body.adadp-puzzles-category .block-category .category-cover img,
  body.adadp-puzzles-category .block-category > img,
  body.adadp-puzzles-category #js-product-list-header .block-category .category-cover img,
  body.adadp-puzzles-category #content-wrapper .block-category .category-cover img {
    width: 176px !important;
    max-width: 176px !important;
    max-height: none !important;
    height: auto !important;
    object-fit: contain !important;
    margin: 0 auto !important;
    display: block !important;
  }
}

@media (max-width: 991px) {
  body.adadp-puzzles-category .block-category,
  body.adadp-puzzles-category #js-product-list-header .block-category,
  body.adadp-puzzles-category #content-wrapper .block-category {
    min-height: 0 !important;
    padding: 14px 16px !important;
    margin-bottom: 16px !important;
  }

  body.adadp-puzzles-category .block-category .category-cover,
  body.adadp-puzzles-category #js-product-list-header .block-category .category-cover,
  body.adadp-puzzles-category #content-wrapper .block-category .category-cover {
    margin-top: 4px !important;
  }

  body.adadp-puzzles-category .block-category .category-cover img,
  body.adadp-puzzles-category .block-category > img,
  body.adadp-puzzles-category #js-product-list-header .block-category .category-cover img,
  body.adadp-puzzles-category #content-wrapper .block-category .category-cover img {
    max-height: 104px !important;
    width: auto !important;
  }
}

/* =========================================================
   ADADP 10.51 - Banner PUZLES ajuste fino: una sola imagen, más integrada y con menos vacío
   ========================================================= */
@media (min-width: 992px) {
  body.adadp-puzzles-category .block-category,
  body.adadp-puzzles-category #js-product-list-header .block-category,
  body.adadp-puzzles-category #content-wrapper .block-category {
    min-height: 124px !important;
    padding: 16px 198px 14px 24px !important;
    margin-bottom: 18px !important;
    position: relative !important;
    overflow: hidden !important;
  }

  body.adadp-puzzles-category .block-category .category-cover,
  body.adadp-puzzles-category #js-product-list-header .block-category .category-cover,
  body.adadp-puzzles-category #content-wrapper .block-category .category-cover {
    position: absolute !important;
    top: 50% !important;
    right: 54px !important;
    transform: translateY(-50%) !important;
    width: 172px !important;
    max-width: 172px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
  }

  body.adadp-puzzles-category .block-category .category-cover img,
  body.adadp-puzzles-category .block-category > img,
  body.adadp-puzzles-category #js-product-list-header .block-category .category-cover img,
  body.adadp-puzzles-category #content-wrapper .block-category .category-cover img {
    width: 164px !important;
    max-width: 164px !important;
    max-height: none !important;
    height: auto !important;
    object-fit: contain !important;
    margin: 0 auto !important;
    display: block !important;
  }
}

/* =========================================================
   ADADP 10.52 - COMPLEMENTOS: cabecera más proporcionada + sin título intermedio
   ========================================================= */
@media (min-width: 992px) {
  /* Cabecera principal más compacta y equilibrada */
  body.adadp-complements-category .block-category {
    padding: 14px 26px 15px !important;
    margin-bottom: 10px !important;
    min-height: auto !important;
  }

  body.adadp-complements-category .adadp-complements-eyebrow {
    margin-bottom: 6px !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
  }

  body.adadp-complements-category .block-category h1,
  body.adadp-complements-category #content-wrapper .block-category h1 {
    margin: 0 0 7px !important;
    font-size: 44px !important;
    line-height: 1 !important;
    letter-spacing: -.025em !important;
  }

  body.adadp-complements-category .adadp-complements-intro,
  body.adadp-complements-category #category-description,
  body.adadp-complements-category .category-description {
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.3 !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
  }

  /* Eliminar "Categorías de complementos" y su línea */
  body.adadp-complements-category #subcategories > h2,
  body.adadp-complements-category #subcategories .subcategory-heading {
    display: none !important;
  }

  body.adadp-complements-category #subcategories > h2::after,
  body.adadp-complements-category #subcategories .subcategory-heading::after {
    display: none !important;
    content: none !important;
  }

  /* Subir las tarjetas y aprovechar el espacio liberado */
  body.adadp-complements-category #subcategories {
    padding: 18px 24px 22px !important;
    margin-top: 0 !important;
  }
}

@media (max-width: 991px) {
  /* También quitamos el título intermedio en tablet/móvil */
  body.adadp-complements-category #subcategories > h2,
  body.adadp-complements-category #subcategories .subcategory-heading {
    display: none !important;
  }

  body.adadp-complements-category #subcategories {
    padding-top: 16px !important;
  }
}

/* =========================================================
   ADADP 10.53 - COMPLEMENTOS: ocultar filtros que no aportan (Selecciones/Nuevo y Categorías internas)
   ========================================================= */
/* Ocultar el bloque de categorías dentro de FILTRAR POR en COMPLEMENTOS */
body.adadp-complements-category #search_filters .adadp-wingest-category-facet,
body.adadp-complements-category #left-column #search_filters .adadp-wingest-category-facet,
body.adadp-complements-category #search_filters_wrapper .adadp-wingest-category-facet {
  display: none !important;
}

/* Refuerzo por si la tienda lo pinta como tercer facet estándar */
body.adadp-complements-category #search_filters .facet:nth-of-type(3),
body.adadp-complements-category #left-column #search_filters .facet:nth-of-type(3),
body.adadp-complements-category #search_filters_wrapper .facet:nth-of-type(3) {
  display: none !important;
}

/* =========================================================
   ADADP 10.54 - Ajustes finales COMPLEMENTOS / PUZLES / OTROS
   ========================================================= */

/* 1) COMPLEMENTOS: restaurar Categorías dentro de FILTRAR POR */
body.adadp-complements-category #search_filters .adadp-wingest-category-facet,
body.adadp-complements-category #left-column #search_filters .adadp-wingest-category-facet,
body.adadp-complements-category #search_filters_wrapper .adadp-wingest-category-facet {
  display: block !important;
}

body.adadp-complements-category #search_filters .facet:nth-of-type(3),
body.adadp-complements-category #left-column #search_filters .facet:nth-of-type(3),
body.adadp-complements-category #search_filters_wrapper .facet:nth-of-type(3) {
  display: block !important;
}

/* 2) PUZLES y OTROS: ocultar solamente "Selecciones / Nuevo" */
body.adadp-puzzles-category #search_filters .facet:nth-of-type(2),
body.adadp-puzzles-category #left-column #search_filters .facet:nth-of-type(2),
body.adadp-puzzles-category #search_filters_wrapper .facet:nth-of-type(2),
body.adadp-cat-otros #search_filters .facet:nth-of-type(2),
body.adadp-cat-otros #left-column #search_filters .facet:nth-of-type(2),
body.adadp-cat-otros #search_filters_wrapper .facet:nth-of-type(2) {
  display: none !important;
}

/* 3) OTROS: banner alineado visualmente con PUZLES */
@media (min-width: 992px) {
  body.adadp-cat-otros .block-category,
  body.adadp-cat-otros #js-product-list-header .block-category,
  body.adadp-cat-otros #content-wrapper .block-category {
    min-height: 132px !important;
    padding: 18px 230px 16px 24px !important;
    margin-bottom: 18px !important;
    position: relative !important;
    overflow: hidden !important;
  }

  body.adadp-cat-otros .block-category h1,
  body.adadp-cat-otros .block-category .h1,
  body.adadp-cat-otros #js-product-list-header .block-category h1,
  body.adadp-cat-otros #content-wrapper .block-category h1 {
    margin: 0 0 8px !important;
    font-size: 30px !important;
    line-height: 1.05 !important;
  }

  body.adadp-cat-otros #category-description,
  body.adadp-cat-otros .block-category .category-description {
    margin: 0 !important;
    padding: 0 !important;
    max-width: 760px !important;
    font-size: 16px !important;
    line-height: 1.35 !important;
  }

  body.adadp-cat-otros #category-description p,
  body.adadp-cat-otros .block-category .category-description p {
    margin: 0 !important;
  }

  body.adadp-cat-otros .block-category .category-cover,
  body.adadp-cat-otros #js-product-list-header .block-category .category-cover,
  body.adadp-cat-otros #content-wrapper .block-category .category-cover {
    position: absolute !important;
    top: 50% !important;
    right: 34px !important;
    transform: translateY(-50%) !important;
    width: 185px !important;
    max-width: 185px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
  }

  body.adadp-cat-otros .block-category .category-cover img,
  body.adadp-cat-otros .block-category > img,
  body.adadp-cat-otros #js-product-list-header .block-category .category-cover img,
  body.adadp-cat-otros #content-wrapper .block-category .category-cover img {
    width: 170px !important;
    max-width: 170px !important;
    max-height: 118px !important;
    height: auto !important;
    object-fit: contain !important;
    margin: 0 auto !important;
    display: block !important;
  }
}

@media (max-width: 991px) {
  body.adadp-cat-otros .block-category,
  body.adadp-cat-otros #js-product-list-header .block-category,
  body.adadp-cat-otros #content-wrapper .block-category {
    min-height: 0 !important;
    padding: 14px 16px !important;
    margin-bottom: 16px !important;
  }

  body.adadp-cat-otros .block-category .category-cover img,
  body.adadp-cat-otros .block-category > img,
  body.adadp-cat-otros #js-product-list-header .block-category .category-cover img,
  body.adadp-cat-otros #content-wrapper .block-category .category-cover img {
    max-height: 104px !important;
    width: auto !important;
  }
}

/* =========================================================
   ADADP 10.55 - OTROS: imagen más grande y rectangular en el banner
   ========================================================= */
@media (min-width: 992px) {
  body.adadp-cat-otros .block-category,
  body.adadp-cat-otros #js-product-list-header .block-category,
  body.adadp-cat-otros #content-wrapper .block-category {
    min-height: 150px !important;
    padding: 18px 320px 16px 24px !important;
    margin-bottom: 18px !important;
    position: relative !important;
    overflow: hidden !important;
  }

  body.adadp-cat-otros .block-category h1,
  body.adadp-cat-otros .block-category .h1,
  body.adadp-cat-otros #js-product-list-header .block-category h1,
  body.adadp-cat-otros #content-wrapper .block-category h1 {
    margin: 0 0 8px !important;
    font-size: 30px !important;
    line-height: 1.05 !important;
  }

  body.adadp-cat-otros #category-description,
  body.adadp-cat-otros .block-category .category-description {
    margin: 0 !important;
    padding: 0 !important;
    max-width: 640px !important;
    font-size: 16px !important;
    line-height: 1.35 !important;
  }

  body.adadp-cat-otros #category-description p,
  body.adadp-cat-otros .block-category .category-description p {
    margin: 0 !important;
  }

  body.adadp-cat-otros .block-category .category-cover,
  body.adadp-cat-otros #js-product-list-header .block-category .category-cover,
  body.adadp-cat-otros #content-wrapper .block-category .category-cover {
    position: absolute !important;
    top: 50% !important;
    right: 26px !important;
    transform: translateY(-50%) !important;
    width: 255px !important;
    max-width: 255px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
  }

  body.adadp-cat-otros .block-category .category-cover img,
  body.adadp-cat-otros .block-category > img,
  body.adadp-cat-otros #js-product-list-header .block-category .category-cover img,
  body.adadp-cat-otros #content-wrapper .block-category .category-cover img {
    width: 238px !important;
    max-width: 238px !important;
    max-height: 138px !important;
    height: auto !important;
    object-fit: contain !important;
    margin: 0 auto !important;
    display: block !important;
  }
}

@media (max-width: 991px) {
  body.adadp-cat-otros .block-category,
  body.adadp-cat-otros #js-product-list-header .block-category,
  body.adadp-cat-otros #content-wrapper .block-category {
    min-height: 0 !important;
    padding: 14px 16px !important;
    margin-bottom: 16px !important;
  }

  body.adadp-cat-otros .block-category .category-cover img,
  body.adadp-cat-otros .block-category > img,
  body.adadp-cat-otros #js-product-list-header .block-category .category-cover img,
  body.adadp-cat-otros #content-wrapper .block-category .category-cover img {
    max-height: 118px !important;
    width: auto !important;
  }
}

/* =========================================================
   ADADP 10.57 - OTROS: imagen más ancha y protagonista en el banner
   ========================================================= */
@media (min-width: 992px) {
  body.adadp-cat-otros .block-category,
  body.adadp-cat-otros #js-product-list-header .block-category,
  body.adadp-cat-otros #content-wrapper .block-category {
    min-height: 164px !important;
    padding: 18px 360px 16px 24px !important;
    margin-bottom: 18px !important;
    position: relative !important;
    overflow: hidden !important;
  }

  body.adadp-cat-otros #category-description,
  body.adadp-cat-otros .block-category .category-description {
    max-width: 590px !important;
  }

  body.adadp-cat-otros .block-category .category-cover,
  body.adadp-cat-otros #js-product-list-header .block-category .category-cover,
  body.adadp-cat-otros #content-wrapper .block-category .category-cover {
    position: absolute !important;
    top: 50% !important;
    right: 18px !important;
    transform: translateY(-50%) !important;
    width: 300px !important;
    max-width: 300px !important;
    height: 154px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    overflow: hidden !important;
  }

  body.adadp-cat-otros .block-category .category-cover img,
  body.adadp-cat-otros .block-category > img,
  body.adadp-cat-otros #js-product-list-header .block-category .category-cover img,
  body.adadp-cat-otros #content-wrapper .block-category .category-cover img {
    width: 286px !important;
    max-width: none !important;
    height: 154px !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    margin: 0 auto !important;
    display: block !important;
  }
}

@media (max-width: 991px) {
  body.adadp-cat-otros .block-category .category-cover img,
  body.adadp-cat-otros .block-category > img,
  body.adadp-cat-otros #js-product-list-header .block-category .category-cover img,
  body.adadp-cat-otros #content-wrapper .block-category .category-cover img {
    max-height: 124px !important;
    width: auto !important;
  }
}

/* =========================================================
   ADADP 10.58 - OTROS: usar banner ancho HD propio en lugar de la miniatura borrosa
   ========================================================= */
@media (min-width: 992px) {
  body.adadp-cat-otros .block-category,
  body.adadp-cat-otros #js-product-list-header .block-category,
  body.adadp-cat-otros #content-wrapper .block-category {
    min-height: 164px !important;
    padding: 18px 360px 16px 24px !important;
  }

  body.adadp-cat-otros .block-category .category-cover,
  body.adadp-cat-otros #js-product-list-header .block-category .category-cover,
  body.adadp-cat-otros #content-wrapper .block-category .category-cover {
    position: absolute !important;
    top: 50% !important;
    right: 18px !important;
    transform: translateY(-50%) !important;
    width: 300px !important;
    max-width: 300px !important;
    height: 154px !important;
    display: block !important;
    margin: 0 !important;
    overflow: hidden !important;
    background-image: url('../img/otros-banner-v159.png') !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: cover !important;
  }

  body.adadp-cat-otros .block-category .category-cover img,
  body.adadp-cat-otros .block-category > img,
  body.adadp-cat-otros #js-product-list-header .block-category .category-cover img,
  body.adadp-cat-otros #content-wrapper .block-category .category-cover img {
    display: none !important;
  }
}

@media (max-width: 991px) {
  body.adadp-cat-otros .block-category .category-cover,
  body.adadp-cat-otros #js-product-list-header .block-category .category-cover,
  body.adadp-cat-otros #content-wrapper .block-category .category-cover {
    min-height: 124px !important;
    background-image: url('../img/otros-banner-v159.png') !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: cover !important;
  }

  body.adadp-cat-otros .block-category .category-cover img,
  body.adadp-cat-otros .block-category > img,
  body.adadp-cat-otros #js-product-list-header .block-category .category-cover img,
  body.adadp-cat-otros #content-wrapper .block-category .category-cover img {
    display: none !important;
  }
}

/* =========================================================
   ADADP 10.60 - Títulos principales en azul corporativo
   ========================================================= */
/* Título OTROS */
body.adadp-cat-otros .block-category h1,
body.adadp-cat-otros .block-category .h1,
body.adadp-cat-otros #js-product-list-header .block-category h1,
body.adadp-cat-otros #content-wrapper .block-category h1 {
  color: #0B4F8A !important;
}

/* Título principal FILTRAR POR en categorías: escritorio, tablet y móvil */
body#category #left-column .adadp-filter-main-title-blue,
body#category #search_filters .adadp-filter-main-title-blue,
body#category #search_filters > h4,
body#category #search_filters > .h6,
body#category #search_filters > .facet-title-main,
body#category #left-column .adadp-filter-title-restored,
body#category #left-column .facet-title-main {
  color: #0B4F8A !important;
}

/* Si el filtro móvil usa el botón/título nativo */
body#category #search_filter_toggler,
body#category .js-search-filters-clear-all + .h6 {
  color: #0B4F8A !important;
}

/* =========================================================
   ADADP 10.61 - Ajustes finos de categorías
   ========================================================= */

/* FILTRAR POR: tamaño más compacto en todas las páginas de categoría */
body#category #left-column .adadp-filter-main-title-blue,
body#category #search_filters .adadp-filter-main-title-blue,
body#category #search_filters > h4,
body#category #search_filters > .h6,
body#category #search_filters > .facet-title-main,
body#category #left-column .adadp-filter-title-restored,
body#category #left-column .facet-title-main {
  color: #0B4F8A !important;
  font-size: 24px !important;
  line-height: 1.1 !important;
}

/* OTROS: bajar ligeramente título/texto y dar algo más de ancho al texto */
@media (min-width: 992px) {
  body.adadp-cat-otros .block-category,
  body.adadp-cat-otros #js-product-list-header .block-category,
  body.adadp-cat-otros #content-wrapper .block-category {
    padding: 21px 335px 16px 24px !important;
  }

  body.adadp-cat-otros .block-category h1,
  body.adadp-cat-otros .block-category .h1,
  body.adadp-cat-otros #js-product-list-header .block-category h1,
  body.adadp-cat-otros #content-wrapper .block-category h1 {
    margin-top: 2px !important;
  }

  body.adadp-cat-otros #category-description,
  body.adadp-cat-otros .block-category .category-description {
    max-width: 675px !important;
  }
}

/* PUZLES y OTROS: quitar únicamente la etiqueta de producto "NUEVO" */
body.adadp-puzzles-category .product-flags .new,
body.adadp-puzzles-category .product-flag.new,
body.adadp-puzzles-category li.product-flag.new,
body.adadp-cat-otros .product-flags .new,
body.adadp-cat-otros .product-flag.new,
body.adadp-cat-otros li.product-flag.new {
  display: none !important;
}


/* =========================================================
   ADADP 10.77 - Orden visual estable de métodos de pago
   No se reordena el DOM; cada opción conserva su bloque completo.
   ========================================================= */
#checkout-payment-step .payment-options.adadp-payment-order {
  display: flex !important;
  flex-direction: column !important;
}
#checkout-payment-step .payment-options.adadp-payment-order > .adadp-pay-card   { order: 10 !important; }
#checkout-payment-step .payment-options.adadp-payment-order > .adadp-pay-bank   { order: 20 !important; }
#checkout-payment-step .payment-options.adadp-payment-order > .adadp-pay-paypal { order: 30 !important; }
#checkout-payment-step .payment-options.adadp-payment-order > .adadp-pay-gpay   { order: 40 !important; }
#checkout-payment-step .payment-options.adadp-payment-order > :not(.adadp-pay-card):not(.adadp-pay-bank):not(.adadp-pay-paypal):not(.adadp-pay-gpay) {
  order: 90;
}

/* ADADP 10.79 - Contacto: claridad y ayuda en archivo adjunto */
body#contact .adadp-contact-optional-old {
  display: none !important;
}

body#contact .adadp-contact-file-help {
  margin-top: 7px !important;
  color: #6d7782 !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
}

/* Hacer el selector de archivo algo más discreto sin reducir legibilidad */
body#contact .contact-form .custom-file-label,
body#contact .contact-form .custom-file-label::after,
body#contact .contact-form input[type="file"] + label,
body#contact .contact-form .btn-file {
  font-size: 13px !important;
}

/* Mantener el bloque de datos algo más compacto */
body#contact .contact-rich {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

body#contact .adadp-contact-privacy {
  color: #7a838c !important;
  font-size: 12px !important;
}

/* ADADP 10.80 - Contacto: adjuntos múltiples seguros */
body#contact .adadp-contact-files-selected {
  margin-top: 7px;
  font-size: 14px;
  line-height: 1.35;
  color: #4f5b66;
}
body#contact .adadp-multifile-notice {
  margin: 0 0 18px;
  padding: 12px 14px;
  border-radius: 4px;
  font-size: 15px;
  line-height: 1.45;
  border: 1px solid #c9d7e3;
  background: #f5f9fc;
  color: #243746;
}
body#contact .adadp-multifile-notice.is-error {
  border-color: #d8a5a5;
  background: #fff5f5;
  color: #7a2020;
}
body#contact .adadp-multifile-notice.is-success {
  border-color: #a8c7b2;
  background: #f4faf6;
  color: #245b35;
}
body#contact .contact-form button.adadp-is-sending,
body#contact .contact-form input.adadp-is-sending {
  opacity: .7;
  cursor: wait;
}

/* ADADP 10.82 - País primero + dirección España integrada */
.adadp-address-help,
.adadp-postcode-help,
.adadp-street-help {
  margin-top: 7px;
  font-size: 14px;
  line-height: 1.45;
  color: #606a73;
}
.adadp-spain-required > label::after {
  content: " *";
  color: #c00;
  font-weight: 700;
}
.adadp-country-first {
  margin-bottom: 18px;
}
.adadp-country-first label {
  font-weight: 700;
}
.adadp-spain-place-box {
  margin: 6px 0 20px 25%;
  width: 50%;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
}
.adadp-spain-place-box label {
  display: block;
  margin-bottom: 6px;
  font-weight: 700;
  color: #222;
}
.adadp-spain-place-box select,
.adadp-province-value {
  width: 100%;
  min-height: 48px;
  font-size: 16px;
}
.adadp-province-value {
  display: flex;
  align-items: center;
  padding: 10px 12px;
  background: #f7f7f7;
  border: 1px solid rgba(0,0,0,.2);
  border-radius: 2px;
  color: #333;
}
.adadp-place-status {
  margin-top: -4px;
  font-size: 14px;
  line-height: 1.4;
  color: #5b6570;
}
.adadp-place-status.is-error { color: #8a3b2f; }
.adadp-place-status.is-ok { color: #2f6f43; font-weight: 600; }
@media (max-width: 991px) {
  .adadp-spain-place-box {
    margin-left: 0;
    width: 100%;
  }
}


/* ADADP 10.83 - ayuda y validación de dirección postal en España */
.adadp-street-help { max-width: 620px; }

/* ADADP 10.84 - Formulario de direcciones más amable, claro y coherente con Contacto */
body#checkout #checkout-addresses-step .js-address-form,
body#checkout #checkout-addresses-step form[class*="address"],
body#checkout .checkout-step.-current .js-address-form {
  background: #ffffff !important;
  border: 1px solid #dce8f3 !important;
  border-radius: 12px !important;
  box-shadow: 0 3px 14px rgba(11, 79, 138, .07) !important;
  padding: 24px 28px !important;
}

/* Etiquetas: azul corporativo, legibles sin resultar pesadas. */
body#checkout #checkout-addresses-step .js-address-form .form-control-label,
body#checkout #checkout-addresses-step .js-address-form label,
body#checkout #checkout-addresses-step form[class*="address"] .form-control-label,
body#checkout #checkout-addresses-step form[class*="address"] label {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}

/* Campos como en Contacto. */
body#checkout #checkout-addresses-step .js-address-form .form-control,
body#checkout #checkout-addresses-step form[class*="address"] .form-control,
body#checkout #checkout-addresses-step .js-address-form input,
body#checkout #checkout-addresses-step .js-address-form select {
  border: 1px solid #cfdbe7 !important;
  border-radius: 6px !important;
  box-shadow: none !important;
  min-height: 48px !important;
  font-size: 16px !important;
}
body#checkout #checkout-addresses-step .js-address-form .form-control:focus,
body#checkout #checkout-addresses-step .js-address-form input:focus,
body#checkout #checkout-addresses-step .js-address-form select:focus {
  border-color: #078FD6 !important;
  box-shadow: 0 0 0 3px rgba(7, 143, 214, .10) !important;
}

/* Separación más limpia entre líneas del formulario. */
body#checkout #checkout-addresses-step .js-address-form .form-group,
body#checkout #checkout-addresses-step form[class*="address"] .form-group {
  margin-bottom: 17px !important;
}

/* Ayudas breves siempre debajo del campo y no flotando a la derecha. */
body#checkout .adadp-street-help,
body#checkout .adadp-postcode-help,
body#checkout .adadp-address-help {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 6px 0 0 !important;
  color: #5f7182 !important;
  font-size: 13.5px !important;
  line-height: 1.35 !important;
}

/* Bloque población/provincia integrado como el formulario de Contacto. */
body#checkout .adadp-spain-place-box {
  margin: 8px 0 20px 25% !important;
  width: 50% !important;
  padding: 16px !important;
  background: #f8fbfe !important;
  border: 1px solid #dce8f3 !important;
  border-radius: 9px !important;
  box-shadow: 0 2px 8px rgba(11, 79, 138, .04) !important;
  gap: 12px !important;
}
body#checkout .adadp-spain-place-box label {
  color: #0B4F8A !important;
  margin-bottom: 5px !important;
}
body#checkout .adadp-spain-place-box select,
body#checkout .adadp-province-value {
  border: 1px solid #cfdbe7 !important;
  border-radius: 6px !important;
  background: #ffffff !important;
  min-height: 48px !important;
}
body#checkout .adadp-place-status {
  margin-top: 0 !important;
  color: #5f7182 !important;
  font-size: 13.5px !important;
}
body#checkout .adadp-place-status.is-ok {
  color: #2f6f43 !important;
}

/* Opcional más discreto para que no compita con la etiqueta principal. */
body#checkout #checkout-addresses-step .form-control-comment {
  color: #7b8792 !important;
  font-size: 13px !important;
}

@media (max-width: 991px) {
  body#checkout #checkout-addresses-step .js-address-form,
  body#checkout #checkout-addresses-step form[class*="address"] {
    padding: 18px 16px !important;
    border-radius: 9px !important;
  }
  body#checkout .adadp-spain-place-box {
    margin-left: 0 !important;
    width: 100% !important;
  }
}

/* v10.85 - texto escrito en negro en el formulario de direcciones */
body#checkout #checkout-addresses-step .js-address-form .form-control,
body#checkout #checkout-addresses-step form[class*="address"] .form-control,
body#checkout #checkout-addresses-step .js-address-form input,
body#checkout #checkout-addresses-step .js-address-form select,
body#checkout #checkout-addresses-step .js-address-form textarea,
body#checkout #checkout-addresses-step form[class*="address"] input,
body#checkout #checkout-addresses-step form[class*="address"] select,
body#checkout #checkout-addresses-step form[class*="address"] textarea {
  color: #111111 !important;
}

body#checkout #checkout-addresses-step .js-address-form .form-control::placeholder,
body#checkout #checkout-addresses-step .js-address-form input::placeholder,
body#checkout #checkout-addresses-step .js-address-form textarea::placeholder,
body#checkout #checkout-addresses-step form[class*="address"] .form-control::placeholder,
body#checkout #checkout-addresses-step form[class*="address"] input::placeholder,
body#checkout #checkout-addresses-step form[class*="address"] textarea::placeholder {
  color: #7b8792 !important;
  opacity: 1 !important;
}


/* v10.86 - checkout más ancho y CP + población en la misma línea */
@media (min-width: 1200px) {
  body#checkout .cart-grid-body,
  body#checkout #content .cart-grid-body,
  body#checkout .checkout-grid .cart-grid-body {
    flex: 0 0 76% !important;
    max-width: 76% !important;
    width: 76% !important;
  }
  body#checkout .cart-grid-right,
  body#checkout #content .cart-grid-right,
  body#checkout .checkout-grid .cart-grid-right,
  body#checkout #js-checkout-summary {
    flex: 0 0 24% !important;
    max-width: 24% !important;
    width: 24% !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  body#checkout .cart-grid-body,
  body#checkout #content .cart-grid-body,
  body#checkout .checkout-grid .cart-grid-body {
    flex: 0 0 72% !important;
    max-width: 72% !important;
    width: 72% !important;
  }
  body#checkout .cart-grid-right,
  body#checkout #content .cart-grid-right,
  body#checkout .checkout-grid .cart-grid-right,
  body#checkout #js-checkout-summary {
    flex: 0 0 28% !important;
    max-width: 28% !important;
    width: 28% !important;
  }
}

body#checkout .adadp-postcode-place-wrap {
  display: grid !important;
  grid-template-columns: minmax(320px, 1fr) minmax(320px, 1fr) !important;
  gap: 18px !important;
  align-items: start !important;
}

body#checkout .adadp-postcode-place-wrap .adadp-postcode-row,
body#checkout .adadp-postcode-place-wrap .adadp-spain-place-box {
  margin: 0 !important;
  width: 100% !important;
}

body#checkout .adadp-postcode-place-wrap .adadp-postcode-row .adadp-postcode-help,
body#checkout .adadp-postcode-place-wrap .adadp-postcode-row .form-control-comment {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-top: 6px !important;
}

body#checkout .adadp-postcode-place-wrap .adadp-spain-place-box {
  padding: 12px 14px !important;
  margin-top: 0 !important;
}

body#checkout .adadp-postcode-place-wrap .adadp-spain-place-box .adadp-province-field {
  margin-top: 12px !important;
}

body#checkout .cart-grid-right,
body#checkout #js-checkout-summary {
  font-size: 15px !important;
  line-height: 1.4 !important;
}

@media (max-width: 991px) {
  body#checkout .adadp-postcode-place-wrap {
    grid-template-columns: 1fr !important;
  }
}


/* v10.87 - corrige ancho lateral y agrupa Empresa + NIF/CIF/VAT */
@media (min-width: 1200px) {
  body#checkout .cart-grid-body,
  body#checkout #content .cart-grid-body,
  body#checkout .checkout-grid .cart-grid-body {
    flex: 0 0 70% !important;
    max-width: 70% !important;
    width: 70% !important;
  }
  body#checkout .cart-grid-right,
  body#checkout #content .cart-grid-right,
  body#checkout .checkout-grid .cart-grid-right {
    flex: 0 0 30% !important;
    max-width: 30% !important;
    width: 30% !important;
  }
  body#checkout #js-checkout-summary,
  body#checkout .cart-grid-right #js-checkout-summary,
  body#checkout .cart-grid-right .card,
  body#checkout .cart-grid-right .cart-summary {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  body#checkout .cart-grid-body,
  body#checkout #content .cart-grid-body,
  body#checkout .checkout-grid .cart-grid-body {
    flex: 0 0 68% !important;
    max-width: 68% !important;
    width: 68% !important;
  }
  body#checkout .cart-grid-right,
  body#checkout #content .cart-grid-right,
  body#checkout .checkout-grid .cart-grid-right {
    flex: 0 0 32% !important;
    max-width: 32% !important;
    width: 32% !important;
  }
  body#checkout #js-checkout-summary,
  body#checkout .cart-grid-right #js-checkout-summary {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
}

body#checkout .adadp-company-tax-wrap {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 18px !important;
  align-items: start !important;
  margin-bottom: 17px !important;
}

body#checkout .adadp-company-tax-wrap > .form-group,
body#checkout .adadp-company-tax-wrap > .row {
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

body#checkout .adadp-company-tax-wrap .form-control-label,
body#checkout .adadp-company-tax-wrap label {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  text-align: left !important;
  padding: 0 0 6px !important;
}

body#checkout .adadp-company-tax-wrap .col-md-6,
body#checkout .adadp-company-tax-wrap .col-md-3,
body#checkout .adadp-company-tax-wrap [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body#checkout .adadp-company-tax-wrap .form-control-comment {
  display: block !important;
  margin-top: 5px !important;
  text-align: left !important;
  color: #7b8792 !important;
}

body#checkout .cart-grid-right .card,
body#checkout .cart-grid-right .block-reassurance-item,
body#checkout .cart-grid-right .cart-summary {
  overflow-wrap: normal !important;
  word-break: normal !important;
}

@media (max-width: 767px) {
  body#checkout .adadp-company-tax-wrap {
    grid-template-columns: 1fr !important;
  }
}


/* v10.88 - Nombre + Apellidos en la misma línea y ajuste fino del formulario */
body#checkout .adadp-name-surname-wrap {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 18px !important;
  align-items: start !important;
  margin-bottom: 17px !important;
}

body#checkout .adadp-name-surname-wrap > .form-group,
body#checkout .adadp-name-surname-wrap > .row,
body#checkout .adadp-name-surname-wrap > [class*="form-group"] {
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

body#checkout .adadp-name-surname-wrap .form-control-label,
body#checkout .adadp-name-surname-wrap label,
body#checkout .adadp-name-surname-wrap .col-form-label {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  text-align: left !important;
  padding: 0 0 6px !important;
}

body#checkout .adadp-name-surname-wrap .col-md-6,
body#checkout .adadp-name-surname-wrap .col-md-3,
body#checkout .adadp-name-surname-wrap [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body#checkout .adadp-name-surname-wrap input.form-control,
body#checkout .adadp-name-surname-wrap .form-control {
  width: 100% !important;
}

/* pequeños ajustes de alineación */
body#checkout .adadp-company-tax-wrap,
body#checkout .adadp-postcode-place-wrap,
body#checkout .adadp-name-surname-wrap {
  max-width: 100% !important;
}

@media (max-width: 767px) {
  body#checkout .adadp-name-surname-wrap {
    grid-template-columns: 1fr !important;
  }
}


/* v10.89 - dirección más limpia, teléfono más arriba y ajuste fino de CP/Población */
body#checkout .adadp-address1-row,
body#checkout .adadp-postcode-row {
  display: grid !important;
  grid-template-columns: 1fr !important;
  align-items: start !important;
}

body#checkout .adadp-address1-row > .form-control-label,
body#checkout .adadp-address1-row > label,
body#checkout .adadp-address1-row .col-form-label,
body#checkout .adadp-postcode-row > .form-control-label,
body#checkout .adadp-postcode-row > label,
body#checkout .adadp-postcode-row .col-form-label {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  text-align: left !important;
  padding: 0 0 6px !important;
}

body#checkout .adadp-address1-row .col-md-6,
body#checkout .adadp-address1-row .col-md-3,
body#checkout .adadp-address1-row [class*="col-"],
body#checkout .adadp-postcode-row .col-md-6,
body#checkout .adadp-postcode-row .col-md-3,
body#checkout .adadp-postcode-row [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body#checkout .adadp-address1-row .form-control,
body#checkout .adadp-address1-row input {
  width: 100% !important;
}

body#checkout .adadp-address1-row .adadp-street-help,
body#checkout .adadp-address1-row .form-control-comment {
  display: none !important;
}

body#checkout .adadp-postcode-place-wrap {
  grid-template-columns: minmax(210px, 0.75fr) minmax(380px, 1.25fr) !important;
  gap: 22px !important;
  align-items: start !important;
}

body#checkout .adadp-postcode-row .adadp-postcode-help,
body#checkout .adadp-postcode-row .form-control-comment {
  color: #5f7182 !important;
  font-size: 13px !important;
  line-height: 1.3 !important;
  margin-top: 6px !important;
}

body#checkout .adadp-postcode-row .form-control,
body#checkout .adadp-postcode-row input {
  max-width: 220px !important;
}

body#checkout .adadp-spain-place-box {
  margin-top: 0 !important;
  padding: 14px 16px !important;
}

body#checkout .adadp-spain-place-box .adadp-place-field,
body#checkout .adadp-spain-place-box .adadp-province-field {
  margin: 0 !important;
}

body#checkout .adadp-spain-place-box .adadp-place-status {
  margin-top: 2px !important;
}

@media (max-width: 991px) {
  body#checkout .adadp-postcode-place-wrap {
    grid-template-columns: 1fr !important;
  }
  body#checkout .adadp-postcode-row .form-control,
  body#checkout .adadp-postcode-row input {
    max-width: 100% !important;
  }
}


/* v10.90 - menos campos visibles y texto fiscal más claro */
body#checkout .adadp-company-tax-wrap.adadp-single-col {
  grid-template-columns: 1fr !important;
}

body#checkout .adadp-company-tax-wrap.adadp-single-col > .adadp-company-row {
  max-width: 100% !important;
}

body#checkout .adadp-company-tax-wrap.adadp-single-col > .adadp-tax-row {
  display: none !important;
}

body#checkout .adadp-dni-row .form-control-comment {
  color: #6d7a86 !important;
  font-size: 13px !important;
}

body#checkout .adadp-dni-row .adadp-address-help {
  display: none !important;
}


/* v10.91 - empresa opcional mediante selector claro */
body#checkout .adadp-company-toggle {
  margin: 2px 0 16px !important;
}

body#checkout .adadp-company-toggle-label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 9px !important;
  padding: 10px 14px !important;
  border: 1px solid #dce8f3 !important;
  border-radius: 8px !important;
  background: #f8fbfe !important;
  color: #0B4F8A !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  margin: 0 !important;
}

body#checkout .adadp-company-toggle-label input[type="checkbox"] {
  width: 20px !important;
  height: 20px !important;
  min-height: 20px !important;
  margin: 0 !important;
  cursor: pointer !important;
  accent-color: #0B4F8A;
}

body#checkout .adadp-company-toggle-label strong {
  font-weight: 600 !important;
  color: #44576a !important;
}

body#checkout .adadp-company-toggle.is-active .adadp-company-toggle-label {
  border-color: #8ab9df !important;
  background: #f2f8fd !important;
}

body#checkout .adadp-company-tax-wrap {
  margin-top: 0 !important;
}


/* v10.92 - formulario más compacto: Teléfono + DNI y empresa realmente oculta */
body#checkout .adadp-company-tax-wrap.adadp-company-hidden {
  display: none !important;
}

body#checkout .adadp-company-toggle {
  margin: 2px 0 16px !important;
}
body#checkout .adadp-company-toggle-label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 9px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #0B4F8A !important;
  font-weight: 700 !important;
  cursor: pointer !important;
}
body#checkout .adadp-company-toggle-label input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  margin: 0 !important;
}
body#checkout .adadp-company-toggle.is-active .adadp-company-toggle-label {
  background: transparent !important;
  border-color: transparent !important;
}

body#checkout .adadp-phone-dni-wrap {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 18px !important;
  align-items: start !important;
  margin-bottom: 17px !important;
}
body#checkout .adadp-phone-dni-wrap > .form-group,
body#checkout .adadp-phone-dni-wrap > .row {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}
body#checkout .adadp-phone-dni-wrap .form-control-label,
body#checkout .adadp-phone-dni-wrap label {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  text-align: left !important;
  padding: 0 0 6px !important;
}
body#checkout .adadp-phone-dni-wrap [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body#checkout .adadp-phone-dni-wrap .form-control-comment {
  display: block !important;
  margin-top: 5px !important;
  font-size: 13px !important;
  color: #6d7a86 !important;
}
body#checkout .adadp-phone-dni-wrap .adadp-address-help {
  display: none !important;
}

@media (max-width: 767px) {
  body#checkout .adadp-phone-dni-wrap {
    grid-template-columns: 1fr !important;
  }
}


/* v10.93 - País + DNI en la misma línea y paso 2 con el mismo lenguaje visual */
body#checkout #checkout-addresses-step {
  background: #ffffff !important;
  border: 1px solid #dce8f3 !important;
  border-radius: 14px !important;
  box-shadow: 0 4px 18px rgba(11, 79, 138, .06) !important;
  padding: 10px 12px 16px !important;
}

body#checkout #checkout-addresses-step .content > p,
body#checkout #checkout-addresses-step .js-address-form > p:first-child {
  background: #f8fbfe !important;
  border: 1px solid #dce8f3 !important;
  border-left: 4px solid #0B4F8A !important;
  border-radius: 8px !important;
  padding: 12px 14px !important;
  color: #4f6375 !important;
  line-height: 1.4 !important;
}

body#checkout .adadp-country-dni-wrap {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 18px !important;
  align-items: start !important;
  margin-bottom: 17px !important;
  max-width: 100% !important;
}

body#checkout .adadp-country-dni-wrap.adadp-single-col {
  grid-template-columns: 1fr !important;
}

body#checkout .adadp-country-dni-wrap > .form-group,
body#checkout .adadp-country-dni-wrap > .row,
body#checkout .adadp-country-dni-wrap > [class*="form-group"] {
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

body#checkout .adadp-country-dni-wrap .form-control-label,
body#checkout .adadp-country-dni-wrap label,
body#checkout .adadp-country-dni-wrap .col-form-label {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  text-align: left !important;
  padding: 0 0 6px !important;
}

body#checkout .adadp-country-dni-wrap .col-md-6,
body#checkout .adadp-country-dni-wrap .col-md-3,
body#checkout .adadp-country-dni-wrap [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body#checkout .adadp-country-dni-wrap .form-control-comment,
body#checkout .adadp-country-dni-wrap .adadp-address-help {
  display: block !important;
  margin-top: 5px !important;
  font-size: 13px !important;
  color: #6d7a86 !important;
}

body#checkout .adadp-country-dni-wrap .adadp-address-help {
  display: none !important;
}

body#checkout #checkout-addresses-step .js-address-form {
  border-color: #d8e6f2 !important;
}

body#checkout #checkout-addresses-step .step-title,
body#checkout #checkout-addresses-step .step-title .step-title-label {
  color: #0B4F8A !important;
}

body#checkout #checkout-addresses-step .step-title .step-number {
  background: #19c15f !important;
  border-color: #19c15f !important;
}

body#checkout #checkout-addresses-step .btn-primary,
body#checkout #checkout-addresses-step .continue,
body#checkout #checkout-addresses-step button[type="submit"] {
  border-radius: 8px !important;
}

@media (max-width: 767px) {
  body#checkout .adadp-country-dni-wrap {
    grid-template-columns: 1fr !important;
  }
}


/* v10.94 - nombre/apellidos proporcionados, teléfono junto a empresa, CP compacto y prefijo internacional */
body#checkout .adadp-name-surname-wrap {
  grid-template-columns: 0.82fr 1.18fr !important;
}

body#checkout .adadp-company-phone-wrap {
  display: grid !important;
  grid-template-columns: minmax(250px, .85fr) minmax(320px, 1.15fr) !important;
  gap: 22px !important;
  align-items: end !important;
  margin-bottom: 17px !important;
}

body#checkout .adadp-company-phone-wrap .adadp-company-toggle {
  margin: 0 0 10px !important;
  align-self: end !important;
}

body#checkout .adadp-company-phone-wrap .adadp-phone-row,
body#checkout .adadp-company-phone-wrap .form-group,
body#checkout .adadp-company-phone-wrap .row {
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

body#checkout .adadp-company-phone-wrap .adadp-phone-row .form-control-label,
body#checkout .adadp-company-phone-wrap .adadp-phone-row label {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  padding: 0 0 6px !important;
  text-align: left !important;
}

body#checkout .adadp-company-phone-wrap .adadp-phone-row [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body#checkout .adadp-phone-input-wrap {
  display: flex !important;
  align-items: stretch !important;
  width: 100% !important;
}

body#checkout .adadp-phone-prefix {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 62px !important;
  padding: 0 11px !important;
  border: 1px solid #cfdbe7 !important;
  border-right: 0 !important;
  border-radius: 6px 0 0 6px !important;
  background: #f3f7fb !important;
  color: #0B4F8A !important;
  font-weight: 700 !important;
  font-size: 15px !important;
}

body#checkout .adadp-phone-input-wrap input.form-control,
body#checkout .adadp-phone-input-wrap input {
  border-radius: 0 6px 6px 0 !important;
  width: 100% !important;
}

body#checkout .adadp-postcode-row .form-control,
body#checkout .adadp-postcode-row input {
  max-width: 165px !important;
}

body#checkout .adadp-hide-address-cancel {
  display: none !important;
}

@media (max-width: 767px) {
  body#checkout .adadp-name-surname-wrap,
  body#checkout .adadp-company-phone-wrap {
    grid-template-columns: 1fr !important;
  }
  body#checkout .adadp-company-phone-wrap {
    gap: 12px !important;
  }
}

/* v10.95 - compactación vertical del formulario de direcciones */
body#checkout #checkout-addresses-step .js-address-form,
body#checkout #checkout-addresses-step form[class*="address"] {
  padding-top: 18px !important;
  padding-bottom: 18px !important;
}

body#checkout .adadp-country-dni-wrap,
body#checkout .adadp-name-surname-wrap,
body#checkout .adadp-company-phone-wrap,
body#checkout .adadp-company-tax-wrap,
body#checkout .adadp-postcode-place-wrap {
  margin-bottom: 10px !important;
}

body#checkout #checkout-addresses-step .js-address-form .form-group,
body#checkout #checkout-addresses-step form[class*="address"] .form-group {
  margin-bottom: 10px !important;
}

body#checkout .adadp-country-dni-wrap,
body#checkout .adadp-name-surname-wrap,
body#checkout .adadp-company-phone-wrap,
body#checkout .adadp-company-tax-wrap {
  row-gap: 10px !important;
}

body#checkout .adadp-company-phone-wrap {
  gap: 16px !important;
}

body#checkout .adadp-country-dni-wrap .form-control-comment,
body#checkout .adadp-phone-dni-wrap .form-control-comment,
body#checkout .adadp-company-tax-wrap .form-control-comment,
body#checkout #checkout-addresses-step .form-control-comment {
  margin-top: 3px !important;
  line-height: 1.25 !important;
}

body#checkout .adadp-company-toggle {
  margin: 0 0 8px !important;
}

body#checkout .adadp-address1-row,
body#checkout .adadp-address2-row {
  margin-bottom: 10px !important;
}

body#checkout .adadp-postcode-place-wrap {
  gap: 16px !important;
}

body#checkout .adadp-spain-place-box {
  padding: 12px 14px !important;
}

@media (max-width: 767px) {
  body#checkout .adadp-country-dni-wrap,
  body#checkout .adadp-name-surname-wrap,
  body#checkout .adadp-company-phone-wrap,
  body#checkout .adadp-company-tax-wrap,
  body#checkout .adadp-postcode-place-wrap {
    margin-bottom: 12px !important;
  }
}


/* =========================================================
   ADADP 10.96 - Rediseño visual paso 1 (Datos personales)
   siguiendo el estilo del paso 2 (Direcciones)
   ========================================================= */
body#checkout #checkout-personal-information-step {
  background: #ffffff !important;
  border: 1px solid #dce8f3 !important;
  border-radius: 14px !important;
  box-shadow: 0 4px 18px rgba(11, 79, 138, .06) !important;
  padding: 10px 12px 16px !important;
}

body#checkout #checkout-personal-information-step .content,
body#checkout #checkout-personal-information-step .js-customer-form,
body#checkout #checkout-personal-information-step form {
  background: transparent !important;
}

body#checkout #checkout-personal-information-step .js-customer-form,
body#checkout #checkout-personal-information-step form {
  border: 1px solid #d8e6f2 !important;
  border-radius: 14px !important;
  background: #fff !important;
  padding: 22px 26px !important;
}

body#checkout #checkout-personal-information-step .step-title,
body#checkout #checkout-personal-information-step .step-title .step-title-label {
  color: #0B4F8A !important;
}

body#checkout #checkout-personal-information-step .step-title .step-number {
  background: #19c15f !important;
  border-color: #19c15f !important;
}

body#checkout #checkout-personal-information-step .form-control-label,
body#checkout #checkout-personal-information-step label:not(.custom-checkbox label) {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}

body#checkout #checkout-personal-information-step .form-control,
body#checkout #checkout-personal-information-step input[type="text"],
body#checkout #checkout-personal-information-step input[type="email"],
body#checkout #checkout-personal-information-step input[type="password"],
body#checkout #checkout-personal-information-step select {
  border: 1px solid #c7d9ea !important;
  border-radius: 8px !important;
  min-height: 48px !important;
}

body#checkout #checkout-personal-information-step .form-control:focus,
body#checkout #checkout-personal-information-step input:focus,
body#checkout #checkout-personal-information-step select:focus {
  border-color: #1ea7e1 !important;
  box-shadow: 0 0 0 2px rgba(30,167,225,.10) !important;
}

body#checkout #checkout-personal-information-step .form-group {
  margin-bottom: 12px !important;
}

body#checkout #checkout-personal-information-step .form-control-comment,
body#checkout #checkout-personal-information-step .help-block,
body#checkout #checkout-personal-information-step .form-text {
  margin-top: 4px !important;
  color: #6d7a86 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

body#checkout #checkout-personal-information-step .adadp-personal-name-wrap {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 18px !important;
  align-items: start !important;
  margin-bottom: 10px !important;
}

body#checkout #checkout-personal-information-step .adadp-personal-name-wrap > .form-group,
body#checkout #checkout-personal-information-step .adadp-personal-name-wrap > .row,
body#checkout #checkout-personal-information-step .adadp-personal-name-wrap > [class*="form-group"] {
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

body#checkout #checkout-personal-information-step .adadp-personal-name-wrap .col-md-6,
body#checkout #checkout-personal-information-step .adadp-personal-name-wrap .col-md-3,
body#checkout #checkout-personal-information-step .adadp-personal-name-wrap [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body#checkout #checkout-personal-information-step .adadp-personal-name-wrap .form-control-label,
body#checkout #checkout-personal-information-step .adadp-personal-name-wrap label {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  text-align: left !important;
  padding: 0 0 6px !important;
}

body#checkout #checkout-personal-information-step .adadp-personal-login-row,
body#checkout #checkout-personal-information-step .nav-inline {
  background: #f8fbfe !important;
  border: 1px solid #dce8f3 !important;
  border-left: 4px solid #0B4F8A !important;
  border-radius: 8px !important;
  padding: 12px 14px !important;
  margin-bottom: 16px !important;
}

body#checkout #checkout-personal-information-step .adadp-personal-login-row a,
body#checkout #checkout-personal-information-step .nav-inline a {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}

body#checkout #checkout-personal-information-step .adadp-password-heading {
  background: #f8fbfe !important;
  border: 1px solid #dce8f3 !important;
  border-radius: 8px !important;
  padding: 10px 12px !important;
  margin: 10px 0 14px !important;
  color: #4f6375 !important;
}

body#checkout #checkout-personal-information-step .input-group-btn .btn,
body#checkout #checkout-personal-information-step .input-group-append .btn,
body#checkout #checkout-personal-information-step .btn-secondary {
  border-radius: 8px !important;
}

body#checkout #checkout-personal-information-step .adadp-legal-row {
  margin-top: 10px !important;
  margin-bottom: 12px !important;
}

body#checkout #checkout-personal-information-step .adadp-checkout-action-row {
  margin-top: 18px !important;
}

@media (max-width: 767px) {
  body#checkout #checkout-personal-information-step .js-customer-form,
  body#checkout #checkout-personal-information-step form {
    padding: 18px 16px !important;
  }

  body#checkout #checkout-personal-information-step .adadp-personal-name-wrap {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
}


/* v10.97 - Nombre y apellidos compactos, sin textos de ayuda */
body#checkout #checkout-personal-information-step .adadp-personal-name-wrap {
  display: grid !important;
  grid-template-columns: minmax(220px, 0.9fr) minmax(260px, 1.1fr) !important;
  gap: 16px !important;
  align-items: start !important;
}

body#checkout #checkout-personal-information-step .adadp-personal-firstname-row,
body#checkout #checkout-personal-information-step .adadp-personal-lastname-row {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}

body#checkout #checkout-personal-information-step .adadp-personal-firstname-row .form-control-comment,
body#checkout #checkout-personal-information-step .adadp-personal-firstname-row .help-block,
body#checkout #checkout-personal-information-step .adadp-personal-firstname-row .form-text,
body#checkout #checkout-personal-information-step .adadp-personal-lastname-row .form-control-comment,
body#checkout #checkout-personal-information-step .adadp-personal-lastname-row .help-block,
body#checkout #checkout-personal-information-step .adadp-personal-lastname-row .form-text {
  display: none !important;
}

body#checkout #checkout-personal-information-step .adadp-personal-firstname-row .form-control,
body#checkout #checkout-personal-information-step .adadp-personal-lastname-row .form-control,
body#checkout #checkout-personal-information-step .adadp-personal-firstname-row input,
body#checkout #checkout-personal-information-step .adadp-personal-lastname-row input {
  width: 100% !important;
}

@media (max-width: 767px) {
  body#checkout #checkout-personal-information-step .adadp-personal-name-wrap {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   ADADP 10.98 - Tarjeta de dirección más compacta y clara
   ========================================================= */
body#checkout #checkout-addresses-step .addresses,
body#checkout #checkout-addresses-step .delivery-addresses,
body#checkout #checkout-addresses-step .js-addresses {
  gap: 14px !important;
}

body#checkout #checkout-addresses-step article.address-item,
body#checkout #checkout-addresses-step .address-item,
body#checkout #checkout-addresses-step .js-address-item {
  border: 2px solid #cfe3f4 !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  box-shadow: none !important;
  overflow: hidden !important;
  min-height: 0 !important;
}

body#checkout #checkout-addresses-step article.address-item.selected,
body#checkout #checkout-addresses-step article.address-item.js-address-item.selected,
body#checkout #checkout-addresses-step .address-item.selected,
body#checkout #checkout-addresses-step .address-item.-selected {
  border-color: #1ea7e1 !important;
  box-shadow: 0 0 0 2px rgba(30,167,225,.08) !important;
}

body#checkout #checkout-addresses-step article.address-item .custom-radio,
body#checkout #checkout-addresses-step .address-item .custom-radio {
  margin-top: 2px !important;
  margin-right: 10px !important;
}

body#checkout #checkout-addresses-step article.address-item .address,
body#checkout #checkout-addresses-step .address-item .address,
body#checkout #checkout-addresses-step article.address-item .js-address-item-content,
body#checkout #checkout-addresses-step .address-item .js-address-item-content {
  padding: 14px 18px 10px !important;
  line-height: 1.15 !important;
}

body#checkout #checkout-addresses-step article.address-item .address-alias,
body#checkout #checkout-addresses-step .address-item .address-alias,
body#checkout #checkout-addresses-step article.address-item h4,
body#checkout #checkout-addresses-step .address-item h4 {
  color: #0B4F8A !important;
  font-weight: 800 !important;
  font-size: 18px !important;
  margin: 0 0 10px !important;
}

body#checkout #checkout-addresses-step article.address-item .address,
body#checkout #checkout-addresses-step .address-item .address {
  color: #17324d !important;
}

body#checkout #checkout-addresses-step article.address-item br,
body#checkout #checkout-addresses-step .address-item br {
  line-height: 0.9 !important;
}

body#checkout #checkout-addresses-step article.address-item .address-footer,
body#checkout #checkout-addresses-step .address-item .address-footer,
body#checkout #checkout-addresses-step article.address-item footer,
body#checkout #checkout-addresses-step .address-item footer {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  padding: 10px 18px 12px !important;
  border-top: 1px solid #e6eef6 !important;
  background: #fbfdff !important;
  min-height: 0 !important;
}

body#checkout #checkout-addresses-step article.address-item .address-footer a,
body#checkout #checkout-addresses-step .address-item .address-footer a,
body#checkout #checkout-addresses-step article.address-item footer a,
body#checkout #checkout-addresses-step .address-item footer a {
  color: #0B4F8A !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  font-size: 14px !important;
}

body#checkout #checkout-addresses-step article.address-item .address-footer a:last-child,
body#checkout #checkout-addresses-step .address-item .address-footer a:last-child,
body#checkout #checkout-addresses-step article.address-item footer a:last-child,
body#checkout #checkout-addresses-step .address-item footer a:last-child {
  color: #707070 !important;
}

body#checkout #checkout-addresses-step a[data-link-action="add-address"],
body#checkout #checkout-addresses-step .add-address a,
body#checkout #checkout-addresses-step .addresses-footer a,
body#checkout #checkout-addresses-step a.js-address-form,
body#checkout #checkout-addresses-step a[href*="new-address"] {
  color: #0B4F8A !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

body#checkout #checkout-addresses-step .different-invoice-address,
body#checkout #checkout-addresses-step .js-use-different-invoice-address,
body#checkout #checkout-addresses-step a[data-link-action="different-invoice-address"],
body#checkout #checkout-addresses-step .billing-address-toggle {
  color: #0B4F8A !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
}

body#checkout #checkout-addresses-step .different-invoice-address + * {
  margin-top: 8px !important;
}

@media (max-width: 767px) {
  body#checkout #checkout-addresses-step article.address-item .address,
  body#checkout #checkout-addresses-step .address-item .address,
  body#checkout #checkout-addresses-step article.address-item .js-address-item-content,
  body#checkout #checkout-addresses-step .address-item .js-address-item-content {
    padding: 12px 14px 8px !important;
  }
  body#checkout #checkout-addresses-step article.address-item .address-footer,
  body#checkout #checkout-addresses-step .address-item .address-footer,
  body#checkout #checkout-addresses-step article.address-item footer,
  body#checkout #checkout-addresses-step .address-item footer {
    padding: 9px 14px 10px !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
  }
}


/* =========================================================
   ADADP 10.99 - Invitado / cuenta mucho más claro
   ========================================================= */
body#checkout #checkout-personal-information-step .adadp-account-choice {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 14px !important;
  margin: 0 0 18px !important;
}

body#checkout #checkout-personal-information-step .adadp-account-choice-card {
  border: 1px solid #dce8f3 !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  padding: 14px 16px !important;
  cursor: pointer !important;
  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease !important;
}

body#checkout #checkout-personal-information-step .adadp-account-choice-card:hover {
  border-color: #8ab9df !important;
  background: #f8fbfe !important;
}

body#checkout #checkout-personal-information-step .adadp-account-choice-card.is-active {
  border: 2px solid #0B4F8A !important;
  background: #f5f9fd !important;
  box-shadow: 0 0 0 2px rgba(11,79,138,.06) !important;
}

body#checkout #checkout-personal-information-step .adadp-account-choice-title {
  display: block !important;
  color: #0B4F8A !important;
  font-weight: 800 !important;
  font-size: 17px !important;
  margin-bottom: 4px !important;
}

body#checkout #checkout-personal-information-step .adadp-account-choice-text {
  display: block !important;
  color: #5f7182 !important;
  font-size: 13.5px !important;
  line-height: 1.35 !important;
}

body#checkout #checkout-personal-information-step .adadp-account-choice-card.is-secondary .adadp-account-choice-title {
  color: #355f86 !important;
}

body#checkout #checkout-personal-information-step .nav-inline,
body#checkout #checkout-personal-information-step .adadp-personal-login-row {
  display: none !important;
}

@media (max-width: 767px) {
  body#checkout #checkout-personal-information-step .adadp-account-choice {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   ADADP 11.01 - selector invitado/cuenta equilibrado y seguro
   ========================================================= */
body#checkout #checkout-personal-information-step .adadp-account-choice {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 16px !important;
}

body#checkout #checkout-personal-information-step .adadp-account-choice-card {
  min-height: 88px !important;
  padding: 16px 20px !important;
  border: 1px solid #cfe0ef !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  box-shadow: none !important;
  opacity: 1 !important;
  cursor: pointer !important;
}

body#checkout #checkout-personal-information-step .adadp-account-choice-card:hover {
  border-color: #7db4dc !important;
  background: #fbfdff !important;
}

body#checkout #checkout-personal-information-step .adadp-account-choice-card.is-active {
  border-color: #0B4F8A !important;
  background: #f7fbff !important;
  box-shadow: 0 0 0 1px rgba(11,79,138,.08) !important;
}

body#checkout #checkout-personal-information-step .adadp-account-choice-card.is-secondary {
  opacity: 1 !important;
  background: #ffffff !important;
  border-color: #cfe0ef !important;
}

body#checkout #checkout-personal-information-step .adadp-account-choice-title {
  display: block !important;
  color: #0B4F8A !important;
  font-weight: 800 !important;
  font-size: 18px !important;
  margin-bottom: 4px !important;
}

body#checkout #checkout-personal-information-step .adadp-account-choice-text {
  display: block !important;
  color: #5f7182 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
}

body#checkout #checkout-personal-information-step .adadp-account-benefit-copy {
  background: #f8fbfe !important;
  border: 1px solid #dce8f3 !important;
  border-radius: 8px !important;
  padding: 10px 12px !important;
  margin: 10px 0 14px !important;
  color: #4f6375 !important;
  line-height: 1.35 !important;
}

body#checkout #checkout-personal-information-step .adadp-account-benefit-copy strong {
  color: #4f6375 !important;
}

@media (max-width: 767px) {
  body#checkout #checkout-personal-information-step .adadp-account-choice {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   ADADP 11.02 - Selector de cuenta simplificado
   ========================================================= */
body#checkout #checkout-personal-information-step .adadp-account-choice {
  display: none !important;
}

body#checkout #checkout-personal-information-step .adadp-account-mode-panel {
  margin: 0 0 18px !important;
}

body#checkout #checkout-personal-information-step .adadp-account-mode-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 16px !important;
}

body#checkout #checkout-personal-information-step .adadp-account-mode-card {
  width: 100% !important;
  min-height: 94px !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  padding: 16px 18px !important;
  border: 1px solid #cfe0ef !important;
  border-radius: 12px !important;
  background: #fff !important;
  text-align: left !important;
  cursor: pointer !important;
  box-shadow: none !important;
}

body#checkout #checkout-personal-information-step button.adadp-account-mode-card {
  appearance: none !important;
  font-family: inherit !important;
}

body#checkout #checkout-personal-information-step .adadp-account-mode-card:hover {
  border-color: #7db4dc !important;
  background: #fbfdff !important;
}

body#checkout #checkout-personal-information-step .adadp-account-mode-card.is-active {
  border: 2px solid #0B4F8A !important;
  background: #f7fbff !important;
  box-shadow: 0 0 0 1px rgba(11,79,138,.06) !important;
}

body#checkout #checkout-personal-information-step .adadp-mode-title {
  display: block !important;
  color: #0B4F8A !important;
  font-weight: 800 !important;
  font-size: 17px !important;
  line-height: 1.25 !important;
  margin-bottom: 4px !important;
}

body#checkout #checkout-personal-information-step .adadp-mode-title em {
  font-weight: 500 !important;
  color: #657789 !important;
  font-size: 14px !important;
}

body#checkout #checkout-personal-information-step .adadp-mode-text {
  display: block !important;
  color: #5f7182 !important;
  font-size: 13.5px !important;
  line-height: 1.35 !important;
}

body#checkout #checkout-personal-information-step .adadp-mode-check {
  padding-top: 2px !important;
}

body#checkout #checkout-personal-information-step .adadp-create-account-check {
  width: 20px !important;
  height: 20px !important;
  min-height: 20px !important;
  accent-color: #0B4F8A !important;
  cursor: pointer !important;
}

body#checkout #checkout-personal-information-step .adadp-existing-account-btn {
  display: block !important;
  width: 100% !important;
  margin: 12px 0 0 !important;
  padding: 11px 14px !important;
  border: 1px solid #dce8f3 !important;
  border-radius: 9px !important;
  background: #f8fbfe !important;
  color: #4f6375 !important;
  text-align: center !important;
  cursor: pointer !important;
  font-size: 14px !important;
}

body#checkout #checkout-personal-information-step .adadp-existing-account-btn strong {
  color: #0B4F8A !important;
}

body#checkout #checkout-personal-information-step .adadp-existing-account-btn span {
  color: #0B4F8A !important;
  text-decoration: underline !important;
  font-weight: 700 !important;
}

body#checkout #checkout-personal-information-step .adadp-account-mode-panel.is-login .adadp-existing-account-btn {
  border-color: #0B4F8A !important;
  background: #f5f9fd !important;
}

/* El viejo bloque informativo ya no hace falta: la ventaja está arriba. */
body#checkout #checkout-personal-information-step .adadp-account-benefit-copy,
body#checkout #checkout-personal-information-step .adadp-password-heading {
  display: none !important;
}

@media (max-width: 767px) {
  body#checkout #checkout-personal-information-step .adadp-account-mode-grid {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   ADADP 11.06 - Compactar más el formulario de direcciones y alinear teléfono
   ========================================================= */
body#checkout #checkout-addresses-step .js-address-form,
body#checkout #checkout-addresses-step form[class*="address"] {
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}

body#checkout #checkout-addresses-step .js-address-form > p:first-child {
  margin-bottom: 12px !important;
}

body#checkout .adadp-country-dni-wrap,
body#checkout .adadp-name-surname-wrap,
body#checkout .adadp-company-phone-wrap,
body#checkout .adadp-company-tax-wrap,
body#checkout .adadp-postcode-place-wrap,
body#checkout .adadp-address1-row,
body#checkout .adadp-address2-row {
  margin-bottom: 8px !important;
}

body#checkout #checkout-addresses-step .js-address-form .form-group,
body#checkout #checkout-addresses-step form[class*="address"] .form-group {
  margin-bottom: 8px !important;
}

body#checkout .adadp-country-dni-wrap,
body#checkout .adadp-name-surname-wrap,
body#checkout .adadp-company-phone-wrap,
body#checkout .adadp-company-tax-wrap {
  row-gap: 8px !important;
}

body#checkout .adadp-name-surname-wrap {
  gap: 14px 18px !important;
}

body#checkout .adadp-company-phone-wrap {
  grid-template-columns: minmax(260px, 0.92fr) minmax(320px, 1.08fr) !important;
  gap: 10px 18px !important;
  align-items: start !important;
  margin-bottom: 8px !important;
}

body#checkout .adadp-company-phone-wrap .adadp-company-toggle {
  margin: 28px 0 0 !important;
  align-self: start !important;
}

body#checkout .adadp-company-phone-wrap .adadp-company-toggle-label {
  padding: 8px 12px !important;
}

body#checkout .adadp-company-phone-wrap .adadp-phone-row {
  align-self: start !important;
}

body#checkout .adadp-company-phone-wrap .adadp-phone-row .form-control-label,
body#checkout .adadp-company-phone-wrap .adadp-phone-row label {
  margin-bottom: 4px !important;
  padding-bottom: 2px !important;
}

body#checkout .adadp-phone-input-wrap {
  display: flex !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
}

body#checkout .adadp-phone-prefix {
  min-width: 58px !important;
  padding: 0 10px !important;
}

body#checkout .adadp-phone-input-wrap input.form-control,
body#checkout .adadp-phone-input-wrap input {
  min-width: 0 !important;
  flex: 1 1 auto !important;
}

body#checkout .adadp-company-phone-wrap .form-control-comment {
  margin-top: 3px !important;
}

body#checkout .adadp-postcode-place-wrap {
  grid-template-columns: minmax(190px, 0.7fr) minmax(360px, 1.3fr) !important;
  gap: 14px !important;
}

body#checkout .adadp-postcode-row .form-control,
body#checkout .adadp-postcode-row input {
  max-width: 150px !important;
}

@media (max-width: 991px) {
  body#checkout .adadp-company-phone-wrap,
  body#checkout .adadp-postcode-place-wrap {
    grid-template-columns: 1fr !important;
  }

  body#checkout .adadp-company-phone-wrap .adadp-company-toggle {
    margin-top: 4px !important;
  }
}


/* =========================================================
   ADADP 11.07 - Empresa arriba y España primera en País
   ========================================================= */
body#checkout #checkout-addresses-step .adadp-company-toggle-top {
  margin: 0 0 10px !important;
  width: 100% !important;
}

body#checkout #checkout-addresses-step .adadp-company-toggle-top .adadp-company-toggle-label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 9px !important;
  padding: 7px 10px !important;
  border: 0 !important;
  background: transparent !important;
}

/* Al sacar el teléfono del bloque empresa, vuelve a una fila limpia */
body#checkout #checkout-addresses-step .adadp-phone-row {
  margin-bottom: 8px !important;
}


/* =========================================================
   ADADP 11.08 - Empresa/CIF justo debajo del selector empresa
   ========================================================= */
body#checkout .adadp-company-toggle-top {
  margin-bottom: 8px !important;
}

body#checkout .adadp-company-tax-wrap.adadp-company-tax-top {
  margin: 0 0 10px !important;
  gap: 18px !important;
}

body#checkout .adadp-company-tax-wrap.adadp-company-tax-top.adadp-company-hidden {
  display: none !important;
}

body#checkout .adadp-company-tax-wrap.adadp-company-tax-top .form-group,
body#checkout .adadp-company-tax-wrap.adadp-company-tax-top .row {
  margin-bottom: 0 !important;
}

@media (max-width: 767px) {
  body#checkout .adadp-company-tax-wrap.adadp-company-tax-top {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
}


/* v11.13 - ocultar "Opcional" en Empresa y CIF/VAT cuando se compra como empresa */
body#checkout #checkout-addresses-step .adadp-company-tax-top .form-control-comment,
body#checkout #checkout-addresses-step .adadp-company-tax-wrap .form-control-comment {
  display: none !important;
}


/* =========================================================
   ADADP 11.14 - Checkbox facturación más grande y alineado
   ========================================================= */
body#checkout #checkout-addresses-step .adadp-billing-same-row {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 14px 0 10px !important;
  padding: 0 !important;
}

body#checkout #checkout-addresses-step .adadp-billing-same-row input[type="checkbox"] {
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  margin: 0 !important;
  accent-color: #0B4F8A !important;
  cursor: pointer !important;
}

body#checkout #checkout-addresses-step .adadp-billing-same-row label,
body#checkout #checkout-addresses-step .adadp-billing-same-row .custom-checkbox label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
  color: #0B4F8A !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  cursor: pointer !important;
}

body#checkout #checkout-addresses-step .adadp-billing-same-row .custom-checkbox {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
}

@media (max-width: 767px) {
  body#checkout #checkout-addresses-step .adadp-billing-same-row {
    align-items: flex-start !important;
  }

  body#checkout #checkout-addresses-step .adadp-billing-same-row label,
  body#checkout #checkout-addresses-step .adadp-billing-same-row .custom-checkbox label {
    font-size: 15px !important;
  }
}


/* =========================================================
   ADADP 11.15 - Ayudas claras para entrega y facturación
   ========================================================= */
body#checkout #checkout-addresses-step .adadp-delivery-address-intro {
  color: #4f6375 !important;
  font-size: 17px !important;
  line-height: 1.4 !important;
  margin: 0 0 14px !important;
}

body#checkout #checkout-addresses-step .adadp-billing-same-row {
  flex-wrap: wrap !important;
}

body#checkout #checkout-addresses-step .adadp-billing-same-row .adadp-billing-label-text {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}

body#checkout #checkout-addresses-step .adadp-billing-help {
  flex: 0 0 100% !important;
  margin: 4px 0 0 34px !important;
  color: #6d7a86 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  max-width: 620px !important;
}

@media (max-width: 767px) {
  body#checkout #checkout-addresses-step .adadp-billing-help {
    margin-left: 0 !important;
  }
}


/* ADADP 11.16 - transición suave del bloque de facturación */
body#checkout #checkout-addresses-step .adadp-billing-address-container {
  margin-top: 12px !important;
}


/* ADADP 11.17 - mantener estilo normal para transporte 0,00 € */
[data-adadp-zero-shipping="1"] {
  white-space: nowrap !important;
}


/* ADADP 11.18 - Protección visual del formulario principal de entrega */
body#checkout #checkout-addresses-step .js-address-form:first-of-type {
  visibility: visible;
}

/* ADADP 11.19 - corrección JS: el texto introductorio ya no puede borrar el formulario. */


/* ADADP 11.20 - ocultar "Opcional" del teléfono en cualquier país */
body#checkout #checkout-addresses-step [data-adadp-phone-optional-hidden="1"] {
  display: none !important;
}


/* =========================================================
   ADADP 11.21 - Formulario internacional uniforme
   ========================================================= */
body#checkout #checkout-addresses-step .adadp-universal-postcode-row,
body#checkout #checkout-addresses-step .adadp-universal-city-row,
body#checkout #checkout-addresses-step .adadp-universal-state-row {
  margin-top: 10px !important;
}

body#checkout #checkout-addresses-step .adadp-intl-postcode-status {
  margin-top: 7px !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  color: #6d7a86 !important;
}

body#checkout #checkout-addresses-step .adadp-intl-postcode-status.is-ok {
  color: #1c7a38 !important;
  font-weight: 600 !important;
}

body#checkout #checkout-addresses-step [data-adadp-phone-optional-hidden="1"] {
  display: none !important;
}


/* =========================================================
   ADADP 11.22 - Pantalla de confirmación de pedido
   Mejora de jerarquía visual sin alterar la lógica.
   ========================================================= */

body#order-confirmation #content,
body#order-confirmation .page-content {
  background: #fff !important;
}

/* Títulos principales */
body#order-confirmation h1,
body#order-confirmation h2,
body#order-confirmation h3,
body#order-confirmation h4,
body#order-confirmation .h1,
body#order-confirmation .h2,
body#order-confirmation .h3,
body#order-confirmation .h4 {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}

/* Bloques principales */
body#order-confirmation .card,
body#order-confirmation .box,
body#order-confirmation .order-confirmation-table,
body#order-confirmation .order-confirmation-details,
body#order-confirmation .payment-return {
  border: 1px solid #d9e8f5 !important;
  border-radius: 14px !important;
  box-shadow: 0 6px 18px rgba(11, 79, 138, .06) !important;
  background: #fff !important;
}

/* Separación y respiración */
body#order-confirmation .order-confirmation-table,
body#order-confirmation .order-confirmation-details,
body#order-confirmation .payment-return {
  margin-top: 18px !important;
}

/* Tabla de productos */
body#order-confirmation .order-confirmation-table {
  overflow: hidden !important;
}

body#order-confirmation .order-confirmation-table img {
  border-radius: 8px !important;
}

/* Totales con jerarquía */
body#order-confirmation .order-confirmation-table .total,
body#order-confirmation tr.total,
body#order-confirmation .cart-summary-line.cart-total {
  background: #f1f7fc !important;
  color: #0B4F8A !important;
  font-weight: 700 !important;
}

body#order-confirmation .order-confirmation-table .total td,
body#order-confirmation tr.total td {
  font-size: 17px !important;
}

/* Detalles del pedido */
body#order-confirmation .order-confirmation-details {
  padding: 18px 20px !important;
}

body#order-confirmation .order-confirmation-details p,
body#order-confirmation .details p {
  line-height: 1.5 !important;
}

/* Transferencia bancaria */
body#order-confirmation .payment-return {
  padding: 20px !important;
}

body#order-confirmation .payment-return > p:first-of-type {
  background: #f6faff !important;
  border-left: 4px solid #0B4F8A !important;
  padding: 12px 14px !important;
  border-radius: 8px !important;
  color: #415466 !important;
  margin-bottom: 16px !important;
}

/* Tabla bancaria */
body#order-confirmation .payment-return table,
body#order-confirmation .payment-return .table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 6px !important;
  margin: 0 !important;
}

body#order-confirmation .payment-return table td,
body#order-confirmation .payment-return table th,
body#order-confirmation .payment-return .table td,
body#order-confirmation .payment-return .table th {
  border: 0 !important;
  padding: 11px 14px !important;
  vertical-align: middle !important;
}

body#order-confirmation .payment-return table tr td:first-child,
body#order-confirmation .payment-return .table tr td:first-child {
  width: 42% !important;
  background: #f3f7fa !important;
  color: #25384a !important;
  font-weight: 700 !important;
  border-radius: 8px 0 0 8px !important;
}

body#order-confirmation .payment-return table tr td:last-child,
body#order-confirmation .payment-return .table tr td:last-child {
  background: #fbfdff !important;
  color: #0B4F8A !important;
  font-weight: 600 !important;
  border: 1px solid #edf3f8 !important;
  border-left: 0 !important;
  border-radius: 0 8px 8px 0 !important;
  overflow-wrap: anywhere !important;
}

body#order-confirmation .payment-return table tr:first-child td:last-child,
body#order-confirmation .payment-return .table tr:first-child td:last-child {
  font-size: 18px !important;
  font-weight: 700 !important;
}

/* Enlaces */
body#order-confirmation a {
  color: #0B4F8A !important;
}

/* Móvil */
@media (max-width: 767px) {
  body#order-confirmation .payment-return,
  body#order-confirmation .order-confirmation-details {
    padding: 14px !important;
  }

  body#order-confirmation .payment-return table tr,
  body#order-confirmation .payment-return .table tr {
    display: block !important;
    margin-bottom: 10px !important;
  }

  body#order-confirmation .payment-return table td,
  body#order-confirmation .payment-return .table td {
    display: block !important;
    width: 100% !important;
  }

  body#order-confirmation .payment-return table tr td:first-child,
  body#order-confirmation .payment-return .table tr td:first-child {
    width: 100% !important;
    border-radius: 8px 8px 0 0 !important;
  }

  body#order-confirmation .payment-return table tr td:last-child,
  body#order-confirmation .payment-return .table tr td:last-child {
    border-left: 1px solid #edf3f8 !important;
    border-radius: 0 0 8px 8px !important;
  }
}


/* =========================================================
   ADADP 11.23 - Pago por transferencia
   Dar más visibilidad al enlace "Más información"
   ========================================================= */
body#checkout #checkout-payment-step .payment-options .payment-option,
body#checkout #checkout-payment-step .payment-options .payment-option + div,
body#checkout #checkout-payment-step .payment-options .payment-option ~ .additional-information,
body#checkout #checkout-payment-step .payment-options .js-additional-information,
body#checkout #checkout-payment-step .payment-options .payment-option .payment-option-description {
  color: #667481 !important;
}

body#checkout #checkout-payment-step .payment-options .js-additional-information a,
body#checkout #checkout-payment-step .payment-options .additional-information a,
body#checkout #checkout-payment-step .payment-options [id*="additional-information"] a {
  color: #0B4F8A !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}

body#checkout #checkout-payment-step .payment-options .js-additional-information a:hover,
body#checkout #checkout-payment-step .payment-options .additional-information a:hover,
body#checkout #checkout-payment-step .payment-options [id*="additional-information"] a:hover {
  color: #083a67 !important;
}


/* =========================================================
   ADADP 11.24 - Unificar azules del paso de pago
   - mismo azul para enlaces y acciones
   - radios/checkbox en azul corporativo
   ========================================================= */
body#checkout #checkout-payment-step input[type="radio"],
body#checkout #checkout-payment-step input[type="checkbox"] {
  accent-color: #0B4F8A !important;
}

body#checkout #checkout-payment-step .payment-options label,
body#checkout #checkout-payment-step .payment-options .payment-option label,
body#checkout #checkout-payment-step .payment-options .payment-option,
body#checkout #checkout-payment-step .payment-options .payment-option label span,
body#checkout #checkout-payment-step .payment-options .js-payment-option-form label {
  color: #1f2b37 !important;
}

body#checkout #checkout-payment-step .payment-options .js-additional-information a,
body#checkout #checkout-payment-step .payment-options .additional-information a,
body#checkout #checkout-payment-step .payment-options [id*="additional-information"] a,
body#checkout #checkout-payment-step .condition-label a,
body#checkout #checkout-payment-step [for*="conditions_to_approve"] a,
body#checkout #conditions-to-approve a {
  color: #0B4F8A !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}

body#checkout #checkout-payment-step .payment-options .js-additional-information a:hover,
body#checkout #checkout-payment-step .payment-options .additional-information a:hover,
body#checkout #checkout-payment-step .payment-options [id*="additional-information"] a:hover,
body#checkout #checkout-payment-step .condition-label a:hover,
body#checkout #checkout-payment-step [for*="conditions_to_approve"] a:hover,
body#checkout #conditions-to-approve a:hover {
  color: #083a67 !important;
}

body#checkout #checkout-payment-step .payment-options input[type="radio"]:checked + label,
body#checkout #checkout-payment-step .payment-options input[type="radio"]:checked + span,
body#checkout #checkout-payment-step .payment-options .payment-option input[type="radio"]:checked ~ label,
body#checkout #checkout-payment-step .payment-options .payment-option input[type="radio"]:checked ~ span {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}


/* =========================================================
   ADADP 11.25 - Icono de transferencia + modal bancario
   ========================================================= */

/* Icono al lado de "Pago por transferencia bancaria" */
body#checkout #checkout-payment-step .adadp-bank-transfer-option label,
body#checkout #checkout-payment-step .adadp-bank-transfer-option .payment-option-label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}

body#checkout #checkout-payment-step .adadp-bank-transfer-icon {
  display: inline-block !important;
  width: 76px !important;
  height: 34px !important;
  object-fit: contain !important;
  vertical-align: middle !important;
  margin-left: 4px !important;
  padding: 2px 4px !important;
  background: #ffffff !important;
  border: 1px solid #dce7f2 !important;
  border-radius: 5px !important;
}

/* Modal "Más información" de transferencia */
body#checkout .modal.adadp-bank-transfer-modal .modal-content {
  border: 1px solid #d9e7f3 !important;
  border-radius: 16px !important;
  box-shadow: 0 18px 46px rgba(11,79,138,.18) !important;
  overflow: hidden !important;
}

body#checkout .modal.adadp-bank-transfer-modal .modal-header {
  padding: 20px 24px !important;
  border-bottom: 1px solid #e3edf6 !important;
  background: #ffffff !important;
}

body#checkout .modal.adadp-bank-transfer-modal .modal-title {
  display: flex !important;
  align-items: center !important;
  gap: 13px !important;
  color: #0B4F8A !important;
  font-size: 27px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
}

body#checkout .modal.adadp-bank-transfer-modal .adadp-bank-modal-icon {
  width: 86px !important;
  height: 38px !important;
  object-fit: contain !important;
  padding: 2px 4px !important;
  border: 1px solid #dce7f2 !important;
  border-radius: 6px !important;
  background: #ffffff !important;
}

body#checkout .modal.adadp-bank-transfer-modal .modal-header .close {
  color: #0B4F8A !important;
  opacity: .75 !important;
  font-size: 28px !important;
}

body#checkout .modal.adadp-bank-transfer-modal .modal-header .close:hover {
  opacity: 1 !important;
}

body#checkout .modal.adadp-bank-transfer-modal .modal-body {
  padding: 22px 24px 26px !important;
  background: #ffffff !important;
  color: #263746 !important;
  font-size: 16px !important;
  line-height: 1.45 !important;
}

body#checkout .modal.adadp-bank-transfer-modal .modal-body > p:first-child,
body#checkout .modal.adadp-bank-transfer-modal .modal-body > div:first-child {
  color: #405466 !important;
}

/* Filas nativas del módulo bancario */
body#checkout .modal.adadp-bank-transfer-modal .modal-body .row {
  margin: 9px 0 !important;
  padding: 12px 14px !important;
  border: 1px solid #dbe8f4 !important;
  border-radius: 10px !important;
  background: #f7fbff !important;
}

body#checkout .modal.adadp-bank-transfer-modal .modal-body .row > [class*="col-"]:first-child {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}

body#checkout .modal.adadp-bank-transfer-modal .modal-body .row > [class*="col-"]:last-child {
  color: #263746 !important;
  font-weight: 500 !important;
  overflow-wrap: anywhere !important;
}

/* Importe: primera fila algo más destacada */
body#checkout .modal.adadp-bank-transfer-modal .modal-body .row:first-of-type {
  background: #eef6fd !important;
  border-color: #cbdfee !important;
}

body#checkout .modal.adadp-bank-transfer-modal .modal-body .row:first-of-type > [class*="col-"]:last-child {
  color: #0B4F8A !important;
  font-size: 18px !important;
  font-weight: 700 !important;
}

/* Si el módulo usa tablas en lugar de rows */
body#checkout .modal.adadp-bank-transfer-modal .modal-body table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 7px !important;
}

body#checkout .modal.adadp-bank-transfer-modal .modal-body table td,
body#checkout .modal.adadp-bank-transfer-modal .modal-body table th {
  padding: 11px 13px !important;
  border: 0 !important;
}

body#checkout .modal.adadp-bank-transfer-modal .modal-body table tr td:first-child,
body#checkout .modal.adadp-bank-transfer-modal .modal-body table tr th:first-child {
  width: 42% !important;
  color: #0B4F8A !important;
  background: #f3f8fc !important;
  font-weight: 700 !important;
  border-radius: 8px 0 0 8px !important;
}

body#checkout .modal.adadp-bank-transfer-modal .modal-body table tr td:last-child {
  color: #263746 !important;
  background: #fbfdff !important;
  border-radius: 0 8px 8px 0 !important;
  overflow-wrap: anywhere !important;
}

@media (max-width: 767px) {
  body#checkout #checkout-payment-step .adadp-bank-transfer-icon {
    width: 66px !important;
    height: 30px !important;
  }

  body#checkout .modal.adadp-bank-transfer-modal .modal-title {
    font-size: 22px !important;
  }

  body#checkout .modal.adadp-bank-transfer-modal .adadp-bank-modal-icon {
    width: 70px !important;
    height: 32px !important;
  }

  body#checkout .modal.adadp-bank-transfer-modal .modal-body .row {
    padding: 10px 11px !important;
  }
}


/* =========================================================
   ADADP 11.26 - Texto e aviso del modal de transferencia
   ========================================================= */
body#checkout .modal.adadp-bank-transfer-modal .adadp-bank-intro {
  color: #33485a !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  margin: 0 0 16px !important;
}

body#checkout .modal.adadp-bank-transfer-modal .adadp-bank-concept-notice {
  margin-top: 16px !important;
  padding: 14px 16px !important;
  border: 1px solid #a8c7e6 !important;
  border-left: 6px solid #0B4F8A !important;
  border-radius: 10px !important;
  background: #e7f1fb !important;
  box-shadow: 0 2px 8px rgba(11, 79, 138, 0.08) !important;
  color: #21384f !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
}

body#checkout .modal.adadp-bank-transfer-modal .adadp-bank-concept-notice strong {
  color: #0B4F8A !important;
  font-weight: 800 !important;
}


/* =========================================================
   ADADP 11.29 - Transferencia bancaria más visible
   ========================================================= */

/* Frase introductoria con más presencia */
body#checkout .modal.adadp-bank-transfer-modal .adadp-bank-intro {
  color: #0B4F8A !important;
  font-size: 17px !important;
  line-height: 1.45 !important;
  font-weight: 700 !important;
  margin: 0 0 18px !important;
}

/* Aviso IMPORTANTE más llamativo */
body#checkout .modal.adadp-bank-transfer-modal .adadp-bank-concept-notice {
  margin-top: 18px !important;
  padding: 16px 18px !important;
  border: 1px solid #7fb0da !important;
  border-left: 7px solid #0B4F8A !important;
  border-radius: 10px !important;
  background: #dcecf9 !important;
  box-shadow: 0 4px 12px rgba(11, 79, 138, 0.13) !important;
  color: #18364f !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
}

body#checkout .modal.adadp-bank-transfer-modal .adadp-bank-concept-notice strong {
  color: #0B4F8A !important;
  font-weight: 800 !important;
  font-size: 16px !important;
}


/* ADADP 11.31 - texto informativo de transferencia */
body#checkout #checkout-payment-step .adadp-bank-payment-description,
body#checkout #checkout-payment-step .adadp-bank-payment-message {
  color: #5c6f80 !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

body#checkout #checkout-payment-step .adadp-bank-payment-description .adadp-bank-info-link,
body#checkout #checkout-payment-step .adadp-bank-payment-description a {
  color: #0B4F8A !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}


/* =========================================================
   ADADP 11.32 - Texto de transferencia más legible y destacado
   ========================================================= */
body#checkout #checkout-payment-step .adadp-bank-payment-description {
  margin-top: 8px !important;
  padding: 12px 14px !important;
  background: #f1f7fc !important;
  border: 1px solid #d4e4f2 !important;
  border-left: 4px solid #0B4F8A !important;
  border-radius: 8px !important;
}

body#checkout #checkout-payment-step .adadp-bank-payment-message {
  color: #263746 !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  font-weight: 500 !important;
}

body#checkout #checkout-payment-step .adadp-bank-payment-description .adadp-bank-info-link,
body#checkout #checkout-payment-step .adadp-bank-payment-description a {
  color: #0B4F8A !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}


/* =========================================================
   ADADP 11.33 - Mensaje transferencia azul fuerte y negrita
   ========================================================= */
body#checkout #checkout-payment-step .adadp-bank-payment-description {
  margin-top: 8px !important;
  padding: 13px 15px !important;
  background: #eaf3fb !important;
  border: 1px solid #b8d2e8 !important;
  border-left: 5px solid #0B4F8A !important;
  border-radius: 8px !important;
}

body#checkout #checkout-payment-step .adadp-bank-payment-message {
  color: #0B4F8A !important;
  font-size: 15.5px !important;
  line-height: 1.5 !important;
  font-weight: 800 !important;
}

body#checkout #checkout-payment-step .adadp-bank-payment-description .adadp-bank-info-link,
body#checkout #checkout-payment-step .adadp-bank-payment-description a {
  color: #0B4F8A !important;
  font-size: 15.5px !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}


/* =========================================================
   ADADP 11.39 - Aviso tarjeta debajo de la opción seleccionada
   ========================================================= */
body#checkout #checkout-payment-step .adadp-card-safe-note-v239 {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 6px 0 10px 36px !important;
  padding: 9px 12px !important;
  max-width: 650px !important;
  background: #eef6fc !important;
  border: 1px solid #c9deee !important;
  border-left: 4px solid #0B4F8A !important;
  border-radius: 8px !important;
  color: #29445d !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
}

body#checkout #checkout-payment-step .adadp-card-safe-note-v239 strong {
  color: #0B4F8A !important;
  font-weight: 800 !important;
}

/* Candado dibujado */
body#checkout #checkout-payment-step .adadp-card-lock-v239 {
  position: relative !important;
  display: inline-block !important;
  width: 18px !important;
  height: 14px !important;
  min-width: 18px !important;
  margin-top: 3px !important;
  border: 2px solid #0B4F8A !important;
  border-radius: 3px !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
}

body#checkout #checkout-payment-step .adadp-card-lock-v239::before {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: -9px !important;
  width: 10px !important;
  height: 9px !important;
  transform: translateX(-50%) !important;
  border: 2px solid #0B4F8A !important;
  border-bottom: 0 !important;
  border-radius: 7px 7px 0 0 !important;
  box-sizing: border-box !important;
}

body#checkout #checkout-payment-step .adadp-card-lock-v239::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 4px !important;
  width: 3px !important;
  height: 5px !important;
  transform: translateX(-50%) !important;
  border-radius: 2px !important;
  background: #0B4F8A !important;
}

@media (max-width: 767px) {
  body#checkout #checkout-payment-step .adadp-card-safe-note-v239 {
    margin-left: 0 !important;
    max-width: 100% !important;
    align-items: flex-start !important;
  }
}


/* =========================================================
   ADADP 11.40 - Aviso de pago seguro más elegante
   - sin recuadro azul
   - candado amarillo/dorado
   ========================================================= */
body#checkout #checkout-payment-step .adadp-card-safe-note-v239 {
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
  margin: 5px 0 10px 36px !important;
  padding: 3px 0 !important;
  max-width: 720px !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: #405466 !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  box-shadow: none !important;
}

body#checkout #checkout-payment-step .adadp-card-safe-note-v239 strong {
  color: #0B4F8A !important;
  font-weight: 800 !important;
}

/* Candado dorado */
body#checkout #checkout-payment-step .adadp-card-lock-v239 {
  position: relative !important;
  display: inline-block !important;
  width: 18px !important;
  height: 14px !important;
  min-width: 18px !important;
  margin-top: 3px !important;
  border: 2px solid #E5A700 !important;
  border-radius: 3px !important;
  background: #FFF7D6 !important;
  box-sizing: border-box !important;
}

body#checkout #checkout-payment-step .adadp-card-lock-v239::before {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: -9px !important;
  width: 10px !important;
  height: 9px !important;
  transform: translateX(-50%) !important;
  border: 2px solid #E5A700 !important;
  border-bottom: 0 !important;
  border-radius: 7px 7px 0 0 !important;
  box-sizing: border-box !important;
  background: transparent !important;
}

body#checkout #checkout-payment-step .adadp-card-lock-v239::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 4px !important;
  width: 3px !important;
  height: 5px !important;
  transform: translateX(-50%) !important;
  border-radius: 2px !important;
  background: #E5A700 !important;
}

@media (max-width: 767px) {
  body#checkout #checkout-payment-step .adadp-card-safe-note-v239 {
    margin-left: 0 !important;
    max-width: 100% !important;
    align-items: flex-start !important;
  }
}


/* =========================================================
   ADADP 11.41 - Aviso de pago seguro completamente en negrita
   ========================================================= */
body#checkout #checkout-payment-step .adadp-card-safe-note-v239 {
  font-weight: 700 !important;
}

body#checkout #checkout-payment-step .adadp-card-safe-note-v239 *,
body#checkout #checkout-payment-step .adadp-card-safe-note-v239 span,
body#checkout #checkout-payment-step .adadp-card-safe-note-v239 strong {
  font-weight: 700 !important;
}


/* =========================================================
   ADADP 11.42 - Aviso de pago seguro en un único color
   ========================================================= */
body#checkout #checkout-payment-step .adadp-card-safe-note-v239,
body#checkout #checkout-payment-step .adadp-card-safe-note-v239 span,
body#checkout #checkout-payment-step .adadp-card-safe-note-v239 strong {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}


/* =========================================================
   ADADP 11.43 - Confirmación de correo electrónico
   ========================================================= */
body#checkout .adadp-required-star-v243 {
  color: #0B4F8A !important;
  font-weight: 800 !important;
}

body#checkout .adadp-email-confirm-row-v243 {
  margin-top: 2px !important;
}

body#checkout .adadp-email-help-v243 {
  margin-top: 7px !important;
  color: #526779 !important;
  font-size: 13.5px !important;
  line-height: 1.4 !important;
  font-weight: 600 !important;
}

body#checkout .adadp-email-error-v243 {
  margin-top: 6px !important;
  color: #b3261e !important;
  font-size: 13.5px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
}

body#checkout #adadp-email-confirm-v243.adadp-email-mismatch-v243 {
  border-color: #b3261e !important;
  box-shadow: 0 0 0 1px #b3261e !important;
}

body#checkout #adadp-email-confirm-v243:focus {
  border-color: #0B4F8A !important;
  box-shadow: 0 0 0 2px rgba(11,79,138,.12) !important;
}

@media (max-width: 767px) {
  body#checkout .adadp-email-help-v243,
  body#checkout .adadp-email-error-v243 {
    font-size: 13px !important;
  }
}


/* =========================================================
   ADADP 11.44 - Confirmación de correo más limpia
   Quita el texto explicativo largo y deja solo el error.
   ========================================================= */
body#checkout .adadp-email-help-v243 {
  display: none !important;
}


/* =========================================================
   ADADP 11.49 - Checkbox legal y boletín visibles
   ========================================================= */
body#checkout .adadp-hide-v249 {
  display: none !important;
}

body#checkout .adadp-legal-main-v249,
body#checkout .adadp-newsletter-v249 {
  margin-bottom: 14px !important;
}

body#checkout .adadp-legal-main-v249 label,
body#checkout .adadp-newsletter-v249 label {
  line-height: 1.45 !important;
}

body#checkout .adadp-legal-main-v249 input[type="checkbox"],
body#checkout .adadp-newsletter-v249 input[type="checkbox"] {
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: static !important;
  width: 25px !important;
  height: 25px !important;
  min-width: 25px !important;
  margin: 1px 14px 0 0 !important;
  vertical-align: top !important;
  cursor: pointer !important;
  accent-color: #0B4F8A !important;
}

body#checkout .adadp-newsletter-v249 label {
  font-weight: 400 !important;
}


/* =========================================================
   ADADP 11.50 - Solo legal + boletín visibles
   ========================================================= */
body#checkout label.adadp-hide-data-v250,
body#checkout label.adadp-hide-offers-v250,
body#checkout input.adadp-hide-data-v250-input,
body#checkout input.adadp-hide-offers-v250-input,
body#checkout .adadp-hide-data-v250-parent,
body#checkout .adadp-hide-offers-v250-parent {
  display: none !important;
}

/* Evitar huecos residuales */
body#checkout .adadp-hide-data-v250-parent,
body#checkout .adadp-hide-offers-v250-parent {
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
}


/* ADADP 11.51 - ocultación forzada de casillas sobrantes */
body#checkout .adadp-force-hide-v251 {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}


/* =========================================================
   ADADP 11.52 - Acercar legal + boletín en datos personales
   ========================================================= */
body#checkout .adadp-legal-main-v249,
body#checkout .adadp-newsletter-v249 {
  margin-top: 0 !important;
  margin-bottom: 10px !important;
}

body#checkout .adadp-legal-main-v249 + .adadp-newsletter-v249 {
  margin-top: -2px !important;
}

body#checkout .adadp-legal-main-v249 label,
body#checkout .adadp-newsletter-v249 label {
  margin-bottom: 0 !important;
}

body#checkout .adadp-newsletter-v249 {
  padding-top: 0 !important;
}


/* ADADP 11.54 - Ocultar solo títulos duplicados detectados en el footer */
#footer .adadp-footer-duplicate-v254,
footer .adadp-footer-duplicate-v254,
.footer-container .adadp-footer-duplicate-v254 {
  display: none !important;
}


/* =========================================================
   ADADP 11.55 - Footer más compacto y profesional
   ========================================================= */

/* Títulos */
#footer .adadp-footer-contact-title-v255,
footer .adadp-footer-contact-title-v255 {
  color: #0B4F8A !important;
  font-size: 17px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  margin: 0 0 15px !important;
}

/* Bloque de categorías en dos columnas para reducir altura */
@media (min-width: 992px) {
  #footer .adadp-footer-topics-v255 ul,
  footer .adadp-footer-topics-v255 ul {
    column-count: 2 !important;
    column-gap: 26px !important;
  }

  #footer .adadp-footer-topics-v255 li,
  footer .adadp-footer-topics-v255 li {
    break-inside: avoid !important;
    -webkit-column-break-inside: avoid !important;
  }
}

/* Mejor reparto y lectura */
#footer .adadp-footer-topics-v255,
#footer .adadp-footer-contact-v255,
footer .adadp-footer-topics-v255,
footer .adadp-footer-contact-v255 {
  min-width: 0 !important;
}

#footer .adadp-footer-contact-v255,
footer .adadp-footer-contact-v255 {
  color: #5f6c78 !important;
}

#footer .adadp-footer-contact-v255 a,
footer .adadp-footer-contact-v255 a {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}

/* Evita que un tooltip nativo parezca parte del diseño: no cambia su funcionalidad */
#footer a[title],
footer a[title] {
  cursor: pointer !important;
}

@media (max-width: 991px) {
  #footer .adadp-footer-topics-v255 ul,
  footer .adadp-footer-topics-v255 ul {
    column-count: 1 !important;
  }
}


/* =========================================================
   ADADP 11.56 - Footer: reparto, anchura y contacto
   ========================================================= */
#footer .adadp-footer-hide-v256,
footer .adadp-footer-hide-v256 {
  display: none !important;
}

/* Dar más espacio al bloque LIBROS POR TEMAS */
@media (min-width: 992px) {
  #footer .adadp-footer-topics-v255,
  footer .adadp-footer-topics-v255 {
    flex: 0 0 29% !important;
    max-width: 29% !important;
    width: 29% !important;
  }

  #footer .adadp-footer-topics-v255 ul,
  footer .adadp-footer-topics-v255 ul {
    column-gap: 34px !important;
  }

  #footer .adadp-footer-topics-v255 li,
  footer .adadp-footer-topics-v255 li,
  #footer .adadp-footer-topics-v255 a,
  footer .adadp-footer-topics-v255 a {
    break-inside: avoid !important;
    -webkit-column-break-inside: avoid !important;
  }
}

/* Título contacto */
#footer .adadp-footer-contact-title-v256,
footer .adadp-footer-contact-title-v256 {
  color: #0B4F8A !important;
  font-size: 17px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  margin: 0 0 15px !important;
  text-transform: uppercase !important;
}

#footer .adadp-footer-contact-v256,
footer .adadp-footer-contact-v256 {
  min-width: 0 !important;
}

#footer .adadp-footer-contact-v256 a,
footer .adadp-footer-contact-v256 a {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}


/* =========================================================
   ADADP 11.57 - Corrección del bloque LIBROS POR TEMAS
   Evita solapamientos: una sola columna limpia y legible.
   ========================================================= */
@media (min-width: 992px) {
  #footer .adadp-footer-topics-v255,
  footer .adadp-footer-topics-v255 {
    width: auto !important;
    max-width: none !important;
    flex: 0 0 auto !important;
  }

  #footer .adadp-footer-topics-v255 ul,
  footer .adadp-footer-topics-v255 ul {
    column-count: 1 !important;
    column-gap: 0 !important;
    display: block !important;
  }

  #footer .adadp-footer-topics-v255 li,
  footer .adadp-footer-topics-v255 li,
  #footer .adadp-footer-topics-v255 a,
  footer .adadp-footer-topics-v255 a {
    display: block !important;
    width: auto !important;
    max-width: 260px !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    line-height: 1.35 !important;
  }
}


/* =========================================================
   ADADP 11.58 - FOOTER CATÁLOGO
   ========================================================= */

/* El catálogo nuevo sustituye visualmente al antiguo bloque de temas */
#footer .adadp-footer-oldtopics-v258,
footer .adadp-footer-oldtopics-v258 {
  display: none !important;
}

/* Primera fila: 3 bloques claros */
@media (min-width: 992px) {
  #footer .adadp-footer-toprow-v258,
  footer .adadp-footer-toprow-v258 {
    display: grid !important;
    grid-template-columns: minmax(260px, 1fr) minmax(220px, .8fr) minmax(300px, 1fr) !important;
    gap: 56px !important;
    align-items: start !important;
  }

  #footer .adadp-footer-assoc-v258,
  #footer .adadp-footer-account-v258,
  #footer .adadp-footer-contact-v258,
  footer .adadp-footer-assoc-v258,
  footer .adadp-footer-account-v258,
  footer .adadp-footer-contact-v258 {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    flex: none !important;
    margin: 0 !important;
    float: none !important;
  }
}

/* Catálogo inferior */
#footer .adadp-footer-catalog-v258,
footer .adadp-footer-catalog-v258 {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  margin-top: 34px !important;
  padding-top: 28px !important;
  border-top: 1px solid #d9e6f2 !important;
}

#footer .adadp-footer-catalog-title-v258,
footer .adadp-footer-catalog-title-v258 {
  color: #0B4F8A !important;
  font-size: 19px !important;
  line-height: 1.25 !important;
  font-weight: 800 !important;
  margin: 0 0 22px !important;
}

#footer .adadp-footer-catalog-groups-v258,
footer .adadp-footer-catalog-groups-v258 {
  display: grid !important;
  grid-template-columns: minmax(0, 3fr) minmax(250px, 1fr) !important;
  gap: 54px !important;
  align-items: start !important;
}

#footer .adadp-footer-catalog-group-v258 h4,
footer .adadp-footer-catalog-group-v258 h4 {
  color: #0B4F8A !important;
  font-size: 16px !important;
  line-height: 1.3 !important;
  font-weight: 800 !important;
  margin: 0 0 14px !important;
}

#footer .adadp-footer-booklinks-v258,
footer .adadp-footer-booklinks-v258 {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(150px, 1fr)) !important;
  gap: 9px 28px !important;
}

#footer .adadp-footer-complinks-v258,
footer .adadp-footer-complinks-v258 {
  display: grid !important;
  gap: 10px !important;
}

#footer .adadp-catalog-link-v258,
footer .adadp-catalog-link-v258 {
  color: #66717c !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
}

#footer .adadp-catalog-link-v258:hover,
footer .adadp-catalog-link-v258:hover {
  color: #0B4F8A !important;
  text-decoration: underline !important;
}

/* Tablet */
@media (min-width: 768px) and (max-width: 991px) {
  #footer .adadp-footer-toprow-v258,
  footer .adadp-footer-toprow-v258 {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 30px !important;
  }

  #footer .adadp-footer-catalog-groups-v258,
  footer .adadp-footer-catalog-groups-v258 {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  #footer .adadp-footer-booklinks-v258,
  footer .adadp-footer-booklinks-v258 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Móvil */
@media (max-width: 767px) {
  #footer .adadp-footer-toprow-v258,
  footer .adadp-footer-toprow-v258,
  #footer .adadp-footer-catalog-groups-v258,
  footer .adadp-footer-catalog-groups-v258,
  #footer .adadp-footer-booklinks-v258,
  footer .adadp-footer-booklinks-v258 {
    display: block !important;
  }

  #footer .adadp-footer-assoc-v258,
  #footer .adadp-footer-account-v258,
  #footer .adadp-footer-contact-v258,
  footer .adadp-footer-assoc-v258,
  footer .adadp-footer-account-v258,
  footer .adadp-footer-contact-v258 {
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 26px !important;
  }

  #footer .adadp-footer-catalog-v258,
  footer .adadp-footer-catalog-v258 {
    margin-top: 12px !important;
    padding-top: 22px !important;
  }

  #footer .adadp-catalog-link-v258,
  footer .adadp-catalog-link-v258 {
    display: block !important;
    padding: 5px 0 !important;
    font-size: 16px !important;
  }

  #footer .adadp-footer-comps-v258,
  footer .adadp-footer-comps-v258 {
    margin-top: 24px !important;
  }
}


/* =========================================================
   ADADP 11.59 - REFINO FOOTER
   ========================================================= */

#footer .adadp-footer-assoc-rebuilt-v259,
footer .adadp-footer-assoc-rebuilt-v259 {
  min-width: 0 !important;
}

#footer .adadp-footer-assoc-rebuilt-v259 h3,
footer .adadp-footer-assoc-rebuilt-v259 h3 {
  color: #0B4F8A !important;
  font-size: 17px !important;
  line-height: 1.25 !important;
  font-weight: 800 !important;
  margin: 0 0 16px !important;
}

#footer .adadp-footer-assoc-links-v259,
footer .adadp-footer-assoc-links-v259 {
  display: grid !important;
  gap: 9px !important;
}

#footer .adadp-footer-assoc-link-v259,
footer .adadp-footer-assoc-link-v259 {
  display: block !important;
  color: #66717c !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
}

#footer .adadp-footer-assoc-link-v259:hover,
footer .adadp-footer-assoc-link-v259:hover {
  color: #0B4F8A !important;
  text-decoration: underline !important;
}

/* Ajustar la fila superior y quitar el hueco excesivo */
@media (min-width: 992px) {
  #footer .adadp-footer-toprow-v258,
  footer .adadp-footer-toprow-v258 {
    display: grid !important;
    grid-template-columns: minmax(260px, 1fr) minmax(220px, .8fr) minmax(300px, 1.05fr) !important;
    gap: 56px !important;
    align-items: start !important;
    align-content: start !important;
    min-height: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }

  #footer .adadp-footer-catalog-v258,
  footer .adadp-footer-catalog-v258 {
    margin-top: 24px !important;
    padding-top: 24px !important;
  }
}

/* Móvil: bloques uno debajo del otro */
@media (max-width: 991px) {
  #footer .adadp-footer-assoc-rebuilt-v259,
  footer .adadp-footer-assoc-rebuilt-v259 {
    width: 100% !important;
    margin-bottom: 26px !important;
  }
}


/* =========================================================
   ADADP 11.60 - Orden final footer superior
   ========================================================= */

#footer .adadp-footer-assoc-title-v260,
footer .adadp-footer-assoc-title-v260 {
  color: #0B4F8A !important;
  font-size: 17px !important;
  line-height: 1.25 !important;
  font-weight: 800 !important;
  margin: 0 0 16px !important;
}

@media (min-width: 992px) {
  #footer .adadp-footer-toprow-v260,
  footer .adadp-footer-toprow-v260 {
    display: grid !important;
    grid-template-columns: minmax(300px, 1.1fr) minmax(280px, 1fr) minmax(220px, .8fr) !important;
    gap: 60px !important;
    align-items: start !important;
    min-height: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }

  #footer .adadp-footer-order-contact-v260,
  footer .adadp-footer-order-contact-v260 {
    grid-column: 1 !important;
  }

  #footer .adadp-footer-order-assoc-v260,
  footer .adadp-footer-order-assoc-v260 {
    grid-column: 2 !important;
  }

  #footer .adadp-footer-order-account-v260,
  footer .adadp-footer-order-account-v260 {
    grid-column: 3 !important;
  }

  #footer .adadp-footer-order-contact-v260,
  #footer .adadp-footer-order-assoc-v260,
  #footer .adadp-footer-order-account-v260,
  footer .adadp-footer-order-contact-v260,
  footer .adadp-footer-order-assoc-v260,
  footer .adadp-footer-order-account-v260 {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    flex: none !important;
    float: none !important;
    margin: 0 !important;
  }
}

@media (max-width: 991px) {
  #footer .adadp-footer-toprow-v260,
  footer .adadp-footer-toprow-v260 {
    display: block !important;
  }

  #footer .adadp-footer-order-contact-v260,
  #footer .adadp-footer-order-assoc-v260,
  #footer .adadp-footer-order-account-v260,
  footer .adadp-footer-order-contact-v260,
  footer .adadp-footer-order-assoc-v260,
  footer .adadp-footer-order-account-v260 {
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 26px !important;
  }
}


/* =========================================================
   ADADP 11.61 - Compactar espacio vertical antes del footer
   Solo espaciado; no cambia estructura ni contenido.
   ========================================================= */

/* Reducir hueco excesivo entre el final del contenido y el footer */
#footer,
footer,
.footer-container {
  margin-top: 28px !important;
}

/* Si el tema añade padding superior exagerado al footer */
#footer .footer-container,
footer .footer-container {
  padding-top: 28px !important;
}

/* Acercar catálogo y fila superior entre sí */
#footer .adadp-footer-catalog-v258,
footer .adadp-footer-catalog-v258 {
  margin-top: 18px !important;
  padding-top: 20px !important;
}

/* Evitar mínimos de altura que generen huecos */
#footer .adadp-footer-toprow-v258,
#footer .adadp-footer-toprow-v260,
footer .adadp-footer-toprow-v258,
footer .adadp-footer-toprow-v260 {
  min-height: 0 !important;
  height: auto !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Móvil/tablet: también compacto, pero con algo de aire */
@media (max-width: 991px) {
  #footer,
  footer,
  .footer-container {
    margin-top: 20px !important;
  }

  #footer .footer-container,
  footer .footer-container {
    padding-top: 22px !important;
  }

  #footer .adadp-footer-catalog-v258,
  footer .adadp-footer-catalog-v258 {
    margin-top: 14px !important;
    padding-top: 18px !important;
  }
}


/* =========================================================
   ADADP 11.62 - PORTADA: reducir hueco antes del footer
   Solo afecta a body#index. No toca categorías, producto o checkout.
   ========================================================= */

/* Eliminar alturas mínimas / padding excesivo de los bloques finales de portada */
body#index #main,
body#index #content,
body#index #content-wrapper {
  min-height: 0 !important;
}

body#index .featured-products,
body#index .product-accessories,
body#index .products-section-title,
body#index .all-product-link {
  margin-bottom: 0 !important;
}

/* Compactar la última zona de productos de la portada */
body#index .featured-products:last-of-type {
  padding-bottom: 12px !important;
  margin-bottom: 12px !important;
  min-height: 0 !important;
}

/* Reducir separación entre el contenido principal y el footer SOLO en portada */
body#index #wrapper {
  padding-bottom: 18px !important;
  margin-bottom: 0 !important;
  min-height: 0 !important;
}

body#index #footer,
body#index footer {
  margin-top: 0 !important;
}

/* Mantener un espacio limpio, no pegado */
body#index #footer .footer-container,
body#index footer .footer-container {
  padding-top: 22px !important;
}

@media (max-width: 767px) {
  body#index #wrapper {
    padding-bottom: 12px !important;
  }

  body#index #footer .footer-container,
  body#index footer .footer-container {
    padding-top: 18px !important;
  }
}


/* ADADP 11.63 - Dirección internacional: ajuste visual */
body#checkout .js-address-form .form-group,
body#checkout .address-form .form-group {
  width: 100% !important;
  max-width: none !important;
}
body#checkout .js-address-form input.form-control,
body#checkout .js-address-form select.form-control,
body#checkout .js-address-form textarea.form-control,
body#checkout .address-form input.form-control,
body#checkout .address-form select.form-control,
body#checkout .address-form textarea.form-control {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
@media (min-width: 768px) {
  body#checkout .adadp-address-name-row-v263 {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 22px !important;
    align-items: end !important;
  }
  body#checkout .adadp-address-postal-city-row-v263 {
    display: grid !important;
    grid-template-columns: minmax(180px,.7fr) minmax(260px,1.3fr) !important;
    gap: 22px !important;
    align-items: end !important;
  }
}
body#checkout .adadp-address-full-v263,
body#checkout .adadp-address-extra-v263 {
  width: 100% !important;
  max-width: 100% !important;
}
body#checkout .adadp-address-extra-v263 input,
body#checkout .adadp-address-extra-v263 .form-control {
  width: 100% !important;
  max-width: 100% !important;
}
body#checkout .js-address-form label,
body#checkout .address-form label {
  min-width: 0 !important;
  white-space: normal !important;
}
@media (max-width: 767px) {
  body#checkout .adadp-address-name-row-v263,
  body#checkout .adadp-address-postal-city-row-v263 {
    display: block !important;
  }
  body#checkout .adadp-address-name-row-v263 > *,
  body#checkout .adadp-address-postal-city-row-v263 > * {
    margin-bottom: 14px !important;
  }
}


/* =========================================================
   ADADP 11.64 - Pago internacional pendiente
   Mejora visual sin tocar la lógica del método de pago.
   ========================================================= */

body#checkout .adadp-intl-pending-v264 {
  margin-top: 12px !important;
}

body#checkout .adadp-intl-pending-message-v264 {
  display: block !important;
  margin: 10px 0 14px !important;
  padding: 12px 14px !important;
  background: #eef6fd !important;
  border-left: 4px solid #0B4F8A !important;
  border-radius: 4px !important;
  color: #0B4F8A !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
}

body#checkout .adadp-intl-pending-v264 table,
body#checkout .adadp-intl-pending-v264 .table {
  border-collapse: separate !important;
  border-spacing: 0 !important;
  width: 100% !important;
  overflow: hidden !important;
  border: 1px solid #dce8f3 !important;
  border-radius: 6px !important;
}

body#checkout .adadp-intl-pending-v264 table td,
body#checkout .adadp-intl-pending-v264 table th,
body#checkout .adadp-intl-pending-v264 .table td,
body#checkout .adadp-intl-pending-v264 .table th {
  padding: 12px 14px !important;
  border-color: #e7eef5 !important;
  vertical-align: middle !important;
}

body#checkout .adadp-intl-pending-v264 table tr:nth-child(odd) td,
body#checkout .adadp-intl-pending-v264 .table tr:nth-child(odd) td {
  background: #f8fbfe !important;
}

body#checkout .adadp-intl-pending-v264 table td:first-child,
body#checkout .adadp-intl-pending-v264 .table td:first-child {
  color: #4d6478 !important;
  font-weight: 600 !important;
}

body#checkout .adadp-intl-pending-v264 table td:last-child,
body#checkout .adadp-intl-pending-v264 .table td:last-child {
  color: #2f4152 !important;
}

body#checkout .adadp-intl-pending-v264 .adadp-intl-amount-v264 {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}

@media (max-width: 767px) {
  body#checkout .adadp-intl-pending-message-v264 {
    font-size: 15px !important;
    padding: 11px 12px !important;
  }
}


/* =========================================================
   ADADP 11.65 - PAGO INTERNACIONAL PENDIENTE
   ========================================================= */

/* Nombre del método: que no parezca un método de cobro normal */
body#checkout .adadp-payment-pending-label-v265 {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}

/* Segundo aviso: explica claramente qué ocurrirá después */
body#checkout .adadp-payment-email-notice-v265 {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  margin: 10px 0 16px !important;
  padding: 13px 15px !important;
  background: #eef6ff !important;
  border: 1px solid #cfe1f3 !important;
  border-left: 4px solid #0B4F8A !important;
  border-radius: 5px !important;
  color: #24415f !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
}

body#checkout .adadp-payment-email-notice-v265 strong {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}

body#checkout .adadp-payment-email-icon-v265 {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 24px !important;
  height: 24px !important;
  border-radius: 50% !important;
  background: #0B4F8A !important;
  color: #fff !important;
  font-size: 14px !important;
  line-height: 1 !important;
  margin-top: 1px !important;
}

@media (max-width: 767px) {
  body#checkout .adadp-payment-email-notice-v265 {
    font-size: 14px !important;
    padding: 12px 13px !important;
  }
}


/* ADADP 11.66 - coste internacional pendiente */
body#checkout .adadp-intl-cost-pending-v266 {
  color: #0B4F8A !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}


/* ADADP 11.67 - aviso correo internacional */
body#checkout .adadp-payment-email-notice-v267 {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  margin: 10px 0 16px !important;
  padding: 13px 15px !important;
  background: #eef6ff !important;
  border: 1px solid #cfe1f3 !important;
  border-left: 4px solid #0B4F8A !important;
  border-radius: 5px !important;
  color: #24415f !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
}
body#checkout .adadp-payment-email-notice-v267 strong {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}
body#checkout .adadp-payment-email-icon-v267 {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 24px !important;
  height: 24px !important;
  border-radius: 50% !important;
  background: #0B4F8A !important;
  color: #fff !important;
  font-size: 14px !important;
  line-height: 1 !important;
  margin-top: 1px !important;
}


/* ADADP 11.68 - mensaje internacional destacado */
body#checkout .adadp-pending-message-v268 {
  display: block !important;
  margin: 10px 0 16px !important;
  padding: 14px 16px !important;
  background: #eef6ff !important;
  border-left: 4px solid #0B4F8A !important;
  border-radius: 5px !important;
  color: #0B4F8A !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
}


/* =========================================================
   ADADP 11.69 - Confirmación pedido internacional
   ========================================================= */
body.adadp-intl-confirmation-v269 .adadp-confirm-intl-box-v269 {
  margin: 14px 0 20px !important;
  padding: 14px 16px !important;
  background: #eef6ff !important;
  border-left: 4px solid #0B4F8A !important;
  border-radius: 5px !important;
  color: #24415f !important;
  line-height: 1.45 !important;
}

body.adadp-intl-confirmation-v269 .adadp-confirm-intl-box-v269 strong {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}

body.adadp-intl-confirmation-v269 .adadp-confirm-payment-v269,
body.adadp-intl-confirmation-v269 .adadp-confirm-pending-cost-v269,
body.adadp-intl-confirmation-v269 .adadp-confirm-total-label-v269 {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}


/* =========================================================
   ADADP 11.70 - mensaje lateral internacional
   ========================================================= */
body#checkout .adadp-intl-payment-title-v270 {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}

body#checkout .adadp-intl-payment-text-v270 {
  color: #24415f !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
}

/* =========================================================
   ADADP 11.87 - Confirmación de pedido limpia y corporativa (scope robusto)
   SOLO PRESENTACIÓN. No altera datos del pedido, referencias
   internas, impuestos, transporte ni el valor de reciclaje.
   ========================================================= */
.adadp-confirm-section-title-v271 {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}

.adadp-confirm-details-card-v271,
.adadp-confirm-transport-card-v271 {
  border: 1px solid #d9e4ee !important;
  border-radius: 10px !important;
  background: #fff !important;
  padding: 18px 20px !important;
  box-shadow: 0 3px 12px rgba(11, 79, 138, .05) !important;
}

.adadp-confirm-details-card-v271 strong,
.adadp-confirm-transport-card-v271 strong {
  color: #0B4F8A !important;
}

/* El dato sigue existiendo en PrestaShop; solo se oculta visualmente. */
.adadp-recycled-packaging-row-v271 {
  display: none !important;
}

table.adadp-confirm-products-v271 {
  width: 100% !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  background: #fff !important;
}

table.adadp-confirm-products-v271 th {
  background: #0B4F8A !important;
  color: #fff !important;
  font-weight: 700 !important;
  text-align: center !important;
  padding: 12px 10px !important;
  border-color: #d5e0ea !important;
  vertical-align: middle !important;
}

table.adadp-confirm-products-v271 td {
  padding: 11px 10px !important;
  border-color: #d8e0e7 !important;
  vertical-align: middle !important;
  line-height: 1.42 !important;
}

table.adadp-confirm-products-v271 th:nth-child(1),
table.adadp-confirm-products-v271 td:nth-child(1) {
  width: 16% !important;
}

table.adadp-confirm-products-v271 th:nth-child(2),
table.adadp-confirm-products-v271 td:nth-child(2) {
  width: 40% !important;
}

table.adadp-confirm-products-v271 th:nth-child(3),
table.adadp-confirm-products-v271 td:nth-child(3) {
  width: 15% !important;
  text-align: right !important;
  white-space: nowrap !important;
}

table.adadp-confirm-products-v271 th:nth-child(4),
table.adadp-confirm-products-v271 td:nth-child(4) {
  width: 12% !important;
  text-align: center !important;
}

table.adadp-confirm-products-v271 th:nth-child(5),
table.adadp-confirm-products-v271 td:nth-child(5) {
  width: 17% !important;
  text-align: right !important;
  white-space: nowrap !important;
}

table.adadp-confirm-products-v271 tr.adadp-donation-row-v271 td {
  background: #f4f9fd !important;
}

table.adadp-confirm-products-v271 tr.adadp-donation-row-v271 td:first-child {
  color: #0B4F8A !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
  border-left: 4px solid #0B4F8A !important;
}

table.adadp-confirm-products-v271 tr.adadp-donation-row-v271 td:nth-child(2) {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}

/* Resumen económico: etiqueta azul, importes limpios. */
table.adadp-confirm-products-v271 tr.adadp-summary-row-v271 td:first-child,
table.adadp-confirm-products-v271 tr.adadp-summary-row-v271 th:first-child {
  color: #0B4F8A !important;
  font-weight: 700 !important;
}

table.adadp-confirm-products-v271 tr.adadp-total-paid-v271 td,
table.adadp-confirm-products-v271 tr.adadp-total-paid-v271 th {
  background: #eef6fc !important;
  color: #0B4F8A !important;
  font-weight: 800 !important;
}

@media (max-width: 767px) {
  .adadp-confirm-details-card-v271,
  .adadp-confirm-transport-card-v271 {
    padding: 14px !important;
  }

  table.adadp-confirm-products-v271 {
    table-layout: auto !important;
    font-size: 13px !important;
  }

  table.adadp-confirm-products-v271 th,
  table.adadp-confirm-products-v271 td {
    padding: 9px 7px !important;
  }

  table.adadp-confirm-products-v271 th:nth-child(1),
  table.adadp-confirm-products-v271 td:nth-child(1) {
    width: auto !important;
  }
}


/* =========================================================
   ADADP 11.93 - PORTADA MOVIL CENTRADA Y SIN DESBORDAMIENTO
   - centra el slider en el viewport real
   - evita scroll/desplazamiento horizontal de toda la portada
   - mantiene categorias y footer dentro del ancho del telefono
   SOLO responsive: no altera escritorio, pagos, carrito ni checkout.
   ========================================================= */
@media (max-width: 767px) {
  html.adadp-mobile-home-v1193,
  html.adadp-mobile-home-v1193 body#index {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  html.adadp-mobile-home-v1193 body#index #wrapper,
  html.adadp-mobile-home-v1193 body#index main,
  html.adadp-mobile-home-v1193 body#index #content-wrapper,
  html.adadp-mobile-home-v1193 body#index .container,
  html.adadp-mobile-home-v1193 body#index .container-fluid {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  body#index .adadp-main-slider-wide-v99 {
    display: block !important;
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    float: none !important;
    clear: both !important;
    position: relative !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  body#index .adadp-main-slider-wide-v99 img,
  body#index .adadp-main-slider-wide-v99 picture,
  body#index .adadp-main-slider-wide-v99 .carousel-inner,
  body#index .adadp-main-slider-wide-v99 .carousel-item,
  body#index .adadp-main-slider-wide-v99 .homeslider-container,
  body#index .adadp-main-slider-wide-v99 .homeslider-wrapper,
  body#index .adadp-main-slider-wide-v99 ul,
  body#index .adadp-main-slider-wide-v99 li {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  body#index .adadp-main-slider-wide-v99 img {
    display: block !important;
    height: auto !important;
    object-fit: contain !important;
  }

  body#index #adadp-editorial-message-v99,
  body#index .adadp-home-cta,
  body#index #adadp-home-editorial-categories,
  body#index .adadp-home-editorial-categories-v96 {
    max-width: calc(100vw - 20px) !important;
    box-sizing: border-box !important;
  }

  body#index #adadp-home-editorial-categories,
  body#index .adadp-home-editorial-categories-v96 {
    width: calc(100vw - 20px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body#index #footer,
  body#index footer,
  body#index .footer-container,
  body#index #footer .container,
  body#index footer .container,
  body#index .footer-container .container {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  body#index #footer .adadp-footer-catalog-v258,
  body#index footer .adadp-footer-catalog-v258,
  body#index #footer .adadp-footer-toprow-v258,
  body#index footer .adadp-footer-toprow-v258,
  body#index #footer .adadp-footer-toprow-v260,
  body#index footer .adadp-footer-toprow-v260 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
}
