.elementor-58850 .elementor-element.elementor-element-3ddebfa > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-58850 .elementor-element.elementor-element-3ddebfa{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-58850 .elementor-element.elementor-element-3ddebfa > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-58850 .elementor-element.elementor-element-7a3b5a8 > .elementor-element-populated{margin:5px 50px 5px 0px;--e-column-margin-right:50px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-58850 .elementor-element.elementor-element-f9b5f9b > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-58850 .elementor-element.elementor-element-38b4274 > .elementor-element-populated{margin:0px 0px 0px 6px;--e-column-margin-right:0px;--e-column-margin-left:6px;padding:0px 0px 0px 0px;}.elementor-58850 .elementor-element.elementor-element-b67f0ab > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-58850 .elementor-element.elementor-element-3ac4437 > .elementor-element-populated{margin:08px 0px 0px 25px;--e-column-margin-right:0px;--e-column-margin-left:25px;padding:0px 0px 0px 0px;}.elementor-58850 .elementor-element.elementor-element-ed7c947 .elementor-menu-cart__close-button, .elementor-58850 .elementor-element.elementor-element-ed7c947 .elementor-menu-cart__close-button-custom{margin-left:auto;}.elementor-58850 .elementor-element.elementor-element-ed7c947{--main-alignment:center;--divider-style:none;--subtotal-divider-style:none;--elementor-remove-from-cart-button:none;--remove-from-cart-button:block;--toggle-button-icon-color:#000000;--items-indicator-text-color:#FFFFFF;--items-indicator-background-color:#2DAB50;--cart-border-style:none;--cart-footer-layout:1fr 1fr;--products-max-height-sidecart:calc(100vh - 240px);--products-max-height-minicart:calc(100vh - 385px);}.elementor-58850 .elementor-element.elementor-element-ed7c947 .elementor-menu-cart__toggle .elementor-button{box-shadow:0px 0px 0px 0px rgba(0,0,0,0.5);}.elementor-58850 .elementor-element.elementor-element-ed7c947 .widget_shopping_cart_content{--subtotal-divider-left-width:0;--subtotal-divider-right-width:0;}.elementor-58850 .elementor-element.elementor-element-99407d8 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-58850 .elementor-element.elementor-element-99407d8:not(.elementor-motion-effects-element-type-background), .elementor-58850 .elementor-element.elementor-element-99407d8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1A1A1A;}.elementor-58850 .elementor-element.elementor-element-99407d8{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-58850 .elementor-element.elementor-element-99407d8 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-58850 .elementor-element.elementor-element-cb7dd3e > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-bottom:0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-58850 .elementor-element.elementor-element-7a3b5a8 > .elementor-element-populated{margin:10px 0px 5px 90px;--e-column-margin-right:0px;--e-column-margin-left:90px;padding:0px 0px 0px 0px;}.elementor-58850 .elementor-element.elementor-element-f9b5f9b > .elementor-element-populated{margin:5px 0px 0px 80px;--e-column-margin-right:0px;--e-column-margin-left:80px;padding:0px 0px 0px 0px;}.elementor-58850 .elementor-element.elementor-element-38b4274 > .elementor-element-populated{margin:5px 0px 0px 30px;--e-column-margin-right:0px;--e-column-margin-left:30px;padding:0px 0px 0px 0px;}.elementor-58850 .elementor-element.elementor-element-b67f0ab > .elementor-element-populated{margin:5px 0px 5px 10px;--e-column-margin-right:0px;--e-column-margin-left:10px;padding:0px 0px 0px 0px;}.elementor-58850 .elementor-element.elementor-element-3ac4437 > .elementor-element-populated{margin:8px 0px 0px 24px;--e-column-margin-right:0px;--e-column-margin-left:24px;}}@media(min-width:768px){.elementor-58850 .elementor-element.elementor-element-7a3b5a8{width:20%;}.elementor-58850 .elementor-element.elementor-element-f9b5f9b{width:10%;}.elementor-58850 .elementor-element.elementor-element-38b4274{width:10%;}.elementor-58850 .elementor-element.elementor-element-b67f0ab{width:40%;}.elementor-58850 .elementor-element.elementor-element-3ac4437{width:15%;}.elementor-58850 .elementor-element.elementor-element-306d50b{width:4.053%;}.elementor-58850 .elementor-element.elementor-element-cb7dd3e{width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-58850 .elementor-element.elementor-element-7a3b5a8{width:40%;}.elementor-58850 .elementor-element.elementor-element-f9b5f9b{width:30%;}.elementor-58850 .elementor-element.elementor-element-38b4274{width:30%;}.elementor-58850 .elementor-element.elementor-element-b67f0ab{width:65%;}.elementor-58850 .elementor-element.elementor-element-3ac4437{width:27%;}.elementor-58850 .elementor-element.elementor-element-306d50b{width:5%;}}@media(max-width:767px){.elementor-58850 .elementor-element.elementor-element-7a3b5a8{width:100%;}.elementor-58850 .elementor-element.elementor-element-7a3b5a8 > .elementor-element-populated{margin:10px 44px 20px 44px;--e-column-margin-right:44px;--e-column-margin-left:44px;padding:0px 0px 0px 0px;}.elementor-58850 .elementor-element.elementor-element-f9b5f9b{width:50%;}.elementor-58850 .elementor-element.elementor-element-f9b5f9b > .elementor-element-populated{margin:0px 0px 0px 55px;--e-column-margin-right:0px;--e-column-margin-left:55px;padding:0px 0px 0px 0px;}.elementor-58850 .elementor-element.elementor-element-38b4274{width:50%;}.elementor-58850 .elementor-element.elementor-element-38b4274 > .elementor-element-populated{margin:0px 0px 0px 30px;--e-column-margin-right:0px;--e-column-margin-left:30px;padding:0px 0px 0px 0px;}.elementor-58850 .elementor-element.elementor-element-b67f0ab > .elementor-element-populated{margin:10px 5px 10px 10px;--e-column-margin-right:5px;--e-column-margin-left:10px;}.elementor-58850 .elementor-element.elementor-element-3ac4437{width:75%;}.elementor-58850 .elementor-element.elementor-element-3ac4437 > .elementor-element-populated{margin:0px 0px 10px 70px;--e-column-margin-right:0px;--e-column-margin-left:70px;padding:0px 0px 0px 0px;}.elementor-58850 .elementor-element.elementor-element-306d50b{width:5%;}.elementor-58850 .elementor-element.elementor-element-306d50b > .elementor-element-populated{margin:0px 0px 10px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}}/* Start custom CSS for html, class: .elementor-element-3a4961b *//* ====== VULTEC Mega Menú (v9.1) ====== */
.vul-mega{
  --vul-green:#23b14d; --vul-red:#e11d48; --vul-dark:#121212;
  --vul-text:#222; --vul-muted:#6b7280; --vul-bg:#fff; --vul-edge:#e5e7eb;
  --radius:12px; --shadow:0 8px 24px rgba(0,0,0,.12);
  position:relative; font-family:"Roboto", Arial, Helvetica, sans-serif !important;
}
.vul-mega *{ font-family:inherit !important; }

/* Botón cabecera */
.vul-mega__toggle{
  display:inline-flex; align-items:center; gap:.55rem; padding:0;
  background:transparent !important; border:none !important; color:#000 !important;
  cursor:pointer; box-shadow:none !important; line-height:1; vertical-align:middle; z-index:10001;
}
.vul-mega__toggle:focus, .vul-mega__toggle:focus-visible, .vul-mega__toggle:active{
  outline:none !important; box-shadow:none !important; border:none !important;
}
.vul-mega__iconwrap{ width:22px; height:22px; position:relative; display:inline-block; }
.vul-mega__icon{ position:absolute; inset:0; color:#000; transition:opacity .15s ease; }
.vul-mega__icon--close{ opacity:0 !important; visibility:hidden !important; }
.vul-mega.is-open .vul-mega__icon--hamburger{ opacity:0 !important; visibility:hidden !important; }
.vul-mega.is-open .vul-mega__icon--close{ opacity:1 !important; visibility:visible !important; }
.vul-mega__label{ font-size:18px; font-weight:600; color:#000 !important; }

/* Drawer */
.vul-mega__drawer{
  position:absolute; left:0; top:calc(100% + 18px); z-index:9999;
  width:min(1280px,96vw); background:var(--vul-bg); border:1px solid var(--vul-edge);
  border-radius:var(--radius); box-shadow:var(--shadow); overflow:hidden; max-height:70vh;
}
.vul-mega.is-centered .vul-mega__drawer{
  position:fixed; left:50%; transform:translateX(-50%); top:var(--drawer-top,110px);
  width:min(1280px,96vw);
}

/* X sin fondo, pegada a la esquina */
.vul-mega__closer{
  position:absolute; top:6px; right:6px; width:28px; height:28px; padding:0;
  border:none !important; background:transparent !important; color:#111 !important;
  display:grid; place-items:center; cursor:pointer; z-index:10000; box-shadow:none !important;
}
.vul-mega__closer:hover, .vul-mega__closer:focus{ background:transparent !important; color:#111 !important; }
.vul-mega__closer svg{ width:20px; height:20px; stroke:currentColor; }

/* Layout desktop */
.vul-mega__inner{ display:grid; grid-template-columns:320px 1fr; height:100%; }
.vul-mega__nav{
  background:#f7f7f8; border-right:1px solid var(--vul-edge);
  overflow:auto; -webkit-overflow-scrolling:touch; touch-action:pan-y;
}
.vul-mega__roots{ list-style:none; margin:0; padding:10px; }
.vul-mega__root{ margin:2px 0; border-radius:10px; }
.vul-mega__root.is-active{ background:#fff; outline:1px solid var(--vul-edge); }

/* Ofertas */
.vul-mega__root--action{ margin-bottom:8px; }
.vul-mega__rootAction{
  display:flex; align-items:center; gap:.55rem; text-decoration:none; color:#000; font-weight:900;
  padding:10px 12px; border-radius:10px; background:#fff; outline:1px solid var(--vul-edge);
}
.vul-mega__rootAction .vul-mega__ico--bomb{ color:var(--vul-red) !important; animation:bomb-pulse 1.2s infinite ease-in-out; }
@keyframes bomb-pulse{ 0%,100%{transform:scale(1);} 50%{transform:scale(1.08);} }

/* Enlaces raíz */
.vul-mega__rootLink{ display:flex; align-items:center; gap:.55rem; text-decoration:none; color:var(--vul-text); font-weight:800; padding:10px 12px; }
.vul-mega__rootLink:hover{ color:var(--vul-green); }
.vul-mega__ico{ width:18px; height:18px; display:inline-grid; place-items:center; color:var(--vul-green); }
.vul-mega__ico svg{ width:18px; height:18px; }

/* Panel + header negro */
.vul-mega__panels{ position:relative; background:#fff; overflow:hidden; }
.vul-mega__panel{
  position:absolute; inset:0; padding:22px 28px; opacity:0; visibility:hidden; transition:.2s ease;
  display:flex; flex-direction:column; height:100%;
}
.vul-mega__panel.is-visible{ opacity:1; visibility:visible; }
.vul-mega__panelHead{
  display:flex; align-items:center; justify-content:space-between; padding:16px 18px;
  background:#000; color:#fff; border-radius:10px; margin-bottom:14px; flex:0 0 auto;
}
.vul-mega .vul-mega__panelHead .vul-mega__panelTitle{ margin:0; font-size:44px !important; font-weight:900; line-height:1.1; }
.vul-mega .vul-mega__panelHead .vul-mega__panelTitle a{ color:#fff !important; text-decoration:none; font-size:inherit !important; }
.vul-mega__panelAll{ font-size:14px; color:#fff !important; text-decoration:none; font-weight:700; }
.vul-mega__panelAll:hover{ text-decoration:underline; }

/* Contenido scrolleable */
.vul-mega__cols{
  flex:1 1 auto; min-height:0; overflow:auto; -webkit-overflow-scrolling:touch; touch-action:pan-y;
  display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:30px 36px; padding:6px 8px 10px 8px;
  align-content:start; justify-content:start; align-items:start; grid-auto-rows:min-content;
}
.vul-mega__col{ display:grid; grid-auto-rows:min-content; row-gap:6px; }
.vul-mega__h{ margin:0 0 2px; font-size:16px; font-weight:800; }
.vul-mega__h a{ color:#5a5a5a; text-decoration:none; }
.vul-mega__h a:hover{ color:var(--vul-green); }
.vul-mega__subAll{ display:inline-block; margin:0 0 8px; font-size:13px; font-weight:600; color:#535558; text-decoration:none; }
.vul-mega__subAll:hover{ text-decoration:underline; }
.vul-mega__list{ list-style:none; margin:0; padding:0 !important; }
.vul-mega__list li{ margin:0 0 6px; }
.vul-mega__list a{ text-decoration:none; color:var(--vul-muted); font-size:14px; display:inline-block; }
.vul-mega__list a:hover{ color:var(--vul-green); }

/* Ajustes tamaños */
@media (max-width:1200px){
  .vul-mega__inner{ grid-template-columns:280px 1fr; }
  .vul-mega__cols{ grid-template-columns:repeat(4,minmax(0,1fr)); }
  .vul-mega .vul-mega__panelHead .vul-mega__panelTitle{ font-size:38px !important; }
}

/* === TABLET / MOBILE: altura fija del drawer + 2 zonas con scroll === */
@media (max-width:920px){
  .vul-mega.is-centered .vul-mega__drawer{
    width:96vw;
    max-height:86vh;   /* límite superior */
    height:86vh;       /* altura real para que exista espacio para el panel */
  }

  .vul-mega__inner{ display:flex; flex-direction:column; height:100%; min-height:0; }
  .vul-mega__nav{
    border-right:none; border-bottom:1px solid var(--vul-edge);
    flex:0 0 auto; max-height:40vh; overflow:auto; -webkit-overflow-scrolling:touch;
  }
  .vul-mega__panels{ flex:1 1 auto; min-height:0; position:relative; }
  .vul-mega__panel{ position:absolute; inset:0; display:flex; flex-direction:column; }
  .vul-mega__cols{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
  .vul-mega .vul-mega__panelHead .vul-mega__panelTitle{ font-size:30px !important; }
}

/* Mobile angosto: 1 columna */
@media (max-width:560px){
  .vul-mega__cols{ grid-template-columns:1fr; }
}

/* Mostrar drawer aunque tenga [hidden] cuando está abierto */
.vul-mega.is-open .vul-mega__drawer[hidden]{ display:block; }

/* Overlay */
.vul-mega__overlay{ position:fixed; inset:0; background:#000; opacity:.28; z-index:9990; }
.vul-mega__overlay[hidden]{ display:none; }

/* Sin mayúsculas forzadas en el botón/etiqueta */
.vul-mega__toggle, .vul-mega__toggle .vul-mega__label{ text-transform:none !important; letter-spacing:normal !important; }

/* Touch */
@media (hover:none){
  .vul-mega__rootLink{ text-decoration:none; }
}

/* ===== Mobile: header compacto y ordenado ===== */
@media (max-width:560px){
  /* Cabecera negra más pequeña */
  .vul-mega__panelHead{
    padding:10px 12px;
    border-radius:8px;
    flex-wrap:wrap;       /* permite 2 líneas */
    gap:6px 8px;
  }

  /* Título ocupa su propia línea, tamaño reducido */
  .vul-mega .vul-mega__panelHead .vul-mega__panelTitle{
    flex:1 1 100%;        /* fuerza a ir en la primera línea completa */
    font-size:20px !important;
    line-height:1.15;
    min-width:0;
    white-space:nowrap;   /* si la palabra es larga, elipsis */
    overflow:hidden;
    text-overflow:ellipsis;
  }

  /* “Ver todo” pasa abajo, alineado a la derecha y estilo pill */
  .vul-mega__panelAll{
    order:2;              /* va después del título */
    margin-left:auto;
    font-size:12px;
    line-height:1;
    padding:6px 10px;
    border:1px solid rgba(255,255,255,.5);
    border-radius:999px;
    text-decoration:none;
  }

  /* Un poco menos de aire luego del header */
  .vul-mega__panelHead{ margin-bottom:10px; }
}

@media (max-width:560px){
  .vul-mega__panelAll{ display:none !important; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-83ace1a *//* ====== VULTEC Cupones (v1.0) ====== */
.vul-coups{
  --vul-green: #23b14d;
  --vul-dark:  #121212;
  --vul-text:  #222;
  --vul-muted: #6b7280;
  --vul-bg:    #ffffff;
  --vul-edge:  #e5e7eb;
  --radius: 12px;
  --shadow: 0 8px 24px rgba(0,0,0,.12);
  --code-col: 150px;              /* ancho de la columna del código */
  font-family: "Roboto", Arial, Helvetica, sans-serif !important;
  position: relative;
}

/* Toggle */
.vul-coups__toggle{
  display:inline-flex; align-items:center; gap:.55rem;
  padding:0; background:transparent !important; border:none !important;
  color:#000 !important; cursor:pointer; box-shadow:none !important;
  line-height:1; vertical-align:middle; position:relative; z-index:10001;
}
.vul-coups__toggle:focus{ outline:none !important; box-shadow:none !important; border:none !important; }
.vul-coups__iconwrap{ width:22px; height:22px; position:relative; display:inline-block; }
.vul-coups__icon{ position:absolute; inset:0; color:#000; transition:opacity .15s ease; }
.vul-coups__icon--close{ opacity:0; visibility:hidden; }
.vul-coups.is-open .vul-coups__icon--coupon{ opacity:0; visibility:hidden; }
.vul-coups.is-open .vul-coups__icon--close{ opacity:1; visibility:visible; }
.vul-coups__label{ font-size:18px; font-weight:600; color:#000; text-transform:none; }

/* Drawer base */
.vul-coups__drawer{
  position:absolute; left:0; top:calc(100% + 18px); z-index:9999;
  width:min(1280px,96vw); background:var(--vul-bg); border:1px solid var(--vul-edge);
  border-radius:var(--radius); box-shadow:var(--shadow); overflow:hidden;
  max-height:70vh;
}
.vul-coups__inner{ display:flex; flex-direction:column; height:100%; background:#fff; }

/* Centrado cuando está abierto (igual que Categorías centrado) */
.vul-coups.is-centered .vul-coups__drawer{
  position: fixed;
  left: 50%;
  transform: translateX(-50%);
  top: var(--coups-drawer-top, 110px);
}

/* Header negro */
.vul-coups__panelHead{
  display:flex; align-items:center; justify-content:space-between;
  padding:16px 18px; background:#000; color:#fff;
  border-radius:10px; margin:16px 18px 12px;
}
.vul-coups__panelTitle{ margin:0; font-size:32px; font-weight:900; letter-spacing:.4px; }

/* Grid de cupones */
.vul-coups__grid{
  flex:1 1 auto; overflow:auto;
  display:grid; gap:16px;
  grid-template-columns: repeat(3, minmax(0,1fr));
  padding:0 18px 18px;
}

/* Tarjeta con forma de cupón */
.vul-coups__card{
  position:relative; background:#fff; border:1px solid var(--vul-edge);
  border-radius:12px; box-shadow:0 6px 18px rgba(0,0,0,.06);
  display:grid; grid-template-columns: var(--code-col) 1fr; column-gap:16px;
  padding:14px 16px; align-items:center;
}

/* muescas laterales */
.vul-coups__card::before,
.vul-coups__card::after{
  content:""; position:absolute; top:50%; transform:translateY(-50%);
  width:18px; height:18px; border-radius:50%;
  background:#fff; box-shadow:0 0 0 1px var(--vul-edge) inset;
}
.vul-coups__card::before{ left:-9px; }
.vul-coups__card::after { right:-9px; }

/* línea perforada vertical */
.vul-coups__cut{
  position:absolute; top:10px; bottom:10px; left: calc(var(--code-col) + 8px);
  width:0; border-left:1.5px dashed var(--vul-edge);
}

/* Columna izquierda: código + botón copiar */
.vul-coups__codebox{ display:flex; flex-direction:column; align-items:flex-start; gap:8px; }
.vul-coups__code{
  display:inline-block; background:#f7f7f8; color:#111; font-weight:800; letter-spacing:.6px;
  border:1px dashed var(--vul-edge); border-radius:8px; padding:6px 10px; font-size:14px;
}
.vul-coups__copy{
  background:#fff; border:1px solid var(--vul-edge); border-radius:8px;
  padding:6px 10px; font-size:13px; font-weight:700; cursor:pointer;
  transition:all .15s ease;
}
.vul-coups__copy:hover{ border-color:#cfd3d9; transform:translateY(-1px); }
.vul-coups__copy.is-copied{ background:var(--vul-green); color:#fff; border-color:var(--vul-green); }

/* Columna derecha: info */
.vul-coups__info{}
.vul-coups__benefit{ margin:0 0 4px; font-size:15px; font-weight:700; color:var(--vul-dark); }
.vul-coups__expires{ margin:0; font-size:13px; color:var(--vul-muted); }

/* Overlay */
.vul-coups__overlay{
  position: fixed; inset: 0; background:#000; opacity:.28; z-index:9990;
}
.vul-coups__overlay[hidden]{ display:none; }

/* Responsive */
@media (max-width: 1200px){
  .vul-coups__grid{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 920px){
  .vul-coups.is-centered .vul-coups__drawer{ width:96vw; }
  .vul-coups__panelTitle{ font-size:26px; }
}
@media (max-width: 560px){
  .vul-coups__grid{ grid-template-columns: 1fr; }
  .vul-coups__card{ grid-template-columns: 1fr; padding:14px; }
  .vul-coups__cut{ display:none; }
  .vul-coups__codebox{ flex-direction:row; align-items:center; gap:10px; margin-bottom:6px; }
}

/* === CUPONES: Título como HERRAMIENTAS === */
.vul-coups .vul-coups__panelHead{
  background:#000 !important; color:#fff !important;
  padding:16px 18px; border-radius:10px; margin:16px 18px 12px;
}
.vul-coups .vul-coups__panelTitle{
  margin:0; color:#fff !important;
  font-size:44px !important; font-weight:900 !important; line-height:1.1;
  letter-spacing:.4px; text-transform:uppercase;
}
@media (max-width:1200px){
  .vul-coups .vul-coups__panelTitle{ font-size:38px !important; }
}
@media (max-width:920px){
  .vul-coups .vul-coups__panelTitle{ font-size:30px !important; }
}

/* === CUPONES: borde discontinuo en la tarjeta === */
.vul-coups__card{
  border:1.5px dashed var(--vul-edge) !important; /* antes sólido */
  border-radius:12px;
  box-shadow:0 6px 18px rgba(0,0,0,.06);
}
/* muescas laterales con el mismo grosor */
.vul-coups__card::before,
.vul-coups__card::after{
  box-shadow:0 0 0 1.5px var(--vul-edge) inset;
}

/* Línea perforada de separación dentro del cupón (mantener) */
.vul-coups__cut{
  border-left:1.5px dashed var(--vul-edge);
}

/* === Botón Copiar más visible === */
.vul-coups__copy{
  background: var(--vul-green) !important;
  color:#fff !important;
  border:1px solid var(--vul-green) !important;
  border-radius:999px;
  padding:8px 14px;
  font-size:14px; font-weight:800; text-transform:uppercase; letter-spacing:.4px;
  box-shadow:0 6px 14px rgba(35,177,77,.25);
  cursor:pointer; transition:transform .15s ease, filter .15s ease, box-shadow .15s ease;
}
.vul-coups__copy:hover{ transform:translateY(-1px); filter:brightness(.95); }
.vul-coups__copy.is-copied{
  background:#16a34a !important; border-color:#16a34a !important; box-shadow:none;
}

/* Código dentro del cupón (lo dejamos marcado) */
.vul-coups__code{
  border:1.5px dashed var(--vul-edge);
  background:#fff;
  font-weight:900; letter-spacing:.6px;
}

/* === Scroll vertical garantizado con muchos cupones === */
.vul-coups__drawer{ max-height:70vh; overflow:hidden; }         /* contenedor exterior */
.vul-coups__inner{ display:flex; flex-direction:column; height:100%; min-height:0; }
.vul-coups__grid{ flex:1 1 auto; overflow:auto; min-height:0; }  /* el scroll ocurre aquí */

/* (Opcional) scroll más suave y fino */
.vul-coups__grid{ scroll-behavior:smooth; }
.vul-coups__grid::-webkit-scrollbar{ height:8px; width:8px; }
.vul-coups__grid::-webkit-scrollbar-thumb{ background:#cfd3d9; border-radius:8px; }

/* ====== VULTEC Cupones (v1.1) ====== */
.vul-coups{
  --vul-green: #23b14d;
  --vul-dark:  #121212;
  --vul-text:  #222;
  --vul-muted: #6b7280;
  --vul-bg:    #ffffff;
  --vul-edge:  #e5e7eb;
  --radius: 12px;
  --shadow: 0 8px 24px rgba(0,0,0,.12);
  --code-col: 180px; /* ancho de la columna del código */
  font-family: "Roboto", Arial, Helvetica, sans-serif !important;
  position: relative;
}

/* Toggle */
.vul-coups__toggle{
  display:inline-flex; align-items:center; gap:.55rem;
  padding:0; background:transparent !important; border:none !important;
  color:#000 !important; cursor:pointer; box-shadow:none !important;
  line-height:1; vertical-align:middle; position:relative; z-index:10001;
}
.vul-coups__label{ font-size:18px; font-weight:600; color:#000; text-transform:none; }
.vul-coups__iconwrap{ width:22px; height:22px; position:relative; display:inline-block; }
.vul-coups__icon{ position:absolute; inset:0; color:#000; transition:opacity .15s ease; }
.vul-coups__icon--close{ opacity:0; visibility:hidden; }
.vul-coups.is-open .vul-coups__icon--gift{ opacity:0; visibility:hidden; }
.vul-coups.is-open .vul-coups__icon--close{ opacity:1; visibility:visible; }

/* Drawer base y centrado */
.vul-coups__drawer{
  position:absolute; left:0; top:calc(100% + 18px); z-index:9999;
  width:min(1280px,96vw); background:var(--vul-bg); border:1px solid var(--vul-edge);
  border-radius:var(--radius); box-shadow:var(--shadow); overflow:hidden; max-height:70vh;
}
.vul-coups__inner{ display:flex; flex-direction:column; height:100%; background:#fff; }
.vul-coups.is-centered .vul-coups__drawer{
  position: fixed; left:50%; transform:translateX(-50%); top: var(--coups-drawer-top, 110px);
}

/* Header igual a HERRAMIENTAS */
.vul-coups__panelHead{
  display:flex; align-items:center; justify-content:space-between;
  padding:16px 18px; background:#000; color:#fff; border-radius:10px; margin:16px 18px 12px;
}
.vul-coups__panelTitle{ margin:0; color:#fff; font-size:44px !important; font-weight:900; line-height:1.1; letter-spacing:.4px; }
@media (max-width:1200px){ .vul-coups__panelTitle{ font-size:38px !important; } }
@media (max-width:920px){ .vul-coups__panelTitle{ font-size:30px !important; } }

/* Grid lista con scroll al crecer */
.vul-coups__grid{
  flex:1 1 auto; overflow:auto; min-height:0;
  display:grid; gap:16px; grid-template-columns: 1fr; /* 1 columna para lectura limpia */
  padding:0 18px 18px;
}

/* Card con borde DISCONTINUO y línea perforada */
.vul-coups__card{
  position:relative; background:#fff; border:2px dashed #d7dbe2; /* borde discontinuo visible */
  border-radius:12px; box-shadow:0 6px 18px rgba(0,0,0,.06);
  display:grid; grid-template-columns: var(--code-col) 1fr; column-gap:16px;
  padding:14px 16px; align-items:center;
}
.vul-coups__card::before,
.vul-coups__card::after{
  content:""; position:absolute; top:50%; transform:translateY(-50%);
  width:18px; height:18px; border-radius:50%; background:#fff;
  box-shadow:0 0 0 2px #d7dbe2 inset;
}
.vul-coups__card::before{ left:-9px; }
.vul-coups__card::after { right:-9px; }

.vul-coups__cut{ position:absolute; top:12px; bottom:12px; left: calc(var(--code-col) + 8px);
  width:0; border-left:2px dashed #d7dbe2; }

/* Columna izquierda: CÓDIGO muy visible y botón pequeño rectangular */
.vul-coups__codebox{ display:flex; flex-direction:column; align-items:flex-start; gap:10px; }
.vul-coups__code{
  display:inline-block; background:#fff; color:#111; font-weight:900; letter-spacing:.8px;
  border:2px dashed #d7dbe2; border-radius:10px; padding:8px 12px; font-size:22px; line-height:1;
}
.vul-coups__copy{
  background:#fff; color:#111; border:1px solid #cfd3d9; border-radius:6px;
  padding:6px 10px; font-size:12px; font-weight:800; text-transform:none; letter-spacing:.2px;
  cursor:pointer; transition:all .15s ease; box-shadow:0 2px 6px rgba(0,0,0,.06);
}
.vul-coups__copy:hover{ transform:translateY(-1px); border-color:#b9bec6; }
.vul-coups__copy.is-copied{
  background:#16a34a; color:#fff; border-color:#16a34a;
}

/* Columna derecha: textos */
.vul-coups__benefit{ margin:0 0 6px; font-size:16px; font-weight:700; color:var(--vul-dark); }
.vul-coups__expires{ margin:0; font-size:13px; color:var(--vul-muted); }

/* Overlay */
.vul-coups__overlay{ position: fixed; inset: 0; background:#000; opacity:.28; z-index:9990; }
.vul-coups__overlay[hidden]{ display:none; }

/* Responsive */
@media (max-width: 560px){
  .vul-coups__card{ grid-template-columns: 1fr; padding:14px; }
  .vul-coups__cut{ display:none; }
  .vul-coups__codebox{ flex-direction:row; align-items:center; gap:10px; margin-bottom:6px; }
}

/* ====== VULTEC Cupones (v1.2) ====== */
.vul-coups{
  --vul-green: #23b14d;
  --vul-dark:  #121212;
  --vul-text:  #222;
  --vul-muted: #6b7280;
  --vul-bg:    #ffffff;
  --vul-edge:  #d7dbe2;
  --radius: 12px;
  --shadow: 0 8px 24px rgba(0,0,0,.12);
  --code-col: 180px; /* ancho columna código+botón */
  font-family: "Roboto", Arial, Helvetica, sans-serif !important;
  position: relative;
}

/* Toggle */
.vul-coups__toggle{
  display:inline-flex; align-items:center; gap:.55rem;
  padding:0; background:transparent !important; border:none !important;
  color:#000 !important; cursor:pointer; box-shadow:none !important;
  line-height:1; vertical-align:middle; position:relative; z-index:10001;
}
.vul-coups__label{ font-size:18px; font-weight:600; color:#000; text-transform:none; }
.vul-coups__iconwrap{ width:22px; height:22px; position:relative; display:inline-block; }
.vul-coups__icon{ position:absolute; inset:0; color:#000; transition:opacity .15s ease; }
.vul-coups__icon--close{ opacity:0; visibility:hidden; }
.vul-coups.is-open .vul-coups__icon--gift{ opacity:0; visibility:hidden; }
.vul-coups.is-open .vul-coups__icon--close{ opacity:1; visibility:visible; }

/* Drawer y centrado */
.vul-coups__drawer{
  position:absolute; left:0; top:calc(100% + 18px); z-index:9999;
  width:min(1280px,96vw); background:#fff; border:1px solid var(--vul-edge);
  border-radius:var(--radius); box-shadow:var(--shadow); overflow:hidden; max-height:70vh;
}
.vul-coups__inner{ display:flex; flex-direction:column; height:100%; background:#fff; }
.vul-coups.is-centered .vul-coups__drawer{
  position: fixed; left:50%; transform:translateX(-50%); top: var(--coups-drawer-top, 110px);
}

/* Header igual a HERRAMIENTAS */
.vul-coups__panelHead{
  display:flex; align-items:center; justify-content:space-between;
  padding:16px 18px; background:#000; color:#fff; border-radius:10px; margin:16px 18px 12px;
}
.vul-coups__panelTitle{ margin:0; color:#fff; font-size:44px !important; font-weight:900; line-height:1.1; letter-spacing:.4px; }
@media (max-width:1200px){ .vul-coups__panelTitle{ font-size:38px !important; } }
@media (max-width:920px){ .vul-coups__panelTitle{ font-size:30px !important; } }

/* GRID: 3/2/1 por fila según viewport */
.vul-coups__grid{
  flex:1 1 auto; overflow:auto; min-height:0;
  display:grid; gap:16px;
  grid-template-columns: repeat(3, minmax(0,1fr));   /* Desktop (1920) */
  padding:0 18px 18px;
}
@media (max-width:1200px){                                    /* Laptop 1366 */
  .vul-coups__grid{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width:920px){                                      /* Tablet */
  .vul-coups__grid{ grid-template-columns: 1fr; }
}

/* CARD con borde discontinuo y línea perforada */
.vul-coups__card{
  position:relative; background:#fff; border:2px dashed var(--vul-edge);
  border-radius:12px; box-shadow:0 6px 18px rgba(0,0,0,.06);
  display:grid; grid-template-columns: var(--code-col) 1fr; column-gap:16px;
  padding:14px 16px; align-items:stretch; /* para centrar la columna izquierda con 100% alto */
}
.vul-coups__card::before,
.vul-coups__card::after{
  content:""; position:absolute; top:50%; transform:translateY(-50%);
  width:18px; height:18px; border-radius:50%; background:#fff;
  box-shadow:0 0 0 2px var(--vul-edge) inset;
}
.vul-coups__card::before{ left:-9px; }
.vul-coups__card::after { right:-9px; }
.vul-coups__cut{
  position:absolute; top:12px; bottom:12px; left: calc(var(--code-col) + 8px);
  width:0; border-left:2px dashed var(--vul-edge);
}

/* Columna izquierda: código grande + botón pequeño CENTRADOS VERTICALMENTE */
.vul-coups__codebox{
  display:flex; flex-direction:column; justify-content:center; align-items:center;
  gap:10px; height:100%;
}
.vul-coups__code{
  display:inline-block; background:#fff; color:#111; font-weight:900; letter-spacing:.8px;
  border:2px dashed var(--vul-edge); border-radius:10px; padding:8px 12px; font-size:22px; line-height:1;
}
.vul-coups__copy{
  background:#fff; color:#111; border:1px solid #cfd3d9; border-radius:6px;
  padding:6px 10px; font-size:12px; font-weight:800; text-transform:none; letter-spacing:.2px;
  cursor:pointer; transition:all .15s ease; box-shadow:0 2px 6px rgba(0,0,0,.06);
}
.vul-coups__copy:hover{ transform:translateY(-1px); border-color:#b9bec6; }
.vul-coups__copy.is-copied{ background:#16a34a; color:#fff; border-color:#16a34a; }

/* Columna derecha */
.vul-coups__benefit{ margin:0 0 6px; font-size:16px; font-weight:700; color:var(--vul-dark); }
.vul-coups__expires{ margin:0; font-size:13px; color:var(--vul-muted); }

/* Overlay */
.vul-coups__overlay{ position: fixed; inset: 0; background:#000; opacity:.28; z-index:9990; }
.vul-coups__overlay[hidden]{ display:none; }

/* Ocultar visualmente el mensaje "Código copiado" (accesible solo para lectores) */
.vul-coups__sr{
  position:absolute !important; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
}

/* Móvil */
@media (max-width:560px){
  .vul-coups__card{ grid-template-columns: 1fr; padding:14px; }
  .vul-coups__cut{ display:none; }
  .vul-coups__codebox{ flex-direction:row; gap:10px; margin-bottom:6px; }
}

/* === FIX: Forzar Roboto en toda la sección Cupones (incluye el toggle) === */
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;600;700;800;900&display=swap');

.vul-coups,
.vul-coups *{
  font-family: "Roboto", Arial, Helvetica, sans-serif !important;
}

/* Refuerzo específico por si el tema aplica fuentes a botones/enlaces */
.vul-coups__toggle,
.vul-coups__toggle *{
  font-family: inherit !important;
  text-transform: none !important;   /* evita mayúsculas forzadas */
  letter-spacing: normal !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d4c1c27 *//* ========== VULTEC • Login de cabecera ========== */

:root{
  --v-card-radius: 12px;
  --v-card-shadow: 0 12px 28px rgba(0,0,0,.12);
  --v-border: 1px solid #eaeaea;
}

/* contenedor */
.v-login{ position:relative; font-family:"Roboto", Arial, Helvetica, sans-serif; }

/* Botón del header: EXACTAMENTE con tus estilos pedidos */
.v-login-btn{
  all: unset;
  display:inline-flex; align-items:center; gap:.5rem; cursor:pointer;
  font-size:18px; font-weight:600; color:#000; text-transform:none;
  font-family:"Roboto", Arial, Helvetica, sans-serif !important;
  line-height:1;
}
/* sin subrayados ni cambios de color */
.v-login-btn:hover,
.v-login.is-open .v-login-btn{
  text-decoration:none; color:#000;
}

/* iconos */
.v-login-ic, .v-caret{ width:20px; height:20px; fill:none; stroke:#000; stroke-width:2; }
.v-caret{ transition:transform .18s ease; }
.v-login.is-open .v-caret{ transform:rotate(180deg); }

/* Dropdown compacto */
.v-login-menu{
  position:absolute; top:calc(100% + 10px); right:0;
  min-width: 210px; max-width: calc(100vw - 24px);
  background:#fff; border:var(--v-border); border-radius:var(--v-card-radius);
  box-shadow:var(--v-card-shadow);
  padding:.25rem 0; z-index:10010; display:none;
}
.v-login.is-open .v-login-menu{ display:block; }

/* listas y items */
.v-login-menu ul{ list-style:none; margin:0; padding:0; }
.v-login-menu li{ margin:0; }
.v-login-menu a{
  display:block; padding:.55rem .9rem;
  color:#000; text-decoration:none;
  font-family:"Roboto", Arial, Helvetica, sans-serif !important;
  font-size:15px; font-weight:500;
}
.v-login-menu a:hover{ background:#f4f6f7; }

/* estados */
.v-guest{ display:none; }
.v-user{  display:none; }

/* que nada del tema lo pinte de verde */
.v-login-btn, .v-login-btn *{
  background:transparent !important; border:0 !important; box-shadow:none !important;
  color:#000 !important;
}

/* Responsive tweaks */
@media (max-width: 1024px){
  .v-login-menu{ min-width: 200px; }
  .v-login-menu a{ font-size:14.5px; padding:.5rem .85rem; }
}
@media (max-width: 480px){
  .v-login-btn{ font-size:17px; }
  .v-login-menu{ min-width: 190px; }
  .v-login-menu a{ font-size:14px; padding:.5rem .8rem; }
}

/* (Opcional) overlay del popup xoo-el un poco más suave */
.xoo-el-overlay{
  background: rgba(0,0,0,.38) !important;
  backdrop-filter: saturate(110%) blur(1px);
}
.xoo-el-modal{
  border-radius: 14px !important;
  box-shadow: 0 20px 60px rgba(0,0,0,.25) !important;
}/* End custom CSS */
/* Start custom CSS for woocommerce-menu-cart, class: .elementor-element-ed7c947 *//* Icono sin cápsula + tipografía Roboto solo en este widget */
.elementor-58850 .elementor-element.elementor-element-ed7c947 .elementor-menu-cart__toggle_button{
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
}
.elementor-58850 .elementor-element.elementor-element-ed7c947 .elementor-button-icon{ font-size: 25px; line-height: 1; }
.elementor-58850 .elementor-element.elementor-element-ed7c947{ font-family: "Roboto", Arial, Helvetica, sans-serif !important; }/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-3ddebfa *//* Altura mínima + centrado vertical, soporta Section y Container */
.elementor-58850 .elementor-element.elementor-element-3ddebfa { 
  --vh-header: 75px; /* ⇦ Ajusta el alto que quieras (desktop) */
}
@media (max-width: 768px){
  .elementor-58850 .elementor-element.elementor-element-3ddebfa { --vh-header: 68px; } /* alto en móvil */
}

/* Elementor “Section” tradicional */
.elementor-58850 .elementor-element.elementor-element-3ddebfa > .elementor-container{
  min-height: var(--vh-header);
  display: flex;
  align-items: center;
}
/* Elementor “Container (Flexbox)” */
.elementor-58850 .elementor-element.elementor-element-3ddebfa > .e-con,
.elementor-58850 .elementor-element.elementor-element-3ddebfa > .e-con-inner{
  min-height: var(--vh-header);
  display: flex;
  align-items: center;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0aa7958 *//* ===== Encapsulado #vb6-bar ===== */
#vb6-bar.vb6{
  --bg:#111;
  --text:#E7EAED;
  --muted:#C8CDD2;
  --sep:rgba(255,255,255,.18);
  --h-desktop:40px;
  --h-touch:44px;
  --maxw:1200px;

  width:100vw; max-width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  background:var(--bg);
  font-family:inherit;
  line-height:0;
  display: flex !important;
  justify-content: center !important;
}
@supports (width:100dvw){
  #vb6-bar.vb6{
    width:100dvw; max-width:100dvw;
    margin-left:calc(50% - 50dvw);
    margin-right:calc(50% - 50dvw);
  }
}

/* contenedor centrado */
#vb6-bar .vb6__viewport{
  max-width:var(--maxw);
  margin:0 auto;
  padding:0 clamp(6px,2vw,24px);
  box-sizing:border-box;
  line-height:1;
}

/* carrusel táctil (base móvil) */
#vb6-bar .vb6__track{
  margin:0; padding:0;                 /* ⬅ elimina márgenes por defecto del <ul> */
  display:flex; align-items:center;
  height:var(--h-touch);
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  gap:0 !important;
}
#vb6-bar .vb6__track::-webkit-scrollbar{ display:none; }

#vb6-bar .vb6__item{
  list-style:none;
  position:relative;
  flex:0 0 100%;                       /* ⬅ móvil: 1 por vista, centrado */
  scroll-snap-align:start;
  box-sizing:border-box;
}

/* separador visual (no afecta ancho) */
#vb6-bar .vb6__item + .vb6__item::before{
  content:"";
  position:absolute; left:0; top:25%; bottom:25%;
  width:1px; background:var(--sep);
}

/* contenido */
#vb6-bar .vb6__link{
  cursor:default; pointer-events:none; /* ⬅ sin enlaces/clicks */
  display:flex; align-items:center; justify-content:center;
  gap:12px; height:100%;
  padding:8px 10px;
  color:var(--text) !important;
  font-weight:600; font-size:13px; white-space:nowrap;
  text-decoration:none;
}
#vb6-bar .vb6__icon{ color:var(--muted) !important; display:inline-flex; line-height:0; }
#vb6-bar .vb6__icon svg{ width:18px; height:18px; }

/* tablet: 3 por vista */
@media (min-width:768px){
  #vb6-bar .vb6__item{ flex-basis: calc(100%/3); }
}

/* desktop: 6 fijos, sin carrusel */
@media (min-width:1025px){
  #vb6-bar .vb6__track{
    overflow:visible; scroll-snap-type:none;
    height:var(--h-desktop);
    display:grid; grid-template-columns:repeat(6,1fr);
  }
  #vb6-bar .vb6__item{ flex:0 0 auto; }
}

/* móviles angostos: texto un poco menor si quieres 2 por vista, cambia a 50% */
@media (max-width:420px){
  /* Si quieres probar 2 por vista en muy estrechos:
     #vb6-bar .vb6__item{ flex-basis:50%; }
     #vb6-bar .vb6__link{ font-size:12px; gap:10px; }
  */
}/* End custom CSS */