/* =====================================================================
   TIENDA DHM - dhm-system.css  (FASE 1, 2026-09-08)
   UNICA fuente de verdad del CSS del sistema. Generada 1:1 desde la
   linea base congelada: mismo contenido, mismo ORDEN relativo de capas
   (header-part -> footer-part -> botones-v2 -> snippets wp_footer),
   impresa en wp_footer para conservar la posicion de cascada actual.
   Cambiar un token aqui cambia el sitio entero.
   ===================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display&family=Inter:wght@400;500;600;700&display=swap');

/* ------ 00 TOKENS OFICIALES (theme «tienda-dhm») ------ */
:root{
  --dhm-fill:#1F9BD7; --dhm-fill-hover:#1577A8;
  --dhm-ink:#001F3F;  --dhm-ink-shell:#1B2342;
  --dhm-surface:#F0F2F5; --dhm-border:#D8E3EC; --dhm-line:#E3E6F1;
  --dhm-radius-pill:9999px; --dhm-radius-card:16px; --dhm-radius-card-lg:20px;
  --dhm-radius-input:13px;
  --dhm-neu-out:6px 6px 12px rgba(163,177,198,.55), -6px -6px 12px rgba(255,255,255,.95);
  --dhm-neu-in:inset 4px 4px 8px rgba(163,177,198,.5), inset -4px -4px 8px rgba(255,255,255,.9);
  --dhm-font:'Manrope',system-ui,sans-serif;
  --dhm-touch-min:44px; --dhm-text-min-movil:12px;
}


/* ================= capa: wpcode :: snippet 2113 (contenido integro servido 2026-09-09) =================
   Absorcion v1.0.2. Fuente: salida servida SIN minificar del snippet (carrito/cuenta),
   con los appends de Ricardo posteriores a FASE 0: pstage blanco puro sin inset,
   stretched-link de card completa (+addbtn z-index 2) y steppers 44px pill.
   Posicion: primera capa tras los tokens, replicando su lugar actual en wp_head.
   ================================================================================== */
.single_add_to_cart_button,button[name="add-to-cart"],.wc-block-components-checkout-place-order-button,.wc-block-cart__submit-button,.wc-block-components-button{border-radius:9999px !important}
.fopt,.fpill{box-shadow:0 2px 6px rgba(163,177,198,.35) !important}
.woocommerce-form-login button[type=submit],.woocommerce-form-register button[type=submit]{background:#1F9BD7 !important;color:#fff !important;border-radius:9999px !important;text-transform:none !important;letter-spacing:normal !important}
.woocommerce-form-register{border-color:#D8E3EC !important;border-top-color:#D8E3EC !important}
/* Fondo blanco uniforme en area de imagen de productos (orden Ricardo 02-sep) */
.pstage,.pcard .pstage,.pcard.c-teal .pstage,.pcard.c-lav .pstage,.pcard.c-rose .pstage,.pcard.c-mint .pstage,.pcard.c-sky .pstage{background:#fff !important;background-image:none !important}
/* Blanco puro total en area de imagen: sin inset ni overlay */
html body .pcard .pstage,html body li.product .pstage,html body .pstage{box-shadow:none !important}
.pstage::before,.pstage::after{background:transparent !important;background-image:none !important;box-shadow:none !important}
/* Steppers de cantidad al sistema */
.wc-block-components-quantity-selector{height:44px !important;border-radius:9999px !important;border:1px solid #D8E3EC !important;overflow:hidden;width:auto !important;min-width:0 !important}
.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input{height:42px !important;font-size:16px !important;border:0 !important;width:44px !important}
.wc-block-components-quantity-selector button{width:36px !important;height:42px !important;font-size:18px !important}
.quantity input.qty{height:44px !important;border-radius:12px !important;font-size:16px !important}
/* Card completa clickeable (stretched link) */
.pcard{position:relative}
html body .pcard a.pcard-link::after{content:'' !important;position:absolute !important;inset:0 !important;z-index:1 !important;display:block !important}
html body .pcard .addbtn,html body .pcard .pcard-add,html body .pcard a[href*="add-to-cart"],html body .pcard .fbtns a{position:relative !important;z-index:2 !important}

/* ================= capa: header-part :: dhm-account-design ================= */
.woocommerce-account .woocommerce{display:flex !important;flex-wrap:wrap;align-items:flex-start;gap:24px;max-width:1180px;margin:0 auto;}.woocommerce-account .woocommerce::before{content:'Mi cuenta';flex:1 1 100%;display:flex;align-items:center;background:linear-gradient(135deg,#001F3F,#0B5ED7);color:#fff;font-size:21px;font-weight:700;letter-spacing:.2px;padding:24px 28px;border-radius:16px;margin-bottom:4px;box-sizing:border-box;}.woocommerce-account .woocommerce-MyAccount-navigation{float:none !important;width:268px !important;flex:0 0 268px;background:#fff;border:1px solid #eef0f4;border-radius:16px;box-shadow:0 6px 24px rgba(16,42,86,.06);padding:14px;box-sizing:border-box;}.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;}.woocommerce-account .woocommerce-MyAccount-navigation li{margin:0 0 4px 0 !important;border:none !important;padding:0 !important;}.woocommerce-account .woocommerce-MyAccount-navigation li a{display:flex !important;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;color:#33415c;font-weight:600;font-size:14.5px;text-decoration:none;transition:background .18s,color .18s;line-height:1.2;}.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{background:#f4f7fc;color:#0B5ED7;}.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{background:#001F3F;color:#fff;}.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a{color:#c0392b;}.woocommerce-account .woocommerce-MyAccount-navigation li a::before{content:'';width:19px;height:19px;flex:0 0 19px;display:inline-block;vertical-align:middle;margin-right:10px;background-color:currentColor;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;}.woocommerce-account .woocommerce-MyAccount-navigation-link--dashboard a::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Crect%20x%3D'3'%20y%3D'3'%20width%3D'7'%20height%3D'7'%20rx%3D'1'%2F%3E%3Crect%20x%3D'14'%20y%3D'3'%20width%3D'7'%20height%3D'7'%20rx%3D'1'%2F%3E%3Crect%20x%3D'3'%20y%3D'14'%20width%3D'7'%20height%3D'7'%20rx%3D'1'%2F%3E%3Crect%20x%3D'14'%20y%3D'14'%20width%3D'7'%20height%3D'7'%20rx%3D'1'%2F%3E%3C%2Fsvg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Crect%20x%3D'3'%20y%3D'3'%20width%3D'7'%20height%3D'7'%20rx%3D'1'%2F%3E%3Crect%20x%3D'14'%20y%3D'3'%20width%3D'7'%20height%3D'7'%20rx%3D'1'%2F%3E%3Crect%20x%3D'3'%20y%3D'14'%20width%3D'7'%20height%3D'7'%20rx%3D'1'%2F%3E%3Crect%20x%3D'14'%20y%3D'14'%20width%3D'7'%20height%3D'7'%20rx%3D'1'%2F%3E%3C%2Fsvg%3E");}.woocommerce-account .woocommerce-MyAccount-navigation-link--orders a::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M21%2016V8a2%202%200%200%200-1-1.73l-7-4a2%202%200%200%200-2%200l-7%204A2%202%200%200%200%203%208v8a2%202%200%200%200%201%201.73l7%204a2%202%200%200%200%202%200l7-4A2%202%200%200%200%2021%2016z'%2F%3E%3Cpath%20d%3D'M3.27%206.96%2012%2012.01l8.73-5.05'%2F%3E%3Cpath%20d%3D'M12%2022.08V12'%2F%3E%3C%2Fsvg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M21%2016V8a2%202%200%200%200-1-1.73l-7-4a2%202%200%200%200-2%200l-7%204A2%202%200%200%200%203%208v8a2%202%200%200%200%201%201.73l7%204a2%202%200%200%200%202%200l7-4A2%202%200%200%200%2021%2016z'%2F%3E%3Cpath%20d%3D'M3.27%206.96%2012%2012.01l8.73-5.05'%2F%3E%3Cpath%20d%3D'M12%2022.08V12'%2F%3E%3C%2Fsvg%3E");}.woocommerce-account .woocommerce-MyAccount-navigation-link--downloads a::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M21%2015v4a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2v-4'%2F%3E%3Cpath%20d%3D'M7%2010l5%205%205-5'%2F%3E%3Cpath%20d%3D'M12%2015V3'%2F%3E%3C%2Fsvg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M21%2015v4a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2v-4'%2F%3E%3Cpath%20d%3D'M7%2010l5%205%205-5'%2F%3E%3Cpath%20d%3D'M12%2015V3'%2F%3E%3C%2Fsvg%3E");}.woocommerce-account .woocommerce-MyAccount-navigation-link--edit-address a::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M21%2010c0%207-9%2013-9%2013s-9-6-9-13a9%209%200%200%201%2018%200z'%2F%3E%3Ccircle%20cx%3D'12'%20cy%3D'10'%20r%3D'3'%2F%3E%3C%2Fsvg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M21%2010c0%207-9%2013-9%2013s-9-6-9-13a9%209%200%200%201%2018%200z'%2F%3E%3Ccircle%20cx%3D'12'%20cy%3D'10'%20r%3D'3'%2F%3E%3C%2Fsvg%3E");}.woocommerce-account .woocommerce-MyAccount-navigation-link--edit-account a::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M20%2021v-2a4%204%200%200%200-4-4H8a4%204%200%200%200-4%204v2'%2F%3E%3Ccircle%20cx%3D'12'%20cy%3D'7'%20r%3D'4'%2F%3E%3C%2Fsvg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M20%2021v-2a4%204%200%200%200-4-4H8a4%204%200%200%200-4%204v2'%2F%3E%3Ccircle%20cx%3D'12'%20cy%3D'7'%20r%3D'4'%2F%3E%3C%2Fsvg%3E");}.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M9%2021H5a2%202%200%200%201-2-2V5a2%202%200%200%201%202-2h4'%2F%3E%3Cpath%20d%3D'M16%2017l5-5-5-5'%2F%3E%3Cpath%20d%3D'M21%2012H9'%2F%3E%3C%2Fsvg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M9%2021H5a2%202%200%200%201-2-2V5a2%202%200%200%201%202-2h4'%2F%3E%3Cpath%20d%3D'M16%2017l5-5-5-5'%2F%3E%3Cpath%20d%3D'M21%2012H9'%2F%3E%3C%2Fsvg%3E");}.woocommerce-account .woocommerce-MyAccount-content{flex:1 1 0;min-width:300px;background:#fff;border:1px solid #eef0f4;border-radius:16px;box-shadow:0 6px 24px rgba(16,42,86,.06);padding:30px 32px;box-sizing:border-box;}@media(max-width:860px){.woocommerce-account .woocommerce-MyAccount-navigation{width:100% !important;flex:1 1 100%;}}

/* ================= capa: header-part :: dhm-card-buttons ================= */
.dhm-card-actions{display:flex;gap:8px;margin-top:10px;width:100%;box-sizing:border-box;height:46px;justify-content:flex-start;align-items:center;}
.dhm-card-add{flex:0 0 46px;width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;background:#001F3F;color:#fff;border:none;border-radius:10px;padding:0;cursor:pointer;transition:background .2s,transform .08s;text-decoration:none;font-family:inherit;box-sizing:border-box;}
.dhm-card-add:hover{background:#0a2f52;}
.dhm-card-add:active{transform:scale(.97);}
.dhm-card-add[disabled]{opacity:.65;cursor:default;}
.dhm-card-add svg{width:20px;height:20px;flex:0 0 20px;}
.dhm-card-cart{flex:0 0 46px;width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;background:#eef3fb;color:#0B5ED7;border:1.5px solid #d4e2f7;border-radius:10px;cursor:pointer;text-decoration:none;transition:background .2s,transform .08s;box-sizing:border-box;}
.dhm-card-cart:hover{background:#e0ebfb;}
.dhm-card-cart:active{transform:scale(.95);}
.dhm-card-cart svg{width:20px;height:20px;flex:0 0 20px;}
.product-card-medikart .wp-block-button.wc-block-components-product-button{display:none !important;}
ul.products li.product a.add_to_cart_button,ul.products li.product a.button.product_type_simple,ul.products li.product a.added_to_cart{display:none !important;}
ul.products li.product{display:flex !important;flex-direction:column !important;}
ul.products li.product .dhm-card-actions{margin-top:auto;}

/* ================= capa: header-part :: dhm-cart-core ================= */
.dhm-hide-cart{position:absolute;right:78px;top:64px;z-index:40;display:inline-flex;align-items:center;gap:6px;background:#eef3fb;color:#0B5ED7;border:none;border-radius:8px;padding:7px 12px;font-size:13px;font-weight:600;cursor:pointer;line-height:1;}
.dhm-hide-cart svg{width:14px;height:14px;}
.dhm-cart-tab{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:99999;background:#0B5ED7;color:#fff;border:none;border-radius:12px 0 0 12px;padding:14px 9px;display:none;flex-direction:column;align-items:center;gap:6px;cursor:pointer;box-shadow:-3px 4px 16px rgba(0,0,0,.2);}
.dhm-cart-tab svg{width:22px;height:22px;}
.dhm-cart-tab small{font-size:11px;font-weight:700;line-height:1;}

/* ================= capa: header-part :: dhm-account-menu ================= */
html,body{overflow-x:clip !important;max-width:100% !important;}.wp-block-woocommerce-customer-account{display:none !important;}.wp-block-navigation .wp-block-navigation__submenu-container{border:none !important;border-radius:12px !important;box-shadow:0 12px 32px rgba(16,24,40,.14) !important;padding:8px !important;min-width:215px !important;background:#fff !important;margin-top:10px !important;}.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content{padding:9px 14px !important;border-radius:8px !important;color:#334155 !important;font-size:14px !important;display:block;}.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover{background:#f1f5f9 !important;color:#00a896 !important;}.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item:last-child .wp-block-navigation-item__content{color:#e11d48 !important;}.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item:last-child{border-top:1px solid #f1f5f9;margin-top:4px;padding-top:2px;}

/* ================= capa: header-part :: dhm-head-canonico ================= */
/* =====================================================================
   DHM - HEADER CANONICO AUTOCONTENIDO  (v1, 2026-07-30)
   Origen: la navegacion CUSTOM del home (page 14), aprobada por Ricardo.
   Todo el CSS del header vive AQUI DENTRO y va scopeado a .dhm-head, de
   modo que renderiza pixel-identico en cualquier plantilla por construccion.
   Modelo de posicionamiento del home: el WRAPPER no se fija; se fijan sus
   hijos (topbar arriba, nav debajo). El offset del contenido lo pone
   .wp-site-blocks (CSS de respaldo + JS que mide la altura real).
   ===================================================================== */

/* -- tokens propios: el header no depende de variables de la pagina -- */
.dhm-head{
  --card:#FFFFFF; --ink:#1B2342; --ink2:#5C6485;
  --brand:#1F9BD7; --brand-d:#1577A8; --brand-t:#E7E9F7;
  --line:#E3E6F1; --cream:#F7F8FC;
  position:static; font-family:'Manrope',system-ui,sans-serif;
}
/* la tipografia se fuerza: fuera del .store del home el body impone Inter y
   las medidas de los links cambiaban (43px vs 48px en "Tienda") */
.dhm-head, .dhm-head *{ box-sizing:border-box; font-family:'Manrope',system-ui,sans-serif !important; }
.dhm-head a{ text-decoration:none; }

/* -- offset del contenido: 38 (topbar) + 75 (nav con su borde) -- */
html body .wp-site-blocks{ padding-top:113px; }
/* el home traia su propio padding en .store: se anula para no duplicar */
html body .wp-site-blocks .store{ padding-top:0 !important; }
html body.admin-bar .wp-site-blocks{ padding-top:113px; }

/* -- TOPBAR (marquesina) : valores exactos del home -- */
.dhm-head .topbar{
  position:fixed; top:0; left:0; right:0; z-index:9999;
  background:var(--brand-d); color:#fff; overflow:hidden;
}
.dhm-head .topbar, .dhm-head .topbar .mq,
.dhm-head .topbar .mq-track, .dhm-head .topbar .mq-g{ color:#fff !important; }
.dhm-head .topbar .mq{
  overflow:hidden; width:100%;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);
}
.dhm-head .topbar .mq-track{ display:flex; width:max-content; animation:dhm-marq 35s linear infinite; }
.dhm-head .topbar .mq:hover .mq-track{ animation-play-state:paused; }
.dhm-head .topbar .mq-g{
  display:inline-flex; align-items:center; height:38px; white-space:nowrap; flex:0 0 auto;
  font-size:13.5px; font-weight:500; letter-spacing:.2px;
}
@keyframes dhm-marq{ from{transform:translateX(0)} to{transform:translateX(-50%)} }
@media (prefers-reduced-motion:reduce){
  .dhm-head .topbar .mq{ -webkit-mask-image:none; mask-image:none; }
  .dhm-head .topbar .mq-track{ animation:none; width:100%; justify-content:center; flex-wrap:wrap; }
  .dhm-head .topbar .mq-g:nth-child(2){ display:none; }
  .dhm-head .topbar .mq-g{ height:auto; padding:7px 12px; white-space:normal; text-align:center; }
}

/* -- NAV : valores exactos del home -- */
.dhm-head .nav{
  position:fixed; top:38px; left:0; right:0; z-index:9998;
  background:rgba(255,255,255,.98);
  -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
  transition:box-shadow .28s ease, background .28s ease;
}
.dhm-head .nav.scrolled, .dhm-head .nav.dhm-scrolled{ box-shadow:0 8px 28px rgba(20,25,50,.10); }
.dhm-head .wrap{ max-width:1200px; margin:0 auto; padding:0 30px; }
.dhm-head .nav-in{ display:flex; align-items:center; gap:18px; height:74px; }
.dhm-head .nav .logo-img{
  height:40px !important; width:101px !important; max-width:none !important;
  flex:0 0 auto; object-fit:contain; display:block;
}
.dhm-head .nav-mid{ display:flex; align-items:center; gap:24px; margin-left:18px; }
.dhm-head .navlink{ color:var(--ink) !important; font-size:14.5px; font-weight:500; transition:color .2s; }
.dhm-head .navlink:hover{ color:var(--brand) !important; }
.dhm-head .f1{ flex:1; }

/* iconos: la geometria final la fija el sistema de botones v2 (44px circulo
   neumorfico). Aqui solo la base del home, sin pelear con el sistema. */
.dhm-head .iconbtn{
  width:42px; height:42px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  color:var(--ink); background:transparent; border:1px solid transparent; cursor:pointer;
  transition:background .2s, border-color .2s;
}
.dhm-head .iconbtn .ic, .dhm-head .ic{
  width:22px; height:22px; fill:none; stroke:currentColor;
  stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; display:block;
}
.dhm-head .cartbtn{ position:relative; background:transparent; font-family:inherit; }
.dhm-head .nav .cart-count{
  position:absolute; top:-3px; right:-3px; left:auto; bottom:auto;
  min-width:17px; height:17px; padding:0 4px; border-radius:9999px;
  background:#D82126; color:#fff !important;
  font-size:11px; font-weight:800; line-height:17px; text-align:center;
  box-shadow:0 0 0 2px #fff; pointer-events:none; z-index:2;
}
.dhm-head .nav .cart-count[hidden]{ display:none !important; }

/* CTA Comprar: valores exactos del home */
.dhm-head .btn{
  display:inline-flex; align-items:center; justify-content:center; gap:9px;
  padding:14px 26px; border-radius:40px; font-weight:600; font-size:15px;
  cursor:pointer; border:none; font-family:inherit; white-space:nowrap;
  transition:transform .2s, box-shadow .2s, background .2s;
}
.dhm-head .btn-sm{ padding:10px 20px; font-size:14px; }

/* -- HAMBURGUESA + PANEL MOVIL (pieza obligatoria del Gate) -- */
.dhm-head .navburger{
  display:none; width:44px; height:44px; border:1px solid var(--line); border-radius:12px;
  background:#fff; cursor:pointer; flex-direction:column;
  align-items:center; justify-content:center; gap:5px; padding:0;
}
.dhm-head .navburger span{
  display:block; width:20px; height:2px; border-radius:2px; background:var(--ink);
  transition:transform .25s, opacity .2s;
}
.dhm-head .navburger[aria-expanded="true"] span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.dhm-head .navburger[aria-expanded="true"] span:nth-child(2){ opacity:0; }
.dhm-head .navburger[aria-expanded="true"] span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }
.dhm-head .mobmenu{
  display:none; position:fixed; top:113px; left:0; right:0; z-index:9997;
  flex-direction:column; background:#fff; border-bottom:1px solid var(--line);
  box-shadow:0 14px 30px rgba(20,25,50,.10);
}
.dhm-head .mobmenu.open{ display:flex; }
.dhm-head .mobmenu a{
  padding:15px 22px; color:var(--ink) !important; font-weight:600; font-size:16px;
  border-top:1px solid var(--line);
}
.dhm-head .mobmenu a:first-child{ border-top:0; }
.dhm-head .mobmenu a:hover{ background:#F7F8FC; color:var(--brand) !important; }
@media (max-width:980px){
  .dhm-head .nav-mid{ display:none; }
  .dhm-head .navburger{ display:flex !important; }
}
/* en escritorio no hay hamburguesa: el home canonico no la tiene.
   El sistema de botones v2 fuerza display:inline-flex a todo icon-only,
   asi que hace falta ganar por especificidad (0,3,2) contra su (0,1,2). */
@media (min-width:981px){
  html body .dhm-head .navburger{ display:none !important; }
}
@media (max-width:620px){ .dhm-head .wrap{ padding:0 18px; } }

/* -- MOVIL: la fila del home canonico no cabe en 390px (medido: la
   hamburguesa quedaba en x=405, fuera del viewport, y "Comprar" se
   aplastaba a 40px). Se prioriza lo comercial: logo + carrito + Comprar +
   hamburguesa. Buscar y Mi cuenta viven en el panel movil. -- */
@media (max-width:700px){
  .dhm-head .nav-in{ gap:12px; }
  .dhm-head .iconbtn[aria-label="Buscar"],
  .dhm-head .iconbtn[aria-label="Mi cuenta"]{ display:none !important; }
  .dhm-head .btn-sm{ padding:0 16px !important; font-size:13px !important; }
}
@media (max-width:359px){
  .dhm-head .nav .btn-primary{ display:none !important; }
}

/* -- barra de admin de WordPress -- */
.admin-bar .dhm-head .topbar{ top:32px; }
.admin-bar .dhm-head .nav{ top:70px; }
.admin-bar .dhm-head .mobmenu{ top:145px; }
@media screen and (max-width:782px){
  .admin-bar .dhm-head .topbar{ top:46px; }
  .admin-bar .dhm-head .nav{ top:84px; }
  .admin-bar .dhm-head .mobmenu{ top:159px; }
}

/* -- el wrapper del template part deja de fijarse: el modelo es el del home.
   CRITICO: el wrapper traia backdrop-filter:blur(16px) de una regla previa y
   eso convierte al wrapper en BLOQUE CONTENEDOR de sus hijos position:fixed
   (medido: la nav caia a y=151 en vez de y=38). Se anulan todos los
   disparadores de bloque contenedor: backdrop-filter, filter, transform,
   perspective, contain y will-change. -- */
html body header.wp-block-template-part,
html body .wp-block-template-part[data-slug="header"]{
  position:static !important; top:auto !important; z-index:auto !important;
  background:none !important;
  backdrop-filter:none !important; -webkit-backdrop-filter:none !important;
  filter:none !important; transform:none !important; perspective:none !important;
  contain:none !important; will-change:auto !important;
  border:0 !important; box-shadow:none !important;
  height:0 !important; min-height:0 !important; padding:0 !important; margin:0 !important;
  overflow:visible !important;
}

/* -- piezas globales heredadas del bloque anterior (no son del header) -- */
.dhm-float-cart{
  position:absolute !important; left:-9999px !important; top:auto !important;
  bottom:auto !important; right:auto !important; width:1px !important; height:1px !important;
  padding:0 !important; margin:-1px !important; overflow:hidden !important;
  clip:rect(0 0 0 0) !important; transform:none !important; box-shadow:none !important;
  pointer-events:none;
}
.wp-site-blocks, .wp-site-blocks p, .wp-site-blocks li{ font-family:'Manrope',system-ui,sans-serif; }

/* ================= capa: header-part :: dhm-azul-fn ================= */
html body .dhm-card-add{background:#1F9BD7!important;border-radius:12px!important;box-shadow:0 8px 18px -8px rgba(31,155,215,.6)!important}html body .dhm-card-add:hover{background:#1577A8!important}html body .dhm-card-cart{background:#E7F4FB!important;color:#1F9BD7!important;border-color:#BFE3F4!important}html body .dhm-card-cart:hover{background:#D6ECF8!important}html body .single_add_to_cart_button.button.alt.wp-element-button,html body .single_add_to_cart_button.button.alt,html body.woocommerce #place_order,html body .wc-block-cart__submit-button,html body .wc-block-components-checkout-place-order-button,html body.woocommerce-account .woocommerce-Button.button,html body.woocommerce-account .woocommerce-form-login__submit.button,html body .wp-block-button__link.wp-element-button.wc-block-components-product-button__button.add_to_cart_button{background:#1F9BD7!important;background-image:none!important;color:#fff!important;border:none!important;border-radius:40px!important;font-family:'Manrope',sans-serif!important;font-weight:700!important;box-shadow:0 10px 26px -12px rgba(31,155,215,.7)!important;transition:background .2s,transform .2s!important}html body .single_add_to_cart_button.button.alt:hover,html body.woocommerce #place_order:hover,html body .wc-block-cart__submit-button:hover,html body.woocommerce-account .woocommerce-Button.button:hover{background:#1577A8!important}.woocommerce ul.products li.product .woocommerce-loop-product__title,.wc-block-components-product-name,.wp-block-post-title,.woocommerce div.product .product_title,.wc-block-grid__product-title{font-family:'Manrope',sans-serif!important;font-weight:700!important;letter-spacing:-.3px!important}.woocommerce .price,.wc-block-components-product-price,.wp-block-woocommerce-product-price{font-family:'Manrope',sans-serif!important;color:#323084!important;font-weight:800!important}.woocommerce ul.products li.product,.wc-block-product{border-radius:16px!important;transition:transform .25s,box-shadow .25s!important}.woocommerce ul.products li.product:hover,.wc-block-product:hover{transform:translateY(-4px)!important;box-shadow:0 22px 44px -26px rgba(27,35,66,.5)!important}.woocommerce a:not(.button):not(.wp-block-button__link):hover,.woocommerce-pagination a:hover,.wp-block-post-title a:hover{color:#1F9BD7!important}html body .woocommerce-pagination .page-numbers.current,html body .wc-block-pagination .wc-block-pagination-page--active{background:#323084!important;border-color:#323084!important;color:#fff!important}/*FXBTN*/html body .dhm-card-add,html body .single_add_to_cart_button.button.alt,html body.woocommerce #place_order,html body .wc-block-cart__submit-button,html body.woocommerce-account .woocommerce-Button.button,html body.woocommerce-account .woocommerce-form-login__submit.button{position:relative!important;overflow:hidden!important;isolation:isolate!important;transition:transform .3s,box-shadow .3s!important}html body .dhm-card-add::before,html body .single_add_to_cart_button.button.alt::before,html body.woocommerce #place_order::before,html body .wc-block-cart__submit-button::before,html body.woocommerce-account .woocommerce-Button.button::before,html body.woocommerce-account .woocommerce-form-login__submit.button::before{content:''!important;position:absolute!important;z-index:0!important;right:1.1em!important;top:50%!important;width:1.3em!important;height:1.3em!important;border-radius:50%!important;transform:translateY(-50%) scale(0)!important;transition:transform .6s cubic-bezier(.65,.05,.36,1)!important;background:#1577A8!important}html body .dhm-card-add:hover::before,html body .single_add_to_cart_button.button.alt:hover::before,html body.woocommerce #place_order:hover::before,html body .wc-block-cart__submit-button:hover::before,html body.woocommerce-account .woocommerce-Button.button:hover::before,html body.woocommerce-account .woocommerce-form-login__submit.button:hover::before{transform:translateY(-50%) scale(24)!important}html body .dhm-card-add>*,html body .single_add_to_cart_button.button.alt>*,html body.woocommerce #place_order>*,html body .wc-block-cart__submit-button>*,html body.woocommerce-account .woocommerce-Button.button>*,html body.woocommerce-account .woocommerce-form-login__submit.button>*{position:relative;z-index:1}html body .single_add_to_cart_button.button.alt:hover,html body.woocommerce #place_order:hover{transform:translateY(-2px)!important}

/* ================= capa: header-part :: (sin id) ================= */
/*DHM-CAT*/body.tax-product_cat h1.wp-block-heading{display:none !important}body.tax-product_cat main>.wp-block-group.has-global-padding{padding-top:12px !important}body.tax-product_cat .dhm-cat-h{margin-top:2px !important;font-size:1.9rem !important;line-height:1.15}

/* ================= capa: header-part :: (sin id) ================= */
/*DHM-PROD*/.wp-block-woocommerce-product-template li,li.product,.wc-block-product{opacity:1 !important;animation:none !important}.wp-block-woocommerce-product-image img,li.product img,.wc-block-product img{opacity:1 !important}

/* ================= capa: header-part :: dhm-neu-buttons ================= */
/* DHM - Neumorfismo selectivo de botones (Bloque 2, global FSE)
   Primarios: azul #1F9BD7 alto contraste + sombra neumórfica exterior + inset
   highlight, píldora 40px. Secundarios/ghost: #F4F7FA doble sombra + hover
   hundido. Especificidad acotada a botones de comercio; sin bajo contraste en
   CTAs (accesibilidad). No aplica dentro del hero (.dhmhero3 tiene su propio
   sistema por producto). */
:root{--dhm-blue1:#29a7e0;--dhm-blue2:#1f9bd7;--dhm-blueSh:rgba(31,155,215,.34)}

/* ---- PRIMARIOS (Comprar / Añadir al carrito / Finalizar compra / Ver) ---- */
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.wc-block-components-button:not(.is-link),
.wp-block-woocommerce-cart__submit-button,
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button,
.woocommerce .single_add_to_cart_button.button,
.woocommerce ul.products li.product a.add_to_cart_button,
.woocommerce ul.products li.product a.button,
body:not(.home) .wp-block-button:not(.is-style-outline) .wp-block-button__link{
  background:linear-gradient(145deg,var(--dhm-blue1),var(--dhm-blue2)) !important;
  color:#fff !important;border:0 !important;border-radius:40px !important;
  font-weight:700 !important;letter-spacing:.01em;
  box-shadow:7px 7px 18px var(--dhm-blueSh),-6px -6px 16px rgba(255,255,255,.95),
             inset 0 1px 0 rgba(255,255,255,.35) !important;
  transition:transform .18s ease,box-shadow .3s ease,filter .2s ease !important;
}
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.wc-block-components-button:not(.is-link):hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover,
.woocommerce .single_add_to_cart_button.button:hover,
.woocommerce ul.products li.product a.button:hover,
body:not(.home) .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover{
  transform:translateY(-2px);filter:brightness(1.03);
}
.woocommerce a.button.alt:active,
.woocommerce button.button.alt:active,
.wc-block-components-button:not(.is-link):active,
.woocommerce .single_add_to_cart_button.button:active{
  box-shadow:inset 4px 4px 10px rgba(20,80,120,.35),
             inset -4px -4px 10px rgba(255,255,255,.25) !important;transform:translateY(0);
}

/* ---- SECUNDARIOS / GHOST (outline, "ver carrito", etc.) ---- */
.woocommerce a.button:not(.alt):not(.add_to_cart_button),
.woocommerce button.button:not(.alt),
.wp-block-button.is-style-outline .wp-block-button__link,
.wc-block-components-button.is-link + a{
  background:#F4F7FA !important;color:#0e1b2e !important;border:0 !important;
  border-radius:40px !important;font-weight:600 !important;
  box-shadow:6px 6px 15px rgba(180,197,217,.5),-6px -6px 15px rgba(255,255,255,.95) !important;
  transition:box-shadow .25s ease !important;
}
.woocommerce a.button:not(.alt):not(.add_to_cart_button):hover,
.woocommerce button.button:not(.alt):hover,
.wp-block-button.is-style-outline .wp-block-button__link:hover{
  box-shadow:inset 5px 5px 12px rgba(180,197,217,.55),
             inset -5px -5px 12px rgba(255,255,255,.9) !important;
}

/* ================= capa: header-part :: dhm-mobile-cta ================= */
@media(max-width:880px){
  /* (c) cards: botón Comprar SIEMPRE visible, nunca dependiente de hover */
  .store .pbuy,.store .pcard-add,.store .pact,
  .woocommerce ul.products li.product .button,
  .woocommerce ul.products li.product .add_to_cart_button{
    opacity:1 !important;visibility:visible !important;transform:none !important;pointer-events:auto !important}
  /* (b) ficha: barra sticky inferior con precio + Añadir al carrito */
  .dhm-sticky-atc{position:fixed;left:0;right:0;bottom:0;z-index:9998;display:none;align-items:center;gap:12px;
    padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));background:rgba(255,255,255,.97);
    -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 -6px 20px rgba(20,40,70,.14);border-top:1px solid #e6edf3}
  body.single-product.dhm-atc-on .dhm-sticky-atc{display:flex}
  .dhm-sticky-atc .dhm-atc-price{font-weight:800;color:#0e1b2e;font-size:1.05rem;line-height:1.05;white-space:nowrap}
  .dhm-sticky-atc .dhm-atc-price .lbl{display:block;font-weight:600;font-size:.68rem;color:#64748b;letter-spacing:.02em}
  .dhm-sticky-atc .dhm-atc-btn{margin-left:auto;flex:1;max-width:60%;text-align:center;color:#fff;font-weight:700;border:0;
    border-radius:40px;padding:14px 16px;font-size:1rem;cursor:pointer;
    background:linear-gradient(145deg,#29a7e0,#1f9bd7);box-shadow:0 8px 18px rgba(31,155,215,.3)}
  /* offset del botón flotante para que la barra no lo tape */
  body.single-product.dhm-atc-on .cart-floating,
  body.single-product.dhm-atc-on .joinchat__button,
  body.single-product.dhm-atc-on .ht-ctc-chat,
  body.single-product.dhm-atc-on a.wa-float{bottom:82px !important}
}

/* ================= capa: footer-part :: dhm-footer-selfcontained ================= */
/* ===== FOOTER AUTOCONTENIDO =====
   Todo el layout, color, tipografia y responsive del footer vive AQUI,
   dentro del propio template part, con scope .foot y especificidad alta.
   Objetivo: renderiza pixel-identico en cualquier plantilla, sin depender
   de CSS externo de paginas ni del tema. Sin ampersand literal. */
html body footer.foot,
html body .wp-block-template-part footer.foot,
html body footer.wp-block-template-part{
  display:block !important;
  background:#181A33 !important;
  color:#EAF3FA !important;
  font-family:'Manrope',system-ui,-apple-system,sans-serif !important;
  padding:56px 0 28px !important;
  margin:0 !important;
}
html body footer.foot .wrap{
  max-width:1180px !important;
  margin:0 auto !important;
  padding:0 20px !important;
  width:100% !important;
  box-sizing:border-box !important;
}
/* --- LAYOUT DE COLUMNAS (lo que se perdia en el home) --- */
html body footer.foot .foot-grid{
  display:grid !important;
  grid-template-columns:1.5fr 1fr 1fr 1fr !important;
  gap:34px !important;
  align-items:start !important;
  width:100% !important;
  float:none !important;
  flex-direction:row !important;
}
html body footer.foot .foot-grid > *{
  min-width:0 !important;
  display:block !important;
  width:auto !important;
}
/* --- TITULOS DE COLUMNA --- */
html body footer.foot .foot-grid h4,
html body footer.foot h4{
  display:block !important;
  color:#FFFFFF !important;
  font-size:13px !important;
  font-weight:800 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  margin:0 0 16px 0 !important;
  font-family:'Manrope',system-ui,sans-serif !important;
}
/* --- LINKS: cada uno en su linea --- */
html body footer.foot .footlink,
html body footer.foot .foot-grid a:not(.soc){
  display:block !important;
  width:auto !important;
  color:#C8DCEC !important;
  text-decoration:none !important;
  font-size:14px !important;
  line-height:1.5 !important;
  margin:0 0 11px 0 !important;
  padding:0 !important;
  float:none !important;
  font-family:'Manrope',system-ui,sans-serif !important;
}
html body footer.foot .footlink:hover,
html body footer.foot .foot-grid a:not(.soc):hover{ color:#FFFFFF !important; }
html body footer.foot p{
  color:#a9b6b1 !important;
  font-family:'Manrope',system-ui,sans-serif !important;
}
/* --- REDES --- */
html body footer.foot .dhm-soc{
  display:flex !important;
  flex-direction:row !important;
  gap:14px !important;
  flex-wrap:wrap !important;
  align-items:center !important;
}
html body footer.foot .soc{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:40px !important;
  height:40px !important;
  border-radius:50% !important;
  background:rgba(255,255,255,.10) !important;
  border:1px solid rgba(255,255,255,.22) !important;
  color:#EAF3FA !important;
  box-shadow:none !important;
  margin:0 !important;
  flex:0 0 auto !important;
}
html body footer.foot .soc:hover{
  background:#1F9BD7 !important;
  border-color:#1F9BD7 !important;
  color:#FFFFFF !important;
  transform:none !important;
}
html body footer.foot .soc svg{ width:18px !important; height:18px !important; }
/* --- BARRA INFERIOR --- */
html body footer.foot .foot-bot,
html body footer.foot .foot-legal{
  border-top:1px solid rgba(255,255,255,.12) !important;
  margin-top:34px !important;
  padding-top:20px !important;
  color:#8fa0b3 !important;
  font-size:13px !important;
}
/* --- NADA DENTRO DEL FOOTER LLEVA SOMBRA CLARA --- */
html body footer.foot *{ box-shadow:none !important; }
/* --- RESPONSIVE --- */
@media (max-width:900px){
  html body footer.foot .foot-grid{ grid-template-columns:1fr 1fr !important; gap:28px !important; }
}
@media (max-width:560px){
  html body footer.foot .foot-grid{ grid-template-columns:1fr !important; gap:24px !important; }
  html body footer.foot{ padding:40px 0 24px !important; }
}

/* ================= capa: footer-part :: (sin id) ================= */
@keyframes dhmSlideIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}

/* ================= capa: footer-part :: dhm-medikart-style ================= */
/* SCOPED TO SHOP PAGE ONLY */
.post-type-archive-product .shop-sidebar{position:sticky;top:100px;align-self:flex-start}
.post-type-archive-product .wp-block-columns:has(.shop-sidebar){align-items:flex-start}
.post-type-archive-product .wp-block-columns>.wp-block-column:first-child{max-width:22%;flex-basis:22%}
.post-type-archive-product .wp-block-columns>.wp-block-column:last-child{max-width:78%;flex-basis:78%}
.post-type-archive-product .wc-block-product-results-count{margin-left:0!important;left:0!important;position:static!important;width:auto!important;font-size:13px;color:#94A3B8;display:inline;padding:0}
.post-type-archive-product .wc-block-catalog-sorting{margin-left:0!important;left:0!important;position:static!important;width:auto!important}
/* PRODUCT CARDS - global ok */
.product-card-medikart{background:#E8EBED;border-radius:0;border:none;box-shadow:none;overflow:hidden}
.product-card-medikart:hover{box-shadow:0 4px 16px rgba(0,0,0,.08);transform:translateY(-3px)}
/* IMAGES centered */
.wc-block-components-product-image{background:#E8EBED;display:flex;align-items:center;justify-content:center}
.wc-block-components-product-image img{object-fit:contain;padding:16px;background:#E8EBED;aspect-ratio:1/1;max-width:100%;margin:0 auto;display:block}
/* TEXT centered */
.wc-block-components-product-name{
.wc-block-components-product-price{
/* BLACK BUTTONS + WHITE TEXT */
body .wp-element-button.wc-block-components-product-button__button,
body .wp-element-button.wc-block-components-product-button__button span,
body .wc-block-components-product-button .wp-element-button,
body .wc-block-components-product-button .wp-element-button span{color:#fff!important;border-radius:0;text-transform:uppercase;letter-spacing:.05em;font-weight:600;font-size:14px}
body .wp-element-button.wc-block-components-product-button__button,
body .wc-block-components-product-button .wp-element-button{
body .wp-element-button.wc-block-components-product-button__button span,
body .wc-block-components-product-button .wp-element-button span{background:transparent!important}
/* STARS */
.dhm-stars{text-align:center;margin:4px auto 8px}
/* SIDEBAR */
.shop-sidebar .wp-block-heading{
.shop-sidebar .wp-block-separator{border-color:#E5E7EB;margin:20px 0}
.wc-block-product-categories-list li a{color:#374151;font-size:14px;text-decoration:none}

/* MENU: Title Case, consistent font */
.wp-block-navigation .wp-block-navigation-item a{text-transform:capitalize !important;font-family:Inter,-apple-system,sans-serif !important;font-weight:500 !important;font-size:15px !important;letter-spacing:0 !important}
.wp-block-navigation-item a::after{display:none !important;content:none !important}
/* STAR RATING: hide SSSSS globally */
.star-rating{font-size:0 !important;color:transparent !important;height:0 !important;display:none !important}

/* PREMIUM REDESIGN v1.0 */

body{font-family:'Inter',-apple-system,sans-serif !important;-webkit-font-smoothing:antialiased}
.wp-block-navigation .wp-block-navigation-item a{color:#475569 !important;transition:color .2s !important}
.wp-block-navigation .wp-block-navigation-item a:hover{color:#00667A !important}
.wc-block-grid__product,.product-card-medikart,li.product{border:1px solid #E2E8F0 !important;border-radius:16px !important;overflow:hidden !important;transition:all .3s cubic-bezier(.4,0,.2,1) !important;background:#fff !important;box-shadow:0 1px 3px rgba(0,0,0,.04) !important}
.wc-block-grid__product:hover,.product-card-medikart:hover,li.product:hover{box-shadow:0 12px 32px rgba(0,0,0,.08) !important;transform:translateY(-4px) !important;border-color:#00667A !important}
.wc-block-components-product-image{background:#FAFBFC !important;padding:24px !important;display:flex !important;align-items:center !important;justify-content:center !important}
.wc-block-components-product-image img{object-fit:contain !important;mix-blend-mode:multiply !important}
.wc-block-components-product-name{font-size:15px !important;font-weight:600 !important;line-height:1.35 !important;color:#0F172A !important;padding:16px 16px 4px !important}
.wc-block-components-product-price{font-size:22px !important;font-weight:700 !important;color:#001F3F !important;padding:4px 16px 12px !important}
.wp-element-button.wc-block-components-product-button__button,.wc-block-components-product-button .wp-element-button{background:#001F3F !important;color:#fff !important;border:none !important;border-radius:10px !important;font-size:13px !important;font-weight:600 !important;letter-spacing:.03em !important;text-transform:uppercase !important;padding:14px 20px !important;margin:0 16px 16px !important;width:calc(100% - 32px) !important;transition:all .25s !important}
.wp-element-button.wc-block-components-product-button__button:hover,.wc-block-components-product-button .wp-element-button:hover{background:#00667A !important}
.wp-element-button span{color:#fff !important}
.dhm-trust-bar{display:flex;justify-content:center;gap:40px;padding:28px 40px;background:#FAFBFC;border-top:1px solid #E2E8F0;border-bottom:1px solid #E2E8F0}
.dhm-trust-item{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:500;color:#475569}
.dhm-trust-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px}
.dhm-categories{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.dhm-cat-card{border-radius:16px;padding:28px 20px;text-align:center;transition:all .3s;cursor:pointer;text-decoration:none;border:1px solid transparent}
.dhm-cat-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(0,0,0,.08)}
.dhm-cat-card h3{font-size:15px;font-weight:600;margin:10px 0 4px}
.dhm-cat-card p{font-size:12px;color:#64748B;margin:0}
html{scroll-behavior:smooth}
::selection{background:#00667A;color:#fff}
@media(max-width:768px){.dhm-categories{grid-template-columns:repeat(2,1fr);gap:10px}.dhm-trust-bar{flex-wrap:wrap;gap:16px;padding:20px 16px}}
}}}}
/* cierre EOF x4 (llaves sin cerrar en el original) */

/* ================= capa: footer-part :: dhm-sssss-fix-v2 ================= */
/* SSSSS FIX — Hide star-rating text completely */
.star-rating{font-size:0!important;visibility:hidden!important;height:0!important;overflow:hidden!important;display:none!important}
.star-rating span{display:none!important}
p:has(.star-rating){display:none!important}
/* HIDE FLOATING CART */
.cart-floating,.xoo-wsc-basket,.floating-cart,[class*="float"][class*="cart"]{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}

/* ================= capa: footer-part :: dhm-mega-visual-fix ================= */
/* === 1. PRODUCT CARDS — COMPACT 4 PER ROW === */
.wc-block-grid.has-3-columns{grid-template-columns:repeat(4,1fr)!important}
.products.columns-3{grid-template-columns:repeat(4,1fr)!important;display:grid!important;gap:16px!important}
ul.products li.product{width:auto!important;margin:0!important;float:none!important}
.wc-block-grid__product,.product-card-medikart,li.product{max-height:500px!important;overflow:hidden!important}
.wc-block-grid__product img,.product-card-medikart img,li.product img{max-height:200px!important;object-fit:contain!important}
.wc-block-grid__product .wc-block-components-product-image,li.product .attachment-woocommerce_thumbnail{aspect-ratio:4/3!important;max-height:200px!important}
li.product .woocommerce-loop-product__title,li.product h2{font-size:13px!important;line-height:1.3!important;padding:8px 12px 4px!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
li.product .price{font-size:18px!important;padding:0 12px 8px!important}
li.product .button,li.product .add_to_cart_button{font-size:11px!important;padding:10px 12px!important;margin:0 12px 12px!important}
@media(max-width:768px){.products.columns-3,.wc-block-grid.has-3-columns{grid-template-columns:repeat(2,1fr)!important}}

/* === 2. REVIEWS/VALORACIONES — Navy bg + white text === */
.dhm-reviews-track>div,.dhm-reviews-track .dhm-review-card{background:#001F3F!important;border:1px solid #0A3460!important;color:#fff!important}
.dhm-reviews-track .dhm-review-card p,.dhm-reviews-track>div p{color:#E2E8F0!important}
.dhm-reviews-track .dhm-review-card .dhm-review-name,.dhm-reviews-track>div strong{color:#fff!important}
.dhm-reviews-track .dhm-review-card .dhm-review-product,.dhm-reviews-track>div small,.dhm-reviews-track>div span:last-child{color:#94A3B8!important}
.dhm-reviews-track>div .dhm-review-avatar,.dhm-reviews-track>div div[style*="border-radius:50%"]{background:#00667A!important;color:#fff!important}

/* === 3. MI CUENTA — Premium styling === */
.woocommerce-MyAccount-navigation ul{list-style:none!important;padding:0!important;display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin-bottom:24px!important}
.woocommerce-MyAccount-navigation ul li{margin:0!important}
.woocommerce-MyAccount-navigation ul li a{display:block!important;padding:10px 20px!important;border-radius:8px!important;background:#F1F5F9!important;color:#475569!important;font-size:14px!important;font-weight:500!important;text-decoration:none!important;transition:all .2s!important}
.woocommerce-MyAccount-navigation ul li.is-active a,.woocommerce-MyAccount-navigation ul li a:hover{background:#001F3F!important;color:#fff!important}
.woocommerce-MyAccount-content{background:#fff!important;border:1px solid #E2E8F0!important;border-radius:12px!important;padding:32px!important}

/* === 4. CART EMPTY — Style === */
.cart-empty,.wc-empty-cart-message{text-align:center!important;padding:60px 20px!important;font-size:18px!important;color:#475569!important}
.cart-empty+.return-to-shop a,.wc-empty-cart-message+.return-to-shop a{background:#001F3F!important;color:#fff!important;border-radius:10px!important;padding:14px 32px!important;font-weight:600!important;display:inline-block!important;margin-top:16px!important}

/* === 5. HIDE FLOATING CART BUTTON === */
.cart-floating,.xoo-wsc-basket,.floating-cart{display:none!important}

/* === 6. "¿ERES EMPRESA?" SECTION FIX === */
/* will be replaced in template */

/* ================= capa: footer-part :: dhm-porque-reviews-fix ================= */
/* === "¿POR QUÉ ELEGIR?" SECTION — Force navy === */
.wp-block-group:has(> .wp-block-heading:first-child) .wp-block-columns .wp-block-column .wp-block-quote,
.wp-block-group .wp-block-column:has(.wp-block-quote) {
  background:#001F3F!important;
  border-radius:16px!important;
  padding:32px 24px!important;
  border:none!important;
  border-left:none!important;
}
.wp-block-quote p,.wp-block-quote cite{
  color:#E2E8F0!important;
}
.wp-block-quote{
  background:#001F3F!important;
  border:none!important;
  border-left:none!important;
  border-radius:16px!important;
  padding:28px 24px!important;
}

/* === REVIEWS CAROUSEL — Navy cards === */
[style*="dhm-scroll"]>div,
.dhm-reviews-track>div{
  background:#001F3F!important;
  border:1px solid #0A3460!important;
  border-radius:12px!important;
}
[style*="dhm-scroll"]>div *,
.dhm-reviews-track>div *{
  color:#E2E8F0!important;
}
[style*="dhm-scroll"]>div strong,
.dhm-reviews-track>div strong{
  color:#fff!important;
}
[style*="dhm-scroll"]>div div[style*="border-radius"],
.dhm-reviews-track>div div[style*="border-radius"]{
  background:#00667A!important;
  color:#fff!important;
}

/* === "¿POR QUÉ ELEGIR?" heading white === */
.wp-block-group[style*="001F3F"] .wp-block-heading,
.wp-block-group[style*="001F3F"] h2,
.wp-block-group[style*="001F3F"] p{
  color:#fff!important;
}
.wp-block-group[style*="001F3F"] p[style*="color"]{
  color:#94A3B8!important;
}

/* === MIA CHATBOT BUTTON FIX === */
.wc-chatbot-button,.tidio-trigger,
[class*="chat-trigger"],[class*="chat-button"]{
  background:#001F3F!important;
  color:#fff!important;
}

/* === MI CUENTA PREMIUM === */
.woocommerce-account .woocommerce-MyAccount-navigation{
  background:#F8FAFC!important;
  border-radius:12px!important;
  padding:16px!important;
  margin-bottom:24px!important;
}
.woocommerce-account .woocommerce-MyAccount-content{
  background:#fff!important;
  border:1px solid #E2E8F0!important;
  border-radius:12px!important;
  padding:32px!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul{
  list-style:none!important;
  padding:0!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a{
  display:block!important;
  padding:10px 20px!important;
  border-radius:8px!important;
  background:#F1F5F9!important;
  color:#475569!important;
  font-size:14px!important;
  font-weight:500!important;
  text-decoration:none!important;
  transition:all .2s!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover{
  background:#001F3F!important;
  color:#fff!important;
}

/* ================= capa: footer-part :: dhm-sssss-nuclear ================= */
/* NUCLEAR SSSSS FIX */
.star-rating,.star-rating *{font-size:0!important;color:transparent!important;visibility:hidden!important;height:0!important;width:0!important;overflow:hidden!important;position:absolute!important;pointer-events:none!important}
.wc-block-components-product-rating .star-rating{display:none!important}

/* ================= capa: sistema :: dhm-botones-v2 (copia desplegada 2026-09-08) ================= */
/* ===== DHM DESIGN SYSTEM v2.3 - BOTONES + RECUADROS =====
   Reescritura completa. Sustituye v2/v2.1/v2.2 (capas acumuladas en conflicto).

   CAUSA RAIZ DEL FILL A MEDIAS (medido por Ricardo): el ::before era un punto de
   16px escalado por un factor fijo; en un boton de 409px, scale(22) cubria 352px
   = 85 por ciento. Un factor fijo NO puede cubrir anchos arbitrarios.
   FIX DEFINITIVO: el ::before es un OVERLAY con inset:0 y border-radius:inherit,
   que va de scale(0) a scale(1) desde el punto de entrada. Cobertura 100 por
   ciento garantizada por geometria en cualquier ancho.

   REGLA DE ESCRITURA: sin ampersand literal ni comillas tipograficas (WordPress
   los altera dentro de bloques wp:html). Flecha como \2192. */

:root{
  --dhm-fill:#1F9BD7;
  --dhm-ink:#001F3F;
  --dhm-speed:.3s;
  --dhm-surface:#f0f2f5;
  --dhm-neu-out:6px 6px 12px rgba(163,177,198,.55), -6px -6px 12px rgba(255,255,255,.9);
  --dhm-neu-soft:4px 4px 10px rgba(163,177,198,.4), -4px -4px 10px rgba(255,255,255,.85);
  --dhm-neu-in:inset 4px 4px 8px rgba(163,177,198,.6), inset -4px -4px 8px rgba(255,255,255,.9);
  --dhm-on-color:0 2px 10px rgba(0,0,0,.28);
}

/* =======================================================================
   A) FIRMAS DE TEXTO (inventario real del DOM)
   btn / btn-primary / btn-ghost / fpill / fopt / addbtn / dhm-blogs__all /
   single_add_to_cart_button / product_type_simple / dhm-sticky-cart /
   h3btn (hero) + botones nativos de bloques y Woo
   ======================================================================= */
html body .btn,
html body .btn-primary,
html body .btn-ghost,
html body .fpill,
html body .fopt,
html body .addbtn,
html body .dhm-blogs__all,
html body .h3btn,
html body .single_add_to_cart_button,
html body button.product_type_simple,
html body .dhm-sticky-cart button,
html body .wp-block-button__link,
html body .wc-block-components-button:not(.is-link),
html body .wc-block-cart__submit-button,
html body .wc-block-components-checkout-place-order-button,
html body .woocommerce a.button,
html body .woocommerce button.button,
html body .dhm-b2{
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:.5em;
  width:auto;
  max-width:100%;
  padding:.85em 1.7em;
  border-radius:9999px !important;
  border:0 !important;
  background:var(--dhm-surface) !important;
  background-image:none !important;
  color:var(--dhm-ink) !important;
  font-weight:600;
  line-height:1.2;
  text-decoration:none;
  cursor:pointer;
  box-shadow:var(--dhm-neu-out) !important;
  transition:color var(--dhm-speed) ease, box-shadow var(--dhm-speed) ease, transform .12s ease;
}

/* --- OVERLAY DE RELLENO: inset 0 -> cobertura 100 por ciento --- */
html body .btn::before,
html body .btn-primary::before,
html body .btn-ghost::before,
html body .fpill::before,
html body .fopt::before,
html body .addbtn::before,
html body .dhm-blogs__all::before,
html body .h3btn::before,
html body .single_add_to_cart_button::before,
html body button.product_type_simple::before,
html body .dhm-sticky-cart button::before,
html body .wp-block-button__link::before,
html body .wc-block-components-button:not(.is-link)::before,
html body .wc-block-cart__submit-button::before,
html body .wc-block-components-checkout-place-order-button::before,
html body .woocommerce a.button::before,
html body .woocommerce button.button::before,
html body .dhm-b2::before{
  content:'' !important;
  position:absolute !important;
  inset:0 !important;
  z-index:-1;
  border-radius:inherit !important;
  background:var(--dhm-slide, var(--dhm-fill)) !important;
  transform:scale(0);
  transform-origin:12% 50%;        /* punto de entrada, como el dot original */
  transition:transform var(--dhm-speed) cubic-bezier(.4,0,.2,1);
  pointer-events:none;
}

/* --- FLECHA --- */
html body .btn::after,
html body .btn-primary::after,
html body .btn-ghost::after,
html body .addbtn::after,
html body .dhm-blogs__all::after,
html body .h3btn::after,
html body .single_add_to_cart_button::after,
html body .wp-block-button__link::after,
html body .woocommerce a.button::after,
html body .woocommerce button.button::after,
html body .dhm-b2::after{
  content:'\2192';
  display:inline-block;
  margin-left:-.35em;
  max-width:0;
  opacity:0;
  transform:translateX(-.35em);
  transition:opacity var(--dhm-speed) ease, transform var(--dhm-speed) ease,
             max-width var(--dhm-speed) ease, margin-left var(--dhm-speed) ease;
  pointer-events:none;
}

@media (hover:hover) and (pointer:fine){
  html body .btn:hover, html body .btn-primary:hover, html body .btn-ghost:hover,
  html body .fpill:hover, html body .fopt:hover, html body .addbtn:hover,
  html body .dhm-blogs__all:hover, html body .h3btn:hover,
  html body .single_add_to_cart_button:hover,
  html body button.product_type_simple:hover,
  html body .dhm-sticky-cart button:hover,
  html body .wp-block-button__link:hover,
  html body .wc-block-components-button:not(.is-link):hover,
  html body .wc-block-cart__submit-button:hover,
  html body .wc-block-components-checkout-place-order-button:hover,
  html body .woocommerce a.button:hover,
  html body .woocommerce button.button:hover,
  html body .dhm-b2:hover{
    color:#fff !important;
    box-shadow:var(--dhm-neu-soft) !important;
  }
  html body .btn:hover::before, html body .btn-primary:hover::before,
  html body .btn-ghost:hover::before, html body .fpill:hover::before,
  html body .fopt:hover::before, html body .addbtn:hover::before,
  html body .dhm-blogs__all:hover::before, html body .h3btn:hover::before,
  html body .single_add_to_cart_button:hover::before,
  html body button.product_type_simple:hover::before,
  html body .dhm-sticky-cart button:hover::before,
  html body .wp-block-button__link:hover::before,
  html body .wc-block-components-button:not(.is-link):hover::before,
  html body .wc-block-cart__submit-button:hover::before,
  html body .wc-block-components-checkout-place-order-button:hover::before,
  html body .woocommerce a.button:hover::before,
  html body .woocommerce button.button:hover::before,
  html body .dhm-b2:hover::before{
    transform:scale(1) !important;      /* 100 por ciento por geometria */
  }
  html body .btn:hover::after, html body .btn-primary:hover::after,
  html body .btn-ghost:hover::after, html body .addbtn:hover::after,
  html body .dhm-blogs__all:hover::after, html body .h3btn:hover::after,
  html body .single_add_to_cart_button:hover::after,
  html body .wp-block-button__link:hover::after,
  html body .woocommerce a.button:hover::after,
  html body .woocommerce button.button:hover::after,
  html body .dhm-b2:hover::after{
    opacity:1; max-width:1.4em; margin-left:0; transform:translateX(0);
  }
}

/* --- ACTIVE: hundido --- */
html body .btn:active, html body .btn-primary:active, html body .btn-ghost:active,
html body .fpill:active, html body .fopt:active, html body .addbtn:active,
html body .dhm-blogs__all:active, html body .h3btn:active,
html body .single_add_to_cart_button:active,
html body button.product_type_simple:active,
html body .dhm-sticky-cart button:active,
html body .wp-block-button__link:active,
html body .wc-block-components-button:not(.is-link):active,
html body .wc-block-cart__submit-button:active,
html body .wc-block-components-checkout-place-order-button:active,
html body .woocommerce a.button:active,
html body .woocommerce button.button:active,
html body .dhm-b2:active{
  color:#fff !important;
  box-shadow:var(--dhm-neu-in) !important;
  transform:scale(.98);
  transition:none;
}
html body .btn:active::before, html body .btn-primary:active::before,
html body .btn-ghost:active::before, html body .fpill:active::before,
html body .fopt:active::before, html body .addbtn:active::before,
html body .dhm-blogs__all:active::before, html body .h3btn:active::before,
html body .single_add_to_cart_button:active::before,
html body button.product_type_simple:active::before,
html body .dhm-sticky-cart button:active::before,
html body .wp-block-button__link:active::before,
html body .wc-block-components-button:not(.is-link):active::before,
html body .wc-block-cart__submit-button:active::before,
html body .wc-block-components-checkout-place-order-button:active::before,
html body .woocommerce a.button:active::before,
html body .woocommerce button.button:active::before,
html body .dhm-b2:active::before{
  transform:scale(1) !important;
  transition:none;
}

/* --- FOCUS --- */
html body .btn:focus-visible, html body .btn-primary:focus-visible,
html body .btn-ghost:focus-visible, html body .fpill:focus-visible,
html body .fopt:focus-visible, html body .addbtn:focus-visible,
html body .dhm-blogs__all:focus-visible, html body .h3btn:focus-visible,
html body .single_add_to_cart_button:focus-visible,
html body button.product_type_simple:focus-visible,
html body .wp-block-button__link:focus-visible,
html body .woocommerce a.button:focus-visible,
html body .woocommerce button.button:focus-visible,
html body .soc:focus-visible, html body .iconbtn:focus-visible,
html body .cartbtn:focus-visible, html body .navburger:focus-visible,
html body .dhm-b2:focus-visible{
  outline:3px solid var(--dhm-fill);
  outline-offset:3px;
}

/* =======================================================================
   B) FIRMAS ICON-ONLY: soc / iconbtn / cartbtn / navburger / h3dot
   Nunca swap, nunca desplazamiento. Solo fill e icono a blanco.
   ======================================================================= */
html body .soc,
html body .iconbtn,
html body .cartbtn,
html body .navburger,
html body .h3dot{
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width:40px; height:40px;
  border-radius:50% !important;
  border:0 !important;
  background:var(--dhm-surface) !important;
  color:var(--dhm-ink) !important;
  box-shadow:var(--dhm-neu-soft) !important;
  transition:color var(--dhm-speed) ease, box-shadow var(--dhm-speed) ease;
}
html body .soc::before,
html body .iconbtn::before,
html body .cartbtn::before,
html body .navburger::before{
  content:'' !important;
  position:absolute !important;
  inset:0 !important;
  z-index:-1;
  border-radius:50% !important;
  background:var(--dhm-fill) !important;
  transform:scale(0);
  transform-origin:50% 50%;
  transition:transform var(--dhm-speed) cubic-bezier(.4,0,.2,1);
  pointer-events:none;
}
html body .soc::after, html body .iconbtn::after,
html body .cartbtn::after, html body .navburger::after,
html body .h3dot::after{ content:none !important; display:none !important; }

@media (hover:hover) and (pointer:fine){
  html body .soc:hover::before, html body .iconbtn:hover::before,
  html body .cartbtn:hover::before, html body .navburger:hover::before{ transform:scale(1) !important; }
  html body .soc:hover, html body .iconbtn:hover,
  html body .cartbtn:hover, html body .navburger:hover{ color:#fff !important; }
}
/* el icono jamas se oculta ni se mueve */
html body .soc:hover svg, html body .soc:hover img, html body .soc:hover path,
html body .iconbtn:hover svg, html body .cartbtn:hover svg, html body .navburger:hover svg,
html body .soc:hover *, html body .iconbtn:hover *, html body .cartbtn:hover *{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  filter:none !important;
  fill:#fff !important;
  color:#fff !important;
}
html body .soc:hover, html body .iconbtn:hover, html body .cartbtn:hover,
html body .navburger:hover, html body .h3dot:hover{ transform:none !important; filter:none !important; }
html body .soc:active, html body .iconbtn:active,
html body .cartbtn:active, html body .navburger:active{
  box-shadow:var(--dhm-neu-in) !important; transform:scale(.96) !important;
}

/* Badge del carrito: solo anclado al icono, oculto en 0 */
html body .cartbtn{ overflow:visible !important; }
html body .cartbtn .cart-count, html body .cartbtn .dhm-tab-count{
  position:absolute !important; top:-4px !important; right:-4px !important;
  left:auto !important; bottom:auto !important;
  min-width:18px; height:18px; padding:0 4px;
  border-radius:9999px; background:#E53E3E; color:#fff !important;
  font-size:11px; font-weight:700; line-height:18px; text-align:center;
  box-shadow:none !important;
}
/* Pestana flotante retirada (cinturon si algun cache la sirve) */
html body .dhm-cart-tab, html body button.dhm-cart-tab, html body .cart-floating{ display:none !important; }

/* =======================================================================
   C) SUPERFICIE DE COLOR: prohibido el glow blanco sobre azul
   ======================================================================= */
html body .btn[style*="background:#fff"],
html body .btn[style*="background: #fff"],
html body .wp-block-button__link[style*="background:#fff"],
html body .dhm-on-color,
html body [style*="background:#001F3F"] .btn,
html body [style*="background:#0B2A4A"] .btn,
html body [style*="linear-gradient"] .btn,
html body .dhm-foot .btn, html body footer .btn,
html body .dhm-foot .wp-block-button__link, html body footer .wp-block-button__link{
  box-shadow:var(--dhm-on-color) !important;
  border:0 !important;
  text-shadow:none !important;
}
html body .btn[style*="background:#fff"]:hover,
html body .dhm-on-color:hover{ box-shadow:0 4px 14px rgba(0,0,0,.34) !important; }
html body .btn[style*="background:#fff"]:active,
html body .dhm-on-color:active{ box-shadow:inset 0 2px 8px rgba(0,0,0,.4) !important; }

/* =======================================================================
   D) RECUADROS NEUMORFICOS (nueva direccion de diseno)
   Tarjetas de producto, info, blog, secciones: un solo lenguaje con botones.
   ======================================================================= */
html body .pcard,
html body .featcard,
html body .blogcard,
html body .dhm-card,
html body .infocard,
html body .faqcard,
html body .dhm-concard,
html body .dhm-valcard,
html body .dhm-rev-card,
html body .store .card,
html body .dhm-box{
  background:var(--dhm-surface) !important;
  border:0 !important;
  border-radius:22px !important;
  box-shadow:var(--dhm-neu-out) !important;
  transition:box-shadow var(--dhm-speed) ease, transform .18s ease;
}
@media (hover:hover) and (pointer:fine){
  html body .pcard:hover, html body .featcard:hover, html body .blogcard:hover,
  html body .dhm-card:hover, html body .infocard:hover, html body .faqcard:hover,
  html body .dhm-concard:hover, html body .dhm-valcard:hover, html body .dhm-box:hover{
    box-shadow:8px 8px 18px rgba(163,177,198,.6), -8px -8px 18px rgba(255,255,255,.95) !important;
    transform:translateY(-2px);
  }
}
/* Recuadros sobre fondo de color: flat elevado, sin sombra blanca */
html body [style*="background:#001F3F"] .dhm-card,
html body [style*="background:#0B2A4A"] .dhm-card,
html body [style*="linear-gradient"] .dhm-card,
html body .dhm-card-on-color,
html body .dhm-foot .dhm-card, html body footer .dhm-card{
  background:rgba(255,255,255,.08) !important;
  box-shadow:var(--dhm-on-color) !important;
  border:1px solid rgba(255,255,255,.22) !important;
}

/* =======================================================================
   E) EXCLUIDOS (inventario real): links de texto y DOM de terceros
   ======================================================================= */
html body .ab-item, html body [class^="pswp__"], html body [class*=" pswp__"],
html body .skip-link, html body .wpcode-button,
html body .quantity input, html body .quantity button,
html body .wc-block-components-quantity-selector__button,
html body .woocommerce-LoopProduct-link,
html body .navlink, html body .footlink, html body .pcard-link,
html body .wc-block-mini-cart__button,
html body .wc-block-mini-cart button,
html body #wpadminbar .button,
html body .page-numbers, html body .dhm-share, html body .dhm-share-icon,
html body .mercadopago-button, html body .mp-checkout-container button{
  position:static !important;
  isolation:auto !important;
  overflow:visible !important;
  border-radius:inherit !important;
  background:revert !important;
  border:revert !important;
  color:revert !important;
  padding:revert !important;
  box-shadow:revert !important;
  transform:none !important;
}
html body .ab-item::before, html body .skip-link::before, html body .wpcode-button::before,
html body .quantity button::before, html body .wc-block-components-quantity-selector__button::before,
html body .woocommerce-LoopProduct-link::before, html body .navlink::before,
html body .footlink::before, html body .pcard-link::before,
html body .wc-block-mini-cart__button::before, html body #wpadminbar .button::before,
html body .page-numbers::before, html body .dhm-share::before, html body .dhm-share-icon::before,
html body .dhm-wa::before, html body .mercadopago-button::before,
html body .ab-item::after, html body .skip-link::after, html body .wpcode-button::after,
html body .quantity button::after, html body .wc-block-components-quantity-selector__button::after,
html body .woocommerce-LoopProduct-link::after, html body .navlink::after,
html body .footlink::after, html body .pcard-link::after,
html body .wc-block-mini-cart__button::after, html body #wpadminbar .button::after,
html body .page-numbers::after, html body .dhm-share::after, html body .dhm-share-icon::after,
html body .dhm-wa::after, html body .mercadopago-button::after{
  content:none !important; display:none !important;
}
/* la tarjeta de producto es contenedor: su enlace interno no lleva tratamiento */
html body .pcard-link{ box-shadow:none !important; }

/* -----------------------------------------------------------------------
   E.1) BOTON FLOTANTE DE WHATSAPP - BLINDAJE POSITIVO (v2.9)
   Antes estaba en la lista de EXCLUIDOS con position:static + background:revert.
   Una regla de hoja con !important gana a un inline sin !important, asi que en
   las plantillas de taxonomia (donde el boton lo crea un JS antiguo sin estilos
   inline) el flotante caia al flujo normal, transparente y con el SVG blanco
   sobre fondo blanco: invisible. Aqui se define su forma final, no se "revierte".
   ----------------------------------------------------------------------- */
html body .dhm-wa{
  position:fixed !important;
  right:20px !important; bottom:20px !important; left:auto !important; top:auto !important;
  width:56px !important; height:56px !important;
  border-radius:50% !important;
  background:#25D366 !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
  box-shadow:0 6px 20px rgba(0,0,0,.28) !important;
  z-index:2147483000 !important;
  margin:0 !important; padding:0 !important; border:0 !important;
  color:#fff !important; text-decoration:none !important;
  transform:none !important; isolation:auto !important; overflow:visible !important;
}
html body .dhm-wa:hover{ transform:scale(1.08) !important; }
html body .dhm-wa svg{ width:30px !important; height:30px !important; fill:#fff !important; }
/* si algun script legacy duplicara el boton, solo se ve el primero */
html body .dhm-wa ~ .dhm-wa{ display:none !important; }
@media (max-width:768px){
  html body .dhm-wa{ bottom:84px !important; width:52px !important; height:52px !important; }
  html body .dhm-wa svg{ width:28px !important; height:28px !important; }
}

/* =======================================================================
   F) FAIL-SAFE GLOBAL: nada pierde texto o icono en hover sin has-swap
   ======================================================================= */
html body a:not(.has-swap):hover > span, html body button:not(.has-swap):hover > span,
html body a:not(.has-swap):hover > svg, html body button:not(.has-swap):hover > svg,
html body a:not(.has-swap):hover > b, html body button:not(.has-swap):hover > b{
  opacity:1 !important; visibility:visible !important;
}

/* =======================================================================
   G) MOVIL / ACCESIBILIDAD
   ======================================================================= */
@media (max-width:768px){
  html body .btn, html body .btn-primary, html body .btn-ghost, html body .fpill,
  html body .fopt, html body .addbtn, html body .h3btn,
  html body .single_add_to_cart_button, html body .wp-block-button__link{
    padding:.92em 1.5em; min-height:46px;
  }
  html body .btn::after, html body .btn-primary::after, html body .btn-ghost::after,
  html body .addbtn::after, html body .h3btn::after,
  html body .single_add_to_cart_button::after, html body .wp-block-button__link::after{ content:none; }
  /* barra sticky de compra: ancho completo con relleno solido */
  html body .single-product .single_add_to_cart_button{
    border-radius:0 !important; width:100% !important;
    background:var(--dhm-fill) !important; color:#fff !important;
    box-shadow:none !important; transform:none !important;
  }
  /* la barra conserva ancho completo pero MANTIENE el overlay */
  html body .single-product .single_add_to_cart_button::before{
    content:'' !important; inset:0 !important; border-radius:inherit !important;
  }
}
@media (prefers-reduced-motion:reduce){
  html body .btn, html body .btn::before, html body .soc::before,
  html body .pcard, html body .wp-block-button__link::before{ transition-duration:.01ms !important; }
}

/* =======================================================================
   H) CAPA DE ESPECIFICIDAD MAXIMA (medida en el Gate)
   En el home, reglas locales como .pcard .addbtn (0,2,0) vencian a
   html body .addbtn (0,1,2), dejando el overlay viejo (cobertura 18-39%).
   Se repite la clase para elevar especificidad sin tocar el DOM.
   ======================================================================= */
html body .btn.btn.btn,
html body .btn-primary.btn-primary,
html body .btn-ghost.btn-ghost,
html body .addbtn.addbtn.addbtn,
html body .fpill.fpill,
html body .fopt.fopt,
html body .h3btn.h3btn,
html body .dhm-blogs__all.dhm-blogs__all{
  border-radius:9999px !important;
  border:0 !important;
  background:var(--dhm-surface) !important;
  background-image:none !important;
  color:var(--dhm-ink) !important;
  box-shadow:var(--dhm-neu-out) !important;
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
}
html body .btn.btn.btn::before,
html body .btn-primary.btn-primary::before,
html body .btn-ghost.btn-ghost::before,
html body .addbtn.addbtn.addbtn::before,
html body .fpill.fpill::before,
html body .fopt.fopt::before,
html body .h3btn.h3btn::before,
html body .dhm-blogs__all.dhm-blogs__all::before{
  content:'' !important;
  position:absolute !important;
  inset:0 !important;
  top:0 !important; left:0 !important; right:0 !important; bottom:0 !important;
  width:auto !important; height:auto !important;
  margin:0 !important;
  z-index:-1;
  border-radius:inherit !important;
  background:var(--dhm-slide, var(--dhm-fill)) !important;
  transform:scale(0) !important;
  transform-origin:12% 50% !important;
  transition:transform var(--dhm-speed) cubic-bezier(.4,0,.2,1) !important;
  pointer-events:none;
}
@media (hover:hover) and (pointer:fine){
  html body .btn.btn.btn:hover::before,
  html body .btn-primary.btn-primary:hover::before,
  html body .btn-ghost.btn-ghost:hover::before,
  html body .addbtn.addbtn.addbtn:hover::before,
  html body .fpill.fpill:hover::before,
  html body .fopt.fopt:hover::before,
  html body .h3btn.h3btn:hover::before,
  html body .dhm-blogs__all.dhm-blogs__all:hover::before{ transform:scale(1) !important; }
  html body .btn.btn.btn:hover,
  html body .btn-primary.btn-primary:hover,
  html body .btn-ghost.btn-ghost:hover,
  html body .addbtn.addbtn.addbtn:hover,
  html body .fpill.fpill:hover,
  html body .fopt.fopt:hover,
  html body .h3btn.h3btn:hover{ color:#fff !important; }
}
html body .btn.btn.btn:active::before,
html body .btn-primary.btn-primary:active::before,
html body .addbtn.addbtn.addbtn:active::before,
html body .fpill.fpill:active::before,
html body .h3btn.h3btn:active::before{ transform:scale(1) !important; transition:none !important; }

/* Ficha de producto: mismas firmas con especificidad elevada */
html body .single_add_to_cart_button.single_add_to_cart_button,
html body button.product_type_simple.product_type_simple,
html body .dhm-sticky-cart.dhm-sticky-cart button{
  position:relative !important; isolation:isolate !important; overflow:hidden !important;
  border-radius:9999px !important; border:0 !important;
  background:var(--dhm-surface) !important; background-image:none !important;
  color:var(--dhm-ink) !important; box-shadow:var(--dhm-neu-out) !important;
}
html body .single_add_to_cart_button.single_add_to_cart_button::before,
html body button.product_type_simple.product_type_simple::before,
html body .dhm-sticky-cart.dhm-sticky-cart button::before{
  content:'' !important; position:absolute !important;
  inset:0 !important; top:0 !important; left:0 !important; right:0 !important; bottom:0 !important;
  width:auto !important; height:auto !important; margin:0 !important;
  z-index:-1; border-radius:inherit !important;
  background:var(--dhm-fill) !important;
  transform:scale(0) !important; transform-origin:12% 50% !important;
  transition:transform var(--dhm-speed) cubic-bezier(.4,0,.2,1) !important;
  pointer-events:none;
}
@media (hover:hover) and (pointer:fine){
  html body .single_add_to_cart_button.single_add_to_cart_button:hover::before,
  html body button.product_type_simple.product_type_simple:hover::before,
  html body .dhm-sticky-cart.dhm-sticky-cart button:hover::before{ transform:scale(1) !important; }
  html body .single_add_to_cart_button.single_add_to_cart_button:hover,
  html body button.product_type_simple.product_type_simple:hover{ color:#fff !important; }
}
html body .single_add_to_cart_button.single_add_to_cart_button:active::before,
html body button.product_type_simple.product_type_simple:active::before{ transform:scale(1) !important; transition:none !important; }


/* Ficha de producto: especificidad por encima de .single-product .x (0,2,2) */
html body .single_add_to_cart_button.single_add_to_cart_button.single_add_to_cart_button::before,
html body button.product_type_simple.product_type_simple.product_type_simple::before,
html body .dhm-sticky-cart.dhm-sticky-cart button::before{
  content:'' !important; position:absolute !important;
  inset:0 !important; top:0 !important; left:0 !important; right:0 !important; bottom:0 !important;
  width:auto !important; height:auto !important; margin:0 !important;
  z-index:-1; border-radius:inherit !important;
  background:var(--dhm-fill) !important;
  transform:scale(0) !important; transform-origin:12% 50% !important;
  transition:transform var(--dhm-speed) cubic-bezier(.4,0,.2,1) !important;
  pointer-events:none;
}
@media (hover:hover) and (pointer:fine){
  html body .single_add_to_cart_button.single_add_to_cart_button.single_add_to_cart_button:hover::before,
  html body button.product_type_simple.product_type_simple.product_type_simple:hover::before,
  html body .dhm-sticky-cart.dhm-sticky-cart button:hover::before{ transform:scale(1) !important; }
}
html body .single_add_to_cart_button.single_add_to_cart_button.single_add_to_cart_button:active::before,
html body button.product_type_simple.product_type_simple.product_type_simple:active::before{
  transform:scale(1) !important; transition:none !important;
}

/* =======================================================================
   v2.4 - I) ANULACION DE SOMBRAS BLANCAS POR CONTEXTO (no por elemento)
   Reincidencia x3: se parcheaba elemento por elemento. Ahora la regla es de
   ANCESTRO: dentro de cualquier contenedor oscuro o de color, NINGUN
   descendiente puede llevar sombra con componente blanco.
   Contextos: footer global, footer local, paneles navy/azules declarados
   inline, gradientes, banner B2B, tarjetas de ayuda WhatsApp.
   ======================================================================= */
html body footer *,
html body .dhm-foot *,
html body .foot *,
html body [style*="background:#001F3F"] *,
html body [style*="background: #001F3F"] *,
html body [style*="background:#0B2A4A"] *,
html body [style*="background:#1F9BD7"] *,
html body [style*="background: #1F9BD7"] *,
html body [style*="linear-gradient"] *,
html body .dhm-on-color, html body .dhm-on-color *,
html body .b2b-banner *, html body .dhm-wa-card *{
  box-shadow:none !important;
}
/* elevacion permitida en esos contextos: sombra oscura sutil */
html body footer .btn, html body .dhm-foot .btn, html body .foot .btn,
html body footer .soc, html body .dhm-foot .soc, html body .foot .soc,
html body footer .wp-block-button__link,
html body [style*="background:#001F3F"] .btn,
html body [style*="background:#0B2A4A"] .btn,
html body [style*="background:#1F9BD7"] .btn,
html body [style*="linear-gradient"] .btn,
html body .b2b-banner .btn, html body .dhm-wa-card .btn{
  box-shadow:var(--dhm-on-color) !important;
}
/* iconos de redes en footer: superficie translucida, sin halo */
html body footer .soc, html body .dhm-foot .soc, html body .foot .soc{
  background:rgba(255,255,255,.10) !important;
  border:1px solid rgba(255,255,255,.22) !important;
  color:#EAF3FA !important;
}
html body footer .soc:hover, html body .dhm-foot .soc:hover, html body .foot .soc:hover{
  background:var(--dhm-fill) !important;
  border-color:var(--dhm-fill) !important;
}
html body footer .soc::before, html body .dhm-foot .soc::before, html body .foot .soc::before{
  background:var(--dhm-fill) !important;
}

/* J) CHIPS EN COLUMNA (sidebar de tienda): sin solaparse */
html body .fpill, html body .fopt{ margin:0 0 4px 0; }
html body .shop-sidebar .fpill, html body .shop-sidebar .fopt,
html body .dhm-filters .fpill, html body .dhm-cats .fpill,
html body .sidebar .fpill{
  display:flex !important;
  width:100%;
  margin-bottom:14px !important;
  box-shadow:3px 3px 8px rgba(163,177,198,.45), -3px -3px 8px rgba(255,255,255,.85) !important;
}
html body .shop-sidebar, html body .dhm-cats, html body .dhm-filters{
  display:flex; flex-direction:column; gap:14px;
}

/* K) MI CUENTA: area completa dentro del sistema */
html body.woocommerce-account .woocommerce{ font-family:'Manrope',system-ui,sans-serif; }
html body.woocommerce-account .woocommerce-MyAccount-navigation{
  background:var(--dhm-surface) !important;
  border-radius:22px !important;
  box-shadow:var(--dhm-neu-out) !important;
  padding:14px !important;
  border:0 !important;
}
html body.woocommerce-account .woocommerce-MyAccount-navigation ul{ list-style:none; margin:0; padding:0; }
html body.woocommerce-account .woocommerce-MyAccount-navigation li{ margin:0 0 8px 0; }
html body.woocommerce-account .woocommerce-MyAccount-navigation li a{
  display:block; padding:.7em 1.1em;
  border-radius:9999px !important;
  color:var(--dhm-ink) !important;
  text-decoration:none; font-weight:600;
  background:transparent !important;
  transition:background var(--dhm-speed) ease, color var(--dhm-speed) ease;
}
html body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
html body.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{
  background:var(--dhm-fill) !important; color:#fff !important;
}
html body.woocommerce-account .woocommerce-MyAccount-content{
  background:var(--dhm-surface) !important;
  border-radius:22px !important;
  box-shadow:var(--dhm-neu-out) !important;
  padding:22px !important;
  border:0 !important;
}
html body.woocommerce-account input[type=text],
html body.woocommerce-account input[type=email],
html body.woocommerce-account input[type=password],
html body.woocommerce-account input[type=tel],
html body.woocommerce-account select,
html body.woocommerce-account textarea{
  border-radius:14px !important;
  border:0 !important;
  background:#fff !important;
  box-shadow:var(--dhm-neu-in) !important;
  padding:.7em .9em !important;
}

/* L) MINI-CART DRAWER: contraste AA y radios del sistema */
html body .wc-block-mini-cart__drawer,
html body .wc-block-components-drawer,
html body .wc-block-mini-cart__template-part{
  font-family:'Manrope',system-ui,sans-serif;
}
html body .wc-block-mini-cart__drawer .wc-block-components-button:not(.is-link),
html body .wc-block-components-drawer .wc-block-components-button:not(.is-link),
html body .wp-block-woocommerce-mini-cart-checkout-button-block a,
html body .wp-block-woocommerce-mini-cart-cart-button-block a{
  border-radius:9999px !important;
  background:var(--dhm-fill) !important;
  color:#fff !important;              /* AA sobre azul */
  border:0 !important;
  box-shadow:none !important;
  font-weight:700 !important;
  padding:.85em 1.5em !important;
}
html body .wp-block-woocommerce-mini-cart-cart-button-block a{
  background:var(--dhm-surface) !important;
  color:var(--dhm-ink) !important;    /* AA sobre claro */
  box-shadow:var(--dhm-neu-soft) !important;
}
html body .wc-block-mini-cart__drawer *,
html body .wc-block-components-drawer *{ color:var(--dhm-ink); }
html body .wc-block-mini-cart__products-table .wc-block-cart-items__row,
html body .wc-block-components-product-metadata,
html body .wc-block-mini-cart__items{ border-radius:16px !important; }
html body .wc-block-mini-cart__drawer img,
html body .wc-block-cart-item__image img{ border-radius:14px !important; }

/* M) HOME: completar recuadros y botones de compra de tarjetas */
html body .pcard .pbuy, html body .pcard .pact .pbuy,
html body .rating, html body .prow .rating{
  border-radius:9999px !important;
}
html body .pcard .pact{ gap:10px; }
html body .rating{
  background:rgba(255,255,255,.7) !important;
  box-shadow:2px 2px 6px rgba(163,177,198,.35), -2px -2px 6px rgba(255,255,255,.9) !important;
  padding:3px 10px !important;
}
html body .pstage, html body .pcard .pstage{
  border-radius:18px !important;
  
}

/* =======================================================================
   v2.4.1 - CONTEXTOS OSCUROS QUE FALTABAN (detectados por luminancia,
   incluyendo fondos con degradado, que antes escapaban al detector)
   .asidecta  = tarjeta azul de WhatsApp en el sidebar de tienda
   .corp      = banner corporativo (home)
   .aeo-cta   = CTA de los articulos del blog
   ======================================================================= */
html body .asidecta, html body .asidecta *,
html body .corp, html body .corp *,
html body .reveal.corp, html body .reveal.corp *,
html body .aeo-cta, html body .aeo-cta *,
html body [class*="banner"], html body [class*="banner"] *,
html body [class*="-cta"], html body [class*="-cta"] *,
html body [class*="cta-"], html body [class*="cta-"] *{
  box-shadow:none !important;
}
/* elevacion permitida en esos contextos: plana y oscura */
html body .asidecta .btn, html body .asidecta .wp-block-button__link,
html body .corp .btn, html body .reveal.corp .btn,
html body .aeo-cta, html body .aeo-cta .btn,
html body [class*="banner"] .btn,
html body [class*="-cta"] .btn, html body [class*="cta-"] .btn{
  box-shadow:var(--dhm-on-color) !important;
}
html body .asidecta .btn:hover, html body .corp .btn:hover,
html body .reveal.corp .btn:hover, html body [class*="banner"] .btn:hover{
  box-shadow:0 4px 14px rgba(0,0,0,.34) !important;
}
html body .asidecta .btn:active, html body .corp .btn:active,
html body .reveal.corp .btn:active{
  box-shadow:inset 0 2px 8px rgba(0,0,0,.4) !important;
}

/* =======================================================================
   v2.5 - BLINDAJE DEL FOOTER Y REMATES
   El footer era unico en markup pero el CSS historico del home lo repintaba
   (links en azul por defecto rgb(0,0,238), gap de iconos 0). Se retiraron
   esas reglas locales y aqui se blinda con scope fuerte para que ninguna
   pagina pueda volver a pisarlo.
   ======================================================================= */
html body footer.wp-block-template-part,
html body footer .foot,
html body .dhm-foot{
  color:#EAF3FA !important;
  font-family:'Manrope',system-ui,sans-serif !important;
}
html body footer.wp-block-template-part a,
html body footer.wp-block-template-part a:link,
html body footer.wp-block-template-part a:visited,
html body footer .footlink,
html body .dhm-foot a, html body .dhm-foot a:link, html body .dhm-foot a:visited{
  color:#C8DCEC !important;
  text-decoration:none !important;
}
html body footer.wp-block-template-part a:hover,
html body footer .footlink:hover,
html body .dhm-foot a:hover{ color:#FFFFFF !important; }
html body footer.wp-block-template-part h2,
html body footer.wp-block-template-part h3,
html body footer.wp-block-template-part h4,
html body .dhm-foot h4{ color:#FFFFFF !important; }
/* iconos sociales: separacion garantizada */
html body footer .soc-wrap, html body footer .socials, html body .dhm-foot .soc-wrap,
html body footer .foot-soc, html body .dhm-foot .foot-soc{
  display:flex !important; gap:14px !important; flex-wrap:wrap;
}
html body footer .soc, html body .dhm-foot .soc{
  margin:0 14px 14px 0 !important;   /* separacion aunque el padre no sea flex */
  width:40px !important; height:40px !important;
}
html body footer .soc:last-child, html body .dhm-foot .soc:last-child{ margin-right:0 !important; }

/* 2) BUSCADOR pill + BADGE circular anclado */
html body .searchbox, html body .search-field, html body input[type=search],
html body .wp-block-search__input, html body .dhm-search input{
  border-radius:9999px !important;
  border:0 !important;
  background:var(--dhm-surface) !important;
  box-shadow:var(--dhm-neu-in) !important;
  padding:.7em 1.2em !important;
}
html body .wp-block-search__button, html body .dhm-search button{
  border-radius:9999px !important; border:0 !important;
}
html body .cart-count, html body .dhm-tab-count, html body .wc-block-mini-cart__badge{
  border-radius:9999px !important;
  min-width:18px !important; height:18px !important;
  padding:0 5px !important;
  font-size:11px !important; line-height:18px !important;
  text-align:center !important;
  box-shadow:none !important;
}
html body .searchbox, html body .dhm-search{ box-shadow:none !important; }

/* 3) CHIPS: sombra corta y direccional, sin pintarse sobre el vecino */
html body .fpill, html body .fopt{
  box-shadow:3px 4px 7px rgba(163,177,198,.45) !important;
  position:relative; z-index:1;
}
html body .fpill:hover, html body .fopt:hover{ z-index:3; }
html body .shop-sidebar .fpill, html body .shop-sidebar .fopt,
html body .dhm-cats .fpill, html body .dhm-filters .fopt{
  margin-bottom:16px !important;
}

/* 4) HOME: recuadros restantes al sistema */
html body .valcard, html body .dhm-valcard, html body .revcard, html body .dhm-rev-card,
html body .testicard, html body .statcard, html body .trustcard, html body .stepcard,
html body .infobox, html body .databox, html body .aeo-box, html body .guidecard{
  background:var(--dhm-surface) !important;
  border:0 !important;
  border-radius:22px !important;
  box-shadow:var(--dhm-neu-out) !important;
}

/* 5) MI CUENTA: cobertura del interior (autenticado) */
html body.woocommerce-account .woocommerce-MyAccount-content table,
html body.woocommerce-account .woocommerce-orders-table,
html body.woocommerce-account .woocommerce-Address,
html body.woocommerce-account .woocommerce-address-fields,
html body.woocommerce-account .woocommerce-EditAccountForm,
html body.woocommerce-account .woocommerce-Message,
html body.woocommerce-account .woocommerce-info,
html body.woocommerce-account .woocommerce-error{
  background:var(--dhm-surface) !important;
  border:0 !important;
  border-radius:18px !important;
  box-shadow:var(--dhm-neu-soft) !important;
  padding:14px !important;
}
html body.woocommerce-account .woocommerce-orders-table th,
html body.woocommerce-account .woocommerce-orders-table td{ border:0 !important; }
html body.woocommerce-account .woocommerce-Address-title a,
html body.woocommerce-account .woocommerce-MyAccount-content a.button,
html body.woocommerce-account .woocommerce-MyAccount-content button{
  border-radius:9999px !important;
  background:var(--dhm-surface) !important;
  color:var(--dhm-ink) !important;
  box-shadow:var(--dhm-neu-out) !important;
  border:0 !important;
}
html body.woocommerce-account .woocommerce-form-login,
html body.woocommerce-account .woocommerce-form-register{
  background:var(--dhm-surface) !important;
  border:0 !important; border-radius:22px !important;
  box-shadow:var(--dhm-neu-out) !important; padding:22px !important;
}

/* =======================================================================
   v2.5.1 - REMATES CON SELECTORES REALES (medidos en el DOM servido)
   Los tres fallaban por usar selectores supuestos:
   - No existe input de busqueda en el header: la busqueda es un .iconbtn.
   - El badge real es .wc-block-mini-cart__badge / __quantity-badge, que MI
     PROPIA regla de exclusion del mini-cart dejaba en radius 0.
   - Las tarjetas de valoraciones son .tcard (no valcard/revcard).
   ======================================================================= */

/* (1) BUSCADOR del header: es un boton de icono -> pill/circulo del sistema */
html body .iconbtn[aria-label*="usca"], html body .iconbtn[title*="usca"],
html body .searchbtn, html body .iconbtn.search, html body .dhm-search-btn,
html body .nav .iconbtn, html body .dhm-head .iconbtn{
  border-radius:9999px !important;
  background:var(--dhm-surface) !important;
  box-shadow:var(--dhm-neu-soft) !important;
  border:0 !important;
}
/* si aparece un campo de busqueda (overlay/desplegable) */
html body .searchbox, html body .search-field, html body input[type=search],
html body .wp-block-search__input, html body .dhm-search input,
html body form[role=search] input{
  border-radius:9999px !important;
  border:0 !important;
  background:var(--dhm-surface) !important;
  box-shadow:var(--dhm-neu-in) !important;
  padding:.7em 1.2em !important;
}

/* (2) BADGE del carrito: el real es el del mini-cart de Woo.
   Se excluye explicitamente de la regla de exclusion del mini-cart. */
html body .wc-block-mini-cart__badge,
html body .wc-block-mini-cart__quantity-badge,
html body .wc-block-mini-cart__button .wc-block-mini-cart__badge,
html body .cart-count, html body .dhm-tab-count{
  border-radius:9999px !important;
  min-width:18px !important;
  height:18px !important;
  padding:0 5px !important;
  font-size:11px !important;
  line-height:18px !important;
  text-align:center !important;
  box-shadow:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}
html body .cart-count[hidden], html body .dhm-tab-count[hidden]{ display:none !important; }

/* (3) VALORACIONES del home: el selector real es .tcard */
html body .tcard{
  background:var(--dhm-surface) !important;
  border:0 !important;
  border-radius:22px !important;
  box-shadow:var(--dhm-neu-out) !important;
  padding:18px !important;
}
html body .tcard .tav{
  border-radius:9999px !important;
  box-shadow:var(--dhm-neu-soft) !important;
}
html body .tcard .rating{
  background:transparent !important;
  box-shadow:none !important;
  padding:0 !important;
}
@media (hover:hover) and (pointer:fine){
  html body .tcard:hover{
    box-shadow:8px 8px 18px rgba(163,177,198,.6), -8px -8px 18px rgba(255,255,255,.95) !important;
  }
}

/* v2.5.1 (b) MI CUENTA: firmas reales medidas en el DOM.
   El boton de login es .woocommerce-Button (no estaba en el inventario) y
   computaba r=0 con fondo negro; los inputs no tomaban el relieve. */
html body.woocommerce-account .woocommerce-Button,
html body .woocommerce-Button,
html body .woocommerce-form-login button,
html body .woocommerce-form-register button,
html body .woocommerce-form-login .button,
html body button[name="login"], html body button[name="register"]{
  border-radius:9999px !important;
  background:var(--dhm-surface) !important;
  background-image:none !important;
  color:var(--dhm-ink) !important;
  border:0 !important;
  box-shadow:var(--dhm-neu-out) !important;
  font-family:'Manrope',system-ui,sans-serif !important;
  font-weight:600 !important;
  padding:.85em 1.7em !important;
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
}
html body .woocommerce-Button::before,
html body .woocommerce-form-login button::before,
html body button[name="login"]::before{
  content:'' !important; position:absolute !important; inset:0 !important;
  z-index:-1; border-radius:inherit !important;
  background:var(--dhm-fill) !important;
  transform:scale(0); transform-origin:12% 50%;
  transition:transform var(--dhm-speed) cubic-bezier(.4,0,.2,1);
  pointer-events:none;
}
@media (hover:hover) and (pointer:fine){
  html body .woocommerce-Button:hover::before,
  html body .woocommerce-form-login button:hover::before,
  html body button[name="login"]:hover::before{ transform:scale(1) !important; }
  html body .woocommerce-Button:hover,
  html body .woocommerce-form-login button:hover{ color:#fff !important; }
}
/* inputs del area de cuenta: relieve y radio del sistema */
html body.woocommerce-account input[type=text],
html body.woocommerce-account input[type=email],
html body.woocommerce-account input[type=password],
html body.woocommerce-account input[type=tel],
html body .woocommerce-form-login input,
html body .woocommerce-form-register input{
  border-radius:14px !important;
  border:0 !important;
  background:#fff !important;
  box-shadow:var(--dhm-neu-in) !important;
  padding:.7em .9em !important;
  font-family:'Manrope',system-ui,sans-serif !important;
}
html body .woocommerce-form-login, html body .woocommerce-form-register,
html body.woocommerce-account .woocommerce{
  font-family:'Manrope',system-ui,sans-serif !important;
}

/* v2.6.1 - ADD TO CART DE FICHA: el radius 0 lo fuerza
   .single-product .single_add_to_cart_button{border-radius:0!important}
   (regla del tema, fuera de media query). Se supera con mas especificidad. */
html body.single-product .woocommerce div.product form.cart button.single_add_to_cart_button,
html body.single-product form.cart button.single_add_to_cart_button,
html body .single-product form.cart .single_add_to_cart_button,
html body .single-product .single_add_to_cart_button.button.alt,
html body .single-product .single_add_to_cart_button.single_add_to_cart_button{
  border-radius:9999px !important;
  border:0 !important;
  background:var(--dhm-surface) !important;
  color:var(--dhm-ink) !important;
  box-shadow:var(--dhm-neu-out) !important;
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
}
@media (max-width:768px){
  /* en movil la barra sigue a ancho completo, pero con esquinas del sistema */
  html body .single-product form.cart .single_add_to_cart_button,
  html body .single-product .single_add_to_cart_button.single_add_to_cart_button{
    border-radius:9999px !important;
    width:calc(100% - 24px) !important;
    margin:0 12px 12px !important;
    background:var(--dhm-fill) !important;
    color:#fff !important;
  }
}

/* =======================================================================
   v2.7 - SKIN PROFUNDO WOO (mi cuenta, carrito, checkout)
   Cero transicion de diseno perceptible entre paginas.
   NO se toca logica, names, ids ni MercadoPago: solo presentacion.
   ======================================================================= */

/* --- CAMPOS: una sola gramatica en las 3 paginas --- */
html body.woocommerce-account input:not([type=checkbox]):not([type=radio]):not([type=submit]),
html body.woocommerce-cart input:not([type=checkbox]):not([type=radio]):not([type=submit]),
html body.woocommerce-checkout input:not([type=checkbox]):not([type=radio]):not([type=submit]),
html body.woocommerce-account select, html body.woocommerce-cart select,
html body.woocommerce-checkout select,
html body.woocommerce-account textarea, html body.woocommerce-checkout textarea,
html body .wc-block-components-text-input input,
html body .wc-block-components-select select,
html body .wc-block-components-textarea{
  border-radius:13px !important;
  border:1px solid #D8E3EC !important;
  background:#FFFFFF !important;
  color:var(--dhm-ink) !important;
  min-height:46px !important;
  padding:.7em 1em !important;
  font-family:'Manrope',system-ui,sans-serif !important;
  font-size:15px !important;
  box-shadow:none !important;
  outline:0 !important;
  transition:border-color .2s ease, box-shadow .2s ease !important;
}
html body.woocommerce-account input:focus, html body.woocommerce-cart input:focus,
html body.woocommerce-checkout input:focus, html body.woocommerce-checkout select:focus,
html body .wc-block-components-text-input input:focus{
  border-color:var(--dhm-fill) !important;
  box-shadow:0 0 0 3px rgba(31,155,215,.18) !important;
}
html body.woocommerce-account label, html body.woocommerce-cart label,
html body.woocommerce-checkout label,
html body .wc-block-components-checkout-step__title{
  font-family:'Manrope',system-ui,sans-serif !important;
  color:var(--dhm-ink) !important;
  font-weight:600 !important;
}

/* --- BOTONES INTERNOS: pill del sistema, sin excepciones --- */
html body.woocommerce-account .button, html body.woocommerce-cart .button,
html body.woocommerce-checkout .button,
html body.woocommerce-account button, html body.woocommerce-cart button,
html body.woocommerce-checkout button:not(.wc-block-components-quantity-selector__button),
html body .woocommerce-cart-form .button, html body .coupon .button,
html body button[name="apply_coupon"], html body button[name="update_cart"],
html body #place_order, html body .checkout-button,
html body.woocommerce-account .woocommerce-Button{
  border-radius:9999px !important;
  border:0 !important;
  background:var(--dhm-surface) !important;
  background-image:none !important;
  color:var(--dhm-ink) !important;
  box-shadow:var(--dhm-neu-out) !important;
  font-family:'Manrope',system-ui,sans-serif !important;
  font-weight:600 !important;
  min-height:46px !important;
  padding:.8em 1.6em !important;
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
  transition:color var(--dhm-speed) ease, box-shadow var(--dhm-speed) ease !important;
}
/* CTA primarios en azul solido para jerarquia */
html body #place_order, html body .checkout-button,
html body .wc-block-cart__submit-button,
html body .wc-block-components-checkout-place-order-button{
  background:var(--dhm-fill) !important;
  color:#FFFFFF !important;
  box-shadow:0 4px 14px rgba(31,155,215,.32) !important;
}
html body.woocommerce-account .button:hover, html body.woocommerce-cart .button:hover,
html body.woocommerce-checkout .button:hover, html body button[name="apply_coupon"]:hover,
html body button[name="update_cart"]:hover{
  color:#FFFFFF !important;
  background:var(--dhm-fill) !important;
}

/* --- CARRITO: tabla como card limpia --- */
html body.woocommerce-cart .woocommerce-cart-form,
html body.woocommerce-cart .cart_totals,
html body .wc-block-cart-items, html body .wp-block-woocommerce-cart-order-summary-block{
  background:#FFFFFF !important;
  border:1px solid #E8EEF4 !important;
  border-radius:20px !important;
  box-shadow:0 2px 12px rgba(163,177,198,.22) !important;
  padding:18px !important;
}
html body.woocommerce-cart table.shop_table,
html body.woocommerce-cart table.shop_table td,
html body.woocommerce-cart table.shop_table th{
  border:0 !important;
  border-collapse:separate !important;
  background:transparent !important;
}
html body.woocommerce-cart table.shop_table td,
html body.woocommerce-cart table.shop_table th{ padding:16px 12px !important; }
html body.woocommerce-cart table.shop_table tbody tr{
  border-bottom:1px solid #EEF3F8 !important;
}
html body.woocommerce-cart .product-thumbnail img,
html body .wc-block-cart-item__image img{ border-radius:14px !important; }

/* --- CHECKOUT: secciones como cards --- */
html body.woocommerce-checkout .woocommerce-billing-fields,
html body.woocommerce-checkout .woocommerce-shipping-fields,
html body.woocommerce-checkout .woocommerce-additional-fields,
html body.woocommerce-checkout #order_review,
html body.woocommerce-checkout .woocommerce-checkout-review-order,
html body .wp-block-woocommerce-checkout-fields-block,
html body .wp-block-woocommerce-checkout-totals-block{
  background:#FFFFFF !important;
  border:1px solid #E8EEF4 !important;
  border-radius:20px !important;
  box-shadow:0 2px 12px rgba(163,177,198,.22) !important;
  padding:20px !important;
  margin-bottom:18px !important;
}
html body.woocommerce-checkout h3, html body.woocommerce-cart h2,
html body.woocommerce-account h2, html body.woocommerce-account h3{
  font-family:'Manrope',system-ui,sans-serif !important;
  color:var(--dhm-ink) !important;
}
html body.woocommerce-checkout #payment,
html body.woocommerce-checkout .wc_payment_methods{
  background:transparent !important; border:0 !important;
}
html body.woocommerce-checkout .wc_payment_method label{ font-weight:600 !important; }

/* --- MI CUENTA: nav como pills --- */
html body.woocommerce-account .woocommerce-MyAccount-navigation ul{
  display:flex !important; flex-wrap:wrap !important; gap:10px !important;
  list-style:none !important; margin:0 0 20px !important; padding:0 !important;
}
html body.woocommerce-account .woocommerce-MyAccount-navigation li{ margin:0 !important; }
html body.woocommerce-account .woocommerce-MyAccount-navigation li a{
  display:inline-flex !important; align-items:center !important;
  border-radius:9999px !important;
  padding:.6em 1.2em !important;
  background:var(--dhm-surface) !important;
  color:var(--dhm-ink) !important;
  box-shadow:var(--dhm-neu-soft) !important;
  font-weight:600 !important; text-decoration:none !important;
  font-family:'Manrope',system-ui,sans-serif !important;
}
html body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
html body.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{
  background:var(--dhm-fill) !important; color:#FFFFFF !important;
}

/* --- NOTICES DE WOO --- */
html body .woocommerce-message, html body .woocommerce-info,
html body .woocommerce-error, html body .wc-block-components-notice-banner{
  border-radius:16px !important;
  border:1px solid #E8EEF4 !important;
  border-left:4px solid var(--dhm-fill) !important;
  background:#FFFFFF !important;
  box-shadow:0 2px 10px rgba(163,177,198,.2) !important;
  font-family:'Manrope',system-ui,sans-serif !important;
  color:var(--dhm-ink) !important;
}
html body .woocommerce-error{ border-left-color:#E53E3E !important; }

/* --- 2) CHIPS: imposible percibir montaje --- */
html body .fpill, html body .fopt{
  box-shadow:0 2px 6px rgba(163,177,198,.35) !important;
  border:1px solid #E3EAF1 !important;
  margin:0 10px 18px 0 !important;
}
html body .shop-sidebar .fpill, html body .shop-sidebar .fopt,
html body .dhm-cats .fpill, html body .dhm-filters .fopt{
  margin:0 0 18px 0 !important;
}
html body .shop-sidebar, html body .dhm-cats, html body .dhm-filters{
  display:flex !important; flex-direction:column !important; gap:18px !important;
}

/* --- 3) BUSCADOR: UNA sola caja visual --- */
html body .searchbox, html body .dhm-search, html body form[role=search],
html body .wp-block-search__inside-wrapper{
  display:flex !important; align-items:center !important; gap:8px !important;
  max-width:280px !important; width:100% !important;
  height:42px !important; min-height:42px !important;
  padding:0 14px !important;
  border-radius:9999px !important;
  border:1px solid #D8E3EC !important;
  background:var(--dhm-surface) !important;
  box-shadow:none !important;
  overflow:hidden !important;
}
html body .searchbox input, html body .dhm-search input,
html body form[role=search] input, html body .wp-block-search__input{
  flex:1 1 auto !important;
  background:transparent !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  height:100% !important; min-height:0 !important;
  padding:0 !important; margin:0 !important;
  font-family:'Manrope',system-ui,sans-serif !important;
  font-size:14px !important;
  color:var(--dhm-ink) !important;
}
html body .searchbox button, html body .dhm-search button,
html body form[role=search] button, html body .wp-block-search__button{
  flex:0 0 auto !important;
  background:transparent !important;
  border:0 !important; box-shadow:none !important;
  padding:0 !important; margin:0 !important;
  min-height:0 !important; height:auto !important;
  color:var(--dhm-ink) !important;
}

/* =======================================================================
   v2.10 - MI CUENTA (deslogueado): 4 fallos medidos + REGLA PERMANENTE
   de MICRO-CONTROLES. Todo verificado por computed, no por markup.

   Medicion previa (1440x1200, /mi-cuenta/ anonimo):
     button.show-password-input -> 411x46, r=9999px, min-height 46px,
       padding 12.8/25.6, sombra neumorfica  => pildora gigante sobre Recuerdame
     button[name=register]      -> background rgb(0,168,150) = #00A896 (verde)
     .u-column2                 -> border-top 4px rgb(0,168,150)
     ambos botones              -> text-transform: uppercase
     button.iconbtn.cartbtn     -> 43x46 con padding 21.33px lateral =>
       el svg .ic computa width 0 => circulo sin glifo
   ======================================================================= */

/* -----------------------------------------------------------------------
   v2.10.1 REGLA PERMANENTE DEL INVENTARIO:
   los MICRO-CONTROLES nunca heredan la pildora del sistema.
   Un micro-control es un boton sin etiqueta cuyo trabajo es operar otro
   control (ojo de contrasena, cerrar, cantidad, quitar, toggles).
   ----------------------------------------------------------------------- */
html body .show-password-input,
html body button.show-password-input,
html body .woocommerce .show-password-input,
html body .quantity button,
html body .wc-block-components-quantity-selector__button,
html body button.close, html body .modal-close, html body .dhm-close,
html body [class*="__remove"], html body .remove,
html body button[aria-label*="ontrase"], html body button[aria-label*="assword"]{
  border-radius:6px !important;
  background:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  border:0 !important;
  min-height:0 !important;
  min-width:0 !important;
  padding:0 !important;
  margin:0 !important;
  isolation:auto !important;
  overflow:visible !important;
  transform:none !important;
  font-size:inherit !important;
}
html body .show-password-input::before, html body .quantity button::before,
html body .wc-block-components-quantity-selector__button::before,
html body button.close::before, html body [class*="__remove"]::before{
  content:none !important; display:none !important;
}

/* el ojo: boton pequeno DENTRO del input, no debajo */
html body .woocommerce .password-input,
html body.woocommerce-account .password-input,
html body .woocommerce-page .password-input{
  position:relative !important;
  display:block !important;
  width:100% !important;
}
html body .woocommerce .password-input input,
html body.woocommerce-account .password-input input{
  padding-right:44px !important;
  width:100% !important;
}
html body .woocommerce .password-input .show-password-input,
html body.woocommerce-account .password-input .show-password-input,
html body .woocommerce-page .password-input .show-password-input{
  position:absolute !important;
  right:10px !important;
  top:50% !important;
  left:auto !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
  width:22px !important;
  height:22px !important;
  max-width:22px !important;
  max-height:22px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  box-shadow:none !important;
  border-radius:4px !important;
  color:#7A8794 !important;
  cursor:pointer !important;
  z-index:3 !important;
}
/* el glifo del ojo lo pinta WooCommerce en ::after: no se toca su content */
html body .show-password-input::after{
  display:inline-block !important;
  line-height:1 !important;
  font-size:16px !important;
}
html body .show-password-input.display-password{ color:var(--dhm-fill) !important; }

/* -----------------------------------------------------------------------
   v2.10.2 ICON-ONLY AUTORITATIVO: el pill de .woocommerce-account button
   estaba aplastando el svg del carrito. Geometria fija, padding cero.
   ----------------------------------------------------------------------- */
html body .iconbtn, html body .cartbtn, html body .navburger,
html body.woocommerce-account .iconbtn, html body.woocommerce-account .cartbtn,
html body.woocommerce-cart .iconbtn, html body.woocommerce-checkout .iconbtn,
html body.woocommerce-account button.iconbtn, html body.woocommerce-account button.cartbtn{
  width:44px !important; height:44px !important;
  min-width:44px !important; min-height:44px !important;
  max-width:44px !important; max-height:44px !important;
  padding:0 !important;
  flex:0 0 44px !important;
  line-height:1 !important;
  overflow:visible !important;
  border-radius:50% !important;
}
html body .soc{
  width:40px !important; height:40px !important;
  min-width:40px !important; min-height:40px !important;
  padding:0 !important; flex:0 0 40px !important; line-height:1 !important;
}
/* el glifo nunca se encoge ni se recorta */
html body .iconbtn svg, html body .cartbtn svg, html body .navburger svg,
html body .soc svg, html body .iconbtn .ic, html body .cartbtn .ic{
  width:20px !important; height:20px !important;
  min-width:20px !important; min-height:20px !important;
  flex:0 0 auto !important;
  display:block !important;
  opacity:1 !important; visibility:visible !important;
  fill:none !important; stroke:currentColor !important; stroke-width:1.8 !important;
  stroke-linecap:round !important; stroke-linejoin:round !important;
}
html body .soc svg{ fill:currentColor !important; stroke:none !important; }
/* el ::before del hover no puede taparlo */
html body .iconbtn::before, html body .cartbtn::before, html body .navburger::before{ z-index:0 !important; }
html body .iconbtn > *, html body .cartbtn > *, html body .navburger > *{ position:relative; z-index:1; }
/* badge anclado al icono, nunca recortado */
html body .cartbtn{ overflow:visible !important; }
html body .cartbtn .cart-count{
  position:absolute !important;
  top:-3px !important; right:-3px !important; left:auto !important; bottom:auto !important;
  width:auto !important; min-width:17px !important; height:17px !important;
  padding:0 4px !important;
  border-radius:9999px !important;
  background:#E53E3E !important; color:#fff !important;
  font-size:10px !important; font-weight:700 !important; line-height:17px !important;
  text-align:center !important; box-shadow:0 0 0 2px #fff !important;
  z-index:2 !important;
}
html body .cartbtn .cart-count[hidden]{ display:none !important; }

/* -----------------------------------------------------------------------
   v2.10.3 MI CUENTA: fuera el verde #00A896 y fuera las mayusculas.
   El verde lo inyecta un bloque legacy con especificidad (0,5,0)!important;
   estas reglas lo superan con (0,5,2).
   ----------------------------------------------------------------------- */
html body.woocommerce-account .woocommerce .col2-set .u-column1 .button,
html body.woocommerce-account .woocommerce .col2-set .u-column2 .button,
html body.woocommerce-account .woocommerce .col2-set .u-column1 button:not(.show-password-input),
html body.woocommerce-account .woocommerce .col2-set .u-column2 button:not(.show-password-input),
html body.woocommerce-account .woocommerce-form-login__submit,
html body.woocommerce-account button[name="login"],
html body.woocommerce-account button[name="register"]{
  background:var(--dhm-fill) !important;
  background-image:none !important;
  color:#FFFFFF !important;
  border:0 !important;
  border-radius:9999px !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  font-family:'Manrope',system-ui,sans-serif !important;
  font-size:15px !important;
  font-weight:700 !important;
  min-height:48px !important;
  height:48px !important;
  padding:0 22px !important;
  width:100% !important;
  box-shadow:0 8px 20px rgba(31,155,215,.28) !important;
}
html body.woocommerce-account .woocommerce .col2-set .u-column1 .button:not(.show-password-input):hover,
html body.woocommerce-account .woocommerce .col2-set .u-column2 .button:not(.show-password-input):hover,
html body.woocommerce-account button[name="login"]:hover,
html body.woocommerce-account button[name="register"]:hover{
  background:#177FB0 !important;
  color:#FFFFFF !important;
  box-shadow:0 10px 24px rgba(31,155,215,.38) !important;
}
html body.woocommerce-account .woocommerce .col2-set .u-column1 button::before,
html body.woocommerce-account .woocommerce .col2-set .u-column2 button::before,
html body.woocommerce-account button[name="login"]::before,
html body.woocommerce-account button[name="register"]::before{ content:none !important; display:none !important; }
/* las dos tarjetas, neutras y simetricas: sin borde de color */
html body.woocommerce-account .woocommerce .col2-set .u-column1,
html body.woocommerce-account .woocommerce .col2-set .u-column2{
  border:1px solid #E7ECF1 !important;
  border-top:1px solid #E7ECF1 !important;
  border-radius:16px !important;
  background:#FFFFFF !important;
  box-shadow:0 6px 22px rgba(0,31,63,.06) !important;
}
/* foco de campo en azul DHM, no en verde */
html body.woocommerce-account .woocommerce form input:focus{
  border-color:var(--dhm-fill) !important;
  box-shadow:0 0 0 3px rgba(31,155,215,.18) !important;
}
html body.woocommerce-account .woocommerce-LostPassword a,
html body.woocommerce-account .woocommerce-privacy-policy-link{ color:var(--dhm-fill) !important; }
/* ninguna mayuscula residual en cuenta / carrito / checkout */
html body.woocommerce-account .button, html body.woocommerce-account button,
html body.woocommerce-cart .button, html body.woocommerce-checkout .button,
html body .woocommerce-Button, html body .wc-block-components-button{
  text-transform:none !important;
  letter-spacing:0 !important;
}
/* el skin profundo no debe alcanzar micro-controles ni icon-only */
html body.woocommerce-account button.iconbtn, html body.woocommerce-account button.cartbtn,
html body.woocommerce-account button.navburger, html body.woocommerce-account button.show-password-input{
  background:transparent !important;
  box-shadow:none !important;
}
html body.woocommerce-account button.iconbtn, html body.woocommerce-account button.cartbtn,
html body.woocommerce-account button.navburger{
  background:var(--dhm-surface) !important;
  box-shadow:var(--dhm-neu-soft) !important;
}

/* v2.10.4 el ojo por encima de la capa de cuenta: (0,6,2) gana a (0,5,2) */
html body.woocommerce-account .woocommerce .col2-set .u-column1 .password-input .show-password-input,
html body.woocommerce-account .woocommerce .col2-set .u-column2 .password-input .show-password-input,
html body.woocommerce-account .woocommerce .col2-set .password-input button.show-password-input,
html body .woocommerce .password-input button.show-password-input{
  position:absolute !important;
  right:10px !important; top:50% !important; left:auto !important; bottom:auto !important;
  transform:translateY(-50%) !important;
  width:22px !important; height:22px !important;
  min-width:22px !important; min-height:22px !important;
  max-width:22px !important; max-height:22px !important;
  padding:0 !important; margin:0 !important;
  background:transparent !important; background-image:none !important;
  box-shadow:none !important; border:0 !important;
  border-radius:4px !important;
  color:#7A8794 !important;
  font-size:16px !important; line-height:1 !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
  overflow:visible !important; isolation:auto !important;
  z-index:3 !important;
}

/* =======================================================================
   v2.11 - CIERRES DEL GATE (medidos en las 11 URLs, 4 estados)
   Rojos que la matriz encontro y que no se veian midiendo solo reposo:
     a) .soc / .iconbtn en hover computaban color #1F9BD7 sobre relleno
        #1F9BD7 => el icono desaparecia (solo en tienda, fichas y categoria)
     b) .single_add_to_cart_button computaba 277x111 (se estiraba por
        align-items:stretch del contenedor) con texto de 12px en MAYUSCULAS
     c) .wp-element-button seguia con text-transform:uppercase
   ======================================================================= */

/* a) icono siempre blanco sobre el relleno azul del hover */
@media (hover:hover) and (pointer:fine){
  html body a.soc:hover, html body .soc:hover,
  html body a.iconbtn:hover, html body button.iconbtn:hover, html body .iconbtn:hover,
  html body button.cartbtn:hover, html body .cartbtn:hover,
  html body button.navburger:hover, html body .navburger:hover,
  html body a.dhm-wa:hover, html body .dhm-wa:hover{
    color:#FFFFFF !important;
  }
  html body .soc:hover svg, html body .soc:hover path, html body .soc:hover use,
  html body .iconbtn:hover svg, html body .iconbtn:hover path, html body .iconbtn:hover .ic,
  html body .cartbtn:hover svg, html body .cartbtn:hover path, html body .cartbtn:hover .ic,
  html body .navburger:hover span{
    color:#FFFFFF !important;
    stroke:#FFFFFF !important;
  }
  html body .soc:hover svg, html body .soc:hover path{ fill:#FFFFFF !important; stroke:none !important; }
  html body .iconbtn:hover .ic, html body .cartbtn:hover .ic{ fill:none !important; }
  /* el badge conserva su rojo, no se blanquea */
  html body .cartbtn:hover .cart-count{ background:#E53E3E !important; color:#FFFFFF !important; }
}

/* b) el CTA de ficha no se estira ni grita en mayusculas */
html body .single_add_to_cart_button,
html body form.cart .single_add_to_cart_button,
html body .dhm-cart-actions .single_add_to_cart_button{
  align-self:center !important;
  height:48px !important;
  min-height:48px !important;
  max-height:48px !important;
  padding:0 26px !important;
  font-size:15px !important;
  font-weight:700 !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  border-radius:9999px !important;
  white-space:nowrap !important;
}

/* c) cero mayusculas en todo el sistema de botones */
html body .btn, html body a.btn, html body button.btn,
html body .button, html body button.button,
html body .wp-element-button, html body a.wp-element-button, html body button.wp-element-button,
html body .single_add_to_cart_button,
html body .woocommerce-Button, html body .woocommerce-button,
html body .wc-block-components-button, html body .wc-block-components-button__text,
html body #place_order, html body .checkout-button,
html body .chip, html body .catchip{
  text-transform:none !important;
  letter-spacing:0 !important;
}

/* =======================================================================
   v2.11.1 - GUERRA DE ESPECIFICIDAD (los 2 rojos que sobrevivieron)
   Culpables medidos en el CSS servido:
     .woocommerce a:not(.button):not(.wp-block-button__link):hover
        {color:#1F9BD7!important}                       -> (0,4,1) = 401
     .wp-element-button.wc-block-components-product-button__button
        {text-transform:uppercase!important}            -> (0,2,0) = 200
   La capa del sistema iba en (0,2,3) y (0,1,2): perdia. Se sube por
   repeticion de clase, que es la forma limpia de ganar sin usar #id.
   ======================================================================= */
@media (hover:hover) and (pointer:fine){
  html body .soc.soc.soc:hover,
  html body .iconbtn.iconbtn.iconbtn:hover,
  html body .cartbtn.cartbtn.cartbtn:hover,
  html body .navburger.navburger.navburger:hover,
  html body .dhm-wa.dhm-wa.dhm-wa:hover{
    color:#FFFFFF !important;
  }
  html body .soc.soc.soc:hover svg, html body .soc.soc.soc:hover path,
  html body .iconbtn.iconbtn.iconbtn:hover svg, html body .iconbtn.iconbtn.iconbtn:hover .ic,
  html body .cartbtn.cartbtn.cartbtn:hover svg, html body .cartbtn.cartbtn.cartbtn:hover .ic,
  html body .dhm-wa.dhm-wa.dhm-wa:hover svg, html body .dhm-wa.dhm-wa.dhm-wa:hover path{
    color:#FFFFFF !important; stroke:#FFFFFF !important;
  }
  html body .soc.soc.soc:hover svg, html body .soc.soc.soc:hover path,
  html body .dhm-wa.dhm-wa.dhm-wa:hover svg, html body .dhm-wa.dhm-wa.dhm-wa:hover path{
    fill:#FFFFFF !important; stroke:none !important;
  }
  html body .cartbtn.cartbtn.cartbtn:hover .cart-count{ background:#E53E3E !important; color:#FFFFFF !important; }
}
/* el rival mas fuerte medido es .woocommerce ul.products li.product .button = 402;
   se sube a 502 por repeticion para no depender del orden del documento */
html body .wp-element-button.wp-element-button.wp-element-button.wp-element-button.wp-element-button,
html body .button.button.button.button.button,
html body .btn.btn.btn.btn.btn,
html body .single_add_to_cart_button.single_add_to_cart_button.single_add_to_cart_button,
html body .woocommerce-Button.woocommerce-Button.woocommerce-Button,
html body .wc-block-components-button.wc-block-components-button.wc-block-components-button{
  text-transform:none !important;
  letter-spacing:0 !important;
}

/* v2.11.2 - foco visible en los 2 controles que la matriz encontro sin anillo */
html body .dhm-wa:focus-visible,
html body .show-password-input:focus-visible{
  outline:3px solid var(--dhm-fill) !important;
  outline-offset:3px !important;
}
html body .dhm-wa:focus-visible{ outline-color:#0B7F3F !important; }

/* =======================================================================
   v3.1 - FASE MOVIL (390px). Fixes P0/P1/P2 aprobados por Ricardo.
   Todo es PRESENTACION: no se toca logica de checkout ni MercadoPago.
   ======================================================================= */

/* -----------------------------------------------------------------------
   P0-1  DOBLE BOTON DE CARRITO EN LA FICHA
   El creador es un script anonimo de 18.857 chars en wp_footer (fuera de la
   base de datos, familia dhm-cart-enh). Su linea exacta:
     if(form){var bar=document.createElement('div');
              bar.className='dhm-sticky-cart'; ... document.body.appendChild(bar)}
   Ese mismo script tambien monta galeria, resenas, acordeones, pdpMove,
   whatsapp, shopInit, marquee y b2b: borrarlo entero romperia la ficha.
   Mientras Ricardo borra ESE bloque concreto, el nodo se ELIMINA del DOM
   (no display:none) desde el guard global, igual que .dhm-cart-tab.
   El cinturon CSS de abajo solo cubre el instante previo a la eliminacion.
   ----------------------------------------------------------------------- */
html body .dhm-sticky-cart{ display:none !important; }

/* -----------------------------------------------------------------------
   P0-2  ZOOM FORZADO EN iOS: todo campo de formulario a 16px en movil.
   Safari hace zoom automatico en cualquier input por debajo de 16px.
   Medido antes: contacto 5/5 (14-14.5px), mi-cuenta 3/3 (15px),
   cantidad de ficha 14px, buscador de tienda 14px, orden de categoria 12px.
   Las firmas repiten body.woocommerce-* para ganar a la capa v2.7 (0,2,2).
   ----------------------------------------------------------------------- */
@media (max-width:640px){
  html body input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=range]),
  html body select,
  html body textarea,
  html body.woocommerce-account input, html body.woocommerce-account select,
  html body.woocommerce-cart input, html body.woocommerce-cart select,
  html body.woocommerce-checkout input, html body.woocommerce-checkout select,
  html body.woocommerce-checkout textarea,
  html body .wc-block-components-text-input input,
  html body .wc-block-components-select select,
  html body .wc-block-components-textarea,
  html body #dhmSearch, html body #dhmSort,
  html body input.qty, html body .quantity input,
  html body select.orderby, html body .sortsel, html body .fi{
    font-size:16px !important;
  }
}

/* -----------------------------------------------------------------------
   P0-3  DESBORDE DEL CARRITO (+20px) y P0-4 DE LA FICHA (+16px)
   Misma causa medida: padding con box-sizing:content-box dentro de un
   contenedor de 358px -> 358+36=394 y 358+32=390 a partir de x=16.
   ----------------------------------------------------------------------- */
html body .wp-block-woocommerce-cart-order-summary-block,
html body .wp-block-woocommerce-cart-totals-block,
html body .wp-block-woocommerce-cart-totals-block > *,
html body .wp-block-woocommerce-checkout-order-summary-block,
html body ul.products, html body ul.products.columns-4,
html body .related.products ul.products,
html body .related.products{
  box-sizing:border-box !important;
  max-width:100% !important;
}

/* -----------------------------------------------------------------------
   P0-5  MINIATURA DE RELACIONADOS QUE RENDERIZABA 220x1500
   La miniatura de Woo llega sin height ni aspect-ratio y con object-fit
   cover: la tarjeta se estiraba 1500px.
   ----------------------------------------------------------------------- */
html body .related.products li.product img,
html body .related.products img.attachment-woocommerce_thumbnail,
html body .up-sells img.attachment-woocommerce_thumbnail,
html body ul.products li.product img.attachment-woocommerce_thumbnail{
  width:100% !important;
  height:auto !important;
  max-height:240px !important;
  aspect-ratio:1 / 1 !important;
  object-fit:contain !important;
  display:block !important;
}

/* -----------------------------------------------------------------------
   P1  AREA TACTIL MINIMA DE 44px EN MOVIL
   ----------------------------------------------------------------------- */
@media (max-width:640px){
  /* el reincidente global: 14 enlaces de footer por pagina a 21px */
  html body footer .footlink, html body footer.foot .footlink,
  html body .dhm-foot .footlink{
    min-height:44px !important;
    display:flex !important;
    align-items:center !important;
    margin-bottom:2px !important;
  }
  /* dots del carrusel del hero: 9px de alto. El punto se ve igual, el area
     crece con padding y background-clip para no pintar el relleno. */
  html body .h3dot, html body .h3dot.on{
    height:44px !important;
    min-height:44px !important;
    padding:17px 0 !important;
    box-sizing:border-box !important;
    background-clip:content-box !important;
    -webkit-background-clip:content-box !important;
  }
  html body .h3dots{ align-items:center !important; }
  /* +/- de cantidad en la ficha: 18px */
  html body .wc-block-components-quantity-selector__button.wc-block-components-quantity-selector__button,
  html body .quantity button.quantity__button, html body .quantity button{
    min-height:44px !important; min-width:44px !important;
  }
  /* enlaces sueltos de accion */
  html body a.dhm-go-cart, html body .woocommerce-LostPassword a,
  html body a.woocommerce-privacy-policy-link{
    min-height:44px !important;
    display:inline-flex !important;
    align-items:center !important;
  }
  html body .soc{ width:44px !important; height:44px !important; min-width:44px !important; min-height:44px !important; }
}

/* -----------------------------------------------------------------------
   P2  TIPOGRAFIA MINIMA DE 12px EN MOVIL
   Solo escala: no cambia ni una palabra de copy, ni claims ni registros.
   ----------------------------------------------------------------------- */
@media (max-width:640px){
  html body .paychip, html body .ptag, html body .packbadge,
  html body .fcount, html body .dhm-ship-badge, html body .dhm-badge,
  html body .bcat, html body .tdot ~ span{
    font-size:12px !important;
  }
  /* "Pago seguro" del footer llega con style inline font-size:11px */
  html body footer span[style*="font-size:11px"],
  html body footer.foot span[style*="font-size:11px"]{ font-size:12px !important; }
  /* aviso de datos de /contacto/ a 11.5px */
  html body .dhm-form-note, html body form p[style*="11.5px"]{ font-size:12px !important; }
}

/* -----------------------------------------------------------------------
   v3.1.1 - REMATE DEL BARRIDO MOVIL (lo que el post-fix dejo vivo)

   CORRECCION DE MI PROPIO DIAGNOSTICO: la miniatura "220x1500" NO es una
   imagen deformada. Medido: contain:size + contain-intrinsic-size:3000px
   1500px (regla del core de WP: img:is([sizes=auto i]) ) con la imagen
   aun sin pintar. Es el placeholder de content-visibility, que en un
   telefono real aparece mientras la imagen esta fuera de pantalla (son
   lazy) y provoca un salto de maquetacion al entrar en viewport.
   Se arregla igual, haciendo la caja determinista: altura explicita y
   sin contencion de tamano.
   ----------------------------------------------------------------------- */
html body .related.products li.product img,
html body .related.products img.attachment-woocommerce_thumbnail,
html body .up-sells li.product img{
  contain:none !important;
  content-visibility:visible !important;
  contain-intrinsic-size:auto !important;
  height:200px !important;
  max-height:200px !important;
  min-height:0 !important;
  width:100% !important;
  max-width:220px !important;
  object-fit:contain !important;
  aspect-ratio:auto !important;
  margin:0 auto !important;
}

@media (max-width:640px){
  /* "Ir al carrito" computaba height:20px + padding 8/12 = 36px y ganaba
     a min-height:44px; se sube por repeticion de clase */
  html body a.dhm-go-cart.dhm-go-cart.dhm-go-cart{
    min-height:44px !important;
    height:auto !important;
    padding:12px 14px !important;
    display:inline-flex !important;
    align-items:center !important;
    line-height:1.2 !important;
  }
  /* controles de /tienda/ y de categoria a 44px */
  html body #dhmSearch, html body #dhmSort,
  html body select.orderby, html body .sortsel{
    min-height:44px !important; height:44px !important;
  }
  /* insignia "MAS VENDIDO" inyectada por JS con font-size inline de 10px */
  html body span[style*="font-size: 10px"],
  html body span[style*="font-size:10px"]{ font-size:12px !important; }
}

/* ================= capa: wpcode :: dhm-ty-css (absorbido; snippet 2113 esta entre estos) ================= */
.dhm-ty{max-width:760px;margin:24px auto 8px;padding:0 16px}
.dhm-ty-card{background:#fff;border:1px solid #eef1f6;border-radius:18px;padding:34px 28px;text-align:center;box-shadow:0 12px 34px rgba(19,41,75,.07)}
.dhm-ty-check{width:66px;height:66px;border-radius:50%;background:linear-gradient(135deg,#1aa79c,#13b3a6);color:#fff;font-size:34px;line-height:66px;margin:0 auto 16px;font-weight:700}
.dhm-ty-h{color:#13294b;font-size:1.7rem;margin:0 0 10px;font-weight:800;line-height:1.2}
.dhm-ty-p{color:#5b6678;font-size:1.02rem;line-height:1.55;margin:0 auto 22px;max-width:560px}
.dhm-ty-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:4px}
.dhm-ty-btn{display:inline-block;padding:14px 22px;border-radius:12px;font-weight:700;text-decoration:none;font-size:.98rem;transition:transform .15s ease,box-shadow .15s ease}
.dhm-ty-btn:hover{transform:translateY(-2px)}
.dhm-ty-primary{background:linear-gradient(135deg,#1aa79c,#13b3a6);color:#fff!important;box-shadow:0 8px 20px rgba(26,167,156,.35)}
.dhm-ty-ghost{background:#fff;color:#13294b!important;border:2px solid #d8deea}
.dhm-ty-sep{height:1px;background:#eef1f6;margin:28px 0 18px}
.dhm-ty-follow{color:#13294b;font-weight:700;margin:0 0 14px;font-size:1.02rem}
.dhm-ty-social{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:22px}
.dhm-ty-soc{display:inline-block;padding:8px 16px;border-radius:999px;background:#f3f6fb;color:#13294b!important;text-decoration:none;font-weight:600;font-size:.85rem;border:1px solid #e7ecf5}
.dhm-ty-soc:hover{background:#e9eef7}
.dhm-ty-wa{display:inline-block;padding:13px 24px;border-radius:12px;background:#25D366;color:#fff!important;text-decoration:none;font-weight:700;font-size:.95rem}
.dhm-ty-wa:hover{filter:brightness(.96)}
@media(max-width:640px){.dhm-ty-card{padding:26px 18px}.dhm-ty-h{font-size:1.4rem}.dhm-ty-btn{width:100%}.dhm-ty-btns{flex-direction:column}}

/* ================= capa: wpcode :: dhm-co-css (absorbido; snippet 2113 esta entre estos) ================= */
.dhm-co-trust{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;max-width:1100px;margin:4px auto 26px;padding:0 16px}
.dhm-co-trust-item{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid #e7ecf5;border-radius:12px;padding:11px 16px;font-weight:600;color:#13294b;font-size:.9rem;box-shadow:0 4px 14px rgba(19,41,75,.05)}
.dhm-co-trust-item svg{width:19px;height:19px;flex:0 0 19px;color:#1aa79c}
.wp-block-woocommerce-checkout .wc-block-components-checkout-step__title{color:#13294b!important;font-weight:800!important}
.wp-block-woocommerce-checkout .wc-block-checkout__sidebar,.wp-block-woocommerce-checkout .wc-block-components-sidebar{background:#fff!important;border:1px solid #eef1f6!important;border-radius:16px!important;box-shadow:0 10px 30px rgba(19,41,75,.06)!important}
.wp-block-woocommerce-checkout .wc-block-components-text-input input,.wp-block-woocommerce-checkout .wc-block-components-address-form input{border-radius:10px!important}
.wc-block-components-checkout-place-order-button{background:linear-gradient(135deg,#13294b,#1c3a6e)!important;color:#fff!important;border-radius:12px!important;font-weight:800!important;box-shadow:0 8px 20px rgba(19,41,75,.25)!important}
.wc-block-components-checkout-place-order-button:hover{filter:brightness(1.08)}
.dhm-co-secure{display:flex;align-items:center;justify-content:center;gap:8px;color:#5b6678;font-size:.86rem;margin:14px auto 0;text-align:center}
.dhm-co-secure svg{width:16px;height:16px;color:#1aa79c;flex:0 0 16px}
@media(max-width:640px){.dhm-co-trust-item{flex:1 1 44%;justify-content:center;font-size:.8rem;padding:9px 10px}}

/* ================= capa: wpcode :: dhm-hero-css (absorbido; snippet 2113 esta entre estos) ================= */


/* ================= capa: wpcode :: dhm-cart-remove-fix (absorbido; snippet 2113 esta entre estos) ================= */
.wc-block-cart-item__remove-link{visibility:visible!important;opacity:1!important;pointer-events:auto!important}
.is-medium table.wc-block-cart-items .wc-block-cart-item__remove-link,.is-small table.wc-block-cart-items .wc-block-cart-item__remove-link,.is-mobile table.wc-block-cart-items .wc-block-cart-item__remove-link,.is-medium .wc-block-cart-item__remove-link,.is-small .wc-block-cart-item__remove-link,.is-mobile .wc-block-cart-item__remove-link{display:inline-block!important}
@media(max-width:600px){.wc-block-cart-item__remove-link{display:inline-block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;position:relative;z-index:3;margin-top:10px;padding:8px 4px;min-height:38px;line-height:22px;font-size:14px!important;font-weight:600;color:#e11d48!important;white-space:nowrap!important;text-decoration:underline}}

/* ================= capa: wpcode :: dhm-cat-css (absorbido; snippet 2113 esta entre estos) ================= */
.dhm-cat-block{max-width:1200px;margin:14px auto 6px;padding:0 16px}.dhm-cat-h{font-size:1.5rem;color:#001F3F;margin:6px 0;font-weight:700}.dhm-cat-p{color:#3a4654;line-height:1.6;max-width:900px;margin:0 0 14px}.dhm-cat-faq h3{font-size:1.1rem;color:#001F3F;margin:10px 0 8px}.dhm-cat-faq details{border:1px solid #e6eaf0;border-radius:10px;padding:10px 14px;margin:0 0 8px;background:#fff}.dhm-cat-faq summary{cursor:pointer;font-weight:600;color:#13294b;list-style:none}.dhm-cat-faq summary::-webkit-details-marker{display:none}.dhm-cat-faq details[open] summary{color:#00667A}.dhm-cat-faq details>div{color:#3a4654;line-height:1.55;margin-top:8px}

/* CAPAS MUERTAS DOCUMENTADAS (no absorbidas a proposito):
   - dhm-cart-enh-css y dhm-cart-tab-hide: estilizan .dhm-cart-tab, que el guard
     elimina del DOM (querySelector null en 11/11). Borrar sus snippets en WPCode.
   - dhm-cart-enh-js: creador del cart-tab, neutralizado por el guard. Borrar.
   Candidatas a retiro en FASE 2 (absorbidas hoy por paridad, scripts incluidos):
   dhm-sssss-fix-v2/-script, dhm-sssss-nuclear/-js, dhm-mega-visual-fix/-js,
   dhm-porque-reviews-fix. */
/* ============================================================
   CAPA 25 - v1.3.1: popup del cupon (snippet 2388, #dhm-cupon-pop)
   a la esquina inferior IZQUIERDA en escritorio: en 1568px se
   superponia al CTA "Anadir al carrito" de la ficha. La derecha
   la ocupa el float de WhatsApp (.dhm-wa). !important porque el
   popup trae position/right inline. Movil intacto.
   ============================================================ */
@media (min-width:981px){
  html body #dhm-cupon-pop{
    right:auto !important;
    left:18px !important;
  }
}
