@charset "utf-8";
/* CSS Document */

/* --- General Styles --- */
.home #secondary-menu{
	display: none!important;
}

#user_gmap{
	margin-top: 0px!important;
}

:focus{
	outline: 0px solid transparent;
}

body{
	font-family: 'open_sansregular';
	font-size: 18px;
	line-height: 26px;
	color: #000000;
}

h2{
	font-family: 'open_sanssemibold';
	font-size: 22px;
	text-transform: uppercase;
}

.btn-contact{
	display: none;
	position: fixed;
	bottom: 100px;
	right: 5px;
	z-index: 100;
	width: 170px;
	height: 46px;
	font-family: 'open_sanssemibold';
	font-size: 14px;
	line-height: 46px;
	text-align: center;
	text-transform: uppercase;
	color: #ffffff;
	background-color: #e64c3b;
}

.btn-contact:hover{
	text-decoration: none;
	color: #ffffff;
	opacity: 0.9;
}
.navigation-desktop{
	height: 90px;
	background-color: rgba(255,255,255,0.80);
	position: fixed;
    width: 100%;
    top: 0;
    z-index: 100;
}

.logo{
	display: flex;
	justify-content: center;
	align-items: center;
    height: 90px;
}

.navigation-desktop a{
	font-size: 12px;
	text-transform: uppercase;
	color: #000000;
}

.navigation-desktop a:hover{
	text-decoration: none;
	font-family: 'open_sanssemibold';
}

.navigation-desktop a:focus{
	text-decoration: none;
	font-family: 'open_sanssemibold';
	outline: none;
}

.navigation-desktop a:active, .current-lang{
	font-family: 'open_sanssemibold';
}

.navigation-desktop a.active{
	font-family: 'open_sanssemibold';
}

.left-nav{
	display: flex;
    height: 90px;
    align-items: center;
	justify-content: flex-start;
}

.left-nav a{
	margin-right: 15px;
}

.right-nav{
	display: flex;
    height: 90px;
    align-items: center;
	justify-content: flex-end;
}

.right-nav a{
	margin-left: 15px;
}

.languages{
	font-size: 12px;
}

.languages ul{
	list-style-type: none;
    display: flex;
    margin-bottom: 0;
    padding: 0;
}

.languages li:first-child{
	border-right: 1px solid #000000;
	padding-right: 5px;
}

.languages li:nth-child(2){
	padding-left: 2px;
	margin-left: 0px;
}

.languages li:nth-child(2) a{
	margin-left: 2px;
}

/*-- Mobile Menu --*/
.navigation-mobile{
	height: 70px;
	background-color: rgba(255,255,255,0.80);
	position: fixed;
    width: 100%;
    top: 0;
    z-index: 100;
	padding: 15px;
}

.mobile-logo img{
	max-height: 40px;
}

.menu-line{
	width: 35px;
    height: 3px;
    background-color: black;
    margin: 8px 0;
}

.btn-menu{
	background-color: transparent;
	border: none;
}

#overlay {
    position: fixed;
    display: none;
    width: 100%;
    height: 100%;
    top: 0; 
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(255,255,255,0.95);
    z-index: 150;
}

.rt45{
	-moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
}

.rt-45{
	-moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(-45deg);
    position: absolute;
}

.btn-close-menu{
	border: none;
    background-color: transparent;
    color: #000000;
    font-size: 30px;
    float: right;
    display: block;
    margin: 27px 50px;
}

.mobile-nav{
	display: flex;
    margin-top: 80px;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}

.mobile-nav a{
	font-size: 20px;
    margin: 0 0 25px;
    color: #000000;
	font-family: 'open_sanslight';
}

.mobile-nav a:active, .current-lang{
	font-family: 'open_sanssemibold';
}

.mobile-languages ul{
	display: flex;
    padding-left: 0;
    margin-top: 50px;
	list-style-type: none;
}

.mobile-languages ul li:first-child{
	border-right: 1px solid #000000;
	padding-right: 20px;
}

.mobile-languages ul li:nth-child(2){
	padding-left: 20px;
	margin-left: 0px;
}

.footer{
	background-color: #000000;
	height: 120px;
	width: 100%;
	display: flex;
    justify-content: center;
    align-items: center;
	color: #ffffff;
    font-size: 12px;
}

.footer img{
	width: 100%;
	height: auto;
}

/*-- Home - Hero --*/
.hero{
	color: #ffffff;
	margin-top: 70px;
}

.hero h2{
	font-size: 25px;
    line-height: 30px;
    margin-bottom: 20px;
	text-transform: none;
	margin-top: 0;
}

.hero p{
	font-size: 16px;
	line-height: 23px;
}

.hero-info{
	position: absolute;
	top: 90px;
	z-index: 1;
	width: 100%;
}

.hero-blue{
	background-color: #3b97d2;
	padding-top: 45px;
	padding-bottom: 45px;
	margin-bottom: 14px;
	margin-top: 45px;
}

.hero-purple{
	background-color: #945ba4;
	padding-top: 45px;
	padding-bottom: 45px;
	margin-bottom: 45px;
}

.hero-slider{
	height: 990px;
}

#hero-slider{
	transition: 500ms ease-in-out;
}

#hero-slider-container.animate{
	-webkit-transform: translate(0,-100px);
	transform: translate(0,-100px);
}

.hero-slider .item{
	height: 100%;
}


.item-content{
	height: 100%;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

/*-- Home - Solutions --*/
.banner-solutions{
	margin-top: -89px;
	padding-top: 120px;
	padding-bottom: 90px;
}

.banner-solutions h2{
	margin-bottom: 50px;
}

.banner-solutions .text{
	margin-top: 50px;
}

/*-- Home - Banner Orange --*/
.banner-orange{
	padding-top: 90px;
	padding-bottom: 90px;
	background-color: #f19b1f;
}

.banner-orange h1{
	font-family: 'open_sanssemibold';
	font-size: 30px;
	line-height: 36px;
	color: #ffffff;
	margin-bottom: 20px;
}

.banner-orange p{
	color: #ffffff;
	margin-bottom: 20px;
}

/*-- Home - Banner Products --*/
.banner-products{
	padding-top: 90px;
	padding-bottom: 90px;
}

.banner-products h2{
	margin-bottom: 50px;
}

.product-card{
	margin-bottom: 20px;
	min-height: 300px;
}

.prod-item{
	padding: 0 25px;
}

.product-card img{
	width: 100%;
	height: auto;
}

.product-card p{
	font-family: 'open_sansregular';
	font-size: 16px;
	line-height: 24px;
}

.product-card a{
	font-family: 'open_sansregular';
	font-size: 12px;
	color: #000000;
}

/*-- Home - Banner Mobility --*/

.banner-mobility h2{
    margin-bottom: 40px;
    font-size: 30px;
    text-transform: none;

}

.mobility-slider{
	height: 700px;
}

.mobility-slider .item{
	height: 700px;
	padding-top: 50px;
	padding-bottom: 50px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}


/*-- Home -Banner References --*/
.banner-references{
	margin-top: -89px;
	padding-bottom: 120px;
	padding-top: 120px;
}

.banner-references h2{
	margin-bottom: 40px;
}

.banner-references a{
	font-family: 'open_sansregular';
	font-size: 12px;
	color: #000000;
}

.references-intro{
	margin-bottom: 90px;
}

.references-slider{
	height: 240px;
	border: 1px solid #000000;
	font-family: 'open_sanslight';
}

.references-slider .item{
	width: 100%;
	height: 240px;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

.references-slider .owl-dots{
	position: relative;
	margin-top: -40px!important;
}

.references-slider .owl-dots .owl-dot span{
	background-color: transparent!important;
	border: 1px solid #000000;
	width: 12px!important;
	height: 12px!important;
}

.references-slider .owl-dots .owl-dot.active span{
	background-color: #000000!important;
}

.references-list ul{
	padding-left: 0;
	line-height: 28px;
	margin-top: 20px;
}

.references-list ul li{
	list-style-type: none;
}

/*-- Banner News --*/
.banner-news{
	background-color: #efc319;
	padding-bottom: 60px;
	margin-top: -89px;
}

.news-h-90{
	height: 90px;
	background-color: #ffffff;
	margin-bottom: 30px;
}

.banner-news h2{
	margin-bottom: 60px;
}

.news-card{
	padding: 28px 23px;
	background-color: #ffffff;
	height: 405px;
    overflow: hidden;
}

.news-card .news-thumbnail{
	width: 100%;
	max-height: 300px;
}

.news-card .text{
	margin-bottom: 25px;
}

.news-card .text a{
	color: #000000;
}

.news-card .text h1{
	font-size: 20px;
	line-height: 26px;
	margin-top: 10px;
	margin-bottom: 10px;
}

.news-card .text h3{
	font-size: 13px;
    line-height: 17px;
    margin-bottom: 30px;
    margin-top: 0;
}

.news-card .text p{
	font-size: 16px;
	line-height: 20px;
}

.btn-news{
	font-family: 'open_sansregular';
	font-size: 12px;
	color: #000000;
	background-color: #ffffff;
	padding: 15px 23px;	
	margin-bottom: 30px;
}

/*-- Banner Newsletter --*/
.banner-newsletter{
	background-color: #efc319;	
	padding-bottom: 70px;
}

.banner-newsletter h2{
	font-family: 'open_sanssemibold';
	font-size: 18px;
}

.banner-newsletter p{
	font-size: 14px;
	font-family: 'open_sanslight';
	margin-bottom: 40px;
}

.banner-newsletter .input-group{
	margin-bottom: 40px;
	width: 100%;
}

.banner-newsletter .input-group input{
	background-color: transparent;
    border-bottom: 1px solid #000000;
    border-left: none;
    border-top: none;
    border-right: none;
    color: #000000;
    box-shadow: none;
	padding-left: 0px;
}

.banner-newsletter .input-group input::placeholder{
	color: #000000;
}

.banner-newsletter a{
	text-decoration: none;
}

.btn-normal{
	width: 100%;
	height: 40px;
	border: 1px solid #000000;
	font-family: 'open_sanslight';
	font-size: 12px;
	line-height: 36px;
	text-align: center;
	text-transform: uppercase;
	color: #000000;
}

.btn-normal:hover{
	background-color: #000000;
	color: #ffffff;
}

.banner-newsletter.inside-news{
	background-color: transparent!important;
	margin-bottom: 90px;
}

#wpcf7-f173-o1 form, #wpcf7-f174-o1 form{
	display: flex;
	align-items: center;
    justify-content: center;
	flex-direction: column;
}

#wpcf7-f173-o1 .wpcf7-submit, #wpcf7-f174-o1 .wpcf7-submit{
	width: 160px;
    height: 40px;
    border: 1px solid #000000;
    font-family: 'open_sanslight';
    font-size: 12px;
    line-height: 36px;
    text-align: center;
    text-transform: uppercase;
    color: #000000;
}

#wpcf7-f173-o1 .wpcf7-submit:hover, #wpcf7-f174-o1 .wpcf7-submit:hover{
	background-color: #000000;
	color: #ffffff;
}

#wpcf7-f173-o1 form input:focus::placeholder, #wpcf7-f174-o1 form input:focus::placeholder {
	opacity: 0.3;
}

.screen-reader-response{
	display: none;
}

.wpcf7-mail-sent-ok{
	position: absolute;
	font-size: 10px;
}

/*-- Banner - Contacts --*/
.banner-contacts{
	padding-bottom: 90px;
    padding-top: 120px;
	margin-top: -89px;
}

.banner-contacts h2{
	margin-bottom: 90px;
}

.banner-contacts p{
	font-size: 16px;
}

.contact-form{
	padding: 35px 40px;
	background-color: #e64c3b;
	color: #ffffff;
}
.contact-form h2{
	font-family: 'open_sansregular';
	font-size: 14px;
	margin-bottom: 10px;
	margin-top: 0;
}

.contact-form p{
	font-family: 'open_sanslight';
	font-size: 14px;
	line-height: 18px;
	margin-bottom: 20px;
}

.contact-form .input-group{
	width: 100%;
}
.contact-form .input-group input{
	width: 100%;
	background-color: transparent;
    border-bottom: 1px solid #ffffff;
    border-left: none;
    border-top: none;
    border-right: none;
    color: #ffffff;
    box-shadow: none;
	padding-left: 0px;
	margin-bottom: 20px;
	border-radius: 0;
}

.contact-form .input-group textarea{
	width: 100%;
	height: 74px;
	padding: 6px 12px;
	background-color: transparent;
    border: 1px solid #ffffff;
    color: #ffffff;
    box-shadow: none;
	margin-bottom: 20px;
	resize: none;
	border-radius: 0;
}

.contact-form .input-group input::placeholder{
	color: #ffffff;
}

.contact-form .input-group textarea::placeholder{
	color: #ffffff;
}

.contact-form .input-group input:focus::placeholder{
	opacity: 0.3;
}

.contact-form .input-group textarea:focus::placeholder{
	opacity: 0.3;
}

.contact-form .btn-normal{
	border: 1px solid #ffffff;
	color: #ffffff;
}

.contact-form .btn-normal:hover{
	color: #000000;
	background-color: #ffffff;
}

.contact-form a{
	text-decoration: none;
}


.wpcf7-textarea::-webkit-scrollbar-track{
	-webkit-box-shadow: none;
	box-shadow: none;
	background-color: transparent;
}

.wpcf7-textarea::-webkit-scrollbar
{
	width: 3px;
	background-color: transparent;
}

.wpcf7-textarea::-webkit-scrollbar-thumb
{
	background-color: #ffffff;
}

#wpcf7-f175-o2 .wpcf7-submit, #wpcf7-f176-o2 .wpcf7-submit{
	width: 100%;
    height: 40px;
    border: 1px solid #ffffff;
    font-family: 'open_sanslight';
    font-size: 12px;
    line-height: 36px;
    text-align: center;
    text-transform: uppercase;
    color: #ffffff;
}

#wpcf7-f175-o2 .wpcf7-submit:hover, #wpcf7-f176-o2 .wpcf7-submit:hover{
	background-color: #ffffff;
	color: #000000;
}

/*-- Contact - Map --*/
#user_gmap{ 
	width:100%;
	height:290px; 
	margin:20px auto; 
}


/*--- Product Page ---*/
.product-color{
	height: 150px;
	margin-bottom: 90px;
}

.product-logo{
	width: 100%;
	height: auto;
	margin-bottom: 60px;
}

.intro{
	margin-bottom: 100px;
	line-height: 26px;
}

.product-info{
	margin-top: 40px;
}

.product-info p{
	font-size: 16px;
	line-height: 24px;
	margin-bottom: 25px;
}

.product-slider-parent{
	display: block;
	margin-bottom: 120px;
}

.product-slider, .owl-stage-outer, .owl-stage, .owl-item{
	height: 100%;
}

.product-slider .item{
	width: 100%;
	height: 100%;
	min-height: 345px;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

.product-slider .owl-dots{
	position: relative;
	margin-top: -40px!important;
}

.product-slider .owl-dots .owl-dot span{
	background-color: transparent!important;
	border: 1px solid #ffffff;
	width: 12px!important;
	height: 12px!important;
}

.product-slider .owl-dots .owl-dot.active span{
	background-color: #ffffff!important;
}

.prod-flex{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	border-top: 2px solid #000000;
	padding-top: 40px;
}

/*--- News Page ---*/
.news-color{
	height: 210px;
	margin-bottom: 90px;
	background-color: #ddb119;
}

.news-color h2{
	margin-top: 160px;
}

.news-content .img, .news-content .news-thumbnail{
	width: 100%;
	height: auto;
}

.news-content h1{
	font-family: 'open_sansregular';
	font-size: 30px;
	line-height: 36px;
	margin-bottom: 30px;
	margin-top: 60px;
}

.news-content p{
	margin-bottom: 30px;
}

.news-content{
	margin-bottom: 120px;
}

/*--- References Page ---*/
.references-color{
	min-height: 270px;
	margin-bottom: 90px;
	padding-bottom: 20px;
	background-color: #0d8648;
	color: #ffffff;
}

.references-color h2{
	margin-top: 160px;
	margin-bottom: 30px;
}

.reference-item{
	padding-top: 30px;
	padding-bottom: 60px;
	border-bottom: 1px solid #000000;
	margin-bottom: 30px;
}

.ref-logo img{
	width: 100%;
	height: auto;
	margin-bottom: 40px;
}

.client-opinion{
	margin-bottom: 50px;
}

.client-opinion h3{
	font-family: 'open_sansregular';
	font-size: 18px;
	line-height: 26px;
}

.client-opinion h4{
	font-family: 'open_sanslight';
	font-size: 12px;
}

.ref-img-video img{
	width: 100%;
	height: auto;
}

.ref-img-video video{
	width: 100%;
	height: auto;
}

.funcionalities{
	margin-top: 40px;
	font-family: 'open_sansregular';
	font-size: 16px;
	line-height: 24px;
}

.funcionalities ul{
	padding-left: 0;
	list-style-type: none;
}

.clients-logos{
	display: flex;
    align-items: center;
	flex-wrap: wrap;
}

.clients-logos img{
	max-width: 100%;
	margin-bottom: 40px;
}

/*--- Media Querie - Phone Only ---*/
@media (max-width: 768px){
	body, .client-opinion h3{
		font-size:16px;
		line-height: 22px;
	}
	.hero h2, .banner-orange h1, .banner-mobility h2, .news-content h1{
		font-size: 22px;
		line-height: 28px;
		margin-bottom: 15px;
	}
	.news-card .text h1 {
    	font-size: 18px;
    	line-height: 24px;
	}
	.news-card .text p {
   		font-size: 14px;
	}
	.banner-newsletter .input-group input {
    	width: 100%;
	}
	.intro{
		line-height: 22px;
	}
	.product-info p, .product-card.mobile p, .funcionalities{
		font-size: 14px;
		line-height: 20px;
	}
	.mobility-slider .item, .mobility-slider{
		height: 435px;
		padding: 0;
	}
	.mobility-slider .item .overlay{
		width: 100%;
		height: 100%;
		background-color: rgba(255,255,255,0.5);
		padding-top: 20px;
		padding-bottom: 50px;
	}
	
}
/*--- Media Querie - min-width 500px ---*/
@media (min-width:500px){
	/*-- Home - Hero --*/
	.hero-slider{
		height: 700px;
	}
}

/*--- Media Querie - min-width 768px ---*/
@media (min-width:768px){
	.btn-contact{
		display: block;
	}
	/*-- Home - Hero --*/
	.hero-blue, .hero-purple{
		padding: 45px;
	}
	.hero-slider{
		height: 875px;
	}
	
	#wpcf7-f173-o1 .wpcf7-submit, #wpcf7-f174-o1 .wpcf7-submit{
		margin-left: 20px;
	}
	
	#wpcf7-f173-o1 form, #wpcf7-f174-o1 form{
		align-items: flex-end;
		flex-direction: row;
	}
	
	/*-- Home - Banner Orange --*/
	.banner-orange h1{
		margin-top: 0;
		text-align: right;
	}
	
	/*-- References --*/
	.references-slider{
		height: 420px;
	}
	.references-slider .item{
		height: 418px;
	}
}

/*--- Media Querie - min-width 992px ---*/
@media (min-width:992px){
	/*-- Home - Hero --*/
	.hero{
		margin-top: 90px;
		position: fixed;
		width: 100%;
		top: 0;
		z-index: -1;
	}
	
	.hero-info{
		top: 0px;
	}
	
	.hero-slider{
		height: 740px;
	}
	
	.hero h2, .hero p{
		width: 475px;
	}	
	
	.hero-purple{
		display: flex;
		flex-flow: column;
		align-items: flex-end;
	}
	
	.home-body{
		background-color: #ffffff;
   		margin-top: 920px;
	}
	/*-- Home - Banner Solutions --*/
	.banner-solutions .text{
		position: absolute;
    	bottom: -20px;
    	right: -18px;
    	max-width: 570px;
	}
	/*-- Page - Products --*/
	.product-slider-parent{
		display: flex;
		margin-bottom: 120px;
	}
	
	.product-info{
		margin-top: 0;
	}
	/*-- References --*/
	.references-list ul{
		margin-top: 0;
	}
	/*-- Home - Banner Mobility --*/
	.mobility-slider .item{
		padding-left: 60px;
	}
}

/*--- Media Querie - min-width 1200px ---*/
@media (min-width:1200px){
	/*-- Header --*/
	.navigation-desktop a{
		font-size: 14px;
	}
	
	/*-- Home - Hero --*/
	.hero h2, .hero p{
		width: 630px;
	}
	
	.hero-slider{
		height: 755px;
	}
	.hero-info{
		top: 20px;
	}
	/*-- Home - Banner Solutions --*/
	.banner-solutions .text{
		bottom: 0px;
		max-width: 100%;
		right: 105px;
	}
}
