body{
	background: #ffffff;
	color: #414042
}
.pleft { padding-left: var(--gap_0) }
.pleftmezz { padding-left: calc(var(--gap_0) / 2) }
#voceMenu { width: 60px }
#header {
	position: fixed;
	top: 0; left: 0;
	z-index: 9000;
	width: 100%;
	height: 110px;
	background: rgba(255,255,255,0.6);
	-webkit-transition: background 0.5s;
	transition: background 0.5s
}
@supports ((-webkit-backdrop-filter: none) or (backdrop-filter: none)) {
	.backdrop {
		-webkit-backdrop-filter: blur(20px);
		backdrop-filter: blur(20px)
	}
}
#header .col { height: 110px }
#header h6 { display: inline-block }
#contLogoHeader { height: 68px }
#header table { display: inline-block }
#header .icoSocial {
	display: block;
	height: 29px;
	margin-top: 2px
}
.button {
	position: relative;
	display: inline;
	z-index: 10;
	height: 100%;
	border: 0;
	padding: 0;
	margin: 0;
	background: transparent
}
#contLogoHeader button { 
	display: inherit;
	height: 100% 
}
.logoHeader {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	-webkit-transition: opacity 0.4s;
	transition: opacity 0.4s
}
#logo1 { opacity: 1 }
#logo2 { opacity: 0 }
#burger {
	display: inline-block;
	position: relative;
    width: 50px;
	height: 23px;
	overflow: hidden
}
#bu1, #bu2, #bu3 {
	position: absolute;
    height: 1px;
	left: 0;
	width: 150%;
    background: #414042;
	-webkit-transition: 0.3s;
	transition: 0.3s
}
#bu1 { transform-origin: top left; right: 0; top: 0 }
#bu2 { transform-origin: center; width: 100%; top: 11px }
#bu3 { transform-origin: bottom left; right: 0; top: 22px }

#menu { 
	display: none;
	position: fixed;
	z-index: 8500;
	top: 0; left: -50px;
	width: calc(100vw + 100px);
	height: 100%;
	color: #ffffff;
	background: #3f8cd2;
	overflow-y: scroll
}
#contMenu { 
	opacity: 0;
	margin-top: 50vh;
	z-index: 20;
	-webkit-transition: opacity 0.72s, margin 0.72s ease;
	transition: opacity 0.72s, margin 0.72s ease
}
.contLinkWork { margin-top: 0 }

#contMenu .soc {
	display: inline-block;
	margin: 0 6px 0 0;
	width: 33px
}
#contMenu .icoSocial {
	display: block;
	height: 100%
}


.bianco_c{color:#ffffff}
.bianco_b{background:#ffffff}

.grigio_c{color:#f8f8f8}
.grigio_b{background:#f8f8f8}

.azzurro_c{color:#3f8cd2}
.azzurro_b{background:#3f8cd2}

.blu_c{color:#005399}
.blu_b{background:#005399}

.grigioScuro_c {color:#DCDCDE}
.grigioScuro_b {background:#DCDCDE}


.link_nero_azzurro:link{text-decoration:none;color:#414042}
.link_nero_azzurro:hover{text-decoration:none;color:#3f8cd2 !important}
.link_nero_azzurro:active{text-decoration:none;color:#414042}
.link_nero_azzurro:visited{text-decoration:none;color:#414042}

.link_nero_grigio:link{text-decoration:none;color:#414042}
.link_nero_grigio:hover{text-decoration:none;color:#f8f8f8 !important}
.link_nero_grigio:active{text-decoration:none;color:#414042}
.link_nero_grigio:visited{text-decoration:none;color:#414042}

.link_bianco_blu:link{text-decoration:none;color:#ffffff}
.link_bianco_blu:hover{text-decoration:none;color:#005399 !important}
.link_bianco_blu:active{text-decoration:none;color:#ffffff}
.link_bianco_blu:visited{text-decoration:none;color:#ffffff}

.link_azzurro_blu:link{text-decoration:none;color:#3f8cd2}
.link_azzurro_blu:hover{text-decoration:none;color:#005399 !important}
.link_azzurro_blu:active{text-decoration:none;color:#3f8cd2}
.link_azzurro_blu:visited{text-decoration:none;color:#3f8cd2}

.form input, .form textarea, .form select {
	width: 100%;
	border-radius: 6px !important;
	background: transparent !important;
	color: dimgray !important;
	/* padding: 8px 20px 8px 20px; */
	border: 1px solid #DCDCDE
}
.form textarea {
	height: 10vw;
	min-height: 100px;
	max-height: 160px 
}
#priv {
	position: relative;
	background: transparent;
	width: 20px;
	height: 20px;
	border: 1px solid #DCDCDE;
	margin: 0 10px 0 0
}
#priv div {
	opacity: 0;
	position: absolute;
	top: 2px;
	left: 2px;
	width: 14px;
	height: 14px;
	background: #3f8cd2;
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s
}

#cLoader {
	display: none;
	position: fixed;
	z-index: 9999999999;
	top: 0; left: 0;
	width: 100%; height: 100%;
	background: rgba(255,255,255,0.95)
}
li::marker { color: #58595b }

.pulsanteAzzurro {
	display: inline-block;
	line-height: 1;
	border: 1px solid #3f8cd2;
	border-radius: 6px;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 1px;
	padding: 16px 35px 16px 35px;
	-webkit-transition: border 0.3s, background 0.3s, color 0.3s;
	transition: border 0.3s, background 0.3s, color 0.3s
}
.pulsanteAzzurro:hover {
	border: 1px solid #ffffff;
	background: #ffffff;
	color: #3f8cd2
}
.pulsanteBianco {
	display: inline-block;
	line-height: 1;
	border: 1px solid #3f8cd2;
	border-radius: 6px;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 1px;
	color: #414042;
	background: #ffffff;
	padding: 16px 95px 16px 95px;
	-webkit-transition: background 0.3s, color 0.3s;
	transition: background 0.3s, color 0.3s
}
.pulsanteBianco:hover {
	background: #3f8cd2;
	color: #ffffff
}
.pulsanteGrigio {
	display: inline-block;
	line-height: 1;
	border: 1px solid #3f8cd2;
	border-radius: 6px;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 1px;
	color: #414042;
	background: #f8f8f8;
	padding: 16px 95px 16px 95px;
	-webkit-transition: background 0.3s, color 0.3s;
	transition: background 0.3s, color 0.3s
}
.pulsanteGrigio:hover {
	background: #3f8cd2;
	color: #ffffff
}
#voceMenu {
	-webkit-transition: color 0.3s;
	transition: color 0.3s	
}

footer b, footer strong { font-weight: 500 }
footer .soc {
	display: inline-block;
	margin: 0 3px 0 3px;
	width: 33px
}
footer .icoSocial {
	display: block;
	height: 100%
}

#ts { height: 505px }
#rett {
	height: 140px;
	background: #3f8cd2;
	color: #ffffff
}
#contRett { margin-top: -70px }
.sticky {
	position: sticky;
	top: 140px;
	z-index: 10
}

.f_5 b, .f_5 strong { font-weight: 500 }
@media screen and (max-width:599px){
    #ts { height: 350px }
	#rett { height: 90px }
	#contRett { margin-top: -45px }
	#header, #header .col { height: 80px }
	.logoHeader { height: 86% }
	.pulsanteAzzurro { padding: 13px 32px 13px 32px }
	.pulsanteBianco { padding: 13px 82px 13px 82px }
}
@media screen and (max-width:414px){
	#ts { height: 300px }
	#rett { height: 80px }
	#contRett { margin-top: -40px }
	#header, #header .col { height: 70px }
	.logoHeader { margin-top: 8px; height: 70% }
	.pulsanteAzzurro { padding: 12px 31px 12px 31px }
	.pulsanteBianco { padding: 12px 75px 12px 75px }
}
@media screen and (max-width:320px){
	.logoHeader { height: 68% }
	.pulsanteAzzurro { padding: 10px 30px 10px 30px }
	.pulsanteBianco { padding: 10px 65px 10px 65px }
}
@media screen and (min-width:600px) and (max-width:767px){
	#ts { height: 400px }
	#rett { height: 106px }
	#contRett { margin-top: -53px }
	#header, #header .col { height: 90px }
	#voceMenu { width: 50px }
	.logoHeader { height: 86% }
	.pleft { padding-left: var(--gap_4) }
	.pleftmezz { padding-left: calc(var(--gap_4) / 2) }
	.pulsanteAzzurro { padding: 13px 32px 13px 32px }
	.pulsanteBianco { padding: 13px 70px 13px 70px }
}
@media screen and (min-width:768px) and (max-width:1023px){
	#ts { height: 450px }
	#rett { height: 120px }
	#contRett { margin-top: -60px }
	#header, #header .col { height: 95px }
	.logoHeader { height: 92% }
	.pleft { padding-left: var(--gap_4) }
	.pleftmezz { padding-left: calc(var(--gap_4) / 2) }
	.pulsanteAzzurro { padding: 13px 32px 13px 32px }
	.pulsanteBianco { padding: 13px 85px 13px 85px }
	.sticky{ top: 110px }
}
@media screen and (min-width:1024px) and (max-width:1199px){
	#ts { height: 475px }
	#rett { height: 124px }
	#contRett { margin-top: -62px }
	#header, #header .col { height: 100px }
	.pleft { padding-left: var(--gap_2) }
	.pleftmezz { padding-left: calc(var(--gap_2) / 2) }
	.pulsanteAzzurro { padding: 14px 33px 14px 33px }
	.pulsanteBianco { padding: 14px 90px 14px 90px }
	.sticky { top: 120px }
}
@media screen and (min-width:1200px) and (max-width:1439px){
	#ts { height: 490px }
	#rett { height: 134px }
	#contRett { margin-top: -67px }
	#header, #header .col { height: 105px }
	.pleft { padding-left: var(--gap_1) }
	.pleftmezz { padding-left: calc(var(--gap_1) / 2) }
	.pulsanteAzzurro { padding: 15px 34px 15px 34px }
	.pulsanteBianco { padding: 15px 93px 15px 93px }
    .sticky { top: 130px }
}