/*
Theme Name: DTF México 2026 v4
Theme URI: https://dtfmexico.mx
Author: Cristóbal Torres
Author URI: https://dtfmexico.mx
Description: Tema profesional para DTF México - Impresión DTF de alta calidad
Version: 1.0.0
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: dtfmexico
Domain Path: /languages
Requires at least: 5.8
Tested up to: 6.5
Tags: ecommerce, printing, dtf, woocommerce, responsive, custom-colors

Este tema está diseñado específicamente para DTF México, especializado en servicios e insumos de impresión DTF.
*/

/* ==========================================================================
   IMPORTANTE: Esta es la hoja de estilos principal del tema DTF México
   ========================================================================== */

/*--FUENTES--*/
/* montserrat-300 - latin */
@font-face {
font-family: 'Montserrat';
font-style: normal;
font-weight: 100 900;
font-display: swap;
src: url('../fonts/JTUSjIg1_i6t8kCHKm459Wlhyw.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
    unicode-range: U +0000 -00FF, U +0131, U +0152 -0153, U +02BB -02BC, U +02C6, U +02DA, U +02DC, U +0304, U +0308, U +0329, U +2000 -206F, U +20AC, U +2122, U +2191, U +2193, U +2212, U +2215, U + FEFF, U + FFFD;        
}

/* ---------------------------------------------------------
   0.  VARIABLES  (PALETA OBLIGATORIA)
   ---------------------------------------------------------*/
:root {
  /* --- COLORES PRIMARIOS Y SECUNDARIOS --- */
  /* Basados en el manual para garantizar coherencia visual [2, 4] */
  --color-azul: #234E69;
  --color-mostaza: #CF9F38;
  --color-verde: #979F79;
  --color-marron: #A9562B;
  --color-rosa: #C97A67;
  --color-crema: #F0EFE8; /* Ideal para fondos suaves y legibles [2] */
  --color-verde-bandera: #1B6344;
  --color-amarillo: #FAB740;
  --color-marino: #0B2434; /* Recomendado para contraste máximo en lectura [2] */
  --color-vino: #952B1E;

  /* --- VARIABLES SEMÁNTICAS (Para un diseño dinámico) --- */
  --bg-main: var(--color-crema);
  --text-primary: var(--color-marino);
  --text-accent: var(--color-azul);
  --cta-action: var(--color-mostaza);
  --cta-hover: var(--color-amarillo);
  --status-error: var(--color-vino);
  --status-success: var(--color-verde-bandera);

  /* --- TIPOGRAFÍA --- */
  /* Montserrat es la fuente principal para mantener la voz de la marca [5] */
  --font-primary: 'Montserrat', sans-serif;
  
  /* Jerarquía de pesos tipográficos según el manual [5, 6] */
 --weight-light: 300;   /* Recomendado para cuerpos de texto [6] */
 --weight-medium: 500;  /* Para subtítulos y énfasis [6] */
 --weight-bold: 600;    /* Para títulos de alto impacto [6] */

  /* Tamaños mínimos para garantizar legibilidad [6] */
  --font-size-base: 12pt;
  --font-size-title: 60pt;
  --font-size-subtitle: 24pt; 
}

.out-of-stock {
font-weight: var(--weight-bold);
  color: var(--color-crema);
  background: var(--color-vino);
  padding: 25px;
  border-radius: 15px;
}

/* ===== ESTILOS GENERALES ===== */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: var(--font-primary);
  font-weight: var(--weight-light);
  font-size: var(--font-size-base);
  line-height: 1.6;
  background-color: var(--color-crema);
  color: var(--text-primary);
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

h1, h2, h3, h4 {
  font-weight: var(--weight-bold);
  color: var(--text-accent);
  line-height: 1.2;
  margin-bottom: 1rem;
}

h1 {
  font-size: clamp(2.5rem, 5vw, var(--font-size-title));
  text-transform: uppercase;
}

h2 {
  font-size: clamp(1.8rem, 3vw, var(--font-size-subtitle));
  text-align: center;
  margin: 3rem 0 2rem;
  position: relative;
}

/*-h2::after {
  content: '';
  display: block;
  width: 80px;
  height: 4px;
  background: var(--cta-action);
  margin: 0.5rem auto;
  border-radius: 2px;
}-*/

h3 {
  font-size: 1.5rem;
  margin-bottom: 0.75rem;
}

h4 {
  font-size: 1.2rem;
  color: var(--color-azul);
}

p {
  margin-bottom: 1rem;
}

strong {font-weight: var(--weight-bold);}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

a {
  text-decoration: none;
  color: inherit;
  transition: all 0.3s ease;
}

ul {
  list-style: none;
}

.container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1.5rem;
}

section {
  padding: 4rem 0;
}

*[id] {
    scroll-margin-top: 180px; /* Ajusta según la altura de tu menú */
}

/* ===== BOTONES ===== */
.btn-primary, .btn-secondary {
  display: inline-block;
  padding: 0.875rem 2rem;
  border-radius: 4px;
  font-weight: var(--weight-medium);
  text-align: center;
  cursor: pointer;
  border: none;
  transition: all 0.3s ease;
}

.btn-primary {
  background-color: var(--cta-action);
  color: var(--color-marino);
  font-size: 1.1rem;
  box-shadow: 0 4px 12px rgba(207, 159, 56, 0.25);
}

.btn-primary:hover {
  background-color: var(--cta-hover);
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(207, 159, 56, 0.35);
}

#woocommerce-checkout-form-coupon p .button {
	display: block;
  margin: auto;
  padding: 1rem;
}

#woocommerce-checkout-form-coupon p .button,.btn-secondary {
background-color: var(--color-azul);
  color: var(--color-crema) !important;
  border: 2px solid var(--color-azul) !important;
}

#woocommerce-checkout-form-coupon p .button:hover {
  background-color: transparent;
  color: var(--color-azul)
}


/*---TABLAS PRODUCTO---*/

.dtf-calculator .quantity {display: none;}

/* ===== 6. FOOTER ===== */
.site-footer {
  background-color: var(--color-marino);
  color: var(--color-crema);
  text-align: center;
  padding: 2.5rem 1rem;
  margin-top: auto;
}

.site-footer p {
  margin-bottom: 0;
  opacity: 0.8;
  font-size: 0.95rem;
}

/* ===== CANTIDAD Y BOTÓN AÑADIR ===== */
.product-actions form {
    margin-top: 2rem;
}

.qib-container {
    display: inline-flex;
    align-items: center;
    margin-right: 1.5rem;
    background: var(--color-crema);
    border-radius: 10px;
    border: 2px solid rgba(35, 78, 105, 0.1);
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(11, 36, 52, 0.08);
}

.qib-button {
    background: var(--cta-action);
    color: var(--color-marino);
    border: none;
    width: 48px;
    height: 48px;
    font-size: 1.5rem;
    font-weight: var(--weight-bold);
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.qib-button:hover {
    background: var(--cta-hover);
    color: var(--color-marino);
}

.quantity .qty {
    width: 80px;
    height: 48px;
    border: none;
    text-align: center;
    font-size: 1.2rem;
    font-weight: var(--weight-bold);
    color: var(--color-marino);
    background: var(--color-crema);    
}

.quantity .qty::-webkit-inner-spin-button,
.quantity .qty::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.cart .dtf-calculator .datosCotizarDTF .unidadesDTF .cmDTF:has(input:checked), .cart .dtf-calculator .datosCotizarDTF .unidadesDTF .mtsDTF:has(input:checked) {
  background-color: var(--color-mostaza);
  color: var(--color-azul);
  opacity: 1;
  transition: ease-in .2s;
  border: 1px solid var(--color-azul);
  font-weight: bold;
}

.cart-actions-row .actions .update-cart, .shipping-calculator-form p .button, .acabadoDTF {
  background: var(--color-mostaza);
  color: var(--color-crema);
  font-size: 1.1rem;
  font-weight: var(--weight-bold);
  padding: 15px !important;
}

.actions .coupon-section .btn-secondary {
	background: #FAB740;
  font-size: 1.1rem;
  font-weight: var(--weight-bold);
  padding: 15px !important;
  color: var(--color-azul) !important;
  border: none !important;
  border-radius: 5px;
}

.shipping-calculator-form p .button {
    border: none;
  padding: 10px 15px;
  border-radius: 15px;
}


.single-product-container .product-layout .product-info-summary .product-actions .cart .single_add_to_cart_button, .cart_totals .wc-proceed-to-checkout .checkout-button, .woocommerce-ResetPassword .woocommerce-form-row .woocommerce-Button {
background: linear-gradient(135deg, var(--color-amarillo), var(--color-amarillo));
  color: var(--color-azul) !important;
  border: none !important;
  padding: 1.125rem 2.5rem !important;
  font-size: 1.1rem;
  font-weight: var(--weight-bold);
  border-radius: 10px !important;
  cursor: pointer;
  transition: all 0.3s ease;
  display: flex !important;
  align-items: center;
  justify-content: center;
  min-width: 200px;
  box-shadow: 0 6px 20px rgba(207, 159, 56, 0.3);
  position: relative;
  overflow: hidden;
  z-index: 1;
  margin: 25px 0 auto !important;
  width: 100%;
  height: unset !important;
}

.woocommerce-shipping-totals td .woocommerce-shipping-calculator .shipping-calculator-button {
    padding: 10px 15px;
  border-radius: 15px;
  color: var(--color-crema);
  background: var(--color-mostaza);
}

.single-product-container .product-layout .product-info-summary .product-actions .cart .single_add_to_cart_button:hover, .cart-actions-row .actions .update-cart:hover, .cart_totals .wc-proceed-to-checkout .checkout-button:hover, .actions .coupon-section .btn-secondary:hover, #payment .button.alt:hover, .shipping-calculator-form p .button:hover, .shipping-calculator-button:hover {
  color: var(--color-crema) !important;
  background: var(--color-mostaza) !important;
}



/*-.single_add_to_cart_button::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
    transition: left 0.5s ease;
    z-index: -1;
}-*/

.single_add_to_cart_button:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(207, 159, 56, 0.4);
}

.single_add_to_cart_button:hover::before {
    left: 100%;
}

/* ===== META INFO ===== */
.product-meta-custom {
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid rgba(35, 78, 105, 0.1);
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem;
    font-size: 0.9rem;
    color: var(--text-primary);
}

.sku_wrapper,
.posted_in {
    background: rgba(240, 239, 232, 0.6);
    padding: 0.75rem 1.25rem;
    border-radius: 8px;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.sku_wrapper .sku {
    font-weight: var(--weight-bold);
    color: var(--color-azul);
    background: var(--color-crema);
    padding: 0.25rem 0.75rem;
    border-radius: 4px;
    border: 1px solid rgba(35, 78, 105, 0.1);
}

.posted_in a {
    color: var(--color-azul);
    text-decoration: none;
    font-weight: var(--weight-medium);
    transition: color 0.3s ease;
}

.posted_in a:hover {
    color: var(--cta-action);
    text-decoration: underline;
}

/* ===== MENSAJES DINÁMICOS ===== */
#dtf_plastas_msg,
#dtf_doble_barniz_msg,
#dtf_descuento_mayoreo_msg {
    display: inline-block;
    margin-top: 0.75rem;
    padding: 0.75rem 1rem;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: var(--weight-medium);
    animation: fadeIn 0.5s ease;
    background: var(--color-crema);
    color: var(--color-azul);
    border-left: 3px solid var(--color-azul);
    z-index: 1;
    position: inherit;  
}

/*-#dtf_plastas_msg {
    background: rgba(201, 122, 103, 0.1);
    color: var(--color-rosa);
    border-left: 3px solid var(--color-rosa);
}

#dtf_doble_barniz_msg {
    background: rgba(35, 78, 105, 0.1);
    color: var(--color-azul);
    border-left: 3px solid var(--color-azul);
}

#dtf_descuento_mayoreo_msg {
    background: rgba(27, 99, 68, 0.1);
    color: var(--color-verde-bandera);
    border-left: 3px solid var(--color-verde-bandera);
}-*/

#dtf_plastas_msg a,
#dtf_doble_barniz_msg a {
    color: inherit;
    font-weight: var(--weight-bold);
    text-decoration: underline;
}

#dtf_plastas_msg a:hover,
#dtf_doble_barniz_msg a:hover {
    opacity: 0.8;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}
/* ======================================
   CONTENEDOR DE TABS
====================================== */
.wc-tabs {
  display: flex;
  gap: 12px;
  padding: 0;
  margin: 48px 0 32px;
  list-style: none;
  border-bottom: 2px solid var(--color-verde);
  font-family: var(--font-primary);
}

.woocommerce-tabs ul.tabs {margin: 0}

.woocommerce-Tabs-panel {
    border: 1px solid var(--color-mostaza);
    padding: 0 50px;
}

/* ======================================
   TAB BASE
====================================== */
.wc-tabs li {
  margin: 0;
}

/* ======================================
   LINK DEL TAB
====================================== */
.wc-tabs li a {
display: inline-block;
  padding: 12px 20px;
  background-color: var(--color-mostaza);
  color: var(--text-accent) !important;
  font-size: 0.85rem !important;
  font-weight: var(--weight-medium) !important;
  text-decoration: none;
  border-radius: 12px 12px 0 0;
  transition: background-color 0.2s ease, color 0.2s ease;
}

/* Hover */
.wc-tabs li a:hover {
  background-color: var(--cta-hover);
  color: var(--text-primary);
}

/* ======================================
   TAB ACTIVO
====================================== */
.wc-tabs li.active a,
.wc-tabs li a[aria-selected="true"] {
	background-color: var(--color-amarillo);
  color: var(--text-primary) !important;
  font-weight: var(--weight-bold) !important;
  position: relative;
}

/* Indicador visual inferior */
.wc-tabs li.active a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 3px;
  background-color: var(--cta-action);
}

/* ======================================
   ACCESIBILIDAD
====================================== */
.wc-tabs li a:focus-visible {
  outline: 2px solid var(--cta-action);
  outline-offset: 2px;
}

/*-====ACCOUNT===-*/

.woocommerce-MyAccount-navigation ul {
  display: flex;
  width: 100%;
  justify-content: stretch;  
  text-align: center;
  font-weight: var(--weight-medium);
}

.woocommerce-MyAccount-navigation ul li{
  background: var(--color-mostaza);
  width: 20%;  
  border-radius: 10px;
}
.woocommerce-MyAccount-navigation ul li:hover {
  background: var(--color-amarillo);
  transition: ease-in .2s;
}

.woocommerce-MyAccount-navigation ul li a {
  display: block;
  width: 100%;
  padding: 15px;
}

.woocommerce-button--next

/* ======================================
   TABLAS PEDIDOS
====================================== */
/* --- ESTILO GENERAL DE TABLAS SHOP_TABLE --- */
.woocommerce-orders-table, 
.shop_table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-family: var(--font-primary);
    background-color: #fff; /* Fondo blanco para las celdas para contraste */
    border: 1px solid rgba(11, 36, 52, 0.1);
    border-radius: 8px;
    overflow: hidden;
    margin: 1.5rem 0;
}

/* --- ENCABEZADOS (Thead) --- */
.shop_table thead th {
    background-color: var(--color-rosa);
    color: var(--color-crema);
    padding: 1.2rem;
    text-transform: uppercase;
    font-size: 0.85rem;
    font-weight: var(--weight-bold);
    letter-spacing: 1px;
    border: none;
    text-align: left;
}

/* --- CELDAS Y FILAS (Body) --- */
.shop_table tbody td, 
.shop_table tbody th {
    padding: 1.2rem;
    border-bottom: 1px solid var(--color-crema);
    color: var(--text-primary);
    font-size: 0.95rem;
    vertical-align: middle;
}

.shop_table tbody tr:last-child td {
    border-bottom: none;
}

/* Efecto zebra sutil */
.shop_table tbody tr:nth-child(even) {
    background-color: rgba(240, 239, 232, 0.5); /* Crema muy suave */
}

/* Enlaces dentro de la tabla */
.shop_table tbody a, .cantidadCarrito {
    color: var(--color-azul);
    font-weight: var(--weight-bold);
    text-decoration: none;
    transition: color 0.3s;
}

.shop_table tbody a:hover {
    color: var(--color-marron);
}

.cart-item-row .product-remove .remove-item {
/*-font-size: 20px;-*/
  background: var(--color-vino);
  border-radius: 100%;
  /*-padding: 5px 0;-*/
  display: block;
  text-align: center;
  color: var(--color-crema) !important;
	width: 40px;
}

.cart-item-row .product-remove .remove-item:hover {
    background: var(--color-mostaza);
    color: var(--color-marino) !important;
}

/* --- BOTONES DE ACCIÓN (Ver pedido) --- */
.shop_table .button.view, .woocommerce-button--next  {
    background-color: var(--cta-action) !important;
    color: var(--color-marino) !important;
    padding: 0.6rem 1.2rem !important;
    border-radius: 4px !important;
    font-weight: var(--weight-bold) !important;
    text-transform: uppercase !important;
    font-size: 0.8rem !important;
    transition: all 0.3s ease !important;
}

.shop_table .button.view:hover, .woocommerce-button--next:hover {
    background-color: var(--cta-hover) !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(207, 159, 56, 0.2);
}

/* --- ESTADOS DE PEDIDO (Labels) --- */
.woocommerce-orders-table__cell-order-status {
    font-weight: var(--weight-medium);
}

/* Personalización por estado */
.status-cancelled { color: var(--status-error); }
.status-completed { color: var(--status-success); }
.status-processing { color: var(--color-azul); }


/*====EDITAR DIRECCION=====-*/
/* --- CONTENEDOR PRINCIPAL DE DIRECCIONES --- */
.woocommerce-MyAccount-content p {
    font-family: var(--font-primary);
    color: var(--text-primary);
    margin-bottom: 2rem;
    font-size: 1.1rem;
}

/* --- GRID DE COLUMNAS (Responsive) --- */
.woocommerce-Addresses.addresses {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
    margin-top: 1rem;
}

/* --- TARJETA INDIVIDUAL DE DIRECCIÓN --- */
.woocommerce-Address {
    background-color: #ffffff; /* Fondo limpio para la tarjeta */
    border: 1px solid rgba(11, 36, 52, 0.1);
    border-radius: 12px;
    padding: 2rem;
    position: relative;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: flex;
    flex-direction: column;
}

.woocommerce-Address:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(11, 36, 52, 0.05);
}

/* --- CABECERA DE LA TARJETA --- */
.woocommerce-Address-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 2px solid var(--color-crema);
    padding-bottom: 1rem;
    margin-bottom: 1.5rem;
}

.woocommerce-Address-title h3,
.woocommerce-Address-title h2 {
    font-family: var(--font-primary);
    font-weight: var(--weight-bold);
    font-size: 1.2rem;
    color: var(--color-marino);
    margin: 0;
}

/* --- ENLACE "EDITAR" --- */
.woocommerce-Address-title .edit {
    background-color: var(--color-crema);
    color: var(--color-azul);
    padding: 0.5rem 1rem;
    border-radius: 6px;
    font-size: 0.85rem;
    font-weight: var(--weight-medium);
    text-decoration: none;
    transition: all 0.3s ease;
}

.woocommerce-Address-title .edit:hover {
    background-color: var(--cta-action);
    color: var(--color-marino);
}

/* --- BLOQUE DE DIRECCIÓN (Texto) --- */
address {
    font-style: normal;
    font-family: var(--font-primary);
    line-height: 1.8;
    color: var(--text-primary);
    font-size: 1rem;
    flex-grow: 1;
}

/* --- CONTENEDOR DEL FORMULARIO DE EDICIÓN --- */
.woocommerce-address-fields {
    background-color: #ffffff; /* Fondo limpio */
    padding: 2.5rem;
    border-radius: 12px;
    border: 1px solid rgba(11, 36, 52, 0.1);
    max-width: 800px;
    margin: 0 auto;
    font-family: var(--font-primary);
    width: 100%;
}

/* --- FILAS DEL FORMULARIO --- */
.woocommerce-address-fields__field-wrapper .form-row {
    margin-bottom: 1.5rem;
    display: flex;
    flex-direction: column;
}


/* --- ETIQUETAS (LABELS) --- */
.woocommerce-address-fields label {
    font-weight: var(--weight-medium);
    color: var(--color-marino);
    margin-bottom: 0.5rem;
    font-size: 0.9rem;
    display: block;
}

.woocommerce-address-fields label .required {
    color: var(--status-error); /* Color vino para el asterisco */
    text-decoration: none;
}

/* --- INPUTS Y SELECTS --- */
.woocommerce-address-fields input.input-text,
.woocommerce-address-fields select,
.woocommerce-address-fields .select2-container--default .select2-selection--single, .shipping-calculator-form .form-row .input-text {
    width: 100%;
    padding: 0.8rem 1rem !important;
    border: 1px solid rgba(11, 36, 52, 0.2) !important;
    border-radius: 6px !important;
    background-color: var(--color-crema) !important; /* Fondo suave */
    color: var(--color-marino) !important;
    font-family: var(--font-primary);
    font-size: 1rem;
    transition: all 0.3s ease;
}

.woocommerce-address-fields input.input-text:focus,
.woocommerce-address-fields select:focus {
    outline: none;
    border-color: var(--color-azul) !important;
    box-shadow: 0 0 0 3px rgba(35, 78, 105, 0.1);
}

/* --- RADIOS (¿Requieres factura?) --- */
.thwcfd-field-radio .woocommerce-input-wrapper {
    display: flex;
    gap: 1.5rem;
    align-items: center;
    padding: 0.5rem 0;
}

.thwcfd-field-radio input[type="radio"] {
    accent-color: var(--color-azul);
    width: 1.2rem;
    height: 1.2rem;
}

.thwcfd-field-radio label.radio {
    font-weight: var(--weight-light);
    margin: 0;
    cursor: pointer;
}

/* --- BOTÓN GUARDAR DIRECCIÓN --- */
.woocommerce-address-fields button[name="save_address"] {
    background-color: var(--cta-action) !important; /* Mostaza */
    color: var(--color-marino) !important;
    font-family: var(--font-primary);
    font-weight: var(--weight-bold);
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 1rem 2.5rem !important;
    border: none !important;
    border-radius: 6px !important;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-top: 2rem;
    display: block;
    width: 100%;
}

.woocommerce-address-fields button[name="save_address"]:hover {
    background-color: var(--cta-hover) !important; /* Amarillo */
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(207, 159, 56, 0.3);
}

.select2-hidden-accessible span span span span {
  margin: 0 !important;
  padding: 0 !important;
  position: absolute;
  top: 4px;
}

/* --- CONTENEDOR PRINCIPAL --- */
.woocommerce-EditAccountForm {
    background-color: #ffffff;
    padding: 2.5rem;
    border-radius: 12px;
    border: 1px solid rgba(11, 36, 52, 0.1);
    max-width: 900px;
    margin: 2rem auto;
    font-family: var(--font-primary);
    box-sizing: border-box; /* Crucial para que nada se salga de la caja */
}

/* --- CONTROL DE DESBORDAMIENTO Y RESPONSIVO --- */
.woocommerce-EditAccountForm * {
    box-sizing: border-box;
}

.woocommerce-EditAccountForm .form-row {
    margin-bottom: 1.5rem;
    width: 100%; /* Por defecto ocupan todo el ancho */
    display: block;
}


/* --- ETIQUETAS (LABELS) --- */
.woocommerce-EditAccountForm label {
    display: block;
    font-weight: var(--weight-medium);
    color: var(--color-marino);
    margin-bottom: 0.6rem;
    font-size: 0.95rem;
}

/* --- CAMPOS DE ENTRADA (INPUTS) --- */
.woocommerce-EditAccountForm input.input-text {
    width: 100% !important;
    padding: 0.85rem 1rem !important;
    border: 1px solid rgba(11, 36, 52, 0.2) !important;
    border-radius: 6px !important;
    background-color: var(--color-crema) !important;
    color: var(--color-marino) !important;
    font-family: var(--font-primary);
    font-size: 1rem;
    transition: all 0.3s ease;
}

.woocommerce-EditAccountForm input.input-text:focus {
    outline: none;
    border-color: var(--color-azul) !important;
    box-shadow: 0 0 0 3px rgba(35, 78, 105, 0.1);
}

/* --- SECCIÓN DE CAMBIO DE CONTRASEÑA --- */
fieldset {
    border: 1px solid var(--color-crema);
    border-radius: 8px;
    padding: 1.5rem;
    margin-top: 2.5rem;
    background-color: rgba(240, 239, 232, 0.3);
}

legend {
    padding: 0 1rem;
    font-weight: var(--weight-bold);
    color: var(--color-marron);
    text-transform: uppercase;
    font-size: 0.9rem;
    letter-spacing: 1px;
}

/* --- BOTÓN GUARDAR CAMBIOS --- */
.woocommerce-EditAccountForm button.button {
    background-color: var(--cta-action) !important; /* Mostaza */
    color: var(--color-marino) !important;
    font-family: var(--font-primary);
    font-weight: var(--weight-bold);
    text-transform: uppercase;
    letter-spacing: 1.5px;
    padding: 1.2rem 3rem !important;
    border: none !important;
    border-radius: 6px !important;
    cursor: pointer;
    transition: all 0.3s ease;
    display: inline-block;
    margin-top: 1rem;
}

.woocommerce-EditAccountForm button.button:hover {
    background-color: var(--cta-hover) !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(207, 159, 56, 0.3);
}

/* --- SOLUCIÓN "TEXTO FUERA DE CAJA" --- */
/* Esto asegura que los nombres largos o correos no rompan el layout */
.woocommerce-EditAccountForm em {
    display: block;
    margin-top: 0.5rem;
    font-style: italic;
    font-size: 0.85rem;
    color: var(--color-azul);
    line-height: 1.4;
    word-wrap: break-word; /* Rompe palabras si son muy largas */
}

/* Estilo para los inputs de contraseña con ojito (si tu tema lo soporta) */
.password-input {
    position: relative;
    display: block;
}

.show-password-input {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    opacity: 0.7;
}

/* --- NOTAS ADICIONALES --- */
.woocommerce-address-fields__field-wrapper p.form-row {
    clear: none !important; /* Corrige errores de float en temas de WP */
    width: 100%;
}

/* ===== TERMINOS Y CONDICIONES ===== */

/* --- CONTENEDOR PRINCIPAL DEL MENÚ --- */
.menuCondiciones {
background-color: var(--color-azul);
  padding: 15px 0;
  position: sticky;
  top: 0;
  border-bottom: 4px solid var(--color-mostaza);
  font-family: var(--font-primary);
  border-radius: 25px;
}

.menuCondiciones ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
    flex-wrap: wrap; /* En escritorio se acomodan en filas si es necesario */
    gap: 10px;
}

/* --- ESTILOS DE LOS ENLACES --- */
.menuCondiciones li a {
    text-decoration: none;
    color: var(--color-crema); /* Máximo contraste sobre el azul */
    font-size: 0.9rem !important;
    font-weight: var(--weight-medium);
    padding: 8px 16px !important;
    border-radius: 20px;
    border: 1px solid var(--color-verde);
    transition: all 0.3s ease;
    display: inline-block;
    text-transform: uppercase;
    background: var(--color-mostaza);
}

/* --- ESTADOS DE INTERACCIÓN (NEUROMARKETING) --- */
.menuCondiciones li a:hover {
    background-color: var(--cta-action); /* Mostaza */
    color: var(--color-marino);
    border-color: var(--color-amarillo);
    transform: translateY(-2px);
}

.menuCondiciones li a:active {
    transform: scale(0.95);
}

/* --- RESPONSIVIDAD MÓVIL (Scroll Horizontal) --- */

html {
    scroll-behavior: smooth;
}

/* Ajuste para que el título no quede tapado por el menú sticky */
:target {
    scroll-margin-top: 100px;
}

/* --- CONTENEDOR DEL ACORDEÓN --- */
.wp-block-themeisle-blocks-accordion {
    max-width: 900px;
    margin: 20px auto;
    font-family: var(--font-primary);
    background-color: var(--color-crema); /* Fondo base */
    padding: 10px;
}

/* --- ELEMENTO INDIVIDUAL (DETAILS) --- */
.wp-block-themeisle-blocks-accordion-item {
    margin-bottom: 15px;
    border: 2px solid var(--color-azul); /* Borde definido para separar sin usar blanco */
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.3s ease;
}

/* --- TÍTULO (SUMMARY) --- */
.wp-block-themeisle-blocks-accordion-item__title {
    padding: 20px;
    background-color: var(--color-azul); /* Fondo sólido para resaltar el encabezado */
    color: var(--color-crema); /* Texto contrastante */
    cursor: pointer;
    list-style: none; /* Quita la flecha nativa para personalizar */
    font-weight: var(--weight-bold);
    text-transform: uppercase;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* Flecha personalizada usando caracteres */
.wp-block-themeisle-blocks-accordion-item__title::after {
    content: '+';
    font-size: 1.5rem;
    color: var(--color-mostaza);
}

/* Estado abierto del acordeón */
.wp-block-themeisle-blocks-accordion-item[open] .wp-block-themeisle-blocks-accordion-item__title {
    border-bottom: 2px solid var(--color-mostaza);
}

.wp-block-themeisle-blocks-accordion-item[open] .wp-block-themeisle-blocks-accordion-item__title::after {
    content: '−';
}

/* --- CONTENIDO DESPLEGADO --- */
.wp-block-themeisle-blocks-accordion-item__content {
    padding: 25px;
    background-color: var(--color-crema);
    color: var(--color-marino);
    line-height: 1.6;
}

/* Estilos para las listas internas (Políticas) */
.wp-block-themeisle-blocks-accordion-item__content ol, 
.wp-block-themeisle-blocks-accordion-item__content ul {
    padding-left: 20px;
}

.wp-block-themeisle-blocks-accordion-item__content li {
    margin-bottom: 12px;
    font-weight: var(--weight-light);
}

/* Resaltado de puntos clave dentro del texto */
.wp-block-themeisle-blocks-accordion-item__content strong {
    color: var(--color-marron);
    font-weight: var(--weight-bold);
}

/* --- EFECTO DE NEUROMARKETING: FOCO --- */
.wp-block-themeisle-blocks-accordion-item:hover {
    border-color: var(--color-mostaza);
    transform: translateX(5px); /* Pequeño movimiento que indica interacción */
}

/* --- CONTENEDOR GENERAL --- */
#customer_login {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 40px;
    padding: 60px 20px;
    background-color: var(--bg-main); /* Usando Crema del root */
    font-family: var(--font-primary);
}

/* --- TÍTULOS --- */
#customer_login h2 {
    font-size: var(--font-size-subtitle);
    font-weight: var(--weight-bold);
    color: var(--color-azul);
    margin-bottom: 25px;
    text-transform: uppercase;
}

/* --- TARJETAS DE FORMULARIO --- */
.woocommerce-form-login, 
.woocommerce-form-register {
    /* Usamos el mismo crema pero con un borde sólido para diferenciar */
    background-color: var(--color-crema); 
    padding: 30px;
    border-radius: 15px;
    border: 2px solid var(--color-azul); /* Definición clara sin usar blanco */
}

/* --- ETIQUETAS Y CAMPOS --- */
.woocommerce-form-row label {
    display: block;
    margin-bottom: 8px;
    color: var(--color-marino);
    font-weight: var(--weight-medium);
}

.woocommerce-Input--text {
    width: 100%;
    padding: 15px;
    /* Usamos un color ligeramente distinto para el borde del input */
    border: 2px solid var(--color-verde); 
    background-color: var(--color-crema);
    color: var(--color-marino);
    border-radius: 8px;
    font-family: var(--font-primary);
    box-sizing: border-box;
}

.woocommerce-Input--text:focus {
    outline: none;
    border-color: var(--color-mostaza);
    background-color: var(--color-crema);
}

/* --- CHECKBOX Y PRIVACIDAD --- */
.woocommerce-form-login__rememberme {
    color: var(--color-marron);
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 15px 0;
}

.woocommerce-privacy-policy-text {
    font-size: 0.8rem;
    color: var(--color-marino);
    margin: 20px 0;
}

/* --- BOTONES (CTA) --- */
.woocommerce-form-login__submit,
.woocommerce-form-register__submit {
    width: 100%;
    background-color: var(--cta-action) !important;
    color: var(--color-marino) !important; /* Combinación Mostaza/Marino */
    padding: 16px !important;
    border: none !important;
    border-radius: 50px !important;
    font-weight: var(--weight-bold) !important;
    text-transform: uppercase !important;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.woocommerce-form-login__submit:hover,
.woocommerce-form-register__submit:hover {
    background-color: var(--cta-hover) !important;
}

/* --- ENLACES --- */
.woocommerce-LostPassword a {
    color: var(--color-azul);
    font-size: 0.85rem;
    text-decoration: underline;
    display: block;
    margin-top: 15px;
    text-align: center;
}


/* --- PAGE.PHP --- */
.wp-block-cover, .wp-block-cover-image {
	background-color: var(--color-azul);
}

/*==TIENDA==-*/
.archive-wrapper .category-loops-container .category-group:nth-child(1) .product-grid .product-card:nth-child(1) {display:none !important;}
.product-card .price-wrapper .price {display:flex;justify-content:center;flex-direction:column;}
.product-card .price-wrapper .price del:nth-child(1) {color:var(--color-mostaza);font-weight:var(--weight-medium);font-size:1.2rem;margin: 0 5px;}
/* O más específico para tu caso */
.price ins {text-decoration: none;font-size: 2rem;}
/*-.product-card .price-wrapper .price ins::before {content:' -';color: var(--color-azul);font-weight: var(--weight-bold);font-size: 1.3rem;}-*/

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

/* MÓVIL (480px - 768px) */
@media (max-width: 768px) {			
	/*-  .igual .acomodoImg .garantiaChenko {
    position: relative;
	height: 280px;
    overflow: unset;
    bottom: 70px;
  }-*/
	
/*-	.bannerInicio {top: 20%;}	
	.imgB,.comp {display:none;}
  	.minBanner, .comp-min {display:block;}-*/
	
	  .hero-section h1 { font-size: 2.2rem; }
		/* Mostrar botón toggle */
    .toc-toggle {
        display: flex;
    }
    
    /* Tabla colapsada por defecto */
    .toc-nav {
        max-height: 0;
        overflow: hidden;
        padding: 0 1.5rem;
        margin: 0;
        opacity: 0;
        transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
        border-width: 0;
        visibility: hidden;
    }
    
    /* CHECKBOX HACK: Cuando está checked, expandir tabla */
    .toc-toggle-checkbox:checked ~ .toc-nav {
        max-height: 600px;
        padding: 1.5rem;
        margin: 0.5rem 0 2rem;
        opacity: 1;
        border-width: 1px;
        visibility: visible;
    }
    
    /* Ajustes tipográficos móvil */
    .toc-header h2 {
        font-size: 1rem;
    }
    
    .toc-link {
        padding: 0.75rem;
        font-size: 0.9rem;
    }
    
    .toc-number {
        min-width: 20px;
    }
    
    /* Mejorar accesibilidad táctil */
    .toc-link {
        min-height: 44px;
    }
	
	*[id] {
    scroll-margin-top:80px; /* Ajusta según la altura de tu menú */
}
	.dtf-price-table tbody tr:nth-child(1) .price-wholesale::after,
	.dtf-price-table tbody tr:nth-child(2) .price-wholesale::after,
	.dtf-price-table tbody tr:nth-child(3) .price-wholesale::after,
	.dtf-price-table tbody tr:nth-child(4) .price-wholesale::after {display:none;}
	#product-8050 .product-info-summary .product-price, #product-9420 .product-info-summary .product-price, #product-9379 .product-info-summary .product-price, #product-9178 .product-info-summary .product-price {display: flex;flex-direction: column;}
	.product-info-summary .product-price del, .product-info-summary .product-price ins, .product-info-summary .product-price span {text-align:center;}
	
	.site-header {padding: 1rem;}
	.igual .noH2 {font-size:1.5rem;}
		.cart-content-wrapper {flex-direction: column-reverse;}
	.cart-content-wrapper .woocommerce-cart-form {width:100%;}
	.cart-collaterals {width: 100%;  position: relative;  top: unset;  margin: 0 0 25px;}
		tbody .cart-item-row {display: flex;/*-flex-wrap: wrap;-*/align-items: center;border-bottom: 1px solid var(--color-marino);}
	tbody .cart-item-row .product-thumbnail {display:none;}
	tbody .cart-item-row .product-name {text-align: center;border-bottom: none;font-size: .8rem;}
	tbody .cart-item-row .product-subtotal, tbody .cart-item-row .product-remove {width:50%;border-bottom: none;}
	
	body .hero .hero-content .botonResponsivo {display:block;top:10%;
  position: relative;
  background-color: #FFB600;
  color: var(--color-marino);
  text-transform: uppercase;
  width: 290pt;
  border-radius: 50px;
  font-size: 1.5rem;
  font-weight: 650;
	margin: 25px auto 0;}
/*-	.hero {display: flex;height: 550px;padding: 60px 0 0 0;} -*/
	.hero-content {	display: flex;height: unset;}
	.hero .hero-content .contenedorInicio {margin-bottom: 40px !important;}
	.hero .hero-content .heroTiendaBoton {display:none;}
	
	.hero .hero-content .textosInicio h1 {font-size:2rem;}
	.hero .hero-content .textosInicio p {font-size: .75rem;margin: 0;text-align:center;margin: auto !important;text-align: center !important;}
	
	.site-header .logo .custom-logo-link .logo img {height: unset;  width: 100%;}
	.woocommerce-message {flex-direction:column;text-align:center;}
	
	.miFooter .blanco .elementosFooter .eleFoot .logo .custom-logo-link {display: block;  width: 80%;  margin: auto;}	
	
	#payment .payment_box p {padding: 1.8rem !important;}
	.page-main-container {padding:1rem !important;}
	#order_review, #payment .payment_box, .woocommerce-checkout-review-order {padding:0 !important;}
	
	ul#shipping_method {width:100% !important;}
	
	.woocommerce-product-rating {
        flex-direction: column;
        align-items: flex-start; /* Align items to the start in column layout */
    }

    .star-rating {
        margin-right: 0;
        margin-bottom: 5px;
    }

    .woocommerce-review-link {
        margin-left: 0;
        margin-top: 5px;
    }
	
	    .comment-reply-title {
        font-size: 1.5em;
    }

    #review_form, .comment-respond {
        margin: 15px auto;
        padding: 15px;
    }

    .comment-form-rating .stars {
        font-size: 1.8em;
    }

    .comment-form textarea {
        padding: 10px;
    }

    .comment-form input[type="submit"]#submit {
        padding: 10px 20px;
        font-size: 1em;
    }
	
	.woocommerce-checkout .woocommerce-billing-fields {
		padding:0;
		box-shadow:unset;
	}
	
	.wc_payment_method div .fieldset {padding:0;}
	
	    table.tech-table {
        font-size: 0.8rem; /* Reducción de fuente para legibilidad móvil */
    }
    
    table.tech-table tbody td {
        padding: 8px 5px;
    }

    /* Romper palabras largas si es necesario */
    table.tech-table td {
        word-break: break-word;
    }
	
	.cma-container {
		padding:0;
		border: none;
	}
	
	.form-section .option-group .radio-group {
		display: flex;
  flex-direction: column;
  width: 100%;
	}
	
	.product-info-summary .product-short-description {
		order:5;
	}
	
	.single-product-container {padding: 0 1rem;}
	
	.woocommerce-tabs ul.tabs {
		flex-direction: column;
	}
	
	.woocommerce-tabs ul.tabs li a {
		display: block;
  text-align: center;
	}
	
	.insumos-section {
		padding: unset;
	}
	
	.variations_form.cart {
    padding: 1rem;
    border-radius: 8px;
  }

  
    .qib-button {
    width: 52px;
    height: 52px;
    font-size: 22px;
  }
  
  .quantity input.qty {
    height: 52px;
    font-size: 20px;
  }
    .woocommerce-variation-price del .woocommerce-Price-amount,
  .single_variation del .woocommerce-Price-amount {
    font-size: 16px;
  }
  
  .woocommerce-variation-price ins .woocommerce-Price-amount,
  .single_variation ins .woocommerce-Price-amount {
    font-size: 28px;
  }

    .variations tbody tr {
    flex-direction: column;
    align-items: center;
    gap: 1rem;
  }

    .variations .label {
    width: 140px;
  }
  
  .variations .label label {
    margin-bottom: 0;
  }

    .variations .value {
    flex: 1;
	flex-direction: column;
  }

    .variations select {
    width: 100%;
    font-size: 16px; /* Evita zoom en iOS */
    padding: 1rem 2.5rem 1rem 1rem;
  }

    .reset_variations {
    padding: 0.625rem 1rem;
    font-size: 14px;
  }

    .woocommerce-variation-price {
    padding: 1rem;
    margin: 1rem 0;
  }

	
	    .menuCondiciones {
        padding: 10px 0;
    }

    .menuCondiciones ul {
        flex-wrap: nowrap; /* Evita que se rompa en varias líneas */
        overflow-x: auto; /* Permite scroll horizontal con el dedo */
        justify-content: flex-start;
        padding: 0 15px;
        -webkit-overflow-scrolling: touch; /* Scroll suave en iOS */
        scrollbar-width: none; /* Oculta scrollbar en Firefox */
		justify-content: center;
    }

    .menuCondiciones ul::-webkit-scrollbar {
        display: none; /* Oculta scrollbar en Chrome/Safari */
    }

    .menuCondiciones li {
        flex: 0 0 auto; /* Evita que los botones se encojan */
		width: 100%;
    }

    .menuCondiciones li a {
font-size: 0.8rem !important;
    padding: 6px 12px !important;
    display: block;
    text-align: center;
    }
	
		    .wp-block-themeisle-blocks-accordion-item__title {
        font-size: 1rem;
        padding: 15px;
    }
    
    .wp-block-themeisle-blocks-accordion-item__content {
        padding: 15px;
        font-size: 0.95rem;
    }
	
    #review_form_wrapper {
        padding: 2rem;
        margin: 2rem 0;
    }
    
    .stars a[role="radio"] {
        width: 44px;
        height: 44px;
        font-size: 1.6rem;
    }
    
    #submit {
        padding: 1rem 2.5rem;
        min-width: 180px;
    }
    
    .woocommerce-product-attributes {
        margin: 1.5rem 0;
    }
	
    #review_form_wrapper {
        padding: 1.5rem;
        border-radius: 16px;
        margin: 1.5rem 0;
    }
    
     {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
        font-size: 1.5rem;
    }
    
    .stars a[role="radio"] {
        width: 40px;
        height: 40px;
        font-size: 1.4rem;
    }
    
    .stars span[role="group"] {
        gap: 0.25rem;
        padding: 0.75rem;
    }
    
    #comment {
        padding: 1rem;
        min-height: 120px;
    }
    
    #submit {
        width: 100%;
        min-width: auto;
        padding: 1rem 1.5rem;
    }
    
    /* Tabla responsiva */
    .woocommerce-product-attributes {
        display: block;
        overflow-x: auto;
    }
    
    .woocommerce-product-attributes th,
    .woocommerce-product-attributes td {
        padding: 1rem;
        font-size: 0.95rem;
    }
    
    .woocommerce-product-attributes th {
        width: 40%;
    }
}

/* MÓVIL PEQUEÑO (menos de 480px) */
@media (max-width: 480px) {
    #review_form_wrapper {
        padding: 0rem;
        border-radius: 14px;
        margin: 1rem 0;
    }
    
    #reply-title {
        font-size: 1.3rem;
    }
    
    .stars a[role="radio"] {
        width: 36px;
        height: 36px;
        font-size: 1.2rem;
    }
    
    .comment-form-rating,
    .comment-form-comment {
        padding: 1rem;
    }
    
    .woocommerce-product-attributes {
        font-size: 0.9rem;
    }
    
    .woocommerce-product-attributes th,
    .woocommerce-product-attributes td {
        padding: 0.875rem;
    }
}


@media (max-width: 700px) {
	
	 .elementosFooter .eleFoot {
                margin-bottom: 2rem;
            }
            
            .miFooter .elementosFooter .eleFoot .ulFoot .liFoot {
                flex-direction: column;
                align-items: flex-start;
            }
            
            .miFooter .elementosFooter .eleFoot .ulFoot .liFoot .illus {
                margin-bottom: 0.5rem;
            }
            
            .gb-headline-text {
                font-size: 0.9rem;
            }
            
            .sectionFooter.copyright p br {
                display: none;
            }
	
	 .elementosFooter {
                flex-direction: column;
                width: 95%;
            }
            
            .elementosFooter .eleFoot {
                width: 100%;
                min-width: unset;
            }
            
            .miFooter .elementosFooter .eleFoot div #formulario,
            .miFooter .elementosFooter .eleFoot div .direc {
                max-width: 100%;
            }
            
            .menuFooter {
                flex-direction: column;
                align-items: center;
                gap: 0.5rem;
            }
            
            .menuFooter li {
                margin: 0.5rem 0 !important;
            }
            
            .sectionFooter.copyright p {
                font-size: 0.7rem;
                padding: 0 1rem;
            }
            
            .footer-inferior .social {
                flex-wrap: wrap;
                justify-content: center;
            }
	
	    #customer_login {
        grid-template-columns: 1fr;
    }

	.woocommerce .cart-main-container {padding: unset;}
	
        .comment_container {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .commentlist li.review {
        padding: 20px;
    }

    .comment-text .woocommerce-review__author {
        margin-top: 10px;
    }

    .star-rating {
        margin: 0 auto 15px auto;
    }
    
    .commentlist .avatar {
        width: 80px;
        height: 80px;
    }

        .shop_attributes {
        border-radius: 10px;
        display: block;
    }

    .shop_attributes tbody, 
    .shop_attributes tr, 
    .shop_attributes th, 
    .shop_attributes td {
        display: block;
        width: 100% !important;
    }

    .shop_attributes th {
        background-color: var(--color-azul);
        color: var(--color-crema);
        border-right: none;
        padding: 0.75rem 1.25rem;
        font-size: 0.75rem;
    }

    .shop_attributes td {
        padding: 1rem 1.25rem 1.5rem;   
        border-bottom: 2px solid var(--color-crema);
    }

    .shop_attributes tr:last-child td {
        border-bottom: none;
    }

    .woocommerce-Tabs-panel {
        padding: 10px;
		border:none;
    }


     .cma-price-table, 
    .cma-price-table thead, 
    .cma-price-table tbody, 
    .cma-price-table th, 
    .cma-price-table td, 
    .cma-price-table tr {
        display: block;
        width: 100%;
    }

    .cma-price-table thead {
        display: none; /* Escondemos cabecera en móvil */
    }

    .cma-price-table tr {
        margin-bottom: 20px;
        border: 1px solid var(--color-azul);
        border-radius: 15px;
    }

    .cma-price-table td {
        text-align: right;
        padding-left: 50%;
        position: relative;
        border-bottom: 1px solid var(--color-crema);
    }

    /* Inyectamos los nombres de las columnas mediante data-labels */
    .cma-price-table td::before {
        content: attr(data-label);
        position: absolute;
        left: 20px;
        width: 45%;
        text-align: left;
        font-weight: var(--weight-bold);
        color: var(--color-azul);
        font-size: 0.9rem;
    }

    .cma-price-table tr.highlight {
        transform: none;
        background-color: var(--color-marino) !important;
    }

    .cma-price-table tr.highlight td::before {
        color: var(--color-amarillo);
    }

.blog .blog-container .products-grid .product-card {width: 100%;}

    .main-navigation {
        position: fixed;
        top: 0;
        right: -100%;
        width: 85%;
        max-width: 320px;
        height: 100vh;
        background: var(--color-amarillo);
        padding: 5rem 1.5rem 2rem;
        overflow-y: auto;
        transition: right 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        box-shadow: -5px 0 25px rgba(11, 36, 52, 0.2);
        z-index: 9999;
    }
    
    .main-navigation.active {
        right: 0;
        z-index: 4;
    }
    
    .main-navigation ul {
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        margin: 0;
        padding: 0;
    }
    
    .main-navigation li {
        width: 100%;
        margin: 0;
        padding: 0;
        border-bottom: 1px solid rgba(35, 78, 105, 0.1);
    }
    
    .main-navigation > ul > li > a {
        padding: 1.25rem 0;
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        font-size: 1.1rem;
        color: var(--color-marino);
        font-weight: var(--weight-medium);
    }
    
    .main-navigation .sub-menu {
        position: static;
        opacity: 1;
        visibility: visible;
        transform: none;
        box-shadow: none;
        padding: 0;
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.4s ease;
        background: rgba(240, 239, 232, 0.5);
        border: none;
        border-radius: 0;
        width: 100%;
        margin: 0;
    }
    
    .main-navigation .sub-menu::before {
        display: none;
    }
    
    .main-navigation .sub-menu.active {
        max-height: 1000px;
    }
    
    .main-navigation .sub-menu a {
        padding: 1rem 0 1rem 1.5rem;
        font-size: 1rem;
        font-weight: var(--weight-light);
        border-left: none;
    }
    
    .main-navigation .sub-menu .sub-menu {
        margin-left: 0;
        background: rgba(240, 239, 232, 0.7);
    }
    
    .main-navigation .sub-menu .sub-menu a {
        padding-left: 2.5rem;
    }
    
    .main-navigation .sub-menu a:hover {
        background: var(--color-mostaza);
        padding-left: 2rem;
    }
    
    .main-navigation .sub-menu .sub-menu a:hover {
        padding-left: 3rem;
    }


    .menu-item-has-children > a::after {
        content: "▸";
        font-size: 0.9em;
        transition: transform 0.3s ease;
        margin-left: 0.5rem;
    }
    
    .menu-item-has-children.active > a::after {
        transform: rotate(90deg);
        color: var(--color-amarillo);
    }
       .menu-toggle {
display: flex;
    order: 5;
    display: inline-block;
    z-index: 6;
    background: var(--color-amarillo);
    height: 50px;
    width: 45px;
    border-radius: 25%;
    font-weight: bold;
    color: var(--color-marino);
    position: absolute;  
align-self: self-start;
    }

    .home .products-grid, .insumos-section .insumos-grid, #servicios .insumos-grid{
        flex-wrap: wrap;
    	width: 100%;    	
    	gap: .5rem;	
		max-width: 95%;
    }
	
	.impresora-card {
		width: 60%;
	}

    .home .products-grid .product-card, .woocommerce-Tabs-panel  p iframe {
        width: 80%;
    }

    .single-product-container {
        width: 100%;
		padding: 1rem !important;
    }

    .woocommerce-Tabs-panel  p iframe {
    margin: auto;
    display: block;
    }    
    .woocommerce-MyAccount-navigation ul {
        flex-direction: column;
    }

    .woocommerce-MyAccount-navigation ul .woocommerce-MyAccount-navigation-link {
        width: 100%;
    }

    .content-card {padding: 0 !important;}

    .shop_table tbody .cart-item-row .product-thumbnail a {display: block; width: 100%;}
    .shop_table tbody .cart-item-row .product-thumbnail a .attachment-woocommerce_thumbnail {width: 100%;}
    .shop_table tbody .cart-item-row .product-price {display: none;}    
    .shop_table  tbody .cart-item-row .product-subtotal .woocommerce-Price-amount {font-size: 20pt;font-weight: var(--weight-bold);}
    .shop_table  tbody .cart-item-row .product-subtotal .woocommerce-Price-amount bdi {display: flex;justify-content: center;font-size: 1rem;}
    .cart-item-row .product-remove .remove-item {background: var(--color-vino);
  border-radius: 25%;
  display: block;
  text-align: center;
  color: var(--color-crema) !important;
  height: 50px;
  width: 50px;
  margin: auto;}
  .cart-actions-row .actions .coupon-section {flex-direction: column;width: 100%;padding: 25px 0;}
  .cart-actions-row .actions .coupon-section .coupon {display: flex;flex-direction: column;}
  .cart-actions-row .actions .coupon-section .coupon .input-text {width: 100%;margin: 25px auto;}

  .shop_table_responsive, .shop_table_responsive tbody, .cart_totals .shop_table tbody .order-total, .shop_table.woocommerce-checkout-review-order-table thead {display: block;}
  .shop_table tbody .woocommerce-shipping-totals {display: flex;flex-direction: column;}
  .page-content .woocommerce .checkout-container {padding: 0;}
  .checkout-container .woocommerce-checkout .checkout-grid {flex-direction: column;}
  .checkout-container .woocommerce-checkout .checkout-grid .billing-shipping-section, .checkout-container .woocommerce-checkout .checkout-grid .order-review-section {width: 100%;}
  .order-review-section .woocommerce-checkout-review-order .shop_table tbody {display: block;}
  .order-review-section .woocommerce-checkout-review-order .shop_table tbody .cart_item {display: flex;flex-wrap: wrap;width: 100%;border-bottom: 2px solid var(--color-mostaza);}
  .order-review-section .woocommerce-checkout-review-order .shop_table tbody .cart_item td {display: block;width: 100%;margin: 0;padding: 25px;font-weight: var(--weight-bold);}    
  .cart-subtotal .shop_table.woocommerce-checkout-review-order-table th::after {display: none;}

}