/* MAIN CSS FLEX */
@font-face {
    font-family: 'lato100';
    src: url('font/lato-hairline-webfont.eot');
    src: url('font/lato-hairline-webfont.eot?#iefix') format('embedded-opentype'),
         url('font/lato-hairline-webfont.woff2') format('woff2'),
         url('font/lato-hairline-webfont.woff') format('woff'),
         url('font/lato-hairline-webfont.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'lato200';
    src: url('font/lato-thin-webfont.eot');
    src: url('font/lato-thin-webfont.eot?#iefix') format('embedded-opentype'),
         url('font/lato-thin-webfont.woff2') format('woff2'),
         url('font/lato-thin-webfont.woff') format('woff'),
         url('font/lato-thin-webfont.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'lato300';
    src: url('font/lato-light-webfont.eot');
    src: url('font/lato-light-webfont.eot?#iefix') format('embedded-opentype'),
         url('font/lato-light-webfont.woff2') format('woff2'),
         url('font/lato-light-webfont.woff') format('woff'),
         url('font/lato-light-webfont.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'lato500';
    src: url('font/lato-regular-webfont.eot');
    src: url('font/lato-regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('font/lato-regular-webfont.woff2') format('woff2'),
         url('font/lato-regular-webfont.woff') format('woff'),
         url('font/lato-regular-webfont.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

*{
    padding: 0;
    margin: 0;
    text-rendering: geometricPrecision;
}

*:focus {
    outline: 0;
}

*::selection{
	color:#666;
	background-color: #eee;
}

mark{
	color: #666;
	background-color: rgba(255,255,102,0.8);
}

a{
	text-decoration: none;
	color: #666;
}

a.underline{
	text-decoration: underline;
}

ul{
	list-style: none;
}

body, html{ height: 100%;}

body{
	font-family: 'lato200';
    letter-spacing: -1px;
    display: flex;
    flex-flow: row wrap;
}

#flex-body{
	display: flex;
	flex:1;
}

/** LEFT SIDE MENU **/

#main{
	flex:none;
	width: 180px;
}

.logo{
	height: 70px;
	width: 70px;
	margin:45px;
	cursor: pointer;
	position: fixed;
}

#main ul.menu{
	position: fixed;
	text-transform: uppercase;
	margin: 145px 0 0 45px;
	width: 135px;
}

#main ul.menu li{
	letter-spacing: 0px;
	font-family: 'lato300';
	font-size: 13px;
	padding: 15px 0;
	color:#666;
	border-top:1px solid #eee; 
	cursor: pointer;
}

#main ul.menu li.active{
	font-family: 'lato500';
	border-top:1px solid #666; 
	background: url('../img/right_arrow.svg') center right no-repeat;
	background-size: 12px 12px;
}

#main ul.menu li:hover{
	font-family: 'lato500';
}

/** END LEFT SIDE MENU **/

/** GENERAL SECTION **/

.section{
	font-size: 50px;
	color:#555;
	line-height: 1em;
	width: 90%;
	/*margin-bottom: 20px;*/
}

.section.chisono{
	letter-spacing: -2.5px;
}

.section.chisono b{
	font-family: 'lato300';
}

.section span{
	font-size: 15px;
	text-transform: uppercase;
	font-family: 'lato500';
	letter-spacing: -1px;
} 

.section_right{
	margin: 50px 40px;
	flex:auto;
}

/* TITLE SECTION P */
.section p.title{
	font-size: 15px;
	margin: 0px 0px 0px 0px;
	text-transform: uppercase;
	color: #a0a0a0;
}

.section p.title span{
	width: 200px;
	padding-top: 4px;
	margin-left: 10px;
	display: inline-block;
	border-top: 1px solid #ccc;
}
/* END TITLE SECTION P */

/*RAPIDQUESTION*/
ul.rapide li{
	border-bottom: 1px solid #eee;
}
.rapidquestion.title {
    /*font-variant: small-caps;*/
    font-size: 22px;
    color:#666;
    letter-spacing: -1px;
    cursor: pointer;
}
.rapidquestion.title:first-letter{
	text-transform: uppercase;
}

ul.rapide li:hover .plus{
    opacity:0.6;
    transition: opacity 0.5s;
}
.rapidquestion.content{
	color:#999;
	font-size: 20px;
    line-height: 30px;
    text-align: justify;
    padding: 5px 20px 30px 10px;
    display: none;
}

.rapidquestion.content:first-letter{
	text-transform: capitalize;
}

.plus{
	position: absolute;
	margin: 8px 0 0 -38px;
	opacity: 0;
	cursor: pointer;
}

li.line_services:hover .info{
	opacity: 0.9;
	transition: opacity 0.5s;
}
/**/

/* SEARCH */
.section.cerca{
	height: 94px;
	border-bottom: 1px solid #eee; 
	width: 100%;
}
.section.cerca .search{
	width: 100%;
	border: 0;
	font-size: 50px;
	font-weight: 100;
	color: #333;
}

input::-moz-placeholder,
input:-webkit-placeholder,
input:-ms-placeholder{
	font-family: 'lato100';
	font-size: 50px;
	font-weight: 100;
	color: #333;
}

.section.results{
	line-height: 1;
	width: 100%;
	font-family: 'lato100';
}
.service.title{
	font-size: 25px;
	padding: 11px 0;
	letter-spacing: 0;
	cursor: pointer;
}
.service.title:first-letter{
	font-family: 'lato300';
}
.service.content{
	font-size: 20px;
    line-height: 30px;
    text-align: justify;
    padding: 0px 100px 20px 20px;
}
.service.content:first-letter{
	text-transform: uppercase;
}
i{
	font-style: normal;
	color:rgba(0,0,0,0.5);
	font-family: 'lato300';
	border-bottom: 0px dotted #666;
	margin: 0 0px;
}
/* END SEARCH */

/* CONTACT */
.section.contact{
	font-size: 24px;
	font-weight: 100;
	color: #666;
}

strong.lowercase{
	text-transform: lowercase;
	font-weight: normal;
}
/* END CONTACT*/

/** END GENERAL SECTION **/

/** ICON CERCA/FABBRICATO/TERRENI/MEDIAZIONE **/
.icon{ width: 95px; height: 95px; opacity: 0.7; display: inline-block; margin-right:30px; cursor: pointer; line-height: 0; }
.icon > .detail{
	opacity: 0;
	transition: opacity 0.5s;
	font-size: 12px;
	font-family: 'lato500';
    letter-spacing: -0.5px;
    width: 95px;
    text-align: center;
    display: inline-block;
}
.icon:hover > .detail{
	opacity:0.8;
	transition: opacity 0.5s;
}
#SEARCH circle{
	stroke:rgb(128,128,128);
	transition: stroke 0.3s;
	transition-timing-function: ease-in-out;
}
#SEARCH path , #TER path , #FAB path , #MED path {
	fill:rgb(128,128,128);
	transition: fill 0.3s;
	transition-timing-function: ease-in-out;
}
.icon.search:hover #SEARCH circle{
	stroke:#111;
	transition: stroke 0.3s;
	transition-timing-function: ease-in-out;	
}
.icon.search:hover #SEARCH path{
	fill:#111;
	transition: fill 0.3s;
	transition-timing-function: ease-in-out;
}
.icon.search > .detail{
	color:#111;
}
.icon.terreni:hover #TER path{
	fill:#00AD62;
	transition: fill 0.3s;
	transition-timing-function: ease-in-out;
}
.icon.terreni > .detail{
	color:#00AD62;
}
.icon.fabbricato:hover #FAB path{
	fill:#C10D12;
	transition: fill 0.3s;
	transition-timing-function: ease-in-out;
}
.icon.fabbricato > .detail{
	color:#C10D12;
}
.icon.mediazione:hover #MED path{
	fill:#008AB4;
	transition: fill 0.3s;
	transition-timing-function: ease-in-out;
}
.icon.mediazione > .detail{
	color:#008AB4;
}
/** END ICON CERCA/FABBRICATO/TERRENI/MEDIAZIONE **/

/** START TAG **/
.clicktorecall{
	display: inline-block;
	border-radius: 20px;
	padding: 0px 10px;
	margin:25px 0 0 -10px;
	color:rgba(0,0,0,1);
	letter-spacing: 0;
	font-size: 12px;
	font-family: 'lato300';
	cursor: pointer;
	vertical-align: middle;
	border:1px solid rgba(0,0,0,0.7);
	text-transform: uppercase;
}

.clicktorecall:hover{
	color:white;
	background-color:rgba(0,0,0,0.8);
}

div.tag{
	display: inline;
	margin: 0px 5px;
	text-align: left;
	font-family: 'lato500';
	font-weight: 300;
}
.tag span.round , .tag span.info{
	border-radius: 20px;
	opacity: 0.8;
	padding:6px 8px;
	letter-spacing: 0;
	font-size: 9px; 
	margin-right: 5px;
	cursor: pointer;
	vertical-align: middle;
}
.tag span.round.t, .tag span.round.t.active:hover{
	color:#00AD62;
	border: 1px solid #00AD62;
}
.tag span.round.t:not(.nohover):hover, .tag span.round.t.active{
	color:#fff;
	background-color:#00AD62;
	opacity: 0.6;
}
.tag span.round.t.active:hover{
	color:#00AD62;
	border: 1px solid #00AD62;
	background-color:#fff;
	opacity: 0.8;
}
.tag span.round.f{
	color:#C10D12;
	border: 1px solid #C10D12;
}
.tag span.round.f:not(.nohover):hover, .tag span.round.f.active{
	color:#fff;
	background-color:#C10D12;
	opacity: 0.6;
}
.tag span.round.f.active:hover{
	color:#C10D12;
	border: 1px solid #C10D12;
	background-color:#fff;
	opacity: 0.8;
}
.tag span.round.m{
	color:#008AB4;
	border: 1px solid #008AB4;
}
.tag span.round.m:not(.nohover):hover, .tag span.round.m.active{
	color:#fff;
	background-color:#008AB4;
	opacity: 0.6;
}
.tag span.round.m.active:hover{
	color:#008AB4;
	border: 1px solid #008AB4;
	background-color:#fff;
	opacity: 0.6;
}

.tag span.info{
	border:1px solid rgba(0,0,0,0.7);
	opacity: 0;
}

.tag span.info:hover{
	color:white;
	background-color: rgba(0,0,0,0.9);
}
/** END TAG **/


.footer{
	display: flex;
	width: 100%;
	border-top: 1px solid #ccc;
	color: #333;
	padding: 3%;
	opacity: 0;
}

/************ INFO COOKIE **************/
#infocookie{ 
	position: fixed; 
	bottom: 0px; 
	background: rgba(0,0,0,0.8); 
	z-index: 100;  
	font-size: 15px;
	padding: 10px 30px 10px 30px;
	color: #bbb;
	font-family: 'lato200', sans-serif;
}

#infocookie .left { }

.button{
	font-weight: bold;
	padding: 1px 8px 1px 5px;
	margin-left: 5px;
	border: 1px solid #bbb;
	background: rgba(250,250,250,0.8);
	color:#333;
	cursor: pointer;
}

.button:hover{
	background: #333;
	color:#bbb;
}
/********* FINE INFO COOKIE ************/