* {

  margin: 0;

  padding: 0;

  box-sizing: border-box;



}



/*scrol*/

html {

  scroll-behavior: smooth;

}



:root {

  --White: #ffffff;

  --Primary: #15244d;

  --VariableColor: #3283c1;

  --base-font-size: 1em;

}



/* body */

body {

  padding: 0;

  font-family: "Poppins", sans-serif !important;

  line-height: 1.5;

  background: var(--Primary) !important;

}

.g-recaptcha {
    margin: 0 auto; /* Centra horizontalmente la div g-recaptcha */
}




/* todos los h2 y su animacion */

h2 {

  color: var(--White, #fff) !important;

  text-align: center;

  font-size: 2.3em !important;

  font-weight: 700;

}



h2 {

  display: -webkit-box;

  display: flex;

  -webkit-box-align: center;

  align-items: center;

  -webkit-box-pack: center;

  justify-content: center;

}



h2 {

  background: 50% 100%/50% 50% no-repeat radial-gradient(ellipse at bottom, #fff, transparent, transparent);

  -webkit-background-clip: text;

  background-clip: text;

  color: transparent;

  font-size: 10vw;

  font-family: "Poppins", sans-serif;

  -webkit-animation: reveal 4000ms ease-in-out forwards 400ms,

    linear infinite 2000ms;

  animation: reveal 4000ms ease-in-out forwards 400ms, linear infinite 2000ms;

}



@-webkit-keyframes reveal {

  80% {

    letter-spacing: 0.375em;

  }



  100% {

    background-size: 200% 200%;

  }

}



@keyframes reveal {

  80% {

    letter-spacing: 0.375em;

  }



  100% {

    background-size: 200% 200%;

  }

}



/*todos los containers*/

.container {

  padding: 4em !important;

  margin-bottom: 5em !important;

}



/*todos los botones - animacion*/

.hero button:hover {

  background-color: var(--Primary) !important;

  border: var(--Primary);

  color: var(--White) !important;



}



.hero button:hover:after {

  -webkit-animation: circle 1.1s ease-in forwards;

}



.contacto button:hover {

  background-color: var(--Primary) !important;

  border: var(--Primary);

  color: var(--White) !important;



}



/* navbar */

.navbar {

  margin-right: 0 !important;

  margin-left: 0 !important;

  width: 100vw !important;

}



.navbar {

  background: var(--White, #fff);

  box-shadow: 0em 0.625em 3.125em 0em rgba(21, 36, 77, 0.67);

}



.navbar-brand {

  padding-left: 6em !important;

}



.navbar-collapse {

  padding-right: 6em !important;

  justify-content: flex-end;

}



.navbar li {

  padding: 0.5em;

  display: inline;

}



.navbar ul li a {

  display: block;

  color: var(--Primary) !important;

  font-size: 1.225em;

  font-weight: 400;

  position: relative;

  overflow: hidden;

  z-index: 1;

}



/* animacion */

.navbar ul li a:hover {

  color: var(--White) !important;

}



.navbar ul li a:after {

  display: block;

  position: absolute;

  margin: 0;

  top: 0;

  bottom: 0;

  left: 0;

  right: 0;

  content: ".";

  color: transparent;

  width: 0.00625em;

  height: v;

  border-radius: 50%;

  background: transparent;

}



.navbar ul li a:hover:after {

  -webkit-animation: circle 1.1s ease-in forwards;

}



/* Keyframes */

@-webkit-keyframes circle {

  0% {

    width: 0.00625em;

    top: 0;

    left: 0;

    bottom: 0;

    right: 0;

    margin: auto;

    height: 0.00625em;

    z-index: -1;

    background: var(--Primary);

    border-radius: 100%;

  }



  100% {

    background: var(--Primary);

    height: 5000%;

    width: 5000%;

    z-index: -1;

    top: 0;

    bottom: 0;

    left: 0;

    right: 0;

    margin: auto;

    border-radius: 0;

  }

}



.navbar-toggler {

  border: none;

  outline: none;

}



.navbar-toggler-icon {

  background-color: var(--Primary);

}



.navbar-collapse {

  display: none;

}



.navbar-collapse.show {

  display: block;

}



/* fin navbar */



/* hero */

.hero {

  text-align: center;

  background-image: url("./img/hero.png");

  height: 34.5em;

}



.hero h1 {

  margin: 0 auto;

  padding-top: 2em;

  padding-bottom: 0.4em;

  display: inline-block;

  animation: showup 15s infinite;

  color: var(--White);

  font-weight: 400;

  font-size: 2.8em !important;

}



.hero h1 span {

  font-weight: 700;

}



.hero button {

  background-color: var(--White, #fff);

  box-shadow: 0em 0.625em 3.125em 0em rgba(0, 59, 121, 0.07);

  width: 21em;

  height: 4em;

  border-radius: 1.25em;

  border-color: var(--White);

  text-align: center;

  color: var(--Primary);

  font-weight: 700;

  text-transform: uppercase;

  display: block;

  margin-top: 3em !important;

  margin: 0 auto;

  cursor: pointer;

}



@media screen and (max-width: 991px) {

  .hero button {

    margin-top: 1em !important;

  }

}



/* animación */



/* keyframe */

@keyframes showup {

  0% {

    opacity: 0;

  }



  20% {

    opacity: 1;

  }



  80% {

    opacity: 1;

  }



  100% {

    opacity: 1;

  }

}



/* fin hero */



/* degrade de fondo 1 */

.degrade1 {

  height: 119em;

  background: linear-gradient(180deg,

      rgba(57, 125, 170, 0.5) 00%,

      rgba(43, 90, 134, 0.8) 71.88%,

      rgba(21, 36, 77, 0.8) 100%);

}



/* negocios */

.negocios {

  padding: 8em 6em !important;

}



.negocios .card {

  max-width: 74.8em;

  background-color: var(--White);

  box-shadow: 0em 0.625em 3.125em 0em rgba(0, 59, 121, 0.07);

  border-radius: 1.25em;

  height: 527.36px;

  padding: 2em 4em !important;

  align-items: center;

}



.img-card {

  animation: showup 45s infinite;

}



.card-body {

  padding: 0 !important;

}



.row {

  display: flex;

  justify-content: center;

  align-items: center;

  height: 100%;

}



.card-container {

  display: flex;

  flex-direction: column;

  align-items: center;

}



.card-title {

  color: var(--Primary, #15244d);

  text-align: center;

  font-size: 2em;

  font-weight: 600;

}



.card-text {

  display: flex;

  flex-direction: column;

  flex-wrap: wrap;

}



.card-text li {

  list-style-type: none;

  text-align: center;

  font-size: 16px;

  font-weight: 400;

  padding: 0.6em !important;

}



@media screen and (max-width: 991px) {

  .card-negocios {

    height: 25em !important;

  }



  .img-class {

    height: 200px !important;

    width: 200px !important;

  }



  .img-card {

    height: 100% !important;

    width: 100% !important;

  }



  .card-title {

    font-size: 1.4em;

  }



  .card-text li {

    font-size: 13px;

  }

}



@media screen and (max-width: 768px) {

  .negocios .card {

    padding: 10px !important;

  }

}



/* fin de negocios */



/* degrade de fondo 2 */

.degrade2 {

  height: 96em;

  background: linear-gradient(180deg,

      rgba(21, 36, 77, 0.8) 0%,

      rgba(43, 90, 134, 0.8) 71.88%,

      rgba(57, 125, 170, 0.8) 100%);

}



.nosotros-card {

  color: var(--Primary);

  padding: 3em !important;

}



/* nosotros */

.nosotros {

  margin-top: 6em !important;

}



#card-nosotros {

  display: flex;

  justify-content: center;



}



#card-nosotros .card-title {

  text-align: initial !important;

  font-size: 1.5em !important;

}



#card-nosotros .card-text {

  font-size: 1em;

}



.nosotros .card {

  border-radius: 1.25em;

  width: 30em;

  height: 14em;

  margin: 3em 8em;

  flex-direction: row !important;

  padding: 2em;

}



.nosotros .card img {

  animation: showup 45s infinite;

  width: 7.18em;

  height: 7.28em;

}



#card-nosotros .card {

  display: flex;

  align-items: center;

}



@media screen and (max-width: 991px) {

  .nosotros-card {

    padding: 0px !important

  }



  .nosotros .card {

    padding: 5px;

    gap: 10px;

  }



  .container {

    max-width: 760px !important;

  }



  .nosotros {

    margin-top: 0px !important;

  }

}



@media screen and (max-width: 768px) {

  .container {

    max-width: 500px !important;

  }

}







/* fin nosotros */



/* fin beneficios */

#beneficios {

  margin-top: 4em !important;

}



.beneficios-content{

  background-image: url("./img/beneficiosFondo.png");

  border-radius: 1.25em !important;

  height: 30.25em;

  margin: 0 auto;

  background-repeat: no-repeat;

  background-position: center;

}



.beneficios-card {

  border-radius: 1.25em !important;

  width: 20.375em;

  height: 21.43em;

  background-color: #ffffff54;

}



.solucion-integral-card {

  width: 29.31em;

  height: 23.43em;

  margin-top: -2em;

  background-color: #ffffff54;

  border-radius: 1.25em !important;

}



.beneficios-card h3,

.solucion-integral-card h3 {

  color: var(--Primary, #15244d);

  animation: showup 45s;

}



.beneficios-card img,

.solucion-integral-card img {

  margin: 3em;

  width: 7.18em;

  height: 7.18em;

  animation: showup 45s;

}



.beneficios-card h3:hover,

.solucion-integral-card h3:hover {

  font-size: 2.1em;

}



.beneficios-card img:hover,

.solucion-integral-card img:hover {

  width: 7em;

  height: 7em;

}



@media screen and (max-width: 992px) {



  .beneficios-card,

  .solucion-integral-card {

    background-color: transparent;

  }

}





/* fin beneficios */



/* degrade de fondo 3 VOLVER A 106em*/

.degrade3 {

  height: 40em;

  background: linear-gradient(180deg,

      rgba(57, 125, 170, 0.8) 0%,

      rgba(21, 36, 77, 0.8) 100%);

}



/* carrusel */

.carousel-indicators {

  display: none;

}



/* Estilo de las flechas de navegación */

.carousel-control-prev,

.carousel-control-next {

  color: white;

  font-size: 2rem;

  /* Tamaño de las flechas */

  background: transparent;

  /* Fondo transparente */

  border: none;

  outline: none;

}



/* Estilo del ícono de flecha */

.carousel-control-prev-icon,

.carousel-control-next-icon {

  background-color: transparent;

  background-image: none;

  cursor: pointer;

}



.carousel-control-prev-icon {

  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23FFF' viewBox='0 0 8 8'%3e%3cpath d='M4 0l-4 4 4 4 1.4-1.4-2.6-2.6h7.2v-2h-7.2l2.6-2.6z'/%3e%3c/svg%3e");

}



.carousel-control-next-icon {

  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23FFF' viewBox='0 0 8 8'%3e%3cpath d='M3.4 0l-1.4 1.4 2.6 2.6h-7.2v2h7.2l-2.6 2.6 1.4 1.4 4-4-4-4z'/%3e%3c/svg%3e");

}





.figure-wrapper {

  display: flex;

  flex-direction: column;

  align-items: center;

  text-align: center;

  /* Centra el contenido de manera horizontal */

}



.figcaption-flex {

  display: flex;

  flex-direction: row;

  align-items: center;

  justify-content: center;

  /* Centra el contenido de manera horizontal */

  margin-top: 1rem;

  /* Ajusta el margen superior según sea necesario */

}



.figcaption-flex img {

  margin-left: 3em;

  /* Ajusta el margen entre la imagen y el texto según sea necesario */

  border-radius: 50%;

}



.figcaption-flex {

  display: flex;

  flex-direction: row;

  align-items: center;

  margin: 0 auto;

}



.figcaption-flex img {

  margin-right: 1.2em;

  /* Ajusta el margen entre la imagen y el texto según sea necesario */

}



.font-bold {

  font-weight: 700;

}



.testimonios {

  margin-bottom: 8em;

}



.testimonios h2 {

  margin-bottom: 2em;

}



.cardTestimonios {

  max-width: 74.8em;

  background-color: var(--White);

  box-shadow: 0em 0.625em 3.125em 0em rgba(0, 59, 121, 0.07);

  border-radius: 1.25em;

  height: 20em;

  padding: 2em 4em !important;

  align-items: center;

}



.Confian {

  margin-top: 8em;

}



.slick-slide {

  margin: 0em 1.25em;

}



.logo-carousel {

  overflow: inherit;

  border-top: 0.2em solid #ffffff;

  border-bottom: 0.2em solid #ffffff;

}



.slick-slide img {

  width: 100%;

}



.slick-track::before,

.slick-track::after {

  display: table;

  content: '';

}



.slick-track::after {

  clear: both;

}



.slick-track {

  padding: 0.0625rem 0;

}



.slick-loading .slick-track {

  visibility: hidden;

}



.slick-slide.dragging img {

  pointer-events: none;

}



.slick-loading .slick-slide {

  visibility: hidden;

}



.slick-arrow {

  visibility: hidden;

}



.slick-arrow.slick-next {

  right: -2.5em;

  transform: rotate(180deg);

}



.slick-arrow.slick-prev {

  left: -2.5em;

}





/* Media Queries */

@media (max-width: 768px) {

  .slick-arrow {

    width: 1rem;

    height: 1rem;

  }

}



.Confian .row {

  overflow: hidden;

}



/* contacto */

.contacto {

  text-align: center;

}



.contacto h4 {

  margin-top: 1.5em;

  color: var(--White);

  font-size: 1.75em !important;

  font-weight: 300;

}



.contacto form {

  margin-top: 3em !important;



}



@media screen and (max-width: 1600px) {

  #mover {

    margin-left: 3em !important;

  }



  .info-contacto {

    display: flex;

    flex-direction: column;

    justify-content: center;

    align-items: center;

  }



  .mensaje-contacto {

    display: flex;

    align-items: center;

  }



}



.contacto form ::placeholder {

  color: var(--Primary);

  font-size: 1em;

  width: 30.5em;

  height: 4.43em;

  font-weight: 300;

}



form button {

  margin-top: 2em;

  background-color: var(--White, #fff);

  box-shadow: 0em 0.625em 3.125em 0em rgba(0, 59, 121, 0.07);

  border-radius: 1.25em;

  width: 21em;

  height: 4em;

  font-size: 1em;

  color: var(--Primary);

  font-size: 1em;

  font-weight: 300;

  border-color: var(--White);

  display: block;

  margin: 0 auto;

  cursor: pointer;

}



.contacto #nombre,

#email,

#telefono {

  width: 100%;

  height: 4em;

  margin-bottom: 2em;

  border-radius: 1.25em;

}



.contacto #mensaje {

  width: 100%;

  height: 16em;

  border-radius: 1.25em;

  margin-bottom: 2em !important;

}



form>div {

  justify-content: space-evenly !important;

}



textarea {

  overflow-x: hidden !important;

}



/* fin contacto */



/* footer */

.mi-footer {

  background: var(--White, #fff);

  box-shadow: 0em -0.56em 1.875em 0em #15244d;

  width: 100%;

  margin-top: 4em !important;

  text-align: center;

  flex-direction: row;

  justify-content: space-between;

}



@media screen and (max-width: 1199px) {

  .mi-footer {

    margin-top: 15em !important;

  }

}



.mi-footer .card {

  height: 10em;

  border: none;

  margin: 0;

}



.footer-ubicacion {

  margin-top: 30px !important;

}



@media screen and (max-width: 769px) {

  .footer-ubicacion {

    margin-top: 0 !important;

  }

}



.mi-footer img {

  display: block;

}



.mi-footer h3 {

  color: var(--Primary, #15244d);

  font-size: 1.625em;

  font-weight: 600;

}



.mi-footer .row {

  align-items: baseline;

}



.mi-footer p {

  color: var(--Background, #848e96);

  font-size: 1em;

  font-weight: 400;

  margin-top: 0.01em;

}



.mi-footer .container .row {

  flex-direction: row;

}



.mi-footer .container .col-md-4 {

  width: auto;

}



/* fin footer */



/* media */



@media screen and (max-width: 992px) {

  .beneficios-content .row {

    margin-left: 0px;

    margin-right: 0px;

  }



  .beneficios-content {

    background-image: none;

    gap: 20px;

    height: 100%;

  }



  .beneficios-card,

  .solucion-integral-card {

    /* background-image: url("./img/fondo-responsive.png"); */

    width: 100vw;

    background-repeat: no-repeat;

    display: block;

    text-align: center;

    padding: 1em !important;

    margin-top: -2em;

    height: 100%;

  }



  .margen-cards {

    margin-bottom: -3em;

  }



  .beneficios-card>div,

  .solucion-integral-card>div {



    width: 100vw;

    height: auto !important;

    background-color: transparent !important;

    box-shadow: none;

    border-radius: 0;

  }



  .beneficios-card img,

  .solucion-integral-card img {

    margin-bottom: 0.4em;

  }



  .beneficios-card h3,

  .solucion-integral-card h3 {

    font-size: 1.5em;

    text-align: center;

    margin: 0;

    margin-top: 10px;

  }



  .beneficios-card h3:hover,

  .solucion-integral-card h3:hover {

    font-size: 1.5em;

  }



  .beneficios-card img:hover,

  .solucion-integral-card img:hover {

    width: 3em;

    height: 3em;

  }

}



@media (max-width: 48em) {

  body {



    width: 100vw;

    height: auto;

  }



  .degrade1 {



    height: 106em !important;

  }



  .degrade2 {

    overflow: hidden;

    margin-top: 8em !important;

    height: 135em !important;

  }

/* degrade de fondo 3 VOLVER A 140em */

  .degrade3 {

    overflow: hidden;

    height: 60em !important;

  }



  h2 {

    overflow: hidden;

    font-size: 1.5em !important;

    margin: 0 auto;

  }



  /* navbar */

  .navbar {

    font-size: 1em;

  }



  .navbar-brand img {

    overflow: hidden;

    width: 8.75em;

    height: 3.75em;

    margin-left: -4em !important;

  }



  .navbar-collapse {

    display: none;

  }



  .navbar-collapse.active {

    display: block;

  }



  .navbar-toggle-container {

    display: block;

    cursor: pointer;

  }



  .navbar-collapse {

    background-color: var(--White);

    padding: 1em;

    position: absolute;

    top: 3.43em;

    right: 0;

    left: 0;

    z-index: 1000;

    border-bottom: 0.00625 solid var(--Primary);

    padding-left: -4em !important;

  }



  .navbar-collapse ul.navbar-nav {

    flex-direction: column;

  }



  .navbar-collapse ul.navbar-nav li.nav-item {

    margin: 0.5em 0;

  }



  /* hero */

  .hero {

    overflow: hidden;

    height: 29.375 !important;

    padding: 1em;

  }



  .hero h1 {

    font-size: 1.8em !important;

    margin-bottom: 0.6em;

  }



  .hero button {

    width: 13.125em;

    height: 2.625e, ;

    font-size: 0.6em !important;

  }



  /* negocios */

  .negocios .container {



    padding: 1em !important;

  }



  .negocios {

    margin-bottom: 10em !important;

    padding: 5em 0em !important;

  }



  .nosotros .card {

    border-radius: 1.25em;

    width: 22em;



  }



  #card-nosotros .card-title {

    text-align: initial !important;

    font-size: 1em !important;

  }



  #card-nosotros .card-text {

    font-size: 0.8em;

  }



  #mover {

    margin-left: 0em !important;

  }



  #izquierda {

    margin-left: 0em !important;

  }



  .negocios .card {

    width: 22.18em;

    height: 38.0625em;

    margin: 0 auto;

  }



  /*.card .row {

    flex-direction: column-reverse;

  }*/



  .card .col-md-6 {

    width: 100%;

    text-align: center;

  }



  .card .col-md-6 img {

    width: 17.375em;

    height: 13.18em;

    margin: 0 auto;

  }



  .card-title {

    font-size: 1em;

    margin-bottom: 0.5em;

  }



  .card-body {

    margin-bottom: 0.2em;

  }



  .card-text li {

    font-size: 0.8em;

    padding: 0.3em 0;

  }



  /* contacto */

  .contacto h4 {

    font-size: 1.3em !important;

    padding: 0 1em;

  }



  .contacto #nombre,

  #email,

  #telefono {

    width: 22.43em;

    height: 4.43em;

    margin-bottom: 2em !important;

    margin: 0 auto;

  }



  .contacto #mensaje {

    width: 22.43em;

    height: 19.0625em;

    margin-bottom: 2em !important;

    margin: 0 auto;

  }



  /* footer */

  .mi-footer {

    height: 40em;

  }



  .mi-footer .card-body {



    padding: 1em !important;

  }



  .cardTestimonios {

    height: 35em;

    width: 22em;

    padding: 1em !important;

  }



  .figcaption-flex {

    flex-direction: column-reverse;

    align-items: center;

    margin: 0;

  }



  .figcaption-flex img {

    margin-top: 1.5em;

    width: 15em;

    padding: 1em 0em;

  }

}



@media (max-width: 768px) {

  /* Estilos para tablet */



  /* Estilos para slick-arrow */

  .slick-arrow {

    width: 1rem;

    height: 1rem;

  }







  /* Estilos para .Confian .row */

  .Confian .row {

    overflow: hidden;

  }



  /* Estilos para el formulario de contacto */

  .contacto h4 {

    font-size: 1.3em !important;

    padding: 0 1em;

  }



  .contacto #nombre,

  #email,

  #telefono {

    width: 22.43em;

    height: 4.43em;

    margin-bottom: 2em !important;

    margin: 0 auto;

  }



  .contacto #mensaje {

    width: 22.43em;

    height: 19.0625em;

    margin-bottom: 2em !important;

    margin: 0 auto;

  }



  /* Estilos para el footer */

  .mi-footer {

    height: 40em;

  }



  .mi-footer .card-body {

    padding: 1em !important;

  }



  /* Estilos para los testimonios */

  .cardTestimonios {

    height: 35em;

    width: 22em;

    padding: 1em !important;

  }



  .figcaption-flex {

    flex-direction: column-reverse;

    align-items: center;

    margin: 0;

  }



  .figcaption-flex img {

    margin-top: 1.5em;

    width: 15em;

    padding: 1em 0em;

  }



}