.elementor-kit-7{--e-global-color-primary:#0167BB;--e-global-color-secondary:#04121F;--e-global-color-text:#48566A;--e-global-color-accent:#00C11A;--e-global-color-grabverdeosc:#0A2A18;--e-global-color-grabazulclaro:#3F9BEE;--e-global-color-grabverdeclaro:#22D34A;--e-global-color-grabtitulo:#0B1B2B;--e-global-color-grabmuted:#7FA3C9;--e-global-color-grabsurface:#FFFFFF;--e-global-color-grabsurface2:#F3F6FA;--e-global-color-grabborde:#E3E9F1;--e-global-color-grabwa:#25D366;--e-global-color-grabcard:#FFFFFF;--e-global-color-grabtexto:#5A6B80;--e-global-color-grabmuted2:#7A8899;--e-global-color-grabdark:#04121F;--e-global-typography-primary-font-family:"Archivo";--e-global-typography-primary-font-weight:800;--e-global-typography-secondary-font-family:"Archivo";--e-global-typography-secondary-font-weight:700;--e-global-typography-text-font-family:"Outfit";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Outfit";--e-global-typography-accent-font-weight:600;color:#48566A;font-family:"Outfit", Sans-serif;font-size:16px;font-weight:400;line-height:1.65em;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{background-color:#00C11A;font-family:"Outfit", Sans-serif;font-size:15px;font-weight:700;letter-spacing:0.2px;color:#04121F;border-radius:99px 99px 99px 99px;padding:14px 26px 14px 26px;}.elementor-kit-7 button:hover,.elementor-kit-7 button:focus,.elementor-kit-7 input[type="button"]:hover,.elementor-kit-7 input[type="button"]:focus,.elementor-kit-7 input[type="submit"]:hover,.elementor-kit-7 input[type="submit"]:focus,.elementor-kit-7 .elementor-button:hover,.elementor-kit-7 .elementor-button:focus{background-color:#0167BB;color:#FFFFFF;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 a{color:#0167BB;}.elementor-kit-7 a:hover{color:#00C11A;}.elementor-kit-7 h1{color:#0B1B2B;font-family:"Archivo", Sans-serif;font-weight:800;line-height:1.05em;letter-spacing:-1.2px;}.elementor-kit-7 h2{color:#0B1B2B;font-family:"Archivo", Sans-serif;font-weight:800;line-height:1.15em;letter-spacing:-0.6px;}.elementor-kit-7 h3{color:#0B1B2B;font-family:"Archivo", Sans-serif;font-weight:700;line-height:1.25em;}.elementor-kit-7 h4{color:#0B1B2B;font-family:"Archivo", Sans-serif;font-weight:700;}.elementor-kit-7 h5{color:#0B1B2B;font-family:"Outfit", Sans-serif;font-weight:600;}.elementor-kit-7 h6{color:#0B1B2B;font-family:"Outfit", Sans-serif;font-weight:600;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ===== Grab Recargas · ajustes globales ===== */
[data-elementor-type="wp-page"] .elementor-widget-image a{color:inherit;text-decoration:none;}
[data-elementor-type="wp-page"] .elementor-widget-image figcaption.widget-image-caption{color:#3B4A5C;}
[data-elementor-type="wp-page"] .elementor-widget-image:hover figcaption.widget-image-caption{color:#0167BB;}
[data-elementor-type="wp-page"] .elementor-widget-heading a{color:inherit;text-decoration:none;}
[data-elementor-type="wp-page"] .elementor-widget-heading a:hover{color:#0167BB;}
#grab-header .elementor-nav-menu--dropdown{background-color:#08243B;border-radius:0 0 14px 14px;overflow:hidden;}

/* Tarjetas de consola: imagen de alto fijo y boton pegado abajo,
   para que titulo, texto y boton queden a la misma altura en las cuatro. */
#consolas .e-con > .e-con{ justify-content:flex-start; }
#consolas .e-con > .e-con > .elementor-widget-button{ margin-top:auto !important; }
#consolas .e-con > .e-con .elementor-widget-image img{ display:block; margin-left:auto; margin-right:auto; }

/* ===== Tablet ===== */
@media (max-width:1024px){
  [data-elementor-type="wp-page"] .e-con-inner > .e-con,
  [data-elementor-type="wp-page"] .e-con > .e-con{--width:calc(50% - 10px) !important;}
  [data-elementor-type="footer"] .e-con-inner > .e-con,
  [data-elementor-type="footer"] .e-con > .e-con{--width:calc(50% - 10px) !important;}
}

/* ===== Celular: mismo comportamiento que el prototipo ===== */
@media (max-width:767px){
  [data-elementor-type="wp-page"] .e-con-inner > .e-con,
  [data-elementor-type="wp-page"] .e-con > .e-con{--width:100% !important;}

  /* Cabecera en una sola fila y compacta */
  #grab-header > .e-con:first-child > .e-con-inner{padding:5px 12px !important;}
  #grab-header .elementor-widget-text-editor p{font-size:10px !important;line-height:1.3 !important;letter-spacing:0 !important;}
  #grab-header > .e-con:last-child > .e-con-inner{
    flex-wrap:nowrap !important;align-items:center !important;gap:10px !important;padding:8px 14px !important;min-height:0 !important;}
  #grab-header > .e-con:last-child{--min-height:0 !important;min-height:0 !important;}
  #grab-header .elementor-widget-theme-site-logo{flex:0 0 auto !important;width:auto !important;order:1;}
  #grab-header .elementor-widget-theme-site-logo img{height:34px !important;}
  #grab-header .e-con-inner > .e-con{flex:0 0 auto !important;--width:auto !important;order:2;margin-left:auto !important;}
  #grab-header .elementor-widget-nav-menu{flex:0 0 auto !important;order:3;margin:0 !important;}
  #grab-header .elementor-menu-toggle{padding:5px !important;}
  #grab-header .elementor-widget-button:last-of-type{display:none !important;}
  #grab-header .elementor-widget-button .elementor-button{padding:8px 13px !important;font-size:12.5px !important;}

  /* Hero compacto para que los juegos entren casi de inmediato */
  #hero{--min-height:0 !important;min-height:0 !important;}
  #hero > .e-con-inner{padding:26px 16px 24px !important;}
  #hero h1{font-size:28px !important;line-height:1.07 !important;letter-spacing:-0.7px !important;}
  #hero-sub{display:none !important;}
  #hero-proof{margin-top:16px !important;}
  #hero-proof p{font-size:11.5px !important;}

  /* hero: kicker corto, botones en una sola fila y menos aire */
  #hero > .e-con-inner{padding:22px 16px 22px !important;gap:6px !important;}
  #hero .elementor-widget-heading:first-child .elementor-heading-title{font-size:10.5px !important;letter-spacing:1.3px !important;}
  #hero .e-con-inner > .e-con{
    flex-direction:row !important;justify-content:center !important;align-items:center !important;
    gap:10px !important;--width:auto !important;width:auto !important;margin-top:16px !important;padding:0 !important;}
  #hero .elementor-widget-button{width:auto !important;--container-widget-width:auto !important;}
  #hero .elementor-widget-button .elementor-button{padding:9px 15px !important;font-size:12.5px !important;}
  #hero-proof{margin-top:14px !important;}

  /* Ventajas: dos columnas, sólo icono y título */
  #ventajas > .e-con-inner{padding:18px 14px 2px !important;gap:10px !important;}
  #ventajas .e-con-inner > .e-con{--width:calc(50% - 5px) !important;padding:14px 12px !important;}
  #ventajas .e-con-inner > .e-con .elementor-widget-text-editor{display:none !important;}
  #ventajas .elementor-heading-title{font-size:13.5px !important;line-height:1.25 !important;}

  /* Juegos: 5 por fila dentro de una caja con scroll, como en el prototipo */
  #juegos > .e-con-inner{padding:16px 12px 14px !important;}
  #juegos h2.elementor-heading-title{font-size:17px !important;margin-bottom:2px !important;}
  #juegos > .e-con-inner > .elementor-widget-text-editor{display:none !important;}
  #juegos .e-con-inner > .e-con{
    max-height:188px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
    gap:8px 5px !important;padding:0 0 10px 0 !important;
    -webkit-mask-image:linear-gradient(to bottom,#000 88%,transparent 100%);
            mask-image:linear-gradient(to bottom,#000 88%,transparent 100%);
  }
  #juegos .e-con-inner > .e-con::-webkit-scrollbar{width:4px;}
  #juegos .e-con-inner > .e-con::-webkit-scrollbar-thumb{background:#D8E1EC;border-radius:99px;}
  #juegos .elementor-widget-image{width:calc(20% - 4px) !important;}
  #juegos .elementor-widget-image img{width:60px !important;}
  #juegos figcaption.widget-image-caption{font-size:9px !important;line-height:1.15 !important;}

  /* Consolas: cuatro columnas también en celular */
  #consolas > .e-con-inner{padding:26px 12px 28px !important;}
  #consolas > .e-con-inner > .elementor-widget-text-editor{display:none !important;}
  #consolas .e-con-inner > .e-con{gap:8px !important;padding:0 !important;}
  #consolas .e-con > .e-con{--width:calc(25% - 6px) !important;padding:12px 5px 12px !important;border-radius:16px !important;}
  #consolas .e-con > .e-con img{width:100% !important;max-width:68px !important;}
  #consolas .e-con > .e-con .elementor-heading-title{font-size:10.5px !important;line-height:1.2 !important;}
  #consolas .e-con > .e-con .elementor-widget-heading{margin-top:8px !important;}
  #consolas .e-con > .e-con .elementor-widget-text-editor,
  #consolas .e-con > .e-con .elementor-widget-button{display:none !important;}

  /* menú desplegable fuera del flujo: si no, estira la cabecera */
  #grab-header .elementor-widget-nav-menu{position:relative !important;}
  #grab-header .elementor-widget-nav-menu > .elementor-widget-container{display:flex !important;justify-content:flex-end !important;}
  #grab-header .elementor-nav-menu--dropdown{position:absolute !important;top:calc(100% + 8px) !important;right:0 !important;left:auto !important;min-width:230px !important;z-index:99 !important;}
  #grab-header > .e-con:last-child > .e-con-inner{padding:7px 14px !important;}
  #grab-header .elementor-widget-theme-site-logo img{height:32px !important;}

  /* la sección de juegos usa todo el ancho disponible */
  #juegos{--padding-left:14px !important;--padding-right:14px !important;}
  #juegos > .e-con-inner{padding-left:0 !important;padding-right:0 !important;}
  #consolas{--padding-left:12px !important;--padding-right:12px !important;}
  #consolas > .e-con-inner{padding-left:0 !important;padding-right:0 !important;}

  /* Resto de bloques más compactos */
  #como-funciona > .e-con-inner{padding:32px 16px 34px !important;}
  #cta-final > .e-con-inner{padding:26px 16px 44px !important;}
  #gp-banner{margin:26px 14px !important;}
  #gp-banner > .e-con-inner{padding:26px 20px !important;}
}

@media (max-width:900px){
  [data-elementor-type="footer"] .e-con-inner > .e-con{--width:calc(50% - 10px) !important;}
}
@media (max-width:560px){
  [data-elementor-type="footer"] .e-con-inner > .e-con{--width:100% !important;}
}

/* ===== Modo oscuro automático (sigue el sistema) ===== */
@media (prefers-color-scheme: dark) and (max-width:767px){
  :root, body, .elementor-kit-7{
    --e-global-color-grabsurface:#0B1826;
    --e-global-color-grabsurface2:#12283C;
    --e-global-color-grabcard:#1A3350;
    --e-global-color-grabborde:#2C4A68;
    --e-global-color-grabtitulo:#EAF2FA;
    --e-global-color-grabtexto:#AFC3D8;
    --e-global-color-grabmuted2:#8398AF;
    --e-global-color-primary:#3F9BEE;
    --e-global-color-accent:#22D34A;
    --e-global-color-text:#AFC3D8;
    color-scheme: dark;
  }
  body{background-color:#0B1826;color:#AFC3D8;}

  /* WooCommerce: tablas, formularios y avisos */
  .woocommerce table.shop_table,
  .woocommerce table.shop_table td,
  .woocommerce table.shop_table th,
  .woocommerce .cart_totals,
  .woocommerce-checkout #order_review,
  .woocommerce-MyAccount-content,
  .woocommerce-MyAccount-navigation li a{
    background-color:#1A3350 !important;border-color:#2C4A68 !important;color:#AFC3D8 !important;}
  .woocommerce table.shop_table th,
  .woocommerce-MyAccount-content h2,
  .woocommerce-MyAccount-content h3{color:#EAF2FA !important;}
  .woocommerce form .form-row input.input-text,
  .woocommerce form .form-row textarea,
  .woocommerce form .form-row select,
  .select2-container--default .select2-selection--single{
    background-color:#0F2030 !important;border-color:#2C4A68 !important;color:#EAF2FA !important;}
  .woocommerce form .form-row label,
  .woocommerce-info, .woocommerce-message, .woocommerce-error{color:#AFC3D8 !important;}
  .woocommerce-info, .woocommerce-message{background-color:#1A3350 !important;}
  .woocommerce ul.products li.product .price{color:#3F9BEE !important;}
  .woocommerce .woocommerce-ordering select,
  .woocommerce .woocommerce-result-count{color:#AFC3D8 !important;}
  .elementor-widget-woocommerce-product-data-tabs .woocommerce-tabs ul.tabs li{
    background-color:#1A3350 !important;border-color:#2C4A68 !important;}
  .select2-dropdown{background-color:#1A3350 !important;color:#EAF2FA !important;border-color:#2C4A68 !important;}
}

/* ===== Tarjetas de categoria en el catalogo ===== */
.woocommerce ul.products li.product-category{
  border:1px solid var(--e-global-color-grabborde);
  border-radius:14px;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.woocommerce ul.products li.product-category:hover{
  transform:translateY(-3px);
  border-color:var(--e-global-color-grabazulclaro);
  box-shadow:0 10px 26px rgba(1,103,187,.16);
}
.woocommerce ul.products li.product-category a{ display:block; text-align:center; }
.woocommerce ul.products li.product-category a img,
.woocommerce ul.products li.product-category a img,
.woocommerce ul.products li.product-category img{
  display:block !important; width:auto !important; max-width:100% !important; height:140px !important;
  object-fit:contain !important; margin:0 auto 12px !important;
}
.woocommerce ul.products li.product-category h2,
.woocommerce ul.products li.product-category h3{
  margin:0; font-size:15px; line-height:1.3;
}
.woocommerce ul.products li.product-category .count{
  display:block; margin-top:5px; background:transparent;
  font-size:12px; font-weight:600; letter-spacing:.2px;
  color:var(--e-global-color-grabmuted2);
}
#cat-breadcrumb .woocommerce-breadcrumb{ margin:0; }
#cat-breadcrumb a{ text-decoration:none; }
@media (max-width:760px){
  .woocommerce ul.products li.product-category a img,
  .woocommerce ul.products li.product-category img{ height:104px !important; }
  .woocommerce ul.products li.product-category h2,
  .woocommerce ul.products li.product-category h3{ font-size:13.5px; }
}

/* ===== Pie compacto en movil (no afecta escritorio) ===== */
@media (max-width:760px){
  #grab-footer > .e-con{ flex:1 1 100% !important; width:100% !important; max-width:100% !important; }
  #grab-footer .elementor-element-f2ed4b1 > .e-con-inner{ width:100% !important; }
  #grab-footer .elementor-element-f2ed4b1 > .e-con-inner{
    display:flex !important; flex-wrap:wrap !important;
    gap:14px 16px !important;
    padding-top:26px !important; padding-bottom:14px !important;
  }
  #grab-footer .elementor-element-074ac26{
    flex:0 0 100% !important; width:100% !important;
    align-items:center !important; text-align:center !important;
    gap:8px !important;
  }
  #grab-footer .elementor-element-074ac26 .elementor-widget-text-editor{ display:none !important; }
  #grab-footer .elementor-element-7c05083,
  #grab-footer .elementor-element-8f5ae49,
  #grab-footer .elementor-element-dfa603e{
    flex:1 1 calc(50% - 8px) !important; width:auto !important;
    max-width:none !important; gap:6px !important;
  }
  #grab-footer .elementor-element-f2ed4b1 .elementor-widget-heading{ margin-bottom:2px !important; }
  #grab-footer .elementor-icon-list-items > li{ margin-bottom:0 !important; }
  #grab-footer .elementor-icon-list-item,
  #grab-footer .elementor-icon-list-item a{ font-size:13px !important; line-height:1.75 !important; }
  #grab-footer .elementor-element-ab1e5b9 > .e-con-inner,
  #grab-footer .elementor-element-ab1e5b9{
    padding-top:12px !important; padding-bottom:12px !important;
  }
  #grab-footer .elementor-element-cd4a915 > .e-con-inner,
  #grab-footer .elementor-element-cd4a915{
    padding-top:10px !important; padding-bottom:14px !important;
  }
  #grab-footer .elementor-element-ab1e5b9 p,
  #grab-footer .elementor-element-cd4a915 p{ font-size:11.5px !important; line-height:1.5 !important; }
}

/* ===== Consolas visibles al cargar en movil ===== */
@media (max-width:767px){
  #consolas > .e-con-inner{ padding-top:16px !important; padding-bottom:20px !important; gap:12px !important; }
  #consolas h2.elementor-heading-title{ line-height:1.16 !important; }
  #hero > .e-con-inner{ padding-top:18px !important; padding-bottom:20px !important; }
}

/* ===== Ajuste fino movil: barra del titulo y botones del hero ===== */
@media (max-width:767px){
  /* la franja del titulo "Elige tu juego" mas delgada */
  #juegos > .e-con-inner{ padding-top:10px !important; gap:6px !important; }
  #juegos > .e-con-inner > .elementor-widget-heading{ margin-bottom:0 !important; }
  #juegos h2.elementor-heading-title{ margin-bottom:0 !important; line-height:1.15 !important; }
  /* lo mismo en consolas para que no se vea desparejo */
  #consolas > .e-con-inner > .elementor-widget-heading{ margin-bottom:0 !important; }
}

/* ===== Tarjetas de consola compactas en movil ===== */
@media (max-width:767px){
  #consolas .elementor-element-0ce38ec > .e-con{ gap:4px !important; }
  #consolas .elementor-element-0ce38ec > .e-con > .e-con-inner{ gap:4px !important; }
  #consolas .elementor-element-0ce38ec .elementor-widget-heading{ margin-top:0 !important; margin-bottom:0 !important; }
  #consolas .elementor-element-0ce38ec .elementor-widget-image{ margin-bottom:0 !important; }
}

/* ===== Hero que rellena la primera pantalla en movil ===== */
/* 487px = cabecera 53 + seccion juegos 238 + seccion consolas 196.
   Asi el hero se estira o encoge segun el telefono y "Ventajas" queda
   siempre justo debajo del borde inferior. */
@media (max-width:767px){
  #hero{
    min-height:calc(100vh - 472px) !important;
    min-height:calc(100svh - 472px) !important;
    display:flex !important;
    align-items:center !important;
  }
  #hero > .e-con-inner{
    padding-top:24px !important; padding-bottom:26px !important;
    justify-content:center !important;
    width:100% !important;
  }
}

/* ===== Franja lateral gp-banner en movil ===== */
@media (max-width:767px){
  #gp-banner{ --width:auto !important; width:auto !important; max-width:calc(100% - 28px) !important; }
}

/* ===== Burbuja de WhatsApp en oscuro ===== */
@media (prefers-color-scheme: dark) and (max-width:767px){
  .label-container .label-text{
    background:var(--e-global-color-grabcard) !important;
    color:var(--e-global-color-grabtitulo) !important;
  }
}

/* ===== Como funciona: 3 pasos en horizontal en movil ===== */
@media (max-width:767px){
  #como-funciona{ padding-left:8px !important; padding-right:8px !important; }
  #como-funciona > .e-con-inner{ padding-left:6px !important; padding-right:6px !important; }
  #como-funciona .elementor-element-1ca160f{
    flex-wrap:nowrap !important; gap:7px !important; align-items:stretch !important;
  }
  #como-funciona .elementor-element-1ca160f > .e-con{
    flex:1 1 0 !important; width:auto !important; min-width:0 !important;
    padding:14px 8px !important; border-radius:14px !important;
  }
  #como-funciona .elementor-element-1ca160f > .e-con > .e-con-inner{
    gap:5px !important; padding:0 !important;
  }
  #como-funciona .elementor-element-1ca160f .elementor-widget{ margin-bottom:0 !important; }
  /* numero del paso */
  #como-funciona .elementor-element-1ca160f .elementor-widget-heading:first-child .elementor-heading-title{
    font-size:13px !important;
  }
  #como-funciona .elementor-element-1ca160f .elementor-widget-heading:first-child{
    --icon-size:28px;
  }
  /* titulo del paso */
  #como-funciona .elementor-element-1ca160f .elementor-widget-heading + .elementor-widget-heading .elementor-heading-title{
    font-size:12.5px !important; line-height:1.2 !important;
  }
  /* descripcion */
  #como-funciona .elementor-element-1ca160f .elementor-widget-text-editor{
    font-size:10.5px !important; line-height:1.35 !important;
  }
  #como-funciona .elementor-element-1ca160f .elementor-widget-text-editor p{
    font-size:10.5px !important; line-height:1.35 !important; margin:0 !important;
  }
}

/* ===== Tarjetas de 3 en horizontal en movil (GrabZ y Nosotros) ===== */
@media (max-width:767px){
  .elementor-element-eb2878f,
  .elementor-element-90fe273{
    flex-wrap:nowrap !important; gap:7px !important; align-items:stretch !important;
  }
  .elementor-element-eb2878f > .e-con,
  .elementor-element-90fe273 > .e-con{
    flex:1 1 0 !important; width:auto !important; min-width:0 !important;
    padding:14px 9px !important; border-radius:14px !important;
  }
  .elementor-element-eb2878f > .e-con > .e-con-inner,
  .elementor-element-90fe273 > .e-con > .e-con-inner{
    gap:5px !important; padding:0 !important;
  }
  .elementor-element-eb2878f .elementor-widget,
  .elementor-element-90fe273 .elementor-widget{ margin-bottom:0 !important; }
  .elementor-element-eb2878f .elementor-heading-title,
  .elementor-element-90fe273 .elementor-heading-title{
    font-size:12.5px !important; line-height:1.2 !important;
  }
  .elementor-element-eb2878f .elementor-widget-text-editor,
  .elementor-element-eb2878f .elementor-widget-text-editor p,
  .elementor-element-90fe273 .elementor-widget-text-editor,
  .elementor-element-90fe273 .elementor-widget-text-editor p{
    font-size:10.5px !important; line-height:1.35 !important; margin:0 !important;
  }
  .elementor-element-eb2878f .elementor-icon-list-item,
  .elementor-element-90fe273 .elementor-icon-list-item{ font-size:10.5px !important; }
}

/* ===== Ultimos numeros de GrabZ ===== */
.grabz-ultimos{
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px;
}
.grabz-num{
  display:flex; flex-direction:column; overflow:hidden; text-decoration:none;
  background:var(--e-global-color-grabcard);
  border:1px solid var(--e-global-color-grabborde);
  border-radius:16px;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.grabz-num:hover{
  transform:translateY(-3px);
  border-color:var(--e-global-color-grabazulclaro);
  box-shadow:0 12px 28px rgba(1,103,187,.18);
}
.grabz-num__img{ display:block; aspect-ratio:16/9; overflow:hidden; background:var(--e-global-color-grabsurface2); }
.grabz-num__img img{ width:100%; height:100%; object-fit:cover; display:block; }
.grabz-num__body{ display:flex; flex-direction:column; gap:7px; padding:15px 16px 17px; flex:1; }
.grabz-num__title{
  font-family:var(--e-global-typography-primary-font-family, inherit);
  font-weight:700; font-size:15px; line-height:1.3;
  color:var(--e-global-color-grabtitulo);
}
.grabz-num__desc{ font-size:12.5px; line-height:1.45; color:var(--e-global-color-grabtexto); }
.grabz-num__cta{
  margin-top:auto; font-size:12.5px; font-weight:700; letter-spacing:.2px;
  color:var(--e-global-color-accent);
}
@media (max-width:1024px){ .grabz-ultimos{ gap:14px; } }
@media (max-width:767px){
  .grabz-ultimos{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
  .grabz-num{ border-radius:12px; }
  .grabz-num__body{ padding:10px 10px 12px; gap:5px; }
  .grabz-num__title{ font-size:11.5px; line-height:1.25; }
  .grabz-num__desc{ display:none; }
  .grabz-num__cta{ font-size:10.5px; }
}

/* ===== Rejillas de tarjetas en movil resto de paginas ===== */
@media (max-width:767px){
  /* 3 en una fila: formas de sumar (GrabPoints), equipo y contacto (Nosotros) */
  .elementor-element-25d9c20,
  .elementor-element-22e9933,
  .elementor-element-e32ba26{
    flex-wrap:nowrap !important; gap:7px !important; align-items:stretch !important;
  }
  .elementor-element-25d9c20 > .e-con,
  .elementor-element-22e9933 > .e-con,
  .elementor-element-e32ba26 > .e-con{
    flex:1 1 0 !important; width:auto !important; min-width:0 !important;
    padding:14px 9px !important; border-radius:14px !important;
  }
  /* 6 bonos: rejilla de 3 columnas y 2 filas */
  .elementor-element-65c25f4{
    display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:7px !important; align-items:stretch !important;
  }
  .elementor-element-65c25f4 > .e-con{
    width:auto !important; min-width:0 !important;
    padding:13px 8px !important; border-radius:14px !important;
  }
  /* tipografia compacta comun a estas rejillas */
  .elementor-element-25d9c20 > .e-con > .e-con-inner,
  .elementor-element-22e9933 > .e-con > .e-con-inner,
  .elementor-element-e32ba26 > .e-con > .e-con-inner,
  .elementor-element-65c25f4 > .e-con > .e-con-inner{
    gap:5px !important; padding:0 !important;
  }
  .elementor-element-25d9c20 .elementor-widget,
  .elementor-element-22e9933 .elementor-widget,
  .elementor-element-e32ba26 .elementor-widget,
  .elementor-element-65c25f4 .elementor-widget{ margin-bottom:0 !important; }
  .elementor-element-25d9c20 .elementor-heading-title,
  .elementor-element-22e9933 .elementor-heading-title,
  .elementor-element-e32ba26 .elementor-heading-title,
  .elementor-element-65c25f4 .elementor-heading-title{
    font-size:12.5px !important; line-height:1.2 !important;
  }
  .elementor-element-25d9c20 .elementor-widget-text-editor,
  .elementor-element-25d9c20 .elementor-widget-text-editor p,
  .elementor-element-22e9933 .elementor-widget-text-editor,
  .elementor-element-22e9933 .elementor-widget-text-editor p,
  .elementor-element-e32ba26 .elementor-widget-text-editor,
  .elementor-element-e32ba26 .elementor-widget-text-editor p,
  .elementor-element-65c25f4 .elementor-widget-text-editor,
  .elementor-element-65c25f4 .elementor-widget-text-editor p{
    font-size:10.5px !important; line-height:1.35 !important; margin:0 !important;
    overflow-wrap:anywhere !important;
  }
  /* la cifra grande del bono se mantiene destacada */
  .elementor-element-65c25f4 .elementor-widget-heading:nth-child(2) .elementor-heading-title{
    font-size:17px !important;
  }
  .elementor-element-25d9c20 .elementor-widget-heading:first-child .elementor-heading-title{
    font-size:16px !important;
  }
  /* iconos e imagenes dentro de estas tarjetas */
  .elementor-element-22e9933 .elementor-widget-image img,
  .elementor-element-e32ba26 .elementor-widget-image img{
    max-height:44px !important; width:auto !important; object-fit:contain !important;
  }
  .elementor-element-e32ba26 .elementor-icon-list-item,
  .elementor-element-e32ba26 .elementor-icon-list-item a{
    font-size:10.5px !important; overflow-wrap:anywhere !important;
  }
}

/* ===== Elevacion de tarjetas de producto y categoria ===== */
.woocommerce ul.products li.product,
.woocommerce ul.products li.product-category{
  background:var(--e-global-color-grabcard) !important;
  border:1px solid var(--e-global-color-grabborde);
}
.woocommerce ul.products li.product .price{ color:var(--e-global-color-grabtitulo); }
.woocommerce ul.products li.product .woocommerce-loop-product__title{ color:var(--e-global-color-grabtitulo); }


/* ===== WooCommerce con la paleta del sitio ===== */
.woocommerce-account form.login,
.woocommerce-account form.register,
.woocommerce-account form.checkout_coupon,
.woocommerce-account form.lost_reset_password,
.woocommerce-account .cart_totals,
.woocommerce-account #order_review,
.woocommerce-account .woocommerce-order-details,
.woocommerce-account .woocommerce-customer-details,
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-cart form.login,
.woocommerce-cart form.register,
.woocommerce-cart form.checkout_coupon,
.woocommerce-cart form.lost_reset_password,
.woocommerce-cart .cart_totals,
.woocommerce-cart #order_review,
.woocommerce-cart .woocommerce-order-details,
.woocommerce-cart .woocommerce-customer-details,
.woocommerce-cart .woocommerce-MyAccount-content,
.woocommerce-checkout form.login,
.woocommerce-checkout form.register,
.woocommerce-checkout form.checkout_coupon,
.woocommerce-checkout form.lost_reset_password,
.woocommerce-checkout .cart_totals,
.woocommerce-checkout #order_review,
.woocommerce-checkout .woocommerce-order-details,
.woocommerce-checkout .woocommerce-customer-details,
.woocommerce-checkout .woocommerce-MyAccount-content,
.woocommerce-order-received form.login,
.woocommerce-order-received form.register,
.woocommerce-order-received form.checkout_coupon,
.woocommerce-order-received form.lost_reset_password,
.woocommerce-order-received .cart_totals,
.woocommerce-order-received #order_review,
.woocommerce-order-received .woocommerce-order-details,
.woocommerce-order-received .woocommerce-customer-details,
.woocommerce-order-received .woocommerce-MyAccount-content{
  background:var(--e-global-color-grabcard) !important;
  border:1px solid var(--e-global-color-grabborde) !important;
  border-radius:16px !important;
  color:var(--e-global-color-grabtexto) !important;
}
.woocommerce-account h1,
.woocommerce-account h2,
.woocommerce-account h3,
.woocommerce-account h4,
.woocommerce-account legend,
.woocommerce-account .woocommerce-Address-title,
.woocommerce-account table.shop_table th,
.woocommerce-account .product-name a,
.woocommerce-account .order-total .amount,
.woocommerce-account .cart-subtotal .amount,
.woocommerce-cart h1,
.woocommerce-cart h2,
.woocommerce-cart h3,
.woocommerce-cart h4,
.woocommerce-cart legend,
.woocommerce-cart .woocommerce-Address-title,
.woocommerce-cart table.shop_table th,
.woocommerce-cart .product-name a,
.woocommerce-cart .order-total .amount,
.woocommerce-cart .cart-subtotal .amount,
.woocommerce-checkout h1,
.woocommerce-checkout h2,
.woocommerce-checkout h3,
.woocommerce-checkout h4,
.woocommerce-checkout legend,
.woocommerce-checkout .woocommerce-Address-title,
.woocommerce-checkout table.shop_table th,
.woocommerce-checkout .product-name a,
.woocommerce-checkout .order-total .amount,
.woocommerce-checkout .cart-subtotal .amount,
.woocommerce-order-received h1,
.woocommerce-order-received h2,
.woocommerce-order-received h3,
.woocommerce-order-received h4,
.woocommerce-order-received legend,
.woocommerce-order-received .woocommerce-Address-title,
.woocommerce-order-received table.shop_table th,
.woocommerce-order-received .product-name a,
.woocommerce-order-received .order-total .amount,
.woocommerce-order-received .cart-subtotal .amount{
  color:var(--e-global-color-grabtitulo) !important;
}
.woocommerce-account p,
.woocommerce-account label,
.woocommerce-account td,
.woocommerce-account li,
.woocommerce-account .woocommerce-privacy-policy-text,
.woocommerce-account .woocommerce-terms-and-conditions-wrapper,
.woocommerce-cart p,
.woocommerce-cart label,
.woocommerce-cart td,
.woocommerce-cart li,
.woocommerce-cart .woocommerce-privacy-policy-text,
.woocommerce-cart .woocommerce-terms-and-conditions-wrapper,
.woocommerce-checkout p,
.woocommerce-checkout label,
.woocommerce-checkout td,
.woocommerce-checkout li,
.woocommerce-checkout .woocommerce-privacy-policy-text,
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper,
.woocommerce-order-received p,
.woocommerce-order-received label,
.woocommerce-order-received td,
.woocommerce-order-received li,
.woocommerce-order-received .woocommerce-privacy-policy-text,
.woocommerce-order-received .woocommerce-terms-and-conditions-wrapper{
  color:var(--e-global-color-grabtexto);
}
.woocommerce-account small,
.woocommerce-account .description,
.woocommerce-cart small,
.woocommerce-cart .description,
.woocommerce-checkout small,
.woocommerce-checkout .description,
.woocommerce-order-received small,
.woocommerce-order-received .description{ color:var(--e-global-color-grabmuted2); }
.woocommerce-account table.shop_table,
.woocommerce-cart table.shop_table,
.woocommerce-checkout table.shop_table,
.woocommerce-order-received table.shop_table{
  background:var(--e-global-color-grabcard) !important;
  border:1px solid var(--e-global-color-grabborde) !important;
  border-radius:16px !important;
}
.woocommerce-account table.shop_table td,
.woocommerce-account table.shop_table tbody th,
.woocommerce-account table.shop_table tfoot td,
.woocommerce-account table.shop_table tfoot th,
.woocommerce-account table.shop_table thead th,
.woocommerce-cart table.shop_table td,
.woocommerce-cart table.shop_table tbody th,
.woocommerce-cart table.shop_table tfoot td,
.woocommerce-cart table.shop_table tfoot th,
.woocommerce-cart table.shop_table thead th,
.woocommerce-checkout table.shop_table td,
.woocommerce-checkout table.shop_table tbody th,
.woocommerce-checkout table.shop_table tfoot td,
.woocommerce-checkout table.shop_table tfoot th,
.woocommerce-checkout table.shop_table thead th,
.woocommerce-order-received table.shop_table td,
.woocommerce-order-received table.shop_table tbody th,
.woocommerce-order-received table.shop_table tfoot td,
.woocommerce-order-received table.shop_table tfoot th,
.woocommerce-order-received table.shop_table thead th{
  border-color:var(--e-global-color-grabborde) !important;
}
.woocommerce-account table.shop_table_responsive tr td::before,
.woocommerce-account table.shop_table_responsive tr th::before,
.woocommerce-cart table.shop_table_responsive tr td::before,
.woocommerce-cart table.shop_table_responsive tr th::before,
.woocommerce-checkout table.shop_table_responsive tr td::before,
.woocommerce-checkout table.shop_table_responsive tr th::before,
.woocommerce-order-received table.shop_table_responsive tr td::before,
.woocommerce-order-received table.shop_table_responsive tr th::before{
  color:var(--e-global-color-grabmuted2) !important;
}
.woocommerce-account input[type=text],
.woocommerce-account input[type=email],
.woocommerce-account input[type=tel],
.woocommerce-account input[type=password],
.woocommerce-account input[type=number],
.woocommerce-account input[type=search],
.woocommerce-account textarea,
.woocommerce-account select,
.woocommerce-account .select2-container--default .select2-selection--single,
.woocommerce-cart input[type=text],
.woocommerce-cart input[type=email],
.woocommerce-cart input[type=tel],
.woocommerce-cart input[type=password],
.woocommerce-cart input[type=number],
.woocommerce-cart input[type=search],
.woocommerce-cart textarea,
.woocommerce-cart select,
.woocommerce-cart .select2-container--default .select2-selection--single,
.woocommerce-checkout input[type=text],
.woocommerce-checkout input[type=email],
.woocommerce-checkout input[type=tel],
.woocommerce-checkout input[type=password],
.woocommerce-checkout input[type=number],
.woocommerce-checkout input[type=search],
.woocommerce-checkout textarea,
.woocommerce-checkout select,
.woocommerce-checkout .select2-container--default .select2-selection--single,
.woocommerce-order-received input[type=text],
.woocommerce-order-received input[type=email],
.woocommerce-order-received input[type=tel],
.woocommerce-order-received input[type=password],
.woocommerce-order-received input[type=number],
.woocommerce-order-received input[type=search],
.woocommerce-order-received textarea,
.woocommerce-order-received select,
.woocommerce-order-received .select2-container--default .select2-selection--single{
  background:var(--e-global-color-grabsurface2) !important;
  color:var(--e-global-color-grabtitulo) !important;
  border:1px solid var(--e-global-color-grabborde) !important;
  border-radius:10px !important;
}
.woocommerce-account input::placeholder,
.woocommerce-account textarea::placeholder,
.woocommerce-cart input::placeholder,
.woocommerce-cart textarea::placeholder,
.woocommerce-checkout input::placeholder,
.woocommerce-checkout textarea::placeholder,
.woocommerce-order-received input::placeholder,
.woocommerce-order-received textarea::placeholder{
  color:var(--e-global-color-grabmuted2) !important; opacity:1;
}
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-error,
.woocommerce-account .cart-empty,
.woocommerce-cart .woocommerce-info,
.woocommerce-cart .woocommerce-message,
.woocommerce-cart .woocommerce-error,
.woocommerce-cart .cart-empty,
.woocommerce-checkout .woocommerce-info,
.woocommerce-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-error,
.woocommerce-checkout .cart-empty,
.woocommerce-order-received .woocommerce-info,
.woocommerce-order-received .woocommerce-message,
.woocommerce-order-received .woocommerce-error,
.woocommerce-order-received .cart-empty{
  background:var(--e-global-color-grabsurface2) !important;
  color:var(--e-global-color-grabtexto) !important;
  border-top-color:var(--e-global-color-accent) !important;
}
.woocommerce-account #payment,
.woocommerce-account .wc_payment_methods,
.woocommerce-cart #payment,
.woocommerce-cart .wc_payment_methods,
.woocommerce-checkout #payment,
.woocommerce-checkout .wc_payment_methods,
.woocommerce-order-received #payment,
.woocommerce-order-received .wc_payment_methods{ background:transparent !important; }
.woocommerce-account #payment .payment_box,
.woocommerce-cart #payment .payment_box,
.woocommerce-checkout #payment .payment_box,
.woocommerce-order-received #payment .payment_box{
  background:var(--e-global-color-grabsurface2) !important;
  color:var(--e-global-color-grabtexto) !important;
  border-radius:10px !important;
}
.woocommerce-account #payment .payment_box::before,
.woocommerce-cart #payment .payment_box::before,
.woocommerce-checkout #payment .payment_box::before,
.woocommerce-order-received #payment .payment_box::before{ border-bottom-color:var(--e-global-color-grabsurface2) !important; }
.woocommerce-account #payment ul.payment_methods,
.woocommerce-cart #payment ul.payment_methods,
.woocommerce-checkout #payment ul.payment_methods,
.woocommerce-order-received #payment ul.payment_methods{ border-bottom-color:var(--e-global-color-grabborde) !important; }
.woocommerce-account a.button,
.woocommerce-account button.button,
.woocommerce-account input.button,
.woocommerce-account a.button.alt,
.woocommerce-account button.button.alt,
.woocommerce-account input.button.alt,
.woocommerce-cart a.button,
.woocommerce-cart button.button,
.woocommerce-cart input.button,
.woocommerce-cart a.button.alt,
.woocommerce-cart button.button.alt,
.woocommerce-cart input.button.alt,
.woocommerce-checkout a.button,
.woocommerce-checkout button.button,
.woocommerce-checkout input.button,
.woocommerce-checkout a.button.alt,
.woocommerce-checkout button.button.alt,
.woocommerce-checkout input.button.alt,
.woocommerce-order-received a.button,
.woocommerce-order-received button.button,
.woocommerce-order-received input.button,
.woocommerce-order-received a.button.alt,
.woocommerce-order-received button.button.alt,
.woocommerce-order-received input.button.alt{
  background:var(--e-global-color-accent) !important;
  color:#04121F !important;
  border:0 !important;
  border-radius:99px !important;
  font-weight:700;
}
.woocommerce-account a.button:hover,
.woocommerce-account button.button:hover,
.woocommerce-account input.button:hover,
.woocommerce-account a.button.alt:hover,
.woocommerce-account button.button.alt:hover,
.woocommerce-cart a.button:hover,
.woocommerce-cart button.button:hover,
.woocommerce-cart input.button:hover,
.woocommerce-cart a.button.alt:hover,
.woocommerce-cart button.button.alt:hover,
.woocommerce-checkout a.button:hover,
.woocommerce-checkout button.button:hover,
.woocommerce-checkout input.button:hover,
.woocommerce-checkout a.button.alt:hover,
.woocommerce-checkout button.button.alt:hover,
.woocommerce-order-received a.button:hover,
.woocommerce-order-received button.button:hover,
.woocommerce-order-received input.button:hover,
.woocommerce-order-received a.button.alt:hover,
.woocommerce-order-received button.button.alt:hover{
  background:var(--e-global-color-grabverdeclaro) !important;
  color:#04121F !important;
}
.woocommerce-account button[name="update_cart"],
.woocommerce-cart button[name="update_cart"],
.woocommerce-checkout button[name="update_cart"],
.woocommerce-order-received button[name="update_cart"]{
  background:var(--e-global-color-grabsurface2) !important;
  color:var(--e-global-color-grabtitulo) !important;
  border:1px solid var(--e-global-color-grabborde) !important;
}
.woocommerce-account a,
.woocommerce-cart a,
.woocommerce-checkout a,
.woocommerce-order-received a{ color:var(--e-global-color-primary); }
.woocommerce-account a.remove,
.woocommerce-cart a.remove,
.woocommerce-checkout a.remove,
.woocommerce-order-received a.remove{ color:var(--e-global-color-grabmuted2) !important; }
.woocommerce-account a.remove:hover,
.woocommerce-cart a.remove:hover,
.woocommerce-checkout a.remove:hover,
.woocommerce-order-received a.remove:hover{ background:transparent !important; color:var(--e-global-color-grabtitulo) !important; }

/* ===== Carrito compacto en movil ===== */
@media (max-width:767px){
  /* una sola caja: manda la seccion, la tabla queda transparente */
  .woocommerce-cart .e-cart-section{
    padding:14px 12px !important;
    background:var(--e-global-color-grabcard) !important;
    border:1px solid var(--e-global-color-grabborde) !important;
    border-radius:16px !important;
  }
  .woocommerce-cart table.shop_table{
    background:transparent !important;
    border:0 !important;
    width:100% !important;
    margin:0 !important;
  }
  .woocommerce-cart table.shop_table_responsive tr{
    display:block;
    padding:10px 0;
    border-bottom:1px solid var(--e-global-color-grabborde);
  }
  .woocommerce-cart table.shop_table_responsive tr:last-child{ border-bottom:0; }
  .woocommerce-cart table.shop_table_responsive td{
    display:flex !important; justify-content:space-between; align-items:center; gap:10px;
    padding:5px 0 !important; border:0 !important; text-align:right !important;
    font-size:13px !important;
  }
  .woocommerce-cart table.shop_table_responsive td::before{
    font-size:12px !important; font-weight:600; text-align:left; float:none !important;
  }
  .woocommerce-cart table.shop_table_responsive td.product-thumbnail{
    justify-content:flex-end !important; padding:0 0 6px !important;
  }
  .woocommerce-cart table.shop_table_responsive td.product-thumbnail::before{ content:none !important; }
  .woocommerce-cart td.product-thumbnail img{ width:74px !important; height:auto !important; border-radius:10px; }
  .woocommerce-cart table.shop_table_responsive td.product-remove{ justify-content:flex-end !important; padding:0 !important; }
  .woocommerce-cart table.shop_table_responsive td.product-remove::before{ content:none !important; }
  .woocommerce-cart td.product-name{ font-weight:600; }
  .woocommerce-cart td.actions{ display:block !important; padding:12px 0 0 !important; }
  .woocommerce-cart td.actions .coupon{ display:flex; gap:7px; margin-bottom:10px; }
  .woocommerce-cart td.actions .coupon input.input-text{ flex:1 1 auto; min-width:0; }
  .woocommerce-cart td.actions .button{ width:100%; }
  .woocommerce-cart .quantity input.qty{ width:64px !important; }
  /* totales */
  .woocommerce-cart .cart_totals{ padding:14px 12px !important; }
  .woocommerce-cart .cart_totals table.shop_table th,
  .woocommerce-cart .cart_totals table.shop_table td{ padding:8px 0 !important; font-size:13px !important; }
  /* aviso de producto anadido: boton debajo, no flotando */
  .woocommerce-cart .woocommerce-message,
  .woocommerce-checkout .woocommerce-message{
    display:flex !important; flex-direction:column; align-items:flex-start; gap:10px;
    padding:14px 14px 14px 44px !important;
  }
  .woocommerce-cart .woocommerce-message .button,
  .woocommerce-checkout .woocommerce-message .button{ float:none !important; margin:0 !important; }
}

/* ===== Envoltorios de Elementor para carrito y checkout ===== */
.e-woocommerce-login-section,
.e-checkout__container .col-1,
.e-checkout__container .col-2,
.woocommerce-checkout .woocommerce-additional-fields,
.e-checkout__order_review,
.e-coupon-box,
.e-cart-section,
.e-cart__totals,
.e-checkout__payment,
.woocommerce-checkout #customer_details{
  background:var(--e-global-color-grabcard) !important;
  border:1px solid var(--e-global-color-grabborde) !important;
  border-radius:16px !important;
}
.e-woocommerce-login-section *,
.e-coupon-box *{ color:var(--e-global-color-grabtexto); }
.e-checkout__order_review .order-total,
.e-checkout__order_review th{ color:var(--e-global-color-grabtitulo) !important; }
/* el aviso de cuenta y cupon llevan su propio enlace en azul */
.e-woocommerce-login-section a,
.e-coupon-box a{ color:var(--e-global-color-primary) !important; }
@media (max-width:767px){
  .e-woocommerce-login-section,
  .e-checkout__container .col-1,
  .e-checkout__container .col-2,
  .woocommerce-checkout .woocommerce-additional-fields,
  .e-checkout__order_review,
  .e-coupon-box,
  .e-checkout__payment{
    padding:14px 12px !important;
  }
  .woocommerce-checkout .e-checkout__container{ gap:12px !important; }
}

/* ===== Sobre Nosotros compacto en movil ===== */
@media (max-width:767px){
  /* las 4 cifras en rejilla de 2x2 en vez de apiladas */
  .elementor-element-4f85899 > .e-con-inner{
    display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important; align-items:stretch !important;
  }
  .elementor-element-4f85899 > .e-con-inner{ width:100% !important; }
  .elementor-element-4f85899 > .e-con,
  .elementor-element-4f85899 > .e-con-inner > .e-con{
    width:auto !important; min-width:0 !important;
    padding:14px 10px !important; border-radius:14px !important;
  }
  .elementor-element-4f85899 .e-con > .e-con-inner{ gap:3px !important; padding:0 !important; }
  .elementor-element-4f85899 .elementor-widget{ margin-bottom:0 !important; }
  .elementor-element-4f85899 .elementor-heading-title{ font-size:21px !important; line-height:1.15 !important; }
  .elementor-element-4f85899 .elementor-widget-text-editor,
  .elementor-element-4f85899 .elementor-widget-text-editor p{
    font-size:10.5px !important; line-height:1.3 !important; margin:0 !important;
  }
  /* el texto largo de Quienes somos, mas compacto */
  .elementor-element-2c90726 > .e-con-inner{ padding-top:26px !important; padding-bottom:24px !important; gap:14px !important; }
  .elementor-element-a21a340 .elementor-widget-text-editor,
  .elementor-element-a21a340 .elementor-widget-text-editor p{
    font-size:13px !important; line-height:1.55 !important;
  }
  .elementor-element-a21a340 .elementor-widget{ margin-bottom:10px !important; }
  /* la insignia de anos de experiencia, mas pequena */
  .elementor-element-c0bbc2c{ padding:14px 12px !important; }
  .elementor-element-c0bbc2c .elementor-heading-title{ font-size:30px !important; line-height:1.1 !important; }
  .elementor-element-c0bbc2c .elementor-widget-text-editor,
  .elementor-element-c0bbc2c .elementor-widget-text-editor p{ font-size:11px !important; margin:0 !important; }
  /* menos aire entre secciones de esta pagina */
  .elementor-element-4f85899 > .e-con-inner,
  .elementor-element-91d628f > .e-con-inner,
  .elementor-element-fba29a4 > .e-con-inner{ padding-top:28px !important; padding-bottom:28px !important; }
}

/* ===== Variables de los widgets WooCommerce de Elementor ===== */
.elementor-widget-woocommerce-cart,
.elementor-widget-woocommerce-checkout-page,
.elementor-widget-woocommerce-my-account,
.elementor-widget-woocommerce-purchase-summary{
  --order-summary-color:var(--e-global-color-grabtexto);
  --order-summary-title-color:var(--e-global-color-grabtitulo);
  --order-summary-variations-color:var(--e-global-color-grabmuted2);
  --order-summary-items-divider-color:var(--e-global-color-grabborde);
  --order-summary-quantity-border-color:var(--e-global-color-grabborde);
  --order-summary-remove-icon-normal-color:var(--e-global-color-grabmuted2);
  --order-summary-remove-icon-hover-color:var(--e-global-color-grabtitulo);
  --totals-color:var(--e-global-color-grabtitulo);
  --totals-divider-color:var(--e-global-color-grabborde);
  --sections-background-color:var(--e-global-color-grabcard);
  --sections-border-color:var(--e-global-color-grabborde);
  --sections-title-color:var(--e-global-color-grabtitulo);
  --sections-descriptions-color:var(--e-global-color-grabtexto);
  --sections-radio-buttons-color:var(--e-global-color-accent);
  --forms-fields-normal-color:var(--e-global-color-grabtitulo);
  --forms-fields-focus-color:var(--e-global-color-grabtitulo);
  --forms-fields-focus-border-color:var(--e-global-color-primary);
  --forms-buttons-normal-text-color:#04121F;
  --forms-buttons-hover-text-color:#04121F;
  --forms-buttons-border-color:var(--e-global-color-grabborde);
  --links-normal-color:var(--e-global-color-primary);
  --links-hover-color:var(--e-global-color-grabazulclaro);
  --product-link-normal-color:var(--e-global-color-grabtitulo);
  --product-link-hover-color:var(--e-global-color-primary);
  --checkout-button-normal-text-color:#04121F;
  --checkout-button-hover-text-color:#04121F;
  --tabs-normal-color:var(--e-global-color-grabtexto);
  --tabs-hover-color:var(--e-global-color-grabtitulo);
  --tabs-active-color:var(--e-global-color-grabtitulo);
  --content-background-color:var(--e-global-color-grabcard);
}
/* el envoltorio del contenido de Mi cuenta que seguia en blanco */
.woocommerce-MyAccount-content-wrapper,
.elementor-widget-woocommerce-my-account .woocommerce-MyAccount-content{
  background:var(--e-global-color-grabcard) !important;
  color:var(--e-global-color-grabtexto) !important;
}
.woocommerce-MyAccount-content-wrapper h2,
.woocommerce-MyAccount-content-wrapper h3,
.woocommerce-MyAccount-content-wrapper strong{
  color:var(--e-global-color-grabtitulo) !important;
}
/* los importes del carrito y del resumen */
.elementor-widget-woocommerce-cart .woocommerce table.cart td span.amount,
.elementor-widget-woocommerce-cart .woocommerce table.cart td bdi,
.woocommerce-cart .woocommerce-Price-amount,
.woocommerce-checkout .woocommerce-Price-amount{
  color:var(--e-global-color-grabtexto) !important;
}
.woocommerce-cart .order-total .woocommerce-Price-amount,
.woocommerce-cart td.product-subtotal .woocommerce-Price-amount,
.woocommerce-checkout .order-total .woocommerce-Price-amount{
  color:var(--e-global-color-grabtitulo) !important;
}

/* ===== Tarjetas de contacto legibles en movil ===== */
@media (max-width:767px){
  /* todo centrado dentro de cada tarjeta */
  .elementor-element-e32ba26 > .e-con-inner > .e-con,
  .elementor-element-e32ba26 > .e-con{
    align-items:center !important; text-align:center !important;
  }
  .elementor-element-e32ba26 .elementor-widget-icon,
  .elementor-element-e32ba26 .elementor-widget-heading{
    width:100% !important; text-align:center !important;
  }
  .elementor-element-e32ba26 .elementor-icon-wrapper{ text-align:center !important; }
  /* el rotulo (UBICACION, CORREO, WHATSAPP) */
  .elementor-element-e32ba26 .elementor-widget-heading:nth-child(2) .elementor-heading-title{
    font-size:10px !important; letter-spacing:.4px !important;
  }
  /* el dato: que parta donde haga falta y no se salga de la tarjeta */
  .elementor-element-e32ba26 .elementor-widget-heading:nth-child(3) .elementor-heading-title{
    font-size:10.5px !important; line-height:1.35 !important;
    overflow-wrap:anywhere !important; word-break:break-word !important;
    hyphens:none !important;
  }
  .elementor-element-e32ba26 .elementor-heading-title{
    max-width:100% !important; overflow-wrap:anywhere !important;
  }
}


/* ===== Video de fondo del hero atenuado ===== */
#hero .elementor-background-video-container{
  filter:saturate(.72) brightness(.66) contrast(1.02) !important;
}
#hero .elementor-background-video-container::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(5,14,26,.52) 0%, rgba(5,14,26,.62) 45%, rgba(5,14,26,.78) 100%);
  pointer-events:none;
  z-index:1;
}
@media (max-width:767px){
  #hero .elementor-background-video-container{
    filter:saturate(.7) brightness(.6) !important;
  }
  #hero .elementor-background-video-container::after{
    background:linear-gradient(180deg, rgba(5,14,26,.58) 0%, rgba(5,14,26,.7) 50%, rgba(5,14,26,.84) 100%);
  }
}


/* ===== Insignias de entrega del producto en una fila en movil ===== */
@media (max-width:767px){
  .elementor-element-920b38d{
    flex-wrap:nowrap !important;
    gap:6px !important;
    align-items:stretch !important;
  }
  .elementor-element-920b38d > .e-con{
    flex:1 1 0 !important;
    width:auto !important;
    min-width:0 !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    gap:4px !important;
    padding:9px 5px !important;
  }
  .elementor-element-920b38d .elementor-widget-icon{ margin:0 !important; width:auto !important; }
  .elementor-element-920b38d .elementor-icon-wrapper{ text-align:center !important; }
  .elementor-element-920b38d .elementor-icon{ font-size:15px !important; }
  .elementor-element-920b38d .elementor-widget-text-editor{ width:100% !important; }
  .elementor-element-920b38d .elementor-widget-text-editor,
  .elementor-element-920b38d .elementor-widget-text-editor p{
    font-size:10.5px !important;
    line-height:1.22 !important;
    letter-spacing:0 !important;
    text-align:center !important;
    margin:0 !important;
    overflow-wrap:anywhere !important;
  }
}

/* ===== Descripcion del producto legible en modo oscuro ===== */
.woocommerce-Tabs-panel h1,
.woocommerce-Tabs-panel h2,
.woocommerce-Tabs-panel h3,
.woocommerce-Tabs-panel h4,
.woocommerce-Tabs-panel h5,
.woocommerce-Tabs-panel strong,
.woocommerce-Tabs-panel b{
  color: var(--e-global-color-grabtitulo) !important;
}
.woocommerce-Tabs-panel,
.woocommerce-Tabs-panel p,
.woocommerce-Tabs-panel li,
.woocommerce-Tabs-panel td,
.woocommerce-Tabs-panel th{
  color: var(--e-global-color-grabtexto) !important;
}

/* ===== Fila de compra sin desbordar en movil ===== */
@media (max-width:767px){
  .single-product form.cart{
    flex-wrap:wrap !important;
    gap:8px !important;
  }
  .single-product form.cart .quantity{ flex:0 0 auto !important; }
  .single-product form.cart .single_add_to_cart_button{ flex:1 1 auto !important; }
  .single-product form.cart a.wa-order-class{
    flex:1 1 100% !important;
    width:100% !important;
    justify-content:center !important;
    margin-left:0 !important;
  }
  .single-product .zoomImg{ display:none !important; }
}

/* ===== Franja gp-banner tambien en escritorio ===== */
#gp-banner{ width:auto !important; max-width:calc(100% - 40px) !important; }

/* ===== Buscador de pantalla completa con la paleta ===== */
.elementor-search-form--skin-full_screen .elementor-search-form__container{
  background-color:rgba(5,14,26,.94) !important;
}
.elementor-search-form--skin-full_screen .elementor-search-form__input{
  color:#EAF2FA !important;
  border-color:rgba(255,255,255,.3) !important;
  font-size:34px !important;
}
.elementor-search-form--skin-full_screen .elementor-search-form__input::placeholder{
  color:rgba(234,242,250,.42) !important;
}
.elementor-search-form--skin-full_screen .dialog-lightbox-close-button{
  color:#EAF2FA !important;
}
@media (max-width:767px){
  .elementor-search-form--skin-full_screen .elementor-search-form__input{ font-size:22px !important; }
}


/* ===== Paginas normales de WordPress (legales, 404) ===== */
body:not(.elementor-page) .site-main{
  background: var(--e-global-color-grabsurface) !important;
  padding: 46px 20px 64px !important;
}
body:not(.elementor-page) .site-main h1,
body:not(.elementor-page) .site-main h2,
body:not(.elementor-page) .site-main h3,
body:not(.elementor-page) .site-main h4,
body:not(.elementor-page) .site-main strong{
  color: var(--e-global-color-grabtitulo) !important;
}
body:not(.elementor-page) .site-main,
body:not(.elementor-page) .site-main p,
body:not(.elementor-page) .site-main li,
body:not(.elementor-page) .site-main td,
body:not(.elementor-page) .site-main th{
  color: var(--e-global-color-grabtexto) !important;
}
body:not(.elementor-page) .site-main a{
  color: var(--e-global-color-primary) !important;
}
body:not(.elementor-page) .site-main h2{ margin-top:34px !important; }
body:not(.elementor-page) .site-main h3{ margin-top:22px !important; }
@media (max-width:767px){
  body:not(.elementor-page) .site-main{ padding: 26px 18px 44px !important; }
}

/* ===== En modo oscuro el azul de marca debe aclararse ===== */
@media (prefers-color-scheme: dark) and (max-width:767px){
  :root, body, .elementor-kit-7{
    --e-global-color-primary:#3F9BEE;
  }
}


/* ===== Acordeones y pestanas en oscuro ===== */
@media (prefers-color-scheme: dark) and (max-width:767px){
  .elementor-accordion-title,
  .elementor-toggle-title,
  .elementor-tab-title,
  .elementor-tab-title a{ color:#3F9BEE !important; }
  .elementor-accordion-icon, .elementor-toggle-icon{ color:#22D34A !important; }
}


/* ===== Boton del banner de GrabPoints (la franja tiene degradado oscuro fijo) ===== */
#gp-banner .elementor-button{
  background-color:#FFFFFF !important;
  color:#04121F !important;
  border-color:#FFFFFF !important;
}
#gp-banner .elementor-button .elementor-button-text,
#gp-banner .elementor-button .elementor-button-content-wrapper,
#gp-banner .elementor-button i,
#gp-banner .elementor-button svg{
  color:#04121F !important;
  fill:#04121F !important;
}
#gp-banner .elementor-button:hover,
#gp-banner .elementor-button:focus{
  background-color:#00C11A !important;
  border-color:#00C11A !important;
  color:#04121F !important;
}
#gp-banner .elementor-button:hover .elementor-button-text,
#gp-banner .elementor-button:focus .elementor-button-text{ color:#04121F !important; }

/* ===== La lupa: en escritorio visible, en movil dentro del menu ===== */
.elementor-element-1d5890e .elementor-search-form__toggle{
  --e-search-form-toggle-icon-size:0.55em;
}
@media (max-width:1024px){
  .elementor-element-1d5890e .elementor-search-form__toggle{ display:none !important; }
  .elementor-element-1d5890e{ margin:0 !important; padding:0 !important; }
}
/* El formulario a pantalla completa nunca debe heredar el ancho del widget */
.elementor-search-form__container.elementor-search-form--full-screen{
  width:100vw !important;
  max-width:100vw !important;
  left:0 !important;
}
.elementor-search-form--skin-full_screen .elementor-search-form{
  width:min(86%, 620px) !important;
  max-width:none !important;
}
.elementor-search-form--skin-full_screen .elementor-search-form__input{
  width:100% !important;
  border-width:0 0 2px 0 !important;
  border-bottom-color:rgba(255,255,255,.45) !important;
  border-radius:0 !important;
  padding:10px 4px !important;
}
.grab-item-buscar .elementor-item{
  display:flex !important;
  align-items:center !important;
  gap:9px !important;
}
.grab-item-buscar svg{ flex:0 0 auto; }/* End custom CSS */