/*

Theme Name: eMarket Child

Theme URI: https://wpthemego.com/themes/emarket

Description: eMarket Child Theme

Author: WPThemeGo

Author URI: https://wpthemego.com

Template: emarket

Version: 1.0.0

Text Domain: emarket

*/



/* ==========================================================================

   1. ANIMALLIUM: AJUSTES ESTRUCTURALES DEL VENDEDOR (WCFM)

   ========================================================================== */



/* Box-sizing global para evitar desbordes en páginas de tiendas */

body.wcfm-store-page #wcfmmp-store,

body.wcfm-store-page #wcfmmp-store *,

body.wcfm-store-page #wcfmmp-store *::before,

body.wcfm-store-page #wcfmmp-store *::after {

    box-sizing: border-box !important;

}



/* Maquetación del Contenedor de Tienda WCFM (Flexbox) */

body.wcfm-store-page #wcfmmp-store .body_area {

    display: flex !important;

    flex-wrap: wrap !important;

    max-width: 1200px !important;

    margin: 40px auto !important;

    padding: 0 15px !important;

    gap: 30px !important;

    float: none !important;

    clear: both !important;

}



/* Barra Lateral de Tienda WCFM */

body.wcfm-store-page #wcfmmp-store .left_sidebar {

    flex: 0 0 280px !important;

    width: 280px !important;

    max-width: 100% !important;

    margin: 0 !important;

    padding: 24px !important;

    background: #ffffff !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 12px !important;

    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03) !important;

    float: none !important;

    order: 1 !important;

}



body.wcfm-store-page #wcfmmp-store .left_sidebar:empty {

    display: none !important;

}



/* Área de Contenido de la Tienda (Lado Derecho) */

body.wcfm-store-page #wcfmmp-store .right_side {

    flex: 1 1 0 !important;

    width: auto !important;

    min-width: 0 !important;

    margin: 0 !important;

    padding: 0 !important;

    float: none !important;

    order: 2 !important;

}



/* Widgets de la Barra Lateral WCFM */

body.wcfm-store-page #wcfmmp-store .left_sidebar .widget {

    margin-bottom: 30px !important;

}

body.wcfm-store-page #wcfmmp-store .left_sidebar .widget:last-child {

    margin-bottom: 0 !important;

}

body.wcfm-store-page #wcfmmp-store .left_sidebar .widget-title {

    font-family: 'Poppins', sans-serif !important;

    font-size: 16px !important;

    font-weight: 700 !important;

    color: #1e293b !important;

    margin: 0 0 15px 0 !important;

    padding-bottom: 8px !important;

    border-bottom: 2px solid #f1f5f9 !important;

}



/* Formulario de búsqueda en el widget */

body.wcfm-store-page #wcfmmp-store .left_sidebar .woocommerce-product-search {

    display: flex !important;

    gap: 5px !important;

}

body.wcfm-store-page #wcfmmp-store .left_sidebar .woocommerce-product-search input.search-field {

    flex: 1 1 0 !important;

    height: 40px !important;

    padding: 8px 12px !important;

    border: 1px solid #cbd5e1 !important;

    border-radius: 8px !important;

    font-size: 14px !important;

    outline: none !important;

}

body.wcfm-store-page #wcfmmp-store .left_sidebar .woocommerce-product-search button {

    height: 40px !important;

    padding: 0 16px !important;

    background: #ff9900 !important;

    color: #fff !important;

    border: none !important;

    border-radius: 8px !important;

    font-weight: 600 !important;

    cursor: pointer !important;

}



/* Categorías del sidebar */

body.wcfm-store-page #wcfmmp-store .left_sidebar .categories_list ul {

    list-style: none !important;

    margin: 0 !important;

    padding: 0 !important;

}

body.wcfm-store-page #wcfmmp-store .left_sidebar .categories_list li {

    margin-bottom: 8px !important;

    padding: 0 !important;

}

body.wcfm-store-page #wcfmmp-store .left_sidebar .categories_list li a {

    font-family: 'Poppins', sans-serif !important;

    font-size: 14px !important;

    color: #475569 !important;

    text-decoration: none !important;

    transition: color 0.2s ease !important;

    display: inline-block !important;

}

body.wcfm-store-page #wcfmmp-store .left_sidebar .categories_list li a:hover {

    color: #ff9900 !important;

}



/* Pestañas de Tienda WCFM */

body.wcfm-store-page #wcfmmp-store .tab_links_area {

    margin-bottom: 25px !important;

    border-bottom: 2px solid #e2e8f0 !important;

}

body.wcfm-store-page #wcfmmp-store ul.tab_links {

    display: flex !important;

    gap: 20px !important;

    margin: 0 !important;

    padding: 0 !important;

    list-style: none !important;

}

body.wcfm-store-page #wcfmmp-store ul.tab_links li {

    margin: 0 !important;

    padding: 0 !important;

}

body.wcfm-store-page #wcfmmp-store ul.tab_links li a {

    display: block !important;

    padding: 10px 5px !important;

    font-family: 'Poppins', sans-serif !important;

    font-weight: 600 !important;

    font-size: 15px !important;

    color: #64748b !important;

    text-decoration: none !important;

    border-bottom: 3px solid transparent !important;

    transition: all 0.2s ease !important;

}

body.wcfm-store-page #wcfmmp-store ul.tab_links li.active a,

body.wcfm-store-page #wcfmmp-store ul.tab_links li a:hover {

    color: #ff9900 !important;

    border-bottom-color: #ff9900 !important;

}





/* ==========================================================================

   2. ANIMALLIUM: GLOBAL WOOCOMMERCE PRODUCT GRID (CSS GRID NATIVO)

   ========================================================================== */



/* Limpieza de floats y forzado de CSS Grid para todas las páginas de catálogo */

body.woocommerce-page .woocommerce ul.products.products-loop,

body.woocommerce-page ul.products.products-loop {

    display: grid !important;

    grid-template-columns: repeat(3, 1fr) !important;

    gap: 20px !important;

    width: 100% !important;

    max-width: 100% !important;

    margin-left: 0 !important;

    margin-right: 0 !important;

    padding-left: 0 !important;

    padding-right: 0 !important;

    float: none !important;

    box-sizing: border-box !important;

}



body.woocommerce-page .woocommerce ul.products.products-loop::before,

body.woocommerce-page .woocommerce ul.products.products-loop::after,

body.woocommerce-page ul.products.products-loop::before,

body.woocommerce-page ul.products.products-loop::after {

    display: none !important;

}



/* Forzar ancho completo de las tarjetas dentro de su celda de rejilla */

body.woocommerce-page .woocommerce ul.products li.product,

body.woocommerce-page ul.products li.product {

    width: 100% !important;

    max-width: 100% !important;

    min-width: 0 !important;

    margin: 0 !important;

    padding: 0 !important;

    float: none !important;

    display: block !important;

    box-sizing: border-box !important;

}





/* ==========================================================================

   3. ANIMALLIUM: DISEÑO PREMIUM DE LA TARJETA DE PRODUCTO (CARDS)

   ========================================================================== */



body.woocommerce-page .woocommerce ul.products li.product .products-entry.item-wrap,

body.woocommerce-page ul.products li.product .products-entry.item-wrap {

    background: #ffffff !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 12px !important;

    padding: 15px !important;

    height: 100% !important;

    display: flex !important;

    flex-direction: column !important;

    justify-content: space-between !important;

    position: relative !important;

    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;

    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03) !important;

    box-sizing: border-box !important;

}



body.woocommerce-page .woocommerce ul.products li.product .products-entry.item-wrap:hover,

body.woocommerce-page ul.products li.product .products-entry.item-wrap:hover {

    transform: translateY(-5px) !important;

    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.08) !important;

    border-color: #cbd5e1 !important;

}



/* Contenedor de la Imagen */

body.woocommerce-page .woocommerce ul.products li.product .item-img,

body.woocommerce-page ul.products li.product .item-img {

    position: relative !important;

    overflow: hidden !important;

    border-radius: 8px !important;

    background-color: #f8fafc !important;

    aspect-ratio: 1 / 1 !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    margin: 0 0 15px 0 !important;

    width: 100% !important;

    float: none !important;

    box-sizing: border-box !important;

}



body.woocommerce-page .woocommerce ul.products li.product .item-img img,

body.woocommerce-page ul.products li.product .item-img img {

    max-width: 100% !important;

    max-height: 100% !important;

    width: 100% !important;

    height: 100% !important;

    object-fit: cover !important;

    transition: transform 0.5s ease !important;

}



body.woocommerce-page .woocommerce ul.products li.product .products-entry.item-wrap:hover .item-img img,

body.woocommerce-page ul.products li.product .products-entry.item-wrap:hover .item-img img {

    transform: scale(1.06) !important;

}





/* ==========================================================================

   4. ANIMALLIUM: DISTINTIVOS DE VENTAS (BADGES)

   ========================================================================== */



/* Oferta (On Sale) */

body.woocommerce-page .woocommerce ul.products li.product .onsale,

body.woocommerce-page ul.products li.product .onsale {

    position: absolute !important;

    top: 15px !important;

    left: 15px !important;

    background-color: #10b981 !important; /* Verde Esmeralda Premium */

    color: #ffffff !important;

    padding: 5px 12px !important;

    font-size: 11px !important;

    font-weight: 700 !important;

    text-transform: uppercase !important;

    border-radius: 20px !important;

    z-index: 10 !important;

    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15) !important;

    margin: 0 !important;

    right: auto !important;

    bottom: auto !important;

    width: auto !important;

    height: auto !important;

    line-height: normal !important;

    text-indent: 0 !important;

}



/* Agotado (Out Stock / Sold Out) - Restableciendo text-indent */

body.woocommerce-page .woocommerce ul.products li.product .sw-outstock,

body.woocommerce-page ul.products li.product .sw-outstock {

    position: absolute !important;

    top: 15px !important;

    left: 15px !important;

    background: #ef4444 !important; /* Rojo Premium */

    color: #ffffff !important;

    padding: 5px 12px !important;

    font-size: 11px !important;

    font-weight: 700 !important;

    text-transform: uppercase !important;

    border-radius: 20px !important;

    z-index: 10 !important;

    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15) !important;

    margin: 0 !important;

    right: auto !important;

    bottom: auto !important;

    width: auto !important;

    height: auto !important;

    line-height: normal !important;

    text-indent: 0 !important;

}





/* ==========================================================================

   5. ANIMALLIUM: TEXTOS DE TARJETA (TÍTULO Y PRECIO)

   ========================================================================== */



body.woocommerce-page .woocommerce ul.products li.product .item-content h2.woocommerce-loop-product__title,

body.woocommerce-page ul.products li.product .item-content h2.woocommerce-loop-product__title {

    font-family: 'Poppins', sans-serif !important;

    font-size: 14px !important;

    font-weight: 600 !important;

    color: #1e293b !important;

    margin: 0 0 8px 0 !important;

    line-height: 1.4 !important;

    height: 40px !important;

    overflow: hidden !important;

    display: -webkit-box !important;

    -webkit-line-clamp: 2 !important;

    -webkit-box-orient: vertical !important;

    text-align: left !important;

}



body.woocommerce-page .woocommerce ul.products li.product .item-content h2.woocommerce-loop-product__title a,

body.woocommerce-page ul.products li.product .item-content h2.woocommerce-loop-product__title a {

    color: #1e293b !important;

    text-decoration: none !important;

}



body.woocommerce-page .woocommerce ul.products li.product .item-content .price,

body.woocommerce-page ul.products li.product .item-content .price {

    font-family: 'Poppins', sans-serif !important;

    font-size: 15px !important;

    font-weight: 700 !important;

    color: #0f172a !important;

    margin: 0 0 15px 0 !important;

    display: block !important;

    text-align: left !important;

}





/* ==========================================================================

   6. ANIMALLIUM: BOTONES DE COMPRA Y WISHLIST

   ========================================================================== */



/* Contenedor inferior de acciones */

body.woocommerce-page .woocommerce ul.products li.product .item-bottom-content,

body.woocommerce-page ul.products li.product .item-bottom-content {

    display: block !important;

    width: 100% !important;

    margin: auto 0 0 0 !important;

    padding: 0 !important;

    clear: both !important;

}



body.woocommerce-page .woocommerce ul.products li.product .item-bottom-content::before,

body.woocommerce-page .woocommerce ul.products li.product .item-bottom-content::after,

body.woocommerce-page ul.products li.product .item-bottom-content::before,

body.woocommerce-page ul.products li.product .item-bottom-content::after {

    display: none !important;

}



/* Botón Principal (Añadir al Carrito / Leer Más) a ancho completo */

body.woocommerce-page .woocommerce ul.products.products-loop li.product .item-bottom-content > a.button,

body.woocommerce-page ul.products.products-loop li.product .item-bottom-content > a.button {

    display: flex !important;

    width: 100% !important;

    max-width: 100% !important;

    flex: 1 1 100% !important;

    height: 40px !important;

    align-items: center !important;

    justify-content: center !important;

    background: linear-gradient(135deg, #FF9800 0%, #F57C00 100%) !important;

    color: #ffffff !important;

    font-family: 'Poppins', sans-serif !important;

    font-weight: 700 !important;

    font-size: 12px !important;

    text-transform: uppercase !important;

    border-radius: 8px !important;

    border: none !important;

    transition: all 0.2s ease !important;

    text-decoration: none !important;

    text-align: center !important;

    box-shadow: 0 3px 6px rgba(245, 124, 0, 0.2) !important;

    margin: 0 !important;

}



body.woocommerce-page .woocommerce ul.products.products-loop li.product .item-bottom-content > a.button:hover,

body.woocommerce-page ul.products.products-loop li.product .item-bottom-content > a.button:hover {

    background: linear-gradient(135deg, #F57C00 0%, #E65100 100%) !important;

    transform: translateY(-2px) !important;

    box-shadow: 0 5px 12px rgba(245, 124, 0, 0.4) !important;

}



/* Ocultar duplicados o wishlist en la botonera inferior */

body.woocommerce-page .woocommerce ul.products li.product .item-bottom-content .yith-add-to-wishlist-button-block,

body.woocommerce-page .woocommerce ul.products li.product .item-bottom-content .yith-wcwl-add-to-wishlist,

body.woocommerce-page .woocommerce ul.products li.product .item-bottom-content [class*="yith-wcwl"],

body.woocommerce-page ul.products li.product .item-bottom-content .yith-add-to-wishlist-button-block,

body.woocommerce-page ul.products li.product .item-bottom-content .yith-wcwl-add-to-wishlist,

body.woocommerce-page ul.products li.product .item-bottom-content [class*="yith-wcwl"],

body.woocommerce-page .woocommerce ul.products li.product .item-bottom-content > .store-info,

body.woocommerce-page ul.products li.product .item-bottom-content > .store-info {

    display: none !important;

}





/* ==========================================================================

   7. ANIMALLIUM: CORAZÓN FLOTANTE Y CIRCULAR PARA WISHLIST (YITH)

   ========================================================================== */



/* Posicionar absolutamente sobre la esquina superior derecha de la imagen */

body.woocommerce-page .woocommerce ul.products li.product .yith-add-to-wishlist-button-block,

body.woocommerce-page .woocommerce ul.products li.product .yith-wcwl-add-to-wishlist,

body.woocommerce-page .woocommerce ul.products li.product .yith-wcwl-add-button,

body.woocommerce-page .woocommerce ul.products li.product .yith-wcwl-wishlistadded,

body.woocommerce-page .woocommerce ul.products li.product .yith-wcwl-wishlistexists,

body.woocommerce-page .woocommerce ul.products li.product [class*="yith-wcwl"],

body.woocommerce-page ul.products li.product .yith-add-to-wishlist-button-block,

body.woocommerce-page ul.products li.product .yith-wcwl-add-to-wishlist,

body.woocommerce-page ul.products li.product .yith-wcwl-add-button,

body.woocommerce-page ul.products li.product .yith-wcwl-wishlistadded,

body.woocommerce-page ul.products li.product .yith-wcwl-wishlistexists,

body.woocommerce-page ul.products li.product [class*="yith-wcwl"] {

    position: absolute !important;

    top: 15px !important;

    right: 15px !important;

    z-index: 15 !important;

    width: 36px !important;

    height: 36px !important;

    margin: 0 !important;

    padding: 0 !important;

    display: block !important;

    float: none !important;

}



body.woocommerce-page .woocommerce ul.products li.product [class*="yith-wcwl"] > div,

body.woocommerce-page ul.products li.product [class*="yith-wcwl"] > div {

    width: 36px !important;

    height: 36px !important;

    margin: 0 !important;

    padding: 0 !important;

    display: block !important;

}



/* Círculo blanco premium para el botón del corazón */

body.woocommerce-page .woocommerce ul.products li.product .yith-add-to-wishlist-button-block a,

body.woocommerce-page .woocommerce ul.products li.product .yith-wcwl-add-to-wishlist a,

body.woocommerce-page .woocommerce ul.products li.product .yith-wcwl-add-button a,

body.woocommerce-page .woocommerce ul.products li.product .yith-wcwl-wishlistadded a,

body.woocommerce-page .woocommerce ul.products li.product .yith-wcwl-wishlistexists a,

body.woocommerce-page .woocommerce ul.products li.product [class*="yith-wcwl"] a,

body.woocommerce-page ul.products li.product .yith-add-to-wishlist-button-block a,

body.woocommerce-page ul.products li.product .yith-wcwl-add-to-wishlist a,

body.woocommerce-page ul.products li.product .yith-wcwl-add-button a,

body.woocommerce-page ul.products li.product .yith-wcwl-wishlistadded a,

body.woocommerce-page ul.products li.product .yith-wcwl-wishlistexists a,

body.woocommerce-page ul.products li.product [class*="yith-wcwl"] a {

    display: inline-flex !important;

    align-items: center !important;

    justify-content: center !important;

    width: 36px !important;

    height: 36px !important;

    background: rgba(255, 255, 255, 0.95) !important;

    color: #f43f5e !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 50% !important;

    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05) !important;

    text-decoration: none !important;

    transition: all 0.2s ease !important;

    font-size: 0 !important; /* Esconder texto nativo "Añadir a mis deseos" */

    line-height: 0 !important;

    padding: 0 !important;

    margin: 0 !important;

}



body.woocommerce-page .woocommerce ul.products li.product .yith-add-to-wishlist-button-block a:hover,

body.woocommerce-page .woocommerce ul.products li.product [class*="yith-wcwl"] a:hover,

body.woocommerce-page ul.products li.product .yith-add-to-wishlist-button-block a:hover,

body.woocommerce-page ul.products li.product [class*="yith-wcwl"] a:hover {

    background: #ffffff !important;

    transform: scale(1.1) !important;

    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.12) !important;

    color: #e11d48 !important;

}



/* Ocultar todos los subtextos internos del YITH */

body.woocommerce-page .woocommerce ul.products li.product [class*="yith-wcwl"] a span,

body.woocommerce-page .woocommerce ul.products li.product [class*="yith-wcwl"] a .feedback,

body.woocommerce-page .woocommerce ul.products li.product [class*="yith-wcwl"] a .screen-reader-text,

body.woocommerce-page .woocommerce ul.products li.product [class*="yith-wcwl"] span,

body.woocommerce-page ul.products li.product [class*="yith-wcwl"] a span,

body.woocommerce-page ul.products li.product [class*="yith-wcwl"] a .feedback,

body.woocommerce-page ul.products li.product [class*="yith-wcwl"] a .screen-reader-text,

body.woocommerce-page ul.products li.product [class*="yith-wcwl"] span {

    display: none !important;

    width: 0 !important;

    height: 0 !important;

    overflow: hidden !important;

    opacity: 0 !important;

    font-size: 0 !important;

    margin: 0 !important;

    padding: 0 !important;

}



body.woocommerce-page .woocommerce ul.products li.product [class*="yith-wcwl"] a i,

body.woocommerce-page .woocommerce ul.products li.product [class*="yith-wcwl"] a svg,

body.woocommerce-page ul.products li.product [class*="yith-wcwl"] a i,

body.woocommerce-page ul.products li.product [class*="yith-wcwl"] a svg {

    font-size: 16px !important;

    line-height: 1 !important;

    margin: 0 !important;

    padding: 0 !important;

    display: inline-block !important;

}





/* ==========================================================================

   8. ANIMALLIUM: ORDENACIÓN, FILTRADO Y GEOLOCALIZACIÓN (RESPONSIVE)

   ========================================================================== */



/* Bloque contenedor del formulario de geolocalización WCFM */

body.woocommerce-page .wcfmmp-product-geolocate-search-form {

    display: flex !important;

    flex-wrap: wrap !important;

    align-items: center !important;

    gap: 20px !important;

    width: 100% !important;

    float: none !important;

    clear: both !important;

    margin: 0 0 25px 0 !important;

    background: #ffffff !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 12px !important;

    padding: 15px 20px !important;

    box-sizing: border-box !important;

    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.02) !important;

}



body.woocommerce-page .wcfmmp-product-geolocate-search-form .wcfm_radius_filter_container {

    flex: 1 1 300px !important;

    position: relative !important;

    display: block !important;

    margin: 0 !important;

    padding: 0 !important;

}



body.woocommerce-page .wcfmmp-product-geolocate-search-form input.wcfmmp-radius-addr {

    width: 100% !important;

    height: 42px !important;

    border: 1px solid #cbd5e1 !important;

    border-radius: 8px !important;

    padding: 8px 36px 8px 12px !important;

    font-size: 14px !important;

    outline: none !important;

    box-sizing: border-box !important;

    background: #ffffff !important;

}



body.woocommerce-page .wcfmmp-product-geolocate-search-form i.wcfmmmp_locate_icon {

    position: absolute !important;

    top: 50% !important;

    right: 12px !important;

    transform: translateY(-50%) !important;

    width: 20px !important;

    height: 20px !important;

    margin: 0 !important;

    cursor: pointer !important;

    background-size: contain !important;

    z-index: 5 !important;

}



body.woocommerce-page .wcfmmp-product-geolocate-search-form .wcfm_radius_slidecontainer {

    flex: 1 1 250px !important;

    position: relative !important;

    display: block !important;

    margin: 0 !important;

    padding: 0 0 25px 0 !important; /* Space for range_cur label */

    height: auto !important;

}



body.woocommerce-page .wcfmmp-product-geolocate-search-form input.wcfmmp_radius_range {

    width: 100% !important;

    height: 6px !important;

    background: #cbd5e1 !important;

    outline: none !important;

    border-radius: 4px !important;

    display: block !important;

    margin: 10px 0 5px 0 !important;

}



body.woocommerce-page .wcfmmp-product-geolocate-search-form .wcfmmp_radius_range_start {

    float: left !important;

    font-size: 11px !important;

    color: #64748b !important;

}



body.woocommerce-page .wcfmmp-product-geolocate-search-form .wcfmmp_radius_range_end {

    float: right !important;

    font-size: 11px !important;

    color: #64748b !important;

}



body.woocommerce-page .wcfmmp-product-geolocate-search-form .wcfmmp_radius_range_cur {

    position: absolute !important;

    left: 50% !important;

    transform: translateX(-50%) !important;

    top: 25px !important;

    font-size: 11px !important;

    font-weight: 700 !important;

    color: #ff9900 !important;

}



body.woocommerce-page .wcfmmp-product-geolocate-search-form button[type="submit"] {

    flex: 0 0 120px !important;

    width: 120px !important;

    height: 42px !important;

    background: #ff9900 !important;

    color: #ffffff !important;

    border: none !important;

    border-radius: 8px !important;

    font-weight: 700 !important;

    font-size: 14px !important;

    text-transform: uppercase !important;

    cursor: pointer !important;

    transition: all 0.2s ease !important;

    box-shadow: 0 3px 8px rgba(255, 153, 0, 0.2) !important;

    margin: 0 !important;

    float: none !important;

}



body.woocommerce-page .wcfmmp-product-geolocate-search-form button[type="submit"]:hover {

    background: #e68a00 !important;

    transform: translateY(-1px) !important;

    box-shadow: 0 5px 12px rgba(255, 153, 0, 0.3) !important;

}



/* Rediseño responsivo de .products-nav para evitar superposiciones */

body.woocommerce-page .products-nav {

    display: flex !important;

    flex-wrap: wrap !important;

    align-items: center !important;

    justify-content: space-between !important;

    gap: 15px !important;

    padding: 15px !important;

    background: #ffffff !important;

    border: 1px solid #e2e8f0 !important;

    border-radius: 12px !important;

    margin-bottom: 25px !important;

    width: 100% !important;

    float: none !important;

    clear: both !important;

    box-sizing: border-box !important;

    height: auto !important;

    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.02) !important;

}



body.woocommerce-page .products-nav > * {

    margin: 0 !important;

    float: none !important;

}



body.woocommerce-page .products-nav .woocommerce-result-count {

    font-family: 'Poppins', sans-serif !important;

    font-size: 14px !important;

    color: #475569 !important;

    font-weight: 500 !important;

    line-height: 1.5 !important;

}



body.woocommerce-page .products-nav .view-mode-wrap {

    display: inline-flex !important;

    align-items: center !important;

}



body.woocommerce-page .products-nav .view-mode {

    border: 1px solid #cbd5e1 !important;

    border-radius: 8px !important;

    overflow: hidden !important;

    display: inline-flex !important;

    background: #ffffff !important;

}



body.woocommerce-page .products-nav .view-mode a {

    display: inline-flex !important;

    align-items: center !important;

    justify-content: center !important;

    width: 36px !important;

    height: 36px !important;

    border: none !important;

    background: #ffffff !important;

    transition: all 0.2s ease !important;

    margin: 0 !important;

    padding: 0 !important;

}



body.woocommerce-page .products-nav .view-mode a svg {

    width: 16px !important;

    height: 16px !important;

    fill: #64748b !important;

    transition: fill 0.2s ease !important;

}



body.woocommerce-page .products-nav .view-mode a.active {

    background: #ff9900 !important;

}



body.woocommerce-page .products-nav .view-mode a.active svg {

    fill: #ffffff !important;

}



body.woocommerce-page .products-nav .catalog-ordering {

    display: inline-flex !important;

    align-items: center !important;

}



body.woocommerce-page .products-nav .product-sortby {

    display: inline-flex !important;

    align-items: center !important;

    gap: 8px !important;

}



body.woocommerce-page .products-nav .product-sortby .sort-by {

    font-family: 'Poppins', sans-serif !important;

    font-size: 14px !important;

    font-weight: 600 !important;

    color: #475569 !important;

    line-height: 1.5 !important;

    margin: 0 !important;

}



body.woocommerce-page .products-nav select.orderby {

    height: 38px !important;

    padding: 0 30px 0 12px !important;

    border: 1px solid #cbd5e1 !important;

    border-radius: 8px !important;

    background-color: #f8fafc !important;

    color: #334155 !important;

    font-family: 'Poppins', sans-serif !important;

    font-size: 14px !important;

    cursor: pointer !important;

    outline: none !important;

    box-shadow: 0 1px 2px rgba(0,0,0,0.05) !important;

}





/* ==========================================================================

   9. AJUSTES MEDIA QUERIES (PANTALLAS MEDIANAS Y MÓVILES)

   ========================================================================== */



@media (max-width: 991px) {

    /* Layout de Columnas en Tiendas WCFM */

    body.wcfm-store-page #wcfmmp-store .body_area {

        flex-direction: column !important;

        gap: 30px !important;

        padding: 0 15px !important;

    }

    

    body.wcfm-store-page #wcfmmp-store .right_side {

        order: 1 !important;

        width: 100% !important;

    }

    

    body.wcfm-store-page #wcfmmp-store .left_sidebar {

        order: 2 !important;

        width: 100% !important;

        flex: 1 1 100% !important;

        margin-top: 20px !important;

    }



    /* Grid de 2 Columnas en tablet */

    body.woocommerce-page .woocommerce ul.products.products-loop,

    body.woocommerce-page ul.products.products-loop {

        grid-template-columns: repeat(2, 1fr) !important;

        gap: 15px !important;

    }

}



@media (max-width: 767px) {

    /* Stacking Vertical para Evitar Superposición de Filtros */

    body.woocommerce-page .products-nav {

        flex-direction: column !important;

        align-items: stretch !important;

        gap: 15px !important;

        text-align: center !important;

    }

    

    body.woocommerce-page .products-nav > * {

        width: 100% !important;

        display: flex !important;

        justify-content: center !important;

        align-items: center !important;

    }

    

    body.woocommerce-page .products-nav .woocommerce-result-count {

        justify-content: center !important;

    }

    

    body.woocommerce-page .products-nav .catalog-ordering {

        display: none !important; /* Ocultar dropdown de elementos por página en móvil */

    }

    

    body.woocommerce-page .products-nav .product-sortby {

        flex-direction: column !important;

        align-items: stretch !important;

        gap: 6px !important;

    }

    

    body.woocommerce-page .products-nav .product-sortby .sort-by {

        text-align: center !important;

    }

    

    body.woocommerce-page .products-nav .product-sortby .woocommerce-ordering {

        width: 100% !important;

        display: block !important;

        margin: 0 !important;

    }

    

    body.woocommerce-page .products-nav select.orderby {

        width: 100% !important;

        text-align: center !important;

        text-align-last: center !important;

    }

    

    body.woocommerce-page .wcfmmp-product-geolocate-search-form {

        flex-direction: column !important;

        align-items: stretch !important;

        gap: 15px !important;

        padding: 15px !important;

    }

    

    body.woocommerce-page .wcfmmp-product-geolocate-search-form .wcfm_radius_filter_container {

        width: 100% !important;

        flex: 1 1 100% !important;

    }

    

    body.woocommerce-page .wcfmmp-product-geolocate-search-form .wcfm_radius_slidecontainer {

        width: 100% !important;

        flex: 1 1 100% !important;

        padding-bottom: 25px !important;

    }

    

    body.woocommerce-page .wcfmmp-product-geolocate-search-form button[type="submit"] {

        width: 100% !important;

        flex: 1 1 100% !important;

        margin: 0 !important;

    }

    

    body.woocommerce-page .woocommerce-pagination {

        margin-bottom: 180px !important; /* Margen inferior forzado para subir la paginación por encima del menú móvil */

    }

    

    /* Forzar padding inferior en los contenedores principales para asegurar el scroll total */

    body.woocommerce-page #primary,

    body.woocommerce-page #main,

    body.woocommerce-page #page {

        padding-bottom: 180px !important;

    }

    

    /* Incrementar espacio inferior del body-wrapper del tema para móvil */

    body.mobile-layout > .body-wrapper > .body-wrapper-inner > .container,

    body.woocommerce-page .body-wrapper-inner > .container {

        margin-bottom: 180px !important;

        padding-bottom: 40px !important;

    }

}



@media (max-width: 575px) {

    /* Grid de 2 Columnas Ajustado para Móvil Estrecho */

    body.woocommerce-page .woocommerce ul.products.products-loop,

    body.woocommerce-page ul.products.products-loop {

        grid-template-columns: repeat(2, 1fr) !important;

        gap: 12px !important;

    }

    

    body.woocommerce-page .woocommerce ul.products li.product .products-entry.item-wrap,

    body.woocommerce-page ul.products li.product .products-entry.item-wrap {

        padding: 10px !important;

    }

    

    body.woocommerce-page .woocommerce ul.products li.product .item-content h2.woocommerce-loop-product__title,

    body.woocommerce-page ul.products li.product .item-content h2.woocommerce-loop-product__title {

        font-size: 13px !important;

        height: 36px !important;

    }

    

    body.woocommerce-page .woocommerce ul.products li.product .item-content .price,

    body.woocommerce-page ul.products li.product .item-content .price {

        font-size: 14px !important;

        margin-bottom: 10px !important;

    }

    

    body.woocommerce-page .woocommerce ul.products.products-loop li.product .item-bottom-content > a.button,

    body.woocommerce-page ul.products.products-loop li.product .item-bottom-content > a.button {

        height: 36px !important;

        font-size: 11px !important;

    }

}



/* ==========================================================================

   11. ANIMALLIUM: DISEÑO PREMIUM Y CIRCULAR DE LA PAGINACIÓN

   ========================================================================== */



/* Centrado y márgenes del contenedor de paginación */

body.woocommerce-page .woocommerce-pagination {

    text-align: center !important;

    margin: 40px 0 !important;

    padding: 0 !important;

    clear: both !important;

    width: 100% !important;

    display: flex !important;

    justify-content: center !important;

}



body.woocommerce-page .woocommerce-pagination ul.page-numbers {

    display: inline-flex !important;

    align-items: center !important;

    justify-content: center !important;

    gap: 12px !important; /* Espacio generoso entre los números */

    list-style: none !important;

    margin: 0 !important;

    padding: 0 !important;

    border: none !important;

}



body.woocommerce-page .woocommerce-pagination ul.page-numbers li {

    margin: 0 !important;

    padding: 0 !important;

    border: none !important;

    display: inline-block !important;

    float: none !important;

}



/* Estilo común para todos los números y flechas */

body.woocommerce-page .woocommerce-pagination ul.page-numbers li a.page-numbers,

body.woocommerce-page .woocommerce-pagination ul.page-numbers li span.page-numbers {

    display: inline-flex !important;

    align-items: center !important;

    justify-content: center !important;

    width: 44px !important; /* Tamaño circular premium */

    height: 44px !important;

    min-width: 44px !important;

    border-radius: 50% !important; /* Círculo perfecto */

    font-family: 'Poppins', sans-serif !important;

    font-size: 15px !important;

    font-weight: 600 !important;

    text-decoration: none !important;

    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;

    box-sizing: border-box !important;

    border: 1px solid transparent !important;

    margin: 0 !important;

    padding: 0 !important;

    line-height: 44px !important;

    text-align: center !important;

}



/* Páginas inactivas: sin fondo, sin borde, color gris oscuro */

body.woocommerce-page .woocommerce-pagination ul.page-numbers li a.page-numbers {

    color: #475569 !important;

    background: transparent !important;

    border-color: transparent !important;

}



/* Hover en páginas inactivas: se forma un círculo con fondo naranja claro y texto naranja */

body.woocommerce-page .woocommerce-pagination ul.page-numbers li a.page-numbers:hover {

    color: #ff9900 !important;

    background: #fff3e0 !important; /* Naranja muy suave */

    border-color: #ffe0b2 !important;

    transform: translateY(-2px) !important; /* Microanimación de elevación */

}



/* Página activa: círculo naranja con texto blanco y sombra suave */

body.woocommerce-page .woocommerce-pagination ul.page-numbers li span.page-numbers.current {

    color: #ffffff !important;

    background: #ff9900 !important;

    border-color: #ff9900 !important;

    box-shadow: 0 4px 12px rgba(255, 153, 0, 0.35) !important;

}



/* Flechas de navegación (Anterior / Siguiente) */

body.woocommerce-page .woocommerce-pagination ul.page-numbers li a.next.page-numbers,

body.woocommerce-page .woocommerce-pagination ul.page-numbers li a.prev.page-numbers {

    font-size: 18px !important;

    font-weight: 700 !important;

    color: #475569 !important;

    background: transparent !important;

    border-color: transparent !important;

}



body.woocommerce-page .woocommerce-pagination ul.page-numbers li a.next.page-numbers:hover,

body.woocommerce-page .woocommerce-pagination ul.page-numbers li a.prev.page-numbers:hover {

    color: #ff9900 !important;

    background: #fff3e0 !important;

    border-color: #ffe0b2 !important;

}





/* ==========================================================================

   12. ANIMALLIUM: ESTILOS DE FUENTES Y RESPONSIVE PARA FLUENTBOOKING

   ========================================================================== */



/* --- Columna Izquierda: Información General del Evento --- */



/* Nombre del Negocio / Organizador (Aumento significativo a 20px) */

body .fluent_booking_app .ff_booking_left_col .ffb-host-name,

body .fluent_booking_app .ff_booking_left_col .ffb-profile-name,

body .fluent_booking_app .ff_booking_left_col .ffb-author-name,

body .fluent_booking_app .ff_booking_left_col .ffb-calendar-name,

body .fluent_booking_app .ff_booking_left_col .ffb-calendar-title,

body .fluent_booking_app .ff_booking_left_col h4,

body .fluent_booking_app .ff_booking_left_col .ffb-avatar + div,

body .fluent_booking_app .ff_booking_left_col [class*="avatar"] + div {

    font-size: 20px !important;

    font-weight: 700 !important;

    color: #0f172a !important; /* slate-900 */

    margin-bottom: 12px !important;

    display: block !important;

}



/* Título de la Cita / Servicio */

body .fluent_booking_app .ff_booking_left_col h3.ffb-title,

body .fluent_booking_app .ff_booking_left_col .ffb-title {

    font-size: 28px !important;

    font-weight: 800 !important;

    color: #0f172a !important;

    line-height: 1.3 !important;

    margin-top: 10px !important;

    margin-bottom: 20px !important;

}



/* Detalles (Duración, Ubicación, Precio, Hora de Cita) */

body .fluent_booking_app .ff_booking_left_col ul.ffb-event-info li,

body .fluent_booking_app .ff_booking_left_col .ffb-event-info li,

body .fluent_booking_app .ff_booking_left_col .ffb-event-details li,

body .fluent_booking_app .ff_booking_left_col [class*="event-info"] li {

    font-size: 18px !important; /* Aumento general de las etiquetas de detalles */

    font-weight: 600 !important;

    line-height: 1.6 !important;

    color: #334155 !important; /* slate-700 */

    margin-bottom: 14px !important;

    display: flex !important;

    align-items: center !important;

    gap: 12px !important;

}



/* Iconos de detalles */

body .fluent_booking_app .ff_booking_left_col ul.ffb-event-info li svg,

body .fluent_booking_app .ff_booking_left_col ul.ffb-event-info li i {

    font-size: 20px !important;

    color: #ff9900 !important; /* Naranja Animallium */

    width: 24px !important;

    height: 24px !important;

    text-align: center !important;

    display: inline-flex !important;

    align-items: center !important;

    justify-content: center !important;

}



/* Descripción del servicio */

body .fluent_booking_app .ff_booking_left_col p.ffb-description,

body .fluent_booking_app .ff_booking_left_col .ffb-description {

    font-size: 16px !important;

    line-height: 1.7 !important;

    color: #475569 !important; /* slate-600 */

}





/* --- Columna Derecha: Calendario, Timezone y Horas --- */



/* Título de mes */

body .fluent_booking_app .fc-toolbar-title,

body .fluent_booking_app [class*="toolbar-title"] {

    font-size: 24px !important;

    font-weight: 700 !important;

    color: #0f172a !important;

}



/* Nombres de los días (LU, MA, MI...) */

body .fluent_booking_app .fc-col-header-cell-cushion,

body .fluent_booking_app [class*="header-cell-cushion"] {

    font-size: 14px !important;

    font-weight: 600 !important;

    color: #475569 !important;

    text-transform: uppercase !important;

}



/* Números de los días en la cuadrícula */

body .fluent_booking_app .fc-daygrid-day-number,

body .fluent_booking_app [class*="daygrid-day-number"] {

    font-size: 16px !important;

    font-weight: 500 !important;

    color: #334155 !important;

}



/* Título de Timezone */

body .fluent_booking_app .ff_booking_timezone .ffb-input-container label,

body .fluent_booking_app [class*="booking_timezone"] label {

    font-size: 18px !important;

    font-weight: 600 !important;

    color: #0f172a !important;

}



/* Selector de Timezone */

body .fluent_booking_app .ff_booking_timezone .ffb-input-container select,

body .fluent_booking_app [class*="booking_timezone"] select {

    font-size: 15px !important;

    padding: 10px 12px !important;

    border-radius: 8px !important;

    border-color: #cbd5e1 !important;

}



/* Franjas horarias disponibles */

body .fluent_booking_app .ffb-time-slot-item,

body .fluent_booking_app [class*="time-slot-item"],

body .fluent_booking_app .ffb-time-slots button {

    font-size: 16px !important;

    font-weight: 700 !important;

    padding: 14px 18px !important;

    border-radius: 8px !important;

    transition: all 0.25s ease !important;

}





/* --- Formulario de Contacto: Detalles del Cliente --- */



/* Título del paso de detalles ("Enter Details") */

body .fluent_booking_app .ff_booking_guest_info_wrap .ffb-title,

body .fluent_booking_app [class*="guest_info_wrap"] .ffb-title {

    font-size: 26px !important;

    font-weight: 700 !important;

    color: #0f172a !important;

}



/* Etiquetas de los campos (Nombre, Email, Notas) */

body .fluent_booking_app .ff_booking_guest_info_wrap .ffb-input-container label,

body .fluent_booking_app [class*="guest_info_wrap"] label,

body .fluent_booking_app [class*="guest_info_wrap"] .ffb-input-container label {

    font-size: 16px !important;

    font-weight: 600 !important;

    color: #334155 !important;

}



/* Campos de entrada (inputs y textareas) */

body .fluent_booking_app .ff_booking_guest_info_wrap .ffb-input-container input,

body .fluent_booking_app .ff_booking_guest_info_wrap .ffb-input-container textarea,

body .fluent_booking_app [class*="guest_info_wrap"] input,

body .fluent_booking_app [class*="guest_info_wrap"] textarea {

    font-size: 16px !important;

    color: #0f172a !important;

    padding: 12px 16px !important;

    border: 1.5px solid #cbd5e1 !important;

    border-radius: 8px !important;

    background-color: #ffffff !important;

    transition: all 0.2s ease !important;

}



body .fluent_booking_app .ff_booking_guest_info_wrap .ffb-input-container input:focus,

body .fluent_booking_app .ff_booking_guest_info_wrap .ffb-input-container textarea:focus,

body .fluent_booking_app [class*="guest_info_wrap"] input:focus,

body .fluent_booking_app [class*="guest_info_wrap"] textarea:focus {

    border-color: #ff9900 !important;

    box-shadow: 0 0 0 3.5px rgba(255, 153, 0, 0.15) !important;

}



/* Botón "Programar reunión" / Agendar */

body .fluent_booking_app .ff_booking_guest_info_wrap .ffb-btn-primary,

body .fluent_booking_app [class*="guest_info_wrap"] button[type="submit"] {

    font-size: 18px !important;

    font-weight: 700 !important;

    padding: 14px 28px !important;

    background: linear-gradient(135deg, #FF9800 0%, #F57C00 100%) !important;

    color: #ffffff !important;

    border-radius: 8px !important;

    box-shadow: 0 4px 10px rgba(255, 152, 0, 0.3) !important;

}



body .fluent_booking_app .ff_booking_guest_info_wrap .ffb-btn-primary:hover,

body .fluent_booking_app [class*="guest_info_wrap"] button[type="submit"]:hover {

    background: linear-gradient(135deg, #F57C00 0%, #E65100 100%) !important;

    transform: translateY(-2px) !important;

    box-shadow: 0 6px 14px rgba(255, 152, 0, 0.4) !important;

}





/* --- SOPORTE RESPONSIVO PARA DISPOSITIVOS MÓVILES --- */

@media (max-width: 767px) {

    /* Transformar el diseño de dos columnas en una columna vertical */

    body .fluent_booking_app,

    body [class*="ff_booking_app"],

    body .fluent-booking-container {

        display: flex !important;

        flex-direction: column !important;

        gap: 24px !important;

        padding: 8px !important;

    }

    

    body .fluent_booking_app .ff_booking_left_col,

    body [class*="ff_booking_left_col"] {

        width: 100% !important;

        max-width: 100% !important;

        padding-right: 0 !important;

        border-right: none !important;

        border-bottom: 1.5px dashed #e2e8f0 !important;

        padding-bottom: 24px !important;

        margin-bottom: 12px !important;

    }

    

    /* Adaptar tamaños de títulos para pantallas móviles */

    body .fluent_booking_app .ff_booking_left_col h3.ffb-title,

    body [class*="ff_booking_left_col"] h3.ffb-title {

        font-size: 22px !important;

    }

    

    body .fluent_booking_app .ff_booking_guest_info_wrap .ffb-title,

    body [class*="guest_info_wrap"] .ffb-title {

        font-size: 22px !important;

        margin-bottom: 15px !important;

    }

    

    /* Optimizar el calendario y días de semana en pantallas estrechas */

    body .fluent_booking_app .fc-toolbar-title {

        font-size: 19px !important;

    }

    

    body .fluent_booking_app .fc-col-header-cell-cushion {

        font-size: 11px !important;

        padding: 8px 0 !important;

    }

    

    body .fluent_booking_app .fc-daygrid-day-number {

        font-size: 14px !important;

        padding: 6px !important;

    }

    

    body .fluent_booking_app .ffb-time-slot-item,

    body [class*="time-slot-item"] {

        padding: 12px 14px !important;

    }

}



/* ==========================================================================

   13. ANIMALLIUM: CORRECCIÓN RESPONSIVA EN PÁGINA DE UN SOLO PRODUCTO

   ========================================================================== */



@media (max-width: 767px) {

    /* Dejar espacio libre al final de la página de productos para que la barra inferior no tape nada */

    body.single-product {

        padding-bottom: 140px !important;

    }



    /* Asegurar que el contenedor de la pestaña de ubicación y el mapa ocupen todo el ancho y se centren en móvil */

    .single-product .wcfmmp_store_info_store_location,

    .single-product .wcfmmp_store_tab_info,

    .single-product #tab-wcfm_location_tab {

        width: 100% !important;

        max-width: 100% !important;

        float: none !important;

        margin: 0 auto !important;

        display: block !important;

        box-sizing: border-box !important;

        padding-left: 0 !important;

        padding-right: 0 !important;

    }



    .single-product .wcfmmp-store-map,

    .single-product [id*="wcfm_sold_by_tab_map"] {

        width: 100% !important;

        max-width: 100% !important;

        height: 350px !important;

        min-height: 350px !important;

        margin: 0 auto !important;

        display: block !important;

    }



    /* Forzar que el mapa de Leaflet tenga un z-index bajo para que no monte sobre menús */

    .single-product .leaflet-container {

        z-index: 1 !important;

    }



    /* Forzar GPU hardware acceleration y alto z-index en el menú inferior móvil para evitar solapamiento visual */

    .elementor-location-footer,

    .footer-mstyle1,

    .footer-mstyle2,

    .footer-mobile-elementor,

    .footer-menu2 {

        z-index: 99999 !important;

        transform: translate3d(0, 0, 0) !important;

        -webkit-transform: translate3d(0, 0, 0) !important;

    }



    .gio-business-icon-widget,

    .gio-business-icon-widget a,

    .gio-user-icon-widget,

    .gio-user-icon-widget a {

        z-index: 100000 !important;

        transform: translate3d(0, 0, 0) !important;

        -webkit-transform: translate3d(0, 0, 0) !important;

    }

}



/* ==========================================

   ANIMALLIUM - FICHA DE PRODUCTO PREMIUM (V3 CHILD THEME)

   ========================================== */



/* --- 1. SKU, Categoría y Badges de Stock --- */

.single-product .product_meta {

    display: flex !important;

    flex-direction: column !important;

    gap: 12px !important;

    padding: 18px !important;

    background: #f8f9fa !important;

    border-radius: 12px !important;

    border: 1px solid #eaeaea !important;

    margin: 20px 0 !important;

    width: 100% !important;

    box-sizing: border-box !important;

}



.single-product .product_meta .detail-container {

    display: flex !important;

    align-items: center !important;

    justify-content: space-between !important;

    font-size: 14px !important;

    color: #4a5568 !important;

    border-bottom: 1px solid #edf2f7 !important;

    padding-bottom: 8px !important;

}



.single-product .product_meta .detail-container:last-child {

    border-bottom: none !important;

    padding-bottom: 0 !important;

}



.single-product .product_meta .detail-label {

    font-weight: 700 !important;

    color: #1a202c !important;

    text-transform: uppercase !important;

    font-size: 11px !important;

    letter-spacing: 0.5px !important;

}



.single-product .product_meta .detail-content a {

    color: #ff9900 !important;

    font-weight: 600 !important;

    text-decoration: none !important;

    transition: color 0.2s !important;

}



.single-product .product_meta .detail-content a:hover {

    color: #e08800 !important;

}



/* Badges de Stock (En Stock / Agotado) */

.single-product .stock {

    display: inline-flex !important;

    align-items: center !important;

    padding: 6px 14px !important;

    border-radius: 20px !important;

    font-size: 12px !important;

    font-weight: 700 !important;

    text-transform: uppercase !important;

    letter-spacing: 0.5px !important;

    width: fit-content !important;

    margin: 10px 0 !important;

}



.single-product .stock.in-stock {

    background-color: #e6fffa !important;

    color: #319795 !important;

    border: 1px solid #b2f5ea !important;

}



.single-product .stock.out-of-stock,

.single-product .stock.outofstock,

.single-product .woocommerce-product-gallery + .stock,

.single-product span.out-of-stock,

.single-product .agotado-badge {

    background-color: #edf2f7 !important;

    color: #4a5568 !important;

    border: 1px solid #cbd5e0 !important;

}



/* --- 2. Botones de Navegación / Pestañas de WCFM (Location, More Offers, etc.) --- */

.single-product .tabbable .nav-tabs,

.single-product .tabs-elementor .nav-tabs,

.single-product .elementor-widget-woocommerce-product-data-tabs .nav-tabs {

    display: flex !important;

    flex-wrap: nowrap !important;

    overflow-x: auto !important; /* Scroll horizontal si exceden la pantalla móvil */

    gap: 8px !important;

    padding: 10px 5px !important;

    border-bottom: 2px solid #f0f0f0 !important;

    scrollbar-width: none !important; /* Oculta scroll en Firefox */

}



.single-product .tabbable .nav-tabs::-webkit-scrollbar,

.single-product .tabs-elementor .nav-tabs::-webkit-scrollbar,

.single-product .elementor-widget-woocommerce-product-data-tabs .nav-tabs::-webkit-scrollbar {

    display: none !important; /* Oculta scroll en Chrome/Safari */

}



.single-product .tabbable .nav-tabs > li,

.single-product .tabs-elementor .nav-tabs > li,

.single-product .elementor-widget-woocommerce-product-data-tabs .nav-tabs > li {

    float: none !important;

    display: inline-block !important;

    margin: 0 !important;

}



.single-product .tabbable .nav-tabs > li > a,

.single-product .tabs-elementor .nav-tabs > li > a,

.single-product .elementor-widget-woocommerce-product-data-tabs .nav-tabs > li > a {

    display: block !important;

    padding: 10px 20px !important;

    background: #f7fafc !important;

    color: #4a5568 !important;

    font-weight: 600 !important;

    font-size: 13px !important;

    text-decoration: none !important;

    border-radius: 30px !important; /* Botón tipo píldora */

    border: 1px solid #e2e8f0 !important;

    white-space: nowrap !important;

    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;

}



/* Efecto hover y pestaña activa */

.single-product .tabbable .nav-tabs > li > a:hover,

.single-product .tabs-elementor > li > a:hover,

.single-product .elementor-widget-woocommerce-product-data-tabs .nav-tabs > li > a:hover {

    background: #edf2f7 !important;

    color: #1a202c !important;

    border-color: #cbd5e0 !important;

}



.single-product .tabbable .nav-tabs > li.active > a,

.single-product .tabbable .nav-tabs > li.active > a:hover,

.single-product .tabbable .nav-tabs > li.active > a:focus,

.single-product .tabs-elementor .nav-tabs > li.active > a,

.single-product .elementor-widget-woocommerce-product-data-tabs .nav-tabs > li.active > a {

    background: #fff3e0 !important; /* Fondo naranja claro de la marca */

    color: #ff9900 !important; /* Texto naranja principal */

    border-color: #ff9900 !important;

    box-shadow: 0 4px 10px rgba(255, 153, 0, 0.15) !important;

    transform: translateY(-1px) !important;

}



/* Rediseño de márgenes y padding en responsive móvil para evitar cortes de contenido a la derecha */

@media (max-width: 767px) {

    .single-product .elementor-element-ad5bec4 {

        padding: 0 10px !important;

        margin: 0 !important;

        width: 100% !important;

        box-sizing: border-box !important;

    }

    

    .single-product .elementor-element-34ca539 {

        padding: 0 !important;

        margin: 0 !important;

        width: 100% !important;

        box-sizing: border-box !important;

    }



    .single-product .tabs-elementor .tabbable {

        width: 100% !important;

        margin: 0 !important;

        padding: 0 !important;

        box-sizing: border-box !important;

    }



    .single-product .elementor-widget-woocommerce-product-data-tabs,

    .single-product .elementor-widget-tabs {

        width: 100% !important;

        margin-left: 0 !important;

        margin-right: 0 !important;

        padding-left: 0 !important;

        padding-right: 0 !important;

        box-sizing: border-box !important;

    }

    

    .single-product .tabbable .tab-content,

    .single-product .tabs-elementor .tab-content {

        padding: 15px 10px !important;

        margin: 0 !important;

        width: 100% !important;

        box-sizing: border-box !important;

    }



    .single-product #tab-wcfm_location_tab,

    .single-product #tab-wcfm_sold_by_tab_map,

    .single-product .wcfmmp_store_info_store_location,

    .single-product .wcfmmp_store_tab_info {

        padding: 0 10px !important;

        margin: 0 !important;

        width: 100% !important;

        box-sizing: border-box !important;

    }



    /* Asegurar que el mapa de WCFM no se corte a la derecha */

    .single-product .wcfmmp-store-map,

    .single-product [id*="wcfm_sold_by_tab_map"] {

        width: 100% !important;

        max-width: 100% !important;

        box-sizing: border-box !important;

    }

}















/* ==========================================================================

   BORDER BEAM SEARCH BAR (CÁPSULA OSCURA CON HAZ MULTICOLOR ANIMADO)

   Componente interactivo con autocompletado AJAX en vivo

   ========================================================================== */



.animallium-beam-search-wrapper {

    position: relative !important;

    display: flex !important;

    justify-content: center !important;

    align-items: center !important;

    width: 100% !important;

    max-width: 440px !important;

    margin: 0 auto !important;

}



/* El contenedor BorderBeam con radio 20px / 64px y haz giratorio */

.animallium-beam-outer {

    position: relative !important;

    width: 380px !important;

    max-width: 100% !important;

    height: 44px !important;

    border-radius: 64px !important;

    overflow: hidden !important;

    background: #1d1d1d !important;

    padding: 1.5px !important;

    box-sizing: border-box !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

}



/* El haz de luz giratorio (Border Beam Colorful) */

.animallium-beam-outer::before {

    content: '' !important;

    position: absolute !important;

    top: -150% !important;

    left: -150% !important;

    width: 400% !important;

    height: 400% !important;

    background: conic-gradient(

        from 0deg,

        transparent 0deg,

        transparent 280deg,

        #ff007a 320deg,

        #ff7a00 340deg,

        #00e5ff 355deg,

        transparent 360deg

    ) !important;

    animation: animalliumBorderBeamRotate 3.1s linear infinite !important;

    z-index: 1 !important;

    pointer-events: none !important;

}



@keyframes animalliumBorderBeamRotate {

    0% {

        transform: rotate(0deg);

    }

    100% {

        transform: rotate(360deg);

    }

}



/* La cápsula interior oscura (#1d1d1d) */

.animallium-beam-inner {

    position: relative !important;

    z-index: 2 !important;

    width: 100% !important;

    height: 100% !important;

    border-radius: 64px !important;

    background: #1d1d1d !important;

    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08), inset 0 0 25px 0 rgba(255, 255, 255, 0.02) !important;

    display: flex !important;

    align-items: center !important;

    padding: 0 16px !important;

    gap: 10px !important;

    box-sizing: border-box !important;

    transition: box-shadow 0.25s ease !important;

}



.animallium-beam-inner:focus-within {

    box-shadow: inset 0 0 0 1px rgba(255, 150, 0, 0.4), inset 0 0 30px 0 rgba(255, 255, 255, 0.04) !important;

}



.animallium-beam-form {

    width: 100% !important;

    height: 100% !important;

    margin: 0 !important;

    padding: 0 !important;

    display: flex !important;

}



/* Icono SVG de búsqueda a la izquierda con opacidad 0.4 */

.animallium-beam-icon {

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    flex-shrink: 0 !important;

    opacity: 0.4 !important;

    color: #a3a3a3 !important;

    transition: opacity 0.2s ease, color 0.2s ease !important;

}



.animallium-beam-inner:focus-within .animallium-beam-icon {

    opacity: 0.9 !important;

    color: #ff9600 !important;

}



.animallium-beam-icon svg {

    display: block !important;

    width: 18px !important;

    height: 18px !important;

}



/* Input de búsqueda */

.animallium-beam-input {

    flex: 1 !important;

    width: 100% !important;

    height: 100% !important;

    background: transparent !important;

    border: none !important;

    outline: none !important;

    box-shadow: none !important;

    color: #f1f5f9 !important;

    font-size: 14.5px !important;

    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;

    line-height: 18px !important;

    padding: 0 !important;

    margin: 0 !important;

}



.animallium-beam-input::placeholder {

    color: #64748b !important;

    opacity: 1 !important;

    font-size: 14px !important;

}



/* Botón submit invisible o accesible con Enter */

.animallium-beam-submit {

    display: none !important;

}



/* Dropdown flotante elegante de resultados AJAX */

.animallium-beam-results {

    display: none;

    position: absolute !important;

    top: calc(100% + 8px) !important;

    left: 0 !important;

    right: 0 !important;

    background: #18181b !important;

    border: 1px solid rgba(255, 255, 255, 0.1) !important;

    border-radius: 16px !important;

    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.5) !important;

    z-index: 999999 !important;

    overflow: hidden !important;

    max-height: 380px !important;

    overflow-y: auto !important;

    backdrop-filter: blur(12px) !important;

}



.animallium-beam-results.is-open {

    display: block !important;

}



.animallium-beam-item {

    display: flex !important;

    align-items: center !important;

    gap: 12px !important;

    padding: 10px 14px !important;

    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;

    text-decoration: none !important;

    transition: background 0.2s ease !important;

}



.animallium-beam-item:last-child {

    border-bottom: none !important;

}



.animallium-beam-item:hover {

    background: rgba(255, 255, 255, 0.06) !important;

}



.animallium-beam-item img {

    width: 42px !important;

    height: 42px !important;

    border-radius: 8px !important;

    object-fit: cover !important;

    background: #27272a !important;

}



.animallium-beam-item-info {

    display: flex !important;

    flex-direction: column !important;

    overflow: hidden !important;

}



.animallium-beam-item-title {

    font-size: 13.5px !important;

    font-weight: 500 !important;

    color: #f8fafc !important;

    white-space: nowrap !important;

    overflow: hidden !important;

    text-overflow: ellipsis !important;

}



.animallium-beam-item-price {

    font-size: 13px !important;

    font-weight: 600 !important;

    color: #ff9600 !important;

    margin-top: 2px !important;

}



.animallium-beam-no-results,

.animallium-beam-loading {

    padding: 14px !important;

    text-align: center !important;

    color: #94a3b8 !important;

    font-size: 13px !important;

}



/* Limpieza de la columna contenedora para que la barra quede centrada y sin desbordes */

.elementor-element-3ee1a6ca {

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

}



.elementor-element-3ee1a6ca .elementor-widget-container {

    width: 100% !important;

    display: flex !important;

    justify-content: center !important;

}



@media (max-width: 767px) {

    .animallium-beam-outer {

        width: 100% !important;

        height: 42px !important;

    }

}



/* ==========================================================================

   CORRECCIÓN DEFINITIVA: MENÚ MÓVIL ELEMENTOR VS BUSCADOR BORDER BEAM

   1) Oculta automáticamente el buscador cuando el menú móvil se despliega.

   2) Convierte el menú móvil en una tarjeta 100% sólida, opaca, al frente de todo.

   ========================================================================== */



/* 1. Header Móvil (Plantilla 10048): Contenedor padre del menú y widget al frente absoluto */

.elementor-10048 .elementor-element.elementor-element-b9fa17a,

.elementor-element-b9fa17a {

    z-index: 999999 !important;

    position: absolute !important;

}



.elementor-10048 .elementor-element.elementor-element-1ca05fa,

.elementor-element-1ca05fa {

    z-index: 999999 !important;

    position: relative !important;

}



/* 2. Header Desktop/Alternativo (Plantilla 4174): Contenedor y columnas */

.elementor-element-6419bfa9,

.elementor-element-09551e2,

.elementor-element-588732ce {

    z-index: 999999 !important;

    position: relative !important;

}



/* 3. Menú Desplegable (Dropdown) de Elementor: Totalmente sólido, 100% opaco y al frente */

.elementor-nav-menu--dropdown,

.elementor-nav-menu--dropdown.elementor-nav-menu__container,

.elementor-widget-nav-menu .elementor-nav-menu--dropdown,

.elementor-10048 .elementor-nav-menu--dropdown,

.elementor-10048 .elementor-element-1ca05fa .elementor-nav-menu--dropdown {

    background-color: #0a60b3 !important; /* Color corporativo 100% sólido, CERO transparencia */

    background: #0a60b3 !important;

    opacity: 1 !important;

    z-index: 9999999 !important;

    position: absolute !important;

    border-radius: 14px !important;

    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(255, 255, 255, 0.15) !important;

    min-width: 260px !important;

    width: calc(100vw - 42px) !important;

    max-width: 320px !important;

    overflow: hidden !important;

}



/* Enlaces dentro del menú desplegable */

.elementor-10048 .elementor-element.elementor-element-1ca05fa .elementor-nav-menu--dropdown a,

.elementor-nav-menu--dropdown a {

    background-color: transparent !important;

    color: #ffffff !important;

    padding: 12px 18px !important;

    font-family: 'Poppins', sans-serif !important;

    font-size: 16px !important;

    font-weight: 500 !important;

    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;

    transition: background 0.2s ease, color 0.2s ease !important;

}



.elementor-10048 .elementor-element.elementor-element-1ca05fa .elementor-nav-menu--dropdown li:last-child a,

.elementor-nav-menu--dropdown li:last-child a {

    border-bottom: none !important;

}



.elementor-10048 .elementor-element.elementor-element-1ca05fa .elementor-nav-menu--dropdown a.elementor-item-active,

.elementor-nav-menu--dropdown a.elementor-item-active {

    background-color: rgba(255, 255, 255, 0.18) !important;

    color: #ff9800 !important;

    font-weight: 700 !important;

}



.elementor-10048 .elementor-element.elementor-element-1ca05fa .elementor-nav-menu--dropdown a:hover,

.elementor-nav-menu--dropdown a:hover {

    background-color: rgba(255, 255, 255, 0.25) !important;

    color: #ffb74d !important;

}



/* 4. Contenedores del Buscador (Móvil 70aec27/98ce546 y Desktop 6acd0642/3ee1a6ca) */

.elementor-10048 .elementor-element.elementor-element-70aec27,

.elementor-element-70aec27,

.elementor-element-98ce546,

.elementor-element-6acd0642,

.elementor-element-3ee1a6ca {

    z-index: 1 !important;

    position: relative !important;

}



.animallium-beam-search-wrapper,

.animallium-beam-outer {

    z-index: 1 !important;

    position: relative !important;

}



/* 5. OCULTAR AUTOMÁTICAMENTE EL BUSCADOR CUANDO EL MENÚ MÓVIL ESTÉ ABIERTO */

body.animallium-mobile-menu-open .animallium-beam-search-wrapper,

header:has(.elementor-menu-toggle.elementor-active) .animallium-beam-search-wrapper,

.elementor:has(.elementor-menu-toggle.elementor-active) .animallium-beam-search-wrapper,

.elementor-10048:has(.elementor-menu-toggle.elementor-active) .animallium-beam-search-wrapper,

.elementor:has(.elementor-nav-menu--dropdown[style*="display: block"]) .animallium-beam-search-wrapper {

    opacity: 0 !important;

    visibility: hidden !important;

    pointer-events: none !important;

    transition: opacity 0.2s ease, visibility 0.2s ease !important;

}



/* El dropdown flotante del buscador solo cuando se escribe en él */

.animallium-beam-results.is-open {

    z-index: 50 !important;

}







/* ==========================================================================

   CORRECCIÓN Z-INDEX MENÚ MÓVIL ELEMENTOR VS BUSCADOR BORDER BEAM

   Asegura que el dropdown del menú móvil se superponga limpiamente sobre la barra

   ========================================================================== */



/* Columna y contenedor del menú móvil al frente de las demás columnas */

.elementor-element-6419bfa9,

.elementor-element-09551e2,

.elementor-element-588732ce {

    z-index: 99999 !important;

    position: relative !important;

}



/* El menú desplegable móvil debe flotar sobre cualquier elemento del header */

.elementor-nav-menu--dropdown.elementor-nav-menu__container,

.elementor-widget-nav-menu .elementor-nav-menu--dropdown {

    z-index: 999999 !important;

    position: absolute !important;

    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25) !important;

    padding-top: 42px !important; /* Espacio para el botón de cierre X */

}



/* Botón flotante 'X' de cierre para el menú desplegable móvil */

.animallium-menu-close-btn {

    position: absolute !important;

    top: 10px !important;

    right: 12px !important;

    width: 32px !important;

    height: 32px !important;

    border-radius: 50% !important;

    background: rgba(255, 255, 255, 0.18) !important;

    color: #ffffff !important;

    border: none !important;

    cursor: pointer !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    z-index: 1000000 !important;

    transition: background 0.2s, transform 0.2s !important;

    padding: 0 !important;

}



.animallium-menu-close-btn:hover,

.animallium-menu-close-btn:active {

    background: rgba(255, 255, 255, 0.35) !important;

    transform: scale(1.08) !important;

}



/* Telón de fondo (Backdrop) para cerrar al tocar fuera del menú */

.animallium-menu-backdrop {

    position: fixed !important;

    top: 0 !important;

    left: 0 !important;

    width: 100vw !important;

    height: 100vh !important;

    background: rgba(0, 0, 0, 0.45) !important;

    backdrop-filter: blur(2px) !important;

    z-index: 99998 !important;

    opacity: 0 !important;

    visibility: hidden !important;

    pointer-events: none !important;

    transition: opacity 0.25s ease, visibility 0.25s ease !important;

}



.animallium-menu-backdrop.is-active {

    opacity: 1 !important;

    visibility: visible !important;

    pointer-events: auto !important;

}



/* La columna del buscador debe mantener un z-index estándar para no tapar el menú */

.elementor-element-3ee1a6ca {

    z-index: 10 !important;

    position: relative !important;

}



.animallium-beam-search-wrapper {

    z-index: 10 !important;

}



/* El dropdown flotante del buscador solo debe subir cuando está activado */

.animallium-beam-results.is-open {

    z-index: 1000 !important;

}



/* ==========================================================================
   CORRECCION COMPLETA MENU MOVIL ELEMENTOR - RESPETAR DISPLAY Y FLUJO NATIVO
   ========================================================================== */

/* Asegurar que cuando el toggle de Elementor está cerrado, el dropdown no use display: block forzado */
.elementor-nav-menu--toggle .elementor-menu-toggle:not(.elementor-active) + .elementor-nav-menu__container {
    max-height: 0 !important;
    transform: scaleY(0) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: max-height 0.3s ease, transform 0.3s ease, opacity 0.2s ease, visibility 0.2s ease !important;
}

/* Cuando el toggle de Elementor está ACTIVO (menú abierto) */
.elementor-nav-menu--toggle .elementor-menu-toggle.elementor-active + .elementor-nav-menu__container {
    max-height: 85vh !important;
    max-height: 85dvh !important;
    transform: scaleY(1) !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    transition: max-height 0.3s ease, transform 0.3s ease, opacity 0.2s ease, visibility 0.2s ease !important;
}

/* Columna y contenedor del menu al frente */
.elementor-element-1ca05fa,
.elementor-element-6419bfa9,
.elementor-element-09551e2,
.elementor-element-588732ce {
    z-index: 999999 !important;
    position: relative !important;
}

/* Dropdown flotante con bordes redondeados y sombra */
.elementor-nav-menu--dropdown.elementor-nav-menu__container,
.elementor-widget-nav-menu .elementor-nav-menu--dropdown {
    z-index: 9999999 !important;
    position: absolute !important;
    background: #0A60B3 !important;
    border-radius: 14px !important;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.45) !important;
    padding-top: 42px !important;
}

/* Boton de cierre X dentro del menu */
.animallium-menu-close-btn {
    position: absolute !important;
    top: 10px !important;
    right: 12px !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.22) !important;
    color: #ffffff !important;
    border: none !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 10000000 !important;
    transition: background 0.2s, transform 0.2s !important;
    padding: 0 !important;
}

.animallium-menu-close-btn:hover,
.animallium-menu-close-btn:active {
    background: rgba(255, 255, 255, 0.4) !important;
    transform: scale(1.08) !important;
}

/* Backdrop */
.animallium-menu-backdrop {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    background: rgba(0, 0, 0, 0.5) !important;
    backdrop-filter: blur(2px) !important;
    z-index: 99999 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: opacity 0.25s ease, visibility 0.25s ease !important;
}

.animallium-menu-backdrop.is-active {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}


/* Eliminar backdrop o forzar pointer-events: none */
#animallium-menu-backdrop,
.animallium-menu-backdrop {
    display: none !important;
    pointer-events: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

/* Asegurar que el contenedor del header y los enlaces sean 100% interactivos */
header.elementor-10048,
.elementor-element-9a2b9e4,
.elementor-element-b9fa17a,
.elementor-element-1ca05fa {
    z-index: 9999999 !important;
}

.elementor-nav-menu--dropdown.elementor-nav-menu__container,
.elementor-widget-nav-menu .elementor-nav-menu--dropdown {
    pointer-events: auto !important;
    z-index: 10000000 !important;
}

.elementor-nav-menu--dropdown a,
.elementor-nav-menu--dropdown li,
.elementor-nav-menu--dropdown ul {
    pointer-events: auto !important;
    position: relative !important;
    z-index: 10000001 !important;
}


/* ==========================================================================
   ESTILOS BOTON REGISTRARSE Y LOGIN HEADER
   ========================================================================== */
.top-login5 ul li a.register-trigger-btn,
.top-login5 ul li a.login-trigger-btn {
    display: inline-block !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: color 0.2s ease !important;
}

.top-login5 ul li a.register-trigger-btn:hover {
    color: #ff9800 !important;
    text-decoration: underline !important;
}

.top-login5 ul li .sep-login {
    color: rgba(0, 0, 0, 0.3) !important;
    margin: 0 4px !important;
}

/* En el modal de login de Emarket, hacer que el boton de Crear cuenta destaque */
.block-popup-login .col-reg.login-customer a.btn-reg-popup {
    display: inline-block !important;
    background: #0A60B3 !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    border-radius: 6px !important;
    padding: 10px 20px !important;
    text-align: center !important;
    text-transform: uppercase !important;
    transition: background 0.2s ease, transform 0.2s ease !important;
    cursor: pointer !important;
}

.block-popup-login .col-reg.login-customer a.btn-reg-popup:hover {
    background: #ff9800 !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
}


/* ==========================================================================
   ANIMALLIUM MOBILE MY-ACCOUNT NAVIGATION (Universal Responsive Bar & Scroll)
   ========================================================================== */

/* En tablets y móviles (<= 991px) */
@media (max-width: 991px) {
    /* Forzar que el nav sea 100% ancho y contenedor visible */
    nav.woocommerce-MyAccount-navigation,
    .woocommerce-account #contents .entry-content nav.woocommerce-MyAccount-navigation,
    .mobile-layout.woocommerce-account #contents .entry-content nav.woocommerce-MyAccount-navigation {
        float: none !important;
        width: 100% !important;
        margin: 0 0 22px 0 !important;
        padding: 0 !important;
        background: #ffffff !important;
        border-radius: 16px !important;
        box-shadow: 0 4px 18px rgba(10, 96, 179, 0.08) !important;
        border: 1px solid #e2e8f0 !important;
        position: relative !important;
        overflow: hidden !important;
    }

    /* Contenedor UL con SCROLL HORIZONTAL FLUIDO TÁCTIL Y BARRA VISIBLE */
    nav.woocommerce-MyAccount-navigation > ul,
    .woocommerce-account #contents .entry-content nav.woocommerce-MyAccount-navigation > ul,
    .mobile-layout.woocommerce-account #contents .entry-content nav.woocommerce-MyAccount-navigation ul {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        scroll-snap-type: x proximity !important;
        gap: 10px !important;
        padding: 16px 14px 12px 14px !important;
        margin: 0 !important;
        list-style: none !important;
        border: none !important;
        /* Barra de scroll visible y estilizada */
        scrollbar-width: thin !important;
        scrollbar-color: #0A60B3 #edf2f7 !important;
    }

    /* Estilizar scrollbar en Webkit (Safari, Chrome, iOS) para que se vea claro que se puede deslizar */
    nav.woocommerce-MyAccount-navigation > ul::-webkit-scrollbar,
    .woocommerce-account #contents .entry-content nav.woocommerce-MyAccount-navigation > ul::-webkit-scrollbar,
    .mobile-layout.woocommerce-account #contents .entry-content nav.woocommerce-MyAccount-navigation ul::-webkit-scrollbar {
        height: 6px !important;
        display: block !important;
    }
    nav.woocommerce-MyAccount-navigation > ul::-webkit-scrollbar-track,
    .woocommerce-account #contents .entry-content nav.woocommerce-MyAccount-navigation > ul::-webkit-scrollbar-track {
        background: #f1f5f9 !important;
        border-radius: 10px !important;
    }
    nav.woocommerce-MyAccount-navigation > ul::-webkit-scrollbar-thumb,
    .woocommerce-account #contents .entry-content nav.woocommerce-MyAccount-navigation > ul::-webkit-scrollbar-thumb {
        background: #0A60B3 !important;
        border-radius: 10px !important;
    }

    /* CADA ITEM (LI): TODOS LOS 9 ÍTEMS VISIBLES Y DESLIZABLES */
    nav.woocommerce-MyAccount-navigation > ul > li,
    .woocommerce-account #contents .entry-content nav.woocommerce-MyAccount-navigation > ul > li,
    .mobile-layout.woocommerce-account #contents .entry-content nav.woocommerce-MyAccount-navigation ul > li {
        display: block !important;
        flex: 0 0 auto !important;
        width: auto !important;
        min-width: 92px !important;
        max-width: 105px !important;
        float: none !important;
        padding: 0 !important;
        margin: 0 !important;
        text-align: center !important;
        background: transparent !important;
        background-image: none !important; /* Desactivar las imagenes de fondo desfasadas del tema viejo */
        scroll-snap-align: start !important;
        position: relative !important;
        border-radius: 12px !important;
    }

    /* ENLACES TIPO TARJETA MODERNA APP */
    nav.woocommerce-MyAccount-navigation > ul > li > a,
    .woocommerce-account #contents .entry-content nav.woocommerce-MyAccount-navigation > ul > li > a,
    .mobile-layout.woocommerce-account #contents .entry-content nav.woocommerce-MyAccount-navigation ul > li > a {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 10px 6px !important;
        border: 1px solid #e2e8f0 !important;
        background: #f8fafc !important;
        border-radius: 12px !important;
        min-height: 84px !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;
        color: #334155 !important;
        text-transform: none !important;
        text-decoration: none !important;
        box-shadow: 0 2px 5px rgba(0,0,0,0.02) !important;
        position: relative !important;
        transition: all 0.2s ease !important;
        white-space: normal !important;
        text-align: center !important;
    }

    /* Eliminar el pseudo-elemento :before conflictivo del tema viejo */
    nav.woocommerce-MyAccount-navigation > ul > li > a:before,
    .mobile-layout.woocommerce-account #contents .entry-content nav.woocommerce-MyAccount-navigation ul > li > a:before {
        display: none !important;
        content: none !important;
    }

    /* Icono en cada ítem con ::after ordenado arriba */
    nav.woocommerce-MyAccount-navigation > ul > li > a::after {
        order: -1 !important;
        display: block !important;
        font-size: 24px !important;
        margin-bottom: 6px !important;
        line-height: 1 !important;
    }

    /* Iconos emoji nítidos para CADA UNO de los 9 accesos */
    li.woocommerce-MyAccount-navigation-link--dashboard > a::after { content: '📊' !important; }
    li.woocommerce-MyAccount-navigation-link--edit-account > a::after { content: '👤' !important; }
    li.woocommerce-MyAccount-navigation-link--mis-mascotas > a::after { content: '🐾' !important; }
    li.woocommerce-MyAccount-navigation-link--orders > a::after { content: '📦' !important; }
    li.woocommerce-MyAccount-navigation-link--downloads > a::after { content: '📥' !important; }
    li.woocommerce-MyAccount-navigation-link--edit-address > a::after { content: '📍' !important; }
    li.woocommerce-MyAccount-navigation-link--pasaporte-phygital > a::after { content: '💳' !important; }
    li.woocommerce-MyAccount-navigation-link--inquiry > a::after { content: '🩺' !important; }
    li.woocommerce-MyAccount-navigation-link--customer-logout > a::after { content: '🚪' !important; }

    /* Estado ACTIVO con el azul corporativo de Animallium */
    nav.woocommerce-MyAccount-navigation > ul > li.is-active > a,
    .mobile-layout.woocommerce-account #contents .entry-content nav.woocommerce-MyAccount-navigation ul > li.is-active > a {
        background: linear-gradient(135deg, #0A60B3 0%, #06396b 100%) !important;
        color: #ffffff !important;
        border-color: #0A60B3 !important;
        box-shadow: 0 4px 14px rgba(10, 96, 179, 0.35) !important;
        transform: translateY(-2px) !important;
    }
    nav.woocommerce-MyAccount-navigation > ul > li.is-active > a::after {
        transform: scale(1.1) !important;
    }

    /* Barra indicadora inferior con instrucciones y flechas de deslizamiento */
    nav.woocommerce-MyAccount-navigation::after,
    .woocommerce-account #contents .entry-content nav.woocommerce-MyAccount-navigation::after,
    .mobile-layout.woocommerce-account #contents .entry-content nav.woocommerce-MyAccount-navigation::after {
        content: '◀ Desliza horizontalmente para ver todos los menús (9 opciones) • Abajo verás tu información ▼' !important;
        display: block !important;
        text-align: center !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        color: #0A60B3 !important;
        background: #f0f7ff !important;
        padding: 7px 10px !important;
        border-top: 1px solid #dbeafe !important;
        letter-spacing: 0.1px !important;
    }

    /* El contenido inferior ocupa todo el ancho */
    .woocommerce-account #contents .entry-content .woocommerce-MyAccount-content,
    .mobile-layout.woocommerce-account #contents .entry-content .woocommerce-MyAccount-content {
        width: 100% !important;
        float: none !important;
        clear: both !important;
        padding: 0 !important;
        margin: 0 !important;
    }
}


/* ==========================================================================
   ANIMALLIUM MIS MASCOTAS DASHBOARD CARDS & STYLING
   ========================================================================== */

.animallium-mis-mascotas-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    padding: 24px 28px;
    margin-bottom: 24px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.03);
    flex-wrap: wrap;
    gap: 16px;
}
.animallium-mis-mascotas-header h2 {
    margin: 0 0 4px 0 !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    color: #0A60B3 !important;
}
.animallium-mis-mascotas-header p {
    margin: 0 !important;
    font-size: 13.5px !important;
    color: #64748b !important;
}
.btn-nueva-mascota-top {
    background: #ff7a00 !important;
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    padding: 10px 20px !important;
    border-radius: 10px !important;
    text-decoration: none !important;
    box-shadow: 0 4px 12px rgba(255, 122, 0, 0.25) !important;
    transition: all 0.2s ease !important;
    display: inline-block !important;
}
.btn-nueva-mascota-top:hover {
    background: #e66e00 !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
}

/* Contenedor Grid de Mascotas */
.mascotas-dashboard-container {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(330px, 1fr));
    gap: 22px;
    margin-bottom: 30px;
}
@media (max-width: 600px) {
    .mascotas-dashboard-container {
        grid-template-columns: 1fr;
    }
}

/* Tarjeta individual */
.mascota-item-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    padding: 22px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.04);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: all 0.25s ease;
}
.mascota-item-card:hover {
    border-color: #0A60B3;
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(10, 96, 179, 0.1);
}

/* Header de la tarjeta */
.card-pet-header {
    display: flex;
    align-items: center;
    gap: 16px;
    padding-bottom: 16px;
    border-bottom: 1px solid #f1f5f9;
    margin-bottom: 16px;
}
.mascota-foto {
    width: 68px;
    height: 68px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
    border: 3px solid #0A60B3;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f8fafc;
}
.mascota-foto img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.foto-fallback {
    font-size: 32px;
}
.card-pet-identity {
    flex: 1;
}
.name-status-row {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 4px;
}
.mascota-name {
    margin: 0 !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
}
.pet-type-badge {
    background: #e0f2fe;
    color: #0369a1;
    font-size: 11px;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 20px;
}
.mascota-phygital-code {
    margin: 0 !important;
    font-size: 11.5px !important;
    color: #64748b !important;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace !important;
}
.mascota-phygital-code strong {
    color: #0A60B3;
}

/* Rejilla de píldoras de datos */
.mascota-info-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
    margin-bottom: 16px;
}
.info-pill {
    background: #f8fafc;
    border: 1px solid #edf2f7;
    border-radius: 8px;
    padding: 7px 10px;
    font-size: 12px;
    color: #475569;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.info-pill span {
    color: #64748b;
    font-size: 11px;
}
.info-pill strong {
    color: #0f172a;
    font-weight: 700;
}
.info-pill-alert {
    background: #fef2f2;
    border-color: #fee2e2;
}
.info-pill-alert strong {
    color: #dc2626;
}

/* Caja de cuidados / alergias */
.mascota-care-box {
    background: #fffbeb;
    border: 1px solid #fef3c7;
    border-radius: 10px;
    padding: 10px 12px;
    font-size: 12px;
    color: #92400e;
    margin-bottom: 16px;
    line-height: 1.4;
}

/* Footer de la tarjeta */
.card-pet-footer {
    display: flex;
    gap: 10px;
    padding-top: 14px;
    border-top: 1px solid #f1f5f9;
}
.btn-pet-edit-modern {
    flex: 1;
    background: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    color: #334155 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    padding: 8px 12px !important;
    border-radius: 8px !important;
    text-align: center !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}
.btn-pet-edit-modern:hover {
    border-color: #0A60B3 !important;
    color: #0A60B3 !important;
    background: #f0f7ff !important;
}
.btn-pet-book-modern {
    flex: 1;
    background: #0A60B3 !important;
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    padding: 8px 12px !important;
    border-radius: 8px !important;
    text-align: center !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}
.btn-pet-book-modern:hover {
    background: #07427d !important;
    color: #ffffff !important;
}

/* Estado vacío si no hay mascotas */
.animallium-empty-pets {
    background: #ffffff;
    border: 1px dashed #cbd5e1;
    border-radius: 18px;
    padding: 40px 24px;
    text-align: center;
    margin: 20px 0;
}
.empty-icon {
    font-size: 48px;
    display: block;
    margin-bottom: 12px;
}
.animallium-empty-pets h3 {
    margin: 0 0 8px 0;
    font-size: 18px;
    color: #0f172a;
}
.animallium-empty-pets p {
    color: #64748b;
    font-size: 13.5px;
    max-width: 480px;
    margin: 0 auto 20px auto;
}
.btn-empty-action {
    display: inline-block;
    background: #ff7a00;
    color: #ffffff !important;
    font-weight: 700;
    padding: 10px 24px;
    border-radius: 8px;
    text-decoration: none;
}



/* ==========================================================================
   FIX USER PROFILE ICON & BREADCRUMBS IN EDIT MASCOTA PAGE
   ========================================================================== */

/* 1. Hacer que el icono azul de perfil de usuario sea SIEMPRE clickeable */
.gio-user-icon-widget,
.gio-user-icon-widget a,
.elementor-element-a291b61,
.elementor-element-6978540 {
    position: relative !important;
    z-index: 99999999 !important;
    pointer-events: auto !important;
    cursor: pointer !important;
}

.gio-user-icon-widget a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    pointer-events: auto !important;
    cursor: pointer !important;
}

/* Evitar que columnas vecinas del menú o buscador se solapen invisiblemente */
.elementor-element-6419bfa9:not(:has(.elementor-active)) {
    pointer-events: none !important;
}
.elementor-element-6419bfa9 .elementor-widget-nav-menu {
    pointer-events: auto !important;
}

/* 2. Barra de Navegación y Miga de Pan (Breadcrumb Bar) para Edición de Mascota */
.animallium-pet-edit-navbar {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    padding: 16px 20px;
    margin-bottom: 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: 0 4px 15px rgba(10, 96, 179, 0.04);
    flex-wrap: wrap;
    gap: 12px;
}

.pet-edit-breadcrumbs {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13.5px;
    color: #64748b;
}

.pet-edit-breadcrumbs a {
    color: #0A60B3;
    text-decoration: none;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    transition: color 0.15s ease;
}

.pet-edit-breadcrumbs a:hover {
    color: #ff7a00;
    text-decoration: underline;
}

.pet-edit-breadcrumbs .sep {
    color: #cbd5e1;
    font-size: 12px;
}

.pet-edit-breadcrumbs .current {
    color: #0f172a;
    font-weight: 700;
}

.pet-edit-nav-actions {
    display: flex;
    gap: 10px;
    align-items: center;
}

.btn-nav-return {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #f0f7ff;
    color: #0A60B3 !important;
    border: 1px solid #bae6fd;
    padding: 7px 14px;
    border-radius: 8px;
    font-size: 12.5px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.2s ease;
}

.btn-nav-return:hover {
    background: #0A60B3;
    color: #ffffff !important;
    border-color: #0A60B3;
}


/* ==============================================================
   ESTILOS PREMIUM PARA LA IMAGEN DE INGRESO MÓVIL (MASCOTA ANIMALLIUM)
   ============================================================== */
.mobile-layout.woocommerce-account .image-login {
    text-align: center;
    margin: 15px auto 25px auto;
}

.mobile-layout.woocommerce-account .image-login img.img_logo,
.woocommerce-account .image-login img {
    max-width: 140px;
    height: auto;
    display: inline-block;
    filter: drop-shadow(0 8px 20px rgba(27, 42, 74, 0.12));
    transition: transform 0.3s ease;
}

.mobile-layout.woocommerce-account .image-login img.img_logo:hover {
    transform: scale(1.05);
}

.mobile-layout.woocommerce-account #customer_login h2 {
    text-align: center;
    font-size: 17px;
    font-weight: 700;
    letter-spacing: 0.5px;
    color: #1a2b49;
    margin-bottom: 25px;
    position: relative;
    padding-bottom: 10px;
}

.mobile-layout.woocommerce-account #customer_login h2:after {
    content: '';
    display: block;
    width: 40px;
    height: 3px;
    background: #ff7f50;
    border-radius: 2px;
    margin: 8px auto 0 auto;
}


/* ==========================================================================
   ANIMALLIUM HERO BANNER: FULLWIDTH DE BORDE A BORDE + EFECTO PARALLAX SCROLL
   ========================================================================== */

/* 1. Contenedor padre de Elementor (12fd77e) y Slider Revolution: Full Bleed 100vw */
.elementor-3192 .elementor-element.elementor-element-12fd77e,
.elementor-element.elementor-element-12fd77e {
    width: 100vw !important;
    max-width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

/* Evitar que cualquier padre bloquee el ancho o genere scroll horizontal indeseado */
body.home,
body.page-id-3192 {
    overflow-x: hidden !important;
}

/* Forzar que el widget de Slider Revolution cubra de lado a lado */
.elementor-element-4046094,
.elementor-element-4046094 > .elementor-widget-container,
.elementor-element-4046094 .wp-block-themepunch-revslider,
.elementor-element-4046094 sr7-module,
.animallium-hero-video-slider {
    width: 100vw !important;
    max-width: 100vw !important;
    left: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* 2. Capas internas del banner adaptadas para que nada se corte y llegue hasta el borde */
sr7-module#SR7_6_1 sr7-content {
    width: 100vw !important;
    max-width: 100vw !important;
}

sr7-module#SR7_6_1 sr7-slide {
    width: 100vw !important;
    max-width: 100vw !important;
}

/* Capa de fondo del slide para que cubra la totalidad sin bordes blancos */
sr7-module#SR7_6_1 sr7-bg,
sr7-module#SR7_6_1 sr7-bg img,
.animallium-hero-video-slider .hero-video-item {
    width: 100vw !important;
    max-width: 100vw !important;
    object-fit: cover !important;
}

/* 3. PARALLAX CON SCROLL FLUIDO: Acelerado por Hardware (GPU) */
.animallium-parallax-active sr7-slide[data-key="22"] sr7-bg,
.animallium-parallax-active .animallium-hero-video-slider .swiper-slide {
    will-change: transform;
    transition: transform 0.1s cubic-bezier(0.25, 1, 0.5, 1);
}

.animallium-parallax-active .sr7-layer[data-alias="Unmarketplace"],
.animallium-parallax-active .sr7-layer[data-alias="Muchos-sabores"],
.animallium-parallax-active .sr7-layer[data-alias="La-mejor"] {
    will-change: transform;
    transition: transform 0.12s cubic-bezier(0.25, 1, 0.5, 1);
}

/* 4. FLECHAS DE NAVEGACIÓN: MÁXIMA INTERACTIVIDAD Y CLIC GARANTIZADO */
/* Asegurar que las flechas de Slider Revolution tengan z-index dominante y respondan al clic */
.uranus.sr7-arrows,
sr7-arrows,
.sr7-arrow,
.sr7-arrow-left,
.sr7-arrow-right,
.hero-slider-button,
#heroPrev,
#heroNext {
    position: absolute !important;
    z-index: 99999 !important;
    pointer-events: auto !important;
    cursor: pointer !important;
    user-select: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.uranus.sr7-arrows:hover,
.hero-slider-button:hover {
    transform: scale(1.18) !important;
}

/* Dispositivos Móviles: Adaptación visual de borde a borde */
@media (max-width: 767px) {
    .elementor-3192 .elementor-element.elementor-element-12fd77e {
        width: 100vw !important;
        max-width: 100vw !important;
        margin-left: -50vw !important;
        margin-right: -50vw !important;
        left: 50% !important;
    }
    
    .uranus.sr7-arrows,
    .hero-slider-button {
        width: 38px !important;
        height: 38px !important;
    }
}

/* ==========================================================================
   ANIMALLIUM MASTER: CORRECCION DE DISTANCIA FUENTE-BANNER Y RESTAURACION DE VIDEOS
   ========================================================================== */

/* 1. FLECHAS DE NAVEGACION: INTERACTIVAS, VISIBLES Y CLICKEABLES AL 100% */
#heroPrev,
#heroNext,
.hero-slider-button,
.hero-prev,
.hero-next {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 9999999 !important;
    pointer-events: auto !important;
    cursor: pointer !important;
    user-select: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 46px !important;
    height: 46px !important;
    background: rgba(0, 0, 0, 0.28) !important;
    color: #ffffff !important;
    border-radius: 50% !important;
    transition: background 0.2s, transform 0.2s !important;
}

#heroPrev:hover,
#heroNext:hover,
.hero-slider-button:hover {
    background: rgba(0, 0, 0, 0.55) !important;
    transform: translateY(-50%) scale(1.12) !important;
}

#heroPrev,
.hero-prev {
    left: 18px !important;
}

#heroNext,
.hero-next {
    right: 18px !important;
}

/* 2. ELIMINAR COMPLETAMENTE EL ESPACIO ENTRE LA FUENTE (MARQUESINA) Y EL BANNER (IMAGEN) */
/* Quitar margen inferior del texto h2 (por defecto el h2 tiene 23px de margin-bottom que crea el espacio blanco) */
.elementor-3192 .elementor-element.elementor-element-c03ee79 .elementor-heading-title,
.elementor-3192 .elementor-element.elementor-element-c03ee79 h2.elementor-heading-title {
    margin-bottom: 0px !important;
    margin-block-end: 0px !important;
    padding-bottom: 0px !important;
    line-height: 1.15 !important;
}

.elementor-3192 .elementor-element.elementor-element-c03ee79,
.elementor-3192 .elementor-element.elementor-element-c03ee79 .elementor-widget-container {
    margin-bottom: 0px !important;
    margin-block-end: 0px !important;
    padding-bottom: 0px !important;
}

/* Quitar padding y margin inferior del contenedor de la fuente */
.elementor-3192 .elementor-element.elementor-element-54384cc {
    margin-top: 0px !important;
    margin-bottom: 0px !important;
    padding-bottom: 0px !important;
    border: none !important;
    box-shadow: none !important;
}

.elementor-3192 .elementor-element.elementor-element-54384cc .e-con-inner {
    padding-bottom: 0px !important;
    margin-bottom: 0px !important;
    gap: 0px !important;
}

/* Quitar margin superior del contenedor del banner para que pegue directamente al ras de la fuente */
.elementor-3192 .elementor-element.elementor-element-12fd77e,
.elementor-element.elementor-element-12fd77e {
    margin-top: 0px !important;
    padding-top: 0px !important;
    border-top: none !important;
    top: 0px !important;
}

.elementor-element-4046094,
.elementor-element-4046094 .elementor-widget-container,
.elementor-element-4046094 .elementor-shortcode {
    margin-top: 0px !important;
    padding-top: 0px !important;
    border-top: none !important;
}

.animallium-hero-video-slider,
#animalliumHeroSlider {
    margin-top: 0px !important;
    padding-top: 0px !important;
    border-top: none !important;
}

/* 3. OCULTAR SECCION VACIA DEL HEADER QUE AÑADE HUECO INVISIBLE (5f250c12) */
header.elementor-4174 .elementor-element-5f250c12,
header.elementor-4174 .header-bottom,
header.elementor-4174 .header-bottom-elementor2,
.header-bottom-elementor2 {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}

/* 4. REINICIO DE CONTENEDOR EN HOME PARA EVITAR DISTANCIAS EXCESIVAS */
body.home .body-wrapper,
body.home .body-wrapper-inner,
body.home .body-wrapper-inner > .container,
body.home #contents.main-page,
body.home .page > .entry-content,
body.home .page > .entry-content .entry-summary,
body.home .post-3192 {
    margin-top: 0 !important;
    padding-top: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    background: transparent !important;
    border-top: none !important;
}


/* Dropdown inactivo: estrictamente oculto y sin padding que proyecte cajas azules */
.elementor-nav-menu--dropdown:not(.elementor-active),
.elementor-widget-nav-menu .elementor-nav-menu--dropdown:not(.elementor-active),
nav.elementor-nav-menu--dropdown[aria-hidden="true"],
.elementor-nav-menu--toggle .elementor-menu-toggle:not(.elementor-active) + .elementor-nav-menu__container {
    display: none !important;
    max-height: 0 !important;
    padding: 0 !important;
    height: 0 !important;
    border: none !important;
    box-shadow: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* Dropdown activo con bordes redondeados, padding y sombra */
.elementor-nav-menu--dropdown.elementor-active,
.elementor-nav-menu--dropdown.elementor-nav-menu__container.elementor-active,
.elementor-widget-nav-menu .elementor-nav-menu--dropdown.elementor-active,
nav.elementor-nav-menu--dropdown[aria-hidden="false"] {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    z-index: 9999999 !important;
    position: absolute !important;
    background: #0A60B3 !important;
    border-radius: 14px !important;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.45) !important;
    padding-top: 42px !important;
    padding-bottom: 15px !important;
    max-height: 80vh !important;
    overflow-y: auto !important;
}
