/* =========================================================
   TUROPA DE TRABAJO - BASE GLOBAL LIMPIA
   Fuente global sin romper iconos
   ========================================================= */

:root {
  --tdt-blue: #0A1675;
  --tdt-orange: #C75125;
  --tdt-black: #222222;
  --tdt-gray: #666666;
  --tdt-light-gray: #f2f2f2;
  --tdt-border: #e5e5e5;
  --tdt-white: #ffffff;
}

/* Fuente global SOLO para texto */
html,
body,
#wrapper,
#header,
#footer,
.header-nav,
.header-top,
.footer-container,
.ApRow,
.ApColumn,
.ApHtml,
.block,
.block_content,
.product-miniature,
.thumbnail-container,
.product-detail,
.product-information,
.product-actions,
.product-variants,
.product-prices,
.cart-grid,
.checkout-step,
.form-control,
.btn,
button,
input,
textarea,
select,
label,
p,
a,
li,
td,
th,
strong,
em,
small,
.product-title,
.product-name,
.page-title,
.category-title,
.title_block,
.block-title,
.leo_title {
  font-family: 'Open Sans', Arial, Helvetica, sans-serif !important;
}

/* No tocar fuentes de iconos */
i,
.icon,
[class^="icon-"],
[class*=" icon-"],
[class^="fa"],
[class*=" fa-"],
.fa,
.fas,
.far,
.fab,
.material-icons,
.material-icons-outlined,
.material-icons-round,
.material-icons-sharp,
.leo-icon,
[class^="leo-"],
[class*=" leo-"],
.ApIcon,
.pe-7s,
[class^="pe-7s-"],
[class*=" pe-7s-"] {
  font-family: inherit;
}

/* Font Awesome */
.fa,
.fas,
.far,
.fab,
[class^="fa-"],
[class*=" fa-"] {
  font-family: "Font Awesome 5 Free", "FontAwesome" !important;
}

/* Material Icons */
.material-icons,
.material-icons-outlined,
.material-icons-round,
.material-icons-sharp {
  font-family: "Material Icons" !important;
}

/* Base */
body {
  color: var(--tdt-black);
  background: var(--tdt-white);
}

/* Enlaces */
a {
  color: var(--tdt-black);
  text-decoration: none;
}

a:hover,
a:focus {
  color: var(--tdt-orange);
  text-decoration: none;
}

/* Títulos */
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6,
.page-title,
.category-title,
.block-category h1,
.ApColumn .title_block,
.ApColumn .block-title,
.leo_title,
.block .title_block {
  font-family: 'Open Sans', Arial, Helvetica, sans-serif !important;
}

h1,
.h1,
h2,
.h2,
.page-title,
.category-title,
.block-category h1,
.ApColumn .title_block,
.ApColumn .block-title,
.leo_title,
.block .title_block {
  color: var(--tdt-blue);
}

/* Botones principales */
.btn-primary,
button.btn-primary,
input.btn-primary,
.product-add-to-cart .btn,
.add-to-cart {
  background: var(--tdt-blue);
  border-color: var(--tdt-blue);
  color: var(--tdt-white);
  border-radius: 0;
  box-shadow: none;
}

.btn-primary:hover,
button.btn-primary:hover,
input.btn-primary:hover,
.product-add-to-cart .btn:hover,
.add-to-cart:hover {
  background: var(--tdt-orange);
  border-color: var(--tdt-orange);
  color: var(--tdt-white);
}

/* Botones secundarios */
.btn-secondary,
.btn-outline,
.btn-default {
  border-color: var(--tdt-blue);
  color: var(--tdt-blue);
  border-radius: 0;
}

.btn-secondary:hover,
.btn-outline:hover,
.btn-default:hover {
  background: var(--tdt-blue);
  border-color: var(--tdt-blue);
  color: var(--tdt-white);
}

/* Menú */
.leo-megamenu .navbar-nav > li > a,
.ApMegamenu .navbar-nav > li > a {
  color: var(--tdt-black);
  font-family: 'Open Sans', Arial, Helvetica, sans-serif !important;
}

.leo-megamenu .navbar-nav > li > a:hover,
.ApMegamenu .navbar-nav > li > a:hover,
.leo-megamenu .navbar-nav > li.active > a,
.ApMegamenu .navbar-nav > li.active > a {
  color: var(--tdt-blue);
}

/* Barra superior */
.tdt-topbar {
  background: var(--tdt-blue);
  color: var(--tdt-white);
}

/* Breadcrumb */
#wrapper .breadcrumb,
.breadcrumb {
  background: var(--tdt-light-gray);
  color: var(--tdt-gray);
}

#wrapper .breadcrumb a,
.breadcrumb a {
  color: var(--tdt-gray);
}

#wrapper .breadcrumb a:hover,
.breadcrumb a:hover {
  color: var(--tdt-blue);
}

/* Precios */
.product-price,
.current-price,
.price,
.product-miniature .price,
.thumbnail-container .price {
  color: var(--tdt-black);
}

/* Ofertas / descuentos */
.discount,
.discount-percentage,
.product-flag.discount,
.product-flag.on-sale,
.has-discount .discount {
  background: var(--tdt-orange);
  color: var(--tdt-white);
}

/* Categorías */
.block-category,
.block-category .category-description,
#category-description {
  color: var(--tdt-black);
}

.block-category h1,
.category-title {
  color: var(--tdt-blue);
}

/* Formularios */
input:focus,
textarea:focus,
select:focus,
.form-control:focus {
  border-color: var(--tdt-blue);
  box-shadow: none;
}

/* Footer */
.footer-container h3,
.footer-container h4,
.footer-container .h3,
.footer-container .h4,
.footer-container .title_block {
  color: var(--tdt-blue);
}

.footer-container a:hover {
  color: var(--tdt-orange);
}

/* Utilidades AP Page Builder */
.tdt-text-blue {
  color: var(--tdt-blue) !important;
}

.tdt-text-orange {
  color: var(--tdt-orange) !important;
}

.tdt-bg-blue {
  background: var(--tdt-blue) !important;
  color: var(--tdt-white) !important;
}

.tdt-bg-orange {
  background: var(--tdt-orange) !important;
  color: var(--tdt-white) !important;
}

/* Barra superior cabecera - estilo mockup */
.tdt-header-topbar-row {
  position: relative;
  background: #0A1675 !important;
  color: #ffffff !important;
  margin: 0 !important;
  padding: 13px 0 !important;
  min-height: 48px;
  overflow: visible;
}

.tdt-header-topbar-row:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100vw;
  left: 50%;
  transform: translateX(-50%);
  background: #0A1675;
  z-index: 0;
}

.tdt-header-topbar-row > *,
.tdt-header-topbar-row .ApColumn,
.tdt-header-topbar-row .ApHtml,
.tdt-header-topbar-row .block,
.tdt-header-topbar-row .block_content {
  position: relative;
  z-index: 1;
  background: transparent !important;
}

.tdt-header-topbar-row,
.tdt-header-topbar-row p,
.tdt-header-topbar-row span,
.tdt-header-topbar-row div,
.tdt-header-topbar-row a {
  color: #ffffff !important;
  text-align: center;
  font-size: 18px;
  font-weight: 400 !important;
  text-transform: uppercase;
  letter-spacing: 0.2px;
  line-height: 22px;
}

.tdt-header-topbar-row .ApHtml,
.tdt-header-topbar-row .block,
.tdt-header-topbar-row .block_content,
.tdt-header-topbar-row p {
  margin: 0 !important;
  padding: 0 18px !important;
}
/* Logo cabecera Turopa - clase nueva, sin tocar .h-logo original */
.h-logo-turopa {
  text-align: center !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  padding: 50px 0 50px !important;
}

/* Si el tema conserva h-logo + nueva clase */
.h-logo.h-logo-turopa {
  text-align: center !important;
}

/* Imagen del logo dentro de la nueva clase */
.h-logo-turopa img,
.h-logo-turopa .img-fluid,
.h-logo-turopa a img,
.h-logo.h-logo-turopa img,
.h-logo.h-logo-turopa .img-fluid {
  width: clamp(360px, 34vw, 500px) !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  display: inline-block !important;
  object-fit: contain !important;
}

/* Enlace del logo */
.h-logo-turopa a,
.h-logo.h-logo-turopa a {
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;
  line-height: 0 !important;
}

/* Tablet */
@media (max-width: 991px) {
  .h-logo-turopa img,
  .h-logo-turopa .img-fluid,
  .h-logo-turopa a img,
  .h-logo.h-logo-turopa img,
  .h-logo.h-logo-turopa .img-fluid {
    width: 340px !important;
  }
}

/* Móvil */
@media (max-width: 767px) {
  .h-logo-turopa {
    padding: 14px 0 12px !important;
  }

  .h-logo-turopa img,
  .h-logo-turopa .img-fluid,
  .h-logo-turopa a img,
  .h-logo.h-logo-turopa img,
  .h-logo.h-logo-turopa .img-fluid {
    width: 260px !important;
  }
}

/* Columna única: logo centrado + acciones a la derecha */
.tdt-logo-icons-col {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 22px 0 18px;
  min-height: 95px;
}

/* Logo centrado real */
.tdt-logo-icons-col .h-logo-turopa,
.tdt-logo-icons-col .h-logo,
.tdt-logo-icons-col .ApImage,
.tdt-logo-icons-col .logo {
  text-align: center;
  margin: 0 auto;
}

/* Imagen del logo */
.tdt-logo-icons-col .h-logo-turopa img,
.tdt-logo-icons-col .h-logo img,
.tdt-logo-icons-col .logo img,
.tdt-logo-icons-col img.img-fluid {
  width: clamp(380px, 34vw, 520px) !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: none !important;
}

/* Acciones/iconos a la derecha sin desplazar el logo */
.tdt-logo-icons-col .tdt-header-actions,
.tdt-logo-icons-col .userinfo-selector,
.tdt-logo-icons-col .leo-wishlist,
.tdt-logo-icons-col .leo-compare,
.tdt-logo-icons-col .blockcart,
.tdt-logo-icons-col .cart-preview,
.tdt-logo-icons-col .ApBlockLink {
  position: relative;
}

/* Contenedor de acciones: si puedes poner clase al grupo/módulo */
.tdt-header-actions {
  position: absolute !important;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  display: flex !important;
  align-items: center;
  gap: 14px;
  z-index: 2;
}

/* Si los iconos no están agrupados, intentamos alinearlos */
.tdt-logo-icons-col > .ApColumn,
.tdt-logo-icons-col > div {
  position: relative;
}

/* Iconos sueltos dentro de la columna */
.tdt-logo-icons-col .blockcart,
.tdt-logo-icons-col .cart-preview,
.tdt-logo-icons-col .userinfo-selector,
.tdt-logo-icons-col .leo-wishlist,
.tdt-logo-icons-col .leo-compare {
  display: inline-flex;
  align-items: center;
  margin-left: 12px;
}

/* Móvil: todo centrado y acciones debajo */
@media (max-width: 767px) {
  .tdt-logo-icons-col {
    display: block;
    text-align: center;
    padding: 18px 0 14px;
  }

  .tdt-logo-icons-col .h-logo-turopa img,
  .tdt-logo-icons-col .h-logo img,
  .tdt-logo-icons-col .logo img,
  .tdt-logo-icons-col img.img-fluid {
    width: 280px !important;
  }

  .tdt-header-actions {
    position: static !important;
    transform: none;
    justify-content: center;
    margin-top: 12px;
  }
}
@media (min-width: 992px) {
  .box-top .col-info {
    width: 25% !important;
    flex: 0 0 25% !important;
    max-width: 25% !important;
  }
}
/* Botón usuario cabecera: mismo ritmo que el resto de iconos */
.user-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
  margin: 0 !important;
  padding: 0 !important;
}

.user-button .ap-btn-user {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px;
  height: 30px;
  line-height: 30px;
  color: #222222;
  text-decoration: none;
  padding: 0 !important;
  margin: 0 !important;
}

.user-button .ap-btn-user i.ti-user {
  display: inline-block;
  font-size: 22px !important;
  line-height: 1 !important;
  color: inherit;
  transform: translateY(1px);
}

.user-button .ap-btn-user:hover {
  color: #0A1675;
}
/* =========================================================
   TUROPA - MENÚ PRINCIPAL LIMPIO
   ========================================================= */

/* Fila gris */
.tdt-megamenu-row {
  position: relative;
  background: #e9e9e9;
  margin: 0;
  padding: 12px 0;
  min-height: 46px;
  z-index: 20;
}

/* Fondo gris a ancho completo */
.tdt-megamenu-row:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  background: #e9e9e9;
  z-index: 0;
}

.tdt-megamenu-row > * {
  position: relative;
  z-index: 1;
}

/* Fila interna centrada */
.tdt-megamenu-row .row {
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Columna del menú: ponerla en 12/12 en AP */
.tdt-megamenu-col {
  width: 100%;
  max-width: 100%;
  flex: 0 0 100%;
  text-align: center;
  padding-left: 0;
  padding-right: 0;
}

/* Contenedores internos */
.tdt-megamenu-col .leo-megamenu,
.tdt-megamenu-col .ApMegamenu,
.tdt-megamenu-col .navbar,
.tdt-megamenu-col .navbar-collapse,
.tdt-megamenu-col .megamenu {
  width: 100%;
  background: transparent;
  border: 0;
  box-shadow: none;
  margin: 0 auto;
  padding: 0;
  min-height: 0;
}

/* Lista centrada */
.tdt-megamenu-col ul.navbar-nav,
.tdt-megamenu-col ul.nav,
.tdt-megamenu-col .leo-megamenu ul.navbar-nav,
.tdt-megamenu-col .leo-megamenu ul.nav {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  width: 100%;
  float: none;
  margin: 0 auto;
  padding: 0;
  gap: 30px;
}

/* Items */
.tdt-megamenu-col ul.navbar-nav > li,
.tdt-megamenu-col ul.nav > li,
.tdt-megamenu-col li.nav-item {
  float: none;
  display: inline-flex;
  align-items: center;
  margin: 0;
  padding: 0;
}

/* Enlace normal */
.tdt-megamenu-col li.nav-item > a,
.tdt-megamenu-col li.nav-item > a.nav-link,
.tdt-megamenu-col ul.navbar-nav > li > a,
.tdt-megamenu-col ul.nav > li > a {
  color: #111111;
  background: transparent;
  font-weight: 400;
  text-transform: none;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
  padding: 0;
  margin: 0;
  line-height: 22px;
  border: 0;
  box-shadow: none;
}

/* Texto interno */
.tdt-megamenu-col li.nav-item > a span,
.tdt-megamenu-col li.nav-item > a .menu-title,
.tdt-megamenu-col .menu-title {
  color: inherit;
  font-weight: 400;
  text-transform: none;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

/* Hover */
.tdt-megamenu-col li.nav-item > a:hover,
.tdt-megamenu-col ul.navbar-nav > li > a:hover,
.tdt-megamenu-col ul.nav > li > a:hover {
  color: #0A1675;
  background: transparent;
  text-decoration-color: #0A1675;
}

/* Active correcto fuera de portada */
body:not(#index) .tdt-megamenu-col li.nav-item.active > a,
body:not(#index) .tdt-megamenu-col li.nav-item.active > a span,
body:not(#index) .tdt-megamenu-col li.nav-item.active > a .menu-title {
  color: #0A1675;
  background: transparent;
  text-decoration-color: #0A1675;
}

/* Portada: el active automático del primer item no se ve azul */
body#index .tdt-megamenu-col li.nav-item.active > a,
body#index .tdt-megamenu-col li.nav-item.active > a span,
body#index .tdt-megamenu-col li.nav-item.active > a .menu-title {
  color: #111111;
  background: transparent;
  text-decoration-color: #111111;
}

/* Quitar decoraciones extra del tema */
.tdt-megamenu-col li.nav-item > a:before,
.tdt-megamenu-col li.nav-item > a:after,
.tdt-megamenu-col .menu-title:before,
.tdt-megamenu-col .menu-title:after {
  display: none;
  opacity: 0;
  background: transparent;
  border: 0;
}

/* Responsive */
@media (max-width: 991px) {
  .tdt-megamenu-row {
    padding: 12px 0;
  }

  .tdt-megamenu-col ul.navbar-nav,
  .tdt-megamenu-col ul.nav {
    flex-wrap: wrap;
    gap: 18px;
  }
}

/* =========================================================
   BLOQUE TIENDAS HOME - FONDO AZUL COMPLETO
   ========================================================= */

.contendorportadaazul {
  position: relative;
  background: #0A1675;
  color: #ffffff;
  padding: 20px 0;
  margin: 00px 0;
  overflow: visible;
}

/* Fuerza el azul a ancho completo aunque esté dentro de un container */
.contendorportadaazul:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  background: #0A1675;
  z-index: 0;
}

.contendorportadaazul > .container {
  position: relative;
  z-index: 1;
}

/* Título */
.h2portadaazul {
  color: #ffffff;
  font-size: 34px;
  line-height: 42px;
  font-weight: 700;
  text-align: center;
  margin: 0 0 22px;
}

/* Texto principal */
.pportadaazul {
  color: #ffffff;
  font-size: 18px;
  line-height: 30px;
  font-weight: 400;
  text-align: center;
  max-width: 980px;
  margin: 0 auto 45px;
}

.pportadaazul.azulleft {
  text-align: left;
  font-size: 22px;
  line-height: 30px;
  font-weight: 700;
  margin: 0 0 28px;
}

/* Imagen tiendas */
.imgtiendasportada {
  display: inline-block;
  max-width: 100%;
  height: auto;
}

/* Listado tiendas */
.listadotiendashome {
  color: #ffffff;
  padding-top: 20px;
}

.listadotiendashome .col-xs-6,
.listadotiendashome .col-sm-4,
.listadotiendashome .col-md-4 {
  padding-left: 0;
  padding-right: 25px;
}

.listadotiendashome span {
  display: block;
  color: #ffffff;
  font-size: 18px;
  line-height: 34px;
  font-weight: 400;
}

.listadotiendashome a {
  color: #ffffff !important;
  text-decoration: none;
}

.listadotiendashome a:hover {
  color: #ffffff !important;
  text-decoration: underline;
}

/* Botón naranja */
.btnnaranja {
  display: inline-block;
  background: #C75125;
  color: #ffffff !important;
  border: 2px solid #C75125;
  padding: 14px 32px;
  font-size: 17px;
  line-height: 22px;
  font-weight: 700;
  text-align: center;
  text-decoration: none !important;
  border-radius: 0;
  transition: all 0.2s ease;
}

.btnnaranja:hover {
  background: #ffffff;
  color: #C75125 !important;
  border-color: #ffffff;
  text-decoration: none !important;
}

/* Ajuste del botón dentro del bloque */
.contendorportadaazul .btnnaranja {
  margin-top: 40px;
}

/* Responsive */
@media (max-width: 991px) {
  .contendorportadaazul {
    padding: 55px 0;
    margin: 40px 0;
  }

  .h2portadaazul {
    font-size: 30px;
    line-height: 38px;
  }

  .pportadaazul {
    font-size: 17px;
    line-height: 28px;
    margin-bottom: 35px;
  }

  .pportadaazul.azulleft {
    text-align: center;
    margin-top: 30px;
  }

  .listadotiendashome {
    text-align: center;
  }

  .listadotiendashome .col-xs-6,
  .listadotiendashome .col-sm-4,
  .listadotiendashome .col-md-4 {
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media (max-width: 767px) {
  .contendorportadaazul {
    padding: 45px 0;
    margin: 35px 0;
  }

  .h2portadaazul {
    font-size: 26px;
    line-height: 34px;
  }

  .pportadaazul {
    font-size: 16px;
    line-height: 26px;
  }

  .listadotiendashome span {
    font-size: 17px;
    line-height: 32px;
  }

  .btnnaranja {
    padding: 13px 24px;
    font-size: 16px;
  }
}


/* =========================================================
   TUROPA - FOOTER COMPLETO
   row box-footerlink ApRow
   Fondo blanco, sin separadores, logo reducido,
   textos columna izquierda compactos,
   iconos sociales en línea,
   botón newsletter azul con hover naranja
   ========================================================= */


/* =========================================================
   ESTRUCTURA GENERAL
   ========================================================= */

.row.box-footerlink.ApRow,
.box-footerlink.ApRow,
.box-footerlink {
  background: #ffffff !important;
  color: #222222 !important;
  padding: 10px 0 10px !important;
  margin: 0 !important;
}

/* Quitar fondos extendidos o pseudo-elementos anteriores */
.row.box-footerlink.ApRow:before,
.box-footerlink.ApRow:before,
.box-footerlink:before {
  display: none !important;
  content: none !important;
}

/* Columnas limpias */
.box-footerlink .ApColumn,
.box-footerlink [class*="col-"] {
  color: #222222 !important;
  background: transparent !important;
  border: 0 !important;
}

/* Sin separadores verticales */
.box-footerlink .ApColumn + .ApColumn,
.box-footerlink [class*="col-"] + [class*="col-"] {
  border-left: 0 !important;
}


/* =========================================================
   TEXTOS GENERALES
   ========================================================= */

.box-footerlink p,
.box-footerlink div,
.box-footerlink span,
.box-footerlink li {
  color: #222222;
  font-size: 14px;
  line-height: 24px;
  font-weight: 400;
}

.box-footerlink h2,
.box-footerlink h3,
.box-footerlink h4,
.box-footerlink .title_block,
.box-footerlink .block-title,
.box-footerlink .ApColumn .title_block {
  color: #0A1675 !important;
  font-size: 16px;
  line-height: 24px;
  font-weight: 700;
  margin: 0 0 12px;
  text-transform: none;
}

.box-footerlink a {
  color: #222222 !important;
  text-decoration: none !important;
  font-size: 14px;
  line-height: 24px;
  font-weight: 400;
}

.box-footerlink a:hover {
  color: #0A1675 !important;
  text-decoration: underline !important;
}

.box-footerlink ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.box-footerlink ul li {
  margin: 0 0 6px;
  padding: 0;
}


/* =========================================================
   COLUMNA IZQUIERDA - HTML REAL
   Logo, dirección, teléfono, email, redes
   ========================================================= */

.box-footerlink .ApRawHtml {
  text-align: left !important;
}

/* Logo: solo el logo, no los iconos */
.box-footerlink .ApRawHtml img.logo {
  max-width: 190px !important;
  width: auto !important;
  height: auto !important;
  display: block !important;
  margin: 0 0 20px 0 !important;
}

/* Párrafos de la columna izquierda */
.box-footerlink .ApRawHtml p {
  margin-top: 0 !important;
  margin-bottom: 16px !important;
  line-height: 22px !important;
  text-align: left !important;
}

/* Enlaces de teléfono/email dentro de la columna izquierda */
.box-footerlink .ApRawHtml p a {
  color: #0A1675 !important;
  text-decoration: none !important;
}

.box-footerlink .ApRawHtml p a:hover {
  color: #C75125 !important;
  text-decoration: underline !important;
}


/* =========================================================
   ICONOS SOCIALES REALES
   HTML: section#social_block > ul > li
   ========================================================= */

.box-footerlink #social_block {
  margin-top: 8px !important;
  padding: 0 !important;
  text-align: left !important;
}

.box-footerlink #social_block ul {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 9px !important;
  margin: 8px 0 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.box-footerlink #social_block ul li {
  display: inline-flex !important;
  width: auto !important;
  max-width: none !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
}

.box-footerlink #social_block ul li a,
.box-footerlink #social_block ul li span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 20px !important;
}

/* Iconos sociales: que no hereden tamaño del logo */
.box-footerlink #social_block img {
  max-width: 20px !important;
  width: 20px !important;
  height: auto !important;
  display: block !important;
  margin: 0 !important;
}


/* =========================================================
   NEWSLETTER - CAMPOS
   ========================================================= */

.box-footerlink .block_newsletter,
.box-footerlink .ps-emailsubscription-block,
.box-footerlink .newsletter,
.box-footerlink .block-newsletter,
.box-footerlink .ApBlockNewsletter,
.box-footerlink form {
  margin-top: 8px;
}

.box-footerlink input[type="email"],
.box-footerlink input[name="email"],
.box-footerlink input[type="text"],
.box-footerlink .form-control {
  height: 42px !important;
  border: 1px solid #dcdcdc !important;
  background: #ffffff !important;
  color: #222222 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 8px 12px !important;
  font-size: 14px !important;
  line-height: 20px !important;
}


/* =========================================================
   BOTÓN SUSCRÍBETE REAL
   HTML:
   <a id="submit-newsletterpro-subscribe2"
      class="np-button submit-newsletterpro-subscribe btnsubnews">
   ========================================================= */

.box-footerlink .btnsubnews,
.box-footerlink a.btnsubnews,
.box-footerlink #submit-newsletterpro-subscribe2 {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #0A1675 !important;
  border: 2px solid #0A1675 !important;
  color: #ffffff !important;
  min-height: 40px !important;
  padding: 10px 26px !important;
  font-size: 14px !important;
  line-height: 18px !important;
  font-weight: 700 !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  cursor: pointer !important;
  margin-top: 10px !important;
}

.box-footerlink .btnsubnews span,
.box-footerlink #submit-newsletterpro-subscribe2 span {
  color: #ffffff !important;
  font-size: 14px !important;
  line-height: 18px !important;
  font-weight: 700 !important;
}

.box-footerlink .btnsubnews:hover,
.box-footerlink a.btnsubnews:hover,
.box-footerlink #submit-newsletterpro-subscribe2:hover {
  background: #C75125 !important;
  border-color: #C75125 !important;
  color: #ffffff !important;
  text-decoration: none !important;
}

.box-footerlink .btnsubnews:hover span,
.box-footerlink #submit-newsletterpro-subscribe2:hover span {
  color: #ffffff !important;
}


/* =========================================================
   TEXTO LEGAL NEWSLETTER
   "He leído y acepto..."
   ========================================================= */

.box-footerlink .newsletterpro-terms,
.box-footerlink .newsletterpro-conditions,
.box-footerlink .newsletterpro-privacy,
.box-footerlink .newsletterpro-checkbox,
.box-footerlink .form-group label,
.box-footerlink .checkbox label,
.box-footerlink .custom-checkbox label {
  font-size: 11px !important;
  line-height: 15px !important;
  white-space: nowrap !important;
  color: #222222 !important;
}

.box-footerlink .newsletterpro-terms a,
.box-footerlink .newsletterpro-conditions a,
.box-footerlink .newsletterpro-privacy a,
.box-footerlink .form-group label a,
.box-footerlink .checkbox label a,
.box-footerlink .custom-checkbox label a {
  font-size: 11px !important;
  line-height: 15px !important;
  color: #0A1675 !important;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 991px) {
  .row.box-footerlink.ApRow,
  .box-footerlink.ApRow,
  .box-footerlink {
    padding: 32px 0 28px !important;
  }

  .box-footerlink .ApColumn,
  .box-footerlink [class*="col-"],
  .box-footerlink .ApRawHtml {
    text-align: center !important;
    margin-bottom: 22px;
  }

  .box-footerlink .ApRawHtml img.logo {
    max-width: 180px !important;
    margin: 0 auto 18px !important;
  }

  .box-footerlink .ApRawHtml p {
    text-align: center !important;
  }

  .box-footerlink #social_block {
    text-align: center !important;
  }

  .box-footerlink #social_block ul {
    justify-content: center !important;
  }

  .box-footerlink .newsletterpro-terms,
  .box-footerlink .newsletterpro-conditions,
  .box-footerlink .newsletterpro-privacy,
  .box-footerlink .newsletterpro-checkbox,
  .box-footerlink .form-group label,
  .box-footerlink .checkbox label,
  .box-footerlink .custom-checkbox label {
    white-space: normal !important;
  }
}

@media (max-width: 767px) {
  .row.box-footerlink.ApRow,
  .box-footerlink.ApRow,
  .box-footerlink {
    padding: 28px 0 24px !important;
  }

  .box-footerlink h2,
  .box-footerlink h3,
  .box-footerlink h4,
  .box-footerlink .title_block,
  .box-footerlink .block-title {
    font-size: 16px;
    line-height: 24px;
  }

  .box-footerlink p,
  .box-footerlink div,
  .box-footerlink span,
  .box-footerlink li,
  .box-footerlink a {
    font-size: 14px;
    line-height: 23px;
  }
}
.newslabel,
.newslabel a{
	    font-size: 12px !important
}

/* =========================================================
   TUROPA - BLOQUES INFORMATIVOS HOME
   ========================================================= */

.tdt-info-blocks {
  width: 100%;
  background: #ffffff;
  margin: 0;
  padding: 0;
}

/* PASOS */
.tdt-steps-row {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #d5d1d1;
    padding: 14px 48px;
    gap: 35px;
}

.tdt-step-item {
 display: flex;
  align-items: center;
  gap: 14px;
  
}

.tdt-step-number {
  width: 64px;
  height: 64px;
  min-width: 64px;
  border-radius: 50%;
  background: radial-gradient(circle at 72% 50%, #f0f0f0 0%, #9f9f9f 28%, #111111 72%);
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 34px;
  line-height: 1;
  font-weight: 700;
}

.tdt-step-text strong {
  display: block;
  color: #111111;
  font-size: 15px;
  line-height: 20px;
  font-weight: 700;
}

.tdt-step-text span {
  display: block;
  color: #111111;
  font-size: 14px;
  line-height: 20px;
  font-weight: 400;
}

/* SERVICIOS */
.tdt-services-row {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #ffffff;
  padding: 10px 28px 16px;
  gap: clamp(14px, 2vw, 34px);
  flex-wrap: wrap;
}

.tdt-service-item {
  display: flex;
  align-items: center;
  gap: 10px;
  flex: 0 1 auto;
  min-width: 170px;
  white-space: nowrap;
}

.tdt-service-item img {
  width: clamp(42px, 4.8vw, 58px);
  height: clamp(42px, 4.8vw, 58px);
  object-fit: contain;
  display: block;
  flex: 0 0 auto;
}

.tdt-service-item strong {
  display: block;
  color: #111111;
  font-size: clamp(15px, 1.45vw, 21px);
  line-height: 1.15;
  font-weight: 700;
  text-transform: uppercase;
}

.tdt-service-item span {
  display: block;
  color: #111111;
  font-size: clamp(14px, 1.25vw, 19px);
  line-height: 1.2;
  font-weight: 400;
}

/* BLOQUE ÚNICOS */
.tdt-unique-row {
  position: relative;
  min-height: 230px;
  background-image: url('/imagenespropias/fondo-unicos.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding-top: 60px;
}

.tdt-unique-row:before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.08);
  z-index: 0;
}

.tdt-unique-content {
  position: relative;
  z-index: 1;
  text-align: center;
}

.tdt-unique-content h2 {
  color: #ffffff;
  font-size: 28px;
  line-height: 36px;
  font-weight: 700;
  text-transform: uppercase;
  margin: 0 0 25px;
  letter-spacing: 0.5px;
}

.tdt-unique-links {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 34px;
  flex-wrap: wrap;
}

.tdt-unique-links a {
  color: #ffffff !important;
  font-size: 23px;
  line-height: 30px;
  font-weight: 700;
  text-decoration: underline !important;
  text-underline-offset: 2px;
}

.tdt-unique-links a:hover {
  color: #ffffff !important;
  text-decoration: underline !important;
}

/* RESPONSIVE */
@media (max-width: 1199px) {
  .tdt-services-row {
    gap: 20px 28px;
  }

  .tdt-service-item {
    flex: 0 1 calc(33.333% - 28px);
    min-width: 220px;
  }
}

@media (max-width: 991px) {
  .tdt-steps-row {
    padding: 18px 24px;
    gap: 18px;
  }

  .tdt-step-number {
    width: 54px;
    height: 54px;
    min-width: 54px;
    font-size: 28px;
  }

  .tdt-service-item {
    flex: 0 1 calc(50% - 28px);
    min-width: 240px;
  }

  .tdt-unique-row {
    min-height: 280px;
    padding-top: 70px;
  }
}

@media (max-width: 767px) {
  .tdt-steps-row {
    flex-direction: column;
    align-items: flex-start;
  }

  .tdt-step-item {
    width: 100%;
  }

  .tdt-services-row {
    justify-content: flex-start;
    padding: 18px 20px;
  }

  .tdt-service-item {
    flex: 0 1 100%;
    min-width: 0;
  }

  .tdt-unique-links {
    flex-direction: column;
    gap: 12px;
  }

  .tdt-unique-content h2 {
    font-size: 24px;
    line-height: 32px;
  }

  .tdt-unique-links a {
    font-size: 20px;
    line-height: 28px;
  }
}
/* =========================================================
   TUROPA - BLOQUES TEXTO SEO PORTADA
   h2portada / h3portada / pportada
   ========================================================= */

/* Contenedor de textos de portada */
.h2portada,
.h3portada,
.pportada {
  font-family: 'Open Sans', Arial, Helvetica, sans-serif;
}

/* Título principal de cada bloque */
.h2portada {
  color: #0A1675;
  font-size: 30px;
  line-height: 38px;
  font-weight: 700;
  text-align: center;
  margin: 0 0 24px;
}

/* Subtítulo */
.h3portada {
  color: #0A1675;
  font-size: 24px;
  line-height: 32px;
  font-weight: 700;
  text-align: center;
  margin: 34px 0 20px;
}

/* Párrafos */
.pportada {

  text-align: center;

}

/* Negritas dentro de los textos */
.pportada strong {
  color: #222222;
  font-weight: 700;
}

/* Enlaces dentro de los textos */
.pportada a {
  color: #0A1675 !important;
  font-weight: 600;
  text-decoration: none;
}

.pportada a:hover {
  color: #C75125 !important;
  text-decoration: underline;
}

/* Separación vertical del bloque completo cuando va dentro de container */
.container .h2portada:first-child {
  margin-top: 0;
}

/* Si estos bloques van seguidos en portada */
.tdt-info-blocks + .container,
.contendorportadaazul + .container,
.container:has(.h2portada) {
  padding-bottom: 45px;
}

/* Limitar lectura en pantallas grandes sin romper el container */
.container .h2portada,
.container .h3portada,
.container .pportada {
  max-width: 1120px;
  margin-left: auto;
  margin-right: auto;
}

/* Responsive */
@media (max-width: 991px) {
  .h2portada {
    font-size: 27px;
    line-height: 35px;
    margin-bottom: 20px;
  }

  .h3portada {
    font-size: 22px;
    line-height: 30px;
    margin: 30px 0 18px;
  }


  .container:has(.h2portada) {
    padding-top: 45px;
    padding-bottom: 35px;
  }
}

@media (max-width: 767px) {
  .h2portada {
    font-size: 24px;
    line-height: 32px;
  }

  .h3portada {
    font-size: 20px;
    line-height: 28px;
  }


  .container:has(.h2portada) {
    padding-top: 38px;
    padding-bottom: 30px;
  }
}

/* =========================================================
   TUROPA - BLOQUE LATERAL AYUDA PLEGABLE CON MEMORIA
   ========================================================= */

.tdt-side-help {
  position: fixed;
  top: 50%;
  right: 0;
  z-index: 9999;
  transform: translateY(-50%);
  font-family: 'Open Sans', Arial, Helvetica, sans-serif;
  transition: transform 0.25s ease;
}

/* Panel */
.tdt-side-help-panel {
  position: relative;
  width: 255px;
  background: #d5d1d1;
  border-radius: 48px 0 0 48px;
  padding: 34px 18px 28px 42px;
  box-shadow: 0 4px 18px rgba(0,0,0,0.18);
}

/* Estado cerrado: se desplaza todo el bloque, incluida la pestaña */
.tdt-side-help.is-closed {
  transform: translateY(-50%) translateX(210px);
}

/* Pestaña/flecha */
.tdt-side-help-tab {
  position: absolute;
  top: 50%;
  left: -32px;
  width: 32px;
  height: 54px;
  transform: translateY(-50%);
  background: #d5d1d1;
  border: 0;
  border-radius: 18px 0 0 18px;
  box-shadow: -3px 3px 10px rgba(0,0,0,0.12);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
  z-index: 2;
}

/* Flecha */
.tdt-side-help-tab span:before {
  content: "›";
  color: #111111;
  font-size: 28px;
  line-height: 1;
  font-weight: 700;
}

/* Cuando está cerrado, flecha para abrir */
.tdt-side-help.is-closed .tdt-side-help-tab span:before {
  content: "‹";
}

/* Área visible derecha cuando está cerrado: también abre porque realmente es el mismo bloque */
.tdt-side-help.is-closed .tdt-side-help-panel {
  cursor: pointer;
}

/* Items */
.tdt-side-help-item {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #111111 !important;
  text-decoration: none !important;
  margin: 0 0 11px;
}

.tdt-side-help-item:last-child {
  margin-bottom: 0;
}

.tdt-side-help-item img {
  width: 42px;
  height: 42px;
  object-fit: contain;
  display: block;
  flex: 0 0 42px;
}

.tdt-side-help-item strong {
  display: block;
  color: #111111;
  font-size: 15px;
  line-height: 17px;
  font-weight: 700;
  text-transform: uppercase;
}

.tdt-side-help-item span {
  display: block;
  color: #111111;
  font-size: 14px;
  line-height: 17px;
  font-weight: 400;
}

.tdt-side-help-item:hover strong,
.tdt-side-help-item:hover span {
  color: #0A1675;
}

/* Móvil */
@media (max-width: 767px) {
  .tdt-side-help {
    top: auto;
    bottom: 90px;
    transform: none;
  }

  .tdt-side-help.is-closed {
    transform: translateX(190px);
  }

  .tdt-side-help-panel {
    width: 230px;
    padding: 28px 14px 24px 36px;
    border-radius: 38px 0 0 38px;
  }

  .tdt-side-help-tab {
    left: -28px;
    width: 28px;
    height: 48px;
    border-radius: 16px 0 0 16px;
  }

  .tdt-side-help-tab span:before {
    font-size: 24px;
  }

  .tdt-side-help-item img {
    width: 36px;
    height: 36px;
    flex-basis: 36px;
  }

  .tdt-side-help-item strong {
    font-size: 13px;
    line-height: 15px;
  }

  .tdt-side-help-item span {
    font-size: 12px;
    line-height: 15px;
  }
}

/* =========================================================
   TUROPA - BLOQUE LATERAL AYUDA PLEGABLE CON MEMORIA
   Flecha integrada dentro del panel
   ========================================================= */

.tdt-side-help {
  position: fixed;
  top: 50%;
  right: 0;
  z-index: 9999;
  transform: translateY(-50%);
  font-family: 'Open Sans', Arial, Helvetica, sans-serif;
  transition: transform 0.25s ease;
}

/* Estado cerrado */
.tdt-side-help.is-closed {
  transform: translateY(-50%) translateX(218px);
}

/* Panel principal */
.tdt-side-help-panel {
  position: relative;
  width: 255px;
  background: #d5d1d1;
  border-radius: 48px 0 0 48px;
  padding: 34px 18px 28px 42px;
  box-shadow: 0 4px 18px rgba(0,0,0,0.12);
  cursor: default;
}

/* Cuando está cerrado, la zona visible también abre */
.tdt-side-help.is-closed .tdt-side-help-panel {
  cursor: pointer;
}

/* Botón flecha integrado dentro del panel */
.tdt-side-help-tab {
  position: absolute;
  top: 50%;
  left: 10px;
  width: 24px;
  height: 42px;
  transform: translateY(-50%);
  background: transparent;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
  margin: 0;
  z-index: 20;
  appearance: none;
  -webkit-appearance: none;
}

/* Sin rebordes en hover/focus */
.tdt-side-help-tab:hover,
.tdt-side-help-tab:focus,
.tdt-side-help-tab:active {
  background: transparent;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}

/* Flecha cuando está abierto: cerrar */
.tdt-side-help-tab span:before {
  content: "›";
  color: #111111;
  font-size: 24px;
  line-height: 1;
  font-weight: 700;
}

/* Flecha cuando está cerrado: abrir */
.tdt-side-help.is-closed .tdt-side-help-tab span:before {
  content: "‹";
}

/* Items */
.tdt-side-help-item {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #111111 !important;
  text-decoration: none !important;
  margin: 0 0 11px;
}

.tdt-side-help-item:last-child {
  margin-bottom: 0;
}

.tdt-side-help-item img {
  width: 42px;
  height: 42px;
  object-fit: contain;
  display: block;
  flex: 0 0 42px;
}

.tdt-side-help-item strong {
  display: block;
  color: #111111;
  font-size: 15px;
  line-height: 17px;
  font-weight: 700;
  text-transform: uppercase;
}

.tdt-side-help-item span {
  display: block;
  color: #111111;
  font-size: 14px;
  line-height: 17px;
  font-weight: 400;
}

.tdt-side-help-item:hover strong,
.tdt-side-help-item:hover span {
  color: #0A1675;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 767px) {
  .tdt-side-help {
    top: auto;
    bottom: 90px;
    transform: none;
  }

  .tdt-side-help.is-closed {
    transform: translateX(198px);
  }

  .tdt-side-help-panel {
    width: 230px;
    padding: 28px 14px 24px 36px;
    border-radius: 38px 0 0 38px;
  }

  .tdt-side-help-tab {
    left: 8px;
    width: 22px;
    height: 38px;
  }

  .tdt-side-help-tab span:before {
    font-size: 22px;
  }

  .tdt-side-help-item {
    gap: 9px;
    margin-bottom: 10px;
  }

  .tdt-side-help-item img {
    width: 36px;
    height: 36px;
    flex-basis: 36px;
  }

  .tdt-side-help-item strong {
    font-size: 13px;
    line-height: 15px;
  }

  .tdt-side-help-item span {
    font-size: 12px;
    line-height: 15px;
  }
}
/* =========================================================
   TUROPA - BREADCRUMB TRANSPARENTE EN TODAS MENOS PORTADA
   Categorías, fichas de producto, CMS, etc.
   ========================================================= */

body:not(#index) #wrapper .breadcrumb,
body:not(#index) nav.breadcrumb,
body:not(#index) .breadcrumb {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}

/* Quitar fondo del before del tema */
body:not(#index) #wrapper .breadcrumb:before,
body:not(#index) nav.breadcrumb:before,
body:not(#index) .breadcrumb:before {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  opacity: 0 !important;
}

/* Por si usa after */
body:not(#index) #wrapper .breadcrumb:after,
body:not(#index) nav.breadcrumb:after,
body:not(#index) .breadcrumb:after {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  opacity: 0 !important;
}

/* Padres que a veces meten la franja gris */
body:not(#index) #wrapper,
body:not(#index) #wrapper .breadcrumb-wrapper {
  background: transparent !important;
  background-color: transparent !important;
}
/* =========================================================
   TUROPA - DESCRIPCIONES Y TÍTULO CATEGORÍA FULL WIDTH
   Estilo centrado como textos de portada
   ========================================================= */

body#category .tdt-category-description-full,
body#category .tdt-category-title-full {
  width: 100%;
  max-width: 1120px;
  clear: both;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0;
  margin-left: auto;
  margin-right: auto;
  color: #222222;
  text-align: center;
}

/* Descripción superior */
body#category .tdt-category-description-top {
  margin-top: 0;
  margin-bottom: 34px;
}

/* Descripción inferior */
body#category .tdt-category-description-bottom {
  margin-top: 42px;
  margin-bottom: 42px;
}

/* Título full width cuando NO hay descripción */
body#category .tdt-category-title-full {
  margin-top: 0;
  margin-bottom: 34px;
}

body#category .tdt-category-title-full h1 {
  color: #0A1675;
  font-size: 30px;
  line-height: 38px;
  font-weight: 700;
  text-align: center;
  margin: 0;
}

/* Títulos dentro de las descripciones */
body#category .tdt-category-description-full h1,
body#category .tdt-category-description-full h2 {
  color: #0A1675;
  font-size: 30px;
  line-height: 38px;
  font-weight: 700;
  text-align: center;
  margin: 0 0 24px;
}

body#category .tdt-category-description-full h3 {
  color: #0A1675;
  font-size: 24px;
  line-height: 32px;
  font-weight: 700;
  text-align: center;
  margin: 34px 0 20px;
}

/* Párrafos */
body#category .tdt-category-description-full p {
  color: #222222;
  font-size: 17px;
  line-height: 30px;
  font-weight: 400;
  text-align: center;
  margin: 0 0 20px;
}

/* Listas por si se usan en descripción */
body#category .tdt-category-description-full ul,
body#category .tdt-category-description-full ol {
  display: inline-block;
  text-align: left;
  margin: 0 auto 20px;
  padding-left: 22px;
}

body#category .tdt-category-description-full li {
  color: #222222;
  font-size: 17px;
  line-height: 30px;
  margin-bottom: 6px;
}

/* Negritas */
body#category .tdt-category-description-full strong {
  color: #222222;
  font-weight: 700;
}

/* Enlaces */
body#category .tdt-category-description-full a {
  color: #0A1675 !important;
  font-weight: 600;
  text-decoration: none;
}

body#category .tdt-category-description-full a:hover {
  color: #C75125 !important;
  text-decoration: underline;
}

/* Quitar formato heredado si dentro viene algo con card/block */
body#category .tdt-category-description-full .card,
body#category .tdt-category-description-full .card-block,
body#category .tdt-category-description-full .block-category {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Responsive */
@media (max-width: 991px) {
  body#category .tdt-category-description-full,
  body#category .tdt-category-title-full {
    max-width: 100%;
    padding-left: 15px;
    padding-right: 15px;
  }

  body#category .tdt-category-title-full h1,
  body#category .tdt-category-description-full h1,
  body#category .tdt-category-description-full h2 {
    font-size: 27px;
    line-height: 35px;
    margin-bottom: 20px;
  }

  body#category .tdt-category-description-full h3 {
    font-size: 22px;
    line-height: 30px;
  }

  body#category .tdt-category-description-full p,
  body#category .tdt-category-description-full li {
    font-size: 16px;
    line-height: 28px;
  }
}

@media (max-width: 767px) {
  body#category .tdt-category-title-full h1,
  body#category .tdt-category-description-full h1,
  body#category .tdt-category-description-full h2 {
    font-size: 24px;
    line-height: 32px;
  }

  body#category .tdt-category-description-full h3 {
    font-size: 20px;
    line-height: 28px;
  }

  body#category .tdt-category-description-full p,
  body#category .tdt-category-description-full li {
    font-size: 15.5px;
    line-height: 27px;
  }

  body#category .tdt-category-description-top {
    margin-bottom: 28px;
  }

  body#category .tdt-category-description-bottom {
    margin-top: 34px;
    margin-bottom: 34px;
  }
}
/* =========================================================
   TUROPA - TOPBAR PORTES FULL WIDTH EN TODAS MENOS PORTADA
   ========================================================= */

body:not(#index) .header-banner,
body:not(#index) .header-banner .inner {
  background: #0A1675 !important;
  max-width: none !important;
  width: 100% !important;
}

body:not(#index) .tdt-header-topbar-row {
  position: relative;
  background: #0A1675 !important;
  color: #ffffff !important;
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: 13px 0 !important;
  overflow: visible !important;
}

/* Azul a pantalla completa aunque esté dentro de container/inner */
body:not(#index) .tdt-header-topbar-row:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  background: #0A1675 !important;
  z-index: 0;
}

/* El texto por encima del fondo */
body:not(#index) .tdt-header-topbar-row > *,
body:not(#index) .tdt-header-topbar-row .ApColumn,
body:not(#index) .tdt-header-topbar-row .ApHtml,
body:not(#index) .tdt-header-topbar-row .block,
body:not(#index) .tdt-header-topbar-row .block_content {
  position: relative;
  z-index: 1;
  background: transparent !important;
}

/* Texto */
body:not(#index) .tdt-header-topbar-row,
body:not(#index) .tdt-header-topbar-row p,
body:not(#index) .tdt-header-topbar-row span,
body:not(#index) .tdt-header-topbar-row div,
body:not(#index) .tdt-header-topbar-row a {
  color: #ffffff !important;
  text-align: center;
  font-size: 18px;
  font-weight: 400 !important;
  text-transform: uppercase;
  letter-spacing: 0.2px;
  line-height: 22px;
}

/* Evita márgenes internos raros */
body:not(#index) .tdt-header-topbar-row .ApHtml,
body:not(#index) .tdt-header-topbar-row .block,
body:not(#index) .tdt-header-topbar-row .block_content,
body:not(#index) .tdt-header-topbar-row p {
  margin: 0 !important;
  padding: 0 18px !important;
}

/* =========================================================
   TUROPA - WISHLIST ARRIBA DERECHA PRODUCTO
   Corrige posición y doble corazón
   ========================================================= */

/* Columna derecha de producto */
body#product .col-form_id-form_15874367062488778 {
  position: relative !important;
  padding-right: 55px;
}

/* Evitar que el absolute tome como referencia la zona de cantidad/carrito */
body#product .col-form_id-form_15874367062488778 .product-actions,
body#product .col-form_id-form_15874367062488778 .product-add-to-cart,
body#product .col-form_id-form_15874367062488778 .product-quantity,
body#product .col-form_id-form_15874367062488778 .p-cartwapper {
  position: static !important;
}

/* Wishlist arriba derecha de la columna */
body#product .col-form_id-form_15874367062488778 .leo-compare-wishlist-button {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  left: auto !important;
  bottom: auto !important;
  z-index: 50;
  width: 38px !important;
  height: 38px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/* Contenedor interno */
body#product .col-form_id-form_15874367062488778 .leo-compare-wishlist-button .wishlist {
  width: 38px !important;
  height: 38px !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Botón limpio */
body#product .col-form_id-form_15874367062488778 .leo-wishlist-button {
  position: relative !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  color: #0A1675 !important;
  overflow: hidden;
}

/* Ocultar TODO lo que pinta Leo dentro para evitar doble corazón */
body#product .col-form_id-form_15874367062488778 .leo-wishlist-button .leo-wishlist-bt-content,
body#product .col-form_id-form_15874367062488778 .leo-wishlist-button .icon-wishlist,
body#product .col-form_id-form_15874367062488778 .leo-wishlist-button i,
body#product .col-form_id-form_15874367062488778 .leo-wishlist-button .name-btn-product {
  display: none !important;
}

/* Pintamos nosotros un único corazón */
body#product .col-form_id-form_15874367062488778 .leo-wishlist-button:before {
  content: "♡";
  display: block;
  color: #0A1675;
  font-size: 32px;
  line-height: 38px;
  font-weight: 400;
}

/* Hover */
body#product .col-form_id-form_15874367062488778 .leo-wishlist-button:hover:before {
  color: #C75125;
}

/* Si el módulo marca el producto como añadido */
body#product .col-form_id-form_15874367062488778 .leo-wishlist-button.added:before,
body#product .col-form_id-form_15874367062488778 .leo-wishlist-button.wishlist-added:before,
body#product .col-form_id-form_15874367062488778 .leo-wishlist-button.active:before {
  content: "♥";
}

/* Ocultar comparar si comparte bloque */
body#product .col-form_id-form_15874367062488778 .compare,
body#product .col-form_id-form_15874367062488778 .leo-compare-button,
body#product .col-form_id-form_15874367062488778 .add_to_compare,
body#product .col-form_id-form_15874367062488778 .add-to-compare {
  display: none !important;
}
/* =========================================================
   TUROPA - BOTÓN AÑADIR A LA CESTA EN FICHA PRODUCTO
   Azul / naranja corporativo
   ========================================================= */

body#product .product-add-to-cart .add-to-cart,
body#product button.add-to-cart,
body#product .btn.add-to-cart {
  background: #0A1675 !important;
  border-color: #0A1675 !important;
  color: #ffffff !important;
  box-shadow: none !important;
  font-weight: 700;
  text-transform: uppercase;
}

/* Icono carrito */
body#product .product-add-to-cart .add-to-cart i,
body#product button.add-to-cart i,
body#product .btn.add-to-cart i {
  color: #ffffff !important;
}

/* Hover naranja */
body#product .product-add-to-cart .add-to-cart:hover,
body#product button.add-to-cart:hover,
body#product .btn.add-to-cart:hover,
body#product .product-add-to-cart .add-to-cart:focus,
body#product button.add-to-cart:focus,
body#product .btn.add-to-cart:focus {
  background: #C75125 !important;
  border-color: #C75125 !important;
  color: #ffffff !important;
}

/* Active */
body#product .product-add-to-cart .add-to-cart:active,
body#product button.add-to-cart:active,
body#product .btn.add-to-cart:active {
  background: #0A1675 !important;
  border-color: #0A1675 !important;
  color: #ffffff !important;
}