/*
Theme Name: ASBO
Author: (rob.a) grafica | Web Solutions & graphic design
Author URI: robagrafica.com
Version: 1.0
*/

@import url('https://fonts.googleapis.com/css2?family=Titillium+Web:wght@400;600;700&display=swap');
@import "assets/css/custom_carousel.css";

:root {
    /* Font Family */
    --font_primary: 'Titillium Web', sans-serif;

    /* Font Weight */
    --font_normal: 400;
    --font_semibold: 600;
    --font_bold: 700;

    /* Colors */
    --theme_primary_color: #004080;
    --theme_dark: #002B4D;
    --theme_light: #ECEBE4;
    --text_primary_color: #002B4D;
    --main_bg: var(--theme_primary_color);

    /* Header / footer heights */
    --header_height: 100px;
    --footer_height: 180px;
    --header_zindex: 100px;

    --transition: all .3s;
    /*--container: 100%;*/
}


html, body {
    font-family: var(--font_primary);
    font-size: 18px;
    font-weight: var(--font_normal);
    font-style: normal;
    color: var(--text_primary_color);
}

.table, table{
    color: var(--text_primary_color) !important;
}

a, img{
    transition: var(--transition);
}
a {
    color: inherit;
    text-decoration: none;
}

a:hover {
    color: var(--theme_primary_color);
    text-decoration: none;
    opacity: .8;
}

.content-txt-container p{
    line-height: 1.8;
}

.theme_sticky{
    position: sticky;
    top: calc(var(--header_height) + 20px);
}

/*#hp-info a, #hp-slider a, #hp-patrimonio a, #hp-approfindimenti a{*/
/*    text-decoration: none;*/
/*}*/
#hp-info a:hover, #hp-slider a:hover, #hp-patrimonio a:hover, #hp-approfindimenti a:hover{
    /*text-decoration: underline;*/
}
.content-txt-container a{
    text-decoration: underline !important;
}

.wp_no_acf a, [id^="content_collapse"] a {
    color: var(--theme_primary_color);
}
.wp_no_acf a:hover, [id^="content_collapse"] a:hover {
    text-decoration: underline;
}

strong, b {
    font-weight: bold;
}

.main_bgcolor, .box-blu{
    background-color: var(--main_bg);
    color: var(--theme_light);
}
.box-blu{
    padding: 10px;
    color:white;
}
.main_bgcolor a:hover{
    color: white;
}
.box-blu a:hover{
    color: var(--theme_light);
}

.tit_row {
    text-transform: uppercase;
    padding-left: 90px;
    position: relative;
    margin-left: -1.5rem;
    font-weight: var(--font_semibold);
}
.tit_row::before {
    background-color: var(--theme_light);
    content: '';
    height: 3px;
    position: absolute;
    top: calc(50% - 1px);
    margin-left: -90px;
    width: 80px;
}

.tit_page{
    font-size: 1.555555rem !important;
    font-weight: bold !important;
}

/*----------------------
    Background color classes
----------------------*/
.bg_dark{
    background-color: var(--theme_dark);
    color: #FFFFFF;
}
.bg_primary{
    background-color: var(--theme_primary_color);
    color: #FFFFFF;
}
.bg_primary a:hover{
    color: #FFFFFF;
    opacity: .6;
}
.bg_light{
    background-color: var(--theme_light);
}

/*----------------------
    BUTTONS
----------------------*/

.view_all_link{
    /*color: var(--theme_light);*/
    background-color: rgb(182 182 171);
    padding: 0 10px 2px 40px;
    /*border: 1px solid #FFFFFF;*/
}
.view_all_link.theme_color{
    background-color: var(--theme_primary_color);
    color: #FFFFFF;
}

.arrow_link{
    background-color: var(--theme_primary_color);
    color: #FFFFFF;
    width: 100px;
    height: 48px;
    line-height: 48px;
    padding-left: 20px;
    transition: var(--transition);
}
a:hover .arrow_link{
    padding-left: 60px;
}
.arrow_link.right_bottom{
    position: absolute;
    bottom: 0;
    right: 15px;
}
.arrow_link.right_bottom.r0{
    right: 0;
}
.arrow_link.right_top{
    position: absolute;
    top: 0;
    right: 15px;
}
.btn, a.wp-block-button__link.wp-element-button {
    border-radius: 0;
    text-decoration: none;
    padding: 1rem 1.5rem;
    min-width: 240px;
    text-transform: uppercase;
}

.btn.btn-link{
    text-decoration: underline;
    padding: 0;
    min-width: auto;
    text-transform: none;
    color: inherit;
    font-size: inherit;
}
.btn-outline-sm {
    border: 1px solid;
    text-decoration: none !important;
    padding: 3px !important;
    text-transform: uppercase !important;
    font-size: 12px !important;
    width: 100%;
    margin-top: 10px;
    min-width: auto;
    font-weight: bold;
    color: var(--theme_primary_color);
}
button:focus {
    outline: none;
}
.btn-letters{
    width:40px;
    text-align: center;
    text-transform: uppercase;
    display: inline-block;
    padding: 5px 0;
    margin-left: -1px;
    margin-top: -1px;
}
.btn.btn-outline-theme_primary, .btn-letters.btn-outline-theme_primary, a.wp-block-button__link.wp-element-button {
    color: var(--theme_primary_color);
    background-color: transparent;
    background-image: none;
    border: 1px solid var(--theme_primary_color);
    font-weight: 400;
    text-decoration: none !important;
}
.btn.btn-outline-theme_primary:hover, .btn.btn-outline-sm:hover, a.wp-block-button__link.wp-element-button:hover{
    color: #FFFFFF;
    background-color: var(--theme_primary_color);
    background-image: none;
    border-color: #FFFFFF;
}
.btn-letters.btn-outline-theme_primary:hover {
    color: #FFFFFF;
    background-color: var(--theme_primary_color);
    background-image: none;
}
.btn.btn-outline-theme_negative {
    color: var(--theme_light);
    background-color: transparent;
    background-image: none;
    border: 1px solid var(--theme_light);
    font-weight: 400;
}
.btn.btn-outline-theme_negative:hover {
    color: var(--theme_primary_color);
    background-color: var(--theme_light);
    background-image: none;
    border-color: var(--theme_primary_color);
}
.btn_cta{
    padding: .5rem 1rem;
}

a.btn_red_arrow{
    color: var(--theme_primary_color);
    position: relative;
    display: block;
    font-size: 12px;
    font-weight: 400;
    text-transform: lowercase;
}
a.btn_red_arrow:hover{
    text-decoration: none;
}
a.btn_red_arrow.left:after{
    content: "\e87a";
    position: absolute;
    font-family: 'Linearicons-Free';
    margin-left: 15px;
    margin-top: -2px;
    transition: all .3s;
}
a.btn_red_arrow.left:hover:after{
    margin-left: 10px;
}
a.btn_red_arrow.right{
    margin-right: 30px;
}

a.btn_red_arrow.right:after{
    content: "\e87a";
    position: absolute;
    font-family: 'Linearicons-Free';
    right: -30px;
    top: -2px;
    transition: all .3s;
}
a.btn_red_arrow.right:hover:after{
    right: -25px;
}

a.btn_red_arrow.down:before{
    content: "\e878";
    position: absolute;
    font-family: 'Linearicons-Free';
    margin-left: -15px;
    margin-top: -1px;
    transition: all .3s;
}
a.btn_red_arrow.down:hover:before{
    margin-top: 5px;
}
a.btn_red_arrow.up:before{
    content: "\e877";
    position: absolute;
    font-family: 'Linearicons-Free';
    margin-left: -15px;
    margin-top: -1px;
    transition: all .3s;
}
a.btn_red_arrow.up:hover:before{
    margin-top: 5px;
}
a.btn_red_arrow.arrow_on_right.down, a.btn_red_arrow.arrow_on_right.up{
    margin-right: 20px;
    font-weight: 500;
}
a.btn_red_arrow.arrow_on_right.down:before, a.btn_red_arrow.arrow_on_right.up:before{
    margin-left: auto;
    right: -20px;
}


.btn-round {
    border-radius: 30px;
}
a.btn-theme-primary{
    background-color: var(--theme_primary_color);
    color: #FFFFFF;
    text-transform: uppercase;
    padding: 6px;
    font-size: 12px;
    text-align: center;
    transition: all .3s;
}
.btn-theme-primary:hover{
    text-decoration: none;
    color: var(--theme_primary_color);;
    background-color: #FFFFFF;
}

a.arrow-link{
    text-transform: uppercase;
    display: block;
    position: relative;
    padding-right: 25px;
    text-decoration: none;
    font-size: 14px;
    font-weight: var(--font_semibold);
}
a.arrow-link:after{
    content: '\f1df';
    font-family: 'Material Icons';
    position: absolute;
    right: 0;
}

/*----------------------
    HEADER
----------------------*/
header {
    height: var(--header_height);
    background-color: #ffffff;
    z-index: 100;
    position: sticky;
    top: 0;
    /*align-items: center;*/
    /*display: flex;*/
}


header .menu_lang{
    font-size: 14px;
    text-align: right;
    text-transform: uppercase;
    padding-bottom: 4px;
}

header .header-site_name h5{
    font-size: 16px;
    font-weight: bold;
}

ul.sel_lang{
   margin: 0;
}
.sel_lang li {
    display: inline-block;
    margin-left: 10px;
}
.sel_lang li.selected {
    font-weight: bold;
}

.header_search{
    background-color: var(--theme_light);
    height: 50px;
    padding-top: 5px;
}
.header_search form{
    position: relative;
}
.site_search {
    border: none;
    background-color: transparent;
    padding: 6px 40px 6px 10px;
    width: 100%;
}
.site_search + button{
    border: none;
    background-color: transparent;
    cursor: pointer;
    right: 10px;
    position: absolute;
    top: calc(50% - 10px);
}
.archive_search {
    border: none;
    background-color: white;
    padding: 6px 10px;
    width: 100%;
    font-size: 14px;
}
.page_search{
    background-color: var(--theme_light);
    height: 50px;
    padding-top: 5px;
    position: relative;
    max-width: 320px;
}
.page_search input{
    width: 100%;
    background-color: var(--theme_light);
}
.page_search button{
    border: none;
    background-color: transparent;
    right: 10px;
    position: absolute;
    top: calc(50% - 10px);
}
.mark, mark {
    padding: 0 .2em;
    background-color: #fbff07;
}

.archive_search + button {
    border: none;
    background-color: transparent;
    cursor: pointer;
}
#patrimonio_search.archive_search + button {
    right: 10px;
    position: absolute;
    top: calc(50% - 12px);
}

.search_input_icon{
    border: none;
    background-color: transparent;
    cursor: pointer;
    right: 14px;
    position: absolute;
    top: calc(50% - 14px);
}

/*----------------------
    MENU
----------------------*/
.menu_btn_open {
    font-size: 20px;
    line-height: 50px;
    cursor: pointer;
    text-align: center;
    background-color: #c52b1c;
    color: #fff;
    max-width: 70px;
    height: 50px;
    /*position: absolute;*/
    /*top: 0;*/
    /*right: 15px;*/
}
.modal_open {
    cursor: pointer;
    transition: var(--transition);
}
.modal_open:hover {
    color: var(--theme_primary_color);
}


ul.menu_lang li {
    display: inline-block;
    font-size: 14px;
}

ul.menu_lang li:not(:first-child):before {
    content: '/';
    margin: 0 4px;
}

ul.menu_lang li a {
    color: inherit;
    font-weight: bold;
}

.menu_area_desktop {
    background-color: var(--theme_primary_color);
    color: rgba(255,255,255,1);
}
#desk_menu > li a{
    text-decoration: none;
    position: relative;
    padding: 16px 0;
    display: block;
}
#desk_menu > li  a:after{
    content: '';
    border-bottom: 6px solid white;
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 10px;
    opacity: 0;
    transition: var(--transition);
}

#desk_menu > li{
    position: relative;
}

#desk_menu > li.current-menu-item > a, #desk_menu > li.current-menu-parent > a, #desk_menu > li a:hover{
    color: white;
}
#desk_menu > li.current-menu-item > a:after, #desk_menu > li.current-menu-parent > a:after, #desk_menu > li > a:hover:after{
    opacity: 1;
    bottom: 0;
}

#desk_menu .sub-menu {
    position: absolute;
    background-color: var(--theme_primary_color);
    list-style: none;
    margin-left: -20px;
    padding: 0 20px;
    white-space: nowrap;
    /*visibility: hidden;*/
    /*opacity: 0;*/
    /*height: 0;*/
    display: none;
    transition: var(--transition);
}
#desk_menu > li:hover > .sub-menu, #desk_menu li .sub-menu > li:hover > .sub-menu{
    /*visibility: visible;*/
    /*opacity: 1;*/
    /*height: auto;*/
    display: block;
}
#desk_menu .sub-menu a {
    color: white;
    padding: 6px 0;
}

#desk_menu .sub-menu .sub-menu {
    padding-left: 20px;
    width: 100%;
}
#desk_menu .sub-menu .sub-menu li{
    padding: 0 20px;
    /*border-left: 20px solid;*/
}
#desk_menu .sub-menu .sub-menu li:before{
    content: '-';
    position: absolute;
    top: 4px;
    left: 20px;
}


.main_menu{
    background-color: var(--theme_primary_color);
    color: #FFFFFF;
}
#mobile-menu{
    position: fixed;
    top: var(--header_height);
    background-color: white;
    width: calc(100% - 15px);
    border: solid;
    border-width: 1px 0 1px 0;
    z-index: 100;
}

ul#mob_menu, ul#mob_menu ul{
    list-style: none;
    padding-left: 0;
}
ul#mob_menu > li ul.sub-menu{
    display: none;
}
ul#mob_menu > li{
    position: relative;
    border-bottom: 1px solid;
    padding: 8px 0;
}
ul#mob_menu li a{
    display: block;
    padding-left: 10px;
}
ul#mob_menu > li ul.sub-menu .sub-menu a{
    padding-left: 20px;
}
ul#mob_menu > li ul.sub-menu .sub-menu a:before{
    content: '-';
    margin-right: 20px;

}
ul#mob_menu > li:not(.menu_open) > a:after{
    content: '\e145';
    font-family: "Material Icons";
    position: absolute;
    right: 10px;
    top: 8px;
}
ul#mob_menu > li.menu_open > a:after{
    content: '\e15b';
    font-family: "Material Icons";
    position: absolute;
    right: 10px;
    top: 8px;
}

ul#mob_menu ul.sub-menu li{
    padding: 10px 0;
}



/*----------------------
    breadcrumbs
----------------------*/
#breadcrumbs{
    margin-bottom: 20px;
}
.breadcrumb {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 0;
    margin-bottom: 0;
    list-style: none;
    background-color: #fff;
    border-radius: 0;
    font-size: 12px;
}

/*----------------------
    HOME PAGE
----------------------*/

.page-template-tpl-homepage h3, .page-template-tpl-homepage h5.card-title, footer h5{
    font-size: 24px;
    font-weight: bold;
}

.approfondimenti_hp .card {
    background-color: var(--theme_light);
    border: none;
    border-radius: 0;
    height: 100%;
}
#hp-patrimonio .btn{
    width: 90%;
}

/*
    Pagination
*/
.page-link {
    position: relative;
    display: block;
    padding: 10px 12px;
    margin-left: 0;
    line-height: 20px;
    letter-spacing: 0.37px;
    color: inherit;
    background-color: transparent;
    /*border: none;*/
    font-size: 16px;
    border: 1px solid;
    text-align: center;
}
ul.pagination li.page-item {
    min-width: 30px;
    text-align: center;
}
.page-item.disabled .page-link {
    box-sizing: border-box;
    /*height: 20px;*/
    /*width: 20px;*/
    /*border: none;*/
    /*border-radius: 3px;*/
    border-color: inherit;
    /*padding: 0;*/
    background-color: transparent;
    color: #000000;
    font-weight: bold;
}
.page-link:focus {
    box-shadow: none;
}
.page-link:hover {
    color: var(--theme_primary_color);
    /*border: none;*/
    background-color: transparent;
    border-color: inherit;
}

/*----------------------
    CATEGORY FILTERS
----------------------*/
#cat_filters.filters_menu{
    position: absolute;
    background-color: var(--theme_primary_color);
    right: 0;
    z-index: 20;
    color: #FFFFFF;
}
#cat_filters.filters_menu ul{
    text-align: left;
    list-style: none;
    font-size: 16px;
}
#cat_filters.filters_menu ul li{
    margin-bottom: 15px;
}
#cat_filters.filters_menu ul li a:hover{
    color: #FFFFFF;
    opacity: .6;
}
.filter_search{
    position: relative;
}
.filter_search .site_search{
    width: 100% !important;
}
.filter_search .site_search + button{
    right: 0;
}


/*----------------------
    POST GRIDS
----------------------*/
.grid_item a{
    text-decoration: none;
}

.grid_item h6{
    font-size: 21px;
    font-weight: bold;
    line-height: 1.5;
}

.img_thumb_grid_wrapper{
    height: 250px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}



/*----------------------
    SEARCH RESULTS
----------------------*/

.search_results{
    margin-top: 70px;
}
.search_list_menu{
    margin-bottom: 45px;
}
.item-result {
    margin-bottom: 25px;
    line-height: 20px;
}
.item-result .search_cat_name{
    font-size: 12px;
}

.search_keyword{
    color: var(--theme_primary_color);
    font-size: 14px;
    font-weight: 500;
}
.search_keyword a{
    margin-right: 20px;
}
.search_keyword span a{
    font-size: 80%;
}
.search_keyword span i{
    font-size: 80%;
    font-weight: bold;
    vertical-align: middle;
}
.key-search-exclude{
    cursor: pointer;
}

#extra-search input::placeholder{
    text-align: left;
}
.search_results ul{
    border-bottom: none !important;
}
.search_resluts_area_btn a{
    /*text-align: center;*/
    /*text-transform: uppercase;*/
    /*border: none !important;*/
    /*border-bottom: 1px solid !important;*/
    /*font-size: 14px;*/
    /*transition: all .3s;*/
    /*color: initial;*/
    border-color: var(--theme_light) !important;
    padding: .8rem !important;
}
.search_resluts_area_btn a.active{
    /*color: var(--theme_primary_color) !important;*/
    /*border-bottom: none !important;*/
    /*border-top: 2px solid !important;*/
    border-color: var(--theme_primary_color) !important;
    border-radius: 0;
    font-weight: bold;
}
/*.search_resluts_area_btn a:hover, .search_resluts_area_btn a:not(.active):hover{*/
/*    color: var(--theme_primary_color) !important;*/
/*    border-color: var(--theme_primary_color) !important;*/
/*    text-decoration: none !important;*/
/*    cursor: pointer !important;*/
/*}*/
#extra-search .site_search{
    width: 100%;
}
/*#extra-search .site_search + button{*/
/*    right: 0;*/
/*}*/

.search_list_cat{
    font-weight: bold;
    font-size: 14px;
}
.search_list_cat li a:hover{
    color: var(--theme_primary_color);
    text-decoration: none;
}
.search_list_cat span{
    color: rgba(0,0,0,.4);
    margin-left: 10px;
}

.search_list_cat li{
    margin-bottom: 10px;
}

/*----------------------
    ARCHIVI HP
----------------------*/
.archivi_cta_item {
    height: calc(var(--container) / 3);
    background-size: cover;
    background-position: center;
}
.archivio_cta_content {
    background-color: rgba(197, 40, 28, 0.6);
    margin: -50% 20px 0;
    padding: 40px;
    color: #fff;
    font-size: 14px;
    line-height: 1rem;
    min-height: calc(var(--container) / 5);
    height: 100%;
}
.archivio_cta_content h1{
    font-size: 22px;
    font-weight: 900;
    text-transform: uppercase;
}
.archivio_cta_content a{
    width: 40%;
    margin: 0 0 0 15%;
    font-weight: 400;
    position: absolute;
    bottom: 10px;
}
.carousel.arrow_out .carousel-control-next {
    right: -15px;
}
.carousel.arrow_out .carousel-control-prev {
    left: -15px;
}
.carousel.arrow_out .carousel-control-next, .carousel.arrow_out .carousel-control-prev {
    position: absolute;
    top: 0;
    /*bottom: 0;*/
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 15px;
    color: #fff;
    text-align: center;
    opacity: 1;
    background-color: var(--theme_primary_color);
    height: 40px;
}
.carousel.arrow_out .carousel-control-next:hover, .carousel.arrow_out .carousel-control-prev:hover {
    width: 80px;
}
.carousel.arrow_out .carousel-control-next-icon, .carousel.arrow_out .carousel-control-prev-icon {
    display: inline-block;
     width: auto;
     height: auto;
    background: transparent no-repeat center center;
    background-size: 100% 100%;
}
.carousel.arrow_out .carousel-control-next-icon {
    background-image: none;
}
.carousel.arrow_out .carousel-control-next-icon i{
    color: #FFFFFF;
    font-size: 20px;
}
.carousel.arrow_out .carousel-control-prev-icon {
    background-image: none;
}
.carousel.arrow_out .carousel-control-prev-icon i{
    color: #FFFFFF;
    font-size: 20px;
}

/*----------------------
    Single post
----------------------*/

.data_post{
    opacity: 50%;
}

/*----------------------
    PAGE Archivi
----------------------*/
.archivio-item {
    border-bottom: 1px solid var(--theme_light);
    margin-bottom: 30px;
}

#archivi-sidebar{
    /*border-left: 1px solid;*/
}
#archivi-sidebar > div {
    border-top: 1px solid var(--theme_light);
}
#archivi-sidebar input{
    background-color: white;
    margin-bottom: 10px;
    font-size: 14px;
}
#archivi-sidebar h6{
    /*background-color: var(--theme_light);*/
    font-weight: bold;
    display: block;
    padding: 4px 10px;
    margin-bottom: 10px !important;
}
ul.archive-filter-list li{
    margin-left: 10px;
}
ul.archive-filter-list li.active{
    font-weight: bold;
    margin-left: 10px;
}
ul.archive-filter-list li.active:before{
    content: "\e87a";
    font-family: 'Linearicons-Free';
    margin-right: 4px;
    font-size: 10px;
}

ul.path_list li:not(:last-child):after{
    content: '/';
    margin: 0 2px;
}



/*----------------------
    LIGHTCASE
----------------------*/
#lightcase-overlay {
    /*background: var(--theme_primary_color);*/
}
#lightcase-case {
    top: 40%;
    font-family: inherit;
}

/*#lightcase-info {*/
/*    top: -10%;*/
/*}*/
#lightcase-info #lightcase-caption {
    font-size: 16px;
    color: #fff;
}
#lightcase-info #lightcase-caption a:hover {
    color: inherit;
    opacity: .7;
}
#lightcase-info {
    position: fixed;
    /*padding-top: 15px;*/
    bottom: 10px;
    z-index: 20;
    width: 100%;
    background: var(--theme_primary_color);
    padding: 15px 10%;
    left: 0;
}
#lightcase-info #lightcase-sequenceInfo {
    font-size: 11px;
    color: #aaa;
    text-align: right;
}

.photogallery_grid{
    border-top: 10px solid #B6B6AB;
    border-left: 10px solid #B6B6AB;
}
.photogallery_grid > div {
    background: url(assets/images/loading.gif) center no-repeat ;
    height: 194px;
    overflow: hidden;
    border: 10px solid #B6B6AB;
    border-left: none;
    border-top: none;
}


/*----------------------
    EDITOR GENERICO
----------------------*/
img.alignleft {
    float: left;
    margin-right: 20px;
}
img.alignright {
    float: right;
    margin-left: 20px;
}
p ~ img.aligncenter {
    text-align: center;
}
.editor_generico .gallery img{
    border: none !important;
}

/*
Carousel flickity
*/
.carousel_flick, .wp-block-gallery {
    padding: 3rem 40px;
}

.carousel_flick img, .wp-block-gallery img {
    max-height: 300px;
    margin-right: 20px;
}

.wp-block-gallery img {
    margin-right: auto !important;
}

.wp-block-image {
    width: auto !important;
}

.wp-block-gallery.has-nested-images {
    display: block;
    flex-wrap: unset;
}

.flickity-button {
    position: absolute;
    background: transparent;
    border: none;
    color: var(--theme_primary_color);
    transition: var(--transition);
}

.flickity-button:hover {
    background: transparent;
    color: var(--text_primary_color);
    cursor: pointer;
}
/* position outside */
.flickity-prev-next-button.previous {
    left: -10px;
}
.flickity-prev-next-button.next {
    right: -10px;
}
/* hide disabled button */
/*.flickity-prev-next-button:disabled {*/
/*    display: none;*/
/*}*/

/*----------------------
    FOOTER
----------------------*/

footer {
    background-color: var(--theme_primary_color);
    padding: 20px 0;
    color: var(--theme_light);
}
footer a:hover{
    color: white;
    text-decoration: underline;
}
.footer_top{
    height: 80px;
    background-color: var(--text_primary_color);
}
.footer_top img{
    max-height: 70px;
}
ul#footer_menu, .social_footer {
    list-style: none;
    margin: 0;
    padding: 0;
}
ul#footer_menu li, .social_footer li{
    display: inline-block;
    margin-right: 20px;
}
.social_footer{
    text-align: center;
}

/*----------------------
    FORM ELEMENTS
----------------------*/
#search_in{
    font-size: 14px;
}
#search_in .btn.btn-link{
    font-weight: bold;
}
select{
    width: 100%;
    border: none;
    padding: 6px;
}
input{
    border-radius: 0 !important;
    border: none !important;
}
.form-check-label{
    font-size: 14px;
    vertical-align: text-top;
}
.form-check-input:checked {
    background-color: var(--text_primary_color) !important;
    border-color: transparent !important;
}
.form-check-input:focus{
    box-shadow: none;
}

/*----------------------
    MAPPA
----------------------*/

.leaflet-top {
    z-index: 0 !important;
}
#map {
    width: 100%;
    height: 600px;
    border: 1px solid #ccc;
}

#progress {
    display: none;
    position: absolute;
    z-index: 1000;
    left: 400px;
    top: 300px;
    width: 200px;
    height: 20px;
    margin-top: -20px;
    margin-left: -100px;
    background-color: #fff;
    background-color: rgba(255, 255, 255, 0.7);
    border-radius: 4px;
    padding: 2px;
}

#progress-bar {
    width: 0;
    height: 100%;
    background-color: #76A6FC;
    border-radius: 4px;
}

.marker-cluster-small {
    background-color: rgba(197, 43, 28, 0.3);
}
.marker-cluster-small div {
    background-color: rgba(197, 43, 28, 0.8);
    color: var(--theme_light);
}

.marker-cluster-medium {
    background-color: rgba(197, 43, 28, 0.3);
}
.marker-cluster-medium div {
    background-color: rgba(197, 43, 28, 0.8);
    color: var(--theme_light);
}

.marker-cluster-large {
    background-color: rgba(197, 43, 28, 0.3);
}
.marker-cluster-large div {
    background-color: rgba(197, 43, 28, 0.8);
    color: var(--theme_light);
}

.leaflet-popup-content {
    margin: 20px;
    line-height: 1.4;
}
.leaflet-popup-content-wrapper, .leaflet-popup-tip {
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 3px 14px rgba(0,0,0,0.4);
    border-radius: 4px;
}

/*
    Block Accordion
*/

.accordion-block .collapse-content {
    border-bottom: 6px solid var(--text_primary_color);
    background-color: #ECEBE48C;
    padding: 20px 40px;
    margin-bottom: 20px;
}

.accordion-title {
    background-color: var(--theme_light);
    position: relative;
    padding: 20px 40px;
}

.accordion-title:after {
    content: '\e5ce';
    font-family: 'Material Icons';
    position: absolute;
    right: 20px;
    font-size: x-large;
    top: 10px;
}

.accordion-title[aria-expanded="false"]:after {
    content: '\e5cf';
}

.accordion-block .allegato, .accordion-block .link {
    padding: 10px 40px;
    position: relative;
}

.accordion-block .allegato:before {
    content: '\e226';
    font-family: 'Material Icons';
    position: absolute;
    left: 0;
}

.accordion-block .link:before {
    content: '\f1e1';
    font-family: 'Material Icons';
    position: absolute;
    left: 0;
}

