/* COLORS

BORDEAUX    :   #4c0505
LIGHT GRAY  :   #f7f7f6
GRAY        :   #a7a8a9
DARK GRAY   :   #616467

small   :   16px
medium  :   18px
normal  :   20px
h3      :   27px
h1      :   56px
button  :   21px

*/

/* @import url('https://fonts.googleapis.com/css?family=Montserrat:400,500'); */

/* @import url('https://fonts.googleapis.com/css?family=Caveat:400,700'); */

/* @import url("https://db.onlinewebfonts.com/c/0a6ee448d1bd65c56f6cf256a7c6f20a?family=Bahnschrift"); */

/* @import url('https://fonts.googleapis.com/css?family=Saira+Extra+Condensed:300,400,700&display=swap'); */

@import url('https://fonts.googleapis.com/css?family=Barlow+Condensed:400,600&display=swap');
@import url('https://fonts.googleapis.com/css?family=Barlow:400,700&display=swap');

/* @font-face {
font-family: "caviar_dreamsbold";
src: url('../fonts/caviardreams_bold-webfont.woff2') format('woff2'),
        url('../fonts/caviardreams_bold-webfont.woff') format('woff');
font-weight: normal;
font-style: normal;
} */

p {
    font-weight: 300;
}

div {
    font-weight: 300;
}

/*=================================================
IUBENDA BASE per BANNER FOOTER
=================================================*/

#iubenda {
background-color: #eee;
}
a {/* color: green; */}
.center {
margin-top: 100px;
}

/* cookie banner related styles below */

/***************************************************************************
// * Iubenda Cookie Solution                                               *
// *                                                                       *
// * (c) 2015 Iubenda srl <info@iubenda.com>                               *
// * All Rights Reserved.                                                  *
// *                                                                       *
// *************************************************************************
//
// CHANGELOG
// 0.0.1
// - first implementation of customizable css
*/

/*  GENERAL CLASS */
#iubenda-cs-banner{
/* ------ IMPORTANT NOTICE: don't change these values as
they may prevent the banner from properly showing. Some of these lines,
moreover (like z-index) will overwrite the configuration initialized
by the script you paste in your pages. To show the banner at the bottom
you can switch to "bottom: 0px !important;". Don't forget to put "slideDown"
to "false".
*/
bottom: 0px !important;
left: 0px !important;
position: fixed !important;
width: 100% !important;
z-index: 99999998 !important;
background-color: black;
/* ----------------- */
}

/*  CONTENT CLASS */
.iubenda-cs-content{
display:block;
margin:0 auto;
padding: 20px;
width:auto;
font-family: Helvetica,Arial,FreeSans,sans-serif;
font-size: 14px;
background: #616467;
color: #fff;
}
.iubenda-banner-content{

padding-right: 40px;
}

.iubenda-cs-rationale{
max-width: 900px; position:relative; margin: 0 auto;
}

/*   STYLE FOR TEXT INTERNAL BANNER */
.iubenda-banner-content > p {
font-family: Helvetica,Arial,FreeSans,sans-serif;
line-height: 1.5;
}

/*  CLOSE BUTTON. NOTICE: IMAGE FOR BUTTON NOT IMPLEMENTED YET */
.iubenda-cs-close-btn{
margin:0;
color: #616467;
text-decoration:none;
font-size:14px;
position: absolute;
top: 0;
right: 0;
border: none;
background:#fff;
line-height:25px;
height:25px;
width:40px;
text-align:center;
border-radius:3px;
}

/*  STYLE FOR TEXT LINK TO PRIVACY POLICY */
.iubenda-cs-cookie-policy-lnk{
text-decoration: underline;
color: #fff;
}




/*=================================================
IUBENDA CUSTOM
=================================================*/

#iubenda-cs-banner {
background: rgba(64, 65, 72, 0.7);
}
#iubenda-cs-banner .iubenda-cs-content {
padding: 10px !important;
background: #4c0505 !important;
}
#iubenda-cs-banner .iubenda-cs-content .iubenda-cs-rationale {
max-width: 2000px !important;
}
#iubenda-cs-banner .iubenda-cs-content .iubenda-cs-rationale .iubenda-cs-close-btn {font-size: 0;position: absolute;}

#iubenda-cs-banner .iubenda-cs-content .iubenda-cs-rationale .iubenda-cs-close-btn:before {

}

#iubenda-cs-banner .iubenda-cs-content .iubenda-cs-rationale .iubenda-cs-close-btn:before {content:"OK"; font-size:12px; display:block;}



#iubenda-cs-banner .iubenda-cs-content .iubenda-banner-content p:first-child {
display: none;
}
#iubenda-cs-banner .iubenda-cs-content .iubenda-banner-content p {
margin-bottom: 0;
margin-top: 0;
}

#iubenda-cs-banner .iubenda-cs-cookie-policy-lnk:hover{
color: #4c0505;
}

@media (max-width: 497px) {
#iubenda-cs-banner .iubenda-cs-content .iubenda-banner-content {
font-size:11px;
}
}







body {
font-family: 'Barlow', sans-serif;
color: #616467;
}

h1 {
font-family: 'Barlow Condensed', sans-serif;
}

h2 {
font-family: 'Barlow Condensed', sans-serif;
font-size: 40px;
color: #4c0505;
}

h3 {
font-size: 22px;
margin-bottom: 20px;
color: #616467;
font-weight: 600;
line-height: 28px
}

h4 {

}

h5 {

}

p {
font-size: 15px;
line-height: 26px;
margin-bottom: 20px;
}

li a,
p a {
color: #4c0505 !important;
text-decoration: underline;
}

li a:hover,
p a:hover {
color: #4c0505;
text-decoration: none;
}

ul b,
p b {
font-weight: 500;
color: #616467;
}

a {
}

a:hover {
}

a:visited {
}

a:focus {
}



/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {
}

/* Medium devices (tablets, less than 992px) */
@media (min-width: 991.98px) {
    .f-socials {
        margin-left: 22px !important;
    }
}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {
    h3 {
    font-size: 18px;
    margin-bottom: 20px;
    color: #616467;
    font-weight: 600;
    line-height: 24px
    }

    p {
    line-height: 22px;
    }

}

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
}


/*---------------------------------------------------------------------------
SECTIONS
---------------------------------------------------------------------------*/

.main-section {
padding: 100px 0;
position: relative;
}

.main-section.first-section {
margin-top: 80px;
}


.main-section.white > .separator:before {
background: #fff;
}

.main-section.gray > .separator:before {
background: #f7f7f7;
}

.main-section.white {
background: #fff;
}

.main-section.gray {
background: #f7f7f7;
}

.main-section.inverted {
background: #4c0505;
}

.main-section.separated {
padding: 50px;;
min-height: calc(100vh - 80px);
display: flex;
align-items: center;
}

#i-tuoi-agenti {
min-height: 0;
padding-top: 150px;
padding-bottom: 0;
}

.main-section .section-title {
text-align: center;
margin-bottom: 100px;
letter-spacing: 2px;
font-size: 56px;
}

.main-section .section-title span {
display: block;
font-family: 'Barlow Condensed', sans-serif;
font-size: 24px;
margin-bottom: 100px;
letter-spacing: 0px;
padding-top: 10px;
}

.main-section .text-item .section-title {
text-align: left;
margin-bottom: 30px;
letter-spacing: 2px;
}

#i-tuoi-agenti.main-section .section-title {
text-align: center;
margin-bottom: 0px;
letter-spacing: 2px;
}

.main-section.inverted .section-title {
color: #fff;
}

.main-section.bottomless {
padding-bottom: 0;
}

.content-flex {
display: flex;
justify-content: space-between;
flex-wrap:  nowrap;
align-items:  normal;
}

.content-flex.text-img .text-item {
padding-top: 0px;
flex-basis: 0;
flex-grow: 1;
flex-shrink: 1;
max-width: 700px;
}

.chi-siamo .content-flex.text-img > .text-item:first-child {
padding-right: 60px;
}

.content-flex.text-img .text-item .btn {
margin-top: 30px;
}

.content-flex.text-img .text-item p {
margin-bottom: 20px;
}

#i-tuoi-agenti .content-flex.text-img .text-item {
margin-top: 100px;
padding-bottom: 50px;
}

.content-flex.text-img .img-item {
width: 450px;
}

#chi-siamo .content-flex.text-img .img-item {
align-items: center;
display: flex;
}

#i-tuoi-agenti .content-flex.text-img .img-item {
align-self: flex-end;
width: 400px;
position: relative;
top: 100px;
}

.content-flex.text-img > .text-item:first-child {
padding-right: 30px;
}

.content-flex.text-img > .text-item.r-item {
text-align: right;
padding-left: 30px;
padding-right: 0;
}

.content-flex .img-item img {
width: 100%;
}

.icon-list {
font-size: 15px;
line-height: 22px;
list-style-type: none;
padding: 0;
margin: 0 0 0px 0;
}

.icon-list.light {
padding-left: 15px;
}

.icon-list li {
margin: 0 0 10px 0;
padding-left: 20px;
position: relative;
}

.icon-list.light li {
padding-left: 17px;
}

.icon-list li:before {
position: absolute;
content:"";
display: block;
width: 8px;
height: 8px;
left: 0;
top: 7px;
background-size: 100%;
background: #4c0505;
border-radius: 50%;
}

.icon-list.light li:before {
width: 6px;
height: 6px;
top: 9px
}

.order-list-alpha {margin-bottom: 0;position: relative;padding-left: 30px;}

.order-list-alpha span {position: absolute;left: 0;}

.order-list-number {position: relative;padding-left: 30px;}

.order-list-number span {position: absolute;left: 0;}


.indent-list {font-size: 15px;line-height: 26px;margin-top: -10px;padding-left: 25px;}

.indent-list li {
margin-bottom: 10px;
padding-left: 5px;
}

.indent-list.sub-list li {
position: relative;
list-style-type: none;
}

.indent-list.sub-list li span {position: absolute;left: -25px;top: 0;}

.cf-container {
text-align: center;
position: relative;
max-width: 700px;
margin: 0 auto;}

.cf-container .cf-step {
display:block;
color: #616467;
position: relative;
margin-bottom: 70px;
padding: 15px 15px 0 15px;
padding-top: 40px;
border: 2px solid #fff;
border-radius: 5px;
background: #ffffff;
box-shadow: 1px 1px 6px 0 rgba(0,0,0,.15);
}

.cf-container:before {
content: "";
display: block;
position: absolute;
top: 0;
bottom: 0;
width: 0px;
border: 1px dashed #fff;
left:50%;
z-index: 0;
transform: translateX(-50%);
}

.cf-container .cf-step:nth-child(4):before {
display: none;
}

.cf-container .cf-step .cf-number {
position: absolute;
left: 50%;
top: 0;
width: 54px;
height: 54px;
line-height: 50px;
text-align: center;
background: #4c0505;
border-radius: 50%;
color: #fff;
font-size: 30px;
transform: translate(-50%,-50%);
font-weight: 600;
border: 2px solid #fff;
}

.cf-container .cf-step h3 {
color: #4c0505;
margin-bottom: 15px;
font-family: 'Barlow Condensed', sans-serif;
font-size: 24px;
line-height: 26px;
}

.main-section.carousel-nav {
padding: 30px 0 0 0;
}

#carousel-nav .icon {
padding-bottom: 30px;
position: relative;
text-decoration: none !important;
}

#carousel-nav .icon > div {
width: 100px;
height: 100px;
}

#carousel-nav .no-icon-2 h5 ,
#carousel-nav .no-icon-3 h5 ,
#carousel-nav .icon h5 {
width: 100%;
font-size: 15px;
color: #636469;
letter-spacing: 0;
}
.inverted #carousel-nav .no-icon-2 h5 ,
.inverted #carousel-nav .no-icon-3 h5 ,
.inverted #carousel-nav .icon h5 {
color: #fff !important;
}

#carousel-nav .icon.active > div {
padding: 1px;
}

#carousel-nav .icon.active h5 {
width: 100%;
font-size: 18px;
color: #4c0505;
}



#carousel-nav .icon:after {
content: "";
display: block;
position: absolute;
z-index: 99;
bottom: -22px;
left: 50%;
width: 0;
height: 0;
border-left: 20px solid transparent;
border-bottom: 20px solid #ffffff;
border-right: 20px solid transparent;
margin-left: -20px;
transition: ease-out 150ms bottom;
}

#carousel-nav .icon.active:after {
bottom: -2px;
}

#carousel-nav .icon.active svg * {
fill: #4c0505;
}

/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {
}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {

.content-flex.text-img {
flex-wrap: wrap;
}

.content-flex.text-img .text-item {
width: 100%;
padding: 0 !important;
max-width: 100%;
flex-grow: initial;
flex-shrink: initial;
flex-basis: initial;
}

.content-flex.text-img .img-item {
width: 70% !important;
text-align: center;
margin: 0 auto;
flex-grow: initial;
flex-shrink: initial;
flex-basis: initial;
}

.chi-siamo .content-flex.text-img .img-item {
width: 100% !important;
}

.content-flex .img-item img {
width: 100%;
max-width: 450px;
display: inline-block;
}

.chi-siamo .content-flex .img-item img {
width: 100%;
max-width: 100% !important;
display: inline-block;
}

.indent-list li,
.icon-list li {
display: block;
line-height: 20px
}

.icon-list li:before {
}

.content-flex.text-img > .text-item.r-item {
text-align: justify;
padding-left: 0;
padding-right: 0;
}

.content-flex.text-img .text-item .btn {
margin: 30px auto 30px;
display: block;
max-width: 300px
}

}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {

.main-section .text-item .section-title {
font-size: 24px;
margin-bottom: 40px;
line-height: 35px;
text-align: center;
}

.main-section.first-section {
margin-top: 0px;
}

.main-section .section-title {
font-size: 48px;
margin-bottom: 40px;
line-height: 48px;
}

.main-section .section-title span {

font-size: 20px;

line-height: 28px;

margin-bottom: 50px;
}

#i-tuoi-agenti.main-section .section-title {
text-align: center;
margin-bottom: 40px;
letter-spacing: 2px;
}

#calculator-section, #parlano-di-noi-section {
border-top: 1px solid #ddd
}
#calculator-section {
    padding: 64px 16px;
}

.cf-container .cf-step h3 {
font-size: 18px;
}

.cf-container .cf-step .cf-number {
font-size: 22px;
height: 40px;
width: 40px;
line-height: 34px;
}

.content-flex.text-img .img-item {
margin-top: 30px !important;
}

#i-tuoi-agenti .content-flex.text-img .img-item {
top: 30px;
margin-top: 0 !important;
}

#i-tuoi-agenti .content-flex.text-img .text-item {
margin-top: 0;
padding-bottom: 50px;
}

#i-tuoi-agenti {
padding-top: 100px;
}

.lavora .main-section.bottomless {
padding-top: 35px;
}

}

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
}




/*---------------------------------------------------------------------------
SAVINGS CALCULATOR
---------------------------------------------------------------------------*/


.title-calculator, .title-parlano-di-noi {
text-align: center;
margin-bottom: 30px;
font-family: 'Barlow Condensed', sans-serif;
font-size: 56px;
color: #616467;
}


.s-calc {/* display: flex; *//* justify-content: space-between; *//* align-items: stretch; */width: 1010px;margin: 0 auto;}


.s-calc .s-sliders {display: flex;flex-wrap: wrap;align-content: space-between;width: 420px;margin: 28px 0 0 30px;height: 340px;float: left;}

.s-calc .s-slider {padding: 0 0;width: 100%;padding: 15px;background: inherit;margin-top: 10px;}

.s-calc .s-slider:first-child {
margin-top: 0;
}

.s-calc .s-slider .item {
height: 10px;
background: #f7f7f7;
border-radius: 10px;
border: 3px solid #4c0505;
border-top: 0;
border-bottom: 0;
position: relative;
margin: 20px 0 10px;
}

.s-calc .s-slider .item:before {
content:"";
display: block;
width: 18px;
height: 18px;
background: #4c0505;
position: absolute;
left: 30%;
top: -5px;
border-radius: 50%;
cursor: pointer;
}

#commissione-agencasa-slider,
#commissione-slider,
#prezzo-slider {height: 8px;background: #a7a8a9;border-radius: 8px;border: none !important; order-top: 0;border-bottom: 0;position: relative;margin: 20px 0 10px;}

#commissione-agencasa-handle,
#commissione-handle,
#prezzo-handle {
display: block;
width: 6px;
height: 20px;
background: #4c0505;
position: absolute;
left: 3px;
top: -7px;
border-radius: 6px;
cursor: pointer;
border: 0;
outline: none !important;
margin-top: 1px;
margin-left: -3px;
}

.s-calc .s-slider .import {
display: flex;
justify-content: space-between ;
align-items: stretch;
}

.s-calc .s-slider .label {
font-size: 21px;
color: #616467;
line-height: 28px;
font-family: 'Barlow', sans-serif;
}

.s-calc .s-slider span {
display: block;
font-size: 32px;
color: #616467;
font-weight: 300;
line-height: 28px;
font-family: 'Barlow Condensed', sans-serif;
}

.s-calc .s-output {text-align: center;border: 1px solid #ddd;padding: 15px;background: #fff;display: flex;flex-wrap: wrap;/* align-content: center; */width: 58%;}

.s-calc .s-output > div {text-align: center;font-family: 'Barlow', sans-serif;font-size: 16px;color: #616467;text-transform: uppercase;width: 100%;display: flex;flex-wrap: nowrap;justify-content: space-between;align-items: center;padding: 0px 0 24px 0;}

.s-calc .s-output > div:last-child {border-top: 1px solid #4c0505;padding-top: 22px;padding-bottom: 0;}

.s-calc .s-output > div > div {text-align: left;width: 70%;}


.s-calc .s-output > div > div img {height: 37px;margin-top: 7px;}


.s-calc .s-output > div > div:last-child {font-size: 26px;color: #fff;line-height: 32px;font-family: 'open sans', sans-serif;width: 30%;text-align: right;position: relative;top: -2px;background: #4c0505;padding-right: 10px;right: -21px;border-radius: 0 3px 3px 0;height: 58px;line-height: 58px;}

.s-calc .s-output > div  > div:first-child {
    padding-right: 15px;
    /* text-align: right; */
}

.s-calc .s-output > div > div:last-child:before {
  content:"";
  display: block;
  content: "";
  display: block;
  position: absolute;
  z-index: 99;
  top:50%;
  left: -14px;
  width: 0;
  height: 0;
  border-right: 14px solid #4c0505;
  border-top: 29px solid transparent;
  border-bottom: 29px solid transparent;
  margin-top: -29px;
}

.s-calc .s-output .agencasa-save > div:last-child {background: #56b359;}

.s-calc .s-output .agencasa-save > div:last-child:before {
    content:"";
    border-right: 14px solid #56b359;
}

.s-calc .s-output > img {
width: 200px;
margin-top: 50px;
margin-bottom: 15px;
}

.s-calc .s-output > svg .st0 {
fill:#616467;
}

.s-calc .s-output > svg .st1 {
fill:#969798;
}

.s-calc .s-output > svg .st2 {
fill:#4c0505;
}

.s-calc .calcolo {
    width: 100%;
    border-radius: 16px;
    background-color: #f7f7f6;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-end;
}
.s-calc .calcolo .s-slider {
    border-radius: 12px 12px 0 0;
}
.s-calc .calcolo .s-slider,
.s-calc .calcolo #commisione-agencasa-text,
.s-calc .calcolo #risparmio-text {
    font-size: 20px;
    color: #616467;
    flex-basis: 60%;
    padding-left: 15px;
}
.s-calc .calcolo #commisione-agencasa-text {
    margin-top: 16px;
}

.s-calc .calcolo #spesa,
.s-calc .calcolo #commisione-agencasa,
.s-calc .calcolo #risparmio {
    font-size: 32px;
    color: #616467;
    flex-basis: 40%;
    text-align: right;
    padding-right: 33px;
    font-family: 'Barlow Condensed', sans-serif;
}
.s-calc .calcolo #risparmio {
    padding-right: 49px;
}
.s-calc .calcolo #risparmio-text {
    font-size: 32px;
    font-family: 'Barlow Condensed', sans-serif;
}

.s-calc .calcolo #risparmio-text,
.s-calc .calcolo #risparmio {
    height: 75px;
    line-height: 75px;
    background-color: #a7a8a9;
    margin-bottom: 0;
}
.s-calc .calcolo #risparmio-text {
    border-radius: 0 0 0 12px;
}
.s-calc .calcolo #risparmio {
    border-radius: 0 0 12px 0;
}

.s-calc .calcolo #commissione {
    font-size: 16px;
    position: absolute;
    left: -3px;
    bottom: -29px;
}

/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {

    .s-calc .calcolo .s-slider,
.s-calc .calcolo #commisione-agencasa-text {
    font-size: 18px !important;
}
.s-calc .calcolo #spesa,
.s-calc .calcolo #commisione-agencasa,
.s-calc .calcolo #risparmio,
.s-calc .calcolo #risparmio-text {
    font-size: 26px;
}

.s-calc .calcolo #risparmio,
.s-calc .calcolo #risparmio-text {
    margin-bottom: 0;
}

.s-calc .calcolo #spesa,
.s-calc .calcolo #commisione-agencasa-text {
    margin-bottom: 21px;
}

.s-calc .calcolo #commissione {
    font-size: 16px !important;
}


.s-calc .s-output {
width: 54%;
}

.s-calc .s-output > div {
font-size: 15px;
}

.s-calc .s-output > div > div:last-child {
font-size: 22px;
}

}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {



}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {

.title-calculator, .title-parlano-di-noi {
font-size: 48px;
margin-bottom: 40px;
line-height: 48px;
}


}

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
}

/*---------------------------------------------------------------------------
PARLANO DI NOI
---------------------------------------------------------------------------*/
#parlano-di-noi-section {
    padding-top: 50px;
    padding-bottom: 100px;
}

.parlano-di-noi-container {
    position: relative;
    background: url("../img/home/11_parlano_di_noi.svg");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    width: 100%;
    height: 370px;
}

.parlano-di-noi-container > a {
    display: block;
    position: absolute;
    background-color: white;
    border-radius: 24px;
}

.parlano-di-noi-icon {
    cursor: pointer;
    margin: 8px;
    height: 44px;
    filter: gray; /* IE6-9 */
    -webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
    filter: grayscale(100%);
    opacity: 0.4;
    transition: filter .3s, -webkit-filter .3s, opacity .3s;
}
.parlano-di-noi-icon:hover {
    -webkit-filter: grayscale(0);
    filter: none;
    opacity: 1;
}

.parlano-di-noi-container .murales {
    position: absolute;
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    align-items: flex-end;
    width: 487px;
    flex-wrap: wrap;
    left: 410px;
    bottom: 0;
}

.parlano-di-noi-container .murales .parlano-di-noi-icon {
    height: 35px;
    max-width: 150px;
}


@media (max-width: 1199.98px) {

    .parlano-di-noi-container {
        background: none;
        height: auto;
        display: flex;
        flex-direction: row;
        justify-content: space-around;
        align-content: flex-start;
        align-items: flex-start;
        flex-wrap: wrap;
        padding: 0 37px;
    }

    .parlano-di-noi-container a {
        position: static;
    }

    .parlano-di-noi-container #mobile-icon {
        display: block !important;
    }

    .parlano-di-noi-container .murales {
        position: static;
        width: 100%;
    }

    .parlano-di-noi-icon {
        height: 40px;
    }
    .parlano-di-noi-container .murales .parlano-di-noi-icon {
        height: 28px;
    }
}

/*---------------------------------------------------------------------------
BUTTONS
---------------------------------------------------------------------------*/

.btn {
display: inline-block;
height: 54px;
line-height: 52px;
text-align: center;
font-size: 17px;
font-weight: 400;
transition: all linear 150ms;
padding: 0 30px;
cursor: pointer;
box-shadow: 0 0 0 !important;
border: 2px solid transparent;
background: #bbb;
color: #fff;
font-family: 'Barlow', sans-serif;
text-transform: uppercase;
border-radius: 0px;
min-width: 220px;
}

.btn:hover,
.btn:active,
.btn.active {
background: #aaa !important;
border-color: transparent !important;
}

.btn.btn-lg {
height: 50px;
line-height: 46px;
font-size: 20px;
}

.btn.btn-sm {
height: 38px;
line-height: 34px;
font-size: 14px;
}

.btn.btn-primary {
background:#4c0505;
}

.btn.btn-primary:hover,
.btn.btn-primary:active,
.btn.btn-primary.active {
background:#783a3c !important;
border-color: transparent !important;
}


.btn.btn-secondary {
background:#ffffff;
color: #333;
}

.btn.btn-secondary:hover,
.btn.btn-secondary:active,
.btn.btn-secondary.active {
background:#fff !important;
border-color: transparent !important;
color: #4c0505;
}

.btn.btn-hollow {
background: transparent;
}

.btn.btn-hollow.btn-primary {
color:#4c0505;
border-color:#4c0505;
}

.btn.btn-hollow.btn-primary:hover,
.btn.btn-hollow.btn-primary:active,
.btn.btn-hollow.btn-primary.active {
background:#4c0505 !important;
border-color:#4c0505;
color:#fff;
}


.btn.btn-hollow.btn-secondary {
color:#ffffff;
border-color:#ffffff;
}

.btn.btn-hollow.btn-secondary:hover,
.btn.btn-hollow.btn-secondary:active,
.btn.btn-hollow.btn-secondary.active {
background:#ffffff !important;
border-color:#ffffff;
color:#333333;
}

.dual-cta {
display: flex;
justify-content: space-between;
flex-wrap: nowrap;
}

.link-cta {
margin-top: 50px;
}

.link-cta a {
color: #fff;
font-size: 14px;
}

.contacts-box .f-phone,
.contacts-box .f-mail {
display: flex;
margin-top: 10px;
align-items: center;
}

.contacts-box .f-phone > div,
.contacts-box .f-mail > div {
width: 38px;
height: 38px;
padding: 6px;
}

.contacts-box .f-phone svg,
.contacts-box .f-mail svg {
fill: #4c0505;
display: block;
}

.contacts-box .f-phone > span,
.contacts-box .f-mail > span {
color: #4c0505;
font-size: 18px;
padding: 0 10px 0 5px;
transition: 150ms ease-out all;
display: block;
height: 38px;
line-height: 19px;
}

.contacts-box .f-mail > span a {
color: #4c0505 !important;
text-decoration: none !important;
}

.contacts-box .f-phone > span > span,
.contacts-box .f-mail > span > span {
display: block;
font-size: 11px;
color: #616467;
}




/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {
}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {
}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {

.btn {
font-size: 14px;
padding: 0 30px 0 20px;
height: 48px;
line-height: 46px;
}

}

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
}



/*---------------------------------------------------------------------------
HEADER
---------------------------------------------------------------------------*/

.homepage .hero.fs h3,
.vendere .hero.fs h3,
.affittare .hero.fs h3 {
    font-size: 24px;
}

.header {
height: 80px;
position: fixed;
left: 0;
top: 0;
right: 0;
z-index: 9999;
text-align: center;
background: #ffffff;
box-shadow: 0 1px 0px 0px #ddd;
}

.header .logo svg {
height: 50px;
position: absolute;
left: 15px;
top: 50%;
transform:translateY(-50%);
transition: 150ms linear all;
}

.logo .st0{
fill:rgb(255, 255, 255);
transition: 150ms linear all;
}

.logo .st1{
fill:#ffffff;
transition: 150ms linear all;
}

.logo .st2 {
fill:#ffffff;
transition: 150ms linear all;
}

.main-nav {
display: flex;
flex-wrap: nowrap;
align-items: center;
justify-content: space-between;
max-width: 730px;
position: absolute;
left: 0;
right: 0;
margin: 0 auto;
top: 50%;
transform: translateY(-50%)
}

.main-nav div,
.main-nav a {
color: #616467;
text-transform: uppercase;
font-family: 'Barlow Condensed', sans-serif;
display: inline-block;
font-size: 24px;
line-height: 34px;
height: 30px;
position: relative;
text-decoration: none;
transition: 150ms linear all;
cursor: pointer;
}

.main-nav div:before,
.main-nav a:before {
content: "";
display: block;
position: absolute;
bottom: -1px;
left: 50%;
width: 0%;
height: 1px;
background: #fff;
transition: 150ms ease-out all;
transform: translateX(-50%);
}

.main-nav div.active:before,
.main-nav div:hover:before,
.main-nav a.active:before,
.main-nav a:hover:before {
width: 100%;
}


.hero-less .header,
.not-top .header {

}

.hero-less .header .logo svg,
.not-top .header .logo svg {
height: 50px;
}

.hero-less .logo .st0,
.not-top .logo .st0 {
fill:#A6A6A8;
}

.hero-less .logo .st1,
.not-top .logo .st1 {
fill:#616467;
}

.hero-less .logo .st2,
.not-top .logo .st2 {
fill:#616467;
}

.hero-less .main-nav div,
.hero-less .main-nav a,
.not-top .main-nav div,
.not-top .main-nav a {
color: #616467;
}

.hero-less .main-nav div:before,
.hero-less .main-nav a:before,
.not-top .main-nav div:before,
.not-top .main-nav a:before {
background: #616467;
}

.h-contacts {
position: absolute;
right: 15px;
top: 50%;
transform:translateY(-50%);
transition: 150ms linear all;
display: flex;
flex-wrap: nowrap;
align-items: center;
}

.h-contacts .h-mail {
display: flex;
flex-wrap: nowrap;
align-items: center;
display: none !important;
}

.h-contacts .h-phone {
display: flex;
flex-wrap: nowrap;
align-items: center;
margin-left: 10px;
}

.h-contacts .h-mail div {
width: 38px;
background: #fff;
padding: 5px;
border-radius: 0;
transition: 150ms ease-out all;
}

.h-contacts .h-phone div {
width: 38px;
padding: 6px;
border-radius: 0;
transition: 150ms ease-out all;
}

.h-contacts .h-mail:hover div {
background: #4c0505;
}

.h-contacts .h-mail:hover svg {
fill: #ffffff;
}

.h-contacts .h-mail svg,
.h-contacts .h-phone svg {
fill: #ffffff;
width: 100%;
display: block;
transition: 150ms ease-out all;
}

.h-contacts .h-phone a {
text-decoration:none !important;
}
.h-contacts .h-phone a:hover {
text-decoration:none !important;
}

.h-contacts .h-phone span {
color: #4c0505;
font-size: 36px;
font-weight: 400;
padding: 0 10px 0 5px;
transition: 150ms ease-out all;
display: block;
line-height: 40px;
height: 38px;
font-family: 'Barlow Condensed', sans-serif;
}

.hero-less .h-contacts .h-mail svg,
.hero-less .h-contacts .h-phone svg,
.not-top .h-contacts .h-mail svg {
fill: #616467;
}

.not-top .h-contacts .h-phone svg {
    fill: #4c0505;
}

.hero-less .h-contacts .h-phone span,
.not-top .h-contacts .h-phone span {
color: #4c0505;
}

.hero-less .h-contacts .h-mail:hover div,
.not-top .h-contacts .h-mail:hover div {
background: #4c0505;
}

.hero-less .h-contacts .h-mail:hover svg,
.not-top .h-contacts .h-mail:hover svg {
fill: #fff;
}




/* Large devices (desktops, less than 1367px) */
@media (max-width: 1366.98px) {

.header .logo svg {height: 40px !important;}

.main-nav {
max-width: 690px;
}

}




/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {

.header .logo svg {
left: 50%;
transform: translate(-50%,-50%);
}

.main-nav-trigger {
width: 34px;
position: absolute;
left: 15px;
top: 50%;
transform: translateY(-50%);
display: block;
line-height: 34px;
}

.main-nav-trigger svg {
display: block;
width: 26px;
    margin-left: 4px;
}

.main-nav-trigger * {
fill: #fff;
}

.hero-less .main-nav-trigger *,
.not-top .main-nav-trigger * {
fill: #616467;
}

}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {

.not-top .h-contacts .h-phone svg {
    fill: #616467;
}

.header .logo svg {
height: 50px;
}

.h-contacts .h-phone span {
display: none;
}

}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {

.header {
height: 64px;
background: #fff;
box-shadow: 0 1px 0px 0px #ddd;
}

.logo .st0{
fill:#A6A6A8;
}

.logo .st1{
fill:#616467;
}

.logo .st2{
fill:#616467;
}

.header .logo svg {
height: 30px !important;
}

.main-nav-trigger * {
fill: #4c0505;
}

.h-contacts .h-mail {
display: none;
}

.h-contacts .h-mail svg,
.h-contacts .h-phone svg {
fill: #4c0505;
}

}

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
}



/*---------------------------------------------------------------------------
HERO - FULL SCREEN
---------------------------------------------------------------------------*/

.fimaa-hero {position: absolute;left: 15px;bottom: 15px;display: flex;background: #fff;align-items: center;padding: 6px 6px 6px 6px;/* border-radius: 3px; */z-index: 1;width: 181px;flex-wrap: wrap;justify-content: center;/* box-shadow: 0 0 10px 0px #61646700085; */border: 2px solid #616467;}

.fimaa-hero img {width: 70px;}

.fimaa-hero div{color: #616467;font-weight: 500;font-size: 8px;max-width: 210px;margin-left: 0;/* border-top: 1px solid #4c0505; *//* border-bottom: 1px solid #4c0505; */line-height: 13px;margin-top: 4px;text-align: center;}

.fimaa-mobile {
	margin-bottom: 50px
}

.fimaa-mobile img {
width: 150px;
margin-bottom: 15px;
}

.fimaa-mobile div{
font-weight: 500;
font-size: 14px;
}


.hero {
width: 100%;
background-size: cover;
background-position: center center;
display: flex;
justify-content: center;
flex-wrap: wrap;
align-items: center;
align-content: center;
height: 100vh;
max-height: calc(100vh - 270px);
background-image: url(../img/agencasa-hero.jpg);
position: relative;
}

.hero:before {
content:"";
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 70%;
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#616467000+0,000000+100&1+0,0+100 */
background: -moz-linear-gradient(top, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, rgba(0,0,0,1) 0%,rgba(0,0,0,0) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, rgba(0,0,0,1) 0%,rgba(0,0,0,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#616467000', endColorstr='#61646700000',GradientType=0 ); /* IE6-9 */
opacity: 0.3;
}

.hero-container {
width: 100%;
}

.hero.fs {
height: 100vh;
max-height: 100vh;
background-image: url(../img/home/home.jpg);
box-shadow: inset 0 0 0 #616467;
position: relative;
}

.vendere .hero.fs {
background-image: url(../img/home/vendere.jpg);
}

.vendere-milano .hero.fs {
    background-image: url(../img/hero/vendere-milano.jpg);
}

.affittare .hero.fs {
background-image: url(../img/home/affittare.jpg);
}

.cerca-casa .hero.fs {
background-image: url(../img/hero/cerca-casa.jpg);
background-position: right;
}

.lavora .hero.fs {
background-image: url(../img/hero/lavora.jpg);
}

.hero.fs:before {
content:"";
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 70%;
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#616467000+0,000000+100&1+0,0+100 */
background: -moz-linear-gradient(top, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, rgba(0,0,0,1) 0%,rgba(0,0,0,0) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, rgba(0,0,0,1) 0%,rgba(0,0,0,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#616467000', endColorstr='#61646700000',GradientType=0 ); /* IE6-9 */
opacity: 0.3;
}

.hero.fs:after {
content:"";
position: absolute;
bottom: 0;
left: 0;
right: 0;
top: 80%;
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#616467000+0,000000+100&1+0,0+100 */
background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#616467000', endColorstr='#61646700000',GradientType=0 ); /* IE6-9 */
opacity: 0.3;
}

.hero.fs > .title {
width: 100%;
text-align: center;
margin-bottom: 30px;
position: relative;
z-index: 9;
}

.hero.fs h1 {
    font-size: 56px;
color: #fff;
text-transform: uppercase;
}

.hero.fs h3 {
color: #fff;
font-size: 20px;
font-weight: 300;
margin-top: 10px;
max-width: 1170px;
margin: 10px auto;
line-height: 36px;
}

.hero.fs h3 span {
font-weight: 600;
font-style: italic;
}


.hero.fs h3 span.big {
font-weight: 500;
font-style: normal;
font-size: 30px;
}

.arrow-down {
position: absolute;
z-index: 99;
left: 50%;
bottom: 30px;
transform: translateX(-50%);
margin-top: -5px;
text-align: center;
width: 40px;
cursor: pointer;
}

.arrow-down img {
animation-name:floating;
-webkit-animation-name:floating;
animation-duration:1.5s;
-webkit-animation-duration:1.5s;
animation-iteration-count:infinite;
-webkit-animation-iteration-count:infinite
}

@keyframes
floating{0%{transform:translateY(0%)}50%{transform:translateY(25%)}100%{transform:translateY(0%)}}@-webkit-keyframes
floating{0%{-webkit-transform:translateY(0%)}50%{-webkit-transform:translateY(25%)}100%{-webkit-transform:translateY(0%)}
}

/* Large devices (desktops, less than 1367px) */
@media (max-width: 1366.98px) {

.hero.fs > .title {margin-top: 0px;margin-bottom: 20px;}

.hero.fs h1 {
font-size: 56px;
}

.hero.fs h3 {
font-size: 20px;
line-height: 30px;
}


}

/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {
.main-nav {
display: none;
}

.hero.fs h3 {
padding: 0 5px;
}


.hero.fs h3 span.big {
display: block;
padding-top: 5px;
}

.fimaa-hero {width: 230px;bottom: 15px;left: 15px;padding: 6px 6px 6px 0;flex-wrap: nowrap;}

.fimaa-hero img {

width: 60px;

/* margin-bottom: 9px; */
}

.fimaa-hero div{font-size: 10px;/* max-width: 220px; *//* line-height: 24px; */text-align: left;margin-left: 10px;}

}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {

	.fimaa-hero {

	}

	.fimaa-hero img {

	}

	.fimaa-hero div{

margin-left: 5px;

}

.hero.fs h3 {
padding: 0 15px;
}

.hero.fs {
background-image: url(../img/home/home.jpg);
}

.vendere .hero.fs {
}

    .vendere-milano .hero.fs {
    }

.affittare .hero.fs {
}

.cerca-casa .hero.fs {
background-position: right;
}

.lavora .hero.fs {
max-height: none;
}

}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {

    body.lavora .agenForm {
        border-radius: 6px;
        background: #fff !important;
        margin-top: 24px;
    }

.hero.fs h3 {
padding: 0 0px;
}


.hero.fs h3 span.big {
display: block;
padding-top: 5px;
font-size: 20px;
}

.hero.fs {
height: auto;
background-image: url(../img/home/home.jpg);
box-shadow: inset 0 0 0 #616467;
background-position: 684px;
background-size: cover;
position: relative;
margin-top: 64px;
display: block;
min-height: 0;
max-height: 1000px;
}
.arrow-down {
display: none;
}

.hero.fs:before {
display: none;
}

.hero.fs:after {
display: none;
}

.hero.fs > .title {
min-height: 200px;
margin: 0;
display: flex;
flex-wrap: wrap;
align-content: center;
padding: 0 15px;
justify-content: left;
}

.hero.fs > .title h1 {
font-size: 30px;
display: block;
width: 100%;
text-align: left;
}

.hero.fs > .title h3 {
font-size: 16px;
margin-bottom: 0;
display: block;
line-height: 22px;
margin: 0;
text-align: left;
}

.hero.fs > .title h3 #a-capo {
    display: block !important;
}


    .vendere-milano .hero.fs > .title {
        background-image: url(../img/hero/vendere-milano-mobile.jpg);
    }

.cerca-casa .hero.fs > .title {
background-image: url(../img/hero/cerca-casa-mobile.jpg);
background-position: right;
}

.lavora .hero.fs > .title {
flex-wrap: wrap;
}


	.fimaa-hero {

display: none;

}

	.fimaa-hero img {

	}

	.fimaa-hero div{

	}

}

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
}






/*---------------------------------------------------------------------------
FORM - MAIN
---------------------------------------------------------------------------*/

.agenForm {
width: 100%;
max-width: 640px;
text-align: center;
box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.11);
display: inline-block;
position: relative;
z-index: 1;
transition: 150ms linear background, max-width ease-out 150ms, height ease-out 150ms;
}

.agenForm.active {
width: 100%;
z-index: 1;
}

.agenForm.wide {
max-width: 800px;
}

.agenForm .switcher {
display: flex;
flex-wrap: nowrap;
align-items: end;
transition: 150ms linear all;
height: 50px;
position: relative;
overflow: hidden;
border-radius: 6px 6px 0 0;
}

.agenForm.active .switcher {
height: 0;
display: none;
}

.agenForm .switcher > div {
width: 50%;
background: rgba(208, 208, 208, 0.6);
height: 50px;
line-height: 50px;
text-transform: uppercase;
font-weight: 500;
cursor: pointer;
color: #616467;
transition: 150ms linear all;
height: 50px;
overflow: hidden;
position: absolute;
bottom: 0;
font-size: 20px;
}

.agenForm .switcher > div:first-child {
left: 0;
}

.agenForm .switcher > div:last-child {
right: 0;
}

.agenForm .switcher > div:hover {
background: rgba(208, 208, 208, 0.95) !important;
color: #4c0505;
}

.agenForm .switcher > div.active {
background: rgba(255, 255, 255, 0.7) !important;
color: #616467 !important;
}

.agenForm.interaction .switcher > div.active,
.agenForm:hover .switcher > div.active {
background: rgba(255, 255, 255, 0.95) !important;
}

.agenForm.interaction .switcher > div,
.agenForm:hover .switcher > div {
background: rgba(208, 208, 208, 0.80);
}

.agenForm form > .title {
background: rgb(96, 46, 48) !important;
padding: 15px 30px 10px 30px;
font-size: 30px;
line-height: 30px;
font-weight: 600;
text-transform: uppercase;
color: #ffffff;
font-family: 'Barlow', sans-serif;
transition: 150ms linear background, 150ms linear width;
position: relative;
z-index: 1;
position: absolute;
left: -10px;
right: -10px;
top: 70px;
display: none !important
}

.agenForm form > .title:before {
content: "";
display: block;
position: absolute;
z-index: 99;
bottom:-10px;
right: 0;
width: 0;
height: 0;
border-left: 10px solid #616467000;
border-top: 0px solid transparent;
border-bottom: 10px solid transparent;
}

.agenForm form > .title:after {
content: "";
display: block;
position: absolute;
z-index: 99;
bottom:-10px;
left: 0;
width: 0;
height: 0;
border-right: 10px solid #616467000;
border-top: 0px solid transparent;
border-bottom: 10px solid transparent;
}

.agenForm form > .title div {
font-family: 'Barlow', sans-serif;
text-transform: none;
font-size: 18px;
color: rgba(255, 255, 255, 0.8);
z-index: 1;
position: relative;
font-weight: 400;
}

.agenForm .step-counter-container {
display: none;
}

.agenForm .step-counter-container.step-6 {
display: none !important;
}

.agenForm.active .step-counter-container {
height:50px;
background: rgba(255, 255, 255, 0.70);
padding: 0 30px;
display: flex;
flex-wrap: nowrap;
justify-content: center;
align-items: center;
border-radius: 6px 6px 0 0;
}

.agenForm #almost-title-search,
.agenForm #almost-title {height:50px;background: #4c0505;display: none;line-height: 54px;font-family: 'Barlow', sans-serif;color: #fff;text-transform: uppercase;font-size: 22px;position: relative;padding: 0 50px;border-radius: 6px 6px 0 0;}

.agenForm #almost-title-search .icon,
.agenForm #almost-title .icon {
height: 50px;
width: 50px;
position: absolute;
top: 0;
left: 0;
background-color: #48964a;
background-image: url(../img/misc/check.svg);
background-size: 30px;
background-repeat: no-repeat;
background-position: center;
}

.agenForm #finished-title-search,
.agenForm #finished-title {height:50px;background: #56b359;/* display: none; */line-height: 54px;font-family: 'Barlow', sans-serif;color: #fff;text-transform: uppercase;font-size: 20px;position: relative;padding: 0 50px;}

.agenForm #finished-title-search .icon,
.agenForm #finished-title .icon {
height: 50px;
width: 50px;
position: absolute;
top: 0;
left: 0;
background-color: #48964a;
background-image: url(../img/misc/check.svg);
background-size: 30px;
background-repeat: no-repeat;
background-position: center;
}


.agenForm #almost-title-search.step-3,
.agenForm #almost-title-search.step_risultato,
.agenForm #almost-title.step-6,
.agenForm #almost-title.step_risultato {
display: block;
}

.agenForm.active .step-counter {
position: relative;
display: flex;
flex-wrap: nowrap;
justify-content: space-between;
align-items: center;
width: 100%;
}

.agenForm.active .step-counter > div {
width: 16px;
height: 16px;
background: #616467;
border-radius: 50%;
position: relative;
z-index: 3;
transition: all linear 150ms;
transition-delay: 150ms !important;
margin-right: -1px;
}

.agenForm .step-counter > div > span {
transform: translate(-50%,-50%) scale(0.0);
position: absolute;
width: 28px;
height: 28px;
display: block;
background: #616467;
line-height: 30px;
left: 50%;
top: 50%;
color: #fff;
border-radius: 50%;
font-weight: 600;
transition: all cubic-bezier(0.18, 0.89, 0.63, 1.36) 150ms;
transition-delay: 150ms !important;
font-size: 20px;
line-height: 27px;
}

.agenForm.active .step-counter > span {
position: absolute;
height: 2px;
background: #616467;
z-index: 2;
}

.agenForm.active #step-counter1 .step-counter > span {
width: 25%;
}

.agenForm.active #step-counter2 .step-counter > span {
width: 33.33333333333%;
}

.agenForm.active #step-counter3 .step-counter > span {
width: 50%;
}

.agenForm.active #step-counter4 .step-counter > span {
width: 100%;
}

.agenForm.active .step-counter > span:before {
content:"";
position: absolute;
background: #616467;
z-index: 2;
display: block;
top: 0;
left: 0;
bottom: 0;
width: 0;
transition: all linear 150ms;
}


.agenForm.active #step-counter1 .step-counter > span.one {
left: 0%;
}

.agenForm.active #step-counter1 .step-counter > span.two {
left: 25%;
}

.agenForm.active #step-counter1 .step-counter > span.three {
left: 50%;
}

.agenForm.active #step-counter1 .step-counter > span.four {
left: 75%;
}

.agenForm.active #step-counter2 .step-counter > span.one {
left: 0%;
}

.agenForm.active #step-counter2 .step-counter > span.two {
left: 33.3333333333%;
}

.agenForm.active #step-counter2 .step-counter > span.three {
left: 66.66666666666%;
}

.agenForm.active #step-counter3 .step-counter > span.one {
left: 0%;
}

.agenForm.active #step-counter3 .step-counter > span.two {
left: 50%;
}

.agenForm.active #step-counter4 .step-counter > span.one {
left: 0%;
}

.agenForm.active #step-counter4 .step-counter > span.two {
left: 50%;
}

/* STEP 1 */

.agenForm.active .step-1 .step-counter > div:nth-child(1) {
background: #616467;
}

/* STEP 2 */

.agenForm.active .step-2 .step-counter > div:nth-child(1),
.agenForm.active .step-2 .step-counter > div:nth-child(2) {
background: #616467;
}

.agenForm.active .step-2 .step-counter > div:nth-child(2) > span {
transform: translate(-50%,-50%) scale(1.1);
}

.agenForm.active .step-2 .step-counter > span.one:before {
width: 100%;
}


/* STEP 3 */

.agenForm.active .step-3 .step-counter > div:nth-child(1),
.agenForm.active .step-3 .step-counter > div:nth-child(2),
.agenForm.active .step-3 .step-counter > div:nth-child(3) {
background: #616467;
}

.agenForm.active .step-3 .step-counter > div:nth-child(3) > span {
transform: translate(-50%,-50%) scale(1.1);
}

.agenForm.active #step-counter3.step-3 .step-counter > div:nth-child(2) > span {
transform: translate(-50%,-50%) scale(1.1);
}

.agenForm.active #step-counter3.step-3 .step-counter > div:nth-child(3) > span {
transform: translate(-50%,-50%) scale(0.0);
}

.agenForm.active #step-counter3.step-3 .step-counter > div:nth-child(3) {
background: #616467;
}

.agenForm.active .step-3 .step-counter > span.one:before,
.agenForm.active .step-3 .step-counter > span.two:before {
width: 100%;
}

.agenForm.active #step-counter3.step-3 .step-counter > span.two:before {
width: 0%;
}

/* STEP 4 */

.agenForm.active .step-4 .step-counter > div:nth-child(1),
.agenForm.active .step-4 .step-counter > div:nth-child(2),
.agenForm.active .step-4 .step-counter > div:nth-child(3),
.agenForm.active .step-4 .step-counter > div:nth-child(4) {
background: #616467;
}

.agenForm.active #step-counter3.step-4 .step-counter > div:nth-child(4) {
background: #dddddd;
}

.agenForm.active .step-4 .step-counter > div:nth-child(4) > span {
transform: translate(-50%,-50%) scale(1.1);
}

.agenForm.active #step-counter3.step-4 .step-counter > div:nth-child(4) > span {
transform: translate(-50%,-50%) scale(0.0);
}

.agenForm.active #step-counter3.step-4 .step-counter > div:nth-child(3) > span {
transform: translate(-50%,-50%) scale(1.1);
}

.agenForm.active .step-4 .step-counter > span.one:before,
.agenForm.active .step-4 .step-counter > span.two:before,
.agenForm.active .step-4 .step-counter > span.three:before {
width: 100%;
}

.agenForm.active #step-counter3.step-4 .step-counter > span.three:before {
width: 0%;
}

/* STEP 5 */

.agenForm.active .step-5 .step-counter > div:nth-child(1),
.agenForm.active .step-5 .step-counter > div:nth-child(2),
.agenForm.active .step-5 .step-counter > div:nth-child(3),
.agenForm.active .step-5 .step-counter > div:nth-child(4),
.agenForm.active .step-5 .step-counter > div:nth-child(5) {
background: #616467;
}

.agenForm.active .step-5 .step-counter > div:nth-child(5) > span {
transform: translate(-50%,-50%) scale(1.1);
}

.agenForm.active #step-counter2.step-5 .step-counter > div:nth-child(4) > span {
transform: translate(-50%,-50%) scale(1.1);
}


.agenForm.active #step-counter3.step-5 .step-counter > div:nth-child(3) > span {
transform: translate(-50%,-50%) scale(1.1);
}

.agenForm.active .step-5 .step-counter > span.one:before,
.agenForm.active .step-5 .step-counter > span.two:before,
.agenForm.active .step-5 .step-counter > span.three:before,
.agenForm.active .step-5 .step-counter > span.four:before {
width: 100%;
}


/* STEP 6 */

.agenForm.active .step-6 .step-counter > div:nth-child(1),
.agenForm.active .step-6 .step-counter > div:nth-child(2),
.agenForm.active .step-6 .step-counter > div:nth-child(3),
.agenForm.active .step-6 .step-counter > div:nth-child(4),
.agenForm.active .step-6 .step-counter > div:nth-child(5),
.agenForm.active .step-6 .step-counter > div:nth-child(6) {
background: #616467;
}

.agenForm.active .step-6 .step-counter > div:nth-child(6) > span {
transform: translate(-50%,-50%) scale(1.1);
}


.agenForm.active .step-6 .step-counter > span.one:before,
.agenForm.active .step-6 .step-counter > span.two:before,
.agenForm.active .step-6 .step-counter > span.three:before,
.agenForm.active .step-6 .step-counter > span.four:before,
.agenForm.active .step-6 .step-counter > span.five:before {
width: 100%;
}

#step_6 .btn {
    width: auto;
    line-height: normal;
    height: auto;
    font-size: 21px;
    font-weight: 600;
    border-radius: 6px;
    padding: 6px 24px;
    margin-top: 24px;
}

.agenForm.active #step-counter4.final {
display: none;
}


.agenForm.active form > .title {
padding: 0;
height: 0;
overflow: hidden;
}

.agenForm .step {
background: rgba(255, 255, 255, 0.70);
padding: 20px 30px 30px 30px;
text-align: center;
transition: 150ms linear background, 150ms ease-out width;
}

.custom-switch .custom-control-input:checked~.custom-control-label::after {
    background-color: #4c0505 !important;
}
.custom-control-label::before {
    border: none !important;
    background-color: white;
}
.switch-categoria label {
    text-transform: uppercase;
    font-size: 20px;
    font-weight: 700;
    font-family: 'Barlow Condensed';
    cursor: pointer;
    -webkit-user-select: none; /* Safari */        
    -moz-user-select: none; /* Firefox */
    -ms-user-select: none; /* IE10+/Edge */
    user-select: none; /* Standard */
    transition: color .4s;
}
.custom-switch .custom-control-label::before {
    left: -71px;
    height: 23px;
    width: 60px;
    pointer-events: all;
    border-radius: 12px;
    background-color: white;
}
.custom-control-input:checked~.custom-control-label::before {
    background-color: white;
}
.switch-categoria .vendere {
    position: absolute;
    left: 50%;
    transform: translateX(-118px);
}
.switch-categoria .affittare {
    margin-left: 115px;
}
.custom-switch .custom-control-label::after {
    width: 19px;
    height: 19px;
    left: -68px;
    background-color: #4c0505;
    border-radius: 50%;
}
.custom-switch .custom-control-input:checked~.custom-control-label::after {
    -webkit-transform: translateX(35px);
    transform: translateX(35px);
    background-color: #4c0505;
}
.custom-control-input:focus~.custom-control-label::before {
    box-shadow: none !important;
}


body.homepage .agenForm .step .step-content.mono > .i-section,
body.vendere .agenForm .step .step-content.mono > .i-section,
body.affittare .agenForm .step .step-content.mono > .i-section {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: center;
}
body.homepage .agenForm .step .step-title,
body.vendere .agenForm .step .step-title,
body.affittare .agenForm .step .step-title {
    text-transform: uppercase;
    font-family: 'Barlow Condensed';
    font-weight: 700;
}
body.homepage .agenForm .step .icon-field,
body.vendere .agenForm .step .icon-field,
body.affittare .agenForm .step .icon-field {
    flex-basis: 40%;
    width: auto;
    max-width: 44%;
    flex-grow: 1;
    align-items: center;
    display: flex;
    flex-direction: row;
}
body.homepage .agenForm .step .icon-field .field-container,
body.vendere .agenForm .step .icon-field .field-container,
body.affittare .agenForm .step .icon-field .field-container {
    flex-grow: 1;
    margin-left: 24px;
    max-width: 240px;
}
body.homepage .agenForm .step .icon-field .field-container,
body.vendere .agenForm .step .icon-field .field-container,
body.affittare .agenForm .step .icon-field .field-container {
    flex-grow: 1;
    margin-left: 24px;
    max-width: 240px;
}
body.homepage .agenForm .step .icon-field .field-container .ui-slider-handle,
body.vendere .agenForm .step .icon-field .field-container .ui-slider-handle,
body.affittare .agenForm .step .icon-field .field-container .ui-slider-handle {
    display: block;
    width: 6px;
    height: 20px;
    background: #4c0505;
    position: absolute;
    left: 3px;
    top: -7px;
    border-radius: 6px;
    cursor: pointer;
    border: 0;
    outline: none !important;
    margin-top: 1px;
    margin-left: -3px;
}
body.homepage .agenForm .step .icon-field .field-container .ui-slider,
body.vendere .agenForm .step .icon-field .field-container .ui-slider,
body.affittare .agenForm .step .icon-field .field-container .ui-slider {
    height: 5px;
    background: white;
    border-radius: 8px;
    border: none !important;
    border-bottom: 0;
    position: relative;
    margin: 10px 0 10px;
}
body.homepage .agenForm .step .icon-field .field-container .ui-slider-handle,
body.vendere .agenForm .step .icon-field .field-container .ui-slider-handle,
body.affittare .agenForm .step .icon-field .field-container .ui-slider-handle {
    height: 17px;
}
body.homepage .agenForm .step .icon-field .field-container .ui-slider-range,
body.vendere .agenForm .step .icon-field .field-container .ui-slider-range,
body.affittare .agenForm .step .icon-field .field-container .ui-slider-range {
    background-color: #4c0505;
}
body.homepage .agenForm .step .icon-field .field-container .s-slider .label,
body.vendere .agenForm .step .icon-field .field-container .s-slider .label,
body.affittare .agenForm .step .icon-field .field-container .s-slider .label {
    text-align: left;
    color: white;
}
body.homepage .agenForm .step .icon-field .field-container .s-slider .slider-indicators,
body.vendere .agenForm .step .icon-field .field-container .s-slider .slider-indicators,
body.affittare .agenForm .step .icon-field .field-container .s-slider .slider-indicators {
    display: flex;
    position: absolute;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    bottom: -25px;
    height: 20px;
    width: calc(100% + 15px);
    margin-left: -4px;
}
body.homepage .agenForm .step .icon-field .field-container .s-slider .slider-indicators span,
body.vendere .agenForm .step .icon-field .field-container .s-slider .slider-indicators span,
body.affittare .agenForm .step .icon-field .field-container .s-slider .slider-indicators span {
    display: block !important;
    color: white;
    font-size: 13px;
    position: static !important;
    opacity: 1 !important;
    cursor: pointer;
}
body.homepage .agenForm .step .icon-field .field-container .s-slider .import span,
body.vendere .agenForm .step .icon-field .field-container .s-slider .import span,
body.affittare .agenForm .step .icon-field .field-container .s-slider .import span {
    display: inline !important;
    opacity: 1 !important;
    top: 2px;
    right: 0;
    font-size: 14px;
    color: white;
    text-align: right;
}

.agenForm #step_1.step {
    border-radius: 6px 6px 0 0;
}

.agenForm #step_6.step {
padding: 20px 30px 15px 30px;
border-radius: 0 0 6px 6px;
}

.agenForm #cerca #step_3.step {
padding: 20px 30px 15px 30px;
}

.agenForm .step .step-title {
font-size: 20px;
line-height: 30px;
font-weight: 500;
}

.agenForm .step .step-content {
padding: 20px 0 0 0;
}

.agenForm #lavora .step {
padding: 10px 30px 0px 30px;
}

.agenForm #cerca #step_1 .step-content {
padding: 30px 0 0 0;
}

.agenForm .step .step-content.icons {
display: flex;
justify-content: space-around;
flex-wrap: nowrap;
align-items: center;
position:relative;
padding-top: 0;
margin: 0 auto;
margin-top: 20px;
max-width: 580px;
}

.agenForm .step .step-content.icons .icon-error {
display: block;
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%,65px);
color: #db4035;
font-size: 12px;
}

.agenForm .map-step.step,
.agenForm #step_5.step {
padding: 0;
}

.agenForm .step-content.dual {
display: flex;
justify-content: space-between;
flex-wrap: nowrap;
align-items: stretch;
padding: 0;
}

.agenForm #cerca .step-content.dual {
height: 238px;
}

.agenForm .step .step-content.dual .step-title  {
text-align: left;
margin-bottom: 15px;
}

.agenForm .step .step-content.dual > div {
width: 50%;
}
.agenForm .step .step-content.dual > div.r-section {
padding: 26px 30px 0 0;
border-radius: 6px;
overflow: hidden;
}
.agenForm .step .step-content.dual > div.r-section #map {
border-radius: 6px;
}

.agenForm .step .step-content.dual .l-section {
padding: 20px 30px;
}

.agenForm .step .step-content.dual .l-section .field-container {
}

.agenForm .step .step-content.dual .l-section .col-md-12 .field-container {
margin-top: 0;
}

.agenForm .step .step-content.mono {
display: flex;
justify-content: center ;
flex-wrap: nowrap;
align-items: center ;
}

.agenForm .step .step-content.mono > div {
width: 100%;
}

.agenForm .step .step-content.mono > .i-section {
display: flex;
justify-content: center;
flex-wrap: nowrap;
align-items: center;
}

form .checks {
margin-bottom: 37px;
}




#lavora .checks {
margin-top: 20px;
margin-bottom: 0px;
}

form .checks .checklist {
padding-left: 30px;
text-align: left;
position: relative;
margin-top: 0;
}

form .checks .checklist input[type="checkbox"] {
position: absolute;
background: #FFF;
width: 17px;
height: 17px;
-webkit-appearance: none;
-moz-appearance: none;
-ms-appearance: none;
-o-appearance: none;
appearance: none;
border-radius: 0px;
border: 2px solid #DDD;
cursor: pointer;
outline: none !important;
margin: 0;
display: inline-block;
top: 5px;
left: 0;
transition: linear all 150ms;
border-radius: 6px;
}

form .checks .checklist input[type="checkbox"]:before{
content: "";
position: absolute;
top: 1px;
left: 1px;
right: 1px;
bottom: 1px;
opacity: 0;
transition: opacity 200ms ease-out;
background-image: url(../img/misc/checked.svg);
}

form .checks .checklist input[type="checkbox"]:checked:before{
opacity:1
}

form .checks .checklist label {
font-size: 16px;
color: #333;
transition: linear all 150ms;
line-height: 13px;
}

form .checks .checklist.alert-field input[type="checkbox"],
form .field-container.alert-field textarea {
border: 2px solid #db4035;
}

form .checks .checklist.alert-field label,
form .field-container.alert-field label {
color: #db4035;
}

form .field-container {
position: relative;
margin-bottom: 15px;
}

@media (min-width: 992px) and (max-height: 670px ){
    .dettaglio-immobili form .field-container {
        margin-bottom: 5px;
    }
    .dettaglio-immobili .form-content {
        padding-bottom: 70px
    }
    .dettaglio-immobili .detail-form textarea {
        padding: 5px;
        height: 60px;
    }

    .dettaglio-immobili form .field-container input[type="tel"],
    .dettaglio-immobili form .field-container input[type="email"],
    .dettaglio-immobili form .field-container input[type="text"],
    .dettaglio-immobili form .field-container input[type="number"] {
		padding: 5px;

    }
}


.owl-item .main-section {
    padding-top: 20px;
}


form .field-container.slider-field {
padding: 0 0;
}

#raggio-slider {
margin-top: 1px;
margin-left: -5px;
transition: linear 150ms background;
display: block;
width: 18px;
height: 18px;
background: #4c0505;
position: absolute;
left: 30%;
top: -5px;
border-radius: 50%;
cursor: pointer;
border: 0;
outline: none !important;
}

#raggio-slider:hover {
background:#783a3c !important;
}


#slider {
border: 0;
background: #ddd;
border-radius: 10px;
border-left: 3px solid #4c0505;
border-right: 3px solid #4c0505;
height: 10px;
}

form .field-container input[type=tel],
form .field-container input[type=email],
form .field-container input[type=text],
form .field-container input[type=number] {
width: 100%;
height: 46px;
padding: 8px;
border: 0;
border-bottom: 2px solid #ddd;
transition: linear all 150ms;
outline: none !important;
font-size: 18px;
background: #ffffff;
border-radius: 6px
}

form .field-container select {
width: 100%;
height: 46px;
padding: 4px;
border: 0;
background: white;
border-bottom: 2px solid #ddd;
transition: linear all 150ms;
outline: none !important;
font-size: 18px;
border-radius: 6px;
}

form .field-container.alert-field select {
color: #db4035;
}

.first {
color: #777;
}

form .field-container input::-webkit-input-placeholder { /* Chrome/Opera/Safari */
color: #777;
}
form .field-container input::-moz-placeholder { /* Firefox 19+ */
color: #777;
}
form .field-container input:-ms-input-placeholder { /* IE 10+ */
color: #777;
}
form .field-container input:-moz-placeholder { /* Firefox 18- */
color: #777;
}


form .field-container.alert-field input::-webkit-input-placeholder,
form .field-container.alert-field textarea::-webkit-input-placeholder { /* Chrome/Opera/Safari */
color: #db4035;
}
form .field-container.alert-field input::-moz-placeholder,
form .field-container.alert-field textarea::-moz-placeholder { /* Firefox 19+ */
color: #db4035;
}
form .field-container.alert-field input:-ms-input-placeholder,
form .field-container.alert-field textarea:-ms-input-placeholder { /* IE 10+ */
color: #db4035;
}
form .field-container.alert-field input:-moz-placeholder,
form .field-container.alert-field textarea:-moz-placeholder { /* Firefox 18- */
color: #db4035;
}

.field-container.alert-field select,
.field-container.alert-field input[type=tel],
.field-container.alert-field input[type=email],
.field-container.alert-field input[type=number],
.field-container.alert-field input[type=text] {
border-bottom: 2px solid #db4035;
}

.field-container span {
color: #db4035;
position: absolute;
bottom: -10px;
font-size: 12px;
opacity: 0;
transition: linear all 150ms;
left: 0;
display: none !important;
}

.field-container.alert-field span {
display: block;
opacity: 1;
bottom: -20px;
}

#address-reset {
position: absolute;
font-size: 0;
height: 20px;
width: 20px;
top: 12px;
right: 12px;
transform: rotate(45deg);
cursor: pointer;
}

#address-reset:before {
content: "";
display: block;
width: 2px;
height: 20px;
background: #dddddd;
position: absolute;
top: 50%;
right: 50%;
transform: translate(50%,-50%);
-webkit-transform: translate(50%,-50%);
transition: all linear 150ms;
}

#address-reset:after {
content: "";
display: block;
width: 20px;
height: 2px;
background: #dddddd;
position: absolute;
top: 50%;
right: 50%;
transform: translate(50%,-50%);
-webkit-transform: translate(50%,-50%);
transition: all linear 150ms;
}

#address-reset:hover:before {
background: #4c0505;
}

#address-reset:hover:after {
background: #4c0505;
}

.field-container.hint-container input {
padding-right: 40px !important;
}

.field-container.hint-container {
margin-bottom: 40px;
}

.field-container.hint-container div {
left: 0;
position: absolute;
font-size: 12px;
opacity: 0;
bottom: -30px;
transition: linear all 150ms;
padding: 2px 5px;
right: 0;
color: #4c0505;
text-align: left;
padding-left: 20px;
font-weight: 500;
}

.field-container.hint-container div img {
height: 14px;
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
}

.field-container.hint-container div.active {
display: block;
opacity: 1;
bottom: -22px;
}

.field-container select:focus,
.field-container input[type=text]:focus,
.field-container input[type=number]:focus,
.field-container input[type=tel]:focus,
.field-container input[type=email]:focus {
border-bottom: 2px solid #4c0505;
}

.field-container textarea:focus {
    border: 2px solid #4c0505;
    box-shadow: 0 0 0 0.2rem rgba(96,46,48,.25);
}

#superficie_terreno_container .field-container input {
padding-right: 60px;
}


#superficie_container .field-container input {
padding-right: 40px;
}

.agenForm .step .step-content.icons .icon {
height: 120px;
width: 120px;
background: #fff;
cursor: pointer;
transition: linear all 150ms;
position: relative;
padding: 0;
border: 1px solid #ddd;
padding-bottom: 30px;
display: flex;
justify-content: center;
align-items: center;
border-radius: 6px;
}

.agenForm .step .step-content.icons .icon img {height: 56px;}
.agenForm .step#step_2 .step-content.icons .icon img {width: 80px;}
body.lavora .agenForm .step#step_2 .step-content.icons .icon img {width: 60px;}

.agenForm .step .step-content.dual .r-section .map-canvas {
width: 100%;
height: 100%;
min-height: 220px;
}

.agenForm #cerca .step .step-content.dual .r-section .map-canvas {
min-height: 238px;
}

.agenForm .step .step-content.icons .icon svg {
width: 50px;
transition: all cubic-bezier(.18,.89,.42,1.85) .2s;
}

.agenForm .step .step-content.icons .icon:hover {
    border: 2px solid rgba(95,5,5,.6);
}
.agenForm .step .step-content.icons .icon:hover svg {
}

.agenForm .step .icon-field {
padding-top: 10px;
max-width: 220px;
width: 100%;
margin: 0 10px;
}

.agenForm .step .icon-field .field-container {
margin-bottom: 1px;
}

.agenForm .step .icon-field > div img {
width: 55px;
margin-bottom: 10px;
}

.agenForm .step .icon-field > div svg {
width: 48px;
height: 48px;
margin: 0px auto 15px;
display:block;
}

.agenForm .step .icon-field > div svg * {
transition: linear all 150ms;
fill:#666;
}

.agenForm .step .step-content.icons .icon svg * {
transition: linear all 150ms;
}
.agenForm .step .step-content.icons .icon.active svg * {
    stroke: white !important;
}
.agenForm .step .step-content.icons .icon.active svg rect {
    fill: white !important;
}


.agenForm .step .step-content.icons .icon.active svg *,
.agenForm .step .step-content.icons .icon:hover svg * {
}
.agenForm .step-content.icons .icon .icon-selected-triangle {
    display: none;
}

.agenForm .step-content.icons .icon.active .icon-selected-triangle {
    display: block;
    position: absolute;
    width: 0;
    transform: rotate(-45deg);
    right: -3.5px;
    height: 0;
    top: -13px;
    border-top: 20px solid transparent;
    border-bottom: 20px solid transparent;
    border-left: 20px solid #4c0505;
}

.agenForm .step .step-content.icons .icon .title {
font-size: 19px;
font-weight: 700;
position: absolute;
bottom: 0;
left: 2px;
right: 2px;
height: 38px;
z-index: 2;
text-transform: uppercase;
border-radius: 0 0 6px 6px;
font-family: 'Barlow Condensed', sans-serif;
}

.agenForm .step .step-content.icons .icon:before {
content: "";
display: block;
position: absolute;
bottom: 0;
left: 2px;
right: 2px;
height: 30px;
background:white;
z-index: 0;
border-radius: 0 0 6px 6px;
}

.agenForm .step .step-content.icons .icon:after {
content: "";
display: block;
position: absolute;
bottom: 0;
left: 2px;
right: 2px;
height: 30px;
background:white;
z-index: 1;
transition: linear 150ms all;
opacity: 0;
border-radius: 0 0 6px 6px;
}


/* .agenForm .step .step-content.icons .icon:hover:after {
opacity: 1;
background:#4c0505;
} */

.agenForm .step .step-content.icons .icon.active:after {

}

.agenForm .step .step-content.icons .icon.active .title {
}

/* .agenForm .step .step-content.icons .icon:hover .title {
color: #fff;
} */

.agenForm .step .step-content.icons .icon.active {
    border: 2px solid #4c0505;
}

.agenForm .step-next {
padding: 0px 0 16px;
background: rgba(255, 255, 255, 0.70);
transition: 150ms linear background, 150ms linear width;
border-radius: 0 0 6px 6px;
}

.agenForm .step-next.final {
padding: 0px 0 16px !important;
background: rgba(255, 255, 255, 0.70);
transition: 150ms linear background, 150ms linear width;
border: 0 !important;
justify-content: center !important;
display: none !important;
}

.agenForm.interaction .step-next,
.agenForm.active .step-next,
.agenForm:hover .step-next,
.agenForm.interaction form > .title,
.agenForm:hover form > .title,
.agenForm.interaction .step,
.agenForm.active .step,
.agenForm:hover .step {
background: rgba(255, 255, 255, 0.70);
}

.agenForm.active .step .step-content {
/*min-height: 214px;*/
}

.agenForm.active #step_5.step .step-content.icons {
min-height: 188px;
}

.agenForm.active .step-next {
padding: 14px 30px 15px 30px;
display: flex;
justify-content: space-between;
flex-wrap: nowrap;
align-items: stretch;
}

.agenForm .step-next .btn-fwd {
    display: inline-block;
    height: auto;
    line-height: normal;
    padding: 6px 24px;
    min-width: auto;
    width: auto;
    text-align: center;
    font-size: 21px;
    font-weight: 400;
    transition: linear background 150ms;
    padding: 0 50px 0 30px;
    cursor: pointer;
    box-shadow: 0 0 0 !important;
    border: 2px solid transparent;
    background: #4c0505;
    color: #fff;
    text-transform: uppercase;
    border-radius: 6px;
    position: relative;
    line-height: 42px;
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 600;
}

.agenForm .step-next .btn-fwd:after {
content:"";
display: block;
width: 16px;
height: 16px;
background: url(/assets/img/misc/btn-arrow.svg);
position: absolute;
right: 20px;
top: 50%;
transform: translateY(-50%);
}

.agenForm .step-next .btn-fwd:hover {
background:#783a3c !important;
border-color: transparent !important;
}

.agenForm.active .step-next .btn-fwd,
.agenForm.active .step-next .btn-back {
background: white !important;
height: 40px !important;
line-height: 42px !important;
width: 120px !important;
box-shadow: 1px 1px 6px 0 rgba(0,0,0,.15) !important;
font-size: 21px !important;
text-transform: uppercase !important;
font-weight: 700 !important;
color: #4c0505 !important;
cursor: pointer !important;
min-width: 0;
padding: 0;
border: 0;
font-family: 'Barlow Condensed', sans-serif;
border-radius: 6px;
font-weight: 600;
}

.agenForm.active .step-next .btn-fwd:after {
display: none;
}

.agenForm.active .step-next .btn-fwd:hover,
.agenForm.active .step-next .btn-back:hover {
background: #4c0505 !important;
color: #fff !important;
}

.last-content {
padding: 0 !important;
min-height: 230px;
display: flex;
flex-wrap: wrap;
justify-content: center;
align-content: center;
margin-top: 10px;
}

.last-title {
font-size: 36px;
font-family: 'Barlow', sans-serif;
text-transform: uppercase;
color: #4c0505;
margin-bottom: 15px;
}

.last-message {
font-size: 16px;
margin-bottom: 30px;
}

/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {
}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {
}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {

.agenForm.active .step-counter-container {
/* padding: 0 15px;
border-radius: 6px 6px 0 0; */
display: none !important;
}

.agenForm.active .step-next {
    border: none !important
}
.agenForm .step .step-content.mono {
    flex-wrap: wrap;
}

body.homepage .agenForm .step .icon-field,
body.vendere .agenForm .step .icon-field,
body.affittare .agenForm .step .icon-field {
flex-basis: 100% !important;
}

.agenForm .step .step-content {
}

body.homepage .agenForm #step_3.step,
body.vendere .agenForm #step_3.step,
body.affittare .agenForm #step_3.step {
    padding: 15px 24px !important;
}
body.homepage .agenForm #step_4.step .step-title,
body.vendere .agenForm #step_4.step .step-title,
body.affittare .agenForm #step_4.step .step-title {
    padding-top: 16px !important;
}
body.homepage #step_risultato,
body.vendere #step_risultato,
body.affittare #step_risultato {
    border-radius: 0 0 6px 6px !important;
}

body.homepage #step_5.step input[type=text], 
body.homepage #step_5.step input[type=tel], 
body.homepage #step_5.step input[type=email],
body.homepage #step_5.step input[type=number],
body.vendere #step_5.step input[type=text], 
body.vendere #step_5.step input[type=tel], 
body.vendere #step_5.step input[type=email],
body.vendere #step_5.step input[type=number],
body.affittare #step_5.step input[type=text], 
body.affittare #step_5.step input[type=tel], 
body.affittare #step_5.step input[type=email],
body.affittare #step_5.step input[type=number] {
    border: 2px solid #ddd !important;
}

body.homepage #step_6 .btn,
body.vendere #step_6 .btn,
body.affittare #step_6 .btn {
    margin-top: 0 !important;
}

body.homepage .agenForm .step .icon-field .field-container,
body.vendere .agenForm .step .icon-field .field-container,
body.affittare .agenForm .step .icon-field .field-container {
    max-width: none !important;
}

.agenForm {
box-shadow: 0 0 0 0px rgba(0, 0, 0, 0.11);
background: none !important;
width: calc(100% - 32px);
left: 16px;
bottom: 16px;
}
.agenForm.active {
width: calc(100% - 32px) !important;
}

.cerca-casa .agenForm,
.vendere .agenForm,
.lavora .agenForm,
.affittare .agenForm ,
.lp1 .agenForn {
padding-bottom: 100px;
background: #fff;
}

.lavora .agenForm {
padding-bottom: 30px;
}

.agenForm .switcher > div {
height: 50px !important;
background: #e6e6e6 !important;
font-size: 15px;
}

.agenForm .switcher > div.active {
    background: #fff!important;
color: #616467 !important;
}

.agenForm.interaction .switcher > div.active, .agenForm:hover .switcher > div.active {
    background: #fff!important;
color: #616467 !important;
font-size: 15px;
}

.agenForm .step-next {
    background: rgba(255, 255, 255, 0.70) !important;
}

.agenForm form > .title {
font-size: 16px;
background: #f4f4f4 !important;
}

.agenForm .step {
padding: 15px 15px !important;
background: white !important;
border-radius: 6px 6px 0 0 ;
}

.agenForm #step_1.step {
    background: rgba(255, 255, 255, 0.70) !important;
    padding: 15px 15px !important;
}
.agenForm #step_2.step {
    padding: 15px 24px !important;
}
.switch-categoria .affittare {
    color: white;
}

.agenForm #lavora .step {
padding: 15px 15px;
}

.agenForm #step_6.step {
padding: 15px 15px;
border-radius: 0 0 6px 6px;
}

.agenForm #cerca #step_3.step {
padding: 15px 15px;
}

.agenForm .step .step-title {
font-size: 20px;
line-height: 20px;
height: auto !important;
margin: 0 auto;
}

.agenForm .step #step_2_title {
max-width: 270px;
}

.agenForm .step .step-content.icons {
flex-wrap: wrap;
justify-content: center;
padding: 0 !important;
padding-top: 16px !important;
}

.agenForm .step .step-content.icons .icon {
height: 120px;
width: 120px;
background: #fff;
cursor: pointer;
transition: linear all 150ms;
position: relative;
padding: 0 0 30px 0;
transform: translateY(0px) !important;
margin: 0 10px 20px 10px;
}

.agenForm.active .step-next {
    padding-top: 32px !important;
    background: white !important;
}

.agenForm .step .icon-field > div img {
    width: 55px !important;
    height: auto !important;
}

body.homepage .agenForm .step .icon-field .field-container,
body.vendere .agenForm .step .icon-field .field-container,
body.affittare .agenForm .step .icon-field .field-container {
    margin-left: 24px !important;
}

.agenForm .s-slider .import label,
.agenForm .s-slider .import span,
.agenForm .s-slider .slider-indicators span {
    color: #616467 !important;
}
body.homepage .agenForm .step .icon-field .field-container .ui-slider,
body.vendere .agenForm .step .icon-field .field-container .ui-slider,
body.affittare .agenForm .step .icon-field .field-container .ui-slider {
    background-color: #a7a8a9 !important;
}

.agenForm .step .step-content.dual {
display: block;
height: auto !important;
}

.agenForm .step .step-content.dual > div {
width:100%;
padding: 0 !important;
}

.agenForm .step .step-content.dual > .l-section {
width:100%;
padding: 15px 15px !important;
}

.agenForm .step .step-content.dual > .r-section {
height: 238px;
}

.agenForm .step #step_map_content.step-content.dual > .r-section {
height: 300px;
}

form .field-container input[type=text],
form .field-container input[type=number] {
height: 40px;
font-size: 18px;
}

form .field-container select {
font-size: 18px;
height: 40px;
}

.agenForm .step .step-content.dual .r-section .map-canvas {
width: 100%;
margin-top: 0;
transition: ease-out 150ms height;
}

.agenForm .step .step-content.dual .r-section .map-canvas.active {
height: 300px;
margin-top: 0;
}

.agenForm .step .step-content.mono > .i-section {
flex-wrap: wrap;
}

.agenForm .step .icon-field {
max-width: 100%;
display: flex;
margin: 0 0 20px 0
}

.agenForm .step .icon-field .field-container {
flex-grow: 1;
margin-left: 15px
}

.agenForm .step .icon-field > div svg {
width: 40px;
height: 40px;
margin: 0px 10px 0 0;
display:block;
}

.agenForm .step-next .btn-fwd {
font-size: 18px;
padding: 0 30px 0 20px;
height: 48px;
line-height: auto;
}

.agenForm .step-next .btn-fwd:after {
width: 11px;
height: 11px;
right: 12px;
}

.agenForm.active .step-next .btn-fwd, .agenForm.active .step-next .btn-back {
    font-size: 18px !important;
}

.agenForm #almost-title-search,
.agenForm #almost-title {
height:50px;display: none;
line-height: 54px;font-family: 'Barlow', sans-serif;color: #fff;text-transform: uppercase;font-size: 14px;position: relative;padding: 0;border-radius: 6px 6px 0 0;}

.agenForm #finished-title-search,
.agenForm #finished-title {    border-radius: 6px 6px 0 0;
    outline: none;height:50px;line-height: 54px;font-family: 'Barlow', sans-serif;color: #fff;text-transform: uppercase;font-size: 15px;position: relative;padding: 0 0 0 25px;}


.agenForm #finished-title-search .icon, .agenForm #finished-title .icon {border-radius: 6px 0 0 0;height: 50px;width: 30px;position: absolute;top: 0;left: 0;background-color: #48964a;background-image: url(../img/misc/check.svg);background-size: 15px;background-repeat: no-repeat;background-position: center;}

}

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
}



/*---------------------------------------------------------------------------
HERO - SMALL
---------------------------------------------------------------------------*/


/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {
}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {
}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {
    body.homepage .agenForm .step .icon-field,
    body.vendere .agenForm .step .icon-field,
    body.affittare .agenForm .step .icon-field {
        max-width: none !important;
    }
}

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
}


/*---------------------------------------------------------------------------
HOMEPAGE - PUNTI DI FORZA
---------------------------------------------------------------------------*/

.features {
display: flex;
flex-wrap: nowrap;
align-items: center;
text-align: center;
}

.features .no-icon-2 {
    width: 50%;
    cursor: pointer;
}
.features .no-icon-3 {
    width: 33.33%;
    cursor: pointer;
}
.features .icon {
width: 25%;
cursor: pointer;
}

.features .icon > div {
width: 150px;
height: 150px;
padding: 0px;
border-radius: 50%;
display: inline-block;
transition: 100ms linear all;
padding: 10px;
}

.features .icon > div svg * {
fill: #636469;
}

.inverted .features .icon > div svg * {
fill: #fff !important;
}

.features .no-icon-2 h5 ,
.features .no-icon-3 h5 ,
.features .icon h5 {
font-size: 18px;
text-transform: uppercase;
color: #4c0505;
font-family: 'Barlow', sans-serif;
line-height: 24px;
margin-top: 15px;
transition: 100ms linear all;
display: inline-block;
letter-spacing: 1px;
}

.features .icon:hover > div {
padding: 1px;
}

.features .icon:hover > div svg * {
fill: #4c0505;
}

.features .icon:hover h5 {
color: #4c0505;
}

/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {
}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {

.features .icon > div {
width: 120px;
height: 120px;
padding: 5px;
}
    .features .no-icon-2 h5 ,
    .features .no-icon-3 h5 ,
.features .icon h5 {
font-size: 14px;
line-height: 22px;
}

}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {

.features {
flex-wrap: wrap;
}

.features .icon {
width: 50%;
margin-bottom: 30px;
}

.features .icon > div {
width: 110px;
height: 110px;
padding: 5px;
display: block;
margin: 0 auto;
}

    .features .no-icon-2 h5 ,
    .features .no-icon-3 h5 ,
.features .icon h5 {
font-size: 12px;
line-height: 20px;
}

}

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
}






/*---------------------------------------------------------------------------
HOME CAROUSEL
---------------------------------------------------------------------------*/

#home_carousel {
position: relative;
}


#home_carousel .owl-theme .owl-nav {
margin-top: 30px;
}

#home_carousel.owl-theme .owl-nav [class*=owl-] {
background-image: url(/assets/img/misc/arrow-right-red.svg);
font-size: 0;
position: absolute;
top: 50%;
border-radius: 0;
background-color: transparent !important;
background-repeat: no-repeat;
padding: 0;
width: 30px;
height: 30px;
margin: 0;
margin-top: -20px;
opacity: 0.7;
transition: opacity linear 150ms;
outline: none !important;
}

#home_carousel.owl-theme .owl-nav [class*=owl-]:hover {
background-image: url(/assets/img/misc/arrow-right-red.svg);
background-color: transparent !important;
opacity: 1;
}

#home_carousel.owl-carousel .owl-nav .owl-next {
right: 20px;
}

#home_carousel.owl-carousel .owl-nav .owl-prev {
left: 20px;
transform:rotate(180deg);
-webkit-transform:rotate(180deg);
}

#home_carousel.owl-carousel .owl-nav .owl-next.disabled {
display: none;
}

#home_carousel.owl-carousel .owl-nav .owl-prev.disabled {
display: none;
}

#home_carousel.owl-theme .owl-nav {
margin-top: 0px;
}


/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {

#home_carousel {
padding: 0 30px;
}

#home_carousel.owl-carousel .owl-nav .owl-next {
right: 0;
}

#home_carousel.owl-carousel .owl-nav .owl-prev {
left: 0;
}

}


/*---------------------------------------------------------------------------
FOOTER
---------------------------------------------------------------------------*/

.footer > .container {
position: relative;
z-index: 1;
}

.error-404 section.gray,
.error-500 section.gray {
    height: 0;
    padding: 0;
}

.affittare .fimaa-footer,
.vendere .fimaa-footer,
.error-404 .fimaa-footer,
.error-500 .fimaa-footer,
.lp1 .fimaa-footer {display: none !important;}

.fimaa-footer {

position: absolute;

width: 300px;

top: 0;

background: #f7f7f6;

left: 50%;

transform: translate(-50%,-50%);

height: 300px;

border-radius: 50% 50% 0 0;

padding-top: 20px;

z-index: 0;
}

.fimaa-footer img {width: 120px;margin-bottom: 10px;}

.fimaa-footer div {

font-size: 12px;

font-weight: 500;

padding: 0 40px;
}

.footer {padding: 50px 0;background: #f7f7f6;min-height: 270px;position: relative;padding-top: 80px;}

.homepage .footer,
.homepage .fimaa-footer {
background: #f7f7f6;
}

.footer .f-flex {
display: flex;
flex-wrap: nowrap;
justify-content: space-between;
}

.footer .f-flex .f-data {
width: 250px;
font-size: 13px;
color:#616467;
}

.footer .f-flex .f-data a {
color:#616467;
}

.footer .f-links {
font-size: 16px;
color:#616467;
margin-top: 50px;
}

.footer .f-links a {
color:#616467;
}

.f-logo {margin-bottom: 10px;padding-bottom: 10px;/* border-bottom: 1px solid #ddd; */width: 180px;}

.f-logo .st0{
fill:#616467;
}

.f-logo .st1{
fill:#969798;
}

.f-logo .st2{
fill:#4c0505;
}

.f-socials {
display: flex;
}

.f-socials a {
text-decoration: none;
width: 36px;
height: 36px;
border-radius: 50%;
transition: all linear 150ms;
}

.f-socials a.fb {
border: 2px solid #3b5998;
}

.f-socials a.fb svg * {
fill: #3b5998;
}

.f-socials a.fb:hover {
background: #3b5998;
}

.f-socials a.tw {
border: 2px solid #1baae1;
}

.f-socials a.tw svg * {
fill: #1baae1;
}

.f-socials a.tw:hover {
background: #1baae1;
}

.f-socials a.in {
border: 2px solid #4e433c;
}

.f-socials a.in svg * {
fill: #4e433c;
}

.f-socials a.in:hover {
background: #4e433c;
}

.f-socials a.ln {
border: 2px solid #4875b4;
}

.f-socials a.ln svg * {
fill: #4875b4;
}

.f-socials a.ln:hover {
background: #4875b4;
}

.f-socials a + a {
margin-left: 15px;
}

.f-socials a svg {
}

.f-socials a svg * {
transition: all linear 150ms;
}

.f-socials a:hover svg * {
fill: #ffffff;
}

.f-socials a svg .st0 {
fill: none !important;
}

.footer .f-flex .f-menu {
width: 200px;
color:#4c0505;
}

.footer .f-flex .f-menu span {
font-family: 'Barlow', sans-serif;
display: block;
letter-spacing: 1.5px;
font-size: 22px;
}

.footer .f-flex .f-menu a {
display: block;
margin-top: 5px;
color:#616467;
font-size: 18px;
}

.footer .f-flex .f-contacts {
position: relative;
padding-bottom: 20px;
}

.footer .f-flex .f-contacts .title {
font-family: 'Barlow', sans-serif;
color: #4c0505;
text-transform: uppercase;
letter-spacing: 1.5px;
font-size: 22px;
}



.footer .f-flex .f-contacts .f-phone,
.footer .f-flex .f-contacts .f-mail {
display: flex;
margin-top: 10px;
align-items: center;
}

.footer .f-flex .f-contacts .f-phone > div,
.footer .f-flex .f-contacts .f-mail > div {
width: 38px;
height: 38px;
padding: 6px;
}

.footer .f-flex .f-contacts .f-phone svg,
.footer .f-flex .f-contacts .f-mail svg {
fill: #4c0505;
display: block;
}

.footer .f-flex .f-contacts .f-phone > span,
.footer .f-flex .f-contacts .f-mail > span {
color: #4c0505;
font-size: 18px;
padding: 0 10px 0 5px;
transition: 150ms ease-out all;
display: block;
height: 38px;
line-height: 19px;
}

.footer .f-flex .f-contacts .f-phone > span a,
.footer .f-flex .f-contacts .f-mail > span a {
color: #4c0505 !important;
text-decoration: none !important;
}

.footer .f-flex .f-contacts .f-phone > span > span,
.footer .f-flex .f-contacts .f-mail > span > span {
display: block;
font-size: 16px;
color: #616467;
}

/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {

	.fimaa-footer {

	}

	.fimaa-footer img {

	}

	.fimaa-footer div {

    }
    
    .footer .f-flex .f-contacts .f-phone > span,
    .footer .f-flex .f-contacts .f-mail > span {
    color: #4c0505;
    font-size: 22px;
    padding: 0 10px 0 5px;
    transition: 150ms ease-out all;
    display: block;
    height: 38px;
    line-height: 23px;
    }

    .footer .f-flex .f-contacts .f-phone > span > span,
        .footer .f-flex .f-contacts .f-mail > span > span {
        font-size: 18px;
    }
}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {

	.f-socials {
		justify-content: center;
	}

	.f-socials a {

	}

	.fimaa-footer {

	}

	.fimaa-footer img {

	}

	.fimaa-footer div {

	}

.footer {padding: 30px;padding-top: 60px;}

.footer .f-flex {
flex-wrap: wrap;
justify-content: center;
padding: 0 0;
margin: 0 auto;
}

.footer .f-flex .f-data,
.footer .f-flex .f-menu,
.footer .f-flex .f-contacts {
width: calc(100% / 3);
text-align: center;
margin-top: 30px;
}

.footer .f-flex .f-data {
width: 100%;
margin: 0;
margin-bottom: 15px;
}

.f-logo {
margin: 0 auto 10px;
width: 300px;
padding-bottom: 15px;
}

.footer .f-flex .f-contacts .f-phone > div,
.footer .f-flex .f-contacts .f-mail > div {
display: none;
}

.footer .f-flex .f-contacts .f-phone > span,
.footer .f-flex .f-contacts .f-mail > span {
width: 100%;
}

}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {

.error-404 section.gray,
.error-500 section.gray {
    height: 170px;
}

.listing-immobili .fimaa-footer,
.affittare .fimaa-footer,
.error-404 .fimaa-footer,
.error-500 .fimaa-footer,
.vendere .fimaa-footer,
.lp1 .fimaa-footer
{display: block !important;}
	.fimaa-footer {

	}

	.fimaa-footer img {

	}

	.fimaa-footer div {

	}


.footer .f-flex .f-data,
.footer .f-flex .f-menu,
.footer .f-flex .f-contacts {
width: 100%;
text-align: center;
}

.footer .f-flex .f-contacts {
margin-top: 10px;
}

.footer .f-flex .f-contacts .title {
display: none;
}

.f-logo {
max-width: 250px;
}

.footer .f-flex .f-menu {
display: none;
}

}

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
}



/*-----------------------
AGENCY JUXTAPOSITION
-----------------------*/

.j-container {
}

.j-row {
display: flex;
flex-wrap: nowrap;
justify-content: center;
padding-bottom: 0px;
position: relative;
align-items: center;
margin-bottom: -35px;
}

.j-trad {
width: 40%;
text-align: right;
margin-bottom: 0;
color: #969798;
}

.j-trad,
.j-trad > b {
color: #969798 !important;
}

.j-agen {
width: 40%;
text-align: left;
margin-bottom: 0;
}

.j-step {
    width: 32px;
    border-radius: 32px;
    text-align: center;
    margin: 0 32px;
    background: #4c0505;
    color: #fff;
    height: 32px;
    font-size: 28px;
    line-height: 31px;
    position: relative;
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 800;
}

.hide-vs {
display: none;
}

.j-row.j-title {
padding-bottom: 30px;
}

.j-row.j-title .j-step  {
font-size: 30px;
background: none;
color: #4c0505;
height: auto;
}

.j-row.j-title .j-trad {
font-size: 30px;
}

.j-row:before {
content:"";
display: block;
width: 0px;
border-left: 4px solid #4c0505;
position: absolute;
bottom: 0;
top: 0;
left: 50%;
margin-left: -1px;
z-index: 0;
}

.j-row:last-child {
margin-bottom: 0;
}

.j-row.j-title:before {
display: none;
}

.j-row:last-child:before {
bottom: 50%;
}

.j-row.first-row:before {
top: 50%;
}

.j-agen svg {
height: 70px;
max-width: 100%;
}

.j-agen svg .st0 {
fill:#616467;
}

.j-agen svg .st1 {
fill:#969798;
}

.j-agen svg .st2 {
fill:#4c0505;
}



.j-row.j-img {

}

.j-row.j-img:before {
display: none;
}

.j-row.j-img > div {

}

.j-row.j-img > div img {
max-width: 300px;
}



/* Large devices (desktops, less than 1400px) */
@media (max-width: 1399.98px) {
}

/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {
}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {
}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {

.j-row.j-img {
display: none;
}

.j-row {
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
padding-bottom: 20px;
position: relative;
align-items: center;
margin-bottom: 30px;
}

.j-row:before {
    height: 100%;
    top: 32px !important;
    left: 16px;
    z-index: 0;
}
.j-row:last-child:before {
    display: none;
}

.j-trad {
width: 100%;
text-align: center;
order: 2;
margin: 10px 0;
}

.j-agen {
width: 100%;
text-align: center;
order: 3;
}

.j-agen, .j-trad {
    margin-left: 64px;
    margin-top: -48px;
    text-align: left;
    border-radius: 0 0 32px 0 !important;
} 

.j-trad {
    border-right: 2px solid #4c0505 !important;
    border-left: none !important;
}

.j-trad.no, .j-agen.no {
    margin: 0px;
    padding: 0px;
}

.j-step {
margin: 0 0 15px 0;
padding: 0 10px;
text-align: left;
order: 1;
text-align: center;
}

.j-title.j-row .j-trad {
width: 100%;
text-align: center;
order: 1;
margin: 0 0;
font-size: 24px;
text-transform: uppercase;
}

.j-title .j-agen {
width: 100%;
text-align: center;
order: 3;
}

.j-title.j-row .j-step {
margin: 0 0 0 0;
padding: 0;
width: 100%;
order: 2;
text-align: center;
font-size: 24px;
}

.j-title.j-row .j-agen > img {
height: 40px;
max-width: 100%;
}
.hide-vs {
display: block;
order: 2;
margin-bottom: 10px;
font-family: 'Barlow', sans-serif;
color:#4c0505;
}

}

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
}



/*-----------------------
BOOTSTRAP OFFCANVAS
-----------------------*/

.offcanvas-stop-scrolling,
.offcanvas-stop-scrolling body,
.offcanvas-stop-scrolling div.custom-container {
height: 100vh !important;
overflow: hidden !important
}

.offcanvas-stop-scrolling:before {
content: "";
display: block;
top: 0;
bottom: 0;
left: 0;
right: 0;
position: fixed;
background: rgba(0, 0, 0, 0.8);
z-index: 9999999;
}

.navbar-offcanvas {
position: fixed;
width: 100%;
max-width: 320px;
left: -320px;
top: 0;
padding-left: 15px;
padding-right: 15px;
z-index: 1034;
overflow: scroll;
-webkit-overflow-scrolling: touch;
-webkit-transition: all 0.15s ease-in;
transition: all 0.15s ease-in;
background: #fff;
padding: 0;
overflow: auto;
z-index: 100000001;
overflow: hidden !important;
}

.navbar-offcanvas.no-scroll {
overflow: hidden !important;
}

.navbar-offcanvas .container {
width: 100%;
}

.navbar-offcanvas .field-container {
margin-bottom: 15px;
}

.navbar-offcanvas.in {
box-shadow: 0 0 20px rgba(0,0,0,0.3)
}

.navbar-offcanvas.navbar-offcanvas-fade {
opacity: 0
}

.navbar-offcanvas.navbar-offcanvas-fade.in {
opacity: 1
}

.navbar-offcanvas.offcanvas-transform.in {
-webkit-transform: translateX(320px);
transform: translateX(320px);
}

.navbar-offcanvas.offcanvas-position.in {
left: 0
}

.navbar-offcanvas.navbar-offcanvas-right {
left: auto;
right: -320px;
}

.navbar-offcanvas.navbar-offcanvas-right.offcanvas-transform.in {
-webkit-transform: translateX(-320px);
transform: translateX(-320px);
}

.navbar-offcanvas.navbar-offcanvas-right.offcanvas-position.in {
left: auto;
right: 0
}

.offcanvas-header {
padding: 15px 15px 15px 15px;
position: absolute;
height: 64px;
top: 0;
left: 0;
right: 0;
background: #f7f7f6;
color: #616467;
}

.offcanvas-header .title {
font-size: 26px;
line-height: 35px;
}

.offcanvas-header .close-offcanvas {
opacity: 1;
text-shadow: 0 0 0;
transform: rotate(-45deg);
-webkit-transform: rotate(-45deg);
right: 15px;
top: 19px;
position: absolute;
width: 25px;
height: 25px;
outline: 0!important;
transition: linear 150ms background,linear 150ms border;
font-size: 0;
box-sizing: content-box;
}

.offcanvas-header .close-offcanvas:before {
content: "";
display: block;
width: 1px;
height: 20px;
background: #616467;
position: absolute;
top: 50%;
right: 50%;
transform: translate(50%,-50%);
-webkit-transform: translate(50%,-50%);
}

.offcanvas-header .close-offcanvas:after {
content: "";
display: block;
width: 20px;
height: 1px;
background: #616467;
position: absolute;
top: 50%;
right: 50%;
transform: translate(50%,-50%);
-webkit-transform: translate(50%,-50%);
}

.offcanvas-body {
padding: 0 0px 0px 0px;
margin-top: 64px;
}



/* Category Navigation */

.custom-nav-offcanvas {
padding-left: 0;
list-style: none;
margin: 0 0 !important;
overflow: auto;
width: 100%;
}

.custom-nav-offcanvas li {
position: relative;
display: block;
}

.custom-nav-offcanvas li > a {
position: relative;
display: block;
padding: 10px 15px;
line-height: 30px;
background: #ffffff;
border-bottom: 1px solid #dfdfdf;
transition: background linear 150ms;
text-decoration: none!important;
color: #616467 !important;
font-weight: 300;
padding-right: 40px;
padding-left: 15px;
font-size: 16px;
}

.custom-nav-offcanvas li.main > a {
position: relative;
display: block;
padding: 10px 15px;
line-height: 30px;
background: #ffffff;
border-bottom: 1px solid #dfdfdf;
transition: background linear 150ms;
text-decoration: none!important;
text-transform: uppercase;
color: #616467 !important;
font-weight: 500;
padding-right: 40px;
padding-left: 15px;
font-size: 18px;
}

.custom-nav-offcanvas li a:before {
content: "";
background-image: url(../img/misc/angle-right-grey.svg);
width: 10px;
height: 10px;
display: block;
position: absolute;
right: 20px;
top: 20px;
transition: ease-in-out right .2s;
}

.custom-nav-offcanvas li a img {
position: absolute;
height: 52px;
width: 52px;
left: 0;
top: 50%;
transform: translateY(-50%);
}


/* Large devices (desktops, less than 1400px) */
@media (max-width: 1399.98px) {
}

/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {
}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {
}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {
.navbar-offcanvas.navbar-offcanvas-right.offcanvas-transform.in {
-webkit-transform: translateX(-100%);
transform: translateX(-100%);
}

.navbar-offcanvas.offcanvas-transform.in {
-webkit-transform: translateX(100%);
transform: translateX(100%);
}

.navbar-offcanvas.navbar-offcanvas-right {
right: -100%;
}

.navbar-offcanvas {
max-width: 100%;
left: -100%;
}

}

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
}






.agenForm.active .step .step-content.loader-step {
min-height: 220px;
position: relative;
}

.agenForm.active #cerca .step .step-content.loader-step {
min-height: 238px;
}

/*----preloader---*/
/* The Loader */
#loader-wrapper {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1000;
overflow: hidden;
}
#loader {display: block;position: relative;left: 50%;top: 50%;width: 100px;height: 100px;margin: -65px 0 0 -50px;border-radius: 50%;border: 2px solid transparent;border-top-color: #4c0505;-webkit-animation: spin 1.8s linear infinite;animation: spin 1.8s linear infinite;z-index: 11;}
#loader:before {
content: "";
position: absolute;
top: 5px;
left: 5px;
right: 5px;
bottom: 5px;
border-radius: 50%;
border: 2px solid transparent;
border-top-color: #969798;
-webkit-animation: spin 3s linear infinite;
animation: spin 3s linear infinite;
}
#loader:after {
content: "";
position: absolute;
top: 15px;
left: 15px;
right: 15px;
bottom: 15px;
border-radius: 50%;
border: 2px solid transparent;
border-top-color: #636469;
-webkit-animation: spin 2.5s linear infinite;
animation: spin 2.5s linear infinite;
}

#loader-wrapper .msg {
position: absolute;
left: 0;
right: 0;
bottom: 30px;
font-size: 16px;
font-weight: 500;
}

@-webkit-keyframes spin {
0% {
-webkit-transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(360deg);
}
}
@keyframes spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}
@-webkit-keyframes spin-reverse {
0% {
-webkit-transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(-360deg);
}
}
@keyframes spin-reverse {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(-360deg);
transform: rotate(-360deg);
}
}
#loader-wrapper .loader-section {
position: fixed;
top: 0;
width: 100%;
height: 100%;
background: #fff;
z-index: 10;
}
.loaded #loader {
opacity: 0;
transition: all 0.1s ease-in-out;
}
.loaded #loader-wrapper {
visibility: hidden;
transition: all 0.2s ease-in-out;
}
/*---end-preloader---*/






















body.tools {
background: #f7f7f7;
}

.tools-box {position: absolute;left: 0;top: 50%;transform: translateY(-50%);right: 0;}

.tools-box img {
max-width: 300px;
display: block;
margin: 0 auto 20px auto;
}

.tools-container {background: #ffffff;border-radius: 10px;box-shadow: 3px 3px 3px rgba(0,0,0,0.05);margin-top: 20px;padding: 30px;max-width: 600px;width:100%;box-sizing: border-box;margin: 20px auto 0 auto;}

.tools-container h2 {
text-align: center;
margin-bottom: 12px;
font-size: 18px;
font-weight: 500;
}

.tools-container .filter-container {
margin-bottom: 20px;
background: #f7f7f7;
padding: 15px;
margin-left: -15px;
margin-right: -15px;
}

.tools-container .filter-container .filter {

}

.tools-container label {
display: block;
font-weight: 700;
font-size: 11px;
text-transform: uppercase;
}

.tools-container  input[type=password],
.tools-container  input[type=text] {
border: 1px solid #ddd;
height: 46px;
width: 100%;
box-shadow: 0 0 0;
border-radius: 3px;
padding: 0 10px;
margin-bottom: 20px;
}

.tools-container .error {
	margin-bottom: 20px;
	color: white;
	background: #c81919;
}

.tools-container select {
border: 1px solid #ddd;
height: 34px;
width: 100%;
box-shadow: 0 0 0;
border-radius: 3px;
padding: 0 7px;

}

.thankyou #step_risultato{
    padding-top: 0;
    padding-bottom: 0;
}
.vendere-milano .hero .title {
    margin-top: 90px;
}


/* #################################################################################### */
/* assistenza ######################################################################### */
/* #################################################################################### */
@keyframes assistenza {
    from {
        bottom: -139px;
        opacity: 0.4;
    }
    to {
        bottom: 0;
        opacity: 1;
    }
}
#assistenza-button {
    position: fixed;
    right: 0;
    bottom: 0;
    box-shadow: none;
    background-color: #4c0505 !important;
    color: #FFFFFF !important;
    fill: #FFFFFF !important;
    border-radius: 999rem;
    font-size: 15px;
    border: none;
    font-weight: 700;
    line-height: 20px;
    margin: 10px 20px;
    min-width: 0;
    height: 46px;
    padding: 0 24px;
    z-index: 9999;
    text-transform: none;
    font-family: system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,Arial,sans-serif;
    margin-bottom: 14px;
    transition-property: bottom, opacity;
    transition-duration: 1s;
    transition-timing-function: ease-out;
    animation-name: assistenza;
    animation-duration: 1s;
    animation-iteration-count: 1;
    animation-direction: normal;
}

#assistenza-button svg {
    height: 20px;
    width: 20px;
    margin-right: 4px;
}
#assistenza-button span {
    line-height: 20px;
    letter-spacing: 0.6px;
    vertical-align: middle;
    margin-bottom: 2px;
    transition: none;
}

#assistenza-modal button {
    padding-left: 30px !important;
}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {
    #assistenza-button {
        padding: 0 13px;
    }
   
    #assistenza-button span {
        display: none;
    }

    #assistenza-button svg {
        margin-right: 0;
    }
}

/* #################################################################################### */
/* icone lavora con noi ############################################################### */
/* #################################################################################### */
body.lavora .step {
    border-radius: 6px 6px 0 0;
}

body.lavora #agenForm .step {
    padding-bottom: 30px;
}
body.lavora #agenForm .icons {
    justify-content: center;
    flex-wrap: wrap;
}
body.lavora #agenForm .icon {
    flex-basis: 29.8%;
    flex-grow: 1;
}
body.lavora #agenForm .icon img {
    width: 65px;
}
body.lavora #agenForm #step_3 .m-section {
    text-align: left;
}
body.lavora #agenForm #step_3 .m-section .step-title {
    display: block;
    margin-bottom: 8px;
}
body.lavora #agenForm #step_3 .m-section p {
    line-height: 22px;
}
body.lavora #agenForm #step_3 .m-section ul {
    margin-bottom: 1rem;
}

body.lavora #agenForm #step_3 .m-section div[id^="step_3_description_"] > *:last-child {
    margin-bottom: 0;
}

body.lavora #step_2,
body.lavora #step_3,
body.lavora #step_4 {
    margin-top: 30px;
}

body.lavora .arrow-down {
    bottom: 110px;
    display: block !important;
    cursor: auto;
}

body.lavora div[id^="step_3_description"] p,
body.lavora div[id^="step_3_description"] .icon-list.light li {
    font-size: 20px;
}
body.lavora div[id^="step_3_description"] p b,
body.lavora div[id^="step_3_description"] .icon-list.light li b {
    font-weight: 700;
}

body.lavora .agenForm .step .step-title {
    font-size: 26px;
}
body.lavora .agenForm .step div.step-title {
    text-transform: uppercase;
    font-weight: 700;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 20px;
}


body.lavora .field-container label {
    font-size: 18px;
}
body.lavora input[type="file"] {
    font-size: 16px;
}

body.lavora #lavora-con-noi-motivi h3 {
    font-size: 26px;
    font-weight: 400;
}

body.lavora #lavora-con-noi-motivi p,
body.lavora #lavora-con-noi-motivi .icon-list.light li {
    font-size: 20px;
}
body.lavora #lavora-con-noi-motivi p b,
body.lavora #lavora-con-noi-motivi .icon-list.light li b {
    font-weight: 700;
}

@keyframes lampeggio-candidati
{
    0% {border: 0px solid white; line-height: 40px;}
    50% {border: 2px solid #4c0505; transform: scale(1.2); line-height: 38px;}
    100% {border: 0px solid white; line-height: 40px;}
}

@-webkit-keyframes lampeggio-candidati /* Safari and Chrome - necessary duplicate */
{
    0% {border: 0px solid white; line-height: 40px;}
    50% {border: 2px solid #4c0505; transform: scale(1.2); line-height: 38px;}
    100% {border: 0px solid white; line-height: 40px;}
}
body.lavora #btn_do_step_next.lampeggio-candidati {
    animation: lampeggio-candidati 1.5s infinite;
    -webkit-animation: lampeggio-candidati 1.5s infinite;
}

/* Above small devices (landscape phones, more than 768px) */
@media (min-width: 767.98px) {
    body.lavora #step_2,
    body.lavora #step_3,
    body.lavora #step_4 {
        margin-top: 12px;
    }

    body.lavora #agenForm .icon {
        flex-basis: 29.8% !important;
    }
    body.lavora #agenForm #step_2_menu_stage .icon {
        flex-basis: 21.5% !important;
    }

    body.lavora #agenForm #step_3 .m-section {
        max-height: calc(100vh - 300px); /*per non andare oltre l'header con la descrizione delle posizioni di lavoro*/
        overflow-y: auto;
    }

    body.lavora .arrow-down {
        bottom: 82px;
    }
}


/* #################################################################################### */
/* MODIFICHE A PAGINA I NOSTRI IMMOBILI ############################################### */
/* #################################################################################### */

.listing-immobili #primary-filters {
    display: flex;
    flex-direction: row;
    width: 100%;
    align-items: center;
}
.listing-immobili #primary-filters > .fields-container {
    flex-grow: 1;
    margin-right: 16px;
}
.listing-immobili #primary-filters > .fields-container .field {
    width: 100%;
}
.listing-immobili #primary-filters #filters-toggle {
    position: relative;
    padding: 0 10px;
    min-width: 78px;
    height: 40px;
    flex-shrink: 0;
    text-align: center;
    transition: none;
    border-radius: 6px;
}
.listing-immobili #primary-filters #filters-toggle > span:not(.filters-badge) {
    margin-right: 14px;
    font-family: 'Barlow Condensed';
    font-size: 22px;
    font-weight: 600;
}
.listing-immobili #primary-filters #filters-toggle .filters-badge {
    position: absolute;
    top: -8px;
    right: -8px;
    width: 20px;
    height: 20px;
    background-color: white;
    border: 2px solid #4c0505;
    text-align: center;
    color: #4c0505;
    padding: .25em;
}
.listing-immobili #primary-filters #filters-toggle.active {
    background-color: white !important;
    color: #4c0505 !important;
    border: 1px solid #dddddd !important;
}
.listing-immobili #primary-filters #filters-toggle.active .filtri-apri {
    display: none;
}
.listing-immobili #primary-filters #filters-toggle .filtri-chiudi {
    display: none;
}
.listing-immobili #primary-filters #filters-toggle.active .filtri-chiudi {
    display: initial;
}
.listing-immobili #primary-filters #filters-toggle.active .filters-badge {
    display: none;
}

.listing-immobili #listing-filters {
    width: 100%;
    margin-top: 16px;
}
.listing-immobili #listing-filters .listing-filters-container {
    margin-bottom: 0;
}
.listing-immobili #listing-filters.active .listing-filters-container {
    padding-bottom: 32px;
    border-radius: 6px;
}
.listing-immobili #listing-filters.active {
    margin-bottom: 16px;
}
.listing-immobili #listing-filters.active .reset-filters {
    display: block !important;
}
.listing-immobili .prezzo-container {
    display: none;
}
.listing-immobili .prezzo-container.prezzo-active {
    display: flex;
}

.listing-immobili section#box-vendi-casa.active + .list-item {
    border: none;
}

.carousel.slide, .carousel-control-prev, .carousel-control-next {
    height: 100%;
}
.carousel.slide .carousel-inner .carousel-item {
    transition: -webkit-transform 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
}

.listing-immobili .footer-attach {
    padding-left: 15px;
    padding-right: 15px;
}
.listing-immobili #load-more {
    max-width: 200px;
    display: block;
    margin: auto;
    margin-top: 64px;
    margin-bottom: 32px;
    height: 48px;
    line-height: 48px;
    background-color: #4c0505;
    color: white !important;
    border-radius: 6px;
    padding: 6px 24px;
    color: white;
    font-weight: 600;
    min-width: auto;
    height: auto;
    width: auto;
    line-height: normal;
    font-size: 21px;
    font-family: 'Barlow Condensed', sans-serif;
}
.listing-immobili #load-more-oppure,
.listing-immobili #load-more-fine,
.listing-immobili #load-more-no-data {
    text-align: center;
    width: 100%;
    margin-bottom: 0;
}
.listing-immobili #load-more-fine,
.listing-immobili #load-more-no-data {
    margin-top: 64px;
}
.listing-immobili #immobili-loading {
    display: block;
    height: 32px;
    width: 32px;
    margin-top: 32px;
    color: #4c0505;
    width: 100%;
    height: 100vh;
}
.listing-immobili #immobili-loading .spinner-border {
    position: relative;
    left: calc(50% - 1rem);
    top: calc(15% - 1rem);
}

@media (max-width: 1199.98px) {
    .listing-immobili .prezzo-container.prezzo-active {
        display: block;
    }
}

/* Under large devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {
    .listing-immobili #primary-filters #filters-toggle {
        min-width: 42px !important;
    }

    .listing-immobili #primary-filters #filters-toggle > span:not(.filters-badge) {
        display: none !important;
    }
    .listing-immobili #listing-filters .listing-filters-container .field.field-double {
        width: 48%;
        flex-wrap: wrap;
    }

    .listing-immobili #listing-filter.active .listing-filters-container {
        padding-bottom: 32px;
    }

    
    .listing-immobili #immobili-container section#box-vendi-casa {
        margin: 32px -15px !important;
    }
    .listing-immobili .list-item .list-data {
        padding-bottom: 0 !important;
    }
    .listing-immobili .list-item .list-data .desc {
        display: none;
    }
    .listing-immobili .list-item .list-data .price {
        display: inline-block;
    }
    .listing-immobili .list-item .list-data .riferimento {
        float: right;
        margin-bottom: 0;
        margin-top: 4px;
    }

    .listing-immobili .list-item {
        padding-bottom: 94px !important;
    }

    .listing-immobili .list-item .list-data .list-CTA {
        width: calc(50% - 8px) !important;
        min-width: calc(50% - 8px) !important;
        bottom: 30px !important;
        text-align: center !important;
        padding: 0 !important;
        height: 48px !important;
        line-height: 48px !important;
        left: initial !important;
        right: initial !important;
    }
    .listing-immobili .list-item .list-data .list-CTA.first-CTA {
        left: 16px !important;
        width: auto !important;
        max-width: none !important;
        min-width: auto !important;
        height: 38px !important;
        line-height: 22px !important;
        bottom: 16px !important;
        padding: 6px 24px !important;
    }
    .listing-immobili .list-item .list-data .list-CTA.second-CTA {
        right: 0 !important;
    }
    .listing-immobili .list-item .list-data .list-CTA.second-CTA span {
        display: none !important;
    }
}

/* Above small devices (landscape phones, more than 768px) */
@media (min-width: 767.98px) {
    .listing-immobili #primary-filters {
        max-width: 50%;
        justify-content: flex-end;
    }
    .listing-immobili #listing-filters .listing-filters-container {
        justify-content: space-between;
        flex-wrap: wrap;
    }
    .listing-immobili #listing-filters .listing-filters-container .filter-container {
        margin-right: 32px;
        flex-direction: column;
    }

    .listing-immobili .hero.fs.footer-attach {
        padding-top: 0;
        padding-bottom: 0;
    }
    .listing-immobili #footer {
        margin-top: 192px;
    }
    .listing-immobili #load-more {
        max-width: none !important;
        margin-top: 150px;
        max-width: none;
    }
    .listing-immobili #load-more-fine,
    .listing-immobili #load-more-no-data {
        margin-top: 128px;
    }
}

/* #################################################################################### */
/* FIX VARI STILE PRECEDENTE ########################################################## */
/* #################################################################################### */

a.button {
    background-color: #4c0505;
    color: white !important;
    border-radius: 6px;
    padding: 8px 26px;
    color: white;
    font-weight: 600;
    min-width: auto;
    height: auto;
    width: auto;
    line-height: normal;
    font-size: 23px;
    font-family: 'Barlow Condensed', sans-serif;
}

@media (max-width: 767.98px) {
    a.button {
        font-size: 21px;
    }
}

/* #################################################################################### */
/* AGGIUNTA STILE SEZIONE COME FUNZIONA ############################################### */
/* #################################################################################### */

#come-funziona {
    background-image: url("../img/home/come_funziona.jpg");
    background-size: cover;
    background-repeat: no-repeat;
}

#come-funziona .section-title {
    color: #616467 !important;
}

.j-trad, .j-agen {
    background-color: #f7f7f6;
    padding: 32px 24px 0px 24px;
    border: 3px solid #4c0505;
    border-top: none;
}

.j-trad {
    border-radius: 0 32px;
    border-right: none;
}

.j-agen {
    border-radius: 32px 0;
    border-left: none;
}

.j-trad.no, .j-agen.no {
    visibility: hidden;
}

.j-trad h3, .j-agen h3 {
    font-size: 30px;
    margin-bottom: 12px;
    font-family: 'Barlow Condensed', sans-serif;
}

.j-trad p, .j-agen p {
    color: #616467;
    font-size: 20px;
}
.j-trad p b, .j-agen p b {
    font-weight: 700;
}

#come-funziona .text-center {
    margin-top: 64px;
}

/* #################################################################################### */
/* AGGIUNTA STILE SEZIONE SERVIZI ##################################################### */
/* #################################################################################### */

#servizi-section .section-title {
    color: #616467 !important;
}
#servizi-section .servizi-grid {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-evenly;
}
#servizi-section .servizi-grid .servizio {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    flex-grow: 1;
    text-align: center;
    margin: 24px;
    flex-basis: 29%;
    background-color: #f7f7f6;
    padding: 48px 24px 0px 24px;
    border: 3px solid #4c0505;
    border-radius: 0 32px;
    border-top: none;
    border-right: none;
}
#servizi-section .servizi-grid .servizio:last-child {
    border: none;
    border-radius: 0;
    background-color: inherit;
    padding: 0;
    padding-bottom: 32px;
}

#servizi-section .servizi-grid .servizio img {
    width: 64px;
}
#servizi-section .servizi-grid .servizio h3 {
    margin-top: 24px;
    font-size: 30px;
    font-family: 'Barlow Condensed', sans-serif;
}
#servizi-section .servizi-grid .servizio p {
    font-size: 20px;
    text-align: left;
    color: #616467;
}
#servizi-section .servizi-grid .servizio p b {
    font-weight: 700;
}

/* Under small devices (landscape phones, more than 768px) */
@media (max-width: 767.98px) {
    #servizi-section .servizi-grid .servizio {
        flex-basis: 51%;
    }

    #servizi-section .servizi-grid .servizio p {
        text-align: center;
    }
}

/* #################################################################################### */
/* CHI SIAMO ########################################################################## */
/* #################################################################################### */

#chi-siamo {
    background: url("../img/home/chi_siamo.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

#chi-siamo h2 {
    color: #f7f7f6;
    font-size: 42px;
    line-height: 42px;
    text-transform: uppercase;
    letter-spacing: normal;
}
#chi-siamo h2 span {
    font-size: 42px;
    line-height: 42px;
    color: #4c0505;
    margin-bottom: 0;
}

#chi-siamo h3 {
    color: #f7f7f6;
    font-size: 24px;
    font-weight: 400;
    margin-bottom: 64px;
    max-width: 400px;
}

#chi-siamo #mission {
    color: #616467;
    padding: 26px;
    background-color: #f7f7f6;
    border-radius: 6px;
}
#chi-siamo #mission p {
    font-size: 20px;
    font-weight: 300;
}
#chi-siamo #mission p b {
    font-weight: 700;
}

#offriamo-section .section-title {
    color: #616467 !important;
}
#offriamo-section .offriamo-grid {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-evenly;
}
#offriamo-section .offriamo-grid .offerta {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    flex-grow: 1;
    text-align: center;
    margin: 24px;
    flex-basis: 40%;
    background-color: #f7f7f6;
    padding: 48px 50px 0px 50px;
    border: 3px solid #4c0505;
    border-radius: 0 32px;
    border-top: none;
    border-right: none;
}

#offriamo-section .offriamo-grid .offerta img {
    height: 70px;
}
#offriamo-section .offriamo-grid .offerta h3 {
    margin-top: 24px;
    font-size: 30px;
    font-family: 'Barlow Condensed', sans-serif;
}
#offriamo-section .offriamo-grid .offerta p {
    font-size: 20px;
    text-align: left;
    color: #616467;
}
#offriamo-section .offriamo-grid .offerta p b {
    font-weight: 700;
}

/* Under small devices (landscape phones, more than 768px) */
@media (max-width: 767.98px) {    
    #chi-siamo #mission {
        margin-left: 0 !important;
    }
    
    #offriamo-section .offriamo-grid .offerta {
        flex-basis: 51%;
        padding: 48px 24px 0px 24px;
    }

    #offriamo-section .offriamo-grid .offerta p {
        text-align: center;
    }
}

#confronto-section {
    background-image: url("../img/chi-siamo/confronto.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

#confronto-section #confronto-title {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    margin-bottom: 50px;
}

#confronto-section #confronto-title h2:last-child {
    color: #4c0505;
    margin-left: 0;
    text-align: left;
}
#confronto-section #confronto-title h2 {
    letter-spacing: normal !important;
    color: white;
    margin: 0;
    margin-left: -87px;
    text-align: right;
}
#confronto-section #confronto-title p {
    font-size: 26px;
    margin: 0 24px;
    color: #616467;
    font-weight: 700;
}

#confronto-section #confronto-grid {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
}
#confronto-section #confronto-grid #agenzia, 
#confronto-section #confronto-grid #agencasa {
    width: 170px;
    height: 150px;
    flex-shrink: 0;
    flex-grow: 0;
    padding: 16px 12px;
    border-radius: 6px;
}
#confronto-section #confronto-grid #agenzia {
    background-color: white;
    order: 1;
}
#confronto-section #confronto-grid #agencasa {
    background-color: #4c0505;
    order: 3;
}

#confronto-section #confronto-grid #agenzia div, 
#confronto-section #confronto-grid #agencasa div {
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
#confronto-section #confronto-grid #agenzia div {
    background-image: url("../img/chi-siamo/agenzia.svg");
}
#confronto-section #confronto-grid #agencasa div {
    background-image: url("../img/chi-siamo/agencasa.svg");
}

#confronto-section #confronto-grid #chat {
    flex-grow: 0;
    flex-shrink: 0;
    order: 2;
    width: 400px;
    margin: 0 36px;
    padding: 24px 16px;
    background-color: white;
    border-radius: 6px;
    display: flex;
    flex-direction: column;
}

#confronto-section #confronto-grid #chat .chat-message {
    width: auto;
    display: inline-block;
    padding: 0px 16px;
    font-size: 20px;
    flex-grow: 0;
    flex-shrink: 0;
}
#confronto-section #confronto-grid #chat .chat-message.agenzia {
    border: 2px solid #616467;
    border-radius: 0 6px 6px 6px;
    background-color: white;
    align-self: flex-start;
    margin-bottom: 8px;
}
#confronto-section #confronto-grid #chat .chat-message.agencasa {
    border: 2px solid #4c0505;
    border-radius: 6px 0 6px 6px;
    background-color: #4c0505;
    align-self: flex-end;
    margin-bottom: 32px;
    color: white;
}
#confronto-section #confronto-grid #chat .chat-message.agencasa:last-child {
    margin-bottom: 0;
}

#confronto-section #confronto-grid #chat .chat-message.agenzia:before,
#confronto-section #confronto-grid #chat .chat-message.agenzia:after,
#confronto-section #confronto-grid #chat .chat-message.agencasa:before,
#confronto-section #confronto-grid #chat .chat-message.agencasa:after {
    /* position: absolute;
    content:"";
    display: block;
    width: 8px;
    height: 8px;
    left: 0;
    top: 7px;
    background-size: 100%;
    background: #4c0505;
    border-radius: 50%; */
}

/* Under small devices (landscape phones, more than 768px) */
@media (max-width: 767.98px) {
    #confronto-section {
        background: none;
    }

    #confronto-section #confronto-title h2 {
        font-size: 33px;
        margin-left: -40px;
        color: #616467;
    }
    #confronto-section #confronto-title h2:last-child {
        margin-left: 0;
        color: #4c0505;
    }

    #confronto-section #confronto-grid {
        flex-wrap: wrap;
        justify-content: space-evenly;
    }
    #confronto-section #confronto-grid #agenzia {
        order: 1;
    }
    #confronto-section #confronto-grid #agencasa {
        order: 2;
        width: 146px;
        align-self: center;
        height: 118px;
    }
    #confronto-section #confronto-grid #chat {
        flex-grow: 1;
        order: 3;
        margin-top: 32px;
        background-color: #f7f7f6;
        width: auto;
    }

}

/* #################################################################################### */
/* FAQ ################################################################################ */
/* #################################################################################### */

#faq-section .section-title {
    color: #616467 !important;
}
#faq-section .section-title span {
    color: #616467 !important;
    font-size: 32px;
}

#faq-section .faq {
    margin-bottom: 48px;
}

#faq-section .faq h3 {
    font-weight: 400;
    font-size: 24px;
    margin-left: 16px;
    padding-right: 48px;
    cursor: pointer;
}

#faq-section .faq .close,
#faq-section .faq .open {
    width: 24px;
    right: 24px;
    position: absolute;
    cursor: pointer;
}

#faq-section .faq .close {
    display: none;
}
#faq-section .faq .faq-content {
    display: none;
    padding: 16px;
    background-color: #f7f7f6;
    border-radius: 6px;
    font-size: 20px;
}

#faq-section .faq .faq-content p {
    font-size: 20px;
    margin: 0 !important;
}

#faq-section .faq .faq-content p b {
    font-weight: 700 !important;
}
#faq-section .faq .faq-content .icon-list.light li {
    font-size: 20px !important;
}
#faq-section .faq .faq-content .icon-list.light li b {
    font-weight: 700 !important;
}

#box-contattaci-faq .faq-contatto {
    width: 36%;
    display: inline-block;
}
#box-contattaci-faq .faq-contatto p {
    margin-top: 8px;
    font-size: 14px;
}

@media (max-width: 767.98px) {
    #box-contattaci-faq > div > p {
        margin-bottom: 36px;
    }

    #box-contattaci-faq .faq-contatto {
        width: auto;
        display: block;
    }
}

/* #################################################################################### */
/* TERMS & CONDITIONS ################################################################# */
/* #################################################################################### */

body.terms-conditions h2 {
    color: #616467 !important;
}
body.terms-conditions h2 span {
    color: #616467 !important;
    font-size: 32px;
}

body.terms-conditions p {
    font-size: 20px;
}
body.terms-conditions b {
    font-weight: 700;
}
body.terms-conditions li {
    font-size: 18px;
}

#dicono-di-noi-section {
    background: url("../img/home/dicono_di_noi.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
#dicono-di-noi-section #title-dicono-di-noi{
    color: white;
}
#dicono-di-noi-section #title-dicono-di-noi,
#ultimi-immobili-section .section-title {
    font-family: 'Barlow Condensed', sans-serif;
}
#dicono-di-noi-section .dicono-di-noi-item {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    flex-grow: 1;
    text-align: center;
    margin: 0 24px;
    background-color: #f7f7f6;
    padding: 32px 24px 0px 24px;
    border: 3px solid #4c0505;
    border-radius: 0 32px;
    border-top: none;
    border-right: none;
    max-width: 300px;
    height: 190px;
}

#dicono-di-noi-section .dicono-di-noi-item img {
    height: 16px;
}
#dicono-di-noi-section .dicono-di-noi-item h3 {
    margin-top: 3px;
    font-size: 22px;
    font-family: 'Barlow Condensed', sans-serif;
    margin-bottom: 15px;
}
#dicono-di-noi-section .dicono-di-noi-item p {
    font-size: 18px;
    text-align: left;
    color: #616467;
    position: relative;
    padding: 0 8px;
    line-height: 1 !important;
}
#dicono-di-noi-section .dicono-di-noi-item p:before {
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    top: 0;
    left: -13px;
    background: url("../img/home/virgolette.svg") no-repeat center;
}
#dicono-di-noi-section .dicono-di-noi-item p:after {
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    bottom: 0;
    right: -13px;
    background: url("../img/home/virgolette.svg") no-repeat center;
}

#dicono-di-noi-section #dicono-di-noi-carousel,
#dicono-di-noi-section .owl-stage,
#dicono-di-noi-section .owl-stage-outer {
    height: 190px !important;
    max-height: 190px !important;
}

@media (max-width: 767.98px) { 
    #dicono-di-noi-section .dicono-di-noi-item {
        margin: auto;
    }
}


#dicono-di-noi-section .container {
    padding-left: 64px !important;
    padding-right: 64px !important;
    max-width: 1140px !important;
}
#dicono-di-noi-section .owl-carousel .owl-nav,
#ultimi-immobili-section .owl-carousel .owl-nav {
    display: block;
}
    
#dicono-di-noi-section .owl-carousel .owl-nav .owl-prev,
#dicono-di-noi-section .owl-carousel .owl-nav .owl-next,
#ultimi-immobili-section .owl-carousel .owl-nav .owl-prev,
#ultimi-immobili-section .owl-carousel .owl-nav .owl-next {
position: absolute;
top: 50%;
transform: translateY(calc(-50% - 10px));
width: 45px;
height: 57px;
outline: none !important;
background-size: 70%;
background-repeat: no-repeat;
background-position: center;
transition: 150ms linear all;
}

#dicono-di-noi-section .owl-carousel .owl-nav .owl-prev span,
#ultimi-immobili-section .owl-carousel .owl-nav .owl-next span {
display: none;
}

#dicono-di-noi-section .owl-carousel .owl-nav .owl-prev {
left: -55px;
background-image: url('../img/home/arrow-left.svg');
}

#ultimi-immobili-section .owl-carousel .owl-nav .owl-prev {
left: -55px;
background-image: url('../img/home/arrow-left-gray.svg');
}

#dicono-di-noi-section .owl-carousel .owl-nav .owl-next {
right: -55px;
background-image: url('../img/home/arrow-right.svg');
}
#ultimi-immobili-section .owl-carousel .owl-nav .owl-next {
right: -55px;
background-image: url('../img/home/arrow-right-gray.svg');
}


#dicono-di-noi-section .owl-carousel .owl-nav .owl-prev.disabled,
#ultimi-immobili-section .owl-carousel .owl-nav .owl-prev.disabled,
#dicono-di-noi-section .owl-carousel .owl-nav .owl-next.disabled,
#ultimi-immobili-section .owl-carousel .owl-nav .owl-next.disabled {
opacity: 0;
}

#ultimi-immobili-section .container {
    padding-left: 64px !important;
    padding-right: 64px !important;
    max-width: 1140px !important;
}

#ultimi-immobili-section .list-item {
    width: calc(100% - 48px);
    padding-bottom: 30px;
    padding-top: 30px;
    display: flex;
    flex-direction: column;
    padding: 16px;
    border: none;
    background-color: #f7f7f6;
    border-radius: 6px;
    margin: 0 24px;
    border: 2px solid #e9ecef59;
    height: 100%;
}
#ultimi-immobili-section .list-item .list-img {
    height: 231px;
    position: relative;
    background: #a7a8a9;
    margin-left: -16px;
    margin-top: -16px;
    overflow: hidden;
    margin-bottom: -16px;
    width: calc(100% + 32px);
    border-radius: 6px 6px 0 0;
}
#ultimi-immobili-section .list-item .list-data {
    margin-left: 0;
    margin-top: 32px;
    flex-grow: 1;
    flex-basis: 0;
    position: relative;
    padding-bottom: 50px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
#ultimi-immobili-section .list-item .list-data .title {
    font-weight: 300;
    font-size: 26px;
}
#ultimi-immobili-section .list-item .list-data .title a {
    color: #616467;
    font-family: 'Barlow Condensed', sans-serif;
}
#ultimi-immobili-section .list-item .list-data .type {
    font-size: 16px;
    display: flex;
    margin: 10px 0;
    font-family: 'Barlow Condensed', sans-serif;
}
#ultimi-immobili-section .list-item .list-data .type div {
    height: 18px;
    line-height: 18px;
}
#ultimi-immobili-section .list-item .list-data .type div + div {
    margin-left: 10px;
    padding-left: 10px;
    border-left: 1px solid #ddd;
}
#ultimi-immobili-section .list-item .list-data .type div span {
    font-weight: 600;
}
#ultimi-immobili-section .list-item .list-data .price {
    position: absolute;
    left: 0;
    bottom: 0;
    font-size: 32px;
    margin: 0 !important;
    font-family: 'Barlow Condensed', sans-serif;
}
#ultimi-immobili-section .list-item .list-data .city,
#ultimi-immobili-section .list-item .list-data .details,
#ultimi-immobili-section .list-item .list-data .riferimento,
#ultimi-immobili-section .list-item .list-data .percentuale,
#ultimi-immobili-section .list-item .list-data .desc,
#ultimi-immobili-section .list-item .list-data .prezzo,
#ultimi-immobili-section .list-item .list-data .button {
    display: none !important;
}

#ultimi-immobili-section .owl-stage {
    display: flex;
    align-items: stretch;
}

/* Medium devices (tablets, less than 992px) */
@media (min-width: 991.98px) {
    #ultimi-immobili-section .list-item {
        width: calc(100% - 48px);
        margin: 0 24px;
    }
}

@media (max-width: 767.98px) { 
    #ultimi-immobili-section .list-item {
        width: 100%;
        margin: 0;
    }
}

@media (max-width: 400px) {
    #confronto-section #confronto-title h2 {
        font-size: 27px;
    }
    .s-calc .calcolo #spesa, .s-calc .calcolo #commisione-agencasa, .s-calc .calcolo #risparmio, .s-calc .calcolo #risparmio-text {
        font-size: 20px !important;
    }

    #risparmio {
        padding-right: 46px !important;
    }

    .s-calc .s-slider span {
        font-size: 20px !important;
    }

    #risparmio,
    #risparmio-text {
        font-size: 20px !important;
    }
    #dicono-di-noi-section #dicono-di-noi-carousel,
    #dicono-di-noi-section .owl-stage,
    #dicono-di-noi-section .owl-stage-outer {
        height: 218px !important;
        max-height: 218px !important;
    }

    #dicono-di-noi-section .dicono-di-noi-item {
        height: 218px !important;
    }
}
