/* Import Fonts */
@font-face {
  font-family: 'Light';
  src:url(../font/Montserrat-Light.otf)
}
@font-face {
  font-family: 'Normal';
  src:url(../font/Montserrat-Medium.otf)
}
@font-face {
  font-family: 'Bold';
  src:url(../font/Montserrat-Bold.otf)
}

/* Toggle Styles */
html,
body {
  height:100% !important;
	font-weight: normal !important;
}

body {
	font-family: 'Normal', sans-serif;
	background-color:#f4f4f4;
	line-height: auto !important;}
	
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
	
:focus {outline:0 !important;}

ul {list-style:none; margin:0; padding:0}
ul li { }

a { color:#333333; text-decoration:none}
a:HOVER  { color:#000000; text-decoration:none}

p {margin-top:0; margin-bottom:0;}

.listGroup {
	list-style: disc;
	padding-left: 20px
}
.listGroup li {
	margin-top: 10px;
}

.dropdown-toggle:focus {outline: none !important;}

@media only screen and (max-width: 992px) {
	.w-75 {width: 100% !important}
	.form-control {
		font-size: .8rem;
		line-height: 1.5;
	}
	.input-group-text {
		font-size: .8rem;
		line-height: 1.5;
	}
}

.text-just {text-align: justify !important}


/* Margin e Padding */
.marginReset 	{margin-left:0 !important; margin-right:0 !important;}
.paddingReset 	{padding-left:0 !important; padding-right:0 !important;}
.marginTop0		{margin-top:0px !important}
.marginTop25	{margin-top:25px !important}
.marginTop50 	{margin-top:50px !important}
.marginTop100 	{margin-top:100px !important}
.marginTop150 	{margin-top:150px !important}
.marginTop200 	{margin-top:200px !important}
.marginBot25 	{margin-bottom:25px !important}
.marginBot50 	{margin-bottom:50px !important}
.marginBot100 	{margin-bottom:100px !important}
.paddingTop0 	{padding-top:0px !important}
.paddingTop50 	{padding-top:50px !important}
.paddingTop100 	{padding-top:100px !important}
.paddingTop200 {padding-top:200px !important}
.paddingBot0 	{padding-bottom:0px !important}
.paddingBot50 	{padding-bottom:50px !important}
.paddingBot100 	{padding-bottom:100px !important}


@media only screen and (max-width: 992px) {
	.pL0 {padding-left:15px !important;} 
	.pR0 {padding-right:15px !important;} 
	
	.marginReset 	{margin-left:0 !important; margin-right:0 !important;}
	.paddingReset 	{padding-left:0 !important; padding-right:0 !important;}
	.marginTop0		{margin-top:0px !important}
	.marginTop25	{margin-top:25px !important}
	.marginTop50 	{margin-top:50px !important}
	.marginTop100 	{margin-top:50px !important}
	.marginTop150 	{margin-top:50px !important}
	.marginTop200 	{margin-top:50px !important}
	.marginBot25 	{margin-bottom:25px !important}
	.marginBot50 	{margin-bottom:50px !important}
	.marginBot100 	{margin-bottom:50px !important}
	.paddingTop0 	{padding-top:0px !important}
	.paddingTop50 	{padding-top:50px !important}
	.paddingTop100 	{padding-top:50px !important}
	.paddingTop200 {padding-top:50px !important}
	.paddingBot0 	{padding-bottom:0px !important}
	.paddingBot50 	{padding-bottom:50px !important}
	.paddingBot100 	{padding-bottom:50px !important}
	
}


/* Typography Styles */
h1, .h1{
	font-family: 'Bold', Calibri, Arial, sans-serif;
	color:#333333;
	font-size:35px;
	line-height:40px;
}

h2, .h2{
	font-family: 'light', Calibri, Arial, sans-serif;
	margin: 0 auto;
	color:#666666;
	font-size:24px;
	line-height:28px;
}

h3, .h3 {
	font-family: 'Bold', Calibri, Arial, sans-serif;
	color:#194157;
	font-size:22px;
	line-height:26px;
}

h4, .h4{
	font-family: 'Normal', Calibri, Arial, sans-serif;
	color:#111111;
	font-size:15px;
	line-height:19px;
}

h5, .h5{
	font-family: 'Normal', Calibri, Arial, sans-serif;
	margin: 0 auto;
	margin-top:5px;
	margin-bottom:20px;
	width:100%;
	color:#555555;
	font-size:12px;
	line-height:15px;
}

h6, .h6 {
	font-family: 'Normal', Calibri, Arial, sans-serif;
	margin: 0 auto;
	margin-bottom:20px;
	color:#000000;
	font-size:11px;
	line-height:14px;
	padding:0;
}

p {
	color:#333333;
	font-size:14px;
	line-height:17px;
}

.sectionTitle {
	font-family: 'Bold', Calibri, Arial, sans-serif;
	font-size:32px;
	line-height:36px;
}
.sectionTitle.sTb {color: #333333}
.sectionTitle.sTw {color: #ffffff}

.bgColor1 {
	background: rgb(108,177,221);
	background: -moz-linear-gradient(45deg, rgba(108,177,221,1) 0%, rgba(91,195,168,1) 100%);
	background: -webkit-linear-gradient(45deg, rgba(108,177,221,1) 0%, rgba(91,195,168,1) 100%);
	background: linear-gradient(45deg, rgba(108,177,221,1) 0%, rgba(91,195,168,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#6cb1dd",endColorstr="#5bc3a8",GradientType=1);
}
.bgColor2 {background-color: rgba(256, 256, 256, 0.7);}

.bgColor3 {
	background-image: url(../img/dividerTop_04.svg);
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	background-color: transparent;
	margin-top: -70px;
	margin-bottom: 70px;
	padding-top: 100px;
	padding-bottom: 150px
}

@media only screen and (max-width: 992px) {	
	.bgColor3 {
		margin-bottom: 40px;
		padding-bottom: 100px
	}
}

.bgColor3Top {
	background-image: url(../img/dividerTop_04.svg);
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	background-color: transparent;
	margin-top: -70px;
	margin-bottom: 70px;
	padding-top: 100px;
	padding-bottom: 150px
}
.bgColor3Bot {
	background-image: url(../img/dividerTop_04Bot.svg);
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	background-color: transparent;
	margin-top: 0px;
	margin-bottom: 70px;
	padding-top:120px;
	padding-bottom: 150px
}


.curves_body {
	background-image: url(../img/dividerTop_CurvesBody.svg);
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	background-color: transparent;
	margin-top: 0px;
	margin-bottom:0px;
	padding-top: 100px;
	padding-bottom: 100px
}


.curves_top {
	background-image: url(../img/dividerTop_CurvesTop.svg);
	background-position: center top;
	background-size:cover;
	background-repeat: no-repeat;
	background-color: transparent;
	margin-top: 100px;
	padding-top: 100px;
	padding-bottom:0px;
}
.curves_body.pageTitle {
	margin-top: 0px;
	padding-top: 100px;
	padding-bottom:0px;
}
.curves_bot {
	background-image: url(../img/dividerTop_CurvesBot.svg);
	background-position: center bottom;
	background-size:cover;
	background-repeat: no-repeat;
	background-color: transparent;
	margin-bottom: 100px;
	padding-bottom: 100px;
}

.curves_body_nobg {
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	background-color: transparent;
	margin-top: 0px;
	margin-bottom:0px;
	padding-top: 100px;
	padding-bottom: 100px
}
.curves_top_nobg {
	background-position: center top;
	background-size:cover;
	background-repeat: no-repeat;
	background-color: transparent;
	margin-top: 100px;
	padding-top: 100px;
	padding-bottom:0px;
}
.curves_bot_nobg {
	background-position: center bottom;
	background-size:cover;
	background-repeat: no-repeat;
	background-color: transparent;
	margin-bottom: 100px;
	padding-bottom: 100px;
}



@media only screen and (max-width: 992px) {	

	.curves_body {
		margin-top: 0px;
		margin-bottom:0px;
		padding-top: 80px;
		padding-bottom: 50px
	}
	.curves_top {
		margin-top: 50px;
		padding-top: 50px;
		padding-bottom:0px;
	}
	.curves_bot {
		margin-bottom: 50px;
		padding-bottom: 50px;
	}
	
	.curves_body_nobg {
		margin-top: 0px;
		margin-bottom:0px;
		padding-top: 50px;
		padding-bottom: 50px
	}
	.curves_top_nobg {
		margin-top: 0px;
		padding-top: 80px;
		padding-bottom:0px;
	}
	.curves_bot_nobg {
		margin-bottom: 0px;
		padding-bottom: 0px;
	}
	
	.cd-section {
		margin: 0 auto;
		padding: 0 0 !important;
		}
	
}

@media only screen and (max-width: 576px) {	

	.curves_body {
		margin-top: 0px;
		margin-bottom:0px;
		padding-top: 10px;
		padding-bottom: 10px
	}
	.curves_body.pageTitle {
		padding-top: 100px;
		padding-bottom:0px;
	}
	
	.curves_bot {
		margin-bottom: 50px;
		padding-bottom: 65px;
	}
	
	.curves_body_nobg {
		margin-top: 0px;
		margin-bottom:0px;
		padding-top: 50px;
		padding-bottom: 50px
	}
	.curves_top_nobg {
		margin-top: 0px;
		padding-top: 0px;
		padding-bottom:0px;
	}
	.curves_bot_nobg {
		margin-bottom: 0px;
		padding-bottom: 0px;
	}
	
	.cd-section {
		margin: 0 auto;
		padding: 0 0 !important;
		}
	
}



.headbtn {
	/*text-transform: uppercase;*/
	font-family: 'Bold', Calibri, Arial, sans-serif;
	font-size:16px;
	line-height:18px;	
	border: 0px solid #333;
	border-radius: 20px;
	padding: 20px 30px;
	color: #fff;
	transition: .25s ease-in-out;
	display:inline-block
}

.headbtn:HOVER {color: #333; background-color: rgba(256, 256, 256, 0.3);}


.ptAnchor {padding-top: 120px}



@media only screen and (max-width: 992px) {
	h1, .h1{
		margin-top:10px;
		margin-bottom:10px;
		font-size:25px !important;
		line-height:28px !important;
	}
	
	h2, .h2 {
		font-size:22px;
		line-height:26px !important;
	}
	
	h3, .h3 {
		font-size:17px;
		line-height:22px;
	}
	h4, .h4 {
		font-size:14px;
		line-height:17px;
	}

	h5, .h5 {
		margin-top:5px;
		margin-bottom:10px;
		font-size:12px;
		line-height:15px;
	}

	h6, .h6 {
		margin-bottom:5px;
		font-size:10px;
		line-height:13px;
	}
		

	.headbtn {
		font-size:14px;
		line-height:18px;
	}
	
	
}


#showMe {
    opacity: 0;
    -moz-animation: cssAnimation 2s;
    /* Firefox */
    -webkit-animation: cssAnimation 2s;
    /* Safari and Chrome */
    -o-animation: cssAnimation 2s;
    /* Opera */
    animation: cssAnimation 2s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
}
@keyframes cssAnimation {
    0% { opacity: 0;}
    100% { opacity: 1;}
}
@-webkit-keyframes cssAnimation {
    0% { opacity: 0;}
    100% { opacity: 1;}
}



@media only screen and (max-width: 576px) {	
	.titleHover img { width: 80% }
	
	.headbtn {
		font-size:15px;
		line-height:18px;	
		padding: 15px 20px;
	}
	.ptAnchorDev {padding-top: 60px}
	.ptAnchorPerc {padding-top: 120px}
	.ptAnchorPercB {padding-top: 70px}
	
}




/** NEW NEW HEADER  **/
/* HEADER STYLE */
#topbar {border-bottom:0px solid #222222; }

.topnav {
	z-index: 6000 !important;
	display: none;
	margin-top: 130px;
	padding-bottom: 15px;
	position: fixed;
	transition: top .5s ease-in-out;
	background-color:#111111;
	opacity:.9;
}

#topbar .icon img {
	width: 50px;
	margin-top: 40px
}

.header {
	display: block;
	margin: 0 auto;
	width: 100%;
	max-width: 100%;
	box-shadow: none;
	position: fixed;
	top: 0;
	height: 100px !important;
	/*overflow: hidden;*/
	background-color: rgba(256,256,256,1);
	z-index: 9000;
	transition: all 0.2s ease-in-out;
}

ul.slogan li {font-size: 25px; line-height: 35px; font-family: 'Bold', Calibri, Arial, sans-serif; display: inline; margin-left: 20px;}

.headerContatti img {width: 20px; }
.headerContatti {	font-size: 13px; margin-bottom: 15px;}
.headerContatti a { color:#666666; text-decoration:none; margin-left: 20px !important;}
.headerContatti a:HOVER  { color:#333333; text-decoration:none}
.headerContatti .socialImg  { margin-left: 5px !important;}

@media only screen and (max-width: 576px) { 
	.header {
		background-position: 250px 0px;
	}
}

.activeWhite {
 	background-color: rgba(256,256,256,.9);
}
.logoMenu {height: 80px; margin-top: 10px;}
.logogha  {height: 17px; margin-top: 0px;}

.main {
	margin: 0 auto;
	display: block;
	height: 100%;
	margin-top: 60px;
}
.mainInner{
	display: table;
	height: 100%;
	width: 100%;
	text-align: center;
}
.mainInner div{
	display:table-cell;
	vertical-align: middle;
	font-size: 3em;
	font-weight: bold;
	letter-spacing: 1.25px;
}

#sidebarMenu {
	height: 100%;
	position: fixed;
	top: 0;
	z-index: 9000;
	right: 0;
	width: 400px;
	margin-top:0px;
	padding-top: 45px;
	border-left: 1px solid #eaeaea;
	transform: translateX(400px);
	transition: transform 250ms ease-in-out;
	background: linear-gradient(180deg, #fff 0%, #fff 100%);
	font-size: 14px!important;
	overflow-y: scroll;
	-webkit-box-shadow: -3px 0px 5px 0px rgba(0,0,0,0.1);
		 -moz-box-shadow: -3px 0px 5px 0px rgba(0,0,0,0.1);
					box-shadow: -3px 0px 5px 0px rgba(0,0,0,0.1);
}

.headerNav {
	text-align: right;
	font-size: 18px;
	line-height: 22px;
	margin-top: 10px;
}
.headerNav a { 
	margin-left: 18px;
	transition: .25s ease-in-out;}


@media only screen and (max-width: 1250px) { 
	.headerNav {font-size: 17px;}
	.headerNav a { margin-left: 15px;}
	.logogha  {height: 15px; margin-top: 0px;}
}
@media only screen and (max-width: 1100px) { 
	.headerNav {font-size: 15px;}
	.headerNav a { margin-left: 10px;}
	.logogha  {height: 12px; margin-top: 0px;}
	.headerContatti {	font-size: 11px; margin-bottom: 13px;}
}


@media only screen and (max-width: 570px) {
	#sidebarMenu {
		width: 95%;
		transform: translateX(100%);
	}
}

.btnLang button {
	background-color: transparent;
	border: 0;
	text-align: right;
	line-height: 16px;
	margin-top: 0px;
	font-size: 16px;
	color: #194157;
}

.btnLang .dropdown-menu {
	left: -30px  !important;
	min-width: 80px !important;
	padding: 0px !important;
	margin: 0;
	font-size: 16px;
	color: #194157;
	text-align: left;
	list-style: none;
	background-color: #fff;
	background-clip: padding-box;
	border: 1px solid rgba(0,0,0,.15);
	border-radius: .25rem;
}

.btnLang .dropdown-item {
	display: block;
	width: 100%;
	padding: 10px;
	clear: both;
	font-weight: 400;
	color: #194157;
	text-align: inherit;
	text-decoration: none;
	white-space: nowrap;
	background-color: transparent;
	border: 0;
}

#overlayMenu { 
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	display: none;
	opacity: 0;
	z-index: 8000;
	background-color: rgba(0,0,0,.5);
	transition: all 0.2s ease-in-out;}

.nav-link {
	display: block;
	padding: .2rem 1rem;
}


@media only screen and (min-width: 992px) { 
	.deviceV {display: none}
}
@media only screen and (max-width: 991px) { 
	.monitorV {display: none}
}

/**
.card {
	border:none !important;
}
.card-body {
	flex: 1 1 auto;
	padding: 0 0 0 20px;
}
*/

.sidebarMenuInner{
	margin:0;
	padding:0;
}
.sidebarMenuInner .logoHome{
	width: 30px;
	margin:0;
	padding:0;
}
.sidebarMenuInner li{
	text-transform: uppercase;
	padding: 0 10px 0 10px;
	font-family: 'Normal', Calibri, Arial, sans-serif;
}
.sidebarLink li a{ cursor: pointer; text-decoration: none;}
.sidebarLink li a { color: #666666}
.sidebarLink li a:HOVER { color: #22a0c8}
.sidebarLink li.active a {color: #22a0c8; font-family: 'Bold', Calibri, Arial, sans-serif;}


.sidebarMenuLang {
	margin:20px 20px 0 20px;
	padding:20px 10px 0px 10px;
	border-top: 1px solid #eaeaea;
}

.sidebarMenuSocial{
	margin:20px;
	padding:20px 10px 0px 10px;
	border-top: 1px solid #eaeaea;
}
.sidebarMenuSocial img {width: 30px}

.sidebarMenuVideo{
	margin:20px;
	padding:20px 10px 0px 10px;
	border-top: 1px solid #eaeaea;
	text-transform: uppercase;
}
.sidebarMenuVideo img {height: 50px; margin-right: 20px; margin-top: 0px}
.sidebarMenuVideo .btn {
	border: 1px solid #22a0c8;
	padding: 10px 20px;
	width: 100%;
	text-align: center;
	font-family: 'Bold', Calibri, Arial, sans-serif;
	font-size: 15px !important;
}

.sidebarMenuNewsl { 
	margin:0px 20px 20px 20px;
	padding:0px 10px 20px 10px;
}


input[type="checkbox"]:checked ~ #sidebarMenu {
	transform: translateX(0);
}

input[type="checkbox"]:checked ~ #overlayMenu {
	display: inline;
	opacity: 1;
}

input.openSidebarMenu {
	transition: all 0.3s;
	box-sizing: border-box;
	display: none;
}
.sidebarIconToggle {
	transition: all 0.3s;
	box-sizing: border-box;
	cursor: pointer;
	position: absolute;
	z-index: 9200;
	height: 100%;
	width: 100%;
	top: 42px;
	right: 42px;
	height: 22px;
	width: 22px;
	position: fixed;
	display: none
}

@media only screen and (max-width: 991px) { 
	.sidebarIconToggle {display:inherit}
}

.spinner {
	transition: all 0.3s;
	box-sizing: border-box;
	position: absolute;
	height: 3px;
	width: 100%;
	background-color: #9ec6d2;
}
.horizontal {
	transition: all 0.3s;
	box-sizing: border-box;
	position: relative;
	float: left;
	margin-top: 3px;
}
.diagonal.part-1 {
	position: relative;
	transition: all 0.3s;
	box-sizing: border-box;
	float: left;
}
.diagonal.part-2 {
	transition: all 0.3s;
	box-sizing: border-box;
	position: relative;
	float: left;
	margin-top: 3px;
}
input[type=checkbox]:checked ~ .sidebarIconToggle > .horizontal {
	transition: all 0.3s;
	box-sizing: border-box;
	opacity: 0;
	background-color: #000;
}
input[type=checkbox]:checked ~ .sidebarIconToggle > .diagonal.part-1 {
	transition: all 0.3s;
	box-sizing: border-box;
	transform: rotate(135deg);
	margin-top: 8px;
	background-color: #000;
}
input[type=checkbox]:checked ~ .sidebarIconToggle > .diagonal.part-2 {
	transition: all 0.3s;
	box-sizing: border-box;
	transform: rotate(-135deg);
	margin-top: -9px;
	background-color: #000;
}
/* END NEW HEADER STYLE */





/* FOOTER Styles */
#footer {
	text-align:center;
	background-color:#f4f4f4;
	padding-top:0px;
	padding-bottom:20px;
	margin-top:0px
}

#footer a 			{ color: #333333; text-decoration: none;}
#footer a:HOVER {color: #000000; text-decoration: none;}
	
	#footer img { width:30px;}
	#footer span { 
		position: relative;
		display: block;
		width: 80px;
		height: 80px;
		border-radius: 40px;
		/*border: 3px solid #7bb0d9;*/
		background-color: #fff;
		background-position: center center;
		background-size: 40%;
		background-repeat: no-repeat;
		transition: .25s ease-in-out;
		opacity: 1;
		margin: 0 auto;
	}
	#footer .sectionCont:HOVER span {
		background-size: 50%;
	}
	#footer span.f1 {	background-image: url(../img/icons/contact_cal_b.svg);}
	#footer span.f2 {	background-image: url(../img/icons/contact_mail_b.svg);}
	#footer span.f3 {	background-image: url(../img/icons/contact_tel_b.svg);}
	
	#footer .caption {
		font-family: 'Bold', Calibri, Arial, sans-serif;
		font-size:16px;
		line-height:19px;
		width:100%;
		margin-bottom:10px;
	}
	
	#footer h4 {
		font-family: 'Normal', Calibri, Arial, sans-serif;
		color:#333333;
		font-size:12px;
		line-height:16px;
		width:100%;
	}

.fooBottom {
	border-top: .5px solid #666;
	padding-top: 10px;
	color:#666;
	font-size:12px;
	line-height:16px;
}
.fooBottom a {color:#666 !important;}
.fooBottom a:HOVER {color:#333 !important;}

@media only screen and (max-width: 576px) { #footer p.footerCopy.right { text-align: center !important; } }
	
	
	#footer .button {color:#999999 !important}
	#footer .button:HOVER {color:#ffffff !important}
	#footer .socialFooter li {margin:10px 0 10px 0 !important}
		#footer .socialFooter li img { width:30px; opacity:.5; transition: opacity 0.28s ease-in-out, transform 0.28s ease-in-out;}
		#footer .socialFooter li img:HOVER { opacity:1}
		
	
	@media only screen and (max-width: 1200px) {
		#footer > div > div > div > div  {margin-bottom:50px}
	}
	
	@media only screen and (max-width: 767px) {
	}
	
	@media only screen and (max-width: 567px) {
		#footer p.footerCaption {text-align:center !important}	
		#footer p.footerText {text-align:center !important}
		#footer p.footerCopy {text-align:center !important}
		#footer > div > div > div > div  { text-align:center !important}
		
		#footer .float-right { float:none !important}
	}
	

/* ELEMENTS */
.bgeae {	background-color: #eaeaea}
.bg22a {	background-color: #22a0c8}


.boxBorderTB{
	border-top: 1px solid #eaeaea;
	border-bottom: 1px solid #eaeaea;
	margin-top: 50px;
	margin-bottom: 50px;
}

.bgLine {
	width: 100%;
	height: 30px;
	margin-top: 0px;
	background-image: url(../img/capitolPoly.svg);
	background-position: top left;
	background-repeat: no-repeat;
	background-size:contain
}

.bgLineC {
	width: 100%;
	height: 30px;
	margin-bottom: 30px;
	background-image: url(../img/_bgLine.svg);
	background-position: bottom center;
	background-repeat: no-repeat;
	background-size: 300px
}

.btn {
	border: 0px solid #333;
	border-radius: 0px;
	padding: 15px 35px;
	margin-top: 10px
}
.btnBG {
	border: 0px solid #333;
	border-radius: 0px;
	padding: 10px 50px 10px 20px;
	color: #fff;
	transition: .25s ease-in-out;
}

.btnBG:HOVER {
	color: #fff;
}



.btnNO {
	border: 1px solid #333;
	border-radius: 0px;
	padding: 15px 35px;
	margin-top: 30px;	
}
.btnW {
	border: 1px solid #fff;
	border-radius: 0px;
	padding: 15px 35px;
	margin-top: 30px;	
}

.carousel-caption .btn {
	border: 1px solid #fff;
	border-radius: 0px;
	padding: 15px 35px;
	margin-top: 30px;	
	background-color: transparent;
	color: #fff	
}

.btn:HOVER {
	text-shadow: none !important;
}
.btnNOO:HOVER {
	background-color: #000;
	color: #fff;
	text-shadow: none !important;
}



.btnActionAlignDx {text-align: right}
.btnActionAlignSx {text-align: left}
.btnAction {text-transform: uppercase;}
.btnAction img {height: 45px; margin-right: 20px; margin-top: -5px}
.btnAction a {
	border: 1.5px solid #194157;
	padding: 25px 20px;
	width: 100%;
	text-align: center;
	font-family: 'Bold', Calibri, Arial, sans-serif;
	font-size: 15px !important;
	transition: .25s ease-in-out;
}
.btnAction:HOVER a {	background-color:#ffffff; border: 1.5px solid #22a0c8;}


@media only screen and (max-width: 768px) {	
	.btnActionAlignDx, .btnActionAlignSx {text-align: center}	
}
@media only screen and (max-width: 992px) {	
	.bgLine {
		margin-bottom: 30px;
		margin-top: 0px;
	}
	
}
/* SLIDER HOME */
.carousel-caption {
	position: absolute;
	right: 15%;
	bottom: 40%;
	left: 15%;
	padding-top: 1.25rem;
	padding-bottom: 1.25rem;
	color: #fff;
	text-align: center;
	text-shadow: 0px 0px 5px #000;
}

@media only screen and (max-width: 992px) {	
	/* SLIDER HOME */
	.carousel-caption {
		position: absolute;
		right: 5%;
		bottom: 25%;
		left: 5%;
	}
}

/* SWIPER */
.swiper {
	width: 100%;
}

.swiper-slide {
	text-align: center;
	font-size: 18px;
	background: #fff;

	/* Center slide text vertically */
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
}

.swiper-slide img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.swip-cont {
	position: absolute;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
	/*background-color:rgba(256,256,256,.5);*/
	background-color:rgba(25,65,87,.3);
	transition: all 0.2s ease-in-out;
	 background-blend-mode: screen;
}
.swip-cont:HOVER {
	background-color:rgba(25,65,87,.0);
}

.swip-cont h4 {
	position: absolute;
	bottom: 20px;
	left: 20px;
	color: #ffffff;
	font-size: 25px;
	text-shadow: 1px 1px 3px #000;
}

.prodotto .swip-cont h4 {
	font-size: 18px !important;
}


.swiper-pagination {
	position: relative !important;
	text-align: center;
	z-index: 10;
	margin-top: 50px;
}
.swiper-pagination-bullet-active {
	background-color:#00a1dc !important;
}

.swiper-button-next {
	right: calc(50% - 40px) !important;
	left: auto;
}
.swiper-button-prev {
	left: calc(50% - 40px) !important;
	right: auto;
}

.swiper-button-next, .swiper-button-prev {
	position: absolute;
	top: auto !important;
	bottom: 0 !important;
	color:#194157 !important;
}

.prodotto {
	padding-bottom: 80px !important
}



.vertBox img {	width: 100%;}
.iconBox img {	width: 50%;}

/* [1] The container */
.img-hover-zoom {
  height: auto; /* [1.1] Set it as per your need */
  overflow: hidden; /* [1.2] Hide the overflowing of child elements */
}
.img-hover-zoom img {transition: transform 4s ease;}
.img-hover-zoom:hover img {transform: scale(1.3);}



/* CAROUSEL SLIDER 90VH */
.carouselSlider .carousel-inner {
	width: 100%;
	/*height: 90vh;*/
	height: 100vh;	
}
.carouselSlider .polyText {
	width: 850px;
	height: 200px;
	background-image:url(../img/Poly_02.svg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: bottom right;
	position: absolute;
	bottom: 0;
	left:0;
	padding: 20px 10% 0px 9%;
	color: #fff;
}

.carouselProduct .carousel-inner {
	width: 100%;
	height: 40vh;
	margin-top: 100px;
}
.carouselProduct .polyText {
	width: 850px;
	height: 120px;
	background-image:url(../img/Poly_02.svg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: bottom right;
	position: absolute;
	bottom: 0;
	left:0;
	padding: 20px 10% 0px 9%;
	color: #fff;
}
.carouselProduct .pro {
	background-color:rgba(25,65,87,1);
	background-blend-mode: overlay;
	width: 100%;
	height: 100%;
}







.imageHeaderhalf .carouselSlider .carousel-inner {
	width: 100%;
	height: 60vh;
}

.carousel-item {
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center center;
}

@media only screen and (max-width: 991px) { 
	.carouselSlider .carousel-inner {
		width: 100%;
		height: 75vh;
	}
	
	.carouselSlider .polyText {
		width: 100%;
		height: 150px;
		background-image:url(../img/Poly_02.svg);
		background-repeat: no-repeat;
		background-size: cover;
		background-position: bottom right;
		position: absolute;
		bottom: 0;
		left:0;
		padding: 20px 160px 0px 20px;
		color: #fff;
	}
	
	.carouselSlider .polyText h4 {display: none}
}


/***********  FORM  ************/
button.active{background: #68b8c4;}
button:focus{outline: 0 none;}
button:first-of-type{margin-left: 0;}
button:last-of-type{margin-right: 0;}
button:focus{outline: 0 none;}
fieldset{
  display: inline-block;
  vertical-align: top;
  margin: 0 1em 0 0;
  background: #444;
  padding: .5em;
  border-radius: 3px;
}
.checkbox{
  display: block;
  position: relative;
  cursor: pointer;
  margin-bottom: 8px;
}
.checkbox input[type="checkbox"] {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  cursor: pointer;
  margin: 0;
  opacity: 0;
  z-index: 1;
}
.checkbox label{
  display: inline-block;
  vertical-align: top;
  text-align: left;
  padding-left: 1.5em;
}
.checkbox label:before,
.checkbox label:after{
  content: '';
  display: block;
  position: absolute;
}
.checkbox label:before{
  left: 0;
  top: 0;
  width: 18px;
  height: 18px;
  margin-right: 10px;
  background: #ddd;
  border-radius: 3px;
}
.checkbox label:after{
  content: '';
  position: absolute;
  top: 4px;
  left: 4px;
  width: 10px;
  height: 10px;
  border-radius: 2px;
  background: #68b8c4;
  opacity: 0;
  pointer-events: none;
}
.checkbox input:checked ~ label:after{opacity: 1;}
.checkbox input:focus ~ label:before{background: #eee;}

.form-check-label {margin-top: .3rem;}
.modal-header .close {margin:0 !important}


.fieldset .input-group-text {padding: .680rem .75rem;border-radius:0}
.fieldset .custom-select {border-radius:0; height:inherit}
.form-select:focus {
    outline: none !important;
		border-color: #cccccc;
		box-shadow: 0 0 0 0rem rgba(128,189,255,.5);
}



/* ToTop Plugin */
.cd-top {
  display: inline-block;
  height: 40px;
  width: 40px;
  position: fixed;
	border: 1px solid rgba(200, 200, 200, 0.6);
  bottom: 40px;
  right: 10px;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
  /* image replacement properties */
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  background: rgba(200, 200, 200, 0.6) url(../img/cd-top-arrow.svg) no-repeat center 50%;
	background-size:50% 50%;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity .3s 0s, visibility 0s .3s, background-color .3s 0s;
  transition: opacity .3s 0s, visibility 0s .3s, background-color .3s 0s;
}

.cd-top.cd-top--show,
.cd-top.cd-top--fade-out,
.cd-top:hover {
  -webkit-transition: opacity .3s 0s, visibility 0s 0s, background-color .3s 0s;
  transition: opacity .3s 0s, visibility 0s 0s, background-color .3s 0s;
}

.cd-top.cd-top--show {
  /* the button becomes visible */
  visibility: visible;
  opacity: 1;
}

.cd-top.cd-top--fade-out {
  /* if the user keeps scrolling down, the button is out of focus and becomes less visible */
  opacity: .5;
}

.cd-top:hover {
  background-color: #22a0c8;
	border: 1px solid #fff;
  opacity: 1;
}

@media only screen and (min-width: 768px) {
  .cd-top {
    right: 20px;
    bottom: 20px;
  }
}

@media only screen and (min-width: 1024px) {
  .cd-top {
    height: 40px;
    width: 40px;
    right: 30px;
    bottom: 30px;
  }
}
/* END ToTop Plugin */

/* Privacy EU popup */
/* Privacy EU popup */
/*!
 * Cookie Bar component (https://github.com/kovarp/jquery.cookieBar)
 * Version 1.2.6
 *
 * Copyright 2020 Pavel Kovář - Frontend developer [www.pavelkovar.cz]
 * Licensed under MIT (https://github.com/kovarp/jquery.cookieBar/blob/master/LICENSE)
 */
/* Settings */
/* Cookie Bar styles */
.cookie-bar__inner {
	background-color: rgba(25, 25, 25, 0.9);
	color: #fff;
	font-size: 12px;
	padding: .375rem .5rem;
	text-align: center;
}

@media (min-width: 62rem) {
	.cookie-bar__inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
				-ms-flex-pack: center;
						justify-content: center;
		-webkit-box-align: center;
				-ms-flex-align: center;
						align-items: center;
	}
}

.cookie-bar__buttons {
	display: block;
	margin-top: .375rem;
}

@media (min-width: 62rem) {
	.cookie-bar__buttons {
		display: inline;
		margin-top: 0;
	}
}

.cookie-bar__btn {
	background-color: #ffffff;
	color: #000;
	border: none;
	margin: 0 .875rem;
	padding: .125rem .875rem;
	-webkit-transition: background-color .3s;
	-o-transition: background-color .3s;
	transition: background-color .3s;
	cursor: pointer;
}

.cookie-bar__btn:hover {
	background-color: #ffffff;
}

.cookie-bar__btn:active {
	background-color: #ffffff;
}

.cookie-bar__link {
	margin: 0 .5rem;
}

.cookie-bar a {
	color: #fff;
	text-decoration: underline;
}

.cookie-bar a:hover {
	text-decoration: none;
}

/* Privacy popup */
.cookie-bar-privacy-popup {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.5);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
}

.cookie-bar-privacy-popup.cookie-bar-privacy-popup--hidden {
	display: none;
}

.cookie-bar-privacy-popup__dialog {
	background-color: white;
	width: 100%;
	max-width: 50rem;
	max-height: 90vh;
	overflow: auto;
	padding: 2rem 1.5rem 1.5rem;
	position: relative;
}

.cookie-bar-privacy-popup__dialog__close {
	position: absolute;
	top: 0;
	right: 0;
	background-color: black;
	color: white;
	display: block;
	width: 2rem;
	height: 2rem;
	border: none;
	cursor: pointer;
}

.cookie-bar-privacy-popup__dialog__close:before, .cookie-bar-privacy-popup__dialog__close:after {
	content: '';
	display: block;
	width: 1rem;
	height: .25rem;
	background-color: white;
	position: absolute;
	top: 50%;
	left: 25%;
	-webkit-transform-origin: center center;
			-ms-transform-origin: center center;
					transform-origin: center center;
	margin-top: -.125rem;
}

.cookie-bar-privacy-popup__dialog__close:before {
	-webkit-transform: rotate(45deg);
			-ms-transform: rotate(45deg);
					transform: rotate(45deg);
}

.cookie-bar-privacy-popup__dialog__close:after {
	-webkit-transform: rotate(-45deg);
			-ms-transform: rotate(-45deg);
					transform: rotate(-45deg);
}

.cookie-bar-privacy-popup__dialog p:last-child {
	margin-bottom: 0;
}

/* Cookie Bar layouts */
.cookie-bar--bottom-left,
.cookie-bar--bottom-right,
.cookie-bar--bottom {
	z-index: 9999;
	position: fixed;
}

.cookie-bar--bottom {
	right: 0;
	bottom: 0;
	left: 0;
}

.cookie-bar--bottom-left {
	left: 0.9375rem;
}

.cookie-bar--bottom-right {
	right: 0.9375rem;
}

.cookie-bar--bottom-right,
.cookie-bar--bottom-left {
	bottom: 0.9375rem;
}

@media (min-width: 48rem) {
	.cookie-bar--bottom-right,
	.cookie-bar--bottom-left {
		width: 22.5rem;
	}
}

@media (min-width: 48rem) {
	.cookie-bar--bottom-right .cookie-bar__inner,
	.cookie-bar--bottom-left .cookie-bar__inner,
	.cookie-bar--bottom-right .cookie-bar__buttons,
	.cookie-bar--bottom-left .cookie-bar__buttons {
		display: block;
	}
}

@media (min-width: 48rem) {
	.cookie-bar--bottom-right .cookie-bar__buttons,
	.cookie-bar--bottom-left .cookie-bar__buttons {
		margin-top: .375rem;
	}
}

.cookie-bar--bottom-right .cookie-bar__inner,
.cookie-bar--bottom-left .cookie-bar__inner {
	line-height: 1.3;
}