.elementor-kit-6{--e-global-color-primary:#252525;--e-global-color-secondary:#4A4A4A;--e-global-color-text:#666666;--e-global-color-accent:#4EB137;--e-global-color-vpverde:#4EB137;--e-global-color-vpverdeo:#128722;--e-global-color-vpverdecl:#EEF6F0;--e-global-color-vpgris:#E4E4E4;--e-global-color-vpgrisborde:#E7E7E7;--e-global-color-d5ed9f30:#FEA43E;--e-global-color-87ea48b9:#FED53A;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-weight:500;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-weight:500;color:var( --e-global-color-text );}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:var( --e-global-color-vpverde );color:#FFFFFF;}.elementor-kit-6 button:hover,.elementor-kit-6 button:focus,.elementor-kit-6 input[type="button"]:hover,.elementor-kit-6 input[type="button"]:focus,.elementor-kit-6 input[type="submit"]:hover,.elementor-kit-6 input[type="submit"]:focus,.elementor-kit-6 .elementor-button:hover,.elementor-kit-6 .elementor-button:focus{background-color:var( --e-global-color-vpverdeo );color:#FFFFFF;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:var( --e-global-color-vpverdeo );}.elementor-kit-6 a:hover{color:#0E6A1B;}.elementor-kit-6 label{color:var( --e-global-color-text );}.elementor-kit-6 input:not([type="button"]):not([type="submit"]),.elementor-kit-6 textarea,.elementor-kit-6 .elementor-field-textual{color:var( --e-global-color-secondary );background-color:#FFFFFF;border-style:solid;border-color:var( --e-global-color-vpgrisborde );}.elementor-kit-6 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-6 textarea:focus,.elementor-kit-6 .elementor-field-textual:focus{box-shadow:0px 0px 0px 0px rgba(0,0,0,0);border-style:solid;border-color:var( --e-global-color-vpverde );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;}.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 *//* Unico resto que Estilo del tema no puede cubrir:
   Hello pinta un outline negro en :focus-visible y Elementor no expone
   ningun control de outline. Lo demas (borde, fondo, sombra, hover de
   botones) ya sale de Ajustes del sitio > Estilo del tema. */
input:focus-visible,
select:focus-visible,
textarea:focus-visible{
    outline:2px solid var(--e-global-color-vpverde);
    outline-offset:0;
    box-shadow:none;
}

/* Buscador del header. A veces el widget rinde 55px en vez de 39 -- 16px de mas
   por debajo del campo -- y deja el input pegado al borde superior, con lo que
   queda 7px desalineado contra el logo y los botones. No es un salto de carga:
   la pagina se renderiza asi y se queda asi. Elementor no expone control nativo
   para la altura de este widget. Medido el 18/09/2026 sobre el registro vpdiag.
   Se puede quitar si una version posterior de Elementor Pro lo corrige. */
.elementor-location-header .elementor-widget-search,
.elementor-location-header .e-search,
.elementor-location-header .e-search-form,
.elementor-location-header .e-search-input-wrapper{
    height:39px;
    min-height:39px;
}
.elementor-location-header .elementor-widget-search{
    align-self:center;
}


/* Insignia Hecho en Mexico (ficha de producto): alinear el titulo con los otros 3 iconos */
@media (min-width:768px){
    .elementor-widget-image-box.elementor-element-9afd604.elementor-position-top .elementor-image-box-img{ margin-top:-15px !important; }
}

/* Popup de acceso (407), estado con sesion iniciada.
   The Plus dibuja el menu de cuenta como desplegable absoluto que aparece al
   pasar el raton; dentro del popup se sale de la caja blanca. Aqui lo pasamos
   a flujo normal para que el popup crezca y lo contenga. */
#elementor-popup-modal-407 .after_login_btn_wrapper{ display:block; width:100%; }
#elementor-popup-modal-407 .after_login_btn_wrapper .after_login_btn_main{
    display:flex; width:100%; justify-content:center; align-items:center;
    background:#f1f5f2; color:#1a1a1a; padding:14px 16px; border-radius:8px;
    font-weight:600; cursor:default;
}
#elementor-popup-modal-407 .after_login_btn_wrapper .after_login_btn_main span .avatar{
    width:48px; height:48px; border-radius:50%; margin-right:14px;
}
#elementor-popup-modal-407 .after_login_btn_wrapper .tp-user-login{
    position:static !important; display:block !important; width:100%;
    border:0; padding:0; margin-top:16px; background:transparent;
}
#elementor-popup-modal-407 .after_login_btn_wrapper .tp-user-login ul{ margin:0; padding:0; }
#elementor-popup-modal-407 .after_login_btn_wrapper .tp-user-login ul li{ margin:0 0 10px; }
#elementor-popup-modal-407 .after_login_btn_wrapper .tp-user-login ul li:last-child{ margin-bottom:0; }
#elementor-popup-modal-407 .after_login_btn_wrapper .tp-user-login ul .after_login_panel_link a{
    display:block; padding:11px 16px; border-radius:4px; text-decoration:none;
    border:1px solid var(--e-global-color-vpverde); color:var(--e-global-color-vpverde);
    font-size:15px; font-weight:500; background:transparent;
}
#elementor-popup-modal-407 .after_login_btn_wrapper .tp-user-login .tp-list .tp-user-logged-out .tp-button{
    display:block; padding:11px 16px; border-radius:4px; text-decoration:none;
    background:var(--e-global-color-vpverde); color:#fff; font-size:15px; font-weight:500;
}

/* Pagina de Carrito (84). Lo que el widget Carrito de Pro no expone:
   banda gris en la cabecera de la tabla, cantidad en pildora con los
   botones - / + que anade el mu-plugin vidapec-carrito.php, y la fila
   de acciones (Regresar / Borrar carrito de compras). */
.vp-carrito table.shop_table thead th{
    background:#E4E4E4; color:#4A4A4A; font-weight:500;
    padding:14px 16px; border:0;
}
.vp-carrito table.shop_table thead th:first-child{ border-radius:6px 0 0 6px; }
.vp-carrito table.shop_table thead th:last-child{ border-radius:0 6px 6px 0; }

.vp-carrito .woocommerce-cart-form .quantity{
    display:inline-flex !important; align-items:center;
    border:1px solid #D9D9D9 !important; border-radius:24px !important;
    overflow:hidden; background:#fff;
}
.vp-carrito .woocommerce-cart-form .quantity input.qty{
    width:52px; text-align:center; padding:8px 0; background:transparent;
    border:0 !important; border-left:1px solid #D9D9D9 !important;
    border-right:1px solid #D9D9D9 !important; border-radius:0 !important;
    -moz-appearance:textfield;
}
.vp-carrito .woocommerce-cart-form .quantity input.qty::-webkit-outer-spin-button,
.vp-carrito .woocommerce-cart-form .quantity input.qty::-webkit-inner-spin-button{
    -webkit-appearance:none; margin:0;
}
.vp-carrito .woocommerce-cart-form .quantity .vp-qty{
    border:0; background:transparent; cursor:pointer; padding:0;
    width:34px; height:36px; line-height:1; font-size:17px; color:#4A4A4A;
}
.vp-carrito .woocommerce-cart-form .quantity .vp-qty:hover{ color:#128722; }

.vp-carrito .vp-cart-acciones{
    display:inline-flex; align-items:center; gap:22px; margin-left:14px;
}
.vp-carrito .vp-cart-acciones .vp-regresar{
    background:var(--e-global-color-vpverde); color:#fff; border:0;
    border-radius:24px; padding:11px 30px; font-weight:500; text-decoration:none;
}
.vp-carrito .vp-cart-acciones .vp-regresar:hover{
    background:var(--e-global-color-vpverdeo); color:#fff;
}
.vp-carrito .vp-cart-acciones .vp-vaciar{ color:#4A4A4A; text-decoration:underline; }
.vp-carrito .vp-cart-acciones .vp-vaciar:hover{ color:#C0392B; }

.vp-carrito .vp-cart-items th{ font-weight:400; }

/* WPLoyalty (pagina Pollo Pesos y Recompensas en Mi cuenta): su hoja usa
   font-family:inherit y heredaba Roboto del widget Mi cuenta. Se pasa a la
   tipografia de texto del kit. 01/10/2026. */
.wlr-myaccount-page, .wlr-myaccount-page *:not([class*="wlrf-"]){
    font-family:var(--e-global-typography-text-font-family), sans-serif;
}

/* Joinchat (gallo de WhatsApp): en celular el boton con imagen mide 220x180 y tapa
   formularios y texto. Se reduce al 60% anclado a su esquina. 01/10/2026. */
@media (max-width:767px){
    .joinchat--img .joinchat__button{ transform:scale(.6); transform-origin:bottom right; }
    .joinchat--img.joinchat--left .joinchat__button{ transform-origin:bottom left; }
}/* End custom CSS */