 @import url('https://fonts.googleapis.com/css?family=Fira+Sans:400,600,700|Open+Sans:300,400,500,700&display=swap');
body
{
	margin:0;
	background-color: #ffffff; 
    background-position: center top;
    background-repeat: repeat-x;
	line-height:1.46;
  	padding-bottom: 60px;
    font-family: 'Open Sans', sans-serif;
  	color: #6a6a6a;
	font-size: 16px;
  	font-weight:300;
}
h1,h2,h3
{
	line-height:1.2;
    font-family: 'Fira Sans', sans-serif;
  	color: #222222;
}
a
{
	text-decoration:none;
	color:#003366;
}
.clearfix,
.cleared
{
	clear:both;
}
ul
{
	list-style-position:inside;
}
.moduletable
{
}

.header_top
{
	
}

.header_top .nav
{
	margin:0;
	padding:0;
	list-style:none;
	text-align:center;
}
.header_top .nav li
{
	display:inline;
}
.header_top .nav li a
{
	padding:0 5px;
	margin:0 5px;
}

.header
{
	position:relative;
	left:0;
	right:0;
	z-index:150;
	top:0;
}

#logo h1
{
	margin:0;
}

#logo
{
	position:absolute;
	bottom:0px;
	position:relative;
	z-index:50; 

}
#logo img
{
	padding:10px 0;
	height:100px;
	display: block;
}
.navigator {
    margin: 0;
    padding: 0;
    list-style: none;
    position: sticky;
    bottom: 0px;
    top: 0;
    right: 10px;
    z-index: 110;
    background-color: #0068b0;
  	box-shadow: 1px 1px 4px 1px rgba(0,0,0,0.1);
}

.navigator .menu {
    margin: 0;
    padding: 0;
    list-style: none;
}
.navigator .menu li
{
	display:inline-block;
	position:relative;
 
}
.navigator .menu li a, .navigator .menu li span {

    padding: 0 20px;
    line-height: 60px;
    text-transform: uppercase;
    display: block;
    text-decoration: none;
    color: rgba(255, 255, 255, 0.7);
    font-family: "Open Sans";
    font-size: 16px;
    font-weight: 300;
	transition: all 0.4s ease-in-out;
}

.navigator .menu li a:hover, .navigator .menu li.active a{
  color:#fff;
}

.navigator .menu ul
{
	display:none;
    padding: 12px 0;
	left:0;
	width:220px;
	padding:0;
    position: absolute;
  	background: #fff;
}
.navigator .menu li:hover ul
{
	display:block;
}
.navigator .menu ul li
{ 
    width: 100%;
	line-height:20x;
	float:none;
	display:block;
}

.navigator .menu ul li a {
    box-sizing: border-box;
    display: block;
    font-size: 18px;
    padding: 10px;
    position: relative;
    text-align: left;
    line-height: 20px;
}
#slider
{
	text-align:center;
  	position:relative;
}

#slider::before {

    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    background-color: rgba(0,0,0,0.4);

}

#slider img
{
	width:100%;
	margin:auto;
	height:auto;
}
#slider .random-image
{ 
	margin:auto;
	width:100%;
}

#slider .banner
{
	max-height:400px;
	overflow:hidden;
	position:relative;
}

.nivoSlider
{
	box-shadow:none;
}
.nivo-controlNavHolder
{
	position:absolute;
	bottom:25px;
	left:0;
	right:0;
}
.nivo-controlNavHolder a
{
	width:40px;
	height:8px;
	background-color:rgba(255,255,255,0.8);
	background-image:none;
	margin:0 3px;
}
.nivo-controlNavHolder a.active
{
	background-color:#2185c5;
}

.top {

  background-color: #f7f9fb;
  transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
  padding: 60px 0;
  border-bottom: 1px solid #ececec;

}
#sopra,
#sotto
{
	padding-top:40px;
	padding-bottom:40px;
}

#mezzo .custom
{
	padding:150px 0;
	position:relative;
	background-attachment:fixed;
  	background-size: cover;
  	background-repeat: no-repeat;
}

.contenuto
{
	padding-top:30px;
	padding-bottom:30px;
}

.pagina .contenuto.span9
{
	float:right;
}
.pagina .laterale.span3
{
	margin-left:0;
}

.pagina .laterale
{

padding: 18px 0;
}
.pagina .laterale .moduletable
{
	padding:10px 0;
}

.pagina .laterale ul
{
	list-style:none;
	margin:0;
	padding:0;
}

.item-page .item-image {
    float: right;
    width: 45%;
    margin: 0 0 30px 30px;
}
.item-page .item-image img
{
	width:100%;
} 

.item-page h2
{
    text-align: left;
    font-size: 22px;
    line-height: 26px;
}
.pagination .counter
{
	display:none;
}
.pagination ul
{
	padding:0;
	text-align:center;
}
.pagination ul li
{
	display:inline;
	padding:0 2px;
}

.laterale .moduletable
{
	margin:0;
}

.laterale .moduletable h3 {
	margin-top: 0;
	padding: 5px;
	color: #463b37;
	text-transform: uppercase;
	font-size: 18px;
	margin-bottom: 0px;
	border-bottom: 1px solid #463b37;
	font-weight: normal;
}

.laterale ul li
{
	display:block;
	padding:2px 10px;
}
.laterale ul li a:before
{
	content:"\f101  ";
  	font-family:'Font Awesome 5 Pro';
 	color:#463b37;
  	font-weight:bold;
}

.laterale ul li a {
	display: block;
	line-height: 26px;
	font-size: 12px;
	text-transform: uppercase;
}

.laterale ul li a:hover {
  color:#463b37;
}

.footer
{
	padding-top:20px;
	padding-bottom:20px;
	background-color:#181818;
	color:#dcdcdc;
  	font-size: 16px;
	line-height: 25px;
	letter-spacing: -0.3px;
}

.footer h3 {
box-sizing: border-box;
color: rgb(255, 255, 255);
font-family: "Fira Sans";
font-size: 25px;
font-weight: 700;
line-height: 35.7167px;
margin-bottom: 27px;
padding-bottom: 13px;
position: relative;
text-align: left;
text-rendering: auto;
}
.footer h3:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 30px;
  height: 2px;
  content: "";
  -webkit-transition: all ease .4s;
  -ms-transition: all ease .4s;
  transition: all ease .4s;
  z-index: 0;
  background-color: #fff;
}
.footer .itm:hover h3:after {
  width: 40px;
}


.footer .info {
  clear: both;
  margin-bottom: 10px;
}
.footer .info i {
  float: left;
  line-height: 20px;
  margin-right: 8px;
  background-color: #303030;
  padding: 5px;
  width: 20px;
  height: 20px;
  text-align: center;
}

.footer .category-module 
{
	margin:0;
	padding:0;
	list-style:none;
}
.footer .category-module li
{
	display:inline-block;
	min-width:18%;
	padding-right:1%;
}
.footer .foots p
{
	display:block; 
	clear:both;
	margin:0px 0;
}
.footer .itm .social
{
	clear:both;
}

.footer .itm .social .menu
{
	padding:0;
	margin:0;
	list-style:none;
}

.footer .itm .social .menu li
{
	display:block;
	border-radius:100%; 
	float:left;
}
.footer .itm .social .menu li .image-title
{
	display:none;
}

.credit
{
	background-color: #131313;
    color: #999;
	text-align:right;
	padding:15px 0 10px;
	font-size:11px;
}
.credit a
{
	color:#888;
}
.item-image img
{
	width:100%;
}
.blog-featured h2
{
	text-align:center;
}
.blog-featured .item p
{
	line-height:20px;
	height:60px;
	overflow:hidden;
}
.blog-featured .item  h2,
.blog .item h2
{
	margin-top:0; 
	margin-bottom:10px;
}  

.blog .items-leading .item-image
{
	width:40%;
	float:right;
	margin:0 0 10px; 
	padding:5px;
	border:1px solid #CCC;
	border-radius:5px;
}
.blog .items-leading .item-image img
{
	width:100%;
}
.blog .items-leading .item-image
{
	width:40%;
	float:right;
	margin:0 0 10px; 
	padding:5px;
	border:1px solid #CCC;
	border-radius:5px;
}
.blog .items-leading .item-image img
{
	width:100%;
}
.blog .cols-3 .item .item-image,
.blog .cols-4 .item .item-image
{
	width:100%;
	margin-bottom:15px;
}
.blog .cols-3 .item h2,
.blog .cols-4 .item h2
{
	text-align:center;
}
.blog .item .introtext
{
	line-height:20px;
	margin:10px 0;
	text-align:left;
}
.blog .cols-3 .item .introtext,
.blog .cols-4 .item .introtext{
	text-align:center;
	height:80px;
	overflow:hidden;
}
.blog .cols-2 .item .introtext
{
	height:100px;
	overflow:hidden;
}
.blog .cols-1 .item .item-image
{
	width:15%;
}
.blog .cols-1 .item
{
	padding:20px 0;
	margin:0;
	border-bottom:1px dashed #ccc;
}
.blog .cols-1:nth-child(2n+1) .item .item-image
{
	float:right;
	margin:0 0 0 15px;
}
.blog .cols-2:nth-child(2n+1) .span6:nth-child(2) .item .item-image,
.blog .cols-2:nth-child(2n) .span6:nth-child(1) .item .item-image
{
	float:right;
	margin:0 0 0 15px;
}
.blog .item .introtext p
{
	margin:0;
} 

.blog .item p {
    height: 60px;
    font-size: 14px;
    line-height: 20px;
    overflow: hidden;
    padding: 0 10px;
    box-sizing: border-box;
}

.blog .item p.readmore {
    overflow: unset;
    height: auto;
}

.category-desc .blocco img,
.item-page .blocco img
{
	width:calc(50% - 50px);
  	float:right;
  	margin:20px 0 50px 50px;
}
.item-page .blocco:nth-child(2n) img,
.category-desc .blocco:nth-child(2n) img
{
  	float:left;
	margin:20px 50px 50px 0;
}
.item-page .blocco,
.category-desc .blocco
{
	clear:both;
	padding:40px 0;
  	position:relative;
}

.item-page .blocco:nth-child(2n)::before, 
.category-desc .blocco:nth-child(2n)::before {
    content: "";
    background-color: #f5f5f5;
    z-index: -1;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100vw;
    left: 50%;
    transform: translateX(-50%);
}
 
#cw-plg-contact-light-fm123 input
{
	background-color:#fff;
	height:26px;
	box-sizing:border-box;
	border:1px solid #ccc !important;
	box-shadow:none !important;
	width: 100% !important;
	font-family:'Open Sans';
	font-size:14px;
	box-sizing:border-box !important;
}
#cw-plg-contact-light-fm123 textarea
{
	background-color:#fff;
	font-size:14px; 
	font-family:'Open Sans';
	box-sizing:border-box;
	border:1px solid #ccc !important;
	width:100% !important;
	box-shadow:none !important;
}
.cw-plg-contact-light-buttons
{
	width:100% !important;
	text-align:center;
}
.btn-submit
{
	float:none !important;
}
#submit123
{
	background-color:#003366;
	color:#fff;
	font-size:18px;
	text-transform:uppercase;
	border:none !important; 
}


.gallery .itm
{
	width:33.333333%;
	float:left;
	box-sizing:border-box;
	border:5px solid transparent;
	position:relative;
	overflow:hidden;
}
.gallery .itm:before
{
	padding-top:66%;
	display:block;
	content:" ";
}
.gallery .itm img
{
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	width:100%;
}
#cwcontact1 .input label,
#cwcontact1 .cal label
{
	display:none;
}
#cwcontact1 .span4:nth-child(3n+1)
{
	margin:0; 
}
#cwcontact1 .input textarea
{
	
}
#cwcontact1 .input input,
#cwcontact1 .input select,
#cwcontact1 .input-append input,
#cwcontact1 .input textarea
{
	border:1px solid #888888;
	box-shadow:none;
	background-color:#fff !important;
	padding:5px 10px !important;
	font-family: "Raleway",sans-serif !important;
	color:#0a0a0a;
    font-size: 16px;  
    line-height: 20px; 
	margin-bottom:15px;
	width:100% !important;
	box-sizing:border-box;
} 
.chronoforms .field input[type=text],
.chronoforms .field textarea {
	display:block;
  width:100% !important;
} 
 
.chronoforms .form .field .checkbox label
{
  display:block !important;
}
.chronoforms .form .field label
{
  display:none !important;
}

.chronoforms6_credits,
.form-group label,
.chrono_credits {
  display:none !important;
} 

.row-fluid [class*="span"] .ui.form .fields .field {

    margin-bottom: 15px;
    width: 100%;
}

.row-fluid [class*="span"] #area_fields_11 {
    display: block;
}

.chronoforms .button,
#fin-invia input {
  background-image:none;
  height:auto;
  text-transform:uppercase;
  font-size:18px;
  text-shadow:none;
  border:none;
  border-radius:0;
  color:#fff;
  background-color:#ffc31b;
}

#info .testo a,
#info .tel a
{
	position: fixed;
bottom: 0;
margin: 0;
transform: none;
-webkit-transform: none;
-moz-transform: none;
-o-transform: none;
height: 60px;
top: auto;
line-height: 40px;
font-size: 16px;
width: 50%;
text-align: center;
color: #fff;
box-sizing: border-box;
padding: 10px;
display: block;
text-transform: uppercase;
  z-index: 140;
}
#info .testo a
{
	right:0;
  background-color: #ca2949;

}

#info .tel a
{
	left:0;
   background-color: #0068b0;

}


.contact-link {
    padding-left: 38px;
    padding-right: 33px;
}

.contact-link:last-child {
    padding-right: 0;
}

.contact-link {
    display: inline-block;
    vertical-align: middle;
    padding: 32px 27px 33px 30px;

    font-weight: 500;
    font-size: 24px;
    text-align: left;
    border-left: 1px solid  #ececec;
}

.contact-link .lawyr-icon {
    float: left;
    padding-top: 1px;
    font-size: 35px;
  color: #ca2949;
}


.contact-link {
    font-weight: 500;
    font-size: 24px;
    text-align: left;
}

.contact-link span {
    display: block;
    color: #666666;
    font-weight: 400;
    font-size: 14px;
}

.contact-link-info {
    overflow: hidden;
    padding-left: 10px;
  color: #222222;
}


.search {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 110;
}


.feature .tit {
  color: rgb(34, 34, 34);
  font-family: "Fira Sans";
  font-size: 20px;
  font-weight: 400;
  hyphens: manual;
  line-height: 28.5667px;
}
.feature i {
  color: #24344e;
  font-size: 60px;
  font-weight: 300;
  margin-bottom: 20px;
}
.feature p {
  margin-bottom: 14px;
  color: #777777;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: -0.1px;
}


.TitMod {
  color: rgb(34, 34, 34);
  font-family: "Fira Sans";
  font-size: 32px;
  font-weight: 500;
  hyphens: manual;
  line-height: 42px;
  margin: 0px;
  margin-bottom:10px;
}


.itm-image img {
  width: 100%;
}
.itm-image {
  width: 30%;
  float: left;
  margin-right: 30px;
  margin-bottom: 20px;
}


.SubTit {

    margin: 0;
    font-size: 25px;
    font-weight: 400;

}


.servizi-home .span3:nth-child(4n+1) {
  clear: both;
  margin-left: 0;
}
.servizi-home .item .tit a, .blog .item h2 a {
  box-sizing: border-box;
  color: #222;
  font-family: "Fira Sans";
  font-size: 16px;
  font-weight: 400;
  hyphens: manual;
  letter-spacing: -0.2px;
  line-height: 22.85px;
  transition: all 0.4s ease-in-out;
}
.servizi-home .item .tit, .blog .item h2 {
  text-align: center;
  margin: 10px 0;
}

.servizi-home .item-image, .blog .item-image {
  overflow: hidden;
}
.servizi-home .item:hover .item-image img, .blog .item:hover .item-image img {
  transform: scale(1.1) rotate(3deg);
}
.servizi-home .item-image img, .blog .item-image img {
  transition: all 0.4s ease-in-out;
}


.servizi-home .item:hover .tit a, .blog .item:hover h2 a {
    color: #ca2949;
}

.blog .introtext{
  display:none;
}



#mezzo2 p {
  color: rgb(255, 255, 255);
  font-family: "Fira Sans";
  font-size: 28px;
  font-weight: 700;
  hyphens: manual;
  line-height: 28px;
  text-align: center;
  margin: 0;
}
#mezzo2 {
  background-color: #0068b0;
  padding: 40px 0;
}


#sotto2 {

    padding: 40px 0;

}


.ui.form input:not([type]) , .ui.form input[type="date"], .ui.form input[type="datetime-local"], .ui.form input[type="email"], .ui.form input[type="file"], .ui.form input[type="number"], .ui.form input[type="password"], .ui.form input[type="search"], .ui.form input[type="tel"], .ui.form input[type="text"], .ui.form input[type="time"], .ui.form input[type="url"], .chronoforms .field input[type="text"], .chronoforms .field textarea {

    border-radius: 0;

}



.btn, .ui.button {
    display: inline-block;
    vertical-align: middle;
    min-width: 147px;
    padding: 11px 20px 13px;
    color: #ffffff;
  	font-weight: 500;
  	font-size: 15px;
  	text-align: center;
  	border: 1px solid transparent;
  	position: relative;
  	cursor: pointer;
  	border-radius: 2px;
  	transition: all ease .3s;
  	background-color: #0068b0;
  	text-transform:uppercase;
}

.btn:hover, .ui.button:hover{
  background-color: #0f0e0f;
  color:#fff;
}





#sotto3
{
	clear:both;
	padding:40px 0;
  	background-image:url("../images/bg1.jpg");
  	background-repeat: no-repeat;
	background-size: cover;
  	background-position: left center;
  	position:relative;
}


#sotto3::before {
    content: "";
    background-color: #0068b0;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
	right:0;
    opacity: 0.90;
}



.rl_sliders.accordion > .accordion-group {
  border: none;
}
.rl_sliders.accordion > .accordion-group > .accordion-heading > a.accordion-toggle:hover {
  color:#555;
  background-color: transparent;
}
.rl_sliders.accordion > .accordion-group .accordion-heading .accordion-toggle {
  padding: 0;
  color: #333;
  transition: all 0.4s ease-in-out;
}
.rl_sliders.accordion > .accordion-group .panel-heading:hover {
  color:#555;
}
.rl_sliders.accordion > .accordion-group.active > .accordion-heading > a.accordion-toggle {
  background-color: transparent;
  color: #333;
}
.rl_sliders.accordion > .accordion-group > .accordion-body > .accordion-inner {
  /*! border: 1px solid #e5e5e5; */
  /*! margin-top: 10px; */
  border: none;
}


.rl_sliders.accordion > .accordion-group .panel-heading {
    display: inline-block;
    color: #333;
    text-transform: uppercase;
    position: relative;
}

.rl_sliders.accordion > .accordion-group .accordion-heading .accordion-toggle:before{
  content: "\f054";
  font-family: "Font Awesome 5 Pro";
  transition: all 0.4s ease-in-out;
}

.rl_sliders.accordion > .accordion-group.active > .accordion-heading > a.accordion-toggle:before{
  content:"\f078";
     
}
.rl_sliders.accordion::after, .rl_sliders.accordion::before, .rl_sliders.accordion::after, .rl_sliders.accordion::before {
    display: none;
}



.rl_sliders .collapse.in {
    overflow: visible;

}


.rl_sliders.accordion > .accordion-group > .accordion-body > .accordion-inner {

    overflow: visible !important;

}


.rl_sliders.accordion > .accordion-group.active > div > a:focus, .rl_sliders.accordion > .accordion-group > div > a:focus {

    box-shadow: none;

}


#sotto3 h3 {
    color: #fff;
    font-family: "Fira Sans";
    font-size: 26px;
    font-weight: 700;
}

#sotto3 .servizi-home .tit a{
  color:#fff;
}


.titolo-pagina {
    position: absolute;
    top: calc(100vw / -8);
    transform: translateY(-50%);
    right: 0;
    left: 0;
}


.titolo-pagina h1 {
    box-sizing: border-box;
    color: 
    rgb(255, 255, 255);
    font-family: "Fira Sans";
    font-size: 50px;
    font-weight: 600;
    line-height: 57.15px;
    margin: 0;
    text-align: center;
}


.contatti .info {
  clear: both;
  margin-top: 15px;
}
.contatti .info i {
  float: left;
  line-height: 24px;
  margin-right: 10px;
  color: #ca2949;
}


.slotholder {
  position: relative;
}
.slotholder:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-color: rgba(0,0,0,0.5);
}

.tp-caption.btn.white {
    background-color: transparent !important;
  border-color:#fff !important;
}

.tp-caption.btn.white a {
    color:  #fff !important;
}

.tp-caption.btn.white.start:hover {
  background-color: #0068b0 !important;
  border-color: #0068b0 !important;
}




.item-page h3 {
  box-sizing: border-box;
  font-family: "Fira Sans";
  font-size: 20px;
  font-weight: 500;
  line-height: 26px;
  margin-bottom: -5px;
}
.item-page h2 {
  box-sizing: border-box;
  font-family: "Fira Sans";
  font-size: 24px;
  font-weight: 500;
  line-height: 30px;
  margin-bottom: -5px;
}

#zone-servite {
    background-color: #f5f5f5;
    padding: 1% 0 2% 0;
}

#zone-servite .nav li {
    display: inline-block;
    width: 33.33333%;
}

#zone-servite .nav li a::before {
    content: "\f105";
    font-family: 'Font Awesome 5 Pro';
    margin-right: 0.625rem;
    transition: margin,0.3s;
    font-weight: lighter;
}

#zone-servite .nav li a:hover::before {
    margin-right: 0.9375rem;

}


#zone-servite .nav li a {
    color: #000;
    font-family: 'Open Sans', sans-serif;
    font-size: 12px;
    line-height: 28px;
    font-weight: 400;
}

#zone-servite .nav li a:hover {
    color: #ca2949;
    font-family: 'Open Sans', sans-serif;
    font-size: 12px;
    line-height: 28px;
    font-weight: 400;
}

#zone-servite h3 {
    text-transform: uppercase;
    display: block;
    font-size: 20px;
    color: #fff;
    background-color: #0068b0;
    padding: 1% 0;
    text-align: center;
    font-family: 'Fira Sans', sans-serif;
    font-weight: 400;
}