* {
    margin: 0;
    padding: 0;
}

html {
    height: 100%;
    box-sizing: border-box;
}

body {
    height: 100%;
    /*font: 1.2em sans-serif;*/
    /*font-family:serif;*/
    
}

a{
  box-shadow: none;
  text-decoration: none;
}

h1, h2, h3, h4, h5, h6 {
  margin-block-start: .5rem;
  margin-block-end: 1rem;
  font-family: inherit;
  font-weight: 500;
  line-height: 1.2;
  color: inherit;
}

h1{
	font-size: 2.5rem;
	color: #fafafa;
}

h2{
	font-family: "Montserrat", Sans-serif;
    font-size: 44px;
    font-weight: 600;
    color: #fafafa;
}

@media (max-width: 576px) { 
	h2{
		font-size:28px;
	}

}

h3{
	font-family: "Montserrat", Sans-serif;
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.33em;
    color: #fff;
}

h4{
  font-family: "Montserrat", Sans-serif;
  font-size: 1rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: rgba(255, 255, 255, .87);
}

h6{
  font-family: "Nunito",Sans-serif;
  font-size: 1em;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 4px;
  color: #fff;
}

li,ol,ul{
	margin-block-start: 0;
  margin-block-end: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  color:#071332;
}



.roboto-slab-font {
  font-family: "Roboto Slab", serif;
  font-optical-sizing: auto;
  font-weight: 100;
  font-style: normal;
}

.montserrat-font {
  font-family: "Montserrat", serif;
  font-optical-sizing: auto;
  font-weight: 100;
  font-style: normal;
}

/******************************************************************************
* CARRUSEL
******************************************************************************/

/*	
 .carousel-item {
    height: 400px;
  }
  */
  /*
  .carousel-item .half {
    height: 100%;
  }
  */
	/* Small devices (landscape phones, 576px and up)*/
	@media (min-width: 576px) { 
		
	}

	
  .carousel-text {
    /*display: flex;*/
    justify-content: center;
    /*align-items: center;*/
    text-align: center;
    background-color: #FFF;
    border-right: 2px solid #001844;
    padding: 20px;
  }

  .carousel-text p{
    text-align: left;
  }

  .carousel-image {
    background-size: cover;
    background-position: center;
  }

/****************************************************
* NAVBAR
*****************************************************/
.navbar{
	
    background-color: #FFF !important;
    border-bottom: 2px solid #000;
    padding-bottom: 0 !important;
	padding-top:0px;
	padding-bottom:10px;
	margin:0 !important;
}

.navbar-contact{
	margin:0;
	background-color: #000;
  background-image: url('../img/carbon-fiber.jpg');
  background-repeat: no-repeat;
  background-size: cover;

	/*border-bottom: 3px solid #00c4cc;*/
}

.navbar-container{
    padding-left: 0 !important;
    padding-right: 0 !important;
    /*background-color: #303030;*/
    background: #000;
    background: linear-gradient(0deg,rgba(0, 0, 0, 1) 0%, rgba(48, 48, 48, 1) 5%, rgba(64, 64, 64, 1) 95%, rgba(112, 112, 112, 1) 100%);
}

.navbar-brand{
    padding-bottom: 0 !important;
}

.navbar-brand img{
	height:80px;
	margin:0px 15px;
}
@media (max-width: 576px) { 
	.navbar-brand img{
		height:50px;
	}

}

.navbar-toggler i{
	color:#FFD43B;
	text-shadow: #FFD43BAA 0 0 8px;
}

.navbar-toggler{
	margin-right:20px;
}
.navbar-toggler:hover, .navbar-toggler:active, .navbar-toggler:visited {
	border:1px solid #f3b129 ;
	box-shadow: 0px 0px 6px #FFD43BAA;
	margin-right:18px;
	
}

.navbar-collapse{
    padding-right: 0.5rem !important;
}

.nav-link{
    color: #C0C0C0 !important;
	margin-left:25px;
	font-family: "Monserrat",sans-serif;
	font-size: 17px;
	font-weight: 600;
	text-transform: uppercase;
	
}
.nav-link:hover,.nav-link:active,.nav-link:visited{
  color: #F0F0F0 !important;
}


@media (max-width: 990px) { 
	.nav-link{
		margin-left:20px;
	}
}

.dropdown-nav {
    margin-top:2px;
    border-radius: 0;
    border-width: 0;
    /*border-bottom: 2px solid #001844;*/
}

.dropdown-item-title {
    color:#C0c0c0;
}

.dropdown-item-title a{
	text-decoration:none;
	color:#C0C0C0;
}

/******************************************************************************
* CONTENIDO
******************************************************************************/

main.container{
	min-height:600px !important;
}

.contenido p{
  text-align: justify !important;
  font-family:1.1rem ;
}
.contenido h3{
  font-size: 1.3rem !important;
}
.contenido {
  font-size: 1.1rem !important;
}

.img-producto {
	box-shadow: 5px 5px 5px #999;
}

.resaltado {
	font-family: 1.3rem;
	font-style:italic;
}

.element-container{
	min-height: 25vh;
	align-items: flex-start;
	display: flex;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}


@media (max-width: 1024px) {
 .element-container {
    max-width: 1024px;
  }
}

.element-container {
  color: #071332;
  font-family: "Montserrat",Sans-serif;
  font-weight: 400;
}
.element-container h4{
	color: #071332;
}


.bg-contenido{
  background-attachment: fixed;
  background-image: url("../img/detallado_completo1.jpeg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  box-shadow: inset 0 0 0 1000px rgba(0,0,0,.75);
  color: white !important;
}

.bg-contenido-solid{
  background-attachment: fixed;
  background-image: url("../img/detallado_completo1.jpeg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  box-shadow: inset 0 0 0 1000px rgba(0,0,0,.96);
  color: white !important;
}

.bg-contenido-h{
	position: relative;
  background-image: url("../img/carousel/169-scaled-1-1.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  /*background-attachment: fixed;
  background-image: url("../img/background_md.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  box-shadow: inset 0 0 0 1000px linear-gradient(135deg,#00c4cc 0%,#0a1a44 55%);
  color: white;*/
  color:white !important;
}

.bg-contenido-g{
	position: relative;
  background-image: url("../img/carousel/169-scaled-1-1.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  color:white !important;
  
}

.bg-contenido-h-overlay{
  /*inset: 0;
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background-color: transparent;
  background-image: linear-gradient(135deg,#1a212d 0%,#4471b6 55%);
  opacity: .94;
  transition: background 0s,border-radius .3s,opacity 0s;*/
}

.bg-contenido-g-overlay{
  inset: 0;
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background-color: transparent;
  background-image: linear-gradient(135deg,#7394c8 0%,#4471b6 55%);
  opacity: .94;
  transition: background 0s,border-radius .3s,opacity 0s;
}


.bg-blue{
	background-color: rgba(7,19,50,1);
}

.wrapper{
	margin:10vh;
}

.elemento-figura{
	direction: ltr;
  left: 0;
  line-height: 0;
  overflow: hidden;
  position: absolute;
  width: 100%;
}

.elemento-figura-top{
	top: -1px;direction: ltr;
  left: 0;
  line-height: 0;
  overflow: hidden;
  position: absolute;
  width: 100%;
}

.elemento-wraper-video{
	aspect-ratio: .5625;
}

.elemento-wraper-video video{
	background-color: #000;
  border: none;
  display: flex;
  height: 100%;
  width: 100%;
}

.elemento-video{
	object-fit: cover;
line-height: 1;
  margin: 0;
  max-width: 100%;
}

.dark-title{
	color:#071332 !important;
}
/*.bg-contenido::before{
	background-color: #071332;   
}

.e-container{
  border-block-end-width: 0px;
  border-block-start-width: 0px;
  border-color: initial;
  border-inline-end-width: 0px;
  border-inline-start-width: 0px;
  border-radius: 0;
  border-style: initial;
  content: '';
  display: block;
  height: max(100% + 0px + 0px,100%);
  left: calc(0px - 0px);
  mix-blend-mode: initial;
  opacity: .94;
  position: absolute;
  top: calc(0px - 0px);
  transition: 0.3s;
  width: max(100% + 0px + 0px, 100%);
}*/
/****************************************************
* SOCIAL ICONS
****************************************************/
/* Estilo para los iconos circulares */
  .social-icon {
    width: 40px;
    height: 40px;
    line-height: 40px;
    border-radius: 50%;
    background-color: #667286;
    text-align: center;
    font-size: 18px;
    color: #FFF;
    margin: 5px 10px 5px 10px;
    transition: all 0.3s ease;
    box-shadow: 1px 0px 10px #000000CC ;
  }
  
  @media (max-width: 576px) { 
	.social-icon {
		width:35px;
		height:35px;
		line-height:35px;
		font-size:14px;
		margin: 3px 8px 3px 8px;
	}

  }

  .social-icon:hover {
    background-color: #333;
    color: #fff;
  }

  .facebook:hover{
    background-color: #1877F2;
    color: #fff;
  }
  .instagram:hover{
    background-color: #C13584;
    color: #fff;
  }

  .tiktok:hover{
    background-color: #000;
    color: #FFF;
  }
  .phone:hover{
	background-color: #0099dd;
    color: #FFF;
  }  

  .whatsapp:hover{
    background-color: #25D366;
    color: #FFF;
  }
	
  .btn-phone {
	background-color: #0099dd;
    color: #FFF;
	border-radius: 50px;
  }
  .btn-whatsapp{
    
	background-color: #25D366 !important;
	border-color:#25D366 !important;
  padding:5px;
	border-radius: 50px;
  }
  
  .btn-whatsapp:hover{
    background-color: #25D366 !important;
	border-color:#25D366 !important;
	
  }

  .btn-info-phy{
	color: #FFF !important;
	background-color: #4470b6 !important;
	border-color: #4470b6 !important;
  border-radius: 30px 30px;
  }
  
  .btn-info-phy:hover{
	  background-color: #071332 !important;
	border-color: #071332 !important;
  }
	
  .mail:hover{
    background-color: #50D9FF;
    color: #FFF;
	
  }
  
  .gmaps:hover{
    background-color: #ea4335;
    color: #FFF;
  }
		
		
	.social-btn{
		height: 40px;
		line-height: 40px;
		border-radius: 20px 20px;
		background-color: #4471b6;
		text-align: center;
		font-size: 18px;
		color: #fff;
		margin: 5px 10px 5px 10px;
		transition: all 0.3s ease;
		padding-left: 15px;
		padding-right: 15px;
	}
	
	.social-btn:hover {
		background-color: #333;
		color: #fff;	
	}
	
	.social-btn-phone:hover {
		background-color: #4471b6;
	}
  /* Estilo para la barra de navegación fija */
  .navbar {
    position: sticky;
    top: 0;
    z-index: 1030;
  }

  .navbar-nav .dropdown-menu {
    background-color: #333;

  }
  /****************************************************************************
  * FOOTER
  ****************************************************************************/

  .footer {
    
	background-color: #303030;
	background: #303030;
	background: linear-gradient(0deg,rgba(0, 0, 0, 1) 0%, rgba(48, 48, 48, 1) 3%, rgba(64, 64, 64, 1) 97%, rgba(112, 112, 112, 1) 100%);
    min-height: 250px;
    /*position: fixed;
    left: 0;
    bottom: 0;*/
    color: white;
    text-align: center;
  }
  
  .footer a{
	  text-decoration:none;
  }

  .social-footer{
    background-color: #1b223f;
  }
  
  .powered-by{
    text-decoration: none;
  }


/******************************************************************************
* CONTACTO
******************************************************************************/
  .contact-list{
	  list-style:none;  
  }
  
  ul.contact-list-item{
	  list-style-type:none;
	  margin:0;
	  padding:0;
  }
  
  .contact-list-item{
	  padding-bottom: calc(14px/2);
	  align-items: center;
	  display: flex;
	  font-size: inherit;
	  list-style-type: none;
  }
  
  .contact-list-item > a {
	  font-family: "Montserrat",Sans-serif;
	  font-size: .875rem;
      line-height: 1.5em;
  }
  
  .contact-list-item a {
	  align-items: center;
	  display: flex;
	  font-size: inherit;
  }
  
  .contact-list-item a:hover {
	  color:rgba(255,255,255,1) !important;
  }

  .contact-list-item-icon{

	  padding-right: 16px;
	  display: flex;
	  position: relative;
    top: 0px;
  }
  
  .contact-list-item-icon i, .contact-dir-icon i {
	    color: #f3b129;
      transition: color .3s;
	    height: 18px;
      width: 18px;
      font-size: 18px;
	  
  }
  
  .contact-list-item-text, .contact-dir-text{
	    color: rgba(255,255,255,.8);
      transition: color .3s;
	    align-self: center;
      padding-inline-start: 5px;
      font-size: 18px;
	  
  }
  .container-contact-form{
	  background-color:#222;
	  
  }

  .container-contact-form label, .container-contact-form p{
	  color:#fafafa;
  }
  
  .btn-formulario{
	  
	  background-color: #1a2f74;
	  border-color: #1a2f74;
  }
  
  .btn-formulario:hover{
	  background-color: #1a2f74;
	  border-color: #1a2f74;
  }
  
/******************************************************************** 
* CARDS
********************************************************************/

.card{
	border: none;
	transition: all 500ms cubic-bezier(0.19, 1, 0.22, 1);
	overflow:hidden;
	background-color: #071332;
	min-height:450px;
	border-radius:0px;
	
	@media (max-width: 768px) {
		min-height:350px;
	}

	@media (max-width: 420px) {
		min-height:350px;
	}

	&.card-has-bg{
		transition: all 500ms cubic-bezier(0.19, 1, 0.22, 1);
		background-size:120%;
		background-repeat:no-repeat;
		background-position: center center;
  
		&:before{
			content: '';
			position: absolute;
			top: 0;
			right: 0;
			bottom: 0;
			left: 0;
			background: inherit;
			-webkit-filter: grayscale(1);
			-moz-filter: grayscale(100%);
			-ms-filter: grayscale(100%);
			-o-filter: grayscale(100%);
			filter: grayscale(100%);
		}

		&:hover{
			/*transform: scale(0.98);
			box-shadow: 0 0 5px -2px rgba(0,0,0,0.3);
			background-size:130%;*/
			transition: all 500ms cubic-bezier(0.19, 1, 0.22, 1);

			.card-img-overlay{
				transition: all 800ms cubic-bezier(0.19, 1, 0.22, 1);
				
				/*background: rgb(255,186,33);
				background: linear-gradient(0deg, rgba(255,186,33,0.5) 0%, rgba(255,186,33,1) 100%);
				*/
				background: #2c93f5;
				
			}
		}
	}
	.card-footer{
		background: none;
		border-top: none;
		
		.media{
			img{
				border:solid 3px rgba(255,255,255,0.3);
			}
		}
	}

	.card-title{
		font-weight:800
	}

	.card-meta{
		color:rgba(0,0,0,0.3);
		text-transform:uppercase;
		font-weight:500;
		letter-spacing:2px;
	}

	.card-body{ 
	   transition: all 500ms cubic-bezier(0.19, 1, 0.22, 1);
	}

	&:hover {
		

		.card-body{
			margin-top:30px;
			transition: all 800ms cubic-bezier(0.19, 1, 0.22, 1);
		}
		cursor: pointer;
		transition: all 800ms cubic-bezier(0.19, 1, 0.22, 1);
	}

	.card-img-overlay {
		transition: all 800ms cubic-bezier(0.19, 1, 0.22, 1);
		/*background: #2c93f5;*/
		background-color: #071332;		
		/*background: rgb(255,186,33);*/
		/*background: linear-gradient(0deg, rgba(255,186,33,0.3785889355742297) 0%, rgba(255,186,33,1) 100%);*/
	}
	
	
}

.card-icon-img{
	font-size:2em;
	color:#2c93f5 !important;
}

.card-title{
  font-family: "Montserrat",Sans-serif;
  font-size: 1.2em;
  font-weight: 700;
  text-transform: uppercase;
  text-align:center;
  letter-spacing: 2.5px;
  color: var(--e-global-color-54ec8dc);
}

.card-text-content{
  text-align:justify !important;
}


.img-nosotros{
	border-radius: 25px 25px;
}

.nosotros-nombre b{
	font-weight:600;
	color: #00c4cc;
}

.nosotros-nombre small{
	color: #071332;
}


.fa-li i{
	color: #071332;
}

.nosotros-semblanza{
	color: #071332;
	font-size:16px;
}

.nosotros-semblanza > ul > li{
	padding-bottom:5px;
		
}

/*******************************************************************
* SERVICIOS
*******************************************************************/
.servicios-card h3{
  font-family: "Montserrat",Sans-serif;
  font-size: 1.25rem !important;
  font-weight: 600 !important;
  line-height: 1.4em !important;
  color:#CCC !important;
}

.servicios-card h4{
	color:#CCC !important;
}

.servicios-card p{
	color:#CCC !important;
	text-align:justify;
}

.card-servicio-contenido{
  position: relative;
  height:160px;	
}

.card-servicio-icon{
	position: relative;
	height:100px;	
}

.card-info-titulo{
	position: relative;
	height:60px;	
}

@media (max-width: 576px) {
	.card-servicio-contenido{
		height:100px;
	}	
	
}

.card-info-boton{
  position: absolute;
  bottom: 0;
 
}
.servicios-icon i{
	position:relative;
	vertical-align:middle;
	text-align:center;
	color: #182f73;
    transition: color .3s;
	font-size:35px;
	height: 50px;
    width: 50px;
	transition: all .3s;
}

.seccion-servicios-icon{
	
	height:150px;
	background-color:#CCC;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	padding:0;
}

.seccion-servicios-icon .shade{
	width:100%;
	height:100%;
	z-index:99;
	margin:0;
	padding:0;
	background:linear-gradient(0deg,rgba(33, 37, 41, 1) 0%, rgba(0, 0, 0, 0) 10%);
}

.servicios-icon i:hover{
	font-size:40px;
	color: #071332;
}

.articulo{
  color: #333;
}

.articulo ul li{
  color: #333;
}

.articulo .fa-li i{
  color: #4470b6 !important;
}

.section-overview {
	background-color: #111;
}


	.cl-blue {
		color:#40A4F5;
		/*text-shadow:0px 0px 6px #40A4F5AA;*/
	}

	.btn-info-yellow {
		padding:0px;
		color: #333 !important;
		background-color: #FFD43B !important;
		border-color: #f3b129 !important;
		border-radius: 50% 50%;
		font-size:45px;
		vertical-align: middle;
		width:48px;
		height:48px;
		box-shadow: 0px 0px 6px #FFD43BAA;
	}
	
	.btn-info-yellow:hover {
		box-shadow: 0px 0px 10px #FFD43BCC;
	}
	
	.btn-info-yellow .fa-solid.fa-circle-info {
		position: relative;
		margin: 0;
		top: -10px;
		left: 0px;
	}
	
	.dropdown-toggle::after{
		border-top-color: #40A4F5;
	}
	

/*****************************************************************
* OPINIONES
******************************************************************/

.carousel-control-next-icon {
  		background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23DDD'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e") !important;
	}
	.carousel-control-prev-icon {
		background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23DDD'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e");
 
	}
	
	.opinion-text{
		color:#ABABAB;
	}
	
	.fa-quote-left, .fa-quote-right{
		color:#40A4F5 !important;
		
	}
	.texto {
		text-align:justify;
		font-size:16px;color:#ABABAB!important;
	}
	