@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap');
  body {
      font-family: 'Manrope', sans-serif;
    }
    p{
        font-family: 'Poppins', sans-serif !important;
        text-align: justify;
    }
    
   
    
    /*ESTILOS HVAC*/


/* Aseguramos que el ícono de check tenga el tamaño y color correctos */
.check-icon i {
  font-size: 1.25rem; /* Ajusta el tamaño del ícono */
  color: orange; /* Color naranja para el ícono */
}

/* Estiliza el texto */
h5 {
  font-size: 1.125rem; /* Ajusta el tamaño de la fuente del título */
  font-weight: bold;
}

p {
  font-size: 1rem;
  color: #6c757d; /* Color gris para el texto */
  margin-bottom: 0;
}
/*DFGDGDGDGF*/
    
    .trapezoide {
  padding-top: 15px;
  padding-bottom: 15px;
  background: #1b5080;
  display: flex;
  align-items: center;
  text-align: center !important;
  justify-content: center;
  clip-path: polygon(0 0, 100% 0%, 95% 100%, 0% 100%); 
  overflow: hidden;
}
  .nav-link {
      font-weight: bold !important;
      color: black !important;
      margin-right: 20px !important;
      font-family: 'Manrope', sans-serif !important;
  }
  .hero {
  position: relative;
  width: 100%;
  height: 100vh; /* ocupa toda la pantalla */
  overflow: hidden;
  max-height: 750px;
}
.hero2 {
  position: relative;
  width: 100%;
  height: 700px; /* ocupa toda la altura de la pantalla */
  display: flex;
  justify-content: center; /* centra horizontal */
  align-items: center;     /* centra vertical */
  text-align: center;      /* centra el texto dentro del div */
  overflow: hidden;
}

.img-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 700px;
  max-height: 700px;
  object-fit: cover;  /* Hace que la imagen se adapte */
  z-index: -2;        /* Envía la imagen al fondo */
}
/* Overlay oscuro */
.hero2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
   background: rgba(0, 0, 0, 0.5); /* negro con 50% de opacidad */
  z-index: -1; /* queda entre la imagen y el texto */
}

.hero-content2 {
 
  z-index: 1;
  color: #fff;
  text-align: center;
}
  
.video-bg {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  
  object-fit: cover;  /* hace que el video llene la sección */
  transform: translate(-50%, -50%);
  z-index: -1;        /* queda detrás del contenido */
}

.hero .contenido {
  position: relative;
  z-index: 1;
  color: #fff;
  text-align: center;
  padding-top: 40vh;
}
  .nav-link:hover {
      font-weight: bold !important;
      color: white !important;
      background-color: #1b5080 !important;
      
  }
    /* Estilos extra para imitar la web original */
   .btn-azul_cot {
  background-color: #1b5080;  /* azul de fondo */
  padding: 20px;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  cursor: pointer;
  display: inline-block;
  transition: transform 0.2s ease;
  
}
.btn-azul_cot a, .btn-azul a{
    color: white;
    text-decoration: none;
}

.btn-azul{
  background-color: #1b5080;  /* azul de fondo */
  padding: 20px;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  cursor: pointer;
  display: inline-block;
  transition: transform 0.2s ease;
  border: 1px solid #1b5080;
}

.btn-azul h1,
.btn-azul h2,
.btn-azul h3,
.btn-azul h4,
.btn-azul h5 {
  color: white;
  text-decoration: none;
}

.icon-box{
     box-shadow: 5px 5px 15px rgba(0,0,0,0.3); /* desplazamiento-x, desplazamiento-y, difuminado, color */
     margin: 3px;
}

/* SOBRE ISL INGENIERIA */
.seccion-isl {
      padding: 60px 0;
      position: relative;
    }
    .seccion-isl h5,
    .experiencia h5{
      font-weight: bold;
      color: #1a3c61;
    }
    .seccion-isl p {
      font-size: 1rem;
      color: #333;
    }
    
    /* Estilo imágenes superpuestas */
    .imagenes {
      position: relative;
    }
    .imagenes img {
      border: 3px solid #ddd;
      border-radius: 5px;
    }
    
    .img1 {
      position: absolute;
      width: 250px;
      z-index: 1;
      left: 40px;
    }
    .img2 {
      position: relative;
      top: 40px;
      width: 400px;
      left: 165px;
      z-index: 2;
    }
   
/* ============================ */
/* animación de vibración */
@keyframes shake {
  0% { transform: translateX(0); }
  25% { transform: translateX(-4px); }
  50% { transform: translateX(4px); }
  75% { transform: translateX(-4px); }
  100% { transform: translateX(0); }
}

.btn-azul_cot:hover {
  animation: shake 0.4s ease-in-out;
}
.btn-azul:hover {
  animation: shake 0.4s ease-in-out;
}
.btn-cotizar:hover {
  animation: shake 0.4s ease-in-out;
}


    .row{
        margin-left: 0px !important;
        margin-right: 0px !important;
        padding-left: 0px !important;
        padding-right: 0px !important;
        width: 100% !important;
    }
    .topbar {
      background-color: #141422;
      color: #fff;
      font-size: 14px;
    }
    .topbar a {
      color: #fff;
      text-decoration: none;
      margin-left: 5px;
    }
    .navbar {
      background: #fff;
      box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    }
    .hero {
      background: url('https://www.islingenieria.com/wp-content/uploads/2023/11/isl-banner.jpg') no-repeat center center/cover;
      height: 80vh;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #fff;
      text-align: center;
      position: relative;
    }
    .hero::before {
      content: "";
      position: absolute;
      top:0; left:0; right:0; bottom:0;
      background: rgba(0,0,0,0.5);
    }
    .hero-content {
      position: relative;
      z-index: 1;
    }
    .btn-cotizar {
      background-color: #ff6600;
      color: #fff;
      font-weight: bold;
    }
    .why-us {
      padding: 60px 20px;
    }
    .why-us h2 {
      margin-bottom: 40px;
      text-align: center;
      font-weight: bold;
    }
    .icon-box {
      text-align: center;
      padding: 20px;
    }
    .icon-box i {
      font-size: 40px;
      color: #003366;
      margin-bottom: 15px;
    }
    .div_center{
    display: flex;
    align-items: center;   /* Centra verticalmente */
    justify-content: center; /* Centra horizontalmente */
    padding-top:15px;
    padding-bottom: 5px;
    }
    
    .div_cente>p{
        font-family: 'Poppins',sans-serif !important;
        
        
    }
    .list-unstyled{
        font-weight: bold;
    }
   

.trapezoide img {
  width: 45% !important;
  object-fit: cover; /* imagen adaptada */
}
.tit_lin2 {
  color: #1f4c75;
  display: inline-flex;   /* alinea span + texto */
  align-items: center;    /* centra verticalmente */
  gap: 10px;              /* espacio entre líneas y texto */
}

.lines {
  display: flex;
  flex-direction: column; /* apila las líneas */
  gap: 4px;               /* separación entre cada línea */
}

.lines span {
  width: 20px;
  height: 3px;
  background-color: #1f4c75;
  border-radius: 2px;
  display: block;
}

.tit_lin {
  
  color: #1f4c75; /* azul similar */
  position: relative;
   display: inline-block; /* clave */
  padding-left: 25px; /* espacio para las líneas */
}
.tit_lin::before,
.tit_lin::after {
  content: "";
  position: absolute;
  left: 0;
  width: 20px;   /* largo de las líneas */
  height: 3px;   /* grosor */
  background-color: #1f4c75;
  border-radius: 2px;
}

.tit_lin::before {
  top: 14px;  /* primera línea */
}

.tit_lin::after {
  top: 7px; /* segunda línea */
}

 /* ESTILOS PARALLAX */
    .parallax-section {
      position: relative;
      background: url("../re_vid/IMAGEN_FONDO_PARALLAX.png") no-repeat center center/cover;
      background-attachment: fixed; /* Aquí se queda estática */
      padding: 60px 20px;
      color: white;
      text-align: center;
      z-index: 1;
    }
    .parallax-section .overlay {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0,0,0,0.6); /* oscurece: cambia 0.5 → más o menos */
      z-index: -1; /* para que no tape el texto */
    }
    h2 {
      font-size: 2rem;
      margin-bottom: 40px;
    }

    .servicios {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
      gap: 20px;
      max-width: 1200px;
      margin: auto;
    }

    .card {
      background: #fff;
      border-radius: 10px;
      box-shadow: 0 4px 8px rgba(0,0,0,0.2);
      padding: 20px;
      text-align: center;
      color: #000;
      transition: transform 0.3s;
    }

    .card:hover {
      transform: translateY(-5px);
    }

    .card img {
      width: 190px;
      height: 190px;
      object-fit: cover;
      border-radius: 50%;
      margin-bottom: 15px;
      margin-left: auto;
      margin-right: auto;
    }

    .cta {
      margin-top: 40px;
      background: linear-gradient(rgba(27, 80, 128, 0.4), rgba(27, 80, 128, 0.4)),url("../re_vid/IMG_COTIZAR.png") no-repeat center center/cover;
      /*background: linear-gradient(to right, #1f4c75, #3a7bd5);*/
      padding: 20px;
      border-radius: 10px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      width: 100%;
      margin-left: auto;
      margin-right: auto;
      color: white;
    }

    .cta button {
      background: white;
      color: #1f4c75;
      border: none;
      padding: 12px 24px;
      border-radius: 8px;
      cursor: pointer;
      font-weight: bold;
      transition: background 0.3s;
    }

    .cta button:hover {
      background: #f0f0f0;
    }
    
  /*ESTILOS NUESTRA EXPERIENCIA*/  
    .experiencia {
  padding: 60px 10%;
  background: #fff;
}

.contenedor {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 40px;
}

.columna {
  flex: 1;
}

.imagen img {
  max-width: 100%;
  height: auto;
}

.subtitulo {
  color: #1b5080;
  font-size: 14px;
  margin-bottom: 10px;
  font-weight: bold;
}

.texto h2 {
  font-size: 28px;
  margin-bottom: 15px;
  font-weight: 700;
}

.texto p {
  color: #555;
  margin-bottom: 20px;
}

.titulo-barra {
  font-weight: bold;
  margin: 10px 0 5px;
}

.barra {
  background: #f1f1f1;
  border-radius: 4px;
  height: 45px;
  overflow: hidden;
  margin-bottom: 15px;
}

.progreso {
  background: #1b5080;
  color: #fff;
  height: 100%;
  line-height: 45px;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
}

.acciones {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-top: 20px;
}

.btn {
  background: #1b5080;
  color: #fff;
  padding: 12px 25px;
  border-radius: 6px;
  text-decoration: none;
  font-weight: bold;
  transition: 0.3s;
}

.btn:hover {
  background: #154067;
}

.telefono {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #000;
  margin-left:50px;
}

.telefono i {
  font-size: 24px;
  color: #000;
}

/*ESTILOS SLIDER*/
.swiper {
  width: 100%;
  max-width: 900px;
  height: 500px;
  margin: auto;
}

.swiper-slide {
  display: flex;
  justify-content: center;
  align-items: center;
}

.swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 12px;
}


.contacto{
    
}



.contacto {
       display: flex;          /* Activa flexbox */
  justify-content: center;/* Centra horizontalmente */
  /*align-items: center;*/    /* Centra verticalmente (si tienen altura) */
  gap: 20px;              /* Espacio entre cajas */
  background: white;
    }

    .card2 {
      background: #f3f1f2;
      padding: 20px;
      padding-top: 35px;
      padding-bottom: 35px;
      text-align: center;
      color: #000;
      transition: transform 0.3s;
      width: 250px;
      margin-top: -40px;
      z-index: 1;
    }


/* CINTA ROJA */
.bg-red {
  background: #e53935; /* rojo intenso */
  min-height: 250px; /* puedes ajustar */
}

/* Si quieres superponer imagen con filtro */
.image-left img {
  object-fit: cover;
  height: 100%;
}
  
  
/*FOOTER*/  
.footer {
      padding: 40px 20px;
      color: #333;
    }
    .logo-text {
      font-size: 1.2rem;
      font-weight: bold;
      color: #2471A3;
    }
    .section-title2 {
      font-weight: 700;
      margin-bottom: 1rem;
    }
    .footer a {
      text-decoration: none;
      color: #333;
    }
    .footer a:hover {
      color: #007bff;
    }
    .footer li::before {
      content: "» ";
      color: #1b5180;
      font-weight: bold;
    }
    .icon {
      margin-right: 5px;
      color: #007bff;
    }
    
    
  /* Botón flotante de WhatsApp */
.btn-whatsapp {
  position: fixed;
  bottom: 20px;   /* separación desde abajo */
  right: 20px;    /* separación desde la derecha */
  width: 60px;
  height: 60px;
  background-color: #25d366;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 8px rgba(0,0,0,0.3);
  z-index: 1000;
  transition: transform 0.3s ease;
}

.btn-whatsapp:hover {
  transform: scale(1.1);
}

.btn-whatsapp img {
  width: 45px;
  height: 45px;
}
/*EQUIPO PROFESIONAL*/
 .team-icon {
      font-size: 80px;
      color: #1d4e89; /* azul */
      margin-bottom: 15px;
    }
    .stat-icon {
      font-size: 40px;
      color: #d62828; /* rojo */
      margin-bottom: 10px;
    }
    .section-title2 {
      text-transform: uppercase;
      font-size: 14px;
      font-weight: bold;
      color: #1d4e89;
      letter-spacing: 1px;
    }



@media (max-width: 767px) {
  .ocult {
    display: none;
  }
  .new{
      width: 100% !important;
      height: 250px !important;
      padding-bottom: 10px;
  }
  .imagenes {
    position: relative;
     width: 100%;
      height: auto !important;
      padding-bottom: 10px;
}
 .img2{
     display: none;
 }
 .nos_img1 {
     position: relative;
      left: 0px;
      height: auto !important;
    width: 100% !important;
    }
    .nos_img2{
     display: none;
 }
 .img1 {
     position: relative;
      margin-left: 0px;
    width: 100% !important;
    height: auto;
    }
    .seccion-isl{
     margin-bottom: 10px;   
    }
 .footer_blanco{
     text-align: center !important;
 }
 

  .part_02{
      display: none !important;
  }
  .part_01{
      display: none !important;
  }
  
  .nav-link {
      
      color: white !important;
  }
  .navbar{
      background: #141422!important;
      color: white;
  } 
  .navbar-toggler {
        border:  1px solid white !important;
    }
  .navbar-toggler-icon {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'><path stroke='%23ffffff' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/></svg>") !important;
}
  
  
    
}
    