/*---------------------------------
Author: webthemez.com
All rights reserved, plz donate and remove the back-link form the website.
-----------------------------------*/

body {
font-family: "New cicle fina", Helvetica, Arial, sans-serif;
font-size: 17px;
line-height: 1.42857;
color: #696f6f;
background-color: white;
}
#exito,#fracaso{
    position: absolute;
    margin-top: -350px;
    margin-left: 47%;   
  }
#exampleInputEmail1{
  width: 60%;
  display: inline-block;
}
#navthing{
  display: none;
}
#user, #pw{
  
  width: 80%;
  margin-left: 10%;
  margin-top: 5%;
}
.form-group .btn{
  width: 20%;
  background: #0379CD;
  margin-left: 39%;
}
.form-inline{
  width: 430px;
  float: right;
  height: 40px;
  margin-top: -30px;
}
h4{
color: #FFFFFF;
width: 200px;
height: 60PX;
padding-top: 22px;
background: linear-gradient(to right, rgba(22,80,133,1) 12%, rgba(34,94,152,1) 29%, rgba(55,119,186,1) 59%, rgba(55,119,186,1) 100%);
font: bold 18px/24px "new cicle", "Helvetica Neue", Helvetica, Arial, sans-serif;
line-height: 15px;
text-transform: uppercase;
margin-bottom: 12px;
}
h4 a{
  color: #ffffff;
}
h2{
color: #000000;
font-weight: bold;
margin-bottom:10px;
font-family: new cicle gordita;
}
.horizontal{
  background: #0A4982;
  width: 100%;
  height: 10px;
}
.soluciones {
  text-align: center;
  position:relative;
  width: 80%;
  margin-left: 10%;
}
.soluciones span {
background:#fff;
z-index:100;
position:relative;
padding:15px;
}
.soluciones::after  {
  content: '';
  position: absolute;
  width:100%;
  height:2px;
  left:0px;
  top:50%;
  background: rgb(217, 232, 49);
  z-index:50;
}
.soluciones p {
  border:1px solid #000;
  padding:20px;
}
h3{
font-size: 20px;
color: #696969;
}
a.button {
text-decoration: none;
float: left;
line-height: 54px;
color: white;
}
.btn-prime{
color: white;
background: #0379CD;
}
.btn-prime:hover {
color:#fff;
background:#007BD3;
border-color: #007BD3;
}
.button {
color: white;
background: #0379CD;
height: 58px;
width: 200px;
border: 2px solid #0379CD;
font: 500 17px "New cicle", "Helvetica Neue", Helvetica, Arial, sans-serif;
padding: 0 21px;
-moz-transition: color 0.1s linear, background-color 0.1s linear, border-color 0.1s linear;
-ms-transition: color 0.1s linear, background-color 0.1s linear, border-color 0.1s linear;
-o-transition: color 0.1s linear, background-color 0.1s linear, border-color 0.1s linear;
-webkit-transition: color 0.1s linear, background-color 0.1s linear, border-color 0.1s linear;
transition: color 0.1s linear, background-color 0.1s linear, border-color 0.1s linear;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
border-radius: 5px;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
a.button.button-stripe {
background-color: transparent;
border-color: white;
}
a.button.button-stripe:hover {
color: #222222;
background-color: white;
border-color: white;
} 
a.button.button-stripe {
background-color:transparent;
border-color: white;
}
a.button:hover {
color: white;
}
.button:hover {
background:#1384D5;
border-color: #1384D5;
}
.buttons-wrapper .button-stripe {
margin-left: 4px;
}
.dropdown .btn{
  
  margin-top: 10px;
  margin-left: 10.3%;
  background: linear-gradient(to right, rgba(2,166,81,1) 0%, rgba(10,189,93,1) 51%, rgba(14,130,68,1) 100%);
}
.sr-only{
  background: blue;
}
header .buttons-wrapper {
padding-top: 10px;
}
.side-nav {
position: fixed;
top: 45%;
right: 20px;
z-index: 1030;
}
.side-nav ul.nav-side-nav {
text-align: center;
list-style: none;
margin: 0;
padding-left: 0;
}
.side-nav ul.nav-side-nav > li {
display: block;
line-height: 1.42857;
margin: 0;
padding: 8px 0;
}
.side-nav ul.nav-side-nav > li > a {
display: block;
width: 10px;
height: 10px; 
background: #FFFFFF;
border-radius: 78%;
padding: 7px;
border: 1px solid #5EB920;
}
.mainBanner {
padding-top: 100px;
padding-bottom: 100px;
}
.mainBanner {
min-height: 500px; /* asegura que el header no cambie al cargar contenido */
height: 600px;
padding: 30px 0;
margin-bottom: 0;
color: white;
background:#0D4E86;
background-size: cover;
text-align: center;
background:url(/images/bg.webp) top left repeat;
background-size:cover;
} 	
.mainBanner .img-logo {
display:block;
width: 450px;
height: auto;
margin-top: 10px;
margin-bottom: 70px;
}
.mainBanner h1, .mainBanner .h1 {
margin-top: 150px;
font-size: 35px;
text-align: left;
color: #E9FAFF;
text-transform: uppercase;
}
.mainBanner p {
margin-bottom: 15px;
font-size: 20px;
font-weight: 200;
text-align:left;
color: #DDE3EA;
}
.mainBanner  img.img-iPhone {
position: relative;
bottom: -30px;
}
.mainBanner .btn-app-store {
margin-top: 40px;
}
.mainBanner p {
margin-bottom: 15px;
font-size: 20px;
font-weight: 200;
}
.mainBanner .btn-app-store .btn.btn-lg, .mainBanner .btn-app-store .btn-group-lg > .btn {
padding: 0;
}
.mainBanner .img-iPhone {
display: block;
margin-left: auto;
margin-right: auto;
width: 505px;
height: auto;
}
.highlights {
  background: white;
  text-align: center;
  padding: 100px 0;
}
.highlights .row.row-padding {
  padding-top: 40px;
}
.highlightsCol {
  padding-bottom: 20px;
} 
.highlightsImg.img-margin {
margin-top: 14px;
margin-bottom: 31px;
}
.highlightsImg {
display: block;
margin-left: auto;
margin-right: auto;
width: 120px;
height: 120px;
margin-top: 20px;
}
.ourFeatures {
  background:url(/images/fondo_verde1.webp);
  text-align: center;
  padding: 100px 30px;
}
.ourFeatures  h2, .ourFeatures h3, .ourFeatures p{
color:#fff;
}
.ourFeatures p{
color:#E2FFCF;
}
.ourFeatures .row.row-padding {
  padding-top: 40px;
}
.ourFeatures .img-iPhone {
position: relative;
display: block;
margin-left: auto;
margin-right: auto;
width: 100%;
height: auto;
}
.ourFeatures .btn-prime-border {
background: transparent;
border-width: 2px;
border-style: solid;
border-color: #dc554f;
color: #dc554f;
padding-top: 8px !important;
padding-bottom: 8px !important;
}
.featuresBtm{
margin-top:150px;
margin-bottom:0px;
}
.subscribe {
background: #1F1F1F;
text-align: center;
height: 400px;
padding: 100px 0;
background-size: cover;
margin-top: 50px;
color: #ffffff;
display:block;
}
.subscribe p{
position: absolute;
color: #ffffff;
margin-top: 10px;
display: block;
}
.subscribe h2{
  color: #ffffff;
  margin-top: -30px;
}
.subscribe input{
padding: 20px 10px;
margin-left: 100px;
width: 350px;
}
.subscribe button{
color: white;
background: #0379CD;
margin: 0px;
padding: 10px 20px;
margin-left: -10px;
}
.subscribe-description { 
padding: 40px 0;
}
.subscribe-description p{
  margin-top: 10px;
}
.footer-section {
background: #416096;
text-align: left;
padding: 60px 0;
color: black;
}
.footer-section a {
  color: black; /* Enlaces blancos */
  text-decoration: none; /* Quitar subrayado */
}
.footer-section a:hover {
  color: white; /* Color dorado cuando el enlace se pasa el ratón por encima */
  text-decoration: underline; /* Subrayado en el hover */
}
.addthis_default_style {
text-align: left;
list-style: none;
margin: 0;
padding-left: 0;
}
.addthis_default_style li:first-child {
margin-left: -2px;
}
.addthis_default_style li {
display: inline-block;
line-height: 1.42857;
margin: 0;
padding: 0;
}
.addthis_default_style a {
display: block;
}
.social-icons {
  background: transparent;
  margin-left: auto;
  display: flex;
  justify-content: flex-end;  /* Asegura que los íconos estén alineados a la derecha */
}
.social-icons img {
	width: 75px;
	padding: 0px;
    display: inline-block;}
.simple-content ul li {
font-size: 18px;
line-height: 32px;
font-weight: 300;
margin-bottom: 18px;
list-style:none;
}
.simple-content ul li span {
display: block;
overflow: hidden;
}
.form-group{

  margin-top: 10px;
  margin-left: -200px;  
}
.form-group .btn-primary{
  width: 30%;
}
#fname, #lname, #email, #phone, #message{ 
  margin-left: 70%;
  width: 70%;
}
fieldset #telefono{
  position: absolute;
  width: 40%;
  height: 150px;
  margin-top: 260px;
  margin-left: 40px;
}
legend{
  background: linear-gradient(to right, rgba(22,80,133,1) 12%, rgba(34,94,152,1) 29%, rgba(55,119,186,1) 59%, rgba(55,119,186,1) 100%);
  color: #ffffff;
}
.img-fluid{
  margin-left: 5%;
  width: 90%;
}
.container-fluid{ 
  width: 90%;
  padding: 5%;
  display: block;
}
footer .container{
  background: #CECECE;
  width: 100%;
}
.portfolio-item{
  width: 20%;
  height: 200px;
  margin-top: 10px;
  margin-left: 55px;
  border-width: 2px;
}
.portfolio-item:hover{
  transform: translateY(-15px);
  box-shadow: 0 12px 16px rgba(0,0,0,0.2);
}
.card{ 
  width: 90%;
  padding: 0px, 0px;  
}
.card-body{
  width: 100%;
  height: 65%;
  position: absolute;
  background: linear-gradient(to right, rgba(2,166,81,1) 0%, rgba(10,189,93,1) 51%, rgba(14,130,68,1) 100%);
  margin: 0px, 0px, 0px, 0px;
  margin-left: -5.5%;
  color: #ffffff;
  text-align: center;
}
.card-body h2{
  font-size: 17px;
  color: #ffffff;
  margin-bottom: 2px;
}
.card-img-top{
  width: 85px;
  height: 80px;
  margin-left: 33%;
  margin-top: 5px;
}
.container-fluid img{
  margin-left: 20px;
  margin-top: -20px;
}
.servicios{
  width: 50%;
  margin-top: -20px;
  display: inline-block;
  margin-left: 40px;
  line-height: 20pt;
  position: absolute;  
}
.servicios h2{
  margin-bottom: 0px;
}
.servicios-descripcion{
  background: #0A4982;
  width: 120%;
  margin-top: 10px;
  position: relative;
  padding: 70px;
  margin-left: -10%;
}
.servicios-descripcion p{
  color: #ffffff;
  width: 45%;
  margin-left: 50%;
  margin-top: 2%;  
}
.servicios-descripcion img{
  width: 27%;
  position: absolute;
  margin-top: -15%; 
}
.reproduccion{
  width: 400px;
  margin-top: -260px;
  margin-right: 60%;  
}
.general{
  width: 90%;
  margin-left: 5%;
  margin-top: 5%;
  position: relative;
  margin-bottom: 70px;
}
.general p {
  width: 45%;
  display: inline-block;
  margin-left: 3%;
  margin-top: -20px; /* Reducir este valor para subir más el texto */
  margin-bottom: -20px; /* Agregar este para reducir el espacio debajo del texto */
}
.general ul{
  width: 45%;
  display: inline-block;
  margin-left: 5%;
  margin-top: 5%;
}
.general img{
  position: absolute;
  width: 31%;
  height: 90%;
  display: inline-block;
  margin-left: 40px;
  margin-top: 2%;
}
.general iframe{
  position: absolute;
  width: 40%;
  height: 90%;
  display: inline-block;
  margin-left: 60px;
  margin-top: 4%;
}

.general1{
  width: 90%;
  margin-left: 5%;
  margin-top: 5%;
  position: relative;
  margin-bottom: 70px;
}
.general1 p {
  width: 45%;
  display: inline-block;
  margin-left: 3%;
  margin-top: -20px; /* Reducir este valor para subir más el texto */
  margin-bottom: -20px; /* Agregar este para reducir el espacio debajo del texto */
}

.video-iframe1 {
  position: relative; /* Esto permite mover el iframe sin afectar el flujo del documento */
  left: 730px; /* Ajusta para mover el iframe hacia la derecha */
  top: -250px; /* Ajusta para mover el iframe hacia arriba */
  width: 40%; /* Ajusta el tamaño del iframe */
  height: 300px; /* Ajusta la altura según lo que necesites */
}
.reproduccion2{
  position: absolute;
  width: 35%;
  height: 100%;
  display: inline-block;
  margin-left: 40px;
  margin-top: 2%;
}
  .lines{
    display: inline-block;
    position: absolute;
}
.contacto{
  position: absolute;
  width: 80px;
  display: block;
  margin-top: -30px;
  margin-left: -50%;
}
@font-face{
  font-family: "new cicle fina";
  src:url(../fonts/new_cicle_fina.woff);
}
body{
  font-family: "new cicle fina";
  src:url(../fonts/new_cicle_fina.woff);
}
h1{
  font-family: "new cicle gordita";
  src:url(../fonts/new_cicle_gordita.woff);
}
p{
  font-family: "new cicle fina";
  src:url(../fonts/new_cicle_fina.woff);
  font-size: 16px;
}
div{
  font-family: "new cicle fina";
  src:url(../fonts/new_cicle_fina.woff);
}
h2,h3,h4,h5{
  font-family: "new cicle gordita";
  src:url(../fonts/new_cicle_gordita.woff);
}
@font-face{
  font-family: "new cicle gordita";
  src:url(../fonts/new_cicle_gordita.woff);
}
/* cambios bootstrap v5 110925 */
     .navbar {
  display: flex;
  justify-content: center;   /* Centra todo el contenido dentro del navbar */
  align-items: center;       /* Asegura que todo esté alineado verticalmente */
  width: 100%;
  background-color: #05A805; /* Color verde */
  padding-top: 0;            /* Sin padding extra */
  padding-bottom: 0;
  min-height: 15px;          /* Altura total mínima */
  line-height: 1;            /* Compacta las filas de texto */
}
    /* Asegura que los elementos de la navbar se distribuyan de manera equitativa */
    .navbar-collapse {
  display: flex;
  justify-content: center;   /* centra el contenido */
  width: 100%;
    }
    /* Estilo para las listas en el navbar */
    .navbar-nav {
  display: flex;
  justify-content: space-evenly; /* reparte todo de manera pareja */
  align-items: center;
  width: 100%;
  list-style: none;
  margin: 0;  
  padding-left: 50px; /* 👈 empuja todo el bloque a la derecha */
}
    /* Estilo para los elementos de la lista */
.nav-item {
  flex: 0;                  /* que no se estiren todos iguales */
  text-align: center;
  margin: 0 30px;           /* 👈 separa cada item 30px */
}
    /* Asegura que los enlaces del navbar sean más grandes */
    .nav-link {
      white-space: nowrap;   /* evita saltos de línea */      
      font-size: 1.5rem;  /* Aumenta el tamaño de la fuente en el menú desplegable */
      font-weight: 400;
      text-align: center;
      padding: 10px 20px;
      color: white;  /* Cambia el color del texto a blanco */
    }
    /* Cambia el color al pasar el ratón sobre los elementos */
    .nav-link:hover {
      color: #007bff;
    }
    /* Ajuste para el botón de login */
    .navbar-nav .nav-item.dropdown .dropdown-menu {
      min-width: 250px;
      margin-top: 10px;  /* Agregar margen superior para bajar la barra de navegación */
    }
.dropdown-custom {
  background-color: #05A805; /* Color azul */
}
.dropdown-menu .dropdown-custom form {
  display: flex;
  flex-direction: column; /* Para apilar los elementos verticalmente */
  align-items: center;    /* Centra los botones en el eje horizontal */
  justify-content: center; /* Asegura que los botones estén alineados verticalmente si es necesario */
}
form {
  display: flex;                  /* Usar Flexbox */
  flex-direction: column;         /* Colocar los elementos en columna */
  align-items: center;            /* Centrar los elementos horizontalmente */
  justify-content: center;        /* Centrar los elementos verticalmente */
  width: 100%;                    /* Asegura que el formulario ocupe el 100% del ancho */
  max-width: 150px;               /* Limitar el ancho máximo del formulario */
  margin: 0 auto;                 /* Centra el formulario horizontalmente */
  gap: 1px;                      /* Espacio entre los elementos */
}
/* Estilo para los botones */
.btn-sm-custom {
  font-size: 14px;                /* Tamaño de letra más pequeño */
  padding: 6px 12px;              /* Espaciado interno de los botones */
  border-radius: 5px;             /* Bordes redondeados */
  min-width: 120px;               /* Ancho mínimo de los botones */
  width: auto;                    /* Ancho automático para que los botones no se estiren */
  margin-bottom: 10px;            /* Espacio entre los botones */
}
.form-buttons {
  display: flex;
  flex-direction: column;        /* Apila los botones verticalmente */
  justify-content: center;       /* Centra los botones verticalmente */
  align-items: center;           /* Centra los botones horizontalmente */
  gap: 1px;                     /* Espacio entre los botones */
  width: 10%;                   /* Asegura que los botones ocupen todo el ancho disponible */
  margin: 0 auto;                /* Centra los botones de manera uniforme */
}
/* Mover el dropdown-menu más a la derecha */
.dropdown-menu {
  background-color: #416096;  /* Color de fondo azul */
  right: 0; /* Esto hace que se mueva completamente a la derecha */
  left: auto; /* Asegura que no se despliegue a la izquierda */
  position: absolute; /* Cambiar la posición a 'absolute' para controlarlo mejor */
  margin-right: -70px; /* Puedes ajustar este valor según lo que necesites */
}
/* Estilo para los elementos dentro del menú */
.dropdown-item {
  color: white;  /* Mantener el color blanco del texto */
  font-size: 1.2rem;  /* Aumenta el tamaño de la fuente */
  font-weight: 700;  /* Hace la fuente más gruesa */
}
/* Cambiar el fondo y mantener el color blanco al pasar el ratón */
.dropdown-item:hover {
  background-color: white;  /* Fondo más oscuro al pasar el ratón */
  color: black;  /* Mantener el color blanco del texto */
}
.form-container {
  display: flex;
  flex-direction: column;    /* Organiza los elementos (inputs y botones) en columna */
  align-items: center;       /* Centra los elementos horizontalmente */
  width: 100%;
  max-width: 300px;          /* Ajusta el ancho máximo del formulario */
}
.form-buttons .btn:hover {
  transform: scale(1.05); /* Aumenta ligeramente el tamaño del botón */
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2); /* Sombra alrededor del botón */
  transition: all 0.3s ease; /* Transición suave para el efecto */
}
/* Estilos adicionales para el "hover" si es necesario */
.form-buttons .btn-primary:hover {
  background-color: #0069d9; /* Cambia el color de fondo en hover */
  border-color: #0062cc;     /* Cambia el color del borde en hover */
}
.form-buttons .btn-secondary:hover {
  background-color: #5a6268; /* Cambia el color de fondo en hover */
  border-color: #545b62;     /* Cambia el color del borde en hover */
}
.nav-item {
  margin-right: 50px;  /* Agregar margen derecho para separar los elementos */
}
.contactos-container {
  display: flex;                      /* Usa Flexbox para organizar los elementos en fila */
  justify-content: space-evenly;       /* Distribuye los elementos de manera equitativa */
  align-items: flex-start;             /* Alinea los elementos al inicio de la fila */
}
.contactos-container div {
  display: flex;                      /* Utiliza flexbox para los elementos internos */
  flex-direction: column;              /* Alinea los elementos (imagen y texto) en columna */
  align-items: center;                 /* Centra los elementos (imagen y texto) en el eje horizontal */
}
.contacto3 {
  width: 140px;        /* más pequeña que los 200px */
  max-width: 100%;     /* nunca se sale del contenedor */
  height: auto;        /* mantiene proporción */
  margin-bottom: 20px; /* menos espacio debajo */             /* Espacio entre la imagen y el texto */
}

.contacto-texto {
  max-width: 300px;                    /* Limita el ancho del texto */
  word-wrap: break-word;               /* Rompe las palabras largas en la siguiente línea */
  white-space: normal;                 /* Permite que el texto se divida en varias líneas */
  text-align: center; 
  padding-top: 200px;                    /* Agrega espacio entre la imagen y el texto */
}
.form-control1 {
    height: 35px; /* Incrementa la altura de los inputs */
    padding: 10px; /* Ajuste de padding para que el texto esté centrado */

  }
@media (max-width: 1200px){
.mainBanner .img-logo{
margin-top:-50px;
margin-bottom: 81px;
}
.mainBanner .img-iPhone {
width: 376px;
}
h4{
  margin-left: 5%;
  width: 85%;
}
.navbar-collapse ul{  
  width: 67%;
  height: 50%;
  margin-left: 2px;
  line-height: 40px;
}
.navbar-collapse ul li{
  font-size: 20px;
  padding: 0;
}
.form-inline{
  width: 300px;
  height: 40px;
  margin-top: auto;
}
#principal{
  width: 90%;
  height: 40%;  
}
.img-iPhone1 {
    max-width: 100%;
    height: auto;
     margin-left: -10px;   /* lo empuja hacia la izquierda */
     margin-top: 0px;   /* súbelo ajustando el valor */
  }
 
}
@media (max-width: 972px) {

  .form-control1
{margin-left: -20px;
width: 40%;}
.dropdown-menu {
      left: 50%;
      transform: translateX(-10%);
      right: auto;
      text-align: center;
    }
.dropdown-menu a{
  margin-left: -20px;
  background: green;
  z-index: 10000;
  opacity: .8;
  width: 70%;
}
.dropdown-menu .dropdown-item{
  width: 200px;
}

  /* Navbar ajustes */
  .navbar-toggler {
    margin-left: 0;
    margin-right: auto;
  }
  .collapse.navbar-collapse {
    text-align: left;
  }
  .navbar-nav {
    margin: 0 !important;
    padding-left: 0 !important;
  }
  .navbar-nav .nav-link {
    text-align: left;
    padding-left: 0.5rem;
  }
  /* Main banner */
  header.mainBanner {
    margin-top: 0px;
    padding-top: 10px;
  }
  .mainBanner {
    min-height: 500px; /* asegura que el header no cambie al cargar contenido */
    height: 633px;
  }
  .mainBanner .img-logo {
    display: block;
    width: 360px;
    height: auto;
    margin-top: -10px;
  }
  .mainBanner h1 {
    font-size: 22px;
    text-align: center;
  }
  .mainBanner p {
    font-size: 16px;
    text-align: center;
  }
  .buttons-wrapper {
    text-align: center;
  }
  /* Highlights / Servicios */
  .highlightsCol {
    flex: 0 0 100%;
    max-width: 100%;
    margin-bottom: 20px;
  }
  .highlightsImg,
  .img-iPhone,
  .contacto3 {
    max-width: 100%;
    height: auto;
  }
  .col-lg-6.col-md-6 {
    padding-left: 1px !important;    /* Asegura que se aplique el padding izquierdo */
    padding-right: 30px !important;   /* Asegura que se aplique el padding derecho */
  }
  .col-md-5 {
    padding-left: 30px !important;    /* Aplica el margen izquierdo en dispositivos móviles */
    padding-right: 30px !important;   /* Aplica el margen derecho en dispositivos móviles */
  }
  /* SECCIÓN #section-2: ancho completo y centrado en móvil */
  #section-2 {
    width: 100vw;
    max-width: 100%;
    margin: 0;
    padding: 0 10px; /* opcional para no tocar bordes */
    box-sizing: border-box;
  }
  #section-2 .container {
    width: 100%;
    max-width: 100%;
    padding: 0;
  }
  #section-2 .col-lg-5,
  #section-2 .col-md-5,
  #section-2 .col-lg-6,
  #section-2 .col-md-6,
  #section-2 .col-md-5.col-md-offset-1,
  #section-2 .col-lg-6.col-md-6.col-md-offset-1 {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    float: none;
    padding-left: 0;
    padding-right: 0;
  }
  #section-2 img,
  #section-2 .features i {
    display: block;
    margin: 0 auto;
    max-width: 100%;
    height: auto;
  }
  #section-2 h2,
  #section-2 h3 {
    text-align: center;
  }
  #section-2 p {
    text-align: justify;
    margin: 0 5px;
  }
  /* Contactos */
  .contactos-container {
    flex-direction: column; /* Cambia la dirección a columna en pantallas pequeñas */
    align-items: flex-start; /* Alinea todo al principio (izquierda) */
    gap: 20px; /* Mantiene el espacio entre los elementos */
    width: 100%; /* Asegura que el contenedor ocupe el 100% del ancho */
    padding: 0; /* Elimina cualquier padding */
    margin: 0; /* Elimina cualquier margen */
  }
  .contactos-container div {
    align-items: flex-start; /* Alinea los divs a la izquierda */
    width: 100%; /* Asegura que los divs ocupen el 100% del ancho */
  }
  .contacto3 {
    width: 60px;
    margin-bottom: 30px;
  }
  .contacto-texto {
    max-width: 100%;
    text-align: left;
    margin: 0;
    padding: 0;
  }
  /* Footer y redes sociales (no se modifica) */
  .footer-copyright {
    text-align: center;
  }
  .social-icons {
    text-align: center;
    margin-top: 10px;
  }
  /* Otros elementos */
  #exito,#fracaso{
    position: absolute;
    margin-top: -380px;
    margin-left: 16%;
  }
  .img-iPhone1 {
    max-width: 100%;
    height: auto;
    margin-left: -5px;
    margin-top: 0px;
  }
  /* termina pagina index */
/* Rastreo Satelital */
/* Opcional: Si deseas agregar un poco de espacio alrededor del contenido */
.container-fluid {
  padding: 20px; /* Esto agrega un poco de espacio alrededor del contenedor */
}
.servicios {
    text-align: center; /* centra el texto */
    margin-bottom: 1rem;
  }
  .servicios h2 {
    font-size: 1.6rem;
    margin-bottom: 0.5rem;
  }
  .servicios p {
    font-size: 1rem;
    margin-bottom: 0;
    padding: 0 0.5rem; /* un pequeño padding para no pegar en los bordes */
  }
/* pagina rastreo satelital */ 
  /* Contenedor de texto largo y video */
  .servicios-descripcion {
    display: flex;
    flex-direction: column;   /* apila texto y video verticalmente */
    align-items: center;      /* centra todo horizontalmente */
    gap: 1.5rem;
    width: 100%;              /* ocupa todo el ancho */
    margin: 0 auto;
    padding: 0;               /* elimina cualquier padding que pueda limitar el ancho */
    box-sizing: border-box;
  }
  /* Texto largo */
  .servicios-descripcion p {
    width: 100%;
    max-width: 100%;          /* ocupa todo el ancho disponible */
    font-size: 1rem;
    line-height: 1.6;
    text-align: justify;      /* justificado */
    margin: 0;                /* elimina márgenes que pueden empujar a la derecha */
    padding: 0 0.5rem;        /* un pequeño margen interno para no pegar en bordes */
  }
  /* Video */
  .servicios-descripcion video.reproduccion {
    width: 95%;               /* ancho más grande */
    max-width: 500px;         /* límite en tablets */
    height: auto;
    border-radius: 6px;
    display: block;
    margin: 0 auto;
  }
  .general {
    display: flex;
    flex-direction: column; /* apila texto e imagen */
    align-items: center;    /* centra todo horizontalmente */
    width: 100%;
    padding: 0 1rem;
    box-sizing: border-box;
  }
  .general p {
    width: 100%;
    max-width: 100%;
    text-align: justify;
    font-size: 1rem;
    line-height: 1.6;
    margin-bottom: 1rem;
  }
  .general img.img-grande {
    display: block !important; /* fuerza que sea visible */
    margin: 0 auto;            /* centra horizontalmente */
    width: 95%;                /* ancho proporcional al móvil */
    max-width: 500px;          /* límite para tablet */
    height: auto;
    position: static;          /* elimina posibles position: absolute previos */
  }
/* termina Rastreo Satelital */
/* Gestion de Flotas */
.imagen-gestion-flotas {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
 .video-contenido {
    margin-left: -20px;         /* Mueve el contenedor 10px hacia la izquierda en móviles también */
    margin-right: 0;            /* Elimina cualquier margen extra a la derecha */
    padding: 0;                 /* Elimina cualquier padding que pueda interferir */
    justify-content: flex-start; /* Alinea el video a la izquierda */
  }
  .reproduccion2 {
    width: 100%;                /* Ajusta el video al 100% del ancho disponible */
    max-width: 100%;            /* Evita que el video sea mayor que el contenedor */
  }
/* termina Gestion de Flotas */
.general1 {
     margin-top: 40px;           /* Aumenta el margen superior también en pantallas móviles */
  }
  .general1 p {
    font-size: 16px;           /* Ajusta el tamaño del texto para que sea legible en móviles */
    line-height: 1.6;          /* Aumenta el espaciado entre líneas para mejor legibilidad */
  }
  .imagen-centro {
    width: 80%;                /* Ajusta la imagen al 80% del contenedor */
    max-width: 300px;          /* Limita el tamaño máximo de la imagen */
    height: auto;              /* Mantiene la relación de aspecto */
    display: block;            /* Hace que la imagen sea un bloque */
    margin: 20px auto 0;       /* Centra la imagen y le da margen superior */
  }
/* Telemetria */
.general2 {
    width: 80%;             /* ocupa todo el ancho */
    max-width: 100%;
    margin: 0 auto;          /* centra el bloque */
    padding: 0 20px;         /* margen interno en ambos lados */
    box-sizing: border-box;  /* incluye el padding en el ancho total */
    text-align: justify;
  }
  .general2 p {
    font-size: 15px;
    line-height: 1.5;
  }

/* termina Telemetria */
/* Rastreo de Personal */
.video-iframe1 {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
/* termina Rastreo de Personal */
/* Contacto */
  .form-control {
    width: 300px !important; /* Los campos ocupan el 100% del ancho disponible */
    height: 45px !important; /* Altura estándar de los campos */
    margin-left: 0 !important; /* Eliminar márgenes innecesarios */
    margin-right: 0 !important;
    padding: 12px; /* Espaciado interno para mayor comodidad */
    box-sizing: border-box !important; /* Asegurarse de que el padding no afecte el ancho total */
    font-size: 1rem; /* Tamaño de fuente adecuado */
  }
 textarea.form-control {
  width: 100%;
  height: 100px !important; /* Utiliza !important para asegurarte de que se aplique */
}
  /* Centrar la imagen en la pantalla */
  .contacto1 {
    max-width: 100% !important; /* Imagen ocupa el 100% del ancho */
    height: auto !important;
    margin-left: auto;
    margin-right: auto;
    display: block;
  }
  .col-md-6 {
    display: flex;
    justify-content: center;  /* Centra el contenido horizontalmente */
    align-items: center;      /* Centra el contenido verticalmente */
    flex-direction: column;   /* Asegura que los elementos se apilen verticalmente */
    padding-left: 0;          /* Elimina cualquier relleno de la izquierda */
    padding-right: 0;         /* Elimina cualquier relleno de la derecha */
    margin-left: 20px !important;  /* Agrega un margen izquierdo de 20px con !important */
}
  #telefono1 {
    margin: 0 auto;          /* Asegura que el div esté centrado */
    text-align: left;        /* Centra el texto dentro del div */
    margin-top: 20px;        /* Mantén el margen superior como está */
  }
  /* Aseguramos que el botón de envío ocupe todo el ancho */
  .btn {
    width: 100% !important;
    margin-top: 10px;
  }
  #exito,#fracaso{
    position: absolute;
    width: 120px;               /* Reducción adicional del tamaño en dispositivos móviles */
    height: auto;
    margin-top: -380px;
    margin-left: -1%; 
    z-index: 9999;  
  }
/* termina Contacto */
} 
@media (max-width: 780px){
.card-img-top{
  margin-left: 35%;
  width: 65px;
  height: 60px;
}
.general p{
  width: 90%;
  margin-bottom: 20px;
  display: block;
}
.dropdown .btn{
  background: linear-gradient(to right, rgba(2,166,81,1) 0%, rgba(10,189,93,1) 51%, rgba(14,130,68,1) 100%);}

form{
  background: linear-gradient(to right, rgba(226,226,226,1) 0%, rgba(219,219,219,1) 14%, rgba(209,209,209,1) 51%, rgba(254,254,254,1) 100%);
 /* Se agrego la linea 1081 Carlos Garza 29/07/2020 */
  position:relative; z-index:1;
  margin-top: 10px;
  width: 90%;
  height: 80%;
}
.general .reproduccion2{
  width: 90%;
  height: 70%;
  font-size: 14px;
  display: block;
  margin-left: 2%;  
}
.subscribe-description p{
  margin-top: 70px;
}
.subscribe input{
padding: 20px 10px;
margin-left: 30px;
width: 350px;
}
.subscribe-form{
  background: transparent;
}
.contacto{
  margin-left: 10px;
}
.subscribe p{
  margin-left: 100px;
}
@media (max-width: 480px){
.mainBanner{
height: 633px;
margin-top: 60px;
}
.mainBanner .img-logo{
margin: 0px;
padding: 0px;
margin-top: -10px;
}
.mainBanner h1, .mainBanner .h1 {
font-size: 26px;
text-align: left;
color: #0D4E86; 
display: inline-block;
} 
.highlights { 
margin-top: -100px !important;
}
.mainBanner img.img-iPhone {
position: relative;
bottom: -30px;
display: none;
}
#exito,#fracaso{
    position: absolute;
    width: 300px;
    margin-top: -380px;
    margin-left: -1%;   
  }
.subscribe {
background: #1F1F1F;
text-align: center;
margin-top: 60px;
padding: 0px 0;
background-size: cover;
color: yellow;
display:block;
}
.form-control
{margin-left: -20px;
width: 40%;}
.btn btn-prime{
margin-top: 550px;}
h4{
  width: 140px;
  margin-left: 27%;
}
.button {
color: white;
background: #0379CD;
height: 48px;
width: 170px;
font: 300 10px;
padding: 0 12px;}
.dropdown-menu a{
  background: green;
  z-index: 10000;
  opacity: .8;
  width: 100px;
  width: 70%;
}
.dropdown-menu .dropdown-item{
  width: 200px;
}
.portfolio-item{

  width: 39%;
  height: 140px;
  margin-top: 20px;
  margin-left: 25px;
  display: inline-block;
  overflow: hidden;
}
.card{
  
  width: 100%;
  padding: 0px;  
}
.card-body{
  width: 100%;
  font-size: 11px;
  margin: 0px, 0px, 0px, 0px;
  margin-left: -11%;
}
.card-body h2{
  margin-top: 4px;
}
.card-body p{
  font-size: 11px;
  margin-top: 2px;
}
.card-img-top{
  margin-left: 24%;
  width: 40%;
  height: 30%;
}
.general{
  width: 95%;
  margin-left: 1%;
  margin-top: 1%;
  position: relative;
}
.general p{
  width: 90%;
  font-size: 14px;
  display: block;
  margin-left: 3%;
  margin-top: 5%;
}
.general img{
  position: relative;
  width: 90%;
  height: 40%;
  display: block;
  margin-left: 20px;
  margin-top: 2%;
  margin-bottom: 40px;
}
.container-fluid img{
  width: 35%;
  margin-left: 30%;
}
.servicios{
  width: 60%;
  margin-left: 10%;
  display: block;
}
 .servicios-descripcion{
  width: 100%;
  margin-top: 170px;
 }
 .servicios-descripcion img{
  position: relative;
  width: 100%;
  margin-top: 20px;
  margin-left: -1px; 
}
 .reproduccion{
  width: 100%;
  margin-top: -50px;
 }
 .reproduccion2{
  width: 90%;
  margin-top: -70px;
  margin-left: 20px;}
.general iframe{
  width: 90%;
  margin-top: -70px;
  margin-left: 20px;}
  #user, #pw{
    margin-top: 1%;}
  .form-horizontal{
    padding-top: 20px;
    }
    .subscribe h2{
      margin-top: 70px;
    }
}