.btn-helpdesk {
  background-color: #003174;
  color: #ffffff;
  border-radius: 0px !important;
}

.bg-infofin {
  background-color: #1461ff !important;
}

.bg-001 {
  background-image: url(../images/slider-erp.png);
  background-size: cover;
  background-position: center;
}

.bg-002 {
  background-image: url(../images/slider-grp.png);
  background-size: cover;
  background-position: center;
}

#top {
  /* height: 100vh; */
}

.btn-infofin-asesoria {
  color: white;
  background-color: #003174;
  border-radius: 0px !important;
  height: 60px;
  text-align: center;
  padding-top: 18px;
  font-weight: 500;
  padding: 20px 40px;
}

.btn-infofin-asesoria:hover {
  color: #002155 !important;
  background-color: #ffffff !important;
}

.btn-infofin-asesoria:active {
  color: #002155 !important;
  background-color: #ffffff !important;
}

.banner-azul {
  background-image: url(../images/cintilla.png);
  background-size: cover;
  background-position: center;
  width: 100%;
  text-align: center;

  display: flex;
  justify-content: center;
  align-items: center;
}

.banner-azul2 {
  background-image: url(../images/banner-2.png);
  background-size: cover;
  background-position: center;
  width: 100%;
  text-align: center;

  display: flex;
  justify-content: center;
  align-items: center;
}

.text-infofin-deg {
  /* #1461FF */
  /* #01B4FE */
  background: -webkit-linear-gradient(#1461ff, #01b4fe);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 400;

  /* degradado de letras  */
}

.infofin-section {
  background-color: #f5f8ff;
}

.soluciones-grp {
  background-color: #f0f2f6 !important;
}

.infofin-title {
  font-weight: 800;
  /* Extra bold */
  color: #003174;
  /* Color de texto oscuro */
  margin-bottom: 2rem;
  font-size: 2.5rem;
  /* Ajuste de tamaño para el título principal */
}

/* Contenedor de la Imagen con el efecto de forma */
.image-container {
  position: relative;
  padding-bottom: 60%;
  /* Ratio 4:3 para la imagen */
  height: 0;
  overflow: hidden;
}

.image-container img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ESTILO CLAVE: El efecto curvo azul/blanco */
/* Usamos un pseudo-elemento para crear la forma azul detrás del borde redondeado */
.image-graphic-overlay {
  position: relative;
  width: 100%;
  height: auto;
}

/* NUEVO ESTILO: Empuja la imagen hacia el borde izquierdo de la página en pantallas grandes */
@media (min-width: 992px) {
  .image-graphic-overlay.push-left {
    /* Mueve la imagen a la izquierda para que su borde toque el borde del viewport.
                   Usamos un margen negativo generoso y luego ampliamos su ancho para compensar. */
    margin-left: -9vw;
    width: 60%;
    /* Ajusta el ancho para que la imagen no se vea cortada */
  }
}

/* Contenedor de la imagen y el texto principal para apilamiento en móvil */
@media (min-width: 992px) {
  .main-content-column {
    order: 1;
    /* El texto principal queda primero en escritorio */
  }

  .image-column {
    order: 2;
    /* La imagen principal queda segunda en escritorio (si estuviera a la derecha) */
    /* En este layout la imagen está a la izquierda, así que no hace falta order */
  }
}

.text-blue {
  color: #003174;
}

/* Estilo para los bloques de características (Transporte, Retail) */
.feature-block {
  margin-bottom: 2.5rem;
}

.feature-icon-container {
  width: 40px;
  height: 40px;
  margin-right: 1rem;
  color: #007bff;
  /* Color azul de Bootstrap */
  flex-shrink: 0;
}

.feature-title {
  font-weight: 700;
  color: #003174;
  font-size: 1.25rem;
  margin-bottom: 0.5rem;
}

.feature-description {
  font-size: 0.9rem;
  color: #003174;
}

.feature-list {
  list-style: none;
  padding-left: 0;
  margin-top: 0.75rem;
  color: #003174;
}

.feature-list li {
  position: relative;
  padding-left: 1rem;
  font-size: 0.9rem;
  font-weight: 400;
  color: #003174;
  margin-bottom: 0.3rem;
}

/* Puntos azules para la lista */
.feature-list li::before {
  content: "•";
  color: #003174;
  /* Color del punto */
  font-weight: bold;
  display: inline-block;
  width: 1em;
  margin-left: -1em;
}

.btn-soluciones:hover {
  color: white !important;
  background-color: #003174 !important;
}

.btn-soluciones:active {
  color: white !important;
  background-color: #003174 !important;
}

.btn-demo {
  background-color: #003174;
  padding-bottom: 0px;
  padding-top: 0px;
  padding-left: 1rem;
  padding-right: 1rem;
  height: 55px;
}

.button-prev-ser,
.button-next-ser {
  border: 2px solid #003174;
  border-radius: 5px;
  padding: 0.5rem 1rem;
  margin: 0 5px;
  color: #003174;
}

.text-azul {
  color: #002155;
}

.swiper-slide {
  height: auto;
}

.card {
  border: none;
  border-radius: 12px;
  background: #f5f8fe;
  color: #002155 !important;
}

.card p {
  color: #002155;
}

.certificaciones {
  background-image: url(../images/certificaciones.png);
  /* background: linear-gradient(90deg, #003a70 0%, #0067d5 100%); */
  color: white;
  background-position: center;
  background-size: cover;
}

.badge-img {
  width: 130px;
  height: auto;
  object-fit: contain;
}

@media (max-width: 768px) {
  .badge-img {
    width: 110px;
  }
}

.alianza-logo {
  max-width: 130px;
  width: 100%;
  height: auto;
  opacity: 0.9;
  transition: 0.2s ease-in-out;
}

.alianza-logo:hover {
  opacity: 1;
  transform: scale(1.05);
}

.col-center {
  display: flex;
  align-self: center;
  margin-right: 20px;
}

.text-blue-01 {
  color: #003174;
}

.footer-dark {
  background-color: #031e3a;
  /* azul oscuro como en la imagen */
  color: #ffffff;
  font-size: 15px;
}

.footer-icon {
  font-size: 22px;
  color: #0a4a8a;
  /* tono azul similar al icono mostrado */
}

footer {
  background-image: url(../images/footer-bg.png);
  background-size: 38%;
  background-position: bottom left;
  background-color: #00142f;
  background-repeat: no-repeat;
}

#verticales {
  background-color: #f5f8ff;
  color: #c2c5cb !important;
}

#verticales .title-div h2 {
  font-family: InterMedium;
}

#verticales .verticales-tabs .nav-item {
  margin-right: 10px;
}

#verticales .verticales-tabs .nav-link {
  background-color: transparent;
  text-align: left;
  font-family: InterLight;
  color: #c2c5cb !important;
  border-radius: 0px;
  padding-left: 0;
  border-bottom: 3px solid #c2c5cb;
}

#verticales .verticales-tabs .nav-link.active {
  border-bottom: 3px solid #1461ff;
  color: #003174 !important;
}

#verticales .verticales-tabs .tab-pane p {
  font-family: Inter;
  text-align: justify;
}

#verticales .verticales-tabs .tab-pane p span {
  font-family: InterBold;
}

#verticales .diagrama-div {
  position: relative;
}

#verticales .diagrama-div .apagada {
  visibility: hidden;
  display: none;
}

#verticales .diagrama-div .prendida {
  visibility: visible;
  display: inline;
}

#verticales .fondos img {
  border-radius: 35px;
}

#verticales .imagen-retail {
  width: 94px;
  height: 94px;
  border-radius: 100%;
  position: absolute;
  cursor: pointer;
}

#verticales #imagen1 {
  top: 11.2%;
  right: 37.5%;
}

#verticales #imagen2 {
  top: 11.2%;
  right: 53.4%;
}

#verticales #imagen3 {
  top: 40.7%;
  left: 22.1%;
}

#verticales #imagen4 {
  top: 52.6%;
  left: 22.6%;
}

#verticales #imagen5 {
  top: 63.4%;
  left: 25.7%;
}

#verticales #imagen6 {
  top: 72.7%;
  left: 31.7%;
}

#verticales #imagen7 {
  top: 78.7%;
  left: 39.5%;
}

#verticales #imagen8 {
  top: 72.1%;
  right: 29.4%;
}

#verticales #imagen9 {
  top: 57.9%;
  right: 22.1%;
}

/* Título Principal */
.section-title {
  font-size: 2.5rem;
  font-weight: 700;
  color: #003366;
  /* Azul oscuro */
  margin-bottom: 2.5rem;
}

/* Título del Servicio */
.service-title {
  color: #004d99;
  /* Azul medio */
  font-weight: 700;
  font-size: 1.25rem;
  margin-bottom: 0.5rem;
}

/* Color de Fondo Personalizado (Segundo Servicio) */
.bg-light-blue {
  background-color: #e9f2ff;
}

/* Efecto de Hover (Requiere CSS personalizado) */
.service-item-hover {
  transition: transform 0.3s, box-shadow 0.3s;
}

.service-item-hover:hover {
  transform: translateY(-5px);
  box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.15) !important;
  /* Sombra más pronunciada al hacer hover */
}

/* Aseguramos que la imagen cubra su contenedor en Bootstrap Column */
.img-cover-container {
  /* Fija la altura del contenedor de imagen en móvil para que no desaparezca */
  height: 200px;
}

@media (min-width: 768px) {
  .img-cover-container {
    /* Altura automática en escritorio, usando la altura del texto adyacente */
    height: 100%;
  }
}

.img-fluid-cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
}


.btn-link-infofin {
  background-color: #1461FF;
  color: white;
  padding: 15px;
}

.btn-down {
  background-color: #003174;
  color: white;
  padding: 15px;
}

.form-control,
.form-select {
  height: 50px;
  /* border-radius: 8px; */
  font-size: 15px;
}

textarea.form-control {
  height: auto;
  min-height: 120px;
}

.section-box {
  padding: 20px;
  /* background: #f8f9fa; */
  /* border-radius: 10px; */
  /* margin-bottom: 20px; */
  padding-bottom: 0px;
  /* border: 1px solid #e1e1e1; */
}

.btn-conoce-mas {
  background-color: #003174;
  color: white;
  padding: 12px 20px;
  border-radius: 5px;
}

.btn-conoce-mas:hover {
  background-color: #1461FF;
  color: white;
}
.btn-conoce-mas:active {
  background-color: #1461FF;
  color: white;
}