/*--------------------------------------------------------------------- File Name: responsive.css ---------------------------------------------------------------------*/


/*--------------------------------------------------------------------- File Name: style.css ---------------------------------------------------------------------*/


/*--------------------------------------------------------------------- import Fonts ---------------------------------------------------------------------*/

@import url('https://fonts.googleapis.com/css?family=Rajdhani:300,400,500,600,700');
@import url('https://fonts.googleapis.com/css?family=Poppins:100,100i,200,200i,300,300i,400,400i,500,500i,600,600i,700,700i,800,800i,900,900i');
@import url('https://fonts.googleapis.com/css?family=Raleway:100,400,600,700,900&display=swap');

/*****---------------------------------------- 1) font-family: 'Rajdhani', sans-serif;
 2) font-family: 'Poppins', sans-serif;
 ----------------------------------------*****/


/*--------------------------------------------------------------------- import Files ---------------------------------------------------------------------*/

@import url(animate.min.css);
@import url(normalize.css);
@import url(icomoon.css);
@import url(font-awesome.min.css);
@import url(meanmenu.css);
@import url(owl.carousel.min.css);
@import url(swiper.min.css);
@import url(slick.css);
@import url(jquery.fancybox.min.css);
@import url(jquery-ui.css);
@import url(nice-select.css);

/*--------------------------------------------------------------------- skeleton ---------------------------------------------------------------------*/

* {
     box-sizing: border-box !important;
}

html {
     scroll-behavior: smooth;
}

body {
     color: #666666;
     font-size: 14px;
     font-family: 'Poppins', sans-serif;
     line-height: 1.80857;
     font-weight: normal;
}

a {
     color: #1f1f1f;
     text-decoration: none !important;
     outline: none !important;
     -webkit-transition: all .3s ease-in-out;
     -moz-transition: all .3s ease-in-out;
     -ms-transition: all .3s ease-in-out;
     -o-transition: all .3s ease-in-out;
     transition: all .3s ease-in-out;
}

h1,
h2,
h3,
h4,
h5,
h6 {
     letter-spacing: 0;
     font-weight: normal;
     position: relative;
     padding: 0 0 10px 0;
     font-weight: normal;
     line-height: normal;
     color: #111111;
     margin: 0
}

h1 {
     font-size: 24px;
}

h2 {
     font-size: 22px;
}

h3 {
     font-size: 18px;
}

h4 {
     font-size: 16px
}

h5 {
     font-size: 14px
}

h6 {
     font-size: 13px
}

*,
*::after,
*::before {
     -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
     box-sizing: border-box;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
     color: #212121;
     text-decoration: none!important;
     opacity: 1
}

button:focus {
     outline: none;
}

ul,
li,
ol {
     margin: 0px;
     padding: 0px;
     list-style: none;
}

p {
     margin: 0px;
     font-weight: 500;
     font-size: 15px;
     line-height: 24px;
}

a {
     color: #222222;
     text-decoration: none;
     outline: none !important;
}

a,
.btn {
     text-decoration: none !important;
     outline: none !important;
     -webkit-transition: all .3s ease-in-out;
     -moz-transition: all .3s ease-in-out;
     -ms-transition: all .3s ease-in-out;
     -o-transition: all .3s ease-in-out;
     transition: all .3s ease-in-out;
}

img {
     max-width: 100%;
     height: auto;
}

 :focus {
     outline: 0;
}

.btn-custom {
     margin-top: 20px;
     background-color: transparent !important;
     border: 2px solid #ddd;
     padding: 12px 40px;
     font-size: 16px;
}

.lead {
     font-size: 18px;
     line-height: 30px;
     color: #767999E9;
     margin: 0;
     padding: 0;
}

.form-control:focus {
     border-color: #ffffff !important;
     box-shadow: 0 0 0 .2rem rgba(255, 255, 255, .25);
}

.navbar-form input {
     border: none !important;
}

.badge {
     font-weight: 500;
}

blockquote {
     margin: 20px 0 20px;
     padding: 30px;
}

button {
     border: 0;
     margin: 0;
     padding: 0;
     cursor: pointer;
}

.full {
     float: left;
     width: 100%;
}

.layout_padding {
     padding-top: 90px;
     padding-bottom: 90px;
}

.layout_padding_2 {
     padding-top: 75px;
     padding-bottom: 75px;
}

.light_silver {
     background: #f9f9f9;
}

.theme_bg {
     background: #38c8a8;
}

.margin_top_30 {
     margin-top: 30px !important;
}

.full {
     width: 100%;
     float: left;
     margin: 0;
     padding: 0;
}


/**-- heading section --**/


/*---------------------------- preloader area ----------------------------*/

.loader_bg {
     position: fixed;
     z-index: 9999999;
     background: #fff;
     width: 100%;
     height: 100%;
}

.loader {
     height: 100%;
     width: 100%;
     position: absolute;
     left: 0;
     top: 0;
     display: flex;
     justify-content: center;
     align-items: center;
}

.loader img {
     width: 280px;
}


/*-- navigation--*/

.navigation.navbar {
     float: right;
     padding: 25px;
}

.navigation.navbar-dark .navbar-nav .nav-link {
     padding: 0px 20px;
     color: #ffffff;
     font-size: 16px;
     line-height: 20px;
     text-transform: uppercase;
}

.navigation.navbar-dark .navbar-nav .nav-link:focus,
.navigation.navbar-dark .navbar-nav .nav-link:hover {
     color: #999E9C;
}

.navigation.navbar-dark .navbar-nav .active>.nav-link,
.navigation.navbar-dark .navbar-nav .nav-link.active,
.navigation.navbar-dark .navbar-nav .nav-link.show,
.navigation.navbar-dark .navbar-nav .show>.nav-link {
     color: #999E9C;
}

.navbar-expand-md .navbar-nav {
     padding-right: 10px;
}

.header_information {
     background-color: #BC252C;
     padding: 0 0;
     padding-top: 0px;
     padding-top: 0px;
     margin-top: 0;
     margin-right: 0;
     margin-bottom: 0;
     position: absolute;
     width: 100%;
     height: 98px;
     margin-top: -20px;
     right: 0;
}

.header_information::before {
     width: 84px;
     height: 98px;
     background: url(../images/top_arrow1.png);
     background-repeat: repeat;
     display: block;
     content: "";
     position: absolute;
     top: 0;
     left: 0px;
     background-repeat: no-repeat;
}

.sign_btn {
     padding-left: 50px;
}

.sign_btn a {
     background-color: #fff;
     display: inline-block;
     padding: 7px 35px;
     border-radius: 20px;
     color: #292e39;
     font-size: 17px;
}

.sign_btn a:hover {
     color: #fff;
     background: #000;
}


/*-- header area --*/


/*--------------------------------------------------------------------- top banner area ---------------------------------------------------------------------*/


/*--------------------------------------------------------------------- layout new css ---------------------------------------------------------------------*/

.header {
     width: 100%;
     background: #fff; 
}

.header_information{
     padding-top: 20px;
}

.logo{
     
     padding-left: 40px;
     width: 400px;
}

.logo a {
     font-size:36px;
     font-weight: bold;
     text-transform: uppercase;
     color: #fff;
     line-height: 40px;
}


/** banner section **/

.relative {
     position: absolute;
     top: 50%;
     transform: translateY(-44%);
     padding: 0;
     bottom: auto;
}

.banner_main {
     position: relative;
}

.carousel-indicators .active {
     background: #BC252C;
}

.carousel-indicators li {
     width: 20px;
     height: 20px;
     background: #fafcfd;
     border-radius: 20px;
}

.carousel-control-next-icon,
.carousel-control-prev-icon {
     display: none;
}

.carousel-indicators {
     bottom: 50px;
}

.carousel-item img {
     width: 100%;
}

.carousel-caption h1 {
     color: #BC252C;
     font-size: 65px;
     line-height: 80px;
     padding-bottom: 35px;
     font-weight: bolder;
}

.carousel-caption span {
     color: #606160;
     font-size: 60px;
     line-height: 50px;
     font-weight: 500;
     padding-bottom: 20px;
     font-weight:600;
}

.carousel-caption a {
     font-size: 17px;
     background-color: #fff;
     color: #000000;
     font-weight: 500;
     padding: 13px 0px;
     width: 100%;
     max-width: 190px;
     text-align: center;
     display: inline-block;
     transition: ease-in all 0.5s;
     margin-top: 50px;
     border-radius: 30px;
}

.carousel-caption a:hover {
     background-color: #BC252C;
     color: #fff;
     transition: ease-in all 0.5s;
}


/** banner section **/

.titlepage {
     text-align: center;
     padding-bottom: 60px;
}

.titlepage h2 {
     font-size: 45px;
     color: #0b0503;
     line-height: 50px;
     font-weight: bold;
     padding: 0;
}

.titlepage span {
     background: #BC252C;
     display: block;
     height: 10px;
     width: 90px;
}

.d_flex {
     display: flex;
     align-items: center;
     flex-wrap: wrap;
}

.read_more {
     font-size: 17px;
     background-color: transparent;
     color: #999E9C;
     padding: 8px 0px;
     width: 100%;
     max-width: 190px;
     text-align: center;
     display: inline-block;
     border-radius: 30px;
     border: #BC252C solid 3px;
     transition: ease-in all 0.5s;
}

.read_more i {
     padding-left: 10px;
}

.read_more:hover {
     background: #999E9C;
     color: #fff !important;
     transition: ease-in all 0.5s;
}


/** about section **/

.about {
     background: #fff;
     background-repeat: no-repeat;
     background-size: 100% 100%;
     padding: 90px 0;
}

.about .titlepage {
     
     text-align: justify;
     padding: 0;
}

.about .titlepage p {
     color: #292e39;
     font-size: 16px;
     line-height: 25px;
     font-weight: 500;
     padding: 20px 0px 35px 0px;
}

.about_img figure {
     margin: 0;
}

.about_img figure img {
     width: 100%;
}

.read_more1:hover {
     background: #fff;
     color: #BC252C !important;
     transition: ease-in all 0.5s;
}

.read_more1 {
     font-size: 17px;
     background-color: transparent;
     color: #999E9C;
     padding: 8px 0px;
     width: 100%;
     max-width: 190px;
     text-align: center;
     display: inline-block;
     border-radius: 30px;
     border: #BC252C solid 3px;
     transition: ease-in all 0.5s;
}

/** end about section **/


/** mobile section **/

.mobile {
     background: #999E9C;
     background-repeat: no-repeat;
     background-size: 100% 100%;
     padding: 90px 0;
}

.mobile .titlepage {
     text-align: right;
     padding: 0;
}

.mobile .titlepage h2 {
     color: #fff;
}

.mobile .titlepage span {
     margin-left: 58px;
}

.mobile .titlepage p {
     color: #000;
     font-size: 17px;
     line-height: 35px;
     font-weight: 500;
     padding: 20px 0px 35px 0px;
     text-align: justify;
}

.mobile_img figure {
     margin: 0;
}

.mobile_img figure img {
     width: 100%;
}

.read_more {
     font-size: 17px;
     background-color: transparent;
     color: #f5fffb;
     padding: 8px 0px;
     width: 100%;
     max-width: 190px;
     text-align: center;
     display: inline-block;
     border-radius: 30px;
     border: #BC252C solid 3px;
     transition: ease-in all 0.5s;
}

.read_more i {
     padding-left: 10px;
}

.read_more:hover {
     background: #999E9C;
     color: #BC252C !important;
     transition: ease-in all 0.5s;
}


/** mobile section **/


/** clients section **/

.clients {
     margin-top: 20px;
     padding-top: 60px;
}

.clients .titlepage h2 {
     color: #202021;
}

.clients .titlepage span {
     margin-left: 56px;
}


/*Clientes dos*/
/* Estilos para la cuadrícula de logos */
.logo-grid {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); /* Columnas automáticas con ancho mínimo de 100px */
     gap: 50px; /* Espacio entre los logos */
 }
 
 /* Estilos para cada item de logo */
 .logo-item {
     position:relative; /* Permite posicionar elementos hijos relativamente */
     overflow: hidden; /* Oculta cualquier contenido que se desborde */
 }
 
 /* Estilos para los logos */
 .logo-item img {
     display: block;
     width: 150%; /* Aumenta el tamaño de los logos a 150px */
     height: auto; /* Ajusta automáticamente la altura */
     transition: transform 0.3s ease; /* Transición suave al pasar el ratón */
 }
 
 /* Efectos al pasar el ratón sobre los logos */
 .logo-item:hover img {
     transform: scale(1.1); /* Aumenta el tamaño del logo al pasar el ratón */
     opacity: 0.8; /* Reduce la opacidad del logo al pasar el ratón */
 }
 
 
.jonu {
     padding-top: 72px;
     text-align: center;
}

.jonu h3 {
     padding: 0px 0px 0px 0px;
     color: #0b0503;
     font-size: 25px;
}

.jonu strong {
     display: block;
     color: #f3f6f7;
     font-size: 17px;
     padding-bottom: 50px;
}

.mobile_img figure {
     margin: 0;
}

.mobile_img figure img {
     width: 100%;
}

/* Añade estilos adicionales para la sección de Proyectos */
.projects_box {
     text-align: left;
     background: #c6cfcc;
     padding: 30px 15px;
     border-radius: 15px;
     position: relative;
     margin-top: 40px;
 }

 .projects_box h3 {
     padding: 0;
     color: #BC252C;
     text-align: center;
     font-size: 30px;
 }

 .project_image {
     margin-bottom: 20px;
 }

 .project_image img {
     width: 100%;
     border-radius: 10px;
 }
/** end clients section **/


/** contact section **/

.contact {
     background: #999E9C;
     margin-top: 90px;
     padding: 90px 0;
}

.contact .titlepage h2 {
     color: #BC252C;
}

spa1{
     margin-left: 58%;
}
.contacto2{
     float: left;
     margin-right:  50px;
}

.información{
     margin-top: 10px;

}
 .datos li {
     color: #BC252C;
     font-size: 20px;
     line-height: 15px;
     font-weight: 500;
     padding: 10px 0px 10px 70px;
     text-align: right;
 }

 .datos span{
     color: #000;
    
 }

 .rede li{
     color: #000;
 }
/** end contact section **/


/** footer **/



.footer1 {
     margin-top: 20px;
     padding: 15px 0px;
     background-color: #ffffff;
}

.copyright p {
     color: #000;
     font-size: 10px;
     font-weight: 300;
     line-height: 22px;
     text-align: center;
     margin-left: 800px;
}

.copyright a {
     color: #fff;
}

.copyright a:hover {
     color: #000;
}


/** end footer **/


/** inner page css **/

.margin_to90 .footer {
     margin-top: 90px;
}

.ourwork {
     margin: 90px 0 60px 0;
}

.our_box {
     margin-bottom: 30px;
}

.our_box figure {
     margin: 0;
}

.our_box figure img {
     width: 100%;
}

.btn-wsp{
     position:fixed;
     width:60px;
     height:60px;
     line-height: 63px;
     bottom:25px;
     right:25px;
     background:#25d366;
     color:#FFF;
     border-radius:50px;
     text-align:center;
     font-size:35px;
     box-shadow: 0px 1px 10px rgba(0,0,0,0.3);
     z-index:100;
     transition: all 300ms ease;
 }
 .btn-wsp:hover{
     background: #20ba5a;
 }
 @media only screen and (min-width:320px) and (max-width:768px){
     .btn-wsp{
         width:63px;
         height:63px;
         line-height: 66px;
      }
 }

 /** PAG. NOSOTROS **/
.about1 h2{
 color: #BC252C;
 
}
.about1 p{
     text-align: justify;
}
.mision{
     margin-left: 200px;
     margin-top: 10%;
}

.mision span{
     margin-left: 200px;
}
.misionp{
     margin-left: 100px;
     font-size: 18px;
}
.mision_img{
     width: 300px;
     height: 250px;
     margin-right: 40%;
}

.politicas_img{
     width: 400px;
     height: 300px;
     margin-top: 30%;
     margin-left: 20%;
}
.vision1{
     margin-right: 300px;
}


.vision_img{
     width: 400px;
     height: 350px;
     margin-top: 5%;
     margin-left: 10%;
}
.politicas {
     font-size: 18px;
}

.mobile .titlepage .vision {
     color: #fdfdfd;
     font-size: 19px;
     line-height: 35px;
     font-weight: 500;
     padding: 20px 0px 35px 0px;
     text-align: justify;
}

.mobile .titlepage .vision1 {
     text-align: center;
     padding: 0;
     color: #BC252C;
}


    /* Estilos para la ventana emergente */
    .popup {
     display: none;
     position: fixed;
     top: 50%;
     left: 50%;
     transform: translate(-50%, -50%);
     padding: 55px; /* Ajusta el tamaño de la ventana emergente (15% más grande) */
     background-color: #fff;
     box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
     z-index: 1000;
     max-width: 1500px; /* Ajusta el ancho máximo de la ventana emergente (15% más grande) */
     height: 700px; /* Ajusta la altura de la ventana emergente según sea necesario */
     margin: 20px; /* Márgenes para dar espacio alrededor de la ventana emergente */
   }

   .popup-content {
     color: black; /* Color de la letra */
   }

   .close-btn {
     position: absolute;
     top: 10px;
     right: 10px;
     padding: 10px;
     background-color: #BC252C;
     color: #fff;
     border: none;
     border-radius: 30%;
     cursor: pointer;
 }

 .close-btn:hover {
     background-color: #000;
 }
   /* Estilos para la galería */
   .gallery {
     margin-top: 20px;
     text-align: center;
     display: flex; /* Hace que los elementos hijos se muestren en línea (horizontalmente) */
     justify-content: flex-start; /* Alinea los elementos al comienzo del contenedor */
     overflow-x: auto; /* Añade una barra de desplazamiento horizontal si es necesario */
     white-space: nowrap; /* Evita el salto de línea para que las imágenes se muestren en una línea continua */
   }

   
   .gallery img {
     max-width: 350.5px; /* Ajusta el ancho máximo de las imágenes (15% más grande) */
     height: auto;
     border: 1px solid #ddd;
     border-radius: 5px;
     margin: 0 15px; /* Ajusta el margen entre las imágenes según sea necesario */
   }

   /* Estilos para el título */
   .popup-title {
     font-size: 30px; /* Ajusta el tamaño del título según sea necesario (15% más grande) */
     margin-bottom: 10px; /* Márgenes para separar el título del contenido */
     text-align: center;
     color: #BC252C;
     font-weight: bolder;
   }

   .descripcion {
     color: #000000;
     font-size: 17px;
     text-align: center;
   }

   .usos {
     color: #1f1f1f;
     font-size: 15px;
     text-align: left;
     font-weight: bolder;

   }

   

   /* Puedes agregar estilos personalizados según sea necesario */
   ul {
     list-style-type: none; /* Quita el estilo predeterminado de la lista (puntos) */
   }

   li {
     margin-bottom: 10px; /* Ajusta el espacio entre elementos de la lista según sea necesario */
   }

   .checkmark {
     margin-right: 5px; /* Ajusta el espacio entre el chulo y el texto según sea necesario */
     color: #000;
   }

   footer {
     background-color: #BC252C;
     color: #fff;
     padding: 20px;
     display: flex;
     justify-content: space-between;
     align-items: center;
     margin-top: 20px;
 }

 .contacto {
     text-align: left;
     margin-left: 450px;
 }

 .redes {
     text-align: right;
     margin-right: 450px;
 }

 .icon {
     margin-right: 10px;
     color: #999E9C;
 }

 .derechos {
     text-align: center;
     margin-top: 10px;
 }
