/*
Theme Name: Hello Elementor Child
Theme URI: https://www.solucionweb.com/
Description: Tema hijo personalizado para Hello Elementor con login privado, reglas de acceso, botones flotantes configurables, WhatsApp, shortcodes básicos administrables y seguridad antispam para formularios.
Author: Solución Web
Author URI: https://www.solucionweb.com/
Template: hello-elementor
Version: 2.4.4
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: custom-login, translation-ready, elementor, child-theme
*/




/* Deshabilitar la opción de expandir (resize) para todos los campos de textarea */
textarea {
    resize: none !important;
}





/* GROW SUAVE SOLO EN EL ITEM PRINCIPAL SIN DROPDOWN */
.menu-grow-soft .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-item{
  display: inline-flex;
  align-items: center;
  transition: transform .35s cubic-bezier(.22,.61,.36,1);
  transform-origin: center center;
  will-change: transform;
}

.menu-grow-soft .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-item:hover{
  transform: scale(1.05);
}



/* QUITAR BORDER EL FOCUS EN FORMULARIOS clase CSS: no-focus-line*/
/* SOLO formularios con la clase no-focus-line */
.no-focus-line .elementor-form input:focus,
.no-focus-line .elementor-form textarea:focus,
.no-focus-line .elementor-form select:focus,
.no-focus-line .elementor-field-group input:focus,
.no-focus-line .elementor-field-group textarea:focus,
.no-focus-line .elementor-field-group select:focus {
  outline: none !important;
  box-shadow: none !important;
}



/* PRECIO PRODUCTO - SOLO AJUSTE DEL PRECIO TACHADO
   Clase del widget Product Price: min-price
   Elementor controla el precio principal.
*/

/* precio normal */
.min-price .price {
  margin: 0;
  color: #000 !important;
  font: 700 18px "Poppins", sans-serif;
}

.min-price .price del {
  font-size: 9px !important;
  font-weight: 700;
  opacity: 1;
  color: #000 !important;
}

.min-price .price ins {
  color: #002A89 !important;
  text-decoration: none;
  background: transparent;
}



/* MARQUEE DE MARCAS */

/* Widget completo */
.brand-marquee {
  width: 100%;
  overflow: hidden;
  padding: 0;
}

/* Contenedor generado por Elementor */
.brand-marquee .elementor-widget-container {
  overflow: hidden;
}

/* Pista animada */
.brand-marquee .gallery {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  width: max-content;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
  animation: brand-scroll 40s linear infinite;
  will-change: transform;
}

/* Cada grupo idéntico de logos */
.brand-marquee .brand-group {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  height: 120px;
}

/* Cada logo */
.brand-marquee .gallery-item {
  display: flex !important;
  flex: 0 0 240px !important;
  align-items: center !important;
  justify-content: center !important;
  width: 240px !important;
  height: 120px;
  margin: 0 !important;
  padding: 20px 40px !important;
  box-sizing: border-box;
}

/* Elementos internos de la galería */
.brand-marquee .gallery-icon,
.brand-marquee .gallery-icon a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100%;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0;
}

/* Imágenes */
.brand-marquee .gallery-item img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: 180px;
  max-height: 65px;
  object-fit: contain;
  object-position: center;
  border: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Movimiento continuo */
@keyframes brand-scroll {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-50%);
  }
}

/* Tablet */
@media (max-width: 1024px) {
  .brand-marquee .brand-group {
    height: 100px;
  }

  .brand-marquee .gallery-item {
    flex-basis: 190px !important;
    width: 190px !important;
    height: 100px;
    padding: 18px 30px !important;
  }

  .brand-marquee .gallery-item img {
    max-width: 145px;
    max-height: 55px;
  }
}

/* Móvil */
@media (max-width: 767px) {
  .brand-marquee .gallery {
    animation-duration: 32s;
  }

  .brand-marquee .brand-group {
    height: 85px;
  }

  .brand-marquee .gallery-item {
    flex-basis: 145px !important;
    width: 145px !important;
    height: 85px;
    padding: 15px 23px !important;
  }

  .brand-marquee .gallery-item img {
    max-width: 110px;
    max-height: 45px;
  }
}

/* Accesibilidad */
@media (prefers-reduced-motion: reduce) {
  .brand-marquee .gallery {
    animation-play-state: paused;
  }
}






/* REDUCIR ESPACIO ENTRE BOTONES DE SHARE PLANTILLA BLOGS SINGLE POST */
/* Share Buttons: íconos más juntos (solo donde pongas .share-compact) */
.share-compact .elementor-grid{
  --grid-column-gap: 0px; /* <-- ajusta este valor */
  --grid-row-gap: 3px;
   /* o flex-start si los quieres pegados a la izquierda */
}

/* Por si Elementor mete márgenes extra en items/botones */
.share-compact .elementor-grid-item,
.share-compact .elementor-share-btn{
  margin: -4px !important;
}





/* Icono relleno de WhatsApp */
.elementor-share-btn_whatsapp .elementor-share-btn__icon svg,
.elementor-share-btn_whatsapp .elementor-share-btn__icon i {
    display: none !important;
}

.elementor-share-btn_whatsapp .elementor-share-btn__icon::before {
    content: "";
    display: block;
    width: 1.6em;
    height: 1.6em; 
    background-color: currentColor;
    -webkit-mask-image: url('/wp-content/uploads/2026/06/whatsapp.svg');
    mask-image: url('/wp-content/uploads/2026/06/whatsapp.svg');
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
}




/* BLOG Y BUSCADOR */
/*.page-blogitems .elementor-post{
	padding: 0 0 15px 0;
}
.page-blogitems .elementor-post__title{
	padding: 0 0 5px 0;
}
.page-blogitems .elementor-post__excerpt{ 
	min-height: 60px;
	padding: 0 0 10px 0;
}
.page-blogitems .elementor-post__excerpt p{
	display: -webkit-box;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.page-blogitems a.elementor-post__read-more{
	background: #FF2B13;
    color: #fff !important;
    border-radius: 20px;
    padding: 7px 20px;
}
.page-blogitems a.elementor-post__read-more:hover {
    background: #002A89;
	color: #fff !important;
}*/





/* BLOG Y BUSCADOR */

.page-blogitems .elementor-post {
	padding: 0 0 15px 0;
}

.page-blogitems .elementor-post__title {
	padding: 0 0 5px 0;
}

.page-blogitems .elementor-post__excerpt { 
	min-height: 60px;
	padding: 0 0 10px 0;
}

.page-blogitems .elementor-post__excerpt p {
	display: -webkit-box;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Botón leer más */
.page-blogitems a.elementor-post__read-more {
	background: #FF2B13;
	color: #fff !important;
	border-radius: 20px;
	padding: 7px 20px;

	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;

	text-decoration: none;
}

.page-blogitems a.elementor-post__read-more::after {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	flex: 0 0 16px;

	background-color: currentColor;

	-webkit-mask-image: url("/wp-content/uploads/2026/06/flecha-derecha.svg");
	mask-image: url("/wp-content/uploads/2026/06/flecha-derecha.svg");

	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;

	-webkit-mask-position: center;
	mask-position: center;

	-webkit-mask-size: contain;
	mask-size: contain;

	transition: -webkit-mask-image .25s ease, mask-image .25s ease;
}

.page-blogitems a.elementor-post__read-more:hover {
	background: #002A89;
	color: #fff !important;
}

.page-blogitems a.elementor-post__read-more:hover::after {
	-webkit-mask-image: url("/wp-content/uploads/2026/07/flecha-hacia-arriba-a-la-derecha.svg");
	mask-image: url("/wp-content/uploads/2026/07/flecha-hacia-arriba-a-la-derecha.svg");
}





/* Alinear títulos y contenido del blog */
.blog-align .elementor-post__title {
	line-height: 1.2em;
	min-height: 3.6em;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
}






/* FILTRO DE TIENDA */

.woof_sid_filtro-tienda {
  width: 100%;
  font-family: "Poppins", sans-serif;
}

/* ESTRUCTURA GENERAL */

/*.woof_sid_filtro-tienda .woof_redraw_zone {
  display: grid;
  grid-template-columns:
    minmax(120px, 1fr)
    minmax(120px, 1fr)
    minmax(120px, 1fr)
    minmax(150px, 1fr)
    minmax(185px, 1.15fr)
    minmax(260px, 1.55fr);
  align-items: start;
  gap: 20px;
  width: 100%;
}*/


.woof_sid_filtro-tienda .woof_redraw_zone {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  align-items: start;
  gap: 20px;
  width: 100%;
}


.woof_sid_filtro-tienda .woof_price_filter {
  min-width: 260px;
}

.woof_sid_filtro-tienda .orden-precio {
  min-width: 190px;
}

.woof_sid_filtro-tienda .orden-precio label {
  white-space: nowrap;
}





.woof_sid_filtro-tienda .woof_container,
.woof_sid_filtro-tienda .orden-precio {
  width: 100%;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
}

.woof_sid_filtro-tienda .woof_container_inner,
.woof_sid_filtro-tienda .woof_block_html_items {
  width: 100%;
}

/* TÍTULOS */

.woof_sid_filtro-tienda .woof_container_inner > h4,
.woof_sid_filtro-tienda .orden-precio label {
  display: block;
  margin: 0 0 10px 5px !important;
  padding: 0 !important;
  font-family: "Poppins", sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  text-transform: uppercase;
  line-height: 1.2;
  color: #111;
}

/* DESPLEGABLES HUSKY */

.woof_sid_filtro-tienda .chosen-container {
  width: 100% !important;
  max-width: 100% !important;
  font-family: "Poppins", sans-serif !important;
  font-size: 15px !important;
}

.woof_sid_filtro-tienda
  .chosen-container-single
  .chosen-single {
  display: flex;
  align-items: center;
  width: 100%;
  height: 42px;
  padding: 0 42px 0 16px;
  border: 1px solid #d8d8d8;
  border-radius: 20px;
  background: #fff;
  box-shadow: none;
  color: #222;
  line-height: 40px;
}

.woof_sid_filtro-tienda
  .chosen-container-single
  .chosen-single
  span {
  margin: 0;
  font-family: "Poppins", sans-serif;
  font-size: 15px;
  font-weight: 400;
  color: #222;
}

.woof_sid_filtro-tienda
  .chosen-container-single
  .chosen-single
  div {
  right: 12px;
  width: 22px;
}

.woof_sid_filtro-tienda
  .chosen-container-single
  .chosen-single
  div
  b {
  background: none !important;
}

.woof_sid_filtro-tienda
  .chosen-container-single
  .chosen-single
  div::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 4px;
  width: 8px;
  height: 8px;
  border-right: 1.5px solid #555;
  border-bottom: 1.5px solid #555;
  transform: translateY(-65%) rotate(45deg);
}

.woof_sid_filtro-tienda
  .chosen-container-active
  .chosen-single,
.woof_sid_filtro-tienda
  .chosen-with-drop
  .chosen-single {
  border-color: #ff2b13;
  box-shadow: none;
}

/* Ocultar búsqueda interna de los dropdowns */
.woof_sid_filtro-tienda .chosen-search {
  display: none !important;
}

/* Menú desplegable */

.woof_sid_filtro-tienda .chosen-drop {
  margin-top: 6px;
  overflow: hidden;
  border: 1px solid #d8d8d8;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.1);
}

.woof_sid_filtro-tienda .chosen-results {
  max-height: 220px;
  margin: 0;
  padding: 6px;
}

.woof_sid_filtro-tienda
  .chosen-container
  .chosen-results
  li {
  padding: 9px 12px;
  border-radius: 8px;
  font-family: "Poppins", sans-serif;
  font-size: 14px;
  color: #222;
}

.woof_sid_filtro-tienda
  .chosen-container
  .chosen-results
  li.highlighted {
  background: #ff2b13;
  color: #fff;
}

/* ORDENAR POR PRECIO */

.woof_sid_filtro-tienda .orden-precio {
  font-family: "Poppins", sans-serif;
}

.woof_sid_filtro-tienda .orden-precio select {
  width: 100%;
  height: 32px;
  min-height: 32px;
  padding: 0 38px 0 16px;
  border: 1px solid #d8d8d8;
  border-radius: 18px;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg width='14' height='8' viewBox='0 0 14 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L7 7L13 1' stroke='%23555' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-position: calc(100% - 18px) center;
  background-size: 14px 8px;
  background-repeat: no-repeat;
  font-family: "Poppins", sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 32px;
  color: #222;
  box-shadow: none;
  outline: none;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

.woof_sid_filtro-tienda .orden-precio select:focus {
  border-color: #ff2b13;
}


/* PRECIO */

.woof_sid_filtro-tienda .woof_price_filter {
  width: 100%;
  min-width: 0;
}

.woof_sid_filtro-tienda
  .woof_price_filter
  .woof_container_inner {
  display: flex;
  flex-direction: column;
  width: 100%;
}

/* Acercar la barra al título */

.woof_sid_filtro-tienda
  .woof_price_filter
  .woof_container_inner
  > h4 {
  margin: 0 0 4px 5px !important;
}

/* Ocultar inputs del precio */

.woof_sid_filtro-tienda
  .woof_price_filter_txt_slider {
  display: none !important;
}

/* Ocultar regla, números y marcas */

.woof_sid_filtro-tienda .irs-grid,
.woof_sid_filtro-tienda .irs-grid-pol,
.woof_sid_filtro-tienda .irs-grid-text,
.woof_sid_filtro-tienda .irs-min,
.woof_sid_filtro-tienda .irs-max {
  display: none !important;
}

/* Slider compacto */

.woof_sid_filtro-tienda .irs--round {
  position: relative;
  height: 58px !important;
  margin: 0;
  font-family: "Poppins", sans-serif;
}

/* Barra */

.woof_sid_filtro-tienda .irs--round .irs-line,
.woof_sid_filtro-tienda .irs--round .irs-bar {
  top: 12px !important;
  height: 5px;
  border-radius: 20px;
}

.woof_sid_filtro-tienda .irs--round .irs-line {
  background: #e3e3e3;
}

.woof_sid_filtro-tienda .irs--round .irs-bar {
  background: #ff2b13;
}

/* Círculos */

.woof_sid_filtro-tienda .irs--round .irs-handle {
  top: 4px !important;
  width: 21px;
  height: 21px;
  border: 3px solid #ff2b13;
  border-radius: 50%;
  background: #fff;
  box-shadow: none;
  cursor: pointer;
}

.woof_sid_filtro-tienda
  .irs--round
  .irs-handle
  i {
  display: none;
}

/* Burbujas debajo */

.woof_sid_filtro-tienda .irs--round .irs-from,
.woof_sid_filtro-tienda .irs--round .irs-to,
.woof_sid_filtro-tienda .irs--round .irs-single {
  top: 30px !important;
  bottom: auto;
  padding: 3px 8px;
  border-radius: 12px;
  background: #ff2b13;
  font-family: "Poppins", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.2;
  color: #fff;
}

/* Flecha de burbuja hacia arriba */

.woof_sid_filtro-tienda .irs--round .irs-from::before,
.woof_sid_filtro-tienda .irs--round .irs-to::before,
.woof_sid_filtro-tienda .irs--round .irs-single::before {
  top: -5px;
  bottom: auto;
  border-top: 0;
  border-right: 3px solid transparent;
  border-bottom: 5px solid #ff2b13;
  border-left: 3px solid transparent;
}

/* BOTÓN */

.woof_sid_filtro-tienda
  .woof_submit_search_form_container {
  display: flex !important;
  grid-column: 1 / -1;
  justify-content: flex-end;
  width: 100%;
  margin: -15px 0 0 !important;
  padding: 0 !important;
}

.woof_sid_filtro-tienda .woof_reset_search_form {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 130px;
  min-height: 42px;
  margin: 0 !important;
  padding: 10px 24px !important;
  border: 1px solid #ff2b13 !important;
  border-radius: 20px !important;
  background: #ff2b13 !important;
  font-family: "Poppins", sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  color: #fff !important;
  text-transform: uppercase;
  box-shadow: none !important;
  cursor: pointer;
}

.woof_sid_filtro-tienda
  .woof_reset_search_form:hover {
  background: #fff !important;
  color: #ff2b13 !important;
}

/* TABLET */

@media (max-width: 1024px) {
  .woof_sid_filtro-tienda .woof_redraw_zone {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .woof_sid_filtro-tienda .woof_price_filter {
    grid-column: 1 / -1;
  }
}

/* MÓVIL */

@media (max-width: 767px) {
  .woof_sid_filtro-tienda .woof_redraw_zone {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .woof_sid_filtro-tienda .orden-precio,
  .woof_sid_filtro-tienda .woof_price_filter,
  .woof_sid_filtro-tienda
    .woof_submit_search_form_container {
    grid-column: auto;
  }

  .woof_sid_filtro-tienda
    .woof_submit_search_form_container {
    justify-content: stretch;
  }

  .woof_sid_filtro-tienda
    .woof_reset_search_form {
    width: 100%;
  }
}











/* ==========================================================
   RESEÑAS DE PRODUCTO - FORMULARIO + LISTADO CON SCROLL
   Clase Elementor: reviews-grid
========================================================== */

.reviews-grid {
	font-family: 'Poppins', sans-serif;
}

/* ---------- Rating superior ---------- */

.woocommerce-product-rating {
	float: none !important;
	display: flex !important;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px;
	margin: 0 0 28px 0 !important;
}

.woocommerce-product-rating .star-rating,
.woocommerce-product-rating .star-rating span::before {
	color: #ffb000 !important;
}

.woocommerce-product-rating .woocommerce-review-link {
	color: #002A89;
	text-decoration: none;
}

.woocommerce-product-rating .woocommerce-review-link:hover {
	color: #FF2B13;
	text-decoration: none;
}

/* ---------- Ocultar pestañas de WooCommerce ---------- */

.reviews-grid .woocommerce-tabs > ul.tabs,
.reviews-grid .woocommerce-tabs > ul.wc-tabs {
	display: none !important;
}

/* Ocultar descripción e información adicional */
.reviews-grid #tab-description,
.reviews-grid #tab-additional_information,
.reviews-grid .woocommerce-Tabs-panel--description,
.reviews-grid .woocommerce-Tabs-panel--additional_information {
	display: none !important;
}

/* Mostrar solo reseñas */
.reviews-grid #tab-reviews,
.reviews-grid .woocommerce-Tabs-panel--reviews {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

/* Limpieza base */
.reviews-grid .woocommerce-tabs,
.reviews-grid #reviews {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

/* ---------- Contenedor principal ---------- */

.reviews-grid .woocommerce-Reviews {
	display: grid;
	grid-template-columns: minmax(280px, 35%) 1fr;
	gap: 0px 55px;
	align-items: flex-start;
	width: 100%;
	padding: 60px 70px !important;
	background: #fff;
	border-radius: 20px;
}

/* Formulario izquierda */
.reviews-grid #review_form_wrapper {
	grid-column: 1;
	grid-row: 1;
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

/* Reseñas derecha */
.reviews-grid #comments {
	grid-column: 2;
	grid-row: 1;
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

/* Oculta el título automático:
   “X valoraciones en Producto...” */
.reviews-grid .woocommerce-Reviews-title {
	display: none !important;
}

/* ==========================================================
   FORMULARIO
========================================================== */

.reviews-grid #review_form {
	width: 100%;
	max-width: 100%;
}

/* Título del formulario */
.reviews-grid .comment-reply-title {
	display: block;
	max-width: 360px;
	margin: 0 0 24px !important;
	font-size: 0 !important;
	font-weight: 700;
	line-height: 1.2;
	color: #171717;
}

.reviews-grid .comment-reply-title::before {
	content: "Califica este producto en la siguiente sección";
	display: block;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.2;
	color: #171717;
}

/* Nota de correo */
.reviews-grid .comment-notes {
	display: none !important;
}

/* Labels */
.reviews-grid .comment-form-rating label,
.reviews-grid .comment-form-comment label,
.reviews-grid .comment-form-author label,
.reviews-grid .comment-form-email label {
	display: block;
	margin-bottom: 7px;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.25;
	color: #171717;
}

/* Cambiar visualmente el label de la reseña */
.reviews-grid .comment-form-comment label {
	font-size: 0 !important;
}

.reviews-grid .comment-form-comment label::before {
	content: "Cuál es tu opinión del producto";
	font-size: 15px;
	font-weight: 500;
	line-height: 1.25;
	color: #171717;
}

/* Mantener visible el asterisco */
.reviews-grid .comment-form-comment label .required {
	font-size: 15px !important;
}

/* Espaciado */
.reviews-grid .comment-form-rating,
.reviews-grid .comment-form-comment,
.reviews-grid .comment-form-author,
.reviews-grid .comment-form-email,
.reviews-grid .comment-form-cookies-consent {
	margin: 0 0 12px !important;
}

/* Estrellas del formulario */
.reviews-grid p.stars {
	margin: 0 !important;
}

.reviews-grid p.stars a {
	color: #ffb000 !important;
}

/* Inputs y textarea */
.reviews-grid .comment-form-comment textarea,
.reviews-grid .comment-form-author input,
.reviews-grid .comment-form-email input {
	width: 100%;
	border: 1px solid #002A89 !important;
	border-radius: 20px !important;
	background: #fff;
	color: #171717;
	font-size: 15px;
	line-height: 1.4;
	box-shadow: none !important;
}

.reviews-grid .comment-form-comment textarea {
	min-height: 90px;
	padding: 15px 18px;
	resize: vertical;
}

.reviews-grid .comment-form-author input,
.reviews-grid .comment-form-email input {
	height: 40px;
	padding: 10px 18px;
}

.reviews-grid .comment-form-comment textarea:focus,
.reviews-grid .comment-form-author input:focus,
.reviews-grid .comment-form-email input:focus {
	border-color: #002A89 !important;
	outline: none !important;
	box-shadow: 0 0 0 1px #002A89 !important;
}

/* Checkbox */
.reviews-grid .comment-form-cookies-consent {
	display: flex;
	align-items: flex-start;
	gap: 10px;
}

.reviews-grid .comment-form-cookies-consent input {
	width: 17px;
	height: 17px;
	margin: 3px 0 0 !important;
	flex: 0 0 auto;
	accent-color: #002A89;
}

.reviews-grid .comment-form-cookies-consent label {
	margin: 0;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.25;
	color: #171717;
}

/* Botón */
.reviews-grid .form-submit {
	margin: 10px 0 0 !important;
}

.reviews-grid .form-submit .submit {
	min-width: 150px;
	padding: 13px 30px !important;
	border: 1px solid #002A89 !important;
	border-radius: 20px !important;
	background: #002A89 !important;
	color: #fff !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	text-transform: uppercase;
	cursor: pointer;
	transition:
		background-color 0.2s ease,
		border-color 0.2s ease,
		color 0.2s ease;
}

.reviews-grid .form-submit .submit:hover {
	background: #FF2B13 !important;
	border-color: #FF2B13 !important;
	color: #fff !important;
}

/* ==========================================================
   LISTADO DE RESEÑAS CON SCROLL
========================================================== */

.reviews-grid ol.commentlist {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px 28px;
	max-height: 505px;
	overflow-y: auto;
	overflow-x: hidden;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 14px 0 0 !important;
	list-style: none !important;
}

/* Evita que los clearfix invisibles ocupen columnas del grid */
.reviews-grid ol.commentlist::before,
.reviews-grid ol.commentlist::after {
	display: none !important;
	content: none !important;
}

/* Scroll */
.reviews-grid ol.commentlist::-webkit-scrollbar {
	width: 8px;
}

.reviews-grid ol.commentlist::-webkit-scrollbar-track {
	background: #f2f2f2;
	border-radius: 20px;
}

.reviews-grid ol.commentlist::-webkit-scrollbar-thumb {
	background: #002A89;
	border-radius: 20px;
}

.reviews-grid ol.commentlist::-webkit-scrollbar-thumb:hover {
	background: #FF2B13;
}

/* Cada reseña */
.reviews-grid ol.commentlist > li.review {
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	clear: none !important;
	list-style: none !important;
}

.reviews-grid .comment_container {
	position: relative;
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Ocultar avatar */
.reviews-grid .comment_container > img.avatar {
	display: none !important;
}

/* Card */
.reviews-grid .comment-text {
	position: relative;
	min-height: 132px;
	margin: 0 !important;
	padding: 18px !important;
	border: 1px solid #e1ddea !important;
	border-radius: 6px !important;
	background: #fff !important;
	box-shadow: none !important;
}

/* Nombre + fecha */
.reviews-grid .comment-text .meta {
	display: block !important;
	width: calc(100% - 115px);
	margin: 0 0 14px !important;
	padding: 0 !important;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.35;
	color: #777;
}

.reviews-grid .comment-text .meta strong {
	font-size: 15px;
	font-weight: 500;
	color: #777;
}

.reviews-grid .comment-text .meta time {
	color: #777;
}

/* Estrellas arriba a la derecha */
.reviews-grid .comment-text .star-rating {
	position: absolute !important;
	top: 18px;
	right: 18px;
	float: none !important;
	margin: 0 !important;
	color: #ffb000 !important;
}

.reviews-grid .comment-text .star-rating span::before {
	color: #ffb000 !important;
}

/* Texto de reseña */
.reviews-grid .comment-text .description,
.reviews-grid .comment-text .description p {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 15px;
	font-weight: 400 !important;
	line-height: 1.45;
	color: #171717;
}

.reviews-grid .comment-text .description p::first-line {
	font-size: inherit !important;
	font-weight: inherit !important;
}

/* Mensaje cuando no hay reseñas */
.reviews-grid .woocommerce-noreviews {
	margin: 0 !important;
	padding: 18px 20px;
	border: 1px solid #e1ddea;
	border-radius: 20px;
	background: #fff;
	color: #171717;
	font-size: 15px;
	line-height: 1.4;
}

/* Ocultar paginación: ahora usamos scroll */
.reviews-grid .woocommerce-pagination,
.reviews-grid .comment-navigation,
.reviews-grid .navigation {
	display: none !important;
}

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

@media (max-width: 1024px) {
	.reviews-grid .woocommerce-Reviews {
		grid-template-columns: 1fr;
		gap: 38px;
		padding: 36px 28px !important;
	}

	.reviews-grid #review_form_wrapper,
	.reviews-grid #comments {
		grid-column: 1;
	}

	.reviews-grid #review_form_wrapper {
		grid-row: 1;
	}

	.reviews-grid #comments {
		grid-row: 2;
	}

	.reviews-grid ol.commentlist {
		max-height: 520px;
	}
}

@media (max-width: 767px) {
	.reviews-grid .woocommerce-Reviews {
		padding: 30px 20px !important;
	}

	.reviews-grid .comment-reply-title::before {
		font-size: 23px;
	}

	.reviews-grid ol.commentlist {
		grid-template-columns: 1fr;
		max-height: 560px;
		padding-right: 10px !important;
	}

	.reviews-grid .comment-text .meta {
		width: 100%;
		padding-right: 105px !important;
	}

	.reviews-grid .comment-text {
		min-height: 125px;
	}
}







/* ==================================================
   GALERÍA INTERNA DE PRODUCTO
================================================== */

/* Burbuja de oferta */
/* Burbuja circular de oferta */
.single-product .reloj-gallery span.onsale {
	display: flex !important;
	align-items: center;
	justify-content: center;

	width: 64px !important;
	height: 64px !important;
	min-width: 64px !important;
	min-height: 64px !important;
	padding: 0 !important;
	margin: 0 !important;

	background-color: #002A89 !important;
	color: #FFFFFF !important;

	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	text-align: center;

	border-radius: 50% !important;
}

/* Mantiene estable el espacio de la imagen principal */
.single-product .reloj-gallery .woocommerce-product-gallery__wrapper {
	width: 100%;
}


/* Contenedor de cada imagen principal */
.single-product
.reloj-gallery
.woocommerce-product-gallery__image {
	aspect-ratio: 1 / 1;
	overflow: hidden;
}


/* Enlace que contiene la imagen */
.single-product
.reloj-gallery
.woocommerce-product-gallery__image > a {
	display: flex !important;
	align-items: center;
	justify-content: center;

	width: 100%;
	height: 100%;
}


/* Imagen principal */
.single-product
.reloj-gallery
.woocommerce-product-gallery__image img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	object-fit: contain;
	object-position: center;
}


/* Evita cambios bruscos de altura en el viewport del slider */
.single-product
.reloj-gallery
.woocommerce-product-gallery .flex-viewport {
	aspect-ratio: 1 / 1;
	height: auto !important;
}


/* Las miniaturas no deben heredar la altura de la imagen principal */
.single-product
.reloj-gallery
.flex-control-thumbs img {
	width: 100% !important;
	height: 100% !important;
	aspect-ratio: 1 / 1;
	object-fit: contain;
}









/* =========================================
   MINIATURAS DE LA GALERÍA
========================================= */

/* Grupo de miniaturas */
.single-product
.reloj-gallery
.flex-control-thumbs {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 16px !important;

	width: 100% !important;
	margin: 28px 0 0 !important;
	padding: 0 !important;
}


/* Cada miniatura */
.single-product
.reloj-gallery
.flex-control-thumbs li {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;

	float: none !important;

	width: 100% !important;
	height: auto !important;
	aspect-ratio: 1 / 1;

	margin: 0 !important;
	padding: 0 !important;

	border: 1px solid #D9D9D9;
	border-radius: 5px;
	background-color: #FFFFFF;

	overflow: hidden;
	box-sizing: border-box;
}


/* Imagen completa y centrada dentro del marco */
.single-product
.reloj-gallery
.flex-control-thumbs li img {
	display: block !important;

	width: 100% !important;
	height: 100% !important;

	padding: 10px !important;
	margin: 0 !important;

	object-fit: contain !important;
	object-position: center center !important;

	background-color: #FFFFFF;
	box-sizing: border-box;

	opacity: 0.6;
}


/* Miniatura activa */
.single-product
.reloj-gallery
.flex-control-thumbs li img.flex-active {
	opacity: 1 !important;
}


/* Hover */
.single-product
.reloj-gallery
.flex-control-thumbs li:hover {
	border-color: #002A89;
}

.single-product
.reloj-gallery
.flex-control-thumbs li:hover img {
	opacity: 1;
}


/* =========================================
   LIGHTBOX GALERÍA PRODUCTO
========================================= */

/* Fondo más transparente al abrir la galería */
.single-product .pswp__bg,
.pswp__bg {
	background: #000 !important;
	opacity: 0.72 !important;
}





/* =========================================
   VARIACIONES DEL PRODUCTO
========================================= */

/* Tabla completa de variaciones */
.single-product
.variations_form
table.variations {
	width: 100%;
	margin: 0 0 20px !important;
	padding: 0 !important;

	background: transparent !important;
	border: 0 !important;
	border-collapse: collapse !important;
	box-shadow: none !important;
}

/* Quitar fondo gris, bordes y hover de las filas */
.single-product
.variations_form
table.variations tr,
.single-product
.variations_form
table.variations tr:hover,
.single-product
.variations_form
table.variations th,
.single-product
.variations_form
table.variations td,
.single-product
.variations_form
table.variations th:hover,
.single-product
.variations_form
table.variations td:hover {
	background: transparent !important;
	background-color: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

/* Espaciado de cada atributo */
.single-product
.variations_form
table.variations tr {
	display: block !important;
	margin: 0 0 28px !important;
	padding: 0 !important;
}

/* Nombre: COLOR, ESTILO, etc. */
.single-product
.variations_form
table.variations th.label {
	display: block !important;
	width: 100% !important;
	margin: 0 0 16px !important;
	padding: 0 !important;
	text-align: left !important;
}

/* Opciones de cada atributo */
.single-product
.variations_form
table.variations td.value {
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Contenedor de las opciones */
.single-product
.variable-items-wrapper {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 10px !important;

	margin: 0 !important;
	padding: 0 !important;

	background: transparent !important;
}

/* Cada variación */
.single-product
.variable-items-wrapper
.variable-item {
	margin: 0 !important;

	background: transparent !important;
	border: 2px solid #B8B8B8 !important;
	border-radius: 4px !important;

	box-shadow: none !important;
	outline: none !important;

	transition:
		border-color 0.2s ease,
		box-shadow 0.2s ease !important;
}

/* Quitar fondo y efecto feo al pasar el mouse */
.single-product
.variable-items-wrapper
.variable-item:hover,
.single-product
.variable-items-wrapper
.variable-item:focus,
.single-product
.variable-items-wrapper
.variable-item:focus-visible {
	background: transparent !important;
	border-color: #FF2B13 !important;

	box-shadow: none !important;
	outline: none !important;
}

/* Variación seleccionada */
.single-product
.variable-items-wrapper
.variable-item.selected,
.single-product
.variable-items-wrapper
.variable-item[aria-checked="true"] {
	background: transparent !important;
	border-color: #FF2B13 !important;

	box-shadow: 0 0 0 1px #FF2B13 !important;
	outline: none !important;
}

/* Mantener limpio el contenido interior */
.single-product
.variable-items-wrapper
.variable-item
.variable-item-contents {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

/* Imágenes de variación */
.single-product
.variable-items-wrapper
.image-variable-item img {
	display: block;
	margin: 0;
	border: 0 !important;
	border-radius: 2px;
	box-shadow: none !important;
}

/* Ocultar completamente “Limpiar” */
.single-product
.variations_form
.reset_variations,
.single-product
.variations_form
.reset_variations_alert {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}








/* =========================================
   SELECTOR DE CANTIDAD PERSONALIZADO
========================================= */

.single-product
form.cart
.quantity {
	position: relative;

	display: grid !important;
	grid-template-columns: minmax(52px, 1fr) 30px;
	grid-template-rows: 1fr 1fr;

	width: 92px;
	height: 34px;

	margin: 0 !important;
	padding: 0 !important;

	background: #FFFFFF;
	border: 1px solid #A8A8A8;
	border-radius: 8px;

	overflow: hidden;
	box-sizing: border-box;
}


/* Campo numérico */
.single-product
form.cart
.quantity
input.qty {
	grid-column: 1;
	grid-row: 1 / 3;

	width: 100% !important;
	height: 100% !important;
	min-height: 0 !important;

	margin: 0 !important;
	padding: 0 8px !important;

	background: #FFFFFF !important;
	border: 0 !important;
	border-radius: 0 !important;

	box-shadow: none !important;
	outline: none !important;

	color: #111111;
	font-size: 17px;
	font-weight: 700;
	line-height: 1;
	text-align: center;

	appearance: textfield;
	-moz-appearance: textfield;
	box-sizing: border-box;
}


/* Ocultar flechas nativas */
.single-product
form.cart
.quantity
input.qty::-webkit-inner-spin-button,
.single-product
form.cart
.quantity
input.qty::-webkit-outer-spin-button {
	margin: 0;
	-webkit-appearance: none;
	appearance: none;
}


/* Botones superior e inferior */
.single-product
form.cart
.quantity
.reloj-qty-button {
	position: relative;

	display: flex;
	align-items: center;
	justify-content: center;

	width: 30px;
	height: 100%;

	margin: 0 !important;
	padding: 0 !important;

	background: #FF2B13 !important;
	border: 0 !important;
	border-left: 1px solid rgba(255, 255, 255, 0.45) !important;
	border-radius: 0 !important;

	box-shadow: none !important;
	outline: none !important;

	color: #FFFFFF !important;
	cursor: pointer;

	transition:
		background-color 0.2s ease,
		opacity 0.2s ease;
}


/* Botón de aumentar */
.single-product
form.cart
.quantity
.reloj-qty-plus {
	grid-column: 2;
	grid-row: 1;

	border-bottom: 1px solid rgba(255, 255, 255, 0.55) !important;
	border-radius: 0 7px 0 0 !important;
}


/* Botón de disminuir */
.single-product
form.cart
.quantity
.reloj-qty-minus {
	grid-column: 2;
	grid-row: 2;

	border-radius: 0 0 7px 0 !important;
}


/* Flechas */
.single-product
form.cart
.quantity
.reloj-qty-button::before {
	content: "";

	display: block;

	width: 6px;
	height: 6px;

	border-top: 2px solid currentColor;
	border-left: 2px solid currentColor;
}


/* Flecha hacia arriba */
.single-product
form.cart
.quantity
.reloj-qty-plus::before {
	transform: translateY(1px) rotate(45deg);
}


/* Flecha hacia abajo */
.single-product
form.cart
.quantity
.reloj-qty-minus::before {
	transform: translateY(-1px) rotate(225deg);
}


/* Hover */
.single-product
form.cart
.quantity
.reloj-qty-button:hover,
.single-product
form.cart
.quantity
.reloj-qty-button:focus {
	background: #D91E0A !important;
	color: #FFFFFF !important;
}


/* Click */
.single-product
form.cart
.quantity
.reloj-qty-button:active {
	opacity: 0.78;
}


/* Estado deshabilitado */
.single-product
form.cart
.quantity
.reloj-qty-button:disabled {
	opacity: 0.45;
	cursor: not-allowed;
}


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

@media (max-width: 767px) {

	.single-product
	form.cart
	.quantity {
		grid-template-columns: minmax(46px, 1fr) 28px;

		width: 82px;
		height: 34px;
	}

	.single-product
	form.cart
	.quantity
	.reloj-qty-button {
		width: 28px;
	}

	.single-product
	form.cart
	.quantity
	input.qty {
		font-size: 16px;
	}

	.single-product
	form.cart
	.quantity
	.reloj-qty-button::before {
		width: 5px;
		height: 5px;
	}
}


/* OCULTAR EL DUPLICADO DE BURBUJAR DEL FILTRO */
.elementor-sticky__spacer .irs-from,
.elementor-sticky__spacer .irs-to,
.elementor-sticky__spacer .irs-single {
  display: none !important;
}




/* Etiqueta "Marca:" en negrita */
.elementor-widget-woocommerce-product-meta
.product_meta > .posted_in:not(.detail-container) {
	font-weight: 700;
}

/* Mantener el nombre de la marca con peso normal */
.elementor-widget-woocommerce-product-meta
.product_meta > .posted_in:not(.detail-container) a {
	font-weight: 400;
}






/* =========================================================
   CARRITO - LA CASA DEL RELOJ
   Clase del widget: cart-style
========================================================= */

.cart-style {
	--cart-blue: #002A89;
	--cart-orange: #FF2B13;
	--cart-black: #111111;
}


/* =========================================================
   ENCABEZADOS: PRODUCTO / TOTAL
========================================================= */

.cart-style .wc-block-cart-items__header th,
.cart-style .wc-block-cart-items__header th span {
	color: var(--cart-blue) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
}


/* =========================================================
   NOMBRE DEL PRODUCTO
========================================================= */

.cart-style .wc-block-components-product-name {
	color: var(--cart-blue) !important;
	font-size: 17px !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	text-decoration: none !important;
}

.cart-style .wc-block-components-product-name:hover {
	color: var(--cart-orange) !important;
}


/* =========================================================
   PRECIO DEBAJO DEL NOMBRE
========================================================= */

.cart-style .wc-block-cart-item__prices,
.cart-style .wc-block-cart-item__prices .price {
	color: var(--cart-black) !important;
	font-size: 15px !important;
	line-height: 1.3 !important;
}


/* Precio anterior tachado */

.cart-style .wc-block-cart-item__prices del,
.cart-style
.wc-block-cart-item__prices
.wc-block-components-product-price__regular {
	color: var(--cart-black) !important;
	font-size: 8px !important;
	font-weight: 400 !important;
	opacity: 0.75 !important;
	margin-right: 4px !important;
}


/* Precio actual en oferta */

.cart-style .wc-block-cart-item__prices ins,
.cart-style
.wc-block-cart-item__prices
.wc-block-components-product-price__value {
	color: var(--cart-black) !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	text-decoration: none !important;
	background: transparent !important;
}


/* Producto sin oferta */

.cart-style
.wc-block-cart-item__prices
.wc-block-formatted-money-amount {
	color: var(--cart-black) !important;
	font-size: 15px !important;
	font-weight: 400 !important;
}


/* =========================================================
   CARACTERÍSTICAS DEL PRODUCTO
========================================================= */

.cart-style .wc-block-components-product-metadata,
.cart-style .wc-block-components-product-details,
.cart-style .wc-block-components-product-details__name,
.cart-style .wc-block-components-product-details__value {
	color: var(--cart-black) !important;
}


/* =========================================================
   PRECIO TOTAL DEL LADO DERECHO
========================================================= */

.cart-style .wc-block-cart-item__total .price,
.cart-style
.wc-block-cart-item__total
.wc-block-components-product-price__value,
.cart-style
.wc-block-cart-item__total
.wc-block-formatted-money-amount {
	color: var(--cart-black) !important;
	font-size: 17px !important;
	font-weight: 400 !important;
}


/* Etiqueta "Ahorra..." */

.cart-style
.wc-block-cart-item__total
.wc-block-components-product-badge,
.cart-style
.wc-block-cart-item__total
.wc-block-components-product-badge
.wc-block-formatted-money-amount {
	color: var(--cart-black) !important;
	font-size: 11px !important;
	font-weight: 400 !important;
}


/* =========================================================
   TOTALES DEL CARRITO
========================================================= */

.cart-style .wc-block-cart__totals-title {
	color: var(--cart-blue) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
}


/* Añadir cupones */

.cart-style
.wc-block-components-totals-coupon
.wc-block-components-panel__button {
	color: var(--cart-blue) !important;
	font-size: 15px !important;
	font-weight: 400 !important;
}


/* Flecha del acordeón */

.cart-style
.wc-block-components-totals-coupon
.wc-block-components-panel__button-icon {
	fill: var(--cart-blue) !important;
}


/* =========================================================
   CAMPO DEL CUPÓN
========================================================= */

.cart-style .wc-block-components-totals-coupon__form {
	display: flex !important;
	align-items: flex-start !important;
	gap: 10px !important;
}


/* Contenedor general del input */

.cart-style
.wc-block-components-totals-coupon
.wc-block-components-text-input {
	position: relative !important;
	flex: 1 1 auto !important;

	min-width: 0 !important;
	height: 42px !important;

	border: 0 !important;
	border-radius: 30px !important;

	background: transparent !important;
	outline: none !important;
	box-shadow: none !important;
}


/* Input */

.cart-style
.wc-block-components-totals-coupon
.wc-block-components-text-input input {
	width: 100% !important;
	height: 42px !important;
	min-height: 42px !important;

	margin: 0 !important;
	padding: 15px 18px 5px !important;

	color: #111111 !important;
	font-size: 14px !important;
	line-height: 1 !important;

	border: 1px solid #002A89 !important;
	border-radius: 30px !important;

	background-color: #ffffff !important;
	outline: none !important;
	box-shadow: none !important;
}


/* Quitar borde, halo y sombra de enfoque */

.cart-style
.wc-block-components-totals-coupon
.wc-block-components-text-input input:focus,
.cart-style
.wc-block-components-totals-coupon
.wc-block-components-text-input input:focus-visible,
.cart-style
.wc-block-components-totals-coupon
.wc-block-components-text-input.is-active input,
.cart-style
.wc-block-components-totals-coupon
.wc-block-components-text-input.has-error input {
	border-color: #002A89 !important;
	outline: 0 !important;
	box-shadow: none !important;
}


/* Label en estado vacío */

.cart-style
.wc-block-components-totals-coupon
.wc-block-components-text-input label {
	position: absolute !important;
	top: 50% !important;
	left: 18px !important;
	z-index: 2 !important;

	width: auto !important;
	max-width: calc(100% - 36px) !important;

	margin: 0 !important;
	padding: 0 !important;

	color: #111111 !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1 !important;

	background: transparent !important;

	transform: translateY(-50%) !important;
	transform-origin: left center !important;

	pointer-events: none !important;
	transition:
		top 0.15s ease,
		font-size 0.15s ease,
		transform 0.15s ease !important;
}


/* Label cuando el campo tiene foco o contenido */

.cart-style
.wc-block-components-totals-coupon
.wc-block-components-text-input.is-active label,
.cart-style
.wc-block-components-totals-coupon
.wc-block-components-text-input input:focus + label {
	top: 8px !important;

	font-size: 9px !important;
	line-height: 1 !important;

	transform: translateY(0) !important;
}


/* Estado de error */

.cart-style
.wc-block-components-totals-coupon
.wc-block-components-text-input.has-error label {
	color: #111111 !important;
}


/* Eliminar cualquier marco aplicado al label */

.cart-style
.wc-block-components-totals-coupon
.wc-block-components-text-input label:focus,
.cart-style
.wc-block-components-totals-coupon
.wc-block-components-text-input label:focus-visible,
.cart-style
.wc-block-components-totals-coupon
.wc-block-components-text-input.is-active label {
	outline: 0 !important;
	box-shadow: none !important;
}


/* Error debajo del campo */

.cart-style
.wc-block-components-totals-coupon
.wc-block-components-validation-error {
	margin-top: 6px !important;
}

.cart-style
.wc-block-components-totals-coupon
.wc-block-components-validation-error p {
	margin: 0 !important;
	font-size: 11px !important;
	line-height: 1.3 !important;
}

/* =========================================================
   BOTÓN APLICAR CUPÓN
========================================================= */

.cart-style .wc-block-components-totals-coupon__button {
	min-height: 42px !important;
	height: 42px !important;
	padding: 7px 24px !important;

	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 600 !important;

	border: 1px solid var(--cart-blue) !important;
	border-radius: 30px !important;

	background-color: var(--cart-blue) !important;
	box-shadow: none !important;

	transition:
		background-color 0.25s ease,
		border-color 0.25s ease,
		color 0.25s ease !important;
}

.cart-style .wc-block-components-totals-coupon__button:hover,
.cart-style .wc-block-components-totals-coupon__button:focus {
	color: #ffffff !important;
	border-color: var(--cart-orange) !important;
	background-color: var(--cart-orange) !important;
	outline: none !important;
	box-shadow: none !important;
}


/* Texto interno del botón Aplicar */

.cart-style
.wc-block-components-totals-coupon__button
.wc-block-components-button__text {
	color: inherit !important;
	font-size: inherit !important;
}


/* =========================================================
   TOTAL ESTIMADO
========================================================= */

.cart-style
.wc-block-components-totals-footer-item
.wc-block-components-totals-item__label {
	color: var(--cart-black) !important;
}

.cart-style
.wc-block-components-totals-footer-item
.wc-block-components-totals-item__value,
.cart-style
.wc-block-components-totals-footer-item
.wc-block-formatted-money-amount {
	color: var(--cart-black) !important;
}


/* =========================================================
   BOTÓN FINALIZAR COMPRA
========================================================= */

.cart-style .wc-block-cart__submit-button {
	min-height: 44px !important;
	height: 44px !important;
	padding: 8px 25px !important;

	color: #ffffff !important;
	font-size: 15px !important;
	font-weight: 600 !important;

	border: 1px solid var(--cart-blue) !important;
	border-radius: 30px !important;

	background-color: var(--cart-blue) !important;
	box-shadow: none !important;

	transition:
		background-color 0.25s ease,
		border-color 0.25s ease,
		color 0.25s ease !important;
}

.cart-style .wc-block-cart__submit-button:hover,
.cart-style .wc-block-cart__submit-button:focus {
	color: #ffffff !important;
	border-color: var(--cart-orange) !important;
	background-color: var(--cart-orange) !important;
	outline: none !important;
	box-shadow: none !important;
}


/* Texto interno del botón Finalizar compra */

.cart-style
.wc-block-cart__submit-button
.wc-block-components-button__text {
	color: inherit !important;
	font-size: inherit !important;
	text-transform: uppercase;
}


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

@media (max-width: 767px) {

	.cart-style .wc-block-components-totals-coupon__content {
		gap: 8px !important;
	}

	.cart-style
	.wc-block-components-totals-coupon
	.wc-block-components-text-input input,
	.cart-style
	.wc-block-components-totals-coupon__button {
		min-height: 40px !important;
		height: 40px !important;
	}

	.cart-style
	.wc-block-components-totals-coupon__button {
		padding-left: 18px !important;
		padding-right: 18px !important;
	}

	.cart-style .wc-block-cart__submit-button {
		min-height: 42px !important;
		height: 42px !important;
	}
}




/* Botones - y + */

.cart-style .wc-block-components-quantity-selector__button {
	color: #ffffff !important;
	background-color: #FF2B13 !important;
	opacity: 1 !important;
	transform: none !important;
	box-shadow: none !important;
}

.cart-style .wc-block-components-quantity-selector__button:hover {
	color: #ffffff !important;
	background-color: #002A89 !important;
	opacity: 1 !important;
	transform: none !important;
}

.cart-style .wc-block-components-quantity-selector__button:focus,
.cart-style .wc-block-components-quantity-selector__button:focus-visible,
.cart-style .wc-block-components-quantity-selector__button:active {
	outline: none !important;
	box-shadow: none !important;
	transform: none !important;
}


/* Número */

.cart-style .wc-block-components-quantity-selector__input {
	color: #111111 !important;
}


/* Basurero */

.cart-style .wc-block-cart-item__remove-link,
.cart-style .wc-block-cart-item__remove-link svg,
.cart-style .wc-block-cart-item__remove-link svg path {
	color: #111111 !important;
	fill: #111111 !important;
	opacity: 1 !important;
}



/* Columna de totales sticky */

@media (min-width: 769px) {
	.cart-style .wc-block-cart__sidebar {
		position: sticky !important;
		top: 150px !important;
		align-self: flex-start !important;
	}
}



/* =========================================================
   ANCHO Y CENTRADO DEL CARRITO
========================================================= */

.cart-style,
.cart-style .elementor-widget-container,
.cart-style .wp-block-woocommerce-cart,
.cart-style .wc-block-components-sidebar-layout {
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

.cart-style .wp-block-woocommerce-cart.alignwide {
	margin-left: auto !important;
	margin-right: auto !important;
}

.cart-style .wc-block-components-sidebar-layout {
	margin-left: auto !important;
	margin-right: auto !important;
}


/* Columnas internas */

.cart-style .wc-block-cart__main,
.cart-style .wc-block-cart__sidebar {
	min-width: 0 !important;
	box-sizing: border-box !important;
}


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

@media (max-width: 768px) {

	.cart-style,
	.cart-style .elementor-widget-container,
	.cart-style .wp-block-woocommerce-cart,
	.cart-style .wc-block-components-sidebar-layout,
	.cart-style .wc-block-cart__main,
	.cart-style .wc-block-cart__sidebar {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;

		margin-left: 0 !important;
		margin-right: 0 !important;

		box-sizing: border-box !important;
	}

	.cart-style .wp-block-woocommerce-cart.alignwide {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.cart-style .wc-block-cart-items {
		width: 100% !important;
		max-width: 100% !important;
	}

	.cart-style .wc-block-components-totals-coupon__form {
		width: 100% !important;
		max-width: 100% !important;
	}

	.cart-style .wc-block-components-totals-coupon__input {
		min-width: 0 !important;
	}
}


/* Miniaturas uniformes solo en desktop */

@media (min-width: 769px) {

	.cart-style .wc-block-cart-item__image {
		width: 115px !important;
		min-width: 115px !important;
	}

	.cart-style .wc-block-cart-item__image a {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 100% !important;
		height: 115px !important;
	}

	.cart-style .wc-block-cart-item__image img {
		width: 100% !important;
		height: 100% !important;
		object-fit: contain !important;
		object-position: center !important;
	}
}




/* =========================================================
   AJUSTE FINAL: LÍNEA Y ALINEACIÓN DE COLUMNAS
========================================================= */

@media (min-width: 769px) {

	/* Quitar línea superior de la tabla de productos */
	.cart-style .wc-block-cart-items {
		border-top: 0 !important;
	}

	.cart-style .wc-block-cart-items thead,
	.cart-style .wc-block-cart-items__header {
		border-top: 0 !important;
	}

	.cart-style .wc-block-cart-items__header th {
		border-top: 0 !important;
	}


	/* Subir ligeramente la columna de totales */
	.cart-style .wc-block-cart__sidebar {
		margin-top: 2px !important;
	}
}




/* Quitar marco azul de todos los floating labels */

form label,
form label *,
form *:focus + label,
form *:focus-visible + label,
form *:focus ~ label,
form *:focus-visible ~ label,
form *:focus-within label {
	outline: none !important;
	box-shadow: none !important;
	border: none !important;
}




/* Checkout: ocultar envío y recogida solamente cuando estén vacíos */
body.woocommerce-checkout
.wp-block-woocommerce-checkout-shipping-method-block:not(:has(*)),
body.woocommerce-checkout
.wp-block-woocommerce-checkout-pickup-options-block:not(:has(*)) {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
}







/* =========================================
   CHECKOUT
========================================= */


/* -----------------------------------------
   ENCABEZADOS
----------------------------------------- */

.checkout-style
.wc-block-components-checkout-step__title,
.checkout-style
.wc-block-components-checkout-order-summary__title-text {
	color: #002A89 !important;
	text-transform: uppercase !important;
	font-weight: 700 !important;
}


/* Título del resumen */
.checkout-style
.wc-block-components-checkout-order-summary__title-text {
	font-size: 18px !important;
	font-family: "Poppins", sans-serif !important;
}


/* -----------------------------------------
   CAMPOS DEL FORMULARIO
----------------------------------------- */

.checkout-style
.wc-block-components-address-card {
    border-radius: 20px !important;
}


.checkout-style
.wc-block-components-text-input input,
.checkout-style
.wc-block-components-address-form input,
.checkout-style
.wc-block-components-address-form textarea,
.checkout-style
.wc-block-components-textarea {
	background-color: #f3f3f3 !important;
	border: none !important;
	border-radius: 30px !important;
	box-shadow: none !important;
	outline: none !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
}


/* Etiquetas flotantes de los campos */
.checkout-style
.wc-block-components-text-input label {
	left: 20px !important;
}


/* Selectores de país, departamento, etc. */
.checkout-style
.wc-blocks-components-select__container {
	background-color: #f3f3f3 !important;
	border: none !important;
	border-radius: 30px !important;
	box-shadow: none !important;
	overflow: hidden;
}


.checkout-style
.wc-blocks-components-select__select {
	background-color: transparent !important;
	border: none !important;
	border-radius: 30px !important;
	box-shadow: none !important;
	outline: none !important;
	padding-left: 20px !important;
	padding-right: 48px !important;
}


/* Etiquetas de los selectores */
.checkout-style
.wc-blocks-components-select__label {
	left: 20px !important;
}


/* Mantener el fondo al enfocar o completar */
.checkout-style
.wc-block-components-text-input input:focus,
.checkout-style
.wc-block-components-text-input input:active,
.checkout-style
.wc-block-components-text-input.is-active input,
.checkout-style
.wc-block-components-text-input.has-error input,
.checkout-style
.wc-block-components-textarea:focus,
.checkout-style
.wc-blocks-components-select__container:focus-within {
	background-color: #f3f3f3 !important;
	border: none !important;
	box-shadow: none !important;
	outline: none !important;
}


/* -----------------------------------------
   CAMPO DE CUPÓN
----------------------------------------- */

.checkout-style
.wc-block-components-totals-coupon__input input,
.checkout-style
.wc-block-components-totals-coupon
.wc-block-components-text-input input {
	background-color: #f3f3f3 !important;
	border: none !important;
	border-radius: 30px !important;
	box-shadow: none !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
}


.checkout-style
.wc-block-components-totals-coupon
.wc-block-components-text-input label {
	left: 20px !important;
}


/* -----------------------------------------
   BOTONES
----------------------------------------- */

.checkout-style
.wc-block-components-button,
.checkout-style
.wc-block-components-checkout-place-order-button {
	background-color: #002A89 !important;
	color: #fff !important;
	border: 1px solid #002A89 !important;
	border-radius: 30px !important;
	box-shadow: none !important;
	transition:
		background-color 0.25s ease,
		border-color 0.25s ease,
		color 0.25s ease !important;
}


.checkout-style
.wc-block-components-button:hover,
.checkout-style
.wc-block-components-button:focus,
.checkout-style
.wc-block-components-checkout-place-order-button:hover,
.checkout-style
.wc-block-components-checkout-place-order-button:focus {
	background-color: #FF2B13 !important;
	color: #fff !important;
	border-color: #FF2B13 !important;
}


/* Texto interno del botón */
.checkout-style
.wc-block-components-button__text,
.checkout-style
.wc-block-components-checkout-place-order-button__text {
	color: inherit !important;
}


/* -----------------------------------------
   RESUMEN DEL PEDIDO
----------------------------------------- */

.checkout-style
.wp-block-woocommerce-checkout-order-summary-block {
    border-radius: 20px !important;
}


/* Nombre de producto */
.checkout-style
.wc-block-components-order-summary-item__description
.wc-block-components-product-name {
	color: #002A89 !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
}


/* Todos los precios del producto */
.checkout-style
.wc-block-components-order-summary-item
.wc-block-components-product-price,
.checkout-style
.wc-block-components-order-summary-item
.wc-block-formatted-money-amount {
	color: #000 !important;
	font-size: 15px !important;
}


/* Precio anterior tachado */
.checkout-style
.wc-block-components-order-summary-item del,
.checkout-style
.wc-block-components-order-summary-item del span {
	color: #000 !important;
	font-size: 8px !important;
	opacity: 0.7;
}


/* Burbuja de cantidad */
.checkout-style
.wc-block-components-order-summary-item__quantity {
	background-color: #FF2B13 !important;
	color: #fff !important;
	border: none !important;
}


/* Texto dentro de la burbuja */
.checkout-style
.wc-block-components-order-summary-item__quantity span {
	color: #fff !important;
}


/* -----------------------------------------
   MINIATURAS DE PRODUCTOS
----------------------------------------- */

.checkout-style
.wc-block-components-order-summary-item__image {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;

	width: 52px !important;
	min-width: 52px !important;
	height: 64px !important;

	overflow: visible !important;
}


/* Todas las imágenes quedan dentro del mismo marco */
.checkout-style
.wc-block-components-order-summary-item__image img {
	display: block !important;

	width: 42px !important;
	height: 58px !important;
	max-width: 42px !important;
	max-height: 58px !important;

	object-fit: contain !important;
	object-position: center !important;

	margin: 0 auto !important;
}


/* Reducir separación alrededor de cada producto */
.checkout-style
.wc-block-components-order-summary-item {
	column-gap: 14px !important;
}


/* -----------------------------------------
   OPCIONES DE PAGO
----------------------------------------- */

/* Mantener el diseño original y redondear el contenedor */
.checkout-style
.wc-block-checkout__payment-method
.wc-block-components-radio-control {
	border: 1px solid #002A89 !important;
	border-radius: 20px !important;
	overflow: hidden !important;
}


/* Redondear la opción activa sin cambiar su fondo */
.checkout-style
.wc-block-components-radio-control-accordion-option--checked-option-highlighted,
.checkout-style
.wc-block-components-radio-control__option--checked {
	background-color: transparent !important;
	color: #002A89 !important;
	border-color: #002A89 !important;
	border-radius: 18px !important;
}


/* Mantener todos los textos negros */
.checkout-style
.wc-block-components-radio-control-accordion-option--checked-option-highlighted *,
.checkout-style
.wc-block-components-radio-control__option--checked * {
	color: #000 !important;
}



/* Evitar que la línea divisoria atraviese la opción seleccionada */
.checkout-style
.wc-block-components-radio-control-accordion-option--checked-option-highlighted::before,
.checkout-style
.wc-block-components-radio-control-accordion-option--checked-option-highlighted::after,
.checkout-style
.wc-block-components-radio-control__option--checked::before,
.checkout-style
.wc-block-components-radio-control__option--checked::after {
	display: none !important;
}



/* Círculo exterior azul */
.checkout-style
.wc-block-components-radio-control__input {
	border-color: #002A89 !important;
}


/* Punto interior azul al seleccionar */
.checkout-style
.wc-block-components-radio-control__input:checked {
	border-color: #002A89 !important;
	/*background-color: #002A89 !important;*/
}


/* Compatibilidad con el radio visual de WooCommerce */
.checkout-style
.wc-block-components-radio-control__input:checked::before {
	background-color: #002A89 !important;
}


/* -----------------------------------------
   NOTAS DEL PEDIDO
----------------------------------------- */

/* Texto “Añade una nota a tu pedido” */
.checkout-style
.wc-block-checkout__add-note,
.checkout-style
.wc-block-checkout__add-note
.wc-block-components-checkbox__label {
	font-size: 15px !important;
	color: #000 !important;
}


/* Campo de notas */
.checkout-style
.wc-block-checkout__order-notes textarea,
.checkout-style
.wc-block-checkout__order-notes
.wc-block-components-textarea {
	background-color: #f3f3f3 !important;
	border: none !important;
	border-radius: 20px !important;
	box-shadow: none !important;

	min-height: 110px !important;

	padding: 18px 20px !important;

	font-size: 15px !important;
	line-height: 1.4 !important;

	resize: vertical;
}


/* -----------------------------------------
   RESPONSIVE
----------------------------------------- */

@media (max-width: 767px) {

	.checkout-style
	.wc-block-components-checkout-step__title,
	.checkout-style
	.wc-block-components-checkout-order-summary__title-text {
		font-size: 19px !important;
	}


	.checkout-style
	.wc-block-components-order-summary-item__image {
		width: 48px !important;
		min-width: 48px !important;
		height: 60px !important;
	}


	.checkout-style
	.wc-block-components-order-summary-item__image img {
		width: 38px !important;
		height: 54px !important;
		max-width: 38px !important;
		max-height: 54px !important;
	}
}





/* -----------------------------------------
   RESUMEN DEL PEDIDO
----------------------------------------- */

/* Cambiar únicamente el borde gris existente a azul */
/*.checkout-style
.wp-block-woocommerce-checkout-order-summary-block {
	border-color: #002A89 !important;
}*/



/* Añadir cupones en azul */
.checkout-style
.wc-block-components-totals-coupon
.wc-block-components-panel__button,
.checkout-style
.wc-block-components-totals-coupon
.wc-block-components-panel__button svg {
	color: #002A89 !important;
	fill: #002A89 !important;
}


/* Subtotal y Total en azul */
.checkout-style
.wc-block-components-totals-item__label,
.checkout-style
.wc-block-components-totals-item__value,
.checkout-style
.wc-block-components-totals-footer-item
.wc-block-formatted-money-amount {
	color: #002A89 !important;
}


/* Subtotal y Total en mayúsculas */
.checkout-style
.wc-block-components-totals-item__label,
.checkout-style
.wc-block-components-totals-footer-item
.wc-block-components-totals-item__label {
	text-transform: uppercase !important;
}





/* -----------------------------------------
   STICKY DEL RESUMEN
----------------------------------------- */

@media (min-width: 1025px) {

	.checkout-style
	.wc-block-checkout__sidebar.is-sticky,
	.checkout-style
	.wp-block-woocommerce-checkout-totals-block.is-sticky {
		position: sticky !important;
		top: 130px !important;
		align-self: flex-start !important;
	}

}


/* Sin sticky en tablet y móvil */
@media (max-width: 1024px) {

	.checkout-style
	.wc-block-checkout__sidebar.is-sticky,
	.checkout-style
	.wp-block-woocommerce-checkout-totals-block.is-sticky {
		position: static !important;
		top: auto !important;
	}
}







/* =========================================
   CONTACTO CHECKOUT
========================================= */

@media (min-width: 768px) {

	/* Cuadrícula general */
	.checkout-style
	#contact-fields
	.wc-block-components-checkout-step__content {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 14px 16px !important;

		/* Anula visualmente el &nbsp; suelto */
		font-size: 0 !important;
		line-height: 0 !important;
	}


	/* Integrar los contenedores internos en la cuadrícula */
	.checkout-style
	#contact-fields
	#contact,
	.checkout-style
	#contact-fields
	#contact + div {
		display: contents !important;
	}


	/* Nombre: izquierda, primera fila */
	.checkout-style
	#contact-fields
	.wc-block-checkout__additional-fields__field:has(#section_one-nombre) {
		grid-column: 1 !important;
		grid-row: 1 !important;
	}


	/* Apellido: derecha, primera fila */
	.checkout-style
	#contact-fields
	.wc-block-checkout__additional-fields__field:has(#section_one-apellido) {
		grid-column: 2 !important;
		grid-row: 1 !important;
	}


	/* Correo: izquierda, segunda fila */
	.checkout-style
	#contact-fields
	.wc-block-components-address-form__email {
		grid-column: 1 !important;
		grid-row: 2 !important;
	}


	/* Teléfono: derecha, segunda fila */
	.checkout-style
	#contact-fields
	.wc-block-checkout__additional-fields__field:has(#section_one-tel_info) {
		grid-column: 2 !important;
		grid-row: 2 !important;
	}


	/* Restaurar tamaño del contenido real */
	.checkout-style
	#contact-fields
	.wc-block-components-address-form__email,
	.checkout-style
	#contact-fields
	.wc-block-checkout__additional-fields__field {
		width: 100% !important;
		margin: 0 !important;

		font-size: 16px !important;
		line-height: normal !important;
	}


	/* Ocultar filas vacías generadas por ThemeHigh */
	.checkout-style
	#contact-fields
	.wc-block-checkout__additional-fields__field:not(:has(input, select, textarea)) {
		display: none !important;
	}


	/* Avisos siempre a todo el ancho */
	.checkout-style
	#contact-fields
	.wc-block-components-notices,
	.checkout-style
	#contact-fields
	.wc-block-components-notices__snackbar {
		grid-column: 1 / -1 !important;
	}


	/* Separación antes de Dirección de facturación */
	.checkout-style
	#contact-fields {
		margin-bottom: 20px !important;
	}
}


/* =========================================
   CONTACTO EN MÓVIL
========================================= */

@media (max-width: 767px) {

	.checkout-style
	#contact-fields
	.wc-block-components-checkout-step__content {
		display: flex !important;
		flex-direction: column !important;
		gap: 12px !important;
	}


	.checkout-style
	#contact-fields
	#contact + div {
		display: flex !important;
		flex-direction: column !important;
		gap: 12px !important;
	}


	.checkout-style
	#contact-fields
	.wc-block-checkout__additional-fields__field:not(:has(input, select, textarea)) {
		display: none !important;
	}


	.checkout-style
	#contact-fields {
		margin-bottom: 48px !important;
	}
}





/* =========================================
   CHECKOUT: DATOS DE ENVÍO
========================================= */

/* Título Datos de envío */
.checkout-style
.checkout-shipping-title {
	width: 100% !important;
	margin-top: 48px !important;
	margin-bottom: 0px !important;
}


/* Separar País / Región de Nombre y Apellido de quién recibe */
.checkout-style
.wc-block-components-address-form__country {
	margin-top: 12px !important;
}











/* =========================================
   PÁGINA DE FAVORITOS - YITH WISHLIST
========================================= */

/* Ocultar título interno generado por el shortcode */
#yith-wcwl-form .wishlist-title-container {
	display: none !important;
}


/* =========================================
   TABLA GENERAL
========================================= */

#yith-wcwl-form table.wishlist_table {
	width: 100% !important;
	margin: 0 !important;

	table-layout: fixed;
	border-collapse: separate !important;
	border-spacing: 0 !important;

	background: #FFFFFF !important;
	border: 1px solid #E5E5E5 !important;
	border-radius: 20px;

	overflow: hidden;
}


/* Quitar líneas verticales */
#yith-wcwl-form table.wishlist_table th,
#yith-wcwl-form table.wishlist_table td {
	border-left: 0 !important;
	border-right: 0 !important;

	box-sizing: border-box;
	vertical-align: middle !important;
}


/* =========================================
   ENCABEZADO
========================================= */

#yith-wcwl-form table.wishlist_table thead th {
	height: 58px;
	padding: 14px 16px !important;

	background: #F8F9FC !important;
	border-top: 0 !important;
	border-bottom: 1px solid #E5E5E5 !important;

	color: #003399 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	line-height: 1.2;
	text-align: center !important;
	text-transform: uppercase !important;
}


/* Nombre alineado a la izquierda */
#yith-wcwl-form table.wishlist_table thead th.product-name {
	text-align: left !important;
}


/* =========================================
   ANCHOS DE COLUMNAS
========================================= */

/* X */
#yith-wcwl-form table.wishlist_table .product-remove {
	width: 58px !important;
	min-width: 58px !important;
	max-width: 58px !important;
}


/* Imagen */
#yith-wcwl-form table.wishlist_table .product-thumbnail {
	width: 135px !important;
	min-width: 135px !important;
	max-width: 135px !important;
}


/* Nombre más compacto */
#yith-wcwl-form table.wishlist_table .product-name {
	width: 24% !important;
}


/* Precio más cerca de la información */
#yith-wcwl-form table.wishlist_table .product-price {
	width: 18% !important;
}


/* Stock */
#yith-wcwl-form table.wishlist_table .product-stock-status {
	width: 15% !important;
}


/* Botón */
#yith-wcwl-form table.wishlist_table .product-add-to-cart {
	width: 24% !important;
}


/* =========================================
   FILAS
========================================= */

#yith-wcwl-form table.wishlist_table tbody tr,
#yith-wcwl-form table.wishlist_table tbody tr:hover,
#yith-wcwl-form table.wishlist_table tbody tr:hover td {
	background: #FFFFFF !important;
}


#yith-wcwl-form table.wishlist_table tbody td {
	padding: 24px 16px !important;

	background: #FFFFFF !important;
	border-top: 0 !important;
	border-bottom: 1px solid #E8E8E8 !important;

	color: #000000;
	font-size: 14px;
}


/* Quitar línea inferior del último producto */
#yith-wcwl-form table.wishlist_table tbody tr:last-child td {
	border-bottom: 0 !important;
}


/* =========================================
   ELIMINAR PRODUCTO
========================================= */

#yith-wcwl-form table.wishlist_table td.product-remove {
	padding: 20px 6px 20px 18px !important;
	text-align: center !important;
}


#yith-wcwl-form table.wishlist_table a.remove_from_wishlist {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;

	width: 30px;
	height: 30px;

	margin: 0 !important;
	padding: 0 !important;

	background: transparent !important;
	border: 0 !important;
	border-radius: 50%;

	color: #FF2B13 !important;
	font-size: 24px !important;
	font-weight: 600;
	line-height: 1 !important;
	text-decoration: none !important;
}


#yith-wcwl-form table.wishlist_table a.remove_from_wishlist:hover {
	background: transparent !important;
	color: #003399 !important;
}


/* =========================================
   IMAGEN
========================================= */

#yith-wcwl-form table.wishlist_table td.product-thumbnail {
	padding: 20px 20px 20px 12px !important;
	text-align: center !important;
}


#yith-wcwl-form table.wishlist_table td.product-thumbnail a {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 100%;
	height: 130px;
}


#yith-wcwl-form table.wishlist_table td.product-thumbnail img {
	display: block;

	width: 100% !important;
	max-width: 90px !important;
	height: 120px !important;

	margin: 0 auto !important;

	object-fit: contain;
	object-position: center;

	border: 0 !important;
	box-shadow: none !important;
}


/* =========================================
   NOMBRE DEL PRODUCTO
========================================= */

#yith-wcwl-form table.wishlist_table td.product-name {
	padding-left: 16px !important;
	text-align: left !important;
}


#yith-wcwl-form table.wishlist_table td.product-name > a {
	display: inline-block;

	color: #003399 !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	line-height: 1.3;
	text-decoration: none !important;
}


#yith-wcwl-form table.wishlist_table td.product-name > a:hover {
	color: #FF2B13 !important;
}


/* Variaciones */
#yith-wcwl-form table.wishlist_table td.product-name dl.variation {
	display: grid;
	grid-template-columns: auto 1fr;
	column-gap: 4px;
	row-gap: 3px;

	margin: 12px 0 0 !important;

	color: #000000 !important;
	font-size: 13px !important;
}


#yith-wcwl-form table.wishlist_table td.product-name dl.variation dt,
#yith-wcwl-form table.wishlist_table td.product-name dl.variation dd {
	margin: 0 !important;
	padding: 0 !important;

	color: #000000 !important;
	font-weight: 400 !important;
	line-height: 1.3;
}


/* =========================================
   PRECIO
========================================= */

#yith-wcwl-form table.wishlist_table td.product-price {
	color: #000000 !important;
	font-size: 15px !important;
	font-weight: 400;
	text-align: center !important;
}


#yith-wcwl-form
table.wishlist_table
td.product-price
.woocommerce-Price-amount {
	color: #000000 !important;
	font-size: 15px !important;
}


/* Precio tachado */
#yith-wcwl-form table.wishlist_table td.product-price del,
#yith-wcwl-form
table.wishlist_table
td.product-price
del .woocommerce-Price-amount {
	color: #777777 !important;
	font-size: 8px !important;
	font-weight: 400 !important;
	opacity: 1 !important;
}


/* Precio actual */
#yith-wcwl-form table.wishlist_table td.product-price ins {
	color: #000000 !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	text-decoration: none !important;
}


/* =========================================
   STOCK
========================================= */

#yith-wcwl-form table.wishlist_table td.product-stock-status {
	font-size: 14px !important;
	text-align: center !important;
}


/*
No cambiamos el color de .wishlist-in-stock ni
.wishlist-out-of-stock para conservar los colores
nativos del plugin.
*/


/* =========================================
   BOTÓN
========================================= */

#yith-wcwl-form table.wishlist_table td.product-add-to-cart {
	padding: 20px 14px !important;
	text-align: center !important;
}


#yith-wcwl-form
table.wishlist_table
td.product-add-to-cart
a.button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;

	width: auto !important;
	min-width: 185px;
	max-width: 100%;

	margin: 0 auto !important;
	padding: 11px 24px !important;

	background: #003399 !important;
	border: 1px solid #003399 !important;
	border-radius: 30px !important;

	color: #FFFFFF !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1.1;
	text-align: center;
	text-decoration: none !important;
	text-transform: uppercase;

	box-shadow: none !important;
}


#yith-wcwl-form
table.wishlist_table
td.product-add-to-cart
a.button:hover {
	background: #FF2B13 !important;
	border-color: #FF2B13 !important;
	color: #FFFFFF !important;
}


/* Ocultar icono interno */
#yith-wcwl-form
table.wishlist_table
td.product-add-to-cart
a.button i {
	display: none !important;
}


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

@media (max-width: 767px) {

	#yith-wcwl-form table.wishlist_table {
		table-layout: auto;
		border: 0 !important;
		border-radius: 0;
	}


	#yith-wcwl-form table.wishlist_table thead {
		display: none !important;
	}


	#yith-wcwl-form table.wishlist_table tbody tr {
		display: grid !important;
		grid-template-columns: 42px 90px 1fr;

		margin: 0 0 20px !important;

		border: 1px solid #E5E5E5 !important;
		border-radius: 14px;

		overflow: hidden;
	}


	#yith-wcwl-form table.wishlist_table tbody td {
		width: auto !important;
		min-width: 0 !important;
		max-width: none !important;

		border: 0 !important;
	}


	#yith-wcwl-form table.wishlist_table td.product-remove {
		grid-column: 1;
		grid-row: 1 / 3;

		display: flex !important;
		align-items: center;
		justify-content: center;

		padding: 12px 4px !important;
	}


	#yith-wcwl-form table.wishlist_table td.product-thumbnail {
		grid-column: 2;
		grid-row: 1 / 3;

		padding: 14px 5px !important;
	}


	#yith-wcwl-form table.wishlist_table td.product-thumbnail a {
		height: 105px;
	}


	#yith-wcwl-form table.wishlist_table td.product-thumbnail img {
		max-width: 72px !important;
		height: 100px !important;
	}


	#yith-wcwl-form table.wishlist_table td.product-name {
		grid-column: 3;
		grid-row: 1;

		padding: 18px 14px 8px !important;
	}


	#yith-wcwl-form table.wishlist_table td.product-price,
	#yith-wcwl-form table.wishlist_table td.product-stock-status,
	#yith-wcwl-form table.wishlist_table td.product-add-to-cart {
		grid-column: 1 / -1;

		padding: 10px 16px !important;
		text-align: left !important;
	}


	#yith-wcwl-form table.wishlist_table td.product-add-to-cart {
		padding-bottom: 18px !important;
		text-align: center !important;
	}


	#yith-wcwl-form
	table.wishlist_table
	td.product-add-to-cart
	a.button {
		width: 100% !important;
		min-width: 0;
	}
}



/* =========================================
   CORRECCIÓN FINAL: NOMBRE + COLUMNAS
========================================= */

/* Reducir realmente la columna del nombre */
#yith-wcwl-form
table.shop_table.wishlist_table
th.product-name,
#yith-wcwl-form
table.shop_table.wishlist_table
td.product-name {
	width: 19% !important;
}


/* Acercar el precio al nombre */
#yith-wcwl-form
table.shop_table.wishlist_table
th.product-price,
#yith-wcwl-form
table.shop_table.wishlist_table
td.product-price {
	width: 16% !important;
}


/* Repartir el espacio restante */
#yith-wcwl-form
table.shop_table.wishlist_table
th.product-stock-status,
#yith-wcwl-form
table.shop_table.wishlist_table
td.product-stock-status {
	width: 15% !important;
}

#yith-wcwl-form
table.shop_table.wishlist_table
th.product-add-to-cart,
#yith-wcwl-form
table.shop_table.wishlist_table
td.product-add-to-cart {
	width: 25% !important;
}


/* Nombre del producto */
body
#yith-wcwl-form
table.shop_table.wishlist_table
tbody
td.product-name
a {
	color: #003399 !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	line-height: 1.3 !important;
	text-decoration: none !important;
}


/* Hover anaranjado */
body
#yith-wcwl-form
table.shop_table.wishlist_table
tbody
td.product-name
a:hover,
body
#yith-wcwl-form
table.shop_table.wishlist_table
tbody
td.product-name
a:focus {
	color: #FF2B13 !important;
}


/* Reducir padding lateral del nombre */
#yith-wcwl-form
table.shop_table.wishlist_table
tbody
td.product-name {
	padding-left: 10px !important;
	padding-right: 8px !important;
}


/* Acercar un poco más el precio */
#yith-wcwl-form
table.shop_table.wishlist_table
tbody
td.product-price {
	padding-left: 8px !important;
	padding-right: 8px !important;
}




/* Reducir tamaño de imágenes en favoritos */
#yith-wcwl-form
table.shop_table.wishlist_table
td.product-thumbnail a {
	height: 85px !important;
}

#yith-wcwl-form
table.shop_table.wishlist_table
td.product-thumbnail img {
	max-width: 60px !important;
	height: 85px !important;
	object-fit: contain !important;
}





/* =========================================
   YITH WISHLIST - ICONO ELIMINAR PERSONALIZADO
========================================= */

/* Botón eliminar */
#yith-wcwl-form
table.wishlist_table
td.product-remove
a.remove_from_wishlist {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;

	width: 32px !important;
	height: 32px !important;

	margin: 0 !important;
	padding: 0 !important;

	background: transparent !important;
	border: 0 !important;
	border-radius: 50% !important;

	color: #FF2B13 !important;
	font-size: 0 !important;
	line-height: 1 !important;
	text-decoration: none !important;

	box-shadow: none !important;
}

/* Ocultar la X textual */
#yith-wcwl-form
table.wishlist_table
td.product-remove
a.remove_from_wishlist::first-letter {
	font-size: 0 !important;
}

/* Bote de basura SVG */
#yith-wcwl-form
table.wishlist_table
td.product-remove
a.remove_from_wishlist::before {
	content: "";

	display: block !important;

	width: 22px !important;
	height: 22px !important;

	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: contain !important;

	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23FF2B13' fill-rule='evenodd' clip-rule='evenodd' d='M12 5.5A2.25 2.25 0 0 0 9.878 7h4.244A2.251 2.251 0 0 0 12 5.5ZM12 4a3.751 3.751 0 0 0-3.675 3H5v1.5h1.27l.818 8.997a2.75 2.75 0 0 0 2.739 2.501h4.347a2.75 2.75 0 0 0 2.738-2.5L17.73 8.5H19V7h-3.325A3.751 3.751 0 0 0 12 4Zm4.224 4.5H7.776l.806 8.861a1.25 1.25 0 0 0 1.245 1.137h4.347a1.25 1.25 0 0 0 1.245-1.137l.805-8.861Z'/%3E%3C/svg%3E") !important;
}

/* Hover azul */
#yith-wcwl-form
table.wishlist_table
td.product-remove
a.remove_from_wishlist:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23002A89' fill-rule='evenodd' clip-rule='evenodd' d='M12 5.5A2.25 2.25 0 0 0 9.878 7h4.244A2.251 2.251 0 0 0 12 5.5ZM12 4a3.751 3.751 0 0 0-3.675 3H5v1.5h1.27l.818 8.997a2.75 2.75 0 0 0 2.739 2.501h4.347a2.75 2.75 0 0 0 2.738-2.5L17.73 8.5H19V7h-3.325A3.751 3.751 0 0 0 12 4Zm4.224 4.5H7.776l.806 8.861a1.25 1.25 0 0 0 1.245 1.137h4.347a1.25 1.25 0 0 0 1.245-1.137l.805-8.861Z'/%3E%3C/svg%3E") !important;
}





/* =========================================
   YITH WISHLIST - RESPONSIVE CARD
========================================= */

@media (max-width: 767px) {

	/* Lista móvil */
	#yith-wcwl-form
	ul.wishlist_table.mobile {
		display: flex !important;
		flex-direction: column !important;
		gap: 18px !important;

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

		background: transparent !important;
		border: 0 !important;

		list-style: none !important;
	}


	/* Card de producto */
	#yith-wcwl-form
	ul.wishlist_table.mobile
	li {
		position: relative !important;

		display: block !important;

		width: 100% !important;
		margin: 0 !important;
		padding: 18px 16px !important;

		background: #FFFFFF !important;
		border: 1px solid #E5E5E5 !important;
		border-radius: 14px !important;

		box-shadow: none !important;
		box-sizing: border-box !important;
		overflow: visible !important;
	}


	/* Parte superior: eliminar + imagen + datos */
	#yith-wcwl-form
	ul.wishlist_table.mobile
	.item-wrapper {
		display: grid !important;
		grid-template-columns: 34px 82px 1fr !important;
		align-items: center !important;
		column-gap: 12px !important;

		width: 100% !important;
		margin: 0 0 14px !important;
		padding: 0 !important;
	}


	/* Imagen */
	#yith-wcwl-form
	ul.wishlist_table.mobile
	.product-thumbnail {
		grid-column: 2 !important;

		display: flex !important;
		align-items: center !important;
		justify-content: center !important;

		width: 82px !important;
		margin: 0 !important;
		padding: 0 !important;
	}


	#yith-wcwl-form
	ul.wishlist_table.mobile
	.product-thumbnail a {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;

		width: 82px !important;
		height: 96px !important;

		margin: 0 !important;
		padding: 0 !important;
	}


	#yith-wcwl-form
	ul.wishlist_table.mobile
	.product-thumbnail img {
		display: block !important;

		width: auto !important;
		max-width: 68px !important;
		height: 92px !important;

		margin: 0 auto !important;

		object-fit: contain !important;
		object-position: center !important;

		border: 0 !important;
		box-shadow: none !important;
	}


	/* Detalles */
	#yith-wcwl-form
	ul.wishlist_table.mobile
	.item-details {
		grid-column: 3 !important;

		display: flex !important;
		flex-direction: column !important;
		gap: 8px !important;

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


	/* Nombre */
	#yith-wcwl-form
	ul.wishlist_table.mobile
	.product-name,
	#yith-wcwl-form
	ul.wishlist_table.mobile
	.product-name h3 {
		margin: 0 !important;
		padding: 0 !important;
	}


	#yith-wcwl-form
	ul.wishlist_table.mobile
	.product-name h3 a {
		display: inline-block !important;

		color: #002A89 !important;
		font-size: 20px !important;
		font-weight: 700 !important;
		line-height: 1.15 !important;
		text-decoration: none !important;
	}


	#yith-wcwl-form
	ul.wishlist_table.mobile
	.product-name h3 a:hover {
		color: #FF2B13 !important;
	}


	/* Tablas internas limpias */
	#yith-wcwl-form
	ul.wishlist_table.mobile
	table,
	#yith-wcwl-form
	ul.wishlist_table.mobile
	tbody,
	#yith-wcwl-form
	ul.wishlist_table.mobile
	tr,
	#yith-wcwl-form
	ul.wishlist_table.mobile
	td {
		margin: 0 !important;
		padding: 0 !important;

		background: transparent !important;
		border: 0 !important;
	}


	/* Precio dentro del bloque superior */
	#yith-wcwl-form
	ul.wishlist_table.mobile
	.item-details-table {
		width: 100% !important;
		margin: 0 !important;
	}


	#yith-wcwl-form
	ul.wishlist_table.mobile
	.item-details-table tr {
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		gap: 10px !important;

		width: 100% !important;
		padding: 7px 9px !important;

		background: #F8F9FC !important;
		border-radius: 0 !important;
	}


	/* Inventario abajo */
	#yith-wcwl-form
	ul.wishlist_table.mobile
	.additional-info-wrapper {
		display: flex !important;
		flex-direction: column !important;
		gap: 12px !important;

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


	#yith-wcwl-form
	ul.wishlist_table.mobile
	.additional-info {
		width: 100% !important;
		margin: 0 !important;
	}


	#yith-wcwl-form
	ul.wishlist_table.mobile
	.additional-info tr {
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		gap: 10px !important;

		width: 100% !important;
		padding: 8px 9px !important;

		background: #F8F9FC !important;
		border-radius: 0 !important;
	}


	/* Labels y valores */
	#yith-wcwl-form
	ul.wishlist_table.mobile
	td.label {
		color: #000000 !important;
		font-size: 11px !important;
		font-weight: 700 !important;
		line-height: 1.2 !important;
		text-align: left !important;
		white-space: nowrap !important;
	}


	#yith-wcwl-form
	ul.wishlist_table.mobile
	td.value {
		color: #000000 !important;
		font-size: 11px !important;
		font-weight: 400 !important;
		line-height: 1.2 !important;
		text-align: right !important;
	}


	#yith-wcwl-form
	ul.wishlist_table.mobile
	td.value .woocommerce-Price-amount,
	#yith-wcwl-form
	ul.wishlist_table.mobile
	.wishlist-in-stock,
	#yith-wcwl-form
	ul.wishlist_table.mobile
	.wishlist-out-of-stock {
		color: #000000 !important;
		font-size: 11px !important;
		font-weight: 400 !important;
		line-height: 1.2 !important;
	}


	/* Botón */
	#yith-wcwl-form
	ul.wishlist_table.mobile
	.product-add-to-cart {
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		text-align: center !important;
	}


	#yith-wcwl-form
	ul.wishlist_table.mobile
	.product-add-to-cart a.button {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;

		width: 100% !important;
		max-width: 230px !important;
		min-height: 38px !important;

		margin: 0 auto !important;
		padding: 11px 18px !important;

		background: #002A89 !important;
		border: 1px solid #002A89 !important;
		border-radius: 30px !important;

		color: #FFFFFF !important;
		font-size: 13px !important;
		font-weight: 700 !important;
		line-height: 1.1 !important;
		text-align: center !important;
		text-decoration: none !important;
		text-transform: uppercase !important;

		box-shadow: none !important;
	}


	#yith-wcwl-form
	ul.wishlist_table.mobile
	.product-add-to-cart a.button:hover {
		background: #FF2B13 !important;
		border-color: #FF2B13 !important;
		color: #FFFFFF !important;
	}


	#yith-wcwl-form
	ul.wishlist_table.mobile
	.product-add-to-cart a.button i {
		display: none !important;
	}


	/* Eliminar visible a la izquierda de la imagen */
	#yith-wcwl-form
	ul.wishlist_table.mobile
	.product-remove {
		position: absolute !important;
		top: 50px !important;
		left: 16px !important;
		z-index: 5 !important;

		display: flex !important;
		align-items: center !important;
		justify-content: center !important;

		width: 30px !important;
		height: 30px !important;

		margin: 0 !important;
		padding: 0 !important;
	}


	#yith-wcwl-form
	ul.wishlist_table.mobile
	.product-remove a.remove_from_wishlist {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;

		width: 30px !important;
		height: 30px !important;

		margin: 0 !important;
		padding: 0 !important;

		background: transparent !important;
		border: 0 !important;
		border-radius: 50% !important;

		color: #FF2B13 !important;
		font-size: 0 !important;
		line-height: 1 !important;
		text-decoration: none !important;

		box-shadow: none !important;
	}


	#yith-wcwl-form
	ul.wishlist_table.mobile
	.product-remove a.remove_from_wishlist i {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;

		color: #FF2B13 !important;
		font-size: 18px !important;
		line-height: 1 !important;
	}


	#yith-wcwl-form
	ul.wishlist_table.mobile
	.product-remove a.remove_from_wishlist:hover i {
		color: #002A89 !important;
	}
}





/* =========================================
   YITH WISHLIST - BASURERO VISIBLE EN RESPONSIVE
========================================= */

@media (max-width: 767px) {

	/* Contenedor eliminar */
	#yith-wcwl-form
	ul.wishlist_table.mobile
	.product-remove {
		position: absolute !important;
		top: 50px !important;
		left: 16px !important;
		z-index: 20 !important;

		display: flex !important;
		align-items: center !important;
		justify-content: center !important;

		width: 32px !important;
		height: 32px !important;

		margin: 0 !important;
		padding: 0 !important;

		visibility: visible !important;
		opacity: 1 !important;
	}

	/* Link eliminar */
	#yith-wcwl-form
	ul.wishlist_table.mobile
	.product-remove
	a.remove_from_wishlist {
		position: relative !important;

		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;

		width: 32px !important;
		height: 32px !important;

		margin: 0 !important;
		padding: 0 !important;

		background: transparent !important;
		border: 0 !important;
		border-radius: 50% !important;

		font-size: 0 !important;
		line-height: 1 !important;
		text-decoration: none !important;

		box-shadow: none !important;

		visibility: visible !important;
		opacity: 1 !important;
	}

	/* Ocultar cualquier icono original que venga de YITH */
	#yith-wcwl-form
	ul.wishlist_table.mobile
	.product-remove
	a.remove_from_wishlist
	i {
		display: none !important;
	}

	/* Pintar basurero SVG */
	#yith-wcwl-form
	ul.wishlist_table.mobile
	.product-remove
	a.remove_from_wishlist::before {
		content: "";

		display: block !important;

		width: 22px !important;
		height: 22px !important;

		background-repeat: no-repeat !important;
		background-position: center !important;
		background-size: contain !important;

		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23FF2B13' fill-rule='evenodd' clip-rule='evenodd' d='M12 5.5A2.25 2.25 0 0 0 9.878 7h4.244A2.251 2.251 0 0 0 12 5.5ZM12 4a3.751 3.751 0 0 0-3.675 3H5v1.5h1.27l.818 8.997a2.75 2.75 0 0 0 2.739 2.501h4.347a2.75 2.75 0 0 0 2.738-2.5L17.73 8.5H19V7h-3.325A3.751 3.751 0 0 0 12 4Zm4.224 4.5H7.776l.806 8.861a1.25 1.25 0 0 0 1.245 1.137h4.347a1.25 1.25 0 0 0 1.245-1.137l.805-8.861Z'/%3E%3C/svg%3E") !important;
	}

	/* Hover / tap */
	#yith-wcwl-form
	ul.wishlist_table.mobile
	.product-remove
	a.remove_from_wishlist:hover::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23002A89' fill-rule='evenodd' clip-rule='evenodd' d='M12 5.5A2.25 2.25 0 0 0 9.878 7h4.244A2.251 2.251 0 0 0 12 5.5ZM12 4a3.751 3.751 0 0 0-3.675 3H5v1.5h1.27l.818 8.997a2.75 2.75 0 0 0 2.739 2.501h4.347a2.75 2.75 0 0 0 2.738-2.5L17.73 8.5H19V7h-3.325A3.751 3.751 0 0 0 12 4Zm4.224 4.5H7.776l.806 8.861a1.25 1.25 0 0 0 1.245 1.137h4.347a1.25 1.25 0 0 0 1.245-1.137l.805-8.861Z'/%3E%3C/svg%3E") !important;
	}
}











/* =========================================
   YITH WISHLIST JUNTO AL ADD TO CART
========================================= */

/* Productos variables */
.single-product
.woocommerce-variation-add-to-cart {
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
}

/* Productos simples */
.single-product
form.cart:not(.variations_form) {
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
}

/* Quitar márgenes raros */
.single-product
.woocommerce-variation-add-to-cart .quantity,
.single-product
.woocommerce-variation-add-to-cart .single_add_to_cart_button,
.single-product
form.cart:not(.variations_form) .quantity,
.single-product
form.cart:not(.variations_form) .single_add_to_cart_button {
	margin: 0 !important;
}

/* Contenedor del wishlist */
.single-product
.reloj-wishlist {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	margin: 0 !important;
	padding: 0 !important;
}

/* Contenedor interno de YITH */
.single-product
.reloj-wishlist
.yith-wcwl-add-to-wishlist,
.single-product
.reloj-wishlist
.yith-add-to-wishlist-button-block {
	margin: 0 !important;
	padding: 0 !important;
}

/* Botón/enlace del corazón */
.single-product
.reloj-wishlist
a,
.single-product
.reloj-wishlist
button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;

	width: 38px !important;
	height: 38px !important;

	margin: 0 !important;
	padding: 0 !important;

	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;

	color: #002A89 !important;
	text-decoration: none !important;
}

/* Tamaño base del icono */
.single-product
.reloj-wishlist
svg,
.single-product
.reloj-wishlist
i {
	width: 26px !important;
	height: 26px !important;
	margin: 0 !important;

	color: #002A89 !important;
}

/* =========================================
   CORAZÓN DESPINTADO / PINTADO
========================================= */

/* Estado normal: corazón despintado */
.single-product
.reloj-wishlist
.yith-wcwl-add-to-wishlist-button:not(.yith-wcwl-add-to-wishlist-button--added)
svg,
.single-product
.reloj-wishlist
.yith-wcwl-add-to-wishlist-button:not(.yith-wcwl-add-to-wishlist-button--added)
svg path {
	fill: transparent !important;
	stroke: #002A89 !important;
	stroke-width: 1.8 !important;
	color: #002A89 !important;
}

/* Hover normal */
.single-product
.reloj-wishlist
.yith-wcwl-add-to-wishlist-button:not(.yith-wcwl-add-to-wishlist-button--added):hover
svg,
.single-product
.reloj-wishlist
.yith-wcwl-add-to-wishlist-button:not(.yith-wcwl-add-to-wishlist-button--added):hover
svg path {
	fill: transparent !important;
	stroke: #FF2B13 !important;
	color: #FF2B13 !important;
}

/* Estado agregado: corazón pintado */
.single-product
.reloj-wishlist
.yith-wcwl-add-to-wishlist-button--added
svg,
.single-product
.reloj-wishlist
.yith-wcwl-add-to-wishlist-button--added
svg path {
	fill: #002A89 !important;
	stroke: #002A89 !important;
	color: #002A89 !important;
}

/* Hover agregado */
.single-product
.reloj-wishlist
.yith-wcwl-add-to-wishlist-button--added:hover
svg,
.single-product
.reloj-wishlist
.yith-wcwl-add-to-wishlist-button--added:hover
svg path {
	fill: #FF2B13 !important;
	stroke: #FF2B13 !important;
	color: #FF2B13 !important;
}

/* Ocultar textos auxiliares si aparecen */
.single-product
.reloj-wishlist
.feedback,
.single-product
.reloj-wishlist
.separator,
.single-product
.reloj-wishlist
.yith-wcwl-add-to-wishlist-button__label {
	display: none !important;
}

/* Móvil */
@media (max-width: 767px) {

	.single-product
	.woocommerce-variation-add-to-cart,
	.single-product
	form.cart:not(.variations_form) {
		gap: 10px;
	}

	.single-product
	.reloj-wishlist
	a,
	.single-product
	.reloj-wishlist
	button {
		width: 36px !important;
		height: 36px !important;
	}

	.single-product
	.reloj-wishlist
	svg,
	.single-product
	.reloj-wishlist
	i {
		width: 24px !important;
		height: 24px !important;
	}
}



/* =========================================
   HEADER - FAVORITOS CON CONTADOR
========================================= */

.reloj-wishlist-header {
	position: relative;

	display: inline-flex !important;
	align-items: center;
	justify-content: center;

	width: 34px;
	height: 34px;

	color: #002A89 !important;
	text-decoration: none !important;
	line-height: 1 !important;
}

.reloj-wishlist-header:hover {
	color: #FF2B13 !important;
}

.reloj-wishlist-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	width: 34px;
	height: 34px;
}

.reloj-wishlist-svg {
	display: block;

	width: 31px !important;
	height: 31px !important;

	fill: currentColor !important;
	color: currentColor !important;
}

/* Burbuja */
.reloj-wishlist-count {
	position: absolute;
	top: -7px;
	right: -9px;
	z-index: 5;

	display: none;
	align-items: center;
	justify-content: center;

	min-width: 18px;
	height: 18px;

	padding: 0 5px;

	background: #FF2B13;
	border-radius: 999px;

	color: #FFFFFF;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
}

.reloj-wishlist-count.is-visible {
	display: inline-flex;
}

/* Responsive */
@media (max-width: 767px) {

	.reloj-wishlist-header,
	.reloj-wishlist-icon {
		width: 32px;
		height: 32px;
	}

	.reloj-wishlist-svg {
		width: 29px !important;
		height: 29px !important;
	}

	.reloj-wishlist-count {
		top: -6px;
		right: -8px;
	}
}




/* =========================================
   HEADER - CONTADOR FAVORITOS
========================================= */

.reloj-wishlist-count {
	display: none;
	align-items: center;
	justify-content: center;

	min-width: 16px;
	height: 16px;

	padding: 0 5px;

	background: #d9534f;
	border-radius: 999px;

	color: #FFFFFF !important;
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
}

.reloj-wishlist-count.is-visible {
	display: inline-flex;
}






/* =========================================================
   PÁGINA DE PEDIDO RECIBIDO
========================================================= */

body.woocommerce-order-received .checkout-style {
	--order-blue: #002A89;
	--order-orange: #FF7100;
	--order-light-blue: rgba(0, 42, 137, 0.065);
}


/* =========================================================
   MENSAJE DE PEDIDO RECIBIDO
========================================================= */

body.woocommerce-order-received
.checkout-style
.woocommerce-thankyou-order-received {
	margin: 0 0 22px !important;
	font-size: 30px !important;
	font-weight: 500 !important;
	line-height: 1.25 !important;
	text-transform: uppercase;

	color: #002A89;
}


/* =========================================================
   TÍTULOS
========================================================= */

body.woocommerce-order-received
.checkout-style
.woocommerce-order-details__title,

body.woocommerce-order-received
.checkout-style
.woocommerce-column__title {
	margin-bottom: 18px !important;

	font-size: 25px !important;
	font-weight: 500 !important;
	line-height: 1.15 !important;

	color: var(--order-blue) !important;
	text-transform: uppercase !important;
}


/* =========================================================
   TABLAS ORDER RECEIVED
========================================================= */

body.woocommerce-order-received
.checkout-style
table {
	width: 100%;

	border-collapse: separate !important;
	border-spacing: 0 !important;

	border: 1px solid var(--order-blue) !important;
	border-radius: 20px !important;

	overflow: hidden !important;
}


/* Celdas generales */

body.woocommerce-order-received
.checkout-style
table th,

body.woocommerce-order-received
.checkout-style
table td {
	padding: 16px 18px !important;

	border: 0 !important;
	border-right: 1px solid var(--order-blue) !important;
	border-bottom: 1px solid var(--order-blue) !important;

	color: #000;
	text-transform: uppercase;
	vertical-align: middle;
}


/* Quitar borde derecho de la última columna */

body.woocommerce-order-received
.checkout-style
table tr > th:last-child,

body.woocommerce-order-received
.checkout-style
table tr > td:last-child {
	border-right: 0 !important;
}


/* Quitar borde inferior de la última fila */

body.woocommerce-order-received
.checkout-style
table tr:last-child > th,

body.woocommerce-order-received
.checkout-style
table tr:last-child > td {
	border-bottom: 0 !important;
}


/* =========================================================
   TABLA DEL PEDIDO
========================================================= */

body.woocommerce-order-received
.checkout-style
.woocommerce-order-details
.shop_table {
	width: 100%;
}


/* Encabezado */

body.woocommerce-order-received
.checkout-style
.woocommerce-order-details
.shop_table thead th {
	background: var(--order-blue) !important;
	color: #fff !important;

	font-weight: 700 !important;
}


/* Fondo azul claro de las filas */

body.woocommerce-order-received
.checkout-style
.woocommerce-order-details
.shop_table tbody tr:nth-child(odd) td {
	background: var(--order-light-blue) !important;
}

body.woocommerce-order-received
.checkout-style
.woocommerce-order-details
.shop_table tbody tr:nth-child(even) td {
	background: #fff !important;
}


/* Eliminar cualquier cambio de fondo al hacer hover */

body.woocommerce-order-received
.checkout-style
.woocommerce-order-details
.shop_table tbody tr:hover td {
	background: inherit !important;
}

body.woocommerce-order-received
.checkout-style
.woocommerce-order-details
.shop_table tbody tr:nth-child(odd):hover td {
	background: var(--order-light-blue) !important;
}

body.woocommerce-order-received
.checkout-style
.woocommerce-order-details
.shop_table tbody tr:nth-child(even):hover td {
	background: #fff !important;
}


/* Pie de la tabla */

body.woocommerce-order-received
.checkout-style
.woocommerce-order-details
.shop_table tfoot th,

body.woocommerce-order-received
.checkout-style
.woocommerce-order-details
.shop_table tfoot td {
	background: #fff !important;
	font-weight: 700 !important;
}


/* =========================================================
   PRODUCTOS Y MINIATURAS
========================================================= */

body.woocommerce-order-received
.checkout-style
.order-product-info {
	display: inline-flex;
	align-items: center;
	gap: 16px;

	max-width: 100%;
	vertical-align: middle;
}


/* Miniatura */

body.woocommerce-order-received
.checkout-style
.order-product-thumb {
	display: block;

	width: 72px !important;
	min-width: 72px !important;
	height: 72px !important;

	margin: 0 !important;

	border-radius: 10px;
	object-fit: contain;
	object-position: center;

	background: #fff;
}


/* Nombre del producto sin mayúsculas forzadas */

body.woocommerce-order-received
.checkout-style
.order-product-name,

body.woocommerce-order-received
.checkout-style
.order-product-name a {
	color: var(--order-orange) !important;

	font-weight: 500;
	text-transform: none !important;
	text-decoration: none !important;
	font-size: 16px;

	transition:
		color 0.2s ease,
		text-decoration-color 0.2s ease;
}


/* Hover azul */

body.woocommerce-order-received
.checkout-style
.order-product-name a:hover {
	color: var(--order-blue) !important;
}


/* Cantidad */

body.woocommerce-order-received
.checkout-style
.product-quantity {
	display: inline-block;
	margin-left: 8px;

	color: #000 !important;
	font-weight: 700 !important;
	text-transform: uppercase;
}


/* Columna de total */

body.woocommerce-order-received
.checkout-style
.woocommerce-table__product-total {
	width: 36%;
}


/* =========================================================
   DIRECCIÓN DE FACTURACIÓN
========================================================= */

body.woocommerce-order-received
.checkout-style
.woocommerce-customer-details address {
	margin: 0 !important;
	padding: 24px 26px !important;

	border: 1px solid var(--order-blue) !important;
	border-radius: 20px !important;

	background: #fff !important;

	font-style: normal !important;
	line-height: 1.4 !important;
	overflow: hidden !important;
}


/* Cuadros inferiores que no son tablas */

body.woocommerce-order-received
.checkout-style
.order-data-block {
	border-radius: 20px !important;
	overflow: hidden !important;
}


/* Ocultar correo y teléfono originales de WooCommerce,
   ya que ahora aparecen dentro de nuestra lista */

body.woocommerce-order-received
.checkout-style
.woocommerce-customer-details--email,

body.woocommerce-order-received
.checkout-style
.woocommerce-customer-details--phone {
	display: none !important;
}


/* =========================================================
   DIRECCIÓN EN DOS COLUMNAS
========================================================= */

/* Contenedor general */

body.woocommerce-order-received
.checkout-style
.order-address-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 50px;
	row-gap: 0;
}


/* Cada campo */

body.woocommerce-order-received
.checkout-style
.order-address-row {
	display: grid;
	grid-template-columns: minmax(140px, 190px) 1fr;
	align-items: center;
	gap: 16px;

	min-width: 0;
	padding: 13px 0;

	border-bottom: 1px solid rgba(0, 42, 137, 0.18);
}


/*
Cada columna puede terminar con una cantidad distinta de campos.
Quitamos la línea de los últimos dos elementos.
*/

body.woocommerce-order-received
.checkout-style
.order-address-row:nth-last-child(-n + 2) {
	border-bottom: 0;
}


/* Etiquetas */

body.woocommerce-order-received
.checkout-style
.order-address-label {
	color: var(--order-blue);

	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;

	text-transform: uppercase;
}


/* Valores */

body.woocommerce-order-received
.checkout-style
.order-address-value {
	min-width: 0;

	color: #000;

	font-size: 16px;
	font-weight: 400;
	line-height: 1.4;

	overflow-wrap: anywhere;
}


/* =========================================================
   TABLET Y MÓVIL
========================================================= */

@media (max-width: 767px) {

	body.woocommerce-order-received
	.checkout-style
	.woocommerce-thankyou-order-received {
		font-size: 24px !important;
	}

	body.woocommerce-order-received
	.checkout-style
	.woocommerce-order-details__title,

	body.woocommerce-order-received
	.checkout-style
	.woocommerce-column__title {
		font-size: 27px !important;
	}

	body.woocommerce-order-received
	.checkout-style
	table th,

	body.woocommerce-order-received
	.checkout-style
	table td {
		padding: 12px 10px !important;
		font-size: 13px;
	}

	body.woocommerce-order-received
	.checkout-style
	.order-product-info {
		align-items: flex-start;
		gap: 10px;
	}

	body.woocommerce-order-received
	.checkout-style
	.order-product-thumb {
		width: 52px !important;
		min-width: 52px !important;
		height: 52px !important;
	}

	body.woocommerce-order-received
	.checkout-style
	.woocommerce-table__product-total {
		width: 32%;
	}

	body.woocommerce-order-received
	.checkout-style
	.woocommerce-customer-details address {
		padding: 18px !important;
	}

	body.woocommerce-order-received
	.checkout-style
	.order-address-row {
		grid-template-columns: 1fr;
		gap: 3px;

		padding: 10px 0;
	}
}







/* =========================================================
   DATOS DE FACTURACIÓN Y ENVÍO
========================================================= */

/* El address ya no debe ser el cuadro contenedor */
body.woocommerce-order-received
.checkout-style
.woocommerce-customer-details address {
	margin: 0 !important;
	padding: 0 !important;

	border: 0 !important;
	background: transparent !important;

	font-style: normal !important;
	line-height: 1.4 !important;
}


/* Títulos: Datos de facturación / Datos de envío */

body.woocommerce-order-received
.checkout-style
.woocommerce-column__title {
	margin: 0 0 18px !important;

	font-size: 30px !important;
	font-weight: 500 !important;
	line-height: 1.15 !important;

	color: var(--order-blue) !important;
	text-transform: uppercase !important;
}


/* Título de datos de envío */

body.woocommerce-order-received
.checkout-style
.order-shipping-title {
	margin-top: 34px !important;
}


/* Cada cuadro independiente */

body.woocommerce-order-received
.checkout-style
.order-data-block {
	margin: 0 0 28px !important;
	padding: 24px 26px !important;

	border: 1px solid var(--order-blue) !important;
	background: #fff !important;
}


/* Contenedor de campos en 2 columnas */

body.woocommerce-order-received
.checkout-style
.order-address-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 44px;
	row-gap: 0;
}


/* Cada campo */

body.woocommerce-order-received
.checkout-style
.order-address-row {
	display: grid;
	grid-template-columns: minmax(150px, 190px) 1fr;
	align-items: center;
	gap: 14px;

	min-width: 0;
	padding: 12px 0;

	border-bottom: 1px solid rgba(0, 42, 137, 0.18);
}


/* Quitar línea inferior en los últimos 2 campos */

body.woocommerce-order-received
.checkout-style
.order-address-row:nth-last-child(-n + 2) {
	border-bottom: 0;
}


/* Etiquetas */

body.woocommerce-order-received
.checkout-style
.order-address-label {
	color: var(--order-blue);

	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;

	text-transform: uppercase;
}


/* Valores */

body.woocommerce-order-received
.checkout-style
.order-address-value {
	min-width: 0;

	color: #000;

	font-size: 16px;
	font-weight: 400;
	line-height: 1.4;

	overflow-wrap: anywhere;
}


/* Ocultar duplicados originales de WooCommerce */

body.woocommerce-order-received
.checkout-style
.wc-block-components-additional-fields-list,

body.woocommerce-order-received
.checkout-style
.woocommerce-customer-details--phone,

body.woocommerce-order-received
.checkout-style
.woocommerce-customer-details--email {
	display: none !important;
}



@media (max-width: 767px) {

	body.woocommerce-order-received
	.checkout-style
	.order-data-block {
		padding: 18px !important;
	}

	body.woocommerce-order-received
	.checkout-style
	.order-address-list {
		grid-template-columns: 1fr;
		column-gap: 0;
	}

	body.woocommerce-order-received
	.checkout-style
	.order-address-row {
		grid-template-columns: 1fr;
		gap: 3px;

		padding: 10px 0;
	}

	body.woocommerce-order-received
	.checkout-style
	.order-address-row:nth-last-child(-n + 2) {
		border-bottom: 1px solid rgba(0, 42, 137, 0.18);
	}

	body.woocommerce-order-received
	.checkout-style
	.order-address-row:last-child {
		border-bottom: 0;
	}
}





/* ==========================================================
   PIN PERSONALIZADO DEL MAPA
========================================================== */

#map-container-1345 .awesome-marker {
	position: relative !important;

	width: 48px !important;
	height: 60px !important;

	margin-left: -24px !important;
	margin-top: -60px !important;

	border: 0 !important;

	background-color: transparent !important;
	background-image:
		url("/wp-content/uploads/2026/07/alfiler.svg") !important;
	background-repeat: no-repeat !important;
	background-position: center bottom !important;
	background-size: 48px 60px !important;

	box-shadow: none !important;

	overflow: visible !important;
}


/* Ocultar el icono original del plugin */

#map-container-1345 .awesome-marker > i {
	display: none !important;
}


/* Icono personalizado dentro del pin */

#map-container-1345 .awesome-marker::after {
	content: "";

	position: absolute;

	top: 9px;
	left: 50%;

	width: 27px;
	height: 27px;

	background-image:
		url("/wp-content/uploads/2026/07/Capa-2.png");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;

	transform: translateX(-50%);

	pointer-events: none;
}





/* =========================================
   CALCULADORA DE CUOTAS
========================================= */

/*.lcd-cuotas {
	display: flex;
	flex-direction: column;
	gap: 4px;

	font: inherit;
	color: inherit;
}

.lcd-cuota-row {
	display: flex;
	align-items: baseline;
	gap: 5px;

	font: inherit;
	color: inherit;
}

.lcd-cuota-value,
.lcd-cuota-value .woocommerce-Price-amount,
.lcd-cuota-value .woocommerce-Price-currencySymbol {
	font: inherit;
	color: inherit;
}*/


/* =========================================
   CALCULADORA DE CUOTAS
========================================= */

.lcd-cuotas {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 24px;
	row-gap: 8px;

	width: 100%;

	font: inherit;
	color: inherit;
}

.lcd-cuota-row {
	display: flex;
	align-items: baseline;
	gap: 5px;

	font: inherit;
	color: inherit;
	white-space: nowrap;
}

.lcd-cuota-value,
.lcd-cuota-value .woocommerce-Price-amount,
.lcd-cuota-value .woocommerce-Price-currencySymbol {
	font: inherit;
	color: inherit;
}


/* En pantallas amplias, usar 3 columnas si hay espacio */
@media (min-width: 1025px) {
	.lcd-cuotas.lcd-cuotas-3 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}


/* En móvil, vuelve a una columna */
@media (max-width: 767px) {
	.lcd-cuotas {
		grid-template-columns: 1fr;
	}
}







/* =========================================
   MENSAJES DE WOOCOMMERCE
========================================= */

.woocommerce-notices-wrapper,
.woocommerce-notices-wrapper *,
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	font-family: "Poppins", sans-serif !important;
}


/* Línea superior azul */

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	border-top-color: #002A89 !important;
}


/* Botones de los mensajes */

.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button,
.woocommerce-notices-wrapper .button {
	padding: 12px 22px !important;

	background-color: #002A89 !important;
	color: #FFFFFF !important;

	border: 0 !important;
	border-radius: 25px !important;

	font-family: "Poppins", sans-serif !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;

	text-decoration: none !important;
	text-transform: uppercase !important;

	transition:
		background-color 0.25s ease,
		color 0.25s ease !important;
}


/* Hover anaranjado */

.woocommerce-message .button:hover,
.woocommerce-info .button:hover,
.woocommerce-error .button:hover,
.woocommerce-notices-wrapper .button:hover {
	background-color: #FF2B13 !important;
	color: #FFFFFF !important;
}




/* Link de acceso en checkout */

.wc-block-checkout__login-prompt {
	font-family: "Poppins", sans-serif !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;

	color: #002A89 !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
}


/* Hover */

.wc-block-checkout__login-prompt:hover {
	color: #FF2B13 !important;
	text-decoration: none !important;
}











/* =========================================
   LA CASA DEL RELOJ - MEGA MENÚ DINÁMICO
========================================= */

.lcd-mega-dynamic {
	display: grid;
	grid-template-columns: 520px 1fr;
	gap: 60px;
	align-items: start;

	width: 100%;
	max-width: 1180px;
	margin: 0 auto;
	padding: 15px 0;

	background: #ffffff;
}

/* Columna izquierda: menú + submenú */
.lcd-mega-left {
	position: relative;
	z-index: 3;
}

/* Listas */
.lcd-mega-list,
.lcd-mega-submenu {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* Items */
.lcd-mega-item {
	position: relative;
	margin: 0;
	padding: 0;
}

/* Links principales */
.lcd-mega-item > a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;

	width: 300px;
	min-width: 300px;
	max-width: 300px;

	padding: 11px 16px;

	color: #002A89;
	background-color: transparent;

	font-size: 15px;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	text-transform: uppercase;

	border-radius: 20px;

	transition:
		color .18s ease,
		background-color .18s ease;
}

/* Hover y activo del menú principal */
.lcd-mega-item:hover > a,
.lcd-mega-item.is-active > a {
	color: #ffffff;
	background-color: #FF2B13;
}

/* Flecha lateral para items con hijos */
.lcd-mega-item.has-children > a .lcd-mega-arrow {
	font-size: 0;
	display: inline-block;

	width: 8px;
	height: 8px;
	margin-left: 6px;
	flex: 0 0 auto;

	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;

	transform: rotate(45deg);
}

/* Segunda columna: hijos del item activo */
.lcd-mega-submenu {
	position: absolute;
	top: 0;
	left: 330px;

	min-width: 185px;
	padding: 0 0 0 28px;

	background: transparent;
	border-radius: 20px !important;

	opacity: 0;
	visibility: hidden;
	pointer-events: none;

	transition:
		opacity .18s ease,
		visibility .18s ease;

	z-index: 20;
}

/* Línea divisoria entre menú principal y subcategorías */
.lcd-mega-submenu::before {
	content: "";
	position: absolute;
	top: 4px;
	left: 0;

	width: 1px;
	height: calc(100% - 8px);

	background: rgba(0, 42, 137, 0.18);
}

/* Mostrar hijos al hover */
.lcd-mega-item.has-children:hover > .lcd-mega-submenu {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

/* Links del submenú */
.lcd-mega-submenu .lcd-mega-item > a {
	display: flex;
	align-items: center;
	justify-content: flex-start;

	width: 150px;
	min-width: 150px;
	max-width: 150px;

	padding: 10px 16px;

	color: #002A89;
	background-color: transparent;

	font-size: 13px;
	font-weight: 600;
	line-height: 1.2;
	text-transform: uppercase;
	white-space: nowrap;

	border-radius: 20px;

	transition:
		color .18s ease,
		background-color .18s ease;
}

/* Hover y activo del submenú */
.lcd-mega-submenu .lcd-mega-item:hover > a,
.lcd-mega-submenu .lcd-mega-item.is-active > a {
	color: #ffffff;
	background-color: #FF2B13;
}

/* Columna derecha */
.lcd-mega-right {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 100%;
	height: 230px;
	min-height: 230px;
	max-height: 230px;

	overflow: hidden;
}

/* Imagen dinámica: tamaño fijo sin cortes */
.lcd-mega-preview {
	display: block !important;

	width: 520px !important;
	min-width: 520px !important;
	max-width: 520px !important;

	height: 230px !important;
	min-height: 230px !important;
	max-height: 230px !important;

	object-fit: cover !important;
	object-position: center center !important;

	background-color: #ffffff;
	border-radius: 20px !important;

	transition: none !important;
}

/* Apagamos cualquier fade anterior */
.lcd-mega-preview.is-changing {
	opacity: 1 !important;
}

/* Responsive tablet */
@media (max-width: 1024px) {
	.lcd-mega-dynamic {
		grid-template-columns: 1fr;
		gap: 28px;
		padding: 32px 24px;
	}

	.lcd-mega-item > a {
		width: 100%;
		min-width: 0;
		max-width: none;
	}

	.lcd-mega-submenu {
		position: static;

		min-width: 0;
		margin-top: 4px;
		margin-bottom: 10px;
		padding-left: 18px;

		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}

	.lcd-mega-submenu::before {
		display: none;
	}

	.lcd-mega-submenu .lcd-mega-item > a {
		width: 100%;
		min-width: 0;
		max-width: none;

		padding: 8px 16px;
		font-size: 13px;
	}

	.lcd-mega-right {
		height: 180px;
		min-height: 180px;
		max-height: 180px;
	}

	.lcd-mega-preview {
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;

		height: 180px !important;
		min-height: 180px !important;
		max-height: 180px !important;
	}
}

/* Responsive móvil */
@media (max-width: 767px) {
	.lcd-mega-dynamic {
		padding: 24px 18px;
	}

	.lcd-mega-right {
		display: none;
	}
}











/* =========================================
   MI CUENTA - LOGIN / REGISTRO
   Floating labels sin alterar tamaño de inputs
========================================= */

/* Mover headers Acceder / Registrarse */
.formsw #customer_login .u-column1 h2,
.formsw #customer_login .u-column2 h2 {
	transform: translateX(40px);
}

/* Contenedor del campo */
.formsw #customer_login .woocommerce-form-row--wide {
	position: relative;
}

/* Label dentro del input */
.formsw #customer_login .woocommerce-form-row--wide > label {
	position: absolute;
	top: 50%;
	left: 18px;
	z-index: 2;

	margin: 0;
	padding: 0 4px;

	color: #111;
	font-size: 14px;
	font-weight: 400;
	line-height: 1;

	transform: translateY(-50%);
	transition: all .18s ease;

	pointer-events: none;
	background: transparent;
}



/* Campo de contraseña de WooCommerce */
.formsw #customer_login .woocommerce-form-row--wide .password-input {
	display: block;
	width: 100%;
}

/* Ajuste para que el input de password respete el ojito */
.formsw #customer_login .woocommerce-form-row--wide .password-input input.input-text {
	padding-right: 42px !important;
}


/* Alinear texto escrito con el label */
.formsw #customer_login .woocommerce-form-row--wide input.input-text {
	padding-left: 22px !important;
}


/* Estado flotante cuando el campo está activo o tiene texto */
.formsw #customer_login .woocommerce-form-row--wide.is-floating > label {
	top: 8px;
	font-size: 11px;
	transform: translateY(0);
	opacity: .9;
}

/* Ojito de contraseña centrado */
.formsw #customer_login .show-password-input {
	top: 50% !important;
	right: 14px !important;
	transform: translateY(-50%) !important;
}

/* Evitar que el checkbox Recuérdame agarre estilos de label flotante */
.formsw #customer_login .woocommerce-form__label-for-checkbox {
	position: static !important;
	transform: none !important;
	pointer-events: auto !important;
	font-size: inherit !important;
	background: transparent !important;
}









/* =========================================
   FLECHAS GLOBALES EN BOTONES
   LA CASA DEL RELOJ
========================================= */

:root {
	--btn-arrow-right: url("/wp-content/uploads/2026/06/flecha-derecha.svg");
	--btn-arrow-right-hover: url("/wp-content/uploads/2026/07/flecha-hacia-arriba-a-la-derecha.svg");

	--btn-arrow-left: url("/wp-content/uploads/2026/06/flecha-izquierda.svg");
	--btn-arrow-left-hover: url("/wp-content/uploads/2026/07/flecha-hacia-arriba-a-la-izquierda.svg");

	--btn-arrow-size: 16px;
	--btn-arrow-gap: 10px;
}


/* =========================================
   BOTONES GENERALES
   No tocar mini carrito ni botones de icono
========================================= */

.elementor-button:not(.elementor-menu-cart__toggle_button):not(.elementor-icon):not(.remove),
.woocommerce a.button:not(.remove):not(.wc-forward):not(.added_to_cart),
.woocommerce button.button,
.wp-element-button,
.wc-block-components-button:not(.wc-block-mini-cart__button),
button[type="submit"] {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: var(--btn-arrow-gap);
}


/* Flecha derecha normal */

.elementor-button:not(.elementor-menu-cart__toggle_button):not(.elementor-icon):not(.remove)::after,
.woocommerce a.button:not(.remove):not(.wc-forward):not(.added_to_cart)::after,
.woocommerce button.button::after,
.wp-element-button::after,
.wc-block-components-button:not(.wc-block-mini-cart__button)::after,
button[type="submit"]::after {
	content: "";
	display: inline-block;
	width: var(--btn-arrow-size);
	height: var(--btn-arrow-size);
	flex: 0 0 var(--btn-arrow-size);

	background-color: currentColor;

	-webkit-mask-image: var(--btn-arrow-right);
	mask-image: var(--btn-arrow-right);

	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;

	-webkit-mask-position: center;
	mask-position: center;

	-webkit-mask-size: contain;
	mask-size: contain;

	transition: -webkit-mask-image .25s ease, mask-image .25s ease, transform .25s ease;
}


/* Hover flecha diagonal derecha */

.elementor-button:not(.elementor-menu-cart__toggle_button):not(.elementor-icon):not(.remove):hover::after,
.woocommerce a.button:not(.remove):not(.wc-forward):not(.added_to_cart):hover::after,
.woocommerce button.button:hover::after,
.wp-element-button:hover::after,
.wc-block-components-button:not(.wc-block-mini-cart__button):hover::after,
button[type="submit"]:hover::after {
	-webkit-mask-image: var(--btn-arrow-right-hover);
	mask-image: var(--btn-arrow-right-hover);
}


/* =========================================
   NO TOCAR ICONOS / MINI CARRITO / WISHLIST
========================================= */

.elementor-icon::after,
.elementor-menu-cart__toggle::after,
.elementor-menu-cart__toggle_button::after,
.wc-block-mini-cart__button::after,
.cart-contents::after,
.header-cart::after,
.site-header-cart::after,
.remove::after {
	display: none !important;
	content: none !important;
}


/* Restaurar iconos nativos de Elementor si el código anterior los ocultó */

.elementor-button .elementor-button-icon {
	display: inline-flex !important;
}


/* =========================================
   BOTÓN BACK / REGRESAR
========================================= */

.sw-back-button,
.back-button,
.btn-back,
a[href="javascript:history.back()"] {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: var(--btn-arrow-gap);
}


/* Flecha izquierda antes del texto */

.sw-back-button::before,
.back-button::before,
.btn-back::before,
a[href="javascript:history.back()"]::before {
	content: "";
	display: inline-block;
	width: var(--btn-arrow-size);
	height: var(--btn-arrow-size);
	flex: 0 0 var(--btn-arrow-size);

	background-color: currentColor;

	-webkit-mask-image: var(--btn-arrow-left);
	mask-image: var(--btn-arrow-left);

	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;

	-webkit-mask-position: center;
	mask-position: center;

	-webkit-mask-size: contain;
	mask-size: contain;

	transition: -webkit-mask-image .25s ease, mask-image .25s ease, transform .25s ease;
}

.sw-back-button:hover::before,
.back-button:hover::before,
.btn-back:hover::before,
a[href="javascript:history.back()"]:hover::before {
	-webkit-mask-image: var(--btn-arrow-left-hover);
	mask-image: var(--btn-arrow-left-hover);
}


/* El botón back no debe llevar flecha derecha */

.sw-back-button::after,
.back-button::after,
.btn-back::after,
a[href="javascript:history.back()"]::after {
	display: none !important;
	content: none !important;
}



/* =========================================
   WOOF - QUITAR FLECHA DEL BOTÓN LIMPIAR
========================================= */

.woof_submit_search_form_container .woof_reset_search_form::after,
.woof_submit_search_form_container .woof_reset_search_form:hover::after,
.woof_submit_search_form_container .woof_reset_search_form:focus::after {
	display: none !important;
	content: none !important;
	width: 0 !important;
	height: 0 !important;
	flex: 0 0 0 !important;

	-webkit-mask-image: none !important;
	mask-image: none !important;
	background-image: none !important;
	background-color: transparent !important;
}

/* Quitar el espacio que dejaba la flecha */
.woof_submit_search_form_container .woof_reset_search_form {
	gap: 0 !important;
}






/* QUITAR BORDER RADIUS EN ACORDEÓN AL MOMENTO DE ESTAR ABIERTO */
/* =========================================
   ACCORDION: unión header/contenido sin radius
   Clase en el widget: acc-join-flat
========================================= */

/* Cuando el item está abierto (details[open]) quitamos SOLO el radius inferior del header */
.acc-join-flat .e-n-accordion-item[open] summary {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}







/* Reducir únicamente el icono de usuario */
.iconos-header .elementor-social-icon-user svg {
	width: 90% !important;
	height: 90% !important;
}

/* Mantenerlo centrado */
.iconos-header .elementor-social-icon-user {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

/* Reducir únicamente el corazón */
.iconos-header .elementor-social-icon-heart svg {
	width: 92% !important;
	height: 92% !important;
}

/* Mantenerlo centrado */
.iconos-header .elementor-social-icon-heart {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}




/* FLECHAS BANNER AZUL HEADER */
/* Ocultar las flechas originales */
.slider-arrows .elementor-swiper-button svg {
	display: none !important;
}

/* Tamaño y comportamiento de las nuevas flechas */
.slider-arrows .elementor-swiper-button::before {
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

/* Flecha izquierda */
.slider-arrows .elementor-swiper-button-prev::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23ffffff' d='M256 504C119 504 8 393 8 256S119 8 256 8s248 111 248 248-111 248-248 248zm28.9-143.6L209.4 288H392c13.3 0 24-10.7 24-24v-16c0-13.3-10.7-24-24-24H209.4l75.5-72.4c9.7-9.3 9.9-24.8.4-34.3l-11-10.9c-9.4-9.4-24.6-9.4-33.9 0L107.7 239c-9.4 9.4-9.4 24.6 0 33.9l132.7 132.7c9.4 9.4 24.6 9.4 33.9 0l11-10.9c9.5-9.5 9.3-25-.4-34.3z'/%3E%3C/svg%3E");
}

/* Flecha derecha */
.slider-arrows .elementor-swiper-button-next::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23ffffff' d='M256 8c137 0 248 111 248 248S393 504 256 504 8 393 8 256 119 8 256 8zm-28.9 143.6l75.5 72.4H120c-13.3 0-24 10.7-24 24v16c0 13.3 10.7 24 24 24h182.6l-75.5 72.4c-9.7 9.3-9.9 24.8-.4 34.3l11 10.9c9.4 9.4 24.6 9.4 33.9 0L404.3 273c9.4-9.4 9.4-24.6 0-33.9L271.6 106.3c-9.4-9.4-24.6-9.4-33.9 0l-11 10.9c-9.5 9.6-9.3 25.1.4 34.4z'/%3E%3C/svg%3E");
}

/* HOVER */
/* Hover flecha izquierda */
.slider-arrows .elementor-swiper-button-prev:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23FF2B13' d='M256 504C119 504 8 393 8 256S119 8 256 8s248 111 248 248-111 248-248 248zm28.9-143.6L209.4 288H392c13.3 0 24-10.7 24-24v-16c0-13.3-10.7-24-24-24H209.4l75.5-72.4c9.7-9.3 9.9-24.8.4-34.3l-11-10.9c-9.4-9.4-24.6-9.4-33.9 0L107.7 239c-9.4 9.4-9.4 24.6 0 33.9l132.7 132.7c9.4 9.4 24.6 9.4 33.9 0l11-10.9c9.5-9.5 9.3-25-.4-34.3z'/%3E%3C/svg%3E");
}

/* Hover flecha derecha */
.slider-arrows .elementor-swiper-button-next:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23FF2B13' d='M256 8c137 0 248 111 248 248S393 504 256 504 8 393 8 256 119 8 256 8zm-28.9 143.6l75.5 72.4H120c-13.3 0-24 10.7-24 24v16c0 13.3 10.7 24 24 24h182.6l-75.5 72.4c-9.7 9.3-9.9 24.8-.4 34.3l11 10.9c9.4 9.4 24.6 9.4 33.9 0L404.3 273c9.4-9.4 9.4-24.6 0-33.9L271.6 106.3c-9.4-9.4-24.6-9.4-33.9 0l-11 10.9c-9.5 9.6-9.3 25.1.4 34.4z'/%3E%3C/svg%3E");
}




/* HOVER FLECHAS CARRUSEL DE IMÁGENES QUIENES SOMOS */
.carousel-hover .elementor-swiper-button:hover svg path {
	fill: #FF2B13 !important;
}





/* ACORDEON */
	@media (max-width:767px){ .acordeon{ height: 65vh; } }
	
	.acordeon {
		min-height: 75vh;
	}
	
	.acordeon .item {
		display: flex;
		flex-direction: column;
		flex: 1 1 0 !important;
		height: auto;
		overflow: visible;
		position: relative;
		transition: flex 1s ease;
	}
	
	.acordeon .item.active {
		flex: 3 1 0 !important;
	}
	
	.acordeon .item-bg {
		flex: 0 0 100%;
		background-size: cover;
		background-position: center;
		border-radius: 80px;
		transition: flex-basis 1s ease, border-radius 1s ease;
	}
	
	.acordeon .item-info {
		display: none;
		flex: 0 0 0;
		opacity: 0;
		overflow: hidden;
		transition: opacity 1s ease, flex-basis 1s ease; }
	
	.acordeon .item.active .item-bg {
		flex: 0 0 auto;
		border-radius: 70px 70px 0 0;
		min-height: clamp(30vh, 40vh, 45vh);
	}
	
	.acordeon .item.active .item-info {
		display: block;
		flex: 0 0 auto;
		opacity: 1;
		border-radius: 0 0 70px 70px;
	}
	
	/* Flechas */
	.item-arrow img {
		display: none !important;
	}
	
	.acordeon .item-bg .item-arrow {
		position: absolute;
		top: 20px;
		left: 50%;
		transform: translateX(-50%);
		width: 60px;
		height: 60px;
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center;
		background-image: url('/wp-content/uploads/2026/07/flecha-normal-1.png');
		transition: background-image .3s ease, left .3s ease, transform .3s ease;
		z-index: 10;
	}
	
	/* Hover sobre todo el item */
	
	.acordeon .item:hover .item-arrow, .acordeon .item-bg .item-arrow:hover {
			background-image: url('/wp-content/uploads/2026/07/flecha-hover.png');
	}
	
	/* Flecha activa */
	.acordeon .item.active .item-arrow {
		background-image: url('/wp-content/uploads/2026/07/flecha-activa.png') !important;
		left: auto;
		right: 20px;
		transform: none;
	}
	
	/* Móvil */
	
	@media (max-width: 767px) {
		.acordeon {
			flex-direction: column;
			height: auto;
		}
		
		.acordeon .item-arrow{
			display: none;
		}
		
		.acordeon .item {
			flex: none !important;
			width: 100%;
			margin-bottom: 1rem;
			transition: none;
		}
		
		.acordeon .item-bg {
			flex: none !important;
			width: 100%;
			height: auto !important;
			border-radius: 60px 60px 0 0 !important; }
		
		.acordeon .item.active .item-bg {
			border-radius: 60px 60px 0 0 !important;
		}
		
		.acordeon .item-info{
			display: block !important;
			opacity: 1 !important;
			max-height: none !important;
			flex: 0 0 auto !important;
			overflow: visible !important; }
		
		.acordeon .item.active .item-info {
			max-height: 1000px; opacity: 1; }
	}







/* =========================================================
   ETIQUETA DINÁMICA DE PROMOCIÓN
========================================================= */

/* Ocultar completamente si el shortcode no devuelve etiqueta */
.lcd-promo-container:not(:has(.lcd-promo-badge)) {
	display: none !important;
}

/* La etiqueta ocupa correctamente el contenedor */
.lcd-promo-container .elementor-shortcode {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.lcd-promo-container .lcd-promo-badge {
	display: block;
	width: 100%;
	text-align: center;
}