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

@import url("https://fonts.googleapis.com/css?family=Poppins:300,400,700");

html,
body {
	font-family: "Poppins", sans-serif;
}

body {
	position: relative;
}

/** navbar **/

.snv-navbar {
	position: fixed;
	width: 100%;
	z-index: 2000;
	background-color: transparent !important;
	border: none !important;
	transition: all ease-in-out 0.2s;
	-webkit-transition: all ease-in-out 0.2s;
	-moz-transition: all ease-in-out 0.2s;
	-o-transition: all ease-in-out 0.2s;
}
.snv-navbar a.oscuro {
	color: #333 !important;
	padding-top: 23px;
	padding-bottom: 23px;
}
.snv-navbar a.btn {
	margin-left: 8px;
	color: white !important;
}
.snv-navbar a.btn:hover {
	color: #333 !important;
}
.snv-navbar.affix {
	background-color: #fff !important;
	border-radius: 0;
	padding: 0;
}

.snv-navbar.affix li {
	margin: 0;
}

.snv-navbar .navbar-nav > .active > a,
.snv-navbar .navbar-nav > .active > a:hover,
.snv-navbar .navbar-nav > .active > a:focus {
	background-color: #03b3ca !important;
}

.navbar .navbar-nav {
	display: inline-block;
	float: none;
}
.navbar .navbar-collapse {
	text-align: center;
}
.navbar-logo {
	display: none;
}

@media only screen and (max-width: 767px) {
	.snv-navbar {
		background: #fff !important;
	}
	.navbar-logo {
		display: inline-block;
		margin: 10px 15px;
	}
}

#main {
	padding: 200px 0 250px;
	background: url(../imgs/main-bg.jpg) no-repeat bottom;
	background-size: cover;
}

#main h1 {
	font-weight: 700;
	color: #00A2C8;
	letter-spacing: 2px;
	margin: 5rem 0 3rem 0;
}

@media only screen and (max-width: 600px) {
	#main h1 {
		font-size: 30px;
	}
}

#covid {
	margin: 10rem 0 10rem 0;
}

.covid-phone, .covid-desktop {
	width: 100%;
}

@media only screen and (max-width: 991px) {
	.covid-phone {
		display: block;
	}
	.covid-desktop {
		display: none;
	}
}

@media only screen and (min-width: 991px) {
	.covid-phone {
		display: none;
	}
	.covid-desktop {
		display: block;
	}
}

#perfil {
	padding: 100px 0;
}

#perfil h3 {
	font-size: 2rem;
	font-weight: 700;
	margin-bottom: 30px;
}

#perfil p {
	margin-bottom: 30px;
}

#perfil a.relleno {
	padding: 10px 30px;
}

#vertical-line {
	position: absolute;
	height: 280px;
	margin: 10px auto 10px -3px;
	border: solid thin #00b4cb;
}

#clientes {
	padding: 40px 0 60px;
}
#clientes h2 {
	margin: 10px 0 30px;
}
.desc ul {
	list-style-image: url(../imgs/dot.png);
}
.desc ul li {
	margin: 10px 0 10px 10px;
}

#servicios {
	background: url(../imgs/third.jpg) no-repeat bottom;
	background-size: cover;
	padding: 80px 0 20px;
}

.orgs {
	background: #fff;
	padding: 50px 15px;
	height: 250px;
	text-align: center;
	margin: 10px 0;
}

.orgs img {
	margin: 5px 0 20px;
}

.desc {
	padding: 30px;
	background: #fff;
}

#servicios .services {
	border: solid thin #e1e1e1;
	border-bottom: solid medium #03b3ca;
	background: #fff;
	padding: 50px 15px;
	height: 450px;
	text-align: center;
	margin: 10px 0;
}
#servicios .services img {
	height: 170px;
	width: auto;
	margin: 40px 0 20px;
}
#servicios .services h4 {
	color: #03b3ca;
	text-transform: uppercase;
	letter-spacing: 3px;
	margin: 30px 0 20px;
}

#servicios .services p {
	font-size: 16px;
	letter-spacing: 3px;
}

#personal {
	padding: 30px 0;
}

#personal .personal {
	padding: 30px 30px 0;
	border: solid medium #03b3ca;
}
#personal .personal .personalModel {
	max-width: 420px;
	width: 100%;
}

#fifth {
	padding: 40px 0;
}

#fifth .caractIntroContainer {
	padding: 300px 20px;
	/* background:url(../imgs/cleaning.jpg) no-repeat center;*/
	background-size: cover;
}

#fifth .caractIntroContainer .caractIntro {
	position: relative;
	display: inline-block;
	background: #fff;
	padding: 30px 20px;
}

#fifth .caract {
	padding: 20px 10px;
	min-height: 210px;
}
#fifth .caract .lead {
	font-size: 16px;
}

#contacto {
	padding: 40px 0;
}

.contact-titles {
	margin: 3rem;
}

.contact-titles h4 {
	color: #999;
}

#contacto form .form-control.input {
	margin: 20px 0;
	border-radius: 0;
	height: 50px;
	font-size: 16px;
	font-weight: 700;
}

#trabaja-con-nosotros form .form-control.input {
	margin: 20px 0;
	border-radius: 0;
	height: 50px;
	font-size: 16px;
	font-weight: 700;
}

::-webkit-input-placeholder {
	font-weight: 400;
}
::-moz-placeholder {
	font-weight: 400;
}
:-ms-input-placeholder {
	font-weight: 400;
}
:-moz-placeholder {
	font-weight: 400;
}

#contacto .contact-data {
	letter-spacing: 3px;
	margin: 30px 0;
	color: #999;
}

@media only screen and (max-width: 600px) {
	#contacto .contact-data {
		letter-spacing: 0;
	}
}

#contacto .contact-data h4 {
	font-weight: 400;
	color: #333;
}

#contacto .enviarForm {
	position: relative;
	margin: 20px 0;
	padding: 20px 10px 40px;
	background: #03b3ca;
	color: #fff;
	text-transform: uppercase;
	border-radius: 0;
	transition: all ease-in-out 0.2s;
	-webkit-transition: all ease-in-out 0.2s;
	-moz-transition: all ease-in-out 0.2s;
	-o-transition: all ease-in-out 0.2s;
}
#contacto .enviarForm:hover {
	position: relative;
	margin: 20px 0;
	padding: 20px 10px 40px;
	background: #fff;
	color: #03b3ca;
	text-transform: uppercase;
	border-radius: 0;
	border: thin solid #03b3ca;
}

.cancelarForm {
	position: relative;
	margin: 20px 0;
	padding: 20px 10px 40px;
	background: #bd2020;
	color: #fff;
	text-transform: uppercase;
	border-radius: 0;
	transition: all ease-in-out 0.2s;
	-webkit-transition: all ease-in-out 0.2s;
	-moz-transition: all ease-in-out 0.2s;
	-o-transition: all ease-in-out 0.2s;
}
.cancelarForm:hover {
	position: relative;
	margin: 20px 0;
	padding: 20px 10px 40px;
	background: #fff;
	color: #bd2020;
	text-transform: uppercase;
	border-radius: 0;
	border: thin solid #bd2020;
}

#trabaja-con-nosotros .enviarForm {
	position: relative;
	margin: 20px 0;
	padding: 20px 10px 40px;
	background: #03b3ca;
	color: #fff;
	text-transform: uppercase;
	border-radius: 0;
	transition: all ease-in-out 0.2s;
	-webkit-transition: all ease-in-out 0.2s;
	-moz-transition: all ease-in-out 0.2s;
	-o-transition: all ease-in-out 0.2s;
}
#trabaja-con-nosotros .enviarForm:hover {
	position: relative;
	margin: 20px 0;
	padding: 20px 10px 40px;
	background: #fff;
	color: #03b3ca;
	text-transform: uppercase;
	border-radius: 0;
	border: thin solid #03b3ca;
}

#trabaja-con-nosotros .form-trabaja {
	padding: 40px 80px;
}

.sponsors {
	padding: 20px 0;
}

.sponsors img {
	margin: 10px;
}
.sponsors hr {
	margin: 30px 0;
}

#modal-aviso {
	padding: 50px 50px 65px;
}

#modal-aviso button.cerrar_modal {
	position: absolute;
	width: 18px;
	height: 18px;
	right: 25px;
	top: 25px;
	outline: none;
	border: 0;
	padding: 0;
	background: transparent;
}
#modal-aviso button.cerrar_modal img {
	max-width: 100%;
}

@media only screen and (max-width: 991px) {
	.sponsors {
		text-align: center;
	}
}

footer {
	background: #03b3ca;
	padding: 70px 0;
	letter-spacing: 3px;
}
footer ul,
footer a {
	color: #fff !important;
	text-decoration: none !important;
	transition: all ease-in-out 0.2s;
	-webkit-transition: all ease-in-out 0.2s;
	-moz-transition: all ease-in-out 0.2s;
	-o-transition: all ease-in-out 0.2s;
}

footer a:hover {
	color: #333 !important;
}

footer ul li {
	margin: 20px 0;
}
footer .footer-end {
	color: #fff;
}
footer .footer-end .lead {
	margin: 20px 0 0;
}

footer .modal-content {
	margin: 100px 0 0;
}
footer .modal-content .modal-body {
	padding: 30px 30px 40px;
	letter-spacing: 0;
}

#flotante {
	position: fixed;
	z-index: 9999;
	bottom: 30px;
	left: 30px;
	/* No usar width:100% para no tapar el botón de WhatsApp a la derecha */
	transition: bottom 0.3s ease;
	display: block;
}
#flotante.mas {
	bottom: 90px; /* Subir cuando se acerca al footer "Desarrollado por" */
}
#flotante a {
	display: inline-block;
	background: #337ab7;
	border: 1px solid #337ab7;
	border-radius: 30px;
	padding: 8px 20px;
	box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.3);
	font-size: 1.3rem;
	letter-spacing: 2px;
	cursor: pointer;
	color: white !important;
}
#flotante a:hover {
	text-decoration: none;
	color: white !important;
}
#flotante a img {
	width: 30px;
}

@media only screen and (max-width: 768px) {
	/* En móvil: #flotante a la izquierda, sin interferir con WhatsApp a la derecha */
	#flotante {
		left: 15px;
		bottom: calc(25px + env(safe-area-inset-bottom, 0px));
	}
	#flotante.mas {
		bottom: calc(85px + env(safe-area-inset-bottom, 0px));
	}
}

/* Botón flotante WhatsApp - circular */
#flotante-whatsapp {
	position: fixed;
	z-index: 99999;
	bottom: 30px;
	right: 30px;
	display: block;
	transition: bottom 0.3s ease;
}
#flotante-whatsapp.mas {
	bottom: 90px;
}
#flotante-whatsapp a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 60px;
	height: 60px;
	background: #25D366;
	border: none;
	border-radius: 50%;
	box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.3);
	cursor: pointer;
	color: #fff !important;
	text-decoration: none !important;
	transition: background 0.3s ease, transform 0.2s ease;
}
#flotante-whatsapp a:hover {
	background: #128C7E;
	color: #fff !important;
	text-decoration: none !important;
	transform: scale(1.05);
}
#flotante-whatsapp a i {
	font-size: 2rem;
}

/* Botón WhatsApp - tablets y móviles */
@media only screen and (max-width: 768px) {
	#flotante-whatsapp {
		right: 20px;
		/* Safe area para iPhones con notch/home indicator */
		bottom: calc(25px + env(safe-area-inset-bottom, 0px));
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		z-index: 999999 !important;
		pointer-events: auto !important;
	}
	#flotante-whatsapp.mas {
		bottom: calc(85px + env(safe-area-inset-bottom, 0px));
	}
	#flotante-whatsapp a {
		width: 56px;
		height: 56px;
		display: flex !important;
		visibility: visible !important;
	}
	#flotante-whatsapp a i {
		font-size: 1.8rem;
	}
}

/* Botón WhatsApp - móviles pequeños */
@media only screen and (max-width: 480px) {
	#flotante-whatsapp {
		right: 15px;
		bottom: calc(20px + env(safe-area-inset-bottom, 0px));
	}
	#flotante-whatsapp.mas {
		bottom: calc(80px + env(safe-area-inset-bottom, 0px));
	}
	#flotante-whatsapp a {
		width: 52px;
		height: 52px;
	}
	#flotante-whatsapp a i {
		font-size: 1.6rem;
	}
}