/*PARAMETROS GENERICOS - START*/
:root{
	--main-color: #f8f9fa;
	/*width & height - START*/
	--section-height: 100vh;
	--navbar-height: 78px;
	--logo-width: 250px;
	--logo-height: auto;
	--footer-width: 100%;
	--footer-height: 54px;
	/*width & height - EMD*/
	/*colors - START*/
	--dark: #403f3f;
	--light: #f8f9fa;
	--white: #ffffff;
	/*colors - END*/
}
body{overflow-x: hidden;}
h1{font-size: 2.75em;}
h2{font-size: 2.2rem; margin-bottom: .5em;}
p{font-size: 1.1em;}
#section-content{max-width: 1440px;}

/*Navbar - START*/
#navbar{background-color: #ffffff; width: 100%; height: var(--navbar-height);transition: background-color 0.6s linear 0.2s; box-shadow: 0px 1px 5px 0px rgba(208, 208, 208, 0.59);}
#navbar .bg-opacity{background-color: #2e32a1ed;}
.navbar{background-color: #ffffff; max-width: 1920px; margin: 0 auto;}
.navbar .nav-link{color: #000000;}
.navbar-brand img{width: var(--logo-width); height: var(--logo-height); margin-left: 30px;}
.navbar-nav{width: 100%; justify-content: flex-end;}
#navbar .navbar-toggler-icon{display: flex; justify-content: center; align-items: center; color: #828282;}
#navbar .navbar-toggler-icon i{font-size: 24px;}
#navbar .navbar-nav .nav-item a{color: rgba(48, 51, 163, 0.8); font-size: 18px; font-weight: 600;}
#navbar .navbar-nav .nav-item:hover a{color: rgba(48, 51, 163, 1);}
#navbar .navbar-nav .nav-item.active a{color: rgba(48, 51, 163, 1); font-weight: bold;}
/*Navbar - END*/
/*Footer - START*/
footer{width: var(--footer-width); height: var(--footer-height); background-color: transparent; position: relative;}
#footer-content{max-width: 1920px; margin: 0 auto;}
footer .footerLogo img{width: var(--logo-width); height: var(--logo-height); margin-left: 50px;}
footer .rights{color: #ffffff;}
footer .legalDoc{display: flex;align-items: center; justify-content: flex-start;}
footer .legalDoc a{margin-right: 20px; text-decoration: underline; color: #ffffff;}
footer .footer-bg{position: absolute;bottom: -1px;left: -3px;right: 0;margin: 0 auto; z-index: -1;max-width: 1920px;}
footer .footer-bg.mobile{display: none;}
/*Footer - END*/
/*PARAMETROS GENERICOS - END*/

/*HOME - START*/
.home{ padding-top: 40px; height: calc( (100vw / 2.62158988503236) + 75px);}
.home .title{margin-bottom: 50px; font-size: 3.75rem; color: #ffffff;}
.home .presentation{color: #ffffff;}
.home .carousel-inner{border-radius: 60px; box-shadow: -7px 7px 15px 0px rgba(36, 36, 36, 0.27);}
.home .btn{
	background: -moz-linear-gradient(18.06% -65% -45deg,rgba(243, 123, 80, 1) 0%,rgba(243, 127, 80, 0.95) 26.33%,rgba(243, 137, 80, 0.9) 50.01%,rgba(243, 156, 80, 0.85) 72.67%,rgba(243, 181, 80, 0.81) 94.59%,rgba(243, 189, 80, 0.8) 100%);
    background: -webkit-linear-gradient(-45deg, rgba(243, 123, 80, 1) 0%, rgba(243, 127, 80, 0.95) 26.33%, rgba(243, 137, 80, 0.9) 50.01%, rgba(243, 156, 80, 0.85) 72.67%, rgba(243, 181, 80, 0.81) 94.59%, rgba(243, 189, 80, 0.8) 100%);
    background: -webkit-gradient(linear,18.06% -65% ,86.05% 179.79% ,color-stop(0,rgba(243, 123, 80, 1) ),color-stop(0.2633,rgba(243, 127, 80, 0.95) ),color-stop(0.5001,rgba(243, 137, 80, 0.9) ),color-stop(0.7267,rgba(243, 156, 80, 0.85) ),color-stop(0.9459,rgba(243, 181, 80, 0.81) ),color-stop(1,rgba(243, 189, 80, 0.8) ));
    background: -o-linear-gradient(-45deg, rgba(243, 123, 80, 1) 0%, rgba(243, 127, 80, 0.95) 26.33%, rgba(243, 137, 80, 0.9) 50.01%, rgba(243, 156, 80, 0.85) 72.67%, rgba(243, 181, 80, 0.81) 94.59%, rgba(243, 189, 80, 0.8) 100%);
    background: -ms-linear-gradient(-45deg, rgba(243, 123, 80, 1) 0%, rgba(243, 127, 80, 0.95) 26.33%, rgba(243, 137, 80, 0.9) 50.01%, rgba(243, 156, 80, 0.85) 72.67%, rgba(243, 181, 80, 0.81) 94.59%, rgba(243, 189, 80, 0.8) 100%);
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#F37B50', endColorstr='#F3BD50' ,GradientType=0)";
    background: linear-gradient(135deg, rgba(243, 123, 80, 1) 0%, rgba(243, 127, 80, 0.95) 26.33%, rgba(243, 137, 80, 0.9) 50.01%, rgba(243, 156, 80, 0.85) 72.67%, rgba(243, 181, 80, 0.81) 94.59%, rgba(243, 189, 80, 0.8) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#F37B50',endColorstr='#F3BD50' , GradientType=1);
	-webkit-box-shadow: -5px 5px 5px 0px rgba(36, 36, 36, 0.75);
    -moz-box-shadow: -5px 5px 5px 0px rgba(36, 36, 36, 0.75);
    box-shadow: -5px 5px 5px 0px rgba(36, 36, 36, 0.75);
    border: none;
	margin-top: 30px;
}
.home .btn a{color:rgba(255, 255, 255, 0.7); text-decoration: none;text-transform: uppercase; font-weight: 700; padding: 20px;}
.home .btn:hover a{color: rgba(255, 255, 255, 1)}
.home .text{height: auto; margin: auto;}
.home img.header-bg{width: calc(100% + 30px); max-width: 1920px; position: absolute;top: 75px;left: 0;right: 0;bottom: 0;margin: 0 auto;}
/*HOME - END*/

/*QUIENES SOMOS - START*/
.who{padding-top: var(--navbar-height);}
.who .texto{top: calc(50% - 112px);}
/*QUIENES SOMOS - END*/

/*QUE HACEMOS - START*/
.what{padding-top: calc( var(--navbar-height) + 5px);}
.what .services .service{
	height: 100%;
    padding-top: 50px;
    padding-right: 40px;
    padding-bottom: 50px;
    padding-left: 40px;
    z-index: 9;
    position: relative;
	overflow: hidden;
	cursor: pointer;
	transform: translateY(0);
	transition: transform 600ms cubic-bezier(.19,1,.22,1), box-shadow 300ms ease-out, background-color 300ms ease-out, color 300ms ease-out !important;
}
.what .services .service:hover{background-color: #3033a3;transform: translateY(-16px);}
.what .services .service:hover .text,
.what .services .service:hover .title{color: #ffffff;}
.what .services .service:hover .icon{-webkit-filter: invert(100%); -moz-filter: invert(100%); filter: invert(100%;)}
.what .services .service .icon{color: #ff5f00; background-image: url('../_img/iconos.svg'); background-size: 100% auto; width: 90px; height: 88px;}
.what .services .service .icon.garage{height: 85px; background-position-y: -89px;}
.what .services .service .icon.empresas{height: 89px; background-position-y: -724px;}
.what .services .service .icon.obras{background-position-y: -175px;}
.what .services .service .icon.comunidades{height: 90px; background-position-y: -814px;}
.what .services .service .icon.viviendas{background-position-y: -467px;}
.what .services .service .icon.nebulizadoras{height: 87px; background-position-y: 0;}
.what .services .service .title{text-transform: uppercase; font-weight: bold; font-size: 1.2rem; color: #ff5f00; letter-spacing: 0.1em; margin: 2px 0;}
.what .services .service .text{color: #ff5f00; margin: 0; font-size: 1.1rem; line-height: auto;}
/*QUE HACEMOS - END*/

/*CONTACTO - START*/
.contact{padding-top: var(--navbar-height)}
.contact .locationData .locationDirection,
.contact .locationData .locationPhone,
.contact .locationData .locationEmail{margin: 10px 0;}
.contact .locationData .locationDirection span:nth-child(1),
.contact .locationData .locationPhone span:nth-child(1),
.contact .locationData .locationEmail span:nth-child(1){margin-right: 5px;}
.contact .form-row{margin-bottom: 50px;}
.contactForm form{
	background-color: #ffffff;
    -webkit-box-shadow: 0 0 2rem rgba(0, 0, 0, 0.56);
    box-shadow: 0 0 2rem rgba(0, 0, 0, 0.56);
    z-index: 3;
    max-width: 50rem;
    margin: 50px auto 0;
    border-radius: 1rem;
    padding: 2rem;
    position: relative;
	max-width: 540px;
}
.contact .contactForm .header{margin-bottom: 20px;}
.contact .contactForm .header .title{font-size: 2.2rem;}
.contact .contactForm .header i{font-size: 1.65rem;}
.contact .contactForm .ico i{
	position: absolute;
    right: .5rem;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 3rem;
    height: 3rem;
    line-height: 3rem;
    text-align: center;
    opacity: .5;
    pointer-events: none;
    font-size: 1.5rem;
    padding: 0;
}s
.contact .contactForm input,
.contact .contactForm textarea{
	display: block;
    line-height: 2rem;
    background-color: #f9fafb;
    color: #8f9bb1;
    border-radius: .2rem;
    border: 1px solid #ced4da;
}
.contact .locationMap iframe{box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .16), 0 2px 10px 0 rgba(0, 0, 0, .12);}
iframe{max-width: 100%;}
/*CONTACTO - END*/
/*COOKIES - START*/
#cookieModal.modal{padding-right: 0 !important;}
#cookieModal .modal-dialog{max-width: 100%; margin: 10px;}
#cookieModal .buttons .btn{background-color: #007bff;}
/*COOKIES - END*/

/*---------------------- AVISO LEGAL STYLES - START ----------------------*/
#avisoLegal{padding-top: var(--navbar-height); min-height: calc(var(--section-height) - var(--footer-height)); max-width: 1440px;}
.aviso-legal h1{margin-bottom: 1.5rem;}
.aviso-legal p{word-break: break-word;}
/*---------------------- AVISO LEGAL STYLES - END ----------------------*/

/*---------------------- POLITICA PRIVACIDAD STYLES - START ----------------------*/
#politicaPrivacidad{padding-top: var(--navbar-height); min-height: calc(var(--section-height) - var(--footer-height)); padding-bottom: 250px; max-width: 1440px;}
.politica-privacidad h1{margin-bottom: 1.5rem;}
.politica-privacidad p{word-break: break-word;}
@media(max-width: 991px){
	#politicaPrivacidad{padding-bottom: 20px;}
	.politica-privacidad h1{font-size: 2.0em;}
}
/*---------------------- POLITICA PRIVACIDAD STYLES - END ----------------------*/

/*---------------------- POLITICA COOKIES STYLES - START ----------------------*/
#politicaCookies{padding-top: var(--navbar-height); min-height: calc(var(--section-height) - var(--footer-height)); padding-bottom: 250px; max-width: 1440px;}
.politica-cookies h1{margin-bottom: 1.5rem;}
.politica-cookies p{word-break: break-word;}
@media(max-width: 991px){
	#politicaCookies{padding-bottom: 20px;}
	.politica-cookies h1{font-size: 2.0em;}
}
/*---------------------- POLITICA COOKIES STYLES - END ----------------------*/

/*---------------------- MOBILE - END-----------------------------------------*/
@media(max-width: 767px){
	p{font-size: 1.2em;}
	h2{font-size: 1.6em;}
	h3{font-size: 1.5em;}
	.navbar-brand img{width: 210px; margin-left: 0;}
	/*Home - START*/
	.home{padding-top: calc(var(--navbar-height) + 25px);  height: auto;}
	.home .title{font-size: 1.75em; height: calc(100vw / 3.62159);}
	#carouselExampleControls{width: calc(100% + 60px); margin-left: -30px;}
	.home .carousel-inner{border-radius: 5px;}
	/*Home - END*/

	/*Contacto - START*/
	.contact .location{margin-bottom: 50px;}
	.contactForm form{
			box-shadow: none !important;
			padding: 0 !important;
			margin: 0 !important;
		}
	.contact .form-row{margin-bottom: 0;}
	/*Contacto - END*/
	/*Footer - START*/
	.legalDoc{justify-content: center !important;}
	#footer-content{font-size: 0.7rem;}
	footer .footer-bg.desktop{display: none;}
	footer .footer-bg.mobile{display: block;}
	/*FOOTER - END*/
}
@media(max-width: 992px){
	.home .btn{margin-bottom: 40px;}
	.who,
	.what,
	.contact{padding-top: calc(var(--navbar-height) + 20px);}
	#navbar .navbar-nav .nav-item{text-align: center; font-size: 27px;}
	
	/*Home - START*/
	.home img.header-bg{width: 100%;}
	.home .title{height: calc(100vw / 3.62159); margin-bottom: 25px;}
	.home .presentation{color: #000000;}
	/*Home - END*/
	
	/*Quienes Somos  - START*/
	.who .content{display: flex; flex-direction: column-reverse;}
	.who .texto{position: relative !important; top: 0;}
	/*Quienes Somos - END*/
	
	/*Servicios - START*/
	.what .services .service{padding-top: 15px; padding-right: 15px; padding-left: 15px; padding-bottom: 15px;}
	/*Servicios - START*/
	
	
	.contact .locationData{margin-bottom: 20px;}
	.contact .locationDirection a,
	.contact .locationData .locationPhone a,
	.contact .locationData .locationEmail a{font-size: 1.2em;}
	.contact .locationData .locationDirection,
	.contact .locationData .locationPhone,
	.contact .locationData .locationEmail{margin: 20px 0;}
	
	
	footer{height: auto; margin-top: 25px;}
	#footer-content{flex-direction: column; text-align: center;}
	footer .footerLogo img{margin-left: -36px;}
	footer .footerLogo,
	footer .right,
	footer .legalDoc{width: 100%;}
}
@media(min-width: 450px) and (max-width: 767px){
	.home .title{height: calc(100vw / 3);font-size: 2.75em;}
}
/*---------------------- MOBILE - END ---------------------------------------*/

/*---------------------- TABLET - START -------------------------------------*/
@media (min-width: 767px) and (max-width: 991px){
	.home {padding-top: calc(var(--navbar-height) + 80px); height: auto;}
	/*.home .title{margin-bottom: 100px;}
	.home .presentation{color: #000000;}*/
	footer .legalDoc{flex-direction: row; justify-content: center;}
}
/*---------------------- TABLET - END -------------------------------------*/

/*---------------------- PANTALLAS GRANDES - START --------------------------*/
@media(min-width: 1928px){
	.home{height: calc( 1928px / 2.62158988503236);}
}
/*---------------------- PANTALLAS GRANDES - START --------------------------*/
/*---------------------- SEND BY EMAIL - START ------------------------------*/
#sendbyemail .content{
	padding-top: calc(var(--navbar-height) + 50px);
	height: calc(100vh - var(--footer-height));
}
/*---------------------- SEND BY EMAIL - END ------------------------------*/
