/*
Theme Name:     Hello Elementor Child
Theme URI:      http://www.ssd.it
Description:    Tema Child custom Agim per il tema Hello Elementor
Author:         SSD srl
Author URI:     http://www.ssd.it/
Template:       hello-elementor
Version:        0.1.0
*/
:root {
    --agim-title-font: 'Caviar Dreams', sans-serif !important;
    --agim-primary-font: 'Source Sans 3', sans-serif !important;
    letter-spacing: 0.7px;
    --agim-primary-color: #00294B !important;
    --agim-secondary-color: #D0831F !important;
    --agim-text-color: #00294B !important;
}

h6,
p {
    font-family: var(--agim-primary-font) !important;
    font-size: 16px !important;
    line-height: 23px !important;
    font-weight: 400;
}
.elementor-form a {
    color: #d0831f !important;
}
.fa-mobile-phone::before, .fa-mobile::before {
    content: "\f10b" !important;
}

body:not(.home) header {
    padding-bottom: 0 !important;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}
.elementor-form {
    flex-direction: column !important;
}

.elementor-message {
    text-align: center;
    margin: 20px 0px;
    border: 1px solid;
    padding: 20px;
    display: flex;
    align-items: center;
    width: auto;
}

/* PREFERITI */
.bg-bookmark .tfre-property-favorite .add {
    display: block;
}

.bg-bookmark .tfre-property-favorite .remove {
    display: none;
}

.bg-bookmark .tfre-property-favorite.saved .remove {
    display: block;
}

.bg-bookmark .tfre-property-favorite.saved .add {
    display: none;
}

.bg-bookmark .tfre-property-favorite .add i,
.bg-bookmark .tfre-property-favorite .remove i {
    position: absolute;
    top: 15px;
    border: 1px solid #fff;
    border-radius: 50%;
    padding: 8px;
    align-items: center;
    display: flex;
    background: #fff;
    width: 30px;
    height: 30px;
    font-size: 14px;
    justify-content: center;
    transform: translateX(-30px);  
    color: var(--agim-primary-color); 
    border-radius: 18px !important; 
}
.bg-bookmark .tfre-property-favorite .add i:hover {
    background: var(--agim-primary-color);
    color: #ffffff;
    border: 1px solid var(--agim-primary-color);
}

.bg-bookmark .tfre-property-favorite.saved .remove i {
    display: flex;
}

/* INIZIAMO DA QUI: INTESTAZIONE HOMEPAGE */
.icone-header .icon-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    gap: 10px;
    flex-wrap: nowrap;
}

.icone-header .icon-list li {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    white-space: nowrap;
    font-family: var(--agim-primary-font);
    color: #ffffff;
    font-size: 15px;
    line-height: 15px;
    font-weight: 400;
    letter-spacing: 0;
}

body.home .icone-header .icon-list li a span {
    text-decoration: none !important;
    color: #ffffff;
}

body.home .icone-header .icon-list li i {
    color: #ffffff;
    font-size: 16px;
}

body.home .elementor-location-header.fixed .icone-header .icon-list li a span {
    color: var(--agim-primary-color);
}



@media (max-width: 1200px) {
    body.home .elementor-location-header{
        background-color: transparent !important;
        display: flex;
        justify-content: space-between;
    }
    body.home .elementor-location-header.fixed{
        background-color: #FFFFFF !important;
        display: flex;
        justify-content: space-between;
    }
    body.home .elementor-location-header .elementor-menu-toggle {
        background-color: transparent !important;
    }

    body.home .elementor-location-header .elementor-menu-toggle .e-font-icon-svg {
        fill: var(--agim-primary-color);
        color: var(--agim-primary-color);
        height: 1em;
        width: 1em;
    }
    body.home .elementor-location-header.fixed .elementor-menu-toggle .e-font-icon-svg {
        fill: var(--agim-primary-color);
        color: var(--agim-primary-color);
        height: 1em;
        width: 1em;
    }

    body.home .elementor-location-header .logo-nascosto1 {
        opacity: 1;
        display: flex;
    }
    body.home .elementor-location-header.fixed .logo-nascosto1 {
        display: flex;
        opacity: 1;
    }
}

.logo-nascosto1 {
    display: none;
}


.elementor-nav-menu__align-center .elementor-nav-menu {
    justify-content: flex-start !important;
    margin-inline-end: auto;
    margin-inline-start: 0 !important;
}

.elementor-location-header.fixed {
    position: fixed;
    z-index: 999 !important;
    top: 0;
    background-color: #ffffff !important;
    width: 100%;
    transition: all 0.2s ease-out !important;
    padding: 0 !important;
    margin: 0 !important;
}

body.home .elementor-location-header .menu-sito nav ul li a[aria-current="page"] {
     color: var(--agim-secondary-color) !important;
}

body.home .elementor-location-header.fixed .menu-sito nav ul li a {
    color: var(--agim-primary-color) !important;
}
body.home .elementor-location-header.fixed .menu-sito nav ul li a:hover {
    color: var(--agim-secondary-color) !important;
}

body.home .elementor-location-header.fixed .menu-sito nav ul li a[aria-current="page"] {
    color: var(--agim-secondary-color) !important;
}
/*
body.home .elementor-location-header.fixed .menu-sito {
    color: var(--agim-primary-color) !important;
}
*/


body.home .elementor-location-header.fixed li .contatto-email-testo {
    display: none;
}


.elementor-location-header.fixed .logo-nascosto1 {
    display: flex;
}

.elementor-location-header .header-menu {
    background-color: transparent !important;
    transition: all 0.5s ease;
    opacity: 1;
}

.menu-contatti-header,
.menu-contatti-header-page {
    display: flex;
    justify-content: flex-end;
}

body.home .elementor-location-header.fixed li a #contatto-mail{
    color: var(--agim-primary-color);
    border: 1px solid var(--agim-primary-color);
    padding: 10px 25px 10px 10px;
    border-radius: 5px;
}
body.home .elementor-location-header.fixed li a #contatto-mail:hover {
    border: 1px solid var(--agim-primary-color);
    background-color: var(--agim-primary-color) !important;
    color: #ffffff;
    transition: color 0.4s ease;
}


body:not(.home) .elementor-location-header.fixed li a #button-main-header,
body:not(.home) .elementor-location-header li a #button-main-header{
    color: var(--agim-primary-color);
    border: 1px solid var(--agim-primary-color);
    padding: 10px 25px 10px 10px;
    border-radius: 5px;
}

body:not(.home) .elementor-location-header.fixed li a #button-main-header:hover,
body:not(.home) .elementor-location-header li a #button-main-header:hover {
    border: 1px solid var(--agim-primary-color);
    background-color: var(--agim-primary-color) !important;
    color: #ffffff;
    transition: color 0.4s ease;
}







.elementor-location-header.fixed .menu-contatti-header {
    margin-right: 0 !important;
    padding-right: 0 !important;
    color: var(--agim-primary-color);

}

.elementor-location-header.fixed .menu-contatti-header ul li {
    color: var(--agim-primary-color);
}

.elementor-location-header.fixed .menu-contatti-header ul li i {
    color: var(--agim-primary-color);
}

.icone-header-pages {
    display: flex;
    justify-content: flex-end;
    margin: 0;
    width: 100%;
}

.icone-header-pages .icon-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    gap: 10px;
    flex-wrap: nowrap;
    justify-content: flex-end;
    align-content: end;

}

.icone-header-pages .icon-list li {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    white-space: nowrap;
    font-family: var(--agim-primary-font);
    color: #ffffff;
    font-size: 15px;
    line-height: 15px;
    font-weight: 400;
    letter-spacing: 0;
}

.icone-header-pages .icon-list li a span {
    text-decoration: none !important;
    color: var(--agim-primary-color);
}

.icone-header-pages .icon-list li i {
    color: var(--agim-primary-color);
    font-size: 16px;
}


/* PER I QUARTIERI */
/* STATO NORMALE */
.card-hover {
    background-size: cover;
    background-position: center;
    filter: grayscale(100%);
    transition: filter 0.4s ease;
}

/* TESTO NORMALE */
.card-hover .titolo-bold-quartieri {
    color: #00294b !important;
    transition: color 0.4s ease !important;
}

/* HOVER */
.card-hover:hover {
    filter: grayscale(0%);
    transition: color 0.4s ease !important;
}

.card-hover .titolo-bold-quartieri :hover {
    color: #d0831f !important;
}

.titolo-bold-quartieri {
    font-size: 20px;
    line-height: 24px;
    font-weight: 600;
    color: #00294b;
}
@media (max-width: 1435px) and (min-width: 1200px) {
    .titolo-bold-quartieri{
        font-size: 18px;
        line-height: 22px;
        font-weight: 600;
        color: #00294b;
    }
}

.card-hover h1,
.card-hover h2,
.card-hover h3,
.card-hover h4,
.card-hover h5,
.card-hover h6,
.card-hover p,
.card-hover span {
    color: #00294b !important;
    transition: color 0.4s ease;
}

.card-hover:hover h1,
.card-hover:hover h2,
.card-hover:hover h3,
.card-hover:hover h4,
.card-hover:hover h5,
.card-hover:hover h6,
.card-hover:hover p,
.card-hover:hover span {
    color: #d0831f !important;
}

/*ELENCO IMMOBILE */
.label-featured.label {
    position: absolute;
    top: 20px;
    left: 20px;
    background: #ffffff;
    color: var(--agim-secondary-color);
    font-weight: bold;
    font-size: 11px;
    padding: 4px 9px;
    z-index: 30;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    letter-spacing: 0;
    text-align: center;
    border-radius: 6px;
    border: 2px solid #fff;
    text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.15);
    pointer-events: none;
}

/* FINE ELENCO IMMOBILE */

/* VETRINA ULTIMI IMMOBILI */
.featured-property-item-widget {
    width: 100%;
}

.labels-wrap.labels-right {
    position: absolute;
    top: 15px;
    left: 15px;
    background: #ffffff;
    color: var(--agim-secondary-color);
    font-weight: bold;
    font-size: 11px;
    padding: 4px 9px;
    z-index: 30;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    letter-spacing: 0;
    text-align: center;
    border-radius: 6px;
    border: 2px solid #fff;
    text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.15);
    pointer-events: none;
    text-transform: uppercase;
}

.featured-property-item-widget .item-wrap-v3 .item-address {
    font-family: var(--agim-primary-font);
    color: #fff;
    bottom: 15px;
    z-index: 1;
    bottom: 15px;
    position: absolute;
    left: 15px;
    font-weight: 700;
    font-size: 16px;
}

.item-wrap.item-wrap-v3 .item-price {
    position: absolute;
    bottom: 39px;
    color: #fff;
    left: 15px;
    font-weight: 700;
    font-size: 16px;
}

.featured-property-item-widget .item-wrap-v3 .item-price-wrap {
    left: 20px;
    bottom: 35px;
}

.widget-body.widget {
    color: #000;

}

.widget-body.widget ul.children li a {
    font-size: 14px !important;
    color: var(--agim-primary-color) !important;
}

.widget-body.widget a {
    color: #000;
    font-size: 16px
}

.widget-body.widget a:hover {
    color: #ffffff;
}

/*TODO: c'è qualcosa che non va qua sopra*/


/*VETRINA ITEM: VETRINA IN HOMEPAGE*/
.divisore {
    border-bottom: 1px solid #00294B20;
    display: flex;
    width: 100%;
}

.vetrina.item {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    cursor: pointer;
    position: relative;
}
.vetrina.item .view-gallery {
    position: relative;
    width: 100%;
    display: block;
}
.vetrina.item .foto-lazy{
    border: none;
    border-radius: 0;
    box-shadow: none;
    height: 260px;
    width: 100%;
    object-fit: cover;
    display: block;
}

.vetrina.item .top-foto,
.ultimi-immobili .top-foto {
    position: absolute;
    top: 10px;
    left: 0px;
    display: flex;
    justify-content: space-between;
    width: 100%;
    padding: 15px;
    z-index: 10;
}

.vetrina.item .top-foto .left,
.ultimi-immobili .top-foto .left {
    display: flex;
    justify-content: flex-start;
    width: 50%;
}

.vetrina.item .top-foto .right,
.ultimi-immobili .top-foto .right {
    display: flex;
    justify-content: flex-end;
    width: 50%;
}

.vetrina.item .top-foto .left .btn-contratto-vetrina,
.ultimi-immobili .top-foto .left .btn-contratto-vetrina {
    color: var(--agim-primary-color);
    font-size: 12px;
    font-family: var(--agim-primary-font);
    background-color: #FFFFFF;
    border: 1px solid #FFFFFF;
    border-radius: 18px;
    padding: 4px 10px 3px 10px;
    text-transform: uppercase;
    position: relative;
    top: 0;
}

.vetrina.item .bottom-infor-features {
    width: 100% !important;
    padding: 0 15px;
    border: 1px solid #00294B20;
    border-top: none;
}

.vetrina.item .bottom-infor-features .info-immobile,
.vetrina.item .bottom-infor-features .description,
.vetrina.item .bottom-infor-features .riga-bottom {
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.vetrina.item .bottom-infor-features .item-address {
    display: flex;
    justify-content: flex-start;
    width: 100%;
}

.vetrina.item .bottom-infor-features .item-address span {
    font-family: var(--agim-primary-font);
    font-size: 14px;
    color: var(--agim-primary-color);
    font-weight: 400;
}

.vetrina.item .bottom-infor-features .info-immobile span {
    font-family: var(--agim-primary-font);
    font-size: 16px;
    color: var(--agim-primary-color);
    font-weight: 700;
    margin-top: 7px;
}


.vetrina.item .bottom-infor-features .description {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}
.vetrina.item .bottom-infor-features .description .property-information span i {
    font-size: 22px;
    color: var(--agim-secondary-color);
    height: 32px;
    margin-top: 9px;
}

.vetrina.item .bottom-infor-features .description .property-information .value {
    font-family: var(--agim-primary-font);
    font-size: 14px;
    color: var(--agim-primary-color);
    font-weight: 400;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    gap: 5px;
    margin-bottom: 15px;
}
.vetrina.item .bottom-infor-features .description .property-information .value img {
    height: 35px;
    width: auto;
}

.vetrina.item .bottom-infor-features .riga-bottom span {
    font-size: 16px;
    font-weight: 500;
    margin: 15px 0;
}

.vetrina.item .bottom-infor-features .riga-bottom .bottom {
    color: var(--agim-primary-color);
}

.vetrina.item .bottom-infor-features .riga-bottom .bottom-dettagli a {
    color: #FFFFFF;
    border-radius: 18px;
    border: 1px solid var(--agim-primary-color);
    background-color: var(--agim-primary-color);
    padding: 4px 19px;
    font-family: var(--agim-primary-font);
    text-transform: uppercase;
    font-size: 13px;
    font-weight: 500;
}
.vetrina.item .bottom-infor-features .riga-bottom .bottom-dettagli a:hover {
    color: var(--agim-primary-color);
    background: #ffffff;
    border: 1px solid var(--agim-primary-color);
}
#elenco-immo {
    gap: 4%;
}

#elenco-immo.col2 .item {
    width: 48%;
    margin: 10px 0;
    align-items: center;
}
#elenco-immo.con-griglia{
        transition: all 0.5s ease-out;
        display: flex;
        width: 100%;
        justify-content: space-between;
}


#elenco-immo .item {
    position: relative;
}

#elenco-immo .item .view-gallery {
    position: relative;
    width: 100%;
    display: block;
}

#elenco-immo .item .top-foto {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    display: flex;
    justify-content: space-between;
    width: 100%;
    padding: 15px;
    z-index: 10;
}

#elenco-immo .item .top-foto .left {
    display: flex;
    justify-content: flex-start;
    width: 50%;
}

#elenco-immo .item .top-foto .right {
    display: flex;
    justify-content: flex-end;
    width: 50%;
}

#elenco-immo .item .top-foto .left .btn-contratto-vetrina {
    color: var(--agim-primary-color);
    font-family: var(--agim-primary-font);
    font-size: 12px;
    background-color: #FFFFFF;
    border: 1px solid #FFFFFF;
    border-radius: 18px;
    padding: 4px 10px 3px 10px;
    text-transform: uppercase;
    position: relative;
    top: 0;
}

#elenco-immo .item .bottom-infor-features {
    width: 100% !important;
    padding: 0 15px;
    border: 1px solid #00294B20;
    border-top: none;
    margin-top: -5px
}

#elenco-immo .item .bottom-infor-features .info-immobile,
#elenco-immo .item .bottom-infor-features .description,
#elenco-immo .item .bottom-infor-features .riga-bottom {
    display: flex;
    justify-content: space-between;
    width: 100%;
}

#elenco-immo .item .bottom-infor-features .item-address {
    display: flex;
    justify-content: flex-start;
    width: 100%;
    margin: 10px 0;
}

#elenco-immo .item .bottom-infor-features .item-address span {
    font-family: var(--agim-primary-font);
    font-size: 14px;
    color: var(--agim-primary-color);
    font-weight: 400;
}

#elenco-immo .item .bottom-infor-features .info-immobile span {
    font-family: var(--agim-primary-font);
    font-size: 18px;
    color: var(--agim-primary-color);
    font-weight: 700;
    margin-top: 10px;
}

#elenco-immo .item .bottom-infor-features .description .property-information span i {
    font-size: 22px;
    color: var(--agim-secondary-color);
    height: 32px;
    margin-top: 9px;
}

#elenco-immo .item .bottom-infor-features .description .property-information .value {
    font-family: var(--agim-primary-font);
    font-size: 14px;
    color: var(--agim-primary-color);
    font-weight: 400;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    gap: 5px;
    margin-bottom: 15px;
}
#elenco-immo .item .bottom-infor-features .description .property-information .value img {
    height: 35px;
    width: auto;
}


#elenco-immo .item .bottom-infor-features .riga-bottom span {
    font-size: 16px;
    font-weight: 500;
    margin: 20px 0;
    font-family: var(--agim-primary-font);
}

#elenco-immo .item .bottom-infor-features .riga-bottom .bottom {
    color: var(--agim-primary-color);
}

#elenco-immo .item .bottom-infor-features .riga-bottom .bottom-dettagli a,
.sugg.item .bottom-infor-features .riga-bottom .bottom-dettagli a {
    color: #FFFFFF;
    border-radius: 18px;
    border: 1px solid var(--agim-primary-color);
    background-color: var(--agim-primary-color);
    padding: 4px 19px;
    font-family: var(--agim-primary-font);
    text-transform: uppercase;
    font-size: 13px;
    font-weight: 500;
}
#elenco-immo .item .bottom-infor-features .riga-bottom .bottom-dettagli a:hover,
.sugg.item .bottom-infor-features .riga-bottom .bottom-dettagli a:hover {
    color: var(--agim-primary-color);
background: #ffffff;
border: 1px solid var(--agim-primary-color);
}
#elenco-immo.col2 .item .foto-lazy{
    border: none;
    border-radius: 0;
    box-shadow: none;
    height: 300px;
    width: 100%;
    object-fit: cover;
}

/* ultimi immobili */
.ultimi-immobili{
    position: relative;
    display: flex;
    width: 100%;
    justify-content: center;
    padding: 10px 0px;
}

.ultimi-immobili .foto-lazy{
    border: none;
    border-radius: 0;
    box-shadow: none;
    height: 300px;
    width: 100%;
    object-fit: cover;
}

.ultimi-immobili .bottom-foto{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 30px 15px 15px 15px;
    margin-bottom: 10px;
    z-index: 1;
    background: linear-gradient(
        to top,
        rgba(0, 0, 0, 0.7),  /* nero semi-trasparente in basso */
        rgba(0, 0, 0, 0)     /* trasparente in alto */
      );
}
.ultimi-immobili .price{
    font-size: 16px;
    font-family: var(--agim-primary-font);
    color: #fff;
    left: 15px;
    font-weight: 700;
}
.ultimi-immobili .bottom{
    font-size: 16px;
    font-family: var(--agim-primary-font);
    color: #fff;
    left: 15px;
    font-weight: 700;
}



.grid-view.card-deck {
    padding-left: 0;
    padding-right: 0;
}

.grid-view {
    margin-right: -15px;
    margin-left: -15px;
}



@media (min-width: 992px) {
    .grid-view-4-cols:not(.list-view) .item-listing-wrap {
        width: calc(100% / 4);
        -ms-flex-preferred-size: calc(100% / 4);
        flex-basis: calc(100% / 4);
    }
    .sugg.item {
        display: flex;
        gap: 15px;
        justify-content: space-between;
        width: 33% !important;
        flex-direction: column;
        position: relative;
    }
}

.grid-view .item-listing-wrap {
    width: 50%;
    flex-basis: 50%;
    -ms-flex-preferred-size: auto !important;
    padding-left: 15px;
    padding-right: 15px;
    margin-bottom: 30px;
}

.listing-view .card {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
}

@media (min-width: 576px) {
    .card-deck .card {
        -webkit-box-flex: 0;
        -ms-flex: none;
        flex: none;
        flex-basis: auto;
    }
}

.card-deck .card {
    margin-left: 0;
    margin-right: 0;
    background-color: transparent;
    border: none;
}

.grid-view .item-wrap {
    border-radius: 0;
}

.grid-view .d-flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.h-100 {
    height: 100%;
}

.item-tools {
    bottom: 20px;
    right: 20px;
    position: absolute;
    z-index: 2;
    list-style: none;
}


.slick-prev::before {
    content: "";
    font-family: "houzez-iconfont";
}

.slick-prev::before, .slick-next::before {
    display: inline-block;
    font-size: 16px;
}

.grid-view .item-wrap.item-wrap-no-frame .hover-effect {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.hover-effect, .hover-effect-flat {
    cursor: pointer;
    overflow: hidden;
}


.slick-slide img {
    margin: 0 auto;
}


.row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
}

.property-overview-wrap-v2 .property-overview-data {
    grid-row-gap: 20px;
    margin-top: 15px;
    display: -ms-grid !important;
    display: grid !important;
}



.list-2-cols {
    -webkit-columns: 2;
    -moz-columns: 2;
    columns: 2;
}

.block-content-wrap .detail-wrap li {
    border-color: rgba(0, 0, 0, 0.05);
}

.block-content-wrap .list-3-cols li, .block-content-wrap .list-2-cols li, .block-content-wrap .list-1-cols li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    border-bottom: 1px solid;
    border-bottom-color: currentcolor;
    border-color: #dce0e0;
    padding: 10px 0;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    -moz-column-break-inside: avoid;
    break-inside: avoid;
}

.block-content-wrap .detail-wrap li strong {
    white-space: nowrap;
}

.block-content-wrap .detail-wrap li span {
    max-width: 150px;
    text-align: right;
}


/*page immobile preso da albani */

/* PAGE IMMOBILE CONTENUTO */
.contenuto-pageimmo {
    display: flex;
    justify-content: space-between;
    width: 100%;
    padding: 0 5%;
    gap: 0;
    margin: 0;
}

/*contenuto di sinistra */
.contenuto-pageimmo .dettagli-immobile {
    width: 75%;
}

/*contenuto di destra */
.contenuto-pageimmo .form-contatto {
    width: 24%;
    border: 1px solid #00294B20;
    height: fit-content;
    padding: 30px 15px;
    border-radius: 18px;
}

/* Sidebar contatto fissa allo scroll (solo desktop) */
@media (min-width: 992px) {
    .contenuto-pageimmo .form-contatto {
        position: sticky;
        top: 110px; /* distanza dal bordo alto, adegua se serve */
        align-self: flex-start;
        z-index: 10;
    }
}

.contenuto-pageimmo .form-contatto .agente-su-form {
    width: 100%;
    display: flex;
    padding: 4% 4% 0 4%;
    margin-bottom: 10px;
    margin-top: 10px;
}

.contenuto-pageimmo .form-contatto .agente-su-form .foto-agente {
    height: 60px;
    margin: 0 15px 0 0;
}

.contenuto-pageimmo .form-contatto .agente-su-form .foto-agente img {
    border-radius: 50px;

}

.contenuto-pageimmo .form-contatto .agente-su-form .agente {
    display: flex;
    flex-direction: column;
    font-family: 'Barlow Semi Condensed', sans-serif;
    text-align: left;
    font-size: 14px;
    line-height: 17px;
    letter-spacing: 0px;
    color: #5A5A5A;
    opacity: 1;
    height: 60px;
    justify-content: space-between;
}

.contenuto-pageimmo .form-contatto .agente-su-form .agente b {
    font-size: 16px;
    line-height: 19px;
    letter-spacing: 0px;
    color: #5A5A5A;
    text-transform: uppercase;

}

.contenuto-pageimmo .form-contatto .agente-su-form .agente a {
    color: #C0971B;
    margin-top: 7px;
}



.contenuto-pageimmo  .prezzo {
    font-family: 'Cormorant Infant', serif;
    font-size: 30px;
    line-height: 32px;
    font-weight: 600;
    text-align: left;
    color: #5A5A5A;
    opacity: 1;
}

.contenuto-pageimmo  .banner-dettaglio {
    text-align: right;
}
.riga-flex{
    display: flex;
    width: 100%;
    flex-wrap: nowrap;
    flex-direction: row;
    justify-content: space-between;
}

.riga-caratteristiche-principali-immobile{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    border: 1px solid #00294B20;
    border-radius: 18px;
    padding: 30px 15px;
}
.riga-caratteristiche-principali-immobile .blocco-caratt{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    gap: 5px;
}

.riga-caratteristiche-principali-immobile .blocco-caratt .title-icon{
    font-family: var(--agim-primary-font);
    font-size: 13px;
    line-height: 20px;
    color: var(--agim-primary-color);
    text-transform: uppercase;
}

.riga-caratteristiche-principali-immobile .blocco-caratt .caratt-label-icon{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 5px;
}
.riga-caratteristiche-principali-immobile .blocco-caratt .caratt-label-icon i {
    font-size: 22px;
    color: var(--agim-secondary-color);
}
.riga-caratteristiche-principali-immobile .blocco-caratt .caratt-label-icon span {
    font-size: 12px;
    color: var(--agim-primary-color);
}



.riga-titolo-prezzo,
.riga-address-rife {
    display: flex;
    justify-content: space-between;
    width: 100%;
    padding: 0 5%;
    margin-bottom: 10px;
}
.riga-address-rife span{
    width: 100%;
    font-family: var(--agim-primary-font);
    font-size: 20px;
    line-height: 22px;
    letter-spacing: 0px;
    font-weight: 400;
    color: var(--agim-primary-color);
}

.riga-titolo-prezzo .titolo-immo {
    width: 100%;
    text-align: left;
    font-family: var(--agim-title-font);
    font-size: 38px;
    line-height: 40px;
    font-weight: 400;
    letter-spacing: 0px;
    color: var(--agim-primary-color);
}

.riga-titolo-prezzo .prezzo {
    width: 45%;
    text-align: right;
    font-family: var(--agim-title-font);
    font-size: 35px;
    line-height: 40px;
    font-weight: 700;
    color: var(--agim-primary-color);
}

.titolo-immo {
    width: 100%;
    font-family: var(--agim-title-font);
    font-size: 20px;
    line-height: 40px;
    font-weight: 700;
    color: var(--agim-primary-color);
}

.contenuto-pageimmo .indirizzo-riga {
    width: 100%;
    display: flex;
    justify-content: space-between;
    font-family: 'Barlow Semi Condensed', sans-serif;
    font-size: 16px;
    line-height: 20px;
    font-weight: 400;
    opacity: 1;
    margin-top: 10px;
    margin-bottom: -10px;
    text-align: left;
    letter-spacing: 0;
    color: #404040;
}

.contenuto-pageimmo .descrizione-immobile {
    width: 100%;
    margin-bottom: 23px;
}

.contenuto-pageimmo .descrizione-immobile .descrizione-agim {
    width: 100%;
    font-family: var(--agim-primary-font) !important;
    font-size: 14px;
    line-height: 22px;
    font-weight: 300;
    color: var(--agim-primary-color);

}

.titolo-caratteristiche {
    width: 100%;
    font-family: var(--agim-title-font);
    font-size: 20px;
    line-height: 40px;
    font-weight: 700;
    margin: 20px 0px 15px 0px;
    color: var(--agim-primary-color);
    /* margin-top: 20px; */
}


.contenuto-pageimmo .mappa {
    width: 100%;
}


.contenuto-pageimmo .agente-incaricato {
    display: flex;
    width: 100%;
    flex-direction: column;
    margin: 30px 0 40px 0;
}


.count-immobili span {
    font-family: "Barlow Semi Condensed", sans-serif;
    font-size: 16px;
    line-height: 19px;
    font-weight: 300;
    color: #5A5A5A;
    letter-spacing: 0;
}

.contenuto-pageimmo .agente-incaricato .box-agente {
    display: flex;
    width: 100%;
    border: 1px solid #BFBFBF60;
    flex-direction: row;
    justify-content: space-between;
    padding: 2%;
    align-items: center;
}

.contenuto-pageimmo .agente-incaricato .box-agente .foto-agente {
    width: 25%;
    height: 60px;
}

.contenuto-pageimmo .agente-incaricato .box-agente .agente {
    display: flex;
    flex-direction: column;
    color: #5A5A5A;
}

.foto-agente-incaricato {
    display: flex;
    justify-content: space-between;
}

.foto-alpha {
    height: 80px;
    width: 80px;
}

.nome-alpha {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.nome-alpha span {
    font-family: "Barlow Semi Condensed", sans-serif;
    font-size: 16px;
    line-height: 19px;
    font-weight: 300;
    color: #5a5a5a;
}

.nome-alpha span b {
    font-weight: 600;
    text-transform: uppercase;
}

.nome-alpha a {
    font-family: "Barlow Semi Condensed", sans-serif;
    font-size: 16px;
    line-height: 19px;
    font-weight: 300;
    color: #C0971B;
    margin-top: 5px;
}

.scrivi-ad-agente {
    font-family: "Barlow Semi Condensed", sans-serif;
    font-size: 14px;
    line-height: 17px;
    font-weight: 600;
    color: #5A5A5A;
    text-transform: uppercase;
    border: 1px solid #C0971B;
    background-color: #fff;
    padding: 10px 15px;
    margin-top: 10px;
}

.scrivi-ad-agente:hover {
    color: #C0971B;
    border-color: #C0971B;
    background-color: #FFFFFF;
}

.contatto-mobile {
    font-family: "Barlow Semi Condensed", sans-serif;
    font-size: 14px;
    line-height: 17px;
    font-weight: 600;
    color: #FFFFFF;
    text-transform: uppercase;
    border: 1px solid #C0971B;
    background-color: #C0971B;
    padding: 10px 15px;
    margin-top: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
}

.contatto-mobile i {
    color: #FFFFFF;
    transition: color 0.3s ease;
}

.contatto-mobile:hover {
    color: #C0971B;
    border-color: #C0971B;
    background-color: #FFFFFF;
}

.contatto-mobile:hover i {
    color: #C0971B;
}

.bottoni-contatto {
    display: flex;
    justify-content: end;
    gap: 4%;
    margin-right: 0;
    align-content: flex-end;
}

.box-caratteristiche {
    border: 1px solid #00294B20;
    border-radius: 18px;
    background-color: #00294B20;
    width: 100%;

}
.tabs__nav {
    margin: 40px 0 0 0;
    padding: 0;
    border-bottom: 1px solid var(--agim-primary-color);
    display: flex;
    justify-content: flex-start;
    flex-direction: row;
}
.tabs__nav .tab{
    display: flex;
    width: 200px;
    text-align: center;
    padding: 5px 20px;
    font-family: var(--agim-primary-font);
    color: var(--agim-secondary-color);
    border: 1px solid transparent;
    border-radius: 0;
    font-family: var(--agim-title-font);
    font-size: 18px;
    text-transform: uppercase;
    font-weight: 700;
    justify-content: center;
}

.tabs__nav .tab[aria-selected="true"] {
    border: 1px solid var(--agim-primary-color);
    background-color: var(--agim-primary-color);
    color: #FFFFFF;
}

.tabs__nav .tab[aria-selected="false"]:hover {
    background-color: var(--agim-secondary-color);
    color: #FFFFFF;
}

.scheda-dettagli-immobile.suggerimenti{
    display: flex;
    gap: 15px;
    justify-content: space-between;
    width: 100%;
    flex-direction: row;
    margin: 15px 0 30px 0;
}
.sugg.item{
    display: flex;
    gap: 15px;
    justify-content: space-between;
    width: 100%;
    flex-direction: column;
    position: relative;
}
.sugg.item .view-gallery .foto-lazy{
    border-radius: 18px 18px 0 0;
    box-shadow: none;
    height: 300px;
    width: 100%;
    object-fit: cover;
}
.sugg.item .top-foto .bg-bookmark .tfre-property-favorite .add i, .sugg.item .top-foto .bg-bookmark .tfre-property-favorite .remove i {
  top: 0px !important;
}
.view-gallery {
    width: 100%;
}
.sugg.item .top-foto {
    display: flex;
    justify-content: space-between;
    position: absolute;
    top: 15px;
    flex-direction: row;
    flex-wrap: nowrap;
    padding: 0 15px;
    width: 100%;

}


.sugg.item .top-foto .left .btn-contratto-vetrina {
    color: var(--agim-primary-color);
    font-size: 10px;
    background-color: #FFFFFF;
    border: 1px solid #FFFFFF;
    border-radius: 18px;
    padding: 4px 10px;
    text-transform: uppercase;
    left: 15px;
}


.sugg.item .bottom-infor-features {
    width: 100% !important;
    padding: 0 15px;
    border-top: none;
    border: 1px solid #00294B20;
    border-radius: 0 0 18px 18px;
    margin-top: -15px;
}
.sugg.item .bottom-infor-features .info-immobile{
    display: flex;
    justify-content: space-between;
}
.sugg.item .bottom-infor-features .info-immobile span {
    font-family: var(--agim-primary-font);
    font-size: 18px;
    color: var(--agim-primary-color);
    font-weight: 700;
    margin-top: 10px;
}
.sugg.item .bottom-infor-features .item-address {
    display: flex;
    justify-content: flex-start;
    width: 100%;
    margin: 10px 0;
}

.sugg.item .bottom-infor-features .item-address span {
    font-family: var(--agim-primary-font);
    font-size: 14px;
    color: var(--agim-primary-color);
    font-weight: 400;
}
.sugg.item .bottom-infor-features .description{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-bottom: 15px;
}
.sugg.item .bottom-infor-features .description .property-information span i {
    font-size: 22px;
    color: var(--agim-secondary-color);
    height: 32px;
    margin-top: 9px;
}

.sugg.item .bottom-infor-features .description .property-information .value {
    font-family: var(--agim-primary-font);
    font-size: 14px;
    color: var(--agim-primary-color);
    font-weight: 400;
    margin-bottom: 15px;
}
.sugg.item .bottom-infor-features .description .property-information .value img{
    height: 35px;
    width: auto;
}
.sugg.item .bottom-infor-features .riga-bottom {
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.sugg.item .bottom-infor-features .riga-bottom span {
    font-size: 16px;
    font-weight: 500;
    margin: 15px 0;
}

.sugg.item .bottom-infor-features .riga-bottom .bottom {
    color: var(--agim-primary-color);
}




.riferimento {
    font-family: "Barlow Semi Condensed", sans-serif;
    font-size: 16px;
    line-height: 20px;
    font-weight: 300;
    color: #404040;
    margin: 25px 0 10px 9px;
}

.riferimento b {
    font-weight: 600;
    color: #608064;
}

/* per banner icone stampa e social */
.dettaglio_share_property a {
    color: #608064 !important;
    background-color: #fff;
    height: 13px;
    padding: 15px;
    border: 1px solid #608064;
    border-radius: 3px;
}

.dettaglio_share_property a:hover {
    color: #608064;
    background-color: #608064;
    border-color: #608064;
}

/*page immobile immobili simili */
#immobili-simili {
    display: flex;
    justify-content: flex-start;
    gap: 2%;
}

#immobili-simili .item .foto {
    width: 100%;
    position: relative;
    max-width: 100%;
    min-height: 200px;
    aspect-ratio: 16 / 9;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    overflow: hidden;
    flex-shrink: 0;
}

.immo-vicinanze {
    width: 100%;
    margin: 0 0 2% 0;
    padding: 0 10%;
}

.titolo-immo-simili {
    width: 100%;
    text-align: left;
    font-family: 'Cormorant Infant', serif;
    font-size: 30px;
    line-height: 32px;
    font-weight: 600;
    color: #5A5A5A;
    opacity: 1;
}


/* planimetrie */
.slider-property-planimetry {
    display: flex;
    flex-wrap: nowrap;
    gap: 10px;
}

.slider-property-planimetry .slide {
    flex: 0 0 auto;
}

.didascalia-plan-container {
    justify-content: center;
    display: flex;
    margin-top: -22px;
}

.didascalia-plan {
    font-family: "Barlow Semi Condensed", sans-serif;
    font-size: 12px;
    line-height: 14px;
    font-weight: 400;
    color: #5A5A5A;
    text-align: center;
    margin-top: 5px;
}


.didascalia-menu-imm {
    font-family: "Barlow Semi Condensed", sans-serif;
    font-size: 12px;
    line-height: 14px;
    font-weight: 500;
    color: #5A5A5A;
    text-align: center;
    margin-top: 5px;
    display: flex;
    justify-content: center;
}


.video-box #video-slide-tab iframe {
    border-radius: 0;
    min-height: 395px;
    max-height: 395px;
    margin-bottom: 30px;
}


.dettagli-immobile h3 {
    font-family: 'Manrope', serif;
    font-size: 20px;
    line-height: 50px;
    font-weight: 400;
    text-align: left;
    opacity: 1;
    margin-bottom: 5px;
    text-transform: none;
    letter-spacing: -0.3px;
    color: #608064;
}

#content2 {
    padding: 0 !important;
}

.elemento-lista-caratteristica {
    display: flex;
    justify-content: space-between;
    width: 50%;
    margin-bottom: 10px;
    border-bottom: 1px solid #BFBFBF60;
}

.elemento-lista-caratteristica-immobile {
    justify-content: space-between;
    display: flex;
    font-family: "Barlow Semi Condensed", sans-serif;
    font-size: 16px;
    line-height: 28px;
    font-weight: 300;
    color: #404040;
}

.caratteristica-immobile-quadro {
    justify-content: space-between;
    display: flex;
    font-family: "Barlow Semi Condensed", sans-serif;
    font-size: 16px;
    line-height: 28px;
    font-weight: 300;
    color: #404040;
    border-bottom: 1px solid #EAE6DF;
    margin-bottom: 16px;
    padding-bottom: 16px;
}

.lista-caratteristiche {
    display: flex;
    width: 100%;
    gap: 1%;
}

.elemento-lista-caratteristica .tit-caratt {
    font-family: "Barlow Semi Condensed", sans-serif;
    font-size: 16px;
    line-height: 28px;
    font-weight: 300;
    color: #969696;
}

.elemento-lista-caratteristica .info-caratt {
    font-family: "Barlow Semi Condensed", sans-serif;
    font-size: 16px;
    line-height: 19px;
    font-weight: 600;
    color: #5A5A5A;
    margin-top: 5px;
}

.elemento-lista-caratteristica-2 {
    display: flex;
    justify-content: space-between;
    width: 50% !important;
    margin-bottom: 10px;
    border-bottom: 1px solid #BFBFBF60;
}

.elemento-lista-caratteristica-2 .tit-caratt {
    font-family: "Barlow Semi Condensed", sans-serif;
    font-size: 16px;
    line-height: 28px;
    font-weight: 300;
    color: #969696;
}

.elemento-lista-caratteristica-2 .info-caratt {
    font-family: "Barlow Semi Condensed", sans-serif;
    font-size: 16px;
    line-height: 19px;
    font-weight: 600;
    color: #5A5A5A;
    margin-top: 5px;
}

.lista-caratteristiche-3 {
    display: flex;
    width: 100%;
    gap: 1%;
}

.elemento-lista-caratteristica-3 {
    display: flex;
    justify-content: space-between;
    min-width: 50% !important;
    margin-bottom: 10px;
    border-bottom: 1px solid #BFBFBF60;
}

.elemento-lista-caratteristica-3 .tit-caratt {
    font-family: "Barlow Semi Condensed", sans-serif;
    font-size: 16px;
    line-height: 28px;
    font-weight: 300;
    color: #969696;
}

.elemento-lista-caratteristica-3 .info-caratt {
    font-family: "Barlow Semi Condensed", sans-serif;
    font-size: 16px;
    line-height: 19px;
    font-weight: 600;
    color: #5A5A5A;
    margin-top: 5px;
}

.caratt-strong {
    font-family: "Barlow Semi Condensed", sans-serif;
    font-size: 16px;
    line-height: 19px;
    font-weight: 700;
    color: #404040;
    margin-top: 5px;
}

.caratt-li {
    border-bottom: 1px solid #E3E3E3;
    margin-bottom: 10px;
}

/* presa da pandora, cambiare poi*/
.titolo-sezione-immo {
    font-size: 30px;
    line-height: 53px;
    color: #333333;
    font-family: "Cormorant Garamond", serif;
    margin-top: 13px;
}

.list-2-cols {
    columns: 2;
    column-gap: 40px;
}

.list-unstyled {
    padding-left: 0;
    list-style: none;
}

ul {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}


[data-tooltip],
div:not(.cky-revisit-bottom-left) .tooltip {
    display: inline;
    position: relative;
    cursor: pointer;
    -webkit-transform: translateY(-12px);
    -moz-transform: translateY(-12px);
    transform: translateY(-12px);
    margin-top: 0;
}

div:not(.cky-revisit-bottom-left) [data-tooltip]:before,
div:not(.cky-revisit-bottom-left) [data-tooltip]:after,
div:not(.cky-revisit-bottom-left) .tooltip:before,
div:not(.cky-revisit-bottom-left) .tooltip:after {
    position: absolute;
    visibility: visible;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
    opacity: 1;
    pointer-events: none;
    -webkit-transform: translateY(-12px);
    -moz-transform: translateY(-12px);
    transform: translateY(-12px)
}

div:not(.cky-revisit-bottom-left) .tooltip:before,
div:not(.cky-revisit-bottom-left) [data-tooltip]:before {
    z-index: 1001;
    border: 6px solid transparent;
    background: transparent;
    content: ""
}

div:not(.cky-revisit-bottom-left) .tooltip:after {
    z-index: 1000;
    padding: 6px 12px;
    width: 130px;
    text-align: center;
    background-color: #fff;
    color: #5A5A5A;
    border: 1px solid #1E465F;
    content: attr(data-tooltip);
    line-height: 28px;
    font-family: "Barlow Semi Condensed", sans-serif;
    font-size: 16px;
    transform: translate(-18px, -18px);
}


div:not(.cky-revisit-bottom-left) [data-tooltip]:before,
div:not(.cky-revisit-bottom-left) [data-tooltip]:after,
.tooltip:before,
.tooltip:after,
.tooltip-top:before,
.tooltip-top:after {
    bottom: 100%
}

.l-5:before,
.l-5:after {
    left: 5%
}

.l-15:before,
.l-15:after {
    left: 15%
}

.l-25:before,
.l-25:after {
    left: 25%
}

.l-35:before,
.l-35:after {
    left: 35%
}

.l-45:before,
.l-45:after {
    left: 45%
}

.l-55:before,
.l-55:after {
    left: 55%
}

.l-65:before,
.l-65:after {
    left: 65%
}

.l-75:before,
.l-75:after {
    left: 75%
}

.l-85:before,
.l-85:after {
    left: 85%
}

.l-95:before,
.l-95:after {
    left: 95%
}

.l-none:before,
.l-none:after {
    display: none
}

[data-tooltip]:before,
.tooltip:before,
.tooltip-top:before {
    margin-left: -6px;
    margin-bottom: -12px;
    border-top-color: #000;
    border-top-color: rgba(51, 51, 51, 0.9)
}

[data-tooltip]:after,
.tooltip:after,
.tooltip-top:after {
    margin-left: -50px
}


/*ricerca interna*/
.custom-select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-right: 25px;
    background: none;
}

.custom-select-wrapper {
    position: relative;
    display: inline-block;
    width: 100%;
}

.custom-arrow {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    font-size: 12px;
    color: #333;
}


header .elementor-sticky.fixed .header-round, body:not(.home) .elementor-sticky .header-round {
    border: none !important;
}

/*  Stile per header */

.logo img {
    top: -3px;
    height: 100%;
}

.ricerca-round .elementor-motion-effects-container {
    border-radius: 8px !important;
}

/* Stile per il widget immobile */


.footer-top-wrap {
    padding: 80px 0 0px !important;
}

.save_property .add {
    display: block;
}

.save_property .remove {
    display: none;
}

.save_property.saved .remove {
    display: block;

}

.save_property.saved .remove i {
    color: var(--agim-primary-color);
}

.save_property.saved .add {
    display: none;
}


.houzez-listing-carousel .item.slick-slide img {
    height: 255px;
    object-fit: cover;
    object-position: center;
}

.item-amenities {
    justify-content: space-between;
}



.switch-container {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 5px;
}

.switch-label {
    margin: 0 10px;
    font-weight: bold;
    color: #fff;
    opacity: 0.7;
    transition: opacity 0.2s;
}

body:not(.home) .switch-label {
    color: #54595F
}

.switch-label.active {
    opacity: 1;
}

.switch {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 28px;
}

.switch input {
    display: none;
}

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #bfc8b2;
    transition: .4s;
    border-radius: 34px;
}

.slider:before {
    position: absolute;
    content: "";
    height: 22px;
    width: 22px;
    left: 3px;
    bottom: 3px;
    background-color: white;
    transition: .4s;
    border-radius: 50%;
}

input:checked + .slider {
    background-color: #8da57a;
}

input:checked + .slider:before {
    transform: translateX(22px);
}

#elencoImmobili .paged ul {
    display: flex;
}

#elencoImmobili .paged ul li,
.blog-paged ul li {
    background: #fff;
    color: var(--agim-primary-color);
    border: 1px solid var(--agim-primary-color);
    font-family: var(--agim-primary-font);
    outline: 0px;
    padding: 2px 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    line-height: 18px;
    border-radius: 3px;
    margin: 10px;
    cursor: pointer;
    width: 34px;
    height: 34px;
    text-align: center;
}

#elencoImmobili .paged ul li a,
.blog-paged ul li a {
    color: var(--agim-primary-color);
    font-weight: 400;
}

#elencoImmobili .paged ul li:hover,
.blog-paged ul li:hover,
#elencoImmobili .paged ul li.current,
.blog-paged ul li.current {
    background-color: var(--agim-primary-color);
    color: #fff !important;
    border: 1px solid var(--agim-primary-color);
    margin: 30px 10px;
}

#elencoImmobili .paged ul li:hover a,
.blog-paged ul li:hover a,
#elencoImmobili .paged ul li.current a,
.blog-paged ul li.current a {
    color: #fff !important;
}

.post-footer-wrap {
    border: 0 !important;
}

.btn-primary, .fc-button-primary, .woocommerce nav.woocommerce-pagination ul li a:focus, .woocommerce nav.woocommerce-pagination ul li a:hover, .woocommerce nav.woocommerce-pagination ul li span.current {
    color: #fff;
    background-color: #9caf88 !important;
    border-color: #9caf88 !important;
}

a, a:hover, a:active, a:focus, .primary-text, .btn-clear, .btn-apply, .btn-primary-outlined, .btn-primary-outlined:before, .item-title a:hover, .sort-by .bootstrap-select .bs-placeholder, .sort-by .bootstrap-select > .btn, .sort-by .bootstrap-select > .btn:active, .page-link, .page-link:hover, .accordion-title:before, .blog-post-content-widget h4 a:hover, .agent-list-wrap .agent-list-content h2 a:hover, .agent-list-wrap .agent-list-contact li a:hover, .agent-contacts-wrap li a:hover, .agent-nav-wrap .nav-pills .nav-link, .dashboard-side-menu-wrap .side-menu-dropdown a.active, .menu-edit-property li a.active, .menu-edit-property li a:hover, .dashboard-statistic-block h3 .fa, .statistic-referrals-list li a:hover, .chart-nav .nav-pills .nav-link.active, .board-message-icon-wrap.active, .post-title-wrap h2 a:hover, .listing-switch-view .switch-btn.active, .item-wrap-v6 .item-price-wrap, .listing-v6 .list-view .item-body .item-price-wrap, .woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span, .woocommerce-MyAccount-navigation ul li a:hover, .property-schedule-tour-form-wrap .control input:checked ~ .control__indicator, .property-schedule-tour-form-wrap .control:hover, .property-walkscore-wrap-v2 .score-details .houzez-icon, .login-register .btn-icon-login-register + .dropdown-menu a, .activitiy-item-close-button a:hover, .property-section-wrap li a:hover, .agent-detail-page-v2 .agent-nav-wrap .nav-link.active, .property-lightbox-v2-sections-navigation .slick-prev, .property-lightbox-v2-sections-navigation .slick-next, .property-lightbox-v2-sections-navigation .slick-slide.current-section, .property-lightbox-v2-sections-navigation .nav-link.active, .agent-detail-page-v2 .listing-tabs .nav-link.active {
    color: #9caf88;
}

.post-excerpt-wrap p,
.widget_archive li a {
    font-weight: 400 !important;
    padding: 0;
    cursor: pointer;
    color: #222222;
    font-family: var(--agim-primary-font);
    text-transform: none;
    border: 0 !important;
}

#elencoImmobili #header-properties {
    padding: 0px 10px 0px 10px; 
    box-sizing: border-box;
    margin: 0;
}
#elencoImmobili #header-properties .left .immobili-trovati{
    color: var(--agim-primary-color);
    font-family: var(--agim-primary-font);
}


#header-properties .property-listing-header {
    display: flex;
    width: 50%;
    max-width: 310px;
    font-family: var(--agim-primary-font);
}

#header-properties .property-listing-header select {
    text-transform: uppercase;
    font-weight: 500;
    border: 0;
    font-family: var(--agim-primary-font);
    color: var(--agim-primary-color);
    background: none;
    outline: 0;
    font-size: 14px;
    align-items: flex-start;
    height: auto;
}

#header-properties .property-listing-header select option {
    padding: 5px 10px;
    border: 0;
    font-family: var(--agim-primary-font);
    color: #333333;
    background: none;
    outline: 0;
    font-size: 13px;
}

/* Stile per il widget ricerca immobili */
body:not(.home) .search-area {
    background: #fff;
    border: 1px solid #00294B20;
    border-radius: 3px;
    padding: 15px;
}

#ricerca-form .row {
    row-gap: 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
}

#ricerca-form .row.back {
    row-gap: 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
    background-color: #ffffffd9;
    opacity: 1;
    padding: 10px 10px;
}
@media (max-width: 900px) {
    #ricerca-form .row.back {
        row-gap: 10px;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        flex-direction: column;
        align-items: center;
        width: auto !important;
        background-color: #ffffffd9;
        opacity: 1;
        padding: 2% 6% !important;
    }
    #ricerca-form .row.back .selectpicker.search-fields {
        font-family: var(--agim-primary-font);
        color: var(--agim-primary-color) !important;
        border: none !important;
        border-radius: 0 !important;
        background: transparent !important;
        height: 41px;
        width: 290px !important;
        transition: none !important;
        border-bottom: 1px solid var(--agim-primary-color) !important;
        padding-bottom: 7px;
        margin-bottom: 12px;
        font-size: 13px;
        text-transform: uppercase;
        font-weight: 500;
    }
    .search-button.btn-md.btn-color {
        font-family: var(--agim-primary-font);
        font-size: 13px;
        font-weight: 500;
        letter-spacing: 1px;
        text-transform: uppercase;
        background: var(--agim-primary-color);
        color: #fff;
        border: 1px solid var(--agim-primary-color);
        border-radius: 50px;
        height: 45px;
        width: 290px !important;
        margin-top: 6px;
    }
    #show-advanced-search {
        border-radius: 50px;
        font-family: var(--agim-primary-font);
        font-weight: 500;
        transition: background 0.2s, color 0.2s;
        height: 36px;
        display: flex !important;
        align-items: center;
        justify-content: center;
        padding: 10px 40px;
        text-transform: uppercase;
        font-size: 13px;
        letter-spacing: 1px;
        width: 290px !important;
        text-align: center;
    }
}


/* stessa classe per entrambe le ricerche (riga vendita/affitto) */
#ricerca-form-elenco .row.pre,
#ricerca-form .row.pre {
    row-gap: 10px;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    width: 100%;
    margin-bottom: 18px;
}


#ricerca-form .form-group {
    margin-bottom: 0;
}

#ricerca-form-elenco .form-group {
    width: 100%;
    margin: 5px 0;
}

.search-button.btn-md.btn-color {
    font-family: var(--agim-primary-font);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: uppercase;
    background: var(--agim-primary-color);
    color: #fff;
    border: 1px solid var(--agim-primary-color);
    border-radius: 50px;
    height: 45px;
    width: 194px;
    margin-top: 6px;
}

.search-button.btn-md.btn-color.elenco {
    width: 100% !important;
    font-family: var(--agim-primary-font);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: uppercase;
    background: var(--agim-primary-color);
    color: #fff;
    border: 1px solid var(--agim-primary-color);
    border-radius: 50px;
    height: 45px;
    margin-top: 6px;
}

.search-button.btn-md.btn-color:hover {
    background: #ffffff;
    color: var(--agim-primary-color);
    border: 1px solid var(--agim-primary-color);
}

.page-title.flex-grow-1 h1 {
    font-family: var(--agim-title-font);
    font-size: 38px;
    line-height: 40px;
    font-size: 38px;
    letter-spacing: 0px;
    color: var(--agim-primary-color);
    text-align: left;
}

#header-properties .total {
    font-family: var(--agim-primary-font);
    font-size: 14px;
    font-weight: 400;
    color: var(--agim-primary-color);
}

.property-listing-header span {
    font-size: 14px;
    font-family: var(--agim-primary-font);
    width: 100%;
    color: var(--agim-primary-color);
    text-align: right;
    font-weight: 400; 
}
#elencoImmobili #header-properties {
    align-items: flex-start;
    margin-bottom: 15px;
}
/*
.bootstrap-select .dropdown-toggle::after {
    content: "\25be";
    color: #bbb;
    font-size: 17px;
    font-weight: bold;
}*/

.dropdown-header .text {
    font-weight: 600;
}

.no-result-text {
    font-size: 15px
}

.no-result-text b {
    font-size: 14px;
}

/* Stile per il widget vetrina immobili */

.custom-tabs {
    display: flex;
    justify-content: center;
    border: none;
    margin-bottom: 30px;
    border-bottom: 1px solid #f4debb;
}

.custom-tabs .nav-item {
    margin: 0 20px;
}

.custom-tabs .nav-link {
    color: #333;
    font-size: 16px;
    font-weight: 500;
    padding: 10px 0;
    border: none;
    border-bottom: 2px solid transparent;
    background: none;
    text-transform: uppercase;
    transition: all 0.5s ease;
    letter-spacing: 1px;
}

.custom-tabs .nav-link:hover {
    color: var(--agim-secondary-color);
    border-bottom: 2px solid var(--agim-secondary-color);
}

.custom-tabs .nav-link.active {
    color: #000;
    border-bottom: 2px solid var(--agim-secondary-color);
    background: none;
    letter-spacing: 1px;
    font-weight: 600;
}

.tab-content > .tab-pane {
    opacity: 0;
    transition: all 0.5s ease-in-out;
}

.tab-content > .active {
    opacity: 1;
}

.widget_archive a,
.widget_categories a {
    color: var(--agim-primary-color) !important;
}

/* Stile per il dettaglio immobile */

.top-detail,
.property-gallery-grid {
    max-width: none;
    width: 100%;
    padding-right: 5%;
    padding-left: 5%;
}

.labels.second-data {
    margin-top: 5px;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.riferimento {
    font-size: 20px;
    font-weight: 700;
    color: #fff;
}

#breadcrumbs,
#breadcrumbs span,
#breadcrumbs a,
#breadcrumbs i {
    font-size: 14px;
    line-height: 14px;
    color: var(--agim-primary-color);
    font-weight: 400;
    font-family: var(--agim-primary-font);
}


.title-property,
.top-detail .price {
    font-size: 38px;
    font-weight: 700;
    line-height: 40px;
    font-family: var(--agim-primary-font);
    color: var(--agim-primary-color);
}

.dettaglio_share_property {
    margin-bottom: 1rem;
}

.dettaglio_share_property a,
.dettaglio_share_property .specific-action {
    color: var(--agim-primary-color) !important;
    border: 1px solid #00294B20;
    background-color: #fff;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    line-height: 16px;
    border-radius: 4px;
    opacity: 1;
}

.dettaglio_share_property .specific-action:hover,
.dettaglio_share_property a:hover {
    background-color: var(--agim-primary-color) !important;
    border: 1px solid var(--agim-primary-color);
    color: #fff !important;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    line-height: 16px;
    border-radius: 4px;
}

.labels .address {
    font-size: 20px;
    font-weight: 400;
    font-family: var(--agim-primary-font);
    color: var(--agim-primary-color);
}

.dettaglio_share_property .save_property.saved:hover .remove i {
    color: #fff;
}

#immobile-dettaglio .block-wrap {
    padding: 40px;
    background-color: #fff;
    margin-bottom: 30px;
    margin-top: 0px;
    border: 1px solid #dce0e0;
}

#immobile-dettaglio .block-title-wrap h2 {
    font-size: 20px;
    color: var(--agim-primary-color);
    line-height: 22px;
    font-weight: 400;
}

.block-title-wrap {
    border: 0;
    margin-bottom: 15px;
    margin-top: 0;
    padding-bottom: 0;
}

.description-content p {
    font-size: 15px;
    line-height: 23px;
    color: #000;
    font-weight: 300;
}


.block-title-wrap h3 {
    color: var(--agim-primary-color);
    font-size: 20px;
    line-height: 22px;

}

.detail-wrap span,
.detail-wrap strong,
.list-unstyled span,
.list-unstyled strong {
    font-size: 14px;
    color: var(--agim-primary-color);
    font-family: var(--agim-primary-font);
}

.property-detail-wrap .block-content-wrap .block-title-wrap {
    margin-bottom: 0 !important;
}

.presence i {
    color: var(--agim-primary-color);
}

.detail-wrap {
    background-color: aliceblue !important;
    border-color: var(--agim-primary-color) !important;
    border-radius: 18px;
    padding: 2%;
}

#similar-listings-wrap .item-listing-wrap {
    border: 1px solid rgba(0, 0, 0, .125) !important;
}

/* Stile per il dettaglio immobile - Galllery */

.property-gallery-grid {
    display: flex;
    gap: 22px;
    margin-bottom: 20px;
}

.main-image {
    width: 50%;
    position: relative;
}

.main-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 18px;
    cursor: pointer;
}

.side-images {
    width: 50%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 22px;
}

.side-images img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 18px;
    cursor: pointer;
}

.remaining-photos-container {
    display: flex;
    justify-content: flex-end;
    width: 100%;
    margin: auto;
    margin-top: -75px;
    margin-bottom: 45px;
    padding: 0 6% 0 0;
}

.remaining-photos {
    background: rgba(0, 0, 0, 0.7);
    color: white;
    padding: 5px 10px;
    border-radius: 3px;
    font-size: 14px;
}

.remaining-photos.desktop {
    display: block;
}

.remaining-photos.mobile {
    display: none;
}

/* Galleria mobile/desktop */
.mobile-gallery-slider {
    display: none;
}

.desktop-gallery {
    display: flex;
}

.list-view .item-amenities {
    color: #000 !important;
}

#similar-listings-wrap .btn-primary-outlined {
    color: var(--agim-primary-color);
    background-color: transparent;
    border-color: var(--agim-primary-color);;
}

#similar-listings-wrap .item-amenities {
    justify-content: flex-start;
}

.agent-link a {
    color: var(--agim-secondary-color) !important;
}

.agent-name {
    font-weight: 700;
}

.contact-list li {
    margin-bottom: 6px;
}

h3.richiedi {
    font-size: 14px;
    line-height: 21px;
    text-align: left;
    padding: 0;
    margin: 10px 0 20px;
    width: 100%;
    font-family: var(--agim-primary-font);
}

.property-form-wrap {
    border: 1px solid #dce0e0;
}

.property-form {
    margin-top: 0;
}

.property-form-wrap .form-group {
    margin-bottom: 1rem;
    width: 100%;
}

.form-group input {
    border-radius: 30px;
}

.form-group textarea {
    border-radius: 10px;
}

.form-group .control input {
    position: static;
    z-index: 1;
    opacity: 1;
}

.property-form .control.control--checkbox {
    padding-left: 0;
    font-size: 13px;
}

.gdpr-text-wrap {
    display: flex;
    align-items: flex-start;
    line-height: 25px;
    font-size: 12px;;
}

.houzez_agent_property_form {
    background: #fff !important;
    color: var(--agim-secondary-color) !important;
    border: 1px solid var(--agim-secondary-color) !important;
    border-radius: 50px !important;
}

.houzez_agent_property_form:hover {
    background: var(--agim-secondary-color) !important;
    color: #fff !important;
    border: 1px solid var(--agim-secondary-color) !important;
}

.top-bar-wrap .justify-content-between {
    border-bottom: 1px solid #f4debb;
    padding-bottom: 3px;
    margin-bottom: 10px;
}

.privacy-font-size {
    font-size: 13px;
}

.top-bar-wrap a {
    color: #000 !important;
    font-size: 14px;
}

.top-bar-wrap a i {
    color: var(--agim-secondary-color);
}

.top-bar-wrap .header-social-icons .btn-square {
    background: var(--agim-secondary-color);
    font-size: 15px;
    padding: 5px;
    height: 25px;
    width: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff !important;
    border: 1px solid var(--agim-secondary-color);
    border-radius: 3px;
}

.top-bar-wrap .header-social-icons .btn-square:hover {
    color: var(--agim-secondary-color);
    background: #fff !important;
    border: 1px solid var(--agim-secondary-color);
}

.top-bar-wrap .header-social-icons .btn-square i {
    color: #fff !important;
}

.top-bar-wrap .header-social-icons .btn-square:hover i {
    color: var(--agim-secondary-color) !important;
}

.top-bar-right-wrap {
    margin-top: 7px;
}

#navi-user {
    display: none;
}

/*classe comune ad entrambe le ricerche*/
.normal .contract-btn {
    font-family: var(--agim-primary-font);
    border-radius: 50px;
    font-weight: 500;
    transition: background 0.2s, color 0.2s;
    width: 49%;
    border: 1px solid #ffffff;
    color: var(--agim-primary-color);
    background: #ffffff;
    height: 45px;
    padding: 10px 40px;
    text-transform: uppercase;
    font-size: 13px;
    letter-spacing: 1px;
}

/* solo ricerca.php, quella verticale */
.normal.elenco .contract-btn {
    border: 1px solid var(--agim-primary-color);
}

/*comune ad entrmabe le ricerche*/
.normal .contract-btn:hover {
    border: 1px solid var(--agim-primary-color);
    color: #ffffff;
    background: var(--agim-primary-color);
}

/*comune ad entrambe le ricerche*/
.normal .contract-btn.active {
    background-color: var(--agim-secondary-color);
    border: 1px solid var(--agim-secondary-color);
    color: #ffffff;
}


#show-advanced-search {
    background-color: #ffffffd9;
    color: var(--agim-primary-color);
    border: 0px;
    border-radius: 50px;
    font-family: var(--agim-primary-font);
    font-weight: 500;
    transition: background 0.2s, color 0.2s;
    height: 36px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    padding: 10px 40px;
    text-transform: uppercase;
    font-size: 13px;
    letter-spacing: 1px;
    width: auto;
    text-align: center;
}
#show-advanced-search:hover {
    color: #ffffff;
    background: var(--agim-primary-color);
}
@media (max-width: 1550px) {
    #show-advanced-search {
        border-radius: 50px;
        font-family: var(--agim-primary-font);
        font-weight: 500;
        transition: background 0.2s, color 0.2s;
        height: 36px;
        display: flex !important;
        align-items: center;
        justify-content: center;
        padding: 10px 40px;
        text-transform: uppercase;
        font-size: 13px;
        letter-spacing: 1px;
        width: 38vh;
        text-align: center;
    }
}

#ricerca-form .row.back .selectpicker.search-fields {
    font-family: var(--agim-primary-font);
    color: var(--agim-primary-color) !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    height: 41px;
    width: 194px;
    transition: none !important;
    border-bottom: 1px solid var(--agim-primary-color) !important;
    padding-bottom: 7px;
    margin-bottom: 12px;
    font-size: 13px;
    text-transform: uppercase;
    font-weight: 500;
}

#ricerca-form .row.back .selectpicker.search-fields option {
    font-family: var(--agim-primary-font);
    color: #333333;
    font-size: 12px;
    font-weight: 500;
}

#ricerca-form .row.back .selectpicker.search-fields optgroup {
    font-weight: 500;
    font-size: 14px;
    color: var(--agim-primary-color);
}

#row-advanced {
    margin-top: 10px;
    background-color: #ffffff90;
}



/*elenco immobili */
#ricerca-form-elenco .row.elenco-verticale {
    display: flex;
    justify-content: center;
    flex-direction: column;
    width: 100%;
}

/*elenco: select */
#ricerca-form-elenco .row.elenco-verticale .selectpicker.search-fields.elenco {
    font-family: var(--agim-primary-font);
    color: var(--agim-primary-color);
    border: 1px solid #00294B20;
    border-radius: 50px;
    background: #ffffff;
    height: 45px;
    width: 100%;
    transition: none;
    font-size: 14px;
    font-weight: 500;
    padding: 10px 20px;
}

#ricerca-form-elenco .row.elenco-verticale .selectpicker.search-fields.elenco option {
    font-family: var(--agim-primary-font);
    color: var(--agim-primary-color);
    border: 1px solid var(--agim-primary-color);
    border-radius: 50px;
    background: #ffffff;
    height: 45px;
    width: 100%;
    transition: none;
    font-size: 14px;
    font-weight: 400;
    padding: 10px 20px;
}

#ricerca-form-elenco .row.elenco-verticale .selectpicker.search-fields.elenco optgroup {
    font-family: var(--agim-primary-font);
    color: var(--agim-primary-color);
    border: 1px solid var(--agim-primary-color);
    border-radius: 50px;
    background: #ffffff;
    height: 45px;
    width: 100%;
    transition: none;
    font-size: 15px;
    font-weight: 700;
    padding: 10px 20px;
}


.fixed-buttons-corner {
    position: fixed;
    left: 20px;
    bottom: 80px;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.fixed-buttons-corner a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: #9caf88;
    color: #fff;
    font-size: 28px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    transition: background 0.2s;
    text-decoration: none;
    animation: floatBtn 2.2s ease-in-out infinite;
}

@keyframes floatBtn {
    0% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-10px);
    }

    100% {
        transform: translateY(0);
    }
}

.fixed-buttons-corner a.chiamaci {
    background: #9caf88;
}

.fixed-buttons-corner a:hover {
    filter: brightness(1.1);
}

/* MOBILE: bottoni larghi e fissi in basso, stile WhatsApp */
@media (max-width: 768px) {
    .fixed-buttons-corner {
        display: none;
    }

    .localita-box {
        padding: 0 10px;
    }

    #elenco-immo {
        margin: auto;
    }

    #elencoImmobili .paged ul li, .blog-paged ul li {
        margin: 5px;
    }

    #elencoImmobili .paged ul {
        display: flex;
        margin: 0 -20px;
        padding: 0;
    }

    .top-detail,
    .property-gallery-grid {
        padding-top: 5px;
    }

    .title-property,
    .top-detail .price {
        font-size: 20px;
    }

    .labels.second-data {
        margin-top: 5px;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    .labels .address {
        color: #000;
        font-size: 15px;
        font-weight: 300;
    }

    .riferimento {
        font-size: 15px;
        font-weight: 600;
        color: var(--agim-primary-color);
        padding: 1px 15px;
        margin-top: 10px;
        border-radius: 4px;
    }

    #immobile-dettaglio .block-wrap {
        padding: 20px;
    }

    .property-overview-wrap-v2 .property-overview-data {
        grid-row-gap: 5px;
    }

    .property-overview-wrap .property-overview-data .flex-fill {
        width: calc(100% / 2.1);
        display: inline-block;
        padding: 0 0 0;
    }

    .detail-wrap {
        border: 1px solid;
        padding: 0 15px;
    }

    #immobile-dettaglio {
        padding: 0 5px;
    }

    .similar-property-wrap {
        padding: 10px 10px;
    }

    #header-properties .property-listing-header {
        display: flex;
        width: 100%;
        max-width: 100%;
        justify-content: flex-start;
        align-items: center;
        flex-direction: row;
    }

    .mobile-bottom-buttons {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 9999;
        display: flex;
        width: 100vw;
        background: transparent;
        gap: 0;
        box-shadow: 0 -2px 16px rgba(0, 0, 0, 0.08);
    }

    .mobile-bottom-buttons a {
        flex: 1 1 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 12px 0;
        font-size: 16px;
        font-weight: 700;
        color: #fff;
        border: none;
        border-radius: 0;
        text-decoration: none;
        transition: filter 0.2s;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.10);
    }

    .mobile-bottom-buttons a i {
        margin-right: 10px;
        font-size: 22px;
    }

    .mobile-bottom-buttons a.whatsapp {
        background: #25d366;
    }

    .mobile-bottom-buttons a.chiamaci {
        background: #128C7E;
    }

    .mobile-bottom-buttons a:hover {
        filter: brightness(1.1);
    }
}

.spalla-elenco {
    height: fit-content !important;
    margin-bottom: 20px !important;
}

#last-immo {
    box-sizing: border-box;
    padding: 0 15px;
}

body.home .elementor-background-slideshow {
    border-radius: 8px;
}

#select_contract {
    background: none;
    border: 0;
    padding: 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
}

.back-to-top-wrap {
    position: fixed;
    left: auto;
    right: 30px;
    bottom: 90px !important;
    z-index: 99;
}

.back-to-top-wrap a {
    background-color: var(--agim-primary-color);
    border-color: var(--agim-primary-color);
}


[data-tooltip],
div:not(.cky-revisit-bottom-left) .tooltip {
    display: inline;
    position: relative;
    cursor: pointer;
    transform: translateY(-12px);
    margin-top: 60px
}

div:not(.cky-revisit-bottom-left) [data-tooltip]:before,
div:not(.cky-revisit-bottom-left) [data-tooltip]:after,
div:not(.cky-revisit-bottom-left) .tooltip:before,
div:not(.cky-revisit-bottom-left) .tooltip:after {
    position: absolute;
    visibility: visible;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
    opacity: 1;
    pointer-events: none;
    transform: translateY(-12px)
}

div:not(.cky-revisit-bottom-left) .tooltip:before,
div:not(.cky-revisit-bottom-left) [data-tooltip]:before {
    z-index: 1001;
    border: 6px solid transparent;
    background: transparent;
    content: ""
}

div:not(.cky-revisit-bottom-left) .tooltip:after,
div:not(.cky-revisit-bottom-left) [data-tooltip]:after {
    z-index: 1000;
    padding: 8px;
    width: 100px;
    text-align: center;
    background-color: #000;
    background-color: rgba(51, 51, 51, 0.9);
    color: #fff;
    content: attr(data-tooltip);
    font-size: 10px;
    line-height: 1.2
}

div:not(.cky-revisit-bottom-left) [data-tooltip]:before,
div:not(.cky-revisit-bottom-left) [data-tooltip]:after,
.tooltip:before,
.tooltip:after,
.tooltip-top:before,
.tooltip-top:after {
    bottom: 100%
}

.l-5:before,
.l-5:after {
    left: 5%
}

.l-15:before,
.l-15:after {
    left: 15%
}

.l-25:before,
.l-25:after {
    left: 25%
}

.l-35:before,
.l-35:after {
    left: 35%
}

.l-45:before,
.l-45:after {
    left: 45%
}

.l-55:before,
.l-55:after {
    left: 55%
}

.l-65:before,
.l-65:after {
    left: 65%
}

.l-75:before,
.l-75:after {
    left: 75%
}

.l-85:before,
.l-85:after {
    left: 85%
}

.l-95:before,
.l-95:after {
    left: 95%
}

.l-none:before,
.l-none:after {
    display: none
}

[data-tooltip]:before,
.tooltip:before,
.tooltip-top:before {
    margin-left: -6px;
    margin-bottom: -12px;
    border-top-color: #000;
    border-top-color: rgba(51, 51, 51, 0.9)
}

[data-tooltip]:after,
.tooltip:after,
.tooltip-top:after {
    margin-left: -50px
}


@media (min-width: 1090px) {
    #elenco-immo {
        column-gap: 0;
        margin: 0;
    }
}

@media (max-width: 768px) {

    #ricerca-form .form-group,
    .bootstrap-select:not([class*=col-]):not([class*=form-control]):not(.input-group-btn),
    .search-button.btn-md.btn-color,
    select.search-fields,
    input.search-fields,
    .bootstrap-select > .dropdown-toggle,
    .bootstrap-select > .dropdown-toggle.bs-placeholder,
    .bootstrap-select > .dropdown-toggle.bs-placeholder:active,
    .bootstrap-select > .dropdown-toggle.bs-placeholder:focus,
    .bootstrap-select > .dropdown-toggle.bs-placeholder:hover {
        width: 100%;
    }

    .mobile-gallery-slider .slick-prev, .mobile-gallery-slider .slick-next,
    .slick-lightbox .slick-prev, .slick-lightbox .slick-next {
        display: block !important;
    }

    .mobile-gallery-slider .slick-prev:before, .mobile-gallery-slider .slick-next:before {
        display: inline-block;
        font-size: 25px;
    }

    .mobile-gallery-slider .slick-next {
        right: 10px;
    }

    .mobile-gallery-slider .slick-prev {
        left: 10px;
    }

    .specific-action.save_property {
        text-align: center;
        margin-top: 0px;
        margin-bottom: 0px;
    }

    .modulo-contenuto .elementor-field-group .elementor-field:not(.elementor-acceptance-field) {
        width: 100% !important;
    }

    .search-area .container {
        padding: 0px;
    }

    .grid-view .item-listing-wrap {
        width: 100%;
        float: none;
        padding: 0px;
    }

    #row-advanced {
        margin-top: 10px;
    }

    .property-gallery-grid {
        flex-direction: column;
    }

    #property-top {
        margin: 20px 0px;
    }

    .main-image {
        width: 100%;
    }

    .side-images {
        display: none;
    }

    .remaining-photos.desktop {
        display: none;
    }

    .remaining-photos.mobile {
        display: none;
    }

    .remaining-photos-container {
        display: none;
    }

    /* Nasconde la galleria desktop e mostra lo slider mobile */
    .desktop-gallery {
        display: none !important;
    }

    .mobile-gallery-slider {
        display: block;
        width: 100%;
        padding: 0 15px;
    }

    .mobile-property-carousel .item img {
        height: 250px;
        object-fit: cover;
        object-position: center;
        border-radius: 4px;
    }
}


.item-header {
    position: relative;
}

.grid-view .item-wrap.item-wrap-no-frame {
    padding: 0;
    z-index: 0;
}

.post-inner-wrap, .post-footer-wrap, .post-header-wrap, .post-content-wrap, .author-detail-wrap, .post-comment-form-wrap, .author-comment {
    padding: 0px 0px 40px 0px;
}

/* Blog grid 2 colonne */
.agim-blog-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

.agim-blog-grid .blog-card {
    background: #fff;
    border: 1px solid #e6e6e6;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
}

.agim-blog-grid .blog-card .thumb {
    display: block;
    aspect-ratio: 16/9;
    overflow: hidden;
}

.agim-blog-grid .blog-card .thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.agim-blog-grid .blog-card .meta {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #7a7a7a;
    font-size: 13px;
    padding: 14px 18px 6px 18px;
}

.agim-blog-grid .blog-card .title {
    font-size: 20px;
    line-height: 1.25;
    margin: 0;
    padding: 0 18px;
}

.agim-blog-grid .blog-card .title a {
    color: #000;
}

.agim-blog-grid .blog-card .excerpt {
    color: #4b4b4b;
    font-size: 15px;
    line-height: 1.5;
    padding: 8px 18px 0 18px;
    margin: 0 0 8px 0;
}

.agim-blog-grid .blog-card .read-more {
    display: inline-block;
    padding: 0 18px 18px 18px;
    color: #7aa064;
}

/* Paginazione elenco blog */
.blog-paged {
    margin-top: 20px;
}

.blog-paged ul {
    display: flex;
    gap: 6px;
    list-style: none;
    padding-left: 0;
}

@media (max-width: 768px) {
    .agim-blog-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }
}


@media (max-width: 900px) {
    /*#elenco-immo-1{
        width: 100%;
        display: flex;
        justify-content: space-between;
    }
    .slick-track{
        width: 100% !important;
    }
    .slick-slide.slick-current.slick-active{
        width: 100% !important;
        margin-right: 20px !important;
    }*/
    #elenco-immo.col2 .item {
        width: 100% !important;
        margin: 0px !important;
        align-items: center;
        box-sizing: border-box;
    }
    #elencoImmobili #header-properties {
        display: flex;
        width: 100% !important;
        font-family: var(--agim-primary-font);
        justify-content: center;
        flex-direction: column;
        flex-wrap: wrap;
        align-items: center;
    }
    #header-properties .property-listing-header {
        display: flex;
        width: 100% !important;
        font-family: var(--agim-primary-font);
        justify-content: center;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: center;
    }
}


.copy h6 {
    font-family: 'Source Sans 3', sans-serif !important;
}

/*
#elenco-immo-1 .slick-slide{
    width: 100%;
    display: flex;
    justify-content: space-between;
}*/

@media(max-width: 1200px) {
    .top-detail {
        max-width: none;
        width: 100%;
        padding-right: 5%;
        padding-left: 5%;
        margin-top: 7%;
    }

    .contenuto-pageimmo .dettagli-immobile {
        width: 70%;
    }
    .contenuto-pageimmo .form-contatto {
        width: 28%;
        margin-bottom: 3%;
    }
    .contenuto-pageimmo {
        margin-top: 3%;
    }
}



@media(max-width: 1024px) {
    #elenco-immo.col2 .item {
        width: 100%;
        margin: 10px 0;
        align-items: center;
    }

    .contenuto-pageimmo {
        width: 100%;
        display: flex;
        flex-direction: column;
    }
    .contenuto-pageimmo .dettagli-immobile {
        width: 70%;
        width: 100%;
    }
    .contenuto-pageimmo .form-contatto {
        width: 28%;
        width: 100%;
    }

}

@media(max-width: 767px){
    .top-detail {
        margin-top: 20%;
    }
    .riga-titolo-prezzo, .riga-address-rife {
        justify-content: flex-start;
        flex-direction: column;
    }
    .riga-titolo-prezzo .prezzo {
        text-align: left;
        font-size: 28px;
        display: inline-flex;
        width: 100%;
    }
    .riga-titolo-prezzo .titolo-immo {
        font-size: 34px;
    }
    .riga-address-rife span {
        font-size: 18px;
        text-align: left !important;
        margin-bottom: 10px;
    }
    .tabs__nav .tab {
        font-size: 12px;
        width: auto;
        padding: 5px 10px;
    }
    .riga-caratteristiche-principali-immobile {
        flex-wrap: wrap;
    }
    .riga-caratteristiche-principali-immobile .blocco-caratt {
        flex-direction: row;
        justify-content: flex-start;
        width: 50%;
        margin: 8px 0;
    }
    .scheda-dettagli-immobile.suggerimenti {
        flex-direction: column;
    }


}



.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #00294B;
    transition: .4s;
    border-radius: 34px;
}

input:checked + .slider {
    background-color: #D0831F;
}