/*--------------------------------------------------------------------- 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: #767676;
     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: 10px;
}

.navigation.navbar-dark .navbar-nav .nav-link {
     padding: 0px 20px;
     color: #fff;
     font-size: 25px;
     line-height: 20px;
     text-transform: uppercase;
}

.navigation.navbar-dark .navbar-nav .nav-link:focus,
.navigation.navbar-dark .navbar-nav .nav-link:hover {
     color: #000;
}

.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: #000;
}

.navbar-expand-md .navbar-nav {
     padding-right: 10px;
}

.header_information {
     background-color: #00aeef;
     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: -10px;
     right: 0;
}

.header_information::before {
     width: 84px;
     height: 98px;
     background: url();
     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: #ffffff;
     padding: 30px 0px;
     /* Añadir estilos para asegurar que el contenido sea visible */
     color: #000; /* Cambiar color de texto a negro para asegurar visibilidad */
 }
 
 .logo a {
     font-size: 34px; /* Aumentar tamaño del texto para mejorar visibilidad */
     font-weight: bold;
     text-transform: uppercase;
     color: #000; /* Cambiar color de texto a negro para asegurar visibilidad */
     line-height: 1.5; /* Ajustar altura de línea para mejorar legibilidad */
 }
 
 .logo img {
     max-width: 120px; /* Ajustar el ancho máximo de la imagen del logo */
     height: auto; /* Mantener la proporción de la imagen */
     display: block; /* Asegurar que la imagen se muestre correctamente */
     margin: 0 auto; /* Centrar la imagen dentro de su contenedor */
 } 

/** banner section **/

.relative {
     position: absolute;
     top: 56%;
     transform: translateY(-44%);
     padding: 0;
     bottom: auto;
}

.banner_main {
     position: relative;
}

.carousel-indicators .active {
     background: #00aeef;
}

.carousel-indicators li {
     width: 20px;
     height: 20px;
     background: #00489b;
     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: #08091e;
     font-size: 65px;
     line-height: 80px;
     padding-bottom: 35px;
     font-weight: bold;
}

.carousel-caption span {
     color: #6dbcf1;
     font-size: 50px;
     line-height: 50px;
     font-weight: 500;
     padding-bottom: 20px;
}

.carousel-caption a {
     font-size: 17px;
     background-color: #00aeef;
     color: #00a2ff;
     font-weight: 500;
     padding: 13px 0px;
     width: 100%;
     max-width: 190px;
     text-align: center;
     display: inline-block;
     transition: ease-in all 0.3s;
     margin-top: 50px;
     border-radius: 30px;
}

.carousel-caption a:hover {
     background-color: #000;
     color: #fff;
     transition: ease-in all 0.3s;
}


/** 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: #00a8e7;
     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: #7a7a7a;
     padding: 8px 0px;
     width: 100%;
     max-width: 190px;
     text-align: center;
     display: inline-block;
     border-radius: 30px;
     border: #00aaea solid 3px;
     transition: ease-in all 0.3s;
}

.read_more i {
     padding-left: 10px;
}

.read_more:hover {
     background: #00aaea;
     color: #fff !important;
     transition: ease-in all 0.3s;
}


/** about section **/

.about {
     background: url(../images/ab_bg.png);
     background-repeat: no-repeat;
     background-size: 100% 100%;
     padding: 90px 0;
}

.about .titlepage {
     text-align: left;
     padding: 0;
}

.about .titlepage p {
     color: #292e39;
     font-size: 17px;
     line-height: 35px;
     font-weight: 500;
     padding: 20px 0px 35px 0px;
}

.about_img figure {
     margin: 0;
}

.about_img figure img {
     width: 100%;
}

/** end about section **/
/** clients section **/

.clients {
     margin-top: 0px;
     padding-top: 0px;
     background: #ffffff;                /*url(../images/fondo1.jpg);*/
     background-repeat: no-repeat;
     /*background-size: 100px 200px; /* Ajusta la imagen de fondo para cubrir todo el área */
     background-position: center; /* Centra la imagen de fondo */
 }
 
/* Estilo para el encabezado principal dentro de la clase .titlepage */
.clients .titlepage h2 {
     color: #000000; /* Color blanco para el encabezado de nivel 2 */
     text-align: center; /* Centra el texto del encabezado */
     margin-bottom: 5px; /* Espacio debajo del encabezado */
 }
 
 /* Estilo para el encabezado de nivel 3 dentro de la clase .titlepage */
 .clients .titlepage h3 {
     text-align: center; /* Centra el texto del encabezado */
     color: #000f24; /* Color blanco para el encabezado */
     font-size: 28px; /* Tamaño de fuente ajustado */
     margin-bottom: 5px; /* Espacio debajo del encabezado */
     border-radius: 8px; /* Bordes redondeados */
     padding: 10px; /* Espacio interno */
     background: rgba(0, 0, 0, 0.3); /* Fondo oscuro con opacidad */
 }
 
 /* Estilo para la clase .titlepage en general */
 .titlepage {
     color: #ffffff; /* Color blanco para todo el texto dentro de .titlepage */
     font-size: 18px; /* Tamaño de fuente ajustado para mejor legibilidad */
     background: rgba(2, 169, 247, 0.5); /* Fondo azul claro con opacidad */
     padding: 5px; /* Espacio interno */
     border-radius: 8px; /* Bordes redondeados más suaves */
     box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Sombra suave para mayor profundidad */
     max-width: 1000px; /* Limita el ancho para mejor presentación */
     margin: 0 auto; /* Centra el contenedor en su contenedor padre */
 }
 
 /* Estilo para los elementos <strong> dentro de .titlepage */
 .titlepage strong {
     display: block; /* Hace que <strong> sea un bloque para mejor control */
     font-size: 20px; /* Tamaño de fuente ajustado */
     color: #000000; /* Color negro para resaltar el texto */
     margin-bottom: 0px; /* Espacio debajo del texto en negrita */
 }
 
 /* Estilo para los párrafos dentro de .titlepage */
 .titlepage p {
     line-height: 1.6; /* Mejora la legibilidad del texto */
     margin: 0 0 0px 0; /* Espacio abajo de los párrafos ajustado, sin espacio arriba */
     margin-bottom: 0px;
 } 

.clients_box {
     text-align: center;
     color: #000000;
     background: rgba(91, 157, 243, 0.5); /* Fondo blanco con 50% de opacidad */
     padding: 50px 15px;
     border-radius: 15px;
     position: relative;
}

.clients_box p {
     font-size: 17px;
     line-height: 35px;
}

.clients_box::after {
     position: absolute;
     content: ""; 
     width: 42px;
     height: 67px;
     bottom: -65px;
     background: url();
     background-repeat: no-repeat;
}

.jonu {
     padding-top: 72px;
     text-align: center;
}

.jonu h3 {
     padding: 0px 0px 0px 0px;
     color: #ffffff;
     font-size: 25px;
}

.jonu strong {
     display: block;
     color: #00aeef;
     font-size: 17px;
     padding-bottom: 50px;
}


/** end clients section **/


/** contact section **/

.contact {
     background: #042431;
     margin-top: 90px;
     padding: 90px 0;
}

.contact .titlepage h2 {
     color: #fff;
}

.main_form .contactus {
     border: inherit;
     margin-bottom: 0px;
     width: 100%;
     height: 60px;
     background: transparent;
     color: #f9fcfd;
     font-size: 18px;
     font-weight: normal;
     border-bottom: #fff solid 1px;
}

.main_form .send_btn {
     font-size: 17px;
     transition: ease-in all 0.5s;
     background-color: transparent;
     text-transform: uppercase;
     font-weight: 500;
     border: #00aeef solid 3px;
     color: #f9fcfd;
     padding: 8px 0px;
     margin: 0 auto;
     max-width: 180px;
     width: 100%;
     display: block;
     border-radius: 30px;
     margin-top: 0px;
}

.main_form .send_btn:hover {
     background-color: #00aeef;
     transition: ease-in all 0.5s;
     color: #000000;
}

#request *::placeholder {
     color: #f9fcfd;
     opacity: 1;
}


/** end contact section **/


/** footer **/

.footer {
     background: #042431;
     text-align: center;
     padding-top: 20px; /* Ajusta el espacio superior según sea necesario */
     padding-bottom: 20px; /* Ajusta el espacio inferior según sea necesario */
  }
  
  .social-icons {
     color: #ffffff; /* Color del texto */
     font-size: 24px; /* Tamaño del texto */
  }
  
  .social-icons .social-links {
     margin-top: 10px; /* Espacio entre el texto y los iconos */
  }
  
  .social-icons a {
     color: #ffffff; /* Color blanco */
     font-size: 24px; /* Tamaño del icono */
     margin-right: 10px; /* Espacio entre los iconos (opcional) */
  }
  
  .social-icons a:hover {
     color: #cccccc; /* Cambia de color al pasar el mouse (opcional) */
  }
  
  .footer h3 {
     color: #fff;
     font-weight: 500;
     font-size: 17px;
     line-height: 20px;
     text-align: center; /* Centra el texto */
     margin-bottom: 10px; /* Espacio inferior del texto */
  }

.footer_form {
     display: flex;
     border-bottom: #4d636c solid 1px;
     align-items: center;
     justify-content: center;
}

ul.cont li {
     color: #8a9397;
     font-size: 17px;
     line-height: 32px;
     text-align: left;
}

.copyright {
     margin-top: 0px;
     padding: 20px 0px;
     background-color: #00aeef;
}

.copyright p {
     color: #fff;
     font-size: 18px;
     font-weight: 300;
     line-height: 22px;
     text-align: center;
}

.copyright a {
     color: #fff;
}

.copyright a:hover {
     color: #000;
}


/** end footer **/


/** inner page css **/

.margin_to90 .footer {
     margin-top: 10px;
}

.ourwork {
     margin: 0px 0 60px 0;
     display: flex;
     justify-content: center;
     align-items: center;
     flex-wrap: wrap;
  }
  
  .our_box {
     width: 380px; /* Ajusta el ancho según sea necesario */
     height: 280px; /* Ajusta la altura según sea necesario */
     margin-bottom: 0px;
  }
  
  .image-card {
     position: relative;
     width: 100%;
     height: 100%;
     perspective: 1000px;
  }
  
  .image-front,
  .image-back {
     position: absolute;
     width: 100%;
     height: 100%;
     backface-visibility: hidden;
     transition: transform 0.6s;
     display: flex;
     flex-direction: column;
     justify-content: center;
     align-items: center;
     text-align: center;
  }
  
  .image-front {
     transform: rotateY(0deg);
     background-color: #ffffff; /* Color de fondo opcional */
  }
  
  .image-back {
     transform: rotateY(180deg);
     background-color: #f3f3f3; /* Color de fondo opcional */
  }
  
  .image-card:hover .image-front {
     transform: rotateY(180deg);
  }
  
  .image-card:hover .image-back {
     transform: rotateY(0deg);
  }
  
  .image-card p {
     margin: 10px;
  }
  
  /* Contenedor del botón para centrarlo */
.button-container {
    text-align: center;
    margin-top: 20px; /* Ajusta el espacio encima del botón si es necesario */
}

/* Estilos del botón */
.whatsapp-button {
    display: inline-block;
    padding: 10px 20px;
    font-size: 16px;
    color: #fff;
    background-color: #25D366;
    border: 2px solid #25D366; /* Añade un borde del mismo color que el fondo */
    border-radius: 50px; /* Hace que el botón sea redondeado */
    cursor: pointer;
    text-decoration: none;
    transition: background-color 0.3s, border-color 0.3s; /* Transición suave para hover */
}

.whatsapp-button:hover {
    background-color: #128C7E; /* Color de fondo cuando se pasa el ratón */
    border-color: #128C7E; /* Color del borde cuando se pasa el ratón */
}

/* Estilo general para los enlaces de contacto */
.subtitle {
     text-decoration: none; /* Quita el subrayado de los enlaces */
     color: #ebdfdf; /* Cambia el color del texto a negro */
     display: block; /* Asegura que el enlace se muestre como bloque */
     margin-bottom: 10px; /* Espacio debajo de cada enlace */
     font-size: 16px; /* Tamaño de fuente general */
 }
 
 /* Estilo para los iconos dentro de los enlaces */
 .subtitle i {
     margin-right: 3px; /* Espacio entre el icono y el texto */
     color: #f3eeee; /* Color de los iconos */
 }
 
 /* Estilo para los enlaces dentro de correos electrónicos */
 .subtitle a {
     color: #3e76a3; /* Cambia el color del texto de los enlaces de correo a negro */
     text-decoration: none; /* Quita el subrayado de los enlaces */
 }
 
 .subtitle a:hover {
     text-decoration: underline; /* Subrayado al pasar el ratón */
 }
 .titlepage p {
     text-align: center;
     color: #3f3e3e; /* Color del texto */
     margin-bottom: 20px;
 }


 
