@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap');

html,
body {
    width: 100%;
    margin: 0;
}

body {
    font-family: 'Roboto', sans-serif;
    font-weight: 300;
    color: #4d4d4d;
    font-size: 16px;
    font-style: normal;
    line-height: 2;
    background: #fff;
}

/**** typografy ******/

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Roboto', sans-serif;
    font-weight: 700;
    color: #2b3989;
}

h1 {
    font-size: 56px;
    margin: 0 0 35px 0;
    line-height: 1;
    letter-spacing: 1px;
}

h2 {

    font-size: 30px;
    line-height: 1.22;
    margin-bottom: 50px;
    text-align: center;
    letter-spacing: 1px;
    color: #2b3989;
    
}

h3 {
    line-height: 1.4;
    font-size: 18px;
    margin: 0 0 20px 0;
}

h4 {
    line-height: 1.4;
    font-size: 16px;
    margin: 0 0 20px 0;
}

h5 {
    font-size: 18px;
    line-height: 1.5;
    margin: 0 0 13px 0;
    text-transform: uppercase;
}

h6 {
    margin-top: 0;
    font-size: 18px;
    color: #ee7743;
    margin-bottom: 25px;
}


p {
    margin-bottom: 30px;
}

a {
    color: #2b3989;
    transition: all 0.3s ease-in-out;
}

a:hover {
    text-decoration: none;
    color: #000;
}

button:focus,
.btn:focus,
*:focus {
    outline: none !important;
    box-shadow: none;
}

.button {
    background: #ee7743;
    color: #fff;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 1px;
    border-radius: 5px;
    display: inline-block;
    text-align: center;
    padding: 8px 25px;
    border: 1px solid #ee7742;
}

.border-button {
    color: #2b3989;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 2px;
    border-radius: 5px;
    display: inline-block;
    text-align: center;
    padding: 8px 25px;
    border: 1px solid #2b3989;
    background: transparent;
}

.button:hover {
    background: #fff;
    color: #ee7743;
}

.vetrina-item .button:hover,
.border-button:hover {
    background: #2b3a89;
    border: 1px solid #2b3989;
    color: #fff;
}

.fiaip,
.fiaip img,
header#header,
.logo,
covid-info-bar,
.button,
button,
.newsletter-form button[type=submit],
.chronology-item img,
.thumbnail-link img {
    transition: all 0.3s ease-in-out;
}

strong {
    font-weight: 700;
}

/********** main ************/

section {
    overflow: hidden;
    padding: 115px 0;
}

@media (min-width: 1440px) {

    .container {
        max-width: 1310px;
    }

}

/******* header ******/

header#header {
    background: #fff;
    width: 100%;
}

.header-row .header-inner {
    width: 100%;
    padding-right: 58px;
}

.header-address,
.header-phones {
    font-size: 18px;
    line-height: 1.8;
}

.header-address img,
.header-phones img {
    margin-right: 20px;
}

.header-phones a {
    color: #4d4d4d;
}


.logo {
    margin: 13px 0;
    max-width: 109px;
}

.logo img {
    max-width: 100%;
    height: auto;
}

#header.fixed-header {
    position: fixed;
    top: 0;
    z-index: 9999;
	
    -webkit-transition: top .6s;
    transition: top .6s;
    box-shadow: 0 0 5px rgb(171 171 171 / 58%);
	
}

#header.fixed-header .logo {
    margin: 3px 0;
}

#header.fixed-header .navbar-dark .navbar-nav .nav-link {
   // padding: 10px 25px;
}


#header.fixed-header .fiaip {
   // max-width: 120px;
}

/*********************/

.covid-info-bar {
    background: #ee7743;
    padding: 15px 0;
    overflow: hidden;
}

.covid-info-bar p {
    font-size: 12px;
    color: #fff;
    font-weight: 400;
    margin-bottom: 0;
    line-height: 1.5;
}

.covid-info-bar strong {
    color: #fff;
}

.covid-info-bar .close-btn {
    border: none;
    background: transparent;
    font-size: 28px;
    font-weight: 300;
    color: #fff;
}

#header.fixed-header .covid-info-bar {
    height: 0;
    padding: 0;
}

/***************language-selector****************/

.language-selector {
    border-right: 1px solid #e5e5e5;
    border-left: 1px solid #e5e5e5;
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    width: 92px;
}

.language-selector span {
    font-size: 16px;
    line-height: 1;
    vertical-align: middle;
}

.language-selector .language-toggle span {
    font-weight: 700;
}


.language-selector .dropdown-toggle {
    padding: 15px;
}

.language-selector .dropdown-toggle::after {
    color: #ee7743;
    vertical-align: .1em;
}

.language-selector ul {
    width: 100%;
    min-width: 93px;
    border: none;
    padding: 5px 15px;
    box-shadow: 5px 10px 18px rgb(4 4 4 / 13%);
    margin-left: -10px;
}

.language-selector ul li {
    display: inline-block;
    position: relative;
    width: 100%;
    cursor: pointer;
    padding: 0;
}

.language-selector ul li a {
    display: block;
    color: #4d4d4d;
    font-size: 16px;
    font-weight: normal;
    text-decoration: none;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

.language-toggle:hover,
.language-selector ul li a:hover span {
    color: #ee7743;
}


/******* navbar *******/

nav.navbar {
    padding: 0 30px;
    background: #2b3989;
}

.overlay {
    max-width: 1310px;
    width: 100%;
}


.navbar-expand-lg .navbar-nav {
    justify-content: space-around;
    width: 100%;
}

.navbar-dark .navbar-nav .nav-item {
    position: relative;
}

.navbar-dark .navbar-nav .nav-link {
    font-weight: bold;
    font-size: 16px;
    line-height: 19px;
    text-align: center;
    text-transform: uppercase;
    color: #FFFFFF;
    transition: all 0.3s ease-in-out;
    position: relative;
    padding: 15px 25px;
    letter-spacing: 1px;

}

.navbar-dark .navbar-nav .nav-item:hover > .nav-link,
.navbar-dark .navbar-nav .active .nav-link,
.navbar-dark .navbar-nav .nav-link:focus,
.navbar-dark .navbar-nav .nav-link:hover {
    color: #ee7743;
}

li.has-submenu > a:after {
    content: '';
    display: block;
    width: 7px;
    height: 7px;
    position: absolute;
    right: 8px;
    top: 20px;
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
    transform: rotate(-45deg);
}


.navbar-dark .navbar-nav .active.has-submenu .nav-link:after {
    border-bottom: 2px solid #ee7743;
    border-left: 2px solid #ee7743;
}

.submenu {
    opacity: 0;
    top: -1000px;
    overflow: hidden;
    position: absolute;
    left: 0;
    width: 240px;
    padding: 15px 15px 5px;
    text-align: left;
    background: rgba(255, 255, 255, .9);
    z-index: 10;
    -webkit-transition: opacity .5s ease;
    -moz-transition: opacity .5s ease;
    -o-transition: opacity .5s ease;
    transition: opacity .5s ease;
    list-style: none;
}

li.has-submenu:hover .submenu {
    opacity: 1;
    height: auto;
    top: 100%;
    box-shadow: 0 2px 5px rgb(22 51 115 / 20%);
}

.submenu a {
    line-height: 1.3;
    margin-bottom: 10px;
    display: block;
    font-size: 14px;
}

#header.fixed-header li.has-submenu > a:after {
    top: 15px;
}

/********* banner *********/

.home-first-screen {
    position: relative;
}

#main-slider .slick-slide {
    height: calc(100vh - 188px);
    min-height: 750px;
    background-size: cover;
    background-position: center 0;
    background-repeat: no-repeat;
}

.home-hero-stage {
    position: relative;
    overflow: hidden;
}

.home-hero-stage #main-slider,
.home-hero-stage #main-slider .slick-list,
.home-hero-stage #main-slider .slick-track,
.home-hero-stage #main-slider .slick-slide {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 100% !important;
    min-height: 0;
    max-height: none;
}

.home-hero-stage #main-slider {
    z-index: 0;
}

.home-hero .slick-prev,
.home-hero .slick-next {
    display: none !important;
}

.home-hero-stage .hero-media,
.home-hero-stage .hero-media img {
    width: 100%;
    height: 100%;
    display: block;
}

.home-hero-stage .hero-media img {
    object-fit: cover;
    object-position: center 35%;
}

.home-hero-shade {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: none;
    pointer-events: none;
}

.home-hero-panel {
    position: relative;
    z-index: 2;
    max-width: 980px;
    margin: 0 auto;
    padding: 54px 20px 36px;
    text-align: center;
}

.home-hero-title {
    margin: 0 auto 14px;
    max-width: 820px;
    color: #fff;
    font-size: 44px;
    font-weight: 700;
    line-height: 1.15;
    text-transform: none;
    letter-spacing: 0;
    text-shadow: 0 1px 2px rgba(10, 18, 50, 0.45), 0 2px 10px rgba(10, 18, 50, 0.35);
}

.home-hero-lead {
    margin: 0 auto 26px;
    max-width: 640px;
    color: #fff;
    font-size: 17px;
    line-height: 1.45;
    text-shadow: 0 1px 2px rgba(10, 18, 50, 0.65), 0 2px 12px rgba(10, 18, 50, 0.55);
}

.home-hero-card {
    display: flex;
    align-items: flex-end;
    gap: 12px;
    margin: 0 auto 22px;
    padding: 22px 24px;
    background: rgba(43, 57, 137, 0.9);
    border-radius: 2px;
    box-shadow: none;
    text-align: left;
}

.home-hero-field {
    flex: 1 1 0;
    min-width: 0;
    margin: 0;
}

.home-hero-field span {
    display: block;
    margin-bottom: 8px;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.home-hero-field select,
.home-hero-field input {
    width: 100%;
    height: 48px;
    padding: 0 12px;
    border: none;
    border-radius: 2px;
    background: #fff;
    color: #4d4d4d;
    font-size: 14px;
    font-weight: 300;
}

.home-hero-field input::placeholder {
    color: #909090;
}

.home-hero-submit {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 48px;
    padding: 0 22px;
    border: 1px solid #ee7742;
    border-radius: 3px;
    background: #ee7743;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    cursor: pointer;
}

.home-hero-submit svg {
    width: 18px;
    height: 18px;
}

.home-hero-submit:hover {
    background: #d86635;
}

.home-hero-cta {
    display: flex;
    justify-content: center;
    gap: 16px;
}

.home-hero-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    min-width: 280px;
    padding: 14px 22px;
    border-radius: 14px;
    text-decoration: none;
    text-align: left;
    box-shadow: 0 8px 20px rgba(10, 20, 50, 0.12);
}

.home-hero-btn strong,
.home-hero-btn small {
    display: block;
}

.home-hero-btn strong {
    font-size: 18px;
    line-height: 1.2;
}

.home-hero-btn small {
    margin-top: 2px;
    font-size: 13px;
    font-weight: 400;
}

.home-hero-ico {
    width: 28px;
    height: 28px;
    flex: 0 0 auto;
}

.home-hero-btn-cerco {
    background: #fff;
    color: #24306e;
    border: 1px solid #e4e7f0;
}

.home-hero-btn-cerco small {
    color: #6d7690;
}

.home-hero-btn-vendo {
    background: #ee7743;
    color: #fff;
    border: 1px solid #ee7743;
}

.home-hero-btn-vendo small {
    color: rgba(255, 255, 255, 0.92);
}

.home-hero-btn:hover,
.home-hero-btn:focus {
    text-decoration: none;
    color: inherit;
}

.home-hero-btn-vendo:hover,
.home-hero-btn-vendo:focus {
    background: #d86635;
    color: #fff;
}

.home-hero-foot {
    position: relative;
    z-index: 3;
    margin-top: 8px;
    padding: 14px 0 16px;
    background: #fff;
    color: #24306e;
    font-size: 15px;
}

.home-hero-foot .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px 20px;
}

.home-hero-foot p,
.home-hero-foot a {
    white-space: nowrap;
}

.home-hero-foot p {
    margin: 0;
}

.home-hero-foot a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #24306e;
    font-weight: 600;
}

.home-hero-foot a svg {
    width: 18px;
    height: 18px;
}

#main-slider .caption {
    max-width: 570px;
    margin-top: 80px;
    padding-top: 60px;
}

.caption {
    padding: 55px 65px 65px;
    background: rgba(21, 34, 104, 0.7);
}

.caption h1 {
    color: #fff;
    text-transform: uppercase;
}

#main-slider .caption h1 span {
    color: #ee7743;
    font-size: 32px;
    display: block;
}

.caption p {
    color: #fff;
    font-size: 16px;
    line-height: 1.5;
    margin-bottom: 35px;
}

.slick-prev,
.slick-next {
    position: absolute;
    top: 48%;
    display: block;
    width: 54px;
    height: 54px;
    cursor: pointer;
    color: #fff;
    z-index: 5;
    border: none;
    border-radius: 50%;
    text-align: center;
    line-height: 1;
}

.slick-prev {
    left: 20px;
    background: url(../images/arr-l.png) no-repeat center rgba(21, 34, 104, 0.9);
}

.slick-next {
    right: 20px;
    background: url(../images/arr-r.png) no-repeat center rgba(21, 34, 104, 0.9);
}

.slick-prev:hover,
.slick-next:hover {
    background-color: rgba(21, 34, 104, 0.7);
}

.slick-slider {
    padding: 0;
    list-style: none;
}

.slick-slide img {
    max-width: 100%;
    height: auto;
}


/**************************/

.light-bg {
    background: #f7f8fd;
}


.appartamenti-links,
.about-block {
    padding: 120px 0 105px;
}

.thumbnail-link {
    display: block;
    position: relative;
    overflow: hidden;
    margin-bottom: 15px;
}

.thumbnail-link .badge {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
}

.thumbnail-link:hover img {
    opacity: 0.9;
    transform: scale(1.02);
}

.badge {
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
    padding: 11px 20px;
    background: rgba(21, 34, 104, 0.8);
    border-radius: 0;
    font-size: 16px;
}


.thumbnail-link .badge2 {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
}


.badge2 {
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
    padding: 5px 20px;
    background: rgba(238,119,67, 1);
    border-radius: 0;
    font-size: 16px;
}

.vetrina-item {
    padding: 10px;
    background: #fff;
    margin: 0 3px 40px;
}

.vetrina-item > div {
    padding: 10px 20px 20px;
}

.vetrina-item h3 {
    margin: 0 0 13px 0;
}

.vetrina-item p {
    margin-bottom: 7px;
    line-height: 1.7;
}

.vetrina-item .button,
.vetrina-item .border-button {
    font-size: 12px;
    width: 49%;
    letter-spacing: 0.5px;
    padding: 8px 0px;
}

.price {
    color: #ee7743;
    font-weight: 700;
    font-size: 22px;
}

.spec {
    font-size: 14px;
}

.pagination a {
    display: block;
    height: 42px;
    width: 42px;
    text-align: center;
    margin: 0 5px;
    border: 1px solid #d5d8eb;
    border-radius: 3px;
    line-height: 42px;
    color: #4d4d4d;
}

.pagination a:hover {
    border: 1px solid #ee7743;
}

.pagination a.current {
    border: 1px solid #ee7743;
    background: #ee7743;
    color: #fff;
}

.pagination a.prev {
    margin-right: 25px;
    margin-left: 0;
}

.pagination a.next {
    margin-left: 25px;
}

/********* blog ********/

.blog {
    padding-bottom: 85px;
}

.date-box {
    position: absolute;
    z-index: 5;
    left: 0;
    top: 9px;
    color: #fff;
    display: block;
    padding: 3px 18px;
    background: rgba(21, 34, 104, 0.8);
    font-size: 14px;
    font-weight: 700;
}

.blog-item {
    padding: 10px 10px 0;
    border: 1px solid #e7e9f4;
    margin: 0 3px 30px;
}
.blog-item .img-fluid {
    width: 100%;
    height: 250px;
    object-fit: cover;
    object-position: center;
    display: block;
}

.blog-item h3 {
    padding: 10px 20px;
}

/***********************/


.bg-section {
    padding: 160px 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
}

.h1 {
    font-size: 56px;
    line-height: 1.26;
    font-weight: 700;
    color: #fff;
    text-transform: uppercase;
    margin-bottom: 23px;
    display: block;
    letter-spacing: 1px;
}



/***************/

.chronology {
    padding-bottom: 85px;
}

.chronology-item {
    padding: 8px;
    border: 1px solid #e7e9f4;
    margin-bottom: 30px;
    align-items: flex-start;
}

.chronology-item img {
    max-width: 150px;
    margin-right: 18px;
}

.chronology-item .price {
    font-size: 18px;
    line-height: 1.5;
}

.chronology-item h4 {
    margin-bottom: 7px;
}

.chronology-item:hover img {
    opacity: 0.9;
}

.chronology-item:hover h4 {
    color: #000;
}


/********* links *********/

.places-links {
    padding: 110px 0 110px;
}

.places-links a {
    color: #ee7743;
    display: block;
    line-height: 1.8;
}


.places-links a span {
    color: #4d4d4d;
    margin-left: 5px;
}


.places-links a:hover {
    color: #000;
}


/**************/


.sale-rent {
    padding: 100px 0;
}

.sale-rent .nav-tabs .nav-item {
    margin: 0 15px -2px;
}

.sale-rent .nav-tabs .nav-link {
    padding: 5px 30px 18px;
    color: #2b3989;
    font-weight: 700;
    font-size: 18px;
    text-transform: uppercase;
    border: none;
    border-bottom: 4px solid transparent;
    background-color: transparent;
}


.sale-rent .nav-tabs {
    justify-content: center;
    margin-bottom: 35px;
}

.sale-rent .nav-tabs .nav-link.active {
    color: #ee7743;
    border-bottom: 4px solid #ee7743;
    background-color: transparent;
}

.sale-rent-list {
    margin-right: 80px;
}

.sale-rent-list ul {
    list-style: none;
    margin: 0 0 10px 0;
    padding: 0;
}

.sale-rent-list ul li a {
    line-height: 1.9;
    color: #4d4d4d;
}

.sale-rent-list ul li a:hover {
    color: #000;
}

.sale-rent-list strong {
    display: block;
    margin-bottom: 10px;
    color: #2b3989;
}

.sale-rent-list p {
    margin-bottom: 10px;
}

/********* footer *********/

footer {
    padding: 50px 0 0 0;
    background: #fff;
}

.footer-logo {
    display: block;
    margin-bottom: 35px;
}

.footer-widget-row a,
.footer-widget-row p {
    font-size: 14px;
    line-height: 1.85;
    color: #4d4d4d;
}

.footer-widget-row p {
    margin-bottom: 15px;
}

.footer-widget-row {
    padding-bottom: 50px;
}

.copyright p {
    margin-bottom: 0;
}

.social-list {
    
    list-style: none;
    padding: 0;
}

.social-list a {
    color: #ee7743;
    margin: 0 18px 0 0;
    font-size: 16px;
}

.social-list a:hover {
    color: #000;
}

.newsletter-form label {
    font-size: 14px;
}

.newsletter-form .form-control {
    background-color: #eff1f7;
    border: 1px solid #eff1f7;
}

.form-control:focus {
    color: #909090;
    background-color: #eff1f7;
    border-color: #eff1f7;
    outline: 0;
    box-shadow: none;
}

.newsletter-form input[type=email].form-control {
    border-radius: 3px 0 0 3px;
    width: calc(100% - 100px);
}

.newsletter-form button[type=submit] {
    height: 48px;
    border: 1px solid #ee7743;
    border-radius: 0 3px 3px 0;
    width: 100px;
    padding: 8px 0;
}


.custom-control-label::before {
    left: -2.2rem;
    width: 1.5rem;
    height: 1.5rem;
    background-color: #eff1f7;
    border: #eff1f7 solid 1px;
    border-radius: 2px;
}

.custom-control-label::after {
    left: -2.2rem;
    width: 1.5rem;
    height: 1.5rem;
    background-color: #eff1f7;
    border: #eff1f7 solid 1px;
    border-radius: 2px;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
    background-color: #ee7742;
}

.custom-control.custom-checkbox {
    padding-left: 2rem;
}




/*******************************/

.side-navi {
    width: 330px;
    margin-right: 45px;
    margin-top: 8px;
}

.side-navi-list {
    padding: 0;
    list-style: none;
    border-bottom: 1px solid #e7e9f4;
    border-left: 1px solid #e7e9f4;
}

.side-navi-list .selected a {
    background: #ee7743;
    color: #fff;
}

.side-navi-list li {
    overflow: hidden;
    width: 200%;
    position: relative;
}

.side-navi-list li a {
    width: 50%;
    position: relative;
    z-index: 1;
    display: block;
    padding: 23px 20px 23px 25px;
    border-top: 1px solid #e7e9f4;
    border-right: 1px solid #e7e9f4;
    color: #4d4d4d;
    line-height: 1.625;
}

.side-navi-list li a:hover {
    background: #ee7743;
    color: #fff;
}

.side-navi-list .selected a:before {
    content: '';
    height: 100%;
    width: 20px;
    background: url(../images/2.png) no-repeat 0 0;
    background-size: 20px 100%;
    position: absolute;
    top: 0;
    right: -20px;
}






img.img-left {
    float: left;
    margin: 10px 40px 30px 0;
}

img.img-right {
    float: right;
    margin: 10px 0 30px 40px;
}


/*******************/


.breadcrumbs {
    padding: 16px 0;
    border-bottom: 1px solid #e3e3e3;
}

.breadcrumbs-navi *,
.breadcrumbs-navi {
    color: #4d4d4d;
}


.breadcrumbs-navi span {
    margin: 0 12px;

}

.page-header h1 {
    font-size: 36px;
    text-transform: uppercase;
}

.page-header {
    margin-top: 93px;
    overflow: hidden;
}

.generic-page {
    padding: 23px 0 70px;
    overflow: hidden;
}

.generic-page-inner h1 {
    font-size: 28px;
    line-height: 1.3;
    margin: 0 0 22px 0;
    font-weight: 700;
}

.generic-page-inner h2 {
    font-size: 22px;
    line-height: 1.35;
    margin: 28px 0 12px 0;
    font-weight: 700;
}

.generic-page-inner h3 {
    font-size: 20px;
    margin: 0 0 34px 0;
}

.generic-page-inner ul {
    list-style: none;
    padding: 0;
}

.generic-page-inner ul li {
    position: relative;
    padding-left: 35px;
}

.generic-page-inner ul li:before {
    position: absolute;
    content: '';
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #ee7743;
    left: 0;
    top: 13px;
}


/*********************/

.section-title h2 {
    margin-bottom: 22px;
}

.section-title {
    margin-bottom: 10px;
    overflow: hidden;
}

.contact-section {
    padding: 100px 0;
    background: #f7f8fd;
}

.contatti-form form .form-control {
    border: 1px solid #e9eaf2;
    margin-bottom: 20px;
}

.contatti-form form textarea {
    height: 183px;
}

.contatti-form .button {
    padding: 8px 31px;
}


.contatti-form form .captcha {
    margin-bottom: 20px;
}

.contatti-form form input::-webkit-input-placeholder {
    color: #909090;
}

.contatti-form form input::-moz-placeholder {
    color: #909090;
}

.contatti-form form input:-ms-input-placeholder {
    color: #909090;
}

.contatti-form form input:-moz-placeholder {
    color: #909090;
}

.contatti-form form textarea::-webkit-input-placeholder {
    color: #909090;
}

.contatti-form form textarea::-moz-placeholder {
    color: #909090;
}

.contatti-form form textarea:-ms-input-placeholder {
    color: #909090;
}

.contatti-form form textarea:-moz-placeholder {
    color: #909090;
}

.contatti-form form .checkbox {
    position: absolute;
    z-index: -1;
    opacity: 0;
    margin: 10px 0 0 20px;
    width: 0 !important;
}

.contatti-form form .checkbox + label {
    position: relative;
    padding: 0 0 0 40px;
    cursor: pointer;
    color: #898B8D;
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 15px;
}

.contatti-form form .checkbox + label:before {
    content: '';
    position: absolute;
    top: -3px;
    left: 0;
    border-radius: 3px;
    background: #fff;
    border: 1px solid #e9eaf2;
    width: 28px;
    height: 28px;
    transition: .2s;
}

.contatti-form form .checkbox:checked + label:after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f00c";
    position: absolute;
    top: 1px;
    left: 8px;
    width: 22px;
    height: 22px;
    color: #ee7743;
    font-size: 14px;
}

.contatti-form form label a {
    color: #CA323F;
}

.contatti-form .form-control:focus {
    background: #fbfbfb;
    box-shadow: none;
    border-color: #ee7742;
}




/**** blog ***/

.blog-page {
    border-bottom: 2px solid #d7d9e3;
    padding-bottom: 60px;
    padding-top: 30px;
}

.category-list {
    list-style: none;
    margin-bottom: 50px;
    border-bottom: 1px solid #e3e3e3;
    padding: 0 15px;
}

.category-list > li {
    position: relative;
}

.category-list > li > a {
    padding: 0 15px 25px;
    text-transform: uppercase;
    font-weight: 700;
    display: block;
    margin-bottom: -1px;
    position: relative;
    white-space: nowrap;
}

.category-list li.has-submenu > a:after {
    right: 0;
    top: 11px;
    border-bottom: 2px solid #ee7742;
    border-left: 2px solid #ee7742;
}

.category-list .submenu {
    top: 75%;
    left: auto;
    right: -15px;
    width: 145px;
}

.category-list li a:hover {
    color: #ee7743;
}

.category-list li.current a {
    color: #ee7743;
    border-bottom: 2px solid #2b3989;
}

.blog-pagi-row {
    margin: 10px 3px 40px;
}

.date-sort > div {
    width: 125px;
    height: 43px;
    border: 1px solid #d5d8eb;
    border-radius: 3px;
    position: relative;
}

.date-sort > div:last-child {
    margin-left: 20px;
}


.date-sort > div .dropdown-toggle {
    color: #909090;
    font-size: 14px;
    display: block;
    line-height: 42px;
    padding: 0 15px;
    cursor: pointer;
}

.date-sort .dropdown-toggle::after {
    position: absolute;
    top: 48%;
    right: 15px;
    color: #ee7743;
}

.category-list .dropdown-menu,
.date-sort .dropdown-menu {
    padding: 5px 15px;
    box-shadow: rgba(4, 4, 4, 0.13) 5px 10px 18px;
    min-width: 125px;
}

.category-list .dropdown-menu a,
.date-sort .dropdown-menu a {
    color: #4d4d4d;
    cursor: pointer;
}

.category-list .dropdown-menu a:hover,
.date-sort .dropdown-menu a:hover {
    color: #ee7743;
}


/******************************/


.page-banner {
    padding: 80px 0;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    background-image: url(../images/page-header-riviera.jpg);
    background-image: image-set(url("../images/page-header-riviera-m.avif") type("image/avif"), url("../images/page-header-riviera.webp") type("image/webp"), url("../images/page-header-riviera.jpg") type("image/jpeg"));
}

@media (min-width: 900px) {
    .page-banner {
        background-image: url(../images/page-header-riviera.jpg);
        background-image: image-set(url("../images/page-header-riviera.avif") type("image/avif"), url("../images/page-header-riviera.webp") type("image/webp"), url("../images/page-header-riviera.jpg") type("image/jpeg"));
    }
}


/************ search-block ********/

.form-control {
    height: 48px;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.5;
    color: #909090;
    background-color: #fff;
    border: 1px solid #fff;
}

.home-first-screen .search-block {
    position: absolute;
    bottom: 0;
    width: 100%;
    left: 0;
}

.search-block-inner {
    background: rgba(43, 57, 137, 0.9);
    padding: 30px;
}

.search-block .nav-tabs .nav-item.show .nav-link,
.search-block .nav-tabs .nav-link.active {
    color: #fff;
    background-color: #172367;
    border-color: transparent;
}

.search-block .nav-tabs .nav-item.tab-lux {
    margin-left: 90px;
}

.search-block .nav-tabs .nav-item:last-child {
    margin-left: 0;
}


.search-block .nav-tabs .nav-link {
    color: #fff;
    text-transform: uppercase;
    border: none;
    font-size: 14px;
    font-weight: 700;
    padding: .5rem 25px;
    letter-spacing: 0.5px;
}

.search-block .nav-tabs {
    border-bottom: none;
}

.search-block-inner .tab-content {
    position: relative;
}

.im-searchBar {
    color: #666;
    display: flex;
    position: relative;
    flex-direction: row;
    flex-wrap: wrap;
    border-radius: 2px;
    outline: none;
    z-index: 1;
}

.im-searchBar__item {
    flex: 0 0 25%;
    max-width: 25%;
    background-color: #fff;
    padding: 0;
    border-left: 1px solid #e6e6e6;
}

.im-searchBar__item--location {
    flex: 1 1 25%;
    order: 0;
    max-width: none;
    background-color: #fff;
    padding: 0;
}

.im-searchBar__item--location .form-control {
    border-radius: 0 0 3px 0;
}


.im-searchBar__button {
    background-color: #ee7743;
    color: #fff;
    flex-basis: 115px;
    height: 48px;
    flex-grow: 0;
    flex-shrink: 0;
    align-self: flex-end;
    padding: 0;
    border-radius: 0 3px 3px 0;
    white-space: nowrap;
    border: 1px solid #ee7743;
}

.btn-luxury-collection {
    background: #c9a44c;
    color: #fff;
    font-weight: 700;
    font-size: 12px;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    height: 30px;
    padding: 0 14px;
    border-radius: 3px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    flex: 0 0 auto;
    margin-left: auto;
    text-decoration: none;
}

.btn-luxury-collection:hover,
.btn-luxury-collection:focus {
    color: #fff;
    background: #b8933f;
    text-decoration: none;
}

.btn-luxury-collection .lux-gem {
    width: 13px;
    height: 13px;
    margin-right: 8px;
    flex: 0 0 auto;
    display: block;
}

.im-searchBar__secondaryFilters {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    justify-content: stretch;
    max-width: 100%;
    flex: 1 0 100%;
    flex-direction: row;
    order: 4;
    width: 100%;
    min-height: .8rem;
    margin-top: 8px;
    min-height: 30px;
}


.im-searchBar__secondaryFilters .select-custom, .im-searchBar__secondaryFilters .select-customx2 {
    margin-right: 8px;
}


.select-custom, .select-customx2 {
    position: relative;
}

.select-custom input,
.select-custom select {
    background: #4d5aa6;
    color: #fff;
    border-radius: 3px;
    border: none;
    padding: 5px 8px;
    font-weight: 300;
    font-size: 14px;
    width: 120px;
    height: 31px;
    line-height: 1;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.select-customx2 input,
.select-customx2 select {
    background: #4d5aa6;
    color: #fff;
    border-radius: 3px;
    border: none;
    padding: 5px 8px;
    font-weight: 300;
    font-size: 14px;
    width: 240px;
    height: 31px;
    line-height: 1;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}


.select-custom.select-transparent select, .select-customx2.select-transparent select {
    background: transparent;
}

.select-custom:after, .select-customx2:after {
    content: '';
    display: block;
    width: 7px;
    height: 7px;
    position: absolute;
    right: 10px;
    top: 11px;
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
    transform: rotate(-45deg);
}

.select-custom input::-webkit-input-placeholder, .select-customx2 input::-webkit-input-placeholder {
    color: #fff;
}

.select-custom input::-moz-placeholder,.select-customx2 input::-moz-placeholder {
    color: #fff;
}

.select-custom input:-ms-input-placeholder , .select-customx2 input:-ms-input-placeholder {
    color: #fff;
}

.select-custom input:-moz-placeholder, .select-customx2 input:-moz-placeholder {
    color: #fff;
}


.im-searchBar__multiSelectLabel {
    height: 100%;

    position: relative;
}

.white-select input,
.white-select select {
    border-radius: 3px;
    border: none;
    width: 100%;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 7px 28px;
}

.im-searchBar__multiSelectLabel:after {
    content: '';
    display: block;
    width: 8px;
    height: 8px;
    position: absolute;
    right: 20px;
    top: 18px;
    border-bottom: 2px solid #EE7750;
    border-left: 2px solid #EE7750;
    transform: rotate(-45deg);
}

.im-searchBar__multiSelectLabel .js-label {
    line-height: 34px;
    font-size: 14px;
}

.nd-rangeInput__control {
    background: #4d5aa6;
    padding: 0 40px 0 12px;
    border-radius: 3px;
    margin-right: 7px;
    height: 30px;
    cursor: pointer;
    position: relative;
}

.nd-rangeInput__control:after {
    content: '';
    display: block;
    width: 7px;
    height: 7px;
    position: absolute;
    right: 12px;
    top: 10px;
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
    transform: rotate(-45deg);
}

.searchByCode {
    position: absolute;
    bottom: 0;
    left: 270px;
    display: flex;
    z-index: 5;
}

.searchByCode-row {
    position: absolute;
    bottom: 0;
    left: 270px;
    right: 0;
    display: flex;
    align-items: center;
    gap: 8px;
    z-index: 5;
}

.searchByCode-row .searchByCode {
    position: relative;
    left: auto;
    bottom: auto;
    top: auto;
}

.searchByCode label {
    color: #fff;
    line-height: 30px;
    font-size: 14px;
    margin-right: 10px;
    margin-bottom: 0;
}

.searchByCode input[type="text"] {
    background: #4d5aa6;
    border: none;
    border-radius: 3px 0 0 3px;
    height: 30px;
    padding: 0 10px;
    color: #fff;
    font-weight: 300;
}

.searchByCode .button {
    font-size: 12px;
    padding: 0 25px;
    height: 30px;
    border: none;
    border-radius: 0 3px 3px 0;
}

/****/

#js-ricerca-avanzata,
.btn-ricerca-avanzata {
    background: #4d5aa6;
    color: #fff;
    cursor: pointer;
    font-size: 14px;
    font-weight: 300;
    line-height: 31px;
    height: 31px;
    width: auto;
    white-space: nowrap;
    margin: 0 8px 0 0;
    flex: 0 0 auto;
    border: none;
    border-radius: 3px;
    padding: 0 28px 0 12px;
    position: relative;
    -webkit-appearance: none;
    appearance: none;
}

.btn-ricerca-avanzata:after {
    content: '';
    display: block;
    width: 7px;
    height: 7px;
    position: absolute;
    right: 10px;
    top: 11px;
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
    transform: rotate(-45deg);
}

.btn-ricerca-avanzata.is-open:after {
    top: 13px;
    transform: rotate(135deg);
}

.addition-filter {
    order: 5;
    width: 100%;
    justify-content: space-between;
    border-top: 1px solid #475091;
    padding-top: 18px;
    margin-top: 18px;
    display: none;
}

.addition-filter.visibl {
    display: flex;
}

.search-subpages .im-searchBar__secondaryFilters {
    justify-content: space-between;
}

.search-subpages .im-searchBar__secondaryFilters > div {
    flex: 1 1 100%;
    display: flex;
}

.search-subpages .im-searchBar__secondaryFilters .select-transparent select {
    width: 100%;
}

.search-subpages .im-searchBar__secondaryFilters .select-transparent {
    flex: 0 0 150px;
    margin: 0;
}

.search-subpages .searchByCode-row {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
    margin-top: 14px;
    width: 100%;
}

.search-subpages .searchByCode {
    bottom: auto;
    top: auto;
}

.search-subpages .inner-search-card {
    display: flex;
    align-items: flex-end;
    gap: 12px;
    flex-wrap: wrap;
    margin: 12px 0 0;
}

.search-subpages .inner-search-card .home-hero-field {
    flex: 1 1 180px;
    min-width: 0;
    margin: 0;
}

.search-subpages .inner-search-card .home-hero-submit {
    flex: 0 0 auto;
    height: 48px;
}

.search-subpages .inner-search-card .addition-filter {
    flex: 1 1 100%;
    width: 100%;
    margin-top: 0;
    padding-top: 0;
    border-top: 0;
}

.search-subpages .search-block-inner {
    padding: 22px;
}

.search-subpages .nav-tabs {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 2px 6px;
    margin: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.28);
}

.search-subpages .nav-tabs .nav-item,
.search-subpages .nav-tabs .nav-item.tab-lux,
.search-subpages .nav-tabs .nav-item:last-child {
    margin: 0;
}

.search-subpages .nav-tabs .nav-link {
    background: transparent;
    border-radius: 0;
    padding: 10px 12px 8px;
    border-bottom: 2px solid transparent;
}

.search-subpages .nav-tabs .nav-link.active {
    background: #172367;
    border-bottom-color: #fff;
}

.search-subpages .inner-search-stack {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 12px;
    width: 100%;
    margin-top: 22px;
}

.search-subpages .inner-search-stack > form {
    display: contents;
}

.search-subpages .inner-search-stack .searchByCode-row {
    order: 5;
    flex: 1 1 100%;
    margin-top: 0;
}

.search-subpages .searchByCode {
    position: relative;
    flex: 0 1 210px;
}

.search-subpages .searchByCode input[type="text"] {
    width: 100%;
    border-radius: 3px;
    padding-right: 32px;
    color: #fff;
}

.search-subpages .searchByCode input[type="text"]::placeholder {
    color: #fff;
    opacity: 1;
}

.search-subpages .searchByCode .rif-go {
    position: absolute;
    top: 0;
    right: 0;
    width: 30px;
    height: 30px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #fff;
    cursor: pointer;
}

.search-subpages .searchByCode .rif-go svg {
    width: 16px;
    height: 16px;
    display: block;
    margin: 0 auto;
}

.search-subpages .inner-search-stack .addition-filter {
    order: 6;
}

@media (min-width: 768px) {
    .search-subpages .addition-filter {
        justify-content: flex-start;
        align-items: center;
        gap: 16px 28px;
    }

    .search-subpages .addition-filter-checkbox {
        margin-right: 0;
    }

    .search-subpages .addition-filter-selects {
        flex: 0 0 auto;
        justify-content: flex-start;
        gap: 16px;
    }

    .search-subpages .addition-filter-selects .select-custom {
        width: auto;
    }

    .search-subpages .addition-filter-selects .select-custom select {
        width: 180px;
    }
}

.addition-filter-checkbox {
    margin-right: 35px;
}

.addition-filter-selects {
    display: flex;
    justify-content: space-between;
    flex: 1 1 50%;
}

.addition-filter-selects .select-custom {
    width: 23%;
}

.addition-filter-selects .select-custom select {
    width: 100%;
}

.addition-filter-checkbox .checkbox {
    position: absolute;
    z-index: -1;
    opacity: 0;
    margin: 10px 0 0 20px;
    width: 0 !important;
}

.addition-filter-checkbox .checkbox + label {
    position: relative;
    padding: 0 0 0 40px;
    cursor: pointer;
    font-size: 14px;
    color: #fff;
    line-height: 1.5;
    margin-bottom: 0;
}

.addition-filter-checkbox .checkbox + label:before {
    content: '';
    position: absolute;
    top: -3px;
    left: 0;
    border-radius: 3px;
    background: #4d5aa6;
    border: 1px solid #4d5aa6;
    width: 24px;
    height: 24px;
    transition: .2s;
}

.addition-filter-checkbox .checkbox:checked + label:after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f00c";
    position: absolute;
    top: 1px;
    left: 8px;
    width: 22px;
    height: 22px;
    color: #fff;
    font-size: 11px;
}

.description {
    overflow: hidden;
    padding: 40px 0 90px;
}

.appartamenti-links a {
    color: #ee7743;
}

.appartamenti-links a:hover {
    color: #000;
}


/****** one property ******/

.property-page {
    margin-top: 70px;
    margin-bottom: 90px;
}

.nav-tabs.property-tabs {
    border-bottom: none;
    background: #404fa3;
    margin-bottom: 40px;
}

.nav-tabs.property-tabs .nav-link {
    border: none;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-right: 1px solid #616db0;
    text-align: center;
    color: #fff;
    width: 70px;
    font-size: 14px;
}

.nav-tabs.property-tabs .nav-link i {
    font-size: 16px;
}

.nav-tabs.property-tabs .nav-link.active {
    background-color: #00aeff;
}

.nav-tabs.property-tabs .nav-item {
    margin-bottom: 0;
}


.single-carousel .slick-slide > div {
    height: 526px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.single-carousel {
    height: 526px;
}

.single-carousel .gallery-item {
    display: block;
    height: 100%;
}

.single-carousel .gallery-item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}



.property-title h1 {
    text-transform: uppercase;
    font-size: 26px;
    margin-bottom: 0;
    line-height: 1.2;
}

.property-title .button {
    font-size: 11px;
    line-height: 22px;
}

.property-title {
    margin-bottom: 10px;
}

.button.blue-button {
    background: #34aeff;
    border: 1px solid #34aeff;
    margin-right: 10px;
}

.button.blue-button:hover {
    background: #404fa3;
    border: 1px solid #404fa3;
    color: #fff;
}

.property-page-aside {
    background: #f7f8fd;
    max-width: 427px;
}


.property-page-aside.fixed-aside {
    position: fixed;
    top: 157px;
    left: 50%;
    margin-left: 213px;
    z-index: 5;
}

.property-info {
    background: #404fa3;
}

.features-list {
    background: #2b3989;
    padding: 15px 0;
}

.features-list ul {
    list-style: none;
    display: flex;
    padding: 0;
    justify-content: center;
    margin-bottom: 0;
}

.features-list ul li {
    color: #fff;
    padding: 0 15px;
    position: relative;
    line-height: 1.5;
    font-size: 18px;
}

.features-list ul li:before {
    position: absolute;
    top: 0;
    bottom: 0;
    right: -1px;
    height: calc(100% - .5em);
    margin: auto;
    border-left: 1px solid #6470b4;
    content: "";
}

.features-list ul li:last-child:before {
    content: none;
}

.property-info .price {
    color: #fff;
    font-size: 36px;
    padding: 5px 0;
}

.contact-info-aside strong {
    display: block;
    color: #2b3989;
    text-transform: uppercase;
}

.contact-info-aside span a {
    color: #4d4d4d;
}

.contact-info-aside .sede-sep {
    display: block;
    color: #9a9a9a;
    line-height: 1;
    margin: 4px 0;
    font-weight: 400;
}

.contact-info-aside {
    padding: 30px;
}

.contact-info-aside .side-logo {
    margin-bottom: 15px;
    display: inline-block;
}

.contact-info-aside .side-logo img {
    max-width: 110px;
}

.contact-info-aside .button {
    width: 260px;
    margin-bottom: 10px;
    padding: 8px 0;
    font-size: 14px;
}

.contact-info-aside .button i {
    margin-right: 10px;
}

.whatsapp {
    color: #4bde66;
    font-size: 40px;
    margin: 0 8px;
}

.telegram {
    color: #3ba9d8;
    font-size: 40px;
    margin: 0 8px;
}

.property-description {
    padding-right: 40px;
}

.scheda-altre-case {
    margin: 18px 0 22px;
}

.scheda-altre-case a {
    font-weight: 600;
}

.property-table {
    border: 1px solid #e5e5e5;
    margin-bottom: 30px;
}

.property-table-title {
    border-bottom: 1px solid #e5e5e5;
    padding: 10px 30px;
    color: #2b3989;
    font-size: 20px;
    font-weight: 700;
}

.property-table-body {
    padding: 20px 30px;
    display: flex;
}

.property-table-body ul {
    list-style: none;
    padding: 0;
    margin: 0;
    width: 50%;
}

.property-page-aside .contatti-form {
    padding: 0 40px 40px;
}

.property-page-aside .contatti-form h4 {
    text-align: center;
}

.property-page-aside .contatti-form p {
    font-size: 14px;
    line-height: 1.4;
    font-weight: 500;
}

.property-page-aside .contatti-form form .checkbox + label {
    color: #ee7743;
}

.property-page-aside .contatti-form .button {
    width: 100%;
    margin-top: 20px;
}

.related-objects {
    border-bottom: 2px solid #d7d9e3;
    padding-bottom: 40px;
}

.related-objects .badge {
    background: rgba(0, 174, 255, 0.8);
}

.video-wrapper {
    position: relative;
    padding-bottom: 56.25%;
    /* 16:9 */
    height: 0;
}

.video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.map {
    margin-bottom: -10px;
}



/********* modal **********/

.modal-header {
    background: #2b3989;
    color: #fff;
    line-height: 1.4;
    padding: 20px 30px;
}

.modal-title {
    font-size: 22px;
    color: #fff;
}

.modal-header .close {
    font-weight: 300;
    color: #fff;
    opacity: 1;
    position: absolute;
    right: 30px;
    top: 20px;
}

.modal-body {
    padding: 20px 30px;
}

.modal-body .contatti-form p {
    font-size: 14px;
    line-height: 1.4;
    font-weight: 500;
    margin-bottom: 15px;
}

.modal-body .contatti-form form textarea {
    height: 100px;
}

.modal-body .contatti-form form .form-control {
    margin-bottom: 15px;
    height: 40px;
}

.modal-body .contatti-form .button {
    padding: 4px 31px;
    font-size: 14px;
}

.bootstrap-datetimepicker-widget table thead tr:first-child th {
    background: rgb(172, 182, 234, 0.2);
    text-transform: uppercase;
}

.bootstrap-datetimepicker-widget .table-condensed > tbody > tr > td,
.bootstrap-datetimepicker-widget .table-condensed > tbody > tr > th,
.bootstrap-datetimepicker-widget .table-condensed > tfoot > tr > td,
.bootstrap-datetimepicker-widget .table-condensed > tfoot > tr > th,
.bootstrap-datetimepicker-widget .table-condensed > thead > tr > td,
.bootstrap-datetimepicker-widget .table-condensed > thead > tr > th {
    padding: 10px;
}

.bootstrap-datetimepicker-widget table td.active,
.bootstrap-datetimepicker-widget table td.active:hover {
    background-color: #ee7742;
}

.bootstrap-datetimepicker-widget table th.prev,
.bootstrap-datetimepicker-widget table th.next {
    position: relative;
}

.bootstrap-datetimepicker-widget table th.next::after {
    content: '>';
    clip: auto;
    width: 16px;
    height: 16px;
    top: 10px;
    left: 13px;
    font-size: 18px;
}

.bootstrap-datetimepicker-widget table th.prev::after {
    content: '<';
    clip: auto;
    width: 16px;
    height: 16px;
    top: 10px;
    right: 13px;
    font-size: 18px;
}

/***************/

.share-link {
    display: block;
    width: 100%;
    padding: 10px;
    border-bottom: 1px solid #f1f1f1;
}

.share-link i {
    font-size: 20px;
    margin-right: 15px;
    width: 17px;
}

.property-title .ya-share2 {
    display: inline-block;
    background: #34aeff;
    border-radius: 5px;
    margin-right: 10px;
}

.property-title .ya-share2__badge ya-share2__badge_more {
    display: none;
}

.property-title .ya-share2__link ya-share2__link_more ya-share2__link_more-button-type_long .ya-share2__title {
    color: #fff;
    text-transform: uppercase;
}

.property-title .ya-share2__item_more.ya-share2__item_has-pretty-view .ya-share2__badge_more {
    display: none;
}

.property-title .ya-share2__item_more.ya-share2__item_has-pretty-view .ya-share2__link_more {
    border: none;
}

.property-title .ya-share2__container_size_l .ya-share2__item_more.ya-share2__item_has-pretty-view .ya-share2__link_more {
    padding: 9px 32px;
    font-size: 11px;
}

.ya-share2__item_more.ya-share2__item_has-pretty-view .ya-share2__link_more:not(.ya-share2__link_more-button-type_short) .ya-share2__title {
    margin-left: 0;
    line-height: 22px;
    font-weight: 700;
    letter-spacing: 1px;
    color: #fff;
    text-transform: uppercase;
}

.ya-share2__container_size_l .ya-share2__popup:not(.ya-share2__popup_mobile) {
    padding: 15px;
}

.ya-share2__container_size_l .ya-share2__popup:not(.ya-share2__popup_mobile) > :last-child:not(:empty):not(.ya-share2__copied-tooltip) {
    column-count: 2;
}

.ya-share2__container_size_l .ya-share2__popup:not(.ya-share2__popup_mobile) .ya-share2__item {
    margin-bottom: 15px;
}

.hleft{
		text-align:left;
	}
	
	.generic-page-inner .img-left{
		float:right !important;
		margin-left:30px;
		margin-right:0px;
		padding-right:0px;
	}
	
	
	
.nopadplist{
	padding-top:30px !Important;
}

.nopadplist2{
	padding-top:0px !Important;
}

.maintitle{max-width:1220px;margin:auto !important;}

/*autocomplete*/
.text-field {
    -moz-box-sizing: border-box;
    border: 1px solid #EEEEEE;
    font-family: Arial,sans-serif;
    font-size: 0.73684em;
    font-weight: 600;
    height: 37px;
    margin: 0;
    padding: 5px;
    width: 100%;
}

.autocomplete-suggestions {
	
	max-height:300px !important;
	overflow-y:scroll !important;
	background:red;
}


.autocomplete-suggestion {
    overflow: hidden;
    padding: 2px 5px;
    white-space: nowrap;
	background:#fff;
	cursor:pointer;	
}
.autocomplete-suggestions strong {
    color: #3399FF;
    font-weight: normal;
}
.autocomplete-selected{
  background:#F0F0F0;
}

.autocomplete-suggestions { border: 1px solid #999; background: #FFF; overflow: auto; }
.autocomplete-suggestion { padding: 2px 5px; white-space: nowrap; overflow: hidden; }
.autocomplete-selected { background: #F0F0F0; }
.autocomplete-suggestions strong { font-weight: normal; color: #3399FF; }
.autocomplete-group { padding: 2px 5px; }
.autocomplete-group strong { display: block; border-bottom: 1px solid #000; }

#query:focus,#query2:focus {

    background-color: #ffffff;

}

.portaform360{
	width:100%;
	height:100%;
	height:526px;
	background:linear-gradient(rgba(255,255,255,.5), rgba(255,255,255,.7)), url("/images/bottom.jpg") no-repeat center center;
	position: relative !important;
	display: flex;
  justify-content: center;
  align-items: center;
}


.portaform360 form{
	width:100%;
	text-align:center;	
}

.passfield{height:50px;border-radius:5px;border:2px dashed #d3d3d3 !important;padding-left:8px;padding-right:8px;font-size:20px;font-weight:bold;color:#00aeff;margin-top:14px}

.title360vi{font-size:28px;}
.errorpw360{color:red;}

span.justify{
	display:block;text-align:justify !important;
}

span.left{
	display:block;text-align:left !important;
}

span.right{
	display:block;text-align:right !important;
}

span.center{
	display:block;text-align:center !important;
}

.single-carousel-nav, .single-carousel-panorama-nav{
	height:155px;
	background:#263271;
	padding-top:10px;
	padding-left:5px;
	padding-right:5px;
	
	overflow:hidden !important;
}



.navig{
	margin-left:5px !important;
	margin-right:5px !important;
	

	text-align:center;
	color:#fff;
	line-height:22px;

	cursor:pointer;
}

.captionelement{
	padding-top:5px;

}

.navig{
	opacity: 0.6;
}

.slick-current{
	opacity: 1;
}

.navig:hover{
	
}

.panoview {
	width: 100%;
	height: 530px;
  }
  .psv-navbar{
	  padding-bottom:12px !important
  }
  .psv-button{
	  padding-bottom:24px !important;
  }
			  
			  
@media all and (max-width: 480px) {
	.single-carousel-nav, .single-carousel-panorama-nav{
		height:200px;
		padding-top:20px;
		padding-bottom:20px;
		border-top:6px solid white;
		border-bottom:4px solid white;
		color:#000 !important;
	}
	
	.panoview{height:330px !important}
}

@media all and (max-width: 600px) and not (display-mode: fullscreen) {
	.slick-prev{display:none !Important;}
	.slick-next{display:none !Important;}
}


.martop100{margin-top:188px !important}

.psv-download-button{
	display:none !Important
}







@media all and not (display-mode: fullscreen) {
	.panoview, #panorama{
		 width: 860px !important;
	}
	
	.panoview{
		 height: 550px !important;
	}
}


@media all and (max-width: 800px) {
	.panoview{
		/* width: 98vw !important;*/
		 height: 500px !important;
	}
	
	.fullscreener{
		display:none !important;
	}
	
	.grecaptcha-badge { 
		visibility: hidden;
	}
}






.fscreen{padding-top:6px;}
.psv-caption-content{margin-top:1px !important;font-weight:bold !important;float:right !important;margin-right:12px !Important}
.psv-caption-content{margin-top:8px !important;}

.aboutarea p{
	margin-bottom:8px;
}

.aboutarea p.scopric{
	margin-top:22px;
}

@media all and (max-width: 800px) {
	.passvisit{width:100px !important}
	.passricbut{margin-top:12px;}
}

#rif::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: white;
  opacity: 1; /* Firefox */
}

#rif:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: white;
}

#rif::-ms-input-placeholder { /* Microsoft Edge */
  color: white;
}

.generic-page-inner img{
	max-width:100% !important;
}

@media all and (max-width: 800px) {
	
	.generic-page-inner img{
		width:100% !important;
		margin-bottom:20px;
	}
}

@media all and (min-width: 801px) {
	
	.generic-page-inner img{
		
		margin-left:20px;
		margin-right:20px;
		margin-bottom:20px;
	}
}


@media all and (display-mode: fullscreen) {
	.panoview, #panorama{
		 width: 100vw !important;
		 height: 100vh !important;
	}
}

.grecaptcha-badge { 
    visibility: hidden;
}

@media all and (max-width: 1000px) {
	.nomob{display:none !important}
}
@media all and (min-width: 1001px) {
	.nodesk{display:none !important}
}

.social-list{

	min-width:100px;
	height:50px;
	
}

.social-list li{

	float:left;
	
	padding-left:15px;
	padding-right:15px;
	width:20px !important;
	min-width:20px !important;
	text-align:center !important;
}

.social-list li:last-child{
	padding-left:20px;
}

.ya-share2 a{
	padding-left:10px !important;padding-right:16px !important;
}

#orderinnerdiv{
	padding-top:20px;	
	padding-bottom:20px;	
	margin:auto !important;
	text-align:center !important;
}

#orderinnerdiv select{
	border:1px solid #d5d8eb;
	border-radius:4px;
	height:30px;
	line-height:30px;
	margin-left:12px;
	color:#4d4d4d;
	padding-left:8px;
	padding-right:28px;
	-moz-appearance:none; /* Firefox */
    -webkit-appearance:none; /* Safari and Chrome */
    appearance:none;
	background:url('/img/select-ico.png') no-repeat right+8px center
}

.footerapps a{
	font-size:30px !important;
	margin-left:0px;
	margin-right:9px;
	
}

.footerapps .whatsapp{
	color:#4bde66 !important;
}

.footerapps .telegram{
	color:#3ba9d8 !important;font-size:28px !important;
}

.footerapps .other{
	background:#ee7743 !important;color:#fff;font-size:15px !important;
	width:28px;height:28px;line-height:29px;display:inline-block;text-align:center;border-radius:18px;
}

.moveup{
	margin-top:-15px;
}


.vetrina-item .img-fluid{
	height:285px;
	min-height:285px;
	width:100%;
	object-fit:cover;
	object-position:center;
	display:block;
}
.vetrina-item .iconafeature img{
	width:32px;
	height:32px;
}

.pexpander{
	padding-bottom:10px;
	padding-top:15px;border-bottom:1px solid #8d8d8d;
}

.pexpander a{
	color:#4d4d4d;
}

/*new*/
.vetrina-item{
	border:5px solid rgba(238,119,67, 1);
	padding:0px;
	background:#e5e5e5;
}

.vetrina-item h3{
	text-align:center;
}

.vetrina-item p.except{
	text-align:justify;
}

.vetrina-item .badge{
	display:none;
}

.pcontn{
	padding:18px !Important;
}

.pcontn .spec{
	font-size:20px;
	font-weight:bold;
	color:#5d5d5d;
}

.vetrina-item .iconafeature{
	text-align:center;

}

.iconediv{
	margin-top:8px;
	margin-bottom:-2px !important;
	font-size:15px;
	min-height:70px;
}


.pcontn h3{
	height:23px !important;
	margin-bottom:8px !important;
	margin-top:-5px !important;
	overflow:hidden !important;
} 

.thumbnail-link{
	margin-bottom:-5px !important;
}

.badge2{background:#dd9833 !important;}

.banner-guida-wrap {
	padding: 0 0 10px;
	overflow: visible;
}
body.home .banner-guida-wrap {
	margin-top: -40px;
	margin-bottom: -30px;
	position: relative;
	z-index: 2;
}
.banner-guida-wrap-basso {
	padding: 10px 0 70px;
	margin-top: -20px;
	background: #f7f8fd;
}
.banner-guida {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	grid-template-areas: "cover copy cta";
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 0 32px;
	background: #2d3988;
	border-radius: 12px;
	padding: 36px 44px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.banner-guida-cover {
	grid-area: cover;
}
.banner-guida-cover img {
	width: 150px;
	height: 212px;
	object-fit: cover;
	border-radius: 4px;
	box-shadow: 0 12px 28px rgba(0,0,0,0.35);
	-webkit-transform: rotate(-3deg);
	transform: rotate(-3deg);
	display: block;
}
.banner-guida-copy {
	grid-area: copy;
	min-width: 0;
}
.banner-guida-title {
	margin: 0 0 12px;
	font-family: 'Roboto', sans-serif;
	font-size: 32px;
	line-height: 1.2;
	font-weight: 700;
	letter-spacing: 0;
	color: #fff;
	text-align: left;
}
.banner-guida-text {
	margin: 0;
	font-size: 17px;
	line-height: 1.45;
	font-weight: 400;
	color: #dfe3f2;
	text-align: left;
}
.banner-guida-cta {
	grid-area: cta;
}
.banner-guida-btn {
	background: #ee7845;
	color: #fff;
	text-decoration: none;
	font-weight: 700;
	font-size: 17px;
	line-height: 1.2;
	padding: 16px 28px;
	border-radius: 8px;
	display: inline-block;
	text-align: center;
	border: 1px solid #ee7845;
	letter-spacing: 0;
	text-transform: none;
	white-space: nowrap;
}
.banner-guida-btn svg {
	vertical-align: middle;
	margin-right: 8px;
	position: relative;
	top: -1px;
}
.banner-guida-btn:hover,
.banner-guida-btn:focus {
	background: #fff;
	color: #ee7845;
	text-decoration: none;
}
.banner-guida-basso {
	padding: 18px 28px;
	gap: 0 22px;
}
.banner-guida-basso .banner-guida-cover img {
	width: 72px;
	height: 102px;
}
.banner-guida-basso .banner-guida-title {
	font-size: 22px;
	margin: 0;
}
.banner-guida-basso .banner-guida-btn {
	font-size: 16px;
	padding: 12px 22px;
}

/* Tablet / finestra stretta: copertina a sinistra, testo e pulsante a destra */
@media (max-width: 1199px) {
	.banner-guida {
		grid-template-columns: auto minmax(0, 1fr);
		grid-template-areas:
			"cover copy"
			"cover cta";
		align-items: center;
		gap: 14px 24px;
		padding: 28px 28px;
	}
	.banner-guida-cover img {
		width: 120px;
		height: 170px;
	}
	.banner-guida-title {
		font-size: 24px;
		margin-bottom: 8px;
	}
	.banner-guida-text {
		font-size: 16px;
	}
	.banner-guida-cta {
		justify-self: start;
	}
	.banner-guida-btn {
		white-space: normal;
	}
	.banner-guida-basso {
		grid-template-columns: auto minmax(0, 1fr) auto;
		grid-template-areas: "cover copy cta";
		padding: 16px 20px;
		gap: 0 16px;
	}
	.banner-guida-basso .banner-guida-cover img {
		width: 64px;
		height: 90px;
	}
	.banner-guida-basso .banner-guida-title {
		font-size: 18px;
		line-height: 1.25;
	}
}

@media (max-width: 991px) {
	.banner-guida-basso {
		grid-template-columns: auto minmax(0, 1fr);
		grid-template-areas:
			"cover copy"
			"cta cta";
		gap: 12px 16px;
	}
	.banner-guida-basso .banner-guida-cta {
		justify-self: stretch;
	}
	.banner-guida-basso .banner-guida-btn {
		display: block;
		width: 100%;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
}

.contact-section-valutazione {
	padding-top: 30px;
	padding-bottom: 80px;
}
.form-valutazione select.form-control {
	height: 48px;
	color: #555;
	background: #fff;
	-webkit-appearance: menulist;
	appearance: menulist;
}