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

body:not(.user-is-tabbing) button:focus,
body:not(.user-is-tabbing) input:focus,
body:not(.user-is-tabbing) select:focus,
body:not(.user-is-tabbing) textarea:focus {
  outline: none;
}

* {
margin: 0;
}




html {cursor:none;}
/************************/

body #magicMouseCursor {
  position: fixed;
  width: 35px;
  height: 35px;
  border: 2px solid #fff;
  background:rgba(255,255,255,0.3);
  border-radius: 50%;
  z-index: 999999999999999;
  left: 0;
  top: 0;
  transition: transform 0.07s, width 0.3s, height 0.3s;
  pointer-events: none; }
  body #magicMouseCursor.cursor-square {
    border-radius: 0; }

body #magicPointer {
  height: 7px;
  width: 7px;
  top: 0;
  left: 0;
  position: fixed;
	z-index: 999999999999999;
  background: blueviolet;
  border-radius: 50%;
  pointer-events: none;
  transition: background 0.2s, width 0.2s, height 0.2s, box-shadow 0.2s; }
  body #magicPointer.is-hover {
    background: #d90000; }
  body #magicPointer.pointer-blur {
    height: 40px;
    width: 40px;
    background: /*none*/#222222;
    border: 2px solid #222222;
    box-shadow: 0px 0px 15px -5px white; }
  body #magicPointer.pointer-overlay {
    height: 40px;
    width: 40px;
    mix-blend-mode: difference;
    box-shadow: 0px 0px 15px -5px white; }

body .magic-hover {
  transition: all 0.2s;z-index: 9999; }
  body .magic-hover:hover {
    cursor: none; }







html, body {height: 100%;width: 100vw;font-family: 'Inter', sans-serif;font-size:14px;color:#444;line-height:20px;background: #f5f5f5;min-height:100%;display:inline-block;font-weight:300;letter-spacing:1px;overflow-x: hidden;}

 


 .os-animation{
	opacity: 0;
}  
.os-animation.animated{
	opacity: 1;
} 

.transition		{
				-moz-transition: all 0.2s ease-in-out;
				-webkit-transition: all 0.2s ease-in-out;
				-o-transition: all 0.2s ease-in-out;
				-ms-transition: all 0.2s ease-in-out;
				}
				
.transition2		{
				-moz-transition: all 0.8s ease-in-out;
				-webkit-transition: all 0.8s ease-in-out;
				-o-transition: all 0.8s ease-in-out;
				-ms-transition: all 0.8s ease-in-out;
				}				

strong, .bold 			{ font-weight:600;font-family: 'Poppins', sans-serif;}
.regular		{  font-weight:400;font-family: 'Poppins', sans-serif;}


h1					{
						margin: 0 0 15px 0;
						font-size: 30px;
						display: inline-block;
						width: 100%;
						line-height: 1.1em;
						color: #212121;
						font-weight: 300;
						} 
						
h2					{
						margin: 0 0 5px 0;
						font-size: 16px;
						width: 100%;
						line-height: 1em;
						color: #212121;
						display:inline-block;
						}						

h2.h1					{
						margin: 0 0 15px 0;
						font-size: 30px;
						display: inline-block;
						width: 100%;
						line-height: 1.1em;
						color: #212121;
						font-weight: 300;
						} 
	
a						{color: #222;text-decoration:none;font-weight: 300;}
a:hover					{color: blueviolet;text-decoration:normal;}  

em						{ font-style:italic; color:#232323;}
u						{ text-decoration:underline;}

p						{margin:0 0 5px 0;color:#232323;/*font-size:13px; line-height:16px;*/font-size:1em;line-height: 1.5em;text-align: justify;display:inline-block;}

ul {color:#232323;}

.uppercase			{ text-transform:uppercase;}

.cover				{ background-position:center; background-size:cover; background-repeat:no-repeat;}
.contain			{ background-position:center; background-size:contain; background-repeat:no-repeat;}
.opacity:hover		{ opacity:0.75;}

.wrapper {
min-height: 100%;
width:100%;
position:relative;
}


.half_slide		{width:100%; float:left;margin-top: 81px; }
.half_slide.aa {margin-top:30px; margin-bottom:60px; height: 880px;}

.int_slide		{     
	width:96%;
    display: block;
    margin: 0 auto;}
 

.slide_home		{
	width:100%;
	display:inline-block;
	margin:62px 0 0 0;
	display: none;
}



@media screen and (min-width: 600px) {
.slide_home {margin-top:130px;}
}
.slick-list {z-index:2;}






.left_home			{
							width:100%;
							float:left;
							box-sizing: border-box;
							min-height:230px;
							position:relative;
							}

.right_home			{
							width:100%;
							padding:4%;
							float:left;
							box-sizing:border-box;
							min-height:230px;
							color:#444;
							line-height: 1.4em;
							}							

.fixed-right {display:none;}

.right_home	> a:hover > h2 {color:blueviolet}

@media screen and (min-width: 980px) {


	
.left_home			{
					width:50%;
					padding: 0 20px 0 0;
					float: none;
					height:400px;
					display:table-cell;
					vertical-align:middle;
					}

.right_home			{
					width:50%;
					padding: 0 0 0 20px;
					float:none;
					height:300px;
					display:table-cell;
					vertical-align:middle;
					}

.fixed-right {display:block;color:#444;transform: rotate(90deg);text-transform:uppercase;width: auto;position: absolute;text-align: center;margin-top: 510px;height: 21px;right: -2%;top: -50%;bottom: 0;}	
	
	.fixed-right > span {height:1px;width:40px;background:#444;margin: 4px 5px 4px 0;display: inline-block;}	
	
}

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

::-webkit-scrollbar {
  width: 1px;
  height: 1px;
}

::-webkit-scrollbar-button {
  width: 1px;
  height: 1px;
}


.horizontal-scroll-wrapper {
  position: relative;
  display: block;
  top: 0;
  left: 0;
  width: calc(50vw + 1px);
  height: 100vw;
  margin: 0;
  padding-top: 1px;
  overflow-y: auto;
  overflow-x: hidden;
  transform: rotate(-90deg) translateY(-50vw);
  transform-origin: right top;
}
.horizontal-scroll-wrapper > div {
  display: block;
  padding: 5px;
  background: #cab;
  transform: rotate(90deg);
  transform-origin: right top;
  background-size:cover;
  background-position:center;	
}

.squares {
  padding: 50vw 0 0 0;
}
.squares > div {
  width: 50vw;
  height: 90vh;
  margin: 10px 0;
}
/*************/

::-webkit-scrollbar {
  display: none;
}
* {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.container-img > a > img {
  width: 100%;
  height: 400px;
  object-fit: cover;
	
  transition: transform .2s;	
}
.container-img {
  width: 400px;
  height: 100vw;
  transform: rotate(-90deg) translateY(-400px);
  transform-origin: top right;
  overflow-x: hidden;
  overflow-y: auto;
}
.container-img a {
  position: relative;
  width: 400px;
  height: 400px;
  transform: rotate(90deg);
  margin: 10px 0;
  overflow:hidden;
  float: left;
}

.container-img > a:hover > img {transform: scale(1.5);} 


.container-img a:first-child {
  margin: 0 0 10px 0;
}
.container-img > a > p {
  padding: 10px;
  background: white;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display:none;	
}

@media screen and (min-width: 980px) {
::-webkit-scrollbar {
  display: none;
}
* {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.container-img > a > img {
  width: 100%;
  height: 500px;
  object-fit: cover;
}
.container-img {
  width: 500px;
  height: 90vw;
  transform: rotate(-90deg) translateY(-500px);
  transform-origin: top right;
  overflow-x: hidden;
  overflow-y: auto;
  float:left;	
}
.container-img a {
  position: relative;
  width: 500px;
  height: 500px;
  transform: rotate(90deg);
  margin: 10px 0;
  overflow: hidden;
  float: left;
}
.container-img a:first-child {
  margin: 0 0 10px 0;
}
.container-img > a > p {
  padding: 10px;
  background: white;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
}


/**** END SCROLL ****/


.space {width:100%; height: 60px; float:left;}


























.slide_home_due		{ 
		float: left;
    height: 318px;
	box-sizing: border-box;
		width:100%;
		padding:20px 6%;
	margin:0 0 30px 0;
	}


.box_slide {width:100%;}
.news_slide { float:left; width:100%; box-sizing:border-box;}
.news_slide > .foto_news_s {width:100%; height: 150px; float:left; margin:0 0 10px 0; background-position: center; background-size: cover;}

.news_slide:hover {opacity:0.75;}

.txt_news_s {float:left; width:100%; height: 180px; padding:0 0 20px 0; overflow: hidden;}
.txt_news_s > strong {color:#232323;}
.txt_news_s > p {    display: inline-block;
    line-height: 16px;
    display: -webkit-box;
    font-size: 14px;
    height: 128px;
    -webkit-line-clamp: 4;
    overflow: hidden;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
}

.txt_news_s > div {
font-size: 1em;
font-weight:600;
line-height: 1.2em;
margin: 0 0 5px 0;
}

.news_slide:nth-child(even) {padding:0 0 0 10px;}
.news_slide:nth-child(odd) {padding:0 10px 0px 0;}

@media screen and (min-width: 600px) {
	.half_slide		{width:100%; float:left;margin-top: 122px; }
.half_slide.aa {margin-top:60px;  height: 500px;}
	.news_slide {width:50%;}
}

@media screen and (min-width: 960px) {
	
.int_slide {
    height: 622px;
    overflow: hidden;
	
	
}
	
	
	.slide_home_due		{ 
		float: left;
    height: 418px;
	box-sizing: border-box;
		width:100%;
		padding:20px 6%;
		margin:0;
	}
	
	.half_slide {width:50%; margin-top: 121px;}
	.half_slide.aa {margin-top:121px; margin-bottom:0; height:500px;}
}

.slide_home_due > ul.slick-dots {
    bottom: 20px;
    margin: 0;
	left: -30px;
}




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

.slick-dots 						{ 
										bottom: 6%;
										
										padding: 0;
										list-style: none;
										}


.slick-dots li {margin: 0 3px!important;}

.slick-dots li.slick-active button:before {
    opacity: 1;
    color: #ed217c;
}
 
.slick-dots li.slick-active button	{ opacity:1;}

.slick-dots li button:before {
    font-size: 15px;
}

.slick-dots li button:before { color:#FFF;}


.slide_home_item		{  
								display:inline-block;
								min-height:300px;
								background-size: cover;
								background-position: center;
								text-align: center;
								
								background-repeat: no-repeat;
								}
.slide_home_int		{ 
								max-width:1400px; 
								margin:0 auto;
								position: relative;
    							z-index: 1;
								height:40%;
								text-align:right;
								
								}
@media screen and (min-width: 600px) {
.slide_home_item		{  
								display:inline-block;
								height:520px;
								background-size: cover;
								background-position: center;
								text-align: center;
								background-repeat: no-repeat;
								background-color:#EFEFEF;
								}
	
	
	.slide_home_int		{ 
								max-width:1400px; 
								margin:0 auto;
								position: relative;
    							z-index: 1;
								height:100%;
								text-align:right;
								
								}
}



								
.slide_home_title		{
								
								color:#FFF;
								font-size:1.9em;
								line-height:1em;
								display:inline-block;
								width:100%;
								padding:30px 6% 0 6%;
								text-shadow: 0px 2px 0px #222;
								text-align:right;
								float:left;
								BOX-SIZING:BORDER-BOX;
								}			
								

.slide_home_desc		{
								
								color:#FFF;
								font-size:1.9em;
								line-height:1em;
								display:inline-block;
								width:96%;
								padding:50px 2% 0 2%;
								text-shadow: 0px 2px 0px #222;
								}

.slide_home_desc p {text-shadow: 1px 2px 0px #222;
    color: #FFF;
    line-height: 1.5em;
    font-weight: bold;}

.slide_home_abs			{ color:#FFF;
								font-size:1.7em;
								line-height:1em;
								display:inline-block;
								width:96%;
								padding:10px 2% 0 2%;
								text-shadow: 0px 2px 0px #222;
								text-align:left;}																					

@media screen and (min-width: 600px) {
	
	.slide_home_int		{ min-height:inherit;}
	
	.slide_home_title		{
								
								font-size:4em;
								line-height:1.2em;
								padding:140px 2% 0 2%;
								}	
	
.slide_home_desc				{	font-size:1.2em;
								line-height:1em;
								padding: 30px 6% 0 6%;
								}	
}

@media screen and (min-width: 1024px) {
	.slide_home_title		{
								
								font-size:4em;
								padding:160px 2% 0 2%;
								line-height:1.5em;
								}	
	
.slide_home_desc		{	font-size:1.2em;
								padding:30px 6% 0 6%;
								line-height:1em;
								}	
	
}

.slide_home_item > .int	{ z-index:1;} 

ul.slick-dots {
    z-index: 2;
	width: 50%;
	float:left;
}


a.slide_home_action	{
	background: #00aeef;
    color: #fff;
    text-transform: uppercase;
    font-size: 14px;
    line-height: 56px;
    padding: 0px 30px;
    display: inline-block;
    margin: 30px 6% 0 0;
    border-radius: 3px;
    top: auto;
    text-align: center;
	font-weight:600;
}
@media screen and (min-width: 600px) {
a.slide_home_action	{
    margin: 30px 2% 0 0;
}
}									
a.slide_home_action:hover	{ background:#232323; color:#FFF;}			

a.slide_home_action > i		{ display:none;}	

.center > a.slide_home_action {margin:30px 0 0 0;}
 
 .filter						{ 
 								background: rgba(0,0,0,0.06);
								width: 100%;
								height: 100%;
								position: absolute;
								top: 0;
								left: 0;
	 							z-index:1;
								}
								
								
.int							{width: 96%;margin:0 2%;padding:0;position:relative;z-index: 2;/* display: inline-block; */}		
.slick-dots					{ margin:-60px 2% 60px 2%; padding: 0 25px; position:relative; text-align:left;}						
 @media screen and (min-width: 1024px) {
.int							{ max-width:980px; margin:0 auto; width: 100%;}
.slick-dots								{  margin:-60px auto 60px auto;}
.int_slide							{ max-width:980px;}	 
 }
 
  @media screen and (min-width: 1240px) {
.int							{ max-width:1100px; margin:0 auto; width: 100%;}
.slick-dots								{  margin:-60px auto 60px auto;}
.int_slide							{ max-width:1100px;}		  
 }
 
@media screen and (min-width: 1410px) {
.int							{
    max-width: 1300px;
    margin: 0 auto;
    padding: 0 15px!important;
    width: 100%;
    }
.slick-dots							{  margin:-60px auto 60px auto; padding: 0 25px;}
.int_slide							{ max-width:1400px;}		
 }
 

.int.sep.c_l_r {
    /* padding-bottom: 40px!important; */
    /* padding-top: 40px!important; */
}
 
 
 
.header					{
								width:96%;
								padding:0px 2%;
								/* position:fixed; */
								margin:0 auto;
								float:left;
								/*box-shadow:0 0px 8px 2px rgba(0,0,0,0.2);*/
								}
								   

								 
a.logo						{	
								float:left;
								height:auto;
								width:auto;
								}				
								
a.logo > img				{width:auto;height: 14px;padding: 20px 0px;}	

@media screen and (min-width: 600px) {
a.logo > img				{width: 200px;height: auto;padding:/*0px 0 35px*/20px 0 25px;}	
}

@media screen and (min-width: 1240px) {
a.logo > img				{width: 290px;height: auto;padding: 40px 0;}	
}

a.menu:hover			{ }
a.menu						{ 
								height: 50px;
    width: 50px;
    float: right;
    position: relative;
    margin: 8px 0 0 0;
								}	


span.uno.transition {
    margin: 10px 5% 3px 5%;
}

@media screen and (min-width: 600px) {
	span.uno.transition {
    margin: 10px 5% 4px 5%;
}

}

.bbaa		{ position:relative; float:right; }

.sub-menu	{
	position: absolute;
    top: 80px;
    left: 20px;
	/*width:100%;*/
    background: #ed1c24;
    color: #FFF;
    display: none;
    padding: 0 30px 10px 30px;
    text-align: left; 
	white-space: nowrap;
}

.sub-menu li {list-style: none; float:left; /*width:100%;*/}

.sub-menu li a {
	color: #FFF;
    margin: 0 0 5px 0;
    padding: 0 0 5px;
	float:left;/* width:100%;*/
	box-sizing: border-box;
}

a.menu > span			{ 
						    background: #232323;
    height: 3px;
    margin: 3px 5% 4px;
    width: 70%;
    float: right;
    border-radius: 0px; 
}

a.menu:hover > span	{ background-color:blueviolet;} 


.etichetta_menu		{
	position: absolute;
	width: auto;
	right: 0;
	top: 9px;
	display: none;
}


@media screen and (min-width: 600px) {
	.etichetta_menu		{
								display: none;
								}
}

.text							{
								width: auto;
								border-radius: 0px;
								background: #00aeef;
								color: #FFF;
								padding: 0px 18px 0 15px;
								font-weight: bold;
								position: relative;
								line-height: 35px;
								}

.linguetta					{     
	position: absolute;
    background: #00aeef;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    width: 14px;
    height: 14px;
    display: block;
    right: -3px;
    top: 10px;
}			

@media screen and (min-width: 600px) {
a.menu						{
								height:50px;
								width: 32px;
								margin: 20px 0 0 0;
								}	
								
a.menu > span			{
								background: #232323;
								height: 2px;
								width: 90%;
								float: right;
								}

span.uno.transition {
    margin: 12px 5% 4px 5%;
}								

}								
																		
span.tre					{ margin:5px 10% 0 10%;}



.menu_aperto			{
								position: fixed !important;
								background: #222222;
								top: -130%;
								display: none;
								vertical-align:middle;
								z-index: 1000;
								height: 100vh;
								left: 0px;
								width:100%;
								text-align:center;
								border-bottom:15px solid #FFF;
								opacity:0;
								}
.cont-menu {display: table-cell;vertical-align: middle;text-align: center;}

.menu_aperto > .cont-menu > a {
    width: 100%;
    font-size: 1.3em;
    display: table;
    color: #FFF;
    float: none;
	font-weight:300;
    vertical-align: middle;
}

.menu_aperto > .cont-menu > a:hover {color:blueviolet}

.block {display:block !important;}

.sub-menu-mob {
    width: 100%;
    float: left;
    list-style: none;
    padding: 0;
	text-align: center;
}


a.close_menu			{
								height: 30px!important;
								width: 30px!important;
								top: 30px;
								right: 30px;
								color: #FFF;
								position: fixed;
								z-index: 100;
								display: block!important;
								}



.close-01 {width:30px; height: 2px; background: #FFF; transform: rotate(45deg); position:absolute; left:0; top:15px;}
.close-02 {width:30px; height: 2px; background: #FFF; transform: rotate(-45deg); position:absolute; right:0; top:15px;}

a.close_menu:hover > .close-01, a.close_menu:hover > .close-02 {background:blueviolet;}


.opensubmob.minus:before {content: "-" !important; margin:0 5px 0 0 ;}
.opensubmob.plus:before {content: "+";margin:0 5px 0 0 ;}
.mob_link_mod {    
	float: left!important;
    width: 115px!important;
    display: inline-block!important;
    color: #FFF!important;
    border-radius: 0;
    position: fixed;
    right: -50px;
    padding: 10px;
    top: 275px;
    transform: rotate(-90deg);
    z-index: 10;
    background: #ed217c;}

@media screen and (min-width: 1240px) {
.mob_link_mod {display: none!important;}
}
@media screen and (min-width: 600px) {
	
	
	
	a.close_menu {
    height: 90px;
    width: 90px;
	line-height:90px;
	font-size: 2em;
 }
}



.mob_link	{/* float:left; *//* width:100%; *//* display: inline-block; *//* color:#FFF; */}



.cont_link_sub {float:left; width:100%; display: inline-block; color:#FFF;}

.show						{opacity:1 !important;top:0 !important;vertical-align: middle;text-align: center;display: table;}
								
span.l_c					{ height:6px; width:80%; margin:0 10%; float:left;
								-ms-transform: rotate(45deg); /* IE 9 */
								-webkit-transform: rotate(45deg); /* Chrome, Safari, Opera */
								transform: rotate(45deg);
								background:#a9282d;
								}																

span.r_c					{ height:6px; width:80%; margin:0 10%; float:left;
								-ms-transform: rotate(-45deg); /* IE 9 */
								-webkit-transform: rotate(-45deg); /* Chrome, Safari, Opera */
								transform: rotate(-45deg);
								background:#a9282d;
								}		

.voci							{ width:80%; padding:0px 10% 0 10%; display:inline-block; margin:-30px 0 0 0;}

a.vocemenu			{ 
								text-transform:uppercase;
								color:#FFF;
								font-size: 1.7em;
								line-height: 1.4em;
							    font-weight:600;
								}
								
.cont-social				{ width:100%; text-align:center; margin:15px 0 0 0; display:inline-block;}
a.social, a.social > i		{ font-size:28px; color:#FFF; margin:0 5px;}

a.social_f					{ font-size:1.5em; color:#000; margin:0 5px 0 0;}
a.social_f	:hover		{ color:blueviolet;}	



/*menu 2*/

.menu_big								{ display:none; position:relative;}
.menu										{ display:block;}


@media screen and (min-width: 1240px) {	
							
a.vocemenu_aperta					{ 
									text-transform: uppercase;
									color: #232323;
									font-size: 14px;
									font-weight:600;
									float: right;
									margin: 48px 2px 48px 2px;
									padding:0 6px;
    								line-height: 33px;
									border:2px solid #fff;
}		
								
						
a.vocemenu_aperta:hover		{ color:blueviolet; border:2px solid #FFF;}	
	
	
	
a.vocemenu_aperta2					{ 
									text-transform: uppercase;
									color: #fff;
									background:#ed217c;
									font-size: 14px;
									font-weight:600;
									float: right;
									margin: 48px 0px 48px 2px;
									padding:0 6px;
    								line-height: 33px;
									border:2px solid #ed217c;
	border-radius:0;
}		
								
						
a.vocemenu_aperta2:hover		{ color:blueviolet; border:2px solid #ed217c; background: #FFF;}		


}

@media screen and (min-width: 1240px) {	
.menu										{/* display:none; */}
.menu_big								{ float:right; display:block;}

	
}

@media screen and (min-width: 600px) {								
a.vocemenu			{ 
								
								font-size: 4em;
								line-height: 1.2em;
							    }																						

a.vocemenu:hover	{ color:blueviolet;}
a.social					{ font-size:2em; color:#FFF;}
a.social:hover			{ color:blueviolet;}
}

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

.riga {width: 96%;float:left;padding: 60px 2%;position: relative;}

.riga_full			{ width:100%; float:left;}



.sep						{ padding:40px 0;display:table; margin:0 auto;}




a.action-standard {
    background: #00aeef;
    color: #fff;
    text-transform: uppercase;
    font-size: 14px;
    line-height: 56px;
    padding: 0px 30px;
    display: table;
    margin: 30px 6% 0 0;
    border-radius: 0;
    top: auto;
    text-align: center;
    font-weight: 600;
}

a.action-standard:hover {
    background: #232323;
    color: #fff;
}


.left_home	> span.bg					{ 
													width: 100%;
													height: 100%;
													z-index: 10;
													position: absolute;
													top: 0;
													left: 0;
													background: rgba(0,0,0,0.25);
													text-align:center;
													opacity:0;
													}

.left_home:hover	> span.bg		{
													width: 100%;
													height: 100%;
													z-index: 10;
													position: absolute;
													top: 0;
													left: 0;
													background: rgba(0,0,0,0.75);
													text-align:center;
													opacity:1;
													color:blueviolet;
													}
													

.left_home	> span.bg > .puls									{
	color: blueviolet;
    background: #222;
    border-radius: 0%;
    line-height: 50px;
    width: 50px;
    top: 0%;
    display: inline-block;
    opacity: 1;
    height: 50px;
    position: absolute;
    margin-top: 0px;
    left: 50%;
    margin-left: -25px;
	opacity: 0;
}	

.left_home:hover > span.bg > .puls						{
	color: #222;
    background: blueviolet;
    border-radius: 100%;
    line-height: 50px;
    width: 50px;
    top: 50%;
    display: inline-block;
    opacity: 1;
    height: 50px;
    position: absolute;
    margin-top: -25px;
    left: 50%;
    margin-left: -25px;
	opacity:1;
}								
	

.puls > i {line-height: 50px}


.left, .right						{
									width:100%;
									float:left;
									margin:20px 0;
									}










a.left_servizi_small	> span.bg					{ 
													width: 100%;
													height: 100%;
													z-index: 10;
													position: absolute;
													top: 0;
													left: 0;
													background: rgba(0,0,0,0.75);
													text-align:center;
													opacity:0;
													}

a.left_servizi_small:hover	> span.bg		{
													width: 100%;
													height: 100%;
													z-index: 10;
													position: absolute;
													top: 0;
													left: 0;
													background: rgba(0,0,0,0.75);
													text-align:center;
													opacity:1;
													}
													

a.left_servizi_small	> span.bg	 > .puls									{
																				color: #222;
																				background: #ed1c24;
																				border-radius: 100%;
																				line-height: 50px;
																				width: 50px;
																				margin-top: 20%;
																				display: inline-block;
																				opacity:0;
																				}	

a.left_servizi_small:hover	> span.bg	 > .puls						{
																				color: blueviolet;
																				background: #ed1c24;
																				border-radius: 4px;
																				line-height: 50px;
																				width: 50px;
																				margin-top: 25%;
																				display: inline-block;
																				opacity:1;
																				}	


@media screen and (min-width: 600px) {
.left								{
									width:45%;
									float:left;
									margin:30px 5% 30px 0;
									}
									
.right							{
									width:45%;
									float:left;
									margin:30px 0 30px 5%;
									}									
}

.guarda-tutto {float:right;/* width:100%; */color:#444;text-align: right;position: absolute;bottom: 40px;right: 2%;}
.guarda-tutto:hover {color:blueviolet;}

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

.box_marchi				{
								width:96%;
								padding:2%;
								display:inline-block;
								border-bottom:15px solid #FFF;
								min-height:300px;
								}

h2.bianco					{ color:#222; }

@media screen and (min-width: 600px) {
	.box_marchi	 > h2				{ font-size:4em; }
}

.slide_marchi {
    padding:60px 0;
}
.slide_marchi > img				{ max-width:190px;}		

.box_contatti			{
								width:100%;
								padding:0%;
								display:inline-block;
								height:1110px;
								position:relative;
								}		
								

h2.form				{ width:96%; font-size:2.8em; color:#FFF; padding:2%;}								
	
	h2.title_dove				{ width:auto; min-width:50%; font-size:4em; color:#222; padding:2%; font-size:4em;  display:none; padding:2% 0 0 2%; display:none; text-transform:uppercase; position:absolute; z-index:102;
top:0; left:0;}			

@media screen and (min-width: 600px) {
h2.form					{ font-size:4em; }
.box_contatti			{
								height:760px;
								}		

}
	
.cont_form				{
								position:relative;
								top:0;
								left:0;
								z-index:2;
								background:rgba(0,0,0,0.75);
								width:100%;
								height:1110px;
								}			 
@media screen and (min-width: 600px) {
.cont_form				{ height:760px;}
}

.form						{
								width:100%;
								float:left;
								}
								
.campo_form, .textarea_form	{
												
												color: #222;
												background: transparent;
												border-radius:0;
												}								


.left_form, .right_form, .riga_form { width:100%; float:left;  margin:0 0 20px 0; padding:0; position:relative;}

.errfname, .erremail, .errmessage {
    position: absolute;
    font-size: 0.8em;
    right: 0;
	color:#d90000 !important;
}
.erremail {color:#d90000 !important;}

.left_form > .errfname, .left_form > .erremail {right:4%;}

.campo_form			{
								width:96%;
								padding:0 2%;
								float:left;
								line-height:45px;
								font-size:14px;
								color:#222;
								border-top:0;
								border-left:0;
								border-right:0;
								border-bottom:1px solid #222;
								}	
								
.textarea_form			{
								width:96%;
								padding:0 2%;
								float:left;
								line-height:30px;
								font-size:14px;
								color:#222;
								height:204px;  
								margin:0 0 10px 0;
								border:0;
								border-bottom:1px solid #222;
								box-sizing:border-box;
								}																				

.cont_area				{height:220px; position:relative; width:100%; float:left;}
.cont_area > span	{ width:100%; border-bottom:1px solid #FFF; line-height:29px; display:inline-block; position:relative; float:left; height:29px; }

@media screen and (min-width: 600px) {
.campo_form							{width: 98%;padding: 0 2% 0 0%;}
.textarea_form							{width: 100%;padding: 0 0% 10px 0;}
.left_form, .right_form				{ width:48%; position:relative;}
.left_form									{ padding:0 2% 0 0;}
.right_form								{ padding:0 0 0% 2%;}
	.riga_form { position:relative;}	
} 





.info_form {
    width: 100%;
    font-size: 13px;
    line-height: 18px;
    color: #222; 
    display: inline-block;
    margin: 0 0 10px 0;
}

.info_form > a					{ color:#222; text-decoration:underline;}
.info_form > a:hover			{ color:blueviolet; text-decoration:none;}
								
.invia	{ 
	text-transform:uppercase; float:left;
	background:#222222;
	line-height:55px;
	width:100%;
	text-align:center;
	color:#FFF;
	border:0;
	border-radius:0;
}								


.info_form2					{
								width:100%;
								font-size:11px;
								line-height:13px;
								color:#232323;
								display:inline-block;
								 margin:0 0 10px 0;
								}	

@media screen and (min-width: 600px) {
	
.form						{
								}	

									



.info_form					{
								font-size:0.9em; line-height:1.6em; width:100%;
								color:#222;
								display:inline-block;
								 
								}
								
							
								
.invia {
    text-transform: uppercase;
    float: right;
    background: #222;
    line-height: 55px;
    width: 160px;
    text-align: center;
    color: #FFF;
    border: 0;
    font-size: 14px;
    font-weight:600;
    border-radius: 0px;
}
								
.invia:hover	{ 
	background:blueviolet;
	color:#FFF;
}									

}



.left_dove, .right_dove				{ width:100%; display:inline-block;}
@media screen and (min-width: 600px) {
	.left_dove, .right_dove				{ width:50%; float:left;}
}


.footer	{
background:#282828;
float:left;
width:100%;
margin-top:30px;	
}

.footer > section {
	padding:0 0 30px 0!important;
	margin-top:30px;
}

.social-header1 {
    position:absolute;
	right: 0;
	top:2px;
	margin:0!important;
}
.social-header2 {
    position:absolute;
	right: 30px;
	top:2px;
	margin:0!important;
}
.social-header2:hover {color:#222!important;}
.social-header1:hover {color:blueviolet!important;}

.footer > section > .grid_3 {position:relative; padding:30px 0 0 0;}

.footer > .section > .int > .grid_3:last-child {margin:0!important;}


.logo-footer { width: auto; height: auto; position: relative; margin:-30px 10px 10px 0; float:left; display: none;}
.logo-footer > img {max-width:100%; float:left;}

.footer_bot			{ width:100%; background:#232323; padding:10px 0; float:left;}

.grid_3.foo > a {width:100%; float:left; line-height: 20px; font-weight: 600; color:#FFF;}


.split {width:50%!important;}


.fa-facebook-square, .fa-instagram {
    font-size: 23px;
    color: #ed217c;
    margin: 4px 10px 0 0;
}
.fa-facebook-square:hover, .fa-instagram:hover {color:blueviolet;}

@media screen and (min-width: 980px) {
.fa-facebook-square, .fa-instagram {
    font-size: 20px;
    color: #ed217c;
    margin: 4px 0px 0 10px;
}	
	
	
}	




a.link_ff				{ color:#FFF; text-decoration:underline;}
a.link_ff:hover		{ color:blueviolet; text-decoration:none;}

a.mostra				{
							top:2%;
							right:2%;
							text-transform:uppercase;
							position:absolute;
							z-index:1000;
							
							}
							

a.mostra > i			{		
							color: #ed1c24;
  							font-size: 2em !important;
							line-height: 2em;
							margin: 0 10px 0 0;
							}			

a.mostra	span		{ line-height:2em; font-size:0em;}



a.chiudi				{
							top:2%;
							right:2%;
							text-transform:uppercase;
							position:absolute;
							z-index:1000;
							margin:10px 0 0 0;
							}
							

a.chiudi > i			{		
							color: #000;
  							font-size: 2em !important;
							line-height: 2em;
							margin: 0 10px 0 0;
							}			

a.chiudi	span		{ line-height:2em; font-size:0em; color:#000;}


@media screen and (min-width: 600px) {

	
	a.mostra				{
							top:2%;
							right:2%;
							text-transform:uppercase;
							color:#FFF;
							position:absolute;
							z-index:1000;
							line-height:2em;
							font-size:1em;
							}
							
a.mostra:hover		{ color:blueviolet;}

a.mostra	span		{ line-height:2em; font-size:1em;}			

	a.chiudi				{
							top:2%;
							right:2%;
							text-transform:uppercase;
							color:#FFF;
							position:absolute;
							z-index:1000;
							line-height:2em;
							font-size:1em;
							}
							
a.chiudi:hover		{ color:blueviolet;}
 
a.chiudi	span		{ line-height:2em; font-size:1em;}			
}
								
#map-canvas		{ min-height:450px; border-bottom:10px solid #FFF; }														
@media screen and (min-width: 600px) {
#map-canvas		{ min-height:500px}
}

a.credits				{float:right;line-height:30px;margin:0 10px 0 0;float:right;background:transparent!important;color:#FFF!important;padding:0;font-size: 10px;}
a.credits:hover		{ color:blueviolet!important; background:transparent!important;}


			


/******************************* NEWSLETTER ******************************/

.section						{ width:100%;  padding:30px 0; float:left;}

.bg_blu						{ background:#ed1c24; color:#FFF;}
.bg_nero					{ background:#f8f8f8; color:#222;}  
.bg_bianco					{ background:#000; color:#FFF;}

.cont_newsletter	{
	width:100%;
	float:left;
	border-radius: 0px;
	margin:8px 0;
	height: 40px;
	background:#FFF;
	overflow:hidden;
}

							

.input_nl				{
							border: 0;
							padding: 0 10px;
							box-sizing: border-box;
							float: left;
							color: #444;
							box-shadow: none;
							line-height: 40px;
							font-size: 12px;
							width: calc(100% - 50px);
							text-transform: none;
							}							
							
a.iscriviti				{height: 40px;line-height: 40px;float:left;color: #444;text-align: center;width:50px;}
a.iscriviti:hover		{ color:blueviolet;}		
a.iscriviti > i {
    line-height: 40px;
    font-size: 20px;
}

::-webkit-input-placeholder {
   color: #222;
}

:-moz-placeholder { /* Firefox 18- */
   color: #222;  
}

::-moz-placeholder {  /* Firefox 19+ */
   color: #222;  
}

:-ms-input-placeholder {  
   color: #222;  
}


/*********************** CHI SIAMO ************************/
.testata	{
	width:96%;
	padding:4% 2%;
	display:inline-block;
	min-height:180px;
	position:relative;
	overflow:hidden;
	background-color:#000;
	background-size:cover;
	margin-bottom: 32px;
}


.testata > h1							{ width:100%; font-size:2.8em; color:#FFF; margin-top:100px; word-wrap: break-word; text-shadow: 0px 2px 0px #222;}
.testata > .int > h1				{ width:100%; font-size:2.2em; color:#FFF; margin-top:100px; word-wrap: break-word; text-shadow: 0px 2px 0px #222;}




@media screen and (min-width: 600px) {
.testata			 			{
								min-height:220px;
								margin-top:134px;
								margin-bottom: 60px;
								}
									
.testata	 > h1						{ font-size:4em; margin-top:50px; }
.testata	 > .int > h1				{ font-size:4em; margin-top:50px; }
}

.corpo_statiche		{ padding:3% 2%; width:100%; display:inline-block; box-sizing: border-box;}

@media screen and (min-width: 1024px) {
	.corpo_statiche		{ padding:80px 2%; width:100%; margin:0 auto; display:inherit;}
}


/***************** SERVIZI **************/

.corpo_servizi_cat	{ width:100%;float:left; border-bottom:15px solid #FFF;}

.riga_servizi				{ background:#efefef;}
.left_servizi				{ width:100%; padding:25% 0 25% 0; position:relative; float:left; overflow:hidden; }
.right_servizi				{ width:100%; padding:15%; position:relative; float:left; overflow:hidden; box-sizing: border-box;}


.left_servizi_small				{ width:100%; padding:25% 0 25% 0; float:left; position:relative; overflow:hidden;background-color:#f8f8f8;}
.right_servizi_small			{ width:100%; padding:25% 0 25% 0; float:left; position:relative; overflow:hidden; background-color:#f8f8f8;}


.right_servizi	> div > h2 {font-size:14px;}

.right_servizi > div > p {line-height: 16px;     min-height: 90px;}

@media screen and (min-width: 640px) {
.left_servizi				{ width:50%; padding:0 0 50% 0; position:relative; float:left;}
.right_servizi				{ width:50%; padding:18px; position:relative; float:left; box-sizing: border-box;}


.left_servizi_small				{ width:50%; padding:0 0 70% 0; float:left; position:relative;}
.right_servizi_small			{ width:50%; padding:0 0 70% 0; float:left; position:relative;}
}

@media screen and (min-width: 1024px) {
.left_servizi_small				{ width:50%; padding:0 0 30% 0; float:left; position:relative;}
.right_servizi_small			{ width:50%; padding:0 0 30% 0; float:left; position:relative;}
}


@media screen and (min-width: 1240px) {
.right_servizi				{ width:50%; padding:40px 20px 0px 20px; position:relative; float:left; box-sizing: border-box;}
}

.block {
  text-align: center;
    position: relative;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
	background:#FFF;
	}

@media screen and (min-width: 640px) {
.block {
  text-align: center;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
	}
}
 
 
.block:before {
  content: '\200B';
  display: inline-block;
  height: 100%; 
  vertical-align: middle;
 }


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

.centered {
      display: inline-block;
   
    vertical-align: middle;
    text-align: left;
	line-height: 1.4em;
 }




.centered > h2				{ width:100%; display:inline-block; margin:0 0 10px 0; font-size:1.6em; color:#222; font-weight:600;}


a.link_ser					{ color:#222;}
a.link_ser:hover			{ color:blueviolet;}

/** gallery **/


.gallery			{
					width:100%;
					float:left;
					padding:0 0 15px 0;
					}


.gallery > a:first-child {display:none;}
					
a.thumb			{	
	width: 100%;
    padding: 0 0 100% 0;
    float: left;
    box-sizing: border-box;
    box-shadow: inset 0px 0px 0px 0px #efefef;
}					

a.thumb:hover { box-shadow: inset 0px 0px 0px 4px #efefef;} 

@media screen and (min-width: 600px) {
	a.thumb			{	
					    width: 25%;
						padding: 0 0 25% 0;
						}
}

a.allegato			{
						float:left;
						width:100%;
						font-size:16px;
						line-height:1em;
						margin:25px 0;
						color:#444;
						
						}

a.allegato:hover		{ color:blueviolet;}
						
a.allegato > i						{ font-size:2.2em; float:left; color:#ed217c; padding:0 15px 0 0}
a.allegato:hover > i				{ color:blueviolet;}	
a.allegato span		{ float:left; line-height: 2.2em; color:#444; font-size: 16px;}						

a.allegato:hover span { color:blueviolet;}

.path			    { width:100%; display:inline-block; margin:0 0 20px 0; color:blueviolet;}

.path a			    {
						color: #222;
						-moz-transition: all 0.2s ease-in-out;
						-webkit-transition: all 0.2s ease-in-out;
						-o-transition: all 0.2s ease-in-out;
						-ms-transition: all 0.2s ease-in-out;
						font-size: 12px;
						text-transform: uppercase;
						}
.path a:hover	{ color:blueviolet;}			

.statiche	{float:left;}
.statiche a {margin: 0 10px 0 0;float:left;color:#000;background: #FFF;padding:0;}
.statiche a:hover {color:blueviolet; background: #FFF;}
@media screen and (min-width: 640px) {
.statiche {margin:0; width:auto;}
}
			
input[type='checkbox'] {
    margin: 0 5px 0 0;
    float: left;
}
a.l_nl {color:#FFF;}
a.l_nl:hover {color:blueviolet;}




.grid_3  {
	width:100%;
	float:left;
	margin:0 0 20px 0;
}

.foto_grid3 {
	width:100%;
	float:left;
	padding:0 0 75%;
	margin:0 0 15px;
	border-radius:0px;
} 

.title-news-link {
	width: 100%;
    float: left;
    margin: 0 0 10px 0;

    color: #222;
    line-height: 16px;
}

.title-news-link:hover {color:blueviolet;}

.txt_grid3 {width:100%; float:left;}

.grid_4  {
	width:50%;
	float:left;
	margin:0 0 20px 0;
	box-sizing:border-box;
}

.wide {width:100%!important;} 
.full {width:100%!important;} 


.info-left {float:left; color:#FFF; font-size:12px; width: 100%;}
.info-left > a {color:#FFF; font-weight:300;}
.info-left > a:hover {color:blueviolet;}

.info-left:first-child {padding:0 10px 0 0; box-sizing: border-box;}

@media screen and (min-width: 980px) {
	.info-left:first-child {padding:0; box-sizing: border-box;}
	
	.grid_3  {
	width:31.333%!important;
	float:left;
	margin:0 3% 20px ;
		
		
}
	
	.wide {width:25%!important;} 
	.grid_3:first-child, .grid_3:last-child {margin:0 0 20px!important;}	
	
	
	.grid_4  {
	width:25%;
	float:left;
	padding:0 10px 0 0;
	margin:0;	
}
	
		.grid_4:last-child  {
	width:25%;
	float:right;
		color:#FFF;
			text-align: right;
	padding:0 0px 0 0;
			
}
	
}



	.list-grid  {
	width:100%;
  
}
	
	.per3 { width:100%; margin:0 0 20px 0;}
		
	




@media screen and (min-width: 980px) {
	.list-grid  {
		/*display: grid;
		grid-column-gap: 50px;
  		grid-template-columns: auto auto auto;*/
	}
	
	.per3 {width:31.333%; }

	.per3:nth-child(even) {width:31.333%; float:left; margin:0 2.5% 10px 0;}
	.per3:nth-child(odd) {width:31.333%;  float:left; margin:0 2.5% 10px 0;}
	
	
	.per3:nth-child(3n+0) {width:31.333%; margin:0 0 10px 0;}
	
}


.left_servizi				{ width:100%; padding:25% 0 25% 0; position:relative; float:left; overflow:hidden; border-radius:0px; }
.right_servizi				{ width:100%; padding:10px 0; position:relative; float:left; overflow:hidden; box-sizing: border-box;}



.right_servizi	> div > h2 {font-size:14px;}

.right_servizi > div > p {line-height: 16px; min-height: 90px;}

@media screen and (min-width: 640px) {
.left_servizi				{ width:100%; padding:0 0 70% 0; position:relative; float:left;}
.right_servizi				{ width:100%;  position:relative; float:left; box-sizing: border-box;}


}



@media screen and (min-width: 980) {
.right_servizi				{ width:100%; padding:20px 0px; position:relative; float:left; box-sizing: border-box;}
}


.block-ellipsis2 {

    display: block;

    display: -webkit-box;

    max-width: 100%;

    max-height: 37px;

    min-height: 24px;

    margin: 0 auto;

    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;

    overflow: hidden;

    text-overflow: ellipsis;

}



.block-ellipsis5 {

    display: block;

    display: -webkit-box;

    max-width: 100%;

    height: 100px;

    margin: 0 auto;

    line-height: 1.4em;

    -webkit-line-clamp: 5;

    -webkit-box-orient: vertical;

    overflow: hidden;

    text-overflow: ellipsis;

}



.prodotti-list {
	width:100%;
	float:left;
	position:relative;
	margin:0 0 20px 0;
	min-height: 400px;
	box-sizing: border-box;
	padding:20px;
}

.prodotti-list > span {color:#FFF; width:calc(100% - 40px); position:absolute; bottom:20px; left:20px; color:#FFF; z-index:2;}

.prodotti-list > span > h2 {color:#FFF; text-transform: uppercase; font-size:24px;}


  .prodotti-list > div {  position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+100&0+0,0.4+93 */
background: -moz-linear-gradient(top,  rgba(0,0,0,0) 0%, rgba(0,0,0,0.4) 93%, rgba(0,0,0,0.4) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.4) 93%,rgba(0,0,0,0.4) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.4) 93%,rgba(0,0,0,0.4) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#66000000',GradientType=0 ); /* IE6-9 */


}


.prodotti-list:hover > div {opacity:0.3;}

@media screen and (min-width: 640px) {
	.prodotti-list {
	width:49%;
	float:left;
	position:relative;
	min-height: 500px;
	box-sizing: border-box;
	padding:20px;
}
	
	.prodotti-list:nth-child(even)  {width:49%; margin:0 0 2% 1%;}
.prodotti-list:nth-child(odd) {width:49%; margin:0 1% 2% 0%;}
	
	.prodotti-list > span > h2 {color:#FFF; text-transform: uppercase; font-size:30px;}
}




.list-s {width:100%; float:left; margin:0 0 10px 0;}
.list-s > p {width:100%; float:left;}
.list-s > img {margin:10px 0; display:block; width:100%;}
@media screen and (min-width: 640px) {
	.list-s > p {width:calc(100% - 240px); float:left; margin:0 0 10px 0;}
.list-s > img {margin:10px 0; float:right; width:210px; margin:0 0 5px 30px;}
}

@media screen and (min-width: 980px) {
	.list-s > p {width:calc(100% - 340px); float:left; margin:0 0 10px 0;}
.list-s > img {margin:10px 0; float:right; width:310px; margin:0 0 5px 30px;}
}


