.swiper-container {
    width: 100%;
    height: 100%;
}
.swiper-button-next, .swiper-button-prev {
    color: #000000;
}
.gallery-resource .swiper-button-next, .gallery-resource .swiper-button-prev, .slider-resources .swiper-button-next, .slider-resources .swiper-button-prev {
    background: none!important;
}
.swiper-slide {
    text-align: center;
    font-size: 18px;
    background: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    border: 1px solid #7b7b7b;
}
.gallery-resources .elementor-column a, .gallery-resources .slide a {
    background-color: #ffffff;
    border: 1px solid #7b7b7b;
    display: block;
    position: relative;
}
.gallery-resources .slide a .icona_categoria, .tourtracks-slider .slide a .icona_categoria {
    position: absolute;
    right: 10px;
    top: 10px;
    width: 40px;
    border-radius: 50%;
    padding: 4px;
}
.gallery-resources .slide>div, .tourtracks-slider .slide>div {
    padding: 15px 5px;
}
.gallery-resources .slick-slide>div, .tourtracks-slider .slick-slide>div {
    display: flex;
}
.gallery-resources .elementor-column a .titolo, .slider-resources a .titolo, .gallery-page-slider a .titolo, .tourtracks-slider a .titolo {
    font-size: 16px;
    padding: 10px;
    display: block;
    min-height: 70px;
}
.gallery-page-slider a .comune {
    font-size: 16px;
    padding: 0 10px 10px 10px;
    display: block;
    min-height: 35px;
}
.gallery-page-slider.template-over a .titolo, .tourtracks-slider a .titolo {
    position: absolute;
    top: 25%;
    color: #fff;
    left: 0;
    right: 0;
}
@media(min-width: 768px) {
    .gallery-page-slider.template-under a .titolo, .gallery-page-slider.template-under a .comune {
        background-color: #ffffff;
    }
}
.gallery-page-slider.template-over a .comune {
    position: absolute;
    color: #ffffff;
    left: 0;
    right: 0;
    bottom: 0;
}
.gallery-page-slider.template-over a .cover img, .tourtracks-slider a .cover img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 100%;
}
.gallery-page-slider a .cover img, .tourtracks-slider a .cover img {
    width: 100%;
}
.gallery-page-slider.template-over a, .tourtracks-slider a {
    min-height: 140px;
    overflow: hidden;
}
.gallery-page-slider .slick-dots li button, .tourtracks-slider .slick-dots li button {
    font-size: 16px;
    color: #777;
    font-family: inherit;
    width: 35px;
}
.gallery-page-slider .slick-dots li.slick-active button, .tourtracks-slider .slick-dots li.slick-active button {
    color: #000;
}
.gallery-page-slider .slick-dots li button::before, .tourtracks-slider .slick-dots li button::before {
    content: none;
}

@media(max-width: 767px) {
    .gallery-page-slider a .titolo {
        position: absolute;
        top: 25%;
        color: #fff;
        left: 0;
        right: 0;
    }
    .gallery-page-slider a .comune {
        position: absolute;
        color: #ffffff;
        left: 0;
        right: 0;
        bottom: 0;
    }
    .gallery-page-slider a .cover img {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
        width: 100%;
    }
    .gallery-page-slider a .cover img.placeholder_resource {
        display: none;
    }
    .gallery-page-slider a {
        min-height: 140px;
        overflow: hidden;
    }
}

.slider-resources .swiper-slide {
    width: 80%;
}
.mgp_shortcode_tourtracks .swiper-container {
    padding-bottom: 3rem;
}
.mgp_shortcode_tourtracks .swiper-slide {
    margin-top: 20px !important;
    width: 80%;
}
.mgp_shortcode_tourtracks .slide a {
    min-height: 140px;
    border: 1px solid #7b7b7b;
    display: block;
    position: relative;
    overflow: hidden;
}

.gallery-page-slider .swiper-slide {
    margin-top: 20px !important;
    height: auto!important;
}
.gallery-page-slider .tourtracks-swiper-pagination {
    width: 100%;
    text-align: center;
}
.gallery-page-slider {
    padding-bottom: 40px;
}
.gallery-page-slider .tourtracks-swiper-pagination .swiper-pagination-bullet span {
    display: block!important;
    width: 30px;
}
.gallery-page-slider .tourtracks-swiper-pagination .swiper-pagination-bullet {
    background: none;
    width: 8px;
    font-size: 14px;
}

.swiper-pagination-bullet-active {
    background-color: #ffffff!important;
}

.shortcode_cover_wrapper {
    position: relative;
}
.shortcode_cover_wrapper img {
    width: 100%;
    max-width: 100%!important;
}
.swiper-slide .didascalia, .shortcode_cover_wrapper .didascalia {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    color: #ffffff;
    padding: 15px;
    background-color: rgba(0,0,0,0.3);
    text-align: center;
}
.entry-content > :not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) {
    max-width: 100%!important;
}
.jsloader {
    transition: all .4s;
    pointer-events: none;
    cursor: none;
    position: relative;
    float: left;
}
.lds-ring {
    display: inline-block;
    position: relative;
    width: 30px;
    height: 30px;
}
.lds-ring div {
    box-sizing: border-box;
    display: block;
    position: absolute;
    width: 25px;
    height: 25px;
    margin: 0px;
    border: 2px solid #fff;
    border-radius: 50%;
    animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
    border-color: #0071a1 transparent transparent transparent;
}
.lds-ring div:nth-child(1) {
    animation-delay: -0.45s;
}
.lds-ring div:nth-child(2) {
    animation-delay: -0.3s;
}
.lds-ring div:nth-child(3) {
    animation-delay: -0.15s;
}
@keyframes lds-ring {
0% {
    transform: rotate(0deg);
}
100% {
    transform: rotate(360deg);
}
}
.mgp-d-none {
    opacity: 0;
    visibility: hidden;
}
select#distance {
    float: left;
    margin-right: 15px;
}
.distance_select_cont {
    display: block;
    float: left;
    width: 100%;
}
.mgp-resource-widget .elementor-column {
    padding: 5px;
    margin-bottom: 15px;
}
.mgp-resource-description iframe {
    width: 100%!important;
    height: 320px!important;
}
.leaflet-popup-content .titolo {
    font-size: 19px;
    font-weight: 700;
    line-height: 1.2;
}
.mgp-btn {
    color: #000 !important;
    padding: 6px 0;
    font-size: 14px;
    text-decoration: underline !important;
}
.leaflet-control-layers-list {
    min-width: 100%;
    padding-top: 0;
    padding-bottom: 0;
}
.leaflet-layerstree-children {
    padding-left: 15px;
}
#mgp_shortcode_related ul {
    margin-bottom: 0!important;
}
#ggg {
    width: 50px;
    height: 50px;
    background: red;
}
.leaflet-layerstree-header-name {
    font-size: 14px;
    font-weight: 700;
    display: inline-block;
}
.leaflet-layerstree-header-name .nome {
    padding-left: 10px;
}
.leaflet-layerstree-children .leaflet-layerstree-children .leaflet-layerstree-header-name {
    font-size: 14px;
    font-weight: 300;
}
.leaflet-layerstree-header input {
    margin-right: 5px!important;
}
.leaflet-layerstree-header .filter_icon {
    max-width: 20px;
    float: left;
}
#cont_mappa {
    position: relative;
    min-height: 250px;
}
#colonnamappa .elementor-element, #colonnamappa .elementor-widget-container, #colonnamappa .elementor-shortcode, #colonnamappa #cont_mappa, #colonnamappa #mappa {
    height: 100%;
}
#cont_mappa #mappa, #mappa {
    position: relative;
    z-index: 1;
}
#mappa {
    height: 100%;
}
#cont_mappa .icona_zoom, #cont_mappa .icona_local {
    position: absolute;
    top: 12px;
    right: 10px;
    display: block;
    z-index: 1;
    background-color: #fff;
    border-radius: 3px;
    width: 45px;
    border: 2px solid rgba(0,0,0,0.2);
}
#cont_mappa .icona_local {
    top: 60px;
}
#cont_mappa .overlay_loading_map {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(255,255,255,0);
    z-index: 10;
}
#cont_mappa .overlay_loading_map .lds-ring {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 60px;
    height: 60px;
}
#cont_mappa .overlay_loading_map .lds-ring div {
    width: 50px;
    height: 50px;
}
.mappa_back {
    position: absolute;
    top: 84px;
    left: 10px;
    border: 2px solid rgba(0,0,0,0.2);
    width: 34px;
    height: 34px;
    border-radius: 5px;
    z-index: 1;
    background-color: #ffffff;
}
.leaflet-right .leaflet-control {
    margin-right: 10px;
}
@media(min-width:768px) {
    #cont_mappa .icona_local {
        display:none;
    }   
}
.leaflet-retina .leaflet-control-layers-toggle, .leaflet-control-layers-toggle {
    background-image: url(../images/icona_filtro-01.svg)!important;
    background-size: 35px;
}
.mgp_search_modal {
    position: fixed;
    top: 50%;
    left: 50%;
    z-index: 2000;
    background-color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    transform: translate(-50%,-50%);
    height: 18rem;
    width: 45rem;
    max-width: 100%;
    box-shadow: 0 0 7px rgba(0,0,0,0.3);
    transition: all .2s;
}
.mgp_search_modal.mgp-d-none {
    transform: translate(-50%,-35%);
}
.mgp_search_modal form {
    position: relative;
    width: 400px;
    max-width: 90%;
}
.leaflet-control-zoom-in, .leaflet-control-zoom-out {
    color: rgb(78,78,78)!important;
}
.mgp_search_modal form .mgp-search-icon {
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
    background-color: #ececec;
    padding: 8px;
}
.mgp_closeSearch {
    position: absolute;
    top: -40px;
    right: 0;
}
.mgp_closeSearch svg {
    fill: #737373;
    width: 25px;
}

.elevation-summary .download {
    display: none;
} 
.elevation-hidden {
    display: none!important;
}
.mgp-hidden {
    display: none!important;
}
.updated-mgp {
    padding: 15px;
}
.updated-mgp>div {
    border: 2px solid #2ce649;
    padding: 15px;
    background: #dcf2dc;
}
.acf-icon.-location::before {
    content: none!important;
}
.acf-icon.-location {
    position: absolute;
    right: 0;
    top: -2px;
    background: transparent !important;
}
@media(min-width:768px) {
    .acf-icon.-location {
        display: none!important;
    }
}
@media(min-width:768px) {
    .form_img {
        width: 50%;
        float: left;
        clear: none !important;
    }
}
.acf-basic-uploader {
    display: block;
    height: 60px;
}
.acf-basic-uploader:before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}
.acf-basic-uploader input {
    display: none;   
}
.form_img {
    position: relative;
}
.bootstrap-filestyle.input-group {
    position: relative;
}
.bootstrap-filestyle.input-group .input-group-btn {
    position: absolute;
    top: 0;
    right: 0;
    background: #ccc;
    padding: 3px 15px;
}
.thelegend {
    pointer-events: none;
}
.icone_popup {
    display: flex;
}
.icone_popup img {
    margin-right: 10px;
}
.icone_cat {
    display: flex;
    justify-content: center;
}
.icone_cat img {
    margin: 0 5px;
}
.nearest_items {
    display: flex;
    flex-wrap: wrap;
}
.mgp_address_social_icons {
    margin: 0;
    display: flex;
    list-style: none;
}
.mgp_address_social_icons img {
    width: auto;
    margin: 0 0px;
    height: 20px !important;
}
.mgp_shortcode_address span {
    margin-right: 10px;
    display: inline-block;
}
#form_distance_select {
    display: block;
    width: 100%;
    float: left;
}
#nearest_track, #nearest_poi, #nearest_accomodation, #nearest_service, #nearest_post, #nearest_page {
    display: block;
    width: 100%;
    float: left; 
}
.gallery-resource img {
    width: 100%;
}
.dp-arrow i {
    width: 10px;
    height: 10px;
    border-left: 1px solid #000;
    border-bottom: 1px solid #000;
    position: absolute;
    right: 0;
    display: block;
    top: -2px;
    transform: rotate(-45deg);
}
.current_lang {
    display: block;
    position: relative;
    width: 45px;
    height: 16px;
    cursor: pointer;
}
.lang_switcher .dropdown.chiuso {
    display: none;
}
.lang_switcher .dropdown {
    padding: 10px;
    position: absolute;
    margin: 0;
    list-style: none;
    background: #fff;
    border: 1px solid #ccc;
    top: 15px;
}
.lang_slug, .lang_flag {
    display: inline-block;
}
.lang_slug {
    width: 30px;
}
.lang_switcher .current_lang .lang_slug {
    display: none;
}