/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

.lw-footer {
    display: none !important;
}

.splw-main-wrapper {
    margin-bottom: 0 !important;
}

/* NAV  */

header .top-nav {
    top:0!important;
}

.top-nav {
    .elementor-button>span {
        display: flex;
        align-items: center;
        justify-content: center;
        width: max-content;

    }

    svg {
        width: 1.875rem !important;
        height: auto;
    }

    svg * {
        stroke-width: 2px;
    }
}

.bottom-nav {
    .elementor-button>span {
        display: flex;
        align-items: center;
        justify-content: center;
        width: max-content;
        flex-direction: column !important;
    }

    .elementor-button {
        flex-direction: column !important;
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: transparent;
        color: black;
        gap: 5px;
        padding-top: 0;
        padding-bottom: 0;
    }

    svg {
        width: 1.875rem !important;
        height: auto;
        margin: 0 !important;
    }

    svg * {
        stroke-width: 2px;
        stroke: black;
    }
}

/* OFFERS  */


.offer-grid {
    display: grid;

    .offer-grid__title>* {
        font-size: 1.25rem;
        font-weight: 600;
        margin-bottom: 0.5rem;
    }

    ul {
        list-style: none;
        padding: 0;
        margin: 0;

        a {
            color: black;
            font-size: 0.875rem;
        }
    }

    @media (min-width: 768px) {
        .offer-grid__title>* {
            font-size: 2.25rem;
        }

        ul {
            a {
                font-size: 1.25rem;
            }
        }
    }
}

.select2-container--bootstrap-5 .select2-selection--single{
    background-image: none !important;
}

/* WordPress Admin Bar - Auto Hide con 1px visible */
#wpadminbar {
    position: fixed !important;
    top: -31px !important; /* Deja 1px visible (32px - 1px) */
    transition: top 0.3s ease-in-out !important;
    z-index: 99999 !important;
}

/* Crear zona de hover ampliada */
#wpadminbar::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 50px; /* Zona de hover de 50px desde la parte visible */
    z-index: -1;
}

/* Mostrar admin bar al hacer hover sobre la barra y su zona ampliada */
#wpadminbar:hover {
    top: 0 !important;
}

/* Ajustar el body para compensar la barra oculta */
html.wp-toolbar {
    padding-top: 0 !important;
}

body.admin-bar {
    margin-top: 0 !important;
}

/* Para pantallas más pequeñas (móviles) - deja 1px visible */
@media screen and (max-width: 782px) {
    #wpadminbar {
        top: -45px !important; /* Deja 1px visible (46px - 1px) */
    }
}


/* GRID  */

.elementor-grid{

    .geodir-badge-featured, .gd-post-pkg-2 {
        & > .elementor-location-archive > div{
            border: 1px solid var(--bs-primary)!important;
        }
    } 

    .type-gd_offers, .type-gd_event{
        .elementor-widget-image{
            display: block;  
        }
    }

    .elementor-widget-image{

        img{
            object-fit: cover;
            object-position: center;
        }
    }

    .geodir-badge-claimed{
        .elementor-widget-image{
            display: block!important;
            aspect-ratio: 32/9;
        }
    }

    .geodir-badge-featured{
        .elementor-widget-image{
            display: block!important;
            aspect-ratio: 16/9;
        }
    }


    .geodir-post-fav .geodir_post_meta  {
        border: 0 !important;
        background-color: white;
        border-radius: 50%;
        width: 40px;
        height: 40px;
        display: flex;
        justify-content: center;
        align-items: center;
    
        .geodir-removetofav-icon i {
            color: var(--bs-primary)!important;
        }
    }

    .geodir_post_meta i{
        color: var(--bs-secondary)!important;
    }

    .gd-badge{
        font-size: 0.875rem;
        padding: 0.5rem 1.5rem;
        border-top-left-radius: 0;
        border-top-right-radius: 0;
        font-weight: 600;
    }

    .elementor-widget-wp-widget-gd_post_badge:first-child{
        .gd-badge{
            border-bottom-left-radius: 0;
            border-top-right-radius: 0;
        }
    }

    .mb-2, .mb-3 {
        margin-bottom: 0rem !important;
    }

    .geodir-category a{
        background-color: transparent !important;
        color: #C4C3C9!important;
        padding: 0%!important;
        font-size: 16px!important;
    }

    .geodir-post-distance .gd-badge{
        background-color: transparent !important;
        color: black!important;
        font-size:1rem;
        padding: 0!important;

        i{
            color: #38B5BD!important;
        }
    }

    .dropdown-toggle::after{
        display: none!important;
    }

}

/* MODALS  */

body.modal-open .modal{
    z-index: 99999!important;
}

.modal-backdrop.show {
    z-index: 9999;
}

.gd-search-field-cpt{
    display: none!important;
}

.bsui .sticky-top{
    top: 100px !important;
    max-height: calc(100vh - 100px)!important;

    .geodir_map_container{
        max-height: calc(100vh - 100px)!important;
        min-height: calc(100vh - 100px)!important;
    }
}

.things-to-do-categories{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;

    .category-item{
        border-radius: 12px;
        overflow: hidden;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        min-height: 60px;
        position: relative;
    }

    .category-link {
        display: flex;
        align-items: center;
        justify-content: center;
        text-decoration: none;
        width: 100%;
        height: 100%;
        min-height: 60px;
        position: relative;
    }

    .category-title {
        text-align: center;
        margin: 0;
        padding: 30px 1rem;
        color: white;
        text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
        z-index: 1;
    }

    .category-link::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(0, 0, 0, 0.3);
        transition: background 0.3s ease;
    }

    .category-link:hover::before {
        background: rgba(0, 0, 0, 0.5);
    }

    @media (max-width: 768px) {
        .category-title {
            font-size: 1rem;
        }
    }

}


.vibe-rating-btn{
    color: var(--bs-primary)!important;
}