/***** Google Maps *****/


/***** General */

.no-scroll {
    overflow: hidden !important;
}


/*** Layout */

.pps-map {
    height: 600px;
}

@media only screen and (min-width: 768px) {
    .pps-map {
        height: 800px;
    }
}


/***** Styling */

@media (max-width: 820px) {
    .pps-map-wrapper {
        margin-left: calc(-1 * var(--page-layout-container-padding, 0px));
        margin-right: calc(-1 * var(--page-layout-container-padding, 0px));
    }
}

@media (min-width: 821px) {
    .pps-map-wrapper {
        border-radius: 50px 0 50px 0;
        overflow: hidden;
    }
}

.pps-map-wrapper ::placeholder {
    color: var(--color-content-faded);
}


/*** Filter */

.pps-map-wrapper .map_filter .wrapper_fields .label {
    font-size: 16px;
    font-weight: var(--bold-font-weight);
    color: var(--color-content-heading);
    margin-bottom: 10px;
}

.pps-map-wrapper .map_filter .wrapper_fields input,
.pps-map-wrapper .map_filter .wrapper_fields select {
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
}

.pps-map-wrapper .map_filter .wrapper_fields select,
.pps-map-wrapper .map_filter .wrapper_fields select:focus {
    -moz-appearance: none;
    /* Firefox */
    -webkit-appearance: none;
    /* Safari and Chrome */
    -o-appearance: none;
    /* Opera */
    appearance: none;
    position: relative;
    cursor: pointer;
    background: #FFFFFF url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M5%206l5%205%205-5%202%201-7%207-7-7%202-1z%22%20fill%3D%22%23666666%22%2F%3E%3C%2Fsvg%3E) no-repeat right 20px top 55% !important;
}


/** mobile */

@media (max-width: 820px) {
    .pps-map-wrapper .map_filter .filter_mobile {
        padding: 20px;
        background: var(--color-content-bg-alt);
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 20px;
    }
    .pps-map-wrapper .map_filter .wrapper_filter:not(.active) {
        display: none;
    }
    .pps-map-wrapper .map_filter .wrapper_filter.active {
        display: flex;
        align-items: center;
        position: fixed;
        z-index: 999999;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        background: rgba(0, 0, 0, 0.60);
    }
    .pps-map-wrapper .map_filter .wrapper_filter.active>.wrapper_inner {
        margin: 50px 10px;
        width: 100%;
        background: var(--color-content-bg);
        border-radius: 25px 0 25px 0;
        overflow: hidden;
        box-shadow: 0px 30px 30px rgba(0, 0, 0, 0.25);
    }
    .pps-map-wrapper .map_filter .wrapper_filter.active .header {
        padding: 20px 50px;
        position: relative;
        border-bottom: 1px solid var(--color-content-border);
    }
    .pps-map-wrapper .map_filter .wrapper_filter.active .header h3 {
        margin-bottom: 0;
    }
    .pps-map-wrapper .map_filter .wrapper_filter.active .header>a.hide_filter {
        position: absolute;
        top: 0;
        right: 0;
        font-size: 16px;
        color: var(--color-content-faded);
        padding: 10px;
    }
    .pps-map-wrapper .map_filter .wrapper_filter.active .filter {
        display: flex;
        flex-direction: column;
        gap: 20px;
        padding: 30px 20px;
        background: var(--color-content-bg-alt);
    }
    .pps-map-wrapper .map_filter .wrapper_filter.active .filter>.wrapper_fields {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }
    .pps-map-wrapper .map_filter .wrapper_filter.active .filter>.filter_submit .w-btn {
        width: 100%;
    }
    /** meta */
    .pps-map-wrapper .map_filter .filter_mobile .filter_meta {
        font-size: 14px;
        text-align: right;
    }
    .pps-map-wrapper .map_filter .filter_mobile .filter_meta a.reset_filter {
        text-decoration: underline;
    }
    .pps-map-wrapper .map_filter .filter_mobile .filter_meta .count {
        display: flex;
        gap: 5px;
    }
    .pps-map-wrapper .map_filter .filter_mobile .filter_meta .reset_filter,
    .pps-map-wrapper .map_filter .filter_mobile .filter_meta .count_filtered {
        display: none;
    }
    .pps-map-wrapper .map_filter.has_filters .filter_mobile .filter_meta .reset_filter {
        display: block;
    }
    .pps-map-wrapper .map_filter.has_filters .filter_mobile .filter_meta .count_filtered {
        display: flex;
        gap: 5px;
    }
}


/** desktop */

@media (min-width: 821px) {
    .pps-map-wrapper .map_filter .show_on_mobile {
        display: none;
    }
    .pps-map-wrapper .map_filter .wrapper_filter .filter {
        display: flex;
        gap: 10px;
        justify-content: center;
        align-items: flex-end;
        /* šedé pozadie na plnú šírku, obsah zarovnaný do gridu 1170px (pevná hodnota –
           NIE var(--site-content-width), lebo tú riadok width_custom="1820px" prepíše) */
        padding: 30px 50px;
        padding-left: max(50px, calc((100% - 1170px) / 2));
        padding-right: max(50px, calc((100% - 1170px) / 2));
        background: var(--color-content-bg-alt);
    }
    .pps-map-wrapper .map_filter .filter .wrapper_fields {
        flex: 1;
        display: flex;
        gap: 10px;
    }
    .pps-map-wrapper .map_filter .filter .wrapper_fields .filter_field {
        flex: 1 1 0;
        min-width: 0;
    }
    /* Názov širší, dropdowny užšie */
    .pps-map-wrapper .map_filter .filter .wrapper_fields .filter_field.search {
        flex: 2 1 0;
    }
    .pps-map-wrapper .map_filter .wrapper_fields .filter_field label,
    .pps-map-wrapper .map_filter .wrapper_fields .filter_field label > span {
        display: block;
        width: 100%;
    }
    .pps-map-wrapper .map_filter .wrapper_fields input,
    .pps-map-wrapper .map_filter .wrapper_fields select {
        width: 100%;
    }
}


/*** Tooltip */

.pps-map .gm-ui-hover-effect {
    width: 20px !important;
    height: 20px !important;
}

.pps-map .gm-ui-hover-effect>span {
    width: 20px !important;
    height: 20px !important;
    margin: 4px !important;
    background: var(--color-content-text) !important;
}

.pps-map .gm-style .gm-style-iw-c {
    filter: drop-shadow(0px 30px 30px rgba(0, 0, 0, 0.25));
    outline: none !important;
    width: 100%;
    max-width: 260px !important;
    border-radius: 30px 0 30px 0 !important;
    background: var(--color-content-bg) !important;
}

.pps-map .gm-style .gm-style-iw-tc::after {
    background: var(--color-content-bg) !important;
}

.no-touch .pps-map .gm-style .gm-style-iw-c .gm-ui-hover-effect {
    display: none !important;
}


/*** Tooltip Content */

.pps-map .wrapper_tooltip {
    width: 100%;
    padding: 12px;
    text-align: left;
    font-size: 16px;
    line-height: 1.5;
}

.pps-map .wrapper_tooltip a>h3 {
    text-decoration: underline;
}

.no-touch .pps-map .wrapper_tooltip a:hover>h3 {
    text-decoration: none;
}

.pps-map .wrapper_tooltip h3 {
    font-size: 1rem;
    line-height: 1.333;
    padding-top: 0;
}

.pps-map .wrapper_tooltip h3:not(:last-child) {
    margin-bottom: 5px;
}

.pps-map .wrapper_tooltip .tooltip_stars {
    color: #f5a623;
    font-size: 13px;
    letter-spacing: 2px;
    margin-bottom: 5px;
}