@charset "utf-8";
/* RESETEO */
*, *:after, *:before{
	border: 0;
	/* Evitar que mis cajas engorden */
	/*-ms-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;*/
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}/* FIN DEL RESETEO --------------------------------------------- */
@font-face {
  font-family: 'icomoon';
  src:  url('../fonts/icomooncd50.eot?p116vk');
  src:  url('../fonts/icomooncd50.eot?p116vk#iefix') format('embedded-opentype'),
    url('../fonts/icomooncd50.ttf?p116vk') format('truetype'),
    url('../fonts/icomooncd50.html?p116vk') format('woff'),
    url('../fonts/icomooncd50.svg?p116vk#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-arriba:before {
  content: "\e900";
}
.icon-next:before {
  content: "\e901";
}
.icon-prev:before {
  content: "\e903";
}
.icon-abajo:before {
  content: "\e904";
}
.icon-home3:before {
  content: "\e902";
}
.icon-phone:before {
  content: "\e942";
}
.icon-location:before {
  content: "\e947";
}
.icon-mobile2:before {
  content: "\e959";
}
.icon-menu:before {
  content: "\e9bd";
}
.icon-checkmark:before {
  content: "\ea10";
}
.icon-mail2:before {
  content: "\ea84";
}
a{
	color:#777;
	font-weight:bold;
	text-decoration:none;
	transition: all .7s;
}
a:hover, a.active{
	color:#5e76e2;
	transition: all .6s;
}
audio,iframe,img,video{
	max-width:100%;
}
body, html{
	background:#fff;
	color: #777;
	font-family: 'calibri', sans-serif;
	font-size: 19px;
	/* overflow-x:hidden; */
	text-align: center;
}
footer{
	background: #4c4f56;
	max-width: 100%;
	width: 100%;
}
form{
 width: 100%;
}
form label {
	display:block;
	margin-top:10px;
	letter-spacing:2px;
	text-align: left;
}
form input, textarea {
	width:100%;
    height:40px;
    background:#efefef;
    border:1px solid #dedede;
    padding:10px;
    margin-top:2px;
    font-size:0.9em;
    color:#3a3a3a;
    -moz-border-radius:5px;
    -webkit-border-radius:5px;
    border-radius:5px;
}
form input:focus, form textarea:focus {
    border:1px solid #97d6eb;
}
form textarea {
	height:100px;
}
form #submit {
	color: #fff;
    max-width:200px;
    height:38px;
    background: #4c4f56;
    border:none;
    margin-top:20px;
    cursor:pointer;
    padding: .5em 1em;
    width: 100%;
}
form #submit:hover {
    opacity:.9;
}
h1{
	color: #5e76e2;
	font-size: 2em;
	margin: 1em .5em;
	width: 100%;
}
header, main{
	max-width: 100%;
	width: 100%
}
header label{
	color: #fff;
	display: none;
}
#franja-superior{
	background: #5e76e2;
	color: rgba(255, 255, 255, .8);
	width: 100%;
}
#franja-superior p{
	margin: auto;
	max-width: 1300px;
	padding: .8em;
	text-align: right;
}
#logo-menu-tels{
	align-items: center;
	border-bottom: 1px #ccc solid;
	background: #fff;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: auto;
	max-width: 1300px;
	padding: .8em;
	width: 100%;
}
#logo a, #logo-footer a{
	opacity: 1;
}
#logo a:hover, #logo-footer a:hover{
	opacity: .5;
}
#tels{
	font-size: .9em;
	text-align: right;
}
#btn-menu{
	display: none;
	font-size: 2em;
}
.menu ul{
	display: flex;
	list-style: none;
}
.menu ul ul{
	display: none;
	z-index: 10;
}
.menu a{
	padding: .8em;
}
.menu ul ul li{
	border-bottom: 1px solid rgba(0, 0, 0, .3);
	padding: .5em;
	transition: all .7s;
}
.menu ul ul li a{
	color: rgba(255, 255, 255, 1);
	font-size: .85em;
	font-weight: normal;
	padding: 1em 2em;
}
.menu ul ul li:hover, .menu ul ul li.active{
	background: rgba(255, 255, 255, .2);
}
.icon-abajo{
	font-size: .4em;
}
.menu ul li:hover ul{
	background: rgba(94, 118, 226, 1);
	display: block;
	/* line-height: 1.5em;
	padding: .3em;  */
	position: absolute;
	margin-top: .5em;
	text-align: left;
}
/* SLIDER */
#main-slider {
  overflow: hidden;
}
#main-slider .item {
  height: 558px;
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: cover;
}
#main-slider .slider-inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  color: #fff;
}
#main-slider .slider-inner h2 {
  margin-top: 180px;
  font-size: 36px;
  line-height: 1;
  text-transform: uppercase;
  color: #fff;
}
#main-slider .slider-inner h2 > span {
  color: #5e76e2;
}
#main-slider .slider-inner .btn {
  margin-top: 10px;
}
#main-slider .owl-prev,
#main-slider .owl-next {
  position: absolute;
  top: 50%;
  background-color: rgba(0, 0, 0, 0.2);
  color: #fff;
  font-size: 30px;
  display: inline-block;
  margin-top: -35px;
  height: 70px;
  width: 70px;
  line-height: 70px;
  text-align: center;
  z-index: 5;
  -webkit-transition: background-color 400ms;
  transition: background-color 400ms;
}
#main-slider .owl-prev:hover,
#main-slider .owl-next:hover {
  background-color: #5e76e2;
}
#main-slider .owl-prev {
  left: -17px;
  text-indent: 14px;
}
#main-slider .owl-next {
  right: -17px;
  text-indent: -14px;
}
#bar {
  width: 0%;
  max-width: 100%;
  height: 4px;
  background: #5e76e2;
}
#progressBar {
  margin-top: -4px;
  position: relative;
  z-index: 999;
  width: 100%;
  background: rgba(0, 0, 0, 0.1);
}
#cta {
  padding: 50px 0;
  background-color: #eeeeee;
}
#cta h2 {
  margin-top: 0;
}
#cta .btn {
  margin-top: 40px;
}
#cta2 {
  background: #242a33;
  background-size: cover;
  color: #fff;
  padding: 70px 0;
}
#cta2 .btn {
  margin-top: 10px;
}
#cta2 h2 {
  color: #fff;
  font-size: 44px;
  line-height: 1;
}
#cta2 h2 > span {
  color: #72C05B;
}
#cta2 p {
    color: #fff;
}
/* ---------------------------------------- */
/* 
 * 	Core Owl Carousel CSS File
 *	v1.3.3
 */

/* clearfix */
.owl-carousel .owl-wrapper:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}
/* display none until init */
.owl-carousel{
	display: none;
	position: relative;
	width: 100%;
	-ms-touch-action: pan-y;
}
.owl-carousel .owl-wrapper{
	display: none;
	position: relative;
	-webkit-transform: translate3d(0px, 0px, 0px);
}
.owl-carousel .owl-wrapper-outer{
	overflow: hidden;
	position: relative;
	width: 100%;
}
.owl-carousel .owl-wrapper-outer.autoHeight{
	-webkit-transition: height 500ms ease-in-out;
	-moz-transition: height 500ms ease-in-out;
	-ms-transition: height 500ms ease-in-out;
	-o-transition: height 500ms ease-in-out;
	transition: height 500ms ease-in-out;
}
	
.owl-carousel .owl-item{
	float: left;
}
.owl-controls .owl-page,
.owl-controls .owl-buttons div{
	cursor: pointer;
}
.owl-controls {
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/* mouse grab icon */
.grabbing { 
    cursor:url(grabbing.html) 8 8, move;
}

/* fix */
.owl-carousel  .owl-wrapper,
.owl-carousel  .owl-item{
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility:    hidden;
	-ms-backface-visibility:     hidden;
  -webkit-transform: translate3d(0,0,0);
  -moz-transform: translate3d(0,0,0);
  -ms-transform: translate3d(0,0,0);
}
/* ----------------------------------------------------------------- */
/* 
 *  Owl Carousel CSS3 Transitions 
 *  v1.3.2
 */

.owl-origin {
	-webkit-perspective: 1200px;
	-webkit-perspective-origin-x : 50%;
	-webkit-perspective-origin-y : 50%;
	-moz-perspective : 1200px;
	-moz-perspective-origin-x : 50%;
	-moz-perspective-origin-y : 50%;
	perspective : 1200px;
}
/* fade */
.owl-fade-out {
  z-index: 10;
  -webkit-animation: fadeOut .7s both ease;
  -moz-animation: fadeOut .7s both ease;
  animation: fadeOut .7s both ease;
}
.owl-fade-in {
  -webkit-animation: fadeIn .7s both ease;
  -moz-animation: fadeIn .7s both ease;
  animation: fadeIn .7s both ease;
}
/* backSlide */
.owl-backSlide-out {
  -webkit-animation: backSlideOut 1s both ease;
  -moz-animation: backSlideOut 1s both ease;
  animation: backSlideOut 1s both ease;
}
.owl-backSlide-in {
  -webkit-animation: backSlideIn 1s both ease;
  -moz-animation: backSlideIn 1s both ease;
  animation: backSlideIn 1s both ease;
}
/* goDown */
.owl-goDown-out {
  -webkit-animation: scaleToFade .7s ease both;
  -moz-animation: scaleToFade .7s ease both;
  animation: scaleToFade .7s ease both;
}
.owl-goDown-in {
  -webkit-animation: goDown .6s ease both;
  -moz-animation: goDown .6s ease both;
  animation: goDown .6s ease both;
}
/* scaleUp */
.owl-fadeUp-in {
  -webkit-animation: scaleUpFrom .5s ease both;
  -moz-animation: scaleUpFrom .5s ease both;
  animation: scaleUpFrom .5s ease both;
}

.owl-fadeUp-out {
  -webkit-animation: scaleUpTo .5s ease both;
  -moz-animation: scaleUpTo .5s ease both;
  animation: scaleUpTo .5s ease both;
}

.sl1{
	background-image: url(../img/slider.jpg);
}
.sl2{
	background-image: url(../img/slider2.jpg);
}
.sl3{
	background-image: url(../img/slider3.jpg);
}

/* Keyframes */
/*empty*/
@-webkit-keyframes empty {
  0% {opacity: 1}
}
@-moz-keyframes empty {
  0% {opacity: 1}
}
@keyframes empty {
  0% {opacity: 1}
}
@-webkit-keyframes fadeIn {
  0% { opacity:0; }
  100% { opacity:1; }
}
@-moz-keyframes fadeIn {
  0% { opacity:0; }
  100% { opacity:1; }
}
@keyframes fadeIn {
  0% { opacity:0; }
  100% { opacity:1; }
}
@-webkit-keyframes fadeOut {
  0% { opacity:1; }
  100% { opacity:0; }
}
@-moz-keyframes fadeOut {
  0% { opacity:1; }
  100% { opacity:0; }
}
@keyframes fadeOut {
  0% { opacity:1; }
  100% { opacity:0; }
}
@-webkit-keyframes backSlideOut {
  25% { opacity: .5; -webkit-transform: translateZ(-500px); }
  75% { opacity: .5; -webkit-transform: translateZ(-500px) translateX(-200%); }
  100% { opacity: .5; -webkit-transform: translateZ(-500px) translateX(-200%); }
}
@-moz-keyframes backSlideOut {
  25% { opacity: .5; -moz-transform: translateZ(-500px); }
  75% { opacity: .5; -moz-transform: translateZ(-500px) translateX(-200%); }
  100% { opacity: .5; -moz-transform: translateZ(-500px) translateX(-200%); }
}
@keyframes backSlideOut {
  25% { opacity: .5; transform: translateZ(-500px); }
  75% { opacity: .5; transform: translateZ(-500px) translateX(-200%); }
  100% { opacity: .5; transform: translateZ(-500px) translateX(-200%); }
}
@-webkit-keyframes backSlideIn {
  0%, 25% { opacity: .5; -webkit-transform: translateZ(-500px) translateX(200%); }
  75% { opacity: .5; -webkit-transform: translateZ(-500px); }
  100% { opacity: 1; -webkit-transform: translateZ(0) translateX(0); }
}
@-moz-keyframes backSlideIn {
  0%, 25% { opacity: .5; -moz-transform: translateZ(-500px) translateX(200%); }
  75% { opacity: .5; -moz-transform: translateZ(-500px); }
  100% { opacity: 1; -moz-transform: translateZ(0) translateX(0); }
}
@keyframes backSlideIn {
  0%, 25% { opacity: .5; transform: translateZ(-500px) translateX(200%); }
  75% { opacity: .5; transform: translateZ(-500px); }
  100% { opacity: 1; transform: translateZ(0) translateX(0); }
}
@-webkit-keyframes scaleToFade {
  to { opacity: 0; -webkit-transform: scale(.8); }
}
@-moz-keyframes scaleToFade {
  to { opacity: 0; -moz-transform: scale(.8); }
}
@keyframes scaleToFade {
  to { opacity: 0; transform: scale(.8); }
}
@-webkit-keyframes goDown {
  from { -webkit-transform: translateY(-100%); }
}
@-moz-keyframes goDown {
  from { -moz-transform: translateY(-100%); }
}
@keyframes goDown {
  from { transform: translateY(-100%); }
}

@-webkit-keyframes scaleUpFrom {
  from { opacity: 0; -webkit-transform: scale(1.5); }
}
@-moz-keyframes scaleUpFrom {
  from { opacity: 0; -moz-transform: scale(1.5); }
}
@keyframes scaleUpFrom {
  from { opacity: 0; transform: scale(1.5); }
}

@-webkit-keyframes scaleUpTo {
  to { opacity: 0; -webkit-transform: scale(1.5); }
}
@-moz-keyframes scaleUpTo {
  to { opacity: 0; -moz-transform: scale(1.5); }
}
@keyframes scaleUpTo {
  to { opacity: 0; transform: scale(1.5); }
}
/* FIN DEL SLIDER */
/* MAIN */
#cuerpo{
	align-items: stretch;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: auto;
	max-width: 1300px;
	width: 95%;
}
.servicios-home{
	position: relative;
	text-align: left;
	width: 23.5%;
}
h2.enlaces-servicios{
	font-size: 1.2em;
	margin-bottom: .7em;
	text-align: center;
}
.parrafo-servicios{
	margin-bottom: 1.8em;
}
.enlaces-2{
	background: #4c4f56;
	bottom: 0;
	color: #fff;
	padding: .5em 1em;
	position: absolute;
}
.enlaces-2:hover{
	color: rgba(255, 255, 255, .5);
}
/* FIN DEL MAIN */
#mapa{
	margin-top: 3em;
	width: 100%;
}
/* COMPAÑIA */
#cuerpo-2{
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: auto;
	max-width: 1300px;
	width: 95%;
}
.gracias{
	margin-bottom: 1em;
	text-align: center;
	width: 100%;
}
.nosotros-info, .nosotros-img{
	width: 47%;
}
.nosotros-info{
	text-align: left;
}
.nosotros-img img{
	border-radius: 0 1.5em;
}
hr.separacion{
	border: dashed 1px #ccc;
	margin-bottom: 2em;
	margin-top: 2em;
	width: 100%;
}
/* FIN DE LA COMPAÑIA */
/* ELEMENTOS DEL FOOTER */
#contiene-footer{
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	font-size: .9em;
	justify-content: space-between;
	margin: auto;
	max-width: 1300px;
}
#contiene-footer div{
	color: rgba(255, 255, 255, .7);
	margin: 1em;
	text-align: left;
}
#powered{
	background: rgba(0, 0, 0, .3);
	padding: .5em;
	width: 100%;
}
.link-servicios-footer{
	color: rgba(255, 255, 255, .7);
	font-size: .9em;
	font-weight: normal;
	margin-left: .5em;
}
.blanco{
	color: rgba(255, 255, 255, 1);
}
/* FIN DE LOS ELEMENTOS DEL FOOTER */
@media(max-width: 1195px){
	div#logo-footer{
		margin: 1em auto;
		text-align: center;
		width: 95%;
	}
	div#links-footer, div#contacto-footer, div#ubicacion-footer{
		width: 30%;
	}
	div#ubicacion-footer{
		text-align: right;
	}
	div#contacto-footer{
		text-align: center;
	}
}
@media(max-width: 1150px){
	#logo, #tels{
		width: 48%;
	}
	#logo{
		text-align: left;
	}
	#menu{
		margin: auto;
		order: 3;
		z-index: 1;
	}
}
@media(max-width: 1065px){
	div#links-footer{
		width: 45%;
	}
	div#ubicacion-footer{
		text-align: center;
		width: 100%;
	}
	div#contacto-footer{
		text-align: right;
		width: 45%;
	}
	.servicios-home{
		width: 45%;
	}
	.serv1, .serv2{
		margin-bottom: 3em;
	}
}
@media(max-width: 768px){
	#franja-superior{
		display: none;
	}
	#logo-menu-tels{
		padding: 0;
	}
	header label{
		display: block;
		cursor: pointer;
		font-size: 1.3em;
		margin: .5em;
		text-align: right;
	}
	#logo{
		order: 2;
		padding: .5em;
		width: 36%;
	}
	#menu{
		background: #5e76e2;
		order: 1;
		width: 100%;
	}
	#tels{
		order: 3;
		padding: .5em;
		width: 60%;
	}
	.menu{
		left: 0;
		position: absolute;
		top: 2.5em;
		transform: translateX(-100%);
		transition: all 0.3s;
		width: 100%;
	}
	.menu a{
		padding: 0;
		padding-left: .25em;
	}
	.menu ul{
		background: #555;
		flex-direction: column;
	}
	.menu li{
		border-bottom: 1px solid rgba(0, 0, 0, .3);
		padding: .5em;
		text-align: left;
	}
	.menu li:hover{
		background: rgba(0, 0, 0, .3);
	}
	.menu a{
		color: rgba(255, 255, 255, .6);
		font-weight: normal;
	}
	.menu ul li:hover ul{
		display: none;
		position: static;
	}
	.menu a span{
		margin-top: 1em;
		position: absolute;
		right: 2.5em;
	}
	#btn-menu:checked ~ .menu{
		transform: translateX(0%);
	}
	.menu ul ul{
		background: rgba(0, 0, 0, .5);
		margin-top: .5em;
	}
	.menu ul ul a{
		padding: 1em 2em;
	}
	div#logo-footer, div#links-footer, div#contacto-footer{
		text-align: center;
		width: 100%;
	}
	.nosotros-img, .nosotros-info{
		margin: auto;
		width: 100%;
	}
	.nosotros-img{
		margin-bottom: 1.5em;
	}
	.nos3{
		order: 4;
	}
	.nos4{
		order: 3;
	}
}
@media(max-width: 620px){
	#logo, #tels{
		margin: auto;
		text-align: center;
		width: 95%;
	}
	.servicios-home{
		margin: auto;
		width: 95%;
	}
	.serv1, .serv2, .serv3{
		margin-bottom: 3em;
	}
}
@media(max-width: 405px){
	#tels{
		font-size: .76em;
	}
}