/* GENERALE */

@keyframes border-pulse{
	0%   {width: 100%; height: 100%; opacity: 1;}
	100% {width: 135%; height: 135%; opacity: 0;}
}

@keyframes scroller{
	0% {top: 10px; opacity: 0.1;}
	5% {opacity: 0.1;}
	15% {opacity: 1;}
	85% {opacity: 1;}
	95% {opacity: 0.1;}
	100% {top: 50px; opacity: 0.1;}
}
.grecaptcha-badge { 
    visibility: hidden;
}

.scroller-container{
	position: absolute;
	width: 100%;
	bottom: 50px;
	text-align: center;
	z-index: 998;
	height: unset !important;
}

.scroller{
	width: 30px;
	height: 70px !important;
	border: 3px solid #fff;
	border-radius: 20px;
	margin: auto;
	cursor: pointer;
}

.scroller:before{
	content: '';
	width: 10px;
	height: 10px;
	background: #fff;
	position: absolute;
	border-radius: 100px;
	top: 10px;
	margin-left: -5px;
	opacity: 0.1;
	animation-name: scroller;
	animation-duration: 1.2s;
	animation-iteration-count: infinite;
}

.show-mobile{
	display: none !important;
}

.btn{
	background: #0D3858 !important;
	color: #fff !important;
	border: 2px solid #0D3858 !important;
}

.btn:hover{
	background: #5B605C !important;
	border: 2px solid #5B605C !important;
}

.btn.btn-light:hover{
	color: #fff !important;
}

.site-heading h2 span{
	color: #a0a0a0;
}

.site-heading h4{
	text-transform: none;
}

.site-heading h4:before{
	background: #0D3858;
}

.scrolltotop{
	position: fixed;
	bottom: 30px;
	right: 30px;
	z-index: 9999;
	display: none;
}

.scrolltotop a{
	font-size: 20px;
}

.mfp-close-btn-in .mfp-close{
	color: #fff;
    font-size: 45px;
	top: calc(100vh - 148vh);
}

.video-popup{
	position: relative;
}

.video-popup iframe{
	position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
}

/*HEADER*/

header .top-bar{
	background: #0D3858;
	padding: 3px 0;
}

header .top-bar .row > div{
	display: flex;
	align-items: center;
}

header .top-bar .row > div:last-child{
	justify-content: flex-end;
}

header .top-bar .row > div > div:not(:last-child){
	display: flex;
	align-items: center;
	margin-right: 30px;
}

header .top-bar .row > div > div i{
	font-size: 18px;
	margin-right: 10px;
}

header .top-bar .row > div > div i,
header .top-bar .row > div > div a,
header .top-bar .row > div > div span{
	color: #fff;
}

header .top-bar .row > div > div a:hover{
	color: #5B605C;
}

header nav > .container > .row > div{
	display: flex;
    align-items: center;
    justify-content: space-between;
}

header nav .navbar-header{
	float: none;
}

header nav .navbar-header a{
	padding: 0 !important;
	margin: 0 !important;
}

header nav.sticked .navbar-header a{
	margin: 5px 0 !important;
}

header nav .navbar-header a img{
	max-width: 220px;
	width: 220px;
	height: auto !important;
}

header nav.sticked .navbar-header a img{
	max-width: 215px;
}

header nav .flexer{
	display: flex;
}

header nav .flexer ul.nav > li.active > a,
header nav .flexer ul.nav > li > a:hover{
	color: #0D3858 !important;
}

header nav .flexer .attr-nav{
	float: none;
}

/* HOME */

div.banner-area{
	height: 88%;
}

div.banner-area .info h1{
	text-transform: none !important;
	font-size: 30px;
}

div.banner-area .info h1,
div.banner-area .info p{
	text-shadow: -2px 2px 2px #000;
}

div.banner-area .info a.video-btn{
	position: relative;
	background: #0D3858;
    padding: 17.5px 20.25px;
    border-radius: 50%;
    margin: 0 0;
    font-size: 20px;
}

div.banner-area .info a.video-btn:hover{
	background: #5B605C;
}

div.banner-area .info a.video-btn i{
	padding-left: 5px;
}

div.banner-area .info a.video-btn:before{
	content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    border-radius: 50%;
    background: #0D3858;
    z-index: 1;
    width: 100%;
    height: 100%;
	animation-name: border-pulse;
	animation-duration: 1.5s;
	animation-timing-function: ease-out;
	animation-iteration-count: infinite;
	z-index: -1;
}

div.banner-area .info a.video-btn:hover:before{
    background: #5B605C;
}

div.banner-area .form-info:after{
	opacity: .75;
}

div.banner-area .form-info h2 span{
	color: #0D3858;
}

div.banner-area .form-info h4{
	color: #323a45;
}

div.banner-area .form-info input[type="text"]{
	color: #000;
	padding: 0 5px;
	transition: background .3s;
}

div.banner-area .form-info input.error{
	background: rgba(255,0,0,.35);
}

div.banner-area .form-info .submit-section{
	display: flex;
	align-items: center;
}

div.banner-area .form-info .submit-section button{
	margin-right: 10px;
}

div.banner-area .form-info .submit-section p{
	margin: 0;
    font-size: 16px;
    color: #000;
	font-weight: 600;
	visibility: hidden;
	opacity: 0;
	transition: visibility .3s, opacity.3s;
}

div.banner-area .form-info .submit-section p.error{
	color: #ff0000;
}

div.banner-area .form-info .submit-section p.success{
	color: #0D3858;
}

div.banner-area .form-info .submit-section p.show{
	visibility: visible;
	opacity: 1;
}

div.banner-area .form-info .form-privacy{
	display: flex;
	align-items: center;
}

div.banner-area .form-info .form-privacy input{
	width: 25px;
    height: 25px;
    margin: 0 15px 0 0;
	cursor: pointer;
}

div.banner-area .form-info .form-privacy p{
	color: #333;
    margin: 0;
    font-size: 15px;
}

div.banner-area .form-info .form-privacy p a{
	margin: 0;
    color: #0D3858;
    font-weight: 600;
}

div.banner-area .form-info .form-privacy p a:hover{
    color: #5B605C;
}

.banner-area .form-info{
	z-index: 999;
}

/* CHI SIAMO */

div.about-area .container .row{
	display: flex;
	align-items: center;
}

div.about-area .container .row video{
	max-width: 100%;
	height: auto;
}

div.about-area .default.info h4{
	color: #0D3858;
}

div.about-area .default.info h2{
	font-size: 25px;
}

div.about-area .default.info p span{
	font-style: italic;
}

.about-area p{
	font-size: 15px;
}

.about-area ul{
	margin: 25px 0;
    text-align: left;
    padding: 0 115px;
}

.about-area ul > li{
	font-size: 15px;
}

.about-area ul > li:not(:last-child){
	margin-bottom: 10px;
}

.about-area ul li:before{
	color: #0D3858;
    content: "\f111";
	top: 0;
}

/* PRODOTTI */

div.we-offer-area .item{
	padding: 0 !important;
}

div.we-offer-area .item:after{
	background: #0D3858;
}

div.we-offer-area .item img{
	padding: 5px;
}

div.we-offer-area .item > div{
	padding: 5px 5px 15px 5px;
}

div.we-offer-area .item > div > h4{
	margin: 0;
}

div.we-offer-area .item > div p{
	margin: 0 0 10px 0;
}

div.we-offer-area .item > div h5{
	color: #0D3858;
    font-weight: 700;
    font-size: 14px;
    margin: 20px 0 25px 0;
    text-transform: uppercase;
}

div.we-offer-area .item:hover > div h5{
	color: #fff;
}
div.we-offer-area .item > div h4 span{
font-size:16px;
font-weight: 300;	
}

div.we-offer-area .item > div h5 span{
	font-size: 32px;
color: #a0a0a0;
font-weight: 600;
}

.btn.red {
    background: #a0a0a0 !important;
    color: #fff !important;
    border: 2px solid #a0a0a0 !important;
}

div.we-offer-area .item:hover > div .btn{
	color: #333333 !important;
	background: #fff !important;
}

/* DETTAGLIO PRODOTTI */

div.work-list-area .single-item .info .site-heading{
	margin-bottom: 0;
}

div.work-list-area .single-item .info .site-heading h2{
	font-size: 24px;
}

div.work-list-area .single-item .info .site-heading h4:before{
	left: 0;
	width: 100px;
}

div.work-list-area .single-item .info p{
	font-size: 16px;
    margin-bottom: 15px;
}

div.work-list-area .single-item .info ul li:before{
	color: #0D3858;
}

.work-list-area .site-heading h4{
	padding-bottom: 10px;
    margin-bottom: 10px;
}

.work-list-area .info a{
    margin-top: 0;
}

.overview-items.solid-items .single-item{
	margin-bottom: 40px;
}

/* DICONO DI NOI */

div.testimonials-area .testimonial-item .info h4{
	color: #0D3858;
}

div.testimonials-area .testimonial-items .owl-dots .owl-dot.active span{
	background: #0D3858;
	border-color: #0D3858;
}

/* CTA */

div.signup-area h3{
	font-size: 26px;
}

div.signup-area p{
	font-size: 16px;
}

/* FOOTER */

footer .f-item.link li a:hover{
	color: #0D3858;
}

footer .f-item .address .info span a{
	color: #999999;
}

footer .footer-bottom p a{
	color: #000;
}

footer .f-item .address li i{
	color: #0D3858;
}

footer .f-item .address .info span a:hover,
.footer-bottom .link li a:hover,
footer .footer-bottom p a:hover{
	color: #0D3858;
}

/* PUNTI DI FORZA */

.features-area .features-items .item{
	padding: 10px;
    text-align: center;
}

.features-area .item .icon{
	margin-bottom: 15px;
}

.features-area .item .info h4{
	font-size: 16px;
	min-height: 76px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.features-area .features-items.icon-solid i{
	color: #0D3858;
	font-size: 40px;
}

/* PAGINA 404 */

div.error-body{
	padding-top: 120px;
}

/* PAGINA THANKYOU */

body.ty div.signup-area{
	padding: 200px 0;
}

/* MEDIA QUERY */

@media screen and (max-width: 1199px){
	.features-area .item .info h4{
		min-height: 57px;
	}
}

@media screen and (max-width: 1023px){
	.show-mobile{
		display: block !important;
	}
	
	header nav > .container > .row > div{
		display: block;
	}
	
	header nav.navbar.bootsnav .navbar-toggle{
		top: 0px;
	}
	
	header nav.navbar.navbar-sticky a.navbar-brand{
		margin: 5px 0 !important;
	}
	
	header nav .flexer .attr-nav{
		display: none !important;
	}
	
	header nav .flexer .navbar-collapse{
		width: 100%;
		margin: 15px 0 !important;
		max-height: 220px !important;
		height: 220px !important;
	}
}

@media screen and (max-width: 991px){
	.mfp-close-btn-in .mfp-close{
		top: calc(100vh - 138vh);
	}
	
	header .top-bar{
		display: none;
	}
	
	header .top-bar .row > div > div:not(:last-child){
		margin-right: 15px;
	}
	
	header .top-bar .row > div > div i{
		margin-right: 5px;
	}
	
	div.about-area .container .row{
		display: block;
	}
	
	footer .f-item > img{
		max-width: 350px;
	}
	
	.about-area ul{
		padding: 0 25px;
	}
	
	.overview-items.solid-items .single-item{
		text-align: center;
	}
	
	.features-area .item .info h4{
		min-height: unset;
		display: block;
	}
}

@media screen and (max-width: 767px){
	.scroller-container{
		display: none;
	}
	
	#wh-widget-send-button.wh-widget-left{
		left: 0px;
		bottom: 70px !important;
	}
	
	.about-area ul{
		padding: 0;
	}
}

@media screen and (max-width: 479px){
	.scrolltotop{
		bottom: 100px;
	}
}

@media screen and (max-width: 399px){
	footer .f-item > img{
		max-width: 250px;
	}
}

@media screen and (max-width: 349px){
	header nav .navbar-header a img {
		max-width: 200px;
		width: 200px;
	}
	
	div.banner-area .form-info .submit-section{
		display: block;
	}
}

@media screen and (min-width: 992px){
	div.work-list-area .single-item{
		display: flex;
		align-items: center;
	}
}

@media screen and (min-width: 768px) and (max-width: 991px){
	div.banner-area .form-info .submit-section{
		display: block;
	}
}