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

@media screen and (max-width: 1100px) {
	.txt-home h1 {
		font-size: 40px;
	}
	
	.txt-home h1 strong {
		font-size: 49px;
	}
}

@media screen and (max-width: 975px) {
	.txt-home h1 {
		font-size: 33px;
	}
	
	.txt-home h1 strong {
		font-size: 40px;
	}
	
	.txt-home p {
		max-width: 335px;
		font-size: 17px;
	}
}

@media screen and (max-width: 900px) {
	.resultados li p strong {
		font-size: 30px;
	}
	
	.resultados li p {
		font-size: 17px;
	}
}

@media screen and (max-width: 768px) {
	body.single {
		background-position: center;
	}
	
	#navbar-toggle {
		display: block;
	}
	
	.contenedor-menu {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		position: fixed;
		padding: 50px 20px 20px;
		height: 100%;
		top: -100%;
		left: 0;
		right: 0;
		background-color: #332399;
		z-index: 2;
		overflow-y: auto;
		text-align: center;
	}
	
	.menu-table {
		display: table;
		width: 100%;
		height: 100%;
	}
	
	.menu {
		display: table-cell; 
		top: 0; 
		-webkit-transform: translateY(0);
		-moz-transform: translateY(0);
		transform: translateY(0);
		vertical-align: middle;
	}
	
	.redes-header {
		display: block;
		width: 100%;
		position: absolute;
		top: 20px;
		left: 0;
	}
	
	.menu li {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		display: block; 
		width: 100%;
		padding: 15px 0;
		line-height: 150%;
		vertical-align: middle;
	}

	.menu li a {
		display: inline-block; 
		width: 100%; 
		height: 100%;
		color: #fff;
		font-family: 'helvetica bold';
		font-size: 27px;
		text-transform: uppercase;
	}
	
	.menu li a.activo, 
	.menu li:hover a {
		color: #EE3138;
	}
	
	.redes-header ul li.facebook {
		background-position: 0 -128px;
	}
	
	.redes-header ul li.instagram {
		background-position: 0 -149px;
	}
	
	.redes-header ul li.twitter {
		background-position: 0 -170px;
	}
	
	section.home {
		background-position: left top -35px;
	}
	
	section.home:before {
		display: none;
	}
	
	.slide-home {
		padding: 0;
	}
	
	.slide-home:before {
		content: '';
		position: absolute;
		height: 100%;
		left: 0;
		right: 0;
		bottom: 0;
		background-image: url(assets/img/puntos_1.png);
		background-repeat: no-repeat;
		background-size: contain;
		background-position: bottom right;
	}
	
	.txt-home {
		padding: 0 0 50px;
		text-align: center;
	}
	
	.img-home {
		position: relative; 
		width: 100%;
		padding: 100% 0 0;
		background-position: center;
	}
	
	.txt-home p {
		max-width: 100%;
		letter-spacing: 3px;
	}
	
	.txt-casos {
		padding: 0 0 30px;
	}
	
	.img-casos {
		position: relative; 
		width: 100%;
		padding: 60% 0 0;
	}
	
	section.contacto {
		background-position: left center;
	}
	
	.formulario {
		display: block;
	}
	
	.forma,
	.content-forma,
	.content-single,
	.img-single {
		display: block;
		width: 100%;
		padding: 20px;
	}
	
	.embed-container,
	.txt-forma {
		top: 0; 
		-webkit-transform: translateY(0);
		-moz-transform: translateY(0);
		transform: translateY(0);
	}

	section.single {
		padding: 115px 0 0;
	}
	
	.content-single,
	.img-single {
		padding: 40px 20px;
	}
	
	.row-single,
	.resultados {
		display: block;
	}
	
	.resultados li {
		display: block; 
		width: 100%;
		margin: 0 0 30px; 
		padding: 0 0 30px;
		border-bottom: 1px solid #332399;
	}
	
	.resultados li:last-of-type {
		border-bottom: 0;
	}
	
	.txt-forma a.face {
		float: none;
	}
}

@media screen and (max-width: 650px) {
	.slide-servicios {
		padding: 0;
	}
}

@media screen and (max-width: 585px) {
	section.home:after {
		display: none;
	}
}

@media screen and (max-width: 550px) {
	.testimonio-home p {
		font-size: 22px;
	}
}

@media screen and (max-width: 480px) {
	.testimonio-home p {
		font-size: 18px;
		letter-spacing: 3px;
	}
	
	.testimonio-home p small {
		display: block;
		font-size: 15px;
	}
	
	.forma fieldset:after {
		display: none;
	}
	
	.forma input[type="text"], 
	.forma select, 
	.forma textarea {
		display: inline-block;
		width: 100%!important;
		margin: 0 0 20px;
	}
	
	.forma input[type="tel"], 
	.forma select, 
	.forma textarea {
		display: inline-block;
		width: 100%!important;
		margin: 0 0 20px;
	}
	
	.forma input[type="email"], 
	.forma select, 
	.forma textarea {
		display: inline-block;
		width: 100%!important;
		margin: 0 0 20px;
	}
	
	section.single .txt-forma ul li {
		display: block; 
		width: 100%;
		margin: 0 0 20px;
		text-align: left;
	}
	
	section.single .txt-forma ul li:last-of-type {
		margin: 0;
	}
	
	.margen-footer:after {
		display: none;
	}
	
	footer {
		padding: 130px 0 25px;
		background-position: right center;
	}
	
	.footer,
	.redes-footer {
		display: block; 
		width: 100%;
		text-align: center;
	}
	
	.footer {
		padding: 0 0 30px; 
		margin: 0 0 30px; 
		border-bottom: 1px dashed #fff;
	}
}

@media screen and (max-width: 400px) {
	.txt-home h1 {
		font-size: 25px;
	}
	
	.txt-home h1 strong {
		font-size: 28px;
	}
	
	.forma h3 {
		text-align: center;
		letter-spacing: 3px;
	}
}